Merge tag 'linux-kselftest-next-6.1-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
Pull more Kselftest updates from Shuah Khan: "This consists of fixes and improvements to memory-hotplug test and a minor spelling fix to ftrace test" * tag 'linux-kselftest-next-6.1-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: docs: notifier-error-inject: Correct test's name selftests/memory-hotplug: Adjust log info for maintainability selftests/memory-hotplug: Restore memory before exit selftests/memory-hotplug: Add checking after online or offline selftests/ftrace: func_event_triggers: fix typo in user message
This commit is contained in:
@@ -91,8 +91,8 @@ For more usage examples
|
|||||||
There are tools/testing/selftests using the notifier error injection features
|
There are tools/testing/selftests using the notifier error injection features
|
||||||
for CPU and memory notifiers.
|
for CPU and memory notifiers.
|
||||||
|
|
||||||
* tools/testing/selftests/cpu-hotplug/on-off-test.sh
|
* tools/testing/selftests/cpu-hotplug/cpu-on-off-test.sh
|
||||||
* tools/testing/selftests/memory-hotplug/on-off-test.sh
|
* tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
|
||||||
|
|
||||||
These scripts first do simple online and offline tests and then do fault
|
These scripts first do simple online and offline tests and then do fault
|
||||||
injection tests if notifier error injection module is available.
|
injection tests if notifier error injection module is available.
|
||||||
|
@@ -85,7 +85,7 @@ run_enable_disable() {
|
|||||||
echo $check_disable > $EVENT_ENABLE
|
echo $check_disable > $EVENT_ENABLE
|
||||||
done
|
done
|
||||||
sleep $SLEEP_TIME
|
sleep $SLEEP_TIME
|
||||||
echo " make sure it's still works"
|
echo " make sure it still works"
|
||||||
test_event_enabled $check_enable_star
|
test_event_enabled $check_enable_star
|
||||||
|
|
||||||
reset_ftrace_filter
|
reset_ftrace_filter
|
||||||
|
@@ -134,6 +134,16 @@ offline_memory_expect_fail()
|
|||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
online_all_offline_memory()
|
||||||
|
{
|
||||||
|
for memory in `hotpluggable_offline_memory`; do
|
||||||
|
if ! online_memory_expect_success $memory; then
|
||||||
|
echo "$FUNCNAME $memory: unexpected fail" >&2
|
||||||
|
retval=1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
error=-12
|
error=-12
|
||||||
priority=0
|
priority=0
|
||||||
# Run with default of ratio=2 for Kselftest run
|
# Run with default of ratio=2 for Kselftest run
|
||||||
@@ -197,8 +207,11 @@ echo -e "\t trying to offline $target out of $hotpluggable_num memory block(s):"
|
|||||||
for memory in `hotpluggable_online_memory`; do
|
for memory in `hotpluggable_online_memory`; do
|
||||||
if [ "$target" -gt 0 ]; then
|
if [ "$target" -gt 0 ]; then
|
||||||
echo "online->offline memory$memory"
|
echo "online->offline memory$memory"
|
||||||
if offline_memory_expect_success $memory; then
|
if offline_memory_expect_success $memory &>/dev/null; then
|
||||||
target=$(($target - 1))
|
target=$(($target - 1))
|
||||||
|
echo "-> Success"
|
||||||
|
else
|
||||||
|
echo "-> Failure"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@@ -257,7 +270,7 @@ prerequisite_extra
|
|||||||
echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
|
echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
|
||||||
for memory in `hotpluggable_online_memory`; do
|
for memory in `hotpluggable_online_memory`; do
|
||||||
if [ $((RANDOM % 100)) -lt $ratio ]; then
|
if [ $((RANDOM % 100)) -lt $ratio ]; then
|
||||||
offline_memory_expect_success $memory
|
offline_memory_expect_success $memory &>/dev/null
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
@@ -266,16 +279,16 @@ done
|
|||||||
#
|
#
|
||||||
echo $error > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_ONLINE/error
|
echo $error > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_ONLINE/error
|
||||||
for memory in `hotpluggable_offline_memory`; do
|
for memory in `hotpluggable_offline_memory`; do
|
||||||
online_memory_expect_fail $memory
|
if ! online_memory_expect_fail $memory; then
|
||||||
|
retval=1
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
#
|
#
|
||||||
# Online all hot-pluggable memory
|
# Online all hot-pluggable memory
|
||||||
#
|
#
|
||||||
echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_ONLINE/error
|
echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_ONLINE/error
|
||||||
for memory in `hotpluggable_offline_memory`; do
|
online_all_offline_memory
|
||||||
online_memory_expect_success $memory
|
|
||||||
done
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Test memory hot-remove error handling (online => offline)
|
# Test memory hot-remove error handling (online => offline)
|
||||||
@@ -283,11 +296,18 @@ done
|
|||||||
echo $error > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
|
echo $error > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
|
||||||
for memory in `hotpluggable_online_memory`; do
|
for memory in `hotpluggable_online_memory`; do
|
||||||
if [ $((RANDOM % 100)) -lt $ratio ]; then
|
if [ $((RANDOM % 100)) -lt $ratio ]; then
|
||||||
offline_memory_expect_fail $memory
|
if ! offline_memory_expect_fail $memory; then
|
||||||
|
retval=1
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
|
echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/MEM_GOING_OFFLINE/error
|
||||||
/sbin/modprobe -q -r memory-notifier-error-inject
|
/sbin/modprobe -q -r memory-notifier-error-inject
|
||||||
|
|
||||||
|
#
|
||||||
|
# Restore memory before exit
|
||||||
|
#
|
||||||
|
online_all_offline_memory
|
||||||
|
|
||||||
exit $retval
|
exit $retval
|
||||||
|
Reference in New Issue
Block a user