mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
ca1d51ed98
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> |
||
---|---|---|
.. | ||
breakpoints | ||
cpu-hotplug | ||
efivarfs | ||
exec | ||
firmware | ||
ftrace | ||
ipc | ||
kcmp | ||
memfd | ||
memory-hotplug | ||
mount | ||
mqueue | ||
net | ||
powerpc | ||
ptrace | ||
rcutorture | ||
size | ||
sysctl | ||
timers | ||
user | ||
vm | ||
x86 | ||
gen_kselftest_tar.sh | ||
kselftest_install.sh | ||
kselftest.h | ||
lib.mk | ||
Makefile |