C C-ISA2-6+o-sync-o+o-sync-o+o-sync-o+rl-o-o-rul+rl-o-o-rul+rl-o-o-rul.litmus { } P0(int *a, int *b) { WRITE_ONCE(*a, 1); synchronize_rcu(); WRITE_ONCE(*b, 1); } P1(int *b, int *c) { r1 = READ_ONCE(*b); synchronize_rcu(); WRITE_ONCE(*c, 1); } P2(int *c, int *d) { r2 = READ_ONCE(*c); synchronize_rcu(); WRITE_ONCE(*d, 1); } P3(int *d, int *e) { rcu_read_lock(); r3 = READ_ONCE(*d); WRITE_ONCE(*e, 1); rcu_read_unlock(); } P4(int *e, int *f) { rcu_read_lock(); r4 = READ_ONCE(*e); WRITE_ONCE(*f, 1); rcu_read_unlock(); } P5(int *f, int *a) { rcu_read_lock(); r5 = READ_ONCE(*f); r6 = READ_ONCE(*a); rcu_read_unlock(); } exists (1:r1=1 /\ 2:r2=1 /\ 3:r3=1 /\ 4:r4=1 /\ 5:r5=1 /\ 5:r6=0)