mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
tests: validate CONFIG_HZ_1000
If we plan to use dm throttling for mirror targets - we actually have to check whether kernel runs with CONFIG_HZ_1000 - if it does not the whole idea of throttling is actually not working in the testsuite as within a single 'tick' with HZ 100 way too much date is being moved on any modern hardware - and since there is no plan to change this in kernel - we simply avoid using throttling on such kernel and test needs to work differently - either ignore results or use much larger mirror sizes...
This commit is contained in:
parent
96f303eb08
commit
3a7aeebf7d
@ -1206,6 +1206,16 @@ remove_dm_devs() {
|
||||
# Throttle down performance of kcopyd when mirroring i.e. disk image
|
||||
throttle_sys="/sys/module/dm_mirror/parameters/raid1_resync_throttle"
|
||||
throttle_dm_mirror() {
|
||||
# if the kernel config file is present, validate whether the kernel uses HZ_1000
|
||||
# and return failure for this 'throttling' when it does NOT as without this setting
|
||||
# whole throttling is pointless on modern hardware
|
||||
local kconfig="/boot/config-$(uname -r)"
|
||||
if test -e "$kconfig" ; then
|
||||
grep -q "CONFIG_HZ_1000=y" "$kconfig" 2>/dev/null || {
|
||||
echo "WARNING: CONFIG_HZ_1000=y is NOT set in $kconfig -> throttling is unusable"
|
||||
return 1
|
||||
}
|
||||
fi
|
||||
test -e "$throttle_sys" || return
|
||||
test -f THROTTLE || cat "$throttle_sys" > THROTTLE
|
||||
echo ${1-1} > "$throttle_sys"
|
||||
|
Loading…
Reference in New Issue
Block a user