Merge pull request #392 from yarda/no-balance-cores-fix
cpu_partitioning: fixed no_balance_cores on newer kernels
This commit is contained in:
commit
61e6210fec
2 changed files with 3 additions and 37 deletions
|
|
@ -2,38 +2,6 @@
|
|||
|
||||
. /usr/lib/tuned/functions
|
||||
|
||||
no_balance_cpus_file=$STORAGE/no-balance-cpus.txt
|
||||
|
||||
change_sd_balance_bit()
|
||||
{
|
||||
local set_bit=$1
|
||||
local flags_cur=
|
||||
local file=
|
||||
local cpu=
|
||||
|
||||
for cpu in $(cat $no_balance_cpus_file); do
|
||||
for file in $(find /proc/sys/kernel/sched_domain/cpu$cpu -name flags -print); do
|
||||
flags_cur=$(cat $file)
|
||||
if [ $set_bit -eq 1 ]; then
|
||||
flags_cur=$((flags_cur | 0x1))
|
||||
else
|
||||
flags_cur=$((flags_cur & 0xfffe))
|
||||
fi
|
||||
echo $flags_cur > $file
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
disable_balance_domains()
|
||||
{
|
||||
change_sd_balance_bit 0
|
||||
}
|
||||
|
||||
enable_balance_domains()
|
||||
{
|
||||
change_sd_balance_bit 1
|
||||
}
|
||||
|
||||
start() {
|
||||
mkdir -p "${TUNED_tmpdir}/etc/systemd"
|
||||
mkdir -p "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev"
|
||||
|
|
@ -41,9 +9,6 @@ start() {
|
|||
cp 00-tuned-pre-udev.sh "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev/"
|
||||
setup_kvm_mod_low_latency
|
||||
disable_ksm
|
||||
|
||||
echo "$TUNED_no_balance_cores_expanded" | sed 's/,/ /g' > $no_balance_cpus_file
|
||||
disable_balance_domains
|
||||
return "$?"
|
||||
}
|
||||
|
||||
|
|
@ -53,7 +18,6 @@ stop() {
|
|||
teardown_kvm_mod_low_latency
|
||||
enable_ksm
|
||||
fi
|
||||
enable_balance_domains
|
||||
return "$?"
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -35,6 +35,8 @@ no_balance_cores_expanded=${f:cpulist_unpack:${no_balance_cores}}
|
|||
# Fail if isolated_cores contains CPUs which are not online
|
||||
assert2=${f:assertion:isolated_cores contains online CPU(s):${isolated_cores_expanded}:${isolated_cores_online_expanded}}
|
||||
|
||||
cmd_isolcpus=${f:regex_search_ternary:${no_balance_cores}:\s*[0-9]: isolcpus=${no_balance_cores}:}
|
||||
|
||||
[sysctl]
|
||||
kernel.hung_task_timeout_secs = 600
|
||||
kernel.nmi_watchdog = 0
|
||||
|
|
@ -66,4 +68,4 @@ priority=10
|
|||
initrd_remove_dir=True
|
||||
initrd_dst_img=tuned-initrd.img
|
||||
initrd_add_dir=${tmpdir}
|
||||
cmdline_cpu_part=+nohz=on nohz_full=${isolated_cores} rcu_nocbs=${isolated_cores} tuned.non_isolcpus=${not_isolated_cpumask} intel_pstate=disable nosoftlockup
|
||||
cmdline_cpu_part=+nohz=on${cmd_isolcpus} nohz_full=${isolated_cores} rcu_nocbs=${isolated_cores} tuned.non_isolcpus=${not_isolated_cpumask} intel_pstate=disable nosoftlockup
|
||||
|
|
|
|||
Loading…
Reference in a new issue