Commit | Line | Data |
---|---|---|
8baf2c95 MD |
1 | make[1]: Entering directory `/home/compudj/doc/userspace-rcu/formal-model/urcu/testmerge' |
2 | rm -f pan* trail.out .input.spin* *.spin.trail .input.define | |
3 | touch .input.define | |
4 | cat .input.define >> pan.ltl | |
5 | cat DEFINES >> pan.ltl | |
6 | spin -f "!(`cat urcu_free.ltl | grep -v ^//`)" >> pan.ltl | |
7 | cp urcu_free_no_rmb.define .input.define | |
8 | cat .input.define > .input.spin | |
9 | cat DEFINES >> .input.spin | |
10 | cat urcu.spin >> .input.spin | |
11 | rm -f .input.spin.trail | |
12 | spin -a -X -N pan.ltl .input.spin | |
13 | Exit-Status 0 | |
14 | gcc -w -DHASH64 -o pan pan.c | |
15 | ./pan -a -v -c1 -X -m10000000 -w20 | |
16 | warning: for p.o. reduction to be valid the never claim must be stutter-invariant | |
17 | (never claims generated from LTL formulae are stutter-invariant) | |
18 | depth 0: Claim reached state 5 (line 567) | |
19 | Depth= 5645 States= 1e+06 Transitions= 1.47e+07 Memory= 527.287 t= 27.1 R= 4e+04 | |
20 | pan: claim violated! (at depth 1736) | |
21 | pan: wrote .input.spin.trail | |
22 | ||
23 | (Spin Version 5.1.7 -- 23 December 2008) | |
24 | Warning: Search not completed | |
25 | + Partial Order Reduction | |
26 | ||
27 | Full statespace search for: | |
28 | never claim + | |
29 | assertion violations + (if within scope of claim) | |
30 | acceptance cycles + (fairness disabled) | |
31 | invalid end states - (disabled by never claim) | |
32 | ||
33 | State-vector 56 byte, depth reached 5645, errors: 1 | |
34 | 1039881 states, stored | |
35 | 14441478 states, matched | |
36 | 15481359 transitions (= stored+matched) | |
37 | 57000435 atomic steps | |
38 | hash conflicts: 2892596 (resolved) | |
39 | ||
40 | Stats on memory usage (in Megabytes): | |
41 | 83.303 equivalent memory usage for states (stored*(State-vector + overhead)) | |
42 | 64.050 actual memory usage for states (compression: 76.89%) | |
43 | state-vector as stored = 37 byte + 28 byte overhead | |
44 | 8.000 memory used for hash table (-w20) | |
45 | 457.764 memory used for DFS stack (-m10000000) | |
46 | 529.729 total actual memory usage | |
47 | ||
48 | unreached in proctype urcu_reader | |
49 | line 289, "pan.___", state 16, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
50 | line 298, "pan.___", state 48, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
51 | line 299, "pan.___", state 61, "(1)" | |
52 | line 308, "pan.___", state 91, "(1)" | |
53 | line 289, "pan.___", state 104, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
54 | line 298, "pan.___", state 136, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
55 | line 299, "pan.___", state 149, "(1)" | |
56 | line 308, "pan.___", state 179, "(1)" | |
57 | line 289, "pan.___", state 193, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
58 | line 298, "pan.___", state 225, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
59 | line 299, "pan.___", state 238, "(1)" | |
60 | line 308, "pan.___", state 268, "(1)" | |
61 | line 159, "pan.___", state 289, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
62 | line 159, "pan.___", state 291, "(1)" | |
63 | line 163, "pan.___", state 298, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
64 | line 163, "pan.___", state 300, "(1)" | |
65 | line 163, "pan.___", state 301, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
66 | line 163, "pan.___", state 301, "else" | |
67 | line 161, "pan.___", state 306, "((j<1))" | |
68 | line 161, "pan.___", state 306, "((j>=1))" | |
69 | line 167, "pan.___", state 311, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
70 | line 167, "pan.___", state 313, "(1)" | |
71 | line 167, "pan.___", state 314, "((cache_dirty_generation_ptr.bitfield&(1<<_pid)))" | |
72 | line 167, "pan.___", state 314, "else" | |
73 | line 177, "pan.___", state 319, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
74 | line 177, "pan.___", state 319, "else" | |
75 | line 159, "pan.___", state 324, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<i)))" | |
76 | line 159, "pan.___", state 326, "(1)" | |
77 | line 163, "pan.___", state 333, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<i)))" | |
78 | line 163, "pan.___", state 335, "(1)" | |
79 | line 163, "pan.___", state 336, "((cache_dirty_urcu_active_readers.bitfield&(1<<i)))" | |
80 | line 163, "pan.___", state 336, "else" | |
81 | line 161, "pan.___", state 341, "((j<1))" | |
82 | line 161, "pan.___", state 341, "((j>=1))" | |
83 | line 167, "pan.___", state 346, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<i)))" | |
84 | line 167, "pan.___", state 348, "(1)" | |
85 | line 167, "pan.___", state 349, "((cache_dirty_generation_ptr.bitfield&(1<<i)))" | |
86 | line 167, "pan.___", state 349, "else" | |
87 | line 177, "pan.___", state 354, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<i)))" | |
88 | line 177, "pan.___", state 354, "else" | |
89 | line 200, "pan.___", state 358, "((i<1))" | |
90 | line 200, "pan.___", state 358, "((i>=1))" | |
91 | line 159, "pan.___", state 363, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
92 | line 159, "pan.___", state 365, "(1)" | |
93 | line 163, "pan.___", state 372, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
94 | line 163, "pan.___", state 374, "(1)" | |
95 | line 163, "pan.___", state 375, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
96 | line 163, "pan.___", state 375, "else" | |
97 | line 161, "pan.___", state 380, "((j<1))" | |
98 | line 161, "pan.___", state 380, "((j>=1))" | |
99 | line 167, "pan.___", state 385, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
100 | line 167, "pan.___", state 387, "(1)" | |
101 | line 167, "pan.___", state 388, "((cache_dirty_generation_ptr.bitfield&(1<<_pid)))" | |
102 | line 167, "pan.___", state 388, "else" | |
103 | line 177, "pan.___", state 393, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
104 | line 177, "pan.___", state 393, "else" | |
105 | line 289, "pan.___", state 408, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
106 | line 298, "pan.___", state 440, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
107 | line 299, "pan.___", state 453, "(1)" | |
108 | line 308, "pan.___", state 483, "(1)" | |
109 | line 289, "pan.___", state 496, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
110 | line 298, "pan.___", state 528, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
111 | line 299, "pan.___", state 541, "(1)" | |
112 | line 308, "pan.___", state 571, "(1)" | |
113 | line 289, "pan.___", state 584, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
114 | line 298, "pan.___", state 616, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
115 | line 299, "pan.___", state 629, "(1)" | |
116 | line 308, "pan.___", state 659, "(1)" | |
117 | line 159, "pan.___", state 674, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
118 | line 159, "pan.___", state 676, "(1)" | |
119 | line 163, "pan.___", state 683, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
120 | line 163, "pan.___", state 685, "(1)" | |
121 | line 163, "pan.___", state 686, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
122 | line 163, "pan.___", state 686, "else" | |
123 | line 161, "pan.___", state 691, "((j<1))" | |
124 | line 161, "pan.___", state 691, "((j>=1))" | |
125 | line 167, "pan.___", state 696, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
126 | line 167, "pan.___", state 698, "(1)" | |
127 | line 167, "pan.___", state 699, "((cache_dirty_generation_ptr.bitfield&(1<<_pid)))" | |
128 | line 167, "pan.___", state 699, "else" | |
129 | line 177, "pan.___", state 704, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
130 | line 177, "pan.___", state 704, "else" | |
131 | line 159, "pan.___", state 709, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<i)))" | |
132 | line 159, "pan.___", state 711, "(1)" | |
133 | line 163, "pan.___", state 718, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<i)))" | |
134 | line 163, "pan.___", state 720, "(1)" | |
135 | line 163, "pan.___", state 721, "((cache_dirty_urcu_active_readers.bitfield&(1<<i)))" | |
136 | line 163, "pan.___", state 721, "else" | |
137 | line 161, "pan.___", state 726, "((j<1))" | |
138 | line 161, "pan.___", state 726, "((j>=1))" | |
139 | line 167, "pan.___", state 731, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<i)))" | |
140 | line 167, "pan.___", state 733, "(1)" | |
141 | line 167, "pan.___", state 734, "((cache_dirty_generation_ptr.bitfield&(1<<i)))" | |
142 | line 167, "pan.___", state 734, "else" | |
143 | line 177, "pan.___", state 739, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<i)))" | |
144 | line 177, "pan.___", state 739, "else" | |
145 | line 200, "pan.___", state 743, "((i<1))" | |
146 | line 200, "pan.___", state 743, "((i>=1))" | |
147 | line 159, "pan.___", state 748, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
148 | line 159, "pan.___", state 750, "(1)" | |
149 | line 163, "pan.___", state 757, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
150 | line 163, "pan.___", state 759, "(1)" | |
151 | line 163, "pan.___", state 760, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
152 | line 163, "pan.___", state 760, "else" | |
153 | line 161, "pan.___", state 765, "((j<1))" | |
154 | line 161, "pan.___", state 765, "((j>=1))" | |
155 | line 167, "pan.___", state 770, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
156 | line 167, "pan.___", state 772, "(1)" | |
157 | line 167, "pan.___", state 773, "((cache_dirty_generation_ptr.bitfield&(1<<_pid)))" | |
158 | line 167, "pan.___", state 773, "else" | |
159 | line 177, "pan.___", state 778, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
160 | line 177, "pan.___", state 778, "else" | |
161 | line 289, "pan.___", state 788, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
162 | line 298, "pan.___", state 820, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
163 | line 299, "pan.___", state 833, "(1)" | |
164 | line 308, "pan.___", state 863, "(1)" | |
165 | line 289, "pan.___", state 884, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
166 | line 298, "pan.___", state 916, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
167 | line 299, "pan.___", state 929, "(1)" | |
168 | line 308, "pan.___", state 959, "(1)" | |
169 | line 434, "pan.___", state 972, "-end-" | |
170 | (95 of 972 states) | |
171 | unreached in proctype urcu_writer | |
172 | line 289, "pan.___", state 14, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
173 | line 289, "pan.___", state 20, "(1)" | |
174 | line 293, "pan.___", state 28, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
175 | line 293, "pan.___", state 34, "(1)" | |
176 | line 293, "pan.___", state 35, "(1)" | |
177 | line 293, "pan.___", state 35, "(1)" | |
178 | line 291, "pan.___", state 40, "((i<1))" | |
179 | line 291, "pan.___", state 40, "((i>=1))" | |
180 | line 298, "pan.___", state 46, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
181 | line 299, "pan.___", state 59, "(1)" | |
182 | line 299, "pan.___", state 60, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
183 | line 299, "pan.___", state 60, "else" | |
184 | line 299, "pan.___", state 63, "(1)" | |
185 | line 299, "pan.___", state 64, "(1)" | |
186 | line 299, "pan.___", state 64, "(1)" | |
187 | line 303, "pan.___", state 72, "(1)" | |
188 | line 303, "pan.___", state 73, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
189 | line 303, "pan.___", state 73, "else" | |
190 | line 303, "pan.___", state 76, "(1)" | |
191 | line 303, "pan.___", state 77, "(1)" | |
192 | line 303, "pan.___", state 77, "(1)" | |
193 | line 301, "pan.___", state 82, "((i<1))" | |
194 | line 301, "pan.___", state 82, "((i>=1))" | |
195 | line 308, "pan.___", state 89, "(1)" | |
196 | line 308, "pan.___", state 90, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
197 | line 308, "pan.___", state 90, "else" | |
198 | line 308, "pan.___", state 93, "(1)" | |
199 | line 308, "pan.___", state 94, "(1)" | |
200 | line 308, "pan.___", state 94, "(1)" | |
201 | line 310, "pan.___", state 97, "(1)" | |
202 | line 310, "pan.___", state 97, "(1)" | |
203 | line 456, "pan.___", state 101, "cached_generation_ptr.val[_pid] = (old_gen+1)" | |
204 | line 454, "pan.___", state 102, "old_gen = cached_generation_ptr.val[_pid]" | |
205 | line 289, "pan.___", state 106, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
206 | line 289, "pan.___", state 112, "(1)" | |
207 | line 293, "pan.___", state 120, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
208 | line 293, "pan.___", state 126, "(1)" | |
209 | line 293, "pan.___", state 127, "(1)" | |
210 | line 293, "pan.___", state 127, "(1)" | |
211 | line 299, "pan.___", state 151, "(1)" | |
212 | line 303, "pan.___", state 164, "(1)" | |
213 | line 310, "pan.___", state 189, "(1)" | |
214 | line 310, "pan.___", state 189, "(1)" | |
215 | line 468, "pan.___", state 195, "(1)" | |
216 | line 159, "pan.___", state 205, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
217 | line 163, "pan.___", state 214, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
218 | line 159, "pan.___", state 240, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<i)))" | |
219 | line 167, "pan.___", state 262, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<i)))" | |
220 | line 159, "pan.___", state 279, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
221 | line 163, "pan.___", state 288, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
222 | line 167, "pan.___", state 301, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
223 | line 289, "pan.___", state 319, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
224 | line 293, "pan.___", state 333, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
225 | line 298, "pan.___", state 351, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
226 | line 299, "pan.___", state 364, "(1)" | |
227 | line 303, "pan.___", state 377, "(1)" | |
228 | line 308, "pan.___", state 394, "(1)" | |
229 | line 289, "pan.___", state 411, "(1)" | |
230 | line 293, "pan.___", state 423, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
231 | line 298, "pan.___", state 441, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
232 | line 303, "pan.___", state 467, "(1)" | |
233 | line 308, "pan.___", state 484, "(1)" | |
234 | line 293, "pan.___", state 514, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
235 | line 298, "pan.___", state 532, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
236 | line 303, "pan.___", state 558, "(1)" | |
237 | line 308, "pan.___", state 575, "(1)" | |
238 | line 163, "pan.___", state 597, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
239 | line 167, "pan.___", state 610, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
240 | line 159, "pan.___", state 623, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<i)))" | |
241 | line 167, "pan.___", state 645, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<i)))" | |
242 | line 159, "pan.___", state 662, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
243 | line 163, "pan.___", state 671, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
244 | line 167, "pan.___", state 684, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
245 | line 289, "pan.___", state 710, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
246 | line 289, "pan.___", state 712, "(1)" | |
247 | line 289, "pan.___", state 713, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
248 | line 289, "pan.___", state 713, "else" | |
249 | line 289, "pan.___", state 716, "(1)" | |
250 | line 293, "pan.___", state 724, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
251 | line 293, "pan.___", state 726, "(1)" | |
252 | line 293, "pan.___", state 727, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
253 | line 293, "pan.___", state 727, "else" | |
254 | line 293, "pan.___", state 730, "(1)" | |
255 | line 293, "pan.___", state 731, "(1)" | |
256 | line 293, "pan.___", state 731, "(1)" | |
257 | line 291, "pan.___", state 736, "((i<1))" | |
258 | line 291, "pan.___", state 736, "((i>=1))" | |
259 | line 298, "pan.___", state 742, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
260 | line 299, "pan.___", state 755, "(1)" | |
261 | line 299, "pan.___", state 756, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
262 | line 299, "pan.___", state 756, "else" | |
263 | line 299, "pan.___", state 759, "(1)" | |
264 | line 299, "pan.___", state 760, "(1)" | |
265 | line 299, "pan.___", state 760, "(1)" | |
266 | line 303, "pan.___", state 768, "(1)" | |
267 | line 303, "pan.___", state 769, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
268 | line 303, "pan.___", state 769, "else" | |
269 | line 303, "pan.___", state 772, "(1)" | |
270 | line 303, "pan.___", state 773, "(1)" | |
271 | line 303, "pan.___", state 773, "(1)" | |
272 | line 301, "pan.___", state 778, "((i<1))" | |
273 | line 301, "pan.___", state 778, "((i>=1))" | |
274 | line 308, "pan.___", state 785, "(1)" | |
275 | line 308, "pan.___", state 786, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
276 | line 308, "pan.___", state 786, "else" | |
277 | line 308, "pan.___", state 789, "(1)" | |
278 | line 308, "pan.___", state 790, "(1)" | |
279 | line 308, "pan.___", state 790, "(1)" | |
280 | line 310, "pan.___", state 793, "(1)" | |
281 | line 310, "pan.___", state 793, "(1)" | |
282 | line 293, "pan.___", state 822, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
283 | line 298, "pan.___", state 840, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
284 | line 303, "pan.___", state 866, "(1)" | |
285 | line 308, "pan.___", state 883, "(1)" | |
286 | line 293, "pan.___", state 910, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
287 | line 298, "pan.___", state 928, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
288 | line 303, "pan.___", state 954, "(1)" | |
289 | line 308, "pan.___", state 971, "(1)" | |
290 | line 289, "pan.___", state 988, "(1)" | |
291 | line 293, "pan.___", state 1000, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
292 | line 298, "pan.___", state 1018, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
293 | line 303, "pan.___", state 1044, "(1)" | |
294 | line 308, "pan.___", state 1061, "(1)" | |
295 | line 293, "pan.___", state 1091, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
296 | line 298, "pan.___", state 1109, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
297 | line 303, "pan.___", state 1135, "(1)" | |
298 | line 308, "pan.___", state 1152, "(1)" | |
299 | line 163, "pan.___", state 1174, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
300 | line 167, "pan.___", state 1187, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
301 | line 159, "pan.___", state 1200, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<i)))" | |
302 | line 167, "pan.___", state 1222, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<i)))" | |
303 | line 159, "pan.___", state 1239, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
304 | line 163, "pan.___", state 1248, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
305 | line 167, "pan.___", state 1261, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
306 | line 289, "pan.___", state 1287, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
307 | line 289, "pan.___", state 1289, "(1)" | |
308 | line 289, "pan.___", state 1290, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
309 | line 289, "pan.___", state 1290, "else" | |
310 | line 289, "pan.___", state 1293, "(1)" | |
311 | line 293, "pan.___", state 1301, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
312 | line 293, "pan.___", state 1303, "(1)" | |
313 | line 293, "pan.___", state 1304, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
314 | line 293, "pan.___", state 1304, "else" | |
315 | line 293, "pan.___", state 1307, "(1)" | |
316 | line 293, "pan.___", state 1308, "(1)" | |
317 | line 293, "pan.___", state 1308, "(1)" | |
318 | line 291, "pan.___", state 1313, "((i<1))" | |
319 | line 291, "pan.___", state 1313, "((i>=1))" | |
320 | line 298, "pan.___", state 1319, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
321 | line 299, "pan.___", state 1332, "(1)" | |
322 | line 299, "pan.___", state 1333, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
323 | line 299, "pan.___", state 1333, "else" | |
324 | line 299, "pan.___", state 1336, "(1)" | |
325 | line 299, "pan.___", state 1337, "(1)" | |
326 | line 299, "pan.___", state 1337, "(1)" | |
327 | line 303, "pan.___", state 1345, "(1)" | |
328 | line 303, "pan.___", state 1346, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
329 | line 303, "pan.___", state 1346, "else" | |
330 | line 303, "pan.___", state 1349, "(1)" | |
331 | line 303, "pan.___", state 1350, "(1)" | |
332 | line 303, "pan.___", state 1350, "(1)" | |
333 | line 301, "pan.___", state 1355, "((i<1))" | |
334 | line 301, "pan.___", state 1355, "((i>=1))" | |
335 | line 308, "pan.___", state 1362, "(1)" | |
336 | line 308, "pan.___", state 1363, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
337 | line 308, "pan.___", state 1363, "else" | |
338 | line 308, "pan.___", state 1366, "(1)" | |
339 | line 308, "pan.___", state 1367, "(1)" | |
340 | line 308, "pan.___", state 1367, "(1)" | |
341 | line 310, "pan.___", state 1370, "(1)" | |
342 | line 310, "pan.___", state 1370, "(1)" | |
343 | line 163, "pan.___", state 1394, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
344 | line 167, "pan.___", state 1407, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
345 | line 159, "pan.___", state 1420, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<i)))" | |
346 | line 167, "pan.___", state 1442, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<i)))" | |
347 | line 159, "pan.___", state 1459, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
348 | line 163, "pan.___", state 1468, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
349 | line 167, "pan.___", state 1481, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
350 | line 511, "pan.___", state 1509, "-end-" | |
351 | (143 of 1509 states) | |
352 | unreached in proctype :init: | |
353 | line 518, "pan.___", state 9, "((j<2))" | |
354 | line 518, "pan.___", state 9, "((j>=2))" | |
355 | line 519, "pan.___", state 20, "((j<2))" | |
356 | line 519, "pan.___", state 20, "((j>=2))" | |
357 | line 524, "pan.___", state 33, "((j<2))" | |
358 | line 524, "pan.___", state 33, "((j>=2))" | |
359 | (3 of 46 states) | |
360 | unreached in proctype :never: | |
361 | line 572, "pan.___", state 8, "-end-" | |
362 | (1 of 8 states) | |
363 | ||
364 | pan: elapsed time 28.5 seconds | |
365 | pan: rate 36487.053 states/second | |
366 | pan: avg transition delay 1.8409e-06 usec | |
367 | cp .input.spin urcu_free_no_rmb.spin.input | |
368 | cp .input.spin.trail urcu_free_no_rmb.spin.input.trail | |
369 | make[1]: Leaving directory `/home/compudj/doc/userspace-rcu/formal-model/urcu/testmerge' |