Linux 6.6.46-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
- 9f6f501 Linux 6.6.46-xanmod1
- 2ea586b XANMOD: mm/vmscan: Decrease to minimum amount of swapping
- ed884ff Merge tag 'v6.6.46' into 6.6
- 99fd042 Linux 6.6.46
- 7ba27f1 btrfs: fix double inode unlock for direct IO sync writes
- 1c3b01b Revert "selftests: mptcp: simult flows: mark 'unbalanced' tests as flaky"
- 9d97114 selftests: mptcp: join: test both signal & subflow
- e80cf3f selftests: mptcp: join: ability to invert ADD_ADDR check
- 64815ba mptcp: pm: do not ignore 'subflow' if 'signal' flag is also set
- 9a4a4c0 mptcp: pm: don't try to create sf if alloc failed
- 432535f mptcp: pm: reduce indentation blocks
- c2389c0 xfs: fix log recovery buffer allocation for the legacy h_size fixup
- 37e7983 nouveau: set placement to original placement on uvmm validate.
- 2ae4d58 mm/hugetlb: fix potential race in __update_and_free_hugetlb_folio()
- d43ff94 tools headers arm64: Sync arm64's cputype.h with the kernel sources
- e7f3e5f ipv6: fix source address selection with route leak
- 717c91c netfilter: nf_tables: prefer nft_chain_validate
- 0a108bd btrfs: fix corruption after buffer fault in during direct IO append write
- a5c399f mm: huge_memory: use !CONFIG_64BIT to relax huge page alignment on 32 bit machines
- 6ea9aa8 mm: huge_memory: don't force huge page alignment on 32 bit
- 94220b3 Revert "drm/amd/display: Add NULL check for 'afb' before dereferencing in amdgpu_dm_plane_handle_cursor_update"
- 163f7dd block: use the right type for stub rq_integrity_vec()
- d4c6707 mptcp: pm: deny endp with signal + subflow + port
- 8165c84 selftests: mptcp: fix error path
- fff9b92 mptcp: pm: fix backup support in signal endpoints
- 07bb418 mptcp: fully established after ADD_ADDR echo on MPJ
- ea12dbf drm/radeon: Remove __counted_by from StateArray.states[]
- 81d34df drm/mgag200: Bind I2C lifetime to DRM device
- 6946b7b drm/mgag200: Set DDC timeout in milliseconds
- b3aa563 drm/lima: Mark simple_ondemand governor as softdep
- 28c060c drm/dp_mst: Skip CSN if topology probing is not done yet
- 6f8765a drm/bridge: analogix_dp: properly handle zero sized AUX transactions
- 78f1990 sched/core: Fix unbalance set_rq_online/offline() in sched_cpu_deactivate()
- 4c15b20 sched/core: Introduce sched_set_rq_on/offline() helper
- 6572733 sched/smt: Fix unbalance sched_smt_present dec/inc
- 41d8565 sched/smt: Introduce sched_smt_present_inc/dec() helper
- 8a90d3f x86/mtrr: Check if fixed MTRRs exist before saving them
- 8728e3f x86/paravirt: Fix incorrect virt spinlock setting on bare metal
- 866992f btrfs: avoid using fixed char array size for tree names
- 772f831 selftests: mm: add s390 to ARCH check
- 2ef3d12 eventfs: Use SRCU for freeing eventfs_inodes
- b59603a eventfs: Don't return NULL in eventfs_create_dir()
- c7cd840 smb3: fix setting SecurityFlags when encryption is required
- 924f788 padata: Fix possible divide-by-0 panic in padata_mt_helper()
- a172c7b tracing: Fix overflow in get_free_elt()
- f31fe63 power: supply: axp288_charger: Round constant_charge_voltage writes down
- e1ab8ca power: supply: axp288_charger: Fix constant_charge_voltage writes
- da5e1ee power: supply: qcom_battmgr: return EAGAIN when firmware service is not up
- e32f7c8 LoongArch: Enable general EFI poweroff method
- 0688cac genirq/irqdesc: Honor caller provided affinity in alloc_desc()
- 2ce998f irqchip/xilinx: Fix shift out of bounds
- d0137ce kcov: properly check for softirq context
- 6f48f45 ASoC: amd: yc: Add quirk entry for OMEN by HP Gaming Laptop 16-n0xxx
- 642a0b7 parisc: fix a possible DMA corruption
- 8d26093 parisc: fix unaligned accesses in BPF
- 37a060b memcg: protect concurrent access to mem_cgroup_idr
- e3ad503 serial: core: check uartclk for zero to avoid divide by zero
- 65d76c0 timekeeping: Fix bogus clock_was_set() invocation in do_adjtimex()
- ae5848c ntp: Safeguard against time_constant overflow
- 726f4c2 tracefs: Use generic inode RCU for synchronizing freeing
- a49f7de tracefs: Fix inode allocation
- 4d035c7 driver core: Fix uevent_show() vs driver detach race
- 9d6193f clocksource: Fix brown-bag boolean thinko in cs_watchdog_read()
- 03c3855 clocksource: Scale the watchdog read retries automatically
- b5cf99e ntp: Clamp maxerror and esterror to operating range
- 2ac6deb vhost-vdpa: switch to use vmf_insert_pfn() in the fault handler
- b9d6049 tick/broadcast: Move per CPU pointer access into the atomic section
- 8bf5802 scsi: ufs: core: Fix hba->last_dme_cmd_tstamp timestamp updating logic
- 74eda70 scsi: ufs: core: Do not set link to OFF state while waking up from hibernation
- 80d0624 scsi: mpi3mr: Avoid IOMMU page faults on REPORT ZONES
- d675468 usb: gadget: u_audio: Check return codes from usb_ep_enable and config_ep_by_speed.
- 54b7f68 usb: gadget: u_serial: Set start_delayed during suspend
- a4f0d0a usb: gadget: midi2: Fix the response for FB info with block 0xff
- 1a9df57 usb: gadget: core: Check for unset descriptor
- 0761ba0 USB: serial: debug: do not echo input by default
- 128e82e usb: vhci-hcd: Do not drop references before new references are gained
- 2262801 ALSA: hda/hdmi: Yet more pin fix for HP EliteDesk 800 G4
- a70ed69 ALSA: hda/realtek: Add Framework Laptop 13 (Intel Core Ultra) to quirks
- 09c0f5f ALSA: hda: Add HP MP9 G4 Retail System AMS to force connect list
- 535df7f ALSA: line6: Fix racy access to midibuf
- d64fc94 drm/client: fix null pointer dereference in drm_client_modeset_probe
- d73de3c drm/i915/gem: Adjust vma offset for framebuffer mmap offset
- 0da0b06 drm/amdgpu: Forward soft recovery errors to userspace
- 718d83f drm/amd/display: Skip Recompute DSC Params if no Stream on Link
- 4b09513 drm/i915/gem: Fix Virtual Memory mapping boundaries calculation
- 81ac1e8 module: make waiting for a concurrent module loader interruptible
- bdb3679 module: warn about excessively long module waits
- c0f767d cifs: cifs_inval_name_dfs_link_error: correct the check for fullpath
- 8852832 ASoC: meson: axg-fifo: fix irq scheduling issue with PREEMPT_RT
- a59ee70 ALSA: usb-audio: Re-add ScratchAmp quirk entries
- a2c0f5d spi: spi-fsl-lpspi: Fix scldiv calculation
- c25b8a3 i2c: qcom-geni: Add missing geni_icc_disable in geni_i2c_runtime_resume
- 233419a i2c: qcom-geni: Add missing clk_disable_unprepare in geni_i2c_runtime_resume
- a4155de kprobes: Fix to check symbol prefixes correctly
- 25ad690 bpf: kprobe: remove unused declaring of bpf_kprobe_override
- ae68eee i2c: smbus: Send alert notifications to all devices if source not found
- b66c92b ASoC: SOF: Remove libraries from topology lookups
- b156029 spi: spidev: Add missing spi_device_id for bh2228fv
- 641de16 ASoC: sti: add missing probe entry for player and reader
- 8485d32 ASoC: codecs: wsa884x: Correct Soundwire ports mask
- 192af3c ASoC: codecs: wsa884x: parse port-mapping information
- e79e2d8 ASoC: codecs: wsa883x: Correct Soundwire ports mask
- 986141e ASoC: codecs: wsa883x: parse port-mapping information
- f4bbf2f ASoC: codecs: wsa881x: Correct Soundwire ports mask
- 733677f ASoC: codecs: wcd938x-sdw: Correct Soundwire ports mask
- 1534b11 i2c: smbus: Improve handling of stuck alerts
- 745eec6 arm64: errata: Expand speculative SSBS workaround (again)
- 8defe51 arm64: cputype: Add Cortex-A725 definitions
- 44094ae arm64: cputype: Add Cortex-X1C definitions
- b9bf533 arm64: errata: Expand speculative SSBS workaround
- 771746a arm64: errata: Unify speculative SSBS errata logic
- 88ef8dd arm64: cputype: Add Cortex-X925 definitions
- ef6e6d1 arm64: cputype: Add Cortex-A720 definitions
- fc46756 arm64: cputype: Add Cortex-X3 definitions
- 93696d8 arm64: errata: Add workaround for Arm errata 3194386 and 3312417
- 527e7e7 arm64: cputype: Add Neoverse-V3 definitions
- e5b9593 arm64: cputype: Add Cortex-X4 definitions
- 1ae80fa arm64: barrier: Restore spec_bar() macro
- 4167bf7 arm64: Add Neoverse-V2 part
- 6772c48 net: drop bad gso csum_start and offset in virtio_net_hdr
- 12f98cc sched/cputime: Fix mul_u64_u64_div_u64() precision for cputime
- b56dee6 irqchip/loongarch-cpu: Fix return value of lpic_gsi_to_irq()
- 57ab379 irqchip/meson-gpio: Convert meson_gpio_irq_controller::lock to 'raw_spinlock_t'
- b547433 scsi: mpt3sas: Avoid IOMMU page faults on REPORT ZONES
- 2d451ec profiling: remove profile=sleep support
- c265240 SUNRPC: Fix a race to wake a sync task
- 1e8b7fb s390/sclp: Prevent release of buffer in I/O
- 6dacca9 jbd2: avoid memleak in jbd2_journal_write_metadata_buffer
- e7abdad ext4: fix uninitialized variable in ext4_inlinedir_to_tree
- 8503041 media: xc2028: avoid use-after-free in load_firmware_cb()
- 7f855b6 media: uvcvideo: Fix the bandwdith quirk on USB 3.x
- 5b835d1 media: uvcvideo: Ignore empty TS packets
- 4cc2a94 drm/amd/display: Add null checker before passing variables
- a599416 drm/amd/display: Add NULL check for 'afb' before dereferencing in amdgpu_dm_plane_handle_cursor_update
- a29c1e5 media: amphion: Remove lock in s_ctrl callback
- 2e53894 drm/amd/pm: Fix the null pointer dereference for vega10_hwmgr
- 1adb5eb drm/amdgpu: Add lock around VF RLCG interface
- 641dac6 drm/admgpu: fix dereferencing null pointer context
- 3a01bf2 drm/amdgpu/pm: Fix the null pointer dereference in apply_state_adjust_rules
- b896163 drm/amdgpu: Fix the null pointer dereference to ras_manager
- 09544cd drm/amdgpu/pm: Fix the null pointer dereference for smu7
- 837ab17 drm/amdgpu/pm: Fix the param type of set_power_profile_mode
- bc93cfd drm/amdgpu: fix potential resource leak warning
- 479ccc2 drm/amd/display: Add delay to improve LTTPR UHBR interop
- 4d9adcb Bluetooth: btnxpuart: Shutdown timer and prevent rearming when driver unloading
- d9e8460 btrfs: fix bitmap leak when loading free space cache on duplicate entry
- ba4dedb btrfs: do not clear page dirty inside extent_write_locked_range()
- a006e6c net: stmmac: qcom-ethqos: enable SGMII loopback during DMA reset on sa8775p-ride-r3
- 759822a can: mcp251xfd: tef: update workaround for erratum DS80000789E 6 of mcp2518fd
- 1333fd5 can: mcp251xfd: tef: prepare to workaround broken TEF FIFO tail index erratum
- 81f086d wifi: nl80211: don't give key data to userspace
- 5cc9745 udf: prevent integer overflow in udf_bitmap_free_blocks()
- 9be0805 PCI: Add Edimax Vendor ID to pci_ids.h
- 412f97f af_unix: Don't retry after unix_state_lock_nested() in unix_stream_connect().
- 5ce414e selftests/bpf: Fix send_signal test with nested CONFIG_PARAVIRT
- 650e247 net/mlx5e: SHAMPO, Fix invalid WQ linked list unlink
- 9b03465 wifi: ath12k: fix memory leak in ath12k_dp_rx_peer_frag_setup()
- c6ea738 wifi: nl80211: disallow setting special AP channel widths
- c2775ae xen: privcmd: Switch from mutex to spinlock for irqfds
- 9747b72 ACPI: SBS: manage alarm sysfs attribute through psy core
- e1f6d71 ACPI: battery: create alarm sysfs attribute atomically
- 9e1923b clocksource/drivers/sh_cmt: Address race condition for clock events
- 4991cb2 rcu: Fix rcu_barrier() VS post CPUHP_TEARDOWN_CPU invocation
- c63b44f block: change rq_integrity_vec to respect the iterator
- 775a9ba md/raid5: avoid BUG_ON() while continue reshape after reassembling
- 3fd5346 md: do not delete safemode_timer in mddev_suspend
- 7adbf9b rcutorture: Fix rcu_torture_fwd_cb_cr() data race
- 95cf80c hwmon: corsair-psu: add USB id of HX1200i Series 2023 psu
- 1b955f7 gpio: prevent potential speculation leaks in gpio_device_get_desc()
- c078067 net: fec: Stop PPS on driver remove
- 7378080 net: bcmgenet: Properly overlay PHY and MAC Wake-on-LAN capabilities
- 207e881 l2tp: fix lockdep splat
- a7d2808 net: dsa: bcm_sf2: Fix a possible memory leak in bcm_sf2_mdio_register()
- f7dc578 net/smc: add the max value of fallback reason count
- 1a7a06e Bluetooth: hci_sync: avoid dup filtering when passive scanning with adv monitor
- b4af69d Bluetooth: l2cap: always unlock channel in l2cap_conless_channel()
- 3e94132 ice: Fix reset handler
- 3b1fae7 net: linkwatch: use system_unbound_wq
- e3145ca net: bridge: mcast: wait for previous gc cycles when removing port
- f2c3532 net: usb: qmi_wwan: fix memory leak for not ip packets
- 1407be3 sctp: Fix null-ptr-deref in reuseport_add_sock().
- 6a78a29 wifi: ath12k: fix soft lockup on suspend
- 7091b09 wifi: ath12k: add CE and ext IRQ flag to indicate irq_handler
- 5c18b15 wifi: ath12k: rename the sc naming convention to ab
- 0397a48 smb: client: handle lack of FSCTL_GET_REPARSE_POINT support
- fbb384e x86/mm: Fix pti_clone_entry_text() for i386
- ca07aab x86/mm: Fix pti_clone_pgtable() alignment assumption
- c7b46f6 jump_label: Fix the fix, brown paper bags galore
- 79b3162 platform/x86/intel/ifs: Initialize union ifs_status to zero
- 3d0d771 platform/x86/intel/ifs: Gen2 Scan test support
- b399e6a platform/x86/intel/ifs: Store IFS generation number
- 69508cc irqchip/mbigen: Fix mbigen node address layout
A new XanMod Linux Kernel based on Linux Kernel 6.6.46 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.