diff --git a/[refs] b/[refs] index 2491f74fce9d..ad425ef7fef4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 143aa672f4fc643420c8325ad09c379ed33a27cf +refs/heads/master: 72472a02a9c4507ef54d03d71bb253c26015f52c diff --git a/trunk/kernel/rcutorture.c b/trunk/kernel/rcutorture.c index 045a3dc233ea..c279ee920947 100644 --- a/trunk/kernel/rcutorture.c +++ b/trunk/kernel/rcutorture.c @@ -1025,7 +1025,11 @@ rcu_torture_fakewriter(void *arg) do { schedule_timeout_uninterruptible(1 + rcu_random(&rand)%10); udelay(rcu_random(&rand) & 0x3ff); - cur_ops->sync(); + if (cur_ops->cb_barrier != NULL && + rcu_random(&rand) % (nfakewriters * 8) == 0) + cur_ops->cb_barrier(); + else + cur_ops->sync(); rcu_stutter_wait("rcu_torture_fakewriter"); } while (!kthread_should_stop() && fullstop == FULLSTOP_DONTSTOP);