Ubuntu 6384 Debian 10001 Published by

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.



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

Change 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

Xanmod

Homepage
Download Linux 6.9.7-xanmod1 source from GitHub