make[1]: Entering directory `/home/compudj/doc/userspace-rcu/formal-model/urcu/testmerge' rm -f pan* trail.out .input.spin* *.spin.trail .input.define touch .input.define cat .input.define >> pan.ltl cat DEFINES >> pan.ltl spin -f "!(`cat urcu_free.ltl | grep -v ^//`)" >> pan.ltl cat .input.define > .input.spin cat DEFINES >> .input.spin cat urcu.spin >> .input.spin rm -f .input.spin.trail spin -a -X -N pan.ltl .input.spin Exit-Status 0 gcc -w -DHASH64 -o pan pan.c ./pan -a -v -c1 -X -m10000000 -w20 warning: for p.o. reduction to be valid the never claim must be stutter-invariant (never claims generated from LTL formulae are stutter-invariant) depth 0: Claim reached state 5 (line 566) Depth= 4234 States= 1e+06 Transitions= 1.7e+07 Memory= 527.287 t= 31.3 R= 3e+04 Depth= 4234 States= 2e+06 Transitions= 3.44e+07 Memory= 588.322 t= 63.9 R= 3e+04 Depth= 4234 States= 3e+06 Transitions= 5.2e+07 Memory= 649.358 t= 97 R= 3e+04 pan: resizing hashtable to -w22.. done Depth= 4234 States= 4e+06 Transitions= 6.97e+07 Memory= 741.416 t= 130 R= 3e+04 (Spin Version 5.1.7 -- 23 December 2008) + Partial Order Reduction Full statespace search for: never claim + assertion violations + (if within scope of claim) acceptance cycles + (fairness disabled) invalid end states - (disabled by never claim) State-vector 56 byte, depth reached 4234, errors: 0 4027146 states, stored 66145121 states, matched 70172267 transitions (= stored+matched) 2.6437688e+08 atomic steps hash conflicts: 47318190 (resolved) Stats on memory usage (in Megabytes): 322.609 equivalent memory usage for states (stored*(State-vector + overhead)) 253.418 actual memory usage for states (compression: 78.55%) state-vector as stored = 38 byte + 28 byte overhead 32.000 memory used for hash table (-w22) 457.764 memory used for DFS stack (-m10000000) 743.076 total actual memory usage unreached in proctype urcu_reader line 288, "pan.___", state 16, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 48, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 61, "(1)" line 307, "pan.___", state 91, "(1)" line 288, "pan.___", state 104, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 136, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 149, "(1)" line 307, "pan.___", state 179, "(1)" line 288, "pan.___", state 193, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 225, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 238, "(1)" line 307, "pan.___", state 268, "(1)" line 158, "pan.___", state 289, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 158, "pan.___", state 291, "(1)" line 162, "pan.___", state 298, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 162, "pan.___", state 300, "(1)" line 162, "pan.___", state 301, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 162, "pan.___", state 301, "else" line 160, "pan.___", state 306, "((j<1))" line 160, "pan.___", state 306, "((j>=1))" line 166, "pan.___", state 311, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 143, "pan.___", state 321, "(1)" line 147, "pan.___", state 329, "(1)" line 147, "pan.___", state 330, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 147, "pan.___", state 330, "else" line 145, "pan.___", state 335, "((j<1))" line 145, "pan.___", state 335, "((j>=1))" line 151, "pan.___", state 341, "(1)" line 151, "pan.___", state 342, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 151, "pan.___", state 342, "else" line 153, "pan.___", state 345, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 153, "pan.___", state 345, "else" line 185, "pan.___", state 347, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 185, "pan.___", state 347, "else" line 158, "pan.___", state 352, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 166, "pan.___", state 374, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<=1))" line 151, "pan.___", state 404, "(1)" line 151, "pan.___", state 405, "(!((cache_dirty_generation_ptr.bitfield&(1<=1))" line 158, "pan.___", state 419, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 158, "pan.___", state 421, "(1)" line 162, "pan.___", state 428, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 162, "pan.___", state 430, "(1)" line 162, "pan.___", state 431, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 162, "pan.___", state 431, "else" line 160, "pan.___", state 436, "((j<1))" line 160, "pan.___", state 436, "((j>=1))" line 166, "pan.___", state 441, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 143, "pan.___", state 451, "(1)" line 147, "pan.___", state 459, "(1)" line 147, "pan.___", state 460, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 147, "pan.___", state 460, "else" line 145, "pan.___", state 465, "((j<1))" line 145, "pan.___", state 465, "((j>=1))" line 151, "pan.___", state 471, "(1)" line 151, "pan.___", state 472, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 151, "pan.___", state 472, "else" line 153, "pan.___", state 475, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 153, "pan.___", state 475, "else" line 185, "pan.___", state 477, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 185, "pan.___", state 477, "else" line 288, "pan.___", state 492, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 524, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 537, "(1)" line 307, "pan.___", state 567, "(1)" line 288, "pan.___", state 580, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 612, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 625, "(1)" line 307, "pan.___", state 655, "(1)" line 288, "pan.___", state 668, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 700, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 713, "(1)" line 307, "pan.___", state 743, "(1)" line 158, "pan.___", state 758, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 158, "pan.___", state 760, "(1)" line 162, "pan.___", state 767, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 162, "pan.___", state 769, "(1)" line 162, "pan.___", state 770, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 162, "pan.___", state 770, "else" line 160, "pan.___", state 775, "((j<1))" line 160, "pan.___", state 775, "((j>=1))" line 166, "pan.___", state 780, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 143, "pan.___", state 790, "(1)" line 147, "pan.___", state 798, "(1)" line 147, "pan.___", state 799, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 147, "pan.___", state 799, "else" line 145, "pan.___", state 804, "((j<1))" line 145, "pan.___", state 804, "((j>=1))" line 151, "pan.___", state 810, "(1)" line 151, "pan.___", state 811, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 151, "pan.___", state 811, "else" line 153, "pan.___", state 814, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 153, "pan.___", state 814, "else" line 185, "pan.___", state 816, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 185, "pan.___", state 816, "else" line 158, "pan.___", state 821, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 166, "pan.___", state 843, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<=1))" line 151, "pan.___", state 873, "(1)" line 151, "pan.___", state 874, "(!((cache_dirty_generation_ptr.bitfield&(1<=1))" line 158, "pan.___", state 888, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 158, "pan.___", state 890, "(1)" line 162, "pan.___", state 897, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 162, "pan.___", state 899, "(1)" line 162, "pan.___", state 900, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 162, "pan.___", state 900, "else" line 160, "pan.___", state 905, "((j<1))" line 160, "pan.___", state 905, "((j>=1))" line 166, "pan.___", state 910, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 143, "pan.___", state 920, "(1)" line 147, "pan.___", state 928, "(1)" line 147, "pan.___", state 929, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 147, "pan.___", state 929, "else" line 145, "pan.___", state 934, "((j<1))" line 145, "pan.___", state 934, "((j>=1))" line 151, "pan.___", state 940, "(1)" line 151, "pan.___", state 941, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 151, "pan.___", state 941, "else" line 153, "pan.___", state 944, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 153, "pan.___", state 944, "else" line 185, "pan.___", state 946, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 185, "pan.___", state 946, "else" line 288, "pan.___", state 956, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 988, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 1001, "(1)" line 307, "pan.___", state 1031, "(1)" line 288, "pan.___", state 1052, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 297, "pan.___", state 1084, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 1097, "(1)" line 307, "pan.___", state 1127, "(1)" line 433, "pan.___", state 1140, "-end-" (125 of 1140 states) unreached in proctype urcu_writer line 288, "pan.___", state 14, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 292, "pan.___", state 28, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 297, "pan.___", state 46, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 59, "(1)" line 302, "pan.___", state 72, "(1)" line 307, "pan.___", state 89, "(1)" line 288, "pan.___", state 106, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 292, "pan.___", state 120, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 298, "pan.___", state 151, "(1)" line 302, "pan.___", state 164, "(1)" line 467, "pan.___", state 195, "(1)" line 158, "pan.___", state 205, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 162, "pan.___", state 214, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 143, "pan.___", state 237, "(1)" line 147, "pan.___", state 245, "(1)" line 151, "pan.___", state 257, "(1)" line 158, "pan.___", state 268, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 297, "pan.___", state 910, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 923, "(1)" line 298, "pan.___", state 924, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 298, "pan.___", state 924, "else" line 298, "pan.___", state 927, "(1)" line 298, "pan.___", state 928, "(1)" line 298, "pan.___", state 928, "(1)" line 302, "pan.___", state 936, "(1)" line 302, "pan.___", state 937, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 302, "pan.___", state 937, "else" line 302, "pan.___", state 940, "(1)" line 302, "pan.___", state 941, "(1)" line 302, "pan.___", state 941, "(1)" line 300, "pan.___", state 946, "((i<1))" line 300, "pan.___", state 946, "((i>=1))" line 307, "pan.___", state 953, "(1)" line 307, "pan.___", state 954, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 307, "pan.___", state 954, "else" line 307, "pan.___", state 957, "(1)" line 307, "pan.___", state 958, "(1)" line 307, "pan.___", state 958, "(1)" line 309, "pan.___", state 961, "(1)" line 309, "pan.___", state 961, "(1)" line 292, "pan.___", state 990, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 297, "pan.___", state 1008, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 302, "pan.___", state 1034, "(1)" line 307, "pan.___", state 1051, "(1)" line 292, "pan.___", state 1078, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 297, "pan.___", state 1096, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 302, "pan.___", state 1122, "(1)" line 307, "pan.___", state 1139, "(1)" line 288, "pan.___", state 1156, "(1)" line 292, "pan.___", state 1168, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 297, "pan.___", state 1186, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 302, "pan.___", state 1212, "(1)" line 307, "pan.___", state 1229, "(1)" line 292, "pan.___", state 1259, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 297, "pan.___", state 1277, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 302, "pan.___", state 1303, "(1)" line 307, "pan.___", state 1320, "(1)" line 162, "pan.___", state 1342, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 166, "pan.___", state 1355, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 143, "pan.___", state 1365, "(1)" line 147, "pan.___", state 1373, "(1)" line 151, "pan.___", state 1385, "(1)" line 158, "pan.___", state 1396, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 297, "pan.___", state 1571, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 1584, "(1)" line 298, "pan.___", state 1585, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 298, "pan.___", state 1585, "else" line 298, "pan.___", state 1588, "(1)" line 298, "pan.___", state 1589, "(1)" line 298, "pan.___", state 1589, "(1)" line 302, "pan.___", state 1597, "(1)" line 302, "pan.___", state 1598, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 302, "pan.___", state 1598, "else" line 302, "pan.___", state 1601, "(1)" line 302, "pan.___", state 1602, "(1)" line 302, "pan.___", state 1602, "(1)" line 300, "pan.___", state 1607, "((i<1))" line 300, "pan.___", state 1607, "((i>=1))" line 307, "pan.___", state 1614, "(1)" line 307, "pan.___", state 1615, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 307, "pan.___", state 1615, "else" line 307, "pan.___", state 1618, "(1)" line 307, "pan.___", state 1619, "(1)" line 307, "pan.___", state 1619, "(1)" line 309, "pan.___", state 1622, "(1)" line 309, "pan.___", state 1622, "(1)" line 162, "pan.___", state 1646, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 166, "pan.___", state 1659, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 143, "pan.___", state 1669, "(1)" line 147, "pan.___", state 1677, "(1)" line 151, "pan.___", state 1689, "(1)" line 158, "pan.___", state 1700, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<