summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorptr13372021-06-21 15:11:27 +0200
committerptr13372021-06-21 15:11:27 +0200
commit9b6a206839ab56a4798e661462d6c2bbd71df5cf (patch)
tree57171217861878fa5146d1a5a69c5b9987f270c3
parenta2cf01bf51e701af15aced4600726a0073ce17fa (diff)
downloadaur-9b6a206839ab56a4798e661462d6c2bbd71df5cf.tar.gz
bpf updates
-rw-r--r--.SRCINFO106
-rw-r--r--PKGBUILD877
-rw-r--r--config13
3 files changed, 520 insertions, 476 deletions
diff --git a/.SRCINFO b/.SRCINFO
index aef1ded4cd29..0190d15d7842 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
-pkgbase = linux-cacule-rc
- pkgdesc = Linux-CacULE Kernel-RC by Hamad Marri and with some other patchsets
- pkgver = 5.13.rc7
- pkgrel = 1
+pkgbase = linux-cacule
+ pkgdesc = Linux-CacULE Kernel by Hamad Marri and with some other patchsets
+ pkgver = 5.12.12
+ pkgrel = 4
url = https://github.com/hamadmarri/cacule-cpu-scheduler
arch = x86_64
license = GPL2
@@ -18,51 +18,71 @@ pkgbase = linux-cacule-rc
makedepends = tar
makedepends = xz
options = !strip
- source = https://git.kernel.org/torvalds/t/linux-5.13-rc7.tar.gz
+ source = https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.12.tar.xz
+ source = https://cdn.kernel.org/pub/linux/kernel/v5.x/patch-5.12.12.xz
source = config
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/cacule-patches/cacule-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/bbr2-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/clearlinux.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/bfq-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/ksm-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/cpu-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/fixes-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/zstd-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/ntfs3-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/v4l2loopback-5.13.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/futex/1001-futex-513-wait_multiple.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/misc/0009-rcu-fixes-next.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13/misc/2002-tune-vm-mm-and-vfs-settings.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/ll-patches/0005-Disable-CPU_FREQ_GOV_SCHEDUTIL.patch
- source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/lru-gen/PATCH-v3-00-14-Multigenerational-LRU-Framework.patch
- sha512sums = a49187e05272619016bcdb46d68ac2a8ced5285c73614d31dce34bb23e15f1198d91054fec01e2663a8f8a438a512c956d7ba1265a33c17b4727058a633384be
- sha512sums = a49537a61bd7ca80f456e0618f4c64630651efada8bcc68ee260461370e9638410b0a883e036a3e7777c841d585f91eea9a051e4c93d38b639ebebdff643cf4e
- sha512sums = 278e045dc5c5ec70087bbb14a4c7d7f2db6dd5bfd0a3f393c85e42a6847dcad2994473ecb3719fbea03261a574d56815d63623ea6c8e07f7afb2c948c87a5bc7
- sha512sums = ed5770aa5365d8f040be95ac94d89c86efbb663b5d4b7aa6be4292e8ca740d79dc76f2d6b271df389c2cf5632b2a56e353d10153ba0fa2d08efab49fc36baf5c
- sha512sums = 3fa6162a9d694392834ae188ebe33f3554b7ded321ecb3f8553ab9b88997cf03d19491feaf5024c899cf51e1fcc5896285edb2b28ed6375bba8dd814eddeac57
- sha512sums = 91d3ec61d7ebd86d8b0fa79a9d30a9eb6ae4b4d2c4fa4d03b8b64a08f11330f86e5a46a0fff9601d5438e7753ffd4389ee4b07e54110ce3b046089d3cf6504b9
- sha512sums = f81b1eae8c0318fe7cd053eab217c20e9216297211d758d9aa0e5e722dc70883448313ff157078df409fff5c9999aa52cbcb484b78034643a7d6419403c59e99
- sha512sums = f09df77f5535d66c29f34f7eea149406b7367bcf557992d475688d7fa83305cc4518bdd09e4840e8da81a56ec998146482f0f1573e42c03a55da231d1e13164a
- sha512sums = ab57c107c8f9c6bf7ee067a59671896539c448e27306876f091a4d86c483aa8d14363d258cc42d7aed3d261d528aef0adf6118b3c918991a84988b102f14633c
- sha512sums = a4697263774002822dd5c3e26f71ddd810c5f2f565fa9c7cd9166f656585a82925198fd652d5fa123fc9fb77e82c0904f3fed582ad26d0d5fde86ffb3312f076
- sha512sums = 583b76ecc43f7c3bacde23804aeb8568fb60679a008f7e48d471c870092ae1ab1d31b3e4e8edc7778f59e01bd806e85036193f9790457f953a37c75b282fdcd4
- sha512sums = dae7d3a868ca9061552e0a098b448d71f3bf842e3f40b58590d6f8dc4173feed55df6f25c8f71a65fde3478f7671c5a93e8cd0ce825509804c7684b7adf0ee15
- sha512sums = d8fbb667096a8d1d84db4d40c361bce5fc55e207c73fab266dba9033c6aff0cc0307c8a854c09fd2dabd99139ce640047bc87e0fd067d12ca1bd8f76f5d10ad3
- sha512sums = bd91f61dd30c25cd37aa25e620583a0d9f3ba2b9f335f571ef41d09404f512df40e8eac559927e06cbdc133f12fbe49a8db264df50b2134f5e68d4ec8456df60
- sha512sums = a5e9b9d6a08be2d6bc6b724176c207c052d2271b3b77885b8169ed02c608b89726ea8b3e9664c4bc4c85aab938e88c67fb15de42f9f9a649d54b466b473fcdc5
- sha512sums = 47f265716ebd268e4296aaba1efe5098df00736b69ec7d0413cace6dbb5cb162c1c952f7527a2a41b246ed76e6e112514c5349e8dc52f4609def30257e18d7aa
- sha512sums = 341492bf6b899a8fb4a0ef375e5461ec6e49c96755c10dd85d36b3b35a62d4e15a8b2df14aecc6bcc13485a16ad21a360050a091cf69b5aa4fc84a74dee34020
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/arch-patches-v7/0001-arch-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/CacULE/v5.12/cacule-5.12.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/cpu-patches-v6/0001-cpu-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/futex-patches-v2/0001-futex-resync-from-gitlab.collabora.com.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/futex2-stable-patches-v6/0001-futex2-resync-from-gitlab.collabora.com.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/wine-esync-patches/0001-v5.12-winesync.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/zen-patches-v2/0001-zen-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/lqx-patches-v3/0001-zen-Allow-MSR-writes-by-default.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/bfq-patches-v14/0001-bfq-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/block-patches-v6/0001-block-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/fixes-miscellaneous/0001-fixes-miscellaneous.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/fixes-miscellaneous/2002-tune-vm-mm-and-vfs-settings.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/bbr2-patches-v2/0001-bbr2-5.12-introduce-BBRv2.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/btrfs-patches-v13/0001-btrfs-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/android-patches/0001-android-export-symbold-and-enable-building-ashmem-an.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/pf-patches-v3/0001-pf-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/lru-gen/lru_5.12.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/le9db_patches/le9db1-5.10.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/ntfs3-patches-v2/0001-ntfs3-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/zstd-dev-patches-v3/0001-zstd-dev-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/clearlinux-patches-v3/0001-clearlinux-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/ksm-patches/0001-ksm-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/v4l2loopback-patches/0001-v4l2loopback-patches.patch
+ source = https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12/initramfs-patches/0001-initramfs-patches.patch
+ sha256sums = 7d0df6f2bf2384d68d0bd8e1fe3e071d64364dcdc6002e7b5c87c92d48fac366
+ sha256sums = 742e13b424c618689734c3c41a14c5cda5a09d8546ed5b1433153d4619524dfe
+ sha256sums = 5cfde84b9b7b71cde2a9823859184ed08f7eece119b2776f0e620c8528a156e5
+ sha256sums = dd89db0483301a62cef23ba797fee1fb9804f570f952df87fe418ee22e353227
+ sha256sums = a90ec03375bf97c06bf2ca3f1fd0224deee8408077f71447326b2796b53652a1
+ sha256sums = d50836cb16ef209b4bdd7bef792485b8f0ff847a96d2b6eca109da0b7e05f79b
+ sha256sums = 4ff5c33785445f103d479196bb33c4f991d6c5f56df5c643ec6d2451368f0605
+ sha256sums = db4707a6430a80447fabc2517e554cf9e055a4039b362f683bd9dd7f04d7a667
+ sha256sums = f7c68f43599c53ce19a14e6f296e5e0820257e80acb9f52a1dec036d0d9a62ab
+ sha256sums = 9eabd1468635477d9c143e9f59d86cf0dd32583bf6bd926080a6707f86d363ed
+ sha256sums = 5587a2d535dcd7ff09080c27f32a02dc67a0d35145b0b49ae10e8520c906a153
+ sha256sums = 8c5296b9920d44184fa3aea34e4100e1848617f18b76c883f31c973dd96044f9
+ sha256sums = 8c892547828704e05cd480e58944327029bf50f81258ae0501a4872b465b20b9
+ sha256sums = 7cdc6402f6ab8a8b99f7c7c4766a6cf82773ef399903abebf6208bfd2f8b2cf2
+ sha256sums = f7a36231b794022d49e53f464d25e48f2eebf6266c2cbe5756c63aa3bf03bae7
+ sha256sums = 59dc35df675221c9e54326e4a2ca57074c955387e1d4cb0b6543424bc84bdb11
+ sha256sums = f71cc3bdd9b3488ece3d7433ff65e0dd9f544f069b82e84e32ad67e2e7f64718
+ sha256sums = 42dc3c76534393d1b59ca3f321797566a7637bbb110f604eb9bf584b867a97a4
+ sha256sums = 0b44848f5b8926a9e9db8064aeefbfb53c289923e25779c11ddb2a5b149fdb12
+ sha256sums = 4ad652d36fdd3f5142e66407a964e8e0d3c91ab3e7094a368de1ef1b21f6d19a
+ sha256sums = d68ed98e7bc5a8f9ebc48c16cd0be47be948578621a70b13fcbb13e280469056
+ sha256sums = 7056565c13628e7885538aca4cdb384f1a2b65c4c02a502ddfe182ddb7ce347e
+ sha256sums = 84c231a4d66726e4ed84807de961e0aa37bc3cb13fda0c3d82f7c23470ca6ecd
+ sha256sums = 5a0c7b01ce8baf4dc480b33eddd203a1620ad4885122a3967f580cb172d0f9b7
+ sha256sums = efc3e1e4c2ef22a570a0e8cfdaea4617655e1baddce02829d6a0acc5b9a7ab58
+ sha256sums = 64a7a848ca409f359d16e9732f4e623126eeb89bfae85c884391b9b280facdcf
+ sha256sums = 0b18daa836fd70dbabf68b1db85b01e585f8cad2f1a2ef5c2ced9db4e1f75d3a
-pkgname = linux-cacule-rc
- pkgdesc = The Linux-CacULE Kernel-RC by Hamad Marri and with some other patchsets kernel and modules
+pkgname = linux-cacule
+ pkgdesc = The Linux-CacULE Kernel by Hamad Marri and with some other patchsets kernel and modules
depends = coreutils
depends = kmod
depends = initramfs
optdepends = crda: to set the correct wireless channels of your country
optdepends = linux-firmware: firmware images needed for some devices
optdepends = modprobed-db: Keeps track of EVERY kernel module that has ever been probed - useful for those of us who make localmodconfig
+ provides = VIRTUALBOX-GUEST-MODULES
+ provides = WIREGUARD-MODULE
-pkgname = linux-cacule-rc-headers
- pkgdesc = Headers and scripts for building modules for the Linux-CacULE Kernel-RC by Hamad Marri and with some other patchsets kernel
- depends = linux-cacule-rc
- depends = pahole
+pkgname = linux-cacule-headers
+ pkgdesc = Headers and scripts for building modules for the Linux-CacULE Kernel by Hamad Marri and with some other patchsets kernel
diff --git a/PKGBUILD b/PKGBUILD
index f51c59b2b8fa..a5c745820e52 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,10 +1,8 @@
-# Contributor: Piotr Gorski <lucjan.lucjanov@gmail.com>
-# Contributor: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
-# Contributor: Tobias Powalowski <tpowa@archlinux.org>
-# Contributor: Thomas Baechler <thomas@archlinux.org>
-# Maintainer: ptr1337 <admin@ptr1337.dev>
+# Maintainer: Peter Jung ptr1337 <admin@ptr1337.dev>
### BUILD OPTIONS
+# Set the next two variables to ANYTHING that is not null to enable them
+### BUILD OPTIONS
# Set these variables to ANYTHING that is not null to enable them
# NUMA is optimized for multi-socket motherboards.
@@ -14,9 +12,9 @@ _NUMAdisable=y
# Enable fsync
_fsync=y
#enable futex2
-_futex2=
+_futex2=y
#enable winesync
-_winesync=
+_winesync=y
### Set performance governor as default
_per_gov=y
### Disable Deadline I/O scheduler
@@ -27,12 +25,19 @@ _kyber_disable=y
_2k_HZ_ticks=
_1k_HZ_ticks=y
_500_HZ_ticks=
-# Compile ONLY used modules to VASTLYreduce the number of modules built
-# and the build time.
+### Enable protect file mappings under memory pressure
+_mm_protect=y
+### Enable multigenerational LRU
+_lru_enable=y
+# Tweak kernel options prior to a build via nconfig
+_makenconfig=
+
+# Only compile active modules to VASTLY reduce the number of modules built and
+# the build time.
#
# To keep track of which modules are needed for your specific system/hardware,
-# give module_db script a try: https://aur.archlinux.org/packages/modprobed-db
-# This PKGBUILD read the database kept if it exists
+# give module_db a try: https://aur.archlinux.org/packages/modprobed-db
+# This PKGBUILD reads the database kept if it exists
#
# More at this wiki page ---> https://wiki.archlinux.org/index.php/Modprobed-db
_localmodcfg=
@@ -44,365 +49,360 @@ _localmodcfg=
# a new kernel is released, but again, convenient for package bumps.
_use_current=
-### Do not edit below this line unless you know what you're doing
-
-pkgbase=linux-cacule-rc
-# pkgname=('linux-cacule' linux-cacule-headers)
-_major=5.13
-#_minor=1
-#_minorc=$((_minor+1))
-_rcver=rc7
-pkgver=${_major}.${_rcver}
-#_stable=${_major}.${_minor}
-_stablerc=${_major}-${_rcver}
-_srcname=linux-${_stablerc}
-pkgrel=1
-pkgdesc='Linux-CacULE Kernel-RC by Hamad Marri and with some other patchsets'
+### IMPORTANT: Do no edit below this line unless you know what you're doing
+
+_major=5.12
+_minor=12
+_srcname=linux-${_major}
+pkgbase=linux-cacule
+pkgver=${_major}.${_minor}
+pkgrel=4
+pkgdesc='Linux-CacULE Kernel by Hamad Marri and with some other patchsets'
arch=('x86_64')
url="https://github.com/hamadmarri/cacule-cpu-scheduler"
license=('GPL2')
-options=('!strip')
makedepends=('kmod' 'bc' 'libelf' 'python-sphinx' 'python-sphinx_rtd_theme'
'graphviz' 'imagemagick' 'pahole' 'cpio' 'perl' 'tar' 'xz')
+options=('!strip')
_patchsource="https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.12"
-_patchsource2="https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/5.13"
-source=("https://git.kernel.org/torvalds/t/linux-${_stablerc}.tar.gz"
- "config"
- # "${_patchsource}/arch-patches-v3/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch"
- "${_patchsource2}/cacule-patches/cacule-5.13.patch"
- "${_patchsource2}/bbr2-5.13.patch"
- "${_patchsource2}/clearlinux.patch"
- "${_patchsource2}/bfq-5.13.patch"
- "${_patchsource2}/ksm-5.13.patch"
- "${_patchsource2}/cpu-5.13.patch"
- "${_patchsource2}/fixes-5.13.patch"
- "${_patchsource2}/zstd-5.13.patch"
- "${_patchsource2}/ntfs3-5.13.patch"
- "${_patchsource2}/v4l2loopback-5.13.patch"
- "${_patchsource2}/futex/1001-futex-513-wait_multiple.patch"
- "${_patchsource2}/misc/0009-rcu-fixes-next.patch"
- "${_patchsource2}/misc/2002-tune-vm-mm-and-vfs-settings.patch"
- "${_patchsource}/ll-patches/0005-Disable-CPU_FREQ_GOV_SCHEDUTIL.patch"
- "${_patchsource}/lru-gen/PATCH-v3-00-14-Multigenerational-LRU-Framework.patch"
-# "${_patchsource}/lrng/1004-dev-random-new-lrng-approach-v40.patch"
- # "${_patchsource}/cpu-patches-v2/0001-cpu-patches.patch"
- # "${_patchsource}/futex-patches/0001-futex-resync-from-gitlab.collabora.com.patch"
- # "${_patchsource}/futex2-stable-patches-v3/0001-futex2-resync-from-gitlab.collabora.com.patch"
- # "${_patchsource}/wine-esync-patches/0001-v5.12-winesync.patch"
- # "${_patchsource}/zen-patches-v2/0001-zen-patches.patch"
- # "${_patchsource}/lqx-patches-v2/0001-lqx-patches.patch"
- # "${_patchsource}/bfq-patches-v8/0001-bfq-patches.patch"
- # "${_patchsource}/fixes-miscellaneous/0001-fixes-miscellaneous.patch"
- # "${_patchsource}/bbr2-patches-v2/0001-bbr2-5.12-introduce-BBRv2.patch"
- # "${_patchsource}/btrfs-patches-v8/0001-btrfs-patches.patch"
- # "${_patchsource}/android-patches/0001-android-export-symbold-and-enable-building-ashmem-an.patch"
- # "${_patchsource}/pf-patches-v2/0001-pf-patches.patch"
- # "${_patchsource}/ntfs3-patches-v2/0001-ntfs3-patches.patch"
- # "${_patchsource}/zstd-dev-patches-v3/0001-zstd-dev-patches.patch"
- # "${_patchsource}/clearlinux-patches-v3/0001-clearlinux-patches.patch"
- # "${_patchsource}/initramfs-patches/0001-initramfs-patches.patch"
- )
-
-sha512sums=('a49187e05272619016bcdb46d68ac2a8ced5285c73614d31dce34bb23e15f1198d91054fec01e2663a8f8a438a512c956d7ba1265a33c17b4727058a633384be'
- 'a49537a61bd7ca80f456e0618f4c64630651efada8bcc68ee260461370e9638410b0a883e036a3e7777c841d585f91eea9a051e4c93d38b639ebebdff643cf4e'
- '278e045dc5c5ec70087bbb14a4c7d7f2db6dd5bfd0a3f393c85e42a6847dcad2994473ecb3719fbea03261a574d56815d63623ea6c8e07f7afb2c948c87a5bc7'
- 'ed5770aa5365d8f040be95ac94d89c86efbb663b5d4b7aa6be4292e8ca740d79dc76f2d6b271df389c2cf5632b2a56e353d10153ba0fa2d08efab49fc36baf5c'
- '3fa6162a9d694392834ae188ebe33f3554b7ded321ecb3f8553ab9b88997cf03d19491feaf5024c899cf51e1fcc5896285edb2b28ed6375bba8dd814eddeac57'
- '91d3ec61d7ebd86d8b0fa79a9d30a9eb6ae4b4d2c4fa4d03b8b64a08f11330f86e5a46a0fff9601d5438e7753ffd4389ee4b07e54110ce3b046089d3cf6504b9'
- 'f81b1eae8c0318fe7cd053eab217c20e9216297211d758d9aa0e5e722dc70883448313ff157078df409fff5c9999aa52cbcb484b78034643a7d6419403c59e99'
- 'f09df77f5535d66c29f34f7eea149406b7367bcf557992d475688d7fa83305cc4518bdd09e4840e8da81a56ec998146482f0f1573e42c03a55da231d1e13164a'
- 'ab57c107c8f9c6bf7ee067a59671896539c448e27306876f091a4d86c483aa8d14363d258cc42d7aed3d261d528aef0adf6118b3c918991a84988b102f14633c'
- 'a4697263774002822dd5c3e26f71ddd810c5f2f565fa9c7cd9166f656585a82925198fd652d5fa123fc9fb77e82c0904f3fed582ad26d0d5fde86ffb3312f076'
- '583b76ecc43f7c3bacde23804aeb8568fb60679a008f7e48d471c870092ae1ab1d31b3e4e8edc7778f59e01bd806e85036193f9790457f953a37c75b282fdcd4'
- 'dae7d3a868ca9061552e0a098b448d71f3bf842e3f40b58590d6f8dc4173feed55df6f25c8f71a65fde3478f7671c5a93e8cd0ce825509804c7684b7adf0ee15'
- 'd8fbb667096a8d1d84db4d40c361bce5fc55e207c73fab266dba9033c6aff0cc0307c8a854c09fd2dabd99139ce640047bc87e0fd067d12ca1bd8f76f5d10ad3'
- 'bd91f61dd30c25cd37aa25e620583a0d9f3ba2b9f335f571ef41d09404f512df40e8eac559927e06cbdc133f12fbe49a8db264df50b2134f5e68d4ec8456df60'
- 'a5e9b9d6a08be2d6bc6b724176c207c052d2271b3b77885b8169ed02c608b89726ea8b3e9664c4bc4c85aab938e88c67fb15de42f9f9a649d54b466b473fcdc5'
- '47f265716ebd268e4296aaba1efe5098df00736b69ec7d0413cace6dbb5cb162c1c952f7527a2a41b246ed76e6e112514c5349e8dc52f4609def30257e18d7aa'
- '341492bf6b899a8fb4a0ef375e5461ec6e49c96755c10dd85d36b3b35a62d4e15a8b2df14aecc6bcc13485a16ad21a360050a091cf69b5aa4fc84a74dee34020')
+_caculepatches="https://raw.githubusercontent.com/ptr1337/linux-cacule-aur/master/patches/CacULE"
+source=(
+ "https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${_major}.tar.xz"
+ "https://cdn.kernel.org/pub/linux/kernel/v5.x/patch-${pkgver}.xz"
+ "config"
+ "${_patchsource}/arch-patches-v7/0001-arch-patches.patch"
+ "${_caculepatches}/v5.12/cacule-5.12.patch"
+ "${_patchsource}/cpu-patches-v6/0001-cpu-patches.patch"
+ "${_patchsource}/futex-patches-v2/0001-futex-resync-from-gitlab.collabora.com.patch"
+ "${_patchsource}/futex2-stable-patches-v6/0001-futex2-resync-from-gitlab.collabora.com.patch"
+ "${_patchsource}/wine-esync-patches/0001-v5.12-winesync.patch"
+ "${_patchsource}/zen-patches-v2/0001-zen-patches.patch"
+ "${_patchsource}/lqx-patches-v3/0001-zen-Allow-MSR-writes-by-default.patch"
+ "${_patchsource}/bfq-patches-v14/0001-bfq-patches.patch"
+ "${_patchsource}/block-patches-v6/0001-block-patches.patch"
+ "${_patchsource}/fixes-miscellaneous/0001-fixes-miscellaneous.patch"
+ "${_patchsource}/fixes-miscellaneous/2002-tune-vm-mm-and-vfs-settings.patch"
+# "${_patchsource}/fixes-miscellaneous/lrng/lrng-40.patch"
+# "${_patchsource}/fixes-miscellaneous/lrng/1004-lrng-update-20210607.patch"
+ "${_patchsource}/bbr2-patches-v2/0001-bbr2-5.12-introduce-BBRv2.patch"
+ "${_patchsource}/btrfs-patches-v13/0001-btrfs-patches.patch"
+ "${_patchsource}/android-patches/0001-android-export-symbold-and-enable-building-ashmem-an.patch"
+ "${_patchsource}/pf-patches-v3/0001-pf-patches.patch"
+# "${_patchsource}/lru-patches-v4/0001-lru-patches.patch"
+ "${_patchsource}/lru-gen/lru_5.12.patch"
+ "${_patchsource}/le9db_patches/le9db1-5.10.patch"
+ "${_patchsource}/ntfs3-patches-v2/0001-ntfs3-patches.patch"
+ "${_patchsource}/zstd-dev-patches-v3/0001-zstd-dev-patches.patch"
+ "${_patchsource}/clearlinux-patches-v3/0001-clearlinux-patches.patch"
+ "${_patchsource}/ksm-patches/0001-ksm-patches.patch"
+ "${_patchsource}/v4l2loopback-patches/0001-v4l2loopback-patches.patch"
+ "${_patchsource}/initramfs-patches/0001-initramfs-patches.patch"
+)
export KBUILD_BUILD_HOST=archlinux
export KBUILD_BUILD_USER=$pkgbase
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
prepare() {
- cd $_srcname
+ cd ${_srcname}
+
+ ### Add upstream patches
+ echo "Add upstream patches"
+ patch -Np1 -i ../patch-${pkgver}
### Setting version
- echo "Setting version..."
- sed -e "/^EXTRAVERSION =/s/=.*/=/" -i Makefile
- scripts/setlocalversion --save-scmversion
- echo "-$pkgrel" > localversion.10-pkgrel
- echo "${pkgbase#linux}" > localversion.20-pkgname
-
- ### Patching sources
- local src
+ echo "Setting version..."
+ scripts/setlocalversion --save-scmversion
+ echo "-$pkgrel" > localversion.10-pkgrel
+ echo "${pkgbase#linux}" > localversion.20-pkgname
+
+ local src
for src in "${source[@]}"; do
- src="${src%%::*}"
- src="${src##*/}"
- [[ $src = *.patch ]] || continue
+ src="${src%%::*}"
+ src="${src##*/}"
+ [[ $src = *.patch ]] || continue
echo "Applying patch $src..."
patch -Np1 < "../$src"
- done
+ done
- ### Setting config
+ ### Setting config
echo "Setting config..."
- cp ../config .config
- make olddefconfig
+ cp "${srcdir}"/config .config
+ make olddefconfig
+ ### CPU_ARCH SCRIPT ##
+ source "${startdir}"/configure
+
+ cpu_arch
+ ### Optionally set tickrate to 2000HZ
+ if [ -n "$_2k_HZ_ticks" ]; then
+ echo "Setting tick rate to 2k..."
+ scripts/config --disable CONFIG_HZ_300
+ scripts/config --enable CONFIG_HZ_2000
+ scripts/config --set-val CONFIG_HZ 2000
+ fi
- ### Prepared version
- make -s kernelrelease > version
- echo "Prepared $pkgbase version $(<version)"
+ ### Optionally set tickrate to 1000
+ if [ -n "$_1k_HZ_ticks" ]; then
+ echo "Setting tick rate to 1k..."
+ scripts/config --disable CONFIG_HZ_300
+ scripts/config --enable CONFIG_HZ_1000
+ scripts/config --set-val CONFIG_HZ 1000
+ fi
+
+ ### Optionally set tickrate to 500HZ
+ if [ -n "$_500_HZ_ticks" ]; then
+ echo "Setting tick rate to 500HZ..."
+ scripts/config --disable CONFIG_HZ_300
+ scripts/config --enable CONFIG_HZ_500
+ scripts/config --set-val CONFIG_HZ 500
+ fi
- ### Optionally use running kernel's config
- # code originally by nous; http://aur.archlinux.org/packages.php?ID=40191
- if [ -n "$_use_current" ]; then
- if [[ -s /proc/config.gz ]]; then
- echo "Extracting config from /proc/config.gz..."
- # modprobe configs
- zcat /proc/config.gz > ./.config
- else
- warning "Your kernel was not compiled with IKCONFIG_PROC!"
- warning "You cannot read the current config!"
- warning "Aborting!"
- exit
- fi
- fi
-
- source "${startdir}"/configure
-
- cpu_arch
-
- ### Optionally set tickrate to 2000HZ
- if [ -n "$_2k_HZ_ticks" ]; then
- echo "Setting tick rate to 2k..."
- scripts/config --disable CONFIG_HZ_300
- scripts/config --enable CONFIG_HZ_2000
- scripts/config --set-val CONFIG_HZ 2000
- fi
+ ### Optionally disable NUMA for 64-bit kernels only
+ # (x86 kernels do not support NUMA)
+ if [ -n "$_NUMAdisable" ]; then
+ echo "Disabling NUMA from kernel config..."
+ scripts/config --disable CONFIG_NUMA
+ fi
-### Optionally set tickrate to 1000
- if [ -n "$_1k_HZ_ticks" ]; then
- echo "Setting tick rate to 1k..."
- scripts/config --disable CONFIG_HZ_300
- scripts/config --enable CONFIG_HZ_1000
- scripts/config --set-val CONFIG_HZ 1000
- fi
-
-### Optionally set tickrate to 500HZ
- if [ -n "$_500_HZ_ticks" ]; then
- echo "Setting tick rate to 500HZ..."
- scripts/config --disable CONFIG_HZ_300
- scripts/config --enable CONFIG_HZ_500
- scripts/config --set-val CONFIG_HZ 500
- fi
-
-### Optionally disable NUMA for 64-bit kernels only
- # (x86 kernels do not support NUMA)
- if [ -n "$_NUMAdisable" ]; then
- echo "Disabling NUMA from kernel config..."
- scripts/config --disable CONFIG_NUMA
- fi
-
- if [ -n "$_fsync" ]; then
- echo "Enable Fsync support"
- scripts/config --enable CONFIG_FUTEX
- scripts/config --enable CONFIG_FUTEX_PI
- fi
-
- if [ -n "$_futex2" ]; then
- echo "Enable Futex2 support"
- scripts/config --enable CONFIG_FUTEX2
- fi
-
- if [ -n "$_winesync" ]; then
- echo "Enable winesync support"
- scripts/config --module CONFIG_WINESYNC
- fi
-
-### Set performance governor
- if [ -n "$_per_gov" ]; then
- echo "Setting performance governor..."
- scripts/config --disable CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL
- scripts/config --enable CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE
- echo "Disabling uneeded governors..."
- scripts/config --enable CONFIG_CPU_FREQ_GOV_ONDEMAND
- scripts/config --disable CONFIG_CPU_FREQ_GOV_CONSERVATIVE
- scripts/config --disable CONFIG_CPU_FREQ_GOV_USERSPACE
- scripts/config --disable CONFIG_CPU_FREQ_GOV_SCHEDUTIL
- fi
+ if [ -n "$_fsync" ]; then
+ echo "Enable Fsync support"
+ scripts/config --enable CONFIG_FUTEX
+ scripts/config --enable CONFIG_FUTEX_PI
+ fi
-### Disable Deadline I/O scheduler
- if [ -n "$_deadline_disable" ]; then
- echo "Disabling Deadline I/O scheduler..."
- scripts/config --disable CONFIG_MQ_IOSCHED_DEADLINE
- fi
+ if [ -n "$_futex2" ]; then
+ echo "Enable Futex2 support"
+ scripts/config --enable CONFIG_FUTEX2
+ fi
-### Disable Kyber I/O scheduler
- if [ -n "$_kyber_disable" ]; then
- echo "Disabling Kyber I/O scheduler..."
- scripts/config --disable CONFIG_MQ_IOSCHED_KYBER
- fi
-
- ### Enable protect file mappings under memory pressure
-
- echo "Enabling protect file mappings under memory pressure..."
- scripts/config --enable CONFIG_UNEVICTABLE_FILE
- scripts/config --set-val CONFIG_UNEVICTABLE_FILE_KBYTES_LOW 262144
- scripts/config --set-val CONFIG_UNEVICTABLE_FILE_KBYTES_MIN 131072
-
- ### Enable multigenerational LRU
-
- echo "Enabling multigenerational LRU..."
- scripts/config --enable CONFIG_HAVE_ARCH_PARENT_PMD_YOUNG
- scripts/config --enable CONFIG_LRU_GEN
- scripts/config --set-val CONFIG_NR_LRU_GENS 7
- scripts/config --set-val CONFIG_TIERS_PER_GEN 4
- scripts/config --enable CONFIG_LRU_GEN_ENABLED
- scripts/config --disable CONFIG_LRU_GEN_STATS
-
-### Enabling ZSTD COMPRESSION ##
- # echo "Set module compression to ZSTD"
-# scripts/config --enable CONFIG_MODULE_COMPRESS
-# scripts/config --disable CONFIG_MODULE_COMPRESS_XZ
-# scripts/config --enable CONFIG_MODULE_COMPRESS_ZSTD
- scripts/config --set-val CONFIG_MODULE_COMPRESS_ZSTD_LEVEL 19
- scripts/config --disable CONFIG_KERNEL_ZSTD_LEVEL_ULTRA
-
-### Enabling Cacule-Config ##
- echo "Enable CacULE CPU scheduler..."
- scripts/config --enable CONFIG_CACULE_SCHED
- scripts/config --enable CONFIG_FAIR_GROUP_SCHED
- scripts/config --enable CONFIG_SCHED_AUTOGROUP
- scripts/config --disable CONFIG_EXPERT
- scripts/config --disable CONFIG_SCHED_DEBUG
- scripts/config --disable CONFIG_SCHED_INFO
- scripts/config --disable CONFIG_SCHEDSTATS
- scripts/config --disable CONFIG_DEBUG_KERNEL
- scripts/config --enable CONFIG_NO_HZ
- scripts/config --enable CONFIG_NO_HZ_COMMON
- echo "Enabling KBUILD_CFLAGS -O3..."
- scripts/config --disable CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
- scripts/config --enable CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
- echo "Enable PREEMPT"
- scripts/config --disable CONFIG_PREEMPT_NONE
- scripts/config --disable CONFIG_PREEMPT_VOLUNTARY
- scripts/config --enable CONFIG_PREEMPT
- scripts/config --enable CONFIG_PREEMPT_COUNT
- scripts/config --enable CONFIG_PREEMPTION
- echo "Enable NTFS3"
- scripts/config --module CONFIG_NTFS_FS
- scripts/config --enable CONFIG_NTFS_RW
- scripts/config --enable CONFIG_NTFS_DEBUG
- scripts/config --module CONFIG_NTFS3_FS
- scripts/config --enable CONFIG_NTFS3_64BIT_CLUSTER
- scripts/config --enable CONFIG_NTFS3_LZX_XPRESS
- scripts/config --enable CONFIG_NTFS3_FS_POSIX_ACL
-### Enable ANBOX
- echo "Enable Anbox"
- scripts/config --module CONFIG_ASHMEM
- scripts/config --enable CONFIG_ANDROID_BINDER_IPC_SELFTEST
- scripts/config --enable CONFIG_ANDROID
- scripts/config --enable CONFIG_ANDROID_BINDER_IPC
- scripts/config --enable CONFIG_ANDROID_BINDERFS
- scripts/config --set-str CONFIG_ANDROID_BINDER_DEVICES binder,hwbinder,vndbinder
- echo "Disabling TCP_CONG_CUBIC..."
- scripts/config --module CONFIG_TCP_CONG_CUBIC
- scripts/config --disable CONFIG_DEFAULT_CUBIC
- echo "Enabling TCP_CONG_BBR2..."
- scripts/config --enable CONFIG_TCP_CONG_BBR2
- scripts/config --enable CONFIG_DEFAULT_BBR2
- scripts/config --set-str CONFIG_DEFAULT_TCP_CONG bbr2
- echo "Enable CONFIG_VHBA"
- scripts/config --module CONFIG_VHBA
- scripts/config --disable CONFIG_BPF_PRELOAD
- scripts/config --disable CONFIG_GCC_PLUGINS
- # General Setup
- scripts/config --disable CONFIG_BSD_PROCESS_ACCT
- scripts/config --disable CONFIG_TASK_XACCT
- scripts/config --disable CONFIG_PSI
- scripts/config --disable CONFIG_MEMCG
- scripts/config --disable CONFIG_CGROUP_CPUACCT
- scripts/config --disable CONFIG_CGROUP_DEBUG
- scripts/config --disable CONFIG_CHECKPOINT_RESTORE
- scripts/config --disable CONFIG_SLAB_MERGE_DEFAULT
- scripts/config --disable CONFIG_SLAB_FREELIST_HARDENED
- scripts/config --disable CONFIG_SLUB_CPU_PARTIAL
- scripts/config --disable CONFIG_PROFILING
-
- # Processor type and features
- scripts/config --disable CONFIG_RETPOLINE
- scripts/config --disable CONFIG_X86_5LEVEL
- scripts/config --disable CONFIG_KEXEC
- scripts/config --disable CONFIG_KEXEC_FILE
- scripts/config --disable CONFIG_CRASH_DUMPs
- scripts/config --disable CONFIG_KPROBES
- # Kernel hacking
- scripts/config --disable CONFIG_FTRACE
- scripts/config --disable CONFIG_DEBUG_KERNEL
- scripts/config --disable CONFIG_PAGE_EXTENSION
- scripts/config --set-val CONFIG_RCU_CPU_STALL_TIMEOUT 4
- scripts/config --disable CONFIG_PRINTK_TIME
- scripts/config --disable CONFIG_DEBUG_INFO
- scripts/config --disable CONFIG_ENABLE_MUST_CHECK
- scripts/config --disable CONFIG_STRIP_ASM_SYMS
- scripts/config --disable CONFIG_UNUSED_SYMBOLS
- scripts/config --disable CONFIG_DEBUG_FS
- scripts/config --disable CONFIG_OPTIMIZE_INLINING
- scripts/config --disable CONFIG_DEBUG_SECTION_MISMATCH
- scripts/config --disable CONFIG_SECTION_MISMATCH_WARN_ONLY
- scripts/config --disable CONFIG_STACK_VALIDATION
- scripts/config --disable CONFIG_DEBUG_FORCE_WEAK_PER_CPU
- scripts/config --disable CONFIG_MAGIC_SYSRQ
- scripts/config --disable CONFIG_MAGIC_SYSRQ_SERIAL
- scripts/config --disable CONFIG_PAGE_EXTENSION
- scripts/config --disable CONFIG_DEBUG_PAGEALLOC
- scripts/config --disable CONFIG_PAGE_OWNER
- scripts/config --disable CONFIG_DEBUG_MEMORY_INIT
- scripts/config --disable CONFIG_HARDLOCKUP_DETECTOR
- scripts/config --disable CONFIG_SOFTLOCKUP_DETECTOR
- scripts/config --disable CONFIG_DETECT_HUNG_TASK
- scripts/config --disable CONFIG_WQ_WATCHDOG
- scripts/config --set-val CONFIG_PANIC_TIMEOUT 10
- scripts/config --disable CONFIG_SCHED_DEBUG
- scripts/config --disable CONFIG_SCHEDSTATS
- scripts/config --disable CONFIG_SCHED_STACK_END_CHECK
- scripts/config --disable CONFIG_STACKTRACE
- scripts/config --disable CONFIG_DEBUG_BUGVERBOSE
- scripts/config --set-val CONFIG_RCU_CPU_STALL_TIMEOUT 4
- scripts/config --disable CONFIG_RCU_TRACE
- scripts/config --disable CONFIG_FAULT_INJECTION
- scripts/config --disable CONFIG_LATENCYTOP
- scripts/config --disable CONFIG_PROVIDE_OHCI1394_DMA_INIT
- scripts/config --disable RUNTIME_TESTING_MENU
- scripts/config --disable CONFIG_MEMTEST
- scripts/config --disable CONFIG_KGDB
- scripts/config --disable CONFIG_EARLY_PRINTK
- scripts/config --disable CONFIG_DOUBLEFAULT
-
-
-### Optionally load needed modules for the make localmodconfig
-# See https://aur.archlinux.org/packages/modprobed-db
+ if [ -n "$_winesync" ]; then
+ echo "Enable winesync support"
+ scripts/config --module CONFIG_WINESYNC
+ fi
+
+ ### Set performance governor
+ if [ -n "$_per_gov" ]; then
+ echo "Setting performance governor..."
+ scripts/config --disable CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL
+ scripts/config --enable CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE
+ echo "Disabling uneeded governors..."
+ scripts/config --enable CONFIG_CPU_FREQ_GOV_ONDEMAND
+ scripts/config --disable CONFIG_CPU_FREQ_GOV_CONSERVATIVE
+ scripts/config --disable CONFIG_CPU_FREQ_GOV_USERSPACE
+ scripts/config --disable CONFIG_CPU_FREQ_GOV_SCHEDUTIL
+ fi
+
+ ### Disable Deadline I/O scheduler
+ if [ -n "$_deadline_disable" ]; then
+ echo "Disabling Deadline I/O scheduler..."
+ scripts/config --disable CONFIG_MQ_IOSCHED_DEADLINE
+ fi
+
+ ### Disable Kyber I/O scheduler
+ if [ -n "$_kyber_disable" ]; then
+ echo "Disabling Kyber I/O scheduler..."
+ scripts/config --disable CONFIG_MQ_IOSCHED_KYBER
+ fi
+
+
+ ### Enable protect file mappings under memory pressure
+# if [ -n "$_mm_protect" ]; then
+# echo "Enabling protect file mappings under memory pressure..."
+# scripts/config --enable CONFIG_UNEVICTABLE_FILE
+# scripts/config --set-val CONFIG_UNEVICTABLE_FILE_KBYTES_LOW 262144
+# scripts/config --set-val CONFIG_UNEVICTABLE_FILE_KBYTES_MIN 131072
+# fi
+### Enable protect file mappings under memory pressure
+ if [ -n "$_mm_protect" ]; then
+ echo "Enabling protect file mappings under memory pressure..."
+ # scripts/config --enable CONFIG_UNEVICTABLE_FILE
+ scripts/config --set-val CONFIG_CLEAN_LOW_KBYTES 150000
+ scripts/config --set-val CONFIG_CLEAN_MIN_KBYTES 0
+ fi
+
+ ### Enable multigenerational LRU
+ if [ -n "$_lru_enable" ]; then
+ echo "Enabling multigenerational LRU..."
+ scripts/config --enable CONFIG_HAVE_ARCH_PARENT_PMD_YOUNG
+ scripts/config --enable CONFIG_LRU_GEN
+ scripts/config --set-val CONFIG_NR_LRU_GENS 7
+ scripts/config --set-val CONFIG_TIERS_PER_GEN 4
+ scripts/config --enable CONFIG_LRU_GEN_ENABLED
+ scripts/config --disable CONFIG_LRU_GEN_STATS
+ fi
+
+ ### Enabling ZSTD COMPRESSION ##
+ echo "Set module compression to ZSTD"
+ scripts/config --enable CONFIG_MODULE_COMPRESS
+ scripts/config --disable CONFIG_MODULE_COMPRESS_XZ
+ scripts/config --enable CONFIG_MODULE_COMPRESS_ZSTD
+ # scripts/config --set-val CONFIG_MODULE_COMPRESS_ZSTD_LEVEL 19
+ # scripts/config --disable CONFIG_KERNEL_ZSTD_LEVEL_ULTRA
+
+ ### Enabling Cacule-Config ##
+ echo "Enable CacULE CPU scheduler..."
+ scripts/config --enable CONFIG_CACULE_SCHED
+ scripts/config --enable CONFIG_FAIR_GROUP_SCHED
+ scripts/config --enable CONFIG_SCHED_AUTOGROUP
+ scripts/config --disable CONFIG_EXPERT
+ scripts/config --disable CONFIG_SCHED_DEBUG
+ scripts/config --disable CONFIG_SCHED_INFO
+ scripts/config --disable CONFIG_SCHEDSTATS
+ scripts/config --disable CONFIG_DEBUG_KERNEL
+ echo "Enabling Full Tickless"
+ scripts/config --disable CONFIG_HZ_PERIODIC
+ scripts/config --disable CONFIG_NO_HZ_IDLE
+ scripts/config --enable CONFIG_NO_HZ_FULL
+ scripts/config --enable CONFIG_NO_HZ
+ scripts/config --enable CONFIG_NO_HZ_COMMON
+ scripts/config --enable CONFIG_CONTEXT_TRACKING
+ scripts/config --disable CONFIG_CONTEXT_TRACKING_FORCE
+ echo "Enabling KBUILD_CFLAGS -O3..."
+ scripts/config --disable CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
+ scripts/config --enable CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
+ echo "Enable PREEMPT"
+ scripts/config --disable CONFIG_PREEMPT_NONE
+ scripts/config --disable CONFIG_PREEMPT_VOLUNTARY
+ scripts/config --enable CONFIG_PREEMPT
+ scripts/config --enable CONFIG_PREEMPT_COUNT
+ scripts/config --enable CONFIG_PREEMPTION
+ scripts/config --enable CONFIG_PREEMPT_DYNAMIC
+ echo "Enable NTFS3"
+ scripts/config --module CONFIG_NTFS_FS
+ scripts/config --enable CONFIG_NTFS_RW
+ scripts/config --enable CONFIG_NTFS_DEBUG
+ scripts/config --module CONFIG_NTFS3_FS
+ scripts/config --enable CONFIG_NTFS3_64BIT_CLUSTER
+ scripts/config --enable CONFIG_NTFS3_LZX_XPRESS
+ scripts/config --enable CONFIG_NTFS3_FS_POSIX_ACL
+ echo "Enable Anbox"
+ scripts/config --module CONFIG_ASHMEM
+ scripts/config --enable CONFIG_ANDROID_BINDER_IPC_SELFTEST
+ scripts/config --enable CONFIG_ANDROID
+ scripts/config --enable CONFIG_ANDROID_BINDER_IPC
+ scripts/config --enable CONFIG_ANDROID_BINDERFS
+ scripts/config --set-str CONFIG_ANDROID_BINDER_DEVICES binder,hwbinder,vndbinder
+ echo "Disabling TCP_CONG_CUBIC..."
+ scripts/config --module CONFIG_TCP_CONG_CUBIC
+ scripts/config --disable CONFIG_DEFAULT_CUBIC
+ echo "Enabling TCP_CONG_BBR2..."
+ scripts/config --enable CONFIG_TCP_CONG_BBR2
+ scripts/config --enable CONFIG_DEFAULT_BBR2
+ scripts/config --set-str CONFIG_DEFAULT_TCP_CONG bbr2
+ echo "Enable VHBA-Module"
+ scripts/config --module CONFIG_VHBA
+ scripts/config --disable CONFIG_GCC_PLUGINS
+ # General Setup
+ scripts/config --disable CONFIG_BSD_PROCESS_ACCT
+ scripts/config --disable CONFIG_TASK_XACCT
+ scripts/config --enable CONFIG_PSI
+ scripts/config --disable CONFIG_MEMCG
+ scripts/config --enable CONFIG_CGROUP_CPUACCT
+ scripts/config --disable CONFIG_CGROUP_DEBUG
+ scripts/config --disable CONFIG_CHECKPOINT_RESTORE
+ scripts/config --disable CONFIG_SLAB_MERGE_DEFAULT
+ scripts/config --disable CONFIG_SLAB_FREELIST_HARDENED
+ scripts/config --disable CONFIG_SLUB_CPU_PARTIAL
+ scripts/config --disable CONFIG_PROFILING
+
+ # Processor type and features
+ scripts/config --disable CONFIG_RETPOLINE
+ scripts/config --disable CONFIG_X86_5LEVEL
+ scripts/config --disable CONFIG_KEXEC
+ scripts/config --disable CONFIG_KEXEC_FILE
+ scripts/config --disable CONFIG_CRASH_DUMPs
+ scripts/config --disable CONFIG_KPROBES
+ # Kernel hacking
+ scripts/config --disable CONFIG_FTRACE
+ scripts/config --disable CONFIG_DEBUG_KERNEL
+ scripts/config --disable CONFIG_PAGE_EXTENSION
+ scripts/config --set-val CONFIG_RCU_CPU_STALL_TIMEOUT 4
+ scripts/config --disable CONFIG_PRINTK_TIME
+ scripts/config --disable CONFIG_DEBUG_INFO
+ scripts/config --disable CONFIG_ENABLE_MUST_CHECK
+ scripts/config --disable CONFIG_STRIP_ASM_SYMS
+ scripts/config --disable CONFIG_UNUSED_SYMBOLS
+ scripts/config --disable CONFIG_DEBUG_FS
+ scripts/config --disable CONFIG_OPTIMIZE_INLINING
+ scripts/config --disable CONFIG_DEBUG_SECTION_MISMATCH
+ scripts/config --disable CONFIG_SECTION_MISMATCH_WARN_ONLY
+ scripts/config --disable CONFIG_STACK_VALIDATION
+ scripts/config --disable CONFIG_DEBUG_FORCE_WEAK_PER_CPU
+ scripts/config --disable CONFIG_MAGIC_SYSRQ
+ scripts/config --disable CONFIG_MAGIC_SYSRQ_SERIAL
+ scripts/config --disable CONFIG_PAGE_EXTENSION
+ scripts/config --disable CONFIG_DEBUG_PAGEALLOC
+ scripts/config --disable CONFIG_PAGE_OWNER
+ scripts/config --disable CONFIG_DEBUG_MEMORY_INIT
+ scripts/config --disable CONFIG_HARDLOCKUP_DETECTOR
+ scripts/config --disable CONFIG_SOFTLOCKUP_DETECTOR
+ scripts/config --disable CONFIG_DETECT_HUNG_TASK
+ scripts/config --disable CONFIG_WQ_WATCHDOG
+ scripts/config --set-val CONFIG_PANIC_TIMEOUT 10
+ scripts/config --disable CONFIG_SCHEDSTATS
+ scripts/config --disable CONFIG_SCHED_STACK_END_CHECK
+ scripts/config --disable CONFIG_STACKTRACE
+ scripts/config --disable CONFIG_DEBUG_BUGVERBOSE
+ scripts/config --disable CONFIG_RCU_TRACE
+ scripts/config --disable CONFIG_FAULT_INJECTION
+ scripts/config --disable CONFIG_LATENCYTOP
+ scripts/config --disable CONFIG_PROVIDE_OHCI1394_DMA_INIT
+ scripts/config --disable RUNTIME_TESTING_MENU
+ scripts/config --disable CONFIG_MEMTEST
+ scripts/config --disable CONFIG_KGDB
+ scripts/config --disable CONFIG_EARLY_PRINTK
+ scripts/config --disable CONFIG_DOUBLEFAULT
+
+ # General setup
+ scripts/config --enable IKCONFIG \
+ --enable-after IKCONFIG IKCONFIG_PROC \
+ --undefine RT_GROUP_SCHED
+
+ # Power management and ACPI options
+ scripts/config --enable ACPI_REV_OVERRIDE_POSSIBLE \
+ --enable ACPI_TABLE_UPGRADE
+
+
+
+ ### Optionally use running kernel's config
+ # code originally by nous; http://aur.archlinux.org/packages.php?ID=40191
+ if [ -n "$_use_current" ]; then
+ if [[ -s /proc/config.gz ]]; then
+ echo "Extracting config from /proc/config.gz..."
+ # modprobe configs
+ zcat /proc/config.gz > ./.config
+ else
+ warning "Your kernel was not compiled with IKCONFIG_PROC!"
+ warning "You cannot read the current config!"
+ warning "Aborting!"
+ exit
+ fi
+ fi
+
+ ### Optionally load needed modules for the make localmodconfig
+ # See https://aur.archlinux.org/packages/modprobed-db
if [ -n "$_localmodcfg" ]; then
- if [ -f $HOME/.config/modprobed.db ]; then
- echo "Running Steven Rostedt's make localmodconfig now"
- make LSMOD=$HOME/.config/modprobed.db localmodconfig
- else
- echo "No modprobed.db data found"
- exit
+ if [ -e $HOME/.config/modprobed.db ]; then
+ echo "Running Steven Rostedt's make localmodconfig now"
+ make LSMOD=$HOME/.config/modprobed.db localmodconfig
+ else
+ echo "No modprobed.db data found"
+ exit
fi
fi
-### Save configuration for later reuse
- echo "Save config for reuse"
- cat .config > "${startdir}/config.last"
+ make -s kernelrelease > version
+ echo "Prepared $pkgbase version $(<version)"
+ [[ -z "$_makenconfig" ]] || make nconfig
+
+ ### Save configuration for later reuse
+ cp -Tf ./.config "${startdir}/config-${pkgver}-${pkgrel}${pkgbase#linux}"
}
build() {
- cd $_srcname
-
- make all
+ cd $_srcname
+ make all
}
_package() {
@@ -411,104 +411,101 @@ _package() {
optdepends=('crda: to set the correct wireless channels of your country'
'linux-firmware: firmware images needed for some devices'
'modprobed-db: Keeps track of EVERY kernel module that has ever been probed - useful for those of us who make localmodconfig')
+ provides=(VIRTUALBOX-GUEST-MODULES WIREGUARD-MODULE)
+ cd $_srcname
- cd $_srcname
- local kernver="$(<version)"
- local modulesdir="$pkgdir/usr/lib/modules/$kernver"
+ local kernver="$(<version)"
+ local modulesdir="$pkgdir/usr/lib/modules/$kernver"
- echo "Installing boot image..."
- # systemd expects to find the kernel here to allow hibernation
- # https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344
- install -Dm644 "$(make -s image_name)" "$modulesdir/vmlinuz"
+ echo "Installing boot image..."
+ # systemd expects to find the kernel here to allow hibernation
+ # https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344
+ install -Dm644 "$(make -s image_name)" "$modulesdir/vmlinuz"
- # Used by mkinitcpio to name the kernel
- echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
+ # Used by mkinitcpio to name the kernel
+ echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
- echo "Installing modules..."
- make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 modules_install
+ echo "Installing modules..."
+ make INSTALL_MOD_PATH="$pkgdir/usr" modules_install
- # remove build and source links
- rm "$modulesdir"/{source,build}
+ # remove build and source links
+ rm "$modulesdir"/{source,build}
}
_package-headers() {
pkgdesc="Headers and scripts for building modules for the $pkgdesc kernel"
- depends=('linux-cacule-rc' 'pahole')
-
- cd $_srcname
- local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
-
- echo "Installing build files..."
- install -Dt "$builddir" -m644 .config Makefile Module.symvers System.map \
- localversion.* version vmlinux
- install -Dt "$builddir/kernel" -m644 kernel/Makefile
- install -Dt "$builddir/arch/x86" -m644 arch/x86/Makefile
- cp -t "$builddir" -a scripts
-
- # add objtool for external module building and enabled VALIDATION_STACK option
- install -Dt "$builddir/tools/objtool" tools/objtool/objtool
-
- # add xfs and shmem for aufs building
- mkdir -p "$builddir"/{fs/xfs,mm}
-
- echo "Installing headers..."
- cp -t "$builddir" -a include
- cp -t "$builddir/arch/x86" -a arch/x86/include
- install -Dt "$builddir/arch/x86/kernel" -m644 arch/x86/kernel/asm-offsets.s
-
- install -Dt "$builddir/drivers/md" -m644 drivers/md/*.h
- install -Dt "$builddir/net/mac80211" -m644 net/mac80211/*.h
-
- # http://bugs.archlinux.org/task/13146
- install -Dt "$builddir/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h
-
- # http://bugs.archlinux.org/task/20402
- install -Dt "$builddir/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h
- install -Dt "$builddir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
- install -Dt "$builddir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
-
- echo "Installing KConfig files..."
- find . -name 'Kconfig*' -exec install -Dm644 {} "$builddir/{}" \;
-
- echo "Removing unneeded architectures..."
- local arch
- for arch in "$builddir"/arch/*/; do
- [[ $arch = */x86/ ]] && continue
- echo "Removing $(basename "$arch")"
- rm -r "$arch"
- done
-
- echo "Removing documentation..."
- rm -r "$builddir/Documentation"
-
- echo "Removing broken symlinks..."
- find -L "$builddir" -type l -printf 'Removing %P\n' -delete
-
- echo "Removing loose objects..."
- find "$builddir" -type f -name '*.o' -printf 'Removing %P\n' -delete
-
- echo "Stripping build tools..."
- local file
- while read -rd '' file; do
- case "$(file -bi "$file")" in
- application/x-sharedlib\;*) # Libraries (.so)
- strip -v $STRIP_SHARED "$file" ;;
- application/x-archive\;*) # Libraries (.a)
- strip -v $STRIP_STATIC "$file" ;;
- application/x-executable\;*) # Binaries
- strip -v $STRIP_BINARIES "$file" ;;
- application/x-pie-executable\;*) # Relocatable binaries
- strip -v $STRIP_SHARED "$file" ;;
- esac
- done < <(find "$builddir" -type f -perm -u+x ! -name vmlinux -print0)
-
- echo "Stripping vmlinux..."
- strip -v $STRIP_STATIC "$builddir/vmlinux"
-
- echo "Adding symlink..."
- mkdir -p "$pkgdir/usr/src"
- ln -sr "$builddir" "$pkgdir/usr/src/$pkgbase"
+
+ cd ${_srcname}
+ local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
+
+ echo "Installing build files..."
+ install -Dt "$builddir" -m644 .config Makefile Module.symvers System.map \
+ localversion.* version vmlinux
+ install -Dt "$builddir/kernel" -m644 kernel/Makefile
+ install -Dt "$builddir/arch/x86" -m644 arch/x86/Makefile
+ cp -t "$builddir" -a scripts
+
+ # add objtool for external module building and enabled VALIDATION_STACK option
+ install -Dt "$builddir/tools/objtool" tools/objtool/objtool
+
+ # add xfs and shmem for aufs building
+ mkdir -p "$builddir"/{fs/xfs,mm}
+
+ echo "Installing headers..."
+ cp -t "$builddir" -a include
+ cp -t "$builddir/arch/x86" -a arch/x86/include
+ install -Dt "$builddir/arch/x86/kernel" -m644 arch/x86/kernel/asm-offsets.s
+
+ install -Dt "$builddir/drivers/md" -m644 drivers/md/*.h
+ install -Dt "$builddir/net/mac80211" -m644 net/mac80211/*.h
+
+ # http://bugs.archlinux.org/task/13146
+ install -Dt "$builddir/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h
+
+ # http://bugs.archlinux.org/task/20402
+ install -Dt "$builddir/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h
+ install -Dt "$builddir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
+ install -Dt "$builddir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
+
+ echo "Installing KConfig files..."
+ find . -name 'Kconfig*' -exec install -Dm644 {} "$builddir/{}" \;
+
+ echo "Removing unneeded architectures..."
+ local arch
+ for arch in "$builddir"/arch/*/; do
+ [[ $arch = */x86/ ]] && continue
+ echo "Removing $(basename "$arch")"
+ rm -r "$arch"
+ done
+
+ echo "Removing documentation..."
+ rm -r "$builddir/Documentation"
+
+ echo "Removing broken symlinks..."
+ find -L "$builddir" -type l -printf 'Removing %P\n' -delete
+
+ echo "Removing loose objects..."
+ find "$builddir" -type f -name '*.o' -printf 'Removing %P\n' -delete
+
+ echo "Stripping build tools..."
+ local file
+ while read -rd '' file; do
+ case "$(file -bi "$file")" in
+ application/x-sharedlib\;*) # Libraries (.so)
+ strip -v $STRIP_SHARED "$file" ;;
+ application/x-archive\;*) # Libraries (.a)
+ strip -v $STRIP_STATIC "$file" ;;
+ application/x-executable\;*) # Binaries
+ strip -v $STRIP_BINARIES "$file" ;;
+ application/x-pie-executable\;*) # Relocatable binaries
+ strip -v $STRIP_SHARED "$file" ;;
+ esac
+ done < <(find "$builddir" -type f -perm -u+x ! -name vmlinux -print0)
+
+ echo "Adding symlink..."
+ mkdir -p "$pkgdir/usr/src"
+ ln -sr "$builddir" "$pkgdir/usr/src/$pkgbase"
}
pkgname=("$pkgbase" "$pkgbase-headers")
@@ -518,3 +515,31 @@ for _p in "${pkgname[@]}"; do
_package${_p#$pkgbase}
}"
done
+
+sha256sums=('7d0df6f2bf2384d68d0bd8e1fe3e071d64364dcdc6002e7b5c87c92d48fac366'
+ '742e13b424c618689734c3c41a14c5cda5a09d8546ed5b1433153d4619524dfe'
+ '5cfde84b9b7b71cde2a9823859184ed08f7eece119b2776f0e620c8528a156e5'
+ 'dd89db0483301a62cef23ba797fee1fb9804f570f952df87fe418ee22e353227'
+ 'a90ec03375bf97c06bf2ca3f1fd0224deee8408077f71447326b2796b53652a1'
+ 'd50836cb16ef209b4bdd7bef792485b8f0ff847a96d2b6eca109da0b7e05f79b'
+ '4ff5c33785445f103d479196bb33c4f991d6c5f56df5c643ec6d2451368f0605'
+ 'db4707a6430a80447fabc2517e554cf9e055a4039b362f683bd9dd7f04d7a667'
+ 'f7c68f43599c53ce19a14e6f296e5e0820257e80acb9f52a1dec036d0d9a62ab'
+ '9eabd1468635477d9c143e9f59d86cf0dd32583bf6bd926080a6707f86d363ed'
+ '5587a2d535dcd7ff09080c27f32a02dc67a0d35145b0b49ae10e8520c906a153'
+ '8c5296b9920d44184fa3aea34e4100e1848617f18b76c883f31c973dd96044f9'
+ '8c892547828704e05cd480e58944327029bf50f81258ae0501a4872b465b20b9'
+ '7cdc6402f6ab8a8b99f7c7c4766a6cf82773ef399903abebf6208bfd2f8b2cf2'
+ 'f7a36231b794022d49e53f464d25e48f2eebf6266c2cbe5756c63aa3bf03bae7'
+ '59dc35df675221c9e54326e4a2ca57074c955387e1d4cb0b6543424bc84bdb11'
+ 'f71cc3bdd9b3488ece3d7433ff65e0dd9f544f069b82e84e32ad67e2e7f64718'
+ '42dc3c76534393d1b59ca3f321797566a7637bbb110f604eb9bf584b867a97a4'
+ '0b44848f5b8926a9e9db8064aeefbfb53c289923e25779c11ddb2a5b149fdb12'
+ '4ad652d36fdd3f5142e66407a964e8e0d3c91ab3e7094a368de1ef1b21f6d19a'
+ 'd68ed98e7bc5a8f9ebc48c16cd0be47be948578621a70b13fcbb13e280469056'
+ '7056565c13628e7885538aca4cdb384f1a2b65c4c02a502ddfe182ddb7ce347e'
+ '84c231a4d66726e4ed84807de961e0aa37bc3cb13fda0c3d82f7c23470ca6ecd'
+ '5a0c7b01ce8baf4dc480b33eddd203a1620ad4885122a3967f580cb172d0f9b7'
+ 'efc3e1e4c2ef22a570a0e8cfdaea4617655e1baddce02829d6a0acc5b9a7ab58'
+ '64a7a848ca409f359d16e9732f4e623126eeb89bfae85c884391b9b280facdcf'
+ '0b18daa836fd70dbabf68b1db85b01e585f8cad2f1a2ef5c2ced9db4e1f75d3a')
diff --git a/config b/config
index d242ca6d1047..2cdaa01b1445 100644
--- a/config
+++ b/config
@@ -179,11 +179,11 @@ CONFIG_MEMCG_SWAP=y
CONFIG_MEMCG_KMEM=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_WRITEBACK=y
-CONFIG_CGROUP_SCHED=n
-CONFIG_FAIR_GROUP_SCHED=n
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
# CONFIG_RT_GROUP_SCHED is not set
-CONFIG_UCLAMP_TASK_GROUP=n
+CONFIG_UCLAMP_TASK_GROUP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_RDMA=y
CONFIG_CGROUP_FREEZER=y
@@ -206,8 +206,7 @@ CONFIG_PID_NS=y
CONFIG_NET_NS=y
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CACULE_SCHED=y
-CONFIG_CACULE_RDB=y
-CONFIG_SCHED_AUTOGROUP=n
+CONFIG_SCHED_AUTOGROUP=y
# CONFIG_SYSFS_DEPRECATED is not set
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
@@ -406,7 +405,7 @@ CONFIG_ACRN_GUEST=y
# CONFIG_MSAPPHIRERAPIDS is not set
# CONFIG_MROCKETLAKE is not set
# CONFIG_MALDERLAKE is not set
-# CONFIG_GENERIC_CPU is not set
+CONFIG_GENERIC_CPU=y
# CONFIG_GENERIC_CPU2 is not set
# CONFIG_GENERIC_CPU3 is not set
# CONFIG_GENERIC_CPU4 is not set
@@ -9738,7 +9737,7 @@ CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
# CONFIG_DEFAULT_SECURITY_APPARMOR is not set
CONFIG_DEFAULT_SECURITY_DAC=y
-CONFIG_LSM="lockdown,yama,bpf"
+CONFIG_LSM="lockdown,yama"
#
# Kernel hardening options