linux59-tkg: Import ck1/MuQSS patchset for 5.9

http://ck-hack.blogspot.com/2020/10/linux-59-ck1-muqss-version-0204-for.html
This commit is contained in:
Tk-Glitch 2020-10-19 13:00:43 +02:00
parent 5c57ad3792
commit 14aad669dc
6 changed files with 13495 additions and 8 deletions

View File

@ -45,7 +45,7 @@ else
fi fi
pkgname=("${pkgbase}" "${pkgbase}-headers") pkgname=("${pkgbase}" "${pkgbase}-headers")
pkgver="${_basekernel}"."${_sub}" pkgver="${_basekernel}"."${_sub}"
pkgrel=4 pkgrel=5
pkgdesc='Linux-tkg' pkgdesc='Linux-tkg'
arch=('x86_64') # no i686 in here arch=('x86_64') # no i686 in here
url="http://www.kernel.org/" url="http://www.kernel.org/"
@ -66,9 +66,9 @@ source=("https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${_basekernel}.tar.x
0002-clear-patches.patch 0002-clear-patches.patch
0003-glitched-base.patch 0003-glitched-base.patch
0003-glitched-cfs.patch 0003-glitched-cfs.patch
#0004-glitched-ondemand-muqss.patch 0004-glitched-ondemand-muqss.patch
#0004-glitched-muqss.patch 0004-glitched-muqss.patch
#0004-5.8-ck1.patch 0004-5.9-ck1.patch
#0005-undead-glitched-ondemand-pds.patch #0005-undead-glitched-ondemand-pds.patch
#0005-undead-glitched-pds.patch #0005-undead-glitched-pds.patch
#0005-v5.8_undead-pds099o.patch #0005-v5.8_undead-pds099o.patch
@ -93,6 +93,9 @@ sha256sums=('3239a4ee1250bf2048be988cc8cb46c487b2c8a0de5b1b032d38394d5c6b1a06'
'35a7cde86fb94939c0f25a62b8c47f3de0dbd3c65f876f460b263181b3e92fc0' '35a7cde86fb94939c0f25a62b8c47f3de0dbd3c65f876f460b263181b3e92fc0'
'b9ebe0ae69bc2b2091d6bfcf6c7875a87ea7969fcfa4e306c48d47a60f9ef4d6' 'b9ebe0ae69bc2b2091d6bfcf6c7875a87ea7969fcfa4e306c48d47a60f9ef4d6'
'7058e57fd68367b029adc77f2a82928f1433daaf02c8c279cb2d13556c8804d7' '7058e57fd68367b029adc77f2a82928f1433daaf02c8c279cb2d13556c8804d7'
'c605f638d74c61861ebdc36ebd4cb8b6475eae2f6273e1ccb2bbb3e10a2ec3fe'
'bc69d6e5ee8172b0242c8fa72d13cfe2b8d2b6601468836908a7dfe8b78a3bbb'
'45a9ab99215ab3313be6e66e073d29154aac55bc58975a4df2dad116c918d27c'
'fca63d15ca4502aebd73e76d7499b243d2c03db71ff5ab0bf5cf268b2e576320' 'fca63d15ca4502aebd73e76d7499b243d2c03db71ff5ab0bf5cf268b2e576320'
'19661ec0d39f9663452b34433214c755179894528bf73a42f6ba52ccf572832a' '19661ec0d39f9663452b34433214c755179894528bf73a42f6ba52ccf572832a'
'edb93a2bef291c16dbcbf8d11f7a12febb77b2d193dd4be0dac988de91e0d97c' 'edb93a2bef291c16dbcbf8d11f7a12febb77b2d193dd4be0dac988de91e0d97c'

View File

@ -55,8 +55,8 @@ _debugdisable="false"
# LEAVE AN EMPTY VALUE TO BE PROMPTED ABOUT FOLLOWING OPTIONS AT BUILD TIME # LEAVE AN EMPTY VALUE TO BE PROMPTED ABOUT FOLLOWING OPTIONS AT BUILD TIME
# CPU scheduler - Options are "pds", "bmq" or "cfs" # CPU scheduler - Options are "pds", "bmq", "muqss" or "cfs"
# "upds" is the recommended option for gaming # "pds" is the recommended option for gaming
_cpusched="" _cpusched=""
# CPU sched_yield_type - Choose what sort of yield sched_yield will perform # CPU sched_yield_type - Choose what sort of yield sched_yield will perform

View File

@ -33,10 +33,12 @@ _tkg_initscript() {
# CPU SCHED selector # CPU SCHED selector
if [ -z "$_cpusched" ] && [ ! -e "$_where"/cpuschedset ]; then if [ -z "$_cpusched" ] && [ ! -e "$_where"/cpuschedset ]; then
plain "What CPU sched variant do you want to build/install?" plain "What CPU sched variant do you want to build/install?"
read -rp "`echo $' > 1.Project C / PDS\n 2.Project C / BMQ\n 3.CFS\nchoice[1-3?]: '`" CONDITION; read -rp "`echo $' > 1.Project C / PDS\n 2.Project C / BMQ\n 3.MuQSS\n 4.CFS\nchoice[1-4?]: '`" CONDITION;
if [ "$CONDITION" = "2" ]; then if [ "$CONDITION" = "2" ]; then
echo "_cpusched=\"bmq\"" > "$_where"/cpuschedset echo "_cpusched=\"bmq\"" > "$_where"/cpuschedset
elif [ "$CONDITION" = "3" ]; then elif [ "$CONDITION" = "3" ]; then
echo "_cpusched=\"MuQSS\"" > "$_where"/cpuschedset
elif [ "$CONDITION" = "4" ]; then
echo "_cpusched=\"cfs\"" > "$_where"/cpuschedset echo "_cpusched=\"cfs\"" > "$_where"/cpuschedset
else else
echo "_cpusched=\"pds\"" > "$_where"/cpuschedset echo "_cpusched=\"pds\"" > "$_where"/cpuschedset
@ -44,6 +46,8 @@ _tkg_initscript() {
if [ -n "$_custom_pkgbase" ]; then if [ -n "$_custom_pkgbase" ]; then
echo "_custom_pkgbase=\"${_custom_pkgbase}\"" >> "$_where"/cpuschedset echo "_custom_pkgbase=\"${_custom_pkgbase}\"" >> "$_where"/cpuschedset
fi fi
elif [ "$_cpusched" = "muqss" ] || [ "$_cpusched" = "MuQSS" ]; then
echo "_cpusched=\"MuQSS\"" > "$_where"/cpuschedset
elif [ "$_cpusched" = "pds" ]; then elif [ "$_cpusched" = "pds" ]; then
echo "_cpusched=\"pds\"" > "$_where"/cpuschedset echo "_cpusched=\"pds\"" > "$_where"/cpuschedset
elif [ "$_cpusched" = "cfs" ]; then elif [ "$_cpusched" = "cfs" ]; then
@ -974,7 +978,7 @@ exit_cleanup() {
rm -f "$srcdir"/linux-${_basekernel}/lib/sradix-tree.c rm -f "$srcdir"/linux-${_basekernel}/lib/sradix-tree.c
rm -f "$srcdir"/linux-${_basekernel}/mm/uksm.c rm -f "$srcdir"/linux-${_basekernel}/mm/uksm.c
fi fi
remove_deps remove_deps
fi fi

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,78 @@
From f7f49141a5dbe9c99d78196b58c44307fb2e6be3 Mon Sep 17 00:00:00 2001
From: Tk-Glitch <ti3nou@gmail.com>
Date: Wed, 4 Jul 2018 04:30:08 +0200
Subject: glitched - MuQSS
diff --git a/kernel/sched/MuQSS.c b/kernel/sched/MuQSS.c
index 84a1d08d68551..57c3036a68952 100644
--- a/kernel/sched/MuQSS.c
+++ b/kernel/sched/MuQSS.c
@@ -163,7 +167,11 @@ int sched_interactive __read_mostly = 1;
* are allowed to run five seconds as real time tasks. This is the total over
* all online cpus.
*/
+#ifdef CONFIG_ZENIFY
+int sched_iso_cpu __read_mostly = 25;
+#else
int sched_iso_cpu __read_mostly = 70;
+#endif
/*
* sched_yield_type - Choose what sort of yield sched_yield will perform.
diff --git a/kernel/Kconfig.hz b/kernel/Kconfig.hz
index 2a202a846757..1d9c7ed79b11 100644
--- a/kernel/Kconfig.hz
+++ b/kernel/Kconfig.hz
@@ -5,7 +5,7 @@
choice
prompt "Timer frequency"
default HZ_100 if SCHED_MUQSS
- default HZ_250_NODEF if !SCHED_MUQSS
+ default HZ_500_NODEF if !SCHED_MUQSS
help
Allows the configuration of the timer frequency. It is customary
to have the timer interrupt run at 1000 Hz but 100 Hz may be more
@@ -50,6 +50,20 @@ choice
on SMP and NUMA systems and exactly dividing by both PAL and
NTSC frame rates for video and multimedia work.
+ config HZ_500_NODEF
+ bool "500 HZ"
+ help
+ 500 Hz is a good timer frequency for desktops. Provides fast
+ interactivity with great smoothness without sacrificing too
+ much throughput.
+
+ config HZ_750_NODEF
+ bool "750 HZ"
+ help
+ 750 Hz is a good timer frequency for desktops. Provides fast
+ interactivity with great smoothness without sacrificing too
+ much throughput.
+
config HZ_1000_NODEF
bool "1000 HZ"
help
@@ -63,6 +70,8 @@ config HZ
default 100 if HZ_100
default 250 if HZ_250_NODEF
default 300 if HZ_300_NODEF
+ default 500 if HZ_500_NODEF
+ default 750 if HZ_750_NODEF
default 1000 if HZ_1000_NODEF
config SCHED_HRTICK
diff --git a/Makefile b/Makefile
index d4d36c61940b..4a9dfe471f1f 100644
--- a/Makefile
+++ b/Makefile
@@ -15,7 +15,6 @@ NAME = Kleptomaniac Octopus
CKVERSION = -ck1
CKNAME = MuQSS Powered
-EXTRAVERSION := $(EXTRAVERSION)$(CKVERSION)
# We are using a recursive build, so we need to do a little thinking
# to get the ordering right.

View File

@ -0,0 +1,18 @@
diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
index 6b423eebfd5d..61e3271675d6 100644
--- a/drivers/cpufreq/cpufreq_ondemand.c
+++ b/drivers/cpufreq/cpufreq_ondemand.c
@@ -21,10 +21,10 @@
#include "cpufreq_ondemand.h"
/* On-demand governor macros */
-#define DEF_FREQUENCY_UP_THRESHOLD (80)
-#define DEF_SAMPLING_DOWN_FACTOR (1)
+#define DEF_FREQUENCY_UP_THRESHOLD (45)
+#define DEF_SAMPLING_DOWN_FACTOR (5)
#define MAX_SAMPLING_DOWN_FACTOR (100000)
-#define MICRO_FREQUENCY_UP_THRESHOLD (95)
+#define MICRO_FREQUENCY_UP_THRESHOLD (45)
#define MICRO_FREQUENCY_MIN_SAMPLE_RATE (10000)
#define MIN_FREQUENCY_UP_THRESHOLD (1)
#define MAX_FREQUENCY_UP_THRESHOLD (100)