Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 19 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@

## Overview

CachyOS provides a collection of enhanced Linux kernels designed for improved performance across different workloads. Kernels are built from the [CachyOS Linux](https://github.com/CachyOS/linux) fork (currently based on **Linux 7.0**), which merges topic branches on top of upstream stable releases.
CachyOS provides a collection of enhanced Linux kernels designed for improved performance across different workloads. Kernels are built from the [CachyOS Linux](https://github.com/CachyOS/linux) fork (currently based on **Linux 7.1**), which merges topic branches on top of upstream stable releases.

Our kernels feature multiple CPU schedulers, advanced compiler optimizations, and carefully selected patches to deliver better responsiveness and throughput.

Expand Down Expand Up @@ -65,29 +65,33 @@ Each scheduler is optimized for different use cases. We recommend testing each o

## Features

The CachyOS kernel fork merges topic branches into each release. The current **Linux 7.0** base includes the following integrated branches and enhancements.
The CachyOS kernel fork merges topic branches into each release. The current **Linux 7.1** base integrates fifteen topic branches (`amd-isp4`, `bbr3`, `cachy`, `cgroup-vram`, `drm-fair`, `fixes`, `hdmi`, `lenovo-wmi`, `mglru`, `preempt-ipi`, `sched-cluster`, `snd-codecs`, `t2`, `vesa-dsc-bpp`, and `vmalloc-free`) on top of upstream stable.

### Performance Optimizations

- **Advanced Compilation**: Highly customizable PKGBUILD with support for both GCC and Clang compilers
- **Link Time Optimization (LTO)**: Clang Thin LTO enabled by default on the main `linux-cachyos` package
- **Link Time Optimization (LTO)**: Clang Thin LTO (v12) enabled by default on the main `linux-cachyos` package
Comment thread
ptr1337 marked this conversation as resolved.
- **Distributed ThinLTO**: Support for distributed Clang ThinLTO builds to speed up kernel compilation
- **Profile-Guided Optimization**: AutoFDO + Propeller profiling on the default kernel for optimal code generation ([Learn more](https://cachyos.org/blog/2411-kernel-autofdo/))
- **Kernel Control Flow Integrity (kCFI)**: Available when using LLVM for enhanced security
- **Timer Frequency Options**: Configurable between 100Hz, 250Hz, 300Hz, 500Hz, 600Hz, 750Hz, and 1000Hz (default: 1000Hz)
- **Architecture Optimizations**: Support for x86-64-v3, x86-64-v4, and AMD Zen4 specific builds
- **Compiler Optimizations**: Advanced GCC flags including `-fivopts` and `-fmodulo-sched`
- **PREEMPT_DYNAMIC**: Runtime-selectable preemption modes (full, lazy, voluntary, none)
- **vmalloc Optimizations**: Bulk page freeing in `vfree()`, improved `vrealloc()` shrink/grow paths, and optimized contiguous range freeing

### CPU Enhancements

- **Multiple Schedulers**: BORE, EEVDF, and BMQ schedulers for different workload optimization
- **[POC Selector](https://github.com/masahitoS/scx_cake)**: Piece-Of-Cake fast idle CPU selector inspired by scx_cake, reducing wakeup latency
- **[POC Selector](https://github.com/masahitoS/scx_cake) v2.6.2**: Piece-Of-Cake fast idle CPU selector inspired by scx_cake, reducing wakeup latency
- **Cluster-Aware Scheduling**: Improved load balancing for CPU clusters, including balancing between CPUs of identical capacity on hybrid architectures
- **Preempt-IPI Optimizations**: Lower-latency SMP/IPI paths with preemption re-enabled before TLB flushes and streamlined `smp_call_function()` handling
- **CachyOS Sauce**: Custom `CONFIG_CACHY` configuration with scheduler and system tweaks
- **AMD P-State Enhancements**: Preferred Core support and latest amd-pstate improvements from linux-next
- **Real-Time Support**: RT kernel builds available with BORE scheduler integration
- **Low-Latency Optimizations**: Patches for improved responsiveness and reduced jitter
- **sched/wait LIFO accept()**: Socket accept() processed in LIFO order for better cache efficiency
- **Wakeup CPU Affinity**: Prefer the previous CPU for task wakeups to improve cache locality

### Networking

Expand All @@ -97,27 +101,29 @@ The CachyOS kernel fork merges topic branches into each release. The current **L

- **ZFS Support**: Built-in ZFS filesystem support with pre-compiled modules
- **NTFS Improvements**: Upstream NTFS driver fixes for MFT mirror validation, attribute bounds checking, and logfile handling
- **MGLRU Enhancements**: Improved dirty writeback handling, simplified vmscan reclaim statistics, and Cachy Sauce MM tuning (LRU-gen working set protection, compaction/watermark tweaks, hugepage reclaim)
- **MGLRU Enhancements**: Unified writeback reclaim statistics, simplified vmscan accounting, improved dirty writeback reactivation, and Cachy Sauce MM tuning (LRU-gen working set protection, compaction/watermark tweaks, hugepage reclaim)
- **Transparent Hugepages**: `ADVISE` mode for shmem/tmpfs transparent hugepages
- **NVIDIA Integration**:
- Proprietary NVIDIA driver modules with patches
- Open-source NVIDIA driver support
- Ready-to-use modules in repository
- **I/O Scheduler Improvements**:
- Enhanced BFQ and mq-deadline performance
- [ADIOS](https://github.com/firelzrd/adios) v3.2.0 multi-queue I/O scheduler support
- **VRAM Cgroup (DMEM)**: Device memory controller for restricting GPU VRAM usage per cgroup in the DRM subsystem
- **VRAM Cgroup (DMEM)**: Device memory controller for restricting GPU VRAM usage per cgroup, with protection limits, common-ancestor pool sharing, and Nouveau DMEM support

### Additional Features

#### Hardware Support
- **AMD ISP4**: New AMD ISP 4 camera driver for supported platforms
- **Gaming Hardware**: Steam Deck patches (Audio, HW Quirks, HID), ROG Ally support, and MSI Claw HID driver (deckify)
- **AMD ISP4**: AMD ISP 4 camera driver for supported platforms
- **Gaming Hardware**: Steam Deck patches (Audio, HW Quirks, HID), ROG Ally support, MSI Claw HID driver (deckify), and EasySMX 05 Pro gamepad support
- **Apple Hardware**: T2 MacBook support with apple-bce driver in staging
- **ASUS Hardware**: Extended ASUS hardware compatibility patches
- **Lenovo Hardware**: WMI battery charge limiting, GPU/CPU tunable attributes, and capdata debugfs
- **HP Hardware**: OMEN Slim and OMEN MAX laptop support via hp-wmi
- **Graphics**: HDR support enabled, AMDGPU min_powercap override (`amdgpu_ignore_min_pcap`)
- **Display**: HDMI VRR on AMD, ALLM and passive VRR connector properties, VESA DSC bits-per-pixel parsing from EDID
- **ASUS Hardware**: Extended ASUS hardware compatibility patches, including ACP audio fixes for Vivobook 18 and TUF Gaming A14 (2026)
- **Lenovo Hardware**: WMI battery charge limiting, GPU/CPU tunable attributes, capdata debugfs, and AMD PMC suspend delay for improved sleep/resume
- **HP Hardware**: OMEN Slim (including 16t-an000) and OMEN MAX laptop support via hp-wmi
- **Samsung Hardware**: Galaxy Book 4/5 series audio fixes via MAX98390 HDA codec support
- **Graphics**: HDR support enabled, AMDGPU min_powercap override (`amdgpu_ignore_min_pcap`), and DRM fair GPU scheduling favoring interactive clients
- **Display**: HDMI VRR on AMD (including PCON path and freesync-on-desktop), ALLM and passive VRR connector properties, VESA DSC bits-per-pixel parsing from EDID
- **Audio Codecs**: AW88399 and MAX98390 HDA side codec support

#### System Enhancements
Expand Down
14 changes: 7 additions & 7 deletions linux-cachyos-bmq/.SRCINFO
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
pkgbase = linux-cachyos-bmq
pkgdesc = Linux BMQ + Cachy Sauce scheduler Kernel by CachyOS with other patches and improvements
pkgver = 7.0.12
pkgver = 7.1.0
pkgrel = 1
url = https://github.com/CachyOS/linux-cachyos
arch = x86_64
Expand All @@ -27,16 +27,16 @@ pkgbase = linux-cachyos-bmq
options = !strip
options = !debug
options = !lto
source = https://github.com/CachyOS/linux/releases/download/cachyos-7.0.12-2/cachyos-7.0.12-2.tar.gz
source = https://github.com/CachyOS/linux/releases/download/cachyos-7.0.12-2/cachyos-7.0.12-2.tar.gz.asc
source = https://github.com/CachyOS/linux/releases/download/cachyos-7.1.0-1/cachyos-7.1.0-1.tar.gz
source = https://github.com/CachyOS/linux/releases/download/cachyos-7.1.0-1/cachyos-7.1.0-1.tar.gz.asc
source = config
source = https://raw.githubusercontent.com/cachyos/kernel-patches/master/7.0/sched/0001-prjc-cachy.patch
source = https://raw.githubusercontent.com/cachyos/kernel-patches/master/7.1/sched/0001-prjc-cachy.patch
validpgpkeys = E18447AC260021D31F3FF6C4C8A2A4774B8B63C4
validpgpkeys = E8B9AA39F054E30E8290D492C3C4820857F654FE
b2sums = 2dbc9e0b4fd361ea2622d134ceb25e540ce8385a401a73e28a911192ff847e061800d9b791dd409cd6d1794026f950963d7df501d5b8d73b2f197d12807b66fd
b2sums = 652178167b7d164d8b503fea25d68be3b4c24d28fcec6454656303132ef2f21e38f5e5b7af5d286c619344577bc6227389f4bd750a0e882ce7352ca7adb4f4ac
b2sums = SKIP
b2sums = 7bb5113dbc67e8e2ce5c5473ae1b08973af5adba0a6a14c64a213bb116e5a172d40b7c274b85ad15553511484ee1f120e0372251e242c6f87ce6920235f0c136
b2sums = 8188b406df9f65ab253b44db9822c20a3215d1a1b00cb8520f343a687cfa70e31c4ad233a608fe07acf4c1e5d757fd954ada7d9cf17517dbea22f68ecc8abb11
b2sums = 6bea8dff89f6d03ee5e7c6b76934e4ffaa3511cebd9c8f9986bf6c11816dcbd88f55c9c686fca6f176c35746f3fa7fc3c286218144d38289ec6f2079f5ce8b42
b2sums = c4784cbbedf9ede11533d9e1675ab42831e4e8b006dce1eec81fdd3de0eb04e2aeed13d93273f5c3c15f7e8e0fe538831d0c38e05196af1a7fb92d4ce99010fe

pkgname = linux-cachyos-bmq
pkgdesc = The Linux BMQ + Cachy Sauce scheduler Kernel by CachyOS with other patches and improvements kernel and modules
Expand Down
14 changes: 7 additions & 7 deletions linux-cachyos-bmq/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -149,12 +149,12 @@ else
fi

pkgbase="linux-$_pkgsuffix"
_major=7.0
_minor=12
_major=7.1
_minor=0
#_minorc=$((_minor+1))
#_rcver=rc8
pkgver=${_major}.${_minor}
_tagrel=2
_tagrel=1
pkgrel=1
_srcname=cachyos-${_major}.${_minor}-${_tagrel}
pkgdesc='Linux BMQ + Cachy Sauce scheduler Kernel by CachyOS with other patches and improvements'
Expand Down Expand Up @@ -219,7 +219,7 @@ fi
# ZFS support
if [ "$_build_zfs" = "yes" ]; then
makedepends+=(git)
source+=("git+https://github.com/cachyos/zfs.git#commit=6330a45b06d20125de679aae5f63ba14082671ef")
source+=("git+https://github.com/cachyos/zfs.git#commit=c681af76c5a6a15caada25eb13090e41218c7831")
fi


Expand Down Expand Up @@ -746,7 +746,7 @@ for _p in "${pkgname[@]}"; do
}"
done

b2sums=('2dbc9e0b4fd361ea2622d134ceb25e540ce8385a401a73e28a911192ff847e061800d9b791dd409cd6d1794026f950963d7df501d5b8d73b2f197d12807b66fd'
b2sums=('652178167b7d164d8b503fea25d68be3b4c24d28fcec6454656303132ef2f21e38f5e5b7af5d286c619344577bc6227389f4bd750a0e882ce7352ca7adb4f4ac'
'SKIP'
'7bb5113dbc67e8e2ce5c5473ae1b08973af5adba0a6a14c64a213bb116e5a172d40b7c274b85ad15553511484ee1f120e0372251e242c6f87ce6920235f0c136'
'8188b406df9f65ab253b44db9822c20a3215d1a1b00cb8520f343a687cfa70e31c4ad233a608fe07acf4c1e5d757fd954ada7d9cf17517dbea22f68ecc8abb11')
'6bea8dff89f6d03ee5e7c6b76934e4ffaa3511cebd9c8f9986bf6c11816dcbd88f55c9c686fca6f176c35746f3fa7fc3c286218144d38289ec6f2079f5ce8b42'
'c4784cbbedf9ede11533d9e1675ab42831e4e8b006dce1eec81fdd3de0eb04e2aeed13d93273f5c3c15f7e8e0fe538831d0c38e05196af1a7fb92d4ce99010fe')
Loading
Loading