linux57-tkg: Update BMQ to Project C v5.7-r2
http://cchalpha.blogspot.com/2020/06/project-c-v575-r2-release.html ( + hotfix - https://gitlab.com/alfredchen/projectc/-/issues/18 )
This commit is contained in:
parent
9a20348e26
commit
83f4de41b4
@ -54,7 +54,7 @@ fi
|
|||||||
# 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.PDS\n 2.MuQSS\n 3.BMQ\n 4.CFS\nchoice[1-4?]: '`" CONDITION;
|
read -rp "`echo $' > 1.PDS\n 2.MuQSS\n 3.Project C / BMQ\n 4.CFS\nchoice[1-4?]: '`" CONDITION;
|
||||||
if [ "$CONDITION" == "2" ]; then
|
if [ "$CONDITION" == "2" ]; then
|
||||||
echo "_cpusched=\"MuQSS\"" > "$_where"/cpuschedset
|
echo "_cpusched=\"MuQSS\"" > "$_where"/cpuschedset
|
||||||
elif [ "$CONDITION" == "3" ]; then
|
elif [ "$CONDITION" == "3" ]; then
|
||||||
@ -89,7 +89,7 @@ pkgname=("${pkgbase}" "${pkgbase}-headers")
|
|||||||
_basekernel=5.7
|
_basekernel=5.7
|
||||||
_sub=7
|
_sub=7
|
||||||
pkgver="${_basekernel}"."${_sub}"
|
pkgver="${_basekernel}"."${_sub}"
|
||||||
pkgrel=15
|
pkgrel=16
|
||||||
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/"
|
||||||
@ -121,7 +121,7 @@ source=("https://www.kernel.org/pub/linux/kernel/v5.x/linux-${_basekernel}.tar.x
|
|||||||
0008-5.7-bcachefs.patch
|
0008-5.7-bcachefs.patch
|
||||||
0009-glitched-ondemand-bmq.patch
|
0009-glitched-ondemand-bmq.patch
|
||||||
0009-glitched-bmq.patch
|
0009-glitched-bmq.patch
|
||||||
0009-bmq_v5.7-r1.patch
|
0009-prjc_v5.7-r2.patch
|
||||||
0011-ZFS-fix.patch
|
0011-ZFS-fix.patch
|
||||||
#0012-linux-hardened.patch
|
#0012-linux-hardened.patch
|
||||||
)
|
)
|
||||||
@ -146,7 +146,7 @@ sha256sums=('de8163bb62f822d84f7a3983574ec460060bf013a78ff79cd7c979ff1ec1d7e0'
|
|||||||
'b89d5c0e242ab2515211bf02de3098df9c0a51fe36a679817f9cb15e2e5e2b8b'
|
'b89d5c0e242ab2515211bf02de3098df9c0a51fe36a679817f9cb15e2e5e2b8b'
|
||||||
'9fad4a40449e09522899955762c8928ae17f4cdaa16e01239fd12592e9d58177'
|
'9fad4a40449e09522899955762c8928ae17f4cdaa16e01239fd12592e9d58177'
|
||||||
'965a517a283f265a012545fbb5cc9e516efc9f6166d2aa1baf7293a32a1086b7'
|
'965a517a283f265a012545fbb5cc9e516efc9f6166d2aa1baf7293a32a1086b7'
|
||||||
'72eaeaed0749b5853b28678869e69a08883e4b0b4894eb4c8c6958e7de692638'
|
'eb6697a5b1fb4e103c5725dc209b8f25a4e0f70a37ea147f91d1b15e360a66b4'
|
||||||
'49262ce4a8089fa70275aad742fc914baa28d9c384f710c9a62f64796d13e104')
|
'49262ce4a8089fa70275aad742fc914baa28d9c384f710c9a62f64796d13e104')
|
||||||
|
|
||||||
export KBUILD_BUILD_HOST=archlinux
|
export KBUILD_BUILD_HOST=archlinux
|
||||||
@ -420,8 +420,9 @@ function exit_cleanup {
|
|||||||
rm -f "$srcdir"/linux-${_basekernel}/kernel/sched/pds_sched.h
|
rm -f "$srcdir"/linux-${_basekernel}/kernel/sched/pds_sched.h
|
||||||
|
|
||||||
rm -f "$srcdir"/linux-${_basekernel}/Documentation/scheduler/sched-BMQ.txt
|
rm -f "$srcdir"/linux-${_basekernel}/Documentation/scheduler/sched-BMQ.txt
|
||||||
rm -f "$srcdir"/linux-${_basekernel}/kernel/sched/bmq.c
|
rm -f "$srcdir"/linux-${_basekernel}/kernel/sched/alt_core.c
|
||||||
rm -f "$srcdir"/linux-${_basekernel}/kernel/sched/bmq_sched.h
|
rm -f "$srcdir"/linux-${_basekernel}/kernel/sched/sched/alt_debug.c
|
||||||
|
rm -f "$srcdir"/linux-${_basekernel}/kernel/sched/alt_sched.h
|
||||||
|
|
||||||
rm -f "$srcdir"/linux-${_basekernel}/Documentation/scheduler/sched-BFS.txt
|
rm -f "$srcdir"/linux-${_basekernel}/Documentation/scheduler/sched-BFS.txt
|
||||||
rm -f "$srcdir"/linux-${_basekernel}/Documentation/scheduler/sched-MuQSS.txt
|
rm -f "$srcdir"/linux-${_basekernel}/Documentation/scheduler/sched-MuQSS.txt
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
**Due to intel_pstate poor performances as of late, I have decided to set it to passive mode to make use of the acpi_cpufreq governors passthrough, keeping full support for turbo frequencies.**
|
**Due to intel_pstate poor performances as of late, I have decided to set it to passive mode to make use of the acpi_cpufreq governors passthrough, keeping full support for turbo frequencies.**
|
||||||
|
|
||||||
A custom Linux kernel 5.7.y with specific PDS and BMQ CPU schedulers related patchsets selector (stock CFS is also an option) and added tweaks for a nice interactivity/performance balance, aiming for the best gaming experience.
|
A custom Linux kernel 5.7.y with specific PDS, MuQSS and Project C / BMQ CPU schedulers related patchsets selector (stock CFS is also an option) and added tweaks for a nice interactivity/performance balance, aiming for the best gaming experience.
|
||||||
|
|
||||||
Various personalization options available and userpatches support (put your own patches in the same dir as the PKGBUILD, with the ".mypatch" extension.
|
Various personalization options available and userpatches support (put your own patches in the same dir as the PKGBUILD, with the ".mypatch" extension.
|
||||||
|
|
||||||
BMQ : http://cchalpha.blogspot.com/
|
MuQSS : http://ck-hack.blogspot.com/
|
||||||
|
|
||||||
|
Project C / BMQ : http://cchalpha.blogspot.com/
|
||||||
|
|
||||||
PDS-mq was originally created by Alfred Chen : http://cchalpha.blogspot.com/
|
PDS-mq was originally created by Alfred Chen : http://cchalpha.blogspot.com/
|
||||||
|
|
||||||
|
@ -43,8 +43,8 @@ _tkg_srcprep() {
|
|||||||
fi
|
fi
|
||||||
patch -Np1 -i ../0005-glitched-pds.patch
|
patch -Np1 -i ../0005-glitched-pds.patch
|
||||||
elif [ "${_cpusched}" == "bmq" ]; then
|
elif [ "${_cpusched}" == "bmq" ]; then
|
||||||
# BMQ
|
# Project C / BMQ
|
||||||
patch -Np1 -i ../0009-bmq_v5.7-r1.patch
|
patch -Np1 -i ../0009-prjc_v5.7-r2.patch
|
||||||
if [ "${_aggressive_ondemand}" == "true" ]; then
|
if [ "${_aggressive_ondemand}" == "true" ]; then
|
||||||
patch -Np1 -i ../0009-glitched-ondemand-bmq.patch
|
patch -Np1 -i ../0009-glitched-ondemand-bmq.patch
|
||||||
fi
|
fi
|
||||||
@ -134,7 +134,7 @@ _tkg_srcprep() {
|
|||||||
echo "CONFIG_SCHED_PDS=y" >> ./.config
|
echo "CONFIG_SCHED_PDS=y" >> ./.config
|
||||||
elif [ "${_cpusched}" == "bmq" ]; then
|
elif [ "${_cpusched}" == "bmq" ]; then
|
||||||
# BMQ default config
|
# BMQ default config
|
||||||
echo "CONFIG_SCHED_BMQ=y" >> ./.config
|
echo "CONFIG_SCHED_ALT=y" >> ./.config
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${_cpusched}" == "MuQSS" ] || [ "${_cpusched}" == "pds" ] || [ "${_cpusched}" == "bmq" ]; then
|
if [ "${_cpusched}" == "MuQSS" ] || [ "${_cpusched}" == "pds" ] || [ "${_cpusched}" == "bmq" ]; then
|
||||||
@ -164,14 +164,24 @@ _tkg_srcprep() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "$CONDITION0" == "0" ]; then
|
if [ "$CONDITION0" == "0" ]; then
|
||||||
|
if [ "${_cpusched}" == "bmq" ]; then
|
||||||
|
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/alt_core.c
|
||||||
|
else
|
||||||
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/"${_cpusched}".c
|
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/"${_cpusched}".c
|
||||||
|
fi
|
||||||
elif [ "$CONDITION0" == "1" ]; then
|
elif [ "$CONDITION0" == "1" ]; then
|
||||||
msg2 "Using default CPU sched yield type (1)"
|
msg2 "Using default CPU sched yield type (1)"
|
||||||
elif [ "$CONDITION0" == "2" ]; then
|
elif [ "$CONDITION0" == "2" ]; then
|
||||||
|
if [ "${_cpusched}" == "bmq" ]; then
|
||||||
|
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 2;/' ./kernel/sched/alt_core.c
|
||||||
|
else
|
||||||
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 2;/' ./kernel/sched/"${_cpusched}".c
|
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 2;/' ./kernel/sched/"${_cpusched}".c
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
if [ "${_cpusched}" == "MuQSS" ]; then
|
if [ "${_cpusched}" == "MuQSS" ]; then
|
||||||
msg2 "Using default CPU sched yield type (1)"
|
msg2 "Using default CPU sched yield type (1)"
|
||||||
|
elif [ "${_cpusched}" == "bmq" ]; then
|
||||||
|
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/alt_core.c
|
||||||
else
|
else
|
||||||
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/"${_cpusched}".c
|
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/"${_cpusched}".c
|
||||||
fi
|
fi
|
||||||
@ -216,11 +226,11 @@ _tkg_srcprep() {
|
|||||||
elif [ "${_cpusched}" == "pds" ]; then
|
elif [ "${_cpusched}" == "pds" ]; then
|
||||||
sed -i -e "s/#define SCHED_DEFAULT_RR (4)/#define SCHED_DEFAULT_RR (${_rrvalue})/" ./kernel/sched/"${_cpusched}".c
|
sed -i -e "s/#define SCHED_DEFAULT_RR (4)/#define SCHED_DEFAULT_RR (${_rrvalue})/" ./kernel/sched/"${_cpusched}".c
|
||||||
elif [ "${_cpusched}" == "bmq" ]; then
|
elif [ "${_cpusched}" == "bmq" ]; then
|
||||||
sed -i -e "s/u64 sched_timeslice_ns __read_mostly = (4 * 1000 * 1000);/u64 sched_timeslice_ns __read_mostly = (${_rrvalue} * 1000 * 1000);/" ./kernel/sched/"${_cpusched}".c
|
sed -i -e "s/u64 sched_timeslice_ns __read_mostly = (4 * 1000 * 1000);/u64 sched_timeslice_ns __read_mostly = (${_rrvalue} * 1000 * 1000);/" ./kernel/sched/alt_core.c
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
if [ "${_cpusched}" == "bmq" ]; then
|
if [ "${_cpusched}" == "bmq" ]; then
|
||||||
sed -i -e "s/u64 sched_timeslice_ns __read_mostly = (4 * 1000 * 1000);/u64 sched_timeslice_ns __read_mostly = (2 * 1000 * 1000);/" ./kernel/sched/"${_cpusched}".c
|
sed -i -e "s/u64 sched_timeslice_ns __read_mostly = (4 * 1000 * 1000);/u64 sched_timeslice_ns __read_mostly = (2 * 1000 * 1000);/" ./kernel/sched/alt_core.c
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user