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 cp urcu_free_single_flip.define .input.define 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 567) pan: claim violated! (at depth 1353) pan: wrote .input.spin.trail (Spin Version 5.1.7 -- 23 December 2008) Warning: Search not completed + 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 3705, errors: 1 216253 states, stored 2924019 states, matched 3140272 transitions (= stored+matched) 11791015 atomic steps hash conflicts: 155585 (resolved) Stats on memory usage (in Megabytes): 17.324 equivalent memory usage for states (stored*(State-vector + overhead)) 13.576 actual memory usage for states (compression: 78.37%) state-vector as stored = 38 byte + 28 byte overhead 8.000 memory used for hash table (-w20) 457.764 memory used for DFS stack (-m10000000) 479.338 total actual memory usage unreached in proctype urcu_reader line 289, "pan.___", state 16, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 48, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 61, "(1)" line 308, "pan.___", state 91, "(1)" line 289, "pan.___", state 104, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 136, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 149, "(1)" line 308, "pan.___", state 179, "(1)" line 289, "pan.___", state 193, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 225, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 238, "(1)" line 308, "pan.___", state 268, "(1)" line 159, "pan.___", state 289, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 159, "pan.___", state 291, "(1)" line 163, "pan.___", state 298, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 163, "pan.___", state 300, "(1)" line 163, "pan.___", state 301, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 163, "pan.___", state 301, "else" line 161, "pan.___", state 306, "((j<1))" line 161, "pan.___", state 306, "((j>=1))" line 167, "pan.___", state 311, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 144, "pan.___", state 321, "(1)" line 148, "pan.___", state 329, "(1)" line 148, "pan.___", state 330, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 148, "pan.___", state 330, "else" line 146, "pan.___", state 335, "((j<1))" line 146, "pan.___", state 335, "((j>=1))" line 152, "pan.___", state 341, "(1)" line 152, "pan.___", state 342, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 152, "pan.___", state 342, "else" line 154, "pan.___", state 345, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 154, "pan.___", state 345, "else" line 186, "pan.___", state 347, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 186, "pan.___", state 347, "else" line 159, "pan.___", state 352, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 167, "pan.___", state 374, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<=1))" line 152, "pan.___", state 404, "(1)" line 152, "pan.___", state 405, "(!((cache_dirty_generation_ptr.bitfield&(1<=1))" line 159, "pan.___", state 419, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 159, "pan.___", state 421, "(1)" line 163, "pan.___", state 428, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 163, "pan.___", state 430, "(1)" line 163, "pan.___", state 431, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 163, "pan.___", state 431, "else" line 161, "pan.___", state 436, "((j<1))" line 161, "pan.___", state 436, "((j>=1))" line 167, "pan.___", state 441, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 144, "pan.___", state 451, "(1)" line 148, "pan.___", state 459, "(1)" line 148, "pan.___", state 460, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 148, "pan.___", state 460, "else" line 146, "pan.___", state 465, "((j<1))" line 146, "pan.___", state 465, "((j>=1))" line 152, "pan.___", state 471, "(1)" line 152, "pan.___", state 472, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 152, "pan.___", state 472, "else" line 154, "pan.___", state 475, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 154, "pan.___", state 475, "else" line 186, "pan.___", state 477, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 186, "pan.___", state 477, "else" line 289, "pan.___", state 492, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 524, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 537, "(1)" line 308, "pan.___", state 567, "(1)" line 289, "pan.___", state 580, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 612, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 625, "(1)" line 308, "pan.___", state 655, "(1)" line 289, "pan.___", state 668, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 700, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 713, "(1)" line 308, "pan.___", state 743, "(1)" line 159, "pan.___", state 758, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 159, "pan.___", state 760, "(1)" line 163, "pan.___", state 767, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 163, "pan.___", state 769, "(1)" line 163, "pan.___", state 770, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 163, "pan.___", state 770, "else" line 161, "pan.___", state 775, "((j<1))" line 161, "pan.___", state 775, "((j>=1))" line 167, "pan.___", state 780, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 144, "pan.___", state 790, "(1)" line 148, "pan.___", state 798, "(1)" line 148, "pan.___", state 799, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 148, "pan.___", state 799, "else" line 146, "pan.___", state 804, "((j<1))" line 146, "pan.___", state 804, "((j>=1))" line 152, "pan.___", state 810, "(1)" line 152, "pan.___", state 811, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 152, "pan.___", state 811, "else" line 154, "pan.___", state 814, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 154, "pan.___", state 814, "else" line 186, "pan.___", state 816, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 186, "pan.___", state 816, "else" line 159, "pan.___", state 821, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 167, "pan.___", state 843, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<=1))" line 152, "pan.___", state 873, "(1)" line 152, "pan.___", state 874, "(!((cache_dirty_generation_ptr.bitfield&(1<=1))" line 159, "pan.___", state 888, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 159, "pan.___", state 890, "(1)" line 163, "pan.___", state 897, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 163, "pan.___", state 899, "(1)" line 163, "pan.___", state 900, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" line 163, "pan.___", state 900, "else" line 161, "pan.___", state 905, "((j<1))" line 161, "pan.___", state 905, "((j>=1))" line 167, "pan.___", state 910, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 144, "pan.___", state 920, "(1)" line 148, "pan.___", state 928, "(1)" line 148, "pan.___", state 929, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 148, "pan.___", state 929, "else" line 146, "pan.___", state 934, "((j<1))" line 146, "pan.___", state 934, "((j>=1))" line 152, "pan.___", state 940, "(1)" line 152, "pan.___", state 941, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 152, "pan.___", state 941, "else" line 154, "pan.___", state 944, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 154, "pan.___", state 944, "else" line 186, "pan.___", state 946, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" line 186, "pan.___", state 946, "else" line 289, "pan.___", state 956, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 988, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 1001, "(1)" line 308, "pan.___", state 1031, "(1)" line 289, "pan.___", state 1052, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 298, "pan.___", state 1084, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 1097, "(1)" line 308, "pan.___", state 1127, "(1)" line 434, "pan.___", state 1140, "-end-" (125 of 1140 states) unreached in proctype urcu_writer line 289, "pan.___", state 14, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 293, "pan.___", state 28, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 298, "pan.___", state 46, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 59, "(1)" line 303, "pan.___", state 72, "(1)" line 308, "pan.___", state 89, "(1)" line 289, "pan.___", state 106, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 293, "pan.___", state 120, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 299, "pan.___", state 151, "(1)" line 303, "pan.___", state 164, "(1)" line 468, "pan.___", state 195, "(1)" line 159, "pan.___", state 205, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" line 163, "pan.___", state 214, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 144, "pan.___", state 237, "(1)" line 148, "pan.___", state 245, "(1)" line 152, "pan.___", state 257, "(1)" line 159, "pan.___", state 268, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=1))" line 298, "pan.___", state 910, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 299, "pan.___", state 923, "(1)" line 299, "pan.___", state 924, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" line 299, "pan.___", state 924, "else" line 299, "pan.___", state 927, "(1)" line 299, "pan.___", state 928, "(1)" line 299, "pan.___", state 928, "(1)" line 303, "pan.___", state 936, "(1)" line 303, "pan.___", state 937, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" line 303, "pan.___", state 937, "else" line 303, "pan.___", state 940, "(1)" line 303, "pan.___", state 941, "(1)" line 303, "pan.___", state 941, "(1)" line 301, "pan.___", state 946, "((i<1))" line 301, "pan.___", state 946, "((i>=1))" line 308, "pan.___", state 953, "(1)" line 308, "pan.___", state 954, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" line 308, "pan.___", state 954, "else" line 308, "pan.___", state 957, "(1)" line 308, "pan.___", state 958, "(1)" line 308, "pan.___", state 958, "(1)" line 310, "pan.___", state 961, "(1)" line 310, "pan.___", state 961, "(1)" line 163, "pan.___", state 985, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" line 167, "pan.___", state 998, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" line 144, "pan.___", state 1008, "(1)" line 148, "pan.___", state 1016, "(1)" line 152, "pan.___", state 1028, "(1)" line 159, "pan.___", state 1039, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<=2))" line 519, "pan.___", state 20, "((j<2))" line 519, "pan.___", state 20, "((j>=2))" line 524, "pan.___", state 33, "((j<2))" line 524, "pan.___", state 33, "((j>=2))" (3 of 46 states) unreached in proctype :never: line 572, "pan.___", state 8, "-end-" (1 of 8 states) pan: elapsed time 5.58 seconds pan: rate 38755.018 states/second pan: avg transition delay 1.7769e-06 usec cp .input.spin urcu_free_single_flip.spin.input cp .input.spin.trail urcu_free_single_flip.spin.input.trail make[1]: Leaving directory `/home/compudj/doc/userspace-rcu/formal-model/urcu/testmerge'