Line data Source code
1 :
2 : struct device;
3 :
4 : void *ldv_dev_get_drvdata(const struct device *dev);
5 : int ldv_dev_set_drvdata(struct device *dev, void *data);
6 :
7 : struct spi_master;
8 : struct device;
9 : struct spi_master *ldv_spi_alloc_master(struct device *host, unsigned size);
10 :
11 : #include <linux/ldv/err.h>
12 :
13 : #include <linux/types.h>
14 : void *ldv_kzalloc(size_t size, gfp_t flags);
15 :
16 : struct clk;
17 :
18 : extern void ldv_clk_disable(struct clk *clk);
19 : extern int ldv_clk_enable(void);
20 :
21 : #include <linux/ldv/common.h>
22 : #include <linux/ldv/irq.h>
23 : #include <verifier/common.h>
24 : #include <verifier/nondet.h>
25 : #include <verifier/memory.h>
26 : #include <verifier/thread.h>
27 :
28 : #include <linux/timer.h>
29 :
30 :
31 : struct ldv_struct_insmod_13 {
32 : int signal_pending;
33 : };
34 1 :
35 : struct ldv_struct_timer_scenario_12 {
36 : struct timer_list *arg0;
37 : int signal_pending;
38 : };
39 :
40 : /* EMG Function declarations */
41 : void ldv_dispatch_default_deregister_4_13_4(void);
42 : void ldv_dispatch_default_register_4_13_5(void);
43 : void ldv_dispatch_insmod_deregister_17_2(void);
44 : void ldv_dispatch_insmod_register_17_3(void);
45 : void ldv_dispatch_instance_deregister_14_1(struct timer_list *);
46 : void ldv_dispatch_instance_register_16_3(struct timer_list *);
47 : int ldv_emg_del_timer(struct timer_list *);
48 : int ldv_emg_del_timer_sync(struct timer_list *);
49 : int ldv_emg_mod_timer(struct timer_list *, long unsigned int);
50 : void ldv_insmod_13(void *);
51 : void ldv_insmod_cfq_exit_13_2(void (*)(void));
52 : int ldv_insmod_cfq_init_13_9(int (*)(void));
53 : void ldv_main_17(void *);
54 : void ldv_random_containerless_scenario_1(void *);
55 : void ldv_random_containerless_scenario_10(void *);
56 : void ldv_random_containerless_scenario_11(void *);
57 : void ldv_random_containerless_scenario_2(void *);
58 : void ldv_random_containerless_scenario_3(void *);
59 : void ldv_random_containerless_scenario_4(void *);
60 : void ldv_random_containerless_scenario_5(void *);
61 : void ldv_random_containerless_scenario_6(void *);
62 : void ldv_random_containerless_scenario_7(void *);
63 : void ldv_random_containerless_scenario_8(void *);
64 : void ldv_random_containerless_scenario_9(void *);
65 : void ldv_random_containerless_scenario_callback_10_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
66 : void ldv_random_containerless_scenario_callback_10_13(void (*)(struct io_context *), struct io_context *);
67 : void ldv_random_containerless_scenario_callback_10_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
68 : void ldv_random_containerless_scenario_callback_11_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
69 : void ldv_random_containerless_scenario_callback_11_13(void (*)(struct io_context *), struct io_context *);
70 : void ldv_random_containerless_scenario_callback_11_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
71 : void ldv_random_containerless_scenario_callback_1_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
72 : void ldv_random_containerless_scenario_callback_1_13(void (*)(struct io_context *), struct io_context *);
73 : void ldv_random_containerless_scenario_callback_1_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
74 : void ldv_random_containerless_scenario_callback_2_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
75 : void ldv_random_containerless_scenario_callback_2_13(void (*)(struct io_context *), struct io_context *);
76 : void ldv_random_containerless_scenario_callback_2_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
77 : void ldv_random_containerless_scenario_callback_3_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
78 : void ldv_random_containerless_scenario_callback_3_13(void (*)(struct io_context *), struct io_context *);
79 : void ldv_random_containerless_scenario_callback_3_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
80 : void ldv_random_containerless_scenario_callback_4_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
81 : void ldv_random_containerless_scenario_callback_4_13(void (*)(struct io_context *), struct io_context *);
82 : void ldv_random_containerless_scenario_callback_4_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
83 : void ldv_random_containerless_scenario_callback_5_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
84 : void ldv_random_containerless_scenario_callback_5_13(void (*)(struct io_context *), struct io_context *);
85 : void ldv_random_containerless_scenario_callback_5_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
86 : void ldv_random_containerless_scenario_callback_6_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
87 : void ldv_random_containerless_scenario_callback_6_13(void (*)(struct io_context *), struct io_context *);
88 : void ldv_random_containerless_scenario_callback_6_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
89 : void ldv_random_containerless_scenario_callback_7_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
90 : void ldv_random_containerless_scenario_callback_7_13(void (*)(struct io_context *), struct io_context *);
91 : void ldv_random_containerless_scenario_callback_7_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
92 : void ldv_random_containerless_scenario_callback_8_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
93 : void ldv_random_containerless_scenario_callback_8_13(void (*)(struct io_context *), struct io_context *);
94 : void ldv_random_containerless_scenario_callback_8_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
95 : void ldv_random_containerless_scenario_callback_9_10(ssize_t (*)(struct elevator_queue *, char *, size_t ), struct elevator_queue *, char *, long unsigned int);
96 : void ldv_random_containerless_scenario_callback_9_13(void (*)(struct io_context *), struct io_context *);
97 : void ldv_random_containerless_scenario_callback_9_4(ssize_t (*)(struct elevator_queue *, char *), struct elevator_queue *, char *);
98 : void ldv_timer_scenario_12(void *);
99 : void ldv_timer_scenario_callback_12_2(void (*)(unsigned long), unsigned long);
100 : int main(void);
101 :
102 : /* EMG variable declarations */
103 1 : struct ldv_thread ldv_thread_1;
104 1 : struct ldv_thread ldv_thread_10;
105 1 : struct ldv_thread ldv_thread_11;
106 1 : struct ldv_thread ldv_thread_12;
107 1 : struct ldv_thread ldv_thread_13;
108 1 : struct ldv_thread ldv_thread_17;
109 1 : struct ldv_thread ldv_thread_2;
110 1 : struct ldv_thread ldv_thread_3;
111 1 : struct ldv_thread ldv_thread_4;
112 1 : struct ldv_thread ldv_thread_5;
113 1 : struct ldv_thread ldv_thread_6;
114 1 : struct ldv_thread ldv_thread_7;
115 1 : struct ldv_thread ldv_thread_8;
116 1 : struct ldv_thread ldv_thread_9;
117 :
118 : /* EMG variable initialization */
119 :
120 : /* EMG function definitions */
121 : /* AUX_FUNC ldv_dispatch_default_deregister_4_13_4 */
122 : void ldv_dispatch_default_deregister_4_13_4() {
123 : struct ldv_struct_insmod_13 *cf_arg_1;
124 : struct ldv_struct_insmod_13 *cf_arg_2;
125 : struct ldv_struct_insmod_13 *cf_arg_3;
126 : struct ldv_struct_insmod_13 *cf_arg_4;
127 : struct ldv_struct_insmod_13 *cf_arg_5;
128 : struct ldv_struct_insmod_13 *cf_arg_6;
129 : struct ldv_struct_insmod_13 *cf_arg_7;
130 : struct ldv_struct_insmod_13 *cf_arg_8;
131 : struct ldv_struct_insmod_13 *cf_arg_9;
132 : struct ldv_struct_insmod_13 *cf_arg_10;
133 : struct ldv_struct_insmod_13 *cf_arg_11;
134 : /* Skip thread join call */
135 : /* Skip thread join call */
136 : /* Skip thread join call */
137 : /* Skip thread join call */
138 : /* Skip thread join call */
139 : /* Skip thread join call */
140 : /* Skip thread join call */
141 : /* Skip thread join call */
142 : /* Skip thread join call */
143 : /* Skip thread join call */
144 : /* Skip thread join call */
145 1 : return;
146 : }
147 :
148 : /* AUX_FUNC ldv_dispatch_default_register_4_13_5 */
149 : void ldv_dispatch_default_register_4_13_5() {
150 : struct ldv_struct_insmod_13 *cf_arg_1;
151 1 : struct ldv_struct_insmod_13 *cf_arg_2;
152 1 : struct ldv_struct_insmod_13 *cf_arg_3;
153 1 : struct ldv_struct_insmod_13 *cf_arg_4;
154 1 : struct ldv_struct_insmod_13 *cf_arg_5;
155 1 : struct ldv_struct_insmod_13 *cf_arg_6;
156 1 : struct ldv_struct_insmod_13 *cf_arg_7;
157 1 : struct ldv_struct_insmod_13 *cf_arg_8;
158 1 : struct ldv_struct_insmod_13 *cf_arg_9;
159 1 : struct ldv_struct_insmod_13 *cf_arg_10;
160 1 : struct ldv_struct_insmod_13 *cf_arg_11;
161 4 : cf_arg_1 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
162 3 : ldv_random_containerless_scenario_1(cf_arg_1);
163 4 : cf_arg_2 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
164 3 : ldv_random_containerless_scenario_2(cf_arg_2);
165 4 : cf_arg_3 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
166 3 : ldv_random_containerless_scenario_3(cf_arg_3);
167 4 : cf_arg_4 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
168 3 : ldv_random_containerless_scenario_4(cf_arg_4);
169 4 : cf_arg_5 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
170 3 : ldv_random_containerless_scenario_5(cf_arg_5);
171 4 : cf_arg_6 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
172 3 : ldv_random_containerless_scenario_6(cf_arg_6);
173 3 : cf_arg_7 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
174 2 : ldv_random_containerless_scenario_7(cf_arg_7);
175 3 : cf_arg_8 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
176 2 : ldv_random_containerless_scenario_8(cf_arg_8);
177 3 : cf_arg_9 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
178 2 : ldv_random_containerless_scenario_9(cf_arg_9);
179 3 : cf_arg_10 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
180 2 : ldv_random_containerless_scenario_10(cf_arg_10);
181 3 : cf_arg_11 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
182 2 : ldv_random_containerless_scenario_11(cf_arg_11);
183 1 : return;
184 : }
185 :
186 : /* AUX_FUNC ldv_dispatch_insmod_deregister_17_2 */
187 : void ldv_dispatch_insmod_deregister_17_2() {
188 : struct ldv_struct_insmod_13 *cf_arg_13;
189 : /* Skip thread join call */
190 1 : return;
191 : }
192 :
193 : /* AUX_FUNC ldv_dispatch_insmod_register_17_3 */
194 : void ldv_dispatch_insmod_register_17_3() {
195 : struct ldv_struct_insmod_13 *cf_arg_13;
196 4 : cf_arg_13 = ldv_xmalloc(sizeof(struct ldv_struct_insmod_13));
197 4 : ldv_insmod_13(cf_arg_13);
198 1 : return;
199 : }
200 :
201 : /* AUX_FUNC ldv_dispatch_instance_deregister_14_1 */
202 : void ldv_dispatch_instance_deregister_14_1(struct timer_list *arg0) {
203 : struct ldv_struct_timer_scenario_12 *cf_arg_12;
204 : /* Skip thread join call */
205 0 : return;
206 : }
207 :
208 : /* AUX_FUNC ldv_dispatch_instance_register_16_3 */
209 : void ldv_dispatch_instance_register_16_3(struct timer_list *arg0) {
210 : struct ldv_struct_timer_scenario_12 *cf_arg_12;
211 0 : cf_arg_12 = ldv_xmalloc(sizeof(struct ldv_struct_timer_scenario_12));
212 0 : cf_arg_12->arg0 = arg0;
213 0 : ldv_timer_scenario_12(cf_arg_12);
214 0 : return;
215 : }
216 :
217 : /* AUX_FUNC ldv_emg_del_timer */
218 : int ldv_emg_del_timer(struct timer_list *arg0) {
219 : /* LDV {"comment": "Control function 'del_timer'", "type": "CONTROL_FUNCTION_BEGIN", "function": "ldv_emg_del_timer"} */
220 0 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
221 : struct timer_list *ldv_14_timer_list_timer_list;
222 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
223 : /* LDV {"action": "ASSIGN", "type": "CONDITION_BEGIN", "comment": "Get timer representing structure."} */
224 0 : ldv_14_timer_list_timer_list = arg0;
225 : /* LDV {"action": "ASSIGN", "type": "CONDITION_END"} */
226 :
227 : /* LDV {"action": "INSTANCE_DEREGISTER", "type": "DISPATCH_BEGIN", "comment": "Deregister TIMER callbacks."} */
228 0 : ldv_dispatch_instance_deregister_14_1(ldv_14_timer_list_timer_list);
229 0 : /* LDV {"action": "INSTANCE_DEREGISTER", "type": "DISPATCH_END"} */
230 :
231 : /* Exit function at a terminal state */
232 : /* End of the process */
233 : /* LDV {"comment": "End of control function based on process 'del_timer'", "type": "CONTROL_FUNCTION_END", "function": "ldv_emg_del_timer"} */
234 : }
235 :
236 : /* AUX_FUNC ldv_emg_del_timer_sync */
237 : int ldv_emg_del_timer_sync(struct timer_list *arg0) {
238 : /* LDV {"comment": "Control function 'del_timer_sync'", "type": "CONTROL_FUNCTION_BEGIN", "function": "ldv_emg_del_timer_sync"} */
239 0 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
240 : struct timer_list *ldv_15_timer_list_timer_list;
241 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
242 : /* LDV {"action": "ASSIGN", "type": "CONDITION_BEGIN", "comment": "Get timer representing structure."} */
243 0 : ldv_15_timer_list_timer_list = arg0;
244 0 : /* LDV {"action": "ASSIGN", "type": "CONDITION_END"} */
245 :
246 : /* LDV {"action": "INSTANCE_DEREGISTER", "type": "DISPATCH_BEGIN", "comment": "Skip the action, since no callbacks has been found."} */
247 : /* Dispatch 'instance_deregister' is not expected by any process, skipping the action */
248 : /* Skip the dispatch because there is no process to receive the signal */
249 : /* LDV {"action": "INSTANCE_DEREGISTER", "type": "DISPATCH_END"} */
250 :
251 : /* Exit function at a terminal state */
252 : /* End of the process */
253 : /* LDV {"comment": "End of control function based on process 'del_timer_sync'", "type": "CONTROL_FUNCTION_END", "function": "ldv_emg_del_timer_sync"} */
254 : }
255 :
256 : /* AUX_FUNC ldv_emg_mod_timer */
257 : int ldv_emg_mod_timer(struct timer_list *arg0, long unsigned int arg1) {
258 : /* LDV {"comment": "Control function 'mod_timer'", "type": "CONTROL_FUNCTION_BEGIN", "function": "ldv_emg_mod_timer"} */
259 0 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
260 0 : struct timer_list *ldv_16_timer_list_timer_list;
261 0 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
262 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
263 :
264 0 : if (ldv_undef_int()) {
265 : /* LDV {"action": "ASSIGN", "type": "CONDITION_BEGIN", "comment": "Get timer representing structure."} */
266 0 : ldv_16_timer_list_timer_list = arg0;
267 : /* LDV {"action": "ASSIGN", "type": "CONDITION_END"} */
268 :
269 : /* LDV {"action": "INSTANCE_REGISTER", "type": "DISPATCH_BEGIN", "comment": "Register TIMER callbacks."} */
270 0 : ldv_dispatch_instance_register_16_3(ldv_16_timer_list_timer_list);
271 : /* LDV {"action": "INSTANCE_REGISTER", "type": "DISPATCH_END"} */
272 :
273 : /* LDV {"action": "SUCCESS", "type": "CONDITION_BEGIN", "comment": "Successfully modified a timer's timeout"} */
274 0 : return 0;
275 : /* LDV {"action": "SUCCESS", "type": "CONDITION_END"} */
276 :
277 : /* Exit function at a terminal state */
278 : }
279 : else {
280 : /* LDV {"action": "FAIL", "type": "CONDITION_BEGIN", "comment": "Failed to modify a timer's timeout"} */
281 0 : return ldv_undef_int_negative();
282 : /* LDV {"action": "FAIL", "type": "CONDITION_END"} */
283 :
284 : /* Exit function at a terminal state */
285 : }
286 : /* End of the process */
287 : /* LDV {"comment": "End of control function based on process 'mod_timer'", "type": "CONTROL_FUNCTION_END", "function": "ldv_emg_mod_timer"} */
288 : }
289 :
290 : /* AUX_FUNC ldv_insmod_13 */
291 : void ldv_insmod_13(void *arg0) {
292 : /* LDV {"thread": 13, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'insmod(artificial)'", "function": "ldv_insmod_13"} */
293 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
294 1 : void (*ldv_13_cfq_exit_default)(void);
295 1 : int (*ldv_13_cfq_init_default)(void);
296 1 : int ldv_13_ret_default;
297 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
298 : /* LDV {"action": "INSMOD_REGISTER", "type": "RECEIVE_BEGIN", "comment": "Trigger module initialization."} */
299 2 : ldv_free(arg0);
300 : /* LDV {"action": "INSMOD_REGISTER", "type": "RECEIVE_END"} */
301 :
302 : /* LDV {"action": "CFQ_INIT", "type": "CALL_BEGIN", "callback": true, "comment": "Initialize the module after insmod with 'cfq_init' function. Invoke callback cfq_init from ARTIFICIAL."} */
303 : /* LDV {"type": "CALLBACK", "call": "ldv_13_ret_default = (cfq_init)();", "comment": "cfq_init"} */
304 2 : ldv_13_ret_default = ldv_insmod_cfq_init_13_9(ldv_13_cfq_init_default);
305 : /* Callback post-call */
306 2 : ldv_13_ret_default = ldv_post_init(ldv_13_ret_default);
307 : /* LDV {"action": "CFQ_INIT", "type": "CALL_END"} */
308 :
309 4 : if (ldv_undef_int()) {
310 : /* LDV {"action": "INIT_FAILED", "type": "CONDITION_BEGIN", "comment": "Failed to initialize the module."} */
311 2 : ldv_assume(ldv_13_ret_default != 0);
312 : /* LDV {"action": "INIT_FAILED", "type": "CONDITION_END"} */
313 :
314 : /* LDV {"action": "INSMOD_DEREGISTER", "type": "RECEIVE_BEGIN", "comment": "Trigger module exit."} */
315 : /* Skip a non-replicative signal receiving */
316 : /* LDV {"action": "INSMOD_DEREGISTER", "type": "RECEIVE_END"} */
317 :
318 : /* Exit function at a terminal state */
319 1 : return;
320 : }
321 : else {
322 : /* LDV {"action": "INIT_SUCCESS", "type": "CONDITION_BEGIN", "comment": "Module has been initialized."} */
323 2 : ldv_assume(ldv_13_ret_default == 0);
324 : /* LDV {"action": "INIT_SUCCESS", "type": "CONDITION_END"} */
325 :
326 4 : if (ldv_undef_int()) {
327 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "DISPATCH_BEGIN", "comment": "Register 'STRUCT_ELV_FS_ENTRY' callbacks with unknown registration function."} */
328 2 : ldv_dispatch_default_register_4_13_5();
329 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "DISPATCH_END"} */
330 :
331 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "DISPATCH_BEGIN", "comment": "Deregister 'STRUCT_ELV_FS_ENTRY' callbacks with unknown deregistration function."} */
332 2 : ldv_dispatch_default_deregister_4_13_4();
333 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "DISPATCH_END"} */
334 :
335 : }
336 : else {
337 : /* LDV {"action": "NONE", "type": "CONDITION_BEGIN", "comment": "Skip default callbacks registrations and deregistrations."} */
338 : /* LDV {"action": "NONE", "type": "CONDITION_END"} */
339 :
340 : }
341 : /* LDV {"action": "CFQ_EXIT", "type": "CALL_BEGIN", "callback": true, "comment": "Exit the module before its unloading with 'cfq_exit' function. Invoke callback cfq_exit from ARTIFICIAL."} */
342 : /* LDV {"type": "CALLBACK", "call": "(cfq_exit)();", "comment": "cfq_exit"} */
343 4 : ldv_insmod_cfq_exit_13_2(ldv_13_cfq_exit_default);
344 : /* LDV {"action": "CFQ_EXIT", "type": "CALL_END"} */
345 :
346 : /* LDV {"action": "INSMOD_DEREGISTER", "type": "RECEIVE_BEGIN", "comment": "Trigger module exit."} */
347 : /* Skip a non-replicative signal receiving */
348 : /* LDV {"action": "INSMOD_DEREGISTER", "type": "RECEIVE_END"} */
349 :
350 : /* Exit function at a terminal state */
351 1 : return;
352 : }
353 : /* End of the process */
354 : return;
355 : /* LDV {"comment": "End of control function based on process 'insmod(artificial)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_insmod_13"} */
356 : }
357 :
358 : /* AUX_FUNC_CALLBACK ldv_insmod_cfq_exit_13_2 */
359 : void ldv_insmod_cfq_exit_13_2(void (*arg0)(void)) {
360 4 : (cfq_exit)();
361 2 : }
362 :
363 : /* AUX_FUNC_CALLBACK ldv_insmod_cfq_init_13_9 */
364 : int ldv_insmod_cfq_init_13_9(int (*arg0)(void)) {
365 4 : return (cfq_init)();
366 1 : }
367 :
368 : /* AUX_FUNC ldv_main_17 */
369 : void ldv_main_17(void *arg0) {
370 : /* LDV {"thread": 17, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'main(main)'", "function": "ldv_main_17"} */
371 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
372 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
373 : /* LDV {"action": "INIT", "type": "CONDITION_BEGIN", "comment": "Initialize rule models."} */
374 1 : ldv_initialize();
375 : /* LDV {"action": "INIT", "type": "CONDITION_END"} */
376 :
377 : /* LDV {"action": "INSMOD_REGISTER", "type": "DISPATCH_BEGIN", "comment": "Start environment model scenarios."} */
378 2 : ldv_dispatch_insmod_register_17_3();
379 : /* LDV {"action": "INSMOD_REGISTER", "type": "DISPATCH_END"} */
380 :
381 : /* LDV {"action": "INSMOD_DEREGISTER", "type": "DISPATCH_BEGIN", "comment": "Stop environment model scenarios."} */
382 2 : ldv_dispatch_insmod_deregister_17_2();
383 : /* LDV {"action": "INSMOD_DEREGISTER", "type": "DISPATCH_END"} */
384 :
385 : /* LDV {"action": "FINAL", "type": "CONDITION_BEGIN", "comment": "Check rule model state at the exit."} */
386 1 : ldv_check_final_state();
387 1 : ldv_stop();
388 : /* LDV {"action": "FINAL", "type": "CONDITION_END"} */
389 :
390 : /* Exit function at a terminal state */
391 0 : return;
392 : /* End of the process */
393 : return;
394 : /* LDV {"comment": "End of control function based on process 'main(main)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_main_17"} */
395 : }
396 :
397 : /* AUX_FUNC ldv_random_containerless_scenario_1 */
398 : void ldv_random_containerless_scenario_1(void *arg0) {
399 : /* LDV {"thread": 1, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_1"} */
400 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
401 1 : ssize_t (*ldv_1_callback_show)(struct elevator_queue *, char *);
402 1 : ssize_t (*ldv_1_callback_store)(struct elevator_queue *, char *, size_t );
403 1 : void (*ldv_1_callback_trim)(struct io_context *);
404 1 : struct elevator_queue *ldv_1_container_struct_elevator_queue_ptr;
405 1 : struct io_context *ldv_1_container_struct_io_context_ptr;
406 1 : char *ldv_1_ldv_param_10_1_default;
407 1 : long unsigned int ldv_1_ldv_param_10_2_default;
408 1 : char *ldv_1_ldv_param_4_1_default;
409 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
410 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
411 3 : ldv_free(arg0);
412 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
413 1 :
414 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
415 3 : ldv_1_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
416 3 : ldv_1_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
417 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
418 :
419 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
420 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
421 :
422 : /* Jump to a subprocess 'call' initial state */
423 1 : goto ldv_call_1;
424 : /* End of the process */
425 : return;
426 1 :
427 : /* Sbprocess call */
428 : ldv_call_1:
429 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
430 :
431 4 : if (ldv_undef_int()) {
432 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
433 3 : ldv_1_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
434 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
435 :
436 2 : switch (ldv_undef_int()) {
437 3 : case 1: {
438 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
439 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_1_container_struct_io_context_ptr);", "comment": "callback"} */
440 2 : ldv_random_containerless_scenario_callback_1_13(ldv_1_callback_trim, ldv_1_container_struct_io_context_ptr);
441 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
442 :
443 1 : break;
444 1 : }
445 3 : case 2: {
446 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
447 3 : ldv_1_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
448 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
449 :
450 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
451 : /* LDV {"type": "CALLBACK", "call": "((& cfq_back_seek_max_store))(ldv_1_container_struct_elevator_queue_ptr, ldv_1_ldv_param_10_1_default, ldv_1_ldv_param_10_2_default);", "comment": "callback"} */
452 2 : ldv_random_containerless_scenario_callback_1_10(ldv_1_callback_store, ldv_1_container_struct_elevator_queue_ptr, ldv_1_ldv_param_10_1_default, ldv_1_ldv_param_10_2_default);
453 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
454 :
455 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
456 2 : ldv_free(ldv_1_ldv_param_10_1_default);
457 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
458 :
459 1 : break;
460 1 : }
461 3 : case 3: {
462 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
463 : /* LDV {"type": "CALLBACK", "call": "((& cfq_back_seek_max_show))(ldv_1_container_struct_elevator_queue_ptr, ldv_1_ldv_param_4_1_default);", "comment": "callback"} */
464 2 : ldv_random_containerless_scenario_callback_1_4(ldv_1_callback_show, ldv_1_container_struct_elevator_queue_ptr, ldv_1_ldv_param_4_1_default);
465 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
466 :
467 1 : break;
468 1 : }
469 2 : default: ldv_stop();
470 1 : }
471 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
472 6 : ldv_free(ldv_1_ldv_param_4_1_default);
473 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
474 :
475 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
476 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
477 :
478 : /* Jump to a subprocess 'call' initial state */
479 1 : goto ldv_call_1;
480 : }
481 : else {
482 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
483 2 : ldv_free(ldv_1_container_struct_elevator_queue_ptr);
484 2 : ldv_free(ldv_1_container_struct_io_context_ptr);
485 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
486 :
487 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
488 : /* Skip a non-replicative signal receiving */
489 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
490 :
491 : /* Exit function at a terminal state */
492 1 : return;
493 : }
494 : /* End of the subprocess 'call' */
495 : return;
496 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_1"} */
497 : }
498 :
499 : /* AUX_FUNC ldv_random_containerless_scenario_10 */
500 : void ldv_random_containerless_scenario_10(void *arg0) {
501 : /* LDV {"thread": 10, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_10"} */
502 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
503 1 : ssize_t (*ldv_10_callback_show)(struct elevator_queue *, char *);
504 1 : ssize_t (*ldv_10_callback_store)(struct elevator_queue *, char *, size_t );
505 1 : void (*ldv_10_callback_trim)(struct io_context *);
506 1 : struct elevator_queue *ldv_10_container_struct_elevator_queue_ptr;
507 1 : struct io_context *ldv_10_container_struct_io_context_ptr;
508 1 : char *ldv_10_ldv_param_10_1_default;
509 1 : long unsigned int ldv_10_ldv_param_10_2_default;
510 1 : char *ldv_10_ldv_param_4_1_default;
511 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
512 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
513 3 : ldv_free(arg0);
514 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
515 1 :
516 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
517 3 : ldv_10_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
518 3 : ldv_10_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
519 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
520 :
521 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
522 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
523 :
524 : /* Jump to a subprocess 'call' initial state */
525 1 : goto ldv_call_10;
526 : /* End of the process */
527 : return;
528 1 :
529 : /* Sbprocess call */
530 : ldv_call_10:
531 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
532 :
533 4 : if (ldv_undef_int()) {
534 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
535 3 : ldv_10_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
536 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
537 :
538 2 : switch (ldv_undef_int()) {
539 3 : case 1: {
540 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
541 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_10_container_struct_io_context_ptr);", "comment": "callback"} */
542 2 : ldv_random_containerless_scenario_callback_10_13(ldv_10_callback_trim, ldv_10_container_struct_io_context_ptr);
543 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
544 :
545 1 : break;
546 1 : }
547 3 : case 2: {
548 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
549 3 : ldv_10_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
550 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
551 :
552 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
553 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_idle_store))(ldv_10_container_struct_elevator_queue_ptr, ldv_10_ldv_param_10_1_default, ldv_10_ldv_param_10_2_default);", "comment": "callback"} */
554 2 : ldv_random_containerless_scenario_callback_10_10(ldv_10_callback_store, ldv_10_container_struct_elevator_queue_ptr, ldv_10_ldv_param_10_1_default, ldv_10_ldv_param_10_2_default);
555 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
556 :
557 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
558 2 : ldv_free(ldv_10_ldv_param_10_1_default);
559 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
560 :
561 1 : break;
562 1 : }
563 3 : case 3: {
564 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
565 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_idle_show))(ldv_10_container_struct_elevator_queue_ptr, ldv_10_ldv_param_4_1_default);", "comment": "callback"} */
566 2 : ldv_random_containerless_scenario_callback_10_4(ldv_10_callback_show, ldv_10_container_struct_elevator_queue_ptr, ldv_10_ldv_param_4_1_default);
567 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
568 :
569 1 : break;
570 1 : }
571 2 : default: ldv_stop();
572 1 : }
573 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
574 6 : ldv_free(ldv_10_ldv_param_4_1_default);
575 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
576 :
577 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
578 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
579 :
580 : /* Jump to a subprocess 'call' initial state */
581 1 : goto ldv_call_10;
582 : }
583 : else {
584 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
585 2 : ldv_free(ldv_10_container_struct_elevator_queue_ptr);
586 2 : ldv_free(ldv_10_container_struct_io_context_ptr);
587 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
588 :
589 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
590 : /* Skip a non-replicative signal receiving */
591 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
592 :
593 : /* Exit function at a terminal state */
594 1 : return;
595 : }
596 : /* End of the subprocess 'call' */
597 : return;
598 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_10"} */
599 : }
600 :
601 : /* AUX_FUNC ldv_random_containerless_scenario_11 */
602 : void ldv_random_containerless_scenario_11(void *arg0) {
603 : /* LDV {"thread": 11, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_11"} */
604 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
605 1 : ssize_t (*ldv_11_callback_show)(struct elevator_queue *, char *);
606 1 : ssize_t (*ldv_11_callback_store)(struct elevator_queue *, char *, size_t );
607 1 : void (*ldv_11_callback_trim)(struct io_context *);
608 1 : struct elevator_queue *ldv_11_container_struct_elevator_queue_ptr;
609 1 : struct io_context *ldv_11_container_struct_io_context_ptr;
610 1 : char *ldv_11_ldv_param_10_1_default;
611 1 : long unsigned int ldv_11_ldv_param_10_2_default;
612 1 : char *ldv_11_ldv_param_4_1_default;
613 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
614 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
615 3 : ldv_free(arg0);
616 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
617 1 :
618 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
619 3 : ldv_11_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
620 3 : ldv_11_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
621 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
622 :
623 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
624 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
625 :
626 : /* Jump to a subprocess 'call' initial state */
627 1 : goto ldv_call_11;
628 : /* End of the process */
629 : return;
630 1 :
631 : /* Sbprocess call */
632 : ldv_call_11:
633 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
634 :
635 4 : if (ldv_undef_int()) {
636 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
637 3 : ldv_11_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
638 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
639 :
640 2 : switch (ldv_undef_int()) {
641 3 : case 1: {
642 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
643 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_11_container_struct_io_context_ptr);", "comment": "callback"} */
644 2 : ldv_random_containerless_scenario_callback_11_13(ldv_11_callback_trim, ldv_11_container_struct_io_context_ptr);
645 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
646 :
647 1 : break;
648 1 : }
649 3 : case 2: {
650 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
651 3 : ldv_11_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
652 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
653 :
654 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
655 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_sync_store))(ldv_11_container_struct_elevator_queue_ptr, ldv_11_ldv_param_10_1_default, ldv_11_ldv_param_10_2_default);", "comment": "callback"} */
656 2 : ldv_random_containerless_scenario_callback_11_10(ldv_11_callback_store, ldv_11_container_struct_elevator_queue_ptr, ldv_11_ldv_param_10_1_default, ldv_11_ldv_param_10_2_default);
657 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
658 :
659 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
660 2 : ldv_free(ldv_11_ldv_param_10_1_default);
661 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
662 :
663 1 : break;
664 1 : }
665 3 : case 3: {
666 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
667 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_sync_show))(ldv_11_container_struct_elevator_queue_ptr, ldv_11_ldv_param_4_1_default);", "comment": "callback"} */
668 2 : ldv_random_containerless_scenario_callback_11_4(ldv_11_callback_show, ldv_11_container_struct_elevator_queue_ptr, ldv_11_ldv_param_4_1_default);
669 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
670 :
671 1 : break;
672 1 : }
673 2 : default: ldv_stop();
674 1 : }
675 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
676 6 : ldv_free(ldv_11_ldv_param_4_1_default);
677 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
678 :
679 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
680 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
681 :
682 : /* Jump to a subprocess 'call' initial state */
683 1 : goto ldv_call_11;
684 : }
685 : else {
686 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
687 2 : ldv_free(ldv_11_container_struct_elevator_queue_ptr);
688 2 : ldv_free(ldv_11_container_struct_io_context_ptr);
689 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
690 :
691 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
692 : /* Skip a non-replicative signal receiving */
693 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
694 :
695 : /* Exit function at a terminal state */
696 1 : return;
697 : }
698 : /* End of the subprocess 'call' */
699 : return;
700 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_11"} */
701 : }
702 :
703 : /* AUX_FUNC ldv_random_containerless_scenario_2 */
704 : void ldv_random_containerless_scenario_2(void *arg0) {
705 : /* LDV {"thread": 2, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_2"} */
706 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
707 1 : ssize_t (*ldv_2_callback_show)(struct elevator_queue *, char *);
708 1 : ssize_t (*ldv_2_callback_store)(struct elevator_queue *, char *, size_t );
709 1 : void (*ldv_2_callback_trim)(struct io_context *);
710 1 : struct elevator_queue *ldv_2_container_struct_elevator_queue_ptr;
711 1 : struct io_context *ldv_2_container_struct_io_context_ptr;
712 1 : char *ldv_2_ldv_param_10_1_default;
713 1 : long unsigned int ldv_2_ldv_param_10_2_default;
714 1 : char *ldv_2_ldv_param_4_1_default;
715 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
716 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
717 3 : ldv_free(arg0);
718 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
719 1 :
720 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
721 3 : ldv_2_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
722 3 : ldv_2_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
723 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
724 :
725 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
726 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
727 :
728 : /* Jump to a subprocess 'call' initial state */
729 1 : goto ldv_call_2;
730 : /* End of the process */
731 : return;
732 1 :
733 : /* Sbprocess call */
734 : ldv_call_2:
735 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
736 :
737 4 : if (ldv_undef_int()) {
738 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
739 3 : ldv_2_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
740 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
741 :
742 2 : switch (ldv_undef_int()) {
743 3 : case 1: {
744 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
745 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_2_container_struct_io_context_ptr);", "comment": "callback"} */
746 2 : ldv_random_containerless_scenario_callback_2_13(ldv_2_callback_trim, ldv_2_container_struct_io_context_ptr);
747 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
748 :
749 1 : break;
750 1 : }
751 3 : case 2: {
752 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
753 3 : ldv_2_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
754 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
755 :
756 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
757 : /* LDV {"type": "CALLBACK", "call": "((& cfq_back_seek_penalty_store))(ldv_2_container_struct_elevator_queue_ptr, ldv_2_ldv_param_10_1_default, ldv_2_ldv_param_10_2_default);", "comment": "callback"} */
758 2 : ldv_random_containerless_scenario_callback_2_10(ldv_2_callback_store, ldv_2_container_struct_elevator_queue_ptr, ldv_2_ldv_param_10_1_default, ldv_2_ldv_param_10_2_default);
759 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
760 :
761 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
762 2 : ldv_free(ldv_2_ldv_param_10_1_default);
763 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
764 :
765 1 : break;
766 1 : }
767 3 : case 3: {
768 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
769 : /* LDV {"type": "CALLBACK", "call": "((& cfq_back_seek_penalty_show))(ldv_2_container_struct_elevator_queue_ptr, ldv_2_ldv_param_4_1_default);", "comment": "callback"} */
770 2 : ldv_random_containerless_scenario_callback_2_4(ldv_2_callback_show, ldv_2_container_struct_elevator_queue_ptr, ldv_2_ldv_param_4_1_default);
771 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
772 :
773 1 : break;
774 1 : }
775 2 : default: ldv_stop();
776 1 : }
777 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
778 6 : ldv_free(ldv_2_ldv_param_4_1_default);
779 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
780 :
781 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
782 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
783 :
784 : /* Jump to a subprocess 'call' initial state */
785 1 : goto ldv_call_2;
786 : }
787 : else {
788 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
789 2 : ldv_free(ldv_2_container_struct_elevator_queue_ptr);
790 2 : ldv_free(ldv_2_container_struct_io_context_ptr);
791 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
792 :
793 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
794 : /* Skip a non-replicative signal receiving */
795 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
796 :
797 : /* Exit function at a terminal state */
798 1 : return;
799 : }
800 : /* End of the subprocess 'call' */
801 : return;
802 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_2"} */
803 : }
804 :
805 : /* AUX_FUNC ldv_random_containerless_scenario_3 */
806 : void ldv_random_containerless_scenario_3(void *arg0) {
807 : /* LDV {"thread": 3, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_3"} */
808 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
809 1 : ssize_t (*ldv_3_callback_show)(struct elevator_queue *, char *);
810 1 : ssize_t (*ldv_3_callback_store)(struct elevator_queue *, char *, size_t );
811 1 : void (*ldv_3_callback_trim)(struct io_context *);
812 1 : struct elevator_queue *ldv_3_container_struct_elevator_queue_ptr;
813 1 : struct io_context *ldv_3_container_struct_io_context_ptr;
814 1 : char *ldv_3_ldv_param_10_1_default;
815 1 : long unsigned int ldv_3_ldv_param_10_2_default;
816 1 : char *ldv_3_ldv_param_4_1_default;
817 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
818 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
819 3 : ldv_free(arg0);
820 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
821 1 :
822 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
823 3 : ldv_3_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
824 3 : ldv_3_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
825 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
826 :
827 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
828 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
829 :
830 : /* Jump to a subprocess 'call' initial state */
831 1 : goto ldv_call_3;
832 : /* End of the process */
833 : return;
834 1 :
835 : /* Sbprocess call */
836 : ldv_call_3:
837 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
838 :
839 4 : if (ldv_undef_int()) {
840 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
841 3 : ldv_3_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
842 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
843 :
844 2 : switch (ldv_undef_int()) {
845 3 : case 1: {
846 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
847 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_3_container_struct_io_context_ptr);", "comment": "callback"} */
848 2 : ldv_random_containerless_scenario_callback_3_13(ldv_3_callback_trim, ldv_3_container_struct_io_context_ptr);
849 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
850 :
851 1 : break;
852 1 : }
853 3 : case 2: {
854 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
855 3 : ldv_3_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
856 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
857 :
858 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
859 : /* LDV {"type": "CALLBACK", "call": "((& cfq_fifo_expire_async_store))(ldv_3_container_struct_elevator_queue_ptr, ldv_3_ldv_param_10_1_default, ldv_3_ldv_param_10_2_default);", "comment": "callback"} */
860 2 : ldv_random_containerless_scenario_callback_3_10(ldv_3_callback_store, ldv_3_container_struct_elevator_queue_ptr, ldv_3_ldv_param_10_1_default, ldv_3_ldv_param_10_2_default);
861 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
862 :
863 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
864 2 : ldv_free(ldv_3_ldv_param_10_1_default);
865 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
866 :
867 1 : break;
868 1 : }
869 3 : case 3: {
870 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
871 : /* LDV {"type": "CALLBACK", "call": "((& cfq_fifo_expire_async_show))(ldv_3_container_struct_elevator_queue_ptr, ldv_3_ldv_param_4_1_default);", "comment": "callback"} */
872 2 : ldv_random_containerless_scenario_callback_3_4(ldv_3_callback_show, ldv_3_container_struct_elevator_queue_ptr, ldv_3_ldv_param_4_1_default);
873 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
874 :
875 1 : break;
876 1 : }
877 2 : default: ldv_stop();
878 1 : }
879 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
880 6 : ldv_free(ldv_3_ldv_param_4_1_default);
881 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
882 :
883 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
884 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
885 :
886 : /* Jump to a subprocess 'call' initial state */
887 1 : goto ldv_call_3;
888 : }
889 : else {
890 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
891 2 : ldv_free(ldv_3_container_struct_elevator_queue_ptr);
892 2 : ldv_free(ldv_3_container_struct_io_context_ptr);
893 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
894 :
895 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
896 : /* Skip a non-replicative signal receiving */
897 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
898 :
899 : /* Exit function at a terminal state */
900 1 : return;
901 : }
902 : /* End of the subprocess 'call' */
903 : return;
904 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_3"} */
905 : }
906 :
907 : /* AUX_FUNC ldv_random_containerless_scenario_4 */
908 : void ldv_random_containerless_scenario_4(void *arg0) {
909 : /* LDV {"thread": 4, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_4"} */
910 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
911 1 : ssize_t (*ldv_4_callback_show)(struct elevator_queue *, char *);
912 1 : ssize_t (*ldv_4_callback_store)(struct elevator_queue *, char *, size_t );
913 1 : void (*ldv_4_callback_trim)(struct io_context *);
914 1 : struct elevator_queue *ldv_4_container_struct_elevator_queue_ptr;
915 1 : struct io_context *ldv_4_container_struct_io_context_ptr;
916 1 : char *ldv_4_ldv_param_10_1_default;
917 1 : long unsigned int ldv_4_ldv_param_10_2_default;
918 1 : char *ldv_4_ldv_param_4_1_default;
919 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
920 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
921 3 : ldv_free(arg0);
922 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
923 1 :
924 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
925 3 : ldv_4_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
926 3 : ldv_4_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
927 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
928 :
929 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
930 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
931 :
932 : /* Jump to a subprocess 'call' initial state */
933 1 : goto ldv_call_4;
934 : /* End of the process */
935 : return;
936 1 :
937 : /* Sbprocess call */
938 : ldv_call_4:
939 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
940 :
941 4 : if (ldv_undef_int()) {
942 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
943 3 : ldv_4_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
944 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
945 :
946 2 : switch (ldv_undef_int()) {
947 3 : case 1: {
948 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
949 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_4_container_struct_io_context_ptr);", "comment": "callback"} */
950 2 : ldv_random_containerless_scenario_callback_4_13(ldv_4_callback_trim, ldv_4_container_struct_io_context_ptr);
951 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
952 :
953 1 : break;
954 1 : }
955 3 : case 2: {
956 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
957 3 : ldv_4_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
958 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
959 :
960 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
961 : /* LDV {"type": "CALLBACK", "call": "((& cfq_fifo_expire_sync_store))(ldv_4_container_struct_elevator_queue_ptr, ldv_4_ldv_param_10_1_default, ldv_4_ldv_param_10_2_default);", "comment": "callback"} */
962 2 : ldv_random_containerless_scenario_callback_4_10(ldv_4_callback_store, ldv_4_container_struct_elevator_queue_ptr, ldv_4_ldv_param_10_1_default, ldv_4_ldv_param_10_2_default);
963 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
964 :
965 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
966 2 : ldv_free(ldv_4_ldv_param_10_1_default);
967 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
968 :
969 1 : break;
970 1 : }
971 3 : case 3: {
972 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
973 : /* LDV {"type": "CALLBACK", "call": "((& cfq_fifo_expire_sync_show))(ldv_4_container_struct_elevator_queue_ptr, ldv_4_ldv_param_4_1_default);", "comment": "callback"} */
974 2 : ldv_random_containerless_scenario_callback_4_4(ldv_4_callback_show, ldv_4_container_struct_elevator_queue_ptr, ldv_4_ldv_param_4_1_default);
975 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
976 :
977 1 : break;
978 1 : }
979 2 : default: ldv_stop();
980 1 : }
981 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
982 6 : ldv_free(ldv_4_ldv_param_4_1_default);
983 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
984 :
985 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
986 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
987 :
988 : /* Jump to a subprocess 'call' initial state */
989 1 : goto ldv_call_4;
990 : }
991 : else {
992 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
993 2 : ldv_free(ldv_4_container_struct_elevator_queue_ptr);
994 2 : ldv_free(ldv_4_container_struct_io_context_ptr);
995 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
996 :
997 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
998 : /* Skip a non-replicative signal receiving */
999 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
1000 :
1001 : /* Exit function at a terminal state */
1002 1 : return;
1003 : }
1004 : /* End of the subprocess 'call' */
1005 : return;
1006 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_4"} */
1007 : }
1008 :
1009 : /* AUX_FUNC ldv_random_containerless_scenario_5 */
1010 : void ldv_random_containerless_scenario_5(void *arg0) {
1011 : /* LDV {"thread": 5, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_5"} */
1012 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
1013 1 : ssize_t (*ldv_5_callback_show)(struct elevator_queue *, char *);
1014 1 : ssize_t (*ldv_5_callback_store)(struct elevator_queue *, char *, size_t );
1015 1 : void (*ldv_5_callback_trim)(struct io_context *);
1016 1 : struct elevator_queue *ldv_5_container_struct_elevator_queue_ptr;
1017 1 : struct io_context *ldv_5_container_struct_io_context_ptr;
1018 1 : char *ldv_5_ldv_param_10_1_default;
1019 1 : long unsigned int ldv_5_ldv_param_10_2_default;
1020 1 : char *ldv_5_ldv_param_4_1_default;
1021 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
1022 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1023 3 : ldv_free(arg0);
1024 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
1025 1 :
1026 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
1027 3 : ldv_5_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
1028 3 : ldv_5_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
1029 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
1030 :
1031 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1032 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1033 :
1034 : /* Jump to a subprocess 'call' initial state */
1035 1 : goto ldv_call_5;
1036 : /* End of the process */
1037 : return;
1038 1 :
1039 : /* Sbprocess call */
1040 : ldv_call_5:
1041 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
1042 :
1043 4 : if (ldv_undef_int()) {
1044 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1045 3 : ldv_5_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
1046 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
1047 :
1048 2 : switch (ldv_undef_int()) {
1049 3 : case 1: {
1050 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
1051 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_5_container_struct_io_context_ptr);", "comment": "callback"} */
1052 2 : ldv_random_containerless_scenario_callback_5_13(ldv_5_callback_trim, ldv_5_container_struct_io_context_ptr);
1053 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1054 :
1055 1 : break;
1056 1 : }
1057 3 : case 2: {
1058 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1059 3 : ldv_5_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
1060 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
1061 :
1062 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
1063 : /* LDV {"type": "CALLBACK", "call": "((& cfq_group_isolation_store))(ldv_5_container_struct_elevator_queue_ptr, ldv_5_ldv_param_10_1_default, ldv_5_ldv_param_10_2_default);", "comment": "callback"} */
1064 2 : ldv_random_containerless_scenario_callback_5_10(ldv_5_callback_store, ldv_5_container_struct_elevator_queue_ptr, ldv_5_ldv_param_10_1_default, ldv_5_ldv_param_10_2_default);
1065 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1066 :
1067 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1068 2 : ldv_free(ldv_5_ldv_param_10_1_default);
1069 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
1070 :
1071 1 : break;
1072 1 : }
1073 3 : case 3: {
1074 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
1075 : /* LDV {"type": "CALLBACK", "call": "((& cfq_group_isolation_show))(ldv_5_container_struct_elevator_queue_ptr, ldv_5_ldv_param_4_1_default);", "comment": "callback"} */
1076 2 : ldv_random_containerless_scenario_callback_5_4(ldv_5_callback_show, ldv_5_container_struct_elevator_queue_ptr, ldv_5_ldv_param_4_1_default);
1077 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1078 :
1079 1 : break;
1080 1 : }
1081 2 : default: ldv_stop();
1082 1 : }
1083 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1084 6 : ldv_free(ldv_5_ldv_param_4_1_default);
1085 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
1086 :
1087 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1088 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1089 :
1090 : /* Jump to a subprocess 'call' initial state */
1091 1 : goto ldv_call_5;
1092 : }
1093 : else {
1094 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
1095 2 : ldv_free(ldv_5_container_struct_elevator_queue_ptr);
1096 2 : ldv_free(ldv_5_container_struct_io_context_ptr);
1097 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
1098 :
1099 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1100 : /* Skip a non-replicative signal receiving */
1101 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
1102 :
1103 : /* Exit function at a terminal state */
1104 1 : return;
1105 : }
1106 : /* End of the subprocess 'call' */
1107 : return;
1108 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_5"} */
1109 : }
1110 :
1111 : /* AUX_FUNC ldv_random_containerless_scenario_6 */
1112 : void ldv_random_containerless_scenario_6(void *arg0) {
1113 : /* LDV {"thread": 6, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_6"} */
1114 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
1115 1 : ssize_t (*ldv_6_callback_show)(struct elevator_queue *, char *);
1116 1 : ssize_t (*ldv_6_callback_store)(struct elevator_queue *, char *, size_t );
1117 1 : void (*ldv_6_callback_trim)(struct io_context *);
1118 1 : struct elevator_queue *ldv_6_container_struct_elevator_queue_ptr;
1119 1 : struct io_context *ldv_6_container_struct_io_context_ptr;
1120 1 : char *ldv_6_ldv_param_10_1_default;
1121 1 : long unsigned int ldv_6_ldv_param_10_2_default;
1122 1 : char *ldv_6_ldv_param_4_1_default;
1123 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
1124 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1125 3 : ldv_free(arg0);
1126 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
1127 1 :
1128 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
1129 3 : ldv_6_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
1130 3 : ldv_6_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
1131 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
1132 :
1133 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1134 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1135 :
1136 : /* Jump to a subprocess 'call' initial state */
1137 1 : goto ldv_call_6;
1138 : /* End of the process */
1139 : return;
1140 1 :
1141 : /* Sbprocess call */
1142 : ldv_call_6:
1143 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
1144 :
1145 4 : if (ldv_undef_int()) {
1146 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1147 3 : ldv_6_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
1148 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
1149 :
1150 2 : switch (ldv_undef_int()) {
1151 3 : case 1: {
1152 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
1153 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_6_container_struct_io_context_ptr);", "comment": "callback"} */
1154 2 : ldv_random_containerless_scenario_callback_6_13(ldv_6_callback_trim, ldv_6_container_struct_io_context_ptr);
1155 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1156 :
1157 1 : break;
1158 1 : }
1159 3 : case 2: {
1160 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1161 3 : ldv_6_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
1162 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
1163 :
1164 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
1165 : /* LDV {"type": "CALLBACK", "call": "((& cfq_low_latency_store))(ldv_6_container_struct_elevator_queue_ptr, ldv_6_ldv_param_10_1_default, ldv_6_ldv_param_10_2_default);", "comment": "callback"} */
1166 2 : ldv_random_containerless_scenario_callback_6_10(ldv_6_callback_store, ldv_6_container_struct_elevator_queue_ptr, ldv_6_ldv_param_10_1_default, ldv_6_ldv_param_10_2_default);
1167 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1168 :
1169 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1170 2 : ldv_free(ldv_6_ldv_param_10_1_default);
1171 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
1172 :
1173 1 : break;
1174 1 : }
1175 3 : case 3: {
1176 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
1177 : /* LDV {"type": "CALLBACK", "call": "((& cfq_low_latency_show))(ldv_6_container_struct_elevator_queue_ptr, ldv_6_ldv_param_4_1_default);", "comment": "callback"} */
1178 2 : ldv_random_containerless_scenario_callback_6_4(ldv_6_callback_show, ldv_6_container_struct_elevator_queue_ptr, ldv_6_ldv_param_4_1_default);
1179 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1180 :
1181 1 : break;
1182 1 : }
1183 2 : default: ldv_stop();
1184 1 : }
1185 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1186 6 : ldv_free(ldv_6_ldv_param_4_1_default);
1187 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
1188 :
1189 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1190 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1191 :
1192 : /* Jump to a subprocess 'call' initial state */
1193 1 : goto ldv_call_6;
1194 : }
1195 : else {
1196 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
1197 2 : ldv_free(ldv_6_container_struct_elevator_queue_ptr);
1198 2 : ldv_free(ldv_6_container_struct_io_context_ptr);
1199 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
1200 :
1201 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1202 : /* Skip a non-replicative signal receiving */
1203 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
1204 :
1205 : /* Exit function at a terminal state */
1206 1 : return;
1207 : }
1208 : /* End of the subprocess 'call' */
1209 : return;
1210 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_6"} */
1211 : }
1212 :
1213 : /* AUX_FUNC ldv_random_containerless_scenario_7 */
1214 : void ldv_random_containerless_scenario_7(void *arg0) {
1215 : /* LDV {"thread": 7, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_7"} */
1216 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
1217 1 : ssize_t (*ldv_7_callback_show)(struct elevator_queue *, char *);
1218 1 : ssize_t (*ldv_7_callback_store)(struct elevator_queue *, char *, size_t );
1219 1 : void (*ldv_7_callback_trim)(struct io_context *);
1220 1 : struct elevator_queue *ldv_7_container_struct_elevator_queue_ptr;
1221 1 : struct io_context *ldv_7_container_struct_io_context_ptr;
1222 1 : char *ldv_7_ldv_param_10_1_default;
1223 1 : long unsigned int ldv_7_ldv_param_10_2_default;
1224 1 : char *ldv_7_ldv_param_4_1_default;
1225 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
1226 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1227 3 : ldv_free(arg0);
1228 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
1229 1 :
1230 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
1231 3 : ldv_7_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
1232 3 : ldv_7_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
1233 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
1234 :
1235 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1236 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1237 :
1238 : /* Jump to a subprocess 'call' initial state */
1239 1 : goto ldv_call_7;
1240 : /* End of the process */
1241 : return;
1242 1 :
1243 : /* Sbprocess call */
1244 : ldv_call_7:
1245 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
1246 :
1247 4 : if (ldv_undef_int()) {
1248 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1249 3 : ldv_7_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
1250 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
1251 :
1252 2 : switch (ldv_undef_int()) {
1253 3 : case 1: {
1254 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
1255 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_7_container_struct_io_context_ptr);", "comment": "callback"} */
1256 2 : ldv_random_containerless_scenario_callback_7_13(ldv_7_callback_trim, ldv_7_container_struct_io_context_ptr);
1257 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1258 :
1259 1 : break;
1260 1 : }
1261 3 : case 2: {
1262 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1263 3 : ldv_7_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
1264 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
1265 :
1266 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
1267 : /* LDV {"type": "CALLBACK", "call": "((& cfq_quantum_store))(ldv_7_container_struct_elevator_queue_ptr, ldv_7_ldv_param_10_1_default, ldv_7_ldv_param_10_2_default);", "comment": "callback"} */
1268 2 : ldv_random_containerless_scenario_callback_7_10(ldv_7_callback_store, ldv_7_container_struct_elevator_queue_ptr, ldv_7_ldv_param_10_1_default, ldv_7_ldv_param_10_2_default);
1269 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1270 :
1271 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1272 2 : ldv_free(ldv_7_ldv_param_10_1_default);
1273 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
1274 :
1275 1 : break;
1276 1 : }
1277 3 : case 3: {
1278 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
1279 : /* LDV {"type": "CALLBACK", "call": "((& cfq_quantum_show))(ldv_7_container_struct_elevator_queue_ptr, ldv_7_ldv_param_4_1_default);", "comment": "callback"} */
1280 2 : ldv_random_containerless_scenario_callback_7_4(ldv_7_callback_show, ldv_7_container_struct_elevator_queue_ptr, ldv_7_ldv_param_4_1_default);
1281 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1282 :
1283 1 : break;
1284 1 : }
1285 2 : default: ldv_stop();
1286 1 : }
1287 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1288 6 : ldv_free(ldv_7_ldv_param_4_1_default);
1289 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
1290 :
1291 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1292 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1293 :
1294 : /* Jump to a subprocess 'call' initial state */
1295 1 : goto ldv_call_7;
1296 : }
1297 : else {
1298 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
1299 2 : ldv_free(ldv_7_container_struct_elevator_queue_ptr);
1300 2 : ldv_free(ldv_7_container_struct_io_context_ptr);
1301 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
1302 :
1303 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1304 : /* Skip a non-replicative signal receiving */
1305 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
1306 :
1307 : /* Exit function at a terminal state */
1308 1 : return;
1309 : }
1310 : /* End of the subprocess 'call' */
1311 : return;
1312 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_7"} */
1313 : }
1314 :
1315 : /* AUX_FUNC ldv_random_containerless_scenario_8 */
1316 : void ldv_random_containerless_scenario_8(void *arg0) {
1317 : /* LDV {"thread": 8, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_8"} */
1318 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
1319 1 : ssize_t (*ldv_8_callback_show)(struct elevator_queue *, char *);
1320 1 : ssize_t (*ldv_8_callback_store)(struct elevator_queue *, char *, size_t );
1321 1 : void (*ldv_8_callback_trim)(struct io_context *);
1322 1 : struct elevator_queue *ldv_8_container_struct_elevator_queue_ptr;
1323 1 : struct io_context *ldv_8_container_struct_io_context_ptr;
1324 1 : char *ldv_8_ldv_param_10_1_default;
1325 1 : long unsigned int ldv_8_ldv_param_10_2_default;
1326 1 : char *ldv_8_ldv_param_4_1_default;
1327 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
1328 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1329 3 : ldv_free(arg0);
1330 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
1331 1 :
1332 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
1333 3 : ldv_8_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
1334 3 : ldv_8_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
1335 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
1336 :
1337 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1338 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1339 :
1340 : /* Jump to a subprocess 'call' initial state */
1341 1 : goto ldv_call_8;
1342 : /* End of the process */
1343 : return;
1344 1 :
1345 : /* Sbprocess call */
1346 : ldv_call_8:
1347 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
1348 :
1349 4 : if (ldv_undef_int()) {
1350 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1351 3 : ldv_8_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
1352 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
1353 :
1354 2 : switch (ldv_undef_int()) {
1355 3 : case 1: {
1356 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
1357 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_8_container_struct_io_context_ptr);", "comment": "callback"} */
1358 2 : ldv_random_containerless_scenario_callback_8_13(ldv_8_callback_trim, ldv_8_container_struct_io_context_ptr);
1359 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1360 :
1361 1 : break;
1362 1 : }
1363 3 : case 2: {
1364 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1365 3 : ldv_8_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
1366 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
1367 :
1368 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
1369 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_async_rq_store))(ldv_8_container_struct_elevator_queue_ptr, ldv_8_ldv_param_10_1_default, ldv_8_ldv_param_10_2_default);", "comment": "callback"} */
1370 2 : ldv_random_containerless_scenario_callback_8_10(ldv_8_callback_store, ldv_8_container_struct_elevator_queue_ptr, ldv_8_ldv_param_10_1_default, ldv_8_ldv_param_10_2_default);
1371 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1372 :
1373 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1374 2 : ldv_free(ldv_8_ldv_param_10_1_default);
1375 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
1376 :
1377 1 : break;
1378 1 : }
1379 3 : case 3: {
1380 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
1381 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_async_rq_show))(ldv_8_container_struct_elevator_queue_ptr, ldv_8_ldv_param_4_1_default);", "comment": "callback"} */
1382 2 : ldv_random_containerless_scenario_callback_8_4(ldv_8_callback_show, ldv_8_container_struct_elevator_queue_ptr, ldv_8_ldv_param_4_1_default);
1383 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1384 :
1385 1 : break;
1386 1 : }
1387 2 : default: ldv_stop();
1388 1 : }
1389 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1390 6 : ldv_free(ldv_8_ldv_param_4_1_default);
1391 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
1392 :
1393 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1394 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1395 :
1396 : /* Jump to a subprocess 'call' initial state */
1397 1 : goto ldv_call_8;
1398 : }
1399 : else {
1400 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
1401 2 : ldv_free(ldv_8_container_struct_elevator_queue_ptr);
1402 2 : ldv_free(ldv_8_container_struct_io_context_ptr);
1403 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
1404 :
1405 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1406 : /* Skip a non-replicative signal receiving */
1407 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
1408 :
1409 : /* Exit function at a terminal state */
1410 1 : return;
1411 : }
1412 : /* End of the subprocess 'call' */
1413 : return;
1414 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_8"} */
1415 : }
1416 :
1417 : /* AUX_FUNC ldv_random_containerless_scenario_9 */
1418 : void ldv_random_containerless_scenario_9(void *arg0) {
1419 : /* LDV {"thread": 9, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'random_containerless_scenario(struct_elv_fs_entry)'", "function": "ldv_random_containerless_scenario_9"} */
1420 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
1421 1 : ssize_t (*ldv_9_callback_show)(struct elevator_queue *, char *);
1422 1 : ssize_t (*ldv_9_callback_store)(struct elevator_queue *, char *, size_t );
1423 1 : void (*ldv_9_callback_trim)(struct io_context *);
1424 1 : struct elevator_queue *ldv_9_container_struct_elevator_queue_ptr;
1425 1 : struct io_context *ldv_9_container_struct_io_context_ptr;
1426 1 : char *ldv_9_ldv_param_10_1_default;
1427 1 : long unsigned int ldv_9_ldv_param_10_2_default;
1428 1 : char *ldv_9_ldv_param_4_1_default;
1429 1 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
1430 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Begin STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1431 3 : ldv_free(arg0);
1432 1 : /* LDV {"action": "DEFAULT_REGISTER_4", "type": "RECEIVE_END"} */
1433 1 :
1434 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory after default registration."} */
1435 3 : ldv_9_container_struct_elevator_queue_ptr = ldv_xmalloc_unknown_size(0);
1436 3 : ldv_9_container_struct_io_context_ptr = ldv_xmalloc_unknown_size(0);
1437 : /* LDV {"action": "DEFAULT_ALLOC_4", "type": "CONDITION_END"} */
1438 :
1439 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1440 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1441 :
1442 : /* Jump to a subprocess 'call' initial state */
1443 1 : goto ldv_call_9;
1444 : /* End of the process */
1445 : return;
1446 1 :
1447 : /* Sbprocess call */
1448 : ldv_call_9:
1449 : /* LDV {"action": null, "type": "ARTIFICIAL", "comment": "Artificial state in scenario"} */
1450 :
1451 4 : if (ldv_undef_int()) {
1452 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1453 3 : ldv_9_ldv_param_4_1_default = ldv_xmalloc_unknown_size(0);
1454 : /* LDV {"action": "PRE_CALL_4", "type": "CONDITION_END"} */
1455 :
1456 2 : switch (ldv_undef_int()) {
1457 3 : case 1: {
1458 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback trim from elevator_ops."} */
1459 : /* LDV {"type": "CALLBACK", "call": "((& cfq_free_io_context))(ldv_9_container_struct_io_context_ptr);", "comment": "callback"} */
1460 2 : ldv_random_containerless_scenario_callback_9_13(ldv_9_callback_trim, ldv_9_container_struct_io_context_ptr);
1461 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1462 :
1463 1 : break;
1464 1 : }
1465 3 : case 2: {
1466 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_BEGIN", "comment": "Allocate memory for adhoc callback parameters."} */
1467 3 : ldv_9_ldv_param_10_1_default = ldv_xmalloc_unknown_size(0);
1468 : /* LDV {"action": "PRE_CALL_10", "type": "CONDITION_END"} */
1469 :
1470 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback store from elv_fs_entry."} */
1471 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_async_store))(ldv_9_container_struct_elevator_queue_ptr, ldv_9_ldv_param_10_1_default, ldv_9_ldv_param_10_2_default);", "comment": "callback"} */
1472 2 : ldv_random_containerless_scenario_callback_9_10(ldv_9_callback_store, ldv_9_container_struct_elevator_queue_ptr, ldv_9_ldv_param_10_1_default, ldv_9_ldv_param_10_2_default);
1473 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1474 :
1475 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1476 2 : ldv_free(ldv_9_ldv_param_10_1_default);
1477 : /* LDV {"action": "POST_CALL_10", "type": "CONDITION_END"} */
1478 :
1479 1 : break;
1480 1 : }
1481 3 : case 3: {
1482 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Call any random callback. Invoke callback show from elv_fs_entry."} */
1483 : /* LDV {"type": "CALLBACK", "call": "((& cfq_slice_async_show))(ldv_9_container_struct_elevator_queue_ptr, ldv_9_ldv_param_4_1_default);", "comment": "callback"} */
1484 2 : ldv_random_containerless_scenario_callback_9_4(ldv_9_callback_show, ldv_9_container_struct_elevator_queue_ptr, ldv_9_ldv_param_4_1_default);
1485 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1486 :
1487 1 : break;
1488 1 : }
1489 2 : default: ldv_stop();
1490 1 : }
1491 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_BEGIN", "comment": "Free memory of adhoc callback parameters."} */
1492 6 : ldv_free(ldv_9_ldv_param_4_1_default);
1493 0 : /* LDV {"action": "POST_CALL_4", "type": "CONDITION_END"} */
1494 :
1495 : /* LDV {"action": "CALL", "type": "SUBPROCESS_BEGIN", "comment": "Prepare to call a random callback or deregister the callbacks."} */
1496 : /* LDV {"action": "CALL", "type": "SUBPROCESS_END"} */
1497 :
1498 : /* Jump to a subprocess 'call' initial state */
1499 1 : goto ldv_call_9;
1500 : }
1501 : else {
1502 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_BEGIN", "comment": "Free memory before default deregistration."} */
1503 2 : ldv_free(ldv_9_container_struct_elevator_queue_ptr);
1504 2 : ldv_free(ldv_9_container_struct_io_context_ptr);
1505 : /* LDV {"action": "DEFAULT_FREE_4", "type": "CONDITION_END"} */
1506 :
1507 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_BEGIN", "comment": "Finish STRUCT_ELV_FS_ENTRY callbacks invocations scenario."} */
1508 : /* Skip a non-replicative signal receiving */
1509 : /* LDV {"action": "DEFAULT_DEREGISTER_4", "type": "RECEIVE_END"} */
1510 :
1511 : /* Exit function at a terminal state */
1512 1 : return;
1513 : }
1514 : /* End of the subprocess 'call' */
1515 : return;
1516 : /* LDV {"comment": "End of control function based on process 'random_containerless_scenario(struct_elv_fs_entry)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_random_containerless_scenario_9"} */
1517 : }
1518 :
1519 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_10_10 */
1520 : void ldv_random_containerless_scenario_callback_10_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1521 2 : ((& cfq_slice_idle_store))(arg1, arg2, arg3);
1522 1 : }
1523 :
1524 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_10_13 */
1525 : void ldv_random_containerless_scenario_callback_10_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1526 2 : ((& cfq_free_io_context))(arg1);
1527 1 : }
1528 :
1529 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_10_4 */
1530 : void ldv_random_containerless_scenario_callback_10_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1531 2 : ((& cfq_slice_idle_show))(arg1, arg2);
1532 1 : }
1533 :
1534 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_11_10 */
1535 : void ldv_random_containerless_scenario_callback_11_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1536 2 : ((& cfq_slice_sync_store))(arg1, arg2, arg3);
1537 1 : }
1538 :
1539 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_11_13 */
1540 : void ldv_random_containerless_scenario_callback_11_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1541 2 : ((& cfq_free_io_context))(arg1);
1542 1 : }
1543 :
1544 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_11_4 */
1545 : void ldv_random_containerless_scenario_callback_11_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1546 2 : ((& cfq_slice_sync_show))(arg1, arg2);
1547 1 : }
1548 :
1549 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_1_10 */
1550 : void ldv_random_containerless_scenario_callback_1_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1551 2 : ((& cfq_back_seek_max_store))(arg1, arg2, arg3);
1552 1 : }
1553 :
1554 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_1_13 */
1555 : void ldv_random_containerless_scenario_callback_1_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1556 2 : ((& cfq_free_io_context))(arg1);
1557 1 : }
1558 :
1559 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_1_4 */
1560 : void ldv_random_containerless_scenario_callback_1_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1561 2 : ((& cfq_back_seek_max_show))(arg1, arg2);
1562 1 : }
1563 :
1564 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_2_10 */
1565 : void ldv_random_containerless_scenario_callback_2_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1566 2 : ((& cfq_back_seek_penalty_store))(arg1, arg2, arg3);
1567 1 : }
1568 :
1569 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_2_13 */
1570 : void ldv_random_containerless_scenario_callback_2_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1571 2 : ((& cfq_free_io_context))(arg1);
1572 1 : }
1573 :
1574 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_2_4 */
1575 : void ldv_random_containerless_scenario_callback_2_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1576 2 : ((& cfq_back_seek_penalty_show))(arg1, arg2);
1577 1 : }
1578 :
1579 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_3_10 */
1580 : void ldv_random_containerless_scenario_callback_3_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1581 2 : ((& cfq_fifo_expire_async_store))(arg1, arg2, arg3);
1582 1 : }
1583 :
1584 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_3_13 */
1585 : void ldv_random_containerless_scenario_callback_3_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1586 2 : ((& cfq_free_io_context))(arg1);
1587 1 : }
1588 :
1589 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_3_4 */
1590 : void ldv_random_containerless_scenario_callback_3_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1591 2 : ((& cfq_fifo_expire_async_show))(arg1, arg2);
1592 1 : }
1593 :
1594 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_4_10 */
1595 : void ldv_random_containerless_scenario_callback_4_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1596 2 : ((& cfq_fifo_expire_sync_store))(arg1, arg2, arg3);
1597 1 : }
1598 :
1599 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_4_13 */
1600 : void ldv_random_containerless_scenario_callback_4_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1601 2 : ((& cfq_free_io_context))(arg1);
1602 1 : }
1603 :
1604 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_4_4 */
1605 : void ldv_random_containerless_scenario_callback_4_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1606 2 : ((& cfq_fifo_expire_sync_show))(arg1, arg2);
1607 1 : }
1608 :
1609 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_5_10 */
1610 : void ldv_random_containerless_scenario_callback_5_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1611 2 : ((& cfq_group_isolation_store))(arg1, arg2, arg3);
1612 1 : }
1613 :
1614 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_5_13 */
1615 : void ldv_random_containerless_scenario_callback_5_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1616 2 : ((& cfq_free_io_context))(arg1);
1617 1 : }
1618 :
1619 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_5_4 */
1620 : void ldv_random_containerless_scenario_callback_5_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1621 2 : ((& cfq_group_isolation_show))(arg1, arg2);
1622 1 : }
1623 :
1624 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_6_10 */
1625 : void ldv_random_containerless_scenario_callback_6_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1626 2 : ((& cfq_low_latency_store))(arg1, arg2, arg3);
1627 1 : }
1628 :
1629 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_6_13 */
1630 : void ldv_random_containerless_scenario_callback_6_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1631 2 : ((& cfq_free_io_context))(arg1);
1632 1 : }
1633 :
1634 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_6_4 */
1635 : void ldv_random_containerless_scenario_callback_6_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1636 2 : ((& cfq_low_latency_show))(arg1, arg2);
1637 1 : }
1638 :
1639 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_7_10 */
1640 : void ldv_random_containerless_scenario_callback_7_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1641 2 : ((& cfq_quantum_store))(arg1, arg2, arg3);
1642 1 : }
1643 :
1644 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_7_13 */
1645 : void ldv_random_containerless_scenario_callback_7_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1646 2 : ((& cfq_free_io_context))(arg1);
1647 1 : }
1648 :
1649 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_7_4 */
1650 : void ldv_random_containerless_scenario_callback_7_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1651 2 : ((& cfq_quantum_show))(arg1, arg2);
1652 1 : }
1653 :
1654 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_8_10 */
1655 : void ldv_random_containerless_scenario_callback_8_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1656 2 : ((& cfq_slice_async_rq_store))(arg1, arg2, arg3);
1657 1 : }
1658 :
1659 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_8_13 */
1660 : void ldv_random_containerless_scenario_callback_8_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1661 2 : ((& cfq_free_io_context))(arg1);
1662 1 : }
1663 :
1664 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_8_4 */
1665 : void ldv_random_containerless_scenario_callback_8_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1666 2 : ((& cfq_slice_async_rq_show))(arg1, arg2);
1667 1 : }
1668 :
1669 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_9_10 */
1670 : void ldv_random_containerless_scenario_callback_9_10(ssize_t (*arg0)(struct elevator_queue *, char *, size_t ), struct elevator_queue *arg1, char *arg2, long unsigned int arg3) {
1671 2 : ((& cfq_slice_async_store))(arg1, arg2, arg3);
1672 1 : }
1673 :
1674 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_9_13 */
1675 : void ldv_random_containerless_scenario_callback_9_13(void (*arg0)(struct io_context *), struct io_context *arg1) {
1676 2 : ((& cfq_free_io_context))(arg1);
1677 1 : }
1678 :
1679 : /* AUX_FUNC_CALLBACK ldv_random_containerless_scenario_callback_9_4 */
1680 : void ldv_random_containerless_scenario_callback_9_4(ssize_t (*arg0)(struct elevator_queue *, char *), struct elevator_queue *arg1, char *arg2) {
1681 2 : ((& cfq_slice_async_show))(arg1, arg2);
1682 1 : }
1683 :
1684 : /* AUX_FUNC ldv_timer_scenario_12 */
1685 : void ldv_timer_scenario_12(void *arg0) {
1686 : /* LDV {"thread": 12, "type": "CONTROL_FUNCTION_BEGIN", "comment": "Control function 'timer_scenario(timer)'", "function": "ldv_timer_scenario_12"} */
1687 0 : /* LDV {"type": "CONTROL_FUNCTION_INIT_BEGIN", "comment": "Declare auxiliary variables."} */
1688 0 : struct timer_list *ldv_12_container_timer_list;
1689 : /* Received labels */
1690 0 : struct ldv_struct_timer_scenario_12 *data = (struct ldv_struct_timer_scenario_12*) arg0;
1691 :
1692 : /* LDV {"type": "CONTROL_FUNCTION_INIT_END", "comment": "Declare auxiliary variables."} */
1693 : /* LDV {"action": "INSTANCE_REGISTER", "type": "RECEIVE_BEGIN", "comment": "Begin TIMER callbacks invocations scenario."} */
1694 : /* Assign recieved labels */
1695 0 : if (data) {
1696 0 : ldv_12_container_timer_list = data->arg0;
1697 0 : ldv_free(data);
1698 : }
1699 : /* LDV {"action": "INSTANCE_REGISTER", "type": "RECEIVE_END"} */
1700 :
1701 : /* LDV {"action": "CALLBACK", "type": "CALL_BEGIN", "callback": true, "comment": "Time has come: call the timer callback. Invoke callback callback from TIMER."} */
1702 : /* Callback pre-call */
1703 0 : ldv_switch_to_interrupt_context();
1704 0 : if (ldv_12_container_timer_list->function) {
1705 : /* LDV {"type": "CALLBACK", "call": "(ldv_12_container_timer_list->function)(ldv_12_container_timer_list->data);", "comment": "callback"} */
1706 0 : ldv_timer_scenario_callback_12_2(ldv_12_container_timer_list->function, ldv_12_container_timer_list->data);
1707 : }
1708 : /* Callback post-call */
1709 0 : ldv_switch_to_process_context();
1710 : /* LDV {"action": "CALLBACK", "type": "CALL_END"} */
1711 :
1712 : /* LDV {"action": "INSTANCE_DEREGISTER", "type": "RECEIVE_BEGIN", "comment": "Finish TIMER callbacks invocations scenario."} */
1713 : /* Skip a non-replicative signal receiving */
1714 : /* LDV {"action": "INSTANCE_DEREGISTER", "type": "RECEIVE_END"} */
1715 :
1716 : /* Exit function at a terminal state */
1717 0 : return;
1718 : /* End of the process */
1719 : return;
1720 : /* LDV {"comment": "End of control function based on process 'timer_scenario(timer)'", "type": "CONTROL_FUNCTION_END", "function": "ldv_timer_scenario_12"} */
1721 : }
1722 :
1723 : /* AUX_FUNC_CALLBACK ldv_timer_scenario_callback_12_2 */
1724 : void ldv_timer_scenario_callback_12_2(void (*arg0)(unsigned long), unsigned long arg1) {
1725 0 : (*arg0)(arg1);
1726 0 : }
1727 :
1728 : /* AUX_FUNC main */
1729 : int main() {
1730 1 : ldv_main_17(0);
1731 0 : return 0;
1732 : }
1733 :
1734 :
1735 : /* AUX_FUNC ERR_PTR */
1736 : static inline void *ERR_PTR (long int error)
1737 : {
1738 :
1739 : return ldv_err_ptr(error);
1740 : }
1741 :
1742 : /* AUX_FUNC PTR_ERR */
1743 : static inline long int PTR_ERR (void const *ptr)
1744 : {
1745 :
1746 : return ldv_ptr_err(ptr);
1747 : }
1748 :
1749 : /* AUX_FUNC IS_ERR */
1750 : static inline long int IS_ERR (void const *ptr)
1751 : {
1752 :
1753 : return ldv_is_err(ptr);
1754 : }
1755 :
1756 : /* AUX_FUNC IS_ERR_OR_NULL */
1757 : static inline long int IS_ERR_OR_NULL (void const *ptr)
1758 : {
1759 :
1760 : return ldv_is_err_or_null(ptr);
1761 : }
1762 :
1763 : /* AUX_FUNC ldv_del_timer_sync_5 */
1764 : int ldv_del_timer_sync_5 (struct timer_list *ldv_func_arg1)
1765 : {
1766 :
1767 : /* LDV {"type": "KERNEL_MODEL", "comment": "Perform the model code of the function 'del_timer_sync'"} */
1768 : return ldv_emg_del_timer_sync(ldv_func_arg1);
1769 : }
1770 :
1771 : /* AUX_FUNC ldv_del_timer_6 */
1772 : int ldv_del_timer_6 (struct timer_list *ldv_func_arg1)
1773 : {
1774 :
1775 : /* LDV {"type": "KERNEL_MODEL", "comment": "Perform the model code of the function 'del_timer'"} */
1776 : return ldv_emg_del_timer(ldv_func_arg1);
1777 : }
1778 :
1779 : /* AUX_FUNC kzalloc */
1780 : static inline void *kzalloc (size_t size, gfp_t flags)
1781 : {
1782 :
1783 : return ldv_kzalloc(size, flags);
1784 : }
1785 :
1786 : /* AUX_FUNC ldv_del_timer_8 */
1787 : int ldv_del_timer_8 (struct timer_list *ldv_func_arg1)
1788 : {
1789 0 :
1790 : /* LDV {"type": "KERNEL_MODEL", "comment": "Perform the model code of the function 'del_timer'"} */
1791 0 : return ldv_emg_del_timer(ldv_func_arg1);
1792 : }
1793 :
1794 : /* AUX_FUNC ldv_del_timer_9 */
1795 : int ldv_del_timer_9 (struct timer_list *ldv_func_arg1)
1796 : {
1797 0 :
1798 : /* LDV {"type": "KERNEL_MODEL", "comment": "Perform the model code of the function 'del_timer'"} */
1799 0 : return ldv_emg_del_timer(ldv_func_arg1);
1800 : }
1801 :
1802 : /* AUX_FUNC ldv_mod_timer_10 */
1803 : int ldv_mod_timer_10 (struct timer_list *ldv_func_arg1, long unsigned int ldv_func_arg2)
1804 : {
1805 0 :
1806 : /* LDV {"type": "KERNEL_MODEL", "comment": "Perform the model code of the function 'mod_timer'"} */
1807 0 : return ldv_emg_mod_timer(ldv_func_arg1, ldv_func_arg2);
1808 : }
1809 :
1810 : /* AUX_FUNC ldv_del_timer_11 */
1811 : int ldv_del_timer_11 (struct timer_list *ldv_func_arg1)
1812 : {
1813 0 :
1814 : /* LDV {"type": "KERNEL_MODEL", "comment": "Perform the model code of the function 'del_timer'"} */
1815 0 : return ldv_emg_del_timer(ldv_func_arg1);
1816 : }
1817 :
1818 : /* AUX_FUNC ldv_del_timer_sync_12 */
1819 : int ldv_del_timer_sync_12 (struct timer_list *ldv_func_arg1)
1820 : {
1821 0 :
1822 : /* LDV {"type": "KERNEL_MODEL", "comment": "Perform the model code of the function 'del_timer_sync'"} */
1823 0 : return ldv_emg_del_timer_sync(ldv_func_arg1);
1824 : }
|