Linux 6.8.9-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/version
- 083d679 Linux 6.8.9-xanmod1
- 1adf804 XANMOD: mm: Raise max_map_count default value
- e2e31bc Merge tag 'v6.8.9' into 6.8
- f3d6143 Linux 6.8.9
- 30bc279 Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync
- c4c9d6b Bluetooth: hci_sync: Fix UAF on create_le_conn_complete
- f1e50e5 Bluetooth: hci_sync: Fix UAF in hci_acl_create_conn_sync
- ebfe418 bounds: Use the right number of bits for power-of-two CONFIG_NR_CPUS
- 77db058 phy: qcom: qmp-combo: fix VCO div offset on v5_5nm and v6
- 357c64e i2c: smbus: fix NULL function pointer dereference
- bfd2fdb RISC-V: selftests: cbo: Ensure asm operands match constraints, take 2
- f50519b riscv: hwprobe: fix invalid sign extension for RISCV_HWPROBE_EXT_ZVFHMIN
- 06f27e6 sched/eevdf: Prevent vlag from going out of bounds in reweight_eevdf()
- 2fb2565 sched/eevdf: Fix miscalculation in reweight_entity() when se is not curr
- 5154b1e sched/eevdf: Always update V if se->on_rq when reweighting
- cf89c33 dt-bindings: eeprom: at24: Fix ST M24C64-D compatible schema
- 9827caa phy: ti: tusb1210: Resolve charger-det crash if charger psy is unregistered
- ea6628e riscv: Fix loading 64-bit NOMMU kernels past the start of RAM
- efdcfa5 riscv: Fix TASK_SIZE on 64-bit NOMMU
- 4753317 dmaengine: idxd: Fix oops during rmmod on single-CPU platforms
- c660be5 dma: xilinx_dpdma: Fix locking
- c9b732a dmaengine: idxd: Convert spinlock to mutex to lock evl workqueue
- 2232eb3 phy: qcom: m31: match requested regulator name with dt schema
- 11bfd44 phy: rockchip: naneng-combphy: Fix mux on rk3588
- a68840c phy: rockchip-snps-pcie3: fix clearing PHP_GRF_PCIESEL_CON bits
- 201a6c2 phy: rockchip-snps-pcie3: fix bifurcation on rk3588
- 1f9da54 phy: freescale: imx8m-pcie: fix pcie link-up instability
- 2d35d42 phy: marvell: a3700-comphy: Fix hardcoded array size
- 40406df phy: marvell: a3700-comphy: Fix out of bounds read
- 6321499 soundwire: amd: fix for wake interrupt handling for clockstop mode
- 999c13e idma64: Don't try to serve interrupts when device is powered off
- 41b0531 dmaengine: tegra186: Fix residual calculation
- 031cd85 dmaengine: owl: fix register access functions
- b0fdabc mm: zswap: fix shrinker NULL crash with cgroup_disable=memory
- 9fdcc5b mm: turn folio_test_hugetlb into a PageType
- b70dfdf phy: qcom: qmp-combo: Fix VCO div offset on v3
- 7eff3a5 phy: qcom: qmp-combo: Fix register base for QSERDES_DP_PHY_MODE
- dd22b34 firmware: qcom: uefisecapp: Fix memory related IO errors and crashes
- 68f4387 mtd: diskonchip: work around ubsan link failure
- e161023 mtd: limit OTP NVMEM cell parse to non-NAND devices
- da9e2f5 udp: preserve the connected status if only UDP cmsg
- 1802146 fbdev: fix incorrect address computation in deferred IO
- b417170 stackdepot: respect __GFP_NOLOCKDEP allocation flag
- 742f205 macsec: Detect if Rx skb is macsec-related for offloading devices that update md_dst
- 95eca99 macsec: Enable devices to advertise whether they update sk_buff md_dst during offloads
- 6a19cd2 net: b44: set pause params only when interface is up
- 5f7ee79 ethernet: Add helper for assigning packet type when dest address does not match device address
- 6510a0e net/mlx5e: Advertise mlx5 ethernet driver updates sk_buff md_dst for MACsec
- d734d8e ACPI: CPPC: Fix access width used for PCC registers
- 5cfdf78 ACPI: CPPC: Fix bit_offset shift in MASK_VAL() macro
- 6cb6b12 ACPI: CPPC: Use access_width over bit_width for system memory accesses
- 5b012f7 irqchip/gic-v3-its: Prevent double free on error
- 388c326 drm/amdkfd: Fix eviction fence handling
- 91933b2 drm/amdkfd: Fix rescheduling of restore worker
- 71ecc81 drm/amdgpu: Fix leak when GPU memory allocation fails
- f3fb728 drm/amdgpu/umsch: don't execute umsch test when GPU is in reset/suspend
- 9fcb0bb drm/amdgpu/pm: Remove gpu_od if it's an empty directory
- bd783af drm/atomic-helper: fix parameter order in drm_format_conv_state_copy() call
- bbfcd31 drm/amdgpu: Assign correct bits for SDMA HDP flush
- cc7e522 drm/amdgpu/sdma5.2: use legacy HDP flush for SDMA2/3
- 582ce5d dmaengine: xilinx: xdma: Fix synchronization issue
- f70e6b9 dmaengine: xilinx: xdma: Fix wrong offsets in the buffers addresses in dma descriptor
- 1b27647 dmaengine: Revert "dmaengine: pl330: issue_pending waits until WFP state"
- 019e95c arm64: dts: rockchip: enable internal pull-up for Q7_THRM# on RK3399 Puma
- e6d1dab arm64: dts: qcom: sm8450: Fix the msi-map entries
- 48ee8ae arm64: dts: qcom: sc8280xp: add missing PCIe minimum OPP
- 2e10596 LoongArch: Fix access error when read fault on a write-only VMA
- de357db LoongArch: Fix callchain parse error with kernel tracepoint events
- 6d8b56e eeprom: at24: fix memory corruption race condition
- fd8547e cpu: Re-enable CPU mitigations by default for !X86 architectures
- 4a6ff16 x86/tdx: Preserve shared bit on mprotect()
- fddc196 btrfs: fix information leak in btrfs_ioctl_logical_to_ino()
- a2488c7 btrfs: scrub: run relocation repair when/only needed
- ff2920b btrfs: fix wrong block_start calculation for btrfs_drop_extent_map_range()
- c7f9062 btrfs: fallback if compressed IO fails for ENOSPC
- fb49dee HID: i2c-hid: Revert to await reset ACK before reading report descriptor
- 418c557 HID: i2c-hid: remove I2C_HID_READ_PENDING flag to prevent lock-up
- 8248224 smb3: fix lock ordering potential deadlock in cifs_sync_mid_result
- 60ab245 smb3: missing lock when picking channel
- 3d550e0 smb: client: Fix struct_group() usage in __packed structs
- 9c9b32d mm/hugetlb: fix DEBUG_LOCKS_WARN_ON(1) when dissolve_free_hugetlb_folio()
- 035fde2 mm: support page_mapcount() on page_has_type() pages
- ef3643d mm: create FOLIO_FLAG_FALSE and FOLIO_TYPE_OPS macros
- 7778de9 mmc: sdhci-of-dwcmshc: th1520: Increase tuning loop count to 128
- f653b04 mmc: sdhci-msm: pervent access to suspended controller
- 538faab mm/hugetlb: fix missing hugetlb_lock for resv uncharge
- 9506035 mtd: rawnand: qcom: Fix broken OP_RESET_DEVICE command in qcom_misc_cmd_type_exec()
- bec4d4c Bluetooth: qca: fix NULL-deref on non-serdev setup
- b64092d Bluetooth: qca: fix NULL-deref on non-serdev suspend
- 8bc0ffb Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x0bda:0x4853
- f53649e Bluetooth: Fix type of len in {l2cap,sco}_sock_getsockopt_old()
- c37eb5e rust: remove
params
frommodule
macro example- b1ba52c kbuild: rust: force
alloc
extern to allow "empty" Rust files- 5f8bc89 kbuild: rust: remove unneeded
@rustc_cfg
to avoid ICE- f94e59d rust: make mutually exclusive with CFI_CLANG
- 2ce4005 rust: init: remove impl Zeroable for Infallible
- 7e69585 rust: don't select CONSTRUCTORS
- 17b1d44 rust: kernel: require
Send
forModule
implementations- d09a4bf rust: phy: implement
Send
forRegistration
- 585172f x86/cpu: Fix check for RDPKRU in __show_regs()
- 3b491b1 x86/CPU/AMD: Add models 0x10-0x1f to the Zen5 range
- 17f0ac3 selftests/seccomp: Handle EINVAL on unshare(CLONE_NEWPID)
- 63d90bf selftests/seccomp: Change the syscall used in KILL_THREAD test
- 3552b6b selftests/seccomp: user_notification_addfd check nextfd is available
- 0ac4016 drm/amdgpu: fix visible VRAM handling during faults
- 1ddc44a drm/amdgpu: add shared fdinfo stats
- 7a34381 drm: add drm_gem_object_is_shared_for_memory_stats() helper
- a770ff7 KVM: x86/pmu: Set enable bits for GP counters in PERF_GLOBAL_CTRL at "RESET"
- 257a409 KVM: x86/pmu: Zero out PMU metadata on AMD if PMU is disabled
- b19ca9e usb: xhci: correct return value in case of STS_HCE
- 68660ca xhci: move event processing for one interrupter to a separate function
- 0bbce52 Revert "drm/amd/display: fix USB-C flag update after enc10 feature init"
- 273552d drm/amd/display: Check DP Alt mode DPCS state via DMUB
- 5eaf23b netfs: Fix the pre-flush when appending to a file in writethrough mode
- 2f0346e af_unix: Suppress false-positive lockdep splat for spin_lock() in __unix_gc().
- 22a746f tls: fix lockless read of strp->msg_ready in ->poll
- f3e1cf6 dpll: fix dpll_pin_on_pin_register() for multiple parent pins
- 11cbb7a dpll: check that pin is registered in __dpll_pin_unregister()
- f5aa87a octeontx2-af: fix the double free in rvu_npc_freemem()
- 954d163 net: ethernet: ti: am65-cpts: Fix PTPv1 message type on TX packets
- de8631d ice: fix LAG and VF lock dependency in ice_reset_vf()
- d1039bf iavf: Fix TC config comparison with existing adapter TC config
- 792bd42 i40e: Report MFS in decimal base instead of hex
- 1594dac i40e: Do not use WQ_MEM_RECLAIM flag for workqueue
- b75a32c net: ti: icssg-prueth: Fix signedness bug in prueth_init_rx_chns()
- 4533613 net: phy: dp83869: Fix MII mode failure
- ca34c40 netfilter: nf_tables: honor table dormant flag from netdev release event path
- 5f9a326 ARM: dts: imx6ull-tarragon: fix USB over-current polarity
- 6a2657b eth: bnxt: fix counting packets discarded due to OOM and netpoll
- d72dd6f mlxsw: spectrum_acl_tcam: Fix memory leak when canceling rehash work
- af8b593 mlxsw: spectrum_acl_tcam: Fix incorrect list API usage
- 17e9e0b mlxsw: spectrum_acl_tcam: Fix warning during rehash
- b3fd51f mlxsw: spectrum_acl_tcam: Fix memory leak during rehash
- b2072b6 mlxsw: spectrum_acl_tcam: Rate limit error message
- a026870 mlxsw: spectrum_acl_tcam: Fix possible use-after-free during rehash
- b183b91 mlxsw: spectrum_acl_tcam: Fix possible use-after-free during activity update
- 087b57d mlxsw: spectrum_acl_tcam: Fix race during rehash delayed work
- 4d9c3e9 mlxsw: spectrum_acl_tcam: Fix race in region ID allocation
- bea0e8c mlxsw: Use refcount_t for reference counting
- edee075 net: openvswitch: Fix Use-After-Free in ovs_ct_exit
- e093b2a ipvs: Fix checksumming on GSO of SCTP packets
- 6e2205a Bluetooth: qca: set power_ctrl_enabled on NULL returned by gpiod_get_optional()
- 7548a23 Bluetooth: hci_sync: Using hci_cmd_sync_submit when removing Adv Monitor
- e20093c Bluetooth: btusb: mediatek: Fix double free of skb in coredump
- 4f116b8 Bluetooth: MGMT: Fix failing to MGMT_OP_ADD_UUID/MGMT_OP_REMOVE_UUID
- bd69360 Bluetooth: hci_event: Fix sending HCI_OP_READ_ENC_KEY_SIZE
- 4a814fa Bluetooth: btusb: Fix triggering coredump implementation for QCA
- aaf0628 Bluetooth: hci_sync: Use advertised PHYs on hci_le_ext_create_conn_sync
- 489efc9 Bluetooth: ISO: Reassemble PA data for bcast sink
- 5dd0bd2 Bluetooth: hci_sync: Attempt to dequeue connection attempt
- 357603f Bluetooth: hci_sync: Add helper functions to manipulate cmd_sync queue
- 7bb27cb Bluetooth: hci_conn: Fix UAF Write in __hci_acl_create_connection_sync
- d47904d Bluetooth: hci_conn: Always use sk_timeo as conn_timeout
- b3e3bf1 Bluetooth: Remove pending ACL connection attempts
- 22071f5 Bluetooth: hci_conn: Only do ACL connections sequentially
- 97286e3 Bluetooth: hci_event: Use HCI error defines instead of magic values
- 1ccfb1b drm/xe: call free_gsc_pkt only once on action add failure
- ec1ae5b drm/xe: Remove sysfs only once on action add failure
- 1030ca5 gpio: tegra186: Fix tegra186_gpio_is_accessible() check
- 2181a15 net: phy: mediatek-ge-soc: follow netdev LED trigger semantics
- cd957d1 net: gtp: Fix Use-After-Free in gtp_dellink
- ca4fb6c tcp: Fix Use-After-Free in tcp_ao_connect_init
- 2d03fbb net: usb: ax88179_178a: stop lying about skb->truesize
- c71ea35 ipv4: check for NULL idev in ip_route_use_hint()
- d2fa349 net: fix sk_memory_allocated_{add|sub} vs softirqs
- e830c80 net: make SK_MEMORY_PCPU_RESERV tunable
- 997c7ab tools: ynl: don't ignore errors in NLMSG_DONE messages
- 8d60c1a soc: mediatek: mtk-svs: Append "-thermal" to thermal zone names
- c42b073 ax25: Fix netdev refcount issue
- f1573c3 netfs: Fix writethrough-mode error handling
- 95a3032 NFC: trf7970a: disable all regulators on removal
- a217566 net: dsa: mv88e6xx: fix supported_interfaces setup in mv88e6250_phylink_get_caps()
- 5f02ece cxl/core: Fix potential payload size confusion in cxl_mem_get_poison()
- 0924910 bnxt_en: Fix error recovery for 5760X (P7) chips
- 2e34f9d bnxt_en: Fix the PCI-AER routines
- b018e90 bnxt_en: refactor reset close code
- f0f0cce bridge/br_netlink.c: no need to return void function
- 3e2979b icmp: prevent possible NULL dereferences from icmp_build_probe()
- 0658adb ARM: dts: microchip: at91-sama7g5ek: Replace regulator-suspend-voltage with the valid property
- 467c011 mlxsw: pci: Fix driver initialization with old firmware
- 5fffbb1 mlxsw: core_env: Fix driver initialization with old firmware
- 6f82b93 mlxsw: core: Unregister EMAD trap using FORWARD action
- 2389ad1 net: bcmasp: fix memory leak when bringing down interface
- 0d422ed vxlan: drop packets from invalid src-address
- 328c3f0 net: libwx: fix alloc msix vectors failed
- fa8c53a wifi: mac80211: fix unaligned le16 access
- dc7cc45 wifi: mac80211: remove link before AP
- 9327a5f wifi: mac80211_hwsim: init peer measurement result
- 37faebf drm/gma500: Remove lid code
- e56db24 wifi: iwlwifi: mvm: return uid from iwl_mvm_build_scan_cmd
- 8f5e4a7 wifi: iwlwifi: mvm: remove old PASN station when adding a new one
- eb6d11a wifi: mac80211: split mesh fast tx cache into local/proxied/forwarded
- bb2c251 wifi: mac80211: clean up assignments to pointer cache.
- 05a3dc1 ARC: [plat-hsdk]: Remove misplaced interrupt-cells property
- f5734c2 gpio: tangier: Use correct type for the IRQ chip data
- 6c6847d arm64: dts: qcom: sc8180x: Fix ss_phy_irq for secondary USB controller
- 119ca43 arm64: dts: qcom: x1e80100: Fix the compatible for cluster idle states
- 7da6e4d arm64: dts: qcom: Fix type of "wdog" IRQs for remoteprocs
- 0e9327c block: fix module reference leakage from bdev_open_by_dev error path
- c919f6e arm64: dts: rockchip: regulator for sd needs to be always on for BPI-R2Pro
- ec54a5a arm64: dts: rockchip: mark system power controller and fix typo on orangepi-5-plus
- 223ac44 arm64: dts: mediatek: mt2712: fix validation errors
- 5c21178 arm64: dts: mediatek: mt7986: prefix BPI-R3 cooling maps with "map-"
- da699fa arm64: dts: mediatek: mt7986: drop invalid thermal block clock
- 57cb519 arm64: dts: mediatek: mt7986: reorder nodes
- 669d1a4 arm64: dts: mediatek: mt7986: drop "#reset-cells" from Ethernet controller
- d6000d4 arm64: dts: mediatek: mt7986: drop invalid properties from ethsys
- b274235 arm64: dts: mediatek: mt7986: reorder properties
- 7d7247e arm64: dts: mediatek: mt7622: drop "reset-names" from thermal block
- 5c60ab0 arm64: dts: mediatek: mt7622: fix ethernet controller "compatible"
- b3cece5 arm64: dts: mediatek: mt7622: fix IR nodename
- 9477989 arm64: dts: mediatek: mt7622: fix clock controllers
- 041ed3d arm64: dts: mediatek: mt8183-kukui: Use default min voltage for MT6358
- 5b0ae66 arm64: dts: mediatek: mt8195-cherry: Update min voltage constraint for MT6315
- f5b0549 arm64: dts: mediatek: mt8192-asurada: Update min voltage constraint for MT6315
- 44cdbb1 arm64: dts: mediatek: cherry: Describe CPU supplies
- db6bf92 arm64: dts: mediatek: mt8195: Add missing gce-client-reg to mutex1
- 2a8517f arm64: dts: mediatek: mt8195: Add missing gce-client-reg to mutex
- da20007 arm64: dts: mediatek: mt8195: Add missing gce-client-reg to vpp/vdosys
- 75ac468 arm64: dts: mediatek: mt8192: Add missing gce-client-reg to mutex
- c57d4a8 arm64: dts: mediatek: mt8183: Add power-domains properity to mfgcfg
- 8821480 arm64: dts: rockchip: Remove unsupported node from the Pinebook Pro dts
- 19f446f arm64: dts: rockchip: Fix the i2c address of es8316 on Cool Pi CM5
- 5cadac4 arm64: dts: rockchip: enable internal pull-up on PCIE_WAKE# for RK3399 Puma
- f52ccfe arm64: dts: rockchip: fix alphabetical ordering RK3399 puma
- fe495e3 arm64: dts: rockchip: enable internal pull-up on Q7_USB_ID for RK3399 Puma
- 02cc03b arm64: dts: rockchip: set PHY address of MT7531 switch to 0x1f
- 7610ba7 HID: logitech-dj: allow mice to use all types of reports
- 44e0bcf HID: intel-ish-hid: ipc: Fix dev_err usage with uninitialized dev->devc
- eca7aaa cifs: reinstate original behavior again for forceuid/forcegid
- 9055500 smb: client: fix rename(2) regression against samba
- 89b9cd4 cifs: Fix reacquisition of volume cookie on still-live connection
A new XanMod Linux Kernel based on Linux Kernel 6.8.9 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.