summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZach van Rijn <me@zv.io>2022-04-20 17:35:09 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2022-05-01 17:06:00 -0500
commitcc9b56ee62c9242acc32d08007dc436cb4788f35 (patch)
tree1feff4c8703476181e99d789e0a4cdf115978a42
parent74fabc87ce38872dc54463345f94c8aeed64970b (diff)
downloadpackages-cc9b56ee62c9242acc32d08007dc436cb4788f35.tar.gz
packages-cc9b56ee62c9242acc32d08007dc436cb4788f35.tar.bz2
packages-cc9b56ee62c9242acc32d08007dc436cb4788f35.tar.xz
packages-cc9b56ee62c9242acc32d08007dc436cb4788f35.zip
system/easy-kernel: backport Project C changes for 5.15.27-breaking changes. fixes #540.
-rw-r--r--system/easy-kernel/0251-projectc-5.15-r1-zv-fix-5.15.28.patch125
-rw-r--r--system/easy-kernel/APKBUILD4
2 files changed, 128 insertions, 1 deletions
diff --git a/system/easy-kernel/0251-projectc-5.15-r1-zv-fix-5.15.28.patch b/system/easy-kernel/0251-projectc-5.15-r1-zv-fix-5.15.28.patch
new file mode 100644
index 000000000..c08d9d0cc
--- /dev/null
+++ b/system/easy-kernel/0251-projectc-5.15-r1-zv-fix-5.15.28.patch
@@ -0,0 +1,125 @@
+diff -ur a/init/Kconfig b/init/Kconfig
+--- a/init/Kconfig 2022-04-20 17:30:09.904751692 -0500
++++ b/init/Kconfig 2022-04-20 17:32:51.173376197 -0500
+@@ -814,35 +814,6 @@
+
+ menu "Scheduler features"
+
+-menuconfig SCHED_ALT
+- bool "Alternative CPU Schedulers"
+- default y
+- help
+- This feature enable alternative CPU scheduler"
+-
+-if SCHED_ALT
+-
+-choice
+- prompt "Alternative CPU Scheduler"
+- default SCHED_BMQ
+-
+-config SCHED_BMQ
+- bool "BMQ CPU scheduler"
+- help
+- The BitMap Queue CPU scheduler for excellent interactivity and
+- responsiveness on the desktop and solid scalability on normal
+- hardware and commodity servers.
+-
+-config SCHED_PDS
+- bool "PDS CPU scheduler"
+- help
+- The Priority and Deadline based Skip list multiple queue CPU
+- Scheduler.
+-
+-endchoice
+-
+-endif
+-
+ config UCLAMP_TASK
+ bool "Enable utilization clamping for RT/FAIR tasks"
+ depends on CPU_FREQ_GOV_SCHEDUTIL
+@@ -893,6 +864,35 @@
+
+ If in doubt, use the default value.
+
++menuconfig SCHED_ALT
++ bool "Alternative CPU Schedulers"
++ default y
++ help
++ This feature enable alternative CPU scheduler"
++
++if SCHED_ALT
++
++choice
++ prompt "Alternative CPU Scheduler"
++ default SCHED_BMQ
++
++config SCHED_BMQ
++ bool "BMQ CPU scheduler"
++ help
++ The BitMap Queue CPU scheduler for excellent interactivity and
++ responsiveness on the desktop and solid scalability on normal
++ hardware and commodity servers.
++
++config SCHED_PDS
++ bool "PDS CPU scheduler"
++ help
++ The Priority and Deadline based Skip list multiple queue CPU
++ Scheduler.
++
++endchoice
++
++endif
++
+ endmenu
+
+ #
+diff -ur a/kernel/sched/alt_core.c b/kernel/sched/alt_core.c
+--- a/kernel/sched/alt_core.c 2022-04-20 17:30:09.908751806 -0500
++++ b/kernel/sched/alt_core.c 2022-04-20 17:32:51.169376082 -0500
+@@ -2954,7 +2954,7 @@
+ return 0;
+ }
+
+-void sched_post_fork(struct task_struct *p, struct kernel_clone_args *kargs)
++void sched_cgroup_fork(struct task_struct *p, struct kernel_clone_args *kargs)
+ {
+ unsigned long flags;
+ struct rq *rq;
+@@ -2997,6 +2997,13 @@
+ raw_spin_unlock_irqrestore(&p->pi_lock, flags);
+ }
+
++void sched_post_fork(struct task_struct *p)
++{
++#ifdef CONFIG_UCLAMP_TASK
++ uclamp_post_fork(p);
++#endif
++}
++
+ #ifdef CONFIG_SCHEDSTATS
+
+ DEFINE_STATIC_KEY_FALSE(sched_schedstats);
+diff -ur a/kernel/sched/alt_sched.h b/kernel/sched/alt_sched.h
+--- a/kernel/sched/alt_sched.h 2022-04-20 17:30:09.908751806 -0500
++++ b/kernel/sched/alt_sched.h 2022-04-20 17:32:51.173376197 -0500
+@@ -653,6 +653,20 @@
+ }
+ #endif
+
++static inline
++unsigned long uclamp_rq_util_with(struct rq *rq, unsigned long boost,
++ struct task_struct *p)
++{
++ return boost;
++}
++
++static inline bool uclamp_rq_is_capped(struct rq *rq) { return false; }
++
++static inline bool uclamp_is_used(void)
++{
++ return false;
++}
++
+ extern void swake_up_all_locked(struct swait_queue_head *q);
+ extern void __prepare_to_swait(struct swait_queue_head *q, struct swait_queue *wait);
+
diff --git a/system/easy-kernel/APKBUILD b/system/easy-kernel/APKBUILD
index 0558b9177..f12dbfcd1 100644
--- a/system/easy-kernel/APKBUILD
+++ b/system/easy-kernel/APKBUILD
@@ -5,7 +5,7 @@ _kflavour=""
_patchver=1 # must match 1000-version.patch ???
_pkgname=easy-kernel$_kflavour
pkgver=5.15.28
-pkgrel=0
+pkgrel=1
pkgname=$_pkgname-$pkgver-mc$_patchver
pkgdesc="The Linux kernel, packaged for your convenience"
url="https://kernel.org/"
@@ -40,6 +40,7 @@ source="https://cdn.kernel.org/pub/linux/kernel/v${_pkgmajver}.x/linux-${_pkgmin
0130-lrng.patch
0200-x86-compile.patch
0250-projectc-5.15-r1.patch
+ 0251-projectc-5.15-r1-zv-fix-5.15.28.patch
0255-ultra-ksm.patch
0260-reduce-swappiness.patch
0300-tmp513-regression-fix.patch
@@ -171,6 +172,7 @@ dc47b18749d95a456f8bc47fd6a0618c286b646b38466c3d950dfbeb25adf3fc1a794e95552e4da1
27b0a76966f5ea36217a1686e9504e5cf34a319d7036f856c94ddc22f5e737b3c49bf8cc50508c20f476c4b24607eba194305d7073c50faad00046b0d72350a1 0130-lrng.patch
16b8b8333fe89a68bc7f9a49b1bae263ab830692c12981640ac3dd9a0fb687f90b53783be05d47e5b38759ace4d99e82b59edd537a85a7ee27e21e65bbfa40a6 0200-x86-compile.patch
3cc9156e321f6b20d8adcc7c3baeb27f1f4b2d91b514b241244b93ea69b5b54e2055fe0365f25db17033bdae38dddbb029378b40032992fda6534004893a1b31 0250-projectc-5.15-r1.patch
+d1fb1981173e775c8c76f64957984c64d17b8a0d25185e7ab9e6731735b2cec976513011efb90aceb0bcd5dda27987d6f45c6736f5568fe9932ef19088c077be 0251-projectc-5.15-r1-zv-fix-5.15.28.patch
4c901fe38e197b0397702ec46329fac6cdd5b7ff6e2601f76f0cbabcf452581936c58028c3a93471782541ad3045b10d1030fad4b25121f35d091495d17fd308 0255-ultra-ksm.patch
5f74e6a72876d3cf3b3188a43b999b981b6ea0ca401ad72b3c7d5cc65bf505f50e7ee17d435ec95b7a012dc92e6540aea1bdb501f48690c242705c47d2403513 0260-reduce-swappiness.patch
4e637935c2f37cc18f347293e3c94b18f90e2caccca726304a95c4891257a5b2bb3093aee7a97571038b29c0c987cc60a9a80aefd0d4c9a063b33d102f03579e 0300-tmp513-regression-fix.patch