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:
Tk-Glitch
2020-07-04 23:17:53 +02:00
parent 9a20348e26
commit 83f4de41b4
4 changed files with 394 additions and 321 deletions

View File

@@ -43,8 +43,8 @@ _tkg_srcprep() {
fi
patch -Np1 -i ../0005-glitched-pds.patch
elif [ "${_cpusched}" == "bmq" ]; then
# BMQ
patch -Np1 -i ../0009-bmq_v5.7-r1.patch
# Project C / BMQ
patch -Np1 -i ../0009-prjc_v5.7-r2.patch
if [ "${_aggressive_ondemand}" == "true" ]; then
patch -Np1 -i ../0009-glitched-ondemand-bmq.patch
fi
@@ -134,7 +134,7 @@ _tkg_srcprep() {
echo "CONFIG_SCHED_PDS=y" >> ./.config
elif [ "${_cpusched}" == "bmq" ]; then
# BMQ default config
echo "CONFIG_SCHED_BMQ=y" >> ./.config
echo "CONFIG_SCHED_ALT=y" >> ./.config
fi
if [ "${_cpusched}" == "MuQSS" ] || [ "${_cpusched}" == "pds" ] || [ "${_cpusched}" == "bmq" ]; then
@@ -164,14 +164,24 @@ _tkg_srcprep() {
fi
fi
if [ "$CONDITION0" == "0" ]; then
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/"${_cpusched}".c
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
fi
elif [ "$CONDITION0" == "1" ]; then
msg2 "Using default CPU sched yield type (1)"
elif [ "$CONDITION0" == "2" ]; then
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 2;/' ./kernel/sched/"${_cpusched}".c
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
fi
else
if [ "${_cpusched}" == "MuQSS" ]; then
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
sed -i -e 's/int sched_yield_type __read_mostly = 1;/int sched_yield_type __read_mostly = 0;/' ./kernel/sched/"${_cpusched}".c
fi
@@ -216,11 +226,11 @@ _tkg_srcprep() {
elif [ "${_cpusched}" == "pds" ]; then
sed -i -e "s/#define SCHED_DEFAULT_RR (4)/#define SCHED_DEFAULT_RR (${_rrvalue})/" ./kernel/sched/"${_cpusched}".c
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
else
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