• Paul E. McKenney's avatar
    rcutorture: Fix rcutorture shutdown races · 7fafaac5
    Paul E. McKenney authored
    Not all of the rcutorture kthreads waited for kthread_should_stop()
    before returning from their top-level functions, and none of them
    used torture_shutdown_absorb() properly.  These problems can result in
    segfaults and hangs at shutdown time, and some recent changes perturbed
    timing sufficiently to make them much more probable.  This commit
    therefore creates a torture_kthread_stopping() function that does the
    proper kthread shutdown dance in one centralized location.
    
    Accommodate this grouping by making VERBOSE_TOROUT_STRING() capable of
    taking a non-const string as its argument, which allows the new
    torture_kthread_stopping() to pass its "title" argument directly to
    the updated version of VERBOSE_TOROUT_STRING().
    Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
    7fafaac5
torture.c 19.3 KB