]> git.baikalelectronics.ru Git - kernel.git/commit
torture: Address race in module cleanup
authorDavidlohr Bueso <dave@stgolabs.net>
Fri, 12 Sep 2014 03:40:21 +0000 (20:40 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 16 Sep 2014 20:41:06 +0000 (13:41 -0700)
commitb066b01000c717942386013fff302e968a71546e
tree17cbd1c2542a4b587890a593446757606a4a7834
parentdfc8dabfc6a2bc9ab542eee870250af8edd11ea7
torture: Address race in module cleanup

When performing module cleanups by calling torture_cleanup() the
'torture_type' string in nullified However, callers are not necessarily
done, and might still need to reference the variable. This impacts
both rcutorture and locktorture, causing printing things like:

[   94.226618] (null)-torture: Stopping lock_torture_writer task
[   94.226624] (null)-torture: Stopping lock_torture_stats task

Thus delay this operation until the very end of the cleanup process.
The consequence (which shouldn't matter for this kid of program) is,
of course, that we delay the window between rmmod and modprobing,
for instance in module_torture_begin().

Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
include/linux/torture.h
kernel/locking/locktorture.c
kernel/rcu/rcutorture.c
kernel/torture.c