Debian 9942 Published by

A new XanMod Linux Kernel based on the new Linux Kernel 5.17.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-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

Linux 5.17.12-xanmod1

22bcbb0 Linux 5.17.12-xanmod1
fca9dac Merge tag 'v5.17.12' into 5.17
cafd914 drivers/char: Remove LRNG v44 patchset
39555c4 Linux 5.17.12
d3bbcba ALSA: ctxfi: Add SB046x PCI ID
567ae03 ACPI: sysfs: Fix BERT error region memory mapping
3879d3f random: check for signals after page of pool writes
de63c5e random: wire up fops->splice_{read,write}iter()
27bf1c9 random: convert to using fops->write_iter()
afc002f random: convert to using fops->read_iter()
fb7d06d random: unify batched entropy implementations
817191b random: move randomize_page() into mm where it belongs
41f0774 random: move initialization functions out of hot pages
e35c23c random: make consistent use of buf and len
65d3f67 random: use proper return types on get_random{int,long}wait()
245b1ae random: remove extern from functions in header
80ec4c6 random: use static branch for crng_ready()
d3fc4f4 random: credit architectural init the exact amount
e136fbd random: handle latent entropy and command line from random_init()
e78d195 random: use proper jiffies comparison macro
b4b11eb random: remove ratelimiting for in-kernel unseeded randomness
e6b205d random: move initialization out of reseeding hot path
8fe9ac5 random: avoid initializing twice in credit race
4f8ab1c random: use symbolic constants for crng_init states
9ebf07a siphash: use one source of truth for siphash permutations
c5ff607 random: help compiler out with fast_mix() by using simpler arguments
de2ba59 random: do not use input pool from hard IRQs
1705dc1 random: order timer entropy functions below interrupt functions
c3b0492 random: do not pretend to handle premature next security model
427346f random: use first 128 bits of input as fast init
6521446 random: do not use batches when !crng_ready()
c7a9336 random: insist on random_get_entropy() existing in order to simplify
227221a xtensa: use fallback for random_get_entropy() instead of zero
1cdbac2 sparc: use fallback for random_get_entropy() instead of zero
36b6fc9 um: use fallback for random_get_entropy() instead of zero
9771084 x86/tsc: Use fallback for random_get_entropy() instead of zero
71cc2c0 nios2: use fallback for random_get_entropy() instead of zero
357f8b2 arm: use fallback for random_get_entropy() instead of zero
131a92a mips: use fallback for random_get_entropy() instead of just c0 random
715066a riscv: use fallback for random_get_entropy() instead of zero
ff52f69 m68k: use fallback for random_get_entropy() instead of zero
9aaae71 timekeeping: Add raw clock fallback for random_get_entropy()
d2e082d powerpc: define get_cycles macro for arch-override
af739f0 alpha: define get_cycles macro for arch-override
4b40eda parisc: define get_cycles macro for arch-override
3129038 s390: define get_cycles macro for arch-override
01f814b ia64: define get_cycles macro for arch-override
12ea854 init: call time_init() before rand_initialize()
80f5814 random: fix sysctl documentation nits
dcc76aa random: document crng_fast_key_erasure() destination possibility
284ca0b random: make random_get_entropy() return an unsigned long
96260d6 random: allow partial reads if later user copies fail
6ce4add random: check for signals every PAGE_SIZE chunk of /dev/[u]random
90fc9bf random: check for signal_pending() outside of need_resched() check
b8567f7 random: do not allow user to keep crng key around on stack
da31d0d random: do not split fast init input in add_hwgenerator_randomness()
24abaf3 random: mix build-time latent entropy into pool at init
a1baaef random: re-add removed comment about get_random{u32,u64} reseeding
9b1d7b3 random: treat bootloader trust toggle the same way as cpu trust toggle
d82e9ea random: skip fast_init if hwrng provides large chunk of entropy
ded7b5c random: check for signal and try earlier when generating entropy
ff1ca4a random: reseed more often immediately after booting
0d19aee random: make consistent usage of crng_ready()
db9b977 random: use SipHash as interrupt entropy accumulator
367c559 random: replace custom notifier chain with standard one
bdfa599 random: don't let 644 read-only sysctls be written to
eca9204 random: give sysctl_random_min_urandom_seed a more sensible value
a12d3e7 random: do crng pre-init loading in worker rather than irq
4dec7f2 random: unify cycles_t and jiffies usage and types
e75a5b2 random: cleanup UUID handling
14b565a random: only wake up writers after zap if threshold was passed
83b4dbb random: round-robin registers as ulong, not u32
dc64f36 random: clear fast pool, crng, and batches in cpuhp bring up
101d38d random: pull add_hwgenerator_randomness() declaration into random.h
0014e4f random: check for crng_init == 0 in add_device_randomness()
993d28d random: unify early init crng load accounting
89148b5 random: do not take pool spinlock at boot
a4217ab random: defer fast pool mixing to worker
8bbe2f4 random: rewrite header introductory comment
118b78b random: group sysctl functions
04c5d0c random: group userspace read/write functions
b94106c random: group entropy collection functions
7c0cd71 random: group entropy extraction functions
53418d3 random: group crng functions
799d1e8 random: group initialization wait functions
93f764a random: remove whitespace and reorder includes
26db5c0 random: remove useless header comment
fc8ce09 random: introduce drain_entropy() helper to declutter crng_reseed()
8a5bdef random: deobfuscate irq u32/u64 contributions
5753c65 random: add proper SPDX header
a66146a random: remove unused tracepoints
5dde7c4 random: remove ifdef'd out interrupt bench
d52d9b7 random: tie batched entropy generation to base_crng generation
432b6e6 random: fix locking for crng_init in crng_reseed()
06460c4 random: zero buffer after reading entropy from userspace
3272ad7 random: remove outdated INT_MAX >> 6 check in urandom_read()
d1d80e9 random: make more consistent use of integer types
5e2ecef random: use hash function for crng_slow_load()
2aca3e6 random: use simpler fast key erasure flow on per-cpu keys
8643bf4 random: absorb fast pool into input pool after fast load
badc140 random: do not xor RDRAND when writing into /dev/random
6057a5d random: ensure early RDSEED goes through mixer on init
18ae4b5 random: inline leaves of rand_initialize()
e5af930 random: get rid of secondary crngs
bd6f26c random: use RDSEED instead of RDRAND in entropy extraction
ba20054 random: fix locking in crng_fast_load()
048d57f random: remove batched entropy locking
a53df44 random: remove use_input_pool parameter from crng_reseed()
4fa0d8e random: make credit_entropy_bits() always safe
7404140 random: always wake up entropy writers after extraction
bd7d220 random: use linear min-entropy accumulation crediting
2d6c74b random: simplify entropy debiting
efba5eb random: use computational hash for entropy extraction
19a6679 KVM: x86/mmu: fix NULL pointer dereference on guest INVPCID
0650aa5 HID: amd_sfh: Add support for sensor discovery
Xanmod

Homepage
Download Linux 5.17.12-xanmod1 source from GitHub