A new XanMod Linux Kernel based on the latest Linux Kernel 5.12.14 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.14-xanmod1
- dfc8afa Linux 5.12.14-xanmod1
- aba4b73 mm, futex2: fix shared futex2 pgoff on shmem huge page
- 484fdcc Merge tag 'v5.12.14' into 5.12
- afe5d23 Linux 5.12.14
- c59019d integrity: Load mokx variables into the blacklist keyring
- b3ca107 certs: Add ability to preload revocation certs
- 8365f9a certs: Move load_system_certificate_list to a common function
- 7be8fb1 certs: Add EFI_CERT_X509_GUID support for dbx entries
- 2b2e592 Revert "drm: add a locked version of drm_is_current_master"
- 54ab8b0 mm/hwpoison: do not lock page again when me_huge_page() successfully recovers
- ee98cb6 netfs: fix test for whether we can skip read when writing beyond EOF
- e77b796 swiotlb: manipulate orig_addr when tlb_addr has offset
- d94b8af KVM: SVM: Call SEV Guest Decommission if ASID binding fails
- 11b5f1b mm, futex: fix shared futex pgoff on shmem huge page
- a8f60ca mm/thp: another PVMW_SYNC fix in page_vma_mapped_walk()
- 8ab4361 mm/thp: fix page_vma_mapped_walk() if THP mapped by ptes
- 6701cbc mm: page_vma_mapped_walk(): get vma_address_end() earlier
- ec7c3f2 mm: page_vma_mapped_walk(): use goto instead of while (1)
- 0c1a4f9 mm: page_vma_mapped_walk(): add a level of indentation
- 063ef7d mm: page_vma_mapped_walk(): crossing page table boundary
- bcd41f6 mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block
- 0d212ac mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd
- dc7010b mm: page_vma_mapped_walk(): settle PageHuge on entry
- 2d8d4f4 mm: page_vma_mapped_walk(): use page for pvmw->page
- 2ceb1f9 mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split
- d136751 mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page()
- 9dbb5ac mm/thp: fix page_address_in_vma() on file THP tails
- b2a4c9a mm/thp: fix vma_address() if virtual address below file offset
- 926b336 mm/thp: try_to_unmap() use TTU_SYNC for safe splitting
- b1daf8f mm/thp: make is_huge_zero_pmd() safe and quicker
- a9e2230 mm/thp: fix __split_huge_pmd_locked() on shmem migration entry
- 46adfc2 mm, thp: use head page in __migration_entry_wait()
- 7867cc4 mm/memory-failure: use a mutex to avoid memory_failure() races
- 3e40e78 x86/fpu: Make init_fpstate correct with optimized XSAVE
- be2b52c x86/fpu: Preserve supervisor states in sanitize_restored_user_xstate()
- eb674f1 kthread: prevent deadlock when kthread_mod_delayed_work() races with kthread_cancel_delayed_work_sync()
- 998f7b2 kthread_worker: split code for canceling the delayed work timer
- a9d294f xen/events: reset active flag for lateeoi events later
- f810a6a ceph: must hold snap_rwsem when filling inode for async create
- cdc9ae6 i2c: robotfuzz-osif: fix control-request directions
- c36fbd8 KVM: do not allow mapping valid but non-reference-counted pages
- cf9fdfe s390: clear pt_regs::flags on irq entry
- c37ba40 s390: fix system call restart with multiple signals
- 24b8aa8 s390/stack: fix possible register corruption with stack switch helper
- 57378c5 s390/topology: clear thread/group maps for offline cpus
- 2eb327b nilfs2: fix memory leak in nilfs_sysfs_delete_device_group
- 48e3319 software node: Handle software node injection to an existing device properly
- 0ffdf36 scsi: sd: Call sd_revalidate_disk() for ioctl(BLKRRPART)
- 79e0dbd gpiolib: cdev: zero padding during conversion to gpioline_info_changed
- 5079a0f i2c: i801: Ensure that SMBHSTSTS_INUSE_STS is cleared when leaving i801_access
- 39eb612 pinctrl: stm32: fix the reported number of GPIO lines per bank
- 96bade7 pinctrl: microchip-sgpio: Put fwnode in error case during ->probe()
- 19e15b5 perf/x86: Track pmu in per-CPU cpu_hw_events
- 8bfb7c1 riscv: dts: fu740: fix cache-controller interrupts
- 736b50e net: ll_temac: Avoid ndo_start_xmit returning NETDEV_TX_BUSY
- c34ef5b net: ll_temac: Add memory-barriers for TX BD access
- db676e7 PCI: Add AMD RS690 quirk to enable 64-bit DMA
- 9a10de6 recordmcount: Correct st_shndx handling
- e57188c mac80211: handle various extensible elements correctly
- 01267d0 mac80211: reset profile_periodicity/ema_ap
- 961535d net: qed: Fix memcpy() overflow of qed_dcbx_params()
- bee7a6e KVM: selftests: Fix kvm_check_cap() assertion
- 4af8575 r8169: Avoid memcpy() over-reading of ETH_SS_STATS
- 45c6af8 sh_eth: Avoid memcpy() over-reading of ETH_SS_STATS
- 731225f r8152: Avoid memcpy() over-reading of ETH_SS_STATS
- 86876b3 net/packet: annotate accesses to po->ifindex
- 598c3d4 net/packet: annotate accesses to po->bind
- e309e46 qmi_wwan: Do not call netif_rx from rx_fixup
- e5e2010 bpf, selftests: Adjust few selftest outcomes wrt unreachable code
- e056cc4 net: caif: fix memory leak in ldisc_open
- 6a3354d riscv32: Use medany C model for modules
- 2ec33dd net: phy: dp83867: perform soft reset and retain established link
- ad91e20 net/packet: annotate data race in packet_sendmsg()
- 231504b inet: annotate date races around sk->sk_txhash
- 8e09e90 net: annotate data race in sock_error()
- cb50cda ping: Check return value of function 'ping_queue_rcv_skb'
- a2f9742 inet: annotate data race in inet_send_prepare() and inet_dgram_connect()
- a655fe6 net: ethtool: clear heap allocations for ethtool function
- 0529c16 mac80211: drop multicast fragments
- df0e6c2 net: ipv4: Remove unneed BUG() function
- c12778c dmaengine: mediatek: use GFP_NOWAIT instead of GFP_ATOMIC in prep_dma
- e67423e dmaengine: mediatek: do not issue a new desc if one is still current
- c11dd2d dmaengine: mediatek: free the proper desc in desc_free handler
- 0699075 dmaengine: rcar-dmac: Fix PM reference leak in rcar_dmac_probe()
- d79b7bb dmaengine: idxd: Fix missing error code in idxd_cdev_open()
- c84ccd0 cfg80211: call cfg80211_leave_ocb when switching away from OCB
- 7019c9f mac80211_hwsim: drop pending frames on stop
- 93e9f3f mac80211: remove warning in ieee80211_get_sband()
- 105d84c dmaengine: xilinx: dpdma: Limit descriptor IDs to 16 bits
- e442acb dmaengine: xilinx: dpdma: Add missing dependencies to Kconfig
- 3e7da85 dmaengine: stm32-mdma: fix PM reference leak in stm32_mdma_alloc_chan_resourc()
- a300c3f dmaengine: zynqmp_dma: Fix PM reference leak in zynqmp_dma_alloc_chan_resourc()
- 6d8af08 perf/x86/intel/lbr: Zero the xstate buffer on allocation
- 7ad4a4b perf/x86/lbr: Remove cpuc->lbr_xsave allocation from atomic context
- 49a122a drm/kmb: Fix error return code in kmb_hw_init()
- a8faa6a locking/lockdep: Improve noinstr vs errors
- 1634986 x86/xen: Fix noinstr fail in exc_xen_unknown_trap()
- 1455ac3 x86/xen: Fix noinstr fail in xen_pv_evtchn_do_upcall()
- a483736 x86/entry: Fix noinstr fail in __do_fast_syscall_32()
- d923261 drm/vc4: hdmi: Make sure the controller is powered in detect
- 0a4f517 drm/vc4: hdmi: Move the HSM clock enable to runtime_pm
- 133ad06 Revert "PCI: PM: Do not read power state in pci_enable_device_flags()"
- 0869bd2 spi: spi-nxp-fspi: move the register operation after the clock enable
- 82fde4c psi: Fix psi state corruption when schedule() races with cgroup move
- d698344 mmc: meson-gx: use memcpy_to/fromio for dram-access-quirk
- fb1039f ARM: 9081/1: fix gcc-10 thumb2-kernel regression
- 83a0369 drm/amdgpu: wait for moving fence after pinning
- abaafb9 drm/radeon: wait for moving fence after pinning
- 8361b40 drm/nouveau: wait for moving fence after pinning v2
- 58bc23d drm: add a locked version of drm_is_current_master
- 07553a0 Revert "drm/amdgpu/gfx10: enlarge CP_MEC_DOORBELL_RANGE_UPPER to cover full doorbell."
- c798a99 Revert "drm/amdgpu/gfx9: fix the doorbell missing when in CGPG issue."
- 404dd3a module: limit enabling module.sig_enforce
Homepage
Download Linux 5.12.14-xanmod1 source from GitHub