Software 42839 Published by

A new XanMod Linux Kernel based on Linux Kernel 5.9.12 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-xanmod

Reboot.

Meta packages available: linux-xanmod [5.8]linux-xanmod-edge [5.8]linux-xanmod-lts [5.4]linux-xanmod-rt-edge [5.6-rt] and linux-xanmod-rt [5.4-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

Linux 5.9.12-xanmod1

  •     82ef34d Linux 5.9.12-xanmod1
  •     5ae0556 Merge tag 'v5.9.12' into 5.9
  •     89bb11d Linux 5.9.12
  •     e411ba9 drm/amdgpu: add rlc iram and dram firmware support
  •     c39c19b x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak
  •     2510f2f x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak
  •     63ad714 x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb
  •     c30b19a x86/mce: Do not overwrite no_way_out if mce_end() fails
  •     4e184c9 irqchip/exiu: Fix the index of fwspec for IRQ type
  •     1617bb1 usb: gadget: Fix memleak in gadgetfs_fill_super
  •     444dd51 USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO built-in usb-audio card
  •     df373b6 USB: core: Fix regression in Hercules audio card
  •     bb92cf0 usb: gadget: f_midi: Fix memleak in f_midi_alloc
  •     b09dd77 USB: core: Change %pK for __user pointers to %px
  •     794451c spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe
  •     9d05153 perf probe: Fix to die_entrypc() returns error correctly
  •     cf15299 perf stat: Use proper cpu for shadow stats
  •     fe49e7c perf record: Synthesize cgroup events only if needed
  •     a6ac2ca can: m_can: fix nominal bitiming tseg2 min for version >= 3.1
  •     b34b36a can: m_can: m_can_open(): remove IRQF_TRIGGER_FALLING from request_threaded_irq()'s flags
  •     a84974f RDMA/hns: Bugfix for memory window mtpt configuration
  •     c16cfa4 RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP
  •     df46336 RDMA/hns: Fix wrong field of SRQ number the device supports
  •     bd12eb8 platform/x86: toshiba_acpi: Fix the wrong variable assignment
  •     83bec12 platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup time
  •     9019898 can: gs_usb: fix endianess problem with candleLight firmware
  •     32083f0 drm/nouveau: fix relocations applying logic and a double-free
  •     9fd7ba6 ptp: clockmatrix: bug fix for idtcm_strverscmp
  •     237f1cf enetc: Let the hardware auto-advance the taprio base-time of 0
  •     2982883 net: stmmac: fix incorrect merge of patch upstream
  •     038c5ea RISC-V: fix barrier() use in
  •     b7a80f5 RISC-V: Add missing jump label initialization
  •     e13b605 riscv: Explicitly specify the build id style in vDSO Makefile again
  •     4e6cdbe efi: EFI_EARLYCON should depend on EFI
  •     749f3d3 efivarfs: revert "fix memory leak in efivarfs_create()"
  •     a7783b0 efi/efivars: Set generic ops before loading SSDT
  •     5d79106 arm64: tegra: Wrong AON HSP reg property size
  •     3d0f2fa x86/tboot: Don't disable swiotlb when iommu is forced on
  •     68a9159 optee: add writeback to valid memory type
  •     0faa4f7 ibmvnic: enhance resetting status check during module exit
  •     97864a2 ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq
  •     ef9688c ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues
  •     aafcf7a net: ena: fix packet's addresses for rx_offset feature
  •     9b58e35 net: ena: set initial DMA width to avoid intel iommu issue
  •     2f7b0f3 net: ena: handle bad request id in ena_netdev
  •     b7fc59c nfc: s3fwrn5: use signed integer for parsing GPIO numbers
  •     1144622 aquantia: Remove the build_skb path
  •     3407e48 io_uring: fix shift-out-of-bounds when round up cq size
  •     0fbd464 spi: imx: fix the unbalanced spi runtime pm management
  •     26c42be firmware: xilinx: Fix SD DLL node reset issue
  •     b210f24 i40e: Fix removing driver while bare-metal VFs pass traffic
  •     bf8da8d IB/mthca: fix return value of error branch in mthca_init_cq()
  •     a63d225 iommu: Check return of __iommu_attach_device()
  •     a14257e powerpc/64s: Fix allnoconfig build since uaccess flush
  •     3274b5b ibmvnic: notify peers when failover and migration happen
  •     f937305 ibmvnic: fix call_netdevice_notifiers in do_reset
  •     58a1a33 bonding: wait for sysfs kobject destruction before freeing struct slave
  •     3380224 drm/mediatek: dsi: Modify horizontal front/back porch byte formula
  •     9f7adaa s390/qeth: fix tear down of async TX buffers
  •     822529e s390/qeth: fix af_iucv notification race
  •     35eafcf s390/qeth: make af_iucv TX notification call more robust
  •     9ad73b2 dpaa2-eth: select XGMAC_MDIO for MDIO bus support
  •     db7fdde cxgb4: fix the panic caused by non smac rewrite
  •     788d34d block/keyslot-manager: prevent crash when num_slots=1
  •     4555f3d bnxt_en: Release PCI regions when DMA mask setup fails during probe.
  •     8dcd609 video: hyperv_fb: Fix the cache type when mapping the VRAM
  •     5405ac6 bnxt_en: fix error return code in bnxt_init_board()
  •     2f89602 bnxt_en: fix error return code in bnxt_init_one()
  •     5136d24 scsi: ufs: Fix race between shutdown and runtime resume flow
  •     dfff832 ARM: dts: dra76x: m_can: fix order of clocks
  •     5da5a1a bus: ti-sysc: suppress err msg for timers used as clockevent/source
  •     89aada6 arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed
  •     2f23110 phy: qualcomm: Fix 28 nm Hi-Speed USB PHY OF dependency
  •     abd86de phy: qualcomm: usb: Fix SuperSpeed PHY OF dependency
  •     9d9bc23 usb: cdns3: gadget: calculate TD_SIZE based on TD
  •     f43e7b4 usb: cdns3: gadget: fix some endian issues
  •     3b06505 batman-adv: set .owner to THIS_MODULE
  •     b61c6de btrfs: qgroup: don't commit transaction when we already hold the handle
  •     f37031a KVM: s390: remove diag318 reset code
  •     6169b35 KVM: s390: pv: Mark mm as protected after the set secure parameters and improve cleanup
  •     4ea1ac2 iwlwifi: mvm: write queue_sync_state only for sync
  •     1c82d36 iwlwifi: mvm: properly cancel a session protection for P2P
  •     c04cb3a iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC
  •     c8c20c0 phy: tegra: xusb: Fix dangling pointer on probe failure
  •     0e19fe5 ARM: OMAP2+: Manage MPU state properly for omap_enter_idle_coupled()
  •     a22c73e bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw
  •     e79c3d9 bus: ti-sysc: Fix reset status check for modules with quirks
  •     9b1f3ab net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset
  •     f6cbd74 x86/dumpstack: Do not try to access user space code of other tasks
  •     4381c76 xtensa: uaccess: Add missing __user to strncpy_from_user() prototype
  •     30ffb6a perf/x86: fix sysfs type mismatches
  •     6e82639 lockdep: Put graph lock/unlock under lock_recursion protection
  •     2c0cd3c scsi: target: iscsi: Fix cmd abort fabric stop race
  •     464eade scsi: libiscsi: Fix NOP race condition
  •     d3bda78 dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size
  •     977865d cpuidle: tegra: Annotate tegra_pm_set_cpu_in_lp2() with RCU_NONIDLE
  •     8180cdb vhost scsi: fix cmd completion race
  •     517ce96 vhost scsi: alloc cmds per vq instead of session
  •     9876dea vhost: add helper to check if a vq has been setup
  •     f3061e4 vdpasim: fix "mac_pton" undefined error
  •     32944d8 net: stmmac: dwmac_lib: enlarge dma reset timeout
  •     2da8df0 io_uring: handle -EOPNOTSUPP on path resolution
  •     55a3b1a nvme: free sq/cq dbbuf pointers when dbbuf set fails
  •     ba8522f proc: don't allow async path resolution of /proc/self components
  •     bded018 HID: Add Logitech Dinovo Edge battery quirk
  •     b1977be HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo Edge
  •     06b0f7e kunit: fix display of failed expectations for strings
  •     3d1a337 x86/xen: don't unbind uninitialized lock_kicker_irq
  •     8ed4372 dmaengine: xilinx_dma: use readl_poll_timeout_atomic variant
  •     81bf319 HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices
  •     d817fbe staging: ralink-gdma: fix kconfig dependency bug for DMA_RALINK
  •     0af78d1 HID: hid-sensor-hub: Fix issue with devices with no report ID
  •     ed06c39 Input: i8042 - allow insmod to succeed on devices without an i8042 controller
  •     97a6be7 HID: add support for Sega Saturn
  •     8db8588 HID: cypress: Support Varmilo Keyboards' media hotkeys
  •     bf64741 HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses
  •     e38bc67 HID: uclogic: Add ID for Trust Flex Design Tablet
  •     b7779ee drm/amd/display: Avoid HDCP initialization in devices without output
  •     a68122a drm/amd/amdgpu: fix null pointer in runtime pm
  •     01144c0 drm/amdgpu: update golden setting for sienna_cichlid
  •     bf31bff drm/amdgpu: fix a page fault
  •     04c870f arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect()
  •     1264822 arm64: pgtable: Fix pte_accessible()
  •     81fda45 arm64: tegra: Fix USB_VBUS_EN0 regulator on Jetson TX1
  •     eb576c4 arm64: tegra: Correct the UART for Jetson Xavier NX
  •     19d2c29 trace: fix potenial dangerous pointer
  •     28072a5 io_uring: fix ITER_BVEC check
  •     51dbeda drm/amdgpu: fix SI UVD firmware validate resume fail
  •     a38a999 firmware: xilinx: Use hash-table for api feature check
  •     5f01565 iommu/vt-d: Don't read VCCAP register unless it exists
  •     94e5742 KVM: x86: Fix split-irqchip vs interrupt injection window request
  •     852bdfb KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint
  •     c8a286a KVM: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace
  •     5acf7d6 KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page
  •     4897416 powerpc/64s/exception: KVM Fix for host DSI being taken in HPT guest MMU context
  •     7ef4afa powerpc/64s: Fix KVM system reset handling when CONFIG_PPC_PSERIES=y
  •     08ed7f8 cifs: fix a memleak with modefromsid
  •     0760e66 smb3: Handle error case during offload read path
  •     fc0caf4 smb3: Avoid Mid pending list corruption
  •     403149b smb3: Call cifs reconnect from demultiplex thread
  •     3755531 mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback)
  •     ec5c0fc s390: fix fpu restore in entry.S
  •     20939c1 rtc: pcf2127: fix a bug when not specify interrupts property
  •     9608fee btrfs: fix lockdep splat when reading qgroup config on mount
  •     4f23f75 btrfs: don't access possibly stale fs_info data for printing duplicate device
  •     923ca7f btrfs: tree-checker: add missing returns after data_ref alignment checks
  •     ce4ae41 btrfs: tree-checker: add missing return after error in root_item
  •     2d2cb77 btrfs: fix missing delalloc new bit for new delalloc ranges
  •     d1f1703 RDMA/i40iw: Address an mmap handler exploit in i40iw
  •     5732f83 IB/hfi1: Ensure correct mm is used at all times
  •     f36abf8 ipv4: use IS_ENABLED instead of ifdef
  •     1213b04 spi: bcm2835: Fix use-after-free on unbind
  •     06b1466 spi: bcm-qspi: Fix use-after-free on unbind
  •     62b4ac1 io_uring: order refnode recycling
  •     c577296 io_uring: get an active ref_node from files_data
Xanmod

Homepage
Download Linux 5.9.12-xanmod1 source from GitHub