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_wmb.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 | pan: claim violated! (at depth 1889) | |
20 | pan: wrote .input.spin.trail | |
21 | ||
22 | (Spin Version 5.1.7 -- 23 December 2008) | |
23 | Warning: Search not completed | |
24 | + Partial Order Reduction | |
25 | ||
26 | Full statespace search for: | |
27 | never claim + | |
28 | assertion violations + (if within scope of claim) | |
29 | acceptance cycles + (fairness disabled) | |
30 | invalid end states - (disabled by never claim) | |
31 | ||
32 | State-vector 56 byte, depth reached 6646, errors: 1 | |
33 | 377244 states, stored | |
34 | 5291719 states, matched | |
35 | 5668963 transitions (= stored+matched) | |
36 | 20822372 atomic steps | |
37 | hash conflicts: 405371 (resolved) | |
38 | ||
39 | Stats on memory usage (in Megabytes): | |
40 | 30.221 equivalent memory usage for states (stored*(State-vector + overhead)) | |
41 | 23.526 actual memory usage for states (compression: 77.85%) | |
42 | state-vector as stored = 37 byte + 28 byte overhead | |
43 | 8.000 memory used for hash table (-w20) | |
44 | 457.764 memory used for DFS stack (-m10000000) | |
45 | 489.201 total actual memory usage | |
46 | ||
47 | unreached in proctype urcu_reader | |
48 | line 289, "pan.___", state 16, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
49 | line 298, "pan.___", state 48, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
50 | line 299, "pan.___", state 61, "(1)" | |
51 | line 308, "pan.___", state 91, "(1)" | |
52 | line 289, "pan.___", state 104, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
53 | line 298, "pan.___", state 136, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
54 | line 299, "pan.___", state 149, "(1)" | |
55 | line 308, "pan.___", state 179, "(1)" | |
56 | line 289, "pan.___", state 193, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
57 | line 298, "pan.___", state 225, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
58 | line 299, "pan.___", state 238, "(1)" | |
59 | line 308, "pan.___", state 268, "(1)" | |
60 | line 144, "pan.___", state 290, "(1)" | |
61 | line 148, "pan.___", state 298, "(1)" | |
62 | line 148, "pan.___", state 299, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
63 | line 148, "pan.___", state 299, "else" | |
64 | line 146, "pan.___", state 304, "((j<1))" | |
65 | line 146, "pan.___", state 304, "((j>=1))" | |
66 | line 152, "pan.___", state 310, "(1)" | |
67 | line 152, "pan.___", state 311, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
68 | line 152, "pan.___", state 311, "else" | |
69 | line 186, "pan.___", state 316, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
70 | line 186, "pan.___", state 316, "else" | |
71 | line 144, "pan.___", state 322, "(1)" | |
72 | line 148, "pan.___", state 330, "(1)" | |
73 | line 148, "pan.___", state 331, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<i))))" | |
74 | line 148, "pan.___", state 331, "else" | |
75 | line 146, "pan.___", state 336, "((j<1))" | |
76 | line 146, "pan.___", state 336, "((j>=1))" | |
77 | line 152, "pan.___", state 342, "(1)" | |
78 | line 152, "pan.___", state 343, "(!((cache_dirty_generation_ptr.bitfield&(1<<i))))" | |
79 | line 152, "pan.___", state 343, "else" | |
80 | line 186, "pan.___", state 348, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<i))))" | |
81 | line 186, "pan.___", state 348, "else" | |
82 | line 200, "pan.___", state 352, "((i<1))" | |
83 | line 200, "pan.___", state 352, "((i>=1))" | |
84 | line 144, "pan.___", state 358, "(1)" | |
85 | line 148, "pan.___", state 366, "(1)" | |
86 | line 148, "pan.___", state 367, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
87 | line 148, "pan.___", state 367, "else" | |
88 | line 146, "pan.___", state 372, "((j<1))" | |
89 | line 146, "pan.___", state 372, "((j>=1))" | |
90 | line 152, "pan.___", state 378, "(1)" | |
91 | line 152, "pan.___", state 379, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
92 | line 152, "pan.___", state 379, "else" | |
93 | line 186, "pan.___", state 384, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
94 | line 186, "pan.___", state 384, "else" | |
95 | line 289, "pan.___", state 399, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
96 | line 293, "pan.___", state 415, "(1)" | |
97 | line 298, "pan.___", state 431, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
98 | line 299, "pan.___", state 444, "(1)" | |
99 | line 308, "pan.___", state 474, "(1)" | |
100 | line 289, "pan.___", state 487, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
101 | line 298, "pan.___", state 519, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
102 | line 299, "pan.___", state 532, "(1)" | |
103 | line 308, "pan.___", state 562, "(1)" | |
104 | line 289, "pan.___", state 575, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
105 | line 298, "pan.___", state 607, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
106 | line 299, "pan.___", state 620, "(1)" | |
107 | line 308, "pan.___", state 650, "(1)" | |
108 | line 144, "pan.___", state 666, "(1)" | |
109 | line 148, "pan.___", state 674, "(1)" | |
110 | line 148, "pan.___", state 675, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
111 | line 148, "pan.___", state 675, "else" | |
112 | line 146, "pan.___", state 680, "((j<1))" | |
113 | line 146, "pan.___", state 680, "((j>=1))" | |
114 | line 152, "pan.___", state 686, "(1)" | |
115 | line 152, "pan.___", state 687, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
116 | line 152, "pan.___", state 687, "else" | |
117 | line 186, "pan.___", state 692, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
118 | line 186, "pan.___", state 692, "else" | |
119 | line 144, "pan.___", state 698, "(1)" | |
120 | line 148, "pan.___", state 706, "(1)" | |
121 | line 148, "pan.___", state 707, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<i))))" | |
122 | line 148, "pan.___", state 707, "else" | |
123 | line 146, "pan.___", state 712, "((j<1))" | |
124 | line 146, "pan.___", state 712, "((j>=1))" | |
125 | line 152, "pan.___", state 718, "(1)" | |
126 | line 152, "pan.___", state 719, "(!((cache_dirty_generation_ptr.bitfield&(1<<i))))" | |
127 | line 152, "pan.___", state 719, "else" | |
128 | line 186, "pan.___", state 724, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<i))))" | |
129 | line 186, "pan.___", state 724, "else" | |
130 | line 200, "pan.___", state 728, "((i<1))" | |
131 | line 200, "pan.___", state 728, "((i>=1))" | |
132 | line 144, "pan.___", state 734, "(1)" | |
133 | line 148, "pan.___", state 742, "(1)" | |
134 | line 148, "pan.___", state 743, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
135 | line 148, "pan.___", state 743, "else" | |
136 | line 146, "pan.___", state 748, "((j<1))" | |
137 | line 146, "pan.___", state 748, "((j>=1))" | |
138 | line 152, "pan.___", state 754, "(1)" | |
139 | line 152, "pan.___", state 755, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
140 | line 152, "pan.___", state 755, "else" | |
141 | line 186, "pan.___", state 760, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
142 | line 186, "pan.___", state 760, "else" | |
143 | line 289, "pan.___", state 770, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
144 | line 298, "pan.___", state 802, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
145 | line 299, "pan.___", state 815, "(1)" | |
146 | line 308, "pan.___", state 845, "(1)" | |
147 | line 289, "pan.___", state 866, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
148 | line 293, "pan.___", state 882, "(1)" | |
149 | line 298, "pan.___", state 898, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
150 | line 299, "pan.___", state 911, "(1)" | |
151 | line 308, "pan.___", state 941, "(1)" | |
152 | line 434, "pan.___", state 954, "-end-" | |
153 | (79 of 954 states) | |
154 | unreached in proctype urcu_writer | |
155 | line 289, "pan.___", state 14, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
156 | line 289, "pan.___", state 20, "(1)" | |
157 | line 293, "pan.___", state 28, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
158 | line 293, "pan.___", state 34, "(1)" | |
159 | line 293, "pan.___", state 35, "(1)" | |
160 | line 293, "pan.___", state 35, "(1)" | |
161 | line 291, "pan.___", state 40, "((i<1))" | |
162 | line 291, "pan.___", state 40, "((i>=1))" | |
163 | line 298, "pan.___", state 46, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
164 | line 299, "pan.___", state 59, "(1)" | |
165 | line 299, "pan.___", state 60, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
166 | line 299, "pan.___", state 60, "else" | |
167 | line 299, "pan.___", state 63, "(1)" | |
168 | line 299, "pan.___", state 64, "(1)" | |
169 | line 299, "pan.___", state 64, "(1)" | |
170 | line 303, "pan.___", state 72, "(1)" | |
171 | line 303, "pan.___", state 73, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
172 | line 303, "pan.___", state 73, "else" | |
173 | line 303, "pan.___", state 76, "(1)" | |
174 | line 303, "pan.___", state 77, "(1)" | |
175 | line 303, "pan.___", state 77, "(1)" | |
176 | line 301, "pan.___", state 82, "((i<1))" | |
177 | line 301, "pan.___", state 82, "((i>=1))" | |
178 | line 308, "pan.___", state 89, "(1)" | |
179 | line 308, "pan.___", state 90, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
180 | line 308, "pan.___", state 90, "else" | |
181 | line 308, "pan.___", state 93, "(1)" | |
182 | line 308, "pan.___", state 94, "(1)" | |
183 | line 308, "pan.___", state 94, "(1)" | |
184 | line 310, "pan.___", state 97, "(1)" | |
185 | line 310, "pan.___", state 97, "(1)" | |
186 | line 456, "pan.___", state 101, "cached_generation_ptr.val[_pid] = (old_gen+1)" | |
187 | line 454, "pan.___", state 102, "old_gen = cached_generation_ptr.val[_pid]" | |
188 | line 289, "pan.___", state 106, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
189 | line 289, "pan.___", state 112, "(1)" | |
190 | line 293, "pan.___", state 120, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
191 | line 293, "pan.___", state 126, "(1)" | |
192 | line 293, "pan.___", state 127, "(1)" | |
193 | line 293, "pan.___", state 127, "(1)" | |
194 | line 291, "pan.___", state 132, "((i<1))" | |
195 | line 291, "pan.___", state 132, "((i>=1))" | |
196 | line 299, "pan.___", state 151, "(1)" | |
197 | line 299, "pan.___", state 152, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
198 | line 299, "pan.___", state 152, "else" | |
199 | line 299, "pan.___", state 155, "(1)" | |
200 | line 299, "pan.___", state 156, "(1)" | |
201 | line 299, "pan.___", state 156, "(1)" | |
202 | line 303, "pan.___", state 164, "(1)" | |
203 | line 303, "pan.___", state 165, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
204 | line 303, "pan.___", state 165, "else" | |
205 | line 303, "pan.___", state 168, "(1)" | |
206 | line 303, "pan.___", state 169, "(1)" | |
207 | line 303, "pan.___", state 169, "(1)" | |
208 | line 301, "pan.___", state 174, "((i<1))" | |
209 | line 301, "pan.___", state 174, "((i>=1))" | |
210 | line 308, "pan.___", state 181, "(1)" | |
211 | line 308, "pan.___", state 182, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
212 | line 308, "pan.___", state 182, "else" | |
213 | line 308, "pan.___", state 185, "(1)" | |
214 | line 308, "pan.___", state 186, "(1)" | |
215 | line 308, "pan.___", state 186, "(1)" | |
216 | line 310, "pan.___", state 189, "(1)" | |
217 | line 310, "pan.___", state 189, "(1)" | |
218 | line 468, "pan.___", state 195, "(1)" | |
219 | line 462, "pan.___", state 198, "((write_lock==0))" | |
220 | line 462, "pan.___", state 198, "else" | |
221 | line 460, "pan.___", state 199, "(1)" | |
222 | line 144, "pan.___", state 206, "(1)" | |
223 | line 148, "pan.___", state 214, "(1)" | |
224 | line 148, "pan.___", state 215, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
225 | line 148, "pan.___", state 215, "else" | |
226 | line 146, "pan.___", state 220, "((j<1))" | |
227 | line 146, "pan.___", state 220, "((j>=1))" | |
228 | line 152, "pan.___", state 226, "(1)" | |
229 | line 152, "pan.___", state 227, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
230 | line 152, "pan.___", state 227, "else" | |
231 | line 186, "pan.___", state 232, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
232 | line 186, "pan.___", state 232, "else" | |
233 | line 144, "pan.___", state 238, "(1)" | |
234 | line 152, "pan.___", state 258, "(1)" | |
235 | line 144, "pan.___", state 274, "(1)" | |
236 | line 148, "pan.___", state 282, "(1)" | |
237 | line 152, "pan.___", state 294, "(1)" | |
238 | line 289, "pan.___", state 310, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
239 | line 293, "pan.___", state 324, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
240 | line 298, "pan.___", state 342, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
241 | line 299, "pan.___", state 355, "(1)" | |
242 | line 303, "pan.___", state 368, "(1)" | |
243 | line 308, "pan.___", state 385, "(1)" | |
244 | line 289, "pan.___", state 402, "(1)" | |
245 | line 293, "pan.___", state 414, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
246 | line 298, "pan.___", state 432, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
247 | line 303, "pan.___", state 458, "(1)" | |
248 | line 308, "pan.___", state 475, "(1)" | |
249 | line 293, "pan.___", state 505, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
250 | line 298, "pan.___", state 523, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
251 | line 303, "pan.___", state 549, "(1)" | |
252 | line 308, "pan.___", state 566, "(1)" | |
253 | line 148, "pan.___", state 588, "(1)" | |
254 | line 152, "pan.___", state 600, "(1)" | |
255 | line 144, "pan.___", state 612, "(1)" | |
256 | line 152, "pan.___", state 632, "(1)" | |
257 | line 148, "pan.___", state 656, "(1)" | |
258 | line 152, "pan.___", state 668, "(1)" | |
259 | line 289, "pan.___", state 692, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
260 | line 289, "pan.___", state 694, "(1)" | |
261 | line 289, "pan.___", state 695, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
262 | line 289, "pan.___", state 695, "else" | |
263 | line 289, "pan.___", state 698, "(1)" | |
264 | line 293, "pan.___", state 706, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
265 | line 293, "pan.___", state 708, "(1)" | |
266 | line 293, "pan.___", state 709, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
267 | line 293, "pan.___", state 709, "else" | |
268 | line 293, "pan.___", state 712, "(1)" | |
269 | line 293, "pan.___", state 713, "(1)" | |
270 | line 293, "pan.___", state 713, "(1)" | |
271 | line 291, "pan.___", state 718, "((i<1))" | |
272 | line 291, "pan.___", state 718, "((i>=1))" | |
273 | line 298, "pan.___", state 724, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
274 | line 299, "pan.___", state 737, "(1)" | |
275 | line 299, "pan.___", state 738, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
276 | line 299, "pan.___", state 738, "else" | |
277 | line 299, "pan.___", state 741, "(1)" | |
278 | line 299, "pan.___", state 742, "(1)" | |
279 | line 299, "pan.___", state 742, "(1)" | |
280 | line 303, "pan.___", state 750, "(1)" | |
281 | line 303, "pan.___", state 751, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
282 | line 303, "pan.___", state 751, "else" | |
283 | line 303, "pan.___", state 754, "(1)" | |
284 | line 303, "pan.___", state 755, "(1)" | |
285 | line 303, "pan.___", state 755, "(1)" | |
286 | line 301, "pan.___", state 760, "((i<1))" | |
287 | line 301, "pan.___", state 760, "((i>=1))" | |
288 | line 308, "pan.___", state 767, "(1)" | |
289 | line 308, "pan.___", state 768, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
290 | line 308, "pan.___", state 768, "else" | |
291 | line 308, "pan.___", state 771, "(1)" | |
292 | line 308, "pan.___", state 772, "(1)" | |
293 | line 308, "pan.___", state 772, "(1)" | |
294 | line 310, "pan.___", state 775, "(1)" | |
295 | line 310, "pan.___", state 775, "(1)" | |
296 | line 293, "pan.___", state 804, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
297 | line 298, "pan.___", state 822, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
298 | line 303, "pan.___", state 848, "(1)" | |
299 | line 308, "pan.___", state 865, "(1)" | |
300 | line 293, "pan.___", state 892, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
301 | line 298, "pan.___", state 910, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
302 | line 303, "pan.___", state 936, "(1)" | |
303 | line 308, "pan.___", state 953, "(1)" | |
304 | line 289, "pan.___", state 970, "(1)" | |
305 | line 293, "pan.___", state 982, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
306 | line 298, "pan.___", state 1000, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
307 | line 303, "pan.___", state 1026, "(1)" | |
308 | line 308, "pan.___", state 1043, "(1)" | |
309 | line 293, "pan.___", state 1073, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
310 | line 298, "pan.___", state 1091, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
311 | line 303, "pan.___", state 1117, "(1)" | |
312 | line 308, "pan.___", state 1134, "(1)" | |
313 | line 148, "pan.___", state 1156, "(1)" | |
314 | line 152, "pan.___", state 1168, "(1)" | |
315 | line 144, "pan.___", state 1180, "(1)" | |
316 | line 152, "pan.___", state 1200, "(1)" | |
317 | line 148, "pan.___", state 1224, "(1)" | |
318 | line 152, "pan.___", state 1236, "(1)" | |
319 | line 289, "pan.___", state 1260, "cache_dirty_urcu_gp_ctr.bitfield = (cache_dirty_urcu_gp_ctr.bitfield&~((1<<_pid)))" | |
320 | line 289, "pan.___", state 1262, "(1)" | |
321 | line 289, "pan.___", state 1263, "((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid)))" | |
322 | line 289, "pan.___", state 1263, "else" | |
323 | line 289, "pan.___", state 1266, "(1)" | |
324 | line 293, "pan.___", state 1274, "cache_dirty_urcu_active_readers.bitfield = (cache_dirty_urcu_active_readers.bitfield&~((1<<_pid)))" | |
325 | line 293, "pan.___", state 1276, "(1)" | |
326 | line 293, "pan.___", state 1277, "((cache_dirty_urcu_active_readers.bitfield&(1<<_pid)))" | |
327 | line 293, "pan.___", state 1277, "else" | |
328 | line 293, "pan.___", state 1280, "(1)" | |
329 | line 293, "pan.___", state 1281, "(1)" | |
330 | line 293, "pan.___", state 1281, "(1)" | |
331 | line 291, "pan.___", state 1286, "((i<1))" | |
332 | line 291, "pan.___", state 1286, "((i>=1))" | |
333 | line 298, "pan.___", state 1292, "cache_dirty_generation_ptr.bitfield = (cache_dirty_generation_ptr.bitfield&~((1<<_pid)))" | |
334 | line 299, "pan.___", state 1305, "(1)" | |
335 | line 299, "pan.___", state 1306, "(!((cache_dirty_urcu_gp_ctr.bitfield&(1<<_pid))))" | |
336 | line 299, "pan.___", state 1306, "else" | |
337 | line 299, "pan.___", state 1309, "(1)" | |
338 | line 299, "pan.___", state 1310, "(1)" | |
339 | line 299, "pan.___", state 1310, "(1)" | |
340 | line 303, "pan.___", state 1318, "(1)" | |
341 | line 303, "pan.___", state 1319, "(!((cache_dirty_urcu_active_readers.bitfield&(1<<_pid))))" | |
342 | line 303, "pan.___", state 1319, "else" | |
343 | line 303, "pan.___", state 1322, "(1)" | |
344 | line 303, "pan.___", state 1323, "(1)" | |
345 | line 303, "pan.___", state 1323, "(1)" | |
346 | line 301, "pan.___", state 1328, "((i<1))" | |
347 | line 301, "pan.___", state 1328, "((i>=1))" | |
348 | line 308, "pan.___", state 1335, "(1)" | |
349 | line 308, "pan.___", state 1336, "(!((cache_dirty_generation_ptr.bitfield&(1<<_pid))))" | |
350 | line 308, "pan.___", state 1336, "else" | |
351 | line 308, "pan.___", state 1339, "(1)" | |
352 | line 308, "pan.___", state 1340, "(1)" | |
353 | line 308, "pan.___", state 1340, "(1)" | |
354 | line 310, "pan.___", state 1343, "(1)" | |
355 | line 310, "pan.___", state 1343, "(1)" | |
356 | line 148, "pan.___", state 1367, "(1)" | |
357 | line 152, "pan.___", state 1379, "(1)" | |
358 | line 144, "pan.___", state 1391, "(1)" | |
359 | line 152, "pan.___", state 1411, "(1)" | |
360 | line 148, "pan.___", state 1435, "(1)" | |
361 | line 152, "pan.___", state 1447, "(1)" | |
362 | line 511, "pan.___", state 1473, "-end-" | |
363 | (159 of 1473 states) | |
364 | unreached in proctype :init: | |
365 | line 518, "pan.___", state 9, "((j<2))" | |
366 | line 518, "pan.___", state 9, "((j>=2))" | |
367 | line 519, "pan.___", state 20, "((j<2))" | |
368 | line 519, "pan.___", state 20, "((j>=2))" | |
369 | line 524, "pan.___", state 33, "((j<2))" | |
370 | line 524, "pan.___", state 33, "((j>=2))" | |
371 | (3 of 46 states) | |
372 | unreached in proctype :never: | |
373 | line 572, "pan.___", state 8, "-end-" | |
374 | (1 of 8 states) | |
375 | ||
376 | pan: elapsed time 10.4 seconds | |
377 | pan: rate 36378.399 states/second | |
378 | pan: avg transition delay 1.8293e-06 usec | |
379 | cp .input.spin urcu_free_no_wmb.spin.input | |
380 | cp .input.spin.trail urcu_free_no_wmb.spin.input.trail | |
381 | make[1]: Leaving directory `/home/compudj/doc/userspace-rcu/formal-model/urcu/testmerge' |