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.15.5-xanmod1
b0ec454 Linux 5.15.5-xanmod1
b23b037 x86/csum: Fix compilation error for UM
30e2de5 x86/csum: Rewrite/optimize csum_partial()
45686c3 Merge tag 'v5.15.5' into 5.15
f00712e Linux 5.15.5
e681896 ALSA: hda: hdac_stream: fix potential locking issue in snd_hdac_stream_assign()
0108564 ALSA: hda: hdac_ext_stream: fix potential locking issues
faed25b x86/Kconfig: Fix an unused variable error in dell-smm-hwmon
fa5f860 net: add and use skb_unclone_keeptruesize() helper
f14c857 btrfs: update device path inode time instead of bd_inode
22efa06 fs: export an inode_update_time helper
148ed0e ice: Delete always true check of PF pointer
0190a2f ice: Fix VF true promiscuous mode
d87edd0 usb: max-3421: Use driver data instead of maintaining a list of bound devices
11a8768 ASoC: rsnd: fixup DMAEngine API
330651b ASoC: DAPM: Cover regression by kctl change notification fix
83c8ab8 selinux: fix NULL-pointer dereference when hashtab allocation fails
439b993 bpf: Forbid bpf_ktime_get_coarse_ns and bpf_timer_* in tracing progs
3543135 RDMA/netlink: Add __maybe_unused to static inline in C file
556d592 hugetlbfs: flush TLBs correctly after huge_pmd_unshare
686bf79 signal: Replace force_fatal_sig with force_exit_sig when in doubt
7614e04 signal: Don't always set SA_IMMUTABLE for forced signals
02d28b5 signal: Replace force_sigsegv(SIGSEGV) with force_fatal_sig(SIGSEGV)
3e61002 signal/x86: In emulate_vsyscall force a signal instead of calling do_exit
3c4d5a3 signal/vm86_32: Properly send SIGSEGV when the vm86 state cannot be saved.
1998d85 signal/sparc32: In setup_rt_frame and setup_fram use force_fatal_sig
905e860 signal/sparc32: Exit with a fatal signal when try_to_clear_window_buffer fails
58484ab signal/s390: Use force_sigsegv in default_trap_handler
c7b7868 signal/powerpc: On swapcontext failure force SIGSEGV
fe67da4 exit/syscall_user_dispatch: Send ordinary signals on failure
110ae07 signal: Implement force_fatal_sig
21d727a drm/amd/pm: avoid duplicate powergate/ungate setting
ca28919 drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors
2e3eb81 drm/i915: Fix type1 DVI DP dual mode adapter heuristic for modern platforms
a2dda28 drm/i915/dp: Ensure max link params are always valid
72704e0 drm/i915/dp: Ensure sink rate values are always valid
c3d06f6 drm/nouveau: clean up all clients on device removal
0b1a35d drm/nouveau: use drm_dev_unplug() during device removal
4ee6807 drm/nouveau: Add a dedicated mutex for the clients list
4f8e469 drm/prime: Fix use after free in mmap with drm_gem_ttm_mmap
59fb48d drm/udl: fix control-message timeout
f5b5ea1 drm/i915/guc: Unwind context requests in reverse order
413e603 drm/i915/guc: Don't drop ce->guc_active.lock when unwinding context
2a45b1c drm/i915/guc: Workaround reset G2H is received after schedule done G2H
ad583a9 drm/i915/guc: Don't enable scheduling on a banned context, guc_id invalid, not registered
519bd91 drm/i915/guc: Fix outstanding G2H accounting
296188c drm/amd/display: Limit max DSC target bpp for specific monitors
d4b7d7b drm/amd/display: Update swizzle mode enums
76025be mac80211: drop check for DONT_REORDER in __ieee80211_select_queue
60a3a88 mac80211: fix radiotap header generation
5a9b671 cfg80211: call cfg80211_stop_ap when switch from P2P_GO type
a1c9455 parisc/sticon: fix reverse colors
61b2649 net: stmmac: Fix signed/unsigned wreckage
7c48010 fs: handle circular mappings correctly
47e6f9f btrfs: fix memory ordering between normal and ordered work functions
cd198ae Drivers: hv: balloon: Use VMBUS_RING_SIZE() wrapper for dm_ring_size
d8f574f net: stmmac: socfpga: add runtime suspend/resume callback for stratix10 platform
37330f3 spi: fix use-after-free of the add_lock mutex
77a5bae udf: Fix crash after seekdir
c3b0ab9 printk: restore flushing of NMI buffers on remote CPUs after NMI backtraces
76b46fa drm/cma-helper: Release non-coherent memory with dma_free_noncoherent()
94cc080 KVM: nVMX: don't use vcpu->arch.efer when checking host state on nested state load
679a6ff KVM: SEV: Disallow COPY_ENC_CONTEXT_FROM if target has created vCPUs
90342e0 fbdev: Prevent probing generic drivers if a FB is already registered
1560763 block: Check ADMIN before NICE for IOPRIO_CLASS_RT
520f8ac s390/dump: fix copying to user-space of swapped kdump oldmem
c0849d3 s390/kexec: fix memory leak of ipl report buffer
cc8b2e0 s390/vdso: filter out -mstack-guard and -mstack-size
44b6cc4 s390/boot: simplify and fix kernel memory layout setup
a4c7fe4 s390/setup: avoid reserving memory above identity mapping
f07220f pinctrl: ralink: include 'ralink_regs.h' in 'pinctrl-mt7620.c'
4ac27af scsi: qla2xxx: Fix mailbox direction flags in qla2xxx_get_adapter_id()
e449d2e ata: libata: add missing ata_identify_page_supported() calls
08a667e ata: libata: improve ata_read_log_page() error message
4ca2a26 Revert "parisc: Reduce sigreturn trampoline to 3 instructions"
586afe2 Revert "drm/i915/tgl/dsi: Gate the ddi clocks after pll mapping"
de04ee7 powerpc/8xx: Fix pinned TLBs with CONFIG_STRICT_KERNEL_RWX
54e11a4 powerpc/xive: Change IRQ domain to a tree domain
7cc16be powerpc/signal32: Fix sigset_t copy
c897c53 KVM: x86/xen: Fix get_attr of KVM_XEN_ATTR_TYPE_SHARED_INFO
b22ef13 KVM: x86/mmu: include EFER.LMA in extended mmu role
c3168ef KVM: x86: Fix uninitialized eoi_exit_bitmap usage in vcpu_load_eoi_exitmap()
5969e24 KVM: x86: Assume a 64-bit hypercall for guests with protected state
8823ea2 x86/hyperv: Fix NULL deref in set_hv_tscchange_cb() if Hyper-V setup fails
60eec41 x86/sgx: Fix free page accounting
2495dec x86/boot: Pull up cmdline preparation and early param parsing
1e0d346 mm/damon/dbgfs: fix missed use of damon_dbgfs_lock
cda10b3 mm/damon/dbgfs: use '_GFP_NOWARN' for user-specified size buffer allocation
4dfddb5 kmap_local: don't assume kmap PTEs are linear arrays in memory
b5069d4 hugetlb, userfaultfd: fix reservation restore on userfaultfd error
11138d7 mm: kmemleak: slob: respect SLAB_NOLEAKTRACE flag
e73114d shm: extend forced shm destroy to support objects from several IPC nses
72bfd83 ipc: WARN if trying to remove ipc object which is absent
9404c41 tipc: check for null after calling kmemdup
660859f hexagon: clean up timer-regs.h
c024701 hexagon: export raw I/O routines for modules
17071fd pstore/blk: Use "%lu" to format unsigned long
007ebe2 Revert "mark pstore-blk as broken"
a705254 tun: fix bonding active backup with arp monitoring
9e6b4c3 dmaengine: remove debugfs #ifdef
6ffad92 blk-cgroup: fix missing put device in error path from blkg_conf_pref()
4220cc6 s390/kexec: fix return code handling
7371430 perf/x86/intel/uncore: Fix IIO event constraints for Snowridge
d55aa23 perf/x86/intel/uncore: Fix IIO event constraints for Skylake Server
7955e4a perf/x86/intel/uncore: Fix filter_tid mask for CHA events on Skylake Server
db66f28 pinctrl: qcom: sm8350: Correct UFS and SDC offsets
13d31d4 pinctrl: qcom: sdm845: Enable dual edge errata
ad03b90 powerpc/pseries: Fix numa FORM2 parsing fallback code
ad9ade6 powerpc/pseries: rename numa_dist_table to form2_distances
a0995eb powerpc: clean vdso32 and vdso64 directories
a7e7002 KVM: PPC: Book3S HV: Use GLOBAL_TOC for kvmppc_h_set_dabr/xdabr()
9c2ff78 riscv: fix building external modules
35d97fd tools build: Fix removal of feature-sync-compare-and-swap feature detection
20540cb ptp: ocp: Fix a couple NULL vs IS_ERR() checks
4d42da0 e100: fix device suspend/resume
ed35e95 NFC: add NCI_UNREG flag to eliminate the race
8a9c61c NFC: reorder the logic in nfc{un,}register_device
96a2090 NFC: reorganize the functions in nci_request
7a5c8a6 i40e: Fix display error code in dmesg
6c9c9f4 i40e: Fix creation of first queue by omitting it if is not power of two
5930159 i40e: Fix warning message and call stack during rmmod i40e driver
0bccc44 RDMA/mlx4: Do not fail the registration on port stats
29148ff i40e: Fix ping is lost after configuring ADq on VF
7299cd7 i40e: Fix changing previously set num_queue_pairs for PFs
e91e842 i40e: Fix NULL ptr dereference on VSI filter sync
fdd5629 i40e: Fix correct max_pkt_size on VF RX queue
0f810d0 net: virtio_net_hdr_to_skb: count transport header in UFO
32d4686 net: dpaa2-eth: fix use-after-free in dpaa2_eth_remove
7cc1c7d net: sched: act_mirred: drop dst for the direction from egress to ingress
d7d992c net: mvmdio: fix compilation warning
39443eb scsi: ufs: core: Fix another task management completion race
bede57a scsi: ufs: core: Fix task management completion timeout race
bcc0e31 scsi: core: sysfs: Fix hang when device state is set via sysfs
c36baca scsi: ufs: core: Improve SCSI abort handling
7fbdbd4 net/mlx5: E-Switch, return error if encap isn't supported
2c3b6e8 net/mlx5: Lag, update tracker when state change event received
486e8de net/mlx5e: CT, Fix multiple allocations and memleak of mod acts
8b45a37 net/mlx5: E-Switch, rebuild lag only when needed
a51a6da net/mlx5: Update error handler for UCTX and UMEM
2ae3815 net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove()
158ec85 net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev
a49a9b9 net/mlx5e: Wait for concurrent flow deletion during neigh/fib events
ebeda7a net/mlx5e: kTLS, Fix crash in RX resync flow
b70e072 RDMA/core: Set send and receive CQ before forwarding to the driver
9fe0ba3 btrfs: make 1-bit bit-fields of scrub_page unsigned int
67fb5ea udp: Validate checksum in udp_read_sock()
b4a677f platform/x86: think-lmi: Abort probe on analyze failure
6e6e4fc platform/x86: hp_accel: Fix an error handling path in 'lis3lv02d_probe()'
871ee7e gpio: rockchip: needs GENERIC_IRQ_CHIP to fix build errors
3d0f4ae mips: lantiq: add support for clk_get_parent()
114404d mips: bcm63xx: add support for clk_get_parent()
21e27ed MIPS: generic/yamon-dt: fix uninitialized variable error
a5d1d35 bpf: Fix toctou on read-only map's constant scalar tracking
4d1834f iavf: Restore VLAN filters after link down
cbb8156 iavf: Fix for setting queues to 0
366c1fd iavf: Fix for the false positive ASQ/ARQ errors while issuing VF reset
9200f8c iavf: validate pointers
99744c9 iavf: prevent accidental free of filter structure
f72da5a iavf: Fix failure to exit out from last all-multicast mode
c3db4ff iavf: don't clear a lock we don't hold
9ef6589 iavf: free q_vectors before queues in iavf_disable_vf
fb2be87 iavf: check for null in iavf_fix_features
68d4274 iavf: Fix return of set the new channel count
10c22d9 NFSD: Fix exposure in nfsd4_decode_bitmap()
f6218db net/smc: Make sure the link_id is unique
17b2c2e sock: fix /proc/net/sockstat underflow in sk_clone_lock()
95fe890 tipc: only accept encrypted MSG_CRYPTO msgs
aff97b8 bnxt_en: reject indirect blk offload when hw-tc-offload is off
6156666 net: bnx2x: fix variable dereferenced before check
aa67407 selftests: gpio: fix gpio compiling error
05a48cb net: ipa: disable HOLB drop when updating timer
0f3de70 net: ipa: HOLB register sometimes must be written twice
e10e133 mac80211: fix monitor_sdata RCU/locking assertions
1d17f61 nl80211: fix radio statistics in survey dump
85f4a56 tracing: Add length protection to histogram string copies
0efd57d tcp: Fix uninitialized access in skb frags array for Rx 0cp.
f4d1328 net/ipa: ipa_resource: Fix wrong for loop range
e9fd893 selftests: net: switch to socat in the GSO GRE test
f491758 samples/bpf: Fix incorrect use of strlen in xdp_redirect_cpu
ff12332 samples/bpf: Fix summary per-sec stats in xdp_sample_user
bd45420 bpf: Fix inner map state pruning regression.
8369b01 drm/nouveau: hdmigv100.c: fix corrupted HDMI Vendor InfoFrame
07b486f perf tests: Remove bash construct from record+zstd_comp_decomp.sh
99643bd perf bench futex: Fix memory leak of perf_cpu_map__new()
ab7c3d8 perf bpf: Avoid memory leak from perf_env__insert_btf()
05e13b4 tracing/histogram: Do not copy the fixed-size char array field over the field size
04096d1 blkcg: Remove extra blkcg_bio_issue_init
eda355d perf/x86/vlbr: Add c->flags to vlbr event constraints
512e21c sched/fair: Prevent dead task groups from regaining cfs_rq's
e4511d8 sched/core: Mitigate race cpus_share_cache()/update_top_cache_domain()
725b5c9 MIPS: boot/compressed/: add __bswapdi2() to target for ZSTD decompression
1e3220e mips: BCM63XX: ensure that CPU_SUPPORTS_32BIT_KERNEL is set
c0c51af KVM: arm64: Fix host stage-2 finalization
595e359 clk: qcom: gcc-msm8996: Drop (again) gcc_aggre1_pnoc_ahb_clk
c458422 clk/ast2600: Fix soc revision for AHB
3024018 clk: ingenic: Fix bugs with divided dividers
680a0c6 f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
9c9afed f2fs: compress: disallow disabling compress on non-empty compressed file
3d937f9 sh: define __BIG_ENDIAN for math-emu
d21ad7a sh: math-emu: drop unused functions
c29506b sh: fix kconfig unmet dependency warning for FRAME_POINTER
7228ed3 f2fs: fix wrong condition to trigger background checkpoint correctly
9ad4e63 f2fs: fix to use WHINT_MODE
0dfaa04 f2fs: fix up f2fs_lookup tracepoints
6d28f6b maple: fix wrong return value of maple_bus_init().
b80a797 sh: check return code of request_irq
23274bd powerpc/8xx: Fix Oops with STRICT_KERNEL_RWX without DEBUG_RODATA_TEST
2f4dede powerpc/dcr: Use cmplwi instead of 3-argument cmpli
3c0c79d iommu/dart: Initialize DART_STREAMS_ENABLE
c4ea7b0 clk: at91: sama7g5: remove prescaler part of master clock
58fa50d ALSA: usb-audio: fix null pointer dereference on pointer cs_desc
1672179 ALSA: gus: fix null pointer dereference on pointer block
3f8da4b arm64: dts: qcom: Fix node name of rpm-msg-ram device nodes
93d0049 ARM: dts: qcom: fix memory and mdio nodes naming for RB3011
72b4e7b powerpc/5200: dts: fix memory node unit name
619ce46 memory: tegra20-emc: Add runtime dependency on devfreq governor module
bf76f56 scsi: lpfc: Allow fabric node recovery if recovery is in progress before devloss
28de48a scsi: lpfc: Fix link down processing to address NULL pointer dereference
dbebf86 scsi: lpfc: Fix use-after-free in lpfc_unreg_rpi() routine
2190322 RDMA/core: Use kvzalloc when allocating the struct ib_port
a9d2d23 iio: imu: st_lsm6dsx: Avoid potential array overflow in st_lsm6dsx_set_odr()
26af3ab scsi: target: Fix alua_tg_pt_gps_count tracking
a248988 scsi: target: Fix ordered tag handling
6652355 scsi: scsi_debug: Fix out-of-bound read in resp_report_tgtpgs()
5b8bed6 scsi: scsi_debug: Fix out-of-bound read in resp_readcap16()
5777ab6 MIPS: sni: Fix the build
5c34486 tty: tty_buffer: Fix the softlockup issue in flush_to_ldisc
0a85b47 iommu/vt-d: Do not falsely log intel_iommu is unsupported kernel option
0a2ddbf ALSA: ISA: not for M68K
eadee7f ARM: dts: ls1021a-tsn: use generic "jedec,spi-nor" compatible for flash
8e6920f ARM: dts: ls1021a: move thermal-zones node out of soc/
8eab383 ASoC: rt5682: fix a little pop while playback
065334f usb: host: ohci-tmio: check return value after calling platform_get_resource()
31340f0 ARM: dts: omap: fix gpmc,mux-add-data type
1f45b73 ALSA: usb-audio: Add support for the Pioneer DJM 750MK2 Mixer/Soundcard
98b134c HID: multitouch: disable sticky fingers for UPERFECT Y
c37f9ee firmware_loader: fix pre-allocated buf built-in firmware use
966e4de ASoC: Intel: sof_sdw: add missing quirk for Dell SKU 0A45
1c6bd25 ASoC: Intel: soc-acpi: add missing quirk for TGL SDCA single amp
2e46a58 ALSA: intel-dsp-config: add quirk for APL/GLK/TGL devices based on ES8336 codec
fed89b5 arm64: dts: imx8mm-kontron: Fix reset delays for ethernet PHY
d29faaf scsi: smartpqi: Add controller handshake during kdump
27490ae scsi: advansys: Fix kernel pointer leak
7f37066 ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect
94ca620 ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ
0864d7f ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ
735939e clk: imx: imx6ul: Move csi_sel mux to correct base register
daf932e ALSA: usb-audio: disable implicit feedback sync for Behringer UFX1204 and UFX1604
e15de34 scsi: core: Fix scsi_mode_sense() buffer length handling
ae89376 ASoC: SOF: Intel: hda-dai: fix potential locking issue
3cff8b7 RDMA/rxe: Separate HW and SW l/rkeys
b6f64bd arm64: dts: ls1012a: Add serial alias for ls1012a-rdb
0479e59 arm64: dts: freescale: fix arm,sp805 compatible string
3f6946c arm64: dts: qcom: sdm845: Fix qcom,controlled-remotely property
e608d43 arm64: dts: qcom: ipq8074: Fix qcom,controlled-remotely property
9bfe717 arm64: dts: qcom: ipq6018: Fix qcom,controlled-remotely property
118c826 arm64: dts: qcom: msm8998: Fix CPU/L2 idle state latency and residency
30a3826 ARM: BCM53016: Specify switch ports for Meraki MR32
d330f1d staging: rtl8723bs: remove a third possible deadlock
12cfdef staging: rtl8723bs: remove a second possible deadlock
353a6e9 staging: rtl8723bs: remove possible deadlock when disconnect (v2)
f78e23b ARM: dts: ux500: Skomer regulator fixes
2c71811 usb: typec: tipd: Remove WARN_ON in tps6598x_block_read
06cfb4c usb: musb: tusb6010: check return value after calling platform_get_resource()
9dd4b84 bus: ti-sysc: Use context lost quirk for otg
c182fa0 bus: ti-sysc: Add quirk handling for reinit on context lost
1e299b0 RDMA/bnxt_re: Check if the vlan is valid before reporting
bed5a80 arm64: dts: hisilicon: fix arm,sp805 compatible string
376bad6 arm64: dts: rockchip: Disable CDN DP on Pinebook Pro
867cfea ASoC: mediatek: mt8195: Add missing of_node_put()
814d361 scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq()
269a431 scsi: pm80xx: Fix memory leak during rmmod
a070e30 arm64: dts: broadcom: bcm4908: Move reboot syscon out of bus
8e4b6c2 ARM: dts: NSP: Fix mpcore, mmc node names
8033b37 ARM: dts: BCM5301X: Fix MDIO mux binding
50b631c ARM: dts: BCM5301X: Fix nodes names
f7d6788 staging: wfx: ensure IRQ is ready before enabling it
f08c0d6 arm64: dts: allwinner: a100: Fix thermal zone node name
f2b9e78 arm64: dts: allwinner: h5: Fix GPU thermal zone node name
ea4f916 ARM: dts: sunxi: Fix OPPs node name
b5dd513 clk: sunxi-ng: Unregister clocks/resets when unbinding
5d729f4 arm64: zynqmp: Fix serial compatible string
69d0f6a arm64: zynqmp: Do not duplicate flash partition label property
Homepage
Download Linux 5.15.5-xanmod1 source from GitHub
A new XanMod Linux Kernel based on Linux Kernel 5.15.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.