linux_dsm_epyc7002/tools/testing/selftests
Paul E. McKenney ca1d51ed98 rcutorture: Test SRCU cleanup code path
The current rcutorture testing does not do any cleanup operations.
This works because the srcu_struct is statically allocated, but it
does represent a memory leak of the associated dynamically allocated
->per_cpu_ref per-CPU variables.  However, rcutorture currently uses
a statically allocated srcu_struct, which cannot legally be passed to
cleanup_srcu_struct().  Therefore, this commit adds a second form
of srcu (called srcud) that dynamically allocates and frees the
associated per-CPU variables.  This commit also adds a ->cleanup()
member to rcu_torture_ops that is invoked at the end of the test,
after ->cb_barriers().  This ->cleanup() pointer is NULL for all
existing tests, and thus only used for scrud.  Finally, the SRCU-P
torture-test configuration selects scrud instead of srcu, with SRCU-N
continuing to use srcu, thereby testing both static and dynamic
srcu_struct structures.

Reported-by: "Ahmed, Iftekhar" <ahmedi@onid.oregonstate.edu>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
2015-05-27 12:59:58 -07:00
..
breakpoints selftests: Introduce minimal shared logic for running tests 2015-03-13 15:13:40 -06:00
cpu-hotplug selftests: change cpu on-off-test.sh name to be unique 2015-04-01 10:32:52 -06:00
efivarfs selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
exec linux-kselftest-4.1-rc1 2015-04-13 08:59:21 -07:00
firmware selftests: Introduce minimal shared logic for running tests 2015-03-13 15:13:40 -06:00
ftrace ftracetest: Do not use usleep directly 2015-04-03 09:16:32 -06:00
ipc selftest/ipc: enable cross compilation 2015-04-02 12:41:52 -06:00
kcmp selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
memfd selftest/memfd: include default header install path 2015-04-02 12:41:03 -06:00
memory-hotplug selftests: Change memory on-off-test.sh name to be unique 2015-04-01 10:33:02 -06:00
mount selftest/mount: enable cross compilation 2015-04-02 12:40:48 -06:00
mqueue selftest/mqueue: enable cross compilation 2015-04-02 12:41:58 -06:00
net selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
powerpc selftests/powerpc: Fix the pmu install rule 2015-05-01 13:00:26 +10:00
ptrace selftests: Introduce minimal shared logic for running tests 2015-03-13 15:13:40 -06:00
rcutorture rcutorture: Test SRCU cleanup code path 2015-05-27 12:59:58 -07:00
size selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
sysctl selftests: Add install target 2015-03-13 15:21:56 -06:00
timers kselftests: timers: Make set-timer-lat fail more gracefully for !CAP_WAKE_ALARM 2015-04-02 10:32:33 -06:00
user selftests: Introduce minimal shared logic for running tests 2015-03-13 15:13:40 -06:00
vm mm, selftests: test return value of munmap for MAP_HUGETLB memory 2015-04-15 16:35:19 -07:00
x86 x86, selftests: Add single_step_syscall test 2015-04-16 12:41:49 +02:00
gen_kselftest_tar.sh selftests: Add tool to generate kselftest tar archive 2015-03-24 08:43:19 -06:00
kselftest_install.sh selftests: Add kselftest install tool 2015-03-24 08:43:05 -06:00
kselftest.h selftests: add kselftest framework for uniform test reporting 2014-11-17 10:38:56 -07:00
lib.mk selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
Makefile Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-04-13 13:16:36 -07:00