Linux 6.9.7-xanmod1
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/versionChange log
- a806d19 Linux 6.9.7-xanmod1
- cf25f28 XANMOD: .gitlab-ci: Change docker image to xanmod-toolchain:20240628
- bfe9df0 Merge tag 'v6.9.7' into 6.9
- 12c740d Linux 6.9.7
- 095dfd9 Revert "mm: mmap: allow for the maximum number of bits for randomizing mmap_base by default"
- 5c117d5 hid: asus: asus_report_fixup: fix potential read out of bounds
- c47b277 kprobe/ftrace: fix build error due to bad function definition
- f2dc8dc net/sched: unregister lockdep keys in qdisc_create/qdisc_alloc error path
- 71ae8c2 ASoC: Intel: sof-sdw: really remove FOUR_SPEAKER quirk
- 46c8947 wifi: ath12k: check M3 buffer size as well whey trying to reuse it
- be52965 drm/amd/display: revert Exit idle optimizations before HDCP execution
- 1363890 x86/cpu: Fix x86_match_cpu() to match just X86_VENDOR_INTEL
- 7c1ace3 x86/cpu/vfm: Add new macros to work with (vendor/family/model) values
- 71f4f06 tracing: Add MODULE_DESCRIPTION() to preemptirq_delay_test
- 72a0b0b nbd: Fix signal handling
- 0355b8c nbd: Improve the documentation of the locking assumptions
- 3ebd121 spi: stm32: qspi: Clamp stm32_qspi_get_mode() output to CCR_BUSWIDTH_4
- 278c0ef thermal: core: Change PM notifier priority to the minimum
- f0b3b89 arm64: dts: imx8qm-mek: fix gpio number for reg_usdhc2_vmmc
- 211a248 spi: stm32: qspi: Fix dual flash mode sanity test in stm32_qspi_setup()
- b6978a9 thermal: int340x: processor_thermal: Support shared interrupts
- cd2428b dt-bindings: i2c: google,cros-ec-i2c-tunnel: correct path to i2c-controller schema
- dab77d8 virt: guest_memfd: fix reference leak on hwpoisoned page
- d7d6aa8 dt-bindings: i2c: atmel,at91sam: correct path to i2c-controller schema
- 89f5457 i2c: ocores: set IACK bit after core is enabled
- 5827545 ima: Avoid blocking in RCU read-side critical section
- dec2382 mm/page_table_check: fix crash on ZONE_DEVICE
- 605b7c3 tcp: clear tp->retrans_stamp in tcp_rcv_fastopen_synack()
- d64d366 selftests: mptcp: userspace_pm: fixed subtest names
- 8c6c371 mm: shmem: fix getting incorrect lruvec when replacing a shmem folio
- 5df493a mm: huge_memory: fix misused mapping_large_folio_support() for anon folios
- a441356 mm: mmap: allow for the maximum number of bits for randomizing mmap_base by default
- e634ba8 MIPS: mipsmtregs: Fix target register for MFTC0
- 2c48087 serial: 8250_dw: Revert "Move definitions to the shared header"
- 777577b efi/x86: Free EFI memory map only when installing a new one.
- 4385112 kcov: don't lose track of remote references during softirqs
- ff8fe0a gcov: add support for GCC 14
- ebaa7d3 net/tcp_ao: Don't leak ao_info on error-path
- 8e1f54e dmaengine: xilinx: xdma: Fix data synchronisation in xdma_channel_isr()
- f49eaf6 ata: ahci: Do not enable LPM if no LPM states are supported by the HBA
- e36f6a0 scsi: usb: uas: Do not query the IO Advice Hints Grouping mode page for USB/UAS devices
- b8d0861 scsi: core: Introduce the BLIST_SKIP_IO_HINTS flag
- eb63357 ocfs2: fix NULL pointer dereference in ocfs2_abort_trigger()
- 72663d3 ocfs2: fix NULL pointer dereference in ocfs2_journal_dirty()
- 261614d dt-bindings: dma: fsl-edma: fix dma-channels constraints
- 068eb46 drm/amd/display: Attempt to avoid empty TUs when endpoint is DPIA
- e6eb256 drm/amd/display: Remove redundant idle optimization check
- c4cc939 drm/amdgpu: fix locking scope when flushing tlb
- b0d6126 drm/amdgpu: fix UBSAN warning in kv_dpm.c
- 468a50f drm/radeon: fix UBSAN warning in kv_dpm.c
- a68facb drm/i915/mso: using joiner is not possible with eDP MSO
- 87366fc ALSA: hda/realtek: Add quirk for Lenovo Yoga Pro 7 14AHP9
- 66de09e ALSA: hda/realtek: Limit mic boost on N14AP7
- 52b7d2c ALSA: hda/realtek: fix mute/micmute LEDs don't work for ProBook 445/465 G11.
- be21995 wifi: mac80211: fix monitor channel with chanctx emulation
- c7f5567 ovl: fix encoding fid for lower only root
- c1e670b RDMA/mlx5: Ensure created mkeys always have a populated rb_key
- c691e31 RDMA/mlx5: Follow rb_key.ats when creating new mkeys
- b325554 RDMA/mlx5: Remove extra unlock on error path
- 19bdb59 RDMA/rxe: Fix data copy for IB_SEND_INLINE
- 89414cc KVM: x86: Always sync PIR to IRR prior to scanning I/O APIC routes
- 152b412 KVM: arm64: Disassociate vcpus from redistributor region on teardown
- 95c8dd7 KVM: Fix a data race on last_boosted_vcpu in kvm_vcpu_on_spin()
- 80f632f LoongArch: Fix multiple hardware watchpoint issues
- 2ca4225 LoongArch: Trigger user-space watchpoints correctly
- c864815 LoongArch: Fix watchpoint setting error
- 5def908 cifs: fix typo in module parameter enable_gcm_256
- f8d3d89 scsi: ufs: core: Free memory allocated for model before reinit
- ab58fe2 btrfs: retry block group reclaim without infinite loop
- 5dfe240 net: do not leave a dangling sk pointer, when socket creation fails
- 771c505 net: phy: dp83tg720: get master/slave configuration in link down state
- 4290228 net: usb: ax88179_178a: improve reset check
- 358a949 net: stmmac: Assign configured channel value to EXTTS event
- afadeef net: phy: dp83tg720: wake up PHYs in managed mode
- b829687 ext4: fix slab-out-of-bounds in ext4_mb_find_good_group_avg_frag_lists()
- 87a1187 ext4: avoid overflow when setting values via sysfs
- 9750135 ACPI: EC: Evaluate orphan _REG under EC device
- bab58e0 RDMA/mana_ib: Ignore optional access flags for MRs
- 4ab99e3 RDMA/mlx5: Add check for srq max_sge attribute
- 1e3179e RDMA/mlx5: Fix unwind flow as part of mlx5_ib_stage_init_init
- acbfea1 LoongArch: Only allow OBJTOOL & ORC unwinder if toolchain supports -mthin-add-sub
- 2c38df5 firmware: psci: Fix return value from psci_system_suspend()
- acb0702 io_uring/rsrc: fix incorrect assignment of iter->nr_segs in io_import_fixed
- e96fe6d drm/xe/vf: Don't touch GuC irq registers if using memory irqs
- a95c4b5 spi: spi-imx: imx51: revert burst length calculation back to bits_per_word
- 3eb35fc x86/resctrl: Don't try to free nonexistent RMIDs
- 39a92db spi: Fix SPI slave probe failure
- 11e9bdf ACPI: scan: Ignore camera graph port nodes on all Dell Tiger, Alder and Raptor Lake models
- e21a4c9 ACPICA: Revert "ACPICA: avoid Info: mapping multiple BARs. Your kernel is fine."
- 067bf62 arm64: dts: freescale: imx8mm-verdin: enable hysteresis on slow input pin
- 4a6d69e arm64: dts: imx93-11x11-evk: Remove the 'no-sdio' property
- 45bb8fa arm64: dts: freescale: imx8mp-venice-gw73xx-2x: fix BT shutdown GPIO
- 973686d arm: dts: imx53-qsb-hdmi: Disable panel instead of deleting node
- e958b8f arm64: dts: imx8mp: Fix TC9595 input clock on DH i.MX8M Plus DHCOM SoM
- ce03343 thermal/drivers/mediatek/lvts_thermal: Return error in case of invalid efuse data
- e2e66aa regulator: bd71815: fix ramp values
- ef7bacf dmaengine: ioatdma: Fix missing kmem_cache_destroy()
- 902feac dmaengine: fsl-edma: avoid linking both modules
- e8943bb dmaengine: ioatdma: Fix kmemleak in ioat_pci_probe()
- 39082e6 dmaengine: ioatdma: Fix error path in ioat3_dma_probe()
- 02f7330 dmaengine: ioatdma: Fix leaking on version mismatch
- a5ab5f4 dmaengine: ti: k3-udma-glue: Fix of_k3_udma_glue_parse_chn_by_id()
- a149689 dmaengine: idxd: Fix possible Use-After-Free in irq_process_work_list
- 5f8fbf7 regulator: core: Fix modpost error "regulator_get_regmap" undefined
- 943c94f RDMA/rxe: Fix responder length checking for UD request packets
- 1768f00 spi: cs42l43: Correct SPI root clock speed
- 8d0f938 powerpc/crypto: Add generated P8 asm to .gitignore
- f24381d phy: qcom: qmp-combo: Switch from V6 to V6 N4 register offsets
- 92a2bbc phy: qcom-qmp: pcs: Add missing v6 N4 register offsets
- ced3dd7 phy: qcom-qmp: qserdes-txrx: Add missing registers offsets
- f9dc862 arm64: dts: freescale: imx8mm-verdin: Fix GPU speed
- f40fb88 RDMA/bnxt_re: Fix the max msix vectors macro
- 06a3c6e net: usb: rtl8150 fix unintiatilzed variables in rtl8150_get_link_ksettings
- 022847c bnxt_en: Restore PTP tx_avail count in case of skb_pad() error
- d0a1681 ice: Fix VSI list rule with ICE_SW_LKUP_LAST type
- 558ced0 netfilter: move the sysctl nf_hooks_lwtunnel into the netfilter core
- 561475d seg6: fix parameter passing when calling NF_HOOK() in End.DX4 and End.DX6 behaviors
- 3fc09e1 netfilter: ipset: Fix suspicious rcu_dereference_protected()
- ff6bc8c octeontx2-pf: Fix linking objects into multiple modules
- 7b4d9d2 octeontx2-pf: Add error handling to VLAN unoffload handling
- cbfffb7 virtio_net: fixing XDP for fully checksummed packets handling
- 1e15b61 virtio_net: checksum offloading handling fix
- f017828 net: stmmac: No need to calculate speed divider when offload is disabled
- 4d2a101 selftests: openvswitch: Use bash as interpreter
- e1fccfb ptp: fix integer overflow in max_vclocks_store
- b4382b8 sched: act_ct: add netns into the key of tcf_ct_flow_table
- 6808b41 tipc: force a dst refcount before doing decryption
- 7a0e497 net/sched: act_api: fix possible infinite loop in tcf_idr_check_alloc()
- b96c36d net: phy: mxl-gpy: Remove interrupt mask clearing from config_init
- 8c6bfeb net: lan743x: Support WOL at both the PHY and MAC appropriately
- ff76b4b net: lan743x: disable WOL upon resume to restore full data path operation
- b42fd35 qca_spi: Make interrupt remembering atomic
- 3af28df netns: Make get_net_ns() handle zero refcount net
- 600a62b xfrm6: check ip6_dst_idev() return value in xfrm6_get_saddr()
- 6eed6d3 ipv6: prevent possible NULL dereference in rt6_probe()
- ae8d3d3 ipv6: prevent possible NULL deref in fib6_nh_init()
- d377f5a netrom: Fix a memory leak in nr_heartbeat_expiry()
- d28e709 ALSA: hda/realtek: Enable headset mic on IdeaPad 330-17IKB 81DM
- 5943fa4 netdev-genl: fix error codes when outputting XDP features
- 5e90258 bpf: Avoid splat in pskb_pull_reason
- 7e30eb0 ALSA: hda: tas2781: Component should be unbound before deconstruction
- 4c345c2 ALSA: hda: cs35l41: Component should be unbound before deconstruction
- f33d09c ALSA: hda: cs35l56: Component should be unbound before deconstruction
- 14e67a5 cipso: fix total option length computation
- c70f0a5 net: mvpp2: use slab_build_skb for oversized frames
- 25cfe59 btrfs: zoned: allocate dummy checksums for zoned NODATASUM writes
- 41e8ab4 bpf: Fix reg_set_min_max corruption of fake_reg
- d6a44eb ice: implement AQ download pkg retry
- d4090e3 ice: fix 200G link speed message log
- 20139c6 ice: avoid IRQ collision to fix init failure on ACPI S3 resume
- a88e417 ALSA/hda: intel-dsp-config: Document AVS as dsp_driver option
- 6759bd0 ALSA: hda/realtek: Remove Framework Laptop 16 from quirks
- 92a054a wifi: mac80211: Recalc offload when monitor stop
- 2404938 wifi: iwlwifi: mvm: fix ROC version check
- 72a0199 tracing: Build event generation tests only as modules
- da895fd mips: bmips: BCM6358: make sure CBR is correctly set
- 10d55b2 MIPS: Routerboard 532: Fix vendor retry check code
- 189498b ALSA: seq: ump: Fix missing System Reset message handling
- 19be722 ALSA: hda: cs35l41: Possible null pointer dereference in cs35l41_hda_unbind()
- 22f9223 OPP: Fix required_opp_tables for multiple genpds using same table
- 38443f3 PCI: Do not wait for disconnected devices when resuming
- 2b2b0ac ACPI: EC: Install address space handler at the namespace root
- 8015c17 cpufreq: amd-pstate: fix memory leak on CPU EPP exit
- 0885305 usb: typec: qcom-pmic-typec: split HPD bridge alloc and registration
- 9313244 vfio/pci: Collect hot-reset devices to local buffer
- 21becdf cxl: Add post-reset warning if reset results in loss of previously committed HDM decoders
- 2b42e95 i2c: lpi2c: Avoid calling clk_get_rate during transfer
- 5920ac1 tty: add the option to have a tty reject a new ldisc
- c106b0f xhci: remove XHCI_TRUST_TX_LENGTH quirk
- 055e04a usb: gadget: function: Remove usage of the deprecated ida_simple_xx() API
- 04e7b68 serial: exar: adding missing CTI and Exar PCI ids
- 53b2c95 serial: imx: Introduce timeout when waiting on transmitter empty
- 38d647d MIPS: Octeon: Add PCIe link status check
- f47ed3b f2fs: don't set RO when shutting down f2fs
- 729aeee PCI/PM: Avoid D3cold for HP Pavilion 17 PC/1972 PCIe Ports
- 23bb595 udf: udftime: prevent overflow in udf_disk_stamp_to_time()
- a7ae23b usb: typec: ucsi_glink: drop special handling for CCI_BUSY
- 8a2ecba usb: dwc3: pci: Don't set "linux,phy_charger_detect" property on Lenovo Yoga Tab2 1380
- 9004784 Avoid hw_desc array overrun in dw-axi-dmac
- 489d77f usb: misc: uss720: check for incompatible versions of the Belkin F5U002
- ac795af usb: typec: ucsi_glink: rework quirks implementation
- ae39c8e f2fs: remove clear SB_INLINECRYPT flag in default_options
- 9341e64 f2fs: fix to detect inconsistent nat entry during truncation
- 59f81a7 usb: gadget: uvc: configfs: ensure guid to be valid before set
- 81d5125 kprobe/ftrace: bail out if ftrace was killed
- 6452679 ext4: fix uninitialized ratelimit_state->lock access in __ext4_fill_super()
- 1111039 ext4: do not create EA inode under buffer lock
- 9ec83d5 iommu/arm-smmu-v3: Free MSIs in case of ENOMEM
- 41b0d1d power: supply: cros_usbpd: provide ID table for avoiding fallback match
- b9e2596 platform/x86: p2sb: Don't init until unassigned resources have been assigned
- 594ae37 powerpc/io: Avoid clang null pointer arithmetic warnings
- 3a693c7 media: mtk-vcodec: potential null pointer deference in SCP
- ad893d0 media: intel/ipu6: Fix build with !ACPI
- aa6107d powerpc/pseries: Enforce hcall result buffer validity and size
- becd1e6 ALSA: hda/realtek: Add quirks for Lenovo 13X
- 30bc12e ALSA: hda/realtek: Add quirks for HP Omen models using CS35L41
- 4995adb platform/x86: x86-android-tablets: Add Lenovo Yoga Tablet 2 Pro 1380F/L data
- f0c9828 platform/x86: x86-android-tablets: Unregister devices in reverse order
- 58bfd31 drm/lima: mask irqs in timeout path before hard reset
- 7813765 drm/lima: include pp bcast irq in timeout handler check
- 4180af7 drm/lima: add mask irq callback to gp and pp
- ab03713 ASoC: Intel: sof_sdw: add quirk for Dell SKU 0C0F
- 29d39a5 ASoC: Intel: sof_sdw: add JD2 quirk for HP Omen 14
- d3cdcc7 cgroup/cpuset: Make cpuset hotplug processing synchronous
- 10c66da platform/x86: toshiba_acpi: Add quirk for buttons on Z830
- de1af9a drm/amd/display: Workaround register access in idle race with cursor
- 6e8f90b drm/amd/display: Exit idle optimizations before HDCP execution
- b3fe23f Bluetooth: ath3k: Fix multiple issues reported by checkpatch.pl
- 42146ee net: ena: Add validation for completion descriptors consistency
- 82552bd selftests: net: fix timestamp not arriving in cmsg_time.sh
- f6824c5 bpf: avoid uninitialized warnings in verifier_global_subprogs.c
- 27d9380 ACPI: video: Add backlight=native quirk for Lenovo Slim 7 16ARH7
- 3b90d0c HID: asus: fix more n-key report descriptors if n-key quirked
- 1fa6bec HID: Add quirk for Logitech Casa touchpad
- e974dd4 wifi: mt76: mt7921s: fix potential hung tasks during chip recovery
- cf34a82 wifi: ath12k: fix the problem that down grade phy mode operation
- a130e7d netpoll: Fix race condition in netpoll_owner_active
- 39912b0 ACPI: resource: Skip IRQ override on Asus Vivobook Pro N6506MV
- 846c736 net: dsa: realtek: do not assert reset on remove
- b12fb93 net: dsa: realtek: keep default LED state in rtl8366rb
- f322f88 kselftest: arm64: Add a null pointer check
- bd230b5 arm64/sysreg: Update PIE permission encodings
- 79cb38e net/sched: fix false lockdep warning on qdisc root lock
- 93e4c37 net: sfp: add quirk for ATS SFP-GE-T 1000Base-TX module
- b3dcad0 net: sfp: enhance quirk for Fibrestore 2.5G copper SFP module
- e2f433e scsi: qedi: Fix crash while reading debugfs attribute
- bb50a4e wifi: ath12k: fix kernel crash during resume
- 1c9c3f2 ACPI: resource: Do IRQ override on GMxBGxx (XMG APEX 17 M23)
- 07ea878 drop_monitor: replace spin_lock by raw_spin_lock
- e36383d ACPI: x86: Add PNP_UART1_SKIP quirk for Lenovo Blade2 tablets
- 13b5e2b clocksource: Make watchdog and suspend-timing multiplication overflow safe
- 82116ea af_packet: avoid a false positive warning in packet_setsockopt()
- ceba8db wifi: ath9k: work around memset overflow warning
- caf9945 wifi: rtw89: 8852c: add quirk to set PCI BER for certain platforms
- ae7f3cf batman-adv: bypass empty buckets in batadv_purge_orig_ref()
- dd540fe devlink: use kvzalloc() to allocate devlink instance resources
- 189085c bpf: Avoid kfree_rcu() under lock in bpf_lpm_trie.
- 4a6adfe selftests/bpf: Fix flaky test btf_map_in_map/lookup_update
- 9233170 selftests/bpf: Prevent client connect before server bind in test_tc_tunnel.sh
- 7d43c83 ssb: Fix potential NULL pointer dereference in ssb_device_uevent()
- 54160fb block/ioctl: prefer different overflow check
- 35d77b0 arm64: defconfig: select INTERCONNECT_QCOM_SM6115 as built-in
- 359b96c ubsan: Avoid i386 UBSAN handler crashes with Clang
- 2d57863 platform/chrome: cros_usbpd_notify: provide ID table for avoiding fallback match
- 5cff56a platform/chrome: cros_usbpd_logger: provide ID table for avoiding fallback match
- 9a3475c rcutorture: Fix invalid context warning when enable srcu barrier testing
- bddc92f rcutorture: Make stall-tasks directly exit when rcutorture tests end
- 98e39fa rcutorture: Fix rcu_torture_one_read() pipe_count overflow comment
- a40e90d io_uring/sqpoll: work around a potential audit memory leak
- 7e3e43f crypto: hisilicon/qm - Add the err memory release process to qm uninit
- 36810d2 crypto: hisilicon/sec - Fix memory leak for sec resource release
- c0643d0 padata: Disable BH when taking works lock on MT path
- db044fa fs/writeback: bail out if there is no more inodes for IO and queued once
A new XanMod Linux Kernel based on Linux Kernel 6.9.7 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.