Debian 9924 Published by

A new XanMod Linux Kernel based on Linux Kernel 5.15.54 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.



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-xanmod

Reboot.

Meta packages available: linux-xanmodlinux-xanmod-edgelinux-xanmod-ltslinux-xanmod-rt-edge and linux-xanmod-rt.

To try without adding the repository

Download from Sourceforge and install:
https://sourceforge.net/projects/xanmod/files/

  1. In terminal:
    sudo dpkg -i linux-image-*xanmod*.deb linux-headers-*xanmod*.deb
  2. Reboot.
  • Check it:
    cat /proc/version
* linux-firmware-image package is optional

Linux 5.15.54-xanmod1

300e8dd Linux 5.15.54-xanmod1
af4b149 nvme: add bug report info for global duplicate id
e8d7646 Merge tag 'v5.15.54' into 5.15
843dae1 Linux 5.15.54
c0c041a selftests/net: fix section name when using xdp_dummy.o
a5fe763 dmaengine: idxd: force wq context cleanup on device disable path
568b2bd dmaengine: ti: Add missing put_device in ti_dra7_xbar_route_allocate
2f6ded7 dmaengine: qcom: bam_dma: fix runtime PM underflow
cb9813d dmaengine: ti: Fix refcount leak in ti_dra7_xbar_route_allocate
e08ccba dmaengine: at_xdma: handle errors of at_xdmac_alloc_desc() correctly
c787908 dmaengine: lgm: Fix an error handling path in intel_ldma_probe()
0bbb30d dmaengine: pl330: Fix lockdep warning about non-static key
8b07022 ida: don't use BUG_ON() for debugging
9839d89 dt-bindings: dma: allwinner,sun50i-a64-dma: Fix min/max typo
e99bad0 Revert "serial: 8250_mtk: Make sure to select the right FEATURE_SEL"
2fa22e7 Revert "mm/memory-failure.c: fix race with changing page compound again"
c1c9876 misc: rtsx_usb: set return value in rsp_buf alloc err path
bab1a05 misc: rtsx_usb: use separate command and response buffers
378080b misc: rtsx_usb: fix use of dma mapped buffer for usb bulk transfer
d76704f dmaengine: imx-sdma: Allow imx8m for imx7 FW revs
530ee8d i2c: cadence: Unregister the clk notifier in error path
941d77b r8169: fix accessing unset transport header
3abec0b selftests: forwarding: fix error message in learning_test
1b74fe2 selftests: forwarding: fix learning_test when h1 supports IFF_UNICAST_FLT
8e5fcfe selftests: forwarding: fix flood_unicast_test when h2 supports IFF_UNICAST_FLT
3fdca34 ibmvnic: Properly dispose of all skbs during a failover.
5912e5e ARM: dts: stm32: add missing usbh clock and fix clk order on stm32mp15
d5670ad ARM: dts: stm32: use usbphyc ck_usbo_48m as USBH OHCI clock on stm32mp151
ddec6cb i40e: Fix VF's MAC Address change on VM
9d1e322 i40e: Fix dropped jumbo frames statistics
d2bf1a6 i2c: piix4: Fix a memory leak in the EFCH MMIO support
e7a1d51 xsk: Clear page contiguity bit when unmapping pool
a2b92ff ARM: at91: fix soc detection for SAM9X60 SiPs
e3ee4ff ARM: dts: at91: sama5d2_icp: fix eeprom compatibles
f5b0e6d ARM: dts: at91: sam9x60ek: fix eeprom compatible and size
a65b926 ARM: at91: pm: use proper compatibles for sama7g5's rtc and rtt
cfd0e71 ARM: at91: pm: use proper compatibles for sam9x60's rtc and rtt
9ec5fe5 ARM: at91: pm: use proper compatible for sama5d2's rtc
ec5533b arm64: dts: qcom: msm8992-*: Fix vdd_lvs1_2-supply typo
76292cf pinctrl: sunxi: sunxi_pconf_set: use correct offset
c041165 arm64: dts: imx8mp-phyboard-pollux-rdk: correct i2c2 & mmc settings
4482647 arm64: dts: imx8mp-phyboard-pollux-rdk: correct eqos pad settings
ea8dbe8 arm64: dts: imx8mp-phyboard-pollux-rdk: correct uart pad settings
67a21eb arm64: dts: imx8mp-evk: correct I2C3 pad settings
b34da81 arm64: dts: imx8mp-evk: correct I2C1 pad settings
37413a0 arm64: dts: imx8mp-evk: correct eqos pad settings
ebad4d7 arm64: dts: imx8mp-evk: correct vbus pad settings
f1571c8 arm64: dts: imx8mp-evk: correct gpio-led pad settings
637b3da arm64: dts: imx8mp-evk: correct the uart2 pinctl value
401d27f arm64: dts: imx8mp-evk: correct mmc pad settings
ee1ced3 ARM: mxs_defconfig: Enable the framebuffer
89a718d arm64: dts: qcom: sdm845: use dispcc AHB clock for mdss node
2160940 arm64: dts: qcom: msm8994: Fix CPU6/7 reg values
4157343 ASoC: codecs: rt700/rt711/rt711-sdca: resume bus/codec in .set_jack_detect
ac80a45 ASoC: rt711-sdca: Add endianness flag in snd_soc_component_driver
25e6163 ASoC: rt711: Add endianness flag in snd_soc_component_driver
29029ca pinctrl: sunxi: a83t: Fix NAND function name for some pins
7208101 ARM: meson: Fix refcount leak in meson_smp_prepare_cpus
9c26be2 tty: n_gsm: fix encoding of command/response bit
3b9f491 btrfs: fix use of uninitialized variable at rm device ioctl
cb91c05 virtio-blk: modify the value type of num in virtio_queue_rq()
d35b78c btrfs: fix error pointer dereference in btrfs_ioctl_rm_dev_v2()
f88e797 Revert "serial: sc16is7xx: Clear RS485 bits in the shutdown"
83d3449 xfs: remove incorrect ASSERT in xfs_rename
63a3d23 can: kvaser_usb: kvaser_usb_leaf: fix bittiming limits
420b993 can: kvaser_usb: kvaser_usb_leaf: fix CAN clock frequency regression
baffaed can: kvaser_usb: replace run-time checks with struct kvaser_usb_driver_info
188c798 net: dsa: qca8k: reset cpu port on MTU change
c79726a powerpc/powernv: delay rng platform device creation until later in boot
cc409f8 video: of_display_timing.h: include errno.h
6c9c8a7 memregion: Fix memregion_free() fallback definition
79827e5 PM: runtime: Redefine pm_runtime_release_supplier()
9c9e44b fbcon: Prevent that screen size is smaller than font size
6886327 fbcon: Disallow setting font bigger than screen size
738d06e fbmem: Check virtual screen sizes in fb_set_var()
989b2c4 fbdev: fbmem: Fix logo center image dx issue
e5fde29 iommu/vt-d: Fix PCI bus rescan device hot add
09cb666 module: fix [e_shstrndx].sh_size=0 OOB access
e9f331b module: change to print useful messages from elf_validity_check()
82b5021 dt-bindings: soc: qcom: smd-rpm: Fix missing MSM8936 compatible
93dfb9c dt-bindings: soc: qcom: smd-rpm: Add compatible for MSM8953 SoC
8371666 rxrpc: Fix locking issue
d74b09b irqchip/gic-v3: Refactor ISB + EOIR at ack time
b82dfac irqchip/gic-v3: Ensure pseudo-NMIs have an ISB between ack and handling
51ebf1b io_uring: avoid io-wq -EAGAIN looping for !IOPOLL
b3cec8a Bluetooth: btmtksdio: fix use-after-free at btmtksdio_recv_event
5781bb8 Bluetooth: protect le accept and resolv lists with hdev->lock
8a2dbde drm/mediatek: Add vblank register/unregister callback functions
2c43966 drm/mediatek: Add cmdq_handle in mtk_crtc
d3f1535 drm/mediatek: Detect CMDQ execution timeout
6f77386 drm/mediatek: Remove the pointer of struct cmdq_client
d953c67 drm/mediatek: Use mailbox rx_callback instead of cmdq_task_cb
51a405d drm/i915: Fix a race between vma / object destruction and unbinding
7a9e13b drm/amdgpu: vi: disable ASPM on Intel Alder Lake based systems
0a9a60d drm/amd: Refactor amdgpu_aspm to be evaluated per device
00fa5cb tty: n_gsm: fix invalid gsmtty_write_room() result
156f2c2 serial: 8250_mtk: Make sure to select the right FEATURE_SEL
e58094e tty: n_gsm: fix sometimes uninitialized warning in gsm_dlci_modem_output()
b952aa5 tty: n_gsm: fix invalid use of MSC in advanced option
62d1655 mm/hwpoison: fix race between hugetlb free/demotion and memory_failure_hugetlb()
5429eb5 mm/memory-failure.c: fix race with changing page compound again
7a07875 mm/hwpoison: avoid the impact of hwpoison_filter() return value on mce handler
d04b62b mm/hwpoison: mf_mutex for soft offline and unpoison
a0f4fd4 KVM: Initialize debugfs_dentry when a VM is created to avoid NULL deref
70e2e87 btrfs: zoned: use dedicated lock for data relocation
1519e6e btrfs: zoned: encapsulate inode locking for zoned relocation
920e849 tty: n_gsm: fix missing update of modem controls after DLCI open
4db0a8d ALSA: usb-audio: add mapping for MSI MAG X570S Torpedo MAX.
a7fe693 ALSA: usb-audio: add mapping for MSI MPG X570S Carbon Max Wifi.
6dcf1e5 tty: n_gsm: fix frame reception handling
375dfcf tty: n_gsm: Save dlci address open status when config requester
88a4fb1 tty: n_gsm: Modify CR,PF bit when config requester
e73c0ea KVM: Don't create VM debugfs files outside of the VM directory
f3647c3 drm/amd/vcn: fix an error msg on vcn 3.0
a976456 ASoC: rt5682: fix an incorrect NULL check on list iterator
c005889 ASoC: rt5682: move clk related code to rt5682_i2c_probe
121af02 uapi/linux/stddef.h: Add include guards
1d9bd72 stddef: Introduce DECLARE_FLEX_ARRAY() helper
c2f3dab bus: mhi: Fix pm_state conversion to string
3f6d5cb bus: mhi: core: Use correctly sized arguments for bit field
170a08a serial: sc16is7xx: Clear RS485 bits in the shutdown
5dce84f powerpc/tm: Fix more userspace r13 corruption
ed8a5d6 powerpc: flexible GPR range save/restore macros
0a80e66 powerpc/32: Don't use lmw/stmw for saving/restoring non volatile regs
b342feb scsi: qla2xxx: Fix loss of NVMe namespaces after driver reload test
31c60d1 KVM: s390x: fix SCK locking
8377231 btrfs: don't access possibly stale fs_info data in device_list_add
6784b69 KVM: use __vcalloc for very large allocations
c33904f mm: vmalloc: introduce array allocation functions
ff41804 Compiler Attributes: add _alloc_size() for better bounds checking
a1e69c3 mtd: spi-nor: Skip erase logic when SPI_NOR_NO_ERASE is set
e65d78b batman-adv: Use netif_rx().
4c0bb58 iio: accel: mma8452: use the correct logic to get mma8452_data
ffd3e67 riscv/mm: Add XIP_FIXUP for riscv_pfn_base
d6f1651 NFSD: COMMIT operations must not return NFS?ERR_INVAL
c2a9881 NFSD: De-duplicate net_generic(nf->nf_net, nfsd_net_id)
59bf2ac drm/amd/display: Fix by adding FPU protection for dcn30_internal_validate_bw
f276634 drm/amd/display: Set min dcfclk if pipe count is 0
f799df4 drbd: fix an invalid memory access caused by incorrect use of list iterator
5bb1df0 drbd: Fix double free problem in drbd_create_device
dbbcf21 drbd: add error handling support for add_disk()
72fa2ea btrfs: remove device item and update super block in the same transaction
f75534a btrfs: use btrfs_get_dev_args_from_path in dev removal ioctls
321a818 btrfs: add a btrfs_get_dev_args_from_path helper
5578b68 btrfs: handle device lookup with btrfs_dev_lookup_args
09674bf vdpa/mlx5: Avoid processing works if workqueue was destroyed
008e29d gfs2: Fix gfs2_file_buffered_write endless loop workaround
9b7eb92 scsi: qla2xxx: Fix crash during module load unload test
7280663 scsi: qla2xxx: edif: Replace list_for_each_safe with list_for_each_entry_safe
d451011 scsi: qla2xxx: Fix laggy FC remote port session recovery
241afac scsi: qla2xxx: Move heartbeat handling from DPC thread to workqueue
1e9d685 KVM: x86/mmu: Use common TDP MMU zap helper for MMU notifier unmap hook
eabbe74 KVM: x86/mmu: Use yield-safe TDP MMU root iter in MMU notifier unmapping
0855054 clk: renesas: r9a07g044: Update multiplier and divider values for PLL2/3
518bb96 cxl/port: Hold port reference until decoder release
8b5ce83 mt76: mt7921: do not always disable fw runtime-pm
9d721a1 mt76: mt76_connac: fix MCU_CE_CMD_SET_ROC definition error
6512c3c media: davinci: vpif: fix use-after-free on driver unbind
2823225 media: omap3isp: Use struct_group() for memcpy() region
d57ab89 stddef: Introduce struct_group() helper macro
af9452d block: fix rq-qos breakage from skipping rq_qos_done_bio()
13141cc block: only mark bio as tracked if it really is tracked
eb79d13 block: use bdev_get_queue() in bio.c
df1ec53 io_uring: ensure that fsnotify is always called
5c82c94 virtio-blk: avoid preallocating big SGL for data
32ac44b ibmvnic: Allow queueing resets during probe
85996ef ibmvnic: clear fop when retrying probe
4fe1439 ibmvnic: init init_done_rc earlier
a29c71f s390/setup: preserve memory at OLDMEM_BASE and OLDMEM_SIZE
06de5cf s390/setup: use physical pointers for memblock_reserve()
6ed826c s390/boot: allocate amode31 section in decompressor
aa1f196 netfilter: nft_payload: don't allow th access for fragments
5445819 netfilter: nft_payload: support for inner header matching / mangling
0d9bd7e netfilter: nf_tables: convert pktinfo->tprot_set to flags field
25ca15f ASoC: rt5682: Fix deadlock on resume
f536e0d ASoC: rt5682: Re-detect the combo jack after resuming
4b72179 ASoC: rt5682: Avoid the unexpected IRQ event during going to suspend
301ebfa net/mlx5e: TC, Reject rules with forward and drop actions
6d1ac7f net/mlx5e: TC, Reject rules with drop and modify hdr action
aa944fe net/mlx5e: Split actions_match_supported() into a sub function
f1c36a4 net/mlx5e: Check action fwd/drop flag exists also for nic flows
9103491 RISC-V: defconfigs: Set CONFIG_FB=y, for FB console
49ae6ab riscv: defconfig: enable DRM_NOUVEAU
feacd73 bpf, arm64: Use emit_addr_mov_i64() for BPF_PSEUDO_FUNC
d53c8fe bpf: Stop caching subprog index in the bpf_pseudo_func insn
d3688bf mt76: mt7921: fix a possible race enabling/disabling runtime-pm
281a194 mt76: mt7921: introduce mt7921_mcu_set_beacon_filter utility routine
09aee83 mt76: mt7921: get rid of mt7921_mac_set_beacon_filter
9846b9e platform/x86: wmi: Fix driver->notify() vs ->probe() race
4b53562 platform/x86: wmi: Replace read_takes_no_args with a flags field
789382c platform/x86: wmi: introduce helper to convert driver to WMI driver
a9a1018 qed: Improve the stack space of filter_config()
8a29aec ath11k: add hw_param for wakeup_mhi
16b7cb2 memory: renesas-rpc-if: Avoid unaligned bus access for HyperFlash
a4ac45a media: ir_toy: prevent device from hanging during transmit
e1716b0 PCI: pciehp: Ignore Link Down/Up caused by error-induced Hot Reset
006d00d PCI/portdrv: Rename pm_iter() to pcie_port_device_iter()
b330359 drm/i915: Replace the unconditional clflush with drm_clflush_virt_range()
9cf3a1c drm/i915/gt: Register the migrate contexts with their engines
d839d15 drm/i915: Disable bonding on gen12+ platforms
70fc07e btrfs: fix deadlock between chunk allocation and chunk btree modifications
3fb11d1 dma-buf/poll: Get a file reference for outstanding fence callbacks
1403952 Input: goodix - try not to touch the reset-pin on x86/ACPI devices
8422a9b Input: goodix - refactor reset handling
f5b1c6d Input: goodix - add a goodix.h header file
1354ceb Input: goodix - change goodix_i2c_write() len parameter type to int
8d1d6b2 Input: cpcap-pwrbutton - handle errors from platform_get_irq()
48f8f19 btrfs: fix warning when freeing leaf after subvolume creation failure
9bc53f5 btrfs: fix invalid delayed ref after subvolume creation failure
6618205 btrfs: add additional parameters to btrfs_init_tree_ref/btrfs_init_data_ref
bb5c247 btrfs: rename btrfs_alloc_chunk to btrfs_create_chunk
c1784d2 netfilter: nf_tables: stricter validation of element data
5ccecaf netfilter: nft_set_pipapo: release elements in clone from abort path
75e9009 net: rose: fix UAF bug caused by rose_t0timer_expiry
db89582 usbnet: fix memory leak in error case
a7de8d4 bpf: Fix insufficient bounds propagation from adjust_scalar_min_max_vals
a703cbd bpf: Fix incorrect verifier simulation around jmp32's jeq/jne
f7c9b38 can: mcp251xfd: mcp251xfd_regmap_crc_read(): update workaround broken CRC on TBC register
0cab3fb can: mcp251xfd: mcp251xfd_regmap_crc_read(): improve workaround handling for mcp2517fd
c7333f7 can: m_can: m_can{read_fifo,echo_tx_event}(): shift timestamp to full 32 bits
f4d90e9 can: m_can: m_can_chip_config(): actually enable internal timestamping
0e60230 can: gs_usb: gs_usb_open/close(): fix memory leak
8cfa1a3 can: grcan: grcan_probe(): remove extra of_node_get()
f34f2a1 can: bcm: use call_rcu() instead of costly synchronize_rcu()
51aab37 ALSA: cs46xx: Fix missing snd_card_free() call at probe error
f768f3c ALSA: hda/realtek: Add quirk for Clevo L140PU
f62c53c ALSA: usb-audio: Workarounds for Behringer UMC 204/404 HD
e63b94b Revert "selftests/bpf: Add test for bpf_timer overwriting crash"
066a5b6 mm/filemap: fix UAF in find_lock_entries
0515cc9 mm/slub: add missing TID updates on slab deactivation
Xanmod

Homepage
Download Linux 5.15.54-xanmod1 source from GitHub