From a19916ca57f9485452b8cc09f4cb9dfb323dd15e Mon Sep 17 00:00:00 2001 From: Piotr Gorski Date: Sat, 1 Jul 2023 16:13:11 +0200 Subject: [PATCH] Bump to 6.1.37-1 Signed-off-by: Piotr Gorski --- .SRCINFO | 6 ++-- PKGBUILD | 66 ++++++++++++++-------------------------- linux-cachyos-rt.install | 12 ++++++++ 3 files changed, 37 insertions(+), 47 deletions(-) create mode 100644 linux-cachyos-rt.install diff --git a/.SRCINFO b/.SRCINFO index 7f6eb4f3c70c..774b4cc7b1b6 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = linux-cachyos-lts pkgdesc = Linux BORE scheduler Kernel by CachyOS with other patches and improvements - pkgver = 6.1.35 + pkgver = 6.1.37 pkgrel = 1 url = https://github.com/CachyOS/linux-cachyos arch = x86_64 @@ -22,13 +22,13 @@ pkgbase = linux-cachyos-lts makedepends = patch makedepends = python options = !strip - source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.35.tar.xz + source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.37.tar.xz source = config source = auto-cpu-optimization.sh source = https://raw.githubusercontent.com/cachyos/kernel-patches/master/6.1/all/0001-cachyos-base-all.patch source = https://raw.githubusercontent.com/cachyos/kernel-patches/master/6.1/misc/0001-Add-latency-priority-for-CFS-class.patch source = https://raw.githubusercontent.com/cachyos/kernel-patches/master/6.1/sched/0001-bore-cachy.patch - sha256sums = be368143bc5d0dc73dd3e8c6191630c1620520379baf6f47c16116b2c0bc26ac + sha256sums = 46cad712d261a23c8e483a3b79b6a84b9a5f731a8921c9127df35ae35cef1e80 sha256sums = 7dc7094a6188e0522cbe820963cadad83125abdd3c888d9a43704079ccf442b3 sha256sums = 41c34759ed248175e905c57a25e2b0ed09b11d054fe1a8783d37459f34984106 sha256sums = 9669e0c18786d5b07a38a7da14bc653c1cf43e2765a047f1d33ecb5c0ee5369d diff --git a/PKGBUILD b/PKGBUILD index fa9a51c74847..4b37d542f942 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -17,6 +17,7 @@ _cachy_config=${_cachy_config-y} # 'cfs' - select 'Completely Fair Scheduler' # 'tt' - select 'Task Type Scheduler by Hamad Marri' # 'hardened' - select 'BORE Scheduler hardened' ## kernel with hardened config and hardening patches with the bore scheduler +# 'rt' - select CFS, but includes a series of realtime patches _cpusched=${_cpusched-bore} ## Apply some suggested sysctl values from the bore developer @@ -133,17 +134,6 @@ _use_auto_optimization=${_use_auto_optimization-y} # disable debug to lower the size of the kernel _disable_debug=${_disable_debug-} -## Enable zram/zswap ZSTD compression -_zstd_compression=${_zstd_compression-} - -### Selecting the ZSTD kernel and modules compression level -# ATTENTION - one of two predefined values should be selected! -# 'ultra' - highest compression ratio -# 'normal' - standard compression ratio -# WARNING: the ultra settings can sometimes -# be counterproductive in both size and speed. -_zstd_level_value=${_zstd_level_value-normal} - # Clang LTO mode, only available with the "llvm" compiler - options are "none", "full" or "thin". # ATTENTION - one of three predefined values should be selected! # "full: uses 1 thread for Linking, slow and uses more memory, theoretically with the highest performance gains." @@ -176,6 +166,8 @@ _use_gcc_lto=${_use_gcc_lto-} _use_kcfi=${_use_kcfi-} # Build the zfs module in to the kernel +# WARNING: The ZFS module doesn't build with selected RT sched due to licensing issues. +# If you use ZFS, refrain from building the RT kernel _build_zfs=${_build_zfs-} # Enable bcachefs @@ -201,7 +193,7 @@ else pkgbase=linux-$pkgsuffix fi _major=6.1 -_minor=35 +_minor=37 #_minorc=$((_minor+1)) #_rcver=rc8 pkgver=${_major}.${_minor} @@ -257,6 +249,9 @@ case "$_cpusched" in bore) ## BORE Scheduler with latency_nice [ -n "$_tune_bore" ] && source+=("${_patchsource}/misc/0001-bore-tuning-sysctl.patch") source+=("${_patchsource}/sched/0001-bore-cachy.patch");; + rt) ## CFS with RT patches + source+=("${_patchsource}/misc/0001-rt.patch" + linux-cachyos-rt.install);; hardened) ## Hardened Patches with BORE Scheduler source+=("${_patchsource}/sched/0001-bore-cachy.patch" "${_patchsource}/misc/0001-hardened.patch");; @@ -335,6 +330,7 @@ prepare() { bmq) scripts/config -e SCHED_ALT -e SCHED_BMQ -d SCHED_PDS;; tt) scripts/config -e TT_SCHED -e TT_ACCOUNTING_STATS;; bore|hardened) scripts/config -e SCHED_BORE;; + rt) scripts/config -e PREEMPT_COUNT -e PREEMPTION -d PREEMPT_VOLUNTARY -d PREEMPT -d PREEMPT_NONE -e PREEMPT_RT -e PREEMPT_LAZY -d PREEMPT_DYNAMIC -e HAVE_PREEMPT_LAZY -d PREEMPT_BUILD;; cfs) ;; *) _die "The value $_cpusched is invalid. Choose the correct one again.";; esac @@ -444,16 +440,20 @@ prepare() { echo "Selecting '$_tickrate' tick type..." ### Select preempt type - [ -z "$_preempt" ] && _die "The value is empty. Choose the correct one again." - case "$_preempt" in - full) scripts/config -e PREEMPT_BUILD -d PREEMPT_NONE -d PREEMPT_VOLUNTARY -e PREEMPT -e PREEMPT_COUNT -e PREEMPTION -e PREEMPT_DYNAMIC;; - voluntary) scripts/config -e PREEMPT_BUILD -d PREEMPT_NONE -e PREEMPT_VOLUNTARY -d PREEMPT -e PREEMPT_COUNT -e PREEMPTION -d PREEMPT_DYNAMIC;; - server) scripts/config -e PREEMPT_NONE_BUILD -e PREEMPT_NONE -d PREEMPT_VOLUNTARY -d PREEMPT -d PREEMPTION -d PREEMPT_DYNAMIC;; - *) _die "The value '$_preempt' is invalid. Choose the correct one again.";; - esac + # We should not set up the PREEMPT for RT kernels + if [ "$_cpusched" != "rt" ]; then + [ -z "$_preempt" ] && _die "The value is empty. Choose the correct one again." - echo "Selecting '$_preempt' preempt type..." + case "$_preempt" in + full) scripts/config -e PREEMPT_BUILD -d PREEMPT_NONE -d PREEMPT_VOLUNTARY -e PREEMPT -e PREEMPT_COUNT -e PREEMPTION -e PREEMPT_DYNAMIC;; + voluntary) scripts/config -e PREEMPT_BUILD -d PREEMPT_NONE -e PREEMPT_VOLUNTARY -d PREEMPT -e PREEMPT_COUNT -e PREEMPTION -d PREEMPT_DYNAMIC;; + server) scripts/config -e PREEMPT_NONE_BUILD -e PREEMPT_NONE -d PREEMPT_VOLUNTARY -d PREEMPT -d PREEMPTION -d PREEMPT_DYNAMIC;; + *) _die "The value '$_preempt' is invalid. Choose the correct one again.";; + esac + + echo "Selecting '$_preempt' preempt type..." + fi ### Enable O3 if [ -n "$_cc_harder" ] && [ -z "$_cc_size" ]; then @@ -608,28 +608,6 @@ prepare() { -d LRNG_RUNTIME_FORCE_SEEDING_DISABLE fi - ### Enable zram/zswap ZSTD compression - if [ -n "$_zstd_compression" ]; then - echo "Enabling zram/swap ZSTD compression..." - scripts/config -d ZRAM_DEF_COMP_LZORLE \ - -e ZRAM_DEF_COMP_ZSTD \ - --set-str ZRAM_DEF_COMP zstd \ - -d ZSWAP_COMPRESSOR_DEFAULT_LZ4 \ - -e ZSWAP_COMPRESSOR_DEFAULT_ZSTD \ - --set-str ZSWAP_COMPRESSOR_DEFAULT zstd - fi - - ### Selecting the ZSTD modules and kernel compression level - [ -z "$_zstd_level_value" ] && _die "The value is empty. Choose the correct one again." - - case "$_zstd_level_value" in - ultra) scripts/config --set-val MODULE_COMPRESS_ZSTD_LEVEL 19 -e MODULE_COMPRESS_ZSTD_ULTRA --set-val MODULE_COMPRESS_ZSTD_LEVEL_ULTRA 22 --set-val ZSTD_COMPRESSION_LEVEL 22;; - normal) scripts/config --set-val MODULE_COMPRESS_ZSTD_LEVEL 9 -d MODULE_COMPRESS_ZSTD_ULTRA --set-val ZSTD_COMPRESSION_LEVEL 19;; - *) _die "The value '$_zstd_level_value' is invalid. Choose the correct one again.";; - esac - - echo "Selecting '$_zstd_level_value' ZSTD modules and kernel compression level..." - ### Disable DEBUG if [ -n "$_disable_debug" ]; then scripts/config -d DEBUG_INFO \ @@ -750,7 +728,7 @@ _package() { echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase" echo "Installing modules..." - make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 \ + ZSTD_CLEVEL=19 make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 \ DEPMOD=/doesnt/exist modules_install # Suppress depmod # remove build and source links @@ -864,7 +842,7 @@ for _p in "${pkgname[@]}"; do }" done -sha256sums=('be368143bc5d0dc73dd3e8c6191630c1620520379baf6f47c16116b2c0bc26ac' +sha256sums=('46cad712d261a23c8e483a3b79b6a84b9a5f731a8921c9127df35ae35cef1e80' '7dc7094a6188e0522cbe820963cadad83125abdd3c888d9a43704079ccf442b3' '41c34759ed248175e905c57a25e2b0ed09b11d054fe1a8783d37459f34984106' '9669e0c18786d5b07a38a7da14bc653c1cf43e2765a047f1d33ecb5c0ee5369d' diff --git a/linux-cachyos-rt.install b/linux-cachyos-rt.install new file mode 100644 index 000000000000..5bf59d9cb5eb --- /dev/null +++ b/linux-cachyos-rt.install @@ -0,0 +1,12 @@ +post_install() { + cat << EOF +You install the linux-cachyos kernel variant with RT patches. + +Please make sure that you don't use the ZFS filesystem, as this kernel is not +compatible with it due to licensing issues. +EOF +} + +post_upgrade() { + post_install +}