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.72-xanmod1
f1dfb2c Linux 5.15.72-xanmod1
abcaaf8 Merge tag 'v5.15.72' into 5.15
c68173b Linux 5.15.72
713fa3e drm/i915/gem: Really move i915_gem_context.link under ref protection
a00ed4e x86/alternative: Fix race in try_get_desc()
c3d4b89 KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest
ab5c578 clk: iproc: Do not rely on node name for correct PLL setup
e748a08 clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
19f4e16 fs: split off setxattr_copy and do_setxattr function from setxattr
a0e3719 vdpa/ifcvf: fix the calculation of queuepair
4755d9d selftests: Fix the if conditions of in test_extra_filter()
c83a760 net: phy: Don't WARN for PHY_UP state in mdio_bus_phy_resume()
a8cd7e1 net: stmmac: power up/down serdes in stmmac_open/release
67c00bc wifi: mac80211: fix regression with non-QoS drivers
520e434 nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
e9d7d80 net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe
8b1b908 cxgb4: fix missing unlock on ETHOFLD desc collect fail path
e99c7a6 net: sched: act_ct: fix possible refcount leak in tcf_ct_init()
815381a usbnet: Fix memory leak in usbnet_disconnect()
af91321 gpio: mvebu: Fix check for pwm support on non-A8K platforms
f592ccd Input: melfas_mip4 - fix return value check in mip4_probe()
ff982b1 Revert "drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time"
bde7795 drm/bridge: lt8912b: fix corrupted image output
e103b0e drm/bridge: lt8912b: set hdmi or dvi mode
473f653 drm/bridge: lt8912b: add vsync hsync
6a12105 ASoC: tas2770: Reinit regcache on reset
75ef73d arm64: dts: qcom: sm8350: fix UFS PHY serdes size
5664dc8 ASoC: imx-card: Fix refcount issue with of_node_put
367403b soc: sunxi: sram: Fix debugfs info for A64 SRAM C
68d2f42 soc: sunxi: sram: Fix probe function ordering issues
2f82b52 soc: sunxi_sram: Make use of the helper function devm_platform_ioremap_resource()
861adc2 soc: sunxi: sram: Prevent the driver from being unbound
8b07378 soc: sunxi: sram: Actually claim SRAM regions
d50e0e2 ARM: dts: am5748: keep usb4_tm disabled
c48e3db reset: imx7: Fix the iMX8MP PCIe PHY PERST support
6062291 ARM: dts: am33xx: Fix MMCHS0 dma properties
bfe5dc2 swiotlb: max mapping size takes min align mask into account
a6a3b6b media: v4l2-compat-ioctl32.c: zero buffer passed to v4l2_compat_get_array_args()
ab9d328 media: rkvdec: Disable H.264 error detection
6937913 media: dvb_vb2: fix possible out of bound access
6287c9e mm,hwpoison: check mm when killing accessing process
f9aed3d mm: fix madivse_pageout mishandling on non-LRU page
1299c11 mm/migrate_device.c: flush TLB while holding PTL
e858f7a mm: fix dereferencing possible ERR_PTR
d75ce11 mm: prevent page_frag_alloc() from corrupting the memory
23d17e2 mm/page_alloc: fix race condition between build_all_zonelists and page allocation
fec2db7 mmc: hsq: Fix data stomping during mmc recovery
4fef6e1 mmc: moxart: fix 4-bit bus width and remove 8-bit bus width
4f75d0c libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
dc248dd vduse: prevent uninitialized memory accesses
ea77482 drm/amdgpu: Add amdgpu suspend-resume code path under SRIOV
25759a7 drm/i915/gt: Restrict forced preemption to the active context
e0f5763 Revert "firmware: arm_scmi: Add clock management to the SCMI power domain"
5de02ab net: mt7531: only do PLL once after the reset
56e3f8d mm/damon/dbgfs: fix memory leak when using debugfs_lookup()
149da9e ntfs: fix BUG_ON in ntfs_lookup_inode_by_name()
dc8cdb9 ARM: dts: integrator: Tag PCI host with device_type
aa5c3aa x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd
476c188 clk: ingenic-tcu: Properly enable registers before accessing timers
d134b0f can: c_can: don't cache TX messages for C_CAN cores
6fff203 Input: snvs_pwrkey - fix SNVS_HPVIDR1 register address
006a508 net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
81e759d thunderbolt: Explicitly reset plug events delay back to USB4 spec value
85a70a2 usb: typec: ucsi: Remove incorrect warning
ac12a04 uas: ignore UAS for Thinkplus chips
528aba7 usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS
0a4e8f3 uas: add no-uas quirk for Hiksemi usb_disk
8484a35 cgroup: cgroup_get_from_id() must check the looked-up kn is a directory
ae04dd5 cgroup: reduce dependency on cgroup_mutex
7a64e6d ALSA: hda/realtek: fix speakers and micmute on HP 855 G8
6a3bee2 ALSA: hda: Fix Nvidia dp infoframe
f7392f9 ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation
de5dedd ALSA: hda: Do disconnect jacks at codec unbind
90c7e9b Linux 5.15.71
2141946 ext4: use locality group preallocation for small closed files
8a1ac41 ext4: avoid unnecessary spreading of allocations among groups
fd8b829 ext4: make mballoc try target group first even with mb_optimize_scan
21dada4 ext4: limit the number of retries after discarding preallocations blocks
be4df01 ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0
90bc7b6 ext4: make directory inode spreading reflect flexbg size
95d714d devdax: Fix soft-reservation memory description
27bf7a5 NFSv4: Fixes for nfs4_inode_return_delegation()
21b0301 drm/amdgpu: don't register a dirty callback for non-atomic
6eb0824 i2c: mlxbf: Fix frequency calculation
dc2a0c5 i2c: mlxbf: prevent stack overflow in mlxbf_i2c_smbus_start_transaction()
621c6ab i2c: mlxbf: incorrect base address passed during io write
c242dbf i2c: imx: If pm_runtime_get_sync() returned 1 device access is possible
c71ec39 workqueue: don't skip lockdep work dependency in cancel_work_sync()
929ef15 fsdax: Fix infinite loop in dax_iomap_rw()
9aac381 drm/rockchip: Fix return type of cdn_dp_connector_mode_valid
1c26968 drm/amd/display: Mark dml30's UseMinimumDCFCLK() as noinline for stack usage
492db4f drm/amd/display: Reduce number of arguments of dml31's CalculateFlipSchedule()
9539cfc drm/amd/display: Reduce number of arguments of dml31's CalculateWatermarksAndDRAMSpeedChangeSupport()
a541c01 drm/amd/display: Limit user regamma to a valid value
33b128f drm/amdgpu: use dirty framebuffer helper
f76d6f3 drm/amd/pm: disable BACO entry/exit completely on several sienna cichlid cards
e5ae504 drm/gma500: Fix BUG: sleeping function called from invalid context errors
e07d915 Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region
5f270b6 drm/amd/amdgpu: fixing read wrong pf2vf data in SRIOV
d3a67c2 s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup
faf0e1b serial: tegra-tcu: Use uart_xmit_advance(), fixes icount.tx accounting
0aada77 serial: tegra: Use uart_xmit_advance(), fixes icount.tx accounting
4c7e172 serial: Create uart_xmit_advance()
4199425 serial: fsl_lpuart: Reset prior to registration
cc1504f KVM: x86/mmu: Fold rmap_recycle into rmap_add
dddae48 selftests: forwarding: add shebang for sch_red.sh
08483e4 bnxt: prevent skb UAF after handing over to PTP worker
f8162ae net: sched: fix possible refcount leak in tc_new_tfilter()
bd29ca2 net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD
ec3a6f4 bonding: fix NULL deref in bond_rr_gen_slave_id
db145b8 net/smc: Stop the CLC flow if no link to map buffers on
5daef00 drm/mediatek: dsi: Move mtk_dsi_stop() call back to mtk_dsi_poweroff()
a08cba2 perf tools: Honor namespace when synthesizing build-ids
1a83f39 perf kcore_copy: Do not check /proc/modules is unchanged
a3b923f perf jit: Include program header in ELF files
39dc6cc perf stat: Fix BPF program section name
c6d9396 can: gs_usb: gs_can_open(): fix race dev->can.state condition
e1676ad net: sh_eth: Fix PHY state warning splat during system resume
7120051 net: ravb: Fix PHY state warning splat during system resume
d5917b7 netfilter: ebtables: fix memory leak when blob is malformed
08d7524 netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain()
91aa526 netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain()
c721623 net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs
f58e431 net/sched: taprio: avoid disabling offload when it was never enabled
510e703 net: enetc: deny offload of tc-based TSN features on VF interfaces
11eb9ed net: enetc: move enetc_set_psfp() out of the common enetc_set_features()
c60801e wireguard: netlink: avoid variable-sized memcpy on sockaddr
3ebf690 wireguard: ratelimiter: disable timings test by default
c2dc533 net: ipa: properly limit modem routing table use
cbdab7d of: mdio: Add of_node_put() when breaking out of for_each_xx
ca86577 drm/hisilicon: Add depends on MMU
68c4ace drm/hisilicon/hibmc: Allow to be built if COMPILE_TEST is enabled
8547c7b sfc: fix null pointer dereference in efx_hard_start_xmit
360910b sfc: fix TX channel offset when using legacy interrupts
bc750d7 i40e: Fix set max_tx_rate when it is lower than 1 Mbps
53220b9 i40e: Fix VF set max MTU size
7249a65 iavf: Fix set max MTU size with port VLAN and jumbo frames
030e068 mlxbf_gige: clear MDIO gateway lock after read
93859f6 iavf: Fix bad page state
e1dbe8a um: fix default console kernel parameter
7400e2e MIPS: Loongson32: Fix PHY-mode being left unspecified
abea65f MIPS: lantiq: export clk_get_io() for lantiq_wdt.ko
831cf63 drm/panel: simple: Fix innolux_g121i1_l01 bus_format
408d575 net: team: Unsync device addresses on ndo_stop
f50265a net: bonding: Unsync device addresses on ndo_stop
e6b277f net: bonding: Share lacpdu_mcast_addr definition
8b2ab46 scsi: mpt3sas: Fix return value check of dma_get_required_mask()
89df49e scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts()
5826a55 net: phy: aquantia: wait for the suspend/resume operations to finish
4d2f1bc net: core: fix flow symmetric hash
8d06006 ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header
dae9d2a iavf: Fix cached head and tail value for iavf_get_tx_pending
34447d6 ice: Don't double unplug aux on peer initiated reset
816eab1 netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()
dc33ffb netfilter: nf_conntrack_irc: Tighten matching on DCC message
0606c5d netfilter: nf_conntrack_sip: fix ct_sip_walk_headers
0babb5b arm64: dts: rockchip: Remove 'enable-active-low' from rk3399-puma
dd5a6c5 dmaengine: ti: k3-udma-private: Fix refcount leak bug in of_xudma_dev_get()
1b0e46d arm64: dts: rockchip: Set RK3399-Gru PCLK_EDP to 24 MHz
e352fea drm/mediatek: dsi: Add atomic {destroy,duplicate}_state, reset callbacks
43733b6 arm64: dts: rockchip: Fix typo in lisense text for PX30.Core
2929463 arm64: dts: rockchip: Pull up wlan wake# on Gru-Bob
166a332 firmware: arm_scmi: Fix the asynchronous reset requests
1f08a1b firmware: arm_scmi: Harden accesses to the reset domains
9ec5a53 xfs: validate inode fork size against fork format
5caa3a1 xfs: fix xfs_ifree() error handling to not leak perag ref
9e7b231 xfs: reorder iunlink remove operation in xfs_ifree
28c7ef8 vmlinux.lds.h: CFI: Reduce alignment of jump-table to function alignment
3c3edb8 arm64: topology: fix possible overflow in amu_fie_setup()
2427a04 KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled
61703b2 mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context.
2d6e55e mm/slub: fix to return errno if kmalloc() fails
71075d7 net: mana: Add rmb after checking owner bits
19aea37 can: flexcan: flexcan_mailbox_read() fix return value for drop = true
bf0197a kasan: call kasan_malloc() from _kmalloc*track_caller()
c75288a riscv: fix a nasty sigreturn bug...
97da736 gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully
9b26723 gpio: mockup: Fix potential resource leakage when register a chip
1835209 gpio: mockup: fix NULL pointer dereference when removing debugfs
2279e97 wifi: mt76: fix reading current per-tid starting sequence number for aggregation
b5bc5a2 efi: libstub: check Shim mode using MokSBStateRT
ef43fee efi: x86: Wipe setup_data on pure EFI boot
b173f1f thunderbolt: Add support for Intel Maple Ridge single port controller
65b13f9 usb: dwc3: core: leave default DMA if the controller does not support 64-bit DMA
7143f6c media: flexcop-usb: fix endpoint type check
d8a76a2 btrfs: fix hang during unmount when stopping a space reclaim worker
4605326 btrfs: fix hang during unmount when stopping block group reclaim worker
b02f866 iommu/vt-d: Check correct capability for sagaw determination
a963fe6 ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop
4b2fa20 ALSA: hda/realtek: Add quirk for ASUS GA503R laptop
eb54e45 ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
0898469 ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
c6a746b ALSA: hda/realtek: Re-arrange quirk table entries
41e974c ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop
5421125 ALSA: hda/realtek: Add quirk for Huawei WRT-WX9
84481d7 ALSA: hda: add Intel 5 Series / 3400 PCI DID
04b5bd5 ALSA: hda/tegra: set depop delay for tegra
e10425c ALSA: core: Fix double-free at snd_card_new()
10a8c5d Revert "ALSA: usb-audio: Split endpoint setups for hw_params and prepare"
06c0204 USB: serial: option: add Quectel RM520N
6cf9e8b USB: serial: option: add Quectel BG95 0x0203 composition
369b008 USB: core: Fix RST error in hub.c
d10d1e9 drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES
6eede01 Revert "usb: gadget: udc-xilinx: replace memcpy with memcpy_toio"
c02431f Revert "usb: add quirks for Lenovo OneLink+ Dock"
8de5e12 usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
2db7a71 usb: add quirks for Lenovo OneLink+ Dock
a72eee6 usb: dwc3: gadget: Avoid duplicate requests to enable Run/Stop
f79a57d usb: dwc3: gadget: Don't modify GEVNTCOUNT in pullup()
1a99239 usb: dwc3: gadget: Refactor pullup()
7604a21 usb: dwc3: gadget: Prevent repeat pullup()
a0b5d22 usb: dwc3: Issue core soft reset before enabling run/stop
8d583ba usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind
167b18f staging: r8188eu: Add Rosewill USB-N150 Nano to device tables
add40ed staging: r8188eu: Remove support for devices with 8188FU chipset (0bda:f179)
55653c5 drm/amdgpu: make sure to init common IP before gmc
25a90a1 drm/amdgpu: Separate vf2pf work item init from virt data exchange
Homepage
Download Linux 5.15.72-xanmod1 source from GitHub
A new XanMod Linux Kernel based on the new Linux Kernel 5.15.72 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.