make[1]: Entering directory `/home/compudj/doc/userspace-rcu/formal-model/urcu' 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 -O2 -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 741) (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 10669, errors: 0 20146 states, stored 191615 states, matched 211761 transitions (= stored+matched) 712676 atomic steps hash conflicts: 1523 (resolved) Stats on memory usage (in Megabytes): 1.614 equivalent memory usage for states (stored*(State-vector + overhead)) 1.661 actual memory usage for states (unsuccessful compression: 102.92%) state-vector as stored = 58 byte + 28 byte overhead 8.000 memory used for hash table (-w20) 457.764 memory used for DFS stack (-m10000000) 467.326 total actual memory usage unreached in proctype urcu_reader_sig line 401, "pan.___", state 330, "(1)" line 612, "pan.___", state 411, "-end-" (2 of 411 states) unreached in proctype urcu_writer line 397, "pan.___", state 14, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 406, "pan.___", state 46, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 407, "pan.___", state 59, "(1)" line 416, "pan.___", state 89, "(1)" line 397, "pan.___", state 115, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 407, "pan.___", state 160, "(1)" line 650, "pan.___", state 213, "(1)" line 173, "pan.___", state 222, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 177, "pan.___", state 233, "(1)" line 158, "pan.___", state 254, "(1)" line 162, "pan.___", state 262, "(1)" line 166, "pan.___", state 274, "(1)" line 173, "pan.___", state 285, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 181, "pan.___", state 742, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 158, "pan.___", state 752, "(1)" line 162, "pan.___", state 760, "(1)" line 162, "pan.___", state 761, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<0))))" line 162, "pan.___", state 761, "else" line 160, "pan.___", state 766, "((j<1))" line 160, "pan.___", state 766, "((j>=1))" line 166, "pan.___", state 772, "(1)" line 166, "pan.___", state 773, "(!((cache_dirty_generation_ptr.bitfield&(1<<0))))" line 166, "pan.___", state 773, "else" line 168, "pan.___", state 776, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<0))))" line 168, "pan.___", state 776, "else" line 173, "pan.___", state 783, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 181, "pan.___", state 805, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<=1))" line 166, "pan.___", state 835, "(1)" line 166, "pan.___", state 836, "(!((cache_dirty_generation_ptr.bitfield&(1<=1))" line 173, "pan.___", state 850, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 173, "pan.___", state 852, "(1)" line 177, "pan.___", state 859, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<0)))" line 177, "pan.___", state 861, "(1)" line 177, "pan.___", state 862, "((cache_dirty_urcu_active_readers.bitfield&(1<<0)))" line 177, "pan.___", state 862, "else" line 175, "pan.___", state 867, "((j<1))" line 175, "pan.___", state 867, "((j>=1))" line 181, "pan.___", state 872, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 158, "pan.___", state 882, "(1)" line 162, "pan.___", state 890, "(1)" line 162, "pan.___", state 891, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<0))))" line 162, "pan.___", state 891, "else" line 160, "pan.___", state 896, "((j<1))" line 160, "pan.___", state 896, "((j>=1))" line 166, "pan.___", state 902, "(1)" line 166, "pan.___", state 903, "(!((cache_dirty_generation_ptr.bitfield&(1<<0))))" line 166, "pan.___", state 903, "else" line 168, "pan.___", state 906, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<0))))" line 168, "pan.___", state 906, "else" line 200, "pan.___", state 908, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<0)))" line 200, "pan.___", state 908, "else" line 219, "pan.___", state 909, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<0)))" line 219, "pan.___", state 909, "else" line 354, "pan.___", state 915, "((sighand_exec==1))" line 354, "pan.___", state 915, "else" line 360, "pan.___", state 918, "sighand_exec = 1" line 397, "pan.___", state 931, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 397, "pan.___", state 933, "(1)" line 397, "pan.___", state 934, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<0)))" line 397, "pan.___", state 934, "else" line 397, "pan.___", state 937, "(1)" line 401, "pan.___", state 945, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<0)))" line 401, "pan.___", state 947, "(1)" line 401, "pan.___", state 948, "((cache_dirty_urcu_active_readers.bitfield&(1<<0)))" line 401, "pan.___", state 948, "else" line 401, "pan.___", state 951, "(1)" line 401, "pan.___", state 952, "(1)" line 401, "pan.___", state 952, "(1)" line 399, "pan.___", state 957, "((i<1))" line 399, "pan.___", state 957, "((i>=1))" line 406, "pan.___", state 963, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 407, "pan.___", state 976, "(1)" line 407, "pan.___", state 977, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<0))))" line 407, "pan.___", state 977, "else" line 407, "pan.___", state 980, "(1)" line 407, "pan.___", state 981, "(1)" line 407, "pan.___", state 981, "(1)" line 411, "pan.___", state 989, "(1)" line 411, "pan.___", state 990, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<0))))" line 411, "pan.___", state 990, "else" line 411, "pan.___", state 993, "(1)" line 411, "pan.___", state 994, "(1)" line 411, "pan.___", state 994, "(1)" line 409, "pan.___", state 999, "((i<1))" line 409, "pan.___", state 999, "((i>=1))" line 416, "pan.___", state 1006, "(1)" line 416, "pan.___", state 1007, "(!((cache_dirty_generation_ptr.bitfield&(1<<0))))" line 416, "pan.___", state 1007, "else" line 416, "pan.___", state 1010, "(1)" line 416, "pan.___", state 1011, "(1)" line 416, "pan.___", state 1011, "(1)" line 418, "pan.___", state 1014, "(1)" line 418, "pan.___", state 1014, "(1)" line 360, "pan.___", state 1023, "sighand_exec = 1" line 401, "pan.___", state 1054, "(1)" line 406, "pan.___", state 1070, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 416, "pan.___", state 1113, "(1)" line 401, "pan.___", state 1151, "(1)" line 406, "pan.___", state 1167, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 416, "pan.___", state 1210, "(1)" line 397, "pan.___", state 1236, "(1)" line 401, "pan.___", state 1250, "(1)" line 406, "pan.___", state 1266, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 416, "pan.___", state 1309, "(1)" line 401, "pan.___", state 1350, "(1)" line 406, "pan.___", state 1366, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 416, "pan.___", state 1409, "(1)" line 173, "pan.___", state 1430, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 173, "pan.___", state 1432, "(1)" line 177, "pan.___", state 1439, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<0)))" line 177, "pan.___", state 1441, "(1)" line 177, "pan.___", state 1442, "((cache_dirty_urcu_active_readers.bitfield&(1<<0)))" line 177, "pan.___", state 1442, "else" line 175, "pan.___", state 1447, "((j<1))" line 175, "pan.___", state 1447, "((j>=1))" line 181, "pan.___", state 1452, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 158, "pan.___", state 1462, "(1)" line 162, "pan.___", state 1470, "(1)" line 162, "pan.___", state 1471, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<0))))" line 162, "pan.___", state 1471, "else" line 160, "pan.___", state 1476, "((j<1))" line 160, "pan.___", state 1476, "((j>=1))" line 166, "pan.___", state 1482, "(1)" line 166, "pan.___", state 1483, "(!((cache_dirty_generation_ptr.bitfield&(1<<0))))" line 166, "pan.___", state 1483, "else" line 168, "pan.___", state 1486, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<0))))" line 168, "pan.___", state 1486, "else" line 173, "pan.___", state 1493, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 181, "pan.___", state 1515, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<=1))" line 166, "pan.___", state 1545, "(1)" line 166, "pan.___", state 1546, "(!((cache_dirty_generation_ptr.bitfield&(1<=1))" line 173, "pan.___", state 1560, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 173, "pan.___", state 1562, "(1)" line 177, "pan.___", state 1569, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<0)))" line 177, "pan.___", state 1571, "(1)" line 177, "pan.___", state 1572, "((cache_dirty_urcu_active_readers.bitfield&(1<<0)))" line 177, "pan.___", state 1572, "else" line 175, "pan.___", state 1577, "((j<1))" line 175, "pan.___", state 1577, "((j>=1))" line 181, "pan.___", state 1582, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 158, "pan.___", state 1592, "(1)" line 162, "pan.___", state 1600, "(1)" line 162, "pan.___", state 1601, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<0))))" line 162, "pan.___", state 1601, "else" line 160, "pan.___", state 1606, "((j<1))" line 160, "pan.___", state 1606, "((j>=1))" line 166, "pan.___", state 1612, "(1)" line 166, "pan.___", state 1613, "(!((cache_dirty_generation_ptr.bitfield&(1<<0))))" line 166, "pan.___", state 1613, "else" line 168, "pan.___", state 1616, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<0))))" line 168, "pan.___", state 1616, "else" line 200, "pan.___", state 1618, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<0)))" line 200, "pan.___", state 1618, "else" line 219, "pan.___", state 1619, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<0)))" line 219, "pan.___", state 1619, "else" line 354, "pan.___", state 1625, "((sighand_exec==1))" line 354, "pan.___", state 1625, "else" line 360, "pan.___", state 1628, "sighand_exec = 1" line 397, "pan.___", state 1641, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<0)))" line 397, "pan.___", state 1643, "(1)" line 397, "pan.___", state 1644, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<0)))" line 397, "pan.___", state 1644, "else" line 397, "pan.___", state 1647, "(1)" line 401, "pan.___", state 1655, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<0)))" line 401, "pan.___", state 1657, "(1)" line 401, "pan.___", state 1658, "((cache_dirty_urcu_active_readers.bitfield&(1<<0)))" line 401, "pan.___", state 1658, "else" line 401, "pan.___", state 1661, "(1)" line 401, "pan.___", state 1662, "(1)" line 401, "pan.___", state 1662, "(1)" line 399, "pan.___", state 1667, "((i<1))" line 399, "pan.___", state 1667, "((i>=1))" line 406, "pan.___", state 1673, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 407, "pan.___", state 1686, "(1)" line 407, "pan.___", state 1687, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<0))))" line 407, "pan.___", state 1687, "else" line 407, "pan.___", state 1690, "(1)" line 407, "pan.___", state 1691, "(1)" line 407, "pan.___", state 1691, "(1)" line 411, "pan.___", state 1699, "(1)" line 411, "pan.___", state 1700, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<0))))" line 411, "pan.___", state 1700, "else" line 411, "pan.___", state 1703, "(1)" line 411, "pan.___", state 1704, "(1)" line 411, "pan.___", state 1704, "(1)" line 409, "pan.___", state 1709, "((i<1))" line 409, "pan.___", state 1709, "((i>=1))" line 416, "pan.___", state 1716, "(1)" line 416, "pan.___", state 1717, "(!((cache_dirty_generation_ptr.bitfield&(1<<0))))" line 416, "pan.___", state 1717, "else" line 416, "pan.___", state 1720, "(1)" line 416, "pan.___", state 1721, "(1)" line 416, "pan.___", state 1721, "(1)" line 418, "pan.___", state 1724, "(1)" line 418, "pan.___", state 1724, "(1)" line 360, "pan.___", state 1733, "sighand_exec = 1" line 177, "pan.___", state 1758, "(1)" line 181, "pan.___", state 1769, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<0)))" line 158, "pan.___", state 1779, "(1)" line 162, "pan.___", state 1787, "(1)" line 166, "pan.___", state 1799, "(1)" line 173, "pan.___", state 1810, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<