1# 1 "ldv/08_1/drivers/block/loop.ko/unsafe.cil.out.i"
2# 1 "<built-in>"
3# 1 "<command-line>"
4# 1 "ldv/08_1/drivers/block/loop.ko/unsafe.cil.out.i"
5# 19 "include/asm-generic/int-ll64.h"
6typedef signed char __s8;
7# 20 "include/asm-generic/int-ll64.h"
8typedef unsigned char __u8;
9# 22 "include/asm-generic/int-ll64.h"
10typedef short __s16;
11# 23 "include/asm-generic/int-ll64.h"
12typedef unsigned short __u16;
13# 25 "include/asm-generic/int-ll64.h"
14typedef int __s32;
15# 26 "include/asm-generic/int-ll64.h"
16typedef unsigned int __u32;
17# 29 "include/asm-generic/int-ll64.h"
18typedef long long __s64;
19# 30 "include/asm-generic/int-ll64.h"
20typedef unsigned long long __u64;
21# 43 "include/asm-generic/int-ll64.h"
22typedef unsigned char u8;
23# 46 "include/asm-generic/int-ll64.h"
24typedef unsigned short u16;
25# 48 "include/asm-generic/int-ll64.h"
26typedef int s32;
27# 49 "include/asm-generic/int-ll64.h"
28typedef unsigned int u32;
29# 51 "include/asm-generic/int-ll64.h"
30typedef long long s64;
31# 52 "include/asm-generic/int-ll64.h"
32typedef unsigned long long u64;
33# 11 "include/asm-generic/types.h"
34typedef unsigned short umode_t;
35# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
36typedef unsigned int __kernel_mode_t;
37# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
38typedef int __kernel_pid_t;
39# 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
40typedef unsigned int __kernel_uid_t;
41# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
42typedef unsigned int __kernel_gid_t;
43# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
44typedef unsigned long __kernel_size_t;
45# 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
46typedef long __kernel_ssize_t;
47# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
48typedef long __kernel_time_t;
49# 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
50typedef long __kernel_clock_t;
51# 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
52typedef int __kernel_timer_t;
53# 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
54typedef int __kernel_clockid_t;
55# 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
56typedef long long __kernel_loff_t;
57# 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
58typedef __kernel_uid_t __kernel_uid32_t;
59# 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
60typedef __kernel_gid_t __kernel_gid32_t;
61# 44 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
62typedef unsigned long __kernel_old_dev_t;
63# 21 "include/linux/types.h"
64typedef __u32 __kernel_dev_t;
65# 24 "include/linux/types.h"
66typedef __kernel_dev_t dev_t;
67# 26 "include/linux/types.h"
68typedef __kernel_mode_t mode_t;
69# 29 "include/linux/types.h"
70typedef __kernel_pid_t pid_t;
71# 34 "include/linux/types.h"
72typedef __kernel_clockid_t clockid_t;
73# 37 "include/linux/types.h"
74typedef _Bool bool;
75# 39 "include/linux/types.h"
76typedef __kernel_uid32_t uid_t;
77# 40 "include/linux/types.h"
78typedef __kernel_gid32_t gid_t;
79# 53 "include/linux/types.h"
80typedef __kernel_loff_t loff_t;
81# 62 "include/linux/types.h"
82typedef __kernel_size_t size_t;
83# 67 "include/linux/types.h"
84typedef __kernel_ssize_t ssize_t;
85# 77 "include/linux/types.h"
86typedef __kernel_time_t time_t;
87# 110 "include/linux/types.h"
88typedef __s32 int32_t;
89# 116 "include/linux/types.h"
90typedef __u32 uint32_t;
91# 141 "include/linux/types.h"
92typedef unsigned long sector_t;
93# 142 "include/linux/types.h"
94typedef unsigned long blkcnt_t;
95# 201 "include/linux/types.h"
96typedef unsigned int gfp_t;
97# 202 "include/linux/types.h"
98typedef unsigned int fmode_t;
99# 214 "include/linux/types.h"
100struct __anonstruct_atomic_t_6 {
101 int counter ;
102};
103# 214 "include/linux/types.h"
104typedef struct __anonstruct_atomic_t_6 atomic_t;
105# 219 "include/linux/types.h"
106struct __anonstruct_atomic64_t_7 {
107 long counter ;
108};
109# 219 "include/linux/types.h"
110typedef struct __anonstruct_atomic64_t_7 atomic64_t;
111# 220 "include/linux/types.h"
112struct list_head {
113 struct list_head *next ;
114 struct list_head *prev ;
115};
116# 225 "include/linux/types.h"
117struct hlist_node;
118# 225 "include/linux/types.h"
119struct hlist_node;
120# 225 "include/linux/types.h"
121struct hlist_head {
122 struct hlist_node *first ;
123};
124# 229 "include/linux/types.h"
125struct hlist_node {
126 struct hlist_node *next ;
127 struct hlist_node **pprev ;
128};
129# 58 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
130struct module;
131# 58 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
132struct module;
133# 58 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
134struct module;
135# 145 "include/linux/init.h"
136typedef void (*ctor_fn_t)(void);
137# 48 "include/linux/dynamic_debug.h"
138struct bug_entry {
139 int bug_addr_disp ;
140 int file_disp ;
141 unsigned short line ;
142 unsigned short flags ;
143};
144# 70 "include/asm-generic/bug.h"
145struct completion;
146# 70 "include/asm-generic/bug.h"
147struct completion;
148# 70 "include/asm-generic/bug.h"
149struct completion;
150# 71 "include/asm-generic/bug.h"
151struct pt_regs;
152# 71 "include/asm-generic/bug.h"
153struct pt_regs;
154# 71 "include/asm-generic/bug.h"
155struct pt_regs;
156# 321 "include/linux/kernel.h"
157struct pid;
158# 321 "include/linux/kernel.h"
159struct pid;
160# 321 "include/linux/kernel.h"
161struct pid;
162# 671 "include/linux/kernel.h"
163struct timespec;
164# 671 "include/linux/kernel.h"
165struct timespec;
166# 671 "include/linux/kernel.h"
167struct timespec;
168# 672 "include/linux/kernel.h"
169struct compat_timespec;
170# 672 "include/linux/kernel.h"
171struct compat_timespec;
172# 672 "include/linux/kernel.h"
173struct compat_timespec;
174# 673 "include/linux/kernel.h"
175struct __anonstruct_futex_9 {
176 u32 *uaddr ;
177 u32 val ;
178 u32 flags ;
179 u32 bitset ;
180 u64 time ;
181 u32 *uaddr2 ;
182};
183# 673 "include/linux/kernel.h"
184struct __anonstruct_nanosleep_10 {
185 clockid_t clockid ;
186 struct timespec *rmtp ;
187 struct compat_timespec *compat_rmtp ;
188 u64 expires ;
189};
190# 673 "include/linux/kernel.h"
191struct pollfd;
192# 673 "include/linux/kernel.h"
193struct pollfd;
194# 673 "include/linux/kernel.h"
195struct __anonstruct_poll_11 {
196 struct pollfd *ufds ;
197 int nfds ;
198 int has_timeout ;
199 unsigned long tv_sec ;
200 unsigned long tv_nsec ;
201};
202# 673 "include/linux/kernel.h"
203union __anonunion_ldv_2052_8 {
204 struct __anonstruct_futex_9 futex ;
205 struct __anonstruct_nanosleep_10 nanosleep ;
206 struct __anonstruct_poll_11 poll ;
207};
208# 673 "include/linux/kernel.h"
209struct restart_block {
210 long (*fn)(struct restart_block * ) ;
211 union __anonunion_ldv_2052_8 ldv_2052 ;
212};
213# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page_types.h"
214struct page;
215# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page_types.h"
216struct page;
217# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page_types.h"
218struct page;
219# 21 "include/asm-generic/getorder.h"
220struct task_struct;
221# 21 "include/asm-generic/getorder.h"
222struct task_struct;
223# 21 "include/asm-generic/getorder.h"
224struct task_struct;
225# 22 "include/asm-generic/getorder.h"
226struct exec_domain;
227# 22 "include/asm-generic/getorder.h"
228struct exec_domain;
229# 22 "include/asm-generic/getorder.h"
230struct exec_domain;
231# 23 "include/asm-generic/getorder.h"
232struct mm_struct;
233# 23 "include/asm-generic/getorder.h"
234struct mm_struct;
235# 23 "include/asm-generic/getorder.h"
236struct mm_struct;
237# 215 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/segment.h"
238struct pt_regs {
239 unsigned long r15 ;
240 unsigned long r14 ;
241 unsigned long r13 ;
242 unsigned long r12 ;
243 unsigned long bp ;
244 unsigned long bx ;
245 unsigned long r11 ;
246 unsigned long r10 ;
247 unsigned long r9 ;
248 unsigned long r8 ;
249 unsigned long ax ;
250 unsigned long cx ;
251 unsigned long dx ;
252 unsigned long si ;
253 unsigned long di ;
254 unsigned long orig_ax ;
255 unsigned long ip ;
256 unsigned long cs ;
257 unsigned long flags ;
258 unsigned long sp ;
259 unsigned long ss ;
260};
261# 282 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
262struct kernel_vm86_regs {
263 struct pt_regs pt ;
264 unsigned short es ;
265 unsigned short __esh ;
266 unsigned short ds ;
267 unsigned short __dsh ;
268 unsigned short fs ;
269 unsigned short __fsh ;
270 unsigned short gs ;
271 unsigned short __gsh ;
272};
273# 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
274union __anonunion_ldv_2292_12 {
275 struct pt_regs *regs ;
276 struct kernel_vm86_regs *vm86 ;
277};
278# 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
279struct math_emu_info {
280 long ___orig_eip ;
281 union __anonunion_ldv_2292_12 ldv_2292 ;
282};
283# 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
284typedef unsigned long pgdval_t;
285# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
286typedef unsigned long pgprotval_t;
287# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
288struct pgprot {
289 pgprotval_t pgprot ;
290};
291# 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
292typedef struct pgprot pgprot_t;
293# 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
294struct __anonstruct_pgd_t_15 {
295 pgdval_t pgd ;
296};
297# 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
298typedef struct __anonstruct_pgd_t_15 pgd_t;
299# 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
300typedef struct page *pgtable_t;
301# 288 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
302struct file;
303# 288 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
304struct file;
305# 288 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
306struct file;
307# 303 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
308struct seq_file;
309# 303 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
310struct seq_file;
311# 303 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
312struct seq_file;
313# 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
314struct __anonstruct_ldv_2526_19 {
315 unsigned int a ;
316 unsigned int b ;
317};
318# 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
319struct __anonstruct_ldv_2541_20 {
320 u16 limit0 ;
321 u16 base0 ;
322 unsigned char base1 ;
323 unsigned char type : 4 ;
324 unsigned char s : 1 ;
325 unsigned char dpl : 2 ;
326 unsigned char p : 1 ;
327 unsigned char limit : 4 ;
328 unsigned char avl : 1 ;
329 unsigned char l : 1 ;
330 unsigned char d : 1 ;
331 unsigned char g : 1 ;
332 unsigned char base2 ;
333};
334# 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
335union __anonunion_ldv_2542_18 {
336 struct __anonstruct_ldv_2526_19 ldv_2526 ;
337 struct __anonstruct_ldv_2541_20 ldv_2541 ;
338};
339# 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
340struct desc_struct {
341 union __anonunion_ldv_2542_18 ldv_2542 ;
342};
343# 122 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
344struct thread_struct;
345# 122 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
346struct thread_struct;
347# 122 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
348struct thread_struct;
349# 124 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
350struct cpumask;
351# 124 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
352struct cpumask;
353# 124 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
354struct cpumask;
355# 320 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
356struct arch_spinlock;
357# 320 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
358struct arch_spinlock;
359# 320 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
360struct arch_spinlock;
361# 304 "include/linux/bitmap.h"
362struct cpumask {
363 unsigned long bits[64U] ;
364};
365# 13 "include/linux/cpumask.h"
366typedef struct cpumask cpumask_t;
367# 622 "include/linux/cpumask.h"
368typedef struct cpumask *cpumask_var_t;
369# 90 "include/linux/personality.h"
370struct map_segment;
371# 90 "include/linux/personality.h"
372struct map_segment;
373# 90 "include/linux/personality.h"
374struct exec_domain {
375 char const *name ;
376 void (*handler)(int , struct pt_regs * ) ;
377 unsigned char pers_low ;
378 unsigned char pers_high ;
379 unsigned long *signal_map ;
380 unsigned long *signal_invmap ;
381 struct map_segment *err_map ;
382 struct map_segment *socktype_map ;
383 struct map_segment *sockopt_map ;
384 struct map_segment *af_map ;
385 struct module *module ;
386 struct exec_domain *next ;
387};
388# 277 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
389struct i387_fsave_struct {
390 u32 cwd ;
391 u32 swd ;
392 u32 twd ;
393 u32 fip ;
394 u32 fcs ;
395 u32 foo ;
396 u32 fos ;
397 u32 st_space[20U] ;
398 u32 status ;
399};
400# 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
401struct __anonstruct_ldv_5171_24 {
402 u64 rip ;
403 u64 rdp ;
404};
405# 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
406struct __anonstruct_ldv_5177_25 {
407 u32 fip ;
408 u32 fcs ;
409 u32 foo ;
410 u32 fos ;
411};
412# 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
413union __anonunion_ldv_5178_23 {
414 struct __anonstruct_ldv_5171_24 ldv_5171 ;
415 struct __anonstruct_ldv_5177_25 ldv_5177 ;
416};
417# 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
418union __anonunion_ldv_5187_26 {
419 u32 padding1[12U] ;
420 u32 sw_reserved[12U] ;
421};
422# 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
423struct i387_fxsave_struct {
424 u16 cwd ;
425 u16 swd ;
426 u16 twd ;
427 u16 fop ;
428 union __anonunion_ldv_5178_23 ldv_5178 ;
429 u32 mxcsr ;
430 u32 mxcsr_mask ;
431 u32 st_space[32U] ;
432 u32 xmm_space[64U] ;
433 u32 padding[12U] ;
434 union __anonunion_ldv_5187_26 ldv_5187 ;
435};
436# 329 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
437struct i387_soft_struct {
438 u32 cwd ;
439 u32 swd ;
440 u32 twd ;
441 u32 fip ;
442 u32 fcs ;
443 u32 foo ;
444 u32 fos ;
445 u32 st_space[20U] ;
446 u8 ftop ;
447 u8 changed ;
448 u8 lookahead ;
449 u8 no_update ;
450 u8 rm ;
451 u8 alimit ;
452 struct math_emu_info *info ;
453 u32 entry_eip ;
454};
455# 350 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
456struct ymmh_struct {
457 u32 ymmh_space[64U] ;
458};
459# 355 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
460struct xsave_hdr_struct {
461 u64 xstate_bv ;
462 u64 reserved1[2U] ;
463 u64 reserved2[5U] ;
464};
465# 361 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
466struct xsave_struct {
467 struct i387_fxsave_struct i387 ;
468 struct xsave_hdr_struct xsave_hdr ;
469 struct ymmh_struct ymmh ;
470};
471# 367 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
472union thread_xstate {
473 struct i387_fsave_struct fsave ;
474 struct i387_fxsave_struct fxsave ;
475 struct i387_soft_struct soft ;
476 struct xsave_struct xsave ;
477};
478# 375 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
479struct fpu {
480 union thread_xstate *state ;
481};
482# 421 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
483struct kmem_cache;
484# 421 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
485struct kmem_cache;
486# 422 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
487struct perf_event;
488# 422 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
489struct perf_event;
490# 422 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
491struct perf_event;
492# 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
493struct thread_struct {
494 struct desc_struct tls_array[3U] ;
495 unsigned long sp0 ;
496 unsigned long sp ;
497 unsigned long usersp ;
498 unsigned short es ;
499 unsigned short ds ;
500 unsigned short fsindex ;
501 unsigned short gsindex ;
502 unsigned long fs ;
503 unsigned long gs ;
504 struct perf_event *ptrace_bps[4U] ;
505 unsigned long debugreg6 ;
506 unsigned long ptrace_dr7 ;
507 unsigned long cr2 ;
508 unsigned long trap_no ;
509 unsigned long error_code ;
510 struct fpu fpu ;
511 unsigned long *io_bitmap_ptr ;
512 unsigned long iopl ;
513 unsigned int io_bitmap_max ;
514};
515# 622 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
516struct __anonstruct_mm_segment_t_28 {
517 unsigned long seg ;
518};
519# 622 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
520typedef struct __anonstruct_mm_segment_t_28 mm_segment_t;
521# 23 "include/asm-generic/atomic-long.h"
522typedef atomic64_t atomic_long_t;
523# 131 "include/asm-generic/atomic-long.h"
524struct thread_info {
525 struct task_struct *task ;
526 struct exec_domain *exec_domain ;
527 __u32 flags ;
528 __u32 status ;
529 __u32 cpu ;
530 int preempt_count ;
531 mm_segment_t addr_limit ;
532 struct restart_block restart_block ;
533 void *sysenter_return ;
534 int uaccess_err ;
535};
536# 8 "include/linux/bottom_half.h"
537struct arch_spinlock {
538 unsigned int slock ;
539};
540# 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
541typedef struct arch_spinlock arch_spinlock_t;
542# 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
543struct __anonstruct_arch_rwlock_t_29 {
544 unsigned int lock ;
545};
546# 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
547typedef struct __anonstruct_arch_rwlock_t_29 arch_rwlock_t;
548# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
549struct lockdep_map;
550# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
551struct lockdep_map;
552# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
553struct lockdep_map;
554# 55 "include/linux/debug_locks.h"
555struct stack_trace {
556 unsigned int nr_entries ;
557 unsigned int max_entries ;
558 unsigned long *entries ;
559 int skip ;
560};
561# 26 "include/linux/stacktrace.h"
562struct lockdep_subclass_key {
563 char __one_byte ;
564};
565# 53 "include/linux/lockdep.h"
566struct lock_class_key {
567 struct lockdep_subclass_key subkeys[8U] ;
568};
569# 59 "include/linux/lockdep.h"
570struct lock_class {
571 struct list_head hash_entry ;
572 struct list_head lock_entry ;
573 struct lockdep_subclass_key *key ;
574 unsigned int subclass ;
575 unsigned int dep_gen_id ;
576 unsigned long usage_mask ;
577 struct stack_trace usage_traces[13U] ;
578 struct list_head locks_after ;
579 struct list_head locks_before ;
580 unsigned int version ;
581 unsigned long ops ;
582 char const *name ;
583 int name_version ;
584 unsigned long contention_point[4U] ;
585 unsigned long contending_point[4U] ;
586};
587# 144 "include/linux/lockdep.h"
588struct lockdep_map {
589 struct lock_class_key *key ;
590 struct lock_class *class_cache[2U] ;
591 char const *name ;
592 int cpu ;
593 unsigned long ip ;
594};
595# 187 "include/linux/lockdep.h"
596struct held_lock {
597 u64 prev_chain_key ;
598 unsigned long acquire_ip ;
599 struct lockdep_map *instance ;
600 struct lockdep_map *nest_lock ;
601 u64 waittime_stamp ;
602 u64 holdtime_stamp ;
603 unsigned short class_idx : 13 ;
604 unsigned char irq_context : 2 ;
605 unsigned char trylock : 1 ;
606 unsigned char read : 2 ;
607 unsigned char check : 2 ;
608 unsigned char hardirqs_off : 1 ;
609 unsigned short references : 11 ;
610};
611# 552 "include/linux/lockdep.h"
612struct raw_spinlock {
613 arch_spinlock_t raw_lock ;
614 unsigned int magic ;
615 unsigned int owner_cpu ;
616 void *owner ;
617 struct lockdep_map dep_map ;
618};
619# 32 "include/linux/spinlock_types.h"
620typedef struct raw_spinlock raw_spinlock_t;
621# 33 "include/linux/spinlock_types.h"
622struct __anonstruct_ldv_6059_31 {
623 u8 __padding[24U] ;
624 struct lockdep_map dep_map ;
625};
626# 33 "include/linux/spinlock_types.h"
627union __anonunion_ldv_6060_30 {
628 struct raw_spinlock rlock ;
629 struct __anonstruct_ldv_6059_31 ldv_6059 ;
630};
631# 33 "include/linux/spinlock_types.h"
632struct spinlock {
633 union __anonunion_ldv_6060_30 ldv_6060 ;
634};
635# 76 "include/linux/spinlock_types.h"
636typedef struct spinlock spinlock_t;
637# 23 "include/linux/rwlock_types.h"
638struct __anonstruct_rwlock_t_32 {
639 arch_rwlock_t raw_lock ;
640 unsigned int magic ;
641 unsigned int owner_cpu ;
642 void *owner ;
643 struct lockdep_map dep_map ;
644};
645# 23 "include/linux/rwlock_types.h"
646typedef struct __anonstruct_rwlock_t_32 rwlock_t;
647# 110 "include/linux/seqlock.h"
648struct seqcount {
649 unsigned int sequence ;
650};
651# 121 "include/linux/seqlock.h"
652typedef struct seqcount seqcount_t;
653# 233 "include/linux/seqlock.h"
654struct timespec {
655 __kernel_time_t tv_sec ;
656 long tv_nsec ;
657};
658# 286 "include/linux/time.h"
659struct kstat {
660 u64 ino ;
661 dev_t dev ;
662 umode_t mode ;
663 unsigned int nlink ;
664 uid_t uid ;
665 gid_t gid ;
666 dev_t rdev ;
667 loff_t size ;
668 struct timespec atime ;
669 struct timespec mtime ;
670 struct timespec ctime ;
671 unsigned long blksize ;
672 unsigned long long blocks ;
673};
674# 28 "include/linux/wait.h"
675struct __wait_queue;
676# 28 "include/linux/wait.h"
677struct __wait_queue;
678# 28 "include/linux/wait.h"
679typedef struct __wait_queue wait_queue_t;
680# 31 "include/linux/wait.h"
681struct __wait_queue {
682 unsigned int flags ;
683 void *private ;
684 int (*func)(wait_queue_t * , unsigned int , int , void * ) ;
685 struct list_head task_list ;
686};
687# 49 "include/linux/wait.h"
688struct __wait_queue_head {
689 spinlock_t lock ;
690 struct list_head task_list ;
691};
692# 54 "include/linux/wait.h"
693typedef struct __wait_queue_head wait_queue_head_t;
694# 96 "include/linux/nodemask.h"
695struct __anonstruct_nodemask_t_34 {
696 unsigned long bits[16U] ;
697};
698# 96 "include/linux/nodemask.h"
699typedef struct __anonstruct_nodemask_t_34 nodemask_t;
700# 640 "include/linux/mmzone.h"
701struct mutex {
702 atomic_t count ;
703 spinlock_t wait_lock ;
704 struct list_head wait_list ;
705 struct task_struct *owner ;
706 char const *name ;
707 void *magic ;
708 struct lockdep_map dep_map ;
709};
710# 63 "include/linux/mutex.h"
711struct mutex_waiter {
712 struct list_head list ;
713 struct task_struct *task ;
714 void *magic ;
715};
716# 171 "include/linux/mutex.h"
717struct rw_semaphore;
718# 171 "include/linux/mutex.h"
719struct rw_semaphore;
720# 171 "include/linux/mutex.h"
721struct rw_semaphore;
722# 172 "include/linux/mutex.h"
723struct rw_semaphore {
724 long count ;
725 spinlock_t wait_lock ;
726 struct list_head wait_list ;
727 struct lockdep_map dep_map ;
728};
729# 175 "include/linux/ioport.h"
730struct device;
731# 175 "include/linux/ioport.h"
732struct device;
733# 175 "include/linux/ioport.h"
734struct device;
735# 312 "include/linux/jiffies.h"
736union ktime {
737 s64 tv64 ;
738};
739# 59 "include/linux/ktime.h"
740typedef union ktime ktime_t;
741# 99 "include/linux/debugobjects.h"
742struct tvec_base;
743# 99 "include/linux/debugobjects.h"
744struct tvec_base;
745# 99 "include/linux/debugobjects.h"
746struct tvec_base;
747# 100 "include/linux/debugobjects.h"
748struct timer_list {
749 struct list_head entry ;
750 unsigned long expires ;
751 struct tvec_base *base ;
752 void (*function)(unsigned long ) ;
753 unsigned long data ;
754 int slack ;
755 int start_pid ;
756 void *start_site ;
757 char start_comm[16U] ;
758 struct lockdep_map lockdep_map ;
759};
760# 289 "include/linux/timer.h"
761struct hrtimer;
762# 289 "include/linux/timer.h"
763struct hrtimer;
764# 289 "include/linux/timer.h"
765struct hrtimer;
766# 290 "include/linux/timer.h"
767enum hrtimer_restart;
768# 290 "include/linux/timer.h"
769enum hrtimer_restart;
770# 302 "include/linux/timer.h"
771struct work_struct;
772# 302 "include/linux/timer.h"
773struct work_struct;
774# 302 "include/linux/timer.h"
775struct work_struct;
776# 45 "include/linux/workqueue.h"
777struct work_struct {
778 atomic_long_t data ;
779 struct list_head entry ;
780 void (*func)(struct work_struct * ) ;
781 struct lockdep_map lockdep_map ;
782};
783# 86 "include/linux/workqueue.h"
784struct delayed_work {
785 struct work_struct work ;
786 struct timer_list timer ;
787};
788# 443 "include/linux/workqueue.h"
789struct completion {
790 unsigned int done ;
791 wait_queue_head_t wait ;
792};
793# 46 "include/linux/pm.h"
794struct pm_message {
795 int event ;
796};
797# 52 "include/linux/pm.h"
798typedef struct pm_message pm_message_t;
799# 53 "include/linux/pm.h"
800struct dev_pm_ops {
801 int (*prepare)(struct device * ) ;
802 void (*complete)(struct device * ) ;
803 int (*suspend)(struct device * ) ;
804 int (*resume)(struct device * ) ;
805 int (*freeze)(struct device * ) ;
806 int (*thaw)(struct device * ) ;
807 int (*poweroff)(struct device * ) ;
808 int (*restore)(struct device * ) ;
809 int (*suspend_noirq)(struct device * ) ;
810 int (*resume_noirq)(struct device * ) ;
811 int (*freeze_noirq)(struct device * ) ;
812 int (*thaw_noirq)(struct device * ) ;
813 int (*poweroff_noirq)(struct device * ) ;
814 int (*restore_noirq)(struct device * ) ;
815 int (*runtime_suspend)(struct device * ) ;
816 int (*runtime_resume)(struct device * ) ;
817 int (*runtime_idle)(struct device * ) ;
818};
819# 272 "include/linux/pm.h"
820enum rpm_status {
821 RPM_ACTIVE = 0,
822 RPM_RESUMING = 1,
823 RPM_SUSPENDED = 2,
824 RPM_SUSPENDING = 3
825} ;
826# 279 "include/linux/pm.h"
827enum rpm_request {
828 RPM_REQ_NONE = 0,
829 RPM_REQ_IDLE = 1,
830 RPM_REQ_SUSPEND = 2,
831 RPM_REQ_AUTOSUSPEND = 3,
832 RPM_REQ_RESUME = 4
833} ;
834# 287 "include/linux/pm.h"
835struct wakeup_source;
836# 287 "include/linux/pm.h"
837struct wakeup_source;
838# 287 "include/linux/pm.h"
839struct wakeup_source;
840# 288 "include/linux/pm.h"
841struct dev_pm_info {
842 pm_message_t power_state ;
843 unsigned char can_wakeup : 1 ;
844 unsigned char async_suspend : 1 ;
845 bool is_prepared ;
846 bool is_suspended ;
847 spinlock_t lock ;
848 struct list_head entry ;
849 struct completion completion ;
850 struct wakeup_source *wakeup ;
851 struct timer_list suspend_timer ;
852 unsigned long timer_expires ;
853 struct work_struct work ;
854 wait_queue_head_t wait_queue ;
855 atomic_t usage_count ;
856 atomic_t child_count ;
857 unsigned char disable_depth : 3 ;
858 unsigned char ignore_children : 1 ;
859 unsigned char idle_notification : 1 ;
860 unsigned char request_pending : 1 ;
861 unsigned char deferred_resume : 1 ;
862 unsigned char run_wake : 1 ;
863 unsigned char runtime_auto : 1 ;
864 unsigned char no_callbacks : 1 ;
865 unsigned char irq_safe : 1 ;
866 unsigned char use_autosuspend : 1 ;
867 unsigned char timer_autosuspends : 1 ;
868 enum rpm_request request ;
869 enum rpm_status runtime_status ;
870 int runtime_error ;
871 int autosuspend_delay ;
872 unsigned long last_busy ;
873 unsigned long active_jiffies ;
874 unsigned long suspended_jiffies ;
875 unsigned long accounting_timestamp ;
876 void *subsys_data ;
877};
878# 469 "include/linux/pm.h"
879struct dev_power_domain {
880 struct dev_pm_ops ops ;
881};
882# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
883struct __anonstruct_mm_context_t_99 {
884 void *ldt ;
885 int size ;
886 unsigned short ia32_compat ;
887 struct mutex lock ;
888 void *vdso ;
889};
890# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
891typedef struct __anonstruct_mm_context_t_99 mm_context_t;
892# 71 "include/asm-generic/iomap.h"
893struct vm_area_struct;
894# 71 "include/asm-generic/iomap.h"
895struct vm_area_struct;
896# 71 "include/asm-generic/iomap.h"
897struct vm_area_struct;
898# 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
899struct bio_vec;
900# 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
901struct bio_vec;
902# 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
903struct bio_vec;
904# 18 "include/linux/smp.h"
905struct call_single_data {
906 struct list_head list ;
907 void (*func)(void * ) ;
908 void *info ;
909 u16 flags ;
910 u16 priv ;
911};
912# 53 "include/linux/rcupdate.h"
913struct rcu_head {
914 struct rcu_head *next ;
915 void (*func)(struct rcu_head * ) ;
916};
917# 841 "include/linux/rcupdate.h"
918struct nsproxy;
919# 841 "include/linux/rcupdate.h"
920struct nsproxy;
921# 841 "include/linux/rcupdate.h"
922struct nsproxy;
923# 36 "include/linux/kmod.h"
924struct cred;
925# 36 "include/linux/kmod.h"
926struct cred;
927# 36 "include/linux/kmod.h"
928struct cred;
929# 27 "include/linux/elf.h"
930typedef __u64 Elf64_Addr;
931# 28 "include/linux/elf.h"
932typedef __u16 Elf64_Half;
933# 32 "include/linux/elf.h"
934typedef __u32 Elf64_Word;
935# 33 "include/linux/elf.h"
936typedef __u64 Elf64_Xword;
937# 202 "include/linux/elf.h"
938struct elf64_sym {
939 Elf64_Word st_name ;
940 unsigned char st_info ;
941 unsigned char st_other ;
942 Elf64_Half st_shndx ;
943 Elf64_Addr st_value ;
944 Elf64_Xword st_size ;
945};
946# 210 "include/linux/elf.h"
947typedef struct elf64_sym Elf64_Sym;
948# 444 "include/linux/elf.h"
949struct sock;
950# 444 "include/linux/elf.h"
951struct sock;
952# 444 "include/linux/elf.h"
953struct sock;
954# 445 "include/linux/elf.h"
955struct kobject;
956# 445 "include/linux/elf.h"
957struct kobject;
958# 445 "include/linux/elf.h"
959struct kobject;
960# 446 "include/linux/elf.h"
961enum kobj_ns_type {
962 KOBJ_NS_TYPE_NONE = 0,
963 KOBJ_NS_TYPE_NET = 1,
964 KOBJ_NS_TYPES = 2
965} ;
966# 452 "include/linux/elf.h"
967struct kobj_ns_type_operations {
968 enum kobj_ns_type type ;
969 void *(*grab_current_ns)(void) ;
970 void const *(*netlink_ns)(struct sock * ) ;
971 void const *(*initial_ns)(void) ;
972 void (*drop_ns)(void * ) ;
973};
974# 57 "include/linux/kobject_ns.h"
975struct attribute {
976 char const *name ;
977 mode_t mode ;
978 struct lock_class_key *key ;
979 struct lock_class_key skey ;
980};
981# 33 "include/linux/sysfs.h"
982struct attribute_group {
983 char const *name ;
984 mode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
985 struct attribute **attrs ;
986};
987# 62 "include/linux/sysfs.h"
988struct bin_attribute {
989 struct attribute attr ;
990 size_t size ;
991 void *private ;
992 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
993 loff_t , size_t ) ;
994 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
995 loff_t , size_t ) ;
996 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
997};
998# 98 "include/linux/sysfs.h"
999struct sysfs_ops {
1000 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
1001 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
1002};
1003# 116 "include/linux/sysfs.h"
1004struct sysfs_dirent;
1005# 116 "include/linux/sysfs.h"
1006struct sysfs_dirent;
1007# 116 "include/linux/sysfs.h"
1008struct sysfs_dirent;
1009# 181 "include/linux/sysfs.h"
1010struct kref {
1011 atomic_t refcount ;
1012};
1013# 39 "include/linux/kobject.h"
1014enum kobject_action {
1015 KOBJ_ADD = 0,
1016 KOBJ_REMOVE = 1,
1017 KOBJ_CHANGE = 2,
1018 KOBJ_MOVE = 3,
1019 KOBJ_ONLINE = 4,
1020 KOBJ_OFFLINE = 5,
1021 KOBJ_MAX = 6
1022} ;
1023# 49 "include/linux/kobject.h"
1024struct kset;
1025# 49 "include/linux/kobject.h"
1026struct kset;
1027# 49 "include/linux/kobject.h"
1028struct kobj_type;
1029# 49 "include/linux/kobject.h"
1030struct kobj_type;
1031# 49 "include/linux/kobject.h"
1032struct kobject {
1033 char const *name ;
1034 struct list_head entry ;
1035 struct kobject *parent ;
1036 struct kset *kset ;
1037 struct kobj_type *ktype ;
1038 struct sysfs_dirent *sd ;
1039 struct kref kref ;
1040 unsigned char state_initialized : 1 ;
1041 unsigned char state_in_sysfs : 1 ;
1042 unsigned char state_add_uevent_sent : 1 ;
1043 unsigned char state_remove_uevent_sent : 1 ;
1044 unsigned char uevent_suppress : 1 ;
1045};
1046# 109 "include/linux/kobject.h"
1047struct kobj_type {
1048 void (*release)(struct kobject * ) ;
1049 struct sysfs_ops const *sysfs_ops ;
1050 struct attribute **default_attrs ;
1051 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
1052 void const *(*namespace)(struct kobject * ) ;
1053};
1054# 117 "include/linux/kobject.h"
1055struct kobj_uevent_env {
1056 char *envp[32U] ;
1057 int envp_idx ;
1058 char buf[2048U] ;
1059 int buflen ;
1060};
1061# 124 "include/linux/kobject.h"
1062struct kset_uevent_ops {
1063 int (* const filter)(struct kset * , struct kobject * ) ;
1064 char const *(* const name)(struct kset * , struct kobject * ) ;
1065 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
1066};
1067# 141 "include/linux/kobject.h"
1068struct kset {
1069 struct list_head list ;
1070 spinlock_t list_lock ;
1071 struct kobject kobj ;
1072 struct kset_uevent_ops const *uevent_ops ;
1073};
1074# 219 "include/linux/kobject.h"
1075struct kernel_param;
1076# 219 "include/linux/kobject.h"
1077struct kernel_param;
1078# 219 "include/linux/kobject.h"
1079struct kernel_param;
1080# 220 "include/linux/kobject.h"
1081struct kernel_param_ops {
1082 int (*set)(char const * , struct kernel_param const * ) ;
1083 int (*get)(char * , struct kernel_param const * ) ;
1084 void (*free)(void * ) ;
1085};
1086# 44 "include/linux/moduleparam.h"
1087struct kparam_string;
1088# 44 "include/linux/moduleparam.h"
1089struct kparam_string;
1090# 44 "include/linux/moduleparam.h"
1091struct kparam_array;
1092# 44 "include/linux/moduleparam.h"
1093struct kparam_array;
1094# 44 "include/linux/moduleparam.h"
1095union __anonunion_ldv_12924_129 {
1096 void *arg ;
1097 struct kparam_string const *str ;
1098 struct kparam_array const *arr ;
1099};
1100# 44 "include/linux/moduleparam.h"
1101struct kernel_param {
1102 char const *name ;
1103 struct kernel_param_ops const *ops ;
1104 u16 perm ;
1105 u16 flags ;
1106 union __anonunion_ldv_12924_129 ldv_12924 ;
1107};
1108# 59 "include/linux/moduleparam.h"
1109struct kparam_string {
1110 unsigned int maxlen ;
1111 char *string ;
1112};
1113# 65 "include/linux/moduleparam.h"
1114struct kparam_array {
1115 unsigned int max ;
1116 unsigned int elemsize ;
1117 unsigned int *num ;
1118 struct kernel_param_ops const *ops ;
1119 void *elem ;
1120};
1121# 404 "include/linux/moduleparam.h"
1122struct jump_label_key {
1123 atomic_t enabled ;
1124};
1125# 99 "include/linux/jump_label.h"
1126struct tracepoint;
1127# 99 "include/linux/jump_label.h"
1128struct tracepoint;
1129# 99 "include/linux/jump_label.h"
1130struct tracepoint;
1131# 100 "include/linux/jump_label.h"
1132struct tracepoint_func {
1133 void *func ;
1134 void *data ;
1135};
1136# 29 "include/linux/tracepoint.h"
1137struct tracepoint {
1138 char const *name ;
1139 struct jump_label_key key ;
1140 void (*regfunc)(void) ;
1141 void (*unregfunc)(void) ;
1142 struct tracepoint_func *funcs ;
1143};
1144# 84 "include/linux/tracepoint.h"
1145struct mod_arch_specific {
1146
1147};
1148# 127 "include/trace/events/module.h"
1149struct kernel_symbol {
1150 unsigned long value ;
1151 char const *name ;
1152};
1153# 48 "include/linux/module.h"
1154struct module_attribute {
1155 struct attribute attr ;
1156 ssize_t (*show)(struct module_attribute * , struct module * , char * ) ;
1157 ssize_t (*store)(struct module_attribute * , struct module * , char const * ,
1158 size_t ) ;
1159 void (*setup)(struct module * , char const * ) ;
1160 int (*test)(struct module * ) ;
1161 void (*free)(struct module * ) ;
1162};
1163# 68 "include/linux/module.h"
1164struct module_param_attrs;
1165# 68 "include/linux/module.h"
1166struct module_param_attrs;
1167# 68 "include/linux/module.h"
1168struct module_kobject {
1169 struct kobject kobj ;
1170 struct module *mod ;
1171 struct kobject *drivers_dir ;
1172 struct module_param_attrs *mp ;
1173};
1174# 81 "include/linux/module.h"
1175struct exception_table_entry;
1176# 81 "include/linux/module.h"
1177struct exception_table_entry;
1178# 81 "include/linux/module.h"
1179struct exception_table_entry;
1180# 218 "include/linux/module.h"
1181enum module_state {
1182 MODULE_STATE_LIVE = 0,
1183 MODULE_STATE_COMING = 1,
1184 MODULE_STATE_GOING = 2
1185} ;
1186# 224 "include/linux/module.h"
1187struct module_ref {
1188 unsigned int incs ;
1189 unsigned int decs ;
1190};
1191# 418 "include/linux/module.h"
1192struct module_sect_attrs;
1193# 418 "include/linux/module.h"
1194struct module_sect_attrs;
1195# 418 "include/linux/module.h"
1196struct module_notes_attrs;
1197# 418 "include/linux/module.h"
1198struct module_notes_attrs;
1199# 418 "include/linux/module.h"
1200struct ftrace_event_call;
1201# 418 "include/linux/module.h"
1202struct ftrace_event_call;
1203# 418 "include/linux/module.h"
1204struct module {
1205 enum module_state state ;
1206 struct list_head list ;
1207 char name[56U] ;
1208 struct module_kobject mkobj ;
1209 struct module_attribute *modinfo_attrs ;
1210 char const *version ;
1211 char const *srcversion ;
1212 struct kobject *holders_dir ;
1213 struct kernel_symbol const *syms ;
1214 unsigned long const *crcs ;
1215 unsigned int num_syms ;
1216 struct kernel_param *kp ;
1217 unsigned int num_kp ;
1218 unsigned int num_gpl_syms ;
1219 struct kernel_symbol const *gpl_syms ;
1220 unsigned long const *gpl_crcs ;
1221 struct kernel_symbol const *unused_syms ;
1222 unsigned long const *unused_crcs ;
1223 unsigned int num_unused_syms ;
1224 unsigned int num_unused_gpl_syms ;
1225 struct kernel_symbol const *unused_gpl_syms ;
1226 unsigned long const *unused_gpl_crcs ;
1227 struct kernel_symbol const *gpl_future_syms ;
1228 unsigned long const *gpl_future_crcs ;
1229 unsigned int num_gpl_future_syms ;
1230 unsigned int num_exentries ;
1231 struct exception_table_entry *extable ;
1232 int (*init)(void) ;
1233 void *module_init ;
1234 void *module_core ;
1235 unsigned int init_size ;
1236 unsigned int core_size ;
1237 unsigned int init_text_size ;
1238 unsigned int core_text_size ;
1239 unsigned int init_ro_size ;
1240 unsigned int core_ro_size ;
1241 struct mod_arch_specific arch ;
1242 unsigned int taints ;
1243 unsigned int num_bugs ;
1244 struct list_head bug_list ;
1245 struct bug_entry *bug_table ;
1246 Elf64_Sym *symtab ;
1247 Elf64_Sym *core_symtab ;
1248 unsigned int num_symtab ;
1249 unsigned int core_num_syms ;
1250 char *strtab ;
1251 char *core_strtab ;
1252 struct module_sect_attrs *sect_attrs ;
1253 struct module_notes_attrs *notes_attrs ;
1254 char *args ;
1255 void *percpu ;
1256 unsigned int percpu_size ;
1257 unsigned int num_tracepoints ;
1258 struct tracepoint * const *tracepoints_ptrs ;
1259 unsigned int num_trace_bprintk_fmt ;
1260 char const **trace_bprintk_fmt_start ;
1261 struct ftrace_event_call **trace_events ;
1262 unsigned int num_trace_events ;
1263 unsigned int num_ftrace_callsites ;
1264 unsigned long *ftrace_callsites ;
1265 struct list_head source_list ;
1266 struct list_head target_list ;
1267 struct task_struct *waiter ;
1268 void (*exit)(void) ;
1269 struct module_ref *refptr ;
1270 ctor_fn_t (**ctors)(void) ;
1271 unsigned int num_ctors ;
1272};
1273# 93 "include/linux/capability.h"
1274struct kernel_cap_struct {
1275 __u32 cap[2U] ;
1276};
1277# 96 "include/linux/capability.h"
1278typedef struct kernel_cap_struct kernel_cap_t;
1279# 104 "include/linux/capability.h"
1280struct dentry;
1281# 104 "include/linux/capability.h"
1282struct dentry;
1283# 104 "include/linux/capability.h"
1284struct dentry;
1285# 105 "include/linux/capability.h"
1286struct user_namespace;
1287# 105 "include/linux/capability.h"
1288struct user_namespace;
1289# 105 "include/linux/capability.h"
1290struct user_namespace;
1291# 553 "include/linux/capability.h"
1292struct rb_node {
1293 unsigned long rb_parent_color ;
1294 struct rb_node *rb_right ;
1295 struct rb_node *rb_left ;
1296};
1297# 108 "include/linux/rbtree.h"
1298struct rb_root {
1299 struct rb_node *rb_node ;
1300};
1301# 176 "include/linux/rbtree.h"
1302struct prio_tree_node;
1303# 176 "include/linux/rbtree.h"
1304struct prio_tree_node;
1305# 176 "include/linux/rbtree.h"
1306struct raw_prio_tree_node {
1307 struct prio_tree_node *left ;
1308 struct prio_tree_node *right ;
1309 struct prio_tree_node *parent ;
1310};
1311# 19 "include/linux/prio_tree.h"
1312struct prio_tree_node {
1313 struct prio_tree_node *left ;
1314 struct prio_tree_node *right ;
1315 struct prio_tree_node *parent ;
1316 unsigned long start ;
1317 unsigned long last ;
1318};
1319# 27 "include/linux/prio_tree.h"
1320struct prio_tree_root {
1321 struct prio_tree_node *prio_tree_node ;
1322 unsigned short index_bits ;
1323 unsigned short raw ;
1324};
1325# 115 "include/linux/prio_tree.h"
1326struct address_space;
1327# 115 "include/linux/prio_tree.h"
1328struct address_space;
1329# 115 "include/linux/prio_tree.h"
1330struct address_space;
1331# 116 "include/linux/prio_tree.h"
1332struct __anonstruct_ldv_13930_132 {
1333 u16 inuse ;
1334 u16 objects ;
1335};
1336# 116 "include/linux/prio_tree.h"
1337union __anonunion_ldv_13931_131 {
1338 atomic_t _mapcount ;
1339 struct __anonstruct_ldv_13930_132 ldv_13930 ;
1340};
1341# 116 "include/linux/prio_tree.h"
1342struct __anonstruct_ldv_13936_134 {
1343 unsigned long private ;
1344 struct address_space *mapping ;
1345};
1346# 116 "include/linux/prio_tree.h"
1347union __anonunion_ldv_13939_133 {
1348 struct __anonstruct_ldv_13936_134 ldv_13936 ;
1349 struct kmem_cache *slab ;
1350 struct page *first_page ;
1351};
1352# 116 "include/linux/prio_tree.h"
1353union __anonunion_ldv_13943_135 {
1354 unsigned long index ;
1355 void *freelist ;
1356};
1357# 116 "include/linux/prio_tree.h"
1358struct page {
1359 unsigned long flags ;
1360 atomic_t _count ;
1361 union __anonunion_ldv_13931_131 ldv_13931 ;
1362 union __anonunion_ldv_13939_133 ldv_13939 ;
1363 union __anonunion_ldv_13943_135 ldv_13943 ;
1364 struct list_head lru ;
1365};
1366# 124 "include/linux/mm_types.h"
1367struct __anonstruct_vm_set_137 {
1368 struct list_head list ;
1369 void *parent ;
1370 struct vm_area_struct *head ;
1371};
1372# 124 "include/linux/mm_types.h"
1373union __anonunion_shared_136 {
1374 struct __anonstruct_vm_set_137 vm_set ;
1375 struct raw_prio_tree_node prio_tree_node ;
1376};
1377# 124 "include/linux/mm_types.h"
1378struct anon_vma;
1379# 124 "include/linux/mm_types.h"
1380struct anon_vma;
1381# 124 "include/linux/mm_types.h"
1382struct vm_operations_struct;
1383# 124 "include/linux/mm_types.h"
1384struct vm_operations_struct;
1385# 124 "include/linux/mm_types.h"
1386struct mempolicy;
1387# 124 "include/linux/mm_types.h"
1388struct mempolicy;
1389# 124 "include/linux/mm_types.h"
1390struct vm_area_struct {
1391 struct mm_struct *vm_mm ;
1392 unsigned long vm_start ;
1393 unsigned long vm_end ;
1394 struct vm_area_struct *vm_next ;
1395 struct vm_area_struct *vm_prev ;
1396 pgprot_t vm_page_prot ;
1397 unsigned long vm_flags ;
1398 struct rb_node vm_rb ;
1399 union __anonunion_shared_136 shared ;
1400 struct list_head anon_vma_chain ;
1401 struct anon_vma *anon_vma ;
1402 struct vm_operations_struct const *vm_ops ;
1403 unsigned long vm_pgoff ;
1404 struct file *vm_file ;
1405 void *vm_private_data ;
1406 struct mempolicy *vm_policy ;
1407};
1408# 187 "include/linux/mm_types.h"
1409struct core_thread {
1410 struct task_struct *task ;
1411 struct core_thread *next ;
1412};
1413# 193 "include/linux/mm_types.h"
1414struct core_state {
1415 atomic_t nr_threads ;
1416 struct core_thread dumper ;
1417 struct completion startup ;
1418};
1419# 206 "include/linux/mm_types.h"
1420struct mm_rss_stat {
1421 atomic_long_t count[3U] ;
1422};
1423# 219 "include/linux/mm_types.h"
1424struct linux_binfmt;
1425# 219 "include/linux/mm_types.h"
1426struct linux_binfmt;
1427# 219 "include/linux/mm_types.h"
1428struct mmu_notifier_mm;
1429# 219 "include/linux/mm_types.h"
1430struct mmu_notifier_mm;
1431# 219 "include/linux/mm_types.h"
1432struct mm_struct {
1433 struct vm_area_struct *mmap ;
1434 struct rb_root mm_rb ;
1435 struct vm_area_struct *mmap_cache ;
1436 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1437 unsigned long , unsigned long ) ;
1438 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1439 unsigned long mmap_base ;
1440 unsigned long task_size ;
1441 unsigned long cached_hole_size ;
1442 unsigned long free_area_cache ;
1443 pgd_t *pgd ;
1444 atomic_t mm_users ;
1445 atomic_t mm_count ;
1446 int map_count ;
1447 spinlock_t page_table_lock ;
1448 struct rw_semaphore mmap_sem ;
1449 struct list_head mmlist ;
1450 unsigned long hiwater_rss ;
1451 unsigned long hiwater_vm ;
1452 unsigned long total_vm ;
1453 unsigned long locked_vm ;
1454 unsigned long shared_vm ;
1455 unsigned long exec_vm ;
1456 unsigned long stack_vm ;
1457 unsigned long reserved_vm ;
1458 unsigned long def_flags ;
1459 unsigned long nr_ptes ;
1460 unsigned long start_code ;
1461 unsigned long end_code ;
1462 unsigned long start_data ;
1463 unsigned long end_data ;
1464 unsigned long start_brk ;
1465 unsigned long brk ;
1466 unsigned long start_stack ;
1467 unsigned long arg_start ;
1468 unsigned long arg_end ;
1469 unsigned long env_start ;
1470 unsigned long env_end ;
1471 unsigned long saved_auxv[44U] ;
1472 struct mm_rss_stat rss_stat ;
1473 struct linux_binfmt *binfmt ;
1474 cpumask_var_t cpu_vm_mask_var ;
1475 mm_context_t context ;
1476 unsigned int faultstamp ;
1477 unsigned int token_priority ;
1478 unsigned int last_interval ;
1479 atomic_t oom_disable_count ;
1480 unsigned long flags ;
1481 struct core_state *core_state ;
1482 spinlock_t ioctx_lock ;
1483 struct hlist_head ioctx_list ;
1484 struct task_struct *owner ;
1485 struct file *exe_file ;
1486 unsigned long num_exe_file_vmas ;
1487 struct mmu_notifier_mm *mmu_notifier_mm ;
1488 pgtable_t pmd_huge_pte ;
1489 struct cpumask cpumask_allocation ;
1490};
1491# 7 "include/asm-generic/cputime.h"
1492typedef unsigned long cputime_t;
1493# 118 "include/linux/sem.h"
1494struct sem_undo_list;
1495# 118 "include/linux/sem.h"
1496struct sem_undo_list;
1497# 131 "include/linux/sem.h"
1498struct sem_undo_list {
1499 atomic_t refcnt ;
1500 spinlock_t lock ;
1501 struct list_head list_proc ;
1502};
1503# 140 "include/linux/sem.h"
1504struct sysv_sem {
1505 struct sem_undo_list *undo_list ;
1506};
1507# 149 "include/linux/sem.h"
1508struct siginfo;
1509# 149 "include/linux/sem.h"
1510struct siginfo;
1511# 149 "include/linux/sem.h"
1512struct siginfo;
1513# 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1514struct __anonstruct_sigset_t_138 {
1515 unsigned long sig[1U] ;
1516};
1517# 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1518typedef struct __anonstruct_sigset_t_138 sigset_t;
1519# 17 "include/asm-generic/signal-defs.h"
1520typedef void __signalfn_t(int );
1521# 18 "include/asm-generic/signal-defs.h"
1522typedef __signalfn_t *__sighandler_t;
1523# 20 "include/asm-generic/signal-defs.h"
1524typedef void __restorefn_t(void);
1525# 21 "include/asm-generic/signal-defs.h"
1526typedef __restorefn_t *__sigrestore_t;
1527# 126 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1528struct sigaction {
1529 __sighandler_t sa_handler ;
1530 unsigned long sa_flags ;
1531 __sigrestore_t sa_restorer ;
1532 sigset_t sa_mask ;
1533};
1534# 173 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1535struct k_sigaction {
1536 struct sigaction sa ;
1537};
1538# 185 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1539union sigval {
1540 int sival_int ;
1541 void *sival_ptr ;
1542};
1543# 10 "include/asm-generic/siginfo.h"
1544typedef union sigval sigval_t;
1545# 11 "include/asm-generic/siginfo.h"
1546struct __anonstruct__kill_140 {
1547 __kernel_pid_t _pid ;
1548 __kernel_uid32_t _uid ;
1549};
1550# 11 "include/asm-generic/siginfo.h"
1551struct __anonstruct__timer_141 {
1552 __kernel_timer_t _tid ;
1553 int _overrun ;
1554 char _pad[0U] ;
1555 sigval_t _sigval ;
1556 int _sys_private ;
1557};
1558# 11 "include/asm-generic/siginfo.h"
1559struct __anonstruct__rt_142 {
1560 __kernel_pid_t _pid ;
1561 __kernel_uid32_t _uid ;
1562 sigval_t _sigval ;
1563};
1564# 11 "include/asm-generic/siginfo.h"
1565struct __anonstruct__sigchld_143 {
1566 __kernel_pid_t _pid ;
1567 __kernel_uid32_t _uid ;
1568 int _status ;
1569 __kernel_clock_t _utime ;
1570 __kernel_clock_t _stime ;
1571};
1572# 11 "include/asm-generic/siginfo.h"
1573struct __anonstruct__sigfault_144 {
1574 void *_addr ;
1575 short _addr_lsb ;
1576};
1577# 11 "include/asm-generic/siginfo.h"
1578struct __anonstruct__sigpoll_145 {
1579 long _band ;
1580 int _fd ;
1581};
1582# 11 "include/asm-generic/siginfo.h"
1583union __anonunion__sifields_139 {
1584 int _pad[28U] ;
1585 struct __anonstruct__kill_140 _kill ;
1586 struct __anonstruct__timer_141 _timer ;
1587 struct __anonstruct__rt_142 _rt ;
1588 struct __anonstruct__sigchld_143 _sigchld ;
1589 struct __anonstruct__sigfault_144 _sigfault ;
1590 struct __anonstruct__sigpoll_145 _sigpoll ;
1591};
1592# 11 "include/asm-generic/siginfo.h"
1593struct siginfo {
1594 int si_signo ;
1595 int si_errno ;
1596 int si_code ;
1597 union __anonunion__sifields_139 _sifields ;
1598};
1599# 94 "include/asm-generic/siginfo.h"
1600typedef struct siginfo siginfo_t;
1601# 14 "include/linux/signal.h"
1602struct user_struct;
1603# 14 "include/linux/signal.h"
1604struct user_struct;
1605# 24 "include/linux/signal.h"
1606struct sigpending {
1607 struct list_head list ;
1608 sigset_t signal ;
1609};
1610# 387 "include/linux/signal.h"
1611enum pid_type {
1612 PIDTYPE_PID = 0,
1613 PIDTYPE_PGID = 1,
1614 PIDTYPE_SID = 2,
1615 PIDTYPE_MAX = 3
1616} ;
1617# 394 "include/linux/signal.h"
1618struct pid_namespace;
1619# 394 "include/linux/signal.h"
1620struct pid_namespace;
1621# 394 "include/linux/signal.h"
1622struct upid {
1623 int nr ;
1624 struct pid_namespace *ns ;
1625 struct hlist_node pid_chain ;
1626};
1627# 56 "include/linux/pid.h"
1628struct pid {
1629 atomic_t count ;
1630 unsigned int level ;
1631 struct hlist_head tasks[3U] ;
1632 struct rcu_head rcu ;
1633 struct upid numbers[1U] ;
1634};
1635# 68 "include/linux/pid.h"
1636struct pid_link {
1637 struct hlist_node node ;
1638 struct pid *pid ;
1639};
1640# 175 "include/linux/pid.h"
1641struct percpu_counter {
1642 spinlock_t lock ;
1643 s64 count ;
1644 struct list_head list ;
1645 s32 *counters ;
1646};
1647# 45 "include/linux/proportions.h"
1648struct prop_local_percpu {
1649 struct percpu_counter events ;
1650 int shift ;
1651 unsigned long period ;
1652 spinlock_t lock ;
1653};
1654# 90 "include/linux/proportions.h"
1655struct prop_local_single {
1656 unsigned long events ;
1657 unsigned long period ;
1658 int shift ;
1659 spinlock_t lock ;
1660};
1661# 10 "include/linux/seccomp.h"
1662struct __anonstruct_seccomp_t_148 {
1663 int mode ;
1664};
1665# 10 "include/linux/seccomp.h"
1666typedef struct __anonstruct_seccomp_t_148 seccomp_t;
1667# 427 "include/linux/rculist.h"
1668struct plist_head {
1669 struct list_head node_list ;
1670 raw_spinlock_t *rawlock ;
1671 spinlock_t *spinlock ;
1672};
1673# 88 "include/linux/plist.h"
1674struct plist_node {
1675 int prio ;
1676 struct list_head prio_list ;
1677 struct list_head node_list ;
1678};
1679# 38 "include/linux/rtmutex.h"
1680struct rt_mutex_waiter;
1681# 38 "include/linux/rtmutex.h"
1682struct rt_mutex_waiter;
1683# 38 "include/linux/rtmutex.h"
1684struct rt_mutex_waiter;
1685# 41 "include/linux/resource.h"
1686struct rlimit {
1687 unsigned long rlim_cur ;
1688 unsigned long rlim_max ;
1689};
1690# 85 "include/linux/resource.h"
1691struct timerqueue_node {
1692 struct rb_node node ;
1693 ktime_t expires ;
1694};
1695# 12 "include/linux/timerqueue.h"
1696struct timerqueue_head {
1697 struct rb_root head ;
1698 struct timerqueue_node *next ;
1699};
1700# 50 "include/linux/timerqueue.h"
1701struct hrtimer_clock_base;
1702# 50 "include/linux/timerqueue.h"
1703struct hrtimer_clock_base;
1704# 50 "include/linux/timerqueue.h"
1705struct hrtimer_clock_base;
1706# 51 "include/linux/timerqueue.h"
1707struct hrtimer_cpu_base;
1708# 51 "include/linux/timerqueue.h"
1709struct hrtimer_cpu_base;
1710# 51 "include/linux/timerqueue.h"
1711struct hrtimer_cpu_base;
1712# 60 "include/linux/timerqueue.h"
1713enum hrtimer_restart {
1714 HRTIMER_NORESTART = 0,
1715 HRTIMER_RESTART = 1
1716} ;
1717# 65 "include/linux/timerqueue.h"
1718struct hrtimer {
1719 struct timerqueue_node node ;
1720 ktime_t _softexpires ;
1721 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1722 struct hrtimer_clock_base *base ;
1723 unsigned long state ;
1724 int start_pid ;
1725 void *start_site ;
1726 char start_comm[16U] ;
1727};
1728# 132 "include/linux/hrtimer.h"
1729struct hrtimer_clock_base {
1730 struct hrtimer_cpu_base *cpu_base ;
1731 int index ;
1732 clockid_t clockid ;
1733 struct timerqueue_head active ;
1734 ktime_t resolution ;
1735 ktime_t (*get_time)(void) ;
1736 ktime_t softirq_time ;
1737 ktime_t offset ;
1738};
1739# 162 "include/linux/hrtimer.h"
1740struct hrtimer_cpu_base {
1741 raw_spinlock_t lock ;
1742 unsigned long active_bases ;
1743 ktime_t expires_next ;
1744 int hres_active ;
1745 int hang_detected ;
1746 unsigned long nr_events ;
1747 unsigned long nr_retries ;
1748 unsigned long nr_hangs ;
1749 ktime_t max_hang_time ;
1750 struct hrtimer_clock_base clock_base[3U] ;
1751};
1752# 452 "include/linux/hrtimer.h"
1753struct task_io_accounting {
1754 u64 rchar ;
1755 u64 wchar ;
1756 u64 syscr ;
1757 u64 syscw ;
1758 u64 read_bytes ;
1759 u64 write_bytes ;
1760 u64 cancelled_write_bytes ;
1761};
1762# 45 "include/linux/task_io_accounting.h"
1763struct latency_record {
1764 unsigned long backtrace[12U] ;
1765 unsigned int count ;
1766 unsigned long time ;
1767 unsigned long max ;
1768};
1769# 29 "include/linux/key.h"
1770typedef int32_t key_serial_t;
1771# 32 "include/linux/key.h"
1772typedef uint32_t key_perm_t;
1773# 33 "include/linux/key.h"
1774struct key;
1775# 33 "include/linux/key.h"
1776struct key;
1777# 33 "include/linux/key.h"
1778struct key;
1779# 34 "include/linux/key.h"
1780struct signal_struct;
1781# 34 "include/linux/key.h"
1782struct signal_struct;
1783# 34 "include/linux/key.h"
1784struct signal_struct;
1785# 35 "include/linux/key.h"
1786struct key_type;
1787# 35 "include/linux/key.h"
1788struct key_type;
1789# 35 "include/linux/key.h"
1790struct key_type;
1791# 37 "include/linux/key.h"
1792struct keyring_list;
1793# 37 "include/linux/key.h"
1794struct keyring_list;
1795# 37 "include/linux/key.h"
1796struct keyring_list;
1797# 115 "include/linux/key.h"
1798struct key_user;
1799# 115 "include/linux/key.h"
1800struct key_user;
1801# 115 "include/linux/key.h"
1802union __anonunion_ldv_15197_149 {
1803 time_t expiry ;
1804 time_t revoked_at ;
1805};
1806# 115 "include/linux/key.h"
1807union __anonunion_type_data_150 {
1808 struct list_head link ;
1809 unsigned long x[2U] ;
1810 void *p[2U] ;
1811 int reject_error ;
1812};
1813# 115 "include/linux/key.h"
1814union __anonunion_payload_151 {
1815 unsigned long value ;
1816 void *rcudata ;
1817 void *data ;
1818 struct keyring_list *subscriptions ;
1819};
1820# 115 "include/linux/key.h"
1821struct key {
1822 atomic_t usage ;
1823 key_serial_t serial ;
1824 struct rb_node serial_node ;
1825 struct key_type *type ;
1826 struct rw_semaphore sem ;
1827 struct key_user *user ;
1828 void *security ;
1829 union __anonunion_ldv_15197_149 ldv_15197 ;
1830 uid_t uid ;
1831 gid_t gid ;
1832 key_perm_t perm ;
1833 unsigned short quotalen ;
1834 unsigned short datalen ;
1835 unsigned long flags ;
1836 char *description ;
1837 union __anonunion_type_data_150 type_data ;
1838 union __anonunion_payload_151 payload ;
1839};
1840# 310 "include/linux/key.h"
1841struct audit_context;
1842# 310 "include/linux/key.h"
1843struct audit_context;
1844# 310 "include/linux/key.h"
1845struct audit_context;
1846# 27 "include/linux/selinux.h"
1847struct inode;
1848# 27 "include/linux/selinux.h"
1849struct inode;
1850# 27 "include/linux/selinux.h"
1851struct inode;
1852# 28 "include/linux/selinux.h"
1853struct group_info {
1854 atomic_t usage ;
1855 int ngroups ;
1856 int nblocks ;
1857 gid_t small_block[32U] ;
1858 gid_t *blocks[0U] ;
1859};
1860# 77 "include/linux/cred.h"
1861struct thread_group_cred {
1862 atomic_t usage ;
1863 pid_t tgid ;
1864 spinlock_t lock ;
1865 struct key *session_keyring ;
1866 struct key *process_keyring ;
1867 struct rcu_head rcu ;
1868};
1869# 91 "include/linux/cred.h"
1870struct cred {
1871 atomic_t usage ;
1872 atomic_t subscribers ;
1873 void *put_addr ;
1874 unsigned int magic ;
1875 uid_t uid ;
1876 gid_t gid ;
1877 uid_t suid ;
1878 gid_t sgid ;
1879 uid_t euid ;
1880 gid_t egid ;
1881 uid_t fsuid ;
1882 gid_t fsgid ;
1883 unsigned int securebits ;
1884 kernel_cap_t cap_inheritable ;
1885 kernel_cap_t cap_permitted ;
1886 kernel_cap_t cap_effective ;
1887 kernel_cap_t cap_bset ;
1888 unsigned char jit_keyring ;
1889 struct key *thread_keyring ;
1890 struct key *request_key_auth ;
1891 struct thread_group_cred *tgcred ;
1892 void *security ;
1893 struct user_struct *user ;
1894 struct user_namespace *user_ns ;
1895 struct group_info *group_info ;
1896 struct rcu_head rcu ;
1897};
1898# 264 "include/linux/cred.h"
1899struct futex_pi_state;
1900# 264 "include/linux/cred.h"
1901struct futex_pi_state;
1902# 264 "include/linux/cred.h"
1903struct futex_pi_state;
1904# 265 "include/linux/cred.h"
1905struct robust_list_head;
1906# 265 "include/linux/cred.h"
1907struct robust_list_head;
1908# 265 "include/linux/cred.h"
1909struct robust_list_head;
1910# 266 "include/linux/cred.h"
1911struct bio_list;
1912# 266 "include/linux/cred.h"
1913struct bio_list;
1914# 266 "include/linux/cred.h"
1915struct bio_list;
1916# 267 "include/linux/cred.h"
1917struct fs_struct;
1918# 267 "include/linux/cred.h"
1919struct fs_struct;
1920# 267 "include/linux/cred.h"
1921struct fs_struct;
1922# 268 "include/linux/cred.h"
1923struct perf_event_context;
1924# 268 "include/linux/cred.h"
1925struct perf_event_context;
1926# 268 "include/linux/cred.h"
1927struct perf_event_context;
1928# 269 "include/linux/cred.h"
1929struct blk_plug;
1930# 269 "include/linux/cred.h"
1931struct blk_plug;
1932# 269 "include/linux/cred.h"
1933struct blk_plug;
1934# 149 "include/linux/sched.h"
1935struct cfs_rq;
1936# 149 "include/linux/sched.h"
1937struct cfs_rq;
1938# 149 "include/linux/sched.h"
1939struct cfs_rq;
1940# 44 "include/linux/aio_abi.h"
1941struct io_event {
1942 __u64 data ;
1943 __u64 obj ;
1944 __s64 res ;
1945 __s64 res2 ;
1946};
1947# 106 "include/linux/aio_abi.h"
1948struct iovec {
1949 void *iov_base ;
1950 __kernel_size_t iov_len ;
1951};
1952# 54 "include/linux/uio.h"
1953struct kioctx;
1954# 54 "include/linux/uio.h"
1955struct kioctx;
1956# 54 "include/linux/uio.h"
1957struct kioctx;
1958# 55 "include/linux/uio.h"
1959union __anonunion_ki_obj_152 {
1960 void *user ;
1961 struct task_struct *tsk ;
1962};
1963# 55 "include/linux/uio.h"
1964struct eventfd_ctx;
1965# 55 "include/linux/uio.h"
1966struct eventfd_ctx;
1967# 55 "include/linux/uio.h"
1968struct kiocb {
1969 struct list_head ki_run_list ;
1970 unsigned long ki_flags ;
1971 int ki_users ;
1972 unsigned int ki_key ;
1973 struct file *ki_filp ;
1974 struct kioctx *ki_ctx ;
1975 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
1976 ssize_t (*ki_retry)(struct kiocb * ) ;
1977 void (*ki_dtor)(struct kiocb * ) ;
1978 union __anonunion_ki_obj_152 ki_obj ;
1979 __u64 ki_user_data ;
1980 loff_t ki_pos ;
1981 void *private ;
1982 unsigned short ki_opcode ;
1983 size_t ki_nbytes ;
1984 char *ki_buf ;
1985 size_t ki_left ;
1986 struct iovec ki_inline_vec ;
1987 struct iovec *ki_iovec ;
1988 unsigned long ki_nr_segs ;
1989 unsigned long ki_cur_seg ;
1990 struct list_head ki_list ;
1991 struct eventfd_ctx *ki_eventfd ;
1992};
1993# 161 "include/linux/aio.h"
1994struct aio_ring_info {
1995 unsigned long mmap_base ;
1996 unsigned long mmap_size ;
1997 struct page **ring_pages ;
1998 spinlock_t ring_lock ;
1999 long nr_pages ;
2000 unsigned int nr ;
2001 unsigned int tail ;
2002 struct page *internal_pages[8U] ;
2003};
2004# 177 "include/linux/aio.h"
2005struct kioctx {
2006 atomic_t users ;
2007 int dead ;
2008 struct mm_struct *mm ;
2009 unsigned long user_id ;
2010 struct hlist_node list ;
2011 wait_queue_head_t wait ;
2012 spinlock_t ctx_lock ;
2013 int reqs_active ;
2014 struct list_head active_reqs ;
2015 struct list_head run_list ;
2016 unsigned int max_reqs ;
2017 struct aio_ring_info ring_info ;
2018 struct delayed_work wq ;
2019 struct rcu_head rcu_head ;
2020};
2021# 404 "include/linux/sched.h"
2022struct sighand_struct {
2023 atomic_t count ;
2024 struct k_sigaction action[64U] ;
2025 spinlock_t siglock ;
2026 wait_queue_head_t signalfd_wqh ;
2027};
2028# 447 "include/linux/sched.h"
2029struct pacct_struct {
2030 int ac_flag ;
2031 long ac_exitcode ;
2032 unsigned long ac_mem ;
2033 cputime_t ac_utime ;
2034 cputime_t ac_stime ;
2035 unsigned long ac_minflt ;
2036 unsigned long ac_majflt ;
2037};
2038# 455 "include/linux/sched.h"
2039struct cpu_itimer {
2040 cputime_t expires ;
2041 cputime_t incr ;
2042 u32 error ;
2043 u32 incr_error ;
2044};
2045# 462 "include/linux/sched.h"
2046struct task_cputime {
2047 cputime_t utime ;
2048 cputime_t stime ;
2049 unsigned long long sum_exec_runtime ;
2050};
2051# 479 "include/linux/sched.h"
2052struct thread_group_cputimer {
2053 struct task_cputime cputime ;
2054 int running ;
2055 spinlock_t lock ;
2056};
2057# 515 "include/linux/sched.h"
2058struct autogroup;
2059# 515 "include/linux/sched.h"
2060struct autogroup;
2061# 515 "include/linux/sched.h"
2062struct autogroup;
2063# 516 "include/linux/sched.h"
2064struct tty_struct;
2065# 516 "include/linux/sched.h"
2066struct tty_struct;
2067# 516 "include/linux/sched.h"
2068struct taskstats;
2069# 516 "include/linux/sched.h"
2070struct taskstats;
2071# 516 "include/linux/sched.h"
2072struct tty_audit_buf;
2073# 516 "include/linux/sched.h"
2074struct tty_audit_buf;
2075# 516 "include/linux/sched.h"
2076struct signal_struct {
2077 atomic_t sigcnt ;
2078 atomic_t live ;
2079 int nr_threads ;
2080 wait_queue_head_t wait_chldexit ;
2081 struct task_struct *curr_target ;
2082 struct sigpending shared_pending ;
2083 int group_exit_code ;
2084 int notify_count ;
2085 struct task_struct *group_exit_task ;
2086 int group_stop_count ;
2087 unsigned int flags ;
2088 struct list_head posix_timers ;
2089 struct hrtimer real_timer ;
2090 struct pid *leader_pid ;
2091 ktime_t it_real_incr ;
2092 struct cpu_itimer it[2U] ;
2093 struct thread_group_cputimer cputimer ;
2094 struct task_cputime cputime_expires ;
2095 struct list_head cpu_timers[3U] ;
2096 struct pid *tty_old_pgrp ;
2097 int leader ;
2098 struct tty_struct *tty ;
2099 struct autogroup *autogroup ;
2100 cputime_t utime ;
2101 cputime_t stime ;
2102 cputime_t cutime ;
2103 cputime_t cstime ;
2104 cputime_t gtime ;
2105 cputime_t cgtime ;
2106 cputime_t prev_utime ;
2107 cputime_t prev_stime ;
2108 unsigned long nvcsw ;
2109 unsigned long nivcsw ;
2110 unsigned long cnvcsw ;
2111 unsigned long cnivcsw ;
2112 unsigned long min_flt ;
2113 unsigned long maj_flt ;
2114 unsigned long cmin_flt ;
2115 unsigned long cmaj_flt ;
2116 unsigned long inblock ;
2117 unsigned long oublock ;
2118 unsigned long cinblock ;
2119 unsigned long coublock ;
2120 unsigned long maxrss ;
2121 unsigned long cmaxrss ;
2122 struct task_io_accounting ioac ;
2123 unsigned long long sum_sched_runtime ;
2124 struct rlimit rlim[16U] ;
2125 struct pacct_struct pacct ;
2126 struct taskstats *stats ;
2127 unsigned int audit_tty ;
2128 struct tty_audit_buf *tty_audit_buf ;
2129 struct rw_semaphore threadgroup_fork_lock ;
2130 int oom_adj ;
2131 int oom_score_adj ;
2132 int oom_score_adj_min ;
2133 struct mutex cred_guard_mutex ;
2134};
2135# 683 "include/linux/sched.h"
2136struct user_struct {
2137 atomic_t __count ;
2138 atomic_t processes ;
2139 atomic_t files ;
2140 atomic_t sigpending ;
2141 atomic_t inotify_watches ;
2142 atomic_t inotify_devs ;
2143 atomic_t fanotify_listeners ;
2144 atomic_long_t epoll_watches ;
2145 unsigned long mq_bytes ;
2146 unsigned long locked_shm ;
2147 struct key *uid_keyring ;
2148 struct key *session_keyring ;
2149 struct hlist_node uidhash_node ;
2150 uid_t uid ;
2151 struct user_namespace *user_ns ;
2152 atomic_long_t locked_vm ;
2153};
2154# 728 "include/linux/sched.h"
2155struct backing_dev_info;
2156# 728 "include/linux/sched.h"
2157struct backing_dev_info;
2158# 728 "include/linux/sched.h"
2159struct backing_dev_info;
2160# 729 "include/linux/sched.h"
2161struct reclaim_state;
2162# 729 "include/linux/sched.h"
2163struct reclaim_state;
2164# 729 "include/linux/sched.h"
2165struct reclaim_state;
2166# 730 "include/linux/sched.h"
2167struct sched_info {
2168 unsigned long pcount ;
2169 unsigned long long run_delay ;
2170 unsigned long long last_arrival ;
2171 unsigned long long last_queued ;
2172};
2173# 744 "include/linux/sched.h"
2174struct task_delay_info {
2175 spinlock_t lock ;
2176 unsigned int flags ;
2177 struct timespec blkio_start ;
2178 struct timespec blkio_end ;
2179 u64 blkio_delay ;
2180 u64 swapin_delay ;
2181 u32 blkio_count ;
2182 u32 swapin_count ;
2183 struct timespec freepages_start ;
2184 struct timespec freepages_end ;
2185 u64 freepages_delay ;
2186 u32 freepages_count ;
2187};
2188# 1037 "include/linux/sched.h"
2189struct io_context;
2190# 1037 "include/linux/sched.h"
2191struct io_context;
2192# 1037 "include/linux/sched.h"
2193struct io_context;
2194# 1059 "include/linux/sched.h"
2195struct pipe_inode_info;
2196# 1059 "include/linux/sched.h"
2197struct pipe_inode_info;
2198# 1059 "include/linux/sched.h"
2199struct pipe_inode_info;
2200# 1061 "include/linux/sched.h"
2201struct rq;
2202# 1061 "include/linux/sched.h"
2203struct rq;
2204# 1061 "include/linux/sched.h"
2205struct rq;
2206# 1062 "include/linux/sched.h"
2207struct sched_class {
2208 struct sched_class const *next ;
2209 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
2210 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
2211 void (*yield_task)(struct rq * ) ;
2212 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
2213 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
2214 struct task_struct *(*pick_next_task)(struct rq * ) ;
2215 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
2216 int (*select_task_rq)(struct task_struct * , int , int ) ;
2217 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
2218 void (*post_schedule)(struct rq * ) ;
2219 void (*task_waking)(struct task_struct * ) ;
2220 void (*task_woken)(struct rq * , struct task_struct * ) ;
2221 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
2222 void (*rq_online)(struct rq * ) ;
2223 void (*rq_offline)(struct rq * ) ;
2224 void (*set_curr_task)(struct rq * ) ;
2225 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
2226 void (*task_fork)(struct task_struct * ) ;
2227 void (*switched_from)(struct rq * , struct task_struct * ) ;
2228 void (*switched_to)(struct rq * , struct task_struct * ) ;
2229 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
2230 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
2231 void (*task_move_group)(struct task_struct * , int ) ;
2232};
2233# 1127 "include/linux/sched.h"
2234struct load_weight {
2235 unsigned long weight ;
2236 unsigned long inv_weight ;
2237};
2238# 1132 "include/linux/sched.h"
2239struct sched_statistics {
2240 u64 wait_start ;
2241 u64 wait_max ;
2242 u64 wait_count ;
2243 u64 wait_sum ;
2244 u64 iowait_count ;
2245 u64 iowait_sum ;
2246 u64 sleep_start ;
2247 u64 sleep_max ;
2248 s64 sum_sleep_runtime ;
2249 u64 block_start ;
2250 u64 block_max ;
2251 u64 exec_max ;
2252 u64 slice_max ;
2253 u64 nr_migrations_cold ;
2254 u64 nr_failed_migrations_affine ;
2255 u64 nr_failed_migrations_running ;
2256 u64 nr_failed_migrations_hot ;
2257 u64 nr_forced_migrations ;
2258 u64 nr_wakeups ;
2259 u64 nr_wakeups_sync ;
2260 u64 nr_wakeups_migrate ;
2261 u64 nr_wakeups_local ;
2262 u64 nr_wakeups_remote ;
2263 u64 nr_wakeups_affine ;
2264 u64 nr_wakeups_affine_attempts ;
2265 u64 nr_wakeups_passive ;
2266 u64 nr_wakeups_idle ;
2267};
2268# 1167 "include/linux/sched.h"
2269struct sched_entity {
2270 struct load_weight load ;
2271 struct rb_node run_node ;
2272 struct list_head group_node ;
2273 unsigned int on_rq ;
2274 u64 exec_start ;
2275 u64 sum_exec_runtime ;
2276 u64 vruntime ;
2277 u64 prev_sum_exec_runtime ;
2278 u64 nr_migrations ;
2279 struct sched_statistics statistics ;
2280 struct sched_entity *parent ;
2281 struct cfs_rq *cfs_rq ;
2282 struct cfs_rq *my_q ;
2283};
2284# 1193 "include/linux/sched.h"
2285struct rt_rq;
2286# 1193 "include/linux/sched.h"
2287struct rt_rq;
2288# 1193 "include/linux/sched.h"
2289struct sched_rt_entity {
2290 struct list_head run_list ;
2291 unsigned long timeout ;
2292 unsigned int time_slice ;
2293 int nr_cpus_allowed ;
2294 struct sched_rt_entity *back ;
2295 struct sched_rt_entity *parent ;
2296 struct rt_rq *rt_rq ;
2297 struct rt_rq *my_q ;
2298};
2299# 1217 "include/linux/sched.h"
2300struct mem_cgroup;
2301# 1217 "include/linux/sched.h"
2302struct mem_cgroup;
2303# 1217 "include/linux/sched.h"
2304struct memcg_batch_info {
2305 int do_batch ;
2306 struct mem_cgroup *memcg ;
2307 unsigned long nr_pages ;
2308 unsigned long memsw_nr_pages ;
2309};
2310# 1569 "include/linux/sched.h"
2311struct files_struct;
2312# 1569 "include/linux/sched.h"
2313struct files_struct;
2314# 1569 "include/linux/sched.h"
2315struct irqaction;
2316# 1569 "include/linux/sched.h"
2317struct irqaction;
2318# 1569 "include/linux/sched.h"
2319struct css_set;
2320# 1569 "include/linux/sched.h"
2321struct css_set;
2322# 1569 "include/linux/sched.h"
2323struct compat_robust_list_head;
2324# 1569 "include/linux/sched.h"
2325struct compat_robust_list_head;
2326# 1569 "include/linux/sched.h"
2327struct ftrace_ret_stack;
2328# 1569 "include/linux/sched.h"
2329struct ftrace_ret_stack;
2330# 1569 "include/linux/sched.h"
2331struct task_struct {
2332 long volatile state ;
2333 void *stack ;
2334 atomic_t usage ;
2335 unsigned int flags ;
2336 unsigned int ptrace ;
2337 struct task_struct *wake_entry ;
2338 int on_cpu ;
2339 int on_rq ;
2340 int prio ;
2341 int static_prio ;
2342 int normal_prio ;
2343 unsigned int rt_priority ;
2344 struct sched_class const *sched_class ;
2345 struct sched_entity se ;
2346 struct sched_rt_entity rt ;
2347 struct hlist_head preempt_notifiers ;
2348 unsigned char fpu_counter ;
2349 unsigned int btrace_seq ;
2350 unsigned int policy ;
2351 cpumask_t cpus_allowed ;
2352 struct sched_info sched_info ;
2353 struct list_head tasks ;
2354 struct plist_node pushable_tasks ;
2355 struct mm_struct *mm ;
2356 struct mm_struct *active_mm ;
2357 unsigned char brk_randomized : 1 ;
2358 int exit_state ;
2359 int exit_code ;
2360 int exit_signal ;
2361 int pdeath_signal ;
2362 unsigned int group_stop ;
2363 unsigned int personality ;
2364 unsigned char did_exec : 1 ;
2365 unsigned char in_execve : 1 ;
2366 unsigned char in_iowait : 1 ;
2367 unsigned char sched_reset_on_fork : 1 ;
2368 unsigned char sched_contributes_to_load : 1 ;
2369 pid_t pid ;
2370 pid_t tgid ;
2371 unsigned long stack_canary ;
2372 struct task_struct *real_parent ;
2373 struct task_struct *parent ;
2374 struct list_head children ;
2375 struct list_head sibling ;
2376 struct task_struct *group_leader ;
2377 struct list_head ptraced ;
2378 struct list_head ptrace_entry ;
2379 struct pid_link pids[3U] ;
2380 struct list_head thread_group ;
2381 struct completion *vfork_done ;
2382 int *set_child_tid ;
2383 int *clear_child_tid ;
2384 cputime_t utime ;
2385 cputime_t stime ;
2386 cputime_t utimescaled ;
2387 cputime_t stimescaled ;
2388 cputime_t gtime ;
2389 cputime_t prev_utime ;
2390 cputime_t prev_stime ;
2391 unsigned long nvcsw ;
2392 unsigned long nivcsw ;
2393 struct timespec start_time ;
2394 struct timespec real_start_time ;
2395 unsigned long min_flt ;
2396 unsigned long maj_flt ;
2397 struct task_cputime cputime_expires ;
2398 struct list_head cpu_timers[3U] ;
2399 struct cred const *real_cred ;
2400 struct cred const *cred ;
2401 struct cred *replacement_session_keyring ;
2402 char comm[16U] ;
2403 int link_count ;
2404 int total_link_count ;
2405 struct sysv_sem sysvsem ;
2406 unsigned long last_switch_count ;
2407 struct thread_struct thread ;
2408 struct fs_struct *fs ;
2409 struct files_struct *files ;
2410 struct nsproxy *nsproxy ;
2411 struct signal_struct *signal ;
2412 struct sighand_struct *sighand ;
2413 sigset_t blocked ;
2414 sigset_t real_blocked ;
2415 sigset_t saved_sigmask ;
2416 struct sigpending pending ;
2417 unsigned long sas_ss_sp ;
2418 size_t sas_ss_size ;
2419 int (*notifier)(void * ) ;
2420 void *notifier_data ;
2421 sigset_t *notifier_mask ;
2422 struct audit_context *audit_context ;
2423 uid_t loginuid ;
2424 unsigned int sessionid ;
2425 seccomp_t seccomp ;
2426 u32 parent_exec_id ;
2427 u32 self_exec_id ;
2428 spinlock_t alloc_lock ;
2429 struct irqaction *irqaction ;
2430 raw_spinlock_t pi_lock ;
2431 struct plist_head pi_waiters ;
2432 struct rt_mutex_waiter *pi_blocked_on ;
2433 struct mutex_waiter *blocked_on ;
2434 unsigned int irq_events ;
2435 unsigned long hardirq_enable_ip ;
2436 unsigned long hardirq_disable_ip ;
2437 unsigned int hardirq_enable_event ;
2438 unsigned int hardirq_disable_event ;
2439 int hardirqs_enabled ;
2440 int hardirq_context ;
2441 unsigned long softirq_disable_ip ;
2442 unsigned long softirq_enable_ip ;
2443 unsigned int softirq_disable_event ;
2444 unsigned int softirq_enable_event ;
2445 int softirqs_enabled ;
2446 int softirq_context ;
2447 u64 curr_chain_key ;
2448 int lockdep_depth ;
2449 unsigned int lockdep_recursion ;
2450 struct held_lock held_locks[48U] ;
2451 gfp_t lockdep_reclaim_gfp ;
2452 void *journal_info ;
2453 struct bio_list *bio_list ;
2454 struct blk_plug *plug ;
2455 struct reclaim_state *reclaim_state ;
2456 struct backing_dev_info *backing_dev_info ;
2457 struct io_context *io_context ;
2458 unsigned long ptrace_message ;
2459 siginfo_t *last_siginfo ;
2460 struct task_io_accounting ioac ;
2461 u64 acct_rss_mem1 ;
2462 u64 acct_vm_mem1 ;
2463 cputime_t acct_timexpd ;
2464 nodemask_t mems_allowed ;
2465 int mems_allowed_change_disable ;
2466 int cpuset_mem_spread_rotor ;
2467 int cpuset_slab_spread_rotor ;
2468 struct css_set *cgroups ;
2469 struct list_head cg_list ;
2470 struct robust_list_head *robust_list ;
2471 struct compat_robust_list_head *compat_robust_list ;
2472 struct list_head pi_state_list ;
2473 struct futex_pi_state *pi_state_cache ;
2474 struct perf_event_context *perf_event_ctxp[2U] ;
2475 struct mutex perf_event_mutex ;
2476 struct list_head perf_event_list ;
2477 struct mempolicy *mempolicy ;
2478 short il_next ;
2479 short pref_node_fork ;
2480 atomic_t fs_excl ;
2481 struct rcu_head rcu ;
2482 struct pipe_inode_info *splice_pipe ;
2483 struct task_delay_info *delays ;
2484 int make_it_fail ;
2485 struct prop_local_single dirties ;
2486 int latency_record_count ;
2487 struct latency_record latency_record[32U] ;
2488 unsigned long timer_slack_ns ;
2489 unsigned long default_timer_slack_ns ;
2490 struct list_head *scm_work_list ;
2491 int curr_ret_stack ;
2492 struct ftrace_ret_stack *ret_stack ;
2493 unsigned long long ftrace_timestamp ;
2494 atomic_t trace_overrun ;
2495 atomic_t tracing_graph_pause ;
2496 unsigned long trace ;
2497 unsigned long trace_recursion ;
2498 struct memcg_batch_info memcg_batch ;
2499 atomic_t ptrace_bp_refcnt ;
2500};
2501# 2699 "include/linux/sched.h"
2502struct bio;
2503# 2699 "include/linux/sched.h"
2504struct bio;
2505# 2699 "include/linux/sched.h"
2506struct bio;
2507# 2700 "include/linux/sched.h"
2508struct bio_integrity_payload;
2509# 2700 "include/linux/sched.h"
2510struct bio_integrity_payload;
2511# 2700 "include/linux/sched.h"
2512struct bio_integrity_payload;
2513# 2701 "include/linux/sched.h"
2514struct block_device;
2515# 2701 "include/linux/sched.h"
2516struct block_device;
2517# 2701 "include/linux/sched.h"
2518struct block_device;
2519# 17 "include/linux/blk_types.h"
2520typedef void bio_end_io_t(struct bio * , int );
2521# 18 "include/linux/blk_types.h"
2522typedef void bio_destructor_t(struct bio * );
2523# 19 "include/linux/blk_types.h"
2524struct bio_vec {
2525 struct page *bv_page ;
2526 unsigned int bv_len ;
2527 unsigned int bv_offset ;
2528};
2529# 28 "include/linux/blk_types.h"
2530struct bio {
2531 sector_t bi_sector ;
2532 struct bio *bi_next ;
2533 struct block_device *bi_bdev ;
2534 unsigned long bi_flags ;
2535 unsigned long bi_rw ;
2536 unsigned short bi_vcnt ;
2537 unsigned short bi_idx ;
2538 unsigned int bi_phys_segments ;
2539 unsigned int bi_size ;
2540 unsigned int bi_seg_front_size ;
2541 unsigned int bi_seg_back_size ;
2542 unsigned int bi_max_vecs ;
2543 unsigned int bi_comp_cpu ;
2544 atomic_t bi_cnt ;
2545 struct bio_vec *bi_io_vec ;
2546 bio_end_io_t *bi_end_io ;
2547 void *bi_private ;
2548 struct bio_integrity_payload *bi_integrity ;
2549 bio_destructor_t *bi_destructor ;
2550 struct bio_vec bi_inline_vecs[0U] ;
2551};
2552# 92 "include/linux/bit_spinlock.h"
2553struct hlist_bl_node;
2554# 92 "include/linux/bit_spinlock.h"
2555struct hlist_bl_node;
2556# 92 "include/linux/bit_spinlock.h"
2557struct hlist_bl_head {
2558 struct hlist_bl_node *first ;
2559};
2560# 36 "include/linux/list_bl.h"
2561struct hlist_bl_node {
2562 struct hlist_bl_node *next ;
2563 struct hlist_bl_node **pprev ;
2564};
2565# 114 "include/linux/rculist_bl.h"
2566struct nameidata;
2567# 114 "include/linux/rculist_bl.h"
2568struct nameidata;
2569# 114 "include/linux/rculist_bl.h"
2570struct nameidata;
2571# 115 "include/linux/rculist_bl.h"
2572struct path;
2573# 115 "include/linux/rculist_bl.h"
2574struct path;
2575# 115 "include/linux/rculist_bl.h"
2576struct path;
2577# 116 "include/linux/rculist_bl.h"
2578struct vfsmount;
2579# 116 "include/linux/rculist_bl.h"
2580struct vfsmount;
2581# 116 "include/linux/rculist_bl.h"
2582struct vfsmount;
2583# 117 "include/linux/rculist_bl.h"
2584struct qstr {
2585 unsigned int hash ;
2586 unsigned int len ;
2587 unsigned char const *name ;
2588};
2589# 100 "include/linux/dcache.h"
2590struct dentry_operations;
2591# 100 "include/linux/dcache.h"
2592struct dentry_operations;
2593# 100 "include/linux/dcache.h"
2594struct super_block;
2595# 100 "include/linux/dcache.h"
2596struct super_block;
2597# 100 "include/linux/dcache.h"
2598union __anonunion_d_u_154 {
2599 struct list_head d_child ;
2600 struct rcu_head d_rcu ;
2601};
2602# 100 "include/linux/dcache.h"
2603struct dentry {
2604 unsigned int d_flags ;
2605 seqcount_t d_seq ;
2606 struct hlist_bl_node d_hash ;
2607 struct dentry *d_parent ;
2608 struct qstr d_name ;
2609 struct inode *d_inode ;
2610 unsigned char d_iname[32U] ;
2611 unsigned int d_count ;
2612 spinlock_t d_lock ;
2613 struct dentry_operations const *d_op ;
2614 struct super_block *d_sb ;
2615 unsigned long d_time ;
2616 void *d_fsdata ;
2617 struct list_head d_lru ;
2618 union __anonunion_d_u_154 d_u ;
2619 struct list_head d_subdirs ;
2620 struct list_head d_alias ;
2621};
2622# 151 "include/linux/dcache.h"
2623struct dentry_operations {
2624 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
2625 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
2626 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
2627 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
2628 int (*d_delete)(struct dentry const * ) ;
2629 void (*d_release)(struct dentry * ) ;
2630 void (*d_iput)(struct dentry * , struct inode * ) ;
2631 char *(*d_dname)(struct dentry * , char * , int ) ;
2632 struct vfsmount *(*d_automount)(struct path * ) ;
2633 int (*d_manage)(struct dentry * , bool ) ;
2634};
2635# 422 "include/linux/dcache.h"
2636struct path {
2637 struct vfsmount *mnt ;
2638 struct dentry *dentry ;
2639};
2640# 51 "include/linux/radix-tree.h"
2641struct radix_tree_node;
2642# 51 "include/linux/radix-tree.h"
2643struct radix_tree_node;
2644# 51 "include/linux/radix-tree.h"
2645struct radix_tree_root {
2646 unsigned int height ;
2647 gfp_t gfp_mask ;
2648 struct radix_tree_node *rnode ;
2649};
2650# 45 "include/linux/semaphore.h"
2651struct fiemap_extent {
2652 __u64 fe_logical ;
2653 __u64 fe_physical ;
2654 __u64 fe_length ;
2655 __u64 fe_reserved64[2U] ;
2656 __u32 fe_flags ;
2657 __u32 fe_reserved[3U] ;
2658};
2659# 38 "include/linux/fiemap.h"
2660struct export_operations;
2661# 38 "include/linux/fiemap.h"
2662struct export_operations;
2663# 38 "include/linux/fiemap.h"
2664struct export_operations;
2665# 39 "include/linux/fiemap.h"
2666struct hd_geometry;
2667# 39 "include/linux/fiemap.h"
2668struct hd_geometry;
2669# 39 "include/linux/fiemap.h"
2670struct hd_geometry;
2671# 40 "include/linux/fiemap.h"
2672struct poll_table_struct;
2673# 40 "include/linux/fiemap.h"
2674struct poll_table_struct;
2675# 40 "include/linux/fiemap.h"
2676struct poll_table_struct;
2677# 41 "include/linux/fiemap.h"
2678struct kstatfs;
2679# 41 "include/linux/fiemap.h"
2680struct kstatfs;
2681# 41 "include/linux/fiemap.h"
2682struct kstatfs;
2683# 426 "include/linux/fs.h"
2684struct iattr {
2685 unsigned int ia_valid ;
2686 umode_t ia_mode ;
2687 uid_t ia_uid ;
2688 gid_t ia_gid ;
2689 loff_t ia_size ;
2690 struct timespec ia_atime ;
2691 struct timespec ia_mtime ;
2692 struct timespec ia_ctime ;
2693 struct file *ia_file ;
2694};
2695# 119 "include/linux/quota.h"
2696struct if_dqinfo {
2697 __u64 dqi_bgrace ;
2698 __u64 dqi_igrace ;
2699 __u32 dqi_flags ;
2700 __u32 dqi_valid ;
2701};
2702# 152 "include/linux/quota.h"
2703struct fs_disk_quota {
2704 __s8 d_version ;
2705 __s8 d_flags ;
2706 __u16 d_fieldmask ;
2707 __u32 d_id ;
2708 __u64 d_blk_hardlimit ;
2709 __u64 d_blk_softlimit ;
2710 __u64 d_ino_hardlimit ;
2711 __u64 d_ino_softlimit ;
2712 __u64 d_bcount ;
2713 __u64 d_icount ;
2714 __s32 d_itimer ;
2715 __s32 d_btimer ;
2716 __u16 d_iwarns ;
2717 __u16 d_bwarns ;
2718 __s32 d_padding2 ;
2719 __u64 d_rtb_hardlimit ;
2720 __u64 d_rtb_softlimit ;
2721 __u64 d_rtbcount ;
2722 __s32 d_rtbtimer ;
2723 __u16 d_rtbwarns ;
2724 __s16 d_padding3 ;
2725 char d_padding4[8U] ;
2726};
2727# 75 "include/linux/dqblk_xfs.h"
2728struct fs_qfilestat {
2729 __u64 qfs_ino ;
2730 __u64 qfs_nblks ;
2731 __u32 qfs_nextents ;
2732};
2733# 150 "include/linux/dqblk_xfs.h"
2734typedef struct fs_qfilestat fs_qfilestat_t;
2735# 151 "include/linux/dqblk_xfs.h"
2736struct fs_quota_stat {
2737 __s8 qs_version ;
2738 __u16 qs_flags ;
2739 __s8 qs_pad ;
2740 fs_qfilestat_t qs_uquota ;
2741 fs_qfilestat_t qs_gquota ;
2742 __u32 qs_incoredqs ;
2743 __s32 qs_btimelimit ;
2744 __s32 qs_itimelimit ;
2745 __s32 qs_rtbtimelimit ;
2746 __u16 qs_bwarnlimit ;
2747 __u16 qs_iwarnlimit ;
2748};
2749# 165 "include/linux/dqblk_xfs.h"
2750struct dquot;
2751# 165 "include/linux/dqblk_xfs.h"
2752struct dquot;
2753# 165 "include/linux/dqblk_xfs.h"
2754struct dquot;
2755# 185 "include/linux/quota.h"
2756typedef __kernel_uid32_t qid_t;
2757# 186 "include/linux/quota.h"
2758typedef long long qsize_t;
2759# 189 "include/linux/quota.h"
2760struct mem_dqblk {
2761 qsize_t dqb_bhardlimit ;
2762 qsize_t dqb_bsoftlimit ;
2763 qsize_t dqb_curspace ;
2764 qsize_t dqb_rsvspace ;
2765 qsize_t dqb_ihardlimit ;
2766 qsize_t dqb_isoftlimit ;
2767 qsize_t dqb_curinodes ;
2768 time_t dqb_btime ;
2769 time_t dqb_itime ;
2770};
2771# 211 "include/linux/quota.h"
2772struct quota_format_type;
2773# 211 "include/linux/quota.h"
2774struct quota_format_type;
2775# 211 "include/linux/quota.h"
2776struct quota_format_type;
2777# 212 "include/linux/quota.h"
2778struct mem_dqinfo {
2779 struct quota_format_type *dqi_format ;
2780 int dqi_fmt_id ;
2781 struct list_head dqi_dirty_list ;
2782 unsigned long dqi_flags ;
2783 unsigned int dqi_bgrace ;
2784 unsigned int dqi_igrace ;
2785 qsize_t dqi_maxblimit ;
2786 qsize_t dqi_maxilimit ;
2787 void *dqi_priv ;
2788};
2789# 271 "include/linux/quota.h"
2790struct dquot {
2791 struct hlist_node dq_hash ;
2792 struct list_head dq_inuse ;
2793 struct list_head dq_free ;
2794 struct list_head dq_dirty ;
2795 struct mutex dq_lock ;
2796 atomic_t dq_count ;
2797 wait_queue_head_t dq_wait_unused ;
2798 struct super_block *dq_sb ;
2799 unsigned int dq_id ;
2800 loff_t dq_off ;
2801 unsigned long dq_flags ;
2802 short dq_type ;
2803 struct mem_dqblk dq_dqb ;
2804};
2805# 299 "include/linux/quota.h"
2806struct quota_format_ops {
2807 int (*check_quota_file)(struct super_block * , int ) ;
2808 int (*read_file_info)(struct super_block * , int ) ;
2809 int (*write_file_info)(struct super_block * , int ) ;
2810 int (*free_file_info)(struct super_block * , int ) ;
2811 int (*read_dqblk)(struct dquot * ) ;
2812 int (*commit_dqblk)(struct dquot * ) ;
2813 int (*release_dqblk)(struct dquot * ) ;
2814};
2815# 310 "include/linux/quota.h"
2816struct dquot_operations {
2817 int (*write_dquot)(struct dquot * ) ;
2818 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
2819 void (*destroy_dquot)(struct dquot * ) ;
2820 int (*acquire_dquot)(struct dquot * ) ;
2821 int (*release_dquot)(struct dquot * ) ;
2822 int (*mark_dirty)(struct dquot * ) ;
2823 int (*write_info)(struct super_block * , int ) ;
2824 qsize_t *(*get_reserved_space)(struct inode * ) ;
2825};
2826# 324 "include/linux/quota.h"
2827struct quotactl_ops {
2828 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
2829 int (*quota_on_meta)(struct super_block * , int , int ) ;
2830 int (*quota_off)(struct super_block * , int ) ;
2831 int (*quota_sync)(struct super_block * , int , int ) ;
2832 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
2833 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
2834 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2835 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2836 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
2837 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
2838};
2839# 340 "include/linux/quota.h"
2840struct quota_format_type {
2841 int qf_fmt_id ;
2842 struct quota_format_ops const *qf_ops ;
2843 struct module *qf_owner ;
2844 struct quota_format_type *qf_next ;
2845};
2846# 386 "include/linux/quota.h"
2847struct quota_info {
2848 unsigned int flags ;
2849 struct mutex dqio_mutex ;
2850 struct mutex dqonoff_mutex ;
2851 struct rw_semaphore dqptr_sem ;
2852 struct inode *files[2U] ;
2853 struct mem_dqinfo info[2U] ;
2854 struct quota_format_ops const *ops[2U] ;
2855};
2856# 417 "include/linux/quota.h"
2857struct writeback_control;
2858# 417 "include/linux/quota.h"
2859struct writeback_control;
2860# 417 "include/linux/quota.h"
2861struct writeback_control;
2862# 576 "include/linux/fs.h"
2863union __anonunion_arg_156 {
2864 char *buf ;
2865 void *data ;
2866};
2867# 576 "include/linux/fs.h"
2868struct __anonstruct_read_descriptor_t_155 {
2869 size_t written ;
2870 size_t count ;
2871 union __anonunion_arg_156 arg ;
2872 int error ;
2873};
2874# 576 "include/linux/fs.h"
2875typedef struct __anonstruct_read_descriptor_t_155 read_descriptor_t;
2876# 579 "include/linux/fs.h"
2877struct address_space_operations {
2878 int (*writepage)(struct page * , struct writeback_control * ) ;
2879 int (*readpage)(struct file * , struct page * ) ;
2880 int (*writepages)(struct address_space * , struct writeback_control * ) ;
2881 int (*set_page_dirty)(struct page * ) ;
2882 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
2883 unsigned int ) ;
2884 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
2885 unsigned int , struct page ** , void ** ) ;
2886 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
2887 unsigned int , struct page * , void * ) ;
2888 sector_t (*bmap)(struct address_space * , sector_t ) ;
2889 void (*invalidatepage)(struct page * , unsigned long ) ;
2890 int (*releasepage)(struct page * , gfp_t ) ;
2891 void (*freepage)(struct page * ) ;
2892 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
2893 unsigned long ) ;
2894 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2895 int (*migratepage)(struct address_space * , struct page * , struct page * ) ;
2896 int (*launder_page)(struct page * ) ;
2897 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2898 int (*error_remove_page)(struct address_space * , struct page * ) ;
2899};
2900# 630 "include/linux/fs.h"
2901struct address_space {
2902 struct inode *host ;
2903 struct radix_tree_root page_tree ;
2904 spinlock_t tree_lock ;
2905 unsigned int i_mmap_writable ;
2906 struct prio_tree_root i_mmap ;
2907 struct list_head i_mmap_nonlinear ;
2908 struct mutex i_mmap_mutex ;
2909 unsigned long nrpages ;
2910 unsigned long writeback_index ;
2911 struct address_space_operations const *a_ops ;
2912 unsigned long flags ;
2913 struct backing_dev_info *backing_dev_info ;
2914 spinlock_t private_lock ;
2915 struct list_head private_list ;
2916 struct address_space *assoc_mapping ;
2917};
2918# 652 "include/linux/fs.h"
2919struct hd_struct;
2920# 652 "include/linux/fs.h"
2921struct hd_struct;
2922# 652 "include/linux/fs.h"
2923struct gendisk;
2924# 652 "include/linux/fs.h"
2925struct gendisk;
2926# 652 "include/linux/fs.h"
2927struct block_device {
2928 dev_t bd_dev ;
2929 int bd_openers ;
2930 struct inode *bd_inode ;
2931 struct super_block *bd_super ;
2932 struct mutex bd_mutex ;
2933 struct list_head bd_inodes ;
2934 void *bd_claiming ;
2935 void *bd_holder ;
2936 int bd_holders ;
2937 bool bd_write_holder ;
2938 struct list_head bd_holder_disks ;
2939 struct block_device *bd_contains ;
2940 unsigned int bd_block_size ;
2941 struct hd_struct *bd_part ;
2942 unsigned int bd_part_count ;
2943 int bd_invalidated ;
2944 struct gendisk *bd_disk ;
2945 struct list_head bd_list ;
2946 unsigned long bd_private ;
2947 int bd_fsfreeze_count ;
2948 struct mutex bd_fsfreeze_mutex ;
2949};
2950# 723 "include/linux/fs.h"
2951struct posix_acl;
2952# 723 "include/linux/fs.h"
2953struct posix_acl;
2954# 723 "include/linux/fs.h"
2955struct posix_acl;
2956# 724 "include/linux/fs.h"
2957struct inode_operations;
2958# 724 "include/linux/fs.h"
2959struct inode_operations;
2960# 724 "include/linux/fs.h"
2961union __anonunion_ldv_18121_157 {
2962 struct list_head i_dentry ;
2963 struct rcu_head i_rcu ;
2964};
2965# 724 "include/linux/fs.h"
2966struct file_operations;
2967# 724 "include/linux/fs.h"
2968struct file_operations;
2969# 724 "include/linux/fs.h"
2970struct file_lock;
2971# 724 "include/linux/fs.h"
2972struct file_lock;
2973# 724 "include/linux/fs.h"
2974struct cdev;
2975# 724 "include/linux/fs.h"
2976struct cdev;
2977# 724 "include/linux/fs.h"
2978union __anonunion_ldv_18148_158 {
2979 struct pipe_inode_info *i_pipe ;
2980 struct block_device *i_bdev ;
2981 struct cdev *i_cdev ;
2982};
2983# 724 "include/linux/fs.h"
2984struct inode {
2985 umode_t i_mode ;
2986 uid_t i_uid ;
2987 gid_t i_gid ;
2988 struct inode_operations const *i_op ;
2989 struct super_block *i_sb ;
2990 spinlock_t i_lock ;
2991 unsigned int i_flags ;
2992 unsigned long i_state ;
2993 void *i_security ;
2994 struct mutex i_mutex ;
2995 unsigned long dirtied_when ;
2996 struct hlist_node i_hash ;
2997 struct list_head i_wb_list ;
2998 struct list_head i_lru ;
2999 struct list_head i_sb_list ;
3000 union __anonunion_ldv_18121_157 ldv_18121 ;
3001 unsigned long i_ino ;
3002 atomic_t i_count ;
3003 unsigned int i_nlink ;
3004 dev_t i_rdev ;
3005 unsigned int i_blkbits ;
3006 u64 i_version ;
3007 loff_t i_size ;
3008 struct timespec i_atime ;
3009 struct timespec i_mtime ;
3010 struct timespec i_ctime ;
3011 blkcnt_t i_blocks ;
3012 unsigned short i_bytes ;
3013 struct rw_semaphore i_alloc_sem ;
3014 struct file_operations const *i_fop ;
3015 struct file_lock *i_flock ;
3016 struct address_space *i_mapping ;
3017 struct address_space i_data ;
3018 struct dquot *i_dquot[2U] ;
3019 struct list_head i_devices ;
3020 union __anonunion_ldv_18148_158 ldv_18148 ;
3021 __u32 i_generation ;
3022 __u32 i_fsnotify_mask ;
3023 struct hlist_head i_fsnotify_marks ;
3024 atomic_t i_readcount ;
3025 atomic_t i_writecount ;
3026 struct posix_acl *i_acl ;
3027 struct posix_acl *i_default_acl ;
3028 void *i_private ;
3029};
3030# 902 "include/linux/fs.h"
3031struct fown_struct {
3032 rwlock_t lock ;
3033 struct pid *pid ;
3034 enum pid_type pid_type ;
3035 uid_t uid ;
3036 uid_t euid ;
3037 int signum ;
3038};
3039# 910 "include/linux/fs.h"
3040struct file_ra_state {
3041 unsigned long start ;
3042 unsigned int size ;
3043 unsigned int async_size ;
3044 unsigned int ra_pages ;
3045 unsigned int mmap_miss ;
3046 loff_t prev_pos ;
3047};
3048# 933 "include/linux/fs.h"
3049union __anonunion_f_u_159 {
3050 struct list_head fu_list ;
3051 struct rcu_head fu_rcuhead ;
3052};
3053# 933 "include/linux/fs.h"
3054struct file {
3055 union __anonunion_f_u_159 f_u ;
3056 struct path f_path ;
3057 struct file_operations const *f_op ;
3058 spinlock_t f_lock ;
3059 int f_sb_list_cpu ;
3060 atomic_long_t f_count ;
3061 unsigned int f_flags ;
3062 fmode_t f_mode ;
3063 loff_t f_pos ;
3064 struct fown_struct f_owner ;
3065 struct cred const *f_cred ;
3066 struct file_ra_state f_ra ;
3067 u64 f_version ;
3068 void *f_security ;
3069 void *private_data ;
3070 struct list_head f_ep_links ;
3071 struct address_space *f_mapping ;
3072 unsigned long f_mnt_write_state ;
3073};
3074# 1064 "include/linux/fs.h"
3075typedef struct files_struct *fl_owner_t;
3076# 1065 "include/linux/fs.h"
3077struct file_lock_operations {
3078 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
3079 void (*fl_release_private)(struct file_lock * ) ;
3080};
3081# 1070 "include/linux/fs.h"
3082struct lock_manager_operations {
3083 int (*fl_compare_owner)(struct file_lock * , struct file_lock * ) ;
3084 void (*fl_notify)(struct file_lock * ) ;
3085 int (*fl_grant)(struct file_lock * , struct file_lock * , int ) ;
3086 void (*fl_release_private)(struct file_lock * ) ;
3087 void (*fl_break)(struct file_lock * ) ;
3088 int (*fl_change)(struct file_lock ** , int ) ;
3089};
3090# 163 "include/linux/nfs.h"
3091struct nlm_lockowner;
3092# 163 "include/linux/nfs.h"
3093struct nlm_lockowner;
3094# 163 "include/linux/nfs.h"
3095struct nlm_lockowner;
3096# 164 "include/linux/nfs.h"
3097struct nfs_lock_info {
3098 u32 state ;
3099 struct nlm_lockowner *owner ;
3100 struct list_head list ;
3101};
3102# 18 "include/linux/nfs_fs_i.h"
3103struct nfs4_lock_state;
3104# 18 "include/linux/nfs_fs_i.h"
3105struct nfs4_lock_state;
3106# 18 "include/linux/nfs_fs_i.h"
3107struct nfs4_lock_state;
3108# 19 "include/linux/nfs_fs_i.h"
3109struct nfs4_lock_info {
3110 struct nfs4_lock_state *owner ;
3111};
3112# 23 "include/linux/nfs_fs_i.h"
3113struct fasync_struct;
3114# 23 "include/linux/nfs_fs_i.h"
3115struct fasync_struct;
3116# 23 "include/linux/nfs_fs_i.h"
3117struct __anonstruct_afs_161 {
3118 struct list_head link ;
3119 int state ;
3120};
3121# 23 "include/linux/nfs_fs_i.h"
3122union __anonunion_fl_u_160 {
3123 struct nfs_lock_info nfs_fl ;
3124 struct nfs4_lock_info nfs4_fl ;
3125 struct __anonstruct_afs_161 afs ;
3126};
3127# 23 "include/linux/nfs_fs_i.h"
3128struct file_lock {
3129 struct file_lock *fl_next ;
3130 struct list_head fl_link ;
3131 struct list_head fl_block ;
3132 fl_owner_t fl_owner ;
3133 unsigned char fl_flags ;
3134 unsigned char fl_type ;
3135 unsigned int fl_pid ;
3136 struct pid *fl_nspid ;
3137 wait_queue_head_t fl_wait ;
3138 struct file *fl_file ;
3139 loff_t fl_start ;
3140 loff_t fl_end ;
3141 struct fasync_struct *fl_fasync ;
3142 unsigned long fl_break_time ;
3143 struct file_lock_operations const *fl_ops ;
3144 struct lock_manager_operations const *fl_lmops ;
3145 union __anonunion_fl_u_160 fl_u ;
3146};
3147# 1171 "include/linux/fs.h"
3148struct fasync_struct {
3149 spinlock_t fa_lock ;
3150 int magic ;
3151 int fa_fd ;
3152 struct fasync_struct *fa_next ;
3153 struct file *fa_file ;
3154 struct rcu_head fa_rcu ;
3155};
3156# 1363 "include/linux/fs.h"
3157struct file_system_type;
3158# 1363 "include/linux/fs.h"
3159struct file_system_type;
3160# 1363 "include/linux/fs.h"
3161struct super_operations;
3162# 1363 "include/linux/fs.h"
3163struct super_operations;
3164# 1363 "include/linux/fs.h"
3165struct xattr_handler;
3166# 1363 "include/linux/fs.h"
3167struct xattr_handler;
3168# 1363 "include/linux/fs.h"
3169struct mtd_info;
3170# 1363 "include/linux/fs.h"
3171struct mtd_info;
3172# 1363 "include/linux/fs.h"
3173struct super_block {
3174 struct list_head s_list ;
3175 dev_t s_dev ;
3176 unsigned char s_dirt ;
3177 unsigned char s_blocksize_bits ;
3178 unsigned long s_blocksize ;
3179 loff_t s_maxbytes ;
3180 struct file_system_type *s_type ;
3181 struct super_operations const *s_op ;
3182 struct dquot_operations const *dq_op ;
3183 struct quotactl_ops const *s_qcop ;
3184 struct export_operations const *s_export_op ;
3185 unsigned long s_flags ;
3186 unsigned long s_magic ;
3187 struct dentry *s_root ;
3188 struct rw_semaphore s_umount ;
3189 struct mutex s_lock ;
3190 int s_count ;
3191 atomic_t s_active ;
3192 void *s_security ;
3193 struct xattr_handler const **s_xattr ;
3194 struct list_head s_inodes ;
3195 struct hlist_bl_head s_anon ;
3196 struct list_head *s_files ;
3197 struct list_head s_dentry_lru ;
3198 int s_nr_dentry_unused ;
3199 struct block_device *s_bdev ;
3200 struct backing_dev_info *s_bdi ;
3201 struct mtd_info *s_mtd ;
3202 struct list_head s_instances ;
3203 struct quota_info s_dquot ;
3204 int s_frozen ;
3205 wait_queue_head_t s_wait_unfrozen ;
3206 char s_id[32U] ;
3207 u8 s_uuid[16U] ;
3208 void *s_fs_info ;
3209 fmode_t s_mode ;
3210 u32 s_time_gran ;
3211 struct mutex s_vfs_rename_mutex ;
3212 char *s_subtype ;
3213 char *s_options ;
3214 struct dentry_operations const *s_d_op ;
3215 int cleancache_poolid ;
3216};
3217# 1495 "include/linux/fs.h"
3218struct fiemap_extent_info {
3219 unsigned int fi_flags ;
3220 unsigned int fi_extents_mapped ;
3221 unsigned int fi_extents_max ;
3222 struct fiemap_extent *fi_extents_start ;
3223};
3224# 1533 "include/linux/fs.h"
3225struct block_device_operations;
3226# 1533 "include/linux/fs.h"
3227struct block_device_operations;
3228# 1533 "include/linux/fs.h"
3229struct block_device_operations;
3230# 1534 "include/linux/fs.h"
3231struct file_operations {
3232 struct module *owner ;
3233 loff_t (*llseek)(struct file * , loff_t , int ) ;
3234 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
3235 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
3236 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
3237 loff_t ) ;
3238 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
3239 loff_t ) ;
3240 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
3241 loff_t , u64 , unsigned int ) ) ;
3242 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
3243 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
3244 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
3245 int (*mmap)(struct file * , struct vm_area_struct * ) ;
3246 int (*open)(struct inode * , struct file * ) ;
3247 int (*flush)(struct file * , fl_owner_t ) ;
3248 int (*release)(struct inode * , struct file * ) ;
3249 int (*fsync)(struct file * , int ) ;
3250 int (*aio_fsync)(struct kiocb * , int ) ;
3251 int (*fasync)(int , struct file * , int ) ;
3252 int (*lock)(struct file * , int , struct file_lock * ) ;
3253 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
3254 int ) ;
3255 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
3256 unsigned long , unsigned long ) ;
3257 int (*check_flags)(int ) ;
3258 int (*flock)(struct file * , int , struct file_lock * ) ;
3259 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
3260 unsigned int ) ;
3261 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
3262 unsigned int ) ;
3263 int (*setlease)(struct file * , long , struct file_lock ** ) ;
3264 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
3265};
3266# 1574 "include/linux/fs.h"
3267struct inode_operations {
3268 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
3269 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
3270 int (*permission)(struct inode * , int , unsigned int ) ;
3271 int (*check_acl)(struct inode * , int , unsigned int ) ;
3272 int (*readlink)(struct dentry * , char * , int ) ;
3273 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
3274 int (*create)(struct inode * , struct dentry * , int , struct nameidata * ) ;
3275 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
3276 int (*unlink)(struct inode * , struct dentry * ) ;
3277 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
3278 int (*mkdir)(struct inode * , struct dentry * , int ) ;
3279 int (*rmdir)(struct inode * , struct dentry * ) ;
3280 int (*mknod)(struct inode * , struct dentry * , int , dev_t ) ;
3281 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
3282 void (*truncate)(struct inode * ) ;
3283 int (*setattr)(struct dentry * , struct iattr * ) ;
3284 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
3285 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
3286 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
3287 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
3288 int (*removexattr)(struct dentry * , char const * ) ;
3289 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
3290 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
3291};
3292# 1620 "include/linux/fs.h"
3293struct super_operations {
3294 struct inode *(*alloc_inode)(struct super_block * ) ;
3295 void (*destroy_inode)(struct inode * ) ;
3296 void (*dirty_inode)(struct inode * , int ) ;
3297 int (*write_inode)(struct inode * , struct writeback_control * ) ;
3298 int (*drop_inode)(struct inode * ) ;
3299 void (*evict_inode)(struct inode * ) ;
3300 void (*put_super)(struct super_block * ) ;
3301 void (*write_super)(struct super_block * ) ;
3302 int (*sync_fs)(struct super_block * , int ) ;
3303 int (*freeze_fs)(struct super_block * ) ;
3304 int (*unfreeze_fs)(struct super_block * ) ;
3305 int (*statfs)(struct dentry * , struct kstatfs * ) ;
3306 int (*remount_fs)(struct super_block * , int * , char * ) ;
3307 void (*umount_begin)(struct super_block * ) ;
3308 int (*show_options)(struct seq_file * , struct vfsmount * ) ;
3309 int (*show_devname)(struct seq_file * , struct vfsmount * ) ;
3310 int (*show_path)(struct seq_file * , struct vfsmount * ) ;
3311 int (*show_stats)(struct seq_file * , struct vfsmount * ) ;
3312 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
3313 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
3314 loff_t ) ;
3315 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
3316};
3317# 1801 "include/linux/fs.h"
3318struct file_system_type {
3319 char const *name ;
3320 int fs_flags ;
3321 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
3322 void (*kill_sb)(struct super_block * ) ;
3323 struct module *owner ;
3324 struct file_system_type *next ;
3325 struct list_head fs_supers ;
3326 struct lock_class_key s_lock_key ;
3327 struct lock_class_key s_umount_key ;
3328 struct lock_class_key s_vfs_rename_key ;
3329 struct lock_class_key i_lock_key ;
3330 struct lock_class_key i_mutex_key ;
3331 struct lock_class_key i_mutex_dir_key ;
3332 struct lock_class_key i_alloc_sem_key ;
3333};
3334# 118 "include/linux/kmemleak.h"
3335struct kmem_cache_cpu {
3336 void **freelist ;
3337 unsigned long tid ;
3338 struct page *page ;
3339 int node ;
3340 unsigned int stat[19U] ;
3341};
3342# 46 "include/linux/slub_def.h"
3343struct kmem_cache_node {
3344 spinlock_t list_lock ;
3345 unsigned long nr_partial ;
3346 struct list_head partial ;
3347 atomic_long_t nr_slabs ;
3348 atomic_long_t total_objects ;
3349 struct list_head full ;
3350};
3351# 57 "include/linux/slub_def.h"
3352struct kmem_cache_order_objects {
3353 unsigned long x ;
3354};
3355# 67 "include/linux/slub_def.h"
3356struct kmem_cache {
3357 struct kmem_cache_cpu *cpu_slab ;
3358 unsigned long flags ;
3359 unsigned long min_partial ;
3360 int size ;
3361 int objsize ;
3362 int offset ;
3363 struct kmem_cache_order_objects oo ;
3364 struct kmem_cache_order_objects max ;
3365 struct kmem_cache_order_objects min ;
3366 gfp_t allocflags ;
3367 int refcount ;
3368 void (*ctor)(void * ) ;
3369 int inuse ;
3370 int align ;
3371 int reserved ;
3372 char const *name ;
3373 struct list_head list ;
3374 struct kobject kobj ;
3375 int remote_node_defrag_ratio ;
3376 struct kmem_cache_node *node[1024U] ;
3377};
3378# 25 "include/linux/genhd.h"
3379struct device_type;
3380# 25 "include/linux/genhd.h"
3381struct device_type;
3382# 27 "include/linux/genhd.h"
3383struct class;
3384# 27 "include/linux/genhd.h"
3385struct class;
3386# 51 "include/linux/genhd.h"
3387struct klist_node;
3388# 51 "include/linux/genhd.h"
3389struct klist_node;
3390# 51 "include/linux/genhd.h"
3391struct klist_node;
3392# 37 "include/linux/klist.h"
3393struct klist_node {
3394 void *n_klist ;
3395 struct list_head n_node ;
3396 struct kref n_ref ;
3397};
3398# 67 "include/linux/klist.h"
3399struct dma_map_ops;
3400# 67 "include/linux/klist.h"
3401struct dma_map_ops;
3402# 67 "include/linux/klist.h"
3403struct dev_archdata {
3404 void *acpi_handle ;
3405 struct dma_map_ops *dma_ops ;
3406 void *iommu ;
3407};
3408# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3409struct device_private;
3410# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3411struct device_private;
3412# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3413struct device_private;
3414# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3415struct device_driver;
3416# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3417struct device_driver;
3418# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3419struct device_driver;
3420# 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3421struct driver_private;
3422# 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3423struct driver_private;
3424# 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3425struct driver_private;
3426# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3427struct subsys_private;
3428# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3429struct subsys_private;
3430# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3431struct subsys_private;
3432# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3433struct bus_type;
3434# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3435struct bus_type;
3436# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3437struct bus_type;
3438# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3439struct device_node;
3440# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3441struct device_node;
3442# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3443struct device_node;
3444# 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3445struct bus_attribute {
3446 struct attribute attr ;
3447 ssize_t (*show)(struct bus_type * , char * ) ;
3448 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
3449};
3450# 49 "include/linux/device.h"
3451struct device_attribute;
3452# 49 "include/linux/device.h"
3453struct device_attribute;
3454# 49 "include/linux/device.h"
3455struct driver_attribute;
3456# 49 "include/linux/device.h"
3457struct driver_attribute;
3458# 49 "include/linux/device.h"
3459struct bus_type {
3460 char const *name ;
3461 struct bus_attribute *bus_attrs ;
3462 struct device_attribute *dev_attrs ;
3463 struct driver_attribute *drv_attrs ;
3464 int (*match)(struct device * , struct device_driver * ) ;
3465 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
3466 int (*probe)(struct device * ) ;
3467 int (*remove)(struct device * ) ;
3468 void (*shutdown)(struct device * ) ;
3469 int (*suspend)(struct device * , pm_message_t ) ;
3470 int (*resume)(struct device * ) ;
3471 struct dev_pm_ops const *pm ;
3472 struct subsys_private *p ;
3473};
3474# 153 "include/linux/device.h"
3475struct of_device_id;
3476# 153 "include/linux/device.h"
3477struct of_device_id;
3478# 153 "include/linux/device.h"
3479struct device_driver {
3480 char const *name ;
3481 struct bus_type *bus ;
3482 struct module *owner ;
3483 char const *mod_name ;
3484 bool suppress_bind_attrs ;
3485 struct of_device_id const *of_match_table ;
3486 int (*probe)(struct device * ) ;
3487 int (*remove)(struct device * ) ;
3488 void (*shutdown)(struct device * ) ;
3489 int (*suspend)(struct device * , pm_message_t ) ;
3490 int (*resume)(struct device * ) ;
3491 struct attribute_group const **groups ;
3492 struct dev_pm_ops const *pm ;
3493 struct driver_private *p ;
3494};
3495# 218 "include/linux/device.h"
3496struct driver_attribute {
3497 struct attribute attr ;
3498 ssize_t (*show)(struct device_driver * , char * ) ;
3499 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
3500};
3501# 248 "include/linux/device.h"
3502struct class_attribute;
3503# 248 "include/linux/device.h"
3504struct class_attribute;
3505# 248 "include/linux/device.h"
3506struct class {
3507 char const *name ;
3508 struct module *owner ;
3509 struct class_attribute *class_attrs ;
3510 struct device_attribute *dev_attrs ;
3511 struct bin_attribute *dev_bin_attrs ;
3512 struct kobject *dev_kobj ;
3513 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
3514 char *(*devnode)(struct device * , mode_t * ) ;
3515 void (*class_release)(struct class * ) ;
3516 void (*dev_release)(struct device * ) ;
3517 int (*suspend)(struct device * , pm_message_t ) ;
3518 int (*resume)(struct device * ) ;
3519 struct kobj_ns_type_operations const *ns_type ;
3520 void const *(*namespace)(struct device * ) ;
3521 struct dev_pm_ops const *pm ;
3522 struct subsys_private *p ;
3523};
3524# 344 "include/linux/device.h"
3525struct class_attribute {
3526 struct attribute attr ;
3527 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
3528 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
3529};
3530# 395 "include/linux/device.h"
3531struct device_type {
3532 char const *name ;
3533 struct attribute_group const **groups ;
3534 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
3535 char *(*devnode)(struct device * , mode_t * ) ;
3536 void (*release)(struct device * ) ;
3537 struct dev_pm_ops const *pm ;
3538};
3539# 422 "include/linux/device.h"
3540struct device_attribute {
3541 struct attribute attr ;
3542 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
3543 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
3544 size_t ) ;
3545};
3546# 483 "include/linux/device.h"
3547struct device_dma_parameters {
3548 unsigned int max_segment_size ;
3549 unsigned long segment_boundary_mask ;
3550};
3551# 492 "include/linux/device.h"
3552struct dma_coherent_mem;
3553# 492 "include/linux/device.h"
3554struct dma_coherent_mem;
3555# 492 "include/linux/device.h"
3556struct device {
3557 struct device *parent ;
3558 struct device_private *p ;
3559 struct kobject kobj ;
3560 char const *init_name ;
3561 struct device_type const *type ;
3562 struct mutex mutex ;
3563 struct bus_type *bus ;
3564 struct device_driver *driver ;
3565 void *platform_data ;
3566 struct dev_pm_info power ;
3567 struct dev_power_domain *pwr_domain ;
3568 int numa_node ;
3569 u64 *dma_mask ;
3570 u64 coherent_dma_mask ;
3571 struct device_dma_parameters *dma_parms ;
3572 struct list_head dma_pools ;
3573 struct dma_coherent_mem *dma_mem ;
3574 struct dev_archdata archdata ;
3575 struct device_node *of_node ;
3576 dev_t devt ;
3577 spinlock_t devres_lock ;
3578 struct list_head devres_head ;
3579 struct klist_node knode_class ;
3580 struct class *class ;
3581 struct attribute_group const **groups ;
3582 void (*release)(struct device * ) ;
3583};
3584# 604 "include/linux/device.h"
3585struct wakeup_source {
3586 char *name ;
3587 struct list_head entry ;
3588 spinlock_t lock ;
3589 struct timer_list timer ;
3590 unsigned long timer_expires ;
3591 ktime_t total_time ;
3592 ktime_t max_time ;
3593 ktime_t last_time ;
3594 unsigned long event_count ;
3595 unsigned long active_count ;
3596 unsigned long relax_count ;
3597 unsigned long hit_count ;
3598 unsigned char active : 1 ;
3599};
3600# 81 "include/linux/genhd.h"
3601struct disk_stats {
3602 unsigned long sectors[2U] ;
3603 unsigned long ios[2U] ;
3604 unsigned long merges[2U] ;
3605 unsigned long ticks[2U] ;
3606 unsigned long io_ticks ;
3607 unsigned long time_in_queue ;
3608};
3609# 90 "include/linux/genhd.h"
3610struct partition_meta_info {
3611 u8 uuid[16U] ;
3612 u8 volname[64U] ;
3613};
3614# 98 "include/linux/genhd.h"
3615struct hd_struct {
3616 sector_t start_sect ;
3617 sector_t nr_sects ;
3618 sector_t alignment_offset ;
3619 unsigned int discard_alignment ;
3620 struct device __dev ;
3621 struct kobject *holder_dir ;
3622 int policy ;
3623 int partno ;
3624 struct partition_meta_info *info ;
3625 int make_it_fail ;
3626 unsigned long stamp ;
3627 atomic_t in_flight[2U] ;
3628 struct disk_stats *dkstats ;
3629 atomic_t ref ;
3630 struct rcu_head rcu_head ;
3631};
3632# 145 "include/linux/genhd.h"
3633struct disk_part_tbl {
3634 struct rcu_head rcu_head ;
3635 int len ;
3636 struct hd_struct *last_lookup ;
3637 struct hd_struct *part[0U] ;
3638};
3639# 152 "include/linux/genhd.h"
3640struct disk_events;
3641# 152 "include/linux/genhd.h"
3642struct disk_events;
3643# 152 "include/linux/genhd.h"
3644struct disk_events;
3645# 153 "include/linux/genhd.h"
3646struct request_queue;
3647# 153 "include/linux/genhd.h"
3648struct request_queue;
3649# 153 "include/linux/genhd.h"
3650struct timer_rand_state;
3651# 153 "include/linux/genhd.h"
3652struct timer_rand_state;
3653# 153 "include/linux/genhd.h"
3654struct blk_integrity;
3655# 153 "include/linux/genhd.h"
3656struct blk_integrity;
3657# 153 "include/linux/genhd.h"
3658struct gendisk {
3659 int major ;
3660 int first_minor ;
3661 int minors ;
3662 char disk_name[32U] ;
3663 char *(*devnode)(struct gendisk * , mode_t * ) ;
3664 unsigned int events ;
3665 unsigned int async_events ;
3666 struct disk_part_tbl *part_tbl ;
3667 struct hd_struct part0 ;
3668 struct block_device_operations const *fops ;
3669 struct request_queue *queue ;
3670 void *private_data ;
3671 int flags ;
3672 struct device *driverfs_dev ;
3673 struct kobject *slave_dir ;
3674 struct timer_rand_state *random ;
3675 atomic_t sync_io ;
3676 struct disk_events *ev ;
3677 struct blk_integrity *integrity ;
3678 int node_id ;
3679};
3680# 175 "include/linux/mm.h"
3681struct vm_fault {
3682 unsigned int flags ;
3683 unsigned long pgoff ;
3684 void *virtual_address ;
3685 struct page *page ;
3686};
3687# 192 "include/linux/mm.h"
3688struct vm_operations_struct {
3689 void (*open)(struct vm_area_struct * ) ;
3690 void (*close)(struct vm_area_struct * ) ;
3691 int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
3692 int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
3693 int (*access)(struct vm_area_struct * , unsigned long , void * , int , int ) ;
3694 int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
3695 struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long ) ;
3696 int (*migrate)(struct vm_area_struct * , nodemask_t const * , nodemask_t const * ,
3697 unsigned long ) ;
3698};
3699# 1652 "include/linux/mm.h"
3700struct exception_table_entry {
3701 unsigned long insn ;
3702 unsigned long fixup ;
3703};
3704# 13 "include/linux/writeback.h"
3705enum writeback_sync_modes {
3706 WB_SYNC_NONE = 0,
3707 WB_SYNC_ALL = 1
3708} ;
3709# 18 "include/linux/writeback.h"
3710struct writeback_control {
3711 enum writeback_sync_modes sync_mode ;
3712 unsigned long *older_than_this ;
3713 unsigned long wb_start ;
3714 long nr_to_write ;
3715 long pages_skipped ;
3716 loff_t range_start ;
3717 loff_t range_end ;
3718 unsigned char nonblocking : 1 ;
3719 unsigned char encountered_congestion : 1 ;
3720 unsigned char for_kupdate : 1 ;
3721 unsigned char for_background : 1 ;
3722 unsigned char for_reclaim : 1 ;
3723 unsigned char range_cyclic : 1 ;
3724 unsigned char more_io : 1 ;
3725};
3726# 54 "include/linux/writeback.h"
3727struct bdi_writeback;
3728# 54 "include/linux/writeback.h"
3729struct bdi_writeback;
3730# 54 "include/linux/writeback.h"
3731struct bdi_writeback;
3732# 38 "include/linux/backing-dev.h"
3733typedef int congested_fn(void * , int );
3734# 45 "include/linux/backing-dev.h"
3735struct bdi_writeback {
3736 struct backing_dev_info *bdi ;
3737 unsigned int nr ;
3738 unsigned long last_old_flush ;
3739 unsigned long last_active ;
3740 struct task_struct *task ;
3741 struct timer_list wakeup_timer ;
3742 struct list_head b_dirty ;
3743 struct list_head b_io ;
3744 struct list_head b_more_io ;
3745};
3746# 61 "include/linux/backing-dev.h"
3747struct backing_dev_info {
3748 struct list_head bdi_list ;
3749 unsigned long ra_pages ;
3750 unsigned long state ;
3751 unsigned int capabilities ;
3752 congested_fn *congested_fn ;
3753 void *congested_data ;
3754 char *name ;
3755 struct percpu_counter bdi_stat[2U] ;
3756 struct prop_local_percpu completions ;
3757 int dirty_exceeded ;
3758 unsigned int min_ratio ;
3759 unsigned int max_ratio ;
3760 unsigned int max_prop_frac ;
3761 struct bdi_writeback wb ;
3762 spinlock_t wb_lock ;
3763 struct list_head work_list ;
3764 struct device *dev ;
3765 struct timer_list laptop_mode_wb_timer ;
3766 struct dentry *debug_dir ;
3767 struct dentry *debug_stats ;
3768};
3769# 11 "include/linux/mempool.h"
3770typedef void *mempool_alloc_t(gfp_t , void * );
3771# 12 "include/linux/mempool.h"
3772typedef void mempool_free_t(void * , void * );
3773# 13 "include/linux/mempool.h"
3774struct mempool_s {
3775 spinlock_t lock ;
3776 int min_nr ;
3777 int curr_nr ;
3778 void **elements ;
3779 void *pool_data ;
3780 mempool_alloc_t *alloc ;
3781 mempool_free_t *free ;
3782 wait_queue_head_t wait ;
3783};
3784# 24 "include/linux/mempool.h"
3785typedef struct mempool_s mempool_t;
3786# 29 "include/linux/iocontext.h"
3787struct io_context {
3788 atomic_long_t refcount ;
3789 atomic_t nr_tasks ;
3790 spinlock_t lock ;
3791 unsigned short ioprio ;
3792 unsigned short ioprio_changed ;
3793 unsigned short cgroup_changed ;
3794 int nr_batch_requests ;
3795 unsigned long last_waited ;
3796 struct radix_tree_root radix_root ;
3797 struct hlist_head cic_list ;
3798 void *ioc_data ;
3799};
3800# 90 "include/linux/bio.h"
3801struct bio_integrity_payload {
3802 struct bio *bip_bio ;
3803 sector_t bip_sector ;
3804 void *bip_buf ;
3805 bio_end_io_t *bip_end_io ;
3806 unsigned int bip_size ;
3807 unsigned short bip_slab ;
3808 unsigned short bip_vcnt ;
3809 unsigned short bip_idx ;
3810 struct work_struct bip_work ;
3811 struct bio_vec bip_vec[0U] ;
3812};
3813# 373 "include/linux/bio.h"
3814struct bio_list {
3815 struct bio *head ;
3816 struct bio *tail ;
3817};
3818# 63 "include/linux/bsg.h"
3819struct bsg_class_device {
3820 struct device *class_dev ;
3821 struct device *parent ;
3822 int minor ;
3823 struct request_queue *queue ;
3824 struct kref ref ;
3825 void (*release)(struct device * ) ;
3826};
3827# 18 "include/asm-generic/scatterlist.h"
3828struct elevator_queue;
3829# 18 "include/asm-generic/scatterlist.h"
3830struct elevator_queue;
3831# 18 "include/asm-generic/scatterlist.h"
3832struct elevator_queue;
3833# 20 "include/asm-generic/scatterlist.h"
3834struct blk_trace;
3835# 20 "include/asm-generic/scatterlist.h"
3836struct blk_trace;
3837# 20 "include/asm-generic/scatterlist.h"
3838struct blk_trace;
3839# 21 "include/asm-generic/scatterlist.h"
3840struct request;
3841# 21 "include/asm-generic/scatterlist.h"
3842struct request;
3843# 21 "include/asm-generic/scatterlist.h"
3844struct request;
3845# 38 "include/linux/blkdev.h"
3846typedef void rq_end_io_fn(struct request * , int );
3847# 39 "include/linux/blkdev.h"
3848struct request_list {
3849 int count[2U] ;
3850 int starved[2U] ;
3851 int elvpriv ;
3852 mempool_t *rq_pool ;
3853 wait_queue_head_t wait[2U] ;
3854};
3855# 51 "include/linux/blkdev.h"
3856enum rq_cmd_type_bits {
3857 REQ_TYPE_FS = 1,
3858 REQ_TYPE_BLOCK_PC = 2,
3859 REQ_TYPE_SENSE = 3,
3860 REQ_TYPE_PM_SUSPEND = 4,
3861 REQ_TYPE_PM_RESUME = 5,
3862 REQ_TYPE_PM_SHUTDOWN = 6,
3863 REQ_TYPE_SPECIAL = 7,
3864 REQ_TYPE_ATA_TASKFILE = 8,
3865 REQ_TYPE_ATA_PC = 9
3866} ;
3867# 63 "include/linux/blkdev.h"
3868union __anonunion_ldv_26248_163 {
3869 struct rb_node rb_node ;
3870 void *completion_data ;
3871};
3872# 63 "include/linux/blkdev.h"
3873struct __anonstruct_flush_165 {
3874 unsigned int seq ;
3875 struct list_head list ;
3876};
3877# 63 "include/linux/blkdev.h"
3878union __anonunion_ldv_26255_164 {
3879 void *elevator_private[3U] ;
3880 struct __anonstruct_flush_165 flush ;
3881};
3882# 63 "include/linux/blkdev.h"
3883struct request {
3884 struct list_head queuelist ;
3885 struct call_single_data csd ;
3886 struct request_queue *q ;
3887 unsigned int cmd_flags ;
3888 enum rq_cmd_type_bits cmd_type ;
3889 unsigned long atomic_flags ;
3890 int cpu ;
3891 unsigned int __data_len ;
3892 sector_t __sector ;
3893 struct bio *bio ;
3894 struct bio *biotail ;
3895 struct hlist_node hash ;
3896 union __anonunion_ldv_26248_163 ldv_26248 ;
3897 union __anonunion_ldv_26255_164 ldv_26255 ;
3898 struct gendisk *rq_disk ;
3899 struct hd_struct *part ;
3900 unsigned long start_time ;
3901 unsigned short nr_phys_segments ;
3902 unsigned short nr_integrity_segments ;
3903 unsigned short ioprio ;
3904 int ref_count ;
3905 void *special ;
3906 char *buffer ;
3907 int tag ;
3908 int errors ;
3909 unsigned char __cmd[16U] ;
3910 unsigned char *cmd ;
3911 unsigned short cmd_len ;
3912 unsigned int extra_len ;
3913 unsigned int sense_len ;
3914 unsigned int resid_len ;
3915 void *sense ;
3916 unsigned long deadline ;
3917 struct list_head timeout_list ;
3918 unsigned int timeout ;
3919 int retries ;
3920 rq_end_io_fn *end_io ;
3921 void *end_io_data ;
3922 struct request *next_rq ;
3923};
3924# 8 "include/linux/elevator.h"
3925typedef int elevator_merge_fn(struct request_queue * , struct request ** , struct bio * );
3926# 11 "include/linux/elevator.h"
3927typedef void elevator_merge_req_fn(struct request_queue * , struct request * , struct request * );
3928# 13 "include/linux/elevator.h"
3929typedef void elevator_merged_fn(struct request_queue * , struct request * , int );
3930# 15 "include/linux/elevator.h"
3931typedef int elevator_allow_merge_fn(struct request_queue * , struct request * , struct bio * );
3932# 17 "include/linux/elevator.h"
3933typedef void elevator_bio_merged_fn(struct request_queue * , struct request * , struct bio * );
3934# 20 "include/linux/elevator.h"
3935typedef int elevator_dispatch_fn(struct request_queue * , int );
3936# 22 "include/linux/elevator.h"
3937typedef void elevator_add_req_fn(struct request_queue * , struct request * );
3938# 23 "include/linux/elevator.h"
3939typedef struct request *elevator_request_list_fn(struct request_queue * , struct request * );
3940# 24 "include/linux/elevator.h"
3941typedef void elevator_completed_req_fn(struct request_queue * , struct request * );
3942# 25 "include/linux/elevator.h"
3943typedef int elevator_may_queue_fn(struct request_queue * , int );
3944# 27 "include/linux/elevator.h"
3945typedef int elevator_set_req_fn(struct request_queue * , struct request * , gfp_t );
3946# 28 "include/linux/elevator.h"
3947typedef void elevator_put_req_fn(struct request * );
3948# 29 "include/linux/elevator.h"
3949typedef void elevator_activate_req_fn(struct request_queue * , struct request * );
3950# 30 "include/linux/elevator.h"
3951typedef void elevator_deactivate_req_fn(struct request_queue * , struct request * );
3952# 32 "include/linux/elevator.h"
3953typedef void *elevator_init_fn(struct request_queue * );
3954# 33 "include/linux/elevator.h"
3955typedef void elevator_exit_fn(struct elevator_queue * );
3956# 34 "include/linux/elevator.h"
3957struct elevator_ops {
3958 elevator_merge_fn *elevator_merge_fn ;
3959 elevator_merged_fn *elevator_merged_fn ;
3960 elevator_merge_req_fn *elevator_merge_req_fn ;
3961 elevator_allow_merge_fn *elevator_allow_merge_fn ;
3962 elevator_bio_merged_fn *elevator_bio_merged_fn ;
3963 elevator_dispatch_fn *elevator_dispatch_fn ;
3964 elevator_add_req_fn *elevator_add_req_fn ;
3965 elevator_activate_req_fn *elevator_activate_req_fn ;
3966 elevator_deactivate_req_fn *elevator_deactivate_req_fn ;
3967 elevator_completed_req_fn *elevator_completed_req_fn ;
3968 elevator_request_list_fn *elevator_former_req_fn ;
3969 elevator_request_list_fn *elevator_latter_req_fn ;
3970 elevator_set_req_fn *elevator_set_req_fn ;
3971 elevator_put_req_fn *elevator_put_req_fn ;
3972 elevator_may_queue_fn *elevator_may_queue_fn ;
3973 elevator_init_fn *elevator_init_fn ;
3974 elevator_exit_fn *elevator_exit_fn ;
3975 void (*trim)(struct io_context * ) ;
3976};
3977# 62 "include/linux/elevator.h"
3978struct elv_fs_entry {
3979 struct attribute attr ;
3980 ssize_t (*show)(struct elevator_queue * , char * ) ;
3981 ssize_t (*store)(struct elevator_queue * , char const * , size_t ) ;
3982};
3983# 70 "include/linux/elevator.h"
3984struct elevator_type {
3985 struct list_head list ;
3986 struct elevator_ops ops ;
3987 struct elv_fs_entry *elevator_attrs ;
3988 char elevator_name[16U] ;
3989 struct module *elevator_owner ;
3990};
3991# 82 "include/linux/elevator.h"
3992struct elevator_queue {
3993 struct elevator_ops *ops ;
3994 void *elevator_data ;
3995 struct kobject kobj ;
3996 struct elevator_type *elevator_type ;
3997 struct mutex sysfs_lock ;
3998 struct hlist_head *hash ;
3999 unsigned char registered : 1 ;
4000};
4001# 195 "include/linux/blkdev.h"
4002typedef void request_fn_proc(struct request_queue * );
4003# 196 "include/linux/blkdev.h"
4004typedef int make_request_fn(struct request_queue * , struct bio * );
4005# 197 "include/linux/blkdev.h"
4006typedef int prep_rq_fn(struct request_queue * , struct request * );
4007# 198 "include/linux/blkdev.h"
4008typedef void unprep_rq_fn(struct request_queue * , struct request * );
4009# 199 "include/linux/blkdev.h"
4010struct bvec_merge_data {
4011 struct block_device *bi_bdev ;
4012 sector_t bi_sector ;
4013 unsigned int bi_size ;
4014 unsigned long bi_rw ;
4015};
4016# 207 "include/linux/blkdev.h"
4017typedef int merge_bvec_fn(struct request_queue * , struct bvec_merge_data * , struct bio_vec * );
4018# 209 "include/linux/blkdev.h"
4019typedef void softirq_done_fn(struct request * );
4020# 210 "include/linux/blkdev.h"
4021typedef int dma_drain_needed_fn(struct request * );
4022# 211 "include/linux/blkdev.h"
4023typedef int lld_busy_fn(struct request_queue * );
4024# 212 "include/linux/blkdev.h"
4025enum blk_eh_timer_return {
4026 BLK_EH_NOT_HANDLED = 0,
4027 BLK_EH_HANDLED = 1,
4028 BLK_EH_RESET_TIMER = 2
4029} ;
4030# 219 "include/linux/blkdev.h"
4031typedef enum blk_eh_timer_return rq_timed_out_fn(struct request * );
4032# 225 "include/linux/blkdev.h"
4033struct blk_queue_tag {
4034 struct request **tag_index ;
4035 unsigned long *tag_map ;
4036 int busy ;
4037 int max_depth ;
4038 int real_max_depth ;
4039 atomic_t refcnt ;
4040};
4041# 234 "include/linux/blkdev.h"
4042struct queue_limits {
4043 unsigned long bounce_pfn ;
4044 unsigned long seg_boundary_mask ;
4045 unsigned int max_hw_sectors ;
4046 unsigned int max_sectors ;
4047 unsigned int max_segment_size ;
4048 unsigned int physical_block_size ;
4049 unsigned int alignment_offset ;
4050 unsigned int io_min ;
4051 unsigned int io_opt ;
4052 unsigned int max_discard_sectors ;
4053 unsigned int discard_granularity ;
4054 unsigned int discard_alignment ;
4055 unsigned short logical_block_size ;
4056 unsigned short max_segments ;
4057 unsigned short max_integrity_segments ;
4058 unsigned char misaligned ;
4059 unsigned char discard_misaligned ;
4060 unsigned char cluster ;
4061 unsigned char discard_zeroes_data ;
4062};
4063# 262 "include/linux/blkdev.h"
4064struct request_queue {
4065 struct list_head queue_head ;
4066 struct request *last_merge ;
4067 struct elevator_queue *elevator ;
4068 struct request_list rq ;
4069 request_fn_proc *request_fn ;
4070 make_request_fn *make_request_fn ;
4071 prep_rq_fn *prep_rq_fn ;
4072 unprep_rq_fn *unprep_rq_fn ;
4073 merge_bvec_fn *merge_bvec_fn ;
4074 softirq_done_fn *softirq_done_fn ;
4075 rq_timed_out_fn *rq_timed_out_fn ;
4076 dma_drain_needed_fn *dma_drain_needed ;
4077 lld_busy_fn *lld_busy_fn ;
4078 sector_t end_sector ;
4079 struct request *boundary_rq ;
4080 struct delayed_work delay_work ;
4081 struct backing_dev_info backing_dev_info ;
4082 void *queuedata ;
4083 gfp_t bounce_gfp ;
4084 unsigned long queue_flags ;
4085 spinlock_t __queue_lock ;
4086 spinlock_t *queue_lock ;
4087 struct kobject kobj ;
4088 unsigned long nr_requests ;
4089 unsigned int nr_congestion_on ;
4090 unsigned int nr_congestion_off ;
4091 unsigned int nr_batching ;
4092 void *dma_drain_buffer ;
4093 unsigned int dma_drain_size ;
4094 unsigned int dma_pad_mask ;
4095 unsigned int dma_alignment ;
4096 struct blk_queue_tag *queue_tags ;
4097 struct list_head tag_busy_list ;
4098 unsigned int nr_sorted ;
4099 unsigned int in_flight[2U] ;
4100 unsigned int rq_timeout ;
4101 struct timer_list timeout ;
4102 struct list_head timeout_list ;
4103 struct queue_limits limits ;
4104 unsigned int sg_timeout ;
4105 unsigned int sg_reserved_size ;
4106 int node ;
4107 struct blk_trace *blk_trace ;
4108 unsigned int flush_flags ;
4109 unsigned char flush_not_queueable : 1 ;
4110 unsigned char flush_queue_delayed : 1 ;
4111 unsigned char flush_pending_idx : 1 ;
4112 unsigned char flush_running_idx : 1 ;
4113 unsigned long flush_pending_since ;
4114 struct list_head flush_queue[2U] ;
4115 struct list_head flush_data_in_flight ;
4116 struct request flush_rq ;
4117 struct mutex sysfs_lock ;
4118 struct bsg_class_device bsg_dev ;
4119};
4120# 859 "include/linux/blkdev.h"
4121struct blk_plug {
4122 unsigned long magic ;
4123 struct list_head list ;
4124 struct list_head cb_list ;
4125 unsigned int should_sort ;
4126};
4127# 1192 "include/linux/blkdev.h"
4128struct blk_integrity_exchg {
4129 void *prot_buf ;
4130 void *data_buf ;
4131 sector_t sector ;
4132 unsigned int data_size ;
4133 unsigned short sector_size ;
4134 char const *disk_name ;
4135};
4136# 1212 "include/linux/blkdev.h"
4137typedef void integrity_gen_fn(struct blk_integrity_exchg * );
4138# 1213 "include/linux/blkdev.h"
4139typedef int integrity_vrfy_fn(struct blk_integrity_exchg * );
4140# 1214 "include/linux/blkdev.h"
4141typedef void integrity_set_tag_fn(void * , void * , unsigned int );
4142# 1215 "include/linux/blkdev.h"
4143typedef void integrity_get_tag_fn(void * , void * , unsigned int );
4144# 1216 "include/linux/blkdev.h"
4145struct blk_integrity {
4146 integrity_gen_fn *generate_fn ;
4147 integrity_vrfy_fn *verify_fn ;
4148 integrity_set_tag_fn *set_tag_fn ;
4149 integrity_get_tag_fn *get_tag_fn ;
4150 unsigned short flags ;
4151 unsigned short tuple_size ;
4152 unsigned short sector_size ;
4153 unsigned short tag_size ;
4154 char const *name ;
4155 struct kobject kobj ;
4156};
4157# 1275 "include/linux/blkdev.h"
4158struct block_device_operations {
4159 int (*open)(struct block_device * , fmode_t ) ;
4160 int (*release)(struct gendisk * , fmode_t ) ;
4161 int (*ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
4162 int (*compat_ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
4163 int (*direct_access)(struct block_device * , sector_t , void ** , unsigned long * ) ;
4164 unsigned int (*check_events)(struct gendisk * , unsigned int ) ;
4165 int (*media_changed)(struct gendisk * ) ;
4166 void (*unlock_native_capacity)(struct gendisk * ) ;
4167 int (*revalidate_disk)(struct gendisk * ) ;
4168 int (*getgeo)(struct block_device * , struct hd_geometry * ) ;
4169 void (*swap_slot_free_notify)(struct block_device * , unsigned long ) ;
4170 struct module *owner ;
4171};
4172# 57 "include/linux/blkpg.h"
4173struct taskstats {
4174 __u16 version ;
4175 __u32 ac_exitcode ;
4176 __u8 ac_flag ;
4177 __u8 ac_nice ;
4178 __u64 cpu_count ;
4179 __u64 cpu_delay_total ;
4180 __u64 blkio_count ;
4181 __u64 blkio_delay_total ;
4182 __u64 swapin_count ;
4183 __u64 swapin_delay_total ;
4184 __u64 cpu_run_real_total ;
4185 __u64 cpu_run_virtual_total ;
4186 char ac_comm[32U] ;
4187 __u8 ac_sched ;
4188 __u8 ac_pad[3U] ;
4189 __u32 ac_uid ;
4190 __u32 ac_gid ;
4191 __u32 ac_pid ;
4192 __u32 ac_ppid ;
4193 __u32 ac_btime ;
4194 __u64 ac_etime ;
4195 __u64 ac_utime ;
4196 __u64 ac_stime ;
4197 __u64 ac_minflt ;
4198 __u64 ac_majflt ;
4199 __u64 coremem ;
4200 __u64 virtmem ;
4201 __u64 hiwater_rss ;
4202 __u64 hiwater_vm ;
4203 __u64 read_char ;
4204 __u64 write_char ;
4205 __u64 read_syscalls ;
4206 __u64 write_syscalls ;
4207 __u64 read_bytes ;
4208 __u64 write_bytes ;
4209 __u64 cancelled_write_bytes ;
4210 __u64 nvcsw ;
4211 __u64 nivcsw ;
4212 __u64 ac_utimescaled ;
4213 __u64 ac_stimescaled ;
4214 __u64 cpu_scaled_run_real_total ;
4215 __u64 freepages_count ;
4216 __u64 freepages_delay_total ;
4217};
4218# 150 "include/linux/idr.h"
4219struct cgroupfs_root;
4220# 150 "include/linux/idr.h"
4221struct cgroupfs_root;
4222# 150 "include/linux/idr.h"
4223struct cgroupfs_root;
4224# 152 "include/linux/idr.h"
4225struct cgroup;
4226# 152 "include/linux/idr.h"
4227struct cgroup;
4228# 152 "include/linux/idr.h"
4229struct cgroup;
4230# 153 "include/linux/idr.h"
4231struct css_id;
4232# 153 "include/linux/idr.h"
4233struct css_id;
4234# 153 "include/linux/idr.h"
4235struct css_id;
4236# 56 "include/linux/cgroup.h"
4237struct cgroup_subsys_state {
4238 struct cgroup *cgroup ;
4239 atomic_t refcnt ;
4240 unsigned long flags ;
4241 struct css_id *id ;
4242};
4243# 194 "include/linux/cgroup.h"
4244struct cgroup {
4245 unsigned long flags ;
4246 atomic_t count ;
4247 struct list_head sibling ;
4248 struct list_head children ;
4249 struct cgroup *parent ;
4250 struct dentry *dentry ;
4251 struct cgroup_subsys_state *subsys[64U] ;
4252 struct cgroupfs_root *root ;
4253 struct cgroup *top_cgroup ;
4254 struct list_head css_sets ;
4255 struct list_head release_list ;
4256 struct list_head pidlists ;
4257 struct mutex pidlist_mutex ;
4258 struct rcu_head rcu_head ;
4259 struct list_head event_list ;
4260 spinlock_t event_list_lock ;
4261};
4262# 247 "include/linux/cgroup.h"
4263struct css_set {
4264 atomic_t refcount ;
4265 struct hlist_node hlist ;
4266 struct list_head tasks ;
4267 struct list_head cg_links ;
4268 struct cgroup_subsys_state *subsys[64U] ;
4269 struct rcu_head rcu_head ;
4270};
4271# 105 "include/linux/swap.h"
4272struct reclaim_state {
4273 unsigned long reclaimed_slab ;
4274};
4275# 382 "include/linux/swap.h"
4276struct loop_func_table;
4277# 382 "include/linux/swap.h"
4278struct loop_func_table;
4279# 382 "include/linux/swap.h"
4280struct loop_func_table;
4281# 383 "include/linux/swap.h"
4282struct loop_device {
4283 int lo_number ;
4284 int lo_refcnt ;
4285 loff_t lo_offset ;
4286 loff_t lo_sizelimit ;
4287 int lo_flags ;
4288 int (*transfer)(struct loop_device * , int , struct page * , unsigned int , struct page * ,
4289 unsigned int , int , sector_t ) ;
4290 char lo_file_name[64U] ;
4291 char lo_crypt_name[64U] ;
4292 char lo_encrypt_key[32U] ;
4293 int lo_encrypt_key_size ;
4294 struct loop_func_table *lo_encryption ;
4295 __u32 lo_init[2U] ;
4296 uid_t lo_key_owner ;
4297 int (*ioctl)(struct loop_device * , int , unsigned long ) ;
4298 struct file *lo_backing_file ;
4299 struct block_device *lo_device ;
4300 unsigned int lo_blocksize ;
4301 void *key_data ;
4302 gfp_t old_gfp_mask ;
4303 spinlock_t lo_lock ;
4304 struct bio_list lo_bio_list ;
4305 int lo_state ;
4306 struct mutex lo_ctl_mutex ;
4307 struct task_struct *lo_thread ;
4308 wait_queue_head_t lo_event ;
4309 struct request_queue *lo_queue ;
4310 struct gendisk *lo_disk ;
4311 struct list_head lo_list ;
4312};
4313# 75 "include/linux/loop.h"
4314struct loop_info {
4315 int lo_number ;
4316 __kernel_old_dev_t lo_device ;
4317 unsigned long lo_inode ;
4318 __kernel_old_dev_t lo_rdevice ;
4319 int lo_offset ;
4320 int lo_encrypt_type ;
4321 int lo_encrypt_key_size ;
4322 int lo_flags ;
4323 char lo_name[64U] ;
4324 unsigned char lo_encrypt_key[32U] ;
4325 unsigned long lo_init[2U] ;
4326 char reserved[4U] ;
4327};
4328# 99 "include/linux/loop.h"
4329struct loop_info64 {
4330 __u64 lo_device ;
4331 __u64 lo_inode ;
4332 __u64 lo_rdevice ;
4333 __u64 lo_offset ;
4334 __u64 lo_sizelimit ;
4335 __u32 lo_number ;
4336 __u32 lo_encrypt_type ;
4337 __u32 lo_encrypt_key_size ;
4338 __u32 lo_flags ;
4339 __u8 lo_file_name[64U] ;
4340 __u8 lo_crypt_name[64U] ;
4341 __u8 lo_encrypt_key[32U] ;
4342 __u64 lo_init[2U] ;
4343};
4344# 115 "include/linux/loop.h"
4345struct loop_func_table {
4346 int number ;
4347 int (*transfer)(struct loop_device * , int , struct page * , unsigned int , struct page * ,
4348 unsigned int , int , sector_t ) ;
4349 int (*init)(struct loop_device * , struct loop_info64 const * ) ;
4350 int (*release)(struct loop_device * ) ;
4351 int (*ioctl)(struct loop_device * , int , unsigned long ) ;
4352 struct module *owner ;
4353};
4354# 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
4355typedef s32 compat_time_t;
4356# 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
4357typedef u16 compat_dev_t;
4358# 36 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
4359typedef s32 compat_int_t;
4360# 37 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
4361typedef s32 compat_long_t;
4362# 40 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
4363typedef u32 compat_ulong_t;
4364# 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
4365struct compat_timespec {
4366 compat_time_t tv_sec ;
4367 s32 tv_nsec ;
4368};
4369# 196 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
4370typedef u32 compat_uptr_t;
4371# 205 "include/linux/compat.h"
4372struct compat_robust_list {
4373 compat_uptr_t next ;
4374};
4375# 209 "include/linux/compat.h"
4376struct compat_robust_list_head {
4377 struct compat_robust_list list ;
4378 compat_long_t futex_offset ;
4379 compat_uptr_t list_op_pending ;
4380};
4381# 132 "include/linux/kthread.h"
4382struct pipe_buf_operations;
4383# 132 "include/linux/kthread.h"
4384struct pipe_buf_operations;
4385# 132 "include/linux/kthread.h"
4386struct pipe_buffer {
4387 struct page *page ;
4388 unsigned int offset ;
4389 unsigned int len ;
4390 struct pipe_buf_operations const *ops ;
4391 unsigned int flags ;
4392 unsigned long private ;
4393};
4394# 28 "include/linux/pipe_fs_i.h"
4395struct pipe_inode_info {
4396 wait_queue_head_t wait ;
4397 unsigned int nrbufs ;
4398 unsigned int curbuf ;
4399 unsigned int buffers ;
4400 unsigned int readers ;
4401 unsigned int writers ;
4402 unsigned int waiting_writers ;
4403 unsigned int r_counter ;
4404 unsigned int w_counter ;
4405 struct page *tmp_page ;
4406 struct fasync_struct *fasync_readers ;
4407 struct fasync_struct *fasync_writers ;
4408 struct inode *inode ;
4409 struct pipe_buffer *bufs ;
4410};
4411# 60 "include/linux/pipe_fs_i.h"
4412struct pipe_buf_operations {
4413 int can_merge ;
4414 void *(*map)(struct pipe_inode_info * , struct pipe_buffer * , int ) ;
4415 void (*unmap)(struct pipe_inode_info * , struct pipe_buffer * , void * ) ;
4416 int (*confirm)(struct pipe_inode_info * , struct pipe_buffer * ) ;
4417 void (*release)(struct pipe_inode_info * , struct pipe_buffer * ) ;
4418 int (*steal)(struct pipe_inode_info * , struct pipe_buffer * ) ;
4419 void (*get)(struct pipe_inode_info * , struct pipe_buffer * ) ;
4420};
4421# 165 "include/linux/pipe_fs_i.h"
4422union __anonunion_u_187 {
4423 void *userptr ;
4424 struct file *file ;
4425 void *data ;
4426};
4427# 165 "include/linux/pipe_fs_i.h"
4428struct splice_desc {
4429 unsigned int len ;
4430 unsigned int total_len ;
4431 unsigned int flags ;
4432 union __anonunion_u_187 u ;
4433 loff_t pos ;
4434 size_t num_spliced ;
4435 bool need_wakeup ;
4436};
4437# 60 "include/linux/splice.h"
4438typedef int splice_actor(struct pipe_inode_info * , struct pipe_buffer * , struct splice_desc * );
4439# 62 "include/linux/splice.h"
4440typedef int splice_direct_actor(struct pipe_inode_info * , struct splice_desc * );
4441# 389 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4442struct lo_read_data {
4443 struct loop_device *lo ;
4444 struct page *page ;
4445 unsigned int offset ;
4446 int bsize ;
4447};
4448# 550 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4449struct switch_request {
4450 struct file *file ;
4451 struct completion wait ;
4452};
4453# 1338 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4454struct compat_loop_info {
4455 compat_int_t lo_number ;
4456 compat_dev_t lo_device ;
4457 compat_ulong_t lo_inode ;
4458 compat_dev_t lo_rdevice ;
4459 compat_int_t lo_offset ;
4460 compat_int_t lo_encrypt_type ;
4461 compat_int_t lo_encrypt_key_size ;
4462 compat_int_t lo_flags ;
4463 char lo_name[64U] ;
4464 unsigned char lo_encrypt_key[32U] ;
4465 compat_ulong_t lo_init[2U] ;
4466 char reserved[4U] ;
4467};
4468# 1 "<compiler builtins>"
4469
4470# 1 "<compiler builtins>"
4471
4472# 1 "<compiler builtins>"
4473
4474# 47 "include/linux/list.h"
4475extern void __list_add(struct list_head * , struct list_head * , struct list_head * ) ;
4476# 74 "include/linux/list.h"
4477__inline static void list_add_tail(struct list_head *new , struct list_head *head )
4478{
4479
4480 {
4481 {
4482# 76 "include/linux/list.h"
4483 __list_add(new, head->prev, head);
4484 }
4485# 77 "include/linux/list.h"
4486 return;
4487}
4488}
4489# 112 "include/linux/list.h"
4490extern void list_del(struct list_head * ) ;
4491# 315 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4492__inline static int variable_test_bit(int nr , unsigned long const volatile *addr )
4493{ int oldbit ;
4494
4495 {
4496# 319 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4497 __asm__ volatile ("bt %2,%1\n\tsbb %0,%0": "=r" (oldbit): "m" (*((unsigned long *)addr)),
4498 "Ir" (nr));
4499# 324 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4500 return (oldbit);
4501}
4502}
4503# 422 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4504__inline static int fls(int x )
4505{ int r ;
4506
4507 {
4508# 426 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4509 __asm__ ("bsrl %1,%0\n\tcmovzl %2,%0": "=&r" (r): "rm" (x), "rm" (-1));
4510# 435 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4511 return (r + 1);
4512}
4513}
4514# 101 "include/linux/printk.h"
4515extern int printk(char const * , ...) ;
4516# 64 "include/asm-generic/bug.h"
4517extern void warn_slowpath_fmt(char const * , int const , char const * , ...) ;
4518# 125 "include/linux/kernel.h"
4519extern void __might_sleep(char const * , int , int ) ;
4520# 170 "include/linux/kernel.h"
4521extern void might_fault(void) ;
4522# 291 "include/linux/kernel.h"
4523extern int sprintf(char * , char const * , ...) ;
4524# 88 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/percpu.h"
4525extern void __bad_percpu_size(void) ;
4526# 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4527extern struct task_struct *current_task ;
4528# 12 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4529__inline static struct task_struct *get_current(void)
4530{ struct task_struct *pfo_ret__ ;
4531
4532 {
4533# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4534 if (1) {
4535# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4536 goto case_8;
4537 } else {
4538# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4539 goto switch_default;
4540# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4541 if (0) {
4542# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4543 __asm__ ("movb %%gs:%P1,%0": "=q" (pfo_ret__): "p" (& current_task));
4544# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4545 goto ldv_2386;
4546# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4547 __asm__ ("movw %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
4548# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4549 goto ldv_2386;
4550# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4551 __asm__ ("movl %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
4552# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4553 goto ldv_2386;
4554 case_8:
4555# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4556 __asm__ ("movq %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
4557# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4558 goto ldv_2386;
4559 switch_default:
4560 {
4561# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4562 __bad_percpu_size();
4563 }
4564 } else {
4565
4566 }
4567 }
4568 ldv_2386: ;
4569# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4570 return (pfo_ret__);
4571}
4572}
4573# 34 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4574extern void *__memcpy(void * , void const * , size_t ) ;
4575# 55 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4576extern void *memset(void * , int , size_t ) ;
4577# 58 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4578extern void *memmove(void * , void const * , size_t ) ;
4579# 61 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4580extern size_t strlen(char const * ) ;
4581# 22 "include/linux/err.h"
4582__inline static void *ERR_PTR(long error )
4583{
4584
4585 {
4586# 24 "include/linux/err.h"
4587 return ((void *)error);
4588}
4589}
4590# 27 "include/linux/err.h"
4591__inline static long PTR_ERR(void const *ptr )
4592{
4593
4594 {
4595# 29 "include/linux/err.h"
4596 return ((long )ptr);
4597}
4598}
4599# 32 "include/linux/err.h"
4600__inline static long IS_ERR(void const *ptr )
4601{ long tmp ;
4602
4603 {
4604 {
4605# 34 "include/linux/err.h"
4606 tmp = __builtin_expect((long )((unsigned long )ptr > 0x0ffffffffffff000UL), 0L);
4607 }
4608# 34 "include/linux/err.h"
4609 return (tmp);
4610}
4611}
4612# 37 "include/linux/err.h"
4613__inline static long IS_ERR_OR_NULL(void const *ptr )
4614{ long tmp ;
4615 int tmp___0 ;
4616
4617 {
4618# 39 "include/linux/err.h"
4619 if ((unsigned long )ptr == (unsigned long )((void const *)0)) {
4620# 39 "include/linux/err.h"
4621 tmp___0 = 1;
4622 } else {
4623 {
4624# 39 "include/linux/err.h"
4625 tmp = __builtin_expect((long )((unsigned long )ptr > 0x0ffffffffffff000UL), 0L);
4626 }
4627# 39 "include/linux/err.h"
4628 if (tmp != 0L) {
4629# 39 "include/linux/err.h"
4630 tmp___0 = 1;
4631 } else {
4632# 39 "include/linux/err.h"
4633 tmp___0 = 0;
4634 }
4635 }
4636# 39 "include/linux/err.h"
4637 return ((long )tmp___0);
4638}
4639}
4640# 217 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4641extern unsigned long kernel_stack ;
4642# 219 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4643__inline static struct thread_info *current_thread_info(void)
4644{ struct thread_info *ti ;
4645 unsigned long pfo_ret__ ;
4646
4647 {
4648# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4649 if (1) {
4650# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4651 goto case_8;
4652 } else {
4653# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4654 goto switch_default;
4655# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4656 if (0) {
4657# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4658 __asm__ ("movb %%gs:%P1,%0": "=q" (pfo_ret__): "p" (& kernel_stack));
4659# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4660 goto ldv_5782;
4661# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4662 __asm__ ("movw %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& kernel_stack));
4663# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4664 goto ldv_5782;
4665# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4666 __asm__ ("movl %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& kernel_stack));
4667# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4668 goto ldv_5782;
4669 case_8:
4670# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4671 __asm__ ("movq %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& kernel_stack));
4672# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4673 goto ldv_5782;
4674 switch_default:
4675 {
4676# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4677 __bad_percpu_size();
4678 }
4679 } else {
4680
4681 }
4682 }
4683 ldv_5782:
4684# 222 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4685 ti = (struct thread_info *)(pfo_ret__ - 8152UL);
4686# 224 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
4687 return (ti);
4688}
4689}
4690# 82 "include/linux/thread_info.h"
4691__inline static int test_ti_thread_flag(struct thread_info *ti , int flag )
4692{ int tmp ;
4693
4694 {
4695 {
4696# 84 "include/linux/thread_info.h"
4697 tmp = variable_test_bit(flag, (unsigned long const volatile *)(& ti->flags));
4698 }
4699# 84 "include/linux/thread_info.h"
4700 return (tmp);
4701}
4702}
4703# 93 "include/linux/spinlock.h"
4704extern void __raw_spin_lock_init(raw_spinlock_t * , char const * , struct lock_class_key * ) ;
4705# 29 "include/linux/spinlock_api_smp.h"
4706extern void _raw_spin_lock_irq(raw_spinlock_t * ) ;
4707# 41 "include/linux/spinlock_api_smp.h"
4708extern void _raw_spin_unlock_irq(raw_spinlock_t * ) ;
4709# 272 "include/linux/spinlock.h"
4710__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
4711{
4712
4713 {
4714# 274 "include/linux/spinlock.h"
4715 return (& lock->ldv_6060.rlock);
4716}
4717}
4718# 308 "include/linux/spinlock.h"
4719__inline static void spin_lock_irq(spinlock_t *lock )
4720{
4721
4722 {
4723 {
4724# 310 "include/linux/spinlock.h"
4725 _raw_spin_lock_irq(& lock->ldv_6060.rlock);
4726 }
4727# 311 "include/linux/spinlock.h"
4728 return;
4729}
4730}
4731# 333 "include/linux/spinlock.h"
4732__inline static void spin_unlock_irq(spinlock_t *lock )
4733{
4734
4735 {
4736 {
4737# 335 "include/linux/spinlock.h"
4738 _raw_spin_unlock_irq(& lock->ldv_6060.rlock);
4739 }
4740# 336 "include/linux/spinlock.h"
4741 return;
4742}
4743}
4744# 80 "include/linux/wait.h"
4745extern void __init_waitqueue_head(wait_queue_head_t * , struct lock_class_key * ) ;
4746# 156 "include/linux/wait.h"
4747extern void __wake_up(wait_queue_head_t * , unsigned int , int , void * ) ;
4748# 584 "include/linux/wait.h"
4749extern void prepare_to_wait(wait_queue_head_t * , wait_queue_t * , int ) ;
4750# 586 "include/linux/wait.h"
4751extern void finish_wait(wait_queue_head_t * , wait_queue_t * ) ;
4752# 589 "include/linux/wait.h"
4753extern int autoremove_wake_function(wait_queue_t * , unsigned int , int , void * ) ;
4754# 115 "include/linux/mutex.h"
4755extern void __mutex_init(struct mutex * , char const * , struct lock_class_key * ) ;
4756# 134 "include/linux/mutex.h"
4757extern void mutex_lock_nested(struct mutex * , unsigned int ) ;
4758# 169 "include/linux/mutex.h"
4759extern void mutex_unlock(struct mutex * ) ;
4760# 73 "include/linux/completion.h"
4761__inline static void init_completion(struct completion *x )
4762{ struct lock_class_key __key ;
4763
4764 {
4765 {
4766# 75 "include/linux/completion.h"
4767 x->done = 0U;
4768# 76 "include/linux/completion.h"
4769 __init_waitqueue_head(& x->wait, & __key);
4770 }
4771# 78 "include/linux/completion.h"
4772 return;
4773}
4774}
4775# 79 "include/linux/completion.h"
4776extern void wait_for_completion(struct completion * ) ;
4777# 91 "include/linux/completion.h"
4778extern void complete(struct completion * ) ;
4779# 322 "include/linux/gfp.h"
4780extern struct page *alloc_pages_current(gfp_t , unsigned int ) ;
4781# 325 "include/linux/gfp.h"
4782__inline static struct page *alloc_pages(gfp_t gfp_mask , unsigned int order )
4783{ struct page *tmp ;
4784
4785 {
4786 {
4787# 327 "include/linux/gfp.h"
4788 tmp = alloc_pages_current(gfp_mask, order);
4789 }
4790# 327 "include/linux/gfp.h"
4791 return (tmp);
4792}
4793}
4794# 358 "include/linux/gfp.h"
4795extern void __free_pages(struct page * , unsigned int ) ;
4796# 830 "include/linux/rcupdate.h"
4797extern void kfree(void const * ) ;
4798# 157 "include/linux/sysfs.h"
4799extern int sysfs_create_group(struct kobject * , struct attribute_group const * ) ;
4800# 161 "include/linux/sysfs.h"
4801extern void sysfs_remove_group(struct kobject * , struct attribute_group const * ) ;
4802# 211 "include/linux/kobject.h"
4803extern int kobject_uevent(struct kobject * , enum kobject_action ) ;
4804# 99 "include/linux/module.h"
4805extern struct module __this_module ;
4806# 519 "include/linux/module.h"
4807__inline static void ldv___module_get_1(struct module *module ) ;
4808# 541 "include/linux/module.h"
4809__inline static int ldv_try_module_get_4(struct module *module ) ;
4810# 547 "include/linux/module.h"
4811void ldv_module_put_2(struct module *ldv_func_arg1 ) ;
4812# 551 "include/linux/module.h"
4813void ldv_module_put_3(struct module *ldv_func_arg1 ) ;
4814# 555 "include/linux/module.h"
4815void ldv_module_put_5(struct module *ldv_func_arg1 ) ;
4816# 559 "include/linux/module.h"
4817void ldv_module_put_6(struct module *ldv_func_arg1 ) ;
4818# 3 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4819int ldv_try_module_get(struct module *module ) ;
4820# 4 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4821void ldv_module_get(struct module *module ) ;
4822# 5 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4823void ldv_module_put(struct module *module ) ;
4824# 6 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4825unsigned int ldv_module_refcount(void) ;
4826# 7 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
4827void ldv_module_put_and_exit(void) ;
4828# 546 "include/linux/capability.h"
4829extern bool capable(int ) ;
4830# 361 "include/linux/sched.h"
4831extern void schedule(void) ;
4832# 2037 "include/linux/sched.h"
4833extern void set_user_nice(struct task_struct * , long ) ;
4834# 2112 "include/linux/sched.h"
4835extern int wake_up_process(struct task_struct * ) ;
4836# 2441 "include/linux/sched.h"
4837__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag )
4838{ int tmp ;
4839
4840 {
4841 {
4842# 2443 "include/linux/sched.h"
4843 tmp = test_ti_thread_flag((struct thread_info *)tsk->stack, flag);
4844 }
4845# 2443 "include/linux/sched.h"
4846 return (tmp);
4847}
4848}
4849# 2467 "include/linux/sched.h"
4850__inline static int signal_pending(struct task_struct *p )
4851{ int tmp ;
4852 long tmp___0 ;
4853
4854 {
4855 {
4856# 2469 "include/linux/sched.h"
4857 tmp = test_tsk_thread_flag(p, 2);
4858# 2469 "include/linux/sched.h"
4859 tmp___0 = __builtin_expect((long )(tmp != 0), 0L);
4860 }
4861# 2469 "include/linux/sched.h"
4862 return ((int )tmp___0);
4863}
4864}
4865# 2504 "include/linux/sched.h"
4866extern int _cond_resched(void) ;
4867# 41 "include/linux/kdev_t.h"
4868__inline static u32 new_encode_dev(dev_t dev )
4869{ unsigned int major ;
4870 unsigned int minor ;
4871
4872 {
4873# 43 "include/linux/kdev_t.h"
4874 major = dev >> 20;
4875# 44 "include/linux/kdev_t.h"
4876 minor = dev & 1048575U;
4877# 45 "include/linux/kdev_t.h"
4878 return (((minor & 255U) | (major << 8)) | ((minor & 4294967040U) << 12));
4879}
4880}
4881# 60 "include/linux/kdev_t.h"
4882__inline static u64 huge_encode_dev(dev_t dev )
4883{ u32 tmp ;
4884
4885 {
4886 {
4887# 62 "include/linux/kdev_t.h"
4888 tmp = new_encode_dev(dev);
4889 }
4890# 62 "include/linux/kdev_t.h"
4891 return ((u64 )tmp);
4892}
4893}
4894# 344 "include/linux/dcache.h"
4895extern char *d_path(struct path const * , char * , int ) ;
4896# 625 "include/linux/fs.h"
4897extern int pagecache_write_begin(struct file * , struct address_space * , loff_t ,
4898 unsigned int , unsigned int , struct page ** ,
4899 void ** ) ;
4900# 629 "include/linux/fs.h"
4901extern int pagecache_write_end(struct file * , struct address_space * , loff_t ,
4902 unsigned int , unsigned int , struct page * , void * ) ;
4903# 848 "include/linux/fs.h"
4904__inline static loff_t i_size_read(struct inode const *inode )
4905{
4906
4907 {
4908# 867 "include/linux/fs.h"
4909 return ((loff_t )inode->i_size);
4910}
4911}
4912# 2025 "include/linux/fs.h"
4913extern int register_blkdev(unsigned int , char const * ) ;
4914# 2026 "include/linux/fs.h"
4915extern void unregister_blkdev(unsigned int , char const * ) ;
4916# 2029 "include/linux/fs.h"
4917extern void bd_set_size(struct block_device * , loff_t ) ;
4918# 2032 "include/linux/fs.h"
4919extern void invalidate_bdev(struct block_device * ) ;
4920# 2059 "include/linux/fs.h"
4921extern int ioctl_by_bdev(struct block_device * , unsigned int , unsigned long ) ;
4922# 2181 "include/linux/fs.h"
4923extern int vfs_fsync(struct file * , int ) ;
4924# 2296 "include/linux/fs.h"
4925extern int set_blocksize(struct block_device * , int ) ;
4926# 2403 "include/linux/fs.h"
4927extern int vfs_getattr(struct vfsmount * , struct dentry * , struct kstat * ) ;
4928# 2487 "include/linux/fs.h"
4929extern void file_update_time(struct file * ) ;
4930# 14 "include/linux/file.h"
4931extern void fput(struct file * ) ;
4932# 30 "include/linux/file.h"
4933extern struct file *fget(unsigned int ) ;
4934# 221 "include/linux/slub_def.h"
4935extern void *__kmalloc(size_t , gfp_t ) ;
4936# 255 "include/linux/slub_def.h"
4937__inline static void *kmalloc(size_t size , gfp_t flags )
4938{ void *tmp___2 ;
4939
4940 {
4941 {
4942# 270 "include/linux/slub_def.h"
4943 tmp___2 = __kmalloc(size, flags);
4944 }
4945# 270 "include/linux/slub_def.h"
4946 return (tmp___2);
4947}
4948}
4949# 318 "include/linux/slab.h"
4950__inline static void *kzalloc(size_t size , gfp_t flags )
4951{ void *tmp ;
4952
4953 {
4954 {
4955# 320 "include/linux/slab.h"
4956 tmp = kmalloc(size, flags | 32768U);
4957 }
4958# 320 "include/linux/slab.h"
4959 return (tmp);
4960}
4961}
4962# 408 "include/linux/genhd.h"
4963extern void add_disk(struct gendisk * ) ;
4964# 409 "include/linux/genhd.h"
4965extern void del_gendisk(struct gendisk * ) ;
4966# 413 "include/linux/genhd.h"
4967extern void set_device_ro(struct block_device * , int ) ;
4968# 434 "include/linux/genhd.h"
4969__inline static sector_t get_capacity(struct gendisk *disk )
4970{
4971
4972 {
4973# 436 "include/linux/genhd.h"
4974 return (disk->part0.nr_sects);
4975}
4976}
4977# 438 "include/linux/genhd.h"
4978__inline static void set_capacity(struct gendisk *disk , sector_t size )
4979{
4980
4981 {
4982# 440 "include/linux/genhd.h"
4983 disk->part0.nr_sects = size;
4984# 441 "include/linux/genhd.h"
4985 return;
4986}
4987}
4988# 607 "include/linux/genhd.h"
4989extern struct gendisk *alloc_disk(int ) ;
4990# 608 "include/linux/genhd.h"
4991extern struct kobject *get_disk(struct gendisk * ) ;
4992# 609 "include/linux/genhd.h"
4993extern void put_disk(struct gendisk * ) ;
4994# 610 "include/linux/genhd.h"
4995extern void blk_register_region(dev_t , unsigned long , struct module * , struct kobject *(*)(dev_t ,
4996 int * ,
4997 void * ) ,
4998 int (*)(dev_t , void * ) , void * ) ;
4999# 615 "include/linux/genhd.h"
5000extern void blk_unregister_region(dev_t , unsigned long ) ;
5001# 720 "include/linux/mm.h"
5002__inline static void *lowmem_page_address(struct page *page )
5003{
5004
5005 {
5006# 722 "include/linux/mm.h"
5007 return ((void *)((unsigned long )((unsigned long long )(((long )page + 24189255811072L) / 56L) << 12) + 0x0fff880000000000UL));
5008}
5009}
5010# 40 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5011extern unsigned long _copy_to_user(void * , void const * , unsigned int ) ;
5012# 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5013extern unsigned long _copy_from_user(void * , void const * , unsigned int ) ;
5014# 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5015__inline static unsigned long copy_from_user(void *to , void const *from , unsigned long n )
5016{ int sz ;
5017 unsigned long tmp ;
5018 int __ret_warn_on ;
5019 long tmp___0 ;
5020 long tmp___1 ;
5021 long tmp___2 ;
5022
5023 {
5024 {
5025# 50 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5026 tmp = __builtin_object_size((void *)((void const *)to), 0);
5027# 50 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5028 sz = (int )tmp;
5029# 52 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5030 might_fault();
5031# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5032 tmp___1 = __builtin_expect((long )(sz == -1), 1L);
5033 }
5034# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5035 if (tmp___1 != 0L) {
5036 {
5037# 54 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5038 n = _copy_from_user(to, from, (unsigned int )n);
5039 }
5040 } else {
5041 {
5042# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5043 tmp___2 = __builtin_expect((long )((unsigned long )sz >= n), 1L);
5044 }
5045# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5046 if (tmp___2 != 0L) {
5047 {
5048# 54 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5049 n = _copy_from_user(to, from, (unsigned int )n);
5050 }
5051 } else {
5052 {
5053# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5054 __ret_warn_on = 1;
5055# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5056 tmp___0 = __builtin_expect((long )(__ret_warn_on != 0), 0L);
5057 }
5058# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5059 if (tmp___0 != 0L) {
5060 {
5061# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5062 warn_slowpath_fmt("/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h",
5063 (int const )57, "Buffer overflow detected!\n");
5064 }
5065 } else {
5066
5067 }
5068 {
5069# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5070 __builtin_expect((long )(__ret_warn_on != 0), 0L);
5071 }
5072 }
5073 }
5074# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5075 return (n);
5076}
5077}
5078# 63 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5079__inline static int copy_to_user(void *dst , void const *src , unsigned int size )
5080{ unsigned long tmp ;
5081
5082 {
5083 {
5084# 65 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5085 might_fault();
5086# 67 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5087 tmp = _copy_to_user(dst, src, size);
5088 }
5089# 67 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
5090 return ((int )tmp);
5091}
5092}
5093# 16 "include/linux/uaccess.h"
5094__inline static void pagefault_disable(void)
5095{ struct thread_info *tmp ;
5096
5097 {
5098 {
5099# 18 "include/linux/uaccess.h"
5100 tmp = current_thread_info();
5101# 18 "include/linux/uaccess.h"
5102 tmp->preempt_count = tmp->preempt_count + 1;
5103# 23 "include/linux/uaccess.h"
5104 __asm__ volatile ("": : : "memory");
5105 }
5106# 24 "include/linux/uaccess.h"
5107 return;
5108}
5109}
5110# 26 "include/linux/uaccess.h"
5111__inline static void pagefault_enable(void)
5112{ struct thread_info *tmp ;
5113
5114 {
5115 {
5116# 32 "include/linux/uaccess.h"
5117 __asm__ volatile ("": : : "memory");
5118# 33 "include/linux/uaccess.h"
5119 tmp = current_thread_info();
5120# 33 "include/linux/uaccess.h"
5121 tmp->preempt_count = tmp->preempt_count + -1;
5122# 37 "include/linux/uaccess.h"
5123 __asm__ volatile ("": : : "memory");
5124 }
5125# 38 "include/linux/uaccess.h"
5126 return;
5127}
5128}
5129# 48 "include/linux/highmem.h"
5130__inline static void *kmap(struct page *page )
5131{ void *tmp ;
5132
5133 {
5134 {
5135# 50 "include/linux/highmem.h"
5136 __might_sleep("include/linux/highmem.h", 50, 0);
5137# 51 "include/linux/highmem.h"
5138 tmp = lowmem_page_address(page);
5139 }
5140# 51 "include/linux/highmem.h"
5141 return (tmp);
5142}
5143}
5144# 54 "include/linux/highmem.h"
5145__inline static void kunmap(struct page *page )
5146{
5147
5148 {
5149# 56 "include/linux/highmem.h"
5150 return;
5151}
5152}
5153# 58 "include/linux/highmem.h"
5154__inline static void *__kmap_atomic(struct page *page )
5155{ void *tmp ;
5156
5157 {
5158 {
5159# 60 "include/linux/highmem.h"
5160 pagefault_disable();
5161# 61 "include/linux/highmem.h"
5162 tmp = lowmem_page_address(page);
5163 }
5164# 61 "include/linux/highmem.h"
5165 return (tmp);
5166}
5167}
5168# 65 "include/linux/highmem.h"
5169__inline static void __kunmap_atomic(void *addr )
5170{
5171
5172 {
5173 {
5174# 67 "include/linux/highmem.h"
5175 pagefault_enable();
5176 }
5177# 68 "include/linux/highmem.h"
5178 return;
5179}
5180}
5181# 56 "include/linux/pagemap.h"
5182__inline static gfp_t mapping_gfp_mask(struct address_space *mapping )
5183{
5184
5185 {
5186# 58 "include/linux/pagemap.h"
5187 return ((gfp_t )mapping->flags & 8388607U);
5188}
5189}
5190# 65 "include/linux/pagemap.h"
5191__inline static void mapping_set_gfp_mask(struct address_space *m , gfp_t mask )
5192{
5193
5194 {
5195# 67 "include/linux/pagemap.h"
5196 m->flags = (m->flags & 0x0fffffffff800000UL) | (unsigned long )mask;
5197# 69 "include/linux/pagemap.h"
5198 return;
5199}
5200}
5201# 214 "include/linux/bio.h"
5202extern struct bio *bio_alloc(gfp_t , int ) ;
5203# 217 "include/linux/bio.h"
5204extern void bio_put(struct bio * ) ;
5205# 220 "include/linux/bio.h"
5206extern void bio_endio(struct bio * , int ) ;
5207# 386 "include/linux/bio.h"
5208__inline static int bio_list_empty(struct bio_list const *bl )
5209{
5210
5211 {
5212# 388 "include/linux/bio.h"
5213 return ((unsigned long )bl->head == (unsigned long )((struct bio * const )0));
5214}
5215}
5216# 391 "include/linux/bio.h"
5217__inline static void bio_list_init(struct bio_list *bl )
5218{ struct bio *tmp ;
5219
5220 {
5221# 393 "include/linux/bio.h"
5222 tmp = (struct bio *)0;
5223# 393 "include/linux/bio.h"
5224 bl->tail = tmp;
5225# 393 "include/linux/bio.h"
5226 bl->head = tmp;
5227# 394 "include/linux/bio.h"
5228 return;
5229}
5230}
5231# 410 "include/linux/bio.h"
5232__inline static void bio_list_add(struct bio_list *bl , struct bio *bio )
5233{
5234
5235 {
5236# 412 "include/linux/bio.h"
5237 bio->bi_next = (struct bio *)0;
5238# 414 "include/linux/bio.h"
5239 if ((unsigned long )bl->tail != (unsigned long )((struct bio *)0)) {
5240# 415 "include/linux/bio.h"
5241 (bl->tail)->bi_next = bio;
5242 } else {
5243# 417 "include/linux/bio.h"
5244 bl->head = bio;
5245 }
5246# 419 "include/linux/bio.h"
5247 bl->tail = bio;
5248# 420 "include/linux/bio.h"
5249 return;
5250}
5251}
5252# 464 "include/linux/bio.h"
5253__inline static struct bio *bio_list_pop(struct bio_list *bl )
5254{ struct bio *bio ;
5255
5256 {
5257# 466 "include/linux/bio.h"
5258 bio = bl->head;
5259# 468 "include/linux/bio.h"
5260 if ((unsigned long )bio != (unsigned long )((struct bio *)0)) {
5261# 469 "include/linux/bio.h"
5262 bl->head = (bl->head)->bi_next;
5263# 470 "include/linux/bio.h"
5264 if ((unsigned long )bl->head == (unsigned long )((struct bio *)0)) {
5265# 471 "include/linux/bio.h"
5266 bl->tail = (struct bio *)0;
5267 } else {
5268
5269 }
5270# 473 "include/linux/bio.h"
5271 bio->bi_next = (struct bio *)0;
5272 } else {
5273
5274 }
5275# 476 "include/linux/bio.h"
5276 return (bio);
5277}
5278}
5279# 807 "include/linux/blkdev.h"
5280extern void blk_cleanup_queue(struct request_queue * ) ;
5281# 808 "include/linux/blkdev.h"
5282extern void blk_queue_make_request(struct request_queue * , make_request_fn * ) ;
5283# 847 "include/linux/blkdev.h"
5284extern void blk_queue_flush(struct request_queue * , unsigned int ) ;
5285# 856 "include/linux/blkdev.h"
5286extern struct request_queue *blk_alloc_queue(gfp_t ) ;
5287# 147 "include/linux/loop.h"
5288int loop_register_transfer(struct loop_func_table *funcs ) ;
5289# 148 "include/linux/loop.h"
5290int loop_unregister_transfer(int number ) ;
5291# 198 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
5292__inline static void *compat_ptr(compat_uptr_t uptr )
5293{
5294
5295 {
5296# 200 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
5297 return ((void *)((unsigned long )uptr));
5298}
5299}
5300# 7 "include/linux/kthread.h"
5301extern struct task_struct *kthread_create_on_node(int (*)(void * ) , void * , int ,
5302 char const * , ...) ;
5303# 36 "include/linux/kthread.h"
5304extern int kthread_stop(struct task_struct * ) ;
5305# 37 "include/linux/kthread.h"
5306extern int kthread_should_stop(void) ;
5307# 68 "include/linux/splice.h"
5308extern ssize_t __splice_from_pipe(struct pipe_inode_info * , struct splice_desc * ,
5309 splice_actor * ) ;
5310# 82 "include/linux/splice.h"
5311extern ssize_t splice_direct_to_actor(struct file * , struct splice_desc * , splice_direct_actor * ) ;
5312# 89 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5313static struct list_head loop_devices = {& loop_devices, & loop_devices};
5314# 90 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5315static struct mutex loop_devices_mutex = {{1}, {{{{0U}, 3735899821U, 4294967295U, (void *)0x0fffffffffffffffUL, {(struct lock_class_key *)0,
5316 {(struct lock_class *)0,
5317 (struct lock_class *)0},
5318 "loop_devices_mutex.wait_lock",
5319 0, 0UL}}}},
5320 {& loop_devices_mutex.wait_list, & loop_devices_mutex.wait_list}, (struct task_struct *)0,
5321 (char const *)0, (void *)(& loop_devices_mutex), {(struct lock_class_key *)0,
5322 {(struct lock_class *)0, (struct lock_class *)0},
5323 "loop_devices_mutex", 0, 0UL}};
5324# 92 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5325static int max_part ;
5326# 93 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5327static int part_shift ;
5328# 98 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5329static int transfer_none(struct loop_device *lo , int cmd , struct page *raw_page ,
5330 unsigned int raw_off , struct page *loop_page , unsigned int loop_off ,
5331 int size , sector_t real_block )
5332{ char *raw_buf ;
5333 void *tmp ;
5334 char *loop_buf ;
5335 void *tmp___0 ;
5336 size_t __len ;
5337 void *__ret ;
5338 size_t __len___0 ;
5339 void *__ret___0 ;
5340
5341 {
5342 {
5343# 103 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5344 tmp = __kmap_atomic(raw_page);
5345# 103 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5346 raw_buf = (char *)tmp + (unsigned long )raw_off;
5347# 104 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5348 tmp___0 = __kmap_atomic(loop_page);
5349# 104 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5350 loop_buf = (char *)tmp___0 + (unsigned long )loop_off;
5351 }
5352# 106 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5353 if (cmd == 0) {
5354 {
5355# 107 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5356 __len = (size_t )size;
5357# 107 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5358 __ret = __builtin_memcpy((void *)loop_buf, (void const *)raw_buf, __len);
5359 }
5360 } else {
5361 {
5362# 109 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5363 __len___0 = (size_t )size;
5364# 109 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5365 __ret___0 = __builtin_memcpy((void *)raw_buf, (void const *)loop_buf, __len___0);
5366 }
5367 }
5368 {
5369# 111 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5370 __kunmap_atomic((void *)loop_buf);
5371# 112 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5372 __kunmap_atomic((void *)raw_buf);
5373# 113 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5374 __might_sleep("/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p",
5375 113, 0);
5376# 113 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5377 _cond_resched();
5378 }
5379# 114 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5380 return (0);
5381}
5382}
5383# 117 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5384static int transfer_xor(struct loop_device *lo , int cmd , struct page *raw_page ,
5385 unsigned int raw_off , struct page *loop_page , unsigned int loop_off ,
5386 int size , sector_t real_block )
5387{ char *raw_buf ;
5388 void *tmp ;
5389 char *loop_buf ;
5390 void *tmp___0 ;
5391 char *in ;
5392 char *out ;
5393 char *key ;
5394 int i ;
5395 int keysize ;
5396 char *tmp___1 ;
5397 char *tmp___2 ;
5398
5399 {
5400 {
5401# 122 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5402 tmp = __kmap_atomic(raw_page);
5403# 122 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5404 raw_buf = (char *)tmp + (unsigned long )raw_off;
5405# 123 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5406 tmp___0 = __kmap_atomic(loop_page);
5407# 123 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5408 loop_buf = (char *)tmp___0 + (unsigned long )loop_off;
5409 }
5410# 127 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5411 if (cmd == 0) {
5412# 128 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5413 in = raw_buf;
5414# 129 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5415 out = loop_buf;
5416 } else {
5417# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5418 in = loop_buf;
5419# 132 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5420 out = raw_buf;
5421 }
5422# 135 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5423 key = (char *)(& lo->lo_encrypt_key);
5424# 136 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5425 keysize = lo->lo_encrypt_key_size;
5426# 137 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5427 i = 0;
5428# 137 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5429 goto ldv_30396;
5430 ldv_30395:
5431# 138 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5432 tmp___1 = out;
5433# 138 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5434 out = out + 1;
5435# 138 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5436 tmp___2 = in;
5437# 138 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5438 in = in + 1;
5439# 138 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5440 *tmp___1 = (char )((int )((signed char )*tmp___2) ^ (int )((signed char )*(key + (unsigned long )((i & 511) % keysize))));
5441# 137 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5442 i = i + 1;
5443 ldv_30396: ;
5444# 137 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5445 if (i < size) {
5446# 138 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5447 goto ldv_30395;
5448 } else {
5449# 140 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5450 goto ldv_30397;
5451 }
5452 ldv_30397:
5453 {
5454# 140 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5455 __kunmap_atomic((void *)loop_buf);
5456# 141 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5457 __kunmap_atomic((void *)raw_buf);
5458# 142 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5459 __might_sleep("/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p",
5460 142, 0);
5461# 142 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5462 _cond_resched();
5463 }
5464# 143 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5465 return (0);
5466}
5467}
5468# 146 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5469static int xor_init(struct loop_device *lo , struct loop_info64 const *info )
5470{ long tmp ;
5471
5472 {
5473 {
5474# 148 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5475 tmp = __builtin_expect((long )((unsigned int )info->lo_encrypt_key_size == 0U),
5476 0L);
5477 }
5478# 148 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5479 if (tmp != 0L) {
5480# 149 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5481 return (-22);
5482 } else {
5483
5484 }
5485# 150 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5486 return (0);
5487}
5488}
5489# 153 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5490static struct loop_func_table none_funcs = {0, & transfer_none, (int (*)(struct loop_device * , struct loop_info64 const * ))0,
5491 (int (*)(struct loop_device * ))0, (int (*)(struct loop_device * , int , unsigned long ))0,
5492 (struct module *)0};
5493# 158 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5494static struct loop_func_table xor_funcs = {1, & transfer_xor, & xor_init, (int (*)(struct loop_device * ))0, (int (*)(struct loop_device * ,
5495 int ,
5496 unsigned long ))0,
5497 (struct module *)0};
5498# 165 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5499static struct loop_func_table *xfer_funcs[20U] = { & none_funcs, & xor_funcs};
5500# 170 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5501static loff_t get_loop_size(struct loop_device *lo , struct file *file )
5502{ loff_t size ;
5503 loff_t offset ;
5504 loff_t loopsize ;
5505
5506 {
5507 {
5508# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5509 size = i_size_read((struct inode const *)(file->f_mapping)->host);
5510# 176 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5511 offset = lo->lo_offset;
5512# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5513 loopsize = size - offset;
5514 }
5515# 178 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5516 if (lo->lo_sizelimit > 0LL) {
5517# 178 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5518 if (lo->lo_sizelimit < loopsize) {
5519# 179 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5520 loopsize = lo->lo_sizelimit;
5521 } else {
5522
5523 }
5524 } else {
5525
5526 }
5527# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5528 return (loopsize >> 9);
5529}
5530}
5531# 189 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5532static int figure_loop_size(struct loop_device *lo )
5533{ loff_t size ;
5534 loff_t tmp ;
5535 sector_t x ;
5536 long tmp___0 ;
5537
5538 {
5539 {
5540# 191 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5541 tmp = get_loop_size(lo, lo->lo_backing_file);
5542# 191 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5543 size = tmp;
5544# 192 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5545 x = (unsigned long )size;
5546# 194 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5547 tmp___0 = __builtin_expect((long )((long long )x != size), 0L);
5548 }
5549# 194 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5550 if (tmp___0 != 0L) {
5551# 195 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5552 return (-27);
5553 } else {
5554
5555 }
5556 {
5557# 197 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5558 set_capacity(lo->lo_disk, x);
5559 }
5560# 198 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5561 return (0);
5562}
5563}
5564# 202 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5565__inline static int lo_do_transfer(struct loop_device *lo , int cmd , struct page *rpage ,
5566 unsigned int roffs , struct page *lpage , unsigned int loffs ,
5567 int size , sector_t rblock )
5568{ long tmp ;
5569 int tmp___0 ;
5570
5571 {
5572 {
5573# 207 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5574 tmp = __builtin_expect((long )((unsigned long )lo->transfer == (unsigned long )((int (*)(struct loop_device * ,
5575 int ,
5576 struct page * ,
5577 unsigned int ,
5578 struct page * ,
5579 unsigned int ,
5580 int ,
5581 sector_t ))0)),
5582 0L);
5583 }
5584# 207 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5585 if (tmp != 0L) {
5586# 208 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5587 return (0);
5588 } else {
5589
5590 }
5591 {
5592# 210 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5593 tmp___0 = (*(lo->transfer))(lo, cmd, rpage, roffs, lpage, loffs, size, rblock);
5594 }
5595# 210 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5596 return (tmp___0);
5597}
5598}
5599# 219 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5600static int do_lo_send_aops(struct loop_device *lo , struct bio_vec *bvec , loff_t pos ,
5601 struct page *unused )
5602{ struct file *file ;
5603 struct address_space *mapping ;
5604 unsigned long index ;
5605 unsigned int offset ;
5606 unsigned int bv_offs ;
5607 int len ;
5608 int ret ;
5609 sector_t IV ;
5610 unsigned int size ;
5611 unsigned int copied ;
5612 int transfer_result ;
5613 struct page *page ;
5614 void *fsdata ;
5615 long tmp ;
5616 long tmp___0 ;
5617
5618 {
5619 {
5620# 222 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5621 file = lo->lo_backing_file;
5622# 223 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5623 mapping = file->f_mapping;
5624# 228 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5625 mutex_lock_nested(& (mapping->host)->i_mutex, 0U);
5626# 229 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5627 index = (unsigned long )(pos >> 12);
5628# 230 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5629 offset = (unsigned int )pos & 4095U;
5630# 231 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5631 bv_offs = bvec->bv_offset;
5632# 232 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5633 len = (int )bvec->bv_len;
5634 }
5635# 233 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5636 goto ldv_30449;
5637 ldv_30448:
5638# 240 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5639 IV = (index << 3) + (unsigned long )(offset >> 9);
5640# 241 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5641 size = 4096U - offset;
5642# 242 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5643 if ((unsigned int )len < size) {
5644# 243 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5645 size = (unsigned int )len;
5646 } else {
5647
5648 }
5649 {
5650# 245 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5651 ret = pagecache_write_begin(file, mapping, pos, size, 0U, & page, & fsdata);
5652 }
5653# 247 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5654 if (ret != 0) {
5655# 248 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5656 goto fail;
5657 } else {
5658
5659 }
5660 {
5661# 250 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5662 file_update_time(file);
5663# 252 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5664 transfer_result = lo_do_transfer(lo, 1, page, offset, bvec->bv_page, bv_offs, (int )size,
5665 IV);
5666# 254 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5667 copied = size;
5668# 255 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5669 tmp = __builtin_expect((long )(transfer_result != 0), 0L);
5670 }
5671# 255 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5672 if (tmp != 0L) {
5673# 256 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5674 copied = 0U;
5675 } else {
5676
5677 }
5678 {
5679# 258 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5680 ret = pagecache_write_end(file, mapping, pos, size, copied, page, fsdata);
5681 }
5682# 260 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5683 if (ret < 0) {
5684# 261 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5685 goto fail;
5686 } else
5687# 260 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5688 if ((unsigned int )ret != copied) {
5689# 261 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5690 goto fail;
5691 } else {
5692
5693 }
5694 {
5695# 263 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5696 tmp___0 = __builtin_expect((long )(transfer_result != 0), 0L);
5697 }
5698# 263 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5699 if (tmp___0 != 0L) {
5700# 264 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5701 goto fail;
5702 } else {
5703
5704 }
5705# 266 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5706 bv_offs = bv_offs + copied;
5707# 267 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5708 len = (int )((unsigned int )len - copied);
5709# 268 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5710 offset = 0U;
5711# 269 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5712 index = index + 1UL;
5713# 270 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5714 pos = (loff_t )copied + pos;
5715 ldv_30449: ;
5716# 233 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5717 if (len > 0) {
5718# 234 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5719 goto ldv_30448;
5720 } else {
5721# 236 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5722 goto ldv_30450;
5723 }
5724 ldv_30450:
5725# 272 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5726 ret = 0;
5727 out:
5728 {
5729# 274 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5730 mutex_unlock(& (mapping->host)->i_mutex);
5731 }
5732# 275 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5733 return (ret);
5734 fail:
5735# 277 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5736 ret = -1;
5737# 278 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5738 goto out;
5739}
5740}
5741# 287 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5742static int __do_lo_send_write(struct file *file , u8 *buf , int const len , loff_t pos )
5743{ ssize_t bw ;
5744 mm_segment_t old_fs ;
5745 struct thread_info *tmp ;
5746 struct thread_info *tmp___0 ;
5747 mm_segment_t __constr_expr_0 ;
5748 struct thread_info *tmp___1 ;
5749 long tmp___2 ;
5750
5751 {
5752 {
5753# 291 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5754 tmp = current_thread_info();
5755# 291 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5756 old_fs = tmp->addr_limit;
5757# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5758 tmp___0 = current_thread_info();
5759# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5760 __constr_expr_0.seg = 0x0fffffffffffffffUL;
5761# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5762 tmp___0->addr_limit = __constr_expr_0;
5763# 294 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5764 bw = (*((file->f_op)->write))(file, (char const *)buf, (size_t )len, & pos);
5765# 295 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5766 tmp___1 = current_thread_info();
5767# 295 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5768 tmp___1->addr_limit = old_fs;
5769# 296 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5770 tmp___2 = __builtin_expect((long )((ssize_t )len == bw), 1L);
5771 }
5772# 296 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5773 if (tmp___2 != 0L) {
5774# 297 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5775 return (0);
5776 } else {
5777
5778 }
5779 {
5780# 298 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5781 printk("<3>loop: Write error at byte offset %llu, length %i.\n", (unsigned long long )pos,
5782 len);
5783 }
5784# 300 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5785 if (bw >= 0L) {
5786# 301 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5787 bw = -5L;
5788 } else {
5789
5790 }
5791# 302 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5792 return ((int )bw);
5793}
5794}
5795# 313 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5796static int do_lo_send_direct_write(struct loop_device *lo , struct bio_vec *bvec ,
5797 loff_t pos , struct page *page )
5798{ ssize_t bw ;
5799 void *tmp ;
5800 int tmp___0 ;
5801
5802 {
5803 {
5804# 316 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5805 tmp = kmap(bvec->bv_page);
5806# 316 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5807 tmp___0 = __do_lo_send_write(lo->lo_backing_file, (u8 *)tmp + (unsigned long )bvec->bv_offset,
5808 (int const )bvec->bv_len, pos);
5809# 316 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5810 bw = (ssize_t )tmp___0;
5811# 319 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5812 kunmap(bvec->bv_page);
5813# 320 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5814 __might_sleep("/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p",
5815 320, 0);
5816# 320 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5817 _cond_resched();
5818 }
5819# 321 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5820 return ((int )bw);
5821}
5822}
5823# 337 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5824static int do_lo_send_write(struct loop_device *lo , struct bio_vec *bvec , loff_t pos ,
5825 struct page *page )
5826{ int ret ;
5827 int tmp ;
5828 void *tmp___0 ;
5829 int tmp___1 ;
5830 long tmp___2 ;
5831
5832 {
5833 {
5834# 340 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5835 tmp = lo_do_transfer(lo, 1, page, 0U, bvec->bv_page, bvec->bv_offset, (int )bvec->bv_len,
5836 (sector_t )(pos >> 9));
5837# 340 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5838 ret = tmp;
5839# 342 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5840 tmp___2 = __builtin_expect((long )(ret == 0), 1L);
5841 }
5842# 342 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5843 if (tmp___2 != 0L) {
5844 {
5845# 343 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5846 tmp___0 = lowmem_page_address(page);
5847# 343 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5848 tmp___1 = __do_lo_send_write(lo->lo_backing_file, (u8 *)tmp___0, (int const )bvec->bv_len,
5849 pos);
5850 }
5851# 343 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5852 return (tmp___1);
5853 } else {
5854
5855 }
5856 {
5857# 346 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5858 printk("<3>loop: Transfer error at byte offset %llu, length %i.\n", (unsigned long long )pos,
5859 bvec->bv_len);
5860 }
5861# 348 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5862 if (ret > 0) {
5863# 349 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5864 ret = -5;
5865 } else {
5866
5867 }
5868# 350 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5869 return (ret);
5870}
5871}
5872# 353 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5873static int lo_send(struct loop_device *lo , struct bio *bio , loff_t pos )
5874{ int (*do_lo_send)(struct loop_device * , struct bio_vec * , loff_t , struct page * ) ;
5875 struct bio_vec *bvec ;
5876 struct page *page ;
5877 int i ;
5878 int ret ;
5879 long tmp ;
5880
5881 {
5882# 358 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5883 page = (struct page *)0;
5884# 359 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5885 ret = 0;
5886# 361 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5887 do_lo_send = & do_lo_send_aops;
5888# 362 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5889 if ((lo->lo_flags & 2) == 0) {
5890# 363 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5891 do_lo_send = & do_lo_send_direct_write;
5892# 364 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5893 if ((unsigned long )lo->transfer != (unsigned long )(& transfer_none)) {
5894 {
5895# 365 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5896 page = alloc_pages(18U, 0U);
5897# 366 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5898 tmp = __builtin_expect((long )((unsigned long )page == (unsigned long )((struct page *)0)),
5899 0L);
5900 }
5901# 366 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5902 if (tmp != 0L) {
5903# 367 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5904 goto fail;
5905 } else {
5906
5907 }
5908 {
5909# 368 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5910 kmap(page);
5911# 369 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5912 do_lo_send = & do_lo_send_write;
5913 }
5914 } else {
5915
5916 }
5917 } else {
5918
5919 }
5920# 372 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5921 bvec = bio->bi_io_vec + (unsigned long )bio->bi_idx;
5922# 372 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5923 i = (int )bio->bi_idx;
5924# 372 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5925 goto ldv_30493;
5926 ldv_30492:
5927 {
5928# 373 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5929 ret = (*do_lo_send)(lo, bvec, pos, page);
5930 }
5931# 374 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5932 if (ret < 0) {
5933# 375 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5934 goto ldv_30491;
5935 } else {
5936
5937 }
5938# 376 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5939 pos = (loff_t )bvec->bv_len + pos;
5940# 372 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5941 bvec = bvec + 1;
5942# 372 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5943 i = i + 1;
5944 ldv_30493: ;
5945# 372 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5946 if ((int )bio->bi_vcnt > i) {
5947# 373 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5948 goto ldv_30492;
5949 } else {
5950# 375 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5951 goto ldv_30491;
5952 }
5953 ldv_30491: ;
5954# 378 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5955 if ((unsigned long )page != (unsigned long )((struct page *)0)) {
5956 {
5957# 379 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5958 kunmap(page);
5959# 380 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5960 __free_pages(page, 0U);
5961 }
5962 } else {
5963
5964 }
5965 out: ;
5966# 383 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5967 return (ret);
5968 fail:
5969 {
5970# 385 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5971 printk("<3>loop: Failed to allocate temporary page for write.\n");
5972# 386 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5973 ret = -12;
5974 }
5975# 387 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5976 goto out;
5977}
5978}
5979# 398 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5980static int lo_splice_actor(struct pipe_inode_info *pipe , struct pipe_buffer *buf ,
5981 struct splice_desc *sd )
5982{ struct lo_read_data *p ;
5983 struct loop_device *lo ;
5984 struct page *page ;
5985 sector_t IV ;
5986 int size ;
5987 int tmp ;
5988
5989 {
5990# 401 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5991 p = (struct lo_read_data *)sd->u.data;
5992# 402 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5993 lo = p->lo;
5994# 403 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5995 page = buf->page;
5996# 407 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5997 IV = (page->ldv_13943.index << 3) + (unsigned long )(buf->offset >> 9);
5998# 409 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
5999 size = (int )sd->len;
6000# 410 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6001 if (p->bsize < size) {
6002# 411 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6003 size = p->bsize;
6004 } else {
6005
6006 }
6007 {
6008# 413 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6009 tmp = lo_do_transfer(lo, 0, page, buf->offset, p->page, p->offset, size, IV);
6010 }
6011# 413 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6012 if (tmp != 0) {
6013 {
6014# 414 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6015 printk("<3>loop: transfer error block %ld\n", page->ldv_13943.index);
6016# 416 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6017 size = -22;
6018 }
6019 } else {
6020
6021 }
6022# 421 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6023 if (size > 0) {
6024# 422 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6025 p->offset = p->offset + (unsigned int )size;
6026 } else {
6027
6028 }
6029# 424 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6030 return (size);
6031}
6032}
6033# 428 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6034static int lo_direct_splice_actor(struct pipe_inode_info *pipe , struct splice_desc *sd )
6035{ ssize_t tmp ;
6036
6037 {
6038 {
6039# 430 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6040 tmp = __splice_from_pipe(pipe, sd, & lo_splice_actor);
6041 }
6042# 430 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6043 return ((int )tmp);
6044}
6045}
6046# 434 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6047static int do_lo_receive(struct loop_device *lo , struct bio_vec *bvec , int bsize ,
6048 loff_t pos )
6049{ struct lo_read_data cookie ;
6050 struct splice_desc sd ;
6051 struct file *file ;
6052 long retval ;
6053
6054 {
6055 {
6056# 442 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6057 cookie.lo = lo;
6058# 443 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6059 cookie.page = bvec->bv_page;
6060# 444 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6061 cookie.offset = bvec->bv_offset;
6062# 445 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6063 cookie.bsize = bsize;
6064# 447 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6065 sd.len = 0U;
6066# 448 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6067 sd.total_len = bvec->bv_len;
6068# 449 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6069 sd.flags = 0U;
6070# 450 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6071 sd.pos = pos;
6072# 451 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6073 sd.u.data = (void *)(& cookie);
6074# 453 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6075 file = lo->lo_backing_file;
6076# 454 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6077 retval = splice_direct_to_actor(file, & sd, & lo_direct_splice_actor);
6078 }
6079# 456 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6080 if (retval < 0L) {
6081# 457 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6082 return ((int )retval);
6083 } else {
6084
6085 }
6086# 459 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6087 return (0);
6088}
6089}
6090# 463 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6091static int lo_receive(struct loop_device *lo , struct bio *bio , int bsize , loff_t pos )
6092{ struct bio_vec *bvec ;
6093 int i ;
6094 int ret ;
6095
6096 {
6097# 466 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6098 ret = 0;
6099# 468 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6100 bvec = bio->bi_io_vec + (unsigned long )bio->bi_idx;
6101# 468 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6102 i = (int )bio->bi_idx;
6103# 468 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6104 goto ldv_30535;
6105 ldv_30534:
6106 {
6107# 469 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6108 ret = do_lo_receive(lo, bvec, bsize, pos);
6109 }
6110# 470 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6111 if (ret < 0) {
6112# 471 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6113 goto ldv_30533;
6114 } else {
6115
6116 }
6117# 472 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6118 pos = (loff_t )bvec->bv_len + pos;
6119# 468 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6120 bvec = bvec + 1;
6121# 468 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6122 i = i + 1;
6123 ldv_30535: ;
6124# 468 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6125 if ((int )bio->bi_vcnt > i) {
6126# 469 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6127 goto ldv_30534;
6128 } else {
6129# 471 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6130 goto ldv_30533;
6131 }
6132 ldv_30533: ;
6133# 474 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6134 return (ret);
6135}
6136}
6137# 477 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6138static int do_bio_filebacked(struct loop_device *lo , struct bio *bio )
6139{ loff_t pos ;
6140 int ret ;
6141 struct file *file ;
6142 long tmp ;
6143 long tmp___0 ;
6144 long tmp___1 ;
6145 long tmp___2 ;
6146
6147 {
6148# 482 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6149 pos = ((long long )bio->bi_sector << 9) + lo->lo_offset;
6150# 484 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6151 if ((bio->bi_rw & 257UL) == 1UL) {
6152# 485 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6153 file = lo->lo_backing_file;
6154# 487 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6155 if ((bio->bi_rw & 8388608UL) != 0UL) {
6156 {
6157# 488 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6158 ret = vfs_fsync(file, 0);
6159# 489 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6160 tmp = __builtin_expect((long )(ret != 0), 0L);
6161 }
6162# 489 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6163 if (tmp != 0L) {
6164 {
6165# 489 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6166 tmp___0 = __builtin_expect((long )(ret != -22), 0L);
6167 }
6168# 489 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6169 if (tmp___0 != 0L) {
6170# 490 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6171 ret = -5;
6172# 491 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6173 goto out;
6174 } else {
6175
6176 }
6177 } else {
6178
6179 }
6180 } else {
6181
6182 }
6183 {
6184# 495 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6185 ret = lo_send(lo, bio, pos);
6186 }
6187# 497 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6188 if ((bio->bi_rw & 4096UL) != 0UL) {
6189# 497 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6190 if (ret == 0) {
6191 {
6192# 498 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6193 ret = vfs_fsync(file, 0);
6194# 499 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6195 tmp___1 = __builtin_expect((long )(ret != 0), 0L);
6196 }
6197# 499 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6198 if (tmp___1 != 0L) {
6199 {
6200# 499 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6201 tmp___2 = __builtin_expect((long )(ret != -22), 0L);
6202 }
6203# 499 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6204 if (tmp___2 != 0L) {
6205# 500 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6206 ret = -5;
6207 } else {
6208
6209 }
6210 } else {
6211
6212 }
6213 } else {
6214
6215 }
6216 } else {
6217
6218 }
6219 } else {
6220 {
6221# 503 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6222 ret = lo_receive(lo, bio, (int )lo->lo_blocksize, pos);
6223 }
6224 }
6225 out: ;
6226# 506 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6227 return (ret);
6228}
6229}
6230# 512 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6231static void loop_add_bio(struct loop_device *lo , struct bio *bio )
6232{
6233
6234 {
6235 {
6236# 514 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6237 bio_list_add(& lo->lo_bio_list, bio);
6238 }
6239# 515 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6240 return;
6241}
6242}
6243# 520 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6244static struct bio *loop_get_bio(struct loop_device *lo )
6245{ struct bio *tmp ;
6246
6247 {
6248 {
6249# 522 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6250 tmp = bio_list_pop(& lo->lo_bio_list);
6251 }
6252# 522 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6253 return (tmp);
6254}
6255}
6256# 525 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6257static int loop_make_request(struct request_queue *q , struct bio *old_bio )
6258{ struct loop_device *lo ;
6259 int rw ;
6260 long tmp ;
6261 long tmp___0 ;
6262 long tmp___1 ;
6263 int tmp___2 ;
6264 long tmp___3 ;
6265 long tmp___4 ;
6266
6267 {
6268# 527 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6269 lo = (struct loop_device *)q->queuedata;
6270# 528 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6271 rw = (int )old_bio->bi_rw & 257;
6272# 530 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6273 if (rw == 256) {
6274# 531 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6275 rw = 0;
6276 } else {
6277
6278 }
6279 {
6280# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6281 tmp = __builtin_expect((long )((unsigned long )lo == (unsigned long )((struct loop_device *)0)),
6282 0L);
6283 }
6284# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6285 if (tmp != 0L) {
6286# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6287 goto _L;
6288 } else {
6289 {
6290# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6291 tmp___0 = __builtin_expect((long )(rw != 0), 0L);
6292 }
6293# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6294 if (tmp___0 != 0L) {
6295 {
6296# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6297 tmp___1 = __builtin_expect((long )(rw != 1), 0L);
6298 }
6299# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6300 if (tmp___1 != 0L) {
6301# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6302 tmp___2 = 1;
6303 } else {
6304# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6305 tmp___2 = 0;
6306 }
6307 } else {
6308# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6309 tmp___2 = 0;
6310 }
6311# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6312 if (tmp___2 != 0) {
6313 _L:
6314# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6315 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"),
6316 "i" (533), "i" (12UL));
6317 ldv_30557: ;
6318# 533 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6319 goto ldv_30557;
6320 } else {
6321
6322 }
6323 }
6324 {
6325# 535 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6326 spin_lock_irq(& lo->lo_lock);
6327 }
6328# 536 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6329 if (lo->lo_state != 1) {
6330# 537 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6331 goto out;
6332 } else {
6333
6334 }
6335 {
6336# 538 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6337 tmp___3 = __builtin_expect((long )(rw == 1), 0L);
6338 }
6339# 538 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6340 if (tmp___3 != 0L) {
6341 {
6342# 538 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6343 tmp___4 = __builtin_expect((long )lo->lo_flags & 1L, 0L);
6344 }
6345# 538 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6346 if (tmp___4 != 0L) {
6347# 539 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6348 goto out;
6349 } else {
6350
6351 }
6352 } else {
6353
6354 }
6355 {
6356# 540 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6357 loop_add_bio(lo, old_bio);
6358# 541 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6359 __wake_up(& lo->lo_event, 3U, 1, (void *)0);
6360# 542 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6361 spin_unlock_irq(& lo->lo_lock);
6362 }
6363# 543 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6364 return (0);
6365 out:
6366 {
6367# 546 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6368 spin_unlock_irq(& lo->lo_lock);
6369# 547 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6370 bio_endio(old_bio, -5);
6371 }
6372# 548 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6373 return (0);
6374}
6375}
6376# 556 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6377static void do_loop_switch(struct loop_device *lo , struct switch_request *p ) ;
6378# 558 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6379__inline static void loop_handle_bio(struct loop_device *lo , struct bio *bio )
6380{ int ret ;
6381 int tmp ;
6382 long tmp___0 ;
6383
6384 {
6385 {
6386# 560 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6387 tmp___0 = __builtin_expect((long )((unsigned long )bio->bi_bdev == (unsigned long )((struct block_device *)0)),
6388 0L);
6389 }
6390# 560 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6391 if (tmp___0 != 0L) {
6392 {
6393# 561 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6394 do_loop_switch(lo, (struct switch_request *)bio->bi_private);
6395# 562 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6396 bio_put(bio);
6397 }
6398 } else {
6399 {
6400# 564 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6401 tmp = do_bio_filebacked(lo, bio);
6402# 564 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6403 ret = tmp;
6404# 565 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6405 bio_endio(bio, ret);
6406 }
6407 }
6408# 567 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6409 return;
6410}
6411}
6412# 581 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6413static int loop_thread(void *data )
6414{ struct loop_device *lo ;
6415 struct bio *bio ;
6416 struct task_struct *tmp ;
6417 int __ret ;
6418 wait_queue_t __wait ;
6419 struct task_struct *tmp___0 ;
6420 int tmp___1 ;
6421 int tmp___2 ;
6422 struct task_struct *tmp___3 ;
6423 int tmp___4 ;
6424 int tmp___5 ;
6425 int tmp___6 ;
6426 int tmp___7 ;
6427 long tmp___8 ;
6428 int tmp___9 ;
6429 int tmp___10 ;
6430
6431 {
6432 {
6433# 583 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6434 lo = (struct loop_device *)data;
6435# 586 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6436 tmp = get_current();
6437# 586 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6438 set_user_nice(tmp, -20L);
6439 }
6440# 588 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6441 goto ldv_30581;
6442 ldv_30583:
6443 {
6444# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6445 __ret = 0;
6446# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6447 tmp___5 = bio_list_empty((struct bio_list const *)(& lo->lo_bio_list));
6448 }
6449# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6450 if (tmp___5 != 0) {
6451 {
6452# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6453 tmp___6 = kthread_should_stop();
6454 }
6455# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6456 if (tmp___6 == 0) {
6457 {
6458# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6459 tmp___0 = get_current();
6460# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6461 __wait.flags = 0U;
6462# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6463 __wait.private = (void *)tmp___0;
6464# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6465 __wait.func = & autoremove_wake_function;
6466# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6467 __wait.task_list.next = & __wait.task_list;
6468# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6469 __wait.task_list.prev = & __wait.task_list;
6470 }
6471 ldv_30579:
6472 {
6473# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6474 prepare_to_wait(& lo->lo_event, & __wait, 1);
6475# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6476 tmp___1 = bio_list_empty((struct bio_list const *)(& lo->lo_bio_list));
6477 }
6478# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6479 if (tmp___1 == 0) {
6480# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6481 goto ldv_30577;
6482 } else {
6483 {
6484# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6485 tmp___2 = kthread_should_stop();
6486 }
6487# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6488 if (tmp___2 != 0) {
6489# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6490 goto ldv_30577;
6491 } else {
6492
6493 }
6494 }
6495 {
6496# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6497 tmp___3 = get_current();
6498# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6499 tmp___4 = signal_pending(tmp___3);
6500 }
6501# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6502 if (tmp___4 == 0) {
6503 {
6504# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6505 schedule();
6506 }
6507# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6508 goto ldv_30578;
6509 } else {
6510
6511 }
6512# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6513 __ret = -512;
6514# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6515 goto ldv_30577;
6516 ldv_30578: ;
6517# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6518 goto ldv_30579;
6519 ldv_30577:
6520 {
6521# 590 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6522 finish_wait(& lo->lo_event, & __wait);
6523 }
6524 } else {
6525
6526 }
6527 } else {
6528
6529 }
6530 {
6531# 594 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6532 tmp___7 = bio_list_empty((struct bio_list const *)(& lo->lo_bio_list));
6533 }
6534# 594 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6535 if (tmp___7 != 0) {
6536# 595 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6537 goto ldv_30581;
6538 } else {
6539
6540 }
6541 {
6542# 596 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6543 spin_lock_irq(& lo->lo_lock);
6544# 597 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6545 bio = loop_get_bio(lo);
6546# 598 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6547 spin_unlock_irq(& lo->lo_lock);
6548# 600 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6549 tmp___8 = __builtin_expect((long )((unsigned long )bio == (unsigned long )((struct bio *)0)),
6550 0L);
6551 }
6552# 600 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6553 if (tmp___8 != 0L) {
6554# 600 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6555 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"),
6556 "i" (600), "i" (12UL));
6557 ldv_30582: ;
6558# 600 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6559 goto ldv_30582;
6560 } else {
6561
6562 }
6563 {
6564# 601 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6565 loop_handle_bio(lo, bio);
6566 }
6567 ldv_30581:
6568 {
6569# 588 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6570 tmp___9 = kthread_should_stop();
6571 }
6572# 588 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6573 if (tmp___9 == 0) {
6574# 589 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6575 goto ldv_30583;
6576 } else {
6577 {
6578# 588 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6579 tmp___10 = bio_list_empty((struct bio_list const *)(& lo->lo_bio_list));
6580 }
6581# 588 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6582 if (tmp___10 == 0) {
6583# 589 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6584 goto ldv_30583;
6585 } else {
6586# 591 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6587 goto ldv_30584;
6588 }
6589 }
6590 ldv_30584: ;
6591# 604 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6592 return (0);
6593}
6594}
6595# 612 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6596static int loop_switch(struct loop_device *lo , struct file *file )
6597{ struct switch_request w ;
6598 struct bio *bio ;
6599 struct bio *tmp ;
6600
6601 {
6602 {
6603# 615 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6604 tmp = bio_alloc(208U, 0);
6605# 615 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6606 bio = tmp;
6607 }
6608# 616 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6609 if ((unsigned long )bio == (unsigned long )((struct bio *)0)) {
6610# 617 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6611 return (-12);
6612 } else {
6613
6614 }
6615 {
6616# 618 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6617 init_completion(& w.wait);
6618# 619 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6619 w.file = file;
6620# 620 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6621 bio->bi_private = (void *)(& w);
6622# 621 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6623 bio->bi_bdev = (struct block_device *)0;
6624# 622 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6625 loop_make_request(lo->lo_queue, bio);
6626# 623 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6627 wait_for_completion(& w.wait);
6628 }
6629# 624 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6630 return (0);
6631}
6632}
6633# 630 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6634static int loop_flush(struct loop_device *lo )
6635{ int tmp ;
6636
6637 {
6638# 633 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6639 if ((unsigned long )lo->lo_thread == (unsigned long )((struct task_struct *)0)) {
6640# 634 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6641 return (0);
6642 } else {
6643
6644 }
6645 {
6646# 636 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6647 tmp = loop_switch(lo, (struct file *)0);
6648 }
6649# 636 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6650 return (tmp);
6651}
6652}
6653# 642 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6654static void do_loop_switch(struct loop_device *lo , struct switch_request *p )
6655{ struct file *file ;
6656 struct file *old_file ;
6657 struct address_space *mapping ;
6658
6659 {
6660# 644 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6661 file = p->file;
6662# 645 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6663 old_file = lo->lo_backing_file;
6664# 649 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6665 if ((unsigned long )file == (unsigned long )((struct file *)0)) {
6666# 650 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6667 goto out;
6668 } else {
6669
6670 }
6671 {
6672# 652 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6673 mapping = file->f_mapping;
6674# 653 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6675 mapping_set_gfp_mask(old_file->f_mapping, lo->old_gfp_mask);
6676# 654 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6677 lo->lo_backing_file = file;
6678 }
6679# 655 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6680 if (((int )(mapping->host)->i_mode & 61440) == 24576) {
6681# 655 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6682 lo->lo_blocksize = ((mapping->host)->ldv_18148.i_bdev)->bd_block_size;
6683 } else {
6684# 655 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6685 lo->lo_blocksize = 4096U;
6686 }
6687 {
6688# 657 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6689 lo->old_gfp_mask = mapping_gfp_mask(mapping);
6690# 658 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6691 mapping_set_gfp_mask(mapping, lo->old_gfp_mask & 4294967103U);
6692 }
6693 out:
6694 {
6695# 660 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6696 complete(& p->wait);
6697 }
6698# 661 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6699 return;
6700}
6701}
6702# 672 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6703static int loop_change_fd(struct loop_device *lo , struct block_device *bdev , unsigned int arg )
6704{ struct file *file ;
6705 struct file *old_file ;
6706 struct inode *inode ;
6707 int error ;
6708 loff_t tmp ;
6709 loff_t tmp___0 ;
6710
6711 {
6712# 679 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6713 error = -6;
6714# 680 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6715 if (lo->lo_state != 1) {
6716# 681 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6717 goto out;
6718 } else {
6719
6720 }
6721# 684 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6722 error = -22;
6723# 685 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6724 if ((lo->lo_flags & 1) == 0) {
6725# 686 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6726 goto out;
6727 } else {
6728
6729 }
6730 {
6731# 688 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6732 error = -9;
6733# 689 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6734 file = fget(arg);
6735 }
6736# 690 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6737 if ((unsigned long )file == (unsigned long )((struct file *)0)) {
6738# 691 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6739 goto out;
6740 } else {
6741
6742 }
6743# 693 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6744 inode = (file->f_mapping)->host;
6745# 694 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6746 old_file = lo->lo_backing_file;
6747# 696 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6748 error = -22;
6749# 698 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6750 if (((int )inode->i_mode & 61440) != 32768) {
6751# 698 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6752 if (((int )inode->i_mode & 61440) != 24576) {
6753# 699 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6754 goto out_putf;
6755 } else {
6756
6757 }
6758 } else {
6759
6760 }
6761 {
6762# 702 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6763 tmp = get_loop_size(lo, file);
6764# 702 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6765 tmp___0 = get_loop_size(lo, old_file);
6766 }
6767# 702 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6768 if (tmp != tmp___0) {
6769# 703 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6770 goto out_putf;
6771 } else {
6772
6773 }
6774 {
6775# 706 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6776 error = loop_switch(lo, file);
6777 }
6778# 707 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6779 if (error != 0) {
6780# 708 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6781 goto out_putf;
6782 } else {
6783
6784 }
6785 {
6786# 710 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6787 fput(old_file);
6788 }
6789# 711 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6790 if (max_part > 0) {
6791 {
6792# 712 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6793 ioctl_by_bdev(bdev, 4703U, 0UL);
6794 }
6795 } else {
6796
6797 }
6798# 713 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6799 return (0);
6800 out_putf:
6801 {
6802# 716 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6803 fput(file);
6804 }
6805 out: ;
6806# 718 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6807 return (error);
6808}
6809}
6810# 721 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6811__inline static int is_loop_device(struct file *file )
6812{ struct inode *i ;
6813 int tmp ;
6814
6815 {
6816# 723 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6817 i = (file->f_mapping)->host;
6818# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6819 if ((unsigned long )i != (unsigned long )((struct inode *)0)) {
6820# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6821 if (((int )i->i_mode & 61440) == 24576) {
6822# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6823 if (i->i_rdev >> 20 == 7U) {
6824# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6825 tmp = 1;
6826 } else {
6827# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6828 tmp = 0;
6829 }
6830 } else {
6831# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6832 tmp = 0;
6833 }
6834 } else {
6835# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6836 tmp = 0;
6837 }
6838# 725 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6839 return (tmp);
6840}
6841}
6842# 730 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6843static ssize_t loop_attr_show(struct device *dev , char *page , ssize_t (*callback)(struct loop_device * ,
6844 char * ) )
6845{ struct loop_device *l ;
6846 struct loop_device *lo ;
6847 struct list_head const *__mptr ;
6848 struct list_head const *__mptr___0 ;
6849 ssize_t tmp ;
6850 ssize_t tmp___0 ;
6851
6852 {
6853 {
6854# 733 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6855 lo = (struct loop_device *)0;
6856# 735 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6857 mutex_lock_nested(& loop_devices_mutex, 0U);
6858# 736 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6859 __mptr = (struct list_head const *)loop_devices.next;
6860# 736 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6861 l = (struct loop_device *)__mptr + 0x0ffffffffffffd70UL;
6862 }
6863# 736 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6864 goto ldv_30632;
6865 ldv_30631: ;
6866# 737 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6867 if ((unsigned long )(& (l->lo_disk)->part0.__dev) == (unsigned long )dev) {
6868# 738 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6869 lo = l;
6870# 739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6871 goto ldv_30630;
6872 } else {
6873
6874 }
6875# 736 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6876 __mptr___0 = (struct list_head const *)l->lo_list.next;
6877# 736 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6878 l = (struct loop_device *)__mptr___0 + 0x0ffffffffffffd70UL;
6879 ldv_30632: ;
6880# 736 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6881 if ((unsigned long )(& l->lo_list) != (unsigned long )(& loop_devices)) {
6882# 737 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6883 goto ldv_30631;
6884 } else {
6885# 739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6886 goto ldv_30630;
6887 }
6888 ldv_30630:
6889 {
6890# 741 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6891 mutex_unlock(& loop_devices_mutex);
6892 }
6893# 743 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6894 if ((unsigned long )lo != (unsigned long )((struct loop_device *)0)) {
6895 {
6896# 743 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6897 tmp = (*callback)(lo, page);
6898# 743 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6899 tmp___0 = tmp;
6900 }
6901 } else {
6902# 743 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6903 tmp___0 = -5L;
6904 }
6905# 743 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6906 return (tmp___0);
6907}
6908}
6909# 756 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6910static ssize_t loop_attr_backing_file_show(struct loop_device *lo , char *buf )
6911{ ssize_t ret ;
6912 char *p ;
6913 size_t tmp ;
6914 ssize_t tmp___0 ;
6915 long tmp___1 ;
6916
6917 {
6918 {
6919# 759 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6920 p = (char *)0;
6921# 761 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6922 mutex_lock_nested(& lo->lo_ctl_mutex, 0U);
6923 }
6924# 762 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6925 if ((unsigned long )lo->lo_backing_file != (unsigned long )((struct file *)0)) {
6926 {
6927# 763 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6928 p = d_path((struct path const *)(& (lo->lo_backing_file)->f_path), buf, 4095);
6929 }
6930 } else {
6931
6932 }
6933 {
6934# 764 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6935 mutex_unlock(& lo->lo_ctl_mutex);
6936# 766 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6937 tmp___1 = IS_ERR_OR_NULL((void const *)p);
6938 }
6939# 766 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6940 if (tmp___1 != 0L) {
6941 {
6942# 767 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6943 ret = PTR_ERR((void const *)p);
6944 }
6945 } else {
6946 {
6947# 769 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6948 tmp = strlen((char const *)p);
6949# 769 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6950 ret = (ssize_t )tmp;
6951# 770 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6952 memmove((void *)buf, (void const *)p, (size_t )ret);
6953# 771 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6954 tmp___0 = ret;
6955# 771 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6956 ret = ret + 1L;
6957# 771 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6958 *(buf + (unsigned long )tmp___0) = (char)10;
6959# 772 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6960 *(buf + (unsigned long )ret) = (char)0;
6961 }
6962 }
6963# 775 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6964 return (ret);
6965}
6966}
6967# 778 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6968static ssize_t loop_attr_offset_show(struct loop_device *lo , char *buf )
6969{ int tmp ;
6970
6971 {
6972 {
6973# 780 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6974 tmp = sprintf(buf, "%llu\n", (unsigned long long )lo->lo_offset);
6975 }
6976# 780 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6977 return ((ssize_t )tmp);
6978}
6979}
6980# 783 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6981static ssize_t loop_attr_sizelimit_show(struct loop_device *lo , char *buf )
6982{ int tmp ;
6983
6984 {
6985 {
6986# 785 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6987 tmp = sprintf(buf, "%llu\n", (unsigned long long )lo->lo_sizelimit);
6988 }
6989# 785 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6990 return ((ssize_t )tmp);
6991}
6992}
6993# 788 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
6994static ssize_t loop_attr_autoclear_show(struct loop_device *lo , char *buf )
6995{ int autoclear ;
6996 char *tmp ;
6997 int tmp___0 ;
6998
6999 {
7000# 790 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7001 autoclear = lo->lo_flags & 4;
7002# 792 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7003 if (autoclear != 0) {
7004# 792 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7005 tmp = (char *)"1";
7006 } else {
7007# 792 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7008 tmp = (char *)"0";
7009 }
7010 {
7011# 792 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7012 tmp___0 = sprintf(buf, "%s\n", tmp);
7013 }
7014# 792 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7015 return ((ssize_t )tmp___0);
7016}
7017}
7018# 795 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7019static ssize_t loop_attr_do_show_backing_file(struct device *d , struct device_attribute *attr ,
7020 char *b )
7021{ ssize_t tmp ;
7022
7023 {
7024 {
7025# 795 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7026 tmp = loop_attr_show(d, b, & loop_attr_backing_file_show);
7027 }
7028# 795 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7029 return (tmp);
7030}
7031}
7032# 795 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7033static struct device_attribute loop_attr_backing_file = {{"backing_file", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
7034 {(char)0}, {(char)0}, {(char)0},
7035 {(char)0}, {(char)0}}}},
7036 & loop_attr_do_show_backing_file, (ssize_t (*)(struct device * , struct device_attribute * ,
7037 char const * , size_t ))0};
7038# 796 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7039static ssize_t loop_attr_do_show_offset(struct device *d , struct device_attribute *attr ,
7040 char *b )
7041{ ssize_t tmp ;
7042
7043 {
7044 {
7045# 796 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7046 tmp = loop_attr_show(d, b, & loop_attr_offset_show);
7047 }
7048# 796 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7049 return (tmp);
7050}
7051}
7052# 796 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7053static struct device_attribute loop_attr_offset = {{"offset", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
7054 {(char)0}, {(char)0}, {(char)0},
7055 {(char)0}, {(char)0}}}}, & loop_attr_do_show_offset,
7056 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
7057# 797 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7058static ssize_t loop_attr_do_show_sizelimit(struct device *d , struct device_attribute *attr ,
7059 char *b )
7060{ ssize_t tmp ;
7061
7062 {
7063 {
7064# 797 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7065 tmp = loop_attr_show(d, b, & loop_attr_sizelimit_show);
7066 }
7067# 797 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7068 return (tmp);
7069}
7070}
7071# 797 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7072static struct device_attribute loop_attr_sizelimit = {{"sizelimit", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
7073 {(char)0}, {(char)0}, {(char)0},
7074 {(char)0}, {(char)0}}}}, & loop_attr_do_show_sizelimit,
7075 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
7076# 798 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7077static ssize_t loop_attr_do_show_autoclear(struct device *d , struct device_attribute *attr ,
7078 char *b )
7079{ ssize_t tmp ;
7080
7081 {
7082 {
7083# 798 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7084 tmp = loop_attr_show(d, b, & loop_attr_autoclear_show);
7085 }
7086# 798 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7087 return (tmp);
7088}
7089}
7090# 798 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7091static struct device_attribute loop_attr_autoclear = {{"autoclear", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
7092 {(char)0}, {(char)0}, {(char)0},
7093 {(char)0}, {(char)0}}}}, & loop_attr_do_show_autoclear,
7094 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
7095# 800 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7096static struct attribute *loop_attrs[5U] = { & loop_attr_backing_file.attr, & loop_attr_offset.attr, & loop_attr_sizelimit.attr, & loop_attr_autoclear.attr,
7097 (struct attribute *)0};
7098# 808 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7099static struct attribute_group loop_attribute_group = {"loop", (mode_t (*)(struct kobject * , struct attribute * , int ))0, (struct attribute **)(& loop_attrs)};
7100# 813 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7101static int loop_sysfs_init(struct loop_device *lo )
7102{ int tmp ;
7103
7104 {
7105 {
7106# 815 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7107 tmp = sysfs_create_group(& (lo->lo_disk)->part0.__dev.kobj, (struct attribute_group const *)(& loop_attribute_group));
7108 }
7109# 815 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7110 return (tmp);
7111}
7112}
7113# 819 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7114static void loop_sysfs_exit(struct loop_device *lo )
7115{
7116
7117 {
7118 {
7119# 821 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7120 sysfs_remove_group(& (lo->lo_disk)->part0.__dev.kobj, (struct attribute_group const *)(& loop_attribute_group));
7121 }
7122# 823 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7123 return;
7124}
7125}
7126# 825 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7127static int loop_set_fd(struct loop_device *lo , fmode_t mode , struct block_device *bdev ,
7128 unsigned int arg )
7129{ struct file *file ;
7130 struct file *f ;
7131 struct inode *inode ;
7132 struct address_space *mapping ;
7133 unsigned int lo_blocksize ;
7134 int lo_flags ;
7135 int error ;
7136 loff_t size ;
7137 struct loop_device *l ;
7138 int tmp ;
7139 struct address_space_operations const *aops ;
7140 long tmp___0 ;
7141 long tmp___1 ;
7142
7143 {
7144 {
7145# 832 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7146 lo_flags = 0;
7147# 837 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7148 ldv___module_get_1(& __this_module);
7149# 839 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7150 error = -9;
7151# 840 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7152 file = fget(arg);
7153 }
7154# 841 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7155 if ((unsigned long )file == (unsigned long )((struct file *)0)) {
7156# 842 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7157 goto out;
7158 } else {
7159
7160 }
7161# 844 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7162 error = -16;
7163# 845 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7164 if (lo->lo_state != 0) {
7165# 846 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7166 goto out_putf;
7167 } else {
7168
7169 }
7170# 849 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7171 f = file;
7172# 850 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7173 goto ldv_30722;
7174 ldv_30721: ;
7175# 853 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7176 if ((unsigned long )((f->f_mapping)->host)->ldv_18148.i_bdev == (unsigned long )bdev) {
7177# 854 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7178 goto out_putf;
7179 } else {
7180
7181 }
7182# 856 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7183 l = (struct loop_device *)((((f->f_mapping)->host)->ldv_18148.i_bdev)->bd_disk)->private_data;
7184# 857 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7185 if (l->lo_state == 0) {
7186# 858 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7187 error = -22;
7188# 859 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7189 goto out_putf;
7190 } else {
7191
7192 }
7193# 861 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7194 f = l->lo_backing_file;
7195 ldv_30722:
7196 {
7197# 850 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7198 tmp = is_loop_device(f);
7199 }
7200# 850 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7201 if (tmp != 0) {
7202# 851 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7203 goto ldv_30721;
7204 } else {
7205# 853 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7206 goto ldv_30723;
7207 }
7208 ldv_30723:
7209# 864 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7210 mapping = file->f_mapping;
7211# 865 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7212 inode = mapping->host;
7213# 867 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7214 if ((file->f_mode & 2U) == 0U) {
7215# 868 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7216 lo_flags = lo_flags | 1;
7217 } else {
7218
7219 }
7220# 870 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7221 error = -22;
7222# 871 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7223 if (((int )inode->i_mode & 61440) == 32768) {
7224# 871 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7225 goto _L;
7226 } else
7227# 871 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7228 if (((int )inode->i_mode & 61440) == 24576) {
7229 _L:
7230# 872 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7231 aops = mapping->a_ops;
7232# 874 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7233 if ((unsigned long )aops->write_begin != (unsigned long )((int (* const )(struct file * ,
7234 struct address_space * ,
7235 loff_t ,
7236 unsigned int ,
7237 unsigned int ,
7238 struct page ** ,
7239 void ** ))0)) {
7240# 875 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7241 lo_flags = lo_flags | 2;
7242 } else {
7243
7244 }
7245# 876 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7246 if ((lo_flags & 2) == 0) {
7247# 876 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7248 if ((unsigned long )(file->f_op)->write == (unsigned long )((ssize_t (* const )(struct file * ,
7249 char const * ,
7250 size_t ,
7251 loff_t * ))0)) {
7252# 877 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7253 lo_flags = lo_flags | 1;
7254 } else {
7255
7256 }
7257 } else {
7258
7259 }
7260# 879 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7261 if (((int )inode->i_mode & 61440) == 24576) {
7262# 879 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7263 lo_blocksize = (inode->ldv_18148.i_bdev)->bd_block_size;
7264 } else {
7265# 879 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7266 lo_blocksize = 4096U;
7267 }
7268# 882 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7269 error = 0;
7270 } else {
7271# 884 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7272 goto out_putf;
7273 }
7274 {
7275# 887 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7276 size = get_loop_size(lo, file);
7277 }
7278# 894 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7279 if ((mode & 2U) == 0U) {
7280# 895 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7281 lo_flags = lo_flags | 1;
7282 } else {
7283
7284 }
7285 {
7286# 897 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7287 set_device_ro(bdev, lo_flags & 1);
7288# 899 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7289 lo->lo_blocksize = lo_blocksize;
7290# 900 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7291 lo->lo_device = bdev;
7292# 901 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7293 lo->lo_flags = lo_flags;
7294# 902 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7295 lo->lo_backing_file = file;
7296# 903 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7297 lo->transfer = & transfer_none;
7298# 904 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7299 lo->ioctl = (int (*)(struct loop_device * , int , unsigned long ))0;
7300# 905 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7301 lo->lo_sizelimit = 0LL;
7302# 906 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7303 lo->old_gfp_mask = mapping_gfp_mask(mapping);
7304# 907 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7305 mapping_set_gfp_mask(mapping, lo->old_gfp_mask & 4294967103U);
7306# 909 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7307 bio_list_init(& lo->lo_bio_list);
7308# 915 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7309 blk_queue_make_request(lo->lo_queue, & loop_make_request);
7310# 916 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7311 (lo->lo_queue)->queuedata = (void *)lo;
7312 }
7313# 918 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7314 if ((lo_flags & 1) == 0) {
7315# 918 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7316 if ((unsigned long )(file->f_op)->fsync != (unsigned long )((int (* const )(struct file * ,
7317 int ))0)) {
7318 {
7319# 919 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7320 blk_queue_flush(lo->lo_queue, 8388608U);
7321 }
7322 } else {
7323
7324 }
7325 } else {
7326
7327 }
7328 {
7329# 921 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7330 set_capacity(lo->lo_disk, (sector_t )size);
7331# 922 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7332 bd_set_size(bdev, size << 9);
7333# 923 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7334 loop_sysfs_init(lo);
7335# 925 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7336 kobject_uevent(& (bdev->bd_disk)->part0.__dev.kobj, (enum kobject_action )2);
7337# 927 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7338 set_blocksize(bdev, (int )lo_blocksize);
7339# 929 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7340 lo->lo_thread = kthread_create_on_node(& loop_thread, (void *)lo, -1, "loop%d",
7341 lo->lo_number);
7342# 931 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7343 tmp___1 = IS_ERR((void const *)lo->lo_thread);
7344 }
7345# 931 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7346 if (tmp___1 != 0L) {
7347 {
7348# 932 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7349 tmp___0 = PTR_ERR((void const *)lo->lo_thread);
7350# 932 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7351 error = (int )tmp___0;
7352 }
7353# 933 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7354 goto out_clr;
7355 } else {
7356
7357 }
7358 {
7359# 935 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7360 lo->lo_state = 1;
7361# 936 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7362 wake_up_process(lo->lo_thread);
7363 }
7364# 937 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7365 if (max_part > 0) {
7366 {
7367# 938 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7368 ioctl_by_bdev(bdev, 4703U, 0UL);
7369 }
7370 } else {
7371
7372 }
7373# 939 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7374 return (0);
7375 out_clr:
7376 {
7377# 942 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7378 loop_sysfs_exit(lo);
7379# 943 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7380 lo->lo_thread = (struct task_struct *)0;
7381# 944 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7382 lo->lo_device = (struct block_device *)0;
7383# 945 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7384 lo->lo_backing_file = (struct file *)0;
7385# 946 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7386 lo->lo_flags = 0;
7387# 947 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7388 set_capacity(lo->lo_disk, 0UL);
7389# 948 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7390 invalidate_bdev(bdev);
7391# 949 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7392 bd_set_size(bdev, 0LL);
7393# 950 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7394 kobject_uevent(& (bdev->bd_disk)->part0.__dev.kobj, (enum kobject_action )2);
7395# 951 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7396 mapping_set_gfp_mask(mapping, lo->old_gfp_mask);
7397# 952 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7398 lo->lo_state = 0;
7399 }
7400 out_putf:
7401 {
7402# 954 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7403 fput(file);
7404 }
7405 out:
7406 {
7407# 957 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7408 ldv_module_put_2(& __this_module);
7409 }
7410# 958 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7411 return (error);
7412}
7413}
7414# 962 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7415static int loop_release_xfer(struct loop_device *lo )
7416{ int err ;
7417 struct loop_func_table *xfer ;
7418
7419 {
7420# 964 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7421 err = 0;
7422# 965 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7423 xfer = lo->lo_encryption;
7424# 967 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7425 if ((unsigned long )xfer != (unsigned long )((struct loop_func_table *)0)) {
7426# 968 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7427 if ((unsigned long )xfer->release != (unsigned long )((int (*)(struct loop_device * ))0)) {
7428 {
7429# 969 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7430 err = (*(xfer->release))(lo);
7431 }
7432 } else {
7433
7434 }
7435 {
7436# 970 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7437 lo->transfer = (int (*)(struct loop_device * , int , struct page * , unsigned int ,
7438 struct page * , unsigned int , int , sector_t ))0;
7439# 971 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7440 lo->lo_encryption = (struct loop_func_table *)0;
7441# 972 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7442 ldv_module_put_3(xfer->owner);
7443 }
7444 } else {
7445
7446 }
7447# 974 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7448 return (err);
7449}
7450}
7451# 978 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7452static int loop_init_xfer(struct loop_device *lo , struct loop_func_table *xfer ,
7453 struct loop_info64 const *i )
7454{ int err ;
7455 struct module *owner ;
7456 int tmp ;
7457
7458 {
7459# 981 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7460 err = 0;
7461# 983 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7462 if ((unsigned long )xfer != (unsigned long )((struct loop_func_table *)0)) {
7463 {
7464# 984 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7465 owner = xfer->owner;
7466# 986 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7467 tmp = ldv_try_module_get_4(owner);
7468 }
7469# 986 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7470 if (tmp == 0) {
7471# 987 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7472 return (-22);
7473 } else {
7474
7475 }
7476# 988 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7477 if ((unsigned long )xfer->init != (unsigned long )((int (*)(struct loop_device * ,
7478 struct loop_info64 const * ))0)) {
7479 {
7480# 989 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7481 err = (*(xfer->init))(lo, i);
7482 }
7483 } else {
7484
7485 }
7486# 990 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7487 if (err != 0) {
7488 {
7489# 991 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7490 ldv_module_put_5(owner);
7491 }
7492 } else {
7493# 993 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7494 lo->lo_encryption = xfer;
7495 }
7496 } else {
7497
7498 }
7499# 995 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7500 return (err);
7501}
7502}
7503# 998 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7504static int loop_clr_fd(struct loop_device *lo , struct block_device *bdev )
7505{ struct file *filp ;
7506 gfp_t gfp ;
7507
7508 {
7509# 1000 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7510 filp = lo->lo_backing_file;
7511# 1001 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7512 gfp = lo->old_gfp_mask;
7513# 1003 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7514 if (lo->lo_state != 1) {
7515# 1004 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7516 return (-6);
7517 } else {
7518
7519 }
7520# 1006 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7521 if (lo->lo_refcnt > 1) {
7522# 1007 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7523 return (-16);
7524 } else {
7525
7526 }
7527# 1009 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7528 if ((unsigned long )filp == (unsigned long )((struct file *)0)) {
7529# 1010 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7530 return (-22);
7531 } else {
7532
7533 }
7534 {
7535# 1012 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7536 spin_lock_irq(& lo->lo_lock);
7537# 1013 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7538 lo->lo_state = 2;
7539# 1014 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7540 spin_unlock_irq(& lo->lo_lock);
7541# 1016 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7542 kthread_stop(lo->lo_thread);
7543# 1018 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7544 lo->lo_backing_file = (struct file *)0;
7545# 1020 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7546 loop_release_xfer(lo);
7547# 1021 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7548 lo->transfer = (int (*)(struct loop_device * , int , struct page * , unsigned int ,
7549 struct page * , unsigned int , int , sector_t ))0;
7550# 1022 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7551 lo->ioctl = (int (*)(struct loop_device * , int , unsigned long ))0;
7552# 1023 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7553 lo->lo_device = (struct block_device *)0;
7554# 1024 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7555 lo->lo_encryption = (struct loop_func_table *)0;
7556# 1025 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7557 lo->lo_offset = 0LL;
7558# 1026 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7559 lo->lo_sizelimit = 0LL;
7560# 1027 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7561 lo->lo_encrypt_key_size = 0;
7562# 1028 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7563 lo->lo_flags = 0;
7564# 1029 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7565 lo->lo_thread = (struct task_struct *)0;
7566# 1030 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7567 memset((void *)(& lo->lo_encrypt_key), 0, 32UL);
7568# 1031 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7569 memset((void *)(& lo->lo_crypt_name), 0, 64UL);
7570# 1032 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7571 memset((void *)(& lo->lo_file_name), 0, 64UL);
7572 }
7573# 1033 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7574 if ((unsigned long )bdev != (unsigned long )((struct block_device *)0)) {
7575 {
7576# 1034 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7577 invalidate_bdev(bdev);
7578 }
7579 } else {
7580
7581 }
7582 {
7583# 1035 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7584 set_capacity(lo->lo_disk, 0UL);
7585# 1036 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7586 loop_sysfs_exit(lo);
7587 }
7588# 1037 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7589 if ((unsigned long )bdev != (unsigned long )((struct block_device *)0)) {
7590 {
7591# 1038 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7592 bd_set_size(bdev, 0LL);
7593# 1040 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7594 kobject_uevent(& (bdev->bd_disk)->part0.__dev.kobj, (enum kobject_action )2);
7595 }
7596 } else {
7597
7598 }
7599 {
7600# 1042 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7601 mapping_set_gfp_mask(filp->f_mapping, gfp);
7602# 1043 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7603 lo->lo_state = 0;
7604# 1045 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7605 ldv_module_put_6(& __this_module);
7606 }
7607# 1046 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7608 if (max_part > 0) {
7609# 1046 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7610 if ((unsigned long )bdev != (unsigned long )((struct block_device *)0)) {
7611 {
7612# 1047 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7613 ioctl_by_bdev(bdev, 4703U, 0UL);
7614 }
7615 } else {
7616
7617 }
7618 } else {
7619
7620 }
7621 {
7622# 1048 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7623 mutex_unlock(& lo->lo_ctl_mutex);
7624# 1055 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7625 fput(filp);
7626 }
7627# 1056 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7628 return (0);
7629}
7630}
7631# 1060 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7632static int loop_set_status(struct loop_device *lo , struct loop_info64 const *info )
7633{ int err ;
7634 struct loop_func_table *xfer ;
7635 uid_t uid ;
7636 struct task_struct *tmp ;
7637 bool tmp___0 ;
7638 int tmp___1 ;
7639 unsigned int type ;
7640 int tmp___2 ;
7641 size_t __len ;
7642 void *__ret ;
7643 size_t __len___0 ;
7644 void *__ret___0 ;
7645 size_t __len___1 ;
7646 void *__ret___1 ;
7647
7648 {
7649 {
7650# 1064 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7651 tmp = get_current();
7652# 1064 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7653 uid = (uid_t )(tmp->cred)->uid;
7654 }
7655# 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7656 if (lo->lo_encrypt_key_size != 0) {
7657# 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7658 if (lo->lo_key_owner != uid) {
7659 {
7660# 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7661 tmp___0 = capable(21);
7662 }
7663# 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7664 if (tmp___0) {
7665# 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7666 tmp___1 = 0;
7667 } else {
7668# 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7669 tmp___1 = 1;
7670 }
7671# 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7672 if (tmp___1) {
7673# 1069 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7674 return (-1);
7675 } else {
7676
7677 }
7678 } else {
7679
7680 }
7681 } else {
7682
7683 }
7684# 1070 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7685 if (lo->lo_state != 1) {
7686# 1071 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7687 return (-6);
7688 } else {
7689
7690 }
7691# 1072 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7692 if ((unsigned int )info->lo_encrypt_key_size > 32U) {
7693# 1073 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7694 return (-22);
7695 } else {
7696
7697 }
7698 {
7699# 1075 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7700 err = loop_release_xfer(lo);
7701 }
7702# 1076 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7703 if (err != 0) {
7704# 1077 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7705 return (err);
7706 } else {
7707
7708 }
7709# 1079 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7710 if ((unsigned int )info->lo_encrypt_type != 0U) {
7711# 1080 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7712 type = (unsigned int )info->lo_encrypt_type;
7713# 1082 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7714 if (type > 19U) {
7715# 1083 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7716 return (-22);
7717 } else {
7718
7719 }
7720# 1084 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7721 xfer = xfer_funcs[type];
7722# 1085 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7723 if ((unsigned long )xfer == (unsigned long )((struct loop_func_table *)0)) {
7724# 1086 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7725 return (-22);
7726 } else {
7727
7728 }
7729 } else {
7730# 1088 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7731 xfer = (struct loop_func_table *)0;
7732 }
7733 {
7734# 1090 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7735 err = loop_init_xfer(lo, xfer, info);
7736 }
7737# 1091 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7738 if (err != 0) {
7739# 1092 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7740 return (err);
7741 } else {
7742
7743 }
7744# 1094 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7745 if ((unsigned long long )lo->lo_offset != (unsigned long long )info->lo_offset) {
7746# 1094 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7747 goto _L;
7748 } else
7749# 1094 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7750 if ((unsigned long long )lo->lo_sizelimit != (unsigned long long )info->lo_sizelimit) {
7751 _L:
7752 {
7753# 1096 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7754 lo->lo_offset = (loff_t )info->lo_offset;
7755# 1097 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7756 lo->lo_sizelimit = (loff_t )info->lo_sizelimit;
7757# 1098 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7758 tmp___2 = figure_loop_size(lo);
7759 }
7760# 1098 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7761 if (tmp___2 != 0) {
7762# 1099 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7763 return (-27);
7764 } else {
7765
7766 }
7767 } else {
7768
7769 }
7770# 1102 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7771 __len = 64UL;
7772# 1102 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7773 if (__len > 63UL) {
7774 {
7775# 1102 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7776 __ret = __memcpy((void *)(& lo->lo_file_name), (void const *)(& info->lo_file_name),
7777 __len);
7778 }
7779 } else {
7780 {
7781# 1102 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7782 __ret = __builtin_memcpy((void *)(& lo->lo_file_name), (void const *)(& info->lo_file_name),
7783 __len);
7784 }
7785 }
7786# 1103 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7787 __len___0 = 64UL;
7788# 1103 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7789 if (__len___0 > 63UL) {
7790 {
7791# 1103 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7792 __ret___0 = __memcpy((void *)(& lo->lo_crypt_name), (void const *)(& info->lo_crypt_name),
7793 __len___0);
7794 }
7795 } else {
7796 {
7797# 1103 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7798 __ret___0 = __builtin_memcpy((void *)(& lo->lo_crypt_name), (void const *)(& info->lo_crypt_name),
7799 __len___0);
7800 }
7801 }
7802# 1104 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7803 lo->lo_file_name[63] = (char)0;
7804# 1105 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7805 lo->lo_crypt_name[63] = (char)0;
7806# 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7807 if ((unsigned long )xfer == (unsigned long )((struct loop_func_table *)0)) {
7808# 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7809 xfer = & none_funcs;
7810 } else {
7811
7812 }
7813# 1109 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7814 lo->transfer = xfer->transfer;
7815# 1110 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7816 lo->ioctl = xfer->ioctl;
7817# 1112 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7818 if ((((unsigned int )lo->lo_flags ^ (unsigned int )info->lo_flags) & 4U) != 0U) {
7819# 1114 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7820 lo->lo_flags = lo->lo_flags ^ 4;
7821 } else {
7822
7823 }
7824# 1116 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7825 lo->lo_encrypt_key_size = (int )info->lo_encrypt_key_size;
7826# 1117 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7827 lo->lo_init[0] = (__u32 )info->lo_init[0];
7828# 1118 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7829 lo->lo_init[1] = (__u32 )info->lo_init[1];
7830# 1119 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7831 if ((unsigned int )info->lo_encrypt_key_size != 0U) {
7832 {
7833# 1120 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7834 __len___1 = (size_t )info->lo_encrypt_key_size;
7835# 1120 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7836 __ret___1 = __builtin_memcpy((void *)(& lo->lo_encrypt_key), (void const *)(& info->lo_encrypt_key),
7837 __len___1);
7838# 1122 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7839 lo->lo_key_owner = uid;
7840 }
7841 } else {
7842
7843 }
7844# 1125 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7845 return (0);
7846}
7847}
7848# 1129 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7849static int loop_get_status(struct loop_device *lo , struct loop_info64 *info )
7850{ struct file *file ;
7851 struct kstat stat ;
7852 int error ;
7853 dev_t tmp ;
7854 size_t __len ;
7855 void *__ret ;
7856 size_t __len___0 ;
7857 void *__ret___0 ;
7858 size_t __len___1 ;
7859 void *__ret___1 ;
7860 bool tmp___0 ;
7861
7862 {
7863# 1131 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7864 file = lo->lo_backing_file;
7865# 1135 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7866 if (lo->lo_state != 1) {
7867# 1136 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7868 return (-6);
7869 } else {
7870
7871 }
7872 {
7873# 1137 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7874 error = vfs_getattr(file->f_path.mnt, file->f_path.dentry, & stat);
7875 }
7876# 1138 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7877 if (error != 0) {
7878# 1139 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7879 return (error);
7880 } else {
7881
7882 }
7883 {
7884# 1140 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7885 memset((void *)info, 0, 232UL);
7886# 1141 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7887 info->lo_number = (__u32 )lo->lo_number;
7888# 1142 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7889 info->lo_device = huge_encode_dev(stat.dev);
7890# 1143 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7891 info->lo_inode = stat.ino;
7892 }
7893# 1144 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7894 if ((unsigned long )lo->lo_device != (unsigned long )((struct block_device *)0)) {
7895# 1144 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7896 tmp = stat.rdev;
7897 } else {
7898# 1144 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7899 tmp = stat.dev;
7900 }
7901 {
7902# 1144 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7903 info->lo_rdevice = huge_encode_dev(tmp);
7904# 1145 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7905 info->lo_offset = (__u64 )lo->lo_offset;
7906# 1146 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7907 info->lo_sizelimit = (__u64 )lo->lo_sizelimit;
7908# 1147 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7909 info->lo_flags = (__u32 )lo->lo_flags;
7910# 1148 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7911 __len = 64UL;
7912 }
7913# 1148 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7914 if (__len > 63UL) {
7915 {
7916# 1148 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7917 __ret = __memcpy((void *)(& info->lo_file_name), (void const *)(& lo->lo_file_name),
7918 __len);
7919 }
7920 } else {
7921 {
7922# 1148 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7923 __ret = __builtin_memcpy((void *)(& info->lo_file_name), (void const *)(& lo->lo_file_name),
7924 __len);
7925 }
7926 }
7927# 1149 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7928 __len___0 = 64UL;
7929# 1149 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7930 if (__len___0 > 63UL) {
7931 {
7932# 1149 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7933 __ret___0 = __memcpy((void *)(& info->lo_crypt_name), (void const *)(& lo->lo_crypt_name),
7934 __len___0);
7935 }
7936 } else {
7937 {
7938# 1149 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7939 __ret___0 = __builtin_memcpy((void *)(& info->lo_crypt_name), (void const *)(& lo->lo_crypt_name),
7940 __len___0);
7941 }
7942 }
7943# 1150 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7944 if ((unsigned long )lo->lo_encryption != (unsigned long )((struct loop_func_table *)0)) {
7945# 1150 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7946 info->lo_encrypt_type = (__u32 )(lo->lo_encryption)->number;
7947 } else {
7948# 1150 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7949 info->lo_encrypt_type = 0U;
7950 }
7951# 1152 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7952 if (lo->lo_encrypt_key_size != 0) {
7953 {
7954# 1152 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7955 tmp___0 = capable(21);
7956 }
7957# 1152 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7958 if ((int )tmp___0) {
7959 {
7960# 1153 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7961 info->lo_encrypt_key_size = (__u32 )lo->lo_encrypt_key_size;
7962# 1154 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7963 __len___1 = (size_t )lo->lo_encrypt_key_size;
7964# 1154 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7965 __ret___1 = __builtin_memcpy((void *)(& info->lo_encrypt_key), (void const *)(& lo->lo_encrypt_key),
7966 __len___1);
7967 }
7968 } else {
7969
7970 }
7971 } else {
7972
7973 }
7974# 1157 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7975 return (0);
7976}
7977}
7978# 1161 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7979static void loop_info64_from_old(struct loop_info const *info , struct loop_info64 *info64 )
7980{ size_t __len ;
7981 void *__ret ;
7982 size_t __len___0 ;
7983 void *__ret___0 ;
7984 size_t __len___1 ;
7985 void *__ret___1 ;
7986
7987 {
7988 {
7989# 1163 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7990 memset((void *)info64, 0, 232UL);
7991# 1164 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7992 info64->lo_number = (__u32 )info->lo_number;
7993# 1165 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7994 info64->lo_device = (__u64 )info->lo_device;
7995# 1166 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7996 info64->lo_inode = (__u64 )info->lo_inode;
7997# 1167 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
7998 info64->lo_rdevice = (__u64 )info->lo_rdevice;
7999# 1168 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8000 info64->lo_offset = (__u64 )info->lo_offset;
8001# 1169 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8002 info64->lo_sizelimit = 0ULL;
8003# 1170 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8004 info64->lo_encrypt_type = (__u32 )info->lo_encrypt_type;
8005# 1171 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8006 info64->lo_encrypt_key_size = (__u32 )info->lo_encrypt_key_size;
8007# 1172 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8008 info64->lo_flags = (__u32 )info->lo_flags;
8009# 1173 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8010 info64->lo_init[0] = (__u64 )info->lo_init[0];
8011# 1174 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8012 info64->lo_init[1] = (__u64 )info->lo_init[1];
8013 }
8014# 1175 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8015 if ((int )info->lo_encrypt_type == 18) {
8016# 1176 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8017 __len = 64UL;
8018# 1176 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8019 if (__len > 63UL) {
8020 {
8021# 1176 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8022 __ret = __memcpy((void *)(& info64->lo_crypt_name), (void const *)(& info->lo_name),
8023 __len);
8024 }
8025 } else {
8026 {
8027# 1176 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8028 __ret = __builtin_memcpy((void *)(& info64->lo_crypt_name), (void const *)(& info->lo_name),
8029 __len);
8030 }
8031 }
8032 } else {
8033# 1178 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8034 __len___0 = 64UL;
8035# 1178 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8036 if (__len___0 > 63UL) {
8037 {
8038# 1178 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8039 __ret___0 = __memcpy((void *)(& info64->lo_file_name), (void const *)(& info->lo_name),
8040 __len___0);
8041 }
8042 } else {
8043 {
8044# 1178 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8045 __ret___0 = __builtin_memcpy((void *)(& info64->lo_file_name), (void const *)(& info->lo_name),
8046 __len___0);
8047 }
8048 }
8049 }
8050# 1179 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8051 __len___1 = 32UL;
8052# 1179 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8053 if (__len___1 > 63UL) {
8054 {
8055# 1179 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8056 __ret___1 = __memcpy((void *)(& info64->lo_encrypt_key), (void const *)(& info->lo_encrypt_key),
8057 __len___1);
8058 }
8059 } else {
8060 {
8061# 1179 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8062 __ret___1 = __builtin_memcpy((void *)(& info64->lo_encrypt_key), (void const *)(& info->lo_encrypt_key),
8063 __len___1);
8064 }
8065 }
8066# 1181 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8067 return;
8068}
8069}
8070# 1183 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8071static int loop_info64_to_old(struct loop_info64 const *info64 , struct loop_info *info )
8072{ size_t __len ;
8073 void *__ret ;
8074 size_t __len___0 ;
8075 void *__ret___0 ;
8076 size_t __len___1 ;
8077 void *__ret___1 ;
8078
8079 {
8080 {
8081# 1185 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8082 memset((void *)info, 0, 168UL);
8083# 1186 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8084 info->lo_number = (int )info64->lo_number;
8085# 1187 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8086 info->lo_device = (__kernel_old_dev_t )info64->lo_device;
8087# 1188 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8088 info->lo_inode = (unsigned long )info64->lo_inode;
8089# 1189 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8090 info->lo_rdevice = (__kernel_old_dev_t )info64->lo_rdevice;
8091# 1190 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8092 info->lo_offset = (int )info64->lo_offset;
8093# 1191 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8094 info->lo_encrypt_type = (int )info64->lo_encrypt_type;
8095# 1192 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8096 info->lo_encrypt_key_size = (int )info64->lo_encrypt_key_size;
8097# 1193 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8098 info->lo_flags = (int )info64->lo_flags;
8099# 1194 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8100 info->lo_init[0] = (unsigned long )info64->lo_init[0];
8101# 1195 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8102 info->lo_init[1] = (unsigned long )info64->lo_init[1];
8103 }
8104# 1196 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8105 if (info->lo_encrypt_type == 18) {
8106# 1197 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8107 __len = 64UL;
8108# 1197 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8109 if (__len > 63UL) {
8110 {
8111# 1197 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8112 __ret = __memcpy((void *)(& info->lo_name), (void const *)(& info64->lo_crypt_name),
8113 __len);
8114 }
8115 } else {
8116 {
8117# 1197 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8118 __ret = __builtin_memcpy((void *)(& info->lo_name), (void const *)(& info64->lo_crypt_name),
8119 __len);
8120 }
8121 }
8122 } else {
8123# 1199 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8124 __len___0 = 64UL;
8125# 1199 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8126 if (__len___0 > 63UL) {
8127 {
8128# 1199 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8129 __ret___0 = __memcpy((void *)(& info->lo_name), (void const *)(& info64->lo_file_name),
8130 __len___0);
8131 }
8132 } else {
8133 {
8134# 1199 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8135 __ret___0 = __builtin_memcpy((void *)(& info->lo_name), (void const *)(& info64->lo_file_name),
8136 __len___0);
8137 }
8138 }
8139 }
8140# 1200 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8141 __len___1 = 32UL;
8142# 1200 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8143 if (__len___1 > 63UL) {
8144 {
8145# 1200 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8146 __ret___1 = __memcpy((void *)(& info->lo_encrypt_key), (void const *)(& info64->lo_encrypt_key),
8147 __len___1);
8148 }
8149 } else {
8150 {
8151# 1200 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8152 __ret___1 = __builtin_memcpy((void *)(& info->lo_encrypt_key), (void const *)(& info64->lo_encrypt_key),
8153 __len___1);
8154 }
8155 }
8156# 1203 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8157 if ((unsigned long long )info->lo_device != (unsigned long long )info64->lo_device) {
8158# 1207 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8159 return (-75);
8160 } else
8161# 1203 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8162 if ((unsigned long long )info->lo_rdevice != (unsigned long long )info64->lo_rdevice) {
8163# 1207 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8164 return (-75);
8165 } else
8166# 1203 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8167 if ((unsigned long long )info->lo_inode != (unsigned long long )info64->lo_inode) {
8168# 1207 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8169 return (-75);
8170 } else
8171# 1203 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8172 if ((unsigned long long )info->lo_offset != (unsigned long long )info64->lo_offset) {
8173# 1207 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8174 return (-75);
8175 } else {
8176
8177 }
8178# 1209 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8179 return (0);
8180}
8181}
8182# 1213 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8183static int loop_set_status_old(struct loop_device *lo , struct loop_info const *arg )
8184{ struct loop_info info ;
8185 struct loop_info64 info64 ;
8186 unsigned long tmp ;
8187 int tmp___0 ;
8188
8189 {
8190 {
8191# 1218 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8192 tmp = copy_from_user((void *)(& info), (void const *)arg, 168UL);
8193 }
8194# 1218 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8195 if (tmp != 0UL) {
8196# 1219 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8197 return (-14);
8198 } else {
8199
8200 }
8201 {
8202# 1220 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8203 loop_info64_from_old((struct loop_info const *)(& info), & info64);
8204# 1221 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8205 tmp___0 = loop_set_status(lo, (struct loop_info64 const *)(& info64));
8206 }
8207# 1221 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8208 return (tmp___0);
8209}
8210}
8211# 1225 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8212static int loop_set_status64(struct loop_device *lo , struct loop_info64 const *arg )
8213{ struct loop_info64 info64 ;
8214 unsigned long tmp ;
8215 int tmp___0 ;
8216
8217 {
8218 {
8219# 1229 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8220 tmp = copy_from_user((void *)(& info64), (void const *)arg, 232UL);
8221 }
8222# 1229 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8223 if (tmp != 0UL) {
8224# 1230 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8225 return (-14);
8226 } else {
8227
8228 }
8229 {
8230# 1231 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8231 tmp___0 = loop_set_status(lo, (struct loop_info64 const *)(& info64));
8232 }
8233# 1231 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8234 return (tmp___0);
8235}
8236}
8237# 1235 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8238static int loop_get_status_old(struct loop_device *lo , struct loop_info *arg )
8239{ struct loop_info info ;
8240 struct loop_info64 info64 ;
8241 int err ;
8242 int tmp ;
8243
8244 {
8245# 1238 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8246 err = 0;
8247# 1240 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8248 if ((unsigned long )arg == (unsigned long )((struct loop_info *)0)) {
8249# 1241 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8250 err = -22;
8251 } else {
8252
8253 }
8254# 1242 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8255 if (err == 0) {
8256 {
8257# 1243 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8258 err = loop_get_status(lo, & info64);
8259 }
8260 } else {
8261
8262 }
8263# 1244 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8264 if (err == 0) {
8265 {
8266# 1245 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8267 err = loop_info64_to_old((struct loop_info64 const *)(& info64), & info);
8268 }
8269 } else {
8270
8271 }
8272# 1246 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8273 if (err == 0) {
8274 {
8275# 1246 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8276 tmp = copy_to_user((void *)arg, (void const *)(& info), 168U);
8277 }
8278# 1246 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8279 if (tmp != 0) {
8280# 1247 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8281 err = -14;
8282 } else {
8283
8284 }
8285 } else {
8286
8287 }
8288# 1249 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8289 return (err);
8290}
8291}
8292# 1253 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8293static int loop_get_status64(struct loop_device *lo , struct loop_info64 *arg )
8294{ struct loop_info64 info64 ;
8295 int err ;
8296 int tmp ;
8297
8298 {
8299# 1255 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8300 err = 0;
8301# 1257 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8302 if ((unsigned long )arg == (unsigned long )((struct loop_info64 *)0)) {
8303# 1258 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8304 err = -22;
8305 } else {
8306
8307 }
8308# 1259 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8309 if (err == 0) {
8310 {
8311# 1260 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8312 err = loop_get_status(lo, & info64);
8313 }
8314 } else {
8315
8316 }
8317# 1261 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8318 if (err == 0) {
8319 {
8320# 1261 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8321 tmp = copy_to_user((void *)arg, (void const *)(& info64), 232U);
8322 }
8323# 1261 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8324 if (tmp != 0) {
8325# 1262 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8326 err = -14;
8327 } else {
8328
8329 }
8330 } else {
8331
8332 }
8333# 1264 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8334 return (err);
8335}
8336}
8337# 1267 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8338static int loop_set_capacity(struct loop_device *lo , struct block_device *bdev )
8339{ int err ;
8340 sector_t sec ;
8341 loff_t sz ;
8342 long tmp ;
8343 long tmp___0 ;
8344
8345 {
8346 {
8347# 1273 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8348 err = -6;
8349# 1274 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8350 tmp = __builtin_expect((long )(lo->lo_state != 1), 0L);
8351 }
8352# 1274 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8353 if (tmp != 0L) {
8354# 1275 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8355 goto out;
8356 } else {
8357
8358 }
8359 {
8360# 1276 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8361 err = figure_loop_size(lo);
8362# 1277 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8363 tmp___0 = __builtin_expect((long )(err != 0), 0L);
8364 }
8365# 1277 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8366 if (tmp___0 != 0L) {
8367# 1278 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8368 goto out;
8369 } else {
8370
8371 }
8372 {
8373# 1279 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8374 sec = get_capacity(lo->lo_disk);
8375# 1281 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8376 sz = (loff_t )sec;
8377# 1282 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8378 sz = sz << 9;
8379# 1283 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8380 mutex_lock_nested(& bdev->bd_mutex, 0U);
8381# 1284 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8382 bd_set_size(bdev, sz);
8383# 1286 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8384 kobject_uevent(& (bdev->bd_disk)->part0.__dev.kobj, (enum kobject_action )2);
8385# 1287 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8386 mutex_unlock(& bdev->bd_mutex);
8387 }
8388 out: ;
8389# 1290 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8390 return (err);
8391}
8392}
8393# 1293 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8394static int lo_ioctl(struct block_device *bdev , fmode_t mode , unsigned int cmd ,
8395 unsigned long arg )
8396{ struct loop_device *lo ;
8397 int err ;
8398 bool tmp ;
8399 int tmp___0 ;
8400
8401 {
8402 {
8403# 1296 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8404 lo = (struct loop_device *)(bdev->bd_disk)->private_data;
8405# 1299 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8406 mutex_lock_nested(& lo->lo_ctl_mutex, 1U);
8407 }
8408# 1301 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8409 if ((int )cmd == 19456) {
8410# 1301 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8411 goto case_19456;
8412 } else
8413# 1304 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8414 if ((int )cmd == 19462) {
8415# 1304 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8416 goto case_19462;
8417 } else
8418# 1307 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8419 if ((int )cmd == 19457) {
8420# 1307 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8421 goto case_19457;
8422 } else
8423# 1313 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8424 if ((int )cmd == 19458) {
8425# 1313 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8426 goto case_19458;
8427 } else
8428# 1316 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8429 if ((int )cmd == 19459) {
8430# 1316 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8431 goto case_19459;
8432 } else
8433# 1319 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8434 if ((int )cmd == 19460) {
8435# 1319 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8436 goto case_19460;
8437 } else
8438# 1322 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8439 if ((int )cmd == 19461) {
8440# 1322 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8441 goto case_19461;
8442 } else
8443# 1325 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8444 if ((int )cmd == 19463) {
8445# 1325 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8446 goto case_19463;
8447 } else {
8448# 1330 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8449 goto switch_default;
8450# 1300 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8451 if (0) {
8452 case_19456:
8453 {
8454# 1302 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8455 err = loop_set_fd(lo, mode, bdev, (unsigned int )arg);
8456 }
8457# 1303 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8458 goto ldv_30844;
8459 case_19462:
8460 {
8461# 1305 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8462 err = loop_change_fd(lo, bdev, (unsigned int )arg);
8463 }
8464# 1306 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8465 goto ldv_30844;
8466 case_19457:
8467 {
8468# 1309 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8469 err = loop_clr_fd(lo, bdev);
8470 }
8471# 1310 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8472 if (err == 0) {
8473# 1311 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8474 goto out_unlocked;
8475 } else {
8476
8477 }
8478# 1312 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8479 goto ldv_30844;
8480 case_19458:
8481 {
8482# 1314 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8483 err = loop_set_status_old(lo, (struct loop_info const *)arg);
8484 }
8485# 1315 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8486 goto ldv_30844;
8487 case_19459:
8488 {
8489# 1317 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8490 err = loop_get_status_old(lo, (struct loop_info *)arg);
8491 }
8492# 1318 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8493 goto ldv_30844;
8494 case_19460:
8495 {
8496# 1320 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8497 err = loop_set_status64(lo, (struct loop_info64 const *)arg);
8498 }
8499# 1321 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8500 goto ldv_30844;
8501 case_19461:
8502 {
8503# 1323 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8504 err = loop_get_status64(lo, (struct loop_info64 *)arg);
8505 }
8506# 1324 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8507 goto ldv_30844;
8508 case_19463:
8509# 1326 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8510 err = -1;
8511# 1327 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8512 if ((mode & 2U) != 0U) {
8513 {
8514# 1328 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8515 err = loop_set_capacity(lo, bdev);
8516 }
8517 } else {
8518 {
8519# 1327 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8520 tmp = capable(21);
8521 }
8522# 1327 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8523 if ((int )tmp) {
8524 {
8525# 1328 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8526 err = loop_set_capacity(lo, bdev);
8527 }
8528 } else {
8529
8530 }
8531 }
8532# 1329 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8533 goto ldv_30844;
8534 switch_default: ;
8535# 1331 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8536 if ((unsigned long )lo->ioctl != (unsigned long )((int (*)(struct loop_device * ,
8537 int , unsigned long ))0)) {
8538 {
8539# 1331 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8540 tmp___0 = (*(lo->ioctl))(lo, (int )cmd, arg);
8541# 1331 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8542 err = tmp___0;
8543 }
8544 } else {
8545# 1331 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8546 err = -22;
8547 }
8548 } else {
8549
8550 }
8551 }
8552 ldv_30844:
8553 {
8554# 1333 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8555 mutex_unlock(& lo->lo_ctl_mutex);
8556 }
8557 out_unlocked: ;
8558# 1336 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8559 return (err);
8560}
8561}
8562# 1360 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8563static int loop_info64_from_compat(struct compat_loop_info const *arg , struct loop_info64 *info64 )
8564{ struct compat_loop_info info ;
8565 unsigned long tmp ;
8566 size_t __len ;
8567 void *__ret ;
8568 size_t __len___0 ;
8569 void *__ret___0 ;
8570 size_t __len___1 ;
8571 void *__ret___1 ;
8572
8573 {
8574 {
8575# 1365 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8576 tmp = copy_from_user((void *)(& info), (void const *)arg, 140UL);
8577 }
8578# 1365 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8579 if (tmp != 0UL) {
8580# 1366 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8581 return (-14);
8582 } else {
8583
8584 }
8585 {
8586# 1368 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8587 memset((void *)info64, 0, 232UL);
8588# 1369 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8589 info64->lo_number = (__u32 )info.lo_number;
8590# 1370 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8591 info64->lo_device = (__u64 )info.lo_device;
8592# 1371 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8593 info64->lo_inode = (__u64 )info.lo_inode;
8594# 1372 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8595 info64->lo_rdevice = (__u64 )info.lo_rdevice;
8596# 1373 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8597 info64->lo_offset = (__u64 )info.lo_offset;
8598# 1374 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8599 info64->lo_sizelimit = 0ULL;
8600# 1375 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8601 info64->lo_encrypt_type = (__u32 )info.lo_encrypt_type;
8602# 1376 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8603 info64->lo_encrypt_key_size = (__u32 )info.lo_encrypt_key_size;
8604# 1377 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8605 info64->lo_flags = (__u32 )info.lo_flags;
8606# 1378 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8607 info64->lo_init[0] = (__u64 )info.lo_init[0];
8608# 1379 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8609 info64->lo_init[1] = (__u64 )info.lo_init[1];
8610 }
8611# 1380 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8612 if (info.lo_encrypt_type == 18) {
8613# 1381 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8614 __len = 64UL;
8615# 1381 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8616 if (__len > 63UL) {
8617 {
8618# 1381 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8619 __ret = __memcpy((void *)(& info64->lo_crypt_name), (void const *)(& info.lo_name),
8620 __len);
8621 }
8622 } else {
8623 {
8624# 1381 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8625 __ret = __builtin_memcpy((void *)(& info64->lo_crypt_name), (void const *)(& info.lo_name),
8626 __len);
8627 }
8628 }
8629 } else {
8630# 1383 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8631 __len___0 = 64UL;
8632# 1383 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8633 if (__len___0 > 63UL) {
8634 {
8635# 1383 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8636 __ret___0 = __memcpy((void *)(& info64->lo_file_name), (void const *)(& info.lo_name),
8637 __len___0);
8638 }
8639 } else {
8640 {
8641# 1383 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8642 __ret___0 = __builtin_memcpy((void *)(& info64->lo_file_name), (void const *)(& info.lo_name),
8643 __len___0);
8644 }
8645 }
8646 }
8647# 1384 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8648 __len___1 = 32UL;
8649# 1384 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8650 if (__len___1 > 63UL) {
8651 {
8652# 1384 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8653 __ret___1 = __memcpy((void *)(& info64->lo_encrypt_key), (void const *)(& info.lo_encrypt_key),
8654 __len___1);
8655 }
8656 } else {
8657 {
8658# 1384 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8659 __ret___1 = __builtin_memcpy((void *)(& info64->lo_encrypt_key), (void const *)(& info.lo_encrypt_key),
8660 __len___1);
8661 }
8662 }
8663# 1385 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8664 return (0);
8665}
8666}
8667# 1393 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8668static int loop_info64_to_compat(struct loop_info64 const *info64 , struct compat_loop_info *arg )
8669{ struct compat_loop_info info ;
8670 size_t __len ;
8671 void *__ret ;
8672 size_t __len___0 ;
8673 void *__ret___0 ;
8674 size_t __len___1 ;
8675 void *__ret___1 ;
8676 int tmp ;
8677
8678 {
8679 {
8680# 1398 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8681 memset((void *)(& info), 0, 140UL);
8682# 1399 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8683 info.lo_number = (compat_int_t )info64->lo_number;
8684# 1400 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8685 info.lo_device = (compat_dev_t )info64->lo_device;
8686# 1401 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8687 info.lo_inode = (compat_ulong_t )info64->lo_inode;
8688# 1402 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8689 info.lo_rdevice = (compat_dev_t )info64->lo_rdevice;
8690# 1403 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8691 info.lo_offset = (compat_int_t )info64->lo_offset;
8692# 1404 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8693 info.lo_encrypt_type = (compat_int_t )info64->lo_encrypt_type;
8694# 1405 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8695 info.lo_encrypt_key_size = (compat_int_t )info64->lo_encrypt_key_size;
8696# 1406 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8697 info.lo_flags = (compat_int_t )info64->lo_flags;
8698# 1407 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8699 info.lo_init[0] = (compat_ulong_t )info64->lo_init[0];
8700# 1408 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8701 info.lo_init[1] = (compat_ulong_t )info64->lo_init[1];
8702 }
8703# 1409 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8704 if (info.lo_encrypt_type == 18) {
8705# 1410 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8706 __len = 64UL;
8707# 1410 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8708 if (__len > 63UL) {
8709 {
8710# 1410 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8711 __ret = __memcpy((void *)(& info.lo_name), (void const *)(& info64->lo_crypt_name),
8712 __len);
8713 }
8714 } else {
8715 {
8716# 1410 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8717 __ret = __builtin_memcpy((void *)(& info.lo_name), (void const *)(& info64->lo_crypt_name),
8718 __len);
8719 }
8720 }
8721 } else {
8722# 1412 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8723 __len___0 = 64UL;
8724# 1412 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8725 if (__len___0 > 63UL) {
8726 {
8727# 1412 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8728 __ret___0 = __memcpy((void *)(& info.lo_name), (void const *)(& info64->lo_file_name),
8729 __len___0);
8730 }
8731 } else {
8732 {
8733# 1412 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8734 __ret___0 = __builtin_memcpy((void *)(& info.lo_name), (void const *)(& info64->lo_file_name),
8735 __len___0);
8736 }
8737 }
8738 }
8739# 1413 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8740 __len___1 = 32UL;
8741# 1413 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8742 if (__len___1 > 63UL) {
8743 {
8744# 1413 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8745 __ret___1 = __memcpy((void *)(& info.lo_encrypt_key), (void const *)(& info64->lo_encrypt_key),
8746 __len___1);
8747 }
8748 } else {
8749 {
8750# 1413 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8751 __ret___1 = __builtin_memcpy((void *)(& info.lo_encrypt_key), (void const *)(& info64->lo_encrypt_key),
8752 __len___1);
8753 }
8754 }
8755# 1416 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8756 if ((unsigned long long )info.lo_device != (unsigned long long )info64->lo_device) {
8757# 1422 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8758 return (-75);
8759 } else
8760# 1416 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8761 if ((unsigned long long )info.lo_rdevice != (unsigned long long )info64->lo_rdevice) {
8762# 1422 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8763 return (-75);
8764 } else
8765# 1416 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8766 if ((unsigned long long )info.lo_inode != (unsigned long long )info64->lo_inode) {
8767# 1422 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8768 return (-75);
8769 } else
8770# 1416 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8771 if ((unsigned long long )info.lo_offset != (unsigned long long )info64->lo_offset) {
8772# 1422 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8773 return (-75);
8774 } else
8775# 1416 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8776 if ((unsigned long long )info.lo_init[0] != info64->lo_init[0]) {
8777# 1422 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8778 return (-75);
8779 } else
8780# 1416 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8781 if ((unsigned long long )info.lo_init[1] != info64->lo_init[1]) {
8782# 1422 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8783 return (-75);
8784 } else {
8785
8786 }
8787 {
8788# 1424 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8789 tmp = copy_to_user((void *)arg, (void const *)(& info), 140U);
8790 }
8791# 1424 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8792 if (tmp != 0) {
8793# 1425 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8794 return (-14);
8795 } else {
8796
8797 }
8798# 1426 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8799 return (0);
8800}
8801}
8802# 1430 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8803static int loop_set_status_compat(struct loop_device *lo , struct compat_loop_info const *arg )
8804{ struct loop_info64 info64 ;
8805 int ret ;
8806 int tmp ;
8807
8808 {
8809 {
8810# 1436 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8811 ret = loop_info64_from_compat(arg, & info64);
8812 }
8813# 1437 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8814 if (ret < 0) {
8815# 1438 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8816 return (ret);
8817 } else {
8818
8819 }
8820 {
8821# 1439 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8822 tmp = loop_set_status(lo, (struct loop_info64 const *)(& info64));
8823 }
8824# 1439 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8825 return (tmp);
8826}
8827}
8828# 1443 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8829static int loop_get_status_compat(struct loop_device *lo , struct compat_loop_info *arg )
8830{ struct loop_info64 info64 ;
8831 int err ;
8832
8833 {
8834# 1447 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8835 err = 0;
8836# 1449 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8837 if ((unsigned long )arg == (unsigned long )((struct compat_loop_info *)0)) {
8838# 1450 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8839 err = -22;
8840 } else {
8841
8842 }
8843# 1451 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8844 if (err == 0) {
8845 {
8846# 1452 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8847 err = loop_get_status(lo, & info64);
8848 }
8849 } else {
8850
8851 }
8852# 1453 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8853 if (err == 0) {
8854 {
8855# 1454 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8856 err = loop_info64_to_compat((struct loop_info64 const *)(& info64), arg);
8857 }
8858 } else {
8859
8860 }
8861# 1455 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8862 return (err);
8863}
8864}
8865# 1458 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8866static int lo_compat_ioctl(struct block_device *bdev , fmode_t mode , unsigned int cmd ,
8867 unsigned long arg )
8868{ struct loop_device *lo ;
8869 int err ;
8870 void *tmp ;
8871
8872 {
8873# 1461 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8874 lo = (struct loop_device *)(bdev->bd_disk)->private_data;
8875# 1465 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8876 if ((int )cmd == 19458) {
8877# 1465 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8878 goto case_19458;
8879 } else
8880# 1471 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8881 if ((int )cmd == 19459) {
8882# 1471 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8883 goto case_19459;
8884 } else
8885# 1477 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8886 if ((int )cmd == 19463) {
8887# 1477 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8888 goto case_19463;
8889 } else
8890# 1478 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8891 if ((int )cmd == 19457) {
8892# 1478 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8893 goto case_19457;
8894 } else
8895# 1479 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8896 if ((int )cmd == 19461) {
8897# 1479 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8898 goto case_19461;
8899 } else
8900# 1480 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8901 if ((int )cmd == 19460) {
8902# 1480 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8903 goto case_19460;
8904 } else
8905# 1482 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8906 if ((int )cmd == 19456) {
8907# 1482 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8908 goto case_19456;
8909 } else
8910# 1483 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8911 if ((int )cmd == 19462) {
8912# 1483 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8913 goto case_19462;
8914 } else {
8915# 1486 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8916 goto switch_default;
8917# 1464 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8918 if (0) {
8919 case_19458:
8920 {
8921# 1466 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8922 mutex_lock_nested(& lo->lo_ctl_mutex, 0U);
8923# 1467 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8924 err = loop_set_status_compat(lo, (struct compat_loop_info const *)arg);
8925# 1469 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8926 mutex_unlock(& lo->lo_ctl_mutex);
8927 }
8928# 1470 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8929 goto ldv_30916;
8930 case_19459:
8931 {
8932# 1472 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8933 mutex_lock_nested(& lo->lo_ctl_mutex, 0U);
8934# 1473 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8935 err = loop_get_status_compat(lo, (struct compat_loop_info *)arg);
8936# 1475 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8937 mutex_unlock(& lo->lo_ctl_mutex);
8938 }
8939# 1476 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8940 goto ldv_30916;
8941 case_19463: ;
8942 case_19457: ;
8943 case_19461: ;
8944 case_19460:
8945 {
8946# 1481 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8947 tmp = compat_ptr((compat_uptr_t )arg);
8948# 1481 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8949 arg = (unsigned long )tmp;
8950 }
8951 case_19456: ;
8952 case_19462:
8953 {
8954# 1484 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8955 err = lo_ioctl(bdev, mode, cmd, arg);
8956 }
8957# 1485 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8958 goto ldv_30916;
8959 switch_default:
8960# 1487 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8961 err = -515;
8962# 1488 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8963 goto ldv_30916;
8964 } else {
8965
8966 }
8967 }
8968 ldv_30916: ;
8969# 1490 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8970 return (err);
8971}
8972}
8973# 1494 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8974static int lo_open(struct block_device *bdev , fmode_t mode )
8975{ struct loop_device *lo ;
8976
8977 {
8978 {
8979# 1496 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8980 lo = (struct loop_device *)(bdev->bd_disk)->private_data;
8981# 1498 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8982 mutex_lock_nested(& lo->lo_ctl_mutex, 0U);
8983# 1499 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8984 lo->lo_refcnt = lo->lo_refcnt + 1;
8985# 1500 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8986 mutex_unlock(& lo->lo_ctl_mutex);
8987 }
8988# 1502 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8989 return (0);
8990}
8991}
8992# 1505 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
8993static int lo_release(struct gendisk *disk , fmode_t mode )
8994{ struct loop_device *lo ;
8995 int err ;
8996
8997 {
8998 {
8999# 1507 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9000 lo = (struct loop_device *)disk->private_data;
9001# 1510 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9002 mutex_lock_nested(& lo->lo_ctl_mutex, 0U);
9003# 1512 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9004 lo->lo_refcnt = lo->lo_refcnt - 1;
9005 }
9006# 1512 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9007 if (lo->lo_refcnt != 0) {
9008# 1513 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9009 goto out;
9010 } else {
9011
9012 }
9013# 1515 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9014 if ((lo->lo_flags & 4) != 0) {
9015 {
9016# 1520 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9017 err = loop_clr_fd(lo, (struct block_device *)0);
9018 }
9019# 1521 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9020 if (err == 0) {
9021# 1522 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9022 goto out_unlocked;
9023 } else {
9024
9025 }
9026 } else {
9027 {
9028# 1528 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9029 loop_flush(lo);
9030 }
9031 }
9032 out:
9033 {
9034# 1532 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9035 mutex_unlock(& lo->lo_ctl_mutex);
9036 }
9037 out_unlocked: ;
9038# 1534 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9039 return (0);
9040}
9041}
9042# 1537 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9043static struct block_device_operations const lo_fops =
9044# 1537 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9045 {& lo_open, & lo_release, & lo_ioctl, & lo_compat_ioctl, (int (*)(struct block_device * ,
9046 sector_t , void ** ,
9047 unsigned long * ))0,
9048 (unsigned int (*)(struct gendisk * , unsigned int ))0, (int (*)(struct gendisk * ))0,
9049 (void (*)(struct gendisk * ))0, (int (*)(struct gendisk * ))0, (int (*)(struct block_device * ,
9050 struct hd_geometry * ))0,
9051 (void (*)(struct block_device * , unsigned long ))0, & __this_module};
9052# 1550 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9053static int max_loop ;
9054# 1558 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9055int loop_register_transfer(struct loop_func_table *funcs )
9056{ unsigned int n ;
9057
9058 {
9059# 1560 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9060 n = (unsigned int )funcs->number;
9061# 1562 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9062 if (n > 19U) {
9063# 1563 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9064 return (-22);
9065 } else
9066# 1562 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9067 if ((unsigned long )xfer_funcs[n] != (unsigned long )((struct loop_func_table *)0)) {
9068# 1563 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9069 return (-22);
9070 } else {
9071
9072 }
9073# 1564 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9074 xfer_funcs[n] = funcs;
9075# 1565 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9076 return (0);
9077}
9078}
9079# 1568 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9080int loop_unregister_transfer(int number )
9081{ unsigned int n ;
9082 struct loop_device *lo ;
9083 struct loop_func_table *xfer ;
9084 struct list_head const *__mptr ;
9085 struct list_head const *__mptr___0 ;
9086
9087 {
9088# 1570 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9089 n = (unsigned int )number;
9090# 1574 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9091 if (n == 0U) {
9092# 1575 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9093 return (-22);
9094 } else
9095# 1574 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9096 if (n > 19U) {
9097# 1575 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9098 return (-22);
9099 } else {
9100# 1574 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9101 xfer = xfer_funcs[n];
9102# 1574 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9103 if ((unsigned long )xfer == (unsigned long )((struct loop_func_table *)0)) {
9104# 1575 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9105 return (-22);
9106 } else {
9107
9108 }
9109 }
9110# 1577 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9111 xfer_funcs[n] = (struct loop_func_table *)0;
9112# 1579 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9113 __mptr = (struct list_head const *)loop_devices.next;
9114# 1579 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9115 lo = (struct loop_device *)__mptr + 0x0ffffffffffffd70UL;
9116# 1579 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9117 goto ldv_30981;
9118 ldv_30980:
9119 {
9120# 1580 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9121 mutex_lock_nested(& lo->lo_ctl_mutex, 0U);
9122 }
9123# 1582 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9124 if ((unsigned long )lo->lo_encryption == (unsigned long )xfer) {
9125 {
9126# 1583 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9127 loop_release_xfer(lo);
9128 }
9129 } else {
9130
9131 }
9132 {
9133# 1585 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9134 mutex_unlock(& lo->lo_ctl_mutex);
9135# 1579 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9136 __mptr___0 = (struct list_head const *)lo->lo_list.next;
9137# 1579 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9138 lo = (struct loop_device *)__mptr___0 + 0x0ffffffffffffd70UL;
9139 }
9140 ldv_30981: ;
9141# 1579 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9142 if ((unsigned long )(& lo->lo_list) != (unsigned long )(& loop_devices)) {
9143# 1580 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9144 goto ldv_30980;
9145 } else {
9146# 1582 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9147 goto ldv_30982;
9148 }
9149 ldv_30982: ;
9150# 1588 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9151 return (0);
9152}
9153}
9154# 1594 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9155static struct loop_device *loop_alloc(int i )
9156{ struct loop_device *lo ;
9157 struct gendisk *disk ;
9158 void *tmp ;
9159 struct gendisk *tmp___0 ;
9160 struct lock_class_key __key ;
9161 struct lock_class_key __key___0 ;
9162 struct lock_class_key __key___1 ;
9163
9164 {
9165 {
9166# 1599 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9167 tmp = kzalloc(672UL, 208U);
9168# 1599 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9169 lo = (struct loop_device *)tmp;
9170 }
9171# 1600 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9172 if ((unsigned long )lo == (unsigned long )((struct loop_device *)0)) {
9173# 1601 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9174 goto out;
9175 } else {
9176
9177 }
9178 {
9179# 1603 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9180 lo->lo_queue = blk_alloc_queue(208U);
9181 }
9182# 1604 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9183 if ((unsigned long )lo->lo_queue == (unsigned long )((struct request_queue *)0)) {
9184# 1605 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9185 goto out_free_dev;
9186 } else {
9187
9188 }
9189 {
9190# 1607 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9191 tmp___0 = alloc_disk(1 << part_shift);
9192# 1607 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9193 lo->lo_disk = tmp___0;
9194# 1607 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9195 disk = tmp___0;
9196 }
9197# 1608 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9198 if ((unsigned long )disk == (unsigned long )((struct gendisk *)0)) {
9199# 1609 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9200 goto out_free_queue;
9201 } else {
9202
9203 }
9204 {
9205# 1611 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9206 __mutex_init(& lo->lo_ctl_mutex, "&lo->lo_ctl_mutex", & __key);
9207# 1612 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9208 lo->lo_number = i;
9209# 1613 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9210 lo->lo_thread = (struct task_struct *)0;
9211# 1614 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9212 __init_waitqueue_head(& lo->lo_event, & __key___0);
9213# 1615 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9214 spinlock_check(& lo->lo_lock);
9215# 1615 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9216 __raw_spin_lock_init(& lo->lo_lock.ldv_6060.rlock, "&(&lo->lo_lock)->rlock", & __key___1);
9217# 1616 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9218 disk->major = 7;
9219# 1617 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9220 disk->first_minor = i << part_shift;
9221# 1618 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9222 disk->fops = & lo_fops;
9223# 1619 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9224 disk->private_data = (void *)lo;
9225# 1620 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9226 disk->queue = lo->lo_queue;
9227# 1621 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9228 sprintf((char *)(& disk->disk_name), "loop%d", i);
9229 }
9230# 1622 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9231 return (lo);
9232 out_free_queue:
9233 {
9234# 1625 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9235 blk_cleanup_queue(lo->lo_queue);
9236 }
9237 out_free_dev:
9238 {
9239# 1627 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9240 kfree((void const *)lo);
9241 }
9242 out: ;
9243# 1629 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9244 return ((struct loop_device *)0);
9245}
9246}
9247# 1632 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9248static void loop_free(struct loop_device *lo )
9249{
9250
9251 {
9252 {
9253# 1634 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9254 blk_cleanup_queue(lo->lo_queue);
9255# 1635 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9256 put_disk(lo->lo_disk);
9257# 1636 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9258 list_del(& lo->lo_list);
9259# 1637 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9260 kfree((void const *)lo);
9261 }
9262# 1638 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9263 return;
9264}
9265}
9266# 1640 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9267static struct loop_device *loop_init_one(int i )
9268{ struct loop_device *lo ;
9269 struct list_head const *__mptr ;
9270 struct list_head const *__mptr___0 ;
9271
9272 {
9273# 1644 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9274 __mptr = (struct list_head const *)loop_devices.next;
9275# 1644 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9276 lo = (struct loop_device *)__mptr + 0x0ffffffffffffd70UL;
9277# 1644 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9278 goto ldv_31018;
9279 ldv_31017: ;
9280# 1645 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9281 if (lo->lo_number == i) {
9282# 1646 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9283 return (lo);
9284 } else {
9285
9286 }
9287# 1644 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9288 __mptr___0 = (struct list_head const *)lo->lo_list.next;
9289# 1644 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9290 lo = (struct loop_device *)__mptr___0 + 0x0ffffffffffffd70UL;
9291 ldv_31018: ;
9292# 1644 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9293 if ((unsigned long )(& lo->lo_list) != (unsigned long )(& loop_devices)) {
9294# 1645 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9295 goto ldv_31017;
9296 } else {
9297# 1647 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9298 goto ldv_31019;
9299 }
9300 ldv_31019:
9301 {
9302# 1649 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9303 lo = loop_alloc(i);
9304 }
9305# 1650 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9306 if ((unsigned long )lo != (unsigned long )((struct loop_device *)0)) {
9307 {
9308# 1651 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9309 add_disk(lo->lo_disk);
9310# 1652 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9311 list_add_tail(& lo->lo_list, & loop_devices);
9312 }
9313 } else {
9314
9315 }
9316# 1654 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9317 return (lo);
9318}
9319}
9320# 1657 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9321static void loop_del_one(struct loop_device *lo )
9322{
9323
9324 {
9325 {
9326# 1659 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9327 del_gendisk(lo->lo_disk);
9328# 1660 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9329 loop_free(lo);
9330 }
9331# 1661 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9332 return;
9333}
9334}
9335# 1663 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9336static struct kobject *loop_probe(dev_t dev , int *part , void *data )
9337{ struct loop_device *lo ;
9338 struct kobject *kobj ;
9339 struct kobject *tmp ;
9340 void *tmp___0 ;
9341
9342 {
9343 {
9344# 1668 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9345 mutex_lock_nested(& loop_devices_mutex, 0U);
9346# 1669 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9347 lo = loop_init_one((int )((dev & 1048575U) >> part_shift));
9348 }
9349# 1670 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9350 if ((unsigned long )lo != (unsigned long )((struct loop_device *)0)) {
9351 {
9352# 1670 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9353 tmp = get_disk(lo->lo_disk);
9354# 1670 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9355 kobj = tmp;
9356 }
9357 } else {
9358 {
9359# 1670 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9360 tmp___0 = ERR_PTR(-12L);
9361# 1670 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9362 kobj = (struct kobject *)tmp___0;
9363 }
9364 }
9365 {
9366# 1671 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9367 mutex_unlock(& loop_devices_mutex);
9368# 1673 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9369 *part = 0;
9370 }
9371# 1674 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9372 return (kobj);
9373}
9374}
9375# 1677 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9376static int loop_init(void)
9377{ int i ;
9378 int nr ;
9379 unsigned long range ;
9380 struct loop_device *lo ;
9381 struct loop_device *next ;
9382 int tmp ;
9383 struct list_head const *__mptr ;
9384 struct list_head const *__mptr___0 ;
9385 struct list_head const *__mptr___1 ;
9386 struct list_head const *__mptr___2 ;
9387 struct list_head const *__mptr___3 ;
9388
9389 {
9390# 1698 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9391 part_shift = 0;
9392# 1699 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9393 if (max_part > 0) {
9394 {
9395# 1700 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9396 part_shift = fls(max_part);
9397# 1710 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9398 max_part = (int )((unsigned int )(1UL << part_shift) - 1U);
9399 }
9400 } else {
9401
9402 }
9403# 1713 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9404 if (1UL << part_shift > 256UL) {
9405# 1714 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9406 return (-22);
9407 } else {
9408
9409 }
9410# 1716 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9411 if ((unsigned long )max_loop > 1UL << (20 - part_shift)) {
9412# 1717 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9413 return (-22);
9414 } else {
9415
9416 }
9417# 1719 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9418 if (max_loop != 0) {
9419# 1720 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9420 nr = max_loop;
9421# 1721 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9422 range = (unsigned long )(max_loop << part_shift);
9423 } else {
9424# 1723 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9425 nr = 8;
9426# 1724 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9427 range = 1048576UL;
9428 }
9429 {
9430# 1727 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9431 tmp = register_blkdev(7U, "loop");
9432 }
9433# 1727 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9434 if (tmp != 0) {
9435# 1728 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9436 return (-5);
9437 } else {
9438
9439 }
9440# 1730 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9441 i = 0;
9442# 1730 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9443 goto ldv_31040;
9444 ldv_31039:
9445 {
9446# 1731 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9447 lo = loop_alloc(i);
9448 }
9449# 1732 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9450 if ((unsigned long )lo == (unsigned long )((struct loop_device *)0)) {
9451# 1733 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9452 goto Enomem;
9453 } else {
9454
9455 }
9456 {
9457# 1734 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9458 list_add_tail(& lo->lo_list, & loop_devices);
9459# 1730 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9460 i = i + 1;
9461 }
9462 ldv_31040: ;
9463# 1730 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9464 if (i < nr) {
9465# 1731 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9466 goto ldv_31039;
9467 } else {
9468# 1733 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9469 goto ldv_31041;
9470 }
9471 ldv_31041:
9472# 1739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9473 __mptr = (struct list_head const *)loop_devices.next;
9474# 1739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9475 lo = (struct loop_device *)__mptr + 0x0ffffffffffffd70UL;
9476# 1739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9477 goto ldv_31047;
9478 ldv_31046:
9479 {
9480# 1740 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9481 add_disk(lo->lo_disk);
9482# 1739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9483 __mptr___0 = (struct list_head const *)lo->lo_list.next;
9484# 1739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9485 lo = (struct loop_device *)__mptr___0 + 0x0ffffffffffffd70UL;
9486 }
9487 ldv_31047: ;
9488# 1739 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9489 if ((unsigned long )(& lo->lo_list) != (unsigned long )(& loop_devices)) {
9490# 1740 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9491 goto ldv_31046;
9492 } else {
9493# 1742 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9494 goto ldv_31048;
9495 }
9496 ldv_31048:
9497 {
9498# 1742 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9499 blk_register_region(7340032U, range, & __this_module, & loop_probe, (int (*)(dev_t ,
9500 void * ))0,
9501 (void *)0);
9502# 1745 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9503 printk("<6>loop: module loaded\n");
9504 }
9505# 1746 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9506 return (0);
9507 Enomem:
9508 {
9509# 1749 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9510 printk("<6>loop: out of memory\n");
9511# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9512 __mptr___1 = (struct list_head const *)loop_devices.next;
9513# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9514 lo = (struct loop_device *)__mptr___1 + 0x0ffffffffffffd70UL;
9515# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9516 __mptr___2 = (struct list_head const *)lo->lo_list.next;
9517# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9518 next = (struct loop_device *)__mptr___2 + 0x0ffffffffffffd70UL;
9519 }
9520# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9521 goto ldv_31056;
9522 ldv_31055:
9523 {
9524# 1752 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9525 loop_free(lo);
9526# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9527 lo = next;
9528# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9529 __mptr___3 = (struct list_head const *)next->lo_list.next;
9530# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9531 next = (struct loop_device *)__mptr___3 + 0x0ffffffffffffd70UL;
9532 }
9533 ldv_31056: ;
9534# 1751 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9535 if ((unsigned long )(& lo->lo_list) != (unsigned long )(& loop_devices)) {
9536# 1752 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9537 goto ldv_31055;
9538 } else {
9539# 1754 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9540 goto ldv_31057;
9541 }
9542 ldv_31057:
9543 {
9544# 1754 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9545 unregister_blkdev(7U, "loop");
9546 }
9547# 1755 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9548 return (-12);
9549}
9550}
9551# 1758 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9552static void loop_exit(void)
9553{ unsigned long range ;
9554 struct loop_device *lo ;
9555 struct loop_device *next ;
9556 struct list_head const *__mptr ;
9557 struct list_head const *__mptr___0 ;
9558 struct list_head const *__mptr___1 ;
9559
9560 {
9561# 1763 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9562 if (max_loop != 0) {
9563# 1763 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9564 range = (unsigned long )(max_loop << part_shift);
9565 } else {
9566# 1763 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9567 range = 1048576UL;
9568 }
9569# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9570 __mptr = (struct list_head const *)loop_devices.next;
9571# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9572 lo = (struct loop_device *)__mptr + 0x0ffffffffffffd70UL;
9573# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9574 __mptr___0 = (struct list_head const *)lo->lo_list.next;
9575# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9576 next = (struct loop_device *)__mptr___0 + 0x0ffffffffffffd70UL;
9577# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9578 goto ldv_31071;
9579 ldv_31070:
9580 {
9581# 1766 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9582 loop_del_one(lo);
9583# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9584 lo = next;
9585# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9586 __mptr___1 = (struct list_head const *)next->lo_list.next;
9587# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9588 next = (struct loop_device *)__mptr___1 + 0x0ffffffffffffd70UL;
9589 }
9590 ldv_31071: ;
9591# 1765 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9592 if ((unsigned long )(& lo->lo_list) != (unsigned long )(& loop_devices)) {
9593# 1766 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9594 goto ldv_31070;
9595 } else {
9596# 1768 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9597 goto ldv_31072;
9598 }
9599 ldv_31072:
9600 {
9601# 1768 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9602 blk_unregister_region(7340032U, range);
9603# 1769 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9604 unregister_blkdev(7U, "loop");
9605 }
9606# 1770 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9607 return;
9608}
9609}
9610# 1801 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9611void ldv_check_final_state(void) ;
9612# 1804 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9613extern void ldv_check_return_value(int ) ;
9614# 1807 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9615extern void ldv_initialize(void) ;
9616# 1810 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9617extern int nondet_int(void) ;
9618# 1813 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9619int LDV_IN_INTERRUPT ;
9620# 1816 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9621void main(void)
9622{ struct loop_device *var_group1 ;
9623 int var_transfer_none_0_p1 ;
9624 struct page *var_transfer_none_0_p2 ;
9625 unsigned int var_transfer_none_0_p3 ;
9626 struct page *var_transfer_none_0_p4 ;
9627 unsigned int var_transfer_none_0_p5 ;
9628 int var_transfer_none_0_p6 ;
9629 sector_t var_transfer_none_0_p7 ;
9630 int var_transfer_xor_1_p1 ;
9631 struct page *var_transfer_xor_1_p2 ;
9632 unsigned int var_transfer_xor_1_p3 ;
9633 struct page *var_transfer_xor_1_p4 ;
9634 unsigned int var_transfer_xor_1_p5 ;
9635 int var_transfer_xor_1_p6 ;
9636 sector_t var_transfer_xor_1_p7 ;
9637 struct loop_info64 const *var_xor_init_2_p1 ;
9638 struct block_device *var_group2 ;
9639 fmode_t var_lo_open_51_p1 ;
9640 int res_lo_open_51 ;
9641 struct gendisk *var_group3 ;
9642 fmode_t var_lo_release_52_p1 ;
9643 fmode_t var_lo_ioctl_45_p1 ;
9644 unsigned int var_lo_ioctl_45_p2 ;
9645 unsigned long var_lo_ioctl_45_p3 ;
9646 fmode_t var_lo_compat_ioctl_50_p1 ;
9647 unsigned int var_lo_compat_ioctl_50_p2 ;
9648 unsigned long var_lo_compat_ioctl_50_p3 ;
9649 int ldv_s_lo_fops_block_device_operations ;
9650 int tmp ;
9651 int tmp___0 ;
9652 int tmp___1 ;
9653
9654 {
9655 {
9656# 2064 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9657 ldv_s_lo_fops_block_device_operations = 0;
9658# 2025 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9659 LDV_IN_INTERRUPT = 1;
9660# 2034 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9661 ldv_initialize();
9662# 2054 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9663 tmp = loop_init();
9664 }
9665# 2054 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9666 if (tmp != 0) {
9667# 2055 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9668 goto ldv_final;
9669 } else {
9670
9671 }
9672# 2068 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9673 goto ldv_31135;
9674 ldv_31134:
9675 {
9676# 2072 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9677 tmp___0 = nondet_int();
9678 }
9679# 2074 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9680 if (tmp___0 == 0) {
9681# 2074 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9682 goto case_0;
9683 } else
9684# 2107 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9685 if (tmp___0 == 1) {
9686# 2107 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9687 goto case_1;
9688 } else
9689# 2140 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9690 if (tmp___0 == 2) {
9691# 2140 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9692 goto case_2;
9693 } else
9694# 2173 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9695 if (tmp___0 == 3) {
9696# 2173 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9697 goto case_3;
9698 } else
9699# 2210 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9700 if (tmp___0 == 4) {
9701# 2210 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9702 goto case_4;
9703 } else
9704# 2244 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9705 if (tmp___0 == 5) {
9706# 2244 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9707 goto case_5;
9708 } else
9709# 2278 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9710 if (tmp___0 == 6) {
9711# 2278 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9712 goto case_6;
9713 } else {
9714# 2312 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9715 goto switch_default;
9716# 2072 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9717 if (0) {
9718 case_0:
9719 {
9720# 2082 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9721 transfer_none(var_group1, var_transfer_none_0_p1, var_transfer_none_0_p2, var_transfer_none_0_p3,
9722 var_transfer_none_0_p4, var_transfer_none_0_p5, var_transfer_none_0_p6,
9723 var_transfer_none_0_p7);
9724 }
9725# 2106 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9726 goto ldv_31125;
9727 case_1:
9728 {
9729# 2115 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9730 transfer_xor(var_group1, var_transfer_xor_1_p1, var_transfer_xor_1_p2, var_transfer_xor_1_p3,
9731 var_transfer_xor_1_p4, var_transfer_xor_1_p5, var_transfer_xor_1_p6,
9732 var_transfer_xor_1_p7);
9733 }
9734# 2139 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9735 goto ldv_31125;
9736 case_2:
9737 {
9738# 2148 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9739 xor_init(var_group1, var_xor_init_2_p1);
9740 }
9741# 2172 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9742 goto ldv_31125;
9743 case_3: ;
9744# 2176 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9745 if (ldv_s_lo_fops_block_device_operations == 0) {
9746 {
9747# 2193 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9748 res_lo_open_51 = lo_open(var_group2, var_lo_open_51_p1);
9749# 2194 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9750 ldv_check_return_value(res_lo_open_51);
9751 }
9752# 2195 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9753 if (res_lo_open_51 != 0) {
9754# 2196 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9755 goto ldv_module_exit;
9756 } else {
9757
9758 }
9759# 2203 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9760 ldv_s_lo_fops_block_device_operations = ldv_s_lo_fops_block_device_operations + 1;
9761 } else {
9762
9763 }
9764# 2209 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9765 goto ldv_31125;
9766 case_4: ;
9767# 2213 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9768 if (ldv_s_lo_fops_block_device_operations == 1) {
9769 {
9770# 2230 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9771 lo_release(var_group3, var_lo_release_52_p1);
9772# 2237 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9773 ldv_s_lo_fops_block_device_operations = 0;
9774 }
9775 } else {
9776
9777 }
9778# 2243 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9779 goto ldv_31125;
9780 case_5:
9781 {
9782# 2262 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9783 lo_ioctl(var_group2, var_lo_ioctl_45_p1, var_lo_ioctl_45_p2, var_lo_ioctl_45_p3);
9784 }
9785# 2277 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9786 goto ldv_31125;
9787 case_6:
9788 {
9789# 2297 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9790 lo_compat_ioctl(var_group2, var_lo_compat_ioctl_50_p1, var_lo_compat_ioctl_50_p2,
9791 var_lo_compat_ioctl_50_p3);
9792 }
9793# 2311 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9794 goto ldv_31125;
9795 switch_default: ;
9796# 2312 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9797 goto ldv_31125;
9798 } else {
9799
9800 }
9801 }
9802 ldv_31125: ;
9803 ldv_31135:
9804 {
9805# 2068 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9806 tmp___1 = nondet_int();
9807 }
9808# 2068 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9809 if (tmp___1 != 0) {
9810# 2070 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9811 goto ldv_31134;
9812 } else
9813# 2068 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9814 if (ldv_s_lo_fops_block_device_operations != 0) {
9815# 2070 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9816 goto ldv_31134;
9817 } else {
9818# 2072 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9819 goto ldv_31136;
9820 }
9821 ldv_31136: ;
9822 ldv_module_exit:
9823 {
9824# 2338 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9825 loop_exit();
9826 }
9827 ldv_final:
9828 {
9829# 2345 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9830 ldv_check_final_state();
9831 }
9832# 2348 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9833 return;
9834}
9835}
9836# 5 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/kernel-rules/files/engine-blast-assert.h"
9837void ldv_blast_assert(void)
9838{
9839
9840 {
9841 ERROR: ;
9842# 6 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/kernel-rules/files/engine-blast-assert.h"
9843 goto ERROR;
9844}
9845}
9846# 6 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/kernel-rules/files/engine-blast.h"
9847extern int ldv_undefined_int(void) ;
9848# 2365 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9849int ldv_module_refcounter = 1;
9850# 2368 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9851void ldv_module_get(struct module *module )
9852{
9853
9854 {
9855# 2371 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9856 if ((unsigned long )module != (unsigned long )((struct module *)0)) {
9857# 2373 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9858 ldv_module_refcounter = ldv_module_refcounter + 1;
9859 } else {
9860
9861 }
9862# 2374 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9863 return;
9864}
9865}
9866# 2378 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9867int ldv_try_module_get(struct module *module )
9868{ int module_get_succeeded ;
9869
9870 {
9871# 2383 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9872 if ((unsigned long )module != (unsigned long )((struct module *)0)) {
9873 {
9874# 2386 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9875 module_get_succeeded = ldv_undefined_int();
9876 }
9877# 2388 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9878 if (module_get_succeeded == 1) {
9879# 2390 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9880 ldv_module_refcounter = ldv_module_refcounter + 1;
9881# 2392 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9882 return (1);
9883 } else {
9884# 2397 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9885 return (0);
9886 }
9887 } else {
9888
9889 }
9890# 2399 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9891 return (0);
9892}
9893}
9894# 2403 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9895void ldv_module_put(struct module *module )
9896{
9897
9898 {
9899# 2406 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9900 if ((unsigned long )module != (unsigned long )((struct module *)0)) {
9901# 2408 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9902 if (ldv_module_refcounter <= 1) {
9903 {
9904# 2408 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9905 ldv_blast_assert();
9906 }
9907 } else {
9908
9909 }
9910# 2410 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9911 ldv_module_refcounter = ldv_module_refcounter - 1;
9912 } else {
9913
9914 }
9915# 2412 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9916 return;
9917}
9918}
9919# 2415 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9920void ldv_module_put_and_exit(void)
9921{
9922
9923 {
9924 {
9925# 2417 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9926 ldv_module_put((struct module *)1);
9927 }
9928 LDV_STOP: ;
9929# 2419 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9930 goto LDV_STOP;
9931}
9932}
9933# 2423 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9934unsigned int ldv_module_refcount(void)
9935{
9936
9937 {
9938# 2426 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9939 return ((unsigned int )(ldv_module_refcounter + -1));
9940}
9941}
9942# 2430 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9943void ldv_check_final_state(void)
9944{
9945
9946 {
9947# 2433 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9948 if (ldv_module_refcounter != 1) {
9949 {
9950# 2433 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9951 ldv_blast_assert();
9952 }
9953 } else {
9954
9955 }
9956# 2436 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9957 return;
9958}
9959}
9960# 2436 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9961__inline static void ldv___module_get_1(struct module *module )
9962{
9963
9964 {
9965 {
9966# 2441 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9967 ldv_module_get(module);
9968 }
9969# 2442 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9970 return;
9971}
9972}
9973# 2444 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9974void ldv_module_put_2(struct module *ldv_func_arg1 )
9975{
9976
9977 {
9978 {
9979# 2449 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9980 ldv_module_put(ldv_func_arg1);
9981 }
9982# 2450 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9983 return;
9984}
9985}
9986# 2452 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9987void ldv_module_put_3(struct module *ldv_func_arg1 )
9988{
9989
9990 {
9991 {
9992# 2457 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9993 ldv_module_put(ldv_func_arg1);
9994 }
9995# 2458 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
9996 return;
9997}
9998}
9999# 2460 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10000__inline static int ldv_try_module_get_4(struct module *module )
10001{ int tmp ;
10002
10003 {
10004 {
10005# 2465 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10006 tmp = ldv_try_module_get(module);
10007 }
10008# 2465 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10009 return (tmp);
10010}
10011}
10012# 2468 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10013void ldv_module_put_5(struct module *ldv_func_arg1 )
10014{
10015
10016 {
10017 {
10018# 2473 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10019 ldv_module_put(ldv_func_arg1);
10020 }
10021# 2474 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10022 return;
10023}
10024}
10025# 2476 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10026void ldv_module_put_6(struct module *ldv_func_arg1 )
10027{
10028
10029 {
10030 {
10031# 2481 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10032 ldv_module_put(ldv_func_arg1);
10033 }
10034# 2482 "/anthill/stuff/tacas-comp/work/current--X--drivers/block/loop.ko--X--unsafelinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/block/loop.c.p"
10035 return;
10036}
10037}