XanMod is a general-purpose Linux kernel distribution with custom settings and new features. Built to provide a stable, responsive and smooth desktop experience.
The real-time version is recommended for critical runtime applications such as Linux gaming eSports, streaming, live productions and ultra-low latency enthusiasts.
Supports all recent 64-bit versions of Debian and Ubuntu-based systems.
Main Features
Preemptive Full Tickless Kernel at 500Hz w/ Tuned CPU Core Scheduler. RCU Boost for better responsiveness and lower overall system latency. Block Layer w/ multi-threaded runqueue for high I/O throughput. Caching, Virtual Memory Manager and CPUFreq Governor improvements. BBR TCP Congestion Control + FQ-PIE Packet Scheduling and AQM Algorithm [5.8]. ORC Unwinder for Kernel Stack Traces (debuginfo) implementation. Third-party patchset available: ZSTD kernel, initrd and modules support [5.8][5.6-rt], Full x86_64 FSGSBASE instructions [5.8], Clear Linux [partial], CK's Hrtimer Patchset [5.8][5.4], Wine / Proton Fsync, PCIe ACS Override, BMQ Process Scheduler [5.4 stock disabled], Aufs [5.4] and GCC graysky's. Real-time Linux kernel (PREEMPT_RT) build available [5.6-rt][5.4-rt]. Generic kernel package for compatibility with most Debian & Ubuntu based distributions. Built on the latest GCC 10.2 and Binutils 2.35. GPLv2 license. Can be built for any distribution or purpose.Install via Terminal
echo 'deb http://deb.xanmod.org releases main' | sudo tee /etc/apt/sources.list.d/xanmod-kernel.list && wget -qO - https://dl.xanmod.org/gpg.key | sudo apt-key add -Then update and install:
sudo apt update && sudo apt install linux-xanmodReboot.
Meta packages available: linux-xanmod, linux-xanmod-edge, linux-xanmod-lts, linux-xanmod-rt-edge and linux-xanmod-rt.
To try without adding the repository
* linux-firmware-image package is optionalDownload from Sourceforge and install:
https://sourceforge.net/projects/xanmod/files/
In terminal:sudo dpkg -i linux-image-*xanmod*.deb linux-headers-*xanmod*.deb Reboot.
Check it:cat /proc/version
Linux 5.16.5-xanmod1
df507e8 Linux 5.16.5-xanmod1
21f575d Merge tag 'v5.16.5' into 5.16
92b4b59 Linux 5.16.5
36c3017 mtd: rawnand: mpc5121: Remove unused variable in ads5121_select_chip()
941d518 block: Fix wrong offset in bio_truncate()
b8d1906 KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use
01a15e3 KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread()
ea30a90 KVM: nVMX: Rename vmcs_to_field_offset{,_table}
d9ee5d1 tools/testing/scatterlist: add missing defines
e35b026 usr/include/Makefile: add linux/nfc.h to the compile-test coverage
b7a266a usb: dwc3: xilinx: fix uninitialized return value
fea51b4 psi: fix "defined but not used" warnings when CONFIG_PROC_FS=n
fb5b2f4 psi: fix "no previous prototype" warnings when CONFIG_CGROUPS=n
bbfe488 perf/core: Fix cgroup event list management
e2a9068 PCI: mt7621: Remove unused function pcie_rmw()
974a832 dt-bindings: can: tcan4x5x: fix mram-cfg RX FIFO config
087b892 irqchip/realtek-rtl: Fix off-by-one in routing
bc9de85 irqchip/realtek-rtl: Map control data to virq
14be8d4 net: bridge: vlan: fix memory leak in _allowed_ingress
64e59e5 ipv4: remove sparse error in ip_neigh_gw4()
d14713b ipv4: tcp: send zero IPID in SYNACK messages
9543145 ipv4: raw: lock the socket in raw_bind()
a91b51d net: bridge: vlan: fix single net device option dumping
8d6f161 Revert "ipv6: Honor all IPv6 PIO Valid Lifetime values"
7811229 gve: Fix GFP flags when allocing pages
4305a3b ceph: put the requests/sessions when it fails to alloc memory
b3ae976 KVM: selftests: Don't skip L2's VMCALL in SMM test for SVM guest
75ad6eb Revert "drm/ast: Support 1600x900 with 108MHz PCLK"
42986f4 sch_htb: Fail on unsupported parameters when offload is requested
a7fce09 KVM: selftests: Re-enable access_tracking_perf_test
dc66881 net: hns3: handle empty unknown interrupt for VF
e41ea0e net: cpsw: Properly initialise struct page_pool_params
deb0f02 yam: fix a memory leak in yam_siocdevprivate()
36f9629 drm/msm/a6xx: Add missing suspend_count increment
1ebc188 drm/msm/dpu: invalid parameter check in dpu_setup_dspp_pcc
502fc7d drm/msm/hdmi: Fix missing put_device() call in msm_hdmi_get_phy
cfb7d12 hwmon: (nct6775) Fix crash in clear_caseopen
64c3f1e can: tcan4x5x: regmap: fix max register value
83f8daf video: hyperv_fb: Fix validation of screen resolution
4284225 net/smc: Transitional solution for clcsock race issue
e3496f8 ibmvnic: don't spin in tasklet
e6b36de ibmvnic: init ->running_cap_crqs early
b521a4e ibmvnic: Allow extra failures before disabling
d501d05 ipv4: fix ip option filtering for locally generated fragments
fa4ad06 powerpc/perf: Fix power_pmu_disable to call clear_pmi_irq_pending only if PMI is pending
1f679a6 hwmon: (adt7470) Prevent divide by zero in adt7470_fan_write()
a7d3b89 hwmon: (lm90) Fix sysfs and udev notifications
52e143f hwmon: (lm90) Mark alert as broken for MAX6654
6d1e322 hwmon: (lm90) Re-enable interrupts after alert clears
72f5042 Drivers: hv: balloon: account for vmbus packet header in max_pkt_size
fe4214a block: fix memory leak in disk_register_independent_access_ranges
d7462bf io_uring: fix bug in slow unregistering of nodes
6ef46e1 efi/libstub: arm64: Fix image check alignment at entry
db3d197 rxrpc: Adjust retransmission backoff
5259935 octeontx2-af: Add KPU changes to parse NGIO as separate layer
ecf6ec4 octeontx2-pf: Forward error codes to VF
a7e3a73 octeontx2-af: cn10k: Do not enable RPM loopback for LPC interfaces
97008a3 octeontx2-af: Increase link credit restore polling timeout
97d7446 octeontx2-pf: cn10k: Ensure valid pointers are freed to aura
59a3393 octeontx2-af: cn10k: Use appropriate register for LMAC enable
7c1f835 octeontx2-af: Retry until RVU block reset complete
7e32f74 octeontx2-af: Fix LBK backpressure id count
4d22bc4 octeontx2-af: Do not fixup all VF action entries
cb2fab1 phylib: fix potential use-after-free
d217c32 net: stmmac: dwmac-visconti: Fix clock configuration for RMII mode
1b5bf52 net: stmmac: dwmac-visconti: Fix bit definitions for ETHER_CLK_SEL
529daf1 ethtool: Fix link extended state for big endian
e61fe7d net: phy: broadcom: hook up soft_reset for BCM54616S
12fc88e sched/pelt: Relax the sync of util_sum with util_avg
04ae6dc perf: Fix perf_event_read_local() time
d8cd36a powerpc/64s: Mask SRR0 before checking against the masked NIP
d21caf9 remoteproc: qcom: q6v5: fix service routines build errors
47cf5bf netfilter: conntrack: don't increment invalid counter on NF_REPEAT
aaccfee powerpc64/bpf: Limit 'ldbrx' to processors compliant with ISA v2.06
ca23c9d SUNRPC: Don't dereference xprt->snd_task if it's a cookie
14c9086 KVM: arm64: pkvm: Use the mm_ops indirection for cache maintenance
e2d4111 NFS: Ensure the server has an up to date ctime before renaming
498286a NFS: Ensure the server has an up to date ctime before hardlinking
9307677 ipv6: annotate accesses to fn->fn_sernum
2b7e7df drm/msm/dsi: invalid parameter check in msm_dsi_phy_enable
1c7c675 drm/msm/dsi: Fix missing put_device() call in dsi_get_phy
4c55f12 drm/msm: Fix wrong size calculation
671ebb3 net-procfs: show net devices bound packet types
36a0715 NFSv4: nfs_atomic_open() can race when looking up a non-regular file
f0583af NFSv4: Handle case where the lookup of a directory fails
06c6378 hwmon: (lm90) Reduce maximum conversion rate for G781
32ac95e ipv4: avoid using shared IP generator for connected sockets
1777706 ping: fix the sk_bound_dev_if match in ping_lookup
0ccc24f hwmon: (lm90) Mark alert as broken for MAX6680
6724214 hwmon: (lm90) Mark alert as broken for MAX6646/6647/6649
839ec70 net: fix information leakage in /proc/net/ptype
ba1863b ARM: 9170/1: fix panic when kasan and kprobe are enabled
184c4dc ipv6_tunnel: Rate limit warning messages
ace7b6e scsi: bnx2fc: Flush destroy_work queue before calling bnx2fc_interface_put()
960f058 scsi: elx: efct: Don't use GFP_KERNEL under spin lock
36e3b3f rpmsg: char: Fix race between the release of rpmsg_eptdev and cdev
d6cdc6a rpmsg: char: Fix race between the release of rpmsg_ctrldev and cdev
bad4b11 usb: roles: fix include/linux/usb/role.h compile issue
3d8e585 i40e: fix unsigned stat widths
fff687f i40e: Fix for failed to init adminq while VF reset
4b3aa85 i40e: Fix queues reservation for XDP
987aca1 i40e: Fix issue when maximum queues is exceeded
70889ca i40e: Increase delay to 1 s after global EMP reset
edc4c8f powerpc/32: Fix boot failure with GCC latent entropy plugin
d324727 powerpc/32s: Fix kasan_init_region() for KASAN
2910254 powerpc/32s: Allocate one 256k IBAT instead of two consecutives 128k IBATs
865c08c x86/cpu: Add Xeon Icelake-D to list of CPUs that support PPIN
757c8da x86/MCE/AMD: Allow thresholding interface updates after init
0b8ec4e PCI/sysfs: Find shadow ROM before static attribute initialization
9d22458 sched/membarrier: Fix membarrier-rseq fence command missing from query bitmask
ca2dafd ocfs2: fix a deadlock when commit trans
8cfdaaa jbd2: export jbd2_journal[grab|put]_journal_head
dd22253 mm, kasan: use compare-exchange operation to set KASAN page tag
1cd8a5d mt76: connac: introduce MCU_CE_CMD macro
45809ba ucsi_ccg: Check DEV_INT bit only when starting CCG4
93f9cd5 usb: typec: tcpm: Do not disconnect when receiving VSAFE0V
941ee15 usb: typec: tcpm: Do not disconnect while receiving VBUS off
bfc1412 usb: typec: tcpci: don't touch CC line if it's Vconn source
c9a18f7 USB: core: Fix hang in usb_kill_urb by adding memory barriers
3095502 usb: dwc3: xilinx: Fix error handling when getting USB3 PHY
5d4f90b usb: dwc3: xilinx: Skip resets and USB3 register settings for USB2.0 mode
315f8a5 usb: cdnsp: Fix segmentation fault in cdns_lost_power function
103938d usb: gadget: f_sourcesink: Fix isoc transfer for USB_SPEED_SUPER_PLUS
284ef44 usb: common: ulpi: Fix crash in ulpi_match()
8b05ad2 usb: xhci-plat: fix crash when suspend if remote wake enable
e813a5e usb-storage: Add unusual-devs entry for VL817 USB-SATA bridge
820a55c kbuild: remove include/linux/cyclades.h from header file check
9155ccf tty: Add support for Brainboxes UC cards.
820f5c4 tty: Partially revert the removal of the Cyclades public API
e1ed883 tty: n_gsm: fix SW flow control encoding/handling
eefd8f6 tty: rpmsg: Fix race condition releasing tty port
1b8b83b serial: stm32: fix software flow control transfer
2cfc851 serial: 8250: of: Fix mapped region size when using reg-offset property
15c513b serial: pl011: Fix incorrect rs485 RTS polarity on set_mctrl
59274a0 dm: properly fix redundant bio-based IO accounting
a7f5b1a block: add bio_start_io_acct_time() to control start_time
dc93c7a dm: revert partial fix for redundant bio-based IO accounting
47fe7a1 arm64: extable: fix load_unaligned_zeropad() reg indices
b830fd1 security, lsm: dentry_init_security() Handle multi LSM registration
1699bd1 KVM: PPC: Book3S HV Nested: Fix nested HFSCR being clobbered with multiple vCPUs
e9bf4e1 KVM: x86: Sync the states size with the XCR0/IA32_XSS at, any time
0c5130c KVM: x86: Update vCPU's runtime CPUID on write to MSR_IA32_XSS
b9a3373 KVM: x86: Keep MSR_IA32_XSS unchanged for INIT
b7d0597 KVM: x86: Check .flags in kvm_cpuid_check_equal() too
b4c0d89 KVM: x86: Forcibly leave nested virt when SMM state is toggled
b9ee734 KVM: x86: Free kvm_cpuid_entry2 array on post-KVM_RUN KVM_SET_CPUID{,2}
ab54b78 KVM: x86: Move CPUID.(EAX=0x12,ECX=1) mangling to _kvm_update_cpuid_runtime()
f0c4ba4 KVM: x86: nSVM: skip eax alignment check for non-SVM instructions
c209aa8 KVM: SVM: Don't intercept #GP for SEV guests
0b0dd3e KVM: SVM: Never reject emulation due to SMAP errata for !SEV guests
ce55f63 KVM: LAPIC: Also cancel preemption timer during SET_LAPIC
456ba24 drm/amd/display: Wrap dcn301_calculate_wm_and_dlg for FPU.
88298b8 drm/amd/display: Fix FP start/end for dcn30_internal_validate_bw.
ae36812 drm/amdgpu/display: Remove t_srx_delay_us.
4e6652e drm/amdgpu: filter out radeon secondary ids as well
4e3d0e9 drm/atomic: Add the crtc to affected crtc only if uapi.enable = true
b91c447 drm/etnaviv: relax submit size limits
7228973 perf/x86/intel: Add a quirk for the calculation of the number of counters on Alder Lake
308f30e perf/x86/intel/uncore: Fix CAS_COUNT_WRITE issue for ICX
4910080 powerpc/audit: Fix syscall_get_arch()
991ced6 psi: Fix uaf issue when psi trigger is destroyed while being polled
1e28e6c Revert "KVM: SVM: avoid infinite loop on NPF from bad address"
b15f86c fsnotify: fix fsnotify hooks in pseudo filesystems
753a1d6 fsnotify: invalidate dcache before IN_DELETE event
1a99fb4 ceph: set pool_ns in new inode layout for async creates
a0c22e9 ceph: properly put ceph_string reference after async create attempt
6dc771e tracing: Don't inc err_log entry count if entry allocation fails
71443fe tracing: Propagate is_signed to expression
df86e2f tracing/histogram: Fix a potential memory leak for kstrdup()
1ef81cd PM: wakeup: simplify the output logic of pm_show_wakelocks()
a408585 efi: runtime: avoid EFIv2 runtime services on Apple x86 machines
620e824 udf: Fix NULL ptr deref when converting from inline format
8baf0db udf: Restore i_lenAlloc when inode expansion fails
aa2b818 scsi: zfcp: Fix failed recovery on gone remote port with non-NPIV FCP devices
aec8904 ucount: Make get_ucount a safe get_user replacement
f96590a powerpc/bpf: Update ldimm64 instructions during extra pass
80e6e5c powerpc32/bpf: Fix codegen for bpf-to-bpf calls
b82ef49 bpf: Guard against accessing NULL pt_regs in bpf_get_task_stack()
25d3459 s390/nmi: handle vector validity failures for KVM guests
6820a30 s390/nmi: handle guarded storage validity failures for KVM guests
62c368d s390/hypfs: include z/VM guests with access control group set
529afef s390/module: fix loading modules with a lot of relocations
6ef3c08 KVM: arm64: vgic-v3: Restrict SEIS workaround to known broken systems
4b7740a KVM: arm64: Use shadow SPSR_EL1 when injecting exceptions on !VHE
7bb2b4d ARM: 9180/1: Thumb2: align ALT_UP() sections in modules sufficiently
9d41902 ARM: 9179/1: uaccess: avoid alignment faults in copy[from|to]kernel_nofault
2d9ccdb net: stmmac: skip only stmmac_ptp_register when resume from suspend
99ecb18 net: stmmac: configure PTP clock source prior to PTP initialization
f4d8610 net: sfp: ignore disabled SFP node
6f75f8e can: m_can: m_can_fifo{read,write}: don't read or write from/to FIFO if length is 0
7a8b052 btrfs: update writeback index when starting defrag
895da68 btrfs: add back missing dirty page rate limiting to defrag
f56722d btrfs: fix deadlock when reserving space during defrag
6f32d91 btrfs: defrag: properly update range->start for autodefrag
8923f11 btrfs: defrag: fix wrong number of defragged sectors
1ad0917 btrfs: allow defrag to be interruptible
bac3bab btrfs: fix too long loop when defragging a 1 byte file
5c968af Bluetooth: refactor malicious adv data check
1cdd9ce Linux 5.16.4
1d833b2 drm/vmwgfx: Fix stale file descriptors on failed usercopy
f8b6cb0 arm64/bpf: Remove 128MB limit for BPF JIT programs
0c919af select: Fix indefinitely sleeping task in poll_schedule_timeout()
332d29c rcu: Tighten rcu_advance_cbs_nowake() checks
ead51b4 memcg: better bounds on the memcg stats updates
c0c6cc8 bnx2x: Invalidate fastpath HSI version for VFs
54bee93 bnx2x: Utilize firmware 7.13.21.0
9f793ce io_uring: fix not released cached task refs
5a440ea drm/amd/display: reset dcn31 SMU mailbox on failures
ec1b649 drm/i915: Flush TLBs before releasing backing store
Homepage
Download Linux 5.16.5-xanmod1 source from GitHub
A new XanMod Linux Kernel based on Linux Kernel 5.16.5 has been released. XanMod is a general-purpose Linux kernel distribution with custom settings and new features. The real-time version is recommended for critical runtime applications such as Linux gaming eSports, streaming, live productions and ultra-low latency enthusiasts.