Test LISA3R3G

LISA LISA3R3G
(*
 * Result: Never
 *
 * Three RCU grace periods and three RCU read-side critical sections.
 * Cycle forbidden.
 *)
{
x0 = 0;
x1 = 0;
x2 = 0;
x3 = 0;
}
 P0                 | P1            | P2                 | P3                 ;
 f[rcu_read_lock]   | r[once] r1 x1 | f[rcu_read_lock]   | f[rcu_read_lock]   ;
 r[once] r2 x0      | f[sync]       | r[once] r2 x2      | r[once] r3 x3      ;
 w[once] x1 1       | f[sync]       | w[once] x3 1       | w[once] x0 1       ;
 f[rcu_read_unlock] | f[sync]       | f[rcu_read_unlock] | f[rcu_read_unlock] ;
                    | w[once] x2 1  |                    |                    ;
Observed
    3:r3=1; 2:r2=1; 1:r1=0; 0:r2=1;