C C-LB+o-sync-o+rl-o-o-rul.litmus

{
}

P0(int *a, int *b)
{
	int r1;

	r1 = READ_ONCE(*a);
	synchronize_rcu();
	WRITE_ONCE(*b, 1);
}

P1(int *b, int *a)
{
	int r2;

	rcu_read_lock();
	r2 = READ_ONCE(*b);
	WRITE_ONCE(*a, 1);
	rcu_read_unlock();
}

exists
(0:r1=1 /\ 1:r2=1)
