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.0-xanmod1
- 0519947 Linux 5.15.0-xanmod1
- 4c1a01c hwmon: (nct6775) Add additional ASUS motherboards.
- 7d8d7c1 hwmon: (nct6775) Support access via Asus WMI
- 620ee92 hwmon: (nct6775) Use nct6775_*() function pointers in nct6775_data.
- d213ad7 hwmon: (nct6775) Use superio_*() function pointers in sio_data.
- 52294df i2c: busses: Add SMBus capability to work with OpenRGB driver control
- 7e5cd19 x86/kconfig: more uarches for kernel 5.15+
- 6356ef5 pci: Enable overrides for missing ACS capabilities
- b3ac51e init: wait for partition and retry scan
- e5d5e6b drivers: initialize ata before graphics
- a1b07b9 locking: rwsem: spin faster
- 3c32997 firmware: Enable stateless firmware loading
- 20dd71d intel_rapl: Silence rapl trace debug
- a2b5b68 SAUCE: binder: give binder_alloc its own debug mask file
- 533c4a2 SAUCE: binder: turn into module
- ca8e24c SAUCE: ashmem: turn into module
- 35f3f04 sysctl: add sysctl to disallow unprivileged CLONE_NEWUSER by default
- b2851fc lib: zstd: Add cast to silence clang's -Wbitwise-instead-of-logical
- fdf1bbf kbuild: Add make tarzst-pkg build option
- 0c4ef9d MAINTAINERS: Add maintainer entry for zstd
- 9eabe27 lib: zstd: Upgrade to latest upstream zstd version 1.4.10
- 5d44201 lib: zstd: Add decompress_sources.h for decompress_unzstd
- a92bf08 lib: zstd: Add kernel-specific API
- d0fe816 Documentation: amd-pstate: add amd-pstate driver introduction
- 6d3e84c cpupower: print amd-pstate information on cpupower
- 0f68a35 cpupower: move print_speed function into misc helper
- 2e3c1f4 cpupower: enable boost state support for amd-pstate module
- e843b0d cpupower: add amd-pstate sysfs definition and access helper
- d391c31 cpupower: add the function to get the sysfs value from specific table
- d5bc8e3 cpupower: initial AMD P-state capability
- 3223a43 cpupower: add the function to check amd-pstate enabled
- 2be733d cpupower: add AMD P-state capability flag
- b89d41f cpufreq: amd: add amd-pstate performance attributes
- dd80c52 cpufreq: amd: add amd-pstate frequencies attributes
- 9f1e5af cpufreq: amd: add boost mode support for amd-pstate
- de13cc0 cpufreq: amd: add trace for amd-pstate module
- a97ebea cpufreq: amd: add acpi cppc function as the backend for legacy processors
- 57448d1 cpufreq: amd: add fast switch function for amd-pstate
- 7d9f559 cpufreq: amd: introduce a new amd pstate driver to support future processors
- 507e3fa ACPI: CPPC: add cppc enable register function
- 281d2f1 ACPI: CPPC: Check present CPUs for determining _CPC is valid
- 006bf95 ACPI: CPPC: implement support for SystemIO registers
- 5abba2f x86/msr: add AMD CPPC MSR definitions
- a00d065 x86/cpufreatures: add AMD Collaborative Processor Performance Control feature flag
- 1243cc7 char/lrng: add power-on and runtime self-tests
- 64564cc char/lrng: add interface for gathering of raw entropy
- 1fba41e char/lrng: add SP800-90B compliant health tests
- 161114f char/lrng: add Jitter RNG fast noise source
- 3c7c2e7 crypto: move Jitter RNG header include dir
- 2797709 char/lrng: add kernel crypto API PRNG extension
- e9384fc char/lrng: add SP800-90A DRBG extension
- 8f2ac07 crypto: DRBG - externalize DRBG functions for LRNG
- 7ce9102 char/lrng: add common generic hash support
- 6b2cceb char/lrng: add switchable DRNG support
- e45b864 char/lrng: sysctls and /proc interface
- f7f12c5 char/lrng: allocate one DRNG instance per NUMA node
- ab993f0 drivers: Introduce the Linux Random Number Generator
- 837b0ae net-tcp_bbr: v2: Fix missing ECT markings on retransmits for BBRv2
- b8fa56f net-tcp_bbr: v2: don't assume prior_cwnd was set entering CA_Loss
- 699194f net-tcp_bbr: v2: remove cycle_rand parameter that is unused in BBRv2
- 19bb512 net-tcp_bbr: v2: remove field bw_rtts that is unused in BBRv2
- b02ffd2 net-tcp_bbr: v2: remove unnecessary rs.delivered_ce logic upon loss
- 9b7be0b net-tcp_bbr: v2: BBRv2 ("bbr2") congestion control for Linux TCP
- 65e4da0 net-tcp: add fast_ack_mode=1: skip rwin check in tcp_fast_ack_mode__tcp_ack_snd_check()
- 39d3633 net-tcp: re-generalize TSO sizing in TCP CC module API
- 3110f23 net-tcp: add new ca opts flag TCP_CONG_WANTS_CE_EVENTS
- 30e316f net-tcp_bbr: v2: set tx.in_flight for skbs in repair write queue
- d50e05b net-tcp_bbr: v2: adjust skb tx.in_flight upon split in tcp_fragment()
- 293e82a net-tcp_bbr: v2: adjust skb tx.in_flight upon merge in tcp_shifted_skb()
- 400bc7e net-tcp_bbr: v2: factor out tx.in_flight setting into tcp_set_tx_in_flight()
- 61a0a75 net-tcp_bbr: v2: introduce ca_ops->skb_marked_lost() CC module callback API
- 6aca161 net-tcp_bbr: v2: export FLAG_ECE in rate_sample.is_ece
- b47bb01 net-tcp_bbr: v2: count packets lost over TCP rate sampling interval
- 8166fcf net-tcp_bbr: v2: snapshot packets in flight at transmit time and pass in rate_sample
- 32b38b7 net-tcp_bbr: v2: shrink delivered_mstamp, first_tx_mstamp to u32 to free up 8 bytes
- 2944f3f net-tcp_rate: account for CE marks in rate sample
- 7222702 net-tcp_rate: consolidate inflight tracking approaches in TCP
- a1b8bfc net-tcp_bbr: broaden app-limited rate sample detection
- 4afde7d mm/vmscan: add sysctl knobs for protecting the working set
- ad80c3b winesync: Introduce the winesync driver and character device
- 304b10f futex: Add entry point for FUTEX_WAIT_MULTIPLE (opcode 31)
- 6d1b969 futex,x86: Wire up sys_futex_waitv()
- 0552eed futex: Implement sys_futex_waitv()
- 4fdad1c clockevents, hrtimer: Make hrtimer granularity and minimum hrtimeout configurable in sysctl. Set default granularity to 100us and min timeout to 500us
- 5e67c25 time: Don't use hrtimer overlay when pm_freezing since some drivers still don't correctly use freezable timeouts.
- 36e2473 hrtimer: Replace all calls to schedule_timeout_uninterruptible of potentially under 50ms to use schedule_msec_hrtimeout_uninterruptible
- c94909f hrtimer: Replace all calls to schedule_timeout_interruptible of potentially under 50ms to use schedule_msec_hrtimeout_interruptible.
- 7a07c55 hrtimer: Replace all schedule timeout(1) with schedule_min_hrtimeout()
- b111913 timer: Convert msleep to use hrtimers when active.
- de3d106 time: Special case calls of schedule_timeout(1) to use the min hrtimeout of 1ms, working around low Hz resolutions.
- 8e6b86a hrtimer: Create highres timeout variants of schedule_timeout functions.
- 1c0343c XANMOD: fair: Remove all energy efficiency functions
- 9232ff8 XANMOD: Makefile: Turn off loop vectorization for GCC -O3 optimization level
- acecd1e XANMOD: init/Kconfig: Enable -O3 KBUILD_CFLAGS optimization for all architectures
- 5973084 XANMOD: lib/kconfig.debug: disable default CONFIG_SYMBOLIC_ERRNAME and CONFIG_DEBUG_BUGVERBOSE
- 70dff07 XANMOD: scripts: disable the localversion "+" tag of a git repo
- 6bf377d XANMOD: cpufreq: tunes ondemand and conservative governor for performance
- 9879bb4 XANMOD: mm/vmscan: vm_swappiness = 30 decreases the amount of swapping
- 51fb6e9 XANMOD: sched/autogroup: Add kernel parameter and config option to enable/disable autogroup feature by default
- d009ad9 XANMOD: dcache: cache_pressure = 50 decreases the rate at which VFS caches are reclaimed
- fb0e769 XANMOD: kconfig: add 500Hz timer interrupt kernel config option
- d0bc093 XANMOD: block: set rq_affinity to force full multithreading I/O requests
- 7c013f8 XANMOD: block, bfq: change BLK_DEV_ZONED depends to IOSCHED_BFQ
- af2a862 XANMOD: elevator: set default scheduler to bfq for blk-mq
- 8bb7eca Linux 5.15
Homepage
Download Linux 5.15.0-xanmod1-cacule source from GitHub
A new XanMod Linux Kernel based on Linux Kernel 5.15 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.