A new XanMod Linux Kernel based on the latest Linux Kernel 5.12.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.
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
Linux 5.12.9-xanmod1
- 2d3e6cc Linux 5.12.9-xanmod1
- ac7b22b Merge tag 'v5.12.9' into 5.12
- 5a973f1 Linux 5.12.9
- 9184566 usb: core: reduce power-on-good delay time of root hub
- ef8a81a neighbour: Prevent Race condition in neighbour subsytem
- b4a92b1 arm64: mm: don't use CON and BLK mapping if KFENCE is enabled
- 386178b net: hso: bail out on interrupt URB allocation failure
- 5d51d34 Revert "Revert "ALSA: usx2y: Fix potential NULL pointer dereference""
- f3c4fca bpftool: Add sock_release help info for cgroup attach/prog load command
- 3256697 net: hns3: check the return of skb_checksum_help()
- 93534d1 samples/bpf: Consider frame size in tx_only of xdpsock sample
- 31f675c xprtrdma: Revert 586a078
- bb31b40 KVM: X86: hyper-v: Task srcu lock when accessing kvm_memslots()
- a1d17c1 thermal/drivers/qcom: Fix error code in adc_tm5_get_dt_channel_data()
- 3b028c0 SUNRPC: More fixes for backlog congestion
- 06397b6 net: mvpp2: add buffer header handling in RX
- 86ab133 net: zero-initialize tc skb extension on allocation
- 0f53116 MIPS: ralink: export rt_sysc_membase for rt2880_wdt.c
- 3f71041 MIPS: alchemy: xxs1500: add gpio-au1000.h header file
- 4ffd1d4 net: hsr: fix mac_len checks
- be82e48 sch_dsmark: fix a NULL deref in qdisc_reset()
- 486737b net: ethernet: mtk_eth_soc: Fix packet statistics support for MT7628/88
- 6fe5587 ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be static
- 04ea1e1 scsi: aic7xxx: Restore several defines for aic7xxx firmware build
- 2547527 ipv6: record frag_max_size in atomic fragments in input path
- 46dd4ab net: lantiq: fix memory corruption in RX ring
- 83201d6 scsi: libsas: Use _safe() loop in sas_resume_port()
- af94052 ASoC: qcom: lpass-cpu: Use optional clk APIs
- 027c76e ixgbe: fix large MTU request from VF
- ac7ef9f bpf: Set mac_len in bpf_skb_change_head
- 0e55e05 bpf, offload: Reorder offload callback 'prepare' in verifier
- 8d42204 ASoC: cs35l33: fix an error code in probe()
- cbb1cf6 staging: emxx_udc: fix loop in _nbu2ss_nuke()
- 285207a cxgb4: avoid accessing registers when clearing filters
- d7aa782 iommu/vt-d: Use user privilege for RID2PASID translation
- 73b31d8 iommu/vt-d: Check for allocation failure in aux_detach_device()
- 9f6c817 net/mlx5e: Reject mirroring on source port change encap rules
- a663fe9 net/mlx5e: Make sure fib dev exists in fib event
- 9d0c46a net/mlx5: SF, Fix show state inactive when its inactivated
- b6267c5 net: hns3: fix user's coalesce configuration lost issue
- 0921a06 net: hns3: put off calling register_netdev() until client initialize complete
- d207c1e net: hns3: fix incorrect resp_msg issue
- 2b63009 iommu/virtio: Add missing MODULE_DEVICE_TABLE
- f3f2cf4 iommu/amd: Clear DMA ops when switching domain
- 88eda95 gve: Correct SKB queue index validation.
- a2f429c gve: Upgrade memory barrier in poll routine
- 5278c75 gve: Add NULL pointer checks when freeing irqs.
- 9361862 gve: Update mgmt_msix_idx if num_ntfy changes
- 59da77d gve: Check TX QPL was actually assigned
- 4058878 net/smc: remove device from smcd_dev_list after failed device_add()
- a76fb9b mld: fix panic in mld_newpack()
- ae35950 bnxt_en: Fix context memory setup for 64K page size.
- a5696a3 bnxt_en: Include new P5 HV definition in VF check.
- 88a9b61 net: bnx2: Fix error return code in bnx2_init_board()
- 33c82b6 net: hso: check for allocation failure in hso_create_bulk_serial_device()
- 1471897 net: sched: fix tx action reschedule issue with stopped queue
- a1b236c net: sched: fix tx action rescheduling issue during deactivation
- dbc50ef net: sched: fix packet stuck problem for lockless qdisc
- 46dc34a tls splice: check SPLICE_F_NONBLOCK instead of MSG_DONTWAIT
- 524576c openvswitch: meter: fix race when getting now_ms.
- 70c4ead cxgb4/ch_ktls: Clear resources when pf4 device is removed
- 5cc25f8 net: mdio: octeon: Fix some double free issues
- bc5b0fb net: mdio: thunder: Fix a double free issue in the .remove function
- f214044 chelsio/chtls: unlock on error in chtls_pt_recvmsg()
- 0e38e70 ptp: ocp: Fix a resource leak in an error handling path
- 389146b octeontx2-pf: fix a buffer overflow in otx2_set_rxfh_context()
- 32a1777 net: fec: fix the potential memory leak in fec_enet_init()
- 3fc2072 net: packetmmap: fix only tx timestamp on request
- 718f5f7 net: really orphan skbs tied to closing sk
- 90ee484 spi: Assume GPIO CS active high in ACPI case
- 94f668a vfio-ccw: Check initialized flag in cp_init()
- a7accb6 net: ipa: memory region array is variable size
- b2693e8 net: stmmac: Fix MAC WoL not working if PHY does not support WoL
- cbb4de5 ASoC: cs42l42: Regmap must use_single_read/write
- b5e4d3d usb: cdnsp: Fix lack of removing request from pending list.
- 2e3e26f interconnect: qcom: Add missing MODULE_DEVICE_TABLE
- 93d1dbe interconnect: qcom: bcm-voter: add a missing of_node_put()
- e6b634d net: dsa: fix error code getting shifted with 4 in dsa_slave_get_sset_count
- 1c48b00 net: netcp: Fix an error message
- ecd6d94 spi: take the SPI IO-mutex in the spi_set_cs_timing method
- 29258f2 linux/bits.h: fix compilation error with GENMASK
- 1196f05 block: fix a race between del_gendisk and BLKRRPART
- 61b0308 platform/x86: touchscreen_dmi: Add info for the Chuwi Hi10 Pro (CWI529) tablet
- 5700de8 drm/amdgpu: stop touching sched.ready in the backend
- 42cdbad drm/amd/amdgpu: fix a potential deadlock in gpu reset
- d4ea141 drm/amdgpu: Fix a use-after-free
- 95a4ec9 drm/amd/amdgpu: fix refcount leak
- 4dc5bc4 drm/amd/display: Disconnect non-DP with no EDID
- 77fbce3 SMB3: incorrect file id in requests compounded with open
- 3e57880 platform/x86: touchscreen_dmi: Add info for the Mediacom Winpad 7.0 W700 tablet
- 5d2dc1f platform/x86: intel_punit_ipc: Append MODULE_DEVICE_TABLE for ACPI
- 550f051 platform/x86: hp-wireless: add AMD's hardware id to the supported list
- dc720b1 ALSA: dice: disable double_pcm_frames mode for M-Audio Profire 610, 2626 and Avid M-Box 3 Pro
- b545442 btrfs: do not BUG_ON in link_to_fixup_dir
- 8bf7fa7 btrfs: release path before starting transaction when cloning inline extent
- 063c784 scsi: pm80xx: Fix drives missing during rmmod/insmod loop
- 4414c81 openrisc: Define memory barrier mb
- af847da scsi: BusLogic: Fix 64-bit system enumeration error for Buslogic
- 19202eb scsi: ufs: ufs-mediatek: Fix power down spec violation
- afd1fca btrfs: return whole extents in fiemap
- a0585a3 brcmfmac: properly check for bus register errors
- fbe98b0 Revert "brcmfmac: add a check for the status of usb_register"
- b1f9f13 net: liquidio: Add missing null pointer checks
- 727041e Revert "net: liquidio: fix a NULL pointer dereference"
- de1fe32 media: gspca: properly check for errors in po1030_probe()
- b10396b Revert "media: gspca: Check the return value of write_bridge for timeout"
- 5e74e63 media: gspca: mt9m111: Check write_bridge for timeout
- 7117bf7 Revert "media: gspca: mt9m111: Check write_bridge for timeout"
- 4b747b3 media: dvb: Add check on sp8870_readreg return
- b63390a Revert "media: dvb: Add check on sp8870_readreg"
- 48f71fa ASoC: cs43130: handle errors in cs43130_probe() properly
- e8e8f73 Revert "ASoC: cs43130: fix a NULL pointer dereference"
- a7c7c9a libertas: register sysfs groups properly
- 42c4a0c Revert "libertas: add checks for the return value of sysfs_create_group"
- a41d9b5 dmaengine: qcom_hidma: comment platform_driver_register call
- 5f63e05 Revert "dmaengine: qcom_hidma: Check for driver register failure"
- fb1fbcc isdn: mISDN: correctly handle ph_info allocation failure in hfcsusb_ph_info
- 7b917dd Revert "isdn: mISDN: Fix potential NULL pointer dereference of kzalloc"
- f06a1a9 ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()
- 7930082 Revert "ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()"
- d974cc5 isdn: mISDNinfineon: check/cleanup ioremap failure correctly in setup_io
- 00b5327 Revert "isdn: mISDNinfineon: fix potential NULL pointer dereference"
- ac19876 Revert "ALSA: usx2y: Fix potential NULL pointer dereference"
- 64638f9 Revert "ALSA: gus: add a check of the status of snd_ctl_add"
- 1d6d3cf char: hpet: add checks after calling ioremap
- 740b532 Revert "char: hpet: fix a missing check of ioremap"
- 8046e60 net: caif: remove BUG_ON(dev == NULL) in caif_xmit
- 0b950a0 Revert "net: caif: replace BUG_ON with recovery code"
- 0609385 net/smc: properly handle workqueue allocation failure
- c0fc080 Revert "net/smc: fix a NULL pointer dereference"
- f14bf57 net: fujitsu: fix potential null-ptr-deref
- 88ecd31 Revert "net: fujitsu: fix a potential NULL pointer dereference"
- e1fa6f4 serial: max310x: unregister uart driver in case of failure and abort
- 436fbcb Revert "serial: max310x: pass return value of spi_register_driver"
- 66e7057 Revert "ALSA: sb: fix a missing check of snd_ctl_add"
- 3b5fab1 Revert "media: usb: gspca: add a missed check for goto_low_power"
- 08ebe06 Revert "crypto: cavium/nitrox - add an error message to explain the failure of pci_request_mem_regions"
- e4c4047 gpio: cadence: Add missing MODULE_DEVICE_TABLE
- f5795f9 platform/x86: hp_accel: Avoid invoking _INI to speed up resume
- dbcde1a mptcp: drop unconditional pr_warn on bad opt
- 18e7f05 mptcp: fix data stream corruption
- 36a0773 mptcp: avoid error message on infinite mapping
- 981e08a nvmet-tcp: fix inline data size comparison in nvmet_tcp_queue_response
- 2a4115d perf jevents: Fix getting maximum number of fds
- 42bf329 perf debug: Move debug initialization earlier
- 3c0da3f afs: Fix the nlink handling of dir-over-dir rename
- 5f6f6b2 i2c: sh_mobile: Use new clock calculation formulas for RZ/G2E
- 1f583d3 i2c: i801: Don't generate an interrupt on bus reset
- b1d777c i2c: mediatek: Disable i2c start_en and clear intr_stat brfore reset
- edcf4d5 i2c: s3c2410: fix possible NULL pointer deref on read message after write
- bd72115 net: dsa: sja1105: fix VL lookup command packing for P/Q/R/S
- 883c1a8 net: dsa: sja1105: call dsa_unregister_switch when allocating memory fails
- 987e4ab net: dsa: sja1105: add error handling in sja1105_setup()
- 6e3e0c3 net: dsa: sja1105: error out on unsupported PHY mode
- fa43808 net: dsa: sja1105: use 4095 as the private VLAN for untagged traffic
- a915707 net: dsa: sja1105: update existing VLANs from the bridge VLAN list
- 7b22466 net: dsa: fix a crash if ->get_sset_count() fails
- efd1306 net: dsa: bcm_sf2: Fix bcm_sf2_reg_rgmii_cntrl() call for non-RGMII port
- 82ae35b net: dsa: mt7530: fix VLAN traffic leaks
- 8b1e82e netfilter: flowtable: Remove redundant hw refresh bit
- eb9bc1d sctp: add the missing setting for asoc encap_port
- eb21f9f sctp: fix the proc_handler for sysctl encap_port
- 12391be spi: spi-fsl-dspi: Fix a resource leak in an error handling path
- ace300e tipc: skb_linearize the head skb when reassembling msgs
- b9f5b7a tipc: wait and exit until all work queues are done
- 5875860 Revert "net:tipc: Fix a double free in tipc_sk_mcast_rcv"
- 2f2ab04 SUNRPC in case of backlog, hand free slots directly to waiting task
- 068ecf1 KVM: selftests: Fix 32-bit truncation of vm_get_max_gfn()
- 06c97a5 KVM: X86: Use _BITUL() macro in UAPI headers
- 3ce7c5a KVM: X86: Fix warning caused by stale emulation context
- 844d154 net/mlx5: Set term table as an unmanaged flow table
- c1780dc {net, RDMA}/mlx5: Fix override of log_max_qp by other device
- 9694161 net/mlx4: Fix EEPROM dump support
- bdfd359 net/mlx5e: Fix null deref accessing lag dev
- bb7b3de net/mlx5: Set reformat action when needed for termination rules
- efe5659 net/mlx5e: Fix nullptr in add_vlan_push_action()
- 5b577d2 net/mlx5e: Fix nullptr in mlx5e_tc_add_fdb_flow()
- 8d9c417 {net,vdpa}/mlx5: Configure interface MAC into mpfs L2 table
- 18db59b net/mlx5e: Fix error path of updating netdev queues
- df1bb71 net/mlx5e: Fix multipath lag activation
- 16c0126 net/mlx5e: reset XPS on error flow if netdev isn't registered yet
- b4b9103 drm/meson: fix shutdown crash when component not probed
- dd7f6cf NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config
- 2fe1cac NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce()
- 15ac6f1 NFS: Fix an Oopsable condition in __nfs_pageio_add_request()
- d34fb62 NFS: fix an incorrect limit in filelayout_decode_layout()
- 23c2530 fs/nfs: Use fatal_signal_pending instead of signal_pending
- 3178e0a Bluetooth: cmtp: fix file refcount when cmtp_attach_device fails
- 70c886a net: usb: fix memory leak in smsc75xx_bind
- 1e05787 usb: typec: tcpm: Respond Not_Supported if no snk_vdo
- 5d6663b usb: typec: tcpm: Properly interrupt VDM AMS
- 4a718eb usb: typec: tcpm: Use LE to CPU conversion when accessing msg->header
- ad4505a usb: typec: ucsi: Clear pending after acking connector change
- d922fb8 usb: typec: mux: Fix matching with typec_altmode_desc
- ef05cdb usb: gadget: udc: renesas_usb3: Fix a race in usb3_start_pipen()
- d26749d usb: dwc3: gadget: Properly track pending and queued SG
- 7add012 thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID
- 21793ec USB: serial: pl2303: add device id for ADLINK ND-6530 GC
- 6184000 USB: serial: ftdi_sio: add IDs for IDS GmbH Products
- 29dde1a USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011
- 7d4d3d9 USB: serial: ti_usb_3410_5052: add startech.com device id
- 9b07b69 serial: rp2: use 'request_firmware' instead of 'request_firmware_nowait'
- 6236ec3 serial: sh-sci: Fix off-by-one error in FIFO threshold register setting
- de80eef serial: tegra: Fix a mask operation that is always true
- 252c239 drivers: base: Fix device link removal
- 4f4bff1 xhci: Fix 5.12 regression of missing xHC cache clearing command after a Stall
- 1f3b217 xhci: fix giving back URB with incorrect status regression in 5.12
- 9f7cb3f USB: usbfs: Don't WARN about excessively large memory allocations
- 5148442 Revert "irqbypass: do not start cons/prod when failed connect"
- 9bc02a0 USB: trancevibrator: fix control-request direction
- e3355f6 serial: 8250_pci: handle FL_NOIRQ board flag
- 220d8ee serial: 8250_pci: Add support for new HPE serial device
- e97a4d8 serial: 8250_dw: Add device HID for new AMD UART controller
- 7c94007 serial: 8250: Add UART_BUG_TXRACE workaround for Aspeed VUART
- 0f9df70 iio: adc: ad7192: handle regulator voltage error first
- d6e18ad iio: adc: ad7192: Avoid disabling a clock that was never enabled.
- f4ab222 iio: adc: ad7793: Add missing error code in ad7793_setup()
- a4cfd59 iio: adc: ad7923: Fix undersized rx buffer.
- 26da804 iio: adc: ad7124: Fix potential overflow due to non sequential channel numbers
- af7d916 iio: adc: ad7124: Fix missbalanced regulator enable / disable on error.
- a4bc913 iio: adc: ad7768-1: Fix too small buffer passed to iio_push_to_buffers_with_timestamp()
- cd9c0a1 iio: dac: ad5770r: Put fwnode in error case during ->probe()
- 84ae19a iio: gyro: fxas21002c: balance runtime power in error path
- 9db5a7b staging: iio: cdc: ad7746: avoid overwrite of num_channels
- 1650540 mei: request autosuspend after sending rx flow control
- a09e273 KVM: arm64: Prevent mixed-width VM creation
- 7289a04 KVM: arm64: Fix debug register indexing
- 911c554 KVM: arm64: Move __adjust_pc out of line
- 2ce7107 KVM: X86: Fix vCPU preempted state from guest's point of view
- 92f3057 thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue
- d08a4b6 thunderbolt: usb4: Fix NVM read buffer bounds and offset issue
- a3c3fac misc/uss720: fix memory leak in uss720_probe
- 8a7a308 serial: core: fix suspicious security_locked_down() call
- 571e51e debugfs: fix security_locked_down() call for SELinux
- f65588e seccomp: Refactor notification handler to prepare for new semantics
- 1b3c587 riscv: stacktrace: fix the riscv stacktrace when CONFIG_FRAME_POINTER enabled
- 25c0cef Documentation: seccomp: Fix user notification documentation
- 3f423c0 kgdb: fix gcc-11 warnings harder
- d88d418 drm/amdgpu/jpeg2.0: add cancel_delayed_work_sync before power gate
- 56db5e8 drm/amdgpu/vcn2.5: add cancel_delayed_work_sync before power gate
- 13431a0 drm/amdgpu/vcn2.0: add cancel_delayed_work_sync before power gate
- 396c76d drm/amdkfd: correct sienna_cichlid SDMA RLC register offset error
- e1b82f6 drm/amdgpu/vcn1: add cancel_delayed_work_sync before power gate
- 25721a3 drm/amd/pm: correct MGpuFanBoost setting
- f2125eb drm/i915: Reenable LTTPR non-transparent LT mode for DPCD_REVcipher_type to AES-128-CCM for SMB3.0
- 0c4bfc1 cifs: fix string declarations and assignments in tracepoints
- 59ef529 ALSA: usb-audio: scarlett2: Improve driver startup messages
- ba15945 ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci
- 601dacd ALSA: usb-audio: fix control-request direction
- 3771c89 ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 17 G8
- 54ec6ce ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 15 G8
- 6a79505 ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook G8
- 2a012da ALSA: hda/realtek: fix mute/micmute LEDs for HP 855 G8
- f3c2368 ALSA: hda/realtek: Chain in pop reduction fixup for ThinkStation P340
- 3c35570 ALSA: hda/realtek: Headphone volume is controlled by Front mixer
- 73d862c ALSA: hda/realtek: the bass speaker can't output sound on Yoga 9i
Homepage
Download Linux 5.12.9-xanmod1 source from GitHub