Skip to content

Commit 30639bf

Browse files
paulmckrcuFrederic Weisbecker
authored andcommitted
torture: Add kvm.sh --debug-info argument
This commit adds a --debug-info argument to kvm.sh in order to ease interpretation of addresses printed on the console and the like. This argument also disables KASLR. Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
1 parent 2273799 commit 30639bf

File tree

1 file changed

+14
-3
lines changed
  • tools/testing/selftests/rcutorture/bin

1 file changed

+14
-3
lines changed

tools/testing/selftests/rcutorture/bin/kvm.sh

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ TORTURE_SHUTDOWN_GRACE=180
4949
TORTURE_SUITE=rcu
5050
TORTURE_MOD=rcutorture
5151
TORTURE_TRUST_MAKE=""
52+
debuginfo="CONFIG_DEBUG_INFO_NONE=n CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y"
5253
resdir=""
5354
configs=""
5455
cpus=0
@@ -68,6 +69,7 @@ usage () {
6869
echo " --cpus N"
6970
echo " --datestamp string"
7071
echo " --defconfig string"
72+
echo " --debug-info"
7173
echo " --dryrun batches|scenarios|sched|script"
7274
echo " --duration minutes | <seconds>s | <hours>h | <days>d"
7375
echo " --gdb"
@@ -135,6 +137,15 @@ do
135137
ds=$2
136138
shift
137139
;;
140+
--debug-info|--debuginfo)
141+
if test -z "$TORTURE_KCONFIG_KCSAN_ARG" && test -z "$TORTURE_BOOT_GDB_ARG"
142+
then
143+
TORTURE_KCONFIG_KCSAN_ARG="$debuginfo"; export TORTURE_KCONFIG_KCSAN_ARG
144+
TORTURE_BOOT_GDB_ARG="nokaslr"; export TORTURE_BOOT_GDB_ARG
145+
else
146+
echo "Ignored redundant --debug-info (implied by --kcsan &c)"
147+
fi
148+
;;
138149
--defconfig)
139150
checkarg --defconfig "defconfigtype" "$#" "$2" '^[^/][^/]*$' '^--'
140151
TORTURE_DEFCONFIG=$2
@@ -163,7 +174,7 @@ do
163174
shift
164175
;;
165176
--gdb)
166-
TORTURE_KCONFIG_GDB_ARG="CONFIG_DEBUG_INFO_NONE=n CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y"; export TORTURE_KCONFIG_GDB_ARG
177+
TORTURE_KCONFIG_GDB_ARG="$debuginfo"; export TORTURE_KCONFIG_GDB_ARG
167178
TORTURE_BOOT_GDB_ARG="nokaslr"; export TORTURE_BOOT_GDB_ARG
168179
TORTURE_QEMU_GDB_ARG="-s -S"; export TORTURE_QEMU_GDB_ARG
169180
;;
@@ -179,7 +190,7 @@ do
179190
shift
180191
;;
181192
--kasan)
182-
TORTURE_KCONFIG_KASAN_ARG="CONFIG_DEBUG_INFO_NONE=n CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y CONFIG_KASAN=y"; export TORTURE_KCONFIG_KASAN_ARG
193+
TORTURE_KCONFIG_KASAN_ARG="$debuginfo CONFIG_KASAN=y"; export TORTURE_KCONFIG_KASAN_ARG
183194
if test -n "$torture_qemu_mem_default"
184195
then
185196
TORTURE_QEMU_MEM=2G
@@ -191,7 +202,7 @@ do
191202
shift
192203
;;
193204
--kcsan)
194-
TORTURE_KCONFIG_KCSAN_ARG="CONFIG_DEBUG_INFO_NONE=n CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y CONFIG_KCSAN=y CONFIG_KCSAN_STRICT=y CONFIG_KCSAN_REPORT_ONCE_IN_MS=100000 CONFIG_KCSAN_VERBOSE=y CONFIG_DEBUG_LOCK_ALLOC=y CONFIG_PROVE_LOCKING=y"; export TORTURE_KCONFIG_KCSAN_ARG
205+
TORTURE_KCONFIG_KCSAN_ARG="$debuginfo CONFIG_KCSAN=y CONFIG_KCSAN_STRICT=y CONFIG_KCSAN_REPORT_ONCE_IN_MS=100000 CONFIG_KCSAN_VERBOSE=y CONFIG_DEBUG_LOCK_ALLOC=y CONFIG_PROVE_LOCKING=y"; export TORTURE_KCONFIG_KCSAN_ARG
195206
;;
196207
--kmake-arg|--kmake-args)
197208
checkarg --kmake-arg "(kernel make arguments)" $# "$2" '.*' '^error$'

0 commit comments

Comments
 (0)