1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 22 "include/asm-generic/int-ll64.h"
7typedef short __s16;
8#line 23 "include/asm-generic/int-ll64.h"
9typedef unsigned short __u16;
10#line 25 "include/asm-generic/int-ll64.h"
11typedef int __s32;
12#line 26 "include/asm-generic/int-ll64.h"
13typedef unsigned int __u32;
14#line 29 "include/asm-generic/int-ll64.h"
15typedef long long __s64;
16#line 30 "include/asm-generic/int-ll64.h"
17typedef unsigned long long __u64;
18#line 43 "include/asm-generic/int-ll64.h"
19typedef unsigned char u8;
20#line 46 "include/asm-generic/int-ll64.h"
21typedef unsigned short u16;
22#line 48 "include/asm-generic/int-ll64.h"
23typedef int s32;
24#line 49 "include/asm-generic/int-ll64.h"
25typedef unsigned int u32;
26#line 51 "include/asm-generic/int-ll64.h"
27typedef long long s64;
28#line 52 "include/asm-generic/int-ll64.h"
29typedef unsigned long long u64;
30#line 11 "include/asm-generic/types.h"
31typedef unsigned short umode_t;
32#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
33typedef unsigned int __kernel_mode_t;
34#line 12 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
35typedef unsigned long __kernel_nlink_t;
36#line 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
37typedef long __kernel_off_t;
38#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
39typedef int __kernel_pid_t;
40#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
41typedef unsigned int __kernel_uid_t;
42#line 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
43typedef unsigned int __kernel_gid_t;
44#line 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
45typedef unsigned long __kernel_size_t;
46#line 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
47typedef long __kernel_ssize_t;
48#line 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
49typedef long __kernel_time_t;
50#line 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
51typedef long __kernel_clock_t;
52#line 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
53typedef int __kernel_timer_t;
54#line 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
55typedef int __kernel_clockid_t;
56#line 27 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
57typedef char *__kernel_caddr_t;
58#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
59typedef long long __kernel_loff_t;
60#line 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
61typedef __kernel_uid_t __kernel_uid32_t;
62#line 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
63typedef __kernel_gid_t __kernel_gid32_t;
64#line 21 "include/linux/types.h"
65typedef __u32 __kernel_dev_t;
66#line 24 "include/linux/types.h"
67typedef __kernel_dev_t dev_t;
68#line 26 "include/linux/types.h"
69typedef __kernel_mode_t mode_t;
70#line 27 "include/linux/types.h"
71typedef __kernel_nlink_t nlink_t;
72#line 28 "include/linux/types.h"
73typedef __kernel_off_t off_t;
74#line 29 "include/linux/types.h"
75typedef __kernel_pid_t pid_t;
76#line 34 "include/linux/types.h"
77typedef __kernel_clockid_t clockid_t;
78#line 37 "include/linux/types.h"
79typedef _Bool bool;
80#line 39 "include/linux/types.h"
81typedef __kernel_uid32_t uid_t;
82#line 40 "include/linux/types.h"
83typedef __kernel_gid32_t gid_t;
84#line 53 "include/linux/types.h"
85typedef __kernel_loff_t loff_t;
86#line 62 "include/linux/types.h"
87typedef __kernel_size_t size_t;
88#line 67 "include/linux/types.h"
89typedef __kernel_ssize_t ssize_t;
90#line 77 "include/linux/types.h"
91typedef __kernel_time_t time_t;
92#line 87 "include/linux/types.h"
93typedef __kernel_caddr_t *caddr_t;
94#line 91 "include/linux/types.h"
95typedef unsigned char u_char;
96#line 110 "include/linux/types.h"
97typedef __s32 int32_t;
98#line 116 "include/linux/types.h"
99typedef __u32 uint32_t;
100#line 141 "include/linux/types.h"
101typedef unsigned long sector_t;
102#line 142 "include/linux/types.h"
103typedef unsigned long blkcnt_t;
104#line 154 "include/linux/types.h"
105typedef u64 dma_addr_t;
106#line 201 "include/linux/types.h"
107typedef unsigned int gfp_t;
108#line 202 "include/linux/types.h"
109typedef unsigned int fmode_t;
110#line 205 "include/linux/types.h"
111typedef u64 phys_addr_t;
112#line 210 "include/linux/types.h"
113typedef phys_addr_t resource_size_t;
114#line 214 "include/linux/types.h"
115struct __anonstruct_atomic_t_6 {
116 int counter ;
117};
118#line 214 "include/linux/types.h"
119typedef struct __anonstruct_atomic_t_6 atomic_t;
120#line 219 "include/linux/types.h"
121struct __anonstruct_atomic64_t_7 {
122 long counter ;
123};
124#line 219 "include/linux/types.h"
125typedef struct __anonstruct_atomic64_t_7 atomic64_t;
126#line 220 "include/linux/types.h"
127struct list_head {
128 struct list_head *next ;
129 struct list_head *prev ;
130};
131#line 225
132struct hlist_node;
133#line 225
134struct hlist_node;
135#line 225
136struct hlist_node;
137#line 225 "include/linux/types.h"
138struct hlist_head {
139 struct hlist_node *first ;
140};
141#line 229 "include/linux/types.h"
142struct hlist_node {
143 struct hlist_node *next ;
144 struct hlist_node **pprev ;
145};
146#line 58 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
147struct module;
148#line 58
149struct module;
150#line 58
151struct module;
152#line 58
153struct module;
154#line 145 "include/linux/init.h"
155typedef void (*ctor_fn_t)(void);
156#line 48 "include/linux/dynamic_debug.h"
157struct bug_entry {
158 int bug_addr_disp ;
159 int file_disp ;
160 unsigned short line ;
161 unsigned short flags ;
162};
163#line 70 "include/asm-generic/bug.h"
164struct completion;
165#line 70
166struct completion;
167#line 70
168struct completion;
169#line 70
170struct completion;
171#line 71
172struct pt_regs;
173#line 71
174struct pt_regs;
175#line 71
176struct pt_regs;
177#line 71
178struct pt_regs;
179#line 321 "include/linux/kernel.h"
180struct pid;
181#line 321
182struct pid;
183#line 321
184struct pid;
185#line 321
186struct pid;
187#line 671
188struct timespec;
189#line 671
190struct timespec;
191#line 671
192struct timespec;
193#line 671
194struct timespec;
195#line 672
196struct compat_timespec;
197#line 672
198struct compat_timespec;
199#line 672
200struct compat_timespec;
201#line 672
202struct compat_timespec;
203#line 673 "include/linux/kernel.h"
204struct __anonstruct_futex_9 {
205 u32 *uaddr ;
206 u32 val ;
207 u32 flags ;
208 u32 bitset ;
209 u64 time ;
210 u32 *uaddr2 ;
211};
212#line 673 "include/linux/kernel.h"
213struct __anonstruct_nanosleep_10 {
214 clockid_t clockid ;
215 struct timespec *rmtp ;
216 struct compat_timespec *compat_rmtp ;
217 u64 expires ;
218};
219#line 673
220struct pollfd;
221#line 673
222struct pollfd;
223#line 673
224struct pollfd;
225#line 673 "include/linux/kernel.h"
226struct __anonstruct_poll_11 {
227 struct pollfd *ufds ;
228 int nfds ;
229 int has_timeout ;
230 unsigned long tv_sec ;
231 unsigned long tv_nsec ;
232};
233#line 673 "include/linux/kernel.h"
234union __anonunion_ldv_2052_8 {
235 struct __anonstruct_futex_9 futex ;
236 struct __anonstruct_nanosleep_10 nanosleep ;
237 struct __anonstruct_poll_11 poll ;
238};
239#line 673 "include/linux/kernel.h"
240struct restart_block {
241 long (*fn)(struct restart_block * ) ;
242 union __anonunion_ldv_2052_8 ldv_2052 ;
243};
244#line 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page_types.h"
245struct page;
246#line 59
247struct page;
248#line 59
249struct page;
250#line 59
251struct page;
252#line 21 "include/asm-generic/getorder.h"
253struct task_struct;
254#line 21
255struct task_struct;
256#line 21
257struct task_struct;
258#line 21
259struct task_struct;
260#line 22
261struct exec_domain;
262#line 22
263struct exec_domain;
264#line 22
265struct exec_domain;
266#line 22
267struct exec_domain;
268#line 23
269struct mm_struct;
270#line 23
271struct mm_struct;
272#line 23
273struct mm_struct;
274#line 23
275struct mm_struct;
276#line 215 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/segment.h"
277struct pt_regs {
278 unsigned long r15 ;
279 unsigned long r14 ;
280 unsigned long r13 ;
281 unsigned long r12 ;
282 unsigned long bp ;
283 unsigned long bx ;
284 unsigned long r11 ;
285 unsigned long r10 ;
286 unsigned long r9 ;
287 unsigned long r8 ;
288 unsigned long ax ;
289 unsigned long cx ;
290 unsigned long dx ;
291 unsigned long si ;
292 unsigned long di ;
293 unsigned long orig_ax ;
294 unsigned long ip ;
295 unsigned long cs ;
296 unsigned long flags ;
297 unsigned long sp ;
298 unsigned long ss ;
299};
300#line 282 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
301struct kernel_vm86_regs {
302 struct pt_regs pt ;
303 unsigned short es ;
304 unsigned short __esh ;
305 unsigned short ds ;
306 unsigned short __dsh ;
307 unsigned short fs ;
308 unsigned short __fsh ;
309 unsigned short gs ;
310 unsigned short __gsh ;
311};
312#line 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
313union __anonunion_ldv_2292_12 {
314 struct pt_regs *regs ;
315 struct kernel_vm86_regs *vm86 ;
316};
317#line 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
318struct math_emu_info {
319 long ___orig_eip ;
320 union __anonunion_ldv_2292_12 ldv_2292 ;
321};
322#line 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
323typedef unsigned long pgdval_t;
324#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
325typedef unsigned long pgprotval_t;
326#line 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
327struct pgprot {
328 pgprotval_t pgprot ;
329};
330#line 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
331typedef struct pgprot pgprot_t;
332#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
333struct __anonstruct_pgd_t_15 {
334 pgdval_t pgd ;
335};
336#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
337typedef struct __anonstruct_pgd_t_15 pgd_t;
338#line 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
339typedef struct page *pgtable_t;
340#line 288
341struct file;
342#line 288
343struct file;
344#line 288
345struct file;
346#line 288
347struct file;
348#line 303
349struct seq_file;
350#line 303
351struct seq_file;
352#line 303
353struct seq_file;
354#line 303
355struct seq_file;
356#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
357struct __anonstruct_ldv_2526_19 {
358 unsigned int a ;
359 unsigned int b ;
360};
361#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
362struct __anonstruct_ldv_2541_20 {
363 u16 limit0 ;
364 u16 base0 ;
365 unsigned char base1 ;
366 unsigned char type : 4 ;
367 unsigned char s : 1 ;
368 unsigned char dpl : 2 ;
369 unsigned char p : 1 ;
370 unsigned char limit : 4 ;
371 unsigned char avl : 1 ;
372 unsigned char l : 1 ;
373 unsigned char d : 1 ;
374 unsigned char g : 1 ;
375 unsigned char base2 ;
376};
377#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
378union __anonunion_ldv_2542_18 {
379 struct __anonstruct_ldv_2526_19 ldv_2526 ;
380 struct __anonstruct_ldv_2541_20 ldv_2541 ;
381};
382#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
383struct desc_struct {
384 union __anonunion_ldv_2542_18 ldv_2542 ;
385};
386#line 43 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
387struct gate_struct64 {
388 u16 offset_low ;
389 u16 segment ;
390 unsigned char ist : 3 ;
391 unsigned char zero0 : 5 ;
392 unsigned char type : 5 ;
393 unsigned char dpl : 2 ;
394 unsigned char p : 1 ;
395 u16 offset_middle ;
396 u32 offset_high ;
397 u32 zero1 ;
398};
399#line 81 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
400typedef struct gate_struct64 gate_desc;
401#line 84 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
402struct desc_ptr {
403 unsigned short size ;
404 unsigned long address ;
405};
406#line 122
407struct thread_struct;
408#line 122
409struct thread_struct;
410#line 122
411struct thread_struct;
412#line 122
413struct thread_struct;
414#line 123
415struct tss_struct;
416#line 123
417struct tss_struct;
418#line 123
419struct tss_struct;
420#line 123
421struct tss_struct;
422#line 124
423struct cpumask;
424#line 124
425struct cpumask;
426#line 124
427struct cpumask;
428#line 124
429struct cpumask;
430#line 125 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
431struct paravirt_callee_save {
432 void *func ;
433};
434#line 94 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
435struct pv_cpu_ops {
436 unsigned long (*get_debugreg)(int ) ;
437 void (*set_debugreg)(int , unsigned long ) ;
438 void (*clts)(void) ;
439 unsigned long (*read_cr0)(void) ;
440 void (*write_cr0)(unsigned long ) ;
441 unsigned long (*read_cr4_safe)(void) ;
442 unsigned long (*read_cr4)(void) ;
443 void (*write_cr4)(unsigned long ) ;
444 unsigned long (*read_cr8)(void) ;
445 void (*write_cr8)(unsigned long ) ;
446 void (*load_tr_desc)(void) ;
447 void (*load_gdt)(struct desc_ptr const * ) ;
448 void (*load_idt)(struct desc_ptr const * ) ;
449 void (*store_gdt)(struct desc_ptr * ) ;
450 void (*store_idt)(struct desc_ptr * ) ;
451 void (*set_ldt)(void const * , unsigned int ) ;
452 unsigned long (*store_tr)(void) ;
453 void (*load_tls)(struct thread_struct * , unsigned int ) ;
454 void (*load_gs_index)(unsigned int ) ;
455 void (*write_ldt_entry)(struct desc_struct * , int , void const * ) ;
456 void (*write_gdt_entry)(struct desc_struct * , int , void const * , int ) ;
457 void (*write_idt_entry)(gate_desc * , int , gate_desc const * ) ;
458 void (*alloc_ldt)(struct desc_struct * , unsigned int ) ;
459 void (*free_ldt)(struct desc_struct * , unsigned int ) ;
460 void (*load_sp0)(struct tss_struct * , struct thread_struct * ) ;
461 void (*set_iopl_mask)(unsigned int ) ;
462 void (*wbinvd)(void) ;
463 void (*io_delay)(void) ;
464 void (*cpuid)(unsigned int * , unsigned int * , unsigned int * , unsigned int * ) ;
465 u64 (*read_msr)(unsigned int , int * ) ;
466 int (*rdmsr_regs)(u32 * ) ;
467 int (*write_msr)(unsigned int , unsigned int , unsigned int ) ;
468 int (*wrmsr_regs)(u32 * ) ;
469 u64 (*read_tsc)(void) ;
470 u64 (*read_pmc)(int ) ;
471 unsigned long long (*read_tscp)(unsigned int * ) ;
472 void (*irq_enable_sysexit)(void) ;
473 void (*usergs_sysret64)(void) ;
474 void (*usergs_sysret32)(void) ;
475 void (*iret)(void) ;
476 void (*swapgs)(void) ;
477 void (*start_context_switch)(struct task_struct * ) ;
478 void (*end_context_switch)(struct task_struct * ) ;
479};
480#line 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
481struct pv_irq_ops {
482 struct paravirt_callee_save save_fl ;
483 struct paravirt_callee_save restore_fl ;
484 struct paravirt_callee_save irq_disable ;
485 struct paravirt_callee_save irq_enable ;
486 void (*safe_halt)(void) ;
487 void (*halt)(void) ;
488 void (*adjust_exception_frame)(void) ;
489};
490#line 320
491struct arch_spinlock;
492#line 320
493struct arch_spinlock;
494#line 320
495struct arch_spinlock;
496#line 320
497struct arch_spinlock;
498#line 304 "include/linux/bitmap.h"
499struct cpumask {
500 unsigned long bits[64U] ;
501};
502#line 13 "include/linux/cpumask.h"
503typedef struct cpumask cpumask_t;
504#line 622 "include/linux/cpumask.h"
505typedef struct cpumask *cpumask_var_t;
506#line 90 "include/linux/personality.h"
507struct map_segment;
508#line 90
509struct map_segment;
510#line 90
511struct map_segment;
512#line 90 "include/linux/personality.h"
513struct exec_domain {
514 char const *name ;
515 void (*handler)(int , struct pt_regs * ) ;
516 unsigned char pers_low ;
517 unsigned char pers_high ;
518 unsigned long *signal_map ;
519 unsigned long *signal_invmap ;
520 struct map_segment *err_map ;
521 struct map_segment *socktype_map ;
522 struct map_segment *sockopt_map ;
523 struct map_segment *af_map ;
524 struct module *module ;
525 struct exec_domain *next ;
526};
527#line 189 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
528struct x86_hw_tss {
529 u32 reserved1 ;
530 u64 sp0 ;
531 u64 sp1 ;
532 u64 sp2 ;
533 u64 reserved2 ;
534 u64 ist[7U] ;
535 u32 reserved3 ;
536 u32 reserved4 ;
537 u16 reserved5 ;
538 u16 io_bitmap_base ;
539};
540#line 236 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
541struct tss_struct {
542 struct x86_hw_tss x86_tss ;
543 unsigned long io_bitmap[1025U] ;
544 unsigned long stack[64U] ;
545};
546#line 277 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
547struct i387_fsave_struct {
548 u32 cwd ;
549 u32 swd ;
550 u32 twd ;
551 u32 fip ;
552 u32 fcs ;
553 u32 foo ;
554 u32 fos ;
555 u32 st_space[20U] ;
556 u32 status ;
557};
558#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
559struct __anonstruct_ldv_5171_24 {
560 u64 rip ;
561 u64 rdp ;
562};
563#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
564struct __anonstruct_ldv_5177_25 {
565 u32 fip ;
566 u32 fcs ;
567 u32 foo ;
568 u32 fos ;
569};
570#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
571union __anonunion_ldv_5178_23 {
572 struct __anonstruct_ldv_5171_24 ldv_5171 ;
573 struct __anonstruct_ldv_5177_25 ldv_5177 ;
574};
575#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
576union __anonunion_ldv_5187_26 {
577 u32 padding1[12U] ;
578 u32 sw_reserved[12U] ;
579};
580#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
581struct i387_fxsave_struct {
582 u16 cwd ;
583 u16 swd ;
584 u16 twd ;
585 u16 fop ;
586 union __anonunion_ldv_5178_23 ldv_5178 ;
587 u32 mxcsr ;
588 u32 mxcsr_mask ;
589 u32 st_space[32U] ;
590 u32 xmm_space[64U] ;
591 u32 padding[12U] ;
592 union __anonunion_ldv_5187_26 ldv_5187 ;
593};
594#line 329 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
595struct i387_soft_struct {
596 u32 cwd ;
597 u32 swd ;
598 u32 twd ;
599 u32 fip ;
600 u32 fcs ;
601 u32 foo ;
602 u32 fos ;
603 u32 st_space[20U] ;
604 u8 ftop ;
605 u8 changed ;
606 u8 lookahead ;
607 u8 no_update ;
608 u8 rm ;
609 u8 alimit ;
610 struct math_emu_info *info ;
611 u32 entry_eip ;
612};
613#line 350 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
614struct ymmh_struct {
615 u32 ymmh_space[64U] ;
616};
617#line 355 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
618struct xsave_hdr_struct {
619 u64 xstate_bv ;
620 u64 reserved1[2U] ;
621 u64 reserved2[5U] ;
622};
623#line 361 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
624struct xsave_struct {
625 struct i387_fxsave_struct i387 ;
626 struct xsave_hdr_struct xsave_hdr ;
627 struct ymmh_struct ymmh ;
628};
629#line 367 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
630union thread_xstate {
631 struct i387_fsave_struct fsave ;
632 struct i387_fxsave_struct fxsave ;
633 struct i387_soft_struct soft ;
634 struct xsave_struct xsave ;
635};
636#line 375 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
637struct fpu {
638 union thread_xstate *state ;
639};
640#line 421
641struct kmem_cache;
642#line 421
643struct kmem_cache;
644#line 421
645struct kmem_cache;
646#line 422
647struct perf_event;
648#line 422
649struct perf_event;
650#line 422
651struct perf_event;
652#line 422
653struct perf_event;
654#line 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
655struct thread_struct {
656 struct desc_struct tls_array[3U] ;
657 unsigned long sp0 ;
658 unsigned long sp ;
659 unsigned long usersp ;
660 unsigned short es ;
661 unsigned short ds ;
662 unsigned short fsindex ;
663 unsigned short gsindex ;
664 unsigned long fs ;
665 unsigned long gs ;
666 struct perf_event *ptrace_bps[4U] ;
667 unsigned long debugreg6 ;
668 unsigned long ptrace_dr7 ;
669 unsigned long cr2 ;
670 unsigned long trap_no ;
671 unsigned long error_code ;
672 struct fpu fpu ;
673 unsigned long *io_bitmap_ptr ;
674 unsigned long iopl ;
675 unsigned int io_bitmap_max ;
676};
677#line 622 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
678struct __anonstruct_mm_segment_t_28 {
679 unsigned long seg ;
680};
681#line 622 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
682typedef struct __anonstruct_mm_segment_t_28 mm_segment_t;
683#line 23 "include/asm-generic/atomic-long.h"
684typedef atomic64_t atomic_long_t;
685#line 131 "include/asm-generic/atomic-long.h"
686struct thread_info {
687 struct task_struct *task ;
688 struct exec_domain *exec_domain ;
689 __u32 flags ;
690 __u32 status ;
691 __u32 cpu ;
692 int preempt_count ;
693 mm_segment_t addr_limit ;
694 struct restart_block restart_block ;
695 void *sysenter_return ;
696 int uaccess_err ;
697};
698#line 8 "include/linux/bottom_half.h"
699struct arch_spinlock {
700 unsigned int slock ;
701};
702#line 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
703typedef struct arch_spinlock arch_spinlock_t;
704#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
705struct __anonstruct_arch_rwlock_t_29 {
706 unsigned int lock ;
707};
708#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
709typedef struct __anonstruct_arch_rwlock_t_29 arch_rwlock_t;
710#line 17
711struct lockdep_map;
712#line 17
713struct lockdep_map;
714#line 17
715struct lockdep_map;
716#line 17
717struct lockdep_map;
718#line 55 "include/linux/debug_locks.h"
719struct stack_trace {
720 unsigned int nr_entries ;
721 unsigned int max_entries ;
722 unsigned long *entries ;
723 int skip ;
724};
725#line 26 "include/linux/stacktrace.h"
726struct lockdep_subclass_key {
727 char __one_byte ;
728};
729#line 53 "include/linux/lockdep.h"
730struct lock_class_key {
731 struct lockdep_subclass_key subkeys[8U] ;
732};
733#line 59 "include/linux/lockdep.h"
734struct lock_class {
735 struct list_head hash_entry ;
736 struct list_head lock_entry ;
737 struct lockdep_subclass_key *key ;
738 unsigned int subclass ;
739 unsigned int dep_gen_id ;
740 unsigned long usage_mask ;
741 struct stack_trace usage_traces[13U] ;
742 struct list_head locks_after ;
743 struct list_head locks_before ;
744 unsigned int version ;
745 unsigned long ops ;
746 char const *name ;
747 int name_version ;
748 unsigned long contention_point[4U] ;
749 unsigned long contending_point[4U] ;
750};
751#line 144 "include/linux/lockdep.h"
752struct lockdep_map {
753 struct lock_class_key *key ;
754 struct lock_class *class_cache[2U] ;
755 char const *name ;
756 int cpu ;
757 unsigned long ip ;
758};
759#line 187 "include/linux/lockdep.h"
760struct held_lock {
761 u64 prev_chain_key ;
762 unsigned long acquire_ip ;
763 struct lockdep_map *instance ;
764 struct lockdep_map *nest_lock ;
765 u64 waittime_stamp ;
766 u64 holdtime_stamp ;
767 unsigned short class_idx : 13 ;
768 unsigned char irq_context : 2 ;
769 unsigned char trylock : 1 ;
770 unsigned char read : 2 ;
771 unsigned char check : 2 ;
772 unsigned char hardirqs_off : 1 ;
773 unsigned short references : 11 ;
774};
775#line 552 "include/linux/lockdep.h"
776struct raw_spinlock {
777 arch_spinlock_t raw_lock ;
778 unsigned int magic ;
779 unsigned int owner_cpu ;
780 void *owner ;
781 struct lockdep_map dep_map ;
782};
783#line 32 "include/linux/spinlock_types.h"
784typedef struct raw_spinlock raw_spinlock_t;
785#line 33 "include/linux/spinlock_types.h"
786struct __anonstruct_ldv_6059_31 {
787 u8 __padding[24U] ;
788 struct lockdep_map dep_map ;
789};
790#line 33 "include/linux/spinlock_types.h"
791union __anonunion_ldv_6060_30 {
792 struct raw_spinlock rlock ;
793 struct __anonstruct_ldv_6059_31 ldv_6059 ;
794};
795#line 33 "include/linux/spinlock_types.h"
796struct spinlock {
797 union __anonunion_ldv_6060_30 ldv_6060 ;
798};
799#line 76 "include/linux/spinlock_types.h"
800typedef struct spinlock spinlock_t;
801#line 23 "include/linux/rwlock_types.h"
802struct __anonstruct_rwlock_t_32 {
803 arch_rwlock_t raw_lock ;
804 unsigned int magic ;
805 unsigned int owner_cpu ;
806 void *owner ;
807 struct lockdep_map dep_map ;
808};
809#line 23 "include/linux/rwlock_types.h"
810typedef struct __anonstruct_rwlock_t_32 rwlock_t;
811#line 110 "include/linux/seqlock.h"
812struct seqcount {
813 unsigned int sequence ;
814};
815#line 121 "include/linux/seqlock.h"
816typedef struct seqcount seqcount_t;
817#line 233 "include/linux/seqlock.h"
818struct timespec {
819 __kernel_time_t tv_sec ;
820 long tv_nsec ;
821};
822#line 286 "include/linux/time.h"
823struct kstat {
824 u64 ino ;
825 dev_t dev ;
826 umode_t mode ;
827 unsigned int nlink ;
828 uid_t uid ;
829 gid_t gid ;
830 dev_t rdev ;
831 loff_t size ;
832 struct timespec atime ;
833 struct timespec mtime ;
834 struct timespec ctime ;
835 unsigned long blksize ;
836 unsigned long long blocks ;
837};
838#line 49 "include/linux/wait.h"
839struct __wait_queue_head {
840 spinlock_t lock ;
841 struct list_head task_list ;
842};
843#line 54 "include/linux/wait.h"
844typedef struct __wait_queue_head wait_queue_head_t;
845#line 96 "include/linux/nodemask.h"
846struct __anonstruct_nodemask_t_34 {
847 unsigned long bits[16U] ;
848};
849#line 96 "include/linux/nodemask.h"
850typedef struct __anonstruct_nodemask_t_34 nodemask_t;
851#line 640 "include/linux/mmzone.h"
852struct mutex {
853 atomic_t count ;
854 spinlock_t wait_lock ;
855 struct list_head wait_list ;
856 struct task_struct *owner ;
857 char const *name ;
858 void *magic ;
859 struct lockdep_map dep_map ;
860};
861#line 63 "include/linux/mutex.h"
862struct mutex_waiter {
863 struct list_head list ;
864 struct task_struct *task ;
865 void *magic ;
866};
867#line 171
868struct rw_semaphore;
869#line 171
870struct rw_semaphore;
871#line 171
872struct rw_semaphore;
873#line 171
874struct rw_semaphore;
875#line 172 "include/linux/mutex.h"
876struct rw_semaphore {
877 long count ;
878 spinlock_t wait_lock ;
879 struct list_head wait_list ;
880 struct lockdep_map dep_map ;
881};
882#line 139 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/e820.h"
883struct resource {
884 resource_size_t start ;
885 resource_size_t end ;
886 char const *name ;
887 unsigned long flags ;
888 struct resource *parent ;
889 struct resource *sibling ;
890 struct resource *child ;
891};
892#line 25 "include/linux/ioport.h"
893struct pci_dev;
894#line 25
895struct pci_dev;
896#line 25
897struct pci_dev;
898#line 175
899struct device;
900#line 175
901struct device;
902#line 175
903struct device;
904#line 175
905struct device;
906#line 312 "include/linux/jiffies.h"
907union ktime {
908 s64 tv64 ;
909};
910#line 59 "include/linux/ktime.h"
911typedef union ktime ktime_t;
912#line 99 "include/linux/debugobjects.h"
913struct tvec_base;
914#line 99
915struct tvec_base;
916#line 99
917struct tvec_base;
918#line 99
919struct tvec_base;
920#line 100 "include/linux/debugobjects.h"
921struct timer_list {
922 struct list_head entry ;
923 unsigned long expires ;
924 struct tvec_base *base ;
925 void (*function)(unsigned long ) ;
926 unsigned long data ;
927 int slack ;
928 int start_pid ;
929 void *start_site ;
930 char start_comm[16U] ;
931 struct lockdep_map lockdep_map ;
932};
933#line 289 "include/linux/timer.h"
934struct hrtimer;
935#line 289
936struct hrtimer;
937#line 289
938struct hrtimer;
939#line 289
940struct hrtimer;
941#line 290
942enum hrtimer_restart;
943#line 290
944enum hrtimer_restart;
945#line 290
946enum hrtimer_restart;
947#line 301
948struct workqueue_struct;
949#line 301
950struct workqueue_struct;
951#line 301
952struct workqueue_struct;
953#line 301
954struct workqueue_struct;
955#line 302
956struct work_struct;
957#line 302
958struct work_struct;
959#line 302
960struct work_struct;
961#line 302
962struct work_struct;
963#line 45 "include/linux/workqueue.h"
964struct work_struct {
965 atomic_long_t data ;
966 struct list_head entry ;
967 void (*func)(struct work_struct * ) ;
968 struct lockdep_map lockdep_map ;
969};
970#line 86 "include/linux/workqueue.h"
971struct delayed_work {
972 struct work_struct work ;
973 struct timer_list timer ;
974};
975#line 102 "include/linux/workqueue.h"
976struct execute_work {
977 struct work_struct work ;
978};
979#line 443 "include/linux/workqueue.h"
980struct completion {
981 unsigned int done ;
982 wait_queue_head_t wait ;
983};
984#line 46 "include/linux/pm.h"
985struct pm_message {
986 int event ;
987};
988#line 52 "include/linux/pm.h"
989typedef struct pm_message pm_message_t;
990#line 53 "include/linux/pm.h"
991struct dev_pm_ops {
992 int (*prepare)(struct device * ) ;
993 void (*complete)(struct device * ) ;
994 int (*suspend)(struct device * ) ;
995 int (*resume)(struct device * ) ;
996 int (*freeze)(struct device * ) ;
997 int (*thaw)(struct device * ) ;
998 int (*poweroff)(struct device * ) ;
999 int (*restore)(struct device * ) ;
1000 int (*suspend_noirq)(struct device * ) ;
1001 int (*resume_noirq)(struct device * ) ;
1002 int (*freeze_noirq)(struct device * ) ;
1003 int (*thaw_noirq)(struct device * ) ;
1004 int (*poweroff_noirq)(struct device * ) ;
1005 int (*restore_noirq)(struct device * ) ;
1006 int (*runtime_suspend)(struct device * ) ;
1007 int (*runtime_resume)(struct device * ) ;
1008 int (*runtime_idle)(struct device * ) ;
1009};
1010#line 272
1011enum rpm_status {
1012 RPM_ACTIVE = 0,
1013 RPM_RESUMING = 1,
1014 RPM_SUSPENDED = 2,
1015 RPM_SUSPENDING = 3
1016} ;
1017#line 279
1018enum rpm_request {
1019 RPM_REQ_NONE = 0,
1020 RPM_REQ_IDLE = 1,
1021 RPM_REQ_SUSPEND = 2,
1022 RPM_REQ_AUTOSUSPEND = 3,
1023 RPM_REQ_RESUME = 4
1024} ;
1025#line 287
1026struct wakeup_source;
1027#line 287
1028struct wakeup_source;
1029#line 287
1030struct wakeup_source;
1031#line 287
1032struct wakeup_source;
1033#line 288 "include/linux/pm.h"
1034struct dev_pm_info {
1035 pm_message_t power_state ;
1036 unsigned char can_wakeup : 1 ;
1037 unsigned char async_suspend : 1 ;
1038 bool is_prepared ;
1039 bool is_suspended ;
1040 spinlock_t lock ;
1041 struct list_head entry ;
1042 struct completion completion ;
1043 struct wakeup_source *wakeup ;
1044 struct timer_list suspend_timer ;
1045 unsigned long timer_expires ;
1046 struct work_struct work ;
1047 wait_queue_head_t wait_queue ;
1048 atomic_t usage_count ;
1049 atomic_t child_count ;
1050 unsigned char disable_depth : 3 ;
1051 unsigned char ignore_children : 1 ;
1052 unsigned char idle_notification : 1 ;
1053 unsigned char request_pending : 1 ;
1054 unsigned char deferred_resume : 1 ;
1055 unsigned char run_wake : 1 ;
1056 unsigned char runtime_auto : 1 ;
1057 unsigned char no_callbacks : 1 ;
1058 unsigned char irq_safe : 1 ;
1059 unsigned char use_autosuspend : 1 ;
1060 unsigned char timer_autosuspends : 1 ;
1061 enum rpm_request request ;
1062 enum rpm_status runtime_status ;
1063 int runtime_error ;
1064 int autosuspend_delay ;
1065 unsigned long last_busy ;
1066 unsigned long active_jiffies ;
1067 unsigned long suspended_jiffies ;
1068 unsigned long accounting_timestamp ;
1069 void *subsys_data ;
1070};
1071#line 469 "include/linux/pm.h"
1072struct dev_power_domain {
1073 struct dev_pm_ops ops ;
1074};
1075#line 175 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/topology.h"
1076struct pci_bus;
1077#line 175
1078struct pci_bus;
1079#line 175
1080struct pci_bus;
1081#line 175
1082struct pci_bus;
1083#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
1084struct __anonstruct_mm_context_t_99 {
1085 void *ldt ;
1086 int size ;
1087 unsigned short ia32_compat ;
1088 struct mutex lock ;
1089 void *vdso ;
1090};
1091#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
1092typedef struct __anonstruct_mm_context_t_99 mm_context_t;
1093#line 71 "include/asm-generic/iomap.h"
1094struct vm_area_struct;
1095#line 71
1096struct vm_area_struct;
1097#line 71
1098struct vm_area_struct;
1099#line 71
1100struct vm_area_struct;
1101#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
1102struct bio_vec;
1103#line 335
1104struct bio_vec;
1105#line 335
1106struct bio_vec;
1107#line 335
1108struct bio_vec;
1109#line 18 "include/linux/smp.h"
1110struct call_single_data {
1111 struct list_head list ;
1112 void (*func)(void * ) ;
1113 void *info ;
1114 u16 flags ;
1115 u16 priv ;
1116};
1117#line 53 "include/linux/rcupdate.h"
1118struct rcu_head {
1119 struct rcu_head *next ;
1120 void (*func)(struct rcu_head * ) ;
1121};
1122#line 841
1123struct nsproxy;
1124#line 841
1125struct nsproxy;
1126#line 841
1127struct nsproxy;
1128#line 841
1129struct nsproxy;
1130#line 36 "include/linux/kmod.h"
1131struct cred;
1132#line 36
1133struct cred;
1134#line 36
1135struct cred;
1136#line 36
1137struct cred;
1138#line 27 "include/linux/elf.h"
1139typedef __u64 Elf64_Addr;
1140#line 28 "include/linux/elf.h"
1141typedef __u16 Elf64_Half;
1142#line 32 "include/linux/elf.h"
1143typedef __u32 Elf64_Word;
1144#line 33 "include/linux/elf.h"
1145typedef __u64 Elf64_Xword;
1146#line 202 "include/linux/elf.h"
1147struct elf64_sym {
1148 Elf64_Word st_name ;
1149 unsigned char st_info ;
1150 unsigned char st_other ;
1151 Elf64_Half st_shndx ;
1152 Elf64_Addr st_value ;
1153 Elf64_Xword st_size ;
1154};
1155#line 210 "include/linux/elf.h"
1156typedef struct elf64_sym Elf64_Sym;
1157#line 444
1158struct sock;
1159#line 444
1160struct sock;
1161#line 444
1162struct sock;
1163#line 444
1164struct sock;
1165#line 445
1166struct kobject;
1167#line 445
1168struct kobject;
1169#line 445
1170struct kobject;
1171#line 445
1172struct kobject;
1173#line 446
1174enum kobj_ns_type {
1175 KOBJ_NS_TYPE_NONE = 0,
1176 KOBJ_NS_TYPE_NET = 1,
1177 KOBJ_NS_TYPES = 2
1178} ;
1179#line 452 "include/linux/elf.h"
1180struct kobj_ns_type_operations {
1181 enum kobj_ns_type type ;
1182 void *(*grab_current_ns)(void) ;
1183 void const *(*netlink_ns)(struct sock * ) ;
1184 void const *(*initial_ns)(void) ;
1185 void (*drop_ns)(void * ) ;
1186};
1187#line 57 "include/linux/kobject_ns.h"
1188struct attribute {
1189 char const *name ;
1190 mode_t mode ;
1191 struct lock_class_key *key ;
1192 struct lock_class_key skey ;
1193};
1194#line 33 "include/linux/sysfs.h"
1195struct attribute_group {
1196 char const *name ;
1197 mode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
1198 struct attribute **attrs ;
1199};
1200#line 62 "include/linux/sysfs.h"
1201struct bin_attribute {
1202 struct attribute attr ;
1203 size_t size ;
1204 void *private ;
1205 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1206 loff_t , size_t ) ;
1207 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1208 loff_t , size_t ) ;
1209 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
1210};
1211#line 98 "include/linux/sysfs.h"
1212struct sysfs_ops {
1213 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
1214 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
1215};
1216#line 116
1217struct sysfs_dirent;
1218#line 116
1219struct sysfs_dirent;
1220#line 116
1221struct sysfs_dirent;
1222#line 116
1223struct sysfs_dirent;
1224#line 181 "include/linux/sysfs.h"
1225struct kref {
1226 atomic_t refcount ;
1227};
1228#line 49 "include/linux/kobject.h"
1229struct kset;
1230#line 49
1231struct kset;
1232#line 49
1233struct kset;
1234#line 49
1235struct kobj_type;
1236#line 49
1237struct kobj_type;
1238#line 49
1239struct kobj_type;
1240#line 49 "include/linux/kobject.h"
1241struct kobject {
1242 char const *name ;
1243 struct list_head entry ;
1244 struct kobject *parent ;
1245 struct kset *kset ;
1246 struct kobj_type *ktype ;
1247 struct sysfs_dirent *sd ;
1248 struct kref kref ;
1249 unsigned char state_initialized : 1 ;
1250 unsigned char state_in_sysfs : 1 ;
1251 unsigned char state_add_uevent_sent : 1 ;
1252 unsigned char state_remove_uevent_sent : 1 ;
1253 unsigned char uevent_suppress : 1 ;
1254};
1255#line 109 "include/linux/kobject.h"
1256struct kobj_type {
1257 void (*release)(struct kobject * ) ;
1258 struct sysfs_ops const *sysfs_ops ;
1259 struct attribute **default_attrs ;
1260 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
1261 void const *(*namespace)(struct kobject * ) ;
1262};
1263#line 117 "include/linux/kobject.h"
1264struct kobj_uevent_env {
1265 char *envp[32U] ;
1266 int envp_idx ;
1267 char buf[2048U] ;
1268 int buflen ;
1269};
1270#line 124 "include/linux/kobject.h"
1271struct kset_uevent_ops {
1272 int (* const filter)(struct kset * , struct kobject * ) ;
1273 char const *(* const name)(struct kset * , struct kobject * ) ;
1274 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
1275};
1276#line 141 "include/linux/kobject.h"
1277struct kset {
1278 struct list_head list ;
1279 spinlock_t list_lock ;
1280 struct kobject kobj ;
1281 struct kset_uevent_ops const *uevent_ops ;
1282};
1283#line 219
1284struct kernel_param;
1285#line 219
1286struct kernel_param;
1287#line 219
1288struct kernel_param;
1289#line 219
1290struct kernel_param;
1291#line 220 "include/linux/kobject.h"
1292struct kernel_param_ops {
1293 int (*set)(char const * , struct kernel_param const * ) ;
1294 int (*get)(char * , struct kernel_param const * ) ;
1295 void (*free)(void * ) ;
1296};
1297#line 44 "include/linux/moduleparam.h"
1298struct kparam_string;
1299#line 44
1300struct kparam_string;
1301#line 44
1302struct kparam_string;
1303#line 44
1304struct kparam_array;
1305#line 44
1306struct kparam_array;
1307#line 44
1308struct kparam_array;
1309#line 44 "include/linux/moduleparam.h"
1310union __anonunion_ldv_12924_129 {
1311 void *arg ;
1312 struct kparam_string const *str ;
1313 struct kparam_array const *arr ;
1314};
1315#line 44 "include/linux/moduleparam.h"
1316struct kernel_param {
1317 char const *name ;
1318 struct kernel_param_ops const *ops ;
1319 u16 perm ;
1320 u16 flags ;
1321 union __anonunion_ldv_12924_129 ldv_12924 ;
1322};
1323#line 59 "include/linux/moduleparam.h"
1324struct kparam_string {
1325 unsigned int maxlen ;
1326 char *string ;
1327};
1328#line 65 "include/linux/moduleparam.h"
1329struct kparam_array {
1330 unsigned int max ;
1331 unsigned int elemsize ;
1332 unsigned int *num ;
1333 struct kernel_param_ops const *ops ;
1334 void *elem ;
1335};
1336#line 404 "include/linux/moduleparam.h"
1337struct jump_label_key {
1338 atomic_t enabled ;
1339};
1340#line 99 "include/linux/jump_label.h"
1341struct tracepoint;
1342#line 99
1343struct tracepoint;
1344#line 99
1345struct tracepoint;
1346#line 99
1347struct tracepoint;
1348#line 100 "include/linux/jump_label.h"
1349struct tracepoint_func {
1350 void *func ;
1351 void *data ;
1352};
1353#line 29 "include/linux/tracepoint.h"
1354struct tracepoint {
1355 char const *name ;
1356 struct jump_label_key key ;
1357 void (*regfunc)(void) ;
1358 void (*unregfunc)(void) ;
1359 struct tracepoint_func *funcs ;
1360};
1361#line 84 "include/linux/tracepoint.h"
1362struct mod_arch_specific {
1363
1364};
1365#line 127 "include/trace/events/module.h"
1366struct kernel_symbol {
1367 unsigned long value ;
1368 char const *name ;
1369};
1370#line 48 "include/linux/module.h"
1371struct module_attribute {
1372 struct attribute attr ;
1373 ssize_t (*show)(struct module_attribute * , struct module * , char * ) ;
1374 ssize_t (*store)(struct module_attribute * , struct module * , char const * ,
1375 size_t ) ;
1376 void (*setup)(struct module * , char const * ) ;
1377 int (*test)(struct module * ) ;
1378 void (*free)(struct module * ) ;
1379};
1380#line 68
1381struct module_param_attrs;
1382#line 68
1383struct module_param_attrs;
1384#line 68
1385struct module_param_attrs;
1386#line 68 "include/linux/module.h"
1387struct module_kobject {
1388 struct kobject kobj ;
1389 struct module *mod ;
1390 struct kobject *drivers_dir ;
1391 struct module_param_attrs *mp ;
1392};
1393#line 81
1394struct exception_table_entry;
1395#line 81
1396struct exception_table_entry;
1397#line 81
1398struct exception_table_entry;
1399#line 81
1400struct exception_table_entry;
1401#line 218
1402enum module_state {
1403 MODULE_STATE_LIVE = 0,
1404 MODULE_STATE_COMING = 1,
1405 MODULE_STATE_GOING = 2
1406} ;
1407#line 224 "include/linux/module.h"
1408struct module_ref {
1409 unsigned int incs ;
1410 unsigned int decs ;
1411};
1412#line 418
1413struct module_sect_attrs;
1414#line 418
1415struct module_sect_attrs;
1416#line 418
1417struct module_sect_attrs;
1418#line 418
1419struct module_notes_attrs;
1420#line 418
1421struct module_notes_attrs;
1422#line 418
1423struct module_notes_attrs;
1424#line 418
1425struct ftrace_event_call;
1426#line 418
1427struct ftrace_event_call;
1428#line 418
1429struct ftrace_event_call;
1430#line 418 "include/linux/module.h"
1431struct module {
1432 enum module_state state ;
1433 struct list_head list ;
1434 char name[56U] ;
1435 struct module_kobject mkobj ;
1436 struct module_attribute *modinfo_attrs ;
1437 char const *version ;
1438 char const *srcversion ;
1439 struct kobject *holders_dir ;
1440 struct kernel_symbol const *syms ;
1441 unsigned long const *crcs ;
1442 unsigned int num_syms ;
1443 struct kernel_param *kp ;
1444 unsigned int num_kp ;
1445 unsigned int num_gpl_syms ;
1446 struct kernel_symbol const *gpl_syms ;
1447 unsigned long const *gpl_crcs ;
1448 struct kernel_symbol const *unused_syms ;
1449 unsigned long const *unused_crcs ;
1450 unsigned int num_unused_syms ;
1451 unsigned int num_unused_gpl_syms ;
1452 struct kernel_symbol const *unused_gpl_syms ;
1453 unsigned long const *unused_gpl_crcs ;
1454 struct kernel_symbol const *gpl_future_syms ;
1455 unsigned long const *gpl_future_crcs ;
1456 unsigned int num_gpl_future_syms ;
1457 unsigned int num_exentries ;
1458 struct exception_table_entry *extable ;
1459 int (*init)(void) ;
1460 void *module_init ;
1461 void *module_core ;
1462 unsigned int init_size ;
1463 unsigned int core_size ;
1464 unsigned int init_text_size ;
1465 unsigned int core_text_size ;
1466 unsigned int init_ro_size ;
1467 unsigned int core_ro_size ;
1468 struct mod_arch_specific arch ;
1469 unsigned int taints ;
1470 unsigned int num_bugs ;
1471 struct list_head bug_list ;
1472 struct bug_entry *bug_table ;
1473 Elf64_Sym *symtab ;
1474 Elf64_Sym *core_symtab ;
1475 unsigned int num_symtab ;
1476 unsigned int core_num_syms ;
1477 char *strtab ;
1478 char *core_strtab ;
1479 struct module_sect_attrs *sect_attrs ;
1480 struct module_notes_attrs *notes_attrs ;
1481 char *args ;
1482 void *percpu ;
1483 unsigned int percpu_size ;
1484 unsigned int num_tracepoints ;
1485 struct tracepoint * const *tracepoints_ptrs ;
1486 unsigned int num_trace_bprintk_fmt ;
1487 char const **trace_bprintk_fmt_start ;
1488 struct ftrace_event_call **trace_events ;
1489 unsigned int num_trace_events ;
1490 unsigned int num_ftrace_callsites ;
1491 unsigned long *ftrace_callsites ;
1492 struct list_head source_list ;
1493 struct list_head target_list ;
1494 struct task_struct *waiter ;
1495 void (*exit)(void) ;
1496 struct module_ref *refptr ;
1497 ctor_fn_t (**ctors)(void) ;
1498 unsigned int num_ctors ;
1499};
1500#line 8 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
1501struct rb_node {
1502 unsigned long rb_parent_color ;
1503 struct rb_node *rb_right ;
1504 struct rb_node *rb_left ;
1505};
1506#line 108 "include/linux/rbtree.h"
1507struct rb_root {
1508 struct rb_node *rb_node ;
1509};
1510#line 176
1511struct prio_tree_node;
1512#line 176
1513struct prio_tree_node;
1514#line 176
1515struct prio_tree_node;
1516#line 176 "include/linux/rbtree.h"
1517struct raw_prio_tree_node {
1518 struct prio_tree_node *left ;
1519 struct prio_tree_node *right ;
1520 struct prio_tree_node *parent ;
1521};
1522#line 19 "include/linux/prio_tree.h"
1523struct prio_tree_node {
1524 struct prio_tree_node *left ;
1525 struct prio_tree_node *right ;
1526 struct prio_tree_node *parent ;
1527 unsigned long start ;
1528 unsigned long last ;
1529};
1530#line 27 "include/linux/prio_tree.h"
1531struct prio_tree_root {
1532 struct prio_tree_node *prio_tree_node ;
1533 unsigned short index_bits ;
1534 unsigned short raw ;
1535};
1536#line 115
1537struct address_space;
1538#line 115
1539struct address_space;
1540#line 115
1541struct address_space;
1542#line 115
1543struct address_space;
1544#line 116 "include/linux/prio_tree.h"
1545struct __anonstruct_ldv_13775_131 {
1546 u16 inuse ;
1547 u16 objects ;
1548};
1549#line 116 "include/linux/prio_tree.h"
1550union __anonunion_ldv_13776_130 {
1551 atomic_t _mapcount ;
1552 struct __anonstruct_ldv_13775_131 ldv_13775 ;
1553};
1554#line 116 "include/linux/prio_tree.h"
1555struct __anonstruct_ldv_13781_133 {
1556 unsigned long private ;
1557 struct address_space *mapping ;
1558};
1559#line 116 "include/linux/prio_tree.h"
1560union __anonunion_ldv_13784_132 {
1561 struct __anonstruct_ldv_13781_133 ldv_13781 ;
1562 struct kmem_cache *slab ;
1563 struct page *first_page ;
1564};
1565#line 116 "include/linux/prio_tree.h"
1566union __anonunion_ldv_13788_134 {
1567 unsigned long index ;
1568 void *freelist ;
1569};
1570#line 116 "include/linux/prio_tree.h"
1571struct page {
1572 unsigned long flags ;
1573 atomic_t _count ;
1574 union __anonunion_ldv_13776_130 ldv_13776 ;
1575 union __anonunion_ldv_13784_132 ldv_13784 ;
1576 union __anonunion_ldv_13788_134 ldv_13788 ;
1577 struct list_head lru ;
1578};
1579#line 124 "include/linux/mm_types.h"
1580struct __anonstruct_vm_set_136 {
1581 struct list_head list ;
1582 void *parent ;
1583 struct vm_area_struct *head ;
1584};
1585#line 124 "include/linux/mm_types.h"
1586union __anonunion_shared_135 {
1587 struct __anonstruct_vm_set_136 vm_set ;
1588 struct raw_prio_tree_node prio_tree_node ;
1589};
1590#line 124
1591struct anon_vma;
1592#line 124
1593struct anon_vma;
1594#line 124
1595struct anon_vma;
1596#line 124
1597struct vm_operations_struct;
1598#line 124
1599struct vm_operations_struct;
1600#line 124
1601struct vm_operations_struct;
1602#line 124
1603struct mempolicy;
1604#line 124
1605struct mempolicy;
1606#line 124
1607struct mempolicy;
1608#line 124 "include/linux/mm_types.h"
1609struct vm_area_struct {
1610 struct mm_struct *vm_mm ;
1611 unsigned long vm_start ;
1612 unsigned long vm_end ;
1613 struct vm_area_struct *vm_next ;
1614 struct vm_area_struct *vm_prev ;
1615 pgprot_t vm_page_prot ;
1616 unsigned long vm_flags ;
1617 struct rb_node vm_rb ;
1618 union __anonunion_shared_135 shared ;
1619 struct list_head anon_vma_chain ;
1620 struct anon_vma *anon_vma ;
1621 struct vm_operations_struct const *vm_ops ;
1622 unsigned long vm_pgoff ;
1623 struct file *vm_file ;
1624 void *vm_private_data ;
1625 struct mempolicy *vm_policy ;
1626};
1627#line 187 "include/linux/mm_types.h"
1628struct core_thread {
1629 struct task_struct *task ;
1630 struct core_thread *next ;
1631};
1632#line 193 "include/linux/mm_types.h"
1633struct core_state {
1634 atomic_t nr_threads ;
1635 struct core_thread dumper ;
1636 struct completion startup ;
1637};
1638#line 206 "include/linux/mm_types.h"
1639struct mm_rss_stat {
1640 atomic_long_t count[3U] ;
1641};
1642#line 219
1643struct linux_binfmt;
1644#line 219
1645struct linux_binfmt;
1646#line 219
1647struct linux_binfmt;
1648#line 219
1649struct mmu_notifier_mm;
1650#line 219
1651struct mmu_notifier_mm;
1652#line 219
1653struct mmu_notifier_mm;
1654#line 219 "include/linux/mm_types.h"
1655struct mm_struct {
1656 struct vm_area_struct *mmap ;
1657 struct rb_root mm_rb ;
1658 struct vm_area_struct *mmap_cache ;
1659 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1660 unsigned long , unsigned long ) ;
1661 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1662 unsigned long mmap_base ;
1663 unsigned long task_size ;
1664 unsigned long cached_hole_size ;
1665 unsigned long free_area_cache ;
1666 pgd_t *pgd ;
1667 atomic_t mm_users ;
1668 atomic_t mm_count ;
1669 int map_count ;
1670 spinlock_t page_table_lock ;
1671 struct rw_semaphore mmap_sem ;
1672 struct list_head mmlist ;
1673 unsigned long hiwater_rss ;
1674 unsigned long hiwater_vm ;
1675 unsigned long total_vm ;
1676 unsigned long locked_vm ;
1677 unsigned long shared_vm ;
1678 unsigned long exec_vm ;
1679 unsigned long stack_vm ;
1680 unsigned long reserved_vm ;
1681 unsigned long def_flags ;
1682 unsigned long nr_ptes ;
1683 unsigned long start_code ;
1684 unsigned long end_code ;
1685 unsigned long start_data ;
1686 unsigned long end_data ;
1687 unsigned long start_brk ;
1688 unsigned long brk ;
1689 unsigned long start_stack ;
1690 unsigned long arg_start ;
1691 unsigned long arg_end ;
1692 unsigned long env_start ;
1693 unsigned long env_end ;
1694 unsigned long saved_auxv[44U] ;
1695 struct mm_rss_stat rss_stat ;
1696 struct linux_binfmt *binfmt ;
1697 cpumask_var_t cpu_vm_mask_var ;
1698 mm_context_t context ;
1699 unsigned int faultstamp ;
1700 unsigned int token_priority ;
1701 unsigned int last_interval ;
1702 atomic_t oom_disable_count ;
1703 unsigned long flags ;
1704 struct core_state *core_state ;
1705 spinlock_t ioctx_lock ;
1706 struct hlist_head ioctx_list ;
1707 struct task_struct *owner ;
1708 struct file *exe_file ;
1709 unsigned long num_exe_file_vmas ;
1710 struct mmu_notifier_mm *mmu_notifier_mm ;
1711 pgtable_t pmd_huge_pte ;
1712 struct cpumask cpumask_allocation ;
1713};
1714#line 92 "include/linux/bit_spinlock.h"
1715struct file_ra_state;
1716#line 92
1717struct file_ra_state;
1718#line 92
1719struct file_ra_state;
1720#line 92
1721struct file_ra_state;
1722#line 93
1723struct user_struct;
1724#line 93
1725struct user_struct;
1726#line 93
1727struct user_struct;
1728#line 93
1729struct user_struct;
1730#line 94
1731struct writeback_control;
1732#line 94
1733struct writeback_control;
1734#line 94
1735struct writeback_control;
1736#line 94
1737struct writeback_control;
1738#line 175 "include/linux/mm.h"
1739struct vm_fault {
1740 unsigned int flags ;
1741 unsigned long pgoff ;
1742 void *virtual_address ;
1743 struct page *page ;
1744};
1745#line 192 "include/linux/mm.h"
1746struct vm_operations_struct {
1747 void (*open)(struct vm_area_struct * ) ;
1748 void (*close)(struct vm_area_struct * ) ;
1749 int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
1750 int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
1751 int (*access)(struct vm_area_struct * , unsigned long , void * , int , int ) ;
1752 int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
1753 struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long ) ;
1754 int (*migrate)(struct vm_area_struct * , nodemask_t const * , nodemask_t const * ,
1755 unsigned long ) ;
1756};
1757#line 241
1758struct inode;
1759#line 241
1760struct inode;
1761#line 241
1762struct inode;
1763#line 241
1764struct inode;
1765#line 1653
1766struct bio;
1767#line 1653
1768struct bio;
1769#line 1653
1770struct bio;
1771#line 1653
1772struct bio;
1773#line 1654
1774struct bio_integrity_payload;
1775#line 1654
1776struct bio_integrity_payload;
1777#line 1654
1778struct bio_integrity_payload;
1779#line 1654
1780struct bio_integrity_payload;
1781#line 1655
1782struct block_device;
1783#line 1655
1784struct block_device;
1785#line 1655
1786struct block_device;
1787#line 1655
1788struct block_device;
1789#line 17 "include/linux/blk_types.h"
1790typedef void bio_end_io_t(struct bio * , int );
1791#line 18 "include/linux/blk_types.h"
1792typedef void bio_destructor_t(struct bio * );
1793#line 19 "include/linux/blk_types.h"
1794struct bio_vec {
1795 struct page *bv_page ;
1796 unsigned int bv_len ;
1797 unsigned int bv_offset ;
1798};
1799#line 28 "include/linux/blk_types.h"
1800struct bio {
1801 sector_t bi_sector ;
1802 struct bio *bi_next ;
1803 struct block_device *bi_bdev ;
1804 unsigned long bi_flags ;
1805 unsigned long bi_rw ;
1806 unsigned short bi_vcnt ;
1807 unsigned short bi_idx ;
1808 unsigned int bi_phys_segments ;
1809 unsigned int bi_size ;
1810 unsigned int bi_seg_front_size ;
1811 unsigned int bi_seg_back_size ;
1812 unsigned int bi_max_vecs ;
1813 unsigned int bi_comp_cpu ;
1814 atomic_t bi_cnt ;
1815 struct bio_vec *bi_io_vec ;
1816 bio_end_io_t *bi_end_io ;
1817 void *bi_private ;
1818 struct bio_integrity_payload *bi_integrity ;
1819 bio_destructor_t *bi_destructor ;
1820 struct bio_vec bi_inline_vecs[0U] ;
1821};
1822#line 427 "include/linux/rculist.h"
1823struct hlist_bl_node;
1824#line 427
1825struct hlist_bl_node;
1826#line 427
1827struct hlist_bl_node;
1828#line 427 "include/linux/rculist.h"
1829struct hlist_bl_head {
1830 struct hlist_bl_node *first ;
1831};
1832#line 36 "include/linux/list_bl.h"
1833struct hlist_bl_node {
1834 struct hlist_bl_node *next ;
1835 struct hlist_bl_node **pprev ;
1836};
1837#line 114 "include/linux/rculist_bl.h"
1838struct nameidata;
1839#line 114
1840struct nameidata;
1841#line 114
1842struct nameidata;
1843#line 114
1844struct nameidata;
1845#line 115
1846struct path;
1847#line 115
1848struct path;
1849#line 115
1850struct path;
1851#line 115
1852struct path;
1853#line 116
1854struct vfsmount;
1855#line 116
1856struct vfsmount;
1857#line 116
1858struct vfsmount;
1859#line 116
1860struct vfsmount;
1861#line 117 "include/linux/rculist_bl.h"
1862struct qstr {
1863 unsigned int hash ;
1864 unsigned int len ;
1865 unsigned char const *name ;
1866};
1867#line 100 "include/linux/dcache.h"
1868struct dentry_operations;
1869#line 100
1870struct dentry_operations;
1871#line 100
1872struct dentry_operations;
1873#line 100
1874struct super_block;
1875#line 100
1876struct super_block;
1877#line 100
1878struct super_block;
1879#line 100 "include/linux/dcache.h"
1880union __anonunion_d_u_137 {
1881 struct list_head d_child ;
1882 struct rcu_head d_rcu ;
1883};
1884#line 100 "include/linux/dcache.h"
1885struct dentry {
1886 unsigned int d_flags ;
1887 seqcount_t d_seq ;
1888 struct hlist_bl_node d_hash ;
1889 struct dentry *d_parent ;
1890 struct qstr d_name ;
1891 struct inode *d_inode ;
1892 unsigned char d_iname[32U] ;
1893 unsigned int d_count ;
1894 spinlock_t d_lock ;
1895 struct dentry_operations const *d_op ;
1896 struct super_block *d_sb ;
1897 unsigned long d_time ;
1898 void *d_fsdata ;
1899 struct list_head d_lru ;
1900 union __anonunion_d_u_137 d_u ;
1901 struct list_head d_subdirs ;
1902 struct list_head d_alias ;
1903};
1904#line 151 "include/linux/dcache.h"
1905struct dentry_operations {
1906 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1907 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1908 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1909 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1910 int (*d_delete)(struct dentry const * ) ;
1911 void (*d_release)(struct dentry * ) ;
1912 void (*d_iput)(struct dentry * , struct inode * ) ;
1913 char *(*d_dname)(struct dentry * , char * , int ) ;
1914 struct vfsmount *(*d_automount)(struct path * ) ;
1915 int (*d_manage)(struct dentry * , bool ) ;
1916};
1917#line 422 "include/linux/dcache.h"
1918struct path {
1919 struct vfsmount *mnt ;
1920 struct dentry *dentry ;
1921};
1922#line 51 "include/linux/radix-tree.h"
1923struct radix_tree_node;
1924#line 51
1925struct radix_tree_node;
1926#line 51
1927struct radix_tree_node;
1928#line 51 "include/linux/radix-tree.h"
1929struct radix_tree_root {
1930 unsigned int height ;
1931 gfp_t gfp_mask ;
1932 struct radix_tree_node *rnode ;
1933};
1934#line 229
1935enum pid_type {
1936 PIDTYPE_PID = 0,
1937 PIDTYPE_PGID = 1,
1938 PIDTYPE_SID = 2,
1939 PIDTYPE_MAX = 3
1940} ;
1941#line 236
1942struct pid_namespace;
1943#line 236
1944struct pid_namespace;
1945#line 236
1946struct pid_namespace;
1947#line 236 "include/linux/radix-tree.h"
1948struct upid {
1949 int nr ;
1950 struct pid_namespace *ns ;
1951 struct hlist_node pid_chain ;
1952};
1953#line 56 "include/linux/pid.h"
1954struct pid {
1955 atomic_t count ;
1956 unsigned int level ;
1957 struct hlist_head tasks[3U] ;
1958 struct rcu_head rcu ;
1959 struct upid numbers[1U] ;
1960};
1961#line 68 "include/linux/pid.h"
1962struct pid_link {
1963 struct hlist_node node ;
1964 struct pid *pid ;
1965};
1966#line 93 "include/linux/capability.h"
1967struct kernel_cap_struct {
1968 __u32 cap[2U] ;
1969};
1970#line 96 "include/linux/capability.h"
1971typedef struct kernel_cap_struct kernel_cap_t;
1972#line 104
1973struct user_namespace;
1974#line 104
1975struct user_namespace;
1976#line 104
1977struct user_namespace;
1978#line 104
1979struct user_namespace;
1980#line 45 "include/linux/semaphore.h"
1981struct fiemap_extent {
1982 __u64 fe_logical ;
1983 __u64 fe_physical ;
1984 __u64 fe_length ;
1985 __u64 fe_reserved64[2U] ;
1986 __u32 fe_flags ;
1987 __u32 fe_reserved[3U] ;
1988};
1989#line 38 "include/linux/fiemap.h"
1990struct export_operations;
1991#line 38
1992struct export_operations;
1993#line 38
1994struct export_operations;
1995#line 38
1996struct export_operations;
1997#line 39
1998struct hd_geometry;
1999#line 39
2000struct hd_geometry;
2001#line 39
2002struct hd_geometry;
2003#line 39
2004struct hd_geometry;
2005#line 40
2006struct iovec;
2007#line 40
2008struct iovec;
2009#line 40
2010struct iovec;
2011#line 40
2012struct iovec;
2013#line 41
2014struct kiocb;
2015#line 41
2016struct kiocb;
2017#line 41
2018struct kiocb;
2019#line 41
2020struct kiocb;
2021#line 42
2022struct pipe_inode_info;
2023#line 42
2024struct pipe_inode_info;
2025#line 42
2026struct pipe_inode_info;
2027#line 42
2028struct pipe_inode_info;
2029#line 43
2030struct poll_table_struct;
2031#line 43
2032struct poll_table_struct;
2033#line 43
2034struct poll_table_struct;
2035#line 43
2036struct poll_table_struct;
2037#line 44
2038struct kstatfs;
2039#line 44
2040struct kstatfs;
2041#line 44
2042struct kstatfs;
2043#line 44
2044struct kstatfs;
2045#line 426 "include/linux/fs.h"
2046struct iattr {
2047 unsigned int ia_valid ;
2048 umode_t ia_mode ;
2049 uid_t ia_uid ;
2050 gid_t ia_gid ;
2051 loff_t ia_size ;
2052 struct timespec ia_atime ;
2053 struct timespec ia_mtime ;
2054 struct timespec ia_ctime ;
2055 struct file *ia_file ;
2056};
2057#line 119 "include/linux/quota.h"
2058struct if_dqinfo {
2059 __u64 dqi_bgrace ;
2060 __u64 dqi_igrace ;
2061 __u32 dqi_flags ;
2062 __u32 dqi_valid ;
2063};
2064#line 152 "include/linux/quota.h"
2065struct percpu_counter {
2066 spinlock_t lock ;
2067 s64 count ;
2068 struct list_head list ;
2069 s32 *counters ;
2070};
2071#line 176 "include/linux/percpu_counter.h"
2072struct fs_disk_quota {
2073 __s8 d_version ;
2074 __s8 d_flags ;
2075 __u16 d_fieldmask ;
2076 __u32 d_id ;
2077 __u64 d_blk_hardlimit ;
2078 __u64 d_blk_softlimit ;
2079 __u64 d_ino_hardlimit ;
2080 __u64 d_ino_softlimit ;
2081 __u64 d_bcount ;
2082 __u64 d_icount ;
2083 __s32 d_itimer ;
2084 __s32 d_btimer ;
2085 __u16 d_iwarns ;
2086 __u16 d_bwarns ;
2087 __s32 d_padding2 ;
2088 __u64 d_rtb_hardlimit ;
2089 __u64 d_rtb_softlimit ;
2090 __u64 d_rtbcount ;
2091 __s32 d_rtbtimer ;
2092 __u16 d_rtbwarns ;
2093 __s16 d_padding3 ;
2094 char d_padding4[8U] ;
2095};
2096#line 75 "include/linux/dqblk_xfs.h"
2097struct fs_qfilestat {
2098 __u64 qfs_ino ;
2099 __u64 qfs_nblks ;
2100 __u32 qfs_nextents ;
2101};
2102#line 150 "include/linux/dqblk_xfs.h"
2103typedef struct fs_qfilestat fs_qfilestat_t;
2104#line 151 "include/linux/dqblk_xfs.h"
2105struct fs_quota_stat {
2106 __s8 qs_version ;
2107 __u16 qs_flags ;
2108 __s8 qs_pad ;
2109 fs_qfilestat_t qs_uquota ;
2110 fs_qfilestat_t qs_gquota ;
2111 __u32 qs_incoredqs ;
2112 __s32 qs_btimelimit ;
2113 __s32 qs_itimelimit ;
2114 __s32 qs_rtbtimelimit ;
2115 __u16 qs_bwarnlimit ;
2116 __u16 qs_iwarnlimit ;
2117};
2118#line 165
2119struct dquot;
2120#line 165
2121struct dquot;
2122#line 165
2123struct dquot;
2124#line 165
2125struct dquot;
2126#line 185 "include/linux/quota.h"
2127typedef __kernel_uid32_t qid_t;
2128#line 186 "include/linux/quota.h"
2129typedef long long qsize_t;
2130#line 189 "include/linux/quota.h"
2131struct mem_dqblk {
2132 qsize_t dqb_bhardlimit ;
2133 qsize_t dqb_bsoftlimit ;
2134 qsize_t dqb_curspace ;
2135 qsize_t dqb_rsvspace ;
2136 qsize_t dqb_ihardlimit ;
2137 qsize_t dqb_isoftlimit ;
2138 qsize_t dqb_curinodes ;
2139 time_t dqb_btime ;
2140 time_t dqb_itime ;
2141};
2142#line 211
2143struct quota_format_type;
2144#line 211
2145struct quota_format_type;
2146#line 211
2147struct quota_format_type;
2148#line 211
2149struct quota_format_type;
2150#line 212 "include/linux/quota.h"
2151struct mem_dqinfo {
2152 struct quota_format_type *dqi_format ;
2153 int dqi_fmt_id ;
2154 struct list_head dqi_dirty_list ;
2155 unsigned long dqi_flags ;
2156 unsigned int dqi_bgrace ;
2157 unsigned int dqi_igrace ;
2158 qsize_t dqi_maxblimit ;
2159 qsize_t dqi_maxilimit ;
2160 void *dqi_priv ;
2161};
2162#line 271 "include/linux/quota.h"
2163struct dquot {
2164 struct hlist_node dq_hash ;
2165 struct list_head dq_inuse ;
2166 struct list_head dq_free ;
2167 struct list_head dq_dirty ;
2168 struct mutex dq_lock ;
2169 atomic_t dq_count ;
2170 wait_queue_head_t dq_wait_unused ;
2171 struct super_block *dq_sb ;
2172 unsigned int dq_id ;
2173 loff_t dq_off ;
2174 unsigned long dq_flags ;
2175 short dq_type ;
2176 struct mem_dqblk dq_dqb ;
2177};
2178#line 299 "include/linux/quota.h"
2179struct quota_format_ops {
2180 int (*check_quota_file)(struct super_block * , int ) ;
2181 int (*read_file_info)(struct super_block * , int ) ;
2182 int (*write_file_info)(struct super_block * , int ) ;
2183 int (*free_file_info)(struct super_block * , int ) ;
2184 int (*read_dqblk)(struct dquot * ) ;
2185 int (*commit_dqblk)(struct dquot * ) ;
2186 int (*release_dqblk)(struct dquot * ) ;
2187};
2188#line 310 "include/linux/quota.h"
2189struct dquot_operations {
2190 int (*write_dquot)(struct dquot * ) ;
2191 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
2192 void (*destroy_dquot)(struct dquot * ) ;
2193 int (*acquire_dquot)(struct dquot * ) ;
2194 int (*release_dquot)(struct dquot * ) ;
2195 int (*mark_dirty)(struct dquot * ) ;
2196 int (*write_info)(struct super_block * , int ) ;
2197 qsize_t *(*get_reserved_space)(struct inode * ) ;
2198};
2199#line 324 "include/linux/quota.h"
2200struct quotactl_ops {
2201 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
2202 int (*quota_on_meta)(struct super_block * , int , int ) ;
2203 int (*quota_off)(struct super_block * , int ) ;
2204 int (*quota_sync)(struct super_block * , int , int ) ;
2205 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
2206 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
2207 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2208 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2209 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
2210 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
2211};
2212#line 340 "include/linux/quota.h"
2213struct quota_format_type {
2214 int qf_fmt_id ;
2215 struct quota_format_ops const *qf_ops ;
2216 struct module *qf_owner ;
2217 struct quota_format_type *qf_next ;
2218};
2219#line 386 "include/linux/quota.h"
2220struct quota_info {
2221 unsigned int flags ;
2222 struct mutex dqio_mutex ;
2223 struct mutex dqonoff_mutex ;
2224 struct rw_semaphore dqptr_sem ;
2225 struct inode *files[2U] ;
2226 struct mem_dqinfo info[2U] ;
2227 struct quota_format_ops const *ops[2U] ;
2228};
2229#line 576 "include/linux/fs.h"
2230union __anonunion_arg_140 {
2231 char *buf ;
2232 void *data ;
2233};
2234#line 576 "include/linux/fs.h"
2235struct __anonstruct_read_descriptor_t_139 {
2236 size_t written ;
2237 size_t count ;
2238 union __anonunion_arg_140 arg ;
2239 int error ;
2240};
2241#line 576 "include/linux/fs.h"
2242typedef struct __anonstruct_read_descriptor_t_139 read_descriptor_t;
2243#line 579 "include/linux/fs.h"
2244struct address_space_operations {
2245 int (*writepage)(struct page * , struct writeback_control * ) ;
2246 int (*readpage)(struct file * , struct page * ) ;
2247 int (*writepages)(struct address_space * , struct writeback_control * ) ;
2248 int (*set_page_dirty)(struct page * ) ;
2249 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
2250 unsigned int ) ;
2251 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
2252 unsigned int , struct page ** , void ** ) ;
2253 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
2254 unsigned int , struct page * , void * ) ;
2255 sector_t (*bmap)(struct address_space * , sector_t ) ;
2256 void (*invalidatepage)(struct page * , unsigned long ) ;
2257 int (*releasepage)(struct page * , gfp_t ) ;
2258 void (*freepage)(struct page * ) ;
2259 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
2260 unsigned long ) ;
2261 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2262 int (*migratepage)(struct address_space * , struct page * , struct page * ) ;
2263 int (*launder_page)(struct page * ) ;
2264 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2265 int (*error_remove_page)(struct address_space * , struct page * ) ;
2266};
2267#line 630
2268struct backing_dev_info;
2269#line 630
2270struct backing_dev_info;
2271#line 630
2272struct backing_dev_info;
2273#line 630
2274struct backing_dev_info;
2275#line 631 "include/linux/fs.h"
2276struct address_space {
2277 struct inode *host ;
2278 struct radix_tree_root page_tree ;
2279 spinlock_t tree_lock ;
2280 unsigned int i_mmap_writable ;
2281 struct prio_tree_root i_mmap ;
2282 struct list_head i_mmap_nonlinear ;
2283 struct mutex i_mmap_mutex ;
2284 unsigned long nrpages ;
2285 unsigned long writeback_index ;
2286 struct address_space_operations const *a_ops ;
2287 unsigned long flags ;
2288 struct backing_dev_info *backing_dev_info ;
2289 spinlock_t private_lock ;
2290 struct list_head private_list ;
2291 struct address_space *assoc_mapping ;
2292};
2293#line 652
2294struct hd_struct;
2295#line 652
2296struct hd_struct;
2297#line 652
2298struct hd_struct;
2299#line 652
2300struct gendisk;
2301#line 652
2302struct gendisk;
2303#line 652
2304struct gendisk;
2305#line 652 "include/linux/fs.h"
2306struct block_device {
2307 dev_t bd_dev ;
2308 int bd_openers ;
2309 struct inode *bd_inode ;
2310 struct super_block *bd_super ;
2311 struct mutex bd_mutex ;
2312 struct list_head bd_inodes ;
2313 void *bd_claiming ;
2314 void *bd_holder ;
2315 int bd_holders ;
2316 bool bd_write_holder ;
2317 struct list_head bd_holder_disks ;
2318 struct block_device *bd_contains ;
2319 unsigned int bd_block_size ;
2320 struct hd_struct *bd_part ;
2321 unsigned int bd_part_count ;
2322 int bd_invalidated ;
2323 struct gendisk *bd_disk ;
2324 struct list_head bd_list ;
2325 unsigned long bd_private ;
2326 int bd_fsfreeze_count ;
2327 struct mutex bd_fsfreeze_mutex ;
2328};
2329#line 723
2330struct posix_acl;
2331#line 723
2332struct posix_acl;
2333#line 723
2334struct posix_acl;
2335#line 723
2336struct posix_acl;
2337#line 724
2338struct inode_operations;
2339#line 724
2340struct inode_operations;
2341#line 724
2342struct inode_operations;
2343#line 724 "include/linux/fs.h"
2344union __anonunion_ldv_17777_141 {
2345 struct list_head i_dentry ;
2346 struct rcu_head i_rcu ;
2347};
2348#line 724
2349struct file_operations;
2350#line 724
2351struct file_operations;
2352#line 724
2353struct file_operations;
2354#line 724
2355struct file_lock;
2356#line 724
2357struct file_lock;
2358#line 724
2359struct file_lock;
2360#line 724
2361struct cdev;
2362#line 724
2363struct cdev;
2364#line 724
2365struct cdev;
2366#line 724 "include/linux/fs.h"
2367union __anonunion_ldv_17804_142 {
2368 struct pipe_inode_info *i_pipe ;
2369 struct block_device *i_bdev ;
2370 struct cdev *i_cdev ;
2371};
2372#line 724 "include/linux/fs.h"
2373struct inode {
2374 umode_t i_mode ;
2375 uid_t i_uid ;
2376 gid_t i_gid ;
2377 struct inode_operations const *i_op ;
2378 struct super_block *i_sb ;
2379 spinlock_t i_lock ;
2380 unsigned int i_flags ;
2381 unsigned long i_state ;
2382 void *i_security ;
2383 struct mutex i_mutex ;
2384 unsigned long dirtied_when ;
2385 struct hlist_node i_hash ;
2386 struct list_head i_wb_list ;
2387 struct list_head i_lru ;
2388 struct list_head i_sb_list ;
2389 union __anonunion_ldv_17777_141 ldv_17777 ;
2390 unsigned long i_ino ;
2391 atomic_t i_count ;
2392 unsigned int i_nlink ;
2393 dev_t i_rdev ;
2394 unsigned int i_blkbits ;
2395 u64 i_version ;
2396 loff_t i_size ;
2397 struct timespec i_atime ;
2398 struct timespec i_mtime ;
2399 struct timespec i_ctime ;
2400 blkcnt_t i_blocks ;
2401 unsigned short i_bytes ;
2402 struct rw_semaphore i_alloc_sem ;
2403 struct file_operations const *i_fop ;
2404 struct file_lock *i_flock ;
2405 struct address_space *i_mapping ;
2406 struct address_space i_data ;
2407 struct dquot *i_dquot[2U] ;
2408 struct list_head i_devices ;
2409 union __anonunion_ldv_17804_142 ldv_17804 ;
2410 __u32 i_generation ;
2411 __u32 i_fsnotify_mask ;
2412 struct hlist_head i_fsnotify_marks ;
2413 atomic_t i_readcount ;
2414 atomic_t i_writecount ;
2415 struct posix_acl *i_acl ;
2416 struct posix_acl *i_default_acl ;
2417 void *i_private ;
2418};
2419#line 902 "include/linux/fs.h"
2420struct fown_struct {
2421 rwlock_t lock ;
2422 struct pid *pid ;
2423 enum pid_type pid_type ;
2424 uid_t uid ;
2425 uid_t euid ;
2426 int signum ;
2427};
2428#line 910 "include/linux/fs.h"
2429struct file_ra_state {
2430 unsigned long start ;
2431 unsigned int size ;
2432 unsigned int async_size ;
2433 unsigned int ra_pages ;
2434 unsigned int mmap_miss ;
2435 loff_t prev_pos ;
2436};
2437#line 933 "include/linux/fs.h"
2438union __anonunion_f_u_143 {
2439 struct list_head fu_list ;
2440 struct rcu_head fu_rcuhead ;
2441};
2442#line 933 "include/linux/fs.h"
2443struct file {
2444 union __anonunion_f_u_143 f_u ;
2445 struct path f_path ;
2446 struct file_operations const *f_op ;
2447 spinlock_t f_lock ;
2448 int f_sb_list_cpu ;
2449 atomic_long_t f_count ;
2450 unsigned int f_flags ;
2451 fmode_t f_mode ;
2452 loff_t f_pos ;
2453 struct fown_struct f_owner ;
2454 struct cred const *f_cred ;
2455 struct file_ra_state f_ra ;
2456 u64 f_version ;
2457 void *f_security ;
2458 void *private_data ;
2459 struct list_head f_ep_links ;
2460 struct address_space *f_mapping ;
2461 unsigned long f_mnt_write_state ;
2462};
2463#line 1064
2464struct files_struct;
2465#line 1064
2466struct files_struct;
2467#line 1064
2468struct files_struct;
2469#line 1064 "include/linux/fs.h"
2470typedef struct files_struct *fl_owner_t;
2471#line 1065 "include/linux/fs.h"
2472struct file_lock_operations {
2473 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
2474 void (*fl_release_private)(struct file_lock * ) ;
2475};
2476#line 1070 "include/linux/fs.h"
2477struct lock_manager_operations {
2478 int (*fl_compare_owner)(struct file_lock * , struct file_lock * ) ;
2479 void (*fl_notify)(struct file_lock * ) ;
2480 int (*fl_grant)(struct file_lock * , struct file_lock * , int ) ;
2481 void (*fl_release_private)(struct file_lock * ) ;
2482 void (*fl_break)(struct file_lock * ) ;
2483 int (*fl_change)(struct file_lock ** , int ) ;
2484};
2485#line 163 "include/linux/nfs.h"
2486struct nlm_lockowner;
2487#line 163
2488struct nlm_lockowner;
2489#line 163
2490struct nlm_lockowner;
2491#line 163
2492struct nlm_lockowner;
2493#line 164 "include/linux/nfs.h"
2494struct nfs_lock_info {
2495 u32 state ;
2496 struct nlm_lockowner *owner ;
2497 struct list_head list ;
2498};
2499#line 18 "include/linux/nfs_fs_i.h"
2500struct nfs4_lock_state;
2501#line 18
2502struct nfs4_lock_state;
2503#line 18
2504struct nfs4_lock_state;
2505#line 18
2506struct nfs4_lock_state;
2507#line 19 "include/linux/nfs_fs_i.h"
2508struct nfs4_lock_info {
2509 struct nfs4_lock_state *owner ;
2510};
2511#line 23
2512struct fasync_struct;
2513#line 23
2514struct fasync_struct;
2515#line 23
2516struct fasync_struct;
2517#line 23 "include/linux/nfs_fs_i.h"
2518struct __anonstruct_afs_145 {
2519 struct list_head link ;
2520 int state ;
2521};
2522#line 23 "include/linux/nfs_fs_i.h"
2523union __anonunion_fl_u_144 {
2524 struct nfs_lock_info nfs_fl ;
2525 struct nfs4_lock_info nfs4_fl ;
2526 struct __anonstruct_afs_145 afs ;
2527};
2528#line 23 "include/linux/nfs_fs_i.h"
2529struct file_lock {
2530 struct file_lock *fl_next ;
2531 struct list_head fl_link ;
2532 struct list_head fl_block ;
2533 fl_owner_t fl_owner ;
2534 unsigned char fl_flags ;
2535 unsigned char fl_type ;
2536 unsigned int fl_pid ;
2537 struct pid *fl_nspid ;
2538 wait_queue_head_t fl_wait ;
2539 struct file *fl_file ;
2540 loff_t fl_start ;
2541 loff_t fl_end ;
2542 struct fasync_struct *fl_fasync ;
2543 unsigned long fl_break_time ;
2544 struct file_lock_operations const *fl_ops ;
2545 struct lock_manager_operations const *fl_lmops ;
2546 union __anonunion_fl_u_144 fl_u ;
2547};
2548#line 1171 "include/linux/fs.h"
2549struct fasync_struct {
2550 spinlock_t fa_lock ;
2551 int magic ;
2552 int fa_fd ;
2553 struct fasync_struct *fa_next ;
2554 struct file *fa_file ;
2555 struct rcu_head fa_rcu ;
2556};
2557#line 1363
2558struct file_system_type;
2559#line 1363
2560struct file_system_type;
2561#line 1363
2562struct file_system_type;
2563#line 1363
2564struct super_operations;
2565#line 1363
2566struct super_operations;
2567#line 1363
2568struct super_operations;
2569#line 1363
2570struct xattr_handler;
2571#line 1363
2572struct xattr_handler;
2573#line 1363
2574struct xattr_handler;
2575#line 1363
2576struct mtd_info;
2577#line 1363
2578struct mtd_info;
2579#line 1363
2580struct mtd_info;
2581#line 1363 "include/linux/fs.h"
2582struct super_block {
2583 struct list_head s_list ;
2584 dev_t s_dev ;
2585 unsigned char s_dirt ;
2586 unsigned char s_blocksize_bits ;
2587 unsigned long s_blocksize ;
2588 loff_t s_maxbytes ;
2589 struct file_system_type *s_type ;
2590 struct super_operations const *s_op ;
2591 struct dquot_operations const *dq_op ;
2592 struct quotactl_ops const *s_qcop ;
2593 struct export_operations const *s_export_op ;
2594 unsigned long s_flags ;
2595 unsigned long s_magic ;
2596 struct dentry *s_root ;
2597 struct rw_semaphore s_umount ;
2598 struct mutex s_lock ;
2599 int s_count ;
2600 atomic_t s_active ;
2601 void *s_security ;
2602 struct xattr_handler const **s_xattr ;
2603 struct list_head s_inodes ;
2604 struct hlist_bl_head s_anon ;
2605 struct list_head *s_files ;
2606 struct list_head s_dentry_lru ;
2607 int s_nr_dentry_unused ;
2608 struct block_device *s_bdev ;
2609 struct backing_dev_info *s_bdi ;
2610 struct mtd_info *s_mtd ;
2611 struct list_head s_instances ;
2612 struct quota_info s_dquot ;
2613 int s_frozen ;
2614 wait_queue_head_t s_wait_unfrozen ;
2615 char s_id[32U] ;
2616 u8 s_uuid[16U] ;
2617 void *s_fs_info ;
2618 fmode_t s_mode ;
2619 u32 s_time_gran ;
2620 struct mutex s_vfs_rename_mutex ;
2621 char *s_subtype ;
2622 char *s_options ;
2623 struct dentry_operations const *s_d_op ;
2624 int cleancache_poolid ;
2625};
2626#line 1495 "include/linux/fs.h"
2627struct fiemap_extent_info {
2628 unsigned int fi_flags ;
2629 unsigned int fi_extents_mapped ;
2630 unsigned int fi_extents_max ;
2631 struct fiemap_extent *fi_extents_start ;
2632};
2633#line 1533
2634struct block_device_operations;
2635#line 1533
2636struct block_device_operations;
2637#line 1533
2638struct block_device_operations;
2639#line 1533
2640struct block_device_operations;
2641#line 1534 "include/linux/fs.h"
2642struct file_operations {
2643 struct module *owner ;
2644 loff_t (*llseek)(struct file * , loff_t , int ) ;
2645 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
2646 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
2647 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
2648 loff_t ) ;
2649 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
2650 loff_t ) ;
2651 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
2652 loff_t , u64 , unsigned int ) ) ;
2653 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
2654 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
2655 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
2656 int (*mmap)(struct file * , struct vm_area_struct * ) ;
2657 int (*open)(struct inode * , struct file * ) ;
2658 int (*flush)(struct file * , fl_owner_t ) ;
2659 int (*release)(struct inode * , struct file * ) ;
2660 int (*fsync)(struct file * , int ) ;
2661 int (*aio_fsync)(struct kiocb * , int ) ;
2662 int (*fasync)(int , struct file * , int ) ;
2663 int (*lock)(struct file * , int , struct file_lock * ) ;
2664 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
2665 int ) ;
2666 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
2667 unsigned long , unsigned long ) ;
2668 int (*check_flags)(int ) ;
2669 int (*flock)(struct file * , int , struct file_lock * ) ;
2670 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
2671 unsigned int ) ;
2672 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
2673 unsigned int ) ;
2674 int (*setlease)(struct file * , long , struct file_lock ** ) ;
2675 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
2676};
2677#line 1574 "include/linux/fs.h"
2678struct inode_operations {
2679 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
2680 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
2681 int (*permission)(struct inode * , int , unsigned int ) ;
2682 int (*check_acl)(struct inode * , int , unsigned int ) ;
2683 int (*readlink)(struct dentry * , char * , int ) ;
2684 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
2685 int (*create)(struct inode * , struct dentry * , int , struct nameidata * ) ;
2686 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
2687 int (*unlink)(struct inode * , struct dentry * ) ;
2688 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
2689 int (*mkdir)(struct inode * , struct dentry * , int ) ;
2690 int (*rmdir)(struct inode * , struct dentry * ) ;
2691 int (*mknod)(struct inode * , struct dentry * , int , dev_t ) ;
2692 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
2693 void (*truncate)(struct inode * ) ;
2694 int (*setattr)(struct dentry * , struct iattr * ) ;
2695 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
2696 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
2697 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
2698 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
2699 int (*removexattr)(struct dentry * , char const * ) ;
2700 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
2701 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
2702};
2703#line 1620 "include/linux/fs.h"
2704struct super_operations {
2705 struct inode *(*alloc_inode)(struct super_block * ) ;
2706 void (*destroy_inode)(struct inode * ) ;
2707 void (*dirty_inode)(struct inode * , int ) ;
2708 int (*write_inode)(struct inode * , struct writeback_control * ) ;
2709 int (*drop_inode)(struct inode * ) ;
2710 void (*evict_inode)(struct inode * ) ;
2711 void (*put_super)(struct super_block * ) ;
2712 void (*write_super)(struct super_block * ) ;
2713 int (*sync_fs)(struct super_block * , int ) ;
2714 int (*freeze_fs)(struct super_block * ) ;
2715 int (*unfreeze_fs)(struct super_block * ) ;
2716 int (*statfs)(struct dentry * , struct kstatfs * ) ;
2717 int (*remount_fs)(struct super_block * , int * , char * ) ;
2718 void (*umount_begin)(struct super_block * ) ;
2719 int (*show_options)(struct seq_file * , struct vfsmount * ) ;
2720 int (*show_devname)(struct seq_file * , struct vfsmount * ) ;
2721 int (*show_path)(struct seq_file * , struct vfsmount * ) ;
2722 int (*show_stats)(struct seq_file * , struct vfsmount * ) ;
2723 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
2724 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
2725 loff_t ) ;
2726 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
2727};
2728#line 1801 "include/linux/fs.h"
2729struct file_system_type {
2730 char const *name ;
2731 int fs_flags ;
2732 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
2733 void (*kill_sb)(struct super_block * ) ;
2734 struct module *owner ;
2735 struct file_system_type *next ;
2736 struct list_head fs_supers ;
2737 struct lock_class_key s_lock_key ;
2738 struct lock_class_key s_umount_key ;
2739 struct lock_class_key s_vfs_rename_key ;
2740 struct lock_class_key i_lock_key ;
2741 struct lock_class_key i_mutex_key ;
2742 struct lock_class_key i_mutex_dir_key ;
2743 struct lock_class_key i_alloc_sem_key ;
2744};
2745#line 7 "include/asm-generic/cputime.h"
2746typedef unsigned long cputime_t;
2747#line 118 "include/linux/sem.h"
2748struct sem_undo_list;
2749#line 118
2750struct sem_undo_list;
2751#line 118
2752struct sem_undo_list;
2753#line 131 "include/linux/sem.h"
2754struct sem_undo_list {
2755 atomic_t refcnt ;
2756 spinlock_t lock ;
2757 struct list_head list_proc ;
2758};
2759#line 140 "include/linux/sem.h"
2760struct sysv_sem {
2761 struct sem_undo_list *undo_list ;
2762};
2763#line 149
2764struct siginfo;
2765#line 149
2766struct siginfo;
2767#line 149
2768struct siginfo;
2769#line 149
2770struct siginfo;
2771#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2772struct __anonstruct_sigset_t_146 {
2773 unsigned long sig[1U] ;
2774};
2775#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2776typedef struct __anonstruct_sigset_t_146 sigset_t;
2777#line 17 "include/asm-generic/signal-defs.h"
2778typedef void __signalfn_t(int );
2779#line 18 "include/asm-generic/signal-defs.h"
2780typedef __signalfn_t *__sighandler_t;
2781#line 20 "include/asm-generic/signal-defs.h"
2782typedef void __restorefn_t(void);
2783#line 21 "include/asm-generic/signal-defs.h"
2784typedef __restorefn_t *__sigrestore_t;
2785#line 126 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2786struct sigaction {
2787 __sighandler_t sa_handler ;
2788 unsigned long sa_flags ;
2789 __sigrestore_t sa_restorer ;
2790 sigset_t sa_mask ;
2791};
2792#line 173 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2793struct k_sigaction {
2794 struct sigaction sa ;
2795};
2796#line 185 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2797union sigval {
2798 int sival_int ;
2799 void *sival_ptr ;
2800};
2801#line 10 "include/asm-generic/siginfo.h"
2802typedef union sigval sigval_t;
2803#line 11 "include/asm-generic/siginfo.h"
2804struct __anonstruct__kill_148 {
2805 __kernel_pid_t _pid ;
2806 __kernel_uid32_t _uid ;
2807};
2808#line 11 "include/asm-generic/siginfo.h"
2809struct __anonstruct__timer_149 {
2810 __kernel_timer_t _tid ;
2811 int _overrun ;
2812 char _pad[0U] ;
2813 sigval_t _sigval ;
2814 int _sys_private ;
2815};
2816#line 11 "include/asm-generic/siginfo.h"
2817struct __anonstruct__rt_150 {
2818 __kernel_pid_t _pid ;
2819 __kernel_uid32_t _uid ;
2820 sigval_t _sigval ;
2821};
2822#line 11 "include/asm-generic/siginfo.h"
2823struct __anonstruct__sigchld_151 {
2824 __kernel_pid_t _pid ;
2825 __kernel_uid32_t _uid ;
2826 int _status ;
2827 __kernel_clock_t _utime ;
2828 __kernel_clock_t _stime ;
2829};
2830#line 11 "include/asm-generic/siginfo.h"
2831struct __anonstruct__sigfault_152 {
2832 void *_addr ;
2833 short _addr_lsb ;
2834};
2835#line 11 "include/asm-generic/siginfo.h"
2836struct __anonstruct__sigpoll_153 {
2837 long _band ;
2838 int _fd ;
2839};
2840#line 11 "include/asm-generic/siginfo.h"
2841union __anonunion__sifields_147 {
2842 int _pad[28U] ;
2843 struct __anonstruct__kill_148 _kill ;
2844 struct __anonstruct__timer_149 _timer ;
2845 struct __anonstruct__rt_150 _rt ;
2846 struct __anonstruct__sigchld_151 _sigchld ;
2847 struct __anonstruct__sigfault_152 _sigfault ;
2848 struct __anonstruct__sigpoll_153 _sigpoll ;
2849};
2850#line 11 "include/asm-generic/siginfo.h"
2851struct siginfo {
2852 int si_signo ;
2853 int si_errno ;
2854 int si_code ;
2855 union __anonunion__sifields_147 _sifields ;
2856};
2857#line 94 "include/asm-generic/siginfo.h"
2858typedef struct siginfo siginfo_t;
2859#line 24 "include/linux/signal.h"
2860struct sigpending {
2861 struct list_head list ;
2862 sigset_t signal ;
2863};
2864#line 45 "include/linux/proportions.h"
2865struct prop_local_percpu {
2866 struct percpu_counter events ;
2867 int shift ;
2868 unsigned long period ;
2869 spinlock_t lock ;
2870};
2871#line 90 "include/linux/proportions.h"
2872struct prop_local_single {
2873 unsigned long events ;
2874 unsigned long period ;
2875 int shift ;
2876 spinlock_t lock ;
2877};
2878#line 10 "include/linux/seccomp.h"
2879struct __anonstruct_seccomp_t_156 {
2880 int mode ;
2881};
2882#line 10 "include/linux/seccomp.h"
2883typedef struct __anonstruct_seccomp_t_156 seccomp_t;
2884#line 21 "include/linux/seccomp.h"
2885struct plist_head {
2886 struct list_head node_list ;
2887 raw_spinlock_t *rawlock ;
2888 spinlock_t *spinlock ;
2889};
2890#line 88 "include/linux/plist.h"
2891struct plist_node {
2892 int prio ;
2893 struct list_head prio_list ;
2894 struct list_head node_list ;
2895};
2896#line 38 "include/linux/rtmutex.h"
2897struct rt_mutex_waiter;
2898#line 38
2899struct rt_mutex_waiter;
2900#line 38
2901struct rt_mutex_waiter;
2902#line 38
2903struct rt_mutex_waiter;
2904#line 41 "include/linux/resource.h"
2905struct rlimit {
2906 unsigned long rlim_cur ;
2907 unsigned long rlim_max ;
2908};
2909#line 85 "include/linux/resource.h"
2910struct timerqueue_node {
2911 struct rb_node node ;
2912 ktime_t expires ;
2913};
2914#line 12 "include/linux/timerqueue.h"
2915struct timerqueue_head {
2916 struct rb_root head ;
2917 struct timerqueue_node *next ;
2918};
2919#line 50
2920struct hrtimer_clock_base;
2921#line 50
2922struct hrtimer_clock_base;
2923#line 50
2924struct hrtimer_clock_base;
2925#line 50
2926struct hrtimer_clock_base;
2927#line 51
2928struct hrtimer_cpu_base;
2929#line 51
2930struct hrtimer_cpu_base;
2931#line 51
2932struct hrtimer_cpu_base;
2933#line 51
2934struct hrtimer_cpu_base;
2935#line 60
2936enum hrtimer_restart {
2937 HRTIMER_NORESTART = 0,
2938 HRTIMER_RESTART = 1
2939} ;
2940#line 65 "include/linux/timerqueue.h"
2941struct hrtimer {
2942 struct timerqueue_node node ;
2943 ktime_t _softexpires ;
2944 enum hrtimer_restart (*function)(struct hrtimer * ) ;
2945 struct hrtimer_clock_base *base ;
2946 unsigned long state ;
2947 int start_pid ;
2948 void *start_site ;
2949 char start_comm[16U] ;
2950};
2951#line 132 "include/linux/hrtimer.h"
2952struct hrtimer_clock_base {
2953 struct hrtimer_cpu_base *cpu_base ;
2954 int index ;
2955 clockid_t clockid ;
2956 struct timerqueue_head active ;
2957 ktime_t resolution ;
2958 ktime_t (*get_time)(void) ;
2959 ktime_t softirq_time ;
2960 ktime_t offset ;
2961};
2962#line 162 "include/linux/hrtimer.h"
2963struct hrtimer_cpu_base {
2964 raw_spinlock_t lock ;
2965 unsigned long active_bases ;
2966 ktime_t expires_next ;
2967 int hres_active ;
2968 int hang_detected ;
2969 unsigned long nr_events ;
2970 unsigned long nr_retries ;
2971 unsigned long nr_hangs ;
2972 ktime_t max_hang_time ;
2973 struct hrtimer_clock_base clock_base[3U] ;
2974};
2975#line 452 "include/linux/hrtimer.h"
2976struct task_io_accounting {
2977 u64 rchar ;
2978 u64 wchar ;
2979 u64 syscr ;
2980 u64 syscw ;
2981 u64 read_bytes ;
2982 u64 write_bytes ;
2983 u64 cancelled_write_bytes ;
2984};
2985#line 45 "include/linux/task_io_accounting.h"
2986struct latency_record {
2987 unsigned long backtrace[12U] ;
2988 unsigned int count ;
2989 unsigned long time ;
2990 unsigned long max ;
2991};
2992#line 29 "include/linux/key.h"
2993typedef int32_t key_serial_t;
2994#line 32 "include/linux/key.h"
2995typedef uint32_t key_perm_t;
2996#line 33
2997struct key;
2998#line 33
2999struct key;
3000#line 33
3001struct key;
3002#line 33
3003struct key;
3004#line 34
3005struct signal_struct;
3006#line 34
3007struct signal_struct;
3008#line 34
3009struct signal_struct;
3010#line 34
3011struct signal_struct;
3012#line 35
3013struct key_type;
3014#line 35
3015struct key_type;
3016#line 35
3017struct key_type;
3018#line 35
3019struct key_type;
3020#line 37
3021struct keyring_list;
3022#line 37
3023struct keyring_list;
3024#line 37
3025struct keyring_list;
3026#line 37
3027struct keyring_list;
3028#line 115
3029struct key_user;
3030#line 115
3031struct key_user;
3032#line 115
3033struct key_user;
3034#line 115 "include/linux/key.h"
3035union __anonunion_ldv_20738_157 {
3036 time_t expiry ;
3037 time_t revoked_at ;
3038};
3039#line 115 "include/linux/key.h"
3040union __anonunion_type_data_158 {
3041 struct list_head link ;
3042 unsigned long x[2U] ;
3043 void *p[2U] ;
3044 int reject_error ;
3045};
3046#line 115 "include/linux/key.h"
3047union __anonunion_payload_159 {
3048 unsigned long value ;
3049 void *rcudata ;
3050 void *data ;
3051 struct keyring_list *subscriptions ;
3052};
3053#line 115 "include/linux/key.h"
3054struct key {
3055 atomic_t usage ;
3056 key_serial_t serial ;
3057 struct rb_node serial_node ;
3058 struct key_type *type ;
3059 struct rw_semaphore sem ;
3060 struct key_user *user ;
3061 void *security ;
3062 union __anonunion_ldv_20738_157 ldv_20738 ;
3063 uid_t uid ;
3064 gid_t gid ;
3065 key_perm_t perm ;
3066 unsigned short quotalen ;
3067 unsigned short datalen ;
3068 unsigned long flags ;
3069 char *description ;
3070 union __anonunion_type_data_158 type_data ;
3071 union __anonunion_payload_159 payload ;
3072};
3073#line 310
3074struct audit_context;
3075#line 310
3076struct audit_context;
3077#line 310
3078struct audit_context;
3079#line 310
3080struct audit_context;
3081#line 27 "include/linux/selinux.h"
3082struct group_info {
3083 atomic_t usage ;
3084 int ngroups ;
3085 int nblocks ;
3086 gid_t small_block[32U] ;
3087 gid_t *blocks[0U] ;
3088};
3089#line 77 "include/linux/cred.h"
3090struct thread_group_cred {
3091 atomic_t usage ;
3092 pid_t tgid ;
3093 spinlock_t lock ;
3094 struct key *session_keyring ;
3095 struct key *process_keyring ;
3096 struct rcu_head rcu ;
3097};
3098#line 91 "include/linux/cred.h"
3099struct cred {
3100 atomic_t usage ;
3101 atomic_t subscribers ;
3102 void *put_addr ;
3103 unsigned int magic ;
3104 uid_t uid ;
3105 gid_t gid ;
3106 uid_t suid ;
3107 gid_t sgid ;
3108 uid_t euid ;
3109 gid_t egid ;
3110 uid_t fsuid ;
3111 gid_t fsgid ;
3112 unsigned int securebits ;
3113 kernel_cap_t cap_inheritable ;
3114 kernel_cap_t cap_permitted ;
3115 kernel_cap_t cap_effective ;
3116 kernel_cap_t cap_bset ;
3117 unsigned char jit_keyring ;
3118 struct key *thread_keyring ;
3119 struct key *request_key_auth ;
3120 struct thread_group_cred *tgcred ;
3121 void *security ;
3122 struct user_struct *user ;
3123 struct user_namespace *user_ns ;
3124 struct group_info *group_info ;
3125 struct rcu_head rcu ;
3126};
3127#line 264
3128struct futex_pi_state;
3129#line 264
3130struct futex_pi_state;
3131#line 264
3132struct futex_pi_state;
3133#line 264
3134struct futex_pi_state;
3135#line 265
3136struct robust_list_head;
3137#line 265
3138struct robust_list_head;
3139#line 265
3140struct robust_list_head;
3141#line 265
3142struct robust_list_head;
3143#line 266
3144struct bio_list;
3145#line 266
3146struct bio_list;
3147#line 266
3148struct bio_list;
3149#line 266
3150struct bio_list;
3151#line 267
3152struct fs_struct;
3153#line 267
3154struct fs_struct;
3155#line 267
3156struct fs_struct;
3157#line 267
3158struct fs_struct;
3159#line 268
3160struct perf_event_context;
3161#line 268
3162struct perf_event_context;
3163#line 268
3164struct perf_event_context;
3165#line 268
3166struct perf_event_context;
3167#line 269
3168struct blk_plug;
3169#line 269
3170struct blk_plug;
3171#line 269
3172struct blk_plug;
3173#line 269
3174struct blk_plug;
3175#line 149 "include/linux/sched.h"
3176struct cfs_rq;
3177#line 149
3178struct cfs_rq;
3179#line 149
3180struct cfs_rq;
3181#line 149
3182struct cfs_rq;
3183#line 44 "include/linux/aio_abi.h"
3184struct io_event {
3185 __u64 data ;
3186 __u64 obj ;
3187 __s64 res ;
3188 __s64 res2 ;
3189};
3190#line 106 "include/linux/aio_abi.h"
3191struct iovec {
3192 void *iov_base ;
3193 __kernel_size_t iov_len ;
3194};
3195#line 54 "include/linux/uio.h"
3196struct kioctx;
3197#line 54
3198struct kioctx;
3199#line 54
3200struct kioctx;
3201#line 54
3202struct kioctx;
3203#line 55 "include/linux/uio.h"
3204union __anonunion_ki_obj_160 {
3205 void *user ;
3206 struct task_struct *tsk ;
3207};
3208#line 55
3209struct eventfd_ctx;
3210#line 55
3211struct eventfd_ctx;
3212#line 55
3213struct eventfd_ctx;
3214#line 55 "include/linux/uio.h"
3215struct kiocb {
3216 struct list_head ki_run_list ;
3217 unsigned long ki_flags ;
3218 int ki_users ;
3219 unsigned int ki_key ;
3220 struct file *ki_filp ;
3221 struct kioctx *ki_ctx ;
3222 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
3223 ssize_t (*ki_retry)(struct kiocb * ) ;
3224 void (*ki_dtor)(struct kiocb * ) ;
3225 union __anonunion_ki_obj_160 ki_obj ;
3226 __u64 ki_user_data ;
3227 loff_t ki_pos ;
3228 void *private ;
3229 unsigned short ki_opcode ;
3230 size_t ki_nbytes ;
3231 char *ki_buf ;
3232 size_t ki_left ;
3233 struct iovec ki_inline_vec ;
3234 struct iovec *ki_iovec ;
3235 unsigned long ki_nr_segs ;
3236 unsigned long ki_cur_seg ;
3237 struct list_head ki_list ;
3238 struct eventfd_ctx *ki_eventfd ;
3239};
3240#line 161 "include/linux/aio.h"
3241struct aio_ring_info {
3242 unsigned long mmap_base ;
3243 unsigned long mmap_size ;
3244 struct page **ring_pages ;
3245 spinlock_t ring_lock ;
3246 long nr_pages ;
3247 unsigned int nr ;
3248 unsigned int tail ;
3249 struct page *internal_pages[8U] ;
3250};
3251#line 177 "include/linux/aio.h"
3252struct kioctx {
3253 atomic_t users ;
3254 int dead ;
3255 struct mm_struct *mm ;
3256 unsigned long user_id ;
3257 struct hlist_node list ;
3258 wait_queue_head_t wait ;
3259 spinlock_t ctx_lock ;
3260 int reqs_active ;
3261 struct list_head active_reqs ;
3262 struct list_head run_list ;
3263 unsigned int max_reqs ;
3264 struct aio_ring_info ring_info ;
3265 struct delayed_work wq ;
3266 struct rcu_head rcu_head ;
3267};
3268#line 404 "include/linux/sched.h"
3269struct sighand_struct {
3270 atomic_t count ;
3271 struct k_sigaction action[64U] ;
3272 spinlock_t siglock ;
3273 wait_queue_head_t signalfd_wqh ;
3274};
3275#line 447 "include/linux/sched.h"
3276struct pacct_struct {
3277 int ac_flag ;
3278 long ac_exitcode ;
3279 unsigned long ac_mem ;
3280 cputime_t ac_utime ;
3281 cputime_t ac_stime ;
3282 unsigned long ac_minflt ;
3283 unsigned long ac_majflt ;
3284};
3285#line 455 "include/linux/sched.h"
3286struct cpu_itimer {
3287 cputime_t expires ;
3288 cputime_t incr ;
3289 u32 error ;
3290 u32 incr_error ;
3291};
3292#line 462 "include/linux/sched.h"
3293struct task_cputime {
3294 cputime_t utime ;
3295 cputime_t stime ;
3296 unsigned long long sum_exec_runtime ;
3297};
3298#line 479 "include/linux/sched.h"
3299struct thread_group_cputimer {
3300 struct task_cputime cputime ;
3301 int running ;
3302 spinlock_t lock ;
3303};
3304#line 515
3305struct autogroup;
3306#line 515
3307struct autogroup;
3308#line 515
3309struct autogroup;
3310#line 515
3311struct autogroup;
3312#line 516
3313struct tty_struct;
3314#line 516
3315struct tty_struct;
3316#line 516
3317struct tty_struct;
3318#line 516
3319struct taskstats;
3320#line 516
3321struct taskstats;
3322#line 516
3323struct taskstats;
3324#line 516
3325struct tty_audit_buf;
3326#line 516
3327struct tty_audit_buf;
3328#line 516
3329struct tty_audit_buf;
3330#line 516 "include/linux/sched.h"
3331struct signal_struct {
3332 atomic_t sigcnt ;
3333 atomic_t live ;
3334 int nr_threads ;
3335 wait_queue_head_t wait_chldexit ;
3336 struct task_struct *curr_target ;
3337 struct sigpending shared_pending ;
3338 int group_exit_code ;
3339 int notify_count ;
3340 struct task_struct *group_exit_task ;
3341 int group_stop_count ;
3342 unsigned int flags ;
3343 struct list_head posix_timers ;
3344 struct hrtimer real_timer ;
3345 struct pid *leader_pid ;
3346 ktime_t it_real_incr ;
3347 struct cpu_itimer it[2U] ;
3348 struct thread_group_cputimer cputimer ;
3349 struct task_cputime cputime_expires ;
3350 struct list_head cpu_timers[3U] ;
3351 struct pid *tty_old_pgrp ;
3352 int leader ;
3353 struct tty_struct *tty ;
3354 struct autogroup *autogroup ;
3355 cputime_t utime ;
3356 cputime_t stime ;
3357 cputime_t cutime ;
3358 cputime_t cstime ;
3359 cputime_t gtime ;
3360 cputime_t cgtime ;
3361 cputime_t prev_utime ;
3362 cputime_t prev_stime ;
3363 unsigned long nvcsw ;
3364 unsigned long nivcsw ;
3365 unsigned long cnvcsw ;
3366 unsigned long cnivcsw ;
3367 unsigned long min_flt ;
3368 unsigned long maj_flt ;
3369 unsigned long cmin_flt ;
3370 unsigned long cmaj_flt ;
3371 unsigned long inblock ;
3372 unsigned long oublock ;
3373 unsigned long cinblock ;
3374 unsigned long coublock ;
3375 unsigned long maxrss ;
3376 unsigned long cmaxrss ;
3377 struct task_io_accounting ioac ;
3378 unsigned long long sum_sched_runtime ;
3379 struct rlimit rlim[16U] ;
3380 struct pacct_struct pacct ;
3381 struct taskstats *stats ;
3382 unsigned int audit_tty ;
3383 struct tty_audit_buf *tty_audit_buf ;
3384 struct rw_semaphore threadgroup_fork_lock ;
3385 int oom_adj ;
3386 int oom_score_adj ;
3387 int oom_score_adj_min ;
3388 struct mutex cred_guard_mutex ;
3389};
3390#line 683 "include/linux/sched.h"
3391struct user_struct {
3392 atomic_t __count ;
3393 atomic_t processes ;
3394 atomic_t files ;
3395 atomic_t sigpending ;
3396 atomic_t inotify_watches ;
3397 atomic_t inotify_devs ;
3398 atomic_t fanotify_listeners ;
3399 atomic_long_t epoll_watches ;
3400 unsigned long mq_bytes ;
3401 unsigned long locked_shm ;
3402 struct key *uid_keyring ;
3403 struct key *session_keyring ;
3404 struct hlist_node uidhash_node ;
3405 uid_t uid ;
3406 struct user_namespace *user_ns ;
3407 atomic_long_t locked_vm ;
3408};
3409#line 728
3410struct reclaim_state;
3411#line 728
3412struct reclaim_state;
3413#line 728
3414struct reclaim_state;
3415#line 728
3416struct reclaim_state;
3417#line 729 "include/linux/sched.h"
3418struct sched_info {
3419 unsigned long pcount ;
3420 unsigned long long run_delay ;
3421 unsigned long long last_arrival ;
3422 unsigned long long last_queued ;
3423};
3424#line 744 "include/linux/sched.h"
3425struct task_delay_info {
3426 spinlock_t lock ;
3427 unsigned int flags ;
3428 struct timespec blkio_start ;
3429 struct timespec blkio_end ;
3430 u64 blkio_delay ;
3431 u64 swapin_delay ;
3432 u32 blkio_count ;
3433 u32 swapin_count ;
3434 struct timespec freepages_start ;
3435 struct timespec freepages_end ;
3436 u64 freepages_delay ;
3437 u32 freepages_count ;
3438};
3439#line 1037
3440struct io_context;
3441#line 1037
3442struct io_context;
3443#line 1037
3444struct io_context;
3445#line 1037
3446struct io_context;
3447#line 1060
3448struct rq;
3449#line 1060
3450struct rq;
3451#line 1060
3452struct rq;
3453#line 1060
3454struct rq;
3455#line 1061 "include/linux/sched.h"
3456struct sched_class {
3457 struct sched_class const *next ;
3458 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
3459 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
3460 void (*yield_task)(struct rq * ) ;
3461 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
3462 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
3463 struct task_struct *(*pick_next_task)(struct rq * ) ;
3464 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
3465 int (*select_task_rq)(struct task_struct * , int , int ) ;
3466 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
3467 void (*post_schedule)(struct rq * ) ;
3468 void (*task_waking)(struct task_struct * ) ;
3469 void (*task_woken)(struct rq * , struct task_struct * ) ;
3470 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
3471 void (*rq_online)(struct rq * ) ;
3472 void (*rq_offline)(struct rq * ) ;
3473 void (*set_curr_task)(struct rq * ) ;
3474 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
3475 void (*task_fork)(struct task_struct * ) ;
3476 void (*switched_from)(struct rq * , struct task_struct * ) ;
3477 void (*switched_to)(struct rq * , struct task_struct * ) ;
3478 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
3479 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
3480 void (*task_move_group)(struct task_struct * , int ) ;
3481};
3482#line 1127 "include/linux/sched.h"
3483struct load_weight {
3484 unsigned long weight ;
3485 unsigned long inv_weight ;
3486};
3487#line 1132 "include/linux/sched.h"
3488struct sched_statistics {
3489 u64 wait_start ;
3490 u64 wait_max ;
3491 u64 wait_count ;
3492 u64 wait_sum ;
3493 u64 iowait_count ;
3494 u64 iowait_sum ;
3495 u64 sleep_start ;
3496 u64 sleep_max ;
3497 s64 sum_sleep_runtime ;
3498 u64 block_start ;
3499 u64 block_max ;
3500 u64 exec_max ;
3501 u64 slice_max ;
3502 u64 nr_migrations_cold ;
3503 u64 nr_failed_migrations_affine ;
3504 u64 nr_failed_migrations_running ;
3505 u64 nr_failed_migrations_hot ;
3506 u64 nr_forced_migrations ;
3507 u64 nr_wakeups ;
3508 u64 nr_wakeups_sync ;
3509 u64 nr_wakeups_migrate ;
3510 u64 nr_wakeups_local ;
3511 u64 nr_wakeups_remote ;
3512 u64 nr_wakeups_affine ;
3513 u64 nr_wakeups_affine_attempts ;
3514 u64 nr_wakeups_passive ;
3515 u64 nr_wakeups_idle ;
3516};
3517#line 1167 "include/linux/sched.h"
3518struct sched_entity {
3519 struct load_weight load ;
3520 struct rb_node run_node ;
3521 struct list_head group_node ;
3522 unsigned int on_rq ;
3523 u64 exec_start ;
3524 u64 sum_exec_runtime ;
3525 u64 vruntime ;
3526 u64 prev_sum_exec_runtime ;
3527 u64 nr_migrations ;
3528 struct sched_statistics statistics ;
3529 struct sched_entity *parent ;
3530 struct cfs_rq *cfs_rq ;
3531 struct cfs_rq *my_q ;
3532};
3533#line 1193
3534struct rt_rq;
3535#line 1193
3536struct rt_rq;
3537#line 1193
3538struct rt_rq;
3539#line 1193 "include/linux/sched.h"
3540struct sched_rt_entity {
3541 struct list_head run_list ;
3542 unsigned long timeout ;
3543 unsigned int time_slice ;
3544 int nr_cpus_allowed ;
3545 struct sched_rt_entity *back ;
3546 struct sched_rt_entity *parent ;
3547 struct rt_rq *rt_rq ;
3548 struct rt_rq *my_q ;
3549};
3550#line 1217
3551struct mem_cgroup;
3552#line 1217
3553struct mem_cgroup;
3554#line 1217
3555struct mem_cgroup;
3556#line 1217 "include/linux/sched.h"
3557struct memcg_batch_info {
3558 int do_batch ;
3559 struct mem_cgroup *memcg ;
3560 unsigned long nr_pages ;
3561 unsigned long memsw_nr_pages ;
3562};
3563#line 1569
3564struct irqaction;
3565#line 1569
3566struct irqaction;
3567#line 1569
3568struct irqaction;
3569#line 1569
3570struct css_set;
3571#line 1569
3572struct css_set;
3573#line 1569
3574struct css_set;
3575#line 1569
3576struct compat_robust_list_head;
3577#line 1569
3578struct compat_robust_list_head;
3579#line 1569
3580struct compat_robust_list_head;
3581#line 1569
3582struct ftrace_ret_stack;
3583#line 1569
3584struct ftrace_ret_stack;
3585#line 1569
3586struct ftrace_ret_stack;
3587#line 1569 "include/linux/sched.h"
3588struct task_struct {
3589 long volatile state ;
3590 void *stack ;
3591 atomic_t usage ;
3592 unsigned int flags ;
3593 unsigned int ptrace ;
3594 struct task_struct *wake_entry ;
3595 int on_cpu ;
3596 int on_rq ;
3597 int prio ;
3598 int static_prio ;
3599 int normal_prio ;
3600 unsigned int rt_priority ;
3601 struct sched_class const *sched_class ;
3602 struct sched_entity se ;
3603 struct sched_rt_entity rt ;
3604 struct hlist_head preempt_notifiers ;
3605 unsigned char fpu_counter ;
3606 unsigned int btrace_seq ;
3607 unsigned int policy ;
3608 cpumask_t cpus_allowed ;
3609 struct sched_info sched_info ;
3610 struct list_head tasks ;
3611 struct plist_node pushable_tasks ;
3612 struct mm_struct *mm ;
3613 struct mm_struct *active_mm ;
3614 unsigned char brk_randomized : 1 ;
3615 int exit_state ;
3616 int exit_code ;
3617 int exit_signal ;
3618 int pdeath_signal ;
3619 unsigned int group_stop ;
3620 unsigned int personality ;
3621 unsigned char did_exec : 1 ;
3622 unsigned char in_execve : 1 ;
3623 unsigned char in_iowait : 1 ;
3624 unsigned char sched_reset_on_fork : 1 ;
3625 unsigned char sched_contributes_to_load : 1 ;
3626 pid_t pid ;
3627 pid_t tgid ;
3628 unsigned long stack_canary ;
3629 struct task_struct *real_parent ;
3630 struct task_struct *parent ;
3631 struct list_head children ;
3632 struct list_head sibling ;
3633 struct task_struct *group_leader ;
3634 struct list_head ptraced ;
3635 struct list_head ptrace_entry ;
3636 struct pid_link pids[3U] ;
3637 struct list_head thread_group ;
3638 struct completion *vfork_done ;
3639 int *set_child_tid ;
3640 int *clear_child_tid ;
3641 cputime_t utime ;
3642 cputime_t stime ;
3643 cputime_t utimescaled ;
3644 cputime_t stimescaled ;
3645 cputime_t gtime ;
3646 cputime_t prev_utime ;
3647 cputime_t prev_stime ;
3648 unsigned long nvcsw ;
3649 unsigned long nivcsw ;
3650 struct timespec start_time ;
3651 struct timespec real_start_time ;
3652 unsigned long min_flt ;
3653 unsigned long maj_flt ;
3654 struct task_cputime cputime_expires ;
3655 struct list_head cpu_timers[3U] ;
3656 struct cred const *real_cred ;
3657 struct cred const *cred ;
3658 struct cred *replacement_session_keyring ;
3659 char comm[16U] ;
3660 int link_count ;
3661 int total_link_count ;
3662 struct sysv_sem sysvsem ;
3663 unsigned long last_switch_count ;
3664 struct thread_struct thread ;
3665 struct fs_struct *fs ;
3666 struct files_struct *files ;
3667 struct nsproxy *nsproxy ;
3668 struct signal_struct *signal ;
3669 struct sighand_struct *sighand ;
3670 sigset_t blocked ;
3671 sigset_t real_blocked ;
3672 sigset_t saved_sigmask ;
3673 struct sigpending pending ;
3674 unsigned long sas_ss_sp ;
3675 size_t sas_ss_size ;
3676 int (*notifier)(void * ) ;
3677 void *notifier_data ;
3678 sigset_t *notifier_mask ;
3679 struct audit_context *audit_context ;
3680 uid_t loginuid ;
3681 unsigned int sessionid ;
3682 seccomp_t seccomp ;
3683 u32 parent_exec_id ;
3684 u32 self_exec_id ;
3685 spinlock_t alloc_lock ;
3686 struct irqaction *irqaction ;
3687 raw_spinlock_t pi_lock ;
3688 struct plist_head pi_waiters ;
3689 struct rt_mutex_waiter *pi_blocked_on ;
3690 struct mutex_waiter *blocked_on ;
3691 unsigned int irq_events ;
3692 unsigned long hardirq_enable_ip ;
3693 unsigned long hardirq_disable_ip ;
3694 unsigned int hardirq_enable_event ;
3695 unsigned int hardirq_disable_event ;
3696 int hardirqs_enabled ;
3697 int hardirq_context ;
3698 unsigned long softirq_disable_ip ;
3699 unsigned long softirq_enable_ip ;
3700 unsigned int softirq_disable_event ;
3701 unsigned int softirq_enable_event ;
3702 int softirqs_enabled ;
3703 int softirq_context ;
3704 u64 curr_chain_key ;
3705 int lockdep_depth ;
3706 unsigned int lockdep_recursion ;
3707 struct held_lock held_locks[48U] ;
3708 gfp_t lockdep_reclaim_gfp ;
3709 void *journal_info ;
3710 struct bio_list *bio_list ;
3711 struct blk_plug *plug ;
3712 struct reclaim_state *reclaim_state ;
3713 struct backing_dev_info *backing_dev_info ;
3714 struct io_context *io_context ;
3715 unsigned long ptrace_message ;
3716 siginfo_t *last_siginfo ;
3717 struct task_io_accounting ioac ;
3718 u64 acct_rss_mem1 ;
3719 u64 acct_vm_mem1 ;
3720 cputime_t acct_timexpd ;
3721 nodemask_t mems_allowed ;
3722 int mems_allowed_change_disable ;
3723 int cpuset_mem_spread_rotor ;
3724 int cpuset_slab_spread_rotor ;
3725 struct css_set *cgroups ;
3726 struct list_head cg_list ;
3727 struct robust_list_head *robust_list ;
3728 struct compat_robust_list_head *compat_robust_list ;
3729 struct list_head pi_state_list ;
3730 struct futex_pi_state *pi_state_cache ;
3731 struct perf_event_context *perf_event_ctxp[2U] ;
3732 struct mutex perf_event_mutex ;
3733 struct list_head perf_event_list ;
3734 struct mempolicy *mempolicy ;
3735 short il_next ;
3736 short pref_node_fork ;
3737 atomic_t fs_excl ;
3738 struct rcu_head rcu ;
3739 struct pipe_inode_info *splice_pipe ;
3740 struct task_delay_info *delays ;
3741 int make_it_fail ;
3742 struct prop_local_single dirties ;
3743 int latency_record_count ;
3744 struct latency_record latency_record[32U] ;
3745 unsigned long timer_slack_ns ;
3746 unsigned long default_timer_slack_ns ;
3747 struct list_head *scm_work_list ;
3748 int curr_ret_stack ;
3749 struct ftrace_ret_stack *ret_stack ;
3750 unsigned long long ftrace_timestamp ;
3751 atomic_t trace_overrun ;
3752 atomic_t tracing_graph_pause ;
3753 unsigned long trace ;
3754 unsigned long trace_recursion ;
3755 struct memcg_batch_info memcg_batch ;
3756 atomic_t ptrace_bp_refcnt ;
3757};
3758#line 118 "include/linux/kmemleak.h"
3759struct kmem_cache_cpu {
3760 void **freelist ;
3761 unsigned long tid ;
3762 struct page *page ;
3763 int node ;
3764 unsigned int stat[19U] ;
3765};
3766#line 46 "include/linux/slub_def.h"
3767struct kmem_cache_node {
3768 spinlock_t list_lock ;
3769 unsigned long nr_partial ;
3770 struct list_head partial ;
3771 atomic_long_t nr_slabs ;
3772 atomic_long_t total_objects ;
3773 struct list_head full ;
3774};
3775#line 57 "include/linux/slub_def.h"
3776struct kmem_cache_order_objects {
3777 unsigned long x ;
3778};
3779#line 67 "include/linux/slub_def.h"
3780struct kmem_cache {
3781 struct kmem_cache_cpu *cpu_slab ;
3782 unsigned long flags ;
3783 unsigned long min_partial ;
3784 int size ;
3785 int objsize ;
3786 int offset ;
3787 struct kmem_cache_order_objects oo ;
3788 struct kmem_cache_order_objects max ;
3789 struct kmem_cache_order_objects min ;
3790 gfp_t allocflags ;
3791 int refcount ;
3792 void (*ctor)(void * ) ;
3793 int inuse ;
3794 int align ;
3795 int reserved ;
3796 char const *name ;
3797 struct list_head list ;
3798 struct kobject kobj ;
3799 int remote_node_defrag_ratio ;
3800 struct kmem_cache_node *node[1024U] ;
3801};
3802#line 25 "include/linux/genhd.h"
3803struct device_type;
3804#line 25
3805struct device_type;
3806#line 25
3807struct device_type;
3808#line 27
3809struct class;
3810#line 27
3811struct class;
3812#line 27
3813struct class;
3814#line 51
3815struct klist_node;
3816#line 51
3817struct klist_node;
3818#line 51
3819struct klist_node;
3820#line 51
3821struct klist_node;
3822#line 37 "include/linux/klist.h"
3823struct klist_node {
3824 void *n_klist ;
3825 struct list_head n_node ;
3826 struct kref n_ref ;
3827};
3828#line 67
3829struct dma_map_ops;
3830#line 67
3831struct dma_map_ops;
3832#line 67
3833struct dma_map_ops;
3834#line 67 "include/linux/klist.h"
3835struct dev_archdata {
3836 void *acpi_handle ;
3837 struct dma_map_ops *dma_ops ;
3838 void *iommu ;
3839};
3840#line 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3841struct device_private;
3842#line 17
3843struct device_private;
3844#line 17
3845struct device_private;
3846#line 17
3847struct device_private;
3848#line 18
3849struct device_driver;
3850#line 18
3851struct device_driver;
3852#line 18
3853struct device_driver;
3854#line 18
3855struct device_driver;
3856#line 19
3857struct driver_private;
3858#line 19
3859struct driver_private;
3860#line 19
3861struct driver_private;
3862#line 19
3863struct driver_private;
3864#line 20
3865struct subsys_private;
3866#line 20
3867struct subsys_private;
3868#line 20
3869struct subsys_private;
3870#line 20
3871struct subsys_private;
3872#line 21
3873struct bus_type;
3874#line 21
3875struct bus_type;
3876#line 21
3877struct bus_type;
3878#line 21
3879struct bus_type;
3880#line 22
3881struct device_node;
3882#line 22
3883struct device_node;
3884#line 22
3885struct device_node;
3886#line 22
3887struct device_node;
3888#line 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
3889struct bus_attribute {
3890 struct attribute attr ;
3891 ssize_t (*show)(struct bus_type * , char * ) ;
3892 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
3893};
3894#line 49 "include/linux/device.h"
3895struct device_attribute;
3896#line 49
3897struct device_attribute;
3898#line 49
3899struct device_attribute;
3900#line 49
3901struct driver_attribute;
3902#line 49
3903struct driver_attribute;
3904#line 49
3905struct driver_attribute;
3906#line 49 "include/linux/device.h"
3907struct bus_type {
3908 char const *name ;
3909 struct bus_attribute *bus_attrs ;
3910 struct device_attribute *dev_attrs ;
3911 struct driver_attribute *drv_attrs ;
3912 int (*match)(struct device * , struct device_driver * ) ;
3913 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
3914 int (*probe)(struct device * ) ;
3915 int (*remove)(struct device * ) ;
3916 void (*shutdown)(struct device * ) ;
3917 int (*suspend)(struct device * , pm_message_t ) ;
3918 int (*resume)(struct device * ) ;
3919 struct dev_pm_ops const *pm ;
3920 struct subsys_private *p ;
3921};
3922#line 153
3923struct of_device_id;
3924#line 153
3925struct of_device_id;
3926#line 153
3927struct of_device_id;
3928#line 153 "include/linux/device.h"
3929struct device_driver {
3930 char const *name ;
3931 struct bus_type *bus ;
3932 struct module *owner ;
3933 char const *mod_name ;
3934 bool suppress_bind_attrs ;
3935 struct of_device_id const *of_match_table ;
3936 int (*probe)(struct device * ) ;
3937 int (*remove)(struct device * ) ;
3938 void (*shutdown)(struct device * ) ;
3939 int (*suspend)(struct device * , pm_message_t ) ;
3940 int (*resume)(struct device * ) ;
3941 struct attribute_group const **groups ;
3942 struct dev_pm_ops const *pm ;
3943 struct driver_private *p ;
3944};
3945#line 218 "include/linux/device.h"
3946struct driver_attribute {
3947 struct attribute attr ;
3948 ssize_t (*show)(struct device_driver * , char * ) ;
3949 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
3950};
3951#line 248
3952struct class_attribute;
3953#line 248
3954struct class_attribute;
3955#line 248
3956struct class_attribute;
3957#line 248 "include/linux/device.h"
3958struct class {
3959 char const *name ;
3960 struct module *owner ;
3961 struct class_attribute *class_attrs ;
3962 struct device_attribute *dev_attrs ;
3963 struct bin_attribute *dev_bin_attrs ;
3964 struct kobject *dev_kobj ;
3965 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
3966 char *(*devnode)(struct device * , mode_t * ) ;
3967 void (*class_release)(struct class * ) ;
3968 void (*dev_release)(struct device * ) ;
3969 int (*suspend)(struct device * , pm_message_t ) ;
3970 int (*resume)(struct device * ) ;
3971 struct kobj_ns_type_operations const *ns_type ;
3972 void const *(*namespace)(struct device * ) ;
3973 struct dev_pm_ops const *pm ;
3974 struct subsys_private *p ;
3975};
3976#line 344 "include/linux/device.h"
3977struct class_attribute {
3978 struct attribute attr ;
3979 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
3980 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
3981};
3982#line 395 "include/linux/device.h"
3983struct device_type {
3984 char const *name ;
3985 struct attribute_group const **groups ;
3986 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
3987 char *(*devnode)(struct device * , mode_t * ) ;
3988 void (*release)(struct device * ) ;
3989 struct dev_pm_ops const *pm ;
3990};
3991#line 422 "include/linux/device.h"
3992struct device_attribute {
3993 struct attribute attr ;
3994 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
3995 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
3996 size_t ) ;
3997};
3998#line 483 "include/linux/device.h"
3999struct device_dma_parameters {
4000 unsigned int max_segment_size ;
4001 unsigned long segment_boundary_mask ;
4002};
4003#line 492
4004struct dma_coherent_mem;
4005#line 492
4006struct dma_coherent_mem;
4007#line 492
4008struct dma_coherent_mem;
4009#line 492 "include/linux/device.h"
4010struct device {
4011 struct device *parent ;
4012 struct device_private *p ;
4013 struct kobject kobj ;
4014 char const *init_name ;
4015 struct device_type const *type ;
4016 struct mutex mutex ;
4017 struct bus_type *bus ;
4018 struct device_driver *driver ;
4019 void *platform_data ;
4020 struct dev_pm_info power ;
4021 struct dev_power_domain *pwr_domain ;
4022 int numa_node ;
4023 u64 *dma_mask ;
4024 u64 coherent_dma_mask ;
4025 struct device_dma_parameters *dma_parms ;
4026 struct list_head dma_pools ;
4027 struct dma_coherent_mem *dma_mem ;
4028 struct dev_archdata archdata ;
4029 struct device_node *of_node ;
4030 dev_t devt ;
4031 spinlock_t devres_lock ;
4032 struct list_head devres_head ;
4033 struct klist_node knode_class ;
4034 struct class *class ;
4035 struct attribute_group const **groups ;
4036 void (*release)(struct device * ) ;
4037};
4038#line 604 "include/linux/device.h"
4039struct wakeup_source {
4040 char *name ;
4041 struct list_head entry ;
4042 spinlock_t lock ;
4043 struct timer_list timer ;
4044 unsigned long timer_expires ;
4045 ktime_t total_time ;
4046 ktime_t max_time ;
4047 ktime_t last_time ;
4048 unsigned long event_count ;
4049 unsigned long active_count ;
4050 unsigned long relax_count ;
4051 unsigned long hit_count ;
4052 unsigned char active : 1 ;
4053};
4054#line 81 "include/linux/genhd.h"
4055struct disk_stats {
4056 unsigned long sectors[2U] ;
4057 unsigned long ios[2U] ;
4058 unsigned long merges[2U] ;
4059 unsigned long ticks[2U] ;
4060 unsigned long io_ticks ;
4061 unsigned long time_in_queue ;
4062};
4063#line 90 "include/linux/genhd.h"
4064struct partition_meta_info {
4065 u8 uuid[16U] ;
4066 u8 volname[64U] ;
4067};
4068#line 98 "include/linux/genhd.h"
4069struct hd_struct {
4070 sector_t start_sect ;
4071 sector_t nr_sects ;
4072 sector_t alignment_offset ;
4073 unsigned int discard_alignment ;
4074 struct device __dev ;
4075 struct kobject *holder_dir ;
4076 int policy ;
4077 int partno ;
4078 struct partition_meta_info *info ;
4079 int make_it_fail ;
4080 unsigned long stamp ;
4081 atomic_t in_flight[2U] ;
4082 struct disk_stats *dkstats ;
4083 atomic_t ref ;
4084 struct rcu_head rcu_head ;
4085};
4086#line 145 "include/linux/genhd.h"
4087struct disk_part_tbl {
4088 struct rcu_head rcu_head ;
4089 int len ;
4090 struct hd_struct *last_lookup ;
4091 struct hd_struct *part[0U] ;
4092};
4093#line 152
4094struct disk_events;
4095#line 152
4096struct disk_events;
4097#line 152
4098struct disk_events;
4099#line 152
4100struct disk_events;
4101#line 153
4102struct request_queue;
4103#line 153
4104struct request_queue;
4105#line 153
4106struct request_queue;
4107#line 153
4108struct timer_rand_state;
4109#line 153
4110struct timer_rand_state;
4111#line 153
4112struct timer_rand_state;
4113#line 153
4114struct blk_integrity;
4115#line 153
4116struct blk_integrity;
4117#line 153
4118struct blk_integrity;
4119#line 153 "include/linux/genhd.h"
4120struct gendisk {
4121 int major ;
4122 int first_minor ;
4123 int minors ;
4124 char disk_name[32U] ;
4125 char *(*devnode)(struct gendisk * , mode_t * ) ;
4126 unsigned int events ;
4127 unsigned int async_events ;
4128 struct disk_part_tbl *part_tbl ;
4129 struct hd_struct part0 ;
4130 struct block_device_operations const *fops ;
4131 struct request_queue *queue ;
4132 void *private_data ;
4133 int flags ;
4134 struct device *driverfs_dev ;
4135 struct kobject *slave_dir ;
4136 struct timer_rand_state *random ;
4137 atomic_t sync_io ;
4138 struct disk_events *ev ;
4139 struct blk_integrity *integrity ;
4140 int node_id ;
4141};
4142#line 653 "include/linux/genhd.h"
4143struct exception_table_entry {
4144 unsigned long insn ;
4145 unsigned long fixup ;
4146};
4147#line 8 "include/linux/ftrace_irq.h"
4148enum irqreturn {
4149 IRQ_NONE = 0,
4150 IRQ_HANDLED = 1,
4151 IRQ_WAKE_THREAD = 2
4152} ;
4153#line 16 "include/linux/irqreturn.h"
4154typedef enum irqreturn irqreturn_t;
4155#line 331 "include/linux/irq.h"
4156struct proc_dir_entry;
4157#line 331
4158struct proc_dir_entry;
4159#line 331
4160struct proc_dir_entry;
4161#line 331
4162struct proc_dir_entry;
4163#line 13 "include/linux/writeback.h"
4164enum writeback_sync_modes {
4165 WB_SYNC_NONE = 0,
4166 WB_SYNC_ALL = 1
4167} ;
4168#line 18 "include/linux/writeback.h"
4169struct writeback_control {
4170 enum writeback_sync_modes sync_mode ;
4171 unsigned long *older_than_this ;
4172 unsigned long wb_start ;
4173 long nr_to_write ;
4174 long pages_skipped ;
4175 loff_t range_start ;
4176 loff_t range_end ;
4177 unsigned char nonblocking : 1 ;
4178 unsigned char encountered_congestion : 1 ;
4179 unsigned char for_kupdate : 1 ;
4180 unsigned char for_background : 1 ;
4181 unsigned char for_reclaim : 1 ;
4182 unsigned char range_cyclic : 1 ;
4183 unsigned char more_io : 1 ;
4184};
4185#line 54
4186struct bdi_writeback;
4187#line 54
4188struct bdi_writeback;
4189#line 54
4190struct bdi_writeback;
4191#line 54
4192struct bdi_writeback;
4193#line 38 "include/linux/backing-dev.h"
4194typedef int congested_fn(void * , int );
4195#line 45 "include/linux/backing-dev.h"
4196struct bdi_writeback {
4197 struct backing_dev_info *bdi ;
4198 unsigned int nr ;
4199 unsigned long last_old_flush ;
4200 unsigned long last_active ;
4201 struct task_struct *task ;
4202 struct timer_list wakeup_timer ;
4203 struct list_head b_dirty ;
4204 struct list_head b_io ;
4205 struct list_head b_more_io ;
4206};
4207#line 61 "include/linux/backing-dev.h"
4208struct backing_dev_info {
4209 struct list_head bdi_list ;
4210 unsigned long ra_pages ;
4211 unsigned long state ;
4212 unsigned int capabilities ;
4213 congested_fn *congested_fn ;
4214 void *congested_data ;
4215 char *name ;
4216 struct percpu_counter bdi_stat[2U] ;
4217 struct prop_local_percpu completions ;
4218 int dirty_exceeded ;
4219 unsigned int min_ratio ;
4220 unsigned int max_ratio ;
4221 unsigned int max_prop_frac ;
4222 struct bdi_writeback wb ;
4223 spinlock_t wb_lock ;
4224 struct list_head work_list ;
4225 struct device *dev ;
4226 struct timer_list laptop_mode_wb_timer ;
4227 struct dentry *debug_dir ;
4228 struct dentry *debug_stats ;
4229};
4230#line 11 "include/linux/mempool.h"
4231typedef void *mempool_alloc_t(gfp_t , void * );
4232#line 12 "include/linux/mempool.h"
4233typedef void mempool_free_t(void * , void * );
4234#line 13 "include/linux/mempool.h"
4235struct mempool_s {
4236 spinlock_t lock ;
4237 int min_nr ;
4238 int curr_nr ;
4239 void **elements ;
4240 void *pool_data ;
4241 mempool_alloc_t *alloc ;
4242 mempool_free_t *free ;
4243 wait_queue_head_t wait ;
4244};
4245#line 24 "include/linux/mempool.h"
4246typedef struct mempool_s mempool_t;
4247#line 29 "include/linux/iocontext.h"
4248struct io_context {
4249 atomic_long_t refcount ;
4250 atomic_t nr_tasks ;
4251 spinlock_t lock ;
4252 unsigned short ioprio ;
4253 unsigned short ioprio_changed ;
4254 unsigned short cgroup_changed ;
4255 int nr_batch_requests ;
4256 unsigned long last_waited ;
4257 struct radix_tree_root radix_root ;
4258 struct hlist_head cic_list ;
4259 void *ioc_data ;
4260};
4261#line 90 "include/linux/bio.h"
4262struct bio_integrity_payload {
4263 struct bio *bip_bio ;
4264 sector_t bip_sector ;
4265 void *bip_buf ;
4266 bio_end_io_t *bip_end_io ;
4267 unsigned int bip_size ;
4268 unsigned short bip_slab ;
4269 unsigned short bip_vcnt ;
4270 unsigned short bip_idx ;
4271 struct work_struct bip_work ;
4272 struct bio_vec bip_vec[0U] ;
4273};
4274#line 373 "include/linux/bio.h"
4275struct bio_list {
4276 struct bio *head ;
4277 struct bio *tail ;
4278};
4279#line 63 "include/linux/bsg.h"
4280struct bsg_class_device {
4281 struct device *class_dev ;
4282 struct device *parent ;
4283 int minor ;
4284 struct request_queue *queue ;
4285 struct kref ref ;
4286 void (*release)(struct device * ) ;
4287};
4288#line 80 "include/linux/bsg.h"
4289struct scatterlist {
4290 unsigned long sg_magic ;
4291 unsigned long page_link ;
4292 unsigned int offset ;
4293 unsigned int length ;
4294 dma_addr_t dma_address ;
4295 unsigned int dma_length ;
4296};
4297#line 18 "include/asm-generic/scatterlist.h"
4298struct elevator_queue;
4299#line 18
4300struct elevator_queue;
4301#line 18
4302struct elevator_queue;
4303#line 18
4304struct elevator_queue;
4305#line 20
4306struct blk_trace;
4307#line 20
4308struct blk_trace;
4309#line 20
4310struct blk_trace;
4311#line 20
4312struct blk_trace;
4313#line 21
4314struct request;
4315#line 21
4316struct request;
4317#line 21
4318struct request;
4319#line 21
4320struct request;
4321#line 38 "include/linux/blkdev.h"
4322typedef void rq_end_io_fn(struct request * , int );
4323#line 39 "include/linux/blkdev.h"
4324struct request_list {
4325 int count[2U] ;
4326 int starved[2U] ;
4327 int elvpriv ;
4328 mempool_t *rq_pool ;
4329 wait_queue_head_t wait[2U] ;
4330};
4331#line 51
4332enum rq_cmd_type_bits {
4333 REQ_TYPE_FS = 1,
4334 REQ_TYPE_BLOCK_PC = 2,
4335 REQ_TYPE_SENSE = 3,
4336 REQ_TYPE_PM_SUSPEND = 4,
4337 REQ_TYPE_PM_RESUME = 5,
4338 REQ_TYPE_PM_SHUTDOWN = 6,
4339 REQ_TYPE_SPECIAL = 7,
4340 REQ_TYPE_ATA_TASKFILE = 8,
4341 REQ_TYPE_ATA_PC = 9
4342} ;
4343#line 63 "include/linux/blkdev.h"
4344union __anonunion_ldv_26185_163 {
4345 struct rb_node rb_node ;
4346 void *completion_data ;
4347};
4348#line 63 "include/linux/blkdev.h"
4349struct __anonstruct_flush_165 {
4350 unsigned int seq ;
4351 struct list_head list ;
4352};
4353#line 63 "include/linux/blkdev.h"
4354union __anonunion_ldv_26192_164 {
4355 void *elevator_private[3U] ;
4356 struct __anonstruct_flush_165 flush ;
4357};
4358#line 63 "include/linux/blkdev.h"
4359struct request {
4360 struct list_head queuelist ;
4361 struct call_single_data csd ;
4362 struct request_queue *q ;
4363 unsigned int cmd_flags ;
4364 enum rq_cmd_type_bits cmd_type ;
4365 unsigned long atomic_flags ;
4366 int cpu ;
4367 unsigned int __data_len ;
4368 sector_t __sector ;
4369 struct bio *bio ;
4370 struct bio *biotail ;
4371 struct hlist_node hash ;
4372 union __anonunion_ldv_26185_163 ldv_26185 ;
4373 union __anonunion_ldv_26192_164 ldv_26192 ;
4374 struct gendisk *rq_disk ;
4375 struct hd_struct *part ;
4376 unsigned long start_time ;
4377 unsigned short nr_phys_segments ;
4378 unsigned short nr_integrity_segments ;
4379 unsigned short ioprio ;
4380 int ref_count ;
4381 void *special ;
4382 char *buffer ;
4383 int tag ;
4384 int errors ;
4385 unsigned char __cmd[16U] ;
4386 unsigned char *cmd ;
4387 unsigned short cmd_len ;
4388 unsigned int extra_len ;
4389 unsigned int sense_len ;
4390 unsigned int resid_len ;
4391 void *sense ;
4392 unsigned long deadline ;
4393 struct list_head timeout_list ;
4394 unsigned int timeout ;
4395 int retries ;
4396 rq_end_io_fn *end_io ;
4397 void *end_io_data ;
4398 struct request *next_rq ;
4399};
4400#line 8 "include/linux/elevator.h"
4401typedef int elevator_merge_fn(struct request_queue * , struct request ** , struct bio * );
4402#line 11 "include/linux/elevator.h"
4403typedef void elevator_merge_req_fn(struct request_queue * , struct request * , struct request * );
4404#line 13 "include/linux/elevator.h"
4405typedef void elevator_merged_fn(struct request_queue * , struct request * , int );
4406#line 15 "include/linux/elevator.h"
4407typedef int elevator_allow_merge_fn(struct request_queue * , struct request * , struct bio * );
4408#line 17 "include/linux/elevator.h"
4409typedef void elevator_bio_merged_fn(struct request_queue * , struct request * , struct bio * );
4410#line 20 "include/linux/elevator.h"
4411typedef int elevator_dispatch_fn(struct request_queue * , int );
4412#line 22 "include/linux/elevator.h"
4413typedef void elevator_add_req_fn(struct request_queue * , struct request * );
4414#line 23 "include/linux/elevator.h"
4415typedef struct request *elevator_request_list_fn(struct request_queue * , struct request * );
4416#line 24 "include/linux/elevator.h"
4417typedef void elevator_completed_req_fn(struct request_queue * , struct request * );
4418#line 25 "include/linux/elevator.h"
4419typedef int elevator_may_queue_fn(struct request_queue * , int );
4420#line 27 "include/linux/elevator.h"
4421typedef int elevator_set_req_fn(struct request_queue * , struct request * , gfp_t );
4422#line 28 "include/linux/elevator.h"
4423typedef void elevator_put_req_fn(struct request * );
4424#line 29 "include/linux/elevator.h"
4425typedef void elevator_activate_req_fn(struct request_queue * , struct request * );
4426#line 30 "include/linux/elevator.h"
4427typedef void elevator_deactivate_req_fn(struct request_queue * , struct request * );
4428#line 32 "include/linux/elevator.h"
4429typedef void *elevator_init_fn(struct request_queue * );
4430#line 33 "include/linux/elevator.h"
4431typedef void elevator_exit_fn(struct elevator_queue * );
4432#line 34 "include/linux/elevator.h"
4433struct elevator_ops {
4434 elevator_merge_fn *elevator_merge_fn ;
4435 elevator_merged_fn *elevator_merged_fn ;
4436 elevator_merge_req_fn *elevator_merge_req_fn ;
4437 elevator_allow_merge_fn *elevator_allow_merge_fn ;
4438 elevator_bio_merged_fn *elevator_bio_merged_fn ;
4439 elevator_dispatch_fn *elevator_dispatch_fn ;
4440 elevator_add_req_fn *elevator_add_req_fn ;
4441 elevator_activate_req_fn *elevator_activate_req_fn ;
4442 elevator_deactivate_req_fn *elevator_deactivate_req_fn ;
4443 elevator_completed_req_fn *elevator_completed_req_fn ;
4444 elevator_request_list_fn *elevator_former_req_fn ;
4445 elevator_request_list_fn *elevator_latter_req_fn ;
4446 elevator_set_req_fn *elevator_set_req_fn ;
4447 elevator_put_req_fn *elevator_put_req_fn ;
4448 elevator_may_queue_fn *elevator_may_queue_fn ;
4449 elevator_init_fn *elevator_init_fn ;
4450 elevator_exit_fn *elevator_exit_fn ;
4451 void (*trim)(struct io_context * ) ;
4452};
4453#line 62 "include/linux/elevator.h"
4454struct elv_fs_entry {
4455 struct attribute attr ;
4456 ssize_t (*show)(struct elevator_queue * , char * ) ;
4457 ssize_t (*store)(struct elevator_queue * , char const * , size_t ) ;
4458};
4459#line 70 "include/linux/elevator.h"
4460struct elevator_type {
4461 struct list_head list ;
4462 struct elevator_ops ops ;
4463 struct elv_fs_entry *elevator_attrs ;
4464 char elevator_name[16U] ;
4465 struct module *elevator_owner ;
4466};
4467#line 82 "include/linux/elevator.h"
4468struct elevator_queue {
4469 struct elevator_ops *ops ;
4470 void *elevator_data ;
4471 struct kobject kobj ;
4472 struct elevator_type *elevator_type ;
4473 struct mutex sysfs_lock ;
4474 struct hlist_head *hash ;
4475 unsigned char registered : 1 ;
4476};
4477#line 195 "include/linux/blkdev.h"
4478typedef void request_fn_proc(struct request_queue * );
4479#line 196 "include/linux/blkdev.h"
4480typedef int make_request_fn(struct request_queue * , struct bio * );
4481#line 197 "include/linux/blkdev.h"
4482typedef int prep_rq_fn(struct request_queue * , struct request * );
4483#line 198 "include/linux/blkdev.h"
4484typedef void unprep_rq_fn(struct request_queue * , struct request * );
4485#line 199 "include/linux/blkdev.h"
4486struct bvec_merge_data {
4487 struct block_device *bi_bdev ;
4488 sector_t bi_sector ;
4489 unsigned int bi_size ;
4490 unsigned long bi_rw ;
4491};
4492#line 207 "include/linux/blkdev.h"
4493typedef int merge_bvec_fn(struct request_queue * , struct bvec_merge_data * , struct bio_vec * );
4494#line 209 "include/linux/blkdev.h"
4495typedef void softirq_done_fn(struct request * );
4496#line 210 "include/linux/blkdev.h"
4497typedef int dma_drain_needed_fn(struct request * );
4498#line 211 "include/linux/blkdev.h"
4499typedef int lld_busy_fn(struct request_queue * );
4500#line 212
4501enum blk_eh_timer_return {
4502 BLK_EH_NOT_HANDLED = 0,
4503 BLK_EH_HANDLED = 1,
4504 BLK_EH_RESET_TIMER = 2
4505} ;
4506#line 219 "include/linux/blkdev.h"
4507typedef enum blk_eh_timer_return rq_timed_out_fn(struct request * );
4508#line 225 "include/linux/blkdev.h"
4509struct blk_queue_tag {
4510 struct request **tag_index ;
4511 unsigned long *tag_map ;
4512 int busy ;
4513 int max_depth ;
4514 int real_max_depth ;
4515 atomic_t refcnt ;
4516};
4517#line 234 "include/linux/blkdev.h"
4518struct queue_limits {
4519 unsigned long bounce_pfn ;
4520 unsigned long seg_boundary_mask ;
4521 unsigned int max_hw_sectors ;
4522 unsigned int max_sectors ;
4523 unsigned int max_segment_size ;
4524 unsigned int physical_block_size ;
4525 unsigned int alignment_offset ;
4526 unsigned int io_min ;
4527 unsigned int io_opt ;
4528 unsigned int max_discard_sectors ;
4529 unsigned int discard_granularity ;
4530 unsigned int discard_alignment ;
4531 unsigned short logical_block_size ;
4532 unsigned short max_segments ;
4533 unsigned short max_integrity_segments ;
4534 unsigned char misaligned ;
4535 unsigned char discard_misaligned ;
4536 unsigned char cluster ;
4537 unsigned char discard_zeroes_data ;
4538};
4539#line 262 "include/linux/blkdev.h"
4540struct request_queue {
4541 struct list_head queue_head ;
4542 struct request *last_merge ;
4543 struct elevator_queue *elevator ;
4544 struct request_list rq ;
4545 request_fn_proc *request_fn ;
4546 make_request_fn *make_request_fn ;
4547 prep_rq_fn *prep_rq_fn ;
4548 unprep_rq_fn *unprep_rq_fn ;
4549 merge_bvec_fn *merge_bvec_fn ;
4550 softirq_done_fn *softirq_done_fn ;
4551 rq_timed_out_fn *rq_timed_out_fn ;
4552 dma_drain_needed_fn *dma_drain_needed ;
4553 lld_busy_fn *lld_busy_fn ;
4554 sector_t end_sector ;
4555 struct request *boundary_rq ;
4556 struct delayed_work delay_work ;
4557 struct backing_dev_info backing_dev_info ;
4558 void *queuedata ;
4559 gfp_t bounce_gfp ;
4560 unsigned long queue_flags ;
4561 spinlock_t __queue_lock ;
4562 spinlock_t *queue_lock ;
4563 struct kobject kobj ;
4564 unsigned long nr_requests ;
4565 unsigned int nr_congestion_on ;
4566 unsigned int nr_congestion_off ;
4567 unsigned int nr_batching ;
4568 void *dma_drain_buffer ;
4569 unsigned int dma_drain_size ;
4570 unsigned int dma_pad_mask ;
4571 unsigned int dma_alignment ;
4572 struct blk_queue_tag *queue_tags ;
4573 struct list_head tag_busy_list ;
4574 unsigned int nr_sorted ;
4575 unsigned int in_flight[2U] ;
4576 unsigned int rq_timeout ;
4577 struct timer_list timeout ;
4578 struct list_head timeout_list ;
4579 struct queue_limits limits ;
4580 unsigned int sg_timeout ;
4581 unsigned int sg_reserved_size ;
4582 int node ;
4583 struct blk_trace *blk_trace ;
4584 unsigned int flush_flags ;
4585 unsigned char flush_not_queueable : 1 ;
4586 unsigned char flush_queue_delayed : 1 ;
4587 unsigned char flush_pending_idx : 1 ;
4588 unsigned char flush_running_idx : 1 ;
4589 unsigned long flush_pending_since ;
4590 struct list_head flush_queue[2U] ;
4591 struct list_head flush_data_in_flight ;
4592 struct request flush_rq ;
4593 struct mutex sysfs_lock ;
4594 struct bsg_class_device bsg_dev ;
4595};
4596#line 859 "include/linux/blkdev.h"
4597struct blk_plug {
4598 unsigned long magic ;
4599 struct list_head list ;
4600 struct list_head cb_list ;
4601 unsigned int should_sort ;
4602};
4603#line 1192 "include/linux/blkdev.h"
4604struct blk_integrity_exchg {
4605 void *prot_buf ;
4606 void *data_buf ;
4607 sector_t sector ;
4608 unsigned int data_size ;
4609 unsigned short sector_size ;
4610 char const *disk_name ;
4611};
4612#line 1212 "include/linux/blkdev.h"
4613typedef void integrity_gen_fn(struct blk_integrity_exchg * );
4614#line 1213 "include/linux/blkdev.h"
4615typedef int integrity_vrfy_fn(struct blk_integrity_exchg * );
4616#line 1214 "include/linux/blkdev.h"
4617typedef void integrity_set_tag_fn(void * , void * , unsigned int );
4618#line 1215 "include/linux/blkdev.h"
4619typedef void integrity_get_tag_fn(void * , void * , unsigned int );
4620#line 1216 "include/linux/blkdev.h"
4621struct blk_integrity {
4622 integrity_gen_fn *generate_fn ;
4623 integrity_vrfy_fn *verify_fn ;
4624 integrity_set_tag_fn *set_tag_fn ;
4625 integrity_get_tag_fn *get_tag_fn ;
4626 unsigned short flags ;
4627 unsigned short tuple_size ;
4628 unsigned short sector_size ;
4629 unsigned short tag_size ;
4630 char const *name ;
4631 struct kobject kobj ;
4632};
4633#line 1275 "include/linux/blkdev.h"
4634struct block_device_operations {
4635 int (*open)(struct block_device * , fmode_t ) ;
4636 int (*release)(struct gendisk * , fmode_t ) ;
4637 int (*ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
4638 int (*compat_ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
4639 int (*direct_access)(struct block_device * , sector_t , void ** , unsigned long * ) ;
4640 unsigned int (*check_events)(struct gendisk * , unsigned int ) ;
4641 int (*media_changed)(struct gendisk * ) ;
4642 void (*unlock_native_capacity)(struct gendisk * ) ;
4643 int (*revalidate_disk)(struct gendisk * ) ;
4644 int (*getgeo)(struct block_device * , struct hd_geometry * ) ;
4645 void (*swap_slot_free_notify)(struct block_device * , unsigned long ) ;
4646 struct module *owner ;
4647};
4648#line 46 "include/linux/proc_fs.h"
4649typedef int read_proc_t(char * , char ** , off_t , int , int * , void * );
4650#line 48 "include/linux/proc_fs.h"
4651typedef int write_proc_t(struct file * , char const * , unsigned long , void * );
4652#line 49 "include/linux/proc_fs.h"
4653struct proc_dir_entry {
4654 unsigned int low_ino ;
4655 unsigned int namelen ;
4656 char const *name ;
4657 mode_t mode ;
4658 nlink_t nlink ;
4659 uid_t uid ;
4660 gid_t gid ;
4661 loff_t size ;
4662 struct inode_operations const *proc_iops ;
4663 struct file_operations const *proc_fops ;
4664 struct proc_dir_entry *next ;
4665 struct proc_dir_entry *parent ;
4666 struct proc_dir_entry *subdir ;
4667 void *data ;
4668 read_proc_t *read_proc ;
4669 write_proc_t *write_proc ;
4670 atomic_t count ;
4671 int pde_users ;
4672 spinlock_t pde_unload_lock ;
4673 struct completion *pde_unload_completion ;
4674 struct list_head pde_openers ;
4675};
4676#line 91 "include/linux/interrupt.h"
4677struct irqaction {
4678 irqreturn_t (*handler)(int , void * ) ;
4679 unsigned long flags ;
4680 void *dev_id ;
4681 struct irqaction *next ;
4682 int irq ;
4683 irqreturn_t (*thread_fn)(int , void * ) ;
4684 struct task_struct *thread ;
4685 unsigned long thread_flags ;
4686 unsigned long thread_mask ;
4687 char const *name ;
4688 struct proc_dir_entry *dir ;
4689};
4690#line 12 "include/linux/mod_devicetable.h"
4691typedef unsigned long kernel_ulong_t;
4692#line 13 "include/linux/mod_devicetable.h"
4693struct pci_device_id {
4694 __u32 vendor ;
4695 __u32 device ;
4696 __u32 subvendor ;
4697 __u32 subdevice ;
4698 __u32 class ;
4699 __u32 class_mask ;
4700 kernel_ulong_t driver_data ;
4701};
4702#line 215 "include/linux/mod_devicetable.h"
4703struct of_device_id {
4704 char name[32U] ;
4705 char type[32U] ;
4706 char compatible[128U] ;
4707 void *data ;
4708};
4709#line 69 "include/linux/io.h"
4710struct hotplug_slot;
4711#line 69
4712struct hotplug_slot;
4713#line 69
4714struct hotplug_slot;
4715#line 69 "include/linux/io.h"
4716struct pci_slot {
4717 struct pci_bus *bus ;
4718 struct list_head list ;
4719 struct hotplug_slot *hotplug ;
4720 unsigned char number ;
4721 struct kobject kobj ;
4722};
4723#line 117 "include/linux/pci.h"
4724typedef int pci_power_t;
4725#line 143 "include/linux/pci.h"
4726typedef unsigned int pci_channel_state_t;
4727#line 144
4728enum pci_channel_state {
4729 pci_channel_io_normal = 1,
4730 pci_channel_io_frozen = 2,
4731 pci_channel_io_perm_failure = 3
4732} ;
4733#line 169 "include/linux/pci.h"
4734typedef unsigned short pci_dev_flags_t;
4735#line 184 "include/linux/pci.h"
4736typedef unsigned short pci_bus_flags_t;
4737#line 227
4738struct pcie_link_state;
4739#line 227
4740struct pcie_link_state;
4741#line 227
4742struct pcie_link_state;
4743#line 227
4744struct pcie_link_state;
4745#line 228
4746struct pci_vpd;
4747#line 228
4748struct pci_vpd;
4749#line 228
4750struct pci_vpd;
4751#line 228
4752struct pci_vpd;
4753#line 229
4754struct pci_sriov;
4755#line 229
4756struct pci_sriov;
4757#line 229
4758struct pci_sriov;
4759#line 229
4760struct pci_sriov;
4761#line 230
4762struct pci_ats;
4763#line 230
4764struct pci_ats;
4765#line 230
4766struct pci_ats;
4767#line 230
4768struct pci_ats;
4769#line 231
4770struct pci_driver;
4771#line 231
4772struct pci_driver;
4773#line 231
4774struct pci_driver;
4775#line 231 "include/linux/pci.h"
4776union __anonunion_ldv_28420_168 {
4777 struct pci_sriov *sriov ;
4778 struct pci_dev *physfn ;
4779};
4780#line 231 "include/linux/pci.h"
4781struct pci_dev {
4782 struct list_head bus_list ;
4783 struct pci_bus *bus ;
4784 struct pci_bus *subordinate ;
4785 void *sysdata ;
4786 struct proc_dir_entry *procent ;
4787 struct pci_slot *slot ;
4788 unsigned int devfn ;
4789 unsigned short vendor ;
4790 unsigned short device ;
4791 unsigned short subsystem_vendor ;
4792 unsigned short subsystem_device ;
4793 unsigned int class ;
4794 u8 revision ;
4795 u8 hdr_type ;
4796 u8 pcie_cap ;
4797 u8 pcie_type ;
4798 u8 rom_base_reg ;
4799 u8 pin ;
4800 struct pci_driver *driver ;
4801 u64 dma_mask ;
4802 struct device_dma_parameters dma_parms ;
4803 pci_power_t current_state ;
4804 int pm_cap ;
4805 unsigned char pme_support : 5 ;
4806 unsigned char pme_interrupt : 1 ;
4807 unsigned char d1_support : 1 ;
4808 unsigned char d2_support : 1 ;
4809 unsigned char no_d1d2 : 1 ;
4810 unsigned char mmio_always_on : 1 ;
4811 unsigned char wakeup_prepared : 1 ;
4812 unsigned int d3_delay ;
4813 struct pcie_link_state *link_state ;
4814 pci_channel_state_t error_state ;
4815 struct device dev ;
4816 int cfg_size ;
4817 unsigned int irq ;
4818 struct resource resource[18U] ;
4819 resource_size_t fw_addr[18U] ;
4820 unsigned char transparent : 1 ;
4821 unsigned char multifunction : 1 ;
4822 unsigned char is_added : 1 ;
4823 unsigned char is_busmaster : 1 ;
4824 unsigned char no_msi : 1 ;
4825 unsigned char block_ucfg_access : 1 ;
4826 unsigned char broken_parity_status : 1 ;
4827 unsigned char irq_reroute_variant : 2 ;
4828 unsigned char msi_enabled : 1 ;
4829 unsigned char msix_enabled : 1 ;
4830 unsigned char ari_enabled : 1 ;
4831 unsigned char is_managed : 1 ;
4832 unsigned char is_pcie : 1 ;
4833 unsigned char needs_freset : 1 ;
4834 unsigned char state_saved : 1 ;
4835 unsigned char is_physfn : 1 ;
4836 unsigned char is_virtfn : 1 ;
4837 unsigned char reset_fn : 1 ;
4838 unsigned char is_hotplug_bridge : 1 ;
4839 unsigned char __aer_firmware_first_valid : 1 ;
4840 unsigned char __aer_firmware_first : 1 ;
4841 pci_dev_flags_t dev_flags ;
4842 atomic_t enable_cnt ;
4843 u32 saved_config_space[16U] ;
4844 struct hlist_head saved_cap_space ;
4845 struct bin_attribute *rom_attr ;
4846 int rom_attr_enabled ;
4847 struct bin_attribute *res_attr[18U] ;
4848 struct bin_attribute *res_attr_wc[18U] ;
4849 struct list_head msi_list ;
4850 struct pci_vpd *vpd ;
4851 union __anonunion_ldv_28420_168 ldv_28420 ;
4852 struct pci_ats *ats ;
4853};
4854#line 406
4855struct pci_ops;
4856#line 406
4857struct pci_ops;
4858#line 406
4859struct pci_ops;
4860#line 406 "include/linux/pci.h"
4861struct pci_bus {
4862 struct list_head node ;
4863 struct pci_bus *parent ;
4864 struct list_head children ;
4865 struct list_head devices ;
4866 struct pci_dev *self ;
4867 struct list_head slots ;
4868 struct resource *resource[4U] ;
4869 struct list_head resources ;
4870 struct pci_ops *ops ;
4871 void *sysdata ;
4872 struct proc_dir_entry *procdir ;
4873 unsigned char number ;
4874 unsigned char primary ;
4875 unsigned char secondary ;
4876 unsigned char subordinate ;
4877 unsigned char max_bus_speed ;
4878 unsigned char cur_bus_speed ;
4879 char name[48U] ;
4880 unsigned short bridge_ctl ;
4881 pci_bus_flags_t bus_flags ;
4882 struct device *bridge ;
4883 struct device dev ;
4884 struct bin_attribute *legacy_io ;
4885 struct bin_attribute *legacy_mem ;
4886 unsigned char is_added : 1 ;
4887};
4888#line 458 "include/linux/pci.h"
4889struct pci_ops {
4890 int (*read)(struct pci_bus * , unsigned int , int , int , u32 * ) ;
4891 int (*write)(struct pci_bus * , unsigned int , int , int , u32 ) ;
4892};
4893#line 493 "include/linux/pci.h"
4894struct pci_dynids {
4895 spinlock_t lock ;
4896 struct list_head list ;
4897};
4898#line 506 "include/linux/pci.h"
4899typedef unsigned int pci_ers_result_t;
4900#line 515 "include/linux/pci.h"
4901struct pci_error_handlers {
4902 pci_ers_result_t (*error_detected)(struct pci_dev * , enum pci_channel_state ) ;
4903 pci_ers_result_t (*mmio_enabled)(struct pci_dev * ) ;
4904 pci_ers_result_t (*link_reset)(struct pci_dev * ) ;
4905 pci_ers_result_t (*slot_reset)(struct pci_dev * ) ;
4906 void (*resume)(struct pci_dev * ) ;
4907};
4908#line 543 "include/linux/pci.h"
4909struct pci_driver {
4910 struct list_head node ;
4911 char const *name ;
4912 struct pci_device_id const *id_table ;
4913 int (*probe)(struct pci_dev * , struct pci_device_id const * ) ;
4914 void (*remove)(struct pci_dev * ) ;
4915 int (*suspend)(struct pci_dev * , pm_message_t ) ;
4916 int (*suspend_late)(struct pci_dev * , pm_message_t ) ;
4917 int (*resume_early)(struct pci_dev * ) ;
4918 int (*resume)(struct pci_dev * ) ;
4919 void (*shutdown)(struct pci_dev * ) ;
4920 struct pci_error_handlers *err_handler ;
4921 struct device_driver driver ;
4922 struct pci_dynids dynids ;
4923};
4924#line 34 "include/linux/bug.h"
4925struct dma_attrs {
4926 unsigned long flags[1U] ;
4927};
4928#line 65 "include/linux/dma-attrs.h"
4929struct sg_table {
4930 struct scatterlist *sgl ;
4931 unsigned int nents ;
4932 unsigned int orig_nents ;
4933};
4934#line 266 "include/linux/scatterlist.h"
4935enum dma_data_direction {
4936 DMA_BIDIRECTIONAL = 0,
4937 DMA_TO_DEVICE = 1,
4938 DMA_FROM_DEVICE = 2,
4939 DMA_NONE = 3
4940} ;
4941#line 273 "include/linux/scatterlist.h"
4942struct dma_map_ops {
4943 void *(*alloc_coherent)(struct device * , size_t , dma_addr_t * , gfp_t ) ;
4944 void (*free_coherent)(struct device * , size_t , void * , dma_addr_t ) ;
4945 dma_addr_t (*map_page)(struct device * , struct page * , unsigned long , size_t ,
4946 enum dma_data_direction , struct dma_attrs * ) ;
4947 void (*unmap_page)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
4948 struct dma_attrs * ) ;
4949 int (*map_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
4950 struct dma_attrs * ) ;
4951 void (*unmap_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
4952 struct dma_attrs * ) ;
4953 void (*sync_single_for_cpu)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
4954 void (*sync_single_for_device)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
4955 void (*sync_sg_for_cpu)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
4956 void (*sync_sg_for_device)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
4957 int (*mapping_error)(struct device * , dma_addr_t ) ;
4958 int (*dma_supported)(struct device * , u64 ) ;
4959 int (*set_dma_mask)(struct device * , u64 ) ;
4960 int is_phys ;
4961};
4962#line 19 "include/scsi/scsicam.h"
4963struct Scsi_Host;
4964#line 19
4965struct Scsi_Host;
4966#line 19
4967struct Scsi_Host;
4968#line 19
4969struct Scsi_Host;
4970#line 20
4971struct scsi_device;
4972#line 20
4973struct scsi_device;
4974#line 20
4975struct scsi_device;
4976#line 20
4977struct scsi_device;
4978#line 21 "include/scsi/scsicam.h"
4979struct scsi_data_buffer {
4980 struct sg_table table ;
4981 unsigned int length ;
4982 int resid ;
4983};
4984#line 36 "include/scsi/scsi_cmnd.h"
4985struct scsi_pointer {
4986 char *ptr ;
4987 int this_residual ;
4988 struct scatterlist *buffer ;
4989 int buffers_residual ;
4990 dma_addr_t dma_handle ;
4991 int volatile Status ;
4992 int volatile Message ;
4993 int volatile have_data_in ;
4994 int volatile sent_command ;
4995 int volatile phase ;
4996};
4997#line 52 "include/scsi/scsi_cmnd.h"
4998struct scsi_cmnd {
4999 struct scsi_device *device ;
5000 struct list_head list ;
5001 struct list_head eh_entry ;
5002 int eh_eflags ;
5003 unsigned long serial_number ;
5004 unsigned long jiffies_at_alloc ;
5005 int retries ;
5006 int allowed ;
5007 unsigned char prot_op ;
5008 unsigned char prot_type ;
5009 unsigned short cmd_len ;
5010 enum dma_data_direction sc_data_direction ;
5011 unsigned char *cmnd ;
5012 struct scsi_data_buffer sdb ;
5013 struct scsi_data_buffer *prot_sdb ;
5014 unsigned int underflow ;
5015 unsigned int transfersize ;
5016 struct request *request ;
5017 unsigned char *sense_buffer ;
5018 void (*scsi_done)(struct scsi_cmnd * ) ;
5019 struct scsi_pointer SCp ;
5020 unsigned char *host_scribble ;
5021 int result ;
5022 unsigned char tag ;
5023};
5024#line 563 "include/scsi/scsi.h"
5025struct scsi_sense_hdr;
5026#line 563
5027struct scsi_sense_hdr;
5028#line 563
5029struct scsi_sense_hdr;
5030#line 563
5031struct scsi_sense_hdr;
5032#line 25 "include/scsi/scsi_device.h"
5033enum scsi_device_state {
5034 SDEV_CREATED = 1,
5035 SDEV_RUNNING = 2,
5036 SDEV_CANCEL = 3,
5037 SDEV_DEL = 4,
5038 SDEV_QUIESCE = 5,
5039 SDEV_OFFLINE = 6,
5040 SDEV_BLOCK = 7,
5041 SDEV_CREATED_BLOCK = 8
5042} ;
5043#line 63
5044struct scsi_target;
5045#line 63
5046struct scsi_target;
5047#line 63
5048struct scsi_target;
5049#line 63
5050struct scsi_dh_data;
5051#line 63
5052struct scsi_dh_data;
5053#line 63
5054struct scsi_dh_data;
5055#line 63 "include/scsi/scsi_device.h"
5056struct scsi_device {
5057 struct Scsi_Host *host ;
5058 struct request_queue *request_queue ;
5059 struct list_head siblings ;
5060 struct list_head same_target_siblings ;
5061 unsigned int device_busy ;
5062 spinlock_t list_lock ;
5063 struct list_head cmd_list ;
5064 struct list_head starved_entry ;
5065 struct scsi_cmnd *current_cmnd ;
5066 unsigned short queue_depth ;
5067 unsigned short max_queue_depth ;
5068 unsigned short last_queue_full_depth ;
5069 unsigned short last_queue_full_count ;
5070 unsigned long last_queue_full_time ;
5071 unsigned long queue_ramp_up_period ;
5072 unsigned long last_queue_ramp_up ;
5073 unsigned int id ;
5074 unsigned int lun ;
5075 unsigned int channel ;
5076 unsigned int manufacturer ;
5077 unsigned int sector_size ;
5078 void *hostdata ;
5079 char type ;
5080 char scsi_level ;
5081 char inq_periph_qual ;
5082 unsigned char inquiry_len ;
5083 unsigned char *inquiry ;
5084 char const *vendor ;
5085 char const *model ;
5086 char const *rev ;
5087 unsigned char current_tag ;
5088 struct scsi_target *sdev_target ;
5089 unsigned int sdev_bflags ;
5090 unsigned char writeable : 1 ;
5091 unsigned char removable : 1 ;
5092 unsigned char changed : 1 ;
5093 unsigned char busy : 1 ;
5094 unsigned char lockable : 1 ;
5095 unsigned char locked : 1 ;
5096 unsigned char borken : 1 ;
5097 unsigned char disconnect : 1 ;
5098 unsigned char soft_reset : 1 ;
5099 unsigned char sdtr : 1 ;
5100 unsigned char wdtr : 1 ;
5101 unsigned char ppr : 1 ;
5102 unsigned char tagged_supported : 1 ;
5103 unsigned char simple_tags : 1 ;
5104 unsigned char ordered_tags : 1 ;
5105 unsigned char was_reset : 1 ;
5106 unsigned char expecting_cc_ua : 1 ;
5107 unsigned char use_10_for_rw : 1 ;
5108 unsigned char use_10_for_ms : 1 ;
5109 unsigned char skip_ms_page_8 : 1 ;
5110 unsigned char skip_ms_page_3f : 1 ;
5111 unsigned char use_192_bytes_for_3f : 1 ;
5112 unsigned char no_start_on_add : 1 ;
5113 unsigned char allow_restart : 1 ;
5114 unsigned char manage_start_stop : 1 ;
5115 unsigned char start_stop_pwr_cond : 1 ;
5116 unsigned char no_uld_attach : 1 ;
5117 unsigned char select_no_atn : 1 ;
5118 unsigned char fix_capacity : 1 ;
5119 unsigned char guess_capacity : 1 ;
5120 unsigned char retry_hwerror : 1 ;
5121 unsigned char last_sector_bug : 1 ;
5122 unsigned char no_read_disc_info : 1 ;
5123 unsigned char no_read_capacity_16 : 1 ;
5124 unsigned char is_visible : 1 ;
5125 unsigned long supported_events[1U] ;
5126 struct list_head event_list ;
5127 struct work_struct event_work ;
5128 unsigned int device_blocked ;
5129 unsigned int max_device_blocked ;
5130 atomic_t iorequest_cnt ;
5131 atomic_t iodone_cnt ;
5132 atomic_t ioerr_cnt ;
5133 struct device sdev_gendev ;
5134 struct device sdev_dev ;
5135 struct execute_work ew ;
5136 struct work_struct requeue_work ;
5137 struct scsi_dh_data *scsi_dh_data ;
5138 enum scsi_device_state sdev_state ;
5139 unsigned long sdev_data[0U] ;
5140};
5141#line 178 "include/scsi/scsi_device.h"
5142struct scsi_dh_devlist {
5143 char *vendor ;
5144 char *model ;
5145};
5146#line 185 "include/scsi/scsi_device.h"
5147struct scsi_device_handler {
5148 struct list_head list ;
5149 int idx ;
5150 struct module *module ;
5151 char const *name ;
5152 struct scsi_dh_devlist const *devlist ;
5153 int (*check_sense)(struct scsi_device * , struct scsi_sense_hdr * ) ;
5154 int (*attach)(struct scsi_device * ) ;
5155 void (*detach)(struct scsi_device * ) ;
5156 int (*activate)(struct scsi_device * , void (*)(void * , int ) , void * ) ;
5157 int (*prep_fn)(struct scsi_device * , struct request * ) ;
5158 int (*set_params)(struct scsi_device * , char const * ) ;
5159};
5160#line 201 "include/scsi/scsi_device.h"
5161struct scsi_dh_data {
5162 struct scsi_device_handler *scsi_dh ;
5163 struct scsi_device *sdev ;
5164 struct kref kref ;
5165 char buf[0U] ;
5166};
5167#line 208
5168enum scsi_target_state {
5169 STARGET_CREATED = 1,
5170 STARGET_RUNNING = 2,
5171 STARGET_DEL = 3
5172} ;
5173#line 214 "include/scsi/scsi_device.h"
5174struct scsi_target {
5175 struct scsi_device *starget_sdev_user ;
5176 struct list_head siblings ;
5177 struct list_head devices ;
5178 struct device dev ;
5179 unsigned int reap_ref ;
5180 unsigned int channel ;
5181 unsigned int id ;
5182 unsigned char create : 1 ;
5183 unsigned char single_lun : 1 ;
5184 unsigned int pdt_1f_for_no_lun ;
5185 unsigned int target_busy ;
5186 unsigned int can_queue ;
5187 unsigned int target_blocked ;
5188 unsigned int max_target_blocked ;
5189 char scsi_level ;
5190 struct execute_work ew ;
5191 enum scsi_target_state state ;
5192 void *hostdata ;
5193 unsigned long starget_data[0U] ;
5194};
5195#line 473 "include/scsi/scsi_device.h"
5196struct scsi_sense_hdr {
5197 u8 response_code ;
5198 u8 sense_key ;
5199 u8 asc ;
5200 u8 ascq ;
5201 u8 byte4 ;
5202 u8 byte5 ;
5203 u8 byte6 ;
5204 u8 additional_length ;
5205};
5206#line 93 "include/scsi/scsi_eh.h"
5207struct scsi_host_cmd_pool;
5208#line 93
5209struct scsi_host_cmd_pool;
5210#line 93
5211struct scsi_host_cmd_pool;
5212#line 93
5213struct scsi_host_cmd_pool;
5214#line 94
5215struct scsi_transport_template;
5216#line 94
5217struct scsi_transport_template;
5218#line 94
5219struct scsi_transport_template;
5220#line 94
5221struct scsi_transport_template;
5222#line 102 "include/scsi/scsi_eh.h"
5223struct scsi_host_template {
5224 struct module *module ;
5225 char const *name ;
5226 int (*detect)(struct scsi_host_template * ) ;
5227 int (*release)(struct Scsi_Host * ) ;
5228 char const *(*info)(struct Scsi_Host * ) ;
5229 int (*ioctl)(struct scsi_device * , int , void * ) ;
5230 int (*compat_ioctl)(struct scsi_device * , int , void * ) ;
5231 int (*queuecommand)(struct Scsi_Host * , struct scsi_cmnd * ) ;
5232 int (*transfer_response)(struct scsi_cmnd * , void (*)(struct scsi_cmnd * ) ) ;
5233 int (*eh_abort_handler)(struct scsi_cmnd * ) ;
5234 int (*eh_device_reset_handler)(struct scsi_cmnd * ) ;
5235 int (*eh_target_reset_handler)(struct scsi_cmnd * ) ;
5236 int (*eh_bus_reset_handler)(struct scsi_cmnd * ) ;
5237 int (*eh_host_reset_handler)(struct scsi_cmnd * ) ;
5238 int (*slave_alloc)(struct scsi_device * ) ;
5239 int (*slave_configure)(struct scsi_device * ) ;
5240 void (*slave_destroy)(struct scsi_device * ) ;
5241 int (*target_alloc)(struct scsi_target * ) ;
5242 void (*target_destroy)(struct scsi_target * ) ;
5243 int (*scan_finished)(struct Scsi_Host * , unsigned long ) ;
5244 void (*scan_start)(struct Scsi_Host * ) ;
5245 int (*change_queue_depth)(struct scsi_device * , int , int ) ;
5246 int (*change_queue_type)(struct scsi_device * , int ) ;
5247 int (*bios_param)(struct scsi_device * , struct block_device * , sector_t , int * ) ;
5248 void (*unlock_native_capacity)(struct scsi_device * ) ;
5249 int (*proc_info)(struct Scsi_Host * , char * , char ** , off_t , int , int ) ;
5250 enum blk_eh_timer_return (*eh_timed_out)(struct scsi_cmnd * ) ;
5251 char const *proc_name ;
5252 struct proc_dir_entry *proc_dir ;
5253 int can_queue ;
5254 int this_id ;
5255 unsigned short sg_tablesize ;
5256 unsigned short sg_prot_tablesize ;
5257 unsigned short max_sectors ;
5258 unsigned long dma_boundary ;
5259 short cmd_per_lun ;
5260 unsigned char present ;
5261 unsigned char supported_mode : 2 ;
5262 unsigned char unchecked_isa_dma : 1 ;
5263 unsigned char use_clustering : 1 ;
5264 unsigned char emulated : 1 ;
5265 unsigned char skip_settle_delay : 1 ;
5266 unsigned char ordered_tag : 1 ;
5267 unsigned int max_host_blocked ;
5268 struct device_attribute **shost_attrs ;
5269 struct device_attribute **sdev_attrs ;
5270 struct list_head legacy_hosts ;
5271 u64 vendor_id ;
5272};
5273#line 505 "include/scsi/scsi_host.h"
5274enum scsi_host_state {
5275 SHOST_CREATED = 1,
5276 SHOST_RUNNING = 2,
5277 SHOST_CANCEL = 3,
5278 SHOST_DEL = 4,
5279 SHOST_RECOVERY = 5,
5280 SHOST_CANCEL_RECOVERY = 6,
5281 SHOST_DEL_RECOVERY = 7
5282} ;
5283#line 515 "include/scsi/scsi_host.h"
5284struct Scsi_Host {
5285 struct list_head __devices ;
5286 struct list_head __targets ;
5287 struct scsi_host_cmd_pool *cmd_pool ;
5288 spinlock_t free_list_lock ;
5289 struct list_head free_list ;
5290 struct list_head starved_list ;
5291 spinlock_t default_lock ;
5292 spinlock_t *host_lock ;
5293 struct mutex scan_mutex ;
5294 struct list_head eh_cmd_q ;
5295 struct task_struct *ehandler ;
5296 struct completion *eh_action ;
5297 wait_queue_head_t host_wait ;
5298 struct scsi_host_template *hostt ;
5299 struct scsi_transport_template *transportt ;
5300 struct blk_queue_tag *bqt ;
5301 unsigned int host_busy ;
5302 unsigned int host_failed ;
5303 unsigned int host_eh_scheduled ;
5304 unsigned int host_no ;
5305 int resetting ;
5306 unsigned long last_reset ;
5307 unsigned int max_id ;
5308 unsigned int max_lun ;
5309 unsigned int max_channel ;
5310 unsigned int unique_id ;
5311 unsigned short max_cmd_len ;
5312 int this_id ;
5313 int can_queue ;
5314 short cmd_per_lun ;
5315 unsigned short sg_tablesize ;
5316 unsigned short sg_prot_tablesize ;
5317 unsigned short max_sectors ;
5318 unsigned long dma_boundary ;
5319 unsigned long cmd_serial_number ;
5320 unsigned char active_mode : 2 ;
5321 unsigned char unchecked_isa_dma : 1 ;
5322 unsigned char use_clustering : 1 ;
5323 unsigned char use_blk_tcq : 1 ;
5324 unsigned char host_self_blocked : 1 ;
5325 unsigned char reverse_ordering : 1 ;
5326 unsigned char ordered_tag : 1 ;
5327 unsigned char tmf_in_progress : 1 ;
5328 unsigned char async_scan : 1 ;
5329 char work_q_name[20U] ;
5330 struct workqueue_struct *work_q ;
5331 unsigned int host_blocked ;
5332 unsigned int max_host_blocked ;
5333 unsigned int prot_capabilities ;
5334 unsigned char prot_guard_type ;
5335 struct request_queue *uspace_req_q ;
5336 unsigned long base ;
5337 unsigned long io_port ;
5338 unsigned char n_io_port ;
5339 unsigned char dma_channel ;
5340 unsigned int irq ;
5341 enum scsi_host_state shost_state ;
5342 struct device shost_gendev ;
5343 struct device shost_dev ;
5344 struct list_head sht_legacy_list ;
5345 void *shost_data ;
5346 struct device *dma_dev ;
5347 unsigned long hostdata[0U] ;
5348};
5349#line 2 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/scsi_typedefs.h"
5350typedef struct scsi_cmnd Scsi_Cmnd;
5351#line 3 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/scsi_typedefs.h"
5352struct mbox_out {
5353 u8 cmd ;
5354 u8 cmdid ;
5355 u16 numsectors ;
5356 u32 lba ;
5357 u32 xferaddr ;
5358 u8 logdrv ;
5359 u8 numsgelements ;
5360 u8 resvd ;
5361};
5362#line 133 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5363struct mbox_in {
5364 u8 volatile busy ;
5365 u8 volatile numstatus ;
5366 u8 volatile status ;
5367 u8 volatile completed[46U] ;
5368 u8 volatile poll ;
5369 u8 volatile ack ;
5370};
5371#line 146 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5372struct __anonstruct_mbox_t_169 {
5373 struct mbox_out m_out ;
5374 struct mbox_in m_in ;
5375};
5376#line 146 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5377typedef struct __anonstruct_mbox_t_169 mbox_t;
5378#line 152 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5379struct __anonstruct_mbox64_t_170 {
5380 u32 xfer_segment_lo ;
5381 u32 xfer_segment_hi ;
5382 mbox_t mbox ;
5383};
5384#line 152 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5385typedef struct __anonstruct_mbox64_t_170 mbox64_t;
5386#line 178 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5387struct __anonstruct_mega_passthru_171 {
5388 unsigned char timeout : 3 ;
5389 unsigned char ars : 1 ;
5390 unsigned char reserved : 3 ;
5391 unsigned char islogical : 1 ;
5392 u8 logdrv ;
5393 u8 channel ;
5394 u8 target ;
5395 u8 queuetag ;
5396 u8 queueaction ;
5397 u8 cdb[10U] ;
5398 u8 cdblen ;
5399 u8 reqsenselen ;
5400 u8 reqsensearea[32U] ;
5401 u8 numsgelements ;
5402 u8 scsistatus ;
5403 u32 dataxferaddr ;
5404 u32 dataxferlen ;
5405};
5406#line 178 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5407typedef struct __anonstruct_mega_passthru_171 mega_passthru;
5408#line 206 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5409struct __anonstruct_mega_ext_passthru_172 {
5410 unsigned char timeout : 3 ;
5411 unsigned char ars : 1 ;
5412 unsigned char rsvd1 : 1 ;
5413 unsigned char cd_rom : 1 ;
5414 unsigned char rsvd2 : 1 ;
5415 unsigned char islogical : 1 ;
5416 u8 logdrv ;
5417 u8 channel ;
5418 u8 target ;
5419 u8 queuetag ;
5420 u8 queueaction ;
5421 u8 cdblen ;
5422 u8 rsvd3 ;
5423 u8 cdb[16U] ;
5424 u8 numsgelements ;
5425 u8 status ;
5426 u8 reqsenselen ;
5427 u8 reqsensearea[32U] ;
5428 u8 rsvd4 ;
5429 u32 dataxferaddr ;
5430 u32 dataxferlen ;
5431};
5432#line 206 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5433typedef struct __anonstruct_mega_ext_passthru_172 mega_ext_passthru;
5434#line 211 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5435struct __anonstruct_mega_sgl64_173 {
5436 u64 address ;
5437 u32 length ;
5438};
5439#line 211 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5440typedef struct __anonstruct_mega_sgl64_173 mega_sgl64;
5441#line 216 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5442struct __anonstruct_mega_sglist_174 {
5443 u32 address ;
5444 u32 length ;
5445};
5446#line 216 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5447typedef struct __anonstruct_mega_sglist_174 mega_sglist;
5448#line 240 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5449struct __anonstruct_scb_t_175 {
5450 int idx ;
5451 u32 state ;
5452 struct list_head list ;
5453 u8 raw_mbox[66U] ;
5454 u32 dma_type ;
5455 u32 dma_direction ;
5456 Scsi_Cmnd *cmd ;
5457 dma_addr_t dma_h_bulkdata ;
5458 dma_addr_t dma_h_sgdata ;
5459 mega_sglist *sgl ;
5460 mega_sgl64 *sgl64 ;
5461 dma_addr_t sgl_dma_addr ;
5462 mega_passthru *pthru ;
5463 dma_addr_t pthru_dma_addr ;
5464 mega_ext_passthru *epthru ;
5465 dma_addr_t epthru_dma_addr ;
5466};
5467#line 240 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5468typedef struct __anonstruct_scb_t_175 scb_t;
5469#line 281 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5470struct __anonstruct_mega_product_info_176 {
5471 u32 data_size ;
5472 u32 config_signature ;
5473 u8 fw_version[16U] ;
5474 u8 bios_version[16U] ;
5475 u8 product_name[80U] ;
5476 u8 max_commands ;
5477 u8 nchannels ;
5478 u8 fc_loop_present ;
5479 u8 mem_type ;
5480 u32 signature ;
5481 u16 dram_size ;
5482 u16 subsysid ;
5483 u16 subsysvid ;
5484 u8 notify_counters ;
5485 u8 pad1k[889U] ;
5486};
5487#line 281 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5488typedef struct __anonstruct_mega_product_info_176 mega_product_info;
5489#line 282 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5490struct notify {
5491 u32 global_counter ;
5492 u8 param_counter ;
5493 u8 param_id ;
5494 u16 param_val ;
5495 u8 write_config_counter ;
5496 u8 write_config_rsvd[3U] ;
5497 u8 ldrv_op_counter ;
5498 u8 ldrv_opid ;
5499 u8 ldrv_opcmd ;
5500 u8 ldrv_opstatus ;
5501 u8 ldrv_state_counter ;
5502 u8 ldrv_state_id ;
5503 u8 ldrv_state_new ;
5504 u8 ldrv_state_old ;
5505 u8 pdrv_state_counter ;
5506 u8 pdrv_state_id ;
5507 u8 pdrv_state_new ;
5508 u8 pdrv_state_old ;
5509 u8 pdrv_fmt_counter ;
5510 u8 pdrv_fmt_id ;
5511 u8 pdrv_fmt_val ;
5512 u8 pdrv_fmt_rsvd ;
5513 u8 targ_xfer_counter ;
5514 u8 targ_xfer_id ;
5515 u8 targ_xfer_val ;
5516 u8 targ_xfer_rsvd ;
5517 u8 fcloop_id_chg_counter ;
5518 u8 fcloopid_pdrvid ;
5519 u8 fcloop_id0 ;
5520 u8 fcloop_id1 ;
5521 u8 fcloop_state_counter ;
5522 u8 fcloop_state0 ;
5523 u8 fcloop_state1 ;
5524 u8 fcloop_state_rsvd ;
5525};
5526#line 359 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5527struct __anonstruct_mega_inquiry3_177 {
5528 u32 data_size ;
5529 struct notify notify ;
5530 u8 notify_rsvd[88U] ;
5531 u8 rebuild_rate ;
5532 u8 cache_flush_interval ;
5533 u8 sense_alert ;
5534 u8 drive_insert_count ;
5535 u8 battery_status ;
5536 u8 num_ldrv ;
5537 u8 recon_state[5U] ;
5538 u16 ldrv_op_status[5U] ;
5539 u32 ldrv_size[40U] ;
5540 u8 ldrv_prop[40U] ;
5541 u8 ldrv_state[40U] ;
5542 u8 pdrv_state[256U] ;
5543 u16 pdrv_format[16U] ;
5544 u8 targ_xfer[80U] ;
5545 u8 pad1k[263U] ;
5546};
5547#line 359 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5548typedef struct __anonstruct_mega_inquiry3_177 mega_inquiry3;
5549#line 395 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5550struct __anonstruct_mega_adp_info_178 {
5551 u8 max_commands ;
5552 u8 rebuild_rate ;
5553 u8 max_targ_per_chan ;
5554 u8 nchannels ;
5555 u8 fw_version[4U] ;
5556 u16 age_of_flash ;
5557 u8 chip_set_value ;
5558 u8 dram_size ;
5559 u8 cache_flush_interval ;
5560 u8 bios_version[4U] ;
5561 u8 board_type ;
5562 u8 sense_alert ;
5563 u8 write_config_count ;
5564 u8 drive_inserted_count ;
5565 u8 inserted_drive ;
5566 u8 battery_status ;
5567 u8 dec_fault_bus_info ;
5568};
5569#line 395 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5570typedef struct __anonstruct_mega_adp_info_178 mega_adp_info;
5571#line 404 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5572struct __anonstruct_mega_ldrv_info_179 {
5573 u8 num_ldrv ;
5574 u8 rsvd[3U] ;
5575 u32 ldrv_size[8U] ;
5576 u8 ldrv_prop[8U] ;
5577 u8 ldrv_state[8U] ;
5578};
5579#line 404 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5580typedef struct __anonstruct_mega_ldrv_info_179 mega_ldrv_info;
5581#line 409 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5582struct __anonstruct_mega_pdrv_info_180 {
5583 u8 pdrv_state[75U] ;
5584 u8 rsvd ;
5585};
5586#line 409 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5587typedef struct __anonstruct_mega_pdrv_info_180 mega_pdrv_info;
5588#line 416 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5589struct __anonstruct_mraid_inquiry_181 {
5590 mega_adp_info adapter_info ;
5591 mega_ldrv_info logdrv_info ;
5592 mega_pdrv_info pdrv_info ;
5593};
5594#line 416 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5595typedef struct __anonstruct_mraid_inquiry_181 mraid_inquiry;
5596#line 426 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5597struct __anonstruct_mraid_ext_inquiry_182 {
5598 mraid_inquiry raid_inq ;
5599 u16 phys_drv_format[5U] ;
5600 u8 stack_attn ;
5601 u8 modem_status ;
5602 u8 rsvd[2U] ;
5603};
5604#line 426 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5605typedef struct __anonstruct_mraid_ext_inquiry_182 mraid_ext_inquiry;
5606#line 432 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5607struct __anonstruct_adp_device_183 {
5608 u8 channel ;
5609 u8 target ;
5610};
5611#line 432 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5612typedef struct __anonstruct_adp_device_183 adp_device;
5613#line 438 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5614struct __anonstruct_adp_span_40ld_184 {
5615 u32 start_blk ;
5616 u32 num_blks ;
5617 adp_device device[32U] ;
5618};
5619#line 438 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5620typedef struct __anonstruct_adp_span_40ld_184 adp_span_40ld;
5621#line 444 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5622struct __anonstruct_adp_span_8ld_185 {
5623 u32 start_blk ;
5624 u32 num_blks ;
5625 adp_device device[8U] ;
5626};
5627#line 444 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5628typedef struct __anonstruct_adp_span_8ld_185 adp_span_8ld;
5629#line 456 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5630struct __anonstruct_logdrv_param_186 {
5631 u8 span_depth ;
5632 u8 level ;
5633 u8 read_ahead ;
5634 u8 stripe_sz ;
5635 u8 status ;
5636 u8 write_mode ;
5637 u8 direct_io ;
5638 u8 row_size ;
5639};
5640#line 456 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5641typedef struct __anonstruct_logdrv_param_186 logdrv_param;
5642#line 461 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5643struct __anonstruct_logdrv_40ld_187 {
5644 logdrv_param lparam ;
5645 adp_span_40ld span[8U] ;
5646};
5647#line 461 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5648typedef struct __anonstruct_logdrv_40ld_187 logdrv_40ld;
5649#line 466 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5650struct __anonstruct_logdrv_8ld_188 {
5651 logdrv_param lparam ;
5652 adp_span_8ld span[8U] ;
5653};
5654#line 466 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5655typedef struct __anonstruct_logdrv_8ld_188 logdrv_8ld;
5656#line 475 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5657struct __anonstruct_phys_drv_189 {
5658 u8 type ;
5659 u8 cur_status ;
5660 u8 tag_depth ;
5661 u8 sync_neg ;
5662 u32 size ;
5663};
5664#line 475 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5665typedef struct __anonstruct_phys_drv_189 phys_drv;
5666#line 482 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5667struct __anonstruct_disk_array_40ld_190 {
5668 u8 nlog_drives ;
5669 u8 resvd[3U] ;
5670 logdrv_40ld ldrv[40U] ;
5671 phys_drv pdrv[75U] ;
5672};
5673#line 482 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5674typedef struct __anonstruct_disk_array_40ld_190 disk_array_40ld;
5675#line 489 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5676struct __anonstruct_disk_array_8ld_191 {
5677 u8 nlog_drives ;
5678 u8 resvd[3U] ;
5679 logdrv_8ld ldrv[8U] ;
5680 phys_drv pdrv[75U] ;
5681};
5682#line 489 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5683typedef struct __anonstruct_disk_array_8ld_191 disk_array_8ld;
5684#line 490 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5685struct __anonstruct_fcs_193 {
5686 u8 opcode ;
5687 u8 subopcode ;
5688 u16 adapno ;
5689 u8 *buffer ;
5690 u32 length ;
5691};
5692#line 490 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5693union __anonunion_ui_192 {
5694 u8 fca[16U] ;
5695 struct __anonstruct_fcs_193 fcs ;
5696};
5697#line 490 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5698struct uioctl_t {
5699 u32 inlen ;
5700 u32 outlen ;
5701 union __anonunion_ui_192 ui ;
5702 u8 mbox[18U] ;
5703 mega_passthru pthru ;
5704 char *data ;
5705};
5706#line 531 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5707struct mcontroller {
5708 u64 base ;
5709 u8 irq ;
5710 u8 numldrv ;
5711 u8 pcibus ;
5712 u16 pcidev ;
5713 u8 pcifun ;
5714 u16 pciid ;
5715 u16 pcivendor ;
5716 u8 pcislot ;
5717 u32 uid ;
5718};
5719#line 569 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5720struct __anonstruct_megacmd_t_194 {
5721 u8 cmd ;
5722 u8 cmdid ;
5723 u8 opcode ;
5724 u8 subopcode ;
5725 u32 lba ;
5726 u32 xferaddr ;
5727 u8 logdrv ;
5728 u8 rsvd[3U] ;
5729 u8 numstatus ;
5730 u8 status ;
5731};
5732#line 569 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5733typedef struct __anonstruct_megacmd_t_194 megacmd_t;
5734#line 636 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5735union __anonunion___ua_196 {
5736 u8 __raw_mbox[18U] ;
5737 void *__uaddr ;
5738};
5739#line 636 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5740struct __anonstruct_nitioctl_t_195 {
5741 char signature[8U] ;
5742 u32 opcode ;
5743 u32 adapno ;
5744 union __anonunion___ua_196 __ua ;
5745 u32 xferlen ;
5746 u32 flags ;
5747};
5748#line 636 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5749typedef struct __anonstruct_nitioctl_t_195 nitioctl_t;
5750#line 663 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5751struct __anonstruct_megastat_t_197 {
5752 int num_ldrv ;
5753 u32 nreads[40U] ;
5754 u32 nreadblocks[40U] ;
5755 u32 nwrites[40U] ;
5756 u32 nwriteblocks[40U] ;
5757 u32 rd_errors[40U] ;
5758 u32 wr_errors[40U] ;
5759};
5760#line 663 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5761typedef struct __anonstruct_megastat_t_197 megastat_t;
5762#line 662 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5763struct private_bios_data {
5764 unsigned char geometry : 4 ;
5765 unsigned char unused : 4 ;
5766 u8 boot_drv ;
5767 u8 rsvd[12U] ;
5768 u16 cksum ;
5769};
5770#line 899 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5771struct __anonstruct_adapter_t_198 {
5772 int this_id ;
5773 u32 flag ;
5774 unsigned long base ;
5775 void *mmio_base ;
5776 mbox64_t *una_mbox64 ;
5777 dma_addr_t una_mbox64_dma ;
5778 mbox64_t volatile *mbox64 ;
5779 mbox_t volatile *mbox ;
5780 dma_addr_t mbox_dma ;
5781 struct pci_dev *dev ;
5782 struct list_head free_list ;
5783 struct list_head pending_list ;
5784 struct list_head completed_list ;
5785 struct Scsi_Host *host ;
5786 u8 *mega_buffer ;
5787 dma_addr_t buf_dma_handle ;
5788 mega_product_info product_info ;
5789 u8 max_cmds ;
5790 scb_t *scb_list ;
5791 atomic_t pend_cmds ;
5792 u8 numldrv ;
5793 u8 fw_version[7U] ;
5794 u8 bios_version[7U] ;
5795 struct proc_dir_entry *controller_proc_dir_entry ;
5796 struct proc_dir_entry *proc_read ;
5797 struct proc_dir_entry *proc_stat ;
5798 struct proc_dir_entry *proc_mbox ;
5799 struct proc_dir_entry *proc_rr ;
5800 struct proc_dir_entry *proc_battery ;
5801 struct proc_dir_entry *proc_pdrvstat[4U] ;
5802 struct proc_dir_entry *proc_rdrvstat[4U] ;
5803 int has_64bit_addr ;
5804 int support_ext_cdb ;
5805 int boot_ldrv_enabled ;
5806 int boot_ldrv ;
5807 int boot_pdrv_enabled ;
5808 int boot_pdrv_ch ;
5809 int boot_pdrv_tgt ;
5810 int support_random_del ;
5811 int read_ldidmap ;
5812 atomic_t quiescent ;
5813 spinlock_t lock ;
5814 u8 logdrv_chan[9U] ;
5815 int mega_ch_class ;
5816 u8 sglen ;
5817 unsigned char int_cdb[16U] ;
5818 scb_t int_scb ;
5819 struct mutex int_mtx ;
5820 struct completion int_waitq ;
5821 int has_cluster ;
5822};
5823#line 899 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5824typedef struct __anonstruct_adapter_t_198 adapter_t;
5825#line 900 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
5826struct mega_hbas {
5827 int is_bios_enabled ;
5828 adapter_t *hostdata_addr ;
5829};
5830#line 1 "<compiler builtins>"
5831
5832#line 1
5833
5834#line 1
5835long __builtin_expect(long , long ) ;
5836#line 24 "include/linux/list.h"
5837__inline static void INIT_LIST_HEAD(struct list_head *list )
5838{
5839
5840 {
5841#line 26
5842 list->next = list;
5843#line 27
5844 list->prev = list;
5845#line 28
5846 return;
5847}
5848}
5849#line 47
5850extern void __list_add(struct list_head * , struct list_head * , struct list_head * ) ;
5851#line 60 "include/linux/list.h"
5852__inline static void list_add(struct list_head *new , struct list_head *head )
5853{ struct list_head *__cil_tmp3 ;
5854
5855 {
5856 {
5857#line 62
5858 __cil_tmp3 = head->next;
5859#line 62
5860 __list_add(new, head, __cil_tmp3);
5861 }
5862#line 63
5863 return;
5864}
5865}
5866#line 74 "include/linux/list.h"
5867__inline static void list_add_tail(struct list_head *new , struct list_head *head )
5868{ struct list_head *__cil_tmp3 ;
5869
5870 {
5871 {
5872#line 76
5873 __cil_tmp3 = head->prev;
5874#line 76
5875 __list_add(new, __cil_tmp3, head);
5876 }
5877#line 77
5878 return;
5879}
5880}
5881#line 111
5882extern void __list_del_entry(struct list_head * ) ;
5883#line 142 "include/linux/list.h"
5884__inline static void list_del_init(struct list_head *entry )
5885{
5886
5887 {
5888 {
5889#line 144
5890 __list_del_entry(entry);
5891#line 145
5892 INIT_LIST_HEAD(entry);
5893 }
5894#line 146
5895 return;
5896}
5897}
5898#line 186 "include/linux/list.h"
5899__inline static int list_empty(struct list_head const *head )
5900{ unsigned long __cil_tmp2 ;
5901 struct list_head *__cil_tmp3 ;
5902 struct list_head const *__cil_tmp4 ;
5903 unsigned long __cil_tmp5 ;
5904
5905 {
5906 {
5907#line 188
5908 __cil_tmp2 = (unsigned long )head;
5909#line 188
5910 __cil_tmp3 = head->next;
5911#line 188
5912 __cil_tmp4 = (struct list_head const *)__cil_tmp3;
5913#line 188
5914 __cil_tmp5 = (unsigned long )__cil_tmp4;
5915#line 188
5916 return (__cil_tmp5 == __cil_tmp2);
5917 }
5918}
5919}
5920#line 101 "include/linux/printk.h"
5921extern int printk(char const * , ...) ;
5922#line 64 "include/asm-generic/bug.h"
5923extern void warn_slowpath_fmt(char const * , int , char const * , ...) ;
5924#line 69
5925extern void warn_slowpath_null(char const * , int ) ;
5926#line 125 "include/linux/kernel.h"
5927extern void __might_sleep(char const * , int , int ) ;
5928#line 170
5929extern void might_fault(void) ;
5930#line 291
5931extern int sprintf(char * , char const * , ...) ;
5932#line 61 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page_64_types.h"
5933extern unsigned long __phys_addr(unsigned long ) ;
5934#line 88 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/percpu.h"
5935extern void __bad_percpu_size(void) ;
5936#line 348 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
5937extern struct pv_cpu_ops pv_cpu_ops ;
5938#line 349
5939extern struct pv_irq_ops pv_irq_ops ;
5940#line 34 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
5941extern void *__memcpy(void * , void const * , size_t ) ;
5942#line 55
5943extern void *memset(void * , int , size_t ) ;
5944#line 60
5945extern int memcmp(void const * , void const * , size_t ) ;
5946#line 63
5947extern char *strcat(char * , char const * ) ;
5948#line 64
5949extern int strcmp(char const * , char const * ) ;
5950#line 339 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt.h"
5951__inline static void slow_down_io(void)
5952{
5953
5954 {
5955 {
5956#line 341
5957 (*(pv_cpu_ops.io_delay))();
5958 }
5959#line 342
5960 return;
5961}
5962}
5963#line 851 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt.h"
5964__inline static unsigned long arch_local_save_flags(void)
5965{ unsigned long __ret ;
5966 unsigned long __edi ;
5967 unsigned long __esi ;
5968 unsigned long __edx ;
5969 unsigned long __ecx ;
5970 unsigned long __eax ;
5971 long tmp ;
5972 void *__cil_tmp8 ;
5973 unsigned long __cil_tmp9 ;
5974 unsigned long __cil_tmp10 ;
5975 int __cil_tmp11 ;
5976 long __cil_tmp12 ;
5977
5978 {
5979 {
5980#line 853
5981 __edi = __edi;
5982#line 853
5983 __esi = __esi;
5984#line 853
5985 __edx = __edx;
5986#line 853
5987 __ecx = __ecx;
5988#line 853
5989 __eax = __eax;
5990#line 853
5991 __cil_tmp8 = (void *)0;
5992#line 853
5993 __cil_tmp9 = (unsigned long )__cil_tmp8;
5994#line 853
5995 __cil_tmp10 = (unsigned long )pv_irq_ops.save_fl.func;
5996#line 853
5997 __cil_tmp11 = __cil_tmp10 == __cil_tmp9;
5998#line 853
5999 __cil_tmp12 = (long )__cil_tmp11;
6000#line 853
6001 tmp = __builtin_expect(__cil_tmp12, 0L);
6002 }
6003#line 853
6004 if (tmp != 0L) {
6005#line 853
6006 __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/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt.h"),
6007 "i" (853), "i" (12UL));
6008 ldv_4705: ;
6009#line 853
6010 goto ldv_4705;
6011 } else {
6012
6013 }
6014#line 853
6015 __asm__ volatile ("771:\n\tcall *%c2;\n772:\n.pushsection .parainstructions,\"a\"\n .balign 8 \n .quad 771b\n .byte %c1\n .byte 772b-771b\n .short %c3\n.popsection\n": "=a" (__eax): [paravirt_typenum] "i" (46UL),
6016 [paravirt_opptr] "i" (& pv_irq_ops.save_fl.func), [paravirt_clobber] "i" (1): "memory",
6017 "cc");
6018#line 853
6019 __ret = __eax;
6020#line 853
6021 return (__ret);
6022}
6023}
6024#line 154 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/irqflags.h"
6025__inline static int arch_irqs_disabled_flags(unsigned long flags )
6026{ unsigned long __cil_tmp2 ;
6027
6028 {
6029 {
6030#line 156
6031 __cil_tmp2 = flags & 512UL;
6032#line 156
6033 return (__cil_tmp2 == 0UL);
6034 }
6035}
6036}
6037#line 702 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
6038__inline static void rep_nop(void)
6039{
6040
6041 {
6042#line 704
6043 __asm__ volatile ("rep; nop": : : "memory");
6044#line 705
6045 return;
6046}
6047}
6048#line 707 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
6049__inline static void cpu_relax(void)
6050{
6051
6052 {
6053 {
6054#line 709
6055 rep_nop();
6056 }
6057#line 710
6058 return;
6059}
6060}
6061#line 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
6062__inline static int atomic_read(atomic_t const *v )
6063{ int const *__cil_tmp2 ;
6064 int volatile *__cil_tmp3 ;
6065 int volatile __cil_tmp4 ;
6066
6067 {
6068 {
6069#line 25
6070 __cil_tmp2 = & v->counter;
6071#line 25
6072 __cil_tmp3 = (int volatile *)__cil_tmp2;
6073#line 25
6074 __cil_tmp4 = *__cil_tmp3;
6075#line 25
6076 return ((int )__cil_tmp4);
6077 }
6078}
6079}
6080#line 35 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
6081__inline static void atomic_set(atomic_t *v , int i )
6082{
6083
6084 {
6085#line 37
6086 v->counter = i;
6087#line 38
6088 return;
6089}
6090}
6091#line 61 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
6092__inline static void atomic_sub(int i , atomic_t *v )
6093{
6094
6095 {
6096#line 63
6097 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; subl %1,%0": "+m" (v->counter): "ir" (i));
6098#line 65
6099 return;
6100}
6101}
6102#line 93 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
6103__inline static void atomic_inc(atomic_t *v )
6104{
6105
6106 {
6107#line 95
6108 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; incl %0": "+m" (v->counter));
6109#line 97
6110 return;
6111}
6112}
6113#line 217 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
6114extern unsigned long kernel_stack ;
6115#line 219 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
6116__inline static struct thread_info *current_thread_info(void)
6117{ struct thread_info *ti ;
6118 unsigned long pfo_ret__ ;
6119 unsigned long __cil_tmp3 ;
6120
6121 {
6122#line 222
6123 if (1) {
6124#line 222
6125 goto case_8;
6126 } else {
6127#line 222
6128 goto switch_default;
6129#line 222
6130 if (0) {
6131#line 222
6132 __asm__ ("movb %%gs:%P1,%0": "=q" (pfo_ret__): "p" (& kernel_stack));
6133#line 222
6134 goto ldv_5782;
6135#line 222
6136 __asm__ ("movw %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& kernel_stack));
6137#line 222
6138 goto ldv_5782;
6139#line 222
6140 __asm__ ("movl %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& kernel_stack));
6141#line 222
6142 goto ldv_5782;
6143 case_8:
6144#line 222
6145 __asm__ ("movq %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& kernel_stack));
6146#line 222
6147 goto ldv_5782;
6148 switch_default:
6149 {
6150#line 222
6151 __bad_percpu_size();
6152 }
6153 } else {
6154
6155 }
6156 }
6157 ldv_5782:
6158#line 222
6159 __cil_tmp3 = pfo_ret__ - 8152UL;
6160#line 222
6161 ti = (struct thread_info *)__cil_tmp3;
6162#line 224
6163 return (ti);
6164}
6165}
6166#line 93 "include/linux/spinlock.h"
6167extern void __raw_spin_lock_init(raw_spinlock_t * , char const * , struct lock_class_key * ) ;
6168#line 29 "include/linux/spinlock_api_smp.h"
6169extern void _raw_spin_lock_irq(raw_spinlock_t * ) ;
6170#line 32
6171extern unsigned long _raw_spin_lock_irqsave(raw_spinlock_t * ) ;
6172#line 41
6173extern void _raw_spin_unlock_irq(raw_spinlock_t * ) ;
6174#line 43
6175extern void _raw_spin_unlock_irqrestore(raw_spinlock_t * , unsigned long ) ;
6176#line 272 "include/linux/spinlock.h"
6177__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
6178{
6179
6180 {
6181#line 274
6182 return (& lock->ldv_6060.rlock);
6183}
6184}
6185#line 308 "include/linux/spinlock.h"
6186__inline static void spin_lock_irq(spinlock_t *lock )
6187{ struct raw_spinlock *__cil_tmp2 ;
6188
6189 {
6190 {
6191#line 310
6192 __cil_tmp2 = & lock->ldv_6060.rlock;
6193#line 310
6194 _raw_spin_lock_irq(__cil_tmp2);
6195 }
6196#line 311
6197 return;
6198}
6199}
6200#line 333 "include/linux/spinlock.h"
6201__inline static void spin_unlock_irq(spinlock_t *lock )
6202{ struct raw_spinlock *__cil_tmp2 ;
6203
6204 {
6205 {
6206#line 335
6207 __cil_tmp2 = & lock->ldv_6060.rlock;
6208#line 335
6209 _raw_spin_unlock_irq(__cil_tmp2);
6210 }
6211#line 336
6212 return;
6213}
6214}
6215#line 338 "include/linux/spinlock.h"
6216__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags )
6217{ struct raw_spinlock *__cil_tmp3 ;
6218
6219 {
6220 {
6221#line 340
6222 __cil_tmp3 = & lock->ldv_6060.rlock;
6223#line 340
6224 _raw_spin_unlock_irqrestore(__cil_tmp3, flags);
6225 }
6226#line 341
6227 return;
6228}
6229}
6230#line 80 "include/linux/wait.h"
6231extern void __init_waitqueue_head(wait_queue_head_t * , struct lock_class_key * ) ;
6232#line 115 "include/linux/mutex.h"
6233extern void __mutex_init(struct mutex * , char const * , struct lock_class_key * ) ;
6234#line 134
6235extern void mutex_lock_nested(struct mutex * , unsigned int ) ;
6236#line 169
6237extern void mutex_unlock(struct mutex * ) ;
6238#line 113 "include/linux/ioport.h"
6239extern struct resource ioport_resource ;
6240#line 114
6241extern struct resource iomem_resource ;
6242#line 156
6243extern struct resource *__request_region(struct resource * , resource_size_t , resource_size_t ,
6244 char const * , int ) ;
6245#line 167
6246extern void __release_region(struct resource * , resource_size_t , resource_size_t ) ;
6247#line 73 "include/linux/completion.h"
6248__inline static void init_completion(struct completion *x )
6249{ struct lock_class_key __key ;
6250 wait_queue_head_t *__cil_tmp3 ;
6251
6252 {
6253 {
6254#line 75
6255 x->done = 0U;
6256#line 76
6257 __cil_tmp3 = & x->wait;
6258#line 76
6259 __init_waitqueue_head(__cil_tmp3, & __key);
6260 }
6261#line 78
6262 return;
6263}
6264}
6265#line 79
6266extern void wait_for_completion(struct completion * ) ;
6267#line 91
6268extern void complete(struct completion * ) ;
6269#line 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
6270__inline static unsigned int readl(void const volatile *addr )
6271{ unsigned int ret ;
6272 unsigned int volatile *__cil_tmp3 ;
6273
6274 {
6275#line 57
6276 __cil_tmp3 = (unsigned int volatile *)addr;
6277#line 57
6278 __asm__ volatile ("movl %1,%0": "=r" (ret): "m" (*__cil_tmp3): "memory");
6279#line 57
6280 return (ret);
6281}
6282}
6283#line 65 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
6284__inline static void writel(unsigned int val , void volatile *addr )
6285{ unsigned int volatile *__cil_tmp3 ;
6286
6287 {
6288#line 65
6289 __cil_tmp3 = (unsigned int volatile *)addr;
6290#line 65
6291 __asm__ volatile ("movl %0,%1": : "r" (val), "m" (*__cil_tmp3): "memory");
6292#line 66
6293 return;
6294}
6295}
6296#line 176
6297extern void *ioremap_nocache(resource_size_t , unsigned long ) ;
6298#line 184 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
6299__inline static void *ioremap(resource_size_t offset , unsigned long size )
6300{ void *tmp ;
6301
6302 {
6303 {
6304#line 186
6305 tmp = ioremap_nocache(offset, size);
6306 }
6307#line 186
6308 return (tmp);
6309}
6310}
6311#line 189
6312extern void iounmap(void volatile * ) ;
6313#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
6314__inline static void outb(unsigned char value , int port )
6315{
6316
6317 {
6318#line 310
6319 __asm__ volatile ("outb %b0, %w1": : "a" (value), "Nd" (port));
6320#line 311
6321 return;
6322}
6323}
6324#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
6325__inline static unsigned char inb(int port )
6326{ unsigned char value ;
6327
6328 {
6329#line 310
6330 __asm__ volatile ("inb %w1, %b0": "=a" (value): "Nd" (port));
6331#line 310
6332 return (value);
6333}
6334}
6335#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
6336__inline static void outb_p(unsigned char value , int port )
6337{ int __cil_tmp3 ;
6338 unsigned char __cil_tmp4 ;
6339
6340 {
6341 {
6342#line 310
6343 __cil_tmp3 = (int )value;
6344#line 310
6345 __cil_tmp4 = (unsigned char )__cil_tmp3;
6346#line 310
6347 outb(__cil_tmp4, port);
6348#line 310
6349 slow_down_io();
6350 }
6351#line 311
6352 return;
6353}
6354}
6355#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
6356__inline static unsigned char inb_p(int port )
6357{ unsigned char value ;
6358 unsigned char tmp ;
6359
6360 {
6361 {
6362#line 310
6363 tmp = inb(port);
6364#line 310
6365 value = tmp;
6366#line 310
6367 slow_down_io();
6368 }
6369#line 310
6370 return (value);
6371}
6372}
6373#line 830 "include/linux/rcupdate.h"
6374extern void kfree(void const * ) ;
6375#line 99 "include/linux/module.h"
6376extern struct module __this_module ;
6377#line 3 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
6378int ldv_try_module_get(struct module *module ) ;
6379#line 4
6380void ldv_module_get(struct module *module ) ;
6381#line 5
6382void ldv_module_put(struct module *module ) ;
6383#line 6
6384unsigned int ldv_module_refcount(void) ;
6385#line 7
6386void ldv_module_put_and_exit(void) ;
6387#line 720 "include/linux/mm.h"
6388__inline static void *lowmem_page_address(struct page *page )
6389{ long __cil_tmp2 ;
6390 long __cil_tmp3 ;
6391 long __cil_tmp4 ;
6392 unsigned long long __cil_tmp5 ;
6393 unsigned long long __cil_tmp6 ;
6394 unsigned long __cil_tmp7 ;
6395 unsigned long __cil_tmp8 ;
6396
6397 {
6398 {
6399#line 722
6400 __cil_tmp2 = (long )page;
6401#line 722
6402 __cil_tmp3 = __cil_tmp2 + 24189255811072L;
6403#line 722
6404 __cil_tmp4 = __cil_tmp3 / 56L;
6405#line 722
6406 __cil_tmp5 = (unsigned long long )__cil_tmp4;
6407#line 722
6408 __cil_tmp6 = __cil_tmp5 << 12;
6409#line 722
6410 __cil_tmp7 = (unsigned long )__cil_tmp6;
6411#line 722
6412 __cil_tmp8 = __cil_tmp7 + 1152789563211513856UL;
6413#line 722
6414 return ((void *)__cil_tmp8);
6415 }
6416}
6417}
6418#line 546 "include/linux/capability.h"
6419extern bool capable(int ) ;
6420#line 2089 "include/linux/fs.h"
6421extern int __register_chrdev(unsigned int , unsigned int , unsigned int , char const * ,
6422 struct file_operations const * ) ;
6423#line 2092
6424extern void __unregister_chrdev(unsigned int , unsigned int , unsigned int , char const * ) ;
6425#line 2097 "include/linux/fs.h"
6426__inline static int register_chrdev(unsigned int major , char const *name , struct file_operations const *fops )
6427{ int tmp ;
6428
6429 {
6430 {
6431#line 2100
6432 tmp = __register_chrdev(major, 0U, 256U, name, fops);
6433 }
6434#line 2100
6435 return (tmp);
6436}
6437}
6438#line 2103 "include/linux/fs.h"
6439__inline static void unregister_chrdev(unsigned int major , char const *name )
6440{
6441
6442 {
6443 {
6444#line 2105
6445 __unregister_chrdev(major, 0U, 256U, name);
6446 }
6447#line 2106
6448 return;
6449}
6450}
6451#line 2336
6452extern loff_t noop_llseek(struct file * , loff_t , int ) ;
6453#line 2504 "include/linux/sched.h"
6454extern int _cond_resched(void) ;
6455#line 221 "include/linux/slub_def.h"
6456extern void *__kmalloc(size_t , gfp_t ) ;
6457#line 255 "include/linux/slub_def.h"
6458__inline static void *kmalloc(size_t size , gfp_t flags )
6459{ void *tmp___2 ;
6460
6461 {
6462 {
6463#line 270
6464 tmp___2 = __kmalloc(size, flags);
6465 }
6466#line 270
6467 return (tmp___2);
6468}
6469}
6470#line 318 "include/linux/slab.h"
6471__inline static void *kzalloc(size_t size , gfp_t flags )
6472{ void *tmp ;
6473 unsigned int __cil_tmp4 ;
6474
6475 {
6476 {
6477#line 320
6478 __cil_tmp4 = flags | 32768U;
6479#line 320
6480 tmp = kmalloc(size, __cil_tmp4);
6481 }
6482#line 320
6483 return (tmp);
6484}
6485}
6486#line 705 "include/linux/device.h"
6487extern void *dev_get_drvdata(struct device const * ) ;
6488#line 706
6489extern int dev_set_drvdata(struct device * , void * ) ;
6490#line 40 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
6491extern unsigned long _copy_to_user(void * , void const * , unsigned int ) ;
6492#line 42
6493extern unsigned long _copy_from_user(void * , void const * , unsigned int ) ;
6494#line 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
6495__inline static unsigned long copy_from_user(void *to , void const *from , unsigned long n )
6496{ int sz ;
6497 unsigned long tmp ;
6498 int __ret_warn_on ;
6499 long tmp___0 ;
6500 long tmp___1 ;
6501 long tmp___2 ;
6502 void const *__cil_tmp10 ;
6503 void *__cil_tmp11 ;
6504 int __cil_tmp12 ;
6505 long __cil_tmp13 ;
6506 unsigned int __cil_tmp14 ;
6507 unsigned long __cil_tmp15 ;
6508 int __cil_tmp16 ;
6509 long __cil_tmp17 ;
6510 unsigned int __cil_tmp18 ;
6511 int __cil_tmp19 ;
6512 long __cil_tmp20 ;
6513 int __cil_tmp21 ;
6514 int __cil_tmp22 ;
6515 int __cil_tmp23 ;
6516 long __cil_tmp24 ;
6517
6518 {
6519 {
6520#line 50
6521 __cil_tmp10 = (void const *)to;
6522#line 50
6523 __cil_tmp11 = (void *)__cil_tmp10;
6524#line 50
6525 tmp = __builtin_object_size(__cil_tmp11, 0);
6526#line 50
6527 sz = (int )tmp;
6528#line 52
6529 might_fault();
6530#line 53
6531 __cil_tmp12 = sz == -1;
6532#line 53
6533 __cil_tmp13 = (long )__cil_tmp12;
6534#line 53
6535 tmp___1 = __builtin_expect(__cil_tmp13, 1L);
6536 }
6537#line 53
6538 if (tmp___1 != 0L) {
6539 {
6540#line 54
6541 __cil_tmp14 = (unsigned int )n;
6542#line 54
6543 n = _copy_from_user(to, from, __cil_tmp14);
6544 }
6545 } else {
6546 {
6547#line 53
6548 __cil_tmp15 = (unsigned long )sz;
6549#line 53
6550 __cil_tmp16 = __cil_tmp15 >= n;
6551#line 53
6552 __cil_tmp17 = (long )__cil_tmp16;
6553#line 53
6554 tmp___2 = __builtin_expect(__cil_tmp17, 1L);
6555 }
6556#line 53
6557 if (tmp___2 != 0L) {
6558 {
6559#line 54
6560 __cil_tmp18 = (unsigned int )n;
6561#line 54
6562 n = _copy_from_user(to, from, __cil_tmp18);
6563 }
6564 } else {
6565 {
6566#line 57
6567 __ret_warn_on = 1;
6568#line 57
6569 __cil_tmp19 = __ret_warn_on != 0;
6570#line 57
6571 __cil_tmp20 = (long )__cil_tmp19;
6572#line 57
6573 tmp___0 = __builtin_expect(__cil_tmp20, 0L);
6574 }
6575#line 57
6576 if (tmp___0 != 0L) {
6577 {
6578#line 57
6579 __cil_tmp21 = (int const )57;
6580#line 57
6581 __cil_tmp22 = (int )__cil_tmp21;
6582#line 57
6583 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",
6584 __cil_tmp22, "Buffer overflow detected!\n");
6585 }
6586 } else {
6587
6588 }
6589 {
6590#line 57
6591 __cil_tmp23 = __ret_warn_on != 0;
6592#line 57
6593 __cil_tmp24 = (long )__cil_tmp23;
6594#line 57
6595 __builtin_expect(__cil_tmp24, 0L);
6596 }
6597 }
6598 }
6599#line 59
6600 return (n);
6601}
6602}
6603#line 63 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
6604__inline static int copy_to_user(void *dst , void const *src , unsigned int size )
6605{ unsigned long tmp ;
6606
6607 {
6608 {
6609#line 65
6610 might_fault();
6611#line 67
6612 tmp = _copy_to_user(dst, src, size);
6613 }
6614#line 67
6615 return ((int )tmp);
6616}
6617}
6618#line 16 "include/linux/uaccess.h"
6619__inline static void pagefault_disable(void)
6620{ struct thread_info *tmp ;
6621 int __cil_tmp2 ;
6622
6623 {
6624 {
6625#line 18
6626 tmp = current_thread_info();
6627#line 18
6628 __cil_tmp2 = tmp->preempt_count;
6629#line 18
6630 tmp->preempt_count = __cil_tmp2 + 1;
6631#line 23
6632 __asm__ volatile ("": : : "memory");
6633 }
6634#line 24
6635 return;
6636}
6637}
6638#line 26 "include/linux/uaccess.h"
6639__inline static void pagefault_enable(void)
6640{ struct thread_info *tmp ;
6641 int __cil_tmp2 ;
6642
6643 {
6644 {
6645#line 32
6646 __asm__ volatile ("": : : "memory");
6647#line 33
6648 tmp = current_thread_info();
6649#line 33
6650 __cil_tmp2 = tmp->preempt_count;
6651#line 33
6652 tmp->preempt_count = __cil_tmp2 + -1;
6653#line 37
6654 __asm__ volatile ("": : : "memory");
6655 }
6656#line 38
6657 return;
6658}
6659}
6660#line 58 "include/linux/highmem.h"
6661__inline static void *__kmap_atomic(struct page *page )
6662{ void *tmp ;
6663
6664 {
6665 {
6666#line 60
6667 pagefault_disable();
6668#line 61
6669 tmp = lowmem_page_address(page);
6670 }
6671#line 61
6672 return (tmp);
6673}
6674}
6675#line 65 "include/linux/highmem.h"
6676__inline static void __kunmap_atomic(void *addr )
6677{
6678
6679 {
6680 {
6681#line 67
6682 pagefault_enable();
6683 }
6684#line 68
6685 return;
6686}
6687}
6688#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/delay.h"
6689extern void __const_udelay(unsigned long ) ;
6690#line 46 "include/linux/delay.h"
6691extern void msleep(unsigned int ) ;
6692#line 109 "include/linux/proc_fs.h"
6693extern struct proc_dir_entry *create_proc_entry(char const * , mode_t , struct proc_dir_entry * ) ;
6694#line 115
6695extern void remove_proc_entry(char const * , struct proc_dir_entry * ) ;
6696#line 148
6697extern struct proc_dir_entry *proc_mkdir(char const * , struct proc_dir_entry * ) ;
6698#line 158 "include/linux/proc_fs.h"
6699__inline static struct proc_dir_entry *create_proc_read_entry(char const *name ,
6700 mode_t mode , struct proc_dir_entry *base ,
6701 read_proc_t *read_proc ,
6702 void *data )
6703{ struct proc_dir_entry *res ;
6704 struct proc_dir_entry *tmp ;
6705 struct proc_dir_entry *__cil_tmp8 ;
6706 unsigned long __cil_tmp9 ;
6707 unsigned long __cil_tmp10 ;
6708
6709 {
6710 {
6711#line 162
6712 tmp = create_proc_entry(name, mode, base);
6713#line 162
6714 res = tmp;
6715 }
6716 {
6717#line 163
6718 __cil_tmp8 = (struct proc_dir_entry *)0;
6719#line 163
6720 __cil_tmp9 = (unsigned long )__cil_tmp8;
6721#line 163
6722 __cil_tmp10 = (unsigned long )res;
6723#line 163
6724 if (__cil_tmp10 != __cil_tmp9) {
6725#line 164
6726 res->read_proc = read_proc;
6727#line 165
6728 res->data = data;
6729 } else {
6730
6731 }
6732 }
6733#line 167
6734 return (res);
6735}
6736}
6737#line 124 "include/linux/interrupt.h"
6738extern int request_threaded_irq(unsigned int , irqreturn_t (*)(int , void * ) ,
6739 irqreturn_t (*)(int , void * ) , unsigned long ,
6740 char const * , void * ) ;
6741#line 129 "include/linux/interrupt.h"
6742__inline static int request_irq(unsigned int irq , irqreturn_t (*handler)(int , void * ) ,
6743 unsigned long flags , char const *name , void *dev )
6744{ int tmp ;
6745 irqreturn_t (*__cil_tmp7)(int , void * ) ;
6746
6747 {
6748 {
6749#line 132
6750 __cil_tmp7 = (irqreturn_t (*)(int , void * ))0;
6751#line 132
6752 tmp = request_threaded_irq(irq, handler, __cil_tmp7, flags, name, dev);
6753 }
6754#line 132
6755 return (tmp);
6756}
6757}
6758#line 170
6759extern void free_irq(unsigned int , void * ) ;
6760#line 356 "include/linux/pci.h"
6761extern struct pci_dev *alloc_pci_dev(void) ;
6762#line 725
6763extern int pci_bus_read_config_word(struct pci_bus * , unsigned int , int , u16 * ) ;
6764#line 727
6765extern int pci_bus_read_config_dword(struct pci_bus * , unsigned int , int , u32 * ) ;
6766#line 741 "include/linux/pci.h"
6767__inline static int pci_read_config_word(struct pci_dev *dev , int where , u16 *val )
6768{ int tmp ;
6769 struct pci_bus *__cil_tmp5 ;
6770 unsigned int __cil_tmp6 ;
6771
6772 {
6773 {
6774#line 743
6775 __cil_tmp5 = dev->bus;
6776#line 743
6777 __cil_tmp6 = dev->devfn;
6778#line 743
6779 tmp = pci_bus_read_config_word(__cil_tmp5, __cil_tmp6, where, val);
6780 }
6781#line 743
6782 return (tmp);
6783}
6784}
6785#line 745 "include/linux/pci.h"
6786__inline static int pci_read_config_dword(struct pci_dev *dev , int where , u32 *val )
6787{ int tmp ;
6788 struct pci_bus *__cil_tmp5 ;
6789 unsigned int __cil_tmp6 ;
6790
6791 {
6792 {
6793#line 748
6794 __cil_tmp5 = dev->bus;
6795#line 748
6796 __cil_tmp6 = dev->devfn;
6797#line 748
6798 tmp = pci_bus_read_config_dword(__cil_tmp5, __cil_tmp6, where, val);
6799 }
6800#line 748
6801 return (tmp);
6802}
6803}
6804#line 764
6805extern int pci_enable_device(struct pci_dev * ) ;
6806#line 781
6807extern void pci_disable_device(struct pci_dev * ) ;
6808#line 782
6809extern void pci_set_master(struct pci_dev * ) ;
6810#line 916
6811extern int __pci_register_driver(struct pci_driver * , struct module * , char const * ) ;
6812#line 925
6813extern void pci_unregister_driver(struct pci_driver * ) ;
6814#line 93 "include/linux/scatterlist.h"
6815__inline static struct page *sg_page(struct scatterlist *sg )
6816{ long tmp ;
6817 long tmp___0 ;
6818 unsigned long __cil_tmp4 ;
6819 int __cil_tmp5 ;
6820 long __cil_tmp6 ;
6821 unsigned long __cil_tmp7 ;
6822 int __cil_tmp8 ;
6823 long __cil_tmp9 ;
6824 long __cil_tmp10 ;
6825 unsigned long __cil_tmp11 ;
6826 unsigned long __cil_tmp12 ;
6827
6828 {
6829 {
6830#line 96
6831 __cil_tmp4 = sg->sg_magic;
6832#line 96
6833 __cil_tmp5 = __cil_tmp4 != 2271560481UL;
6834#line 96
6835 __cil_tmp6 = (long )__cil_tmp5;
6836#line 96
6837 tmp = __builtin_expect(__cil_tmp6, 0L);
6838 }
6839#line 96
6840 if (tmp != 0L) {
6841#line 96
6842 __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 *)"include/linux/scatterlist.h"),
6843 "i" (96), "i" (12UL));
6844 ldv_29327: ;
6845#line 96
6846 goto ldv_29327;
6847 } else {
6848
6849 }
6850 {
6851#line 97
6852 __cil_tmp7 = sg->page_link;
6853#line 97
6854 __cil_tmp8 = (int )__cil_tmp7;
6855#line 97
6856 __cil_tmp9 = (long )__cil_tmp8;
6857#line 97
6858 __cil_tmp10 = __cil_tmp9 & 1L;
6859#line 97
6860 tmp___0 = __builtin_expect(__cil_tmp10, 0L);
6861 }
6862#line 97
6863 if (tmp___0 != 0L) {
6864#line 97
6865 __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 *)"include/linux/scatterlist.h"),
6866 "i" (97), "i" (12UL));
6867 ldv_29328: ;
6868#line 97
6869 goto ldv_29328;
6870 } else {
6871
6872 }
6873 {
6874#line 99
6875 __cil_tmp11 = sg->page_link;
6876#line 99
6877 __cil_tmp12 = __cil_tmp11 & 1152921504606846972UL;
6878#line 99
6879 return ((struct page *)__cil_tmp12);
6880 }
6881}
6882}
6883#line 197 "include/linux/scatterlist.h"
6884__inline static void *sg_virt(struct scatterlist *sg )
6885{ struct page *tmp ;
6886 void *tmp___0 ;
6887 unsigned int __cil_tmp4 ;
6888 unsigned long __cil_tmp5 ;
6889
6890 {
6891 {
6892#line 199
6893 tmp = sg_page(sg);
6894#line 199
6895 tmp___0 = lowmem_page_address(tmp);
6896 }
6897 {
6898#line 199
6899 __cil_tmp4 = sg->offset;
6900#line 199
6901 __cil_tmp5 = (unsigned long )__cil_tmp4;
6902#line 199
6903 return (tmp___0 + __cil_tmp5);
6904 }
6905}
6906}
6907#line 202
6908extern struct scatterlist *sg_next(struct scatterlist * ) ;
6909#line 80 "include/linux/dma-mapping.h"
6910__inline static int valid_dma_direction(int dma_direction )
6911{ int tmp ;
6912
6913 {
6914#line 82
6915 if (dma_direction == 0) {
6916#line 82
6917 tmp = 1;
6918 } else
6919#line 82
6920 if (dma_direction == 1) {
6921#line 82
6922 tmp = 1;
6923 } else
6924#line 82
6925 if (dma_direction == 2) {
6926#line 82
6927 tmp = 1;
6928 } else {
6929#line 82
6930 tmp = 0;
6931 }
6932#line 82
6933 return (tmp);
6934}
6935}
6936#line 87 "include/linux/dma-mapping.h"
6937__inline static int is_device_dma_capable(struct device *dev )
6938{ int tmp ;
6939 u64 *__cil_tmp3 ;
6940 unsigned long __cil_tmp4 ;
6941 u64 *__cil_tmp5 ;
6942 unsigned long __cil_tmp6 ;
6943 u64 *__cil_tmp7 ;
6944 u64 __cil_tmp8 ;
6945
6946 {
6947 {
6948#line 89
6949 __cil_tmp3 = (u64 *)0;
6950#line 89
6951 __cil_tmp4 = (unsigned long )__cil_tmp3;
6952#line 89
6953 __cil_tmp5 = dev->dma_mask;
6954#line 89
6955 __cil_tmp6 = (unsigned long )__cil_tmp5;
6956#line 89
6957 if (__cil_tmp6 != __cil_tmp4) {
6958 {
6959#line 89
6960 __cil_tmp7 = dev->dma_mask;
6961#line 89
6962 __cil_tmp8 = *__cil_tmp7;
6963#line 89
6964 if (__cil_tmp8 != 0ULL) {
6965#line 89
6966 tmp = 1;
6967 } else {
6968#line 89
6969 tmp = 0;
6970 }
6971 }
6972 } else {
6973#line 89
6974 tmp = 0;
6975 }
6976 }
6977#line 89
6978 return (tmp);
6979}
6980}
6981#line 131 "include/linux/kmemcheck.h"
6982__inline static void kmemcheck_mark_initialized(void *address , unsigned int n )
6983{
6984
6985 {
6986#line 133
6987 return;
6988}
6989}
6990#line 37 "include/linux/dma-debug.h"
6991extern void debug_dma_map_page(struct device * , struct page * , size_t , size_t ,
6992 int , dma_addr_t , bool ) ;
6993#line 42
6994extern void debug_dma_unmap_page(struct device * , dma_addr_t , size_t , int ,
6995 bool ) ;
6996#line 51
6997extern void debug_dma_alloc_coherent(struct device * , size_t , dma_addr_t , void * ) ;
6998#line 54
6999extern void debug_dma_free_coherent(struct device * , size_t , void * , dma_addr_t ) ;
7000#line 26 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
7001extern struct device x86_dma_fallback_dev ;
7002#line 29
7003extern struct dma_map_ops *dma_ops ;
7004#line 31 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
7005__inline static struct dma_map_ops *get_dma_ops(struct device *dev )
7006{ long tmp ;
7007 struct device *__cil_tmp3 ;
7008 unsigned long __cil_tmp4 ;
7009 unsigned long __cil_tmp5 ;
7010 int __cil_tmp6 ;
7011 long __cil_tmp7 ;
7012 struct dma_map_ops *__cil_tmp8 ;
7013 unsigned long __cil_tmp9 ;
7014 struct dma_map_ops *__cil_tmp10 ;
7015 unsigned long __cil_tmp11 ;
7016
7017 {
7018 {
7019#line 36
7020 __cil_tmp3 = (struct device *)0;
7021#line 36
7022 __cil_tmp4 = (unsigned long )__cil_tmp3;
7023#line 36
7024 __cil_tmp5 = (unsigned long )dev;
7025#line 36
7026 __cil_tmp6 = __cil_tmp5 == __cil_tmp4;
7027#line 36
7028 __cil_tmp7 = (long )__cil_tmp6;
7029#line 36
7030 tmp = __builtin_expect(__cil_tmp7, 0L);
7031 }
7032#line 36
7033 if (tmp != 0L) {
7034#line 37
7035 return (dma_ops);
7036 } else {
7037 {
7038#line 36
7039 __cil_tmp8 = (struct dma_map_ops *)0;
7040#line 36
7041 __cil_tmp9 = (unsigned long )__cil_tmp8;
7042#line 36
7043 __cil_tmp10 = dev->archdata.dma_ops;
7044#line 36
7045 __cil_tmp11 = (unsigned long )__cil_tmp10;
7046#line 36
7047 if (__cil_tmp11 == __cil_tmp9) {
7048#line 37
7049 return (dma_ops);
7050 } else {
7051#line 39
7052 return (dev->archdata.dma_ops);
7053 }
7054 }
7055 }
7056}
7057}
7058#line 9 "include/asm-generic/dma-mapping-common.h"
7059__inline static dma_addr_t dma_map_single_attrs(struct device *dev , void *ptr , size_t size ,
7060 enum dma_data_direction dir , struct dma_attrs *attrs )
7061{ struct dma_map_ops *ops ;
7062 struct dma_map_ops *tmp ;
7063 dma_addr_t addr ;
7064 int tmp___0 ;
7065 long tmp___1 ;
7066 unsigned long tmp___2 ;
7067 unsigned long tmp___3 ;
7068 unsigned int __cil_tmp13 ;
7069 int __cil_tmp14 ;
7070 int __cil_tmp15 ;
7071 long __cil_tmp16 ;
7072 unsigned long __cil_tmp17 ;
7073 dma_addr_t (*__cil_tmp18)(struct device * , struct page * , unsigned long , size_t ,
7074 enum dma_data_direction , struct dma_attrs * ) ;
7075 unsigned long __cil_tmp19 ;
7076 unsigned long __cil_tmp20 ;
7077 struct page *__cil_tmp21 ;
7078 unsigned long __cil_tmp22 ;
7079 unsigned long __cil_tmp23 ;
7080 unsigned long __cil_tmp24 ;
7081 unsigned long __cil_tmp25 ;
7082 unsigned long __cil_tmp26 ;
7083 struct page *__cil_tmp27 ;
7084 unsigned long __cil_tmp28 ;
7085 unsigned long __cil_tmp29 ;
7086 int __cil_tmp30 ;
7087 bool __cil_tmp31 ;
7088
7089 {
7090 {
7091#line 14
7092 tmp = get_dma_ops(dev);
7093#line 14
7094 ops = tmp;
7095#line 17
7096 __cil_tmp13 = (unsigned int )size;
7097#line 17
7098 kmemcheck_mark_initialized(ptr, __cil_tmp13);
7099#line 18
7100 __cil_tmp14 = (int )dir;
7101#line 18
7102 tmp___0 = valid_dma_direction(__cil_tmp14);
7103#line 18
7104 __cil_tmp15 = tmp___0 == 0;
7105#line 18
7106 __cil_tmp16 = (long )__cil_tmp15;
7107#line 18
7108 tmp___1 = __builtin_expect(__cil_tmp16, 0L);
7109 }
7110#line 18
7111 if (tmp___1 != 0L) {
7112#line 18
7113 __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 *)"include/asm-generic/dma-mapping-common.h"),
7114 "i" (18), "i" (12UL));
7115 ldv_29762: ;
7116#line 18
7117 goto ldv_29762;
7118 } else {
7119
7120 }
7121 {
7122#line 19
7123 __cil_tmp17 = (unsigned long )ptr;
7124#line 19
7125 tmp___2 = __phys_addr(__cil_tmp17);
7126#line 19
7127 __cil_tmp18 = ops->map_page;
7128#line 19
7129 __cil_tmp19 = tmp___2 >> 12;
7130#line 19
7131 __cil_tmp20 = 1152897315351035904UL + __cil_tmp19;
7132#line 19
7133 __cil_tmp21 = (struct page *)__cil_tmp20;
7134#line 19
7135 __cil_tmp22 = (unsigned long )ptr;
7136#line 19
7137 __cil_tmp23 = __cil_tmp22 & 4095UL;
7138#line 19
7139 addr = (*__cil_tmp18)(dev, __cil_tmp21, __cil_tmp23, size, dir, attrs);
7140#line 22
7141 __cil_tmp24 = (unsigned long )ptr;
7142#line 22
7143 tmp___3 = __phys_addr(__cil_tmp24);
7144#line 22
7145 __cil_tmp25 = tmp___3 >> 12;
7146#line 22
7147 __cil_tmp26 = 1152897315351035904UL + __cil_tmp25;
7148#line 22
7149 __cil_tmp27 = (struct page *)__cil_tmp26;
7150#line 22
7151 __cil_tmp28 = (unsigned long )ptr;
7152#line 22
7153 __cil_tmp29 = __cil_tmp28 & 4095UL;
7154#line 22
7155 __cil_tmp30 = (int )dir;
7156#line 22
7157 __cil_tmp31 = (bool )1;
7158#line 22
7159 debug_dma_map_page(dev, __cil_tmp27, __cil_tmp29, size, __cil_tmp30, addr, __cil_tmp31);
7160 }
7161#line 25
7162 return (addr);
7163}
7164}
7165#line 28 "include/asm-generic/dma-mapping-common.h"
7166__inline static void dma_unmap_single_attrs(struct device *dev , dma_addr_t addr ,
7167 size_t size , enum dma_data_direction dir ,
7168 struct dma_attrs *attrs )
7169{ struct dma_map_ops *ops ;
7170 struct dma_map_ops *tmp ;
7171 int tmp___0 ;
7172 long tmp___1 ;
7173 int __cil_tmp10 ;
7174 int __cil_tmp11 ;
7175 long __cil_tmp12 ;
7176 void (*__cil_tmp13)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
7177 struct dma_attrs * ) ;
7178 unsigned long __cil_tmp14 ;
7179 void (*__cil_tmp15)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
7180 struct dma_attrs * ) ;
7181 unsigned long __cil_tmp16 ;
7182 void (*__cil_tmp17)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
7183 struct dma_attrs * ) ;
7184 int __cil_tmp18 ;
7185 bool __cil_tmp19 ;
7186
7187 {
7188 {
7189#line 33
7190 tmp = get_dma_ops(dev);
7191#line 33
7192 ops = tmp;
7193#line 35
7194 __cil_tmp10 = (int )dir;
7195#line 35
7196 tmp___0 = valid_dma_direction(__cil_tmp10);
7197#line 35
7198 __cil_tmp11 = tmp___0 == 0;
7199#line 35
7200 __cil_tmp12 = (long )__cil_tmp11;
7201#line 35
7202 tmp___1 = __builtin_expect(__cil_tmp12, 0L);
7203 }
7204#line 35
7205 if (tmp___1 != 0L) {
7206#line 35
7207 __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 *)"include/asm-generic/dma-mapping-common.h"),
7208 "i" (35), "i" (12UL));
7209 ldv_29771: ;
7210#line 35
7211 goto ldv_29771;
7212 } else {
7213
7214 }
7215 {
7216#line 36
7217 __cil_tmp13 = (void (*)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
7218 struct dma_attrs * ))0;
7219#line 36
7220 __cil_tmp14 = (unsigned long )__cil_tmp13;
7221#line 36
7222 __cil_tmp15 = ops->unmap_page;
7223#line 36
7224 __cil_tmp16 = (unsigned long )__cil_tmp15;
7225#line 36
7226 if (__cil_tmp16 != __cil_tmp14) {
7227 {
7228#line 37
7229 __cil_tmp17 = ops->unmap_page;
7230#line 37
7231 (*__cil_tmp17)(dev, addr, size, dir, attrs);
7232 }
7233 } else {
7234
7235 }
7236 }
7237 {
7238#line 38
7239 __cil_tmp18 = (int )dir;
7240#line 38
7241 __cil_tmp19 = (bool )1;
7242#line 38
7243 debug_dma_unmap_page(dev, addr, size, __cil_tmp18, __cil_tmp19);
7244 }
7245#line 39
7246 return;
7247}
7248}
7249#line 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
7250extern int dma_set_mask(struct device * , u64 ) ;
7251#line 89 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
7252__inline static unsigned long dma_alloc_coherent_mask(struct device *dev , gfp_t gfp )
7253{ unsigned long dma_mask ;
7254 u64 __cil_tmp4 ;
7255 int __cil_tmp5 ;
7256
7257 {
7258#line 92
7259 dma_mask = 0UL;
7260#line 94
7261 __cil_tmp4 = dev->coherent_dma_mask;
7262#line 94
7263 dma_mask = (unsigned long )__cil_tmp4;
7264#line 95
7265 if (dma_mask == 0UL) {
7266 {
7267#line 96
7268 __cil_tmp5 = (int )gfp;
7269#line 96
7270 if (__cil_tmp5 & 1) {
7271#line 96
7272 dma_mask = 16777215UL;
7273 } else {
7274#line 96
7275 dma_mask = 4294967295UL;
7276 }
7277 }
7278 } else {
7279
7280 }
7281#line 98
7282 return (dma_mask);
7283}
7284}
7285#line 101 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
7286__inline static gfp_t dma_alloc_coherent_gfp_flags(struct device *dev , gfp_t gfp )
7287{ unsigned long dma_mask ;
7288 unsigned long tmp ;
7289 unsigned long long __cil_tmp5 ;
7290 unsigned long long __cil_tmp6 ;
7291 unsigned int __cil_tmp7 ;
7292
7293 {
7294 {
7295#line 103
7296 tmp = dma_alloc_coherent_mask(dev, gfp);
7297#line 103
7298 dma_mask = tmp;
7299 }
7300 {
7301#line 105
7302 __cil_tmp5 = (unsigned long long )dma_mask;
7303#line 105
7304 if (__cil_tmp5 <= 16777215ULL) {
7305#line 106
7306 gfp = gfp | 1U;
7307 } else {
7308
7309 }
7310 }
7311 {
7312#line 108
7313 __cil_tmp6 = (unsigned long long )dma_mask;
7314#line 108
7315 if (__cil_tmp6 <= 4294967295ULL) {
7316 {
7317#line 108
7318 __cil_tmp7 = gfp & 1U;
7319#line 108
7320 if (__cil_tmp7 == 0U) {
7321#line 109
7322 gfp = gfp | 4U;
7323 } else {
7324
7325 }
7326 }
7327 } else {
7328
7329 }
7330 }
7331#line 111
7332 return (gfp);
7333}
7334}
7335#line 115 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
7336__inline static void *dma_alloc_coherent(struct device *dev , size_t size , dma_addr_t *dma_handle ,
7337 gfp_t gfp )
7338{ struct dma_map_ops *ops ;
7339 struct dma_map_ops *tmp ;
7340 void *memory ;
7341 int tmp___0 ;
7342 gfp_t tmp___1 ;
7343 struct device *__cil_tmp10 ;
7344 unsigned long __cil_tmp11 ;
7345 unsigned long __cil_tmp12 ;
7346 void *(*__cil_tmp13)(struct device * , size_t , dma_addr_t * , gfp_t ) ;
7347 unsigned long __cil_tmp14 ;
7348 void *(*__cil_tmp15)(struct device * , size_t , dma_addr_t * , gfp_t ) ;
7349 unsigned long __cil_tmp16 ;
7350 void *(*__cil_tmp17)(struct device * , size_t , dma_addr_t * , gfp_t ) ;
7351 dma_addr_t __cil_tmp18 ;
7352
7353 {
7354 {
7355#line 118
7356 tmp = get_dma_ops(dev);
7357#line 118
7358 ops = tmp;
7359#line 121
7360 gfp = gfp & 4294967288U;
7361 }
7362 {
7363#line 126
7364 __cil_tmp10 = (struct device *)0;
7365#line 126
7366 __cil_tmp11 = (unsigned long )__cil_tmp10;
7367#line 126
7368 __cil_tmp12 = (unsigned long )dev;
7369#line 126
7370 if (__cil_tmp12 == __cil_tmp11) {
7371#line 127
7372 dev = & x86_dma_fallback_dev;
7373 } else {
7374
7375 }
7376 }
7377 {
7378#line 129
7379 tmp___0 = is_device_dma_capable(dev);
7380 }
7381#line 129
7382 if (tmp___0 == 0) {
7383#line 130
7384 return ((void *)0);
7385 } else {
7386
7387 }
7388 {
7389#line 132
7390 __cil_tmp13 = (void *(*)(struct device * , size_t , dma_addr_t * , gfp_t ))0;
7391#line 132
7392 __cil_tmp14 = (unsigned long )__cil_tmp13;
7393#line 132
7394 __cil_tmp15 = ops->alloc_coherent;
7395#line 132
7396 __cil_tmp16 = (unsigned long )__cil_tmp15;
7397#line 132
7398 if (__cil_tmp16 == __cil_tmp14) {
7399#line 133
7400 return ((void *)0);
7401 } else {
7402
7403 }
7404 }
7405 {
7406#line 135
7407 tmp___1 = dma_alloc_coherent_gfp_flags(dev, gfp);
7408#line 135
7409 __cil_tmp17 = ops->alloc_coherent;
7410#line 135
7411 memory = (*__cil_tmp17)(dev, size, dma_handle, tmp___1);
7412#line 137
7413 __cil_tmp18 = *dma_handle;
7414#line 137
7415 debug_dma_alloc_coherent(dev, size, __cil_tmp18, memory);
7416 }
7417#line 139
7418 return (memory);
7419}
7420}
7421#line 142 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
7422__inline static void dma_free_coherent(struct device *dev , size_t size , void *vaddr ,
7423 dma_addr_t bus )
7424{ struct dma_map_ops *ops ;
7425 struct dma_map_ops *tmp ;
7426 int __ret_warn_on ;
7427 unsigned long _flags ;
7428 int tmp___0 ;
7429 long tmp___1 ;
7430 int __cil_tmp11 ;
7431 long __cil_tmp12 ;
7432 int __cil_tmp13 ;
7433 int __cil_tmp14 ;
7434 int __cil_tmp15 ;
7435 long __cil_tmp16 ;
7436 void (*__cil_tmp17)(struct device * , size_t , void * , dma_addr_t ) ;
7437 unsigned long __cil_tmp18 ;
7438 void (*__cil_tmp19)(struct device * , size_t , void * , dma_addr_t ) ;
7439 unsigned long __cil_tmp20 ;
7440 void (*__cil_tmp21)(struct device * , size_t , void * , dma_addr_t ) ;
7441
7442 {
7443 {
7444#line 145
7445 tmp = get_dma_ops(dev);
7446#line 145
7447 ops = tmp;
7448#line 147
7449 _flags = arch_local_save_flags();
7450#line 147
7451 tmp___0 = arch_irqs_disabled_flags(_flags);
7452#line 147
7453 __ret_warn_on = tmp___0 != 0;
7454#line 147
7455 __cil_tmp11 = __ret_warn_on != 0;
7456#line 147
7457 __cil_tmp12 = (long )__cil_tmp11;
7458#line 147
7459 tmp___1 = __builtin_expect(__cil_tmp12, 0L);
7460 }
7461#line 147
7462 if (tmp___1 != 0L) {
7463 {
7464#line 147
7465 __cil_tmp13 = (int const )147;
7466#line 147
7467 __cil_tmp14 = (int )__cil_tmp13;
7468#line 147
7469 warn_slowpath_null("/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h",
7470 __cil_tmp14);
7471 }
7472 } else {
7473
7474 }
7475 {
7476#line 147
7477 __cil_tmp15 = __ret_warn_on != 0;
7478#line 147
7479 __cil_tmp16 = (long )__cil_tmp15;
7480#line 147
7481 __builtin_expect(__cil_tmp16, 0L);
7482#line 152
7483 debug_dma_free_coherent(dev, size, vaddr, bus);
7484 }
7485 {
7486#line 153
7487 __cil_tmp17 = (void (*)(struct device * , size_t , void * , dma_addr_t ))0;
7488#line 153
7489 __cil_tmp18 = (unsigned long )__cil_tmp17;
7490#line 153
7491 __cil_tmp19 = ops->free_coherent;
7492#line 153
7493 __cil_tmp20 = (unsigned long )__cil_tmp19;
7494#line 153
7495 if (__cil_tmp20 != __cil_tmp18) {
7496 {
7497#line 154
7498 __cil_tmp21 = ops->free_coherent;
7499#line 154
7500 (*__cil_tmp21)(dev, size, vaddr, bus);
7501 }
7502 } else {
7503
7504 }
7505 }
7506#line 155
7507 return;
7508}
7509}
7510#line 16 "include/asm-generic/pci-dma-compat.h"
7511__inline static void *pci_alloc_consistent(struct pci_dev *hwdev , size_t size , dma_addr_t *dma_handle )
7512{ struct device *tmp ;
7513 void *tmp___0 ;
7514 struct pci_dev *__cil_tmp6 ;
7515 unsigned long __cil_tmp7 ;
7516 unsigned long __cil_tmp8 ;
7517
7518 {
7519 {
7520#line 19
7521 __cil_tmp6 = (struct pci_dev *)0;
7522#line 19
7523 __cil_tmp7 = (unsigned long )__cil_tmp6;
7524#line 19
7525 __cil_tmp8 = (unsigned long )hwdev;
7526#line 19
7527 if (__cil_tmp8 != __cil_tmp7) {
7528#line 19
7529 tmp = & hwdev->dev;
7530 } else {
7531#line 19
7532 tmp = (struct device *)0;
7533 }
7534 }
7535 {
7536#line 19
7537 tmp___0 = dma_alloc_coherent(tmp, size, dma_handle, 32U);
7538 }
7539#line 19
7540 return (tmp___0);
7541}
7542}
7543#line 23 "include/asm-generic/pci-dma-compat.h"
7544__inline static void pci_free_consistent(struct pci_dev *hwdev , size_t size , void *vaddr ,
7545 dma_addr_t dma_handle )
7546{ struct device *tmp ;
7547 struct pci_dev *__cil_tmp6 ;
7548 unsigned long __cil_tmp7 ;
7549 unsigned long __cil_tmp8 ;
7550
7551 {
7552 {
7553#line 26
7554 __cil_tmp6 = (struct pci_dev *)0;
7555#line 26
7556 __cil_tmp7 = (unsigned long )__cil_tmp6;
7557#line 26
7558 __cil_tmp8 = (unsigned long )hwdev;
7559#line 26
7560 if (__cil_tmp8 != __cil_tmp7) {
7561#line 26
7562 tmp = & hwdev->dev;
7563 } else {
7564#line 26
7565 tmp = (struct device *)0;
7566 }
7567 }
7568 {
7569#line 26
7570 dma_free_coherent(tmp, size, vaddr, dma_handle);
7571 }
7572#line 27
7573 return;
7574}
7575}
7576#line 30 "include/asm-generic/pci-dma-compat.h"
7577__inline static dma_addr_t pci_map_single(struct pci_dev *hwdev , void *ptr , size_t size ,
7578 int direction )
7579{ struct device *tmp ;
7580 dma_addr_t tmp___0 ;
7581 struct pci_dev *__cil_tmp7 ;
7582 unsigned long __cil_tmp8 ;
7583 unsigned long __cil_tmp9 ;
7584 enum dma_data_direction __cil_tmp10 ;
7585 struct dma_attrs *__cil_tmp11 ;
7586
7587 {
7588 {
7589#line 32
7590 __cil_tmp7 = (struct pci_dev *)0;
7591#line 32
7592 __cil_tmp8 = (unsigned long )__cil_tmp7;
7593#line 32
7594 __cil_tmp9 = (unsigned long )hwdev;
7595#line 32
7596 if (__cil_tmp9 != __cil_tmp8) {
7597#line 32
7598 tmp = & hwdev->dev;
7599 } else {
7600#line 32
7601 tmp = (struct device *)0;
7602 }
7603 }
7604 {
7605#line 32
7606 __cil_tmp10 = (enum dma_data_direction )direction;
7607#line 32
7608 __cil_tmp11 = (struct dma_attrs *)0;
7609#line 32
7610 tmp___0 = dma_map_single_attrs(tmp, ptr, size, __cil_tmp10, __cil_tmp11);
7611 }
7612#line 32
7613 return (tmp___0);
7614}
7615}
7616#line 36 "include/asm-generic/pci-dma-compat.h"
7617__inline static void pci_unmap_single(struct pci_dev *hwdev , dma_addr_t dma_addr ,
7618 size_t size , int direction )
7619{ struct device *tmp ;
7620 struct pci_dev *__cil_tmp6 ;
7621 unsigned long __cil_tmp7 ;
7622 unsigned long __cil_tmp8 ;
7623 enum dma_data_direction __cil_tmp9 ;
7624 struct dma_attrs *__cil_tmp10 ;
7625
7626 {
7627 {
7628#line 39
7629 __cil_tmp6 = (struct pci_dev *)0;
7630#line 39
7631 __cil_tmp7 = (unsigned long )__cil_tmp6;
7632#line 39
7633 __cil_tmp8 = (unsigned long )hwdev;
7634#line 39
7635 if (__cil_tmp8 != __cil_tmp7) {
7636#line 39
7637 tmp = & hwdev->dev;
7638 } else {
7639#line 39
7640 tmp = (struct device *)0;
7641 }
7642 }
7643 {
7644#line 39
7645 __cil_tmp9 = (enum dma_data_direction )direction;
7646#line 39
7647 __cil_tmp10 = (struct dma_attrs *)0;
7648#line 39
7649 dma_unmap_single_attrs(tmp, dma_addr, size, __cil_tmp9, __cil_tmp10);
7650 }
7651#line 40
7652 return;
7653}
7654}
7655#line 105 "include/asm-generic/pci-dma-compat.h"
7656__inline static int pci_set_dma_mask(struct pci_dev *dev , u64 mask )
7657{ int tmp ;
7658 struct device *__cil_tmp4 ;
7659
7660 {
7661 {
7662#line 107
7663 __cil_tmp4 = & dev->dev;
7664#line 107
7665 tmp = dma_set_mask(__cil_tmp4, mask);
7666 }
7667#line 107
7668 return (tmp);
7669}
7670}
7671#line 1316 "include/linux/pci.h"
7672__inline static void *pci_get_drvdata(struct pci_dev *pdev )
7673{ void *tmp ;
7674 struct device *__cil_tmp3 ;
7675 struct device const *__cil_tmp4 ;
7676
7677 {
7678 {
7679#line 1318
7680 __cil_tmp3 = & pdev->dev;
7681#line 1318
7682 __cil_tmp4 = (struct device const *)__cil_tmp3;
7683#line 1318
7684 tmp = dev_get_drvdata(__cil_tmp4);
7685 }
7686#line 1318
7687 return (tmp);
7688}
7689}
7690#line 1321 "include/linux/pci.h"
7691__inline static void pci_set_drvdata(struct pci_dev *pdev , void *data )
7692{ struct device *__cil_tmp3 ;
7693
7694 {
7695 {
7696#line 1323
7697 __cil_tmp3 = & pdev->dev;
7698#line 1323
7699 dev_set_drvdata(__cil_tmp3, data);
7700 }
7701#line 1324
7702 return;
7703}
7704}
7705#line 16 "include/scsi/scsicam.h"
7706extern int scsi_partsize(unsigned char * , unsigned long , unsigned int * , unsigned int * ,
7707 unsigned int * ) ;
7708#line 18
7709extern unsigned char *scsi_bios_ptable(struct block_device * ) ;
7710#line 148 "include/scsi/scsi_cmnd.h"
7711extern int scsi_dma_map(struct scsi_cmnd * ) ;
7712#line 149
7713extern void scsi_dma_unmap(struct scsi_cmnd * ) ;
7714#line 151
7715extern struct scsi_cmnd *scsi_allocate_command(gfp_t ) ;
7716#line 152
7717extern void scsi_free_command(gfp_t , struct scsi_cmnd * ) ;
7718#line 154 "include/scsi/scsi_cmnd.h"
7719__inline static unsigned int scsi_sg_count(struct scsi_cmnd *cmd )
7720{
7721
7722 {
7723#line 156
7724 return (cmd->sdb.table.nents);
7725}
7726}
7727#line 159 "include/scsi/scsi_cmnd.h"
7728__inline static struct scatterlist *scsi_sglist(struct scsi_cmnd *cmd )
7729{
7730
7731 {
7732#line 161
7733 return (cmd->sdb.table.sgl);
7734}
7735}
7736#line 332 "include/scsi/scsi.h"
7737extern char const *scsi_device_type(unsigned int ) ;
7738#line 762 "include/scsi/scsi_host.h"
7739extern struct Scsi_Host *scsi_host_alloc(struct scsi_host_template * , int ) ;
7740#line 763
7741extern int scsi_add_host_with_dma(struct Scsi_Host * , struct device * , struct device * ) ;
7742#line 766
7743extern void scsi_scan_host(struct Scsi_Host * ) ;
7744#line 768
7745extern void scsi_remove_host(struct Scsi_Host * ) ;
7746#line 770
7747extern void scsi_host_put(struct Scsi_Host * ) ;
7748#line 773
7749extern void scsi_cmd_get_serial(struct Scsi_Host * , struct scsi_cmnd * ) ;
7750#line 777 "include/scsi/scsi_host.h"
7751__inline static int scsi_add_host(struct Scsi_Host *host , struct device *dev )
7752{ int tmp ;
7753
7754 {
7755 {
7756#line 780
7757 tmp = scsi_add_host_with_dma(host, dev, dev);
7758 }
7759#line 780
7760 return (tmp);
7761}
7762}
7763#line 984 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/scsi/megaraid.h"
7764char const *megaraid_info(struct Scsi_Host *host ) ;
7765#line 986
7766static int mega_query_adapter(adapter_t *adapter ) ;
7767#line 987
7768static int issue_scb(adapter_t *adapter , scb_t *scb ) ;
7769#line 988
7770static int mega_setup_mailbox(adapter_t *adapter ) ;
7771#line 990
7772static int megaraid_queue(struct Scsi_Host *shost , struct scsi_cmnd *cmd ) ;
7773#line 991
7774static scb_t *mega_build_cmd(adapter_t *adapter , Scsi_Cmnd *cmd , int *busy ) ;
7775#line 992
7776static void __mega_runpendq(adapter_t *adapter ) ;
7777#line 993
7778static int issue_scb_block(adapter_t *adapter , u_char *raw_mbox ) ;
7779#line 995
7780static irqreturn_t megaraid_isr_memmapped(int irq , void *devp ) ;
7781#line 996
7782static irqreturn_t megaraid_isr_iomapped(int irq , void *devp ) ;
7783#line 998
7784static void mega_free_scb(adapter_t *adapter , scb_t *scb ) ;
7785#line 1000
7786static int megaraid_abort(Scsi_Cmnd *cmd ) ;
7787#line 1001
7788static int megaraid_reset(struct scsi_cmnd *cmd ) ;
7789#line 1002
7790static int megaraid_abort_and_reset(adapter_t *adapter , Scsi_Cmnd *cmd , int aor ) ;
7791#line 1003
7792static int megaraid_biosparam(struct scsi_device *sdev , struct block_device *bdev ,
7793 sector_t capacity , int *geom ) ;
7794#line 1006
7795static int mega_build_sglist(adapter_t *adapter , scb_t *scb , u32 *buf , u32 *len ) ;
7796#line 1008
7797static int __mega_busywait_mbox(adapter_t *adapter ) ;
7798#line 1009
7799static void mega_rundoneq(adapter_t *adapter ) ;
7800#line 1010
7801static void mega_cmd_done(adapter_t *adapter , u8 *completed , int nstatus , int status ) ;
7802#line 1011
7803__inline static void mega_free_sgl(adapter_t *adapter ) ;
7804#line 1012
7805static void mega_8_to_40ld(mraid_inquiry *inquiry , mega_inquiry3 *enquiry3 , mega_product_info *product_info ) ;
7806#line 1015
7807static int megadev_open(struct inode *inode , struct file *filep ) ;
7808#line 1016
7809static int megadev_ioctl(struct file *filep , unsigned int cmd , unsigned long arg ) ;
7810#line 1017
7811static int mega_m_to_n(void *arg , nitioctl_t *uioc ) ;
7812#line 1018
7813static int mega_n_to_m(void *arg , megacmd_t *mc ) ;
7814#line 1020
7815static int mega_init_scb(adapter_t *adapter ) ;
7816#line 1022
7817static int mega_is_bios_enabled(adapter_t *adapter ) ;
7818#line 1025
7819static int mega_print_inquiry(char *page , char *scsi_inq ) ;
7820#line 1026
7821static void mega_create_proc_entry(int index , struct proc_dir_entry *parent ) ;
7822#line 1027
7823static int proc_read_config(char *page , char **start , off_t offset , int count ,
7824 int *eof , void *data ) ;
7825#line 1028
7826static int proc_read_stat(char *page , char **start , off_t offset , int count , int *eof ,
7827 void *data ) ;
7828#line 1029
7829static int proc_read_mbox(char *page , char **start , off_t offset , int count , int *eof ,
7830 void *data ) ;
7831#line 1030
7832static int proc_rebuild_rate(char *page , char **start , off_t offset , int count ,
7833 int *eof , void *data ) ;
7834#line 1031
7835static int proc_battery(char *page , char **start , off_t offset , int count , int *eof ,
7836 void *data ) ;
7837#line 1032
7838static int proc_pdrv_ch0(char *page , char **start , off_t offset , int count , int *eof ,
7839 void *data ) ;
7840#line 1033
7841static int proc_pdrv_ch1(char *page , char **start , off_t offset , int count , int *eof ,
7842 void *data ) ;
7843#line 1034
7844static int proc_pdrv_ch2(char *page , char **start , off_t offset , int count , int *eof ,
7845 void *data ) ;
7846#line 1035
7847static int proc_pdrv_ch3(char *page , char **start , off_t offset , int count , int *eof ,
7848 void *data ) ;
7849#line 1036
7850static int proc_pdrv(adapter_t *adapter , char *page , int channel ) ;
7851#line 1037
7852static int proc_rdrv_10(char *page , char **start , off_t offset , int count , int *eof ,
7853 void *data ) ;
7854#line 1038
7855static int proc_rdrv_20(char *page , char **start , off_t offset , int count , int *eof ,
7856 void *data ) ;
7857#line 1039
7858static int proc_rdrv_30(char *page , char **start , off_t offset , int count , int *eof ,
7859 void *data ) ;
7860#line 1040
7861static int proc_rdrv_40(char *page , char **start , off_t offset , int count , int *eof ,
7862 void *data ) ;
7863#line 1041
7864static int proc_rdrv(adapter_t *adapter , char *page , int start , int end ) ;
7865#line 1043
7866static int mega_adapinq(adapter_t *adapter , dma_addr_t dma_handle ) ;
7867#line 1044
7868static int mega_internal_dev_inquiry(adapter_t *adapter , u8 ch , u8 tgt , dma_addr_t buf_dma_handle ) ;
7869#line 1047
7870static int mega_support_ext_cdb(adapter_t *adapter ) ;
7871#line 1048
7872static mega_passthru *mega_prepare_passthru(adapter_t *adapter , scb_t *scb , Scsi_Cmnd *cmd ,
7873 int channel , int target ) ;
7874#line 1050
7875static mega_ext_passthru *mega_prepare_extpassthru(adapter_t *adapter , scb_t *scb ,
7876 Scsi_Cmnd *cmd , int channel ,
7877 int target ) ;
7878#line 1052
7879static void mega_enum_raid_scsi(adapter_t *adapter ) ;
7880#line 1053
7881static void mega_get_boot_drv(adapter_t *adapter ) ;
7882#line 1054
7883static int mega_support_random_del(adapter_t *adapter ) ;
7884#line 1055
7885static int mega_del_logdrv(adapter_t *adapter , int logdrv ) ;
7886#line 1056
7887static int mega_do_del_logdrv(adapter_t *adapter , int logdrv ) ;
7888#line 1057
7889static void mega_get_max_sgl(adapter_t *adapter ) ;
7890#line 1058
7891static int mega_internal_command(adapter_t *adapter , megacmd_t *mc , mega_passthru *pthru ) ;
7892#line 1059
7893static void mega_internal_done(Scsi_Cmnd *scmd ) ;
7894#line 1060
7895static int mega_support_cluster(adapter_t *adapter ) ;
7896#line 73 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7897static struct mutex megadev_mutex = {{1}, {{{{0U}, 3735899821U, 4294967295U, (void *)1152921504606846975UL, {(struct lock_class_key *)0,
7898 {(struct lock_class *)0,
7899 (struct lock_class *)0},
7900 "megadev_mutex.wait_lock",
7901 0, 0UL}}}},
7902 {& megadev_mutex.wait_list, & megadev_mutex.wait_list}, (struct task_struct *)0,
7903 (char const *)0, (void *)(& megadev_mutex), {(struct lock_class_key *)0, {(struct lock_class *)0,
7904 (struct lock_class *)0},
7905 "megadev_mutex", 0, 0UL}};
7906#line 74 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7907static unsigned int max_cmd_per_lun = 63U;
7908#line 78 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7909static unsigned short max_sectors_per_io = (unsigned short)128;
7910#line 83 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7911static unsigned short max_mbox_busy_wait = (unsigned short)10;
7912#line 96 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7913static int hba_count ;
7914#line 97 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7915static adapter_t *hba_soft_state[32U] ;
7916#line 98 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7917static struct proc_dir_entry *mega_proc_dir_entry ;
7918#line 101 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7919static struct mega_hbas mega_hbas[32U] ;
7920#line 104
7921static long megadev_unlocked_ioctl(struct file *filep , unsigned int cmd , unsigned long arg ) ;
7922#line 109 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7923static struct file_operations const megadev_fops =
7924#line 109
7925 {& __this_module, & noop_llseek, (ssize_t (*)(struct file * , char * , size_t ,
7926 loff_t * ))0, (ssize_t (*)(struct file * ,
7927 char const * ,
7928 size_t ,
7929 loff_t * ))0,
7930 (ssize_t (*)(struct kiocb * , struct iovec const * , unsigned long , loff_t ))0,
7931 (ssize_t (*)(struct kiocb * , struct iovec const * , unsigned long , loff_t ))0,
7932 (int (*)(struct file * , void * , int (*)(void * , char const * , int , loff_t ,
7933 u64 , unsigned int ) ))0, (unsigned int (*)(struct file * ,
7934 struct poll_table_struct * ))0,
7935 & megadev_unlocked_ioctl, (long (*)(struct file * , unsigned int , unsigned long ))0,
7936 (int (*)(struct file * , struct vm_area_struct * ))0, & megadev_open, (int (*)(struct file * ,
7937 fl_owner_t ))0,
7938 (int (*)(struct inode * , struct file * ))0, (int (*)(struct file * , int ))0,
7939 (int (*)(struct kiocb * , int ))0, (int (*)(int , struct file * , int ))0,
7940 (int (*)(struct file * , int , struct file_lock * ))0, (ssize_t (*)(struct file * ,
7941 struct page * ,
7942 int , size_t ,
7943 loff_t * ,
7944 int ))0,
7945 (unsigned long (*)(struct file * , unsigned long , unsigned long , unsigned long ,
7946 unsigned long ))0, (int (*)(int ))0, (int (*)(struct file * ,
7947 int , struct file_lock * ))0,
7948 (ssize_t (*)(struct pipe_inode_info * , struct file * , loff_t * , size_t , unsigned int ))0,
7949 (ssize_t (*)(struct file * , loff_t * , struct pipe_inode_info * , size_t , unsigned int ))0,
7950 (int (*)(struct file * , long , struct file_lock ** ))0, (long (*)(struct file * ,
7951 int , loff_t ,
7952 loff_t ))0};
7953#line 121 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7954static struct mcontroller mcontroller[32U] ;
7955#line 124 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7956static u32 driver_ver = 33554432U;
7957#line 127 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7958static int major ;
7959#line 135 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7960static int trace_level ;
7961#line 144 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
7962static int mega_setup_mailbox(adapter_t *adapter )
7963{ unsigned long align ;
7964 void *tmp ;
7965 struct pci_dev *__cil_tmp4 ;
7966 dma_addr_t *__cil_tmp5 ;
7967 mbox64_t *__cil_tmp6 ;
7968 unsigned long __cil_tmp7 ;
7969 mbox64_t *__cil_tmp8 ;
7970 unsigned long __cil_tmp9 ;
7971 mbox64_t *__cil_tmp10 ;
7972 mbox_t *__cil_tmp11 ;
7973 mbox_t volatile *__cil_tmp12 ;
7974 unsigned long __cil_tmp13 ;
7975 unsigned long __cil_tmp14 ;
7976 unsigned long __cil_tmp15 ;
7977 mbox_t volatile *__cil_tmp16 ;
7978 unsigned long __cil_tmp17 ;
7979 unsigned long __cil_tmp18 ;
7980 mbox64_t *__cil_tmp19 ;
7981 mbox_t *__cil_tmp20 ;
7982 long __cil_tmp21 ;
7983 mbox_t volatile *__cil_tmp22 ;
7984 long __cil_tmp23 ;
7985 long __cil_tmp24 ;
7986 unsigned long long __cil_tmp25 ;
7987 dma_addr_t __cil_tmp26 ;
7988 dma_addr_t __cil_tmp27 ;
7989 u32 __cil_tmp28 ;
7990 long __cil_tmp29 ;
7991 long __cil_tmp30 ;
7992 dma_addr_t __cil_tmp31 ;
7993 unsigned char __cil_tmp32 ;
7994 int __cil_tmp33 ;
7995 unsigned char __cil_tmp34 ;
7996 struct Scsi_Host *__cil_tmp35 ;
7997 unsigned long __cil_tmp36 ;
7998 unsigned int __cil_tmp37 ;
7999 unsigned int __cil_tmp38 ;
8000 int __cil_tmp39 ;
8001 dma_addr_t __cil_tmp40 ;
8002 dma_addr_t __cil_tmp41 ;
8003 unsigned char __cil_tmp42 ;
8004 int __cil_tmp43 ;
8005 unsigned char __cil_tmp44 ;
8006 struct Scsi_Host *__cil_tmp45 ;
8007 unsigned long __cil_tmp46 ;
8008 unsigned int __cil_tmp47 ;
8009 unsigned int __cil_tmp48 ;
8010 int __cil_tmp49 ;
8011 dma_addr_t __cil_tmp50 ;
8012 dma_addr_t __cil_tmp51 ;
8013 unsigned char __cil_tmp52 ;
8014 int __cil_tmp53 ;
8015 unsigned char __cil_tmp54 ;
8016 struct Scsi_Host *__cil_tmp55 ;
8017 unsigned long __cil_tmp56 ;
8018 unsigned int __cil_tmp57 ;
8019 unsigned int __cil_tmp58 ;
8020 int __cil_tmp59 ;
8021 dma_addr_t __cil_tmp60 ;
8022 dma_addr_t __cil_tmp61 ;
8023 unsigned char __cil_tmp62 ;
8024 int __cil_tmp63 ;
8025 unsigned char __cil_tmp64 ;
8026 struct Scsi_Host *__cil_tmp65 ;
8027 unsigned long __cil_tmp66 ;
8028 unsigned int __cil_tmp67 ;
8029 unsigned int __cil_tmp68 ;
8030 int __cil_tmp69 ;
8031 struct Scsi_Host *__cil_tmp70 ;
8032 unsigned long __cil_tmp71 ;
8033 unsigned int __cil_tmp72 ;
8034 unsigned int __cil_tmp73 ;
8035 int __cil_tmp74 ;
8036 unsigned long __cil_tmp75 ;
8037 int __cil_tmp76 ;
8038 unsigned long __cil_tmp77 ;
8039 unsigned int __cil_tmp78 ;
8040 unsigned int __cil_tmp79 ;
8041 int __cil_tmp80 ;
8042
8043 {
8044 {
8045#line 148
8046 __cil_tmp4 = adapter->dev;
8047#line 148
8048 __cil_tmp5 = & adapter->una_mbox64_dma;
8049#line 148
8050 tmp = pci_alloc_consistent(__cil_tmp4, 74UL, __cil_tmp5);
8051#line 148
8052 adapter->una_mbox64 = (mbox64_t *)tmp;
8053 }
8054 {
8055#line 151
8056 __cil_tmp6 = (mbox64_t *)0;
8057#line 151
8058 __cil_tmp7 = (unsigned long )__cil_tmp6;
8059#line 151
8060 __cil_tmp8 = adapter->una_mbox64;
8061#line 151
8062 __cil_tmp9 = (unsigned long )__cil_tmp8;
8063#line 151
8064 if (__cil_tmp9 == __cil_tmp7) {
8065#line 151
8066 return (-1);
8067 } else {
8068
8069 }
8070 }
8071#line 153
8072 __cil_tmp10 = adapter->una_mbox64;
8073#line 153
8074 __cil_tmp11 = & __cil_tmp10->mbox;
8075#line 153
8076 adapter->mbox = (mbox_t volatile *)__cil_tmp11;
8077#line 155
8078 __cil_tmp12 = adapter->mbox;
8079#line 155
8080 __cil_tmp13 = (unsigned long )__cil_tmp12;
8081#line 155
8082 __cil_tmp14 = __cil_tmp13 + 15UL;
8083#line 155
8084 __cil_tmp15 = __cil_tmp14 & 1152921504606846960UL;
8085#line 155
8086 adapter->mbox = (mbox_t volatile *)__cil_tmp15;
8087#line 158
8088 __cil_tmp16 = adapter->mbox;
8089#line 158
8090 __cil_tmp17 = (unsigned long )__cil_tmp16;
8091#line 158
8092 __cil_tmp18 = __cil_tmp17 - 8UL;
8093#line 158
8094 adapter->mbox64 = (mbox64_t volatile *)__cil_tmp18;
8095#line 160
8096 __cil_tmp19 = adapter->una_mbox64;
8097#line 160
8098 __cil_tmp20 = & __cil_tmp19->mbox;
8099#line 160
8100 __cil_tmp21 = (long )__cil_tmp20;
8101#line 160
8102 __cil_tmp22 = adapter->mbox;
8103#line 160
8104 __cil_tmp23 = (long )__cil_tmp22;
8105#line 160
8106 __cil_tmp24 = __cil_tmp23 - __cil_tmp21;
8107#line 160
8108 align = (unsigned long )__cil_tmp24;
8109#line 162
8110 __cil_tmp25 = (unsigned long long )align;
8111#line 162
8112 __cil_tmp26 = adapter->una_mbox64_dma;
8113#line 162
8114 __cil_tmp27 = __cil_tmp26 + __cil_tmp25;
8115#line 162
8116 adapter->mbox_dma = __cil_tmp27 + 8ULL;
8117 {
8118#line 167
8119 __cil_tmp28 = adapter->flag;
8120#line 167
8121 __cil_tmp29 = (long )__cil_tmp28;
8122#line 167
8123 __cil_tmp30 = __cil_tmp29 & 268435456L;
8124#line 167
8125 if (__cil_tmp30 != 0L) {
8126 {
8127#line 169
8128 __cil_tmp31 = adapter->mbox_dma;
8129#line 169
8130 __cil_tmp32 = (unsigned char )__cil_tmp31;
8131#line 169
8132 __cil_tmp33 = (int )__cil_tmp32;
8133#line 169
8134 __cil_tmp34 = (unsigned char )__cil_tmp33;
8135#line 169
8136 __cil_tmp35 = adapter->host;
8137#line 169
8138 __cil_tmp36 = __cil_tmp35->io_port;
8139#line 169
8140 __cil_tmp37 = (unsigned int )__cil_tmp36;
8141#line 169
8142 __cil_tmp38 = __cil_tmp37 + 4U;
8143#line 169
8144 __cil_tmp39 = (int )__cil_tmp38;
8145#line 169
8146 outb(__cil_tmp34, __cil_tmp39);
8147#line 172
8148 __cil_tmp40 = adapter->mbox_dma;
8149#line 172
8150 __cil_tmp41 = __cil_tmp40 >> 8;
8151#line 172
8152 __cil_tmp42 = (unsigned char )__cil_tmp41;
8153#line 172
8154 __cil_tmp43 = (int )__cil_tmp42;
8155#line 172
8156 __cil_tmp44 = (unsigned char )__cil_tmp43;
8157#line 172
8158 __cil_tmp45 = adapter->host;
8159#line 172
8160 __cil_tmp46 = __cil_tmp45->io_port;
8161#line 172
8162 __cil_tmp47 = (unsigned int )__cil_tmp46;
8163#line 172
8164 __cil_tmp48 = __cil_tmp47 + 5U;
8165#line 172
8166 __cil_tmp49 = (int )__cil_tmp48;
8167#line 172
8168 outb(__cil_tmp44, __cil_tmp49);
8169#line 175
8170 __cil_tmp50 = adapter->mbox_dma;
8171#line 175
8172 __cil_tmp51 = __cil_tmp50 >> 16;
8173#line 175
8174 __cil_tmp52 = (unsigned char )__cil_tmp51;
8175#line 175
8176 __cil_tmp53 = (int )__cil_tmp52;
8177#line 175
8178 __cil_tmp54 = (unsigned char )__cil_tmp53;
8179#line 175
8180 __cil_tmp55 = adapter->host;
8181#line 175
8182 __cil_tmp56 = __cil_tmp55->io_port;
8183#line 175
8184 __cil_tmp57 = (unsigned int )__cil_tmp56;
8185#line 175
8186 __cil_tmp58 = __cil_tmp57 + 6U;
8187#line 175
8188 __cil_tmp59 = (int )__cil_tmp58;
8189#line 175
8190 outb(__cil_tmp54, __cil_tmp59);
8191#line 178
8192 __cil_tmp60 = adapter->mbox_dma;
8193#line 178
8194 __cil_tmp61 = __cil_tmp60 >> 24;
8195#line 178
8196 __cil_tmp62 = (unsigned char )__cil_tmp61;
8197#line 178
8198 __cil_tmp63 = (int )__cil_tmp62;
8199#line 178
8200 __cil_tmp64 = (unsigned char )__cil_tmp63;
8201#line 178
8202 __cil_tmp65 = adapter->host;
8203#line 178
8204 __cil_tmp66 = __cil_tmp65->io_port;
8205#line 178
8206 __cil_tmp67 = (unsigned int )__cil_tmp66;
8207#line 178
8208 __cil_tmp68 = __cil_tmp67 + 7U;
8209#line 178
8210 __cil_tmp69 = (int )__cil_tmp68;
8211#line 178
8212 outb(__cil_tmp64, __cil_tmp69);
8213#line 181
8214 __cil_tmp70 = adapter->host;
8215#line 181
8216 __cil_tmp71 = __cil_tmp70->io_port;
8217#line 181
8218 __cil_tmp72 = (unsigned int )__cil_tmp71;
8219#line 181
8220 __cil_tmp73 = __cil_tmp72 + 11U;
8221#line 181
8222 __cil_tmp74 = (int )__cil_tmp73;
8223#line 181
8224 outb((unsigned char)0, __cil_tmp74);
8225#line 184
8226 __cil_tmp75 = adapter->base;
8227#line 184
8228 __cil_tmp76 = (int )__cil_tmp75;
8229#line 184
8230 outb_p((unsigned char)8, __cil_tmp76);
8231#line 186
8232 __cil_tmp77 = adapter->base;
8233#line 186
8234 __cil_tmp78 = (unsigned int )__cil_tmp77;
8235#line 186
8236 __cil_tmp79 = __cil_tmp78 + 1U;
8237#line 186
8238 __cil_tmp80 = (int )__cil_tmp79;
8239#line 186
8240 outb_p((unsigned char)192, __cil_tmp80);
8241 }
8242 } else {
8243
8244 }
8245 }
8246#line 189
8247 return (0);
8248}
8249}
8250#line 201 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
8251static int mega_query_adapter(adapter_t *adapter )
8252{ dma_addr_t prod_info_dma_handle ;
8253 mega_inquiry3 *inquiry3 ;
8254 u8 raw_mbox[15U] ;
8255 mbox_t *mbox ;
8256 int retval ;
8257 mraid_ext_inquiry *ext_inq ;
8258 mraid_inquiry *inq ;
8259 dma_addr_t dma_handle ;
8260 void *tmp ;
8261 size_t __len ;
8262 void *__ret ;
8263 size_t __len___0 ;
8264 void *__ret___0 ;
8265 u8 *__cil_tmp15 ;
8266 void *__cil_tmp16 ;
8267 struct mbox_out *__cil_tmp17 ;
8268 void *__cil_tmp18 ;
8269 dma_addr_t __cil_tmp19 ;
8270 u8 *__cil_tmp20 ;
8271 u_char *__cil_tmp21 ;
8272 struct pci_dev *__cil_tmp22 ;
8273 mraid_ext_inquiry *__cil_tmp23 ;
8274 unsigned long __cil_tmp24 ;
8275 unsigned long __cil_tmp25 ;
8276 u_char *__cil_tmp26 ;
8277 mega_product_info *__cil_tmp27 ;
8278 struct pci_dev *__cil_tmp28 ;
8279 void *__cil_tmp29 ;
8280 u32 __cil_tmp30 ;
8281 struct pci_dev *__cil_tmp31 ;
8282 mega_product_info *__cil_tmp32 ;
8283 void *__cil_tmp33 ;
8284 u_char *__cil_tmp34 ;
8285 struct pci_dev *__cil_tmp35 ;
8286 struct Scsi_Host *__cil_tmp36 ;
8287 u8 __cil_tmp37 ;
8288 int __cil_tmp38 ;
8289 int __cil_tmp39 ;
8290 struct Scsi_Host *__cil_tmp40 ;
8291 struct Scsi_Host *__cil_tmp41 ;
8292 struct Scsi_Host *__cil_tmp42 ;
8293 u8 __cil_tmp43 ;
8294 unsigned int __cil_tmp44 ;
8295 struct Scsi_Host *__cil_tmp45 ;
8296 u8 __cil_tmp46 ;
8297 int __cil_tmp47 ;
8298 struct Scsi_Host *__cil_tmp48 ;
8299 u8 __cil_tmp49 ;
8300 u16 __cil_tmp50 ;
8301 unsigned int __cil_tmp51 ;
8302 u8 (*__cil_tmp52)[7U] ;
8303 char *__cil_tmp53 ;
8304 u8 __cil_tmp54 ;
8305 int __cil_tmp55 ;
8306 u8 __cil_tmp56 ;
8307 int __cil_tmp57 ;
8308 int __cil_tmp58 ;
8309 u8 __cil_tmp59 ;
8310 int __cil_tmp60 ;
8311 int __cil_tmp61 ;
8312 u8 __cil_tmp62 ;
8313 int __cil_tmp63 ;
8314 int __cil_tmp64 ;
8315 u8 __cil_tmp65 ;
8316 int __cil_tmp66 ;
8317 int __cil_tmp67 ;
8318 u8 (*__cil_tmp68)[7U] ;
8319 char *__cil_tmp69 ;
8320 u8 __cil_tmp70 ;
8321 int __cil_tmp71 ;
8322 u8 __cil_tmp72 ;
8323 int __cil_tmp73 ;
8324 int __cil_tmp74 ;
8325 u8 __cil_tmp75 ;
8326 int __cil_tmp76 ;
8327 int __cil_tmp77 ;
8328 u8 __cil_tmp78 ;
8329 int __cil_tmp79 ;
8330 int __cil_tmp80 ;
8331 u8 __cil_tmp81 ;
8332 int __cil_tmp82 ;
8333 int __cil_tmp83 ;
8334 u8 (*__cil_tmp84)[7U] ;
8335 void *__cil_tmp85 ;
8336 u8 (*__cil_tmp86)[16U] ;
8337 void const *__cil_tmp87 ;
8338 u8 (*__cil_tmp88)[7U] ;
8339 void *__cil_tmp89 ;
8340 u8 (*__cil_tmp90)[16U] ;
8341 void const *__cil_tmp91 ;
8342 u8 (*__cil_tmp92)[7U] ;
8343 void *__cil_tmp93 ;
8344 u8 (*__cil_tmp94)[16U] ;
8345 void const *__cil_tmp95 ;
8346 u8 (*__cil_tmp96)[7U] ;
8347 void *__cil_tmp97 ;
8348 u8 (*__cil_tmp98)[16U] ;
8349 void const *__cil_tmp99 ;
8350 u8 (*__cil_tmp100)[7U] ;
8351 u8 *__cil_tmp101 ;
8352 u8 (*__cil_tmp102)[7U] ;
8353 u8 *__cil_tmp103 ;
8354 u8 __cil_tmp104 ;
8355 int __cil_tmp105 ;
8356 int __cil_tmp106 ;
8357
8358 {
8359 {
8360#line 211
8361 mbox = (mbox_t *)(& raw_mbox);
8362#line 213
8363 __cil_tmp15 = adapter->mega_buffer;
8364#line 213
8365 __cil_tmp16 = (void *)__cil_tmp15;
8366#line 213
8367 memset(__cil_tmp16, 0, 2048UL);
8368#line 214
8369 __cil_tmp17 = & mbox->m_out;
8370#line 214
8371 __cil_tmp18 = (void *)__cil_tmp17;
8372#line 214
8373 memset(__cil_tmp18, 0, 15UL);
8374#line 221
8375 __cil_tmp19 = adapter->buf_dma_handle;
8376#line 221
8377 mbox->m_out.xferaddr = (unsigned int )__cil_tmp19;
8378#line 223
8379 __cil_tmp20 = adapter->mega_buffer;
8380#line 223
8381 inquiry3 = (mega_inquiry3 *)__cil_tmp20;
8382#line 225
8383 raw_mbox[0] = (u8 )161U;
8384#line 226
8385 raw_mbox[2] = (u8 )15U;
8386#line 227
8387 raw_mbox[3] = (u8 )2U;
8388#line 230
8389 __cil_tmp21 = (u_char *)(& raw_mbox);
8390#line 230
8391 retval = issue_scb_block(adapter, __cil_tmp21);
8392 }
8393#line 230
8394 if (retval != 0) {
8395 {
8396#line 237
8397 __cil_tmp22 = adapter->dev;
8398#line 237
8399 tmp = pci_alloc_consistent(__cil_tmp22, 166UL, & dma_handle);
8400#line 237
8401 ext_inq = (mraid_ext_inquiry *)tmp;
8402 }
8403 {
8404#line 240
8405 __cil_tmp23 = (mraid_ext_inquiry *)0;
8406#line 240
8407 __cil_tmp24 = (unsigned long )__cil_tmp23;
8408#line 240
8409 __cil_tmp25 = (unsigned long )ext_inq;
8410#line 240
8411 if (__cil_tmp25 == __cil_tmp24) {
8412#line 240
8413 return (-1);
8414 } else {
8415
8416 }
8417 }
8418 {
8419#line 242
8420 inq = & ext_inq->raid_inq;
8421#line 244
8422 mbox->m_out.xferaddr = (unsigned int )dma_handle;
8423#line 247
8424 mbox->m_out.cmd = (u8 )4U;
8425#line 249
8426 __cil_tmp26 = (u_char *)(& raw_mbox);
8427#line 249
8428 issue_scb_block(adapter, __cil_tmp26);
8429#line 255
8430 __cil_tmp27 = & adapter->product_info;
8431#line 255
8432 mega_8_to_40ld(inq, inquiry3, __cil_tmp27);
8433#line 258
8434 __cil_tmp28 = adapter->dev;
8435#line 258
8436 __cil_tmp29 = (void *)ext_inq;
8437#line 258
8438 pci_free_consistent(__cil_tmp28, 166UL, __cil_tmp29, dma_handle);
8439 }
8440 } else {
8441 {
8442#line 262
8443 __cil_tmp30 = adapter->flag;
8444#line 262
8445 adapter->flag = __cil_tmp30 | 134217728U;
8446#line 268
8447 __cil_tmp31 = adapter->dev;
8448#line 268
8449 __cil_tmp32 = & adapter->product_info;
8450#line 268
8451 __cil_tmp33 = (void *)__cil_tmp32;
8452#line 268
8453 prod_info_dma_handle = pci_map_single(__cil_tmp31, __cil_tmp33, 1024UL, 2);
8454#line 272
8455 mbox->m_out.xferaddr = (u32 )prod_info_dma_handle;
8456#line 274
8457 raw_mbox[0] = (u8 )161U;
8458#line 275
8459 raw_mbox[2] = (u8 )14U;
8460#line 277
8461 __cil_tmp34 = (u_char *)(& raw_mbox);
8462#line 277
8463 retval = issue_scb_block(adapter, __cil_tmp34);
8464 }
8465#line 277
8466 if (retval != 0) {
8467 {
8468#line 278
8469 printk("<4>megaraid: Product_info cmd failed with error: %d\n", retval);
8470 }
8471 } else {
8472
8473 }
8474 {
8475#line 282
8476 __cil_tmp35 = adapter->dev;
8477#line 282
8478 pci_unmap_single(__cil_tmp35, prod_info_dma_handle, 1024UL, 2);
8479 }
8480 }
8481#line 290
8482 __cil_tmp36 = adapter->host;
8483#line 290
8484 __cil_tmp37 = adapter->product_info.nchannels;
8485#line 290
8486 __cil_tmp38 = (int )__cil_tmp37;
8487#line 290
8488 __cil_tmp39 = __cil_tmp38 + 3;
8489#line 290
8490 __cil_tmp36->max_channel = (unsigned int )__cil_tmp39;
8491#line 293
8492 __cil_tmp40 = adapter->host;
8493#line 293
8494 __cil_tmp40->max_id = 16U;
8495#line 295
8496 __cil_tmp41 = adapter->host;
8497#line 295
8498 __cil_tmp41->max_lun = 7U;
8499#line 297
8500 __cil_tmp42 = adapter->host;
8501#line 297
8502 __cil_tmp42->cmd_per_lun = (short )max_cmd_per_lun;
8503#line 299
8504 adapter->numldrv = inquiry3->num_ldrv;
8505#line 301
8506 adapter->max_cmds = adapter->product_info.max_commands;
8507 {
8508#line 303
8509 __cil_tmp43 = adapter->max_cmds;
8510#line 303
8511 __cil_tmp44 = (unsigned int )__cil_tmp43;
8512#line 303
8513 if (__cil_tmp44 > 126U) {
8514#line 304
8515 adapter->max_cmds = (u8 )126U;
8516 } else {
8517
8518 }
8519 }
8520 {
8521#line 306
8522 __cil_tmp45 = adapter->host;
8523#line 306
8524 __cil_tmp46 = adapter->max_cmds;
8525#line 306
8526 __cil_tmp47 = (int )__cil_tmp46;
8527#line 306
8528 __cil_tmp45->can_queue = __cil_tmp47 + -1;
8529#line 312
8530 mega_get_max_sgl(adapter);
8531#line 314
8532 __cil_tmp48 = adapter->host;
8533#line 314
8534 __cil_tmp49 = adapter->sglen;
8535#line 314
8536 __cil_tmp48->sg_tablesize = (unsigned short )__cil_tmp49;
8537 }
8538 {
8539#line 318
8540 __cil_tmp50 = adapter->product_info.subsysvid;
8541#line 318
8542 __cil_tmp51 = (unsigned int )__cil_tmp50;
8543#line 318
8544 if (__cil_tmp51 == 4156U) {
8545 {
8546#line 319
8547 __cil_tmp52 = & adapter->fw_version;
8548#line 319
8549 __cil_tmp53 = (char *)__cil_tmp52;
8550#line 319
8551 __cil_tmp54 = adapter->product_info.fw_version[2];
8552#line 319
8553 __cil_tmp55 = (int )__cil_tmp54;
8554#line 319
8555 __cil_tmp56 = adapter->product_info.fw_version[1];
8556#line 319
8557 __cil_tmp57 = (int )__cil_tmp56;
8558#line 319
8559 __cil_tmp58 = __cil_tmp57 >> 8;
8560#line 319
8561 __cil_tmp59 = adapter->product_info.fw_version[1];
8562#line 319
8563 __cil_tmp60 = (int )__cil_tmp59;
8564#line 319
8565 __cil_tmp61 = __cil_tmp60 & 15;
8566#line 319
8567 __cil_tmp62 = adapter->product_info.fw_version[0];
8568#line 319
8569 __cil_tmp63 = (int )__cil_tmp62;
8570#line 319
8571 __cil_tmp64 = __cil_tmp63 >> 8;
8572#line 319
8573 __cil_tmp65 = adapter->product_info.fw_version[0];
8574#line 319
8575 __cil_tmp66 = (int )__cil_tmp65;
8576#line 319
8577 __cil_tmp67 = __cil_tmp66 & 15;
8578#line 319
8579 sprintf(__cil_tmp53, "%c%d%d.%d%d", __cil_tmp55, __cil_tmp58, __cil_tmp61, __cil_tmp64,
8580 __cil_tmp67);
8581#line 325
8582 __cil_tmp68 = & adapter->bios_version;
8583#line 325
8584 __cil_tmp69 = (char *)__cil_tmp68;
8585#line 325
8586 __cil_tmp70 = adapter->product_info.bios_version[2];
8587#line 325
8588 __cil_tmp71 = (int )__cil_tmp70;
8589#line 325
8590 __cil_tmp72 = adapter->product_info.bios_version[1];
8591#line 325
8592 __cil_tmp73 = (int )__cil_tmp72;
8593#line 325
8594 __cil_tmp74 = __cil_tmp73 >> 8;
8595#line 325
8596 __cil_tmp75 = adapter->product_info.bios_version[1];
8597#line 325
8598 __cil_tmp76 = (int )__cil_tmp75;
8599#line 325
8600 __cil_tmp77 = __cil_tmp76 & 15;
8601#line 325
8602 __cil_tmp78 = adapter->product_info.bios_version[0];
8603#line 325
8604 __cil_tmp79 = (int )__cil_tmp78;
8605#line 325
8606 __cil_tmp80 = __cil_tmp79 >> 8;
8607#line 325
8608 __cil_tmp81 = adapter->product_info.bios_version[0];
8609#line 325
8610 __cil_tmp82 = (int )__cil_tmp81;
8611#line 325
8612 __cil_tmp83 = __cil_tmp82 & 15;
8613#line 325
8614 sprintf(__cil_tmp69, "%c%d%d.%d%d", __cil_tmp71, __cil_tmp74, __cil_tmp77, __cil_tmp80,
8615 __cil_tmp83);
8616 }
8617 } else {
8618#line 332
8619 __len = 4UL;
8620#line 332
8621 if (__len > 63UL) {
8622 {
8623#line 332
8624 __cil_tmp84 = & adapter->fw_version;
8625#line 332
8626 __cil_tmp85 = (void *)__cil_tmp84;
8627#line 332
8628 __cil_tmp86 = & adapter->product_info.fw_version;
8629#line 332
8630 __cil_tmp87 = (void const *)__cil_tmp86;
8631#line 332
8632 __ret = __memcpy(__cil_tmp85, __cil_tmp87, __len);
8633 }
8634 } else {
8635 {
8636#line 332
8637 __cil_tmp88 = & adapter->fw_version;
8638#line 332
8639 __cil_tmp89 = (void *)__cil_tmp88;
8640#line 332
8641 __cil_tmp90 = & adapter->product_info.fw_version;
8642#line 332
8643 __cil_tmp91 = (void const *)__cil_tmp90;
8644#line 332
8645 __ret = __builtin_memcpy(__cil_tmp89, __cil_tmp91, __len);
8646 }
8647 }
8648#line 334
8649 adapter->fw_version[4] = (u8 )0U;
8650#line 336
8651 __len___0 = 4UL;
8652#line 336
8653 if (__len___0 > 63UL) {
8654 {
8655#line 336
8656 __cil_tmp92 = & adapter->bios_version;
8657#line 336
8658 __cil_tmp93 = (void *)__cil_tmp92;
8659#line 336
8660 __cil_tmp94 = & adapter->product_info.bios_version;
8661#line 336
8662 __cil_tmp95 = (void const *)__cil_tmp94;
8663#line 336
8664 __ret___0 = __memcpy(__cil_tmp93, __cil_tmp95, __len___0);
8665 }
8666 } else {
8667 {
8668#line 336
8669 __cil_tmp96 = & adapter->bios_version;
8670#line 336
8671 __cil_tmp97 = (void *)__cil_tmp96;
8672#line 336
8673 __cil_tmp98 = & adapter->product_info.bios_version;
8674#line 336
8675 __cil_tmp99 = (void const *)__cil_tmp98;
8676#line 336
8677 __ret___0 = __builtin_memcpy(__cil_tmp97, __cil_tmp99, __len___0);
8678 }
8679 }
8680#line 339
8681 adapter->bios_version[4] = (u8 )0U;
8682 }
8683 }
8684 {
8685#line 342
8686 __cil_tmp100 = & adapter->fw_version;
8687#line 342
8688 __cil_tmp101 = (u8 *)__cil_tmp100;
8689#line 342
8690 __cil_tmp102 = & adapter->bios_version;
8691#line 342
8692 __cil_tmp103 = (u8 *)__cil_tmp102;
8693#line 342
8694 __cil_tmp104 = adapter->numldrv;
8695#line 342
8696 __cil_tmp105 = (int )__cil_tmp104;
8697#line 342
8698 printk("<5>megaraid: [%s:%s] detected %d logical drives.\n", __cil_tmp101, __cil_tmp103,
8699 __cil_tmp105);
8700#line 348
8701 adapter->support_ext_cdb = mega_support_ext_cdb(adapter);
8702 }
8703 {
8704#line 349
8705 __cil_tmp106 = adapter->support_ext_cdb;
8706#line 349
8707 if (__cil_tmp106 != 0) {
8708 {
8709#line 350
8710 printk("<5>megaraid: supports extended CDBs.\n");
8711 }
8712 } else {
8713
8714 }
8715 }
8716#line 353
8717 return (0);
8718}
8719}
8720#line 363 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
8721__inline static void mega_runpendq(adapter_t *adapter )
8722{ int tmp ;
8723 struct list_head *__cil_tmp3 ;
8724 struct list_head const *__cil_tmp4 ;
8725
8726 {
8727 {
8728#line 365
8729 __cil_tmp3 = & adapter->pending_list;
8730#line 365
8731 __cil_tmp4 = (struct list_head const *)__cil_tmp3;
8732#line 365
8733 tmp = list_empty(__cil_tmp4);
8734 }
8735#line 365
8736 if (tmp == 0) {
8737 {
8738#line 366
8739 __mega_runpendq(adapter);
8740 }
8741 } else {
8742
8743 }
8744#line 367
8745 return;
8746}
8747}
8748#line 377 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
8749static int megaraid_queue_lck(Scsi_Cmnd *scmd , void (*done)(Scsi_Cmnd * ) )
8750{ adapter_t *adapter ;
8751 scb_t *scb ;
8752 int busy ;
8753 unsigned long flags ;
8754 raw_spinlock_t *tmp ;
8755 int tmp___0 ;
8756 struct scsi_device *__cil_tmp9 ;
8757 struct Scsi_Host *__cil_tmp10 ;
8758 unsigned long (*__cil_tmp11)[0U] ;
8759 spinlock_t *__cil_tmp12 ;
8760 scb_t *__cil_tmp13 ;
8761 unsigned long __cil_tmp14 ;
8762 unsigned long __cil_tmp15 ;
8763 u32 __cil_tmp16 ;
8764 struct list_head *__cil_tmp17 ;
8765 struct list_head *__cil_tmp18 ;
8766 atomic_t *__cil_tmp19 ;
8767 atomic_t const *__cil_tmp20 ;
8768 spinlock_t *__cil_tmp21 ;
8769
8770 {
8771 {
8772#line 381
8773 busy = 0;
8774#line 384
8775 __cil_tmp9 = scmd->device;
8776#line 384
8777 __cil_tmp10 = __cil_tmp9->host;
8778#line 384
8779 __cil_tmp11 = & __cil_tmp10->hostdata;
8780#line 384
8781 adapter = (adapter_t *)__cil_tmp11;
8782#line 386
8783 scmd->scsi_done = done;
8784#line 398
8785 __cil_tmp12 = & adapter->lock;
8786#line 398
8787 tmp = spinlock_check(__cil_tmp12);
8788#line 398
8789 flags = _raw_spin_lock_irqsave(tmp);
8790#line 399
8791 scb = mega_build_cmd(adapter, scmd, & busy);
8792 }
8793 {
8794#line 400
8795 __cil_tmp13 = (scb_t *)0;
8796#line 400
8797 __cil_tmp14 = (unsigned long )__cil_tmp13;
8798#line 400
8799 __cil_tmp15 = (unsigned long )scb;
8800#line 400
8801 if (__cil_tmp15 == __cil_tmp14) {
8802#line 401
8803 goto out;
8804 } else {
8805
8806 }
8807 }
8808 {
8809#line 403
8810 __cil_tmp16 = scb->state;
8811#line 403
8812 scb->state = __cil_tmp16 | 2U;
8813#line 404
8814 __cil_tmp17 = & scb->list;
8815#line 404
8816 __cil_tmp18 = & adapter->pending_list;
8817#line 404
8818 list_add_tail(__cil_tmp17, __cil_tmp18);
8819#line 411
8820 __cil_tmp19 = & adapter->quiescent;
8821#line 411
8822 __cil_tmp20 = (atomic_t const *)__cil_tmp19;
8823#line 411
8824 tmp___0 = atomic_read(__cil_tmp20);
8825 }
8826#line 411
8827 if (tmp___0 == 0) {
8828 {
8829#line 412
8830 mega_runpendq(adapter);
8831 }
8832 } else {
8833
8834 }
8835#line 414
8836 busy = 0;
8837 out:
8838 {
8839#line 416
8840 __cil_tmp21 = & adapter->lock;
8841#line 416
8842 spin_unlock_irqrestore(__cil_tmp21, flags);
8843 }
8844#line 417
8845 return (busy);
8846}
8847}
8848#line 420 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
8849static int megaraid_queue(struct Scsi_Host *shost , struct scsi_cmnd *cmd )
8850{ unsigned long irq_flags ;
8851 int rc ;
8852 raw_spinlock_t *tmp ;
8853 spinlock_t *__cil_tmp6 ;
8854 void (*__cil_tmp7)(struct scsi_cmnd * ) ;
8855 spinlock_t *__cil_tmp8 ;
8856
8857 {
8858 {
8859#line 420
8860 __cil_tmp6 = shost->host_lock;
8861#line 420
8862 tmp = spinlock_check(__cil_tmp6);
8863#line 420
8864 irq_flags = _raw_spin_lock_irqsave(tmp);
8865#line 420
8866 scsi_cmd_get_serial(shost, cmd);
8867#line 420
8868 __cil_tmp7 = cmd->scsi_done;
8869#line 420
8870 rc = megaraid_queue_lck(cmd, __cil_tmp7);
8871#line 420
8872 __cil_tmp8 = shost->host_lock;
8873#line 420
8874 spin_unlock_irqrestore(__cil_tmp8, irq_flags);
8875 }
8876#line 420
8877 return (rc);
8878}
8879}
8880#line 431 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
8881__inline static scb_t *mega_allocate_scb(adapter_t *adapter , Scsi_Cmnd *cmd )
8882{ struct list_head *head ;
8883 scb_t *scb ;
8884 struct list_head const *__mptr ;
8885 int tmp ;
8886 struct list_head const *__cil_tmp7 ;
8887 struct list_head *__cil_tmp8 ;
8888 scb_t *__cil_tmp9 ;
8889 struct list_head *__cil_tmp10 ;
8890
8891 {
8892 {
8893#line 433
8894 head = & adapter->free_list;
8895#line 437
8896 __cil_tmp7 = (struct list_head const *)head;
8897#line 437
8898 tmp = list_empty(__cil_tmp7);
8899 }
8900#line 437
8901 if (tmp == 0) {
8902 {
8903#line 439
8904 __cil_tmp8 = head->next;
8905#line 439
8906 __mptr = (struct list_head const *)__cil_tmp8;
8907#line 439
8908 __cil_tmp9 = (scb_t *)__mptr;
8909#line 439
8910 scb = __cil_tmp9 + 1152921504606846968UL;
8911#line 441
8912 __cil_tmp10 = head->next;
8913#line 441
8914 list_del_init(__cil_tmp10);
8915#line 443
8916 scb->state = 1U;
8917#line 444
8918 scb->cmd = cmd;
8919#line 445
8920 scb->dma_type = 65535U;
8921 }
8922#line 447
8923 return (scb);
8924 } else {
8925
8926 }
8927#line 450
8928 return ((scb_t *)0);
8929}
8930}
8931#line 463 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
8932__inline static int mega_get_ldrv_num(adapter_t *adapter , Scsi_Cmnd *cmd , int channel )
8933{ int tgt ;
8934 int ldrv_num ;
8935 struct scsi_device *__cil_tmp6 ;
8936 unsigned int __cil_tmp7 ;
8937 int __cil_tmp8 ;
8938 int __cil_tmp9 ;
8939 int __cil_tmp10 ;
8940 int __cil_tmp11 ;
8941 int __cil_tmp12 ;
8942 int __cil_tmp13 ;
8943 unsigned char *__cil_tmp14 ;
8944 unsigned char __cil_tmp15 ;
8945 int __cil_tmp16 ;
8946 unsigned char *__cil_tmp17 ;
8947 unsigned char __cil_tmp18 ;
8948 int __cil_tmp19 ;
8949 unsigned char *__cil_tmp20 ;
8950 unsigned char __cil_tmp21 ;
8951 int __cil_tmp22 ;
8952 unsigned char *__cil_tmp23 ;
8953 unsigned char __cil_tmp24 ;
8954 int __cil_tmp25 ;
8955
8956 {
8957#line 468
8958 __cil_tmp6 = cmd->device;
8959#line 468
8960 __cil_tmp7 = __cil_tmp6->id;
8961#line 468
8962 tgt = (int )__cil_tmp7;
8963 {
8964#line 470
8965 __cil_tmp8 = adapter->this_id;
8966#line 470
8967 if (__cil_tmp8 < tgt) {
8968#line 471
8969 tgt = tgt - 1;
8970 } else {
8971
8972 }
8973 }
8974#line 473
8975 __cil_tmp9 = channel * 15;
8976#line 473
8977 ldrv_num = __cil_tmp9 + tgt;
8978 {
8979#line 479
8980 __cil_tmp10 = adapter->boot_ldrv_enabled;
8981#line 479
8982 if (__cil_tmp10 != 0) {
8983#line 480
8984 if (ldrv_num == 0) {
8985#line 481
8986 ldrv_num = adapter->boot_ldrv;
8987 } else {
8988 {
8989#line 484
8990 __cil_tmp11 = adapter->boot_ldrv;
8991#line 484
8992 if (__cil_tmp11 >= ldrv_num) {
8993#line 485
8994 ldrv_num = ldrv_num - 1;
8995 } else {
8996
8997 }
8998 }
8999 }
9000 } else {
9001
9002 }
9003 }
9004 {
9005#line 500
9006 __cil_tmp12 = adapter->support_random_del;
9007#line 500
9008 if (__cil_tmp12 != 0) {
9009 {
9010#line 500
9011 __cil_tmp13 = adapter->read_ldidmap;
9012#line 500
9013 if (__cil_tmp13 != 0) {
9014 {
9015#line 502
9016 __cil_tmp14 = cmd->cmnd;
9017#line 502
9018 __cil_tmp15 = *__cil_tmp14;
9019#line 502
9020 __cil_tmp16 = (int )__cil_tmp15;
9021#line 502
9022 if (__cil_tmp16 == 8) {
9023#line 502
9024 goto case_8;
9025 } else {
9026 {
9027#line 503
9028 __cil_tmp17 = cmd->cmnd;
9029#line 503
9030 __cil_tmp18 = *__cil_tmp17;
9031#line 503
9032 __cil_tmp19 = (int )__cil_tmp18;
9033#line 503
9034 if (__cil_tmp19 == 10) {
9035#line 503
9036 goto case_10;
9037 } else {
9038 {
9039#line 504
9040 __cil_tmp20 = cmd->cmnd;
9041#line 504
9042 __cil_tmp21 = *__cil_tmp20;
9043#line 504
9044 __cil_tmp22 = (int )__cil_tmp21;
9045#line 504
9046 if (__cil_tmp22 == 40) {
9047#line 504
9048 goto case_40;
9049 } else {
9050 {
9051#line 505
9052 __cil_tmp23 = cmd->cmnd;
9053#line 505
9054 __cil_tmp24 = *__cil_tmp23;
9055#line 505
9056 __cil_tmp25 = (int )__cil_tmp24;
9057#line 505
9058 if (__cil_tmp25 == 42) {
9059#line 505
9060 goto case_42;
9061 } else
9062#line 501
9063 if (0) {
9064 case_8: ;
9065 case_10: ;
9066 case_40: ;
9067 case_42:
9068#line 506
9069 ldrv_num = ldrv_num + 128;
9070 } else {
9071
9072 }
9073 }
9074 }
9075 }
9076 }
9077 }
9078 }
9079 }
9080 } else {
9081
9082 }
9083 }
9084 } else {
9085
9086 }
9087 }
9088#line 509
9089 return (ldrv_num);
9090}
9091}
9092#line 526 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
9093static scb_t *mega_build_cmd(adapter_t *adapter , Scsi_Cmnd *cmd , int *busy )
9094{ mega_ext_passthru *epthru ;
9095 mega_passthru *pthru ;
9096 scb_t *scb ;
9097 mbox_t *mbox ;
9098 long seg ;
9099 char islogical ;
9100 int max_ldrv_num ;
9101 int channel ;
9102 int target ;
9103 int ldrv_num ;
9104 char *buf ;
9105 struct scatterlist *sg ;
9106 struct page *tmp ;
9107 void *tmp___0 ;
9108 size_t __len ;
9109 void *__ret ;
9110 int tmp___1 ;
9111 int tmp___2 ;
9112 unsigned char *__cil_tmp22 ;
9113 unsigned char __cil_tmp23 ;
9114 unsigned int __cil_tmp24 ;
9115 unsigned char *__cil_tmp25 ;
9116 u8 __cil_tmp26 ;
9117 int __cil_tmp27 ;
9118 signed char __cil_tmp28 ;
9119 int __cil_tmp29 ;
9120 u8 __cil_tmp30 ;
9121 unsigned int __cil_tmp31 ;
9122 struct scsi_device *__cil_tmp32 ;
9123 unsigned int __cil_tmp33 ;
9124 unsigned int __cil_tmp34 ;
9125 struct scsi_device *__cil_tmp35 ;
9126 unsigned int __cil_tmp36 ;
9127 struct scsi_device *__cil_tmp37 ;
9128 unsigned int __cil_tmp38 ;
9129 int __cil_tmp39 ;
9130 signed char __cil_tmp40 ;
9131 int __cil_tmp41 ;
9132 struct scsi_device *__cil_tmp42 ;
9133 unsigned int __cil_tmp43 ;
9134 struct scsi_device *__cil_tmp44 ;
9135 unsigned int __cil_tmp45 ;
9136 unsigned int __cil_tmp46 ;
9137 struct scsi_device *__cil_tmp47 ;
9138 unsigned int __cil_tmp48 ;
9139 signed char __cil_tmp49 ;
9140 int __cil_tmp50 ;
9141 struct scsi_device *__cil_tmp51 ;
9142 unsigned int __cil_tmp52 ;
9143 void (*__cil_tmp53)(struct scsi_cmnd * ) ;
9144 u32 __cil_tmp54 ;
9145 long __cil_tmp55 ;
9146 long __cil_tmp56 ;
9147 int __cil_tmp57 ;
9148 void (*__cil_tmp58)(struct scsi_cmnd * ) ;
9149 struct scsi_device *__cil_tmp59 ;
9150 unsigned int __cil_tmp60 ;
9151 void (*__cil_tmp61)(struct scsi_cmnd * ) ;
9152 signed char __cil_tmp62 ;
9153 int __cil_tmp63 ;
9154 unsigned char *__cil_tmp64 ;
9155 unsigned char __cil_tmp65 ;
9156 int __cil_tmp66 ;
9157 unsigned char *__cil_tmp67 ;
9158 unsigned char __cil_tmp68 ;
9159 int __cil_tmp69 ;
9160 unsigned char *__cil_tmp70 ;
9161 unsigned char __cil_tmp71 ;
9162 int __cil_tmp72 ;
9163 unsigned char *__cil_tmp73 ;
9164 unsigned char __cil_tmp74 ;
9165 int __cil_tmp75 ;
9166 unsigned char *__cil_tmp76 ;
9167 unsigned char __cil_tmp77 ;
9168 int __cil_tmp78 ;
9169 unsigned char *__cil_tmp79 ;
9170 unsigned char __cil_tmp80 ;
9171 int __cil_tmp81 ;
9172 unsigned char *__cil_tmp82 ;
9173 unsigned char __cil_tmp83 ;
9174 int __cil_tmp84 ;
9175 unsigned char *__cil_tmp85 ;
9176 unsigned char __cil_tmp86 ;
9177 int __cil_tmp87 ;
9178 unsigned char *__cil_tmp88 ;
9179 unsigned char __cil_tmp89 ;
9180 int __cil_tmp90 ;
9181 unsigned char *__cil_tmp91 ;
9182 unsigned char __cil_tmp92 ;
9183 int __cil_tmp93 ;
9184 unsigned char *__cil_tmp94 ;
9185 unsigned char __cil_tmp95 ;
9186 int __cil_tmp96 ;
9187 unsigned char *__cil_tmp97 ;
9188 unsigned char __cil_tmp98 ;
9189 int __cil_tmp99 ;
9190 int __cil_tmp100 ;
9191 void (*__cil_tmp101)(struct scsi_cmnd * ) ;
9192 scb_t *__cil_tmp102 ;
9193 unsigned long __cil_tmp103 ;
9194 unsigned long __cil_tmp104 ;
9195 unsigned int __cil_tmp105 ;
9196 unsigned long __cil_tmp106 ;
9197 char *__cil_tmp107 ;
9198 void *__cil_tmp108 ;
9199 unsigned char *__cil_tmp109 ;
9200 unsigned char *__cil_tmp110 ;
9201 unsigned char __cil_tmp111 ;
9202 size_t __cil_tmp112 ;
9203 unsigned int __cil_tmp113 ;
9204 unsigned long __cil_tmp114 ;
9205 unsigned long __cil_tmp115 ;
9206 char *__cil_tmp116 ;
9207 void *__cil_tmp117 ;
9208 void (*__cil_tmp118)(struct scsi_cmnd * ) ;
9209 struct scsi_device *__cil_tmp119 ;
9210 unsigned int __cil_tmp120 ;
9211 int __cil_tmp121 ;
9212 u32 __cil_tmp122 ;
9213 long __cil_tmp123 ;
9214 long __cil_tmp124 ;
9215 long __cil_tmp125 ;
9216 struct Scsi_Host *__cil_tmp126 ;
9217 unsigned int __cil_tmp127 ;
9218 struct scsi_device *__cil_tmp128 ;
9219 unsigned int __cil_tmp129 ;
9220 struct scsi_device *__cil_tmp130 ;
9221 unsigned int __cil_tmp131 ;
9222 int __cil_tmp132 ;
9223 long __cil_tmp133 ;
9224 int __cil_tmp134 ;
9225 u32 __cil_tmp135 ;
9226 int __cil_tmp136 ;
9227 int __cil_tmp137 ;
9228 scb_t *__cil_tmp138 ;
9229 unsigned long __cil_tmp139 ;
9230 unsigned long __cil_tmp140 ;
9231 u8 (*__cil_tmp141)[66U] ;
9232 void *__cil_tmp142 ;
9233 void *__cil_tmp143 ;
9234 unsigned short __cil_tmp144 ;
9235 unsigned short __cil_tmp145 ;
9236 u8 (*__cil_tmp146)[10U] ;
9237 void *__cil_tmp147 ;
9238 unsigned char *__cil_tmp148 ;
9239 void const *__cil_tmp149 ;
9240 int __cil_tmp150 ;
9241 u32 *__cil_tmp151 ;
9242 u32 *__cil_tmp152 ;
9243 dma_addr_t __cil_tmp153 ;
9244 scb_t *__cil_tmp154 ;
9245 unsigned long __cil_tmp155 ;
9246 unsigned long __cil_tmp156 ;
9247 u8 (*__cil_tmp157)[66U] ;
9248 void *__cil_tmp158 ;
9249 int __cil_tmp159 ;
9250 unsigned char *__cil_tmp160 ;
9251 unsigned char __cil_tmp161 ;
9252 int __cil_tmp162 ;
9253 int __cil_tmp163 ;
9254 unsigned char *__cil_tmp164 ;
9255 unsigned char __cil_tmp165 ;
9256 int __cil_tmp166 ;
9257 int __cil_tmp167 ;
9258 unsigned short __cil_tmp168 ;
9259 unsigned int __cil_tmp169 ;
9260 unsigned char *__cil_tmp170 ;
9261 unsigned char *__cil_tmp171 ;
9262 unsigned char __cil_tmp172 ;
9263 unsigned char *__cil_tmp173 ;
9264 unsigned char *__cil_tmp174 ;
9265 unsigned char __cil_tmp175 ;
9266 unsigned int __cil_tmp176 ;
9267 unsigned char *__cil_tmp177 ;
9268 unsigned char *__cil_tmp178 ;
9269 unsigned char __cil_tmp179 ;
9270 unsigned int __cil_tmp180 ;
9271 unsigned int __cil_tmp181 ;
9272 unsigned char *__cil_tmp182 ;
9273 unsigned char *__cil_tmp183 ;
9274 unsigned char __cil_tmp184 ;
9275 unsigned int __cil_tmp185 ;
9276 unsigned int __cil_tmp186 ;
9277 unsigned int __cil_tmp187 ;
9278 u32 __cil_tmp188 ;
9279 unsigned short __cil_tmp189 ;
9280 unsigned int __cil_tmp190 ;
9281 unsigned char *__cil_tmp191 ;
9282 unsigned char *__cil_tmp192 ;
9283 unsigned char __cil_tmp193 ;
9284 u16 __cil_tmp194 ;
9285 int __cil_tmp195 ;
9286 int __cil_tmp196 ;
9287 unsigned char *__cil_tmp197 ;
9288 unsigned char *__cil_tmp198 ;
9289 unsigned char __cil_tmp199 ;
9290 u16 __cil_tmp200 ;
9291 int __cil_tmp201 ;
9292 int __cil_tmp202 ;
9293 unsigned char *__cil_tmp203 ;
9294 unsigned char *__cil_tmp204 ;
9295 unsigned char __cil_tmp205 ;
9296 unsigned int __cil_tmp206 ;
9297 unsigned char *__cil_tmp207 ;
9298 unsigned char *__cil_tmp208 ;
9299 unsigned char __cil_tmp209 ;
9300 unsigned int __cil_tmp210 ;
9301 unsigned int __cil_tmp211 ;
9302 unsigned char *__cil_tmp212 ;
9303 unsigned char *__cil_tmp213 ;
9304 unsigned char __cil_tmp214 ;
9305 unsigned int __cil_tmp215 ;
9306 unsigned int __cil_tmp216 ;
9307 unsigned char *__cil_tmp217 ;
9308 unsigned char *__cil_tmp218 ;
9309 unsigned char __cil_tmp219 ;
9310 unsigned int __cil_tmp220 ;
9311 unsigned int __cil_tmp221 ;
9312 unsigned int __cil_tmp222 ;
9313 unsigned int __cil_tmp223 ;
9314 unsigned short __cil_tmp224 ;
9315 unsigned int __cil_tmp225 ;
9316 unsigned char *__cil_tmp226 ;
9317 unsigned char *__cil_tmp227 ;
9318 unsigned char __cil_tmp228 ;
9319 unsigned int __cil_tmp229 ;
9320 unsigned char *__cil_tmp230 ;
9321 unsigned char *__cil_tmp231 ;
9322 unsigned char __cil_tmp232 ;
9323 unsigned int __cil_tmp233 ;
9324 unsigned int __cil_tmp234 ;
9325 unsigned char *__cil_tmp235 ;
9326 unsigned char *__cil_tmp236 ;
9327 unsigned char __cil_tmp237 ;
9328 unsigned int __cil_tmp238 ;
9329 unsigned int __cil_tmp239 ;
9330 unsigned char *__cil_tmp240 ;
9331 unsigned char *__cil_tmp241 ;
9332 unsigned char __cil_tmp242 ;
9333 unsigned int __cil_tmp243 ;
9334 unsigned int __cil_tmp244 ;
9335 unsigned int __cil_tmp245 ;
9336 unsigned int __cil_tmp246 ;
9337 unsigned char *__cil_tmp247 ;
9338 unsigned char *__cil_tmp248 ;
9339 unsigned char __cil_tmp249 ;
9340 u16 __cil_tmp250 ;
9341 int __cil_tmp251 ;
9342 unsigned char *__cil_tmp252 ;
9343 unsigned char *__cil_tmp253 ;
9344 unsigned char __cil_tmp254 ;
9345 u16 __cil_tmp255 ;
9346 int __cil_tmp256 ;
9347 int __cil_tmp257 ;
9348 int __cil_tmp258 ;
9349 unsigned char *__cil_tmp259 ;
9350 unsigned char __cil_tmp260 ;
9351 int __cil_tmp261 ;
9352 int __cil_tmp262 ;
9353 u32 *__cil_tmp263 ;
9354 u32 *__cil_tmp264 ;
9355 int __cil_tmp265 ;
9356 void (*__cil_tmp266)(struct scsi_cmnd * ) ;
9357 scb_t *__cil_tmp267 ;
9358 unsigned long __cil_tmp268 ;
9359 unsigned long __cil_tmp269 ;
9360 unsigned char *__cil_tmp270 ;
9361 unsigned char __cil_tmp271 ;
9362 unsigned int __cil_tmp272 ;
9363 void (*__cil_tmp273)(struct scsi_cmnd * ) ;
9364 scb_t *__cil_tmp274 ;
9365 unsigned long __cil_tmp275 ;
9366 unsigned long __cil_tmp276 ;
9367 u8 (*__cil_tmp277)[66U] ;
9368 void *__cil_tmp278 ;
9369 int __cil_tmp279 ;
9370 dma_addr_t __cil_tmp280 ;
9371 int __cil_tmp281 ;
9372 dma_addr_t __cil_tmp282 ;
9373
9374 {
9375#line 535
9376 channel = 0;
9377#line 536
9378 target = 0;
9379#line 537
9380 ldrv_num = 0;
9381 {
9382#line 543
9383 __cil_tmp22 = cmd->cmnd;
9384#line 543
9385 __cil_tmp23 = *__cil_tmp22;
9386#line 543
9387 __cil_tmp24 = (unsigned int )__cil_tmp23;
9388#line 543
9389 if (__cil_tmp24 == 225U) {
9390 {
9391#line 544
9392 __cil_tmp25 = cmd->host_scribble;
9393#line 544
9394 return ((scb_t *)__cil_tmp25);
9395 }
9396 } else {
9397
9398 }
9399 }
9400#line 549
9401 __cil_tmp26 = adapter->logdrv_chan[(cmd->device)->channel];
9402#line 549
9403 islogical = (char )__cil_tmp26;
9404 {
9405#line 558
9406 __cil_tmp27 = adapter->boot_pdrv_enabled;
9407#line 558
9408 if (__cil_tmp27 != 0) {
9409 {
9410#line 559
9411 __cil_tmp28 = (signed char )islogical;
9412#line 559
9413 __cil_tmp29 = (int )__cil_tmp28;
9414#line 559
9415 if (__cil_tmp29 != 0) {
9416#line 561
9417 __cil_tmp30 = adapter->product_info.nchannels;
9418#line 561
9419 __cil_tmp31 = (unsigned int )__cil_tmp30;
9420#line 561
9421 __cil_tmp32 = cmd->device;
9422#line 561
9423 __cil_tmp33 = __cil_tmp32->channel;
9424#line 561
9425 __cil_tmp34 = __cil_tmp33 - __cil_tmp31;
9426#line 561
9427 channel = (int )__cil_tmp34;
9428 } else {
9429#line 566
9430 __cil_tmp35 = cmd->device;
9431#line 566
9432 __cil_tmp36 = __cil_tmp35->channel;
9433#line 566
9434 channel = (int )__cil_tmp36;
9435#line 567
9436 __cil_tmp37 = cmd->device;
9437#line 567
9438 __cil_tmp38 = __cil_tmp37->id;
9439#line 567
9440 target = (int )__cil_tmp38;
9441#line 574
9442 if (target == 0) {
9443#line 575
9444 target = adapter->boot_pdrv_tgt;
9445 } else {
9446 {
9447#line 577
9448 __cil_tmp39 = adapter->boot_pdrv_tgt;
9449#line 577
9450 if (__cil_tmp39 == target) {
9451#line 578
9452 target = 0;
9453 } else {
9454
9455 }
9456 }
9457 }
9458 }
9459 }
9460 } else {
9461 {
9462#line 583
9463 __cil_tmp40 = (signed char )islogical;
9464#line 583
9465 __cil_tmp41 = (int )__cil_tmp40;
9466#line 583
9467 if (__cil_tmp41 != 0) {
9468#line 585
9469 __cil_tmp42 = cmd->device;
9470#line 585
9471 __cil_tmp43 = __cil_tmp42->channel;
9472#line 585
9473 channel = (int )__cil_tmp43;
9474 } else {
9475#line 589
9476 __cil_tmp44 = cmd->device;
9477#line 589
9478 __cil_tmp45 = __cil_tmp44->channel;
9479#line 589
9480 __cil_tmp46 = __cil_tmp45 - 4U;
9481#line 589
9482 channel = (int )__cil_tmp46;
9483#line 590
9484 __cil_tmp47 = cmd->device;
9485#line 590
9486 __cil_tmp48 = __cil_tmp47->id;
9487#line 590
9488 target = (int )__cil_tmp48;
9489 }
9490 }
9491 }
9492 }
9493 {
9494#line 595
9495 __cil_tmp49 = (signed char )islogical;
9496#line 595
9497 __cil_tmp50 = (int )__cil_tmp49;
9498#line 595
9499 if (__cil_tmp50 != 0) {
9500 {
9501#line 598
9502 __cil_tmp51 = cmd->device;
9503#line 598
9504 __cil_tmp52 = __cil_tmp51->lun;
9505#line 598
9506 if (__cil_tmp52 != 0U) {
9507 {
9508#line 599
9509 cmd->result = 262144;
9510#line 600
9511 __cil_tmp53 = cmd->scsi_done;
9512#line 600
9513 (*__cil_tmp53)(cmd);
9514 }
9515#line 601
9516 return ((scb_t *)0);
9517 } else {
9518
9519 }
9520 }
9521 {
9522#line 604
9523 ldrv_num = mega_get_ldrv_num(adapter, cmd, channel);
9524 }
9525 {
9526#line 607
9527 __cil_tmp54 = adapter->flag;
9528#line 607
9529 __cil_tmp55 = (long )__cil_tmp54;
9530#line 607
9531 __cil_tmp56 = __cil_tmp55 & 134217728L;
9532#line 607
9533 if (__cil_tmp56 != 0L) {
9534#line 607
9535 max_ldrv_num = 40;
9536 } else {
9537#line 607
9538 max_ldrv_num = 8;
9539 }
9540 }
9541 {
9542#line 614
9543 __cil_tmp57 = adapter->read_ldidmap;
9544#line 614
9545 if (__cil_tmp57 != 0) {
9546#line 615
9547 max_ldrv_num = max_ldrv_num + 128;
9548 } else {
9549
9550 }
9551 }
9552#line 617
9553 if (ldrv_num > max_ldrv_num) {
9554 {
9555#line 618
9556 cmd->result = 262144;
9557#line 619
9558 __cil_tmp58 = cmd->scsi_done;
9559#line 619
9560 (*__cil_tmp58)(cmd);
9561 }
9562#line 620
9563 return ((scb_t *)0);
9564 } else {
9565
9566 }
9567 } else {
9568 {
9569#line 625
9570 __cil_tmp59 = cmd->device;
9571#line 625
9572 __cil_tmp60 = __cil_tmp59->lun;
9573#line 625
9574 if (__cil_tmp60 > 7U) {
9575 {
9576#line 630
9577 cmd->result = 262144;
9578#line 631
9579 __cil_tmp61 = cmd->scsi_done;
9580#line 631
9581 (*__cil_tmp61)(cmd);
9582 }
9583#line 632
9584 return ((scb_t *)0);
9585 } else {
9586
9587 }
9588 }
9589 }
9590 }
9591 {
9592#line 641
9593 __cil_tmp62 = (signed char )islogical;
9594#line 641
9595 __cil_tmp63 = (int )__cil_tmp62;
9596#line 641
9597 if (__cil_tmp63 != 0) {
9598 {
9599#line 643
9600 __cil_tmp64 = cmd->cmnd;
9601#line 643
9602 __cil_tmp65 = *__cil_tmp64;
9603#line 643
9604 __cil_tmp66 = (int )__cil_tmp65;
9605#line 643
9606 if (__cil_tmp66 == 0) {
9607#line 643
9608 goto case_0;
9609 } else {
9610 {
9611#line 673
9612 __cil_tmp67 = cmd->cmnd;
9613#line 673
9614 __cil_tmp68 = *__cil_tmp67;
9615#line 673
9616 __cil_tmp69 = (int )__cil_tmp68;
9617#line 673
9618 if (__cil_tmp69 == 26) {
9619#line 673
9620 goto case_26;
9621 } else {
9622 {
9623#line 688
9624 __cil_tmp70 = cmd->cmnd;
9625#line 688
9626 __cil_tmp71 = *__cil_tmp70;
9627#line 688
9628 __cil_tmp72 = (int )__cil_tmp71;
9629#line 688
9630 if (__cil_tmp72 == 37) {
9631#line 688
9632 goto case_37;
9633 } else {
9634 {
9635#line 689
9636 __cil_tmp73 = cmd->cmnd;
9637#line 689
9638 __cil_tmp74 = *__cil_tmp73;
9639#line 689
9640 __cil_tmp75 = (int )__cil_tmp74;
9641#line 689
9642 if (__cil_tmp75 == 18) {
9643#line 689
9644 goto case_18;
9645 } else {
9646 {
9647#line 737
9648 __cil_tmp76 = cmd->cmnd;
9649#line 737
9650 __cil_tmp77 = *__cil_tmp76;
9651#line 737
9652 __cil_tmp78 = (int )__cil_tmp77;
9653#line 737
9654 if (__cil_tmp78 == 8) {
9655#line 737
9656 goto case_8;
9657 } else {
9658 {
9659#line 738
9660 __cil_tmp79 = cmd->cmnd;
9661#line 738
9662 __cil_tmp80 = *__cil_tmp79;
9663#line 738
9664 __cil_tmp81 = (int )__cil_tmp80;
9665#line 738
9666 if (__cil_tmp81 == 10) {
9667#line 738
9668 goto case_10;
9669 } else {
9670 {
9671#line 739
9672 __cil_tmp82 = cmd->cmnd;
9673#line 739
9674 __cil_tmp83 = *__cil_tmp82;
9675#line 739
9676 __cil_tmp84 = (int )__cil_tmp83;
9677#line 739
9678 if (__cil_tmp84 == 40) {
9679#line 739
9680 goto case_40;
9681 } else {
9682 {
9683#line 740
9684 __cil_tmp85 = cmd->cmnd;
9685#line 740
9686 __cil_tmp86 = *__cil_tmp85;
9687#line 740
9688 __cil_tmp87 = (int )__cil_tmp86;
9689#line 740
9690 if (__cil_tmp87 == 42) {
9691#line 740
9692 goto case_42;
9693 } else {
9694 {
9695#line 741
9696 __cil_tmp88 = cmd->cmnd;
9697#line 741
9698 __cil_tmp89 = *__cil_tmp88;
9699#line 741
9700 __cil_tmp90 = (int )__cil_tmp89;
9701#line 741
9702 if (__cil_tmp90 == 168) {
9703#line 741
9704 goto case_168;
9705 } else {
9706 {
9707#line 742
9708 __cil_tmp91 = cmd->cmnd;
9709#line 742
9710 __cil_tmp92 = *__cil_tmp91;
9711#line 742
9712 __cil_tmp93 = (int )__cil_tmp92;
9713#line 742
9714 if (__cil_tmp93 == 170) {
9715#line 742
9716 goto case_170;
9717 } else {
9718 {
9719#line 871
9720 __cil_tmp94 = cmd->cmnd;
9721#line 871
9722 __cil_tmp95 = *__cil_tmp94;
9723#line 871
9724 __cil_tmp96 = (int )__cil_tmp95;
9725#line 871
9726 if (__cil_tmp96 == 22) {
9727#line 871
9728 goto case_22;
9729 } else {
9730 {
9731#line 872
9732 __cil_tmp97 = cmd->cmnd;
9733#line 872
9734 __cil_tmp98 = *__cil_tmp97;
9735#line 872
9736 __cil_tmp99 = (int )__cil_tmp98;
9737#line 872
9738 if (__cil_tmp99 == 23) {
9739#line 872
9740 goto case_23;
9741 } else {
9742#line 901
9743 goto switch_default;
9744#line 642
9745 if (0) {
9746 case_0: ;
9747 {
9748#line 649
9749 __cil_tmp100 = adapter->has_cluster;
9750#line 649
9751 if (__cil_tmp100 == 0) {
9752 {
9753#line 650
9754 cmd->result = 0;
9755#line 651
9756 __cil_tmp101 = cmd->scsi_done;
9757#line 651
9758 (*__cil_tmp101)(cmd);
9759 }
9760#line 652
9761 return ((scb_t *)0);
9762 } else {
9763
9764 }
9765 }
9766 {
9767#line 655
9768 scb = mega_allocate_scb(adapter, cmd);
9769 }
9770 {
9771#line 655
9772 __cil_tmp102 = (scb_t *)0;
9773#line 655
9774 __cil_tmp103 = (unsigned long )__cil_tmp102;
9775#line 655
9776 __cil_tmp104 = (unsigned long )scb;
9777#line 655
9778 if (__cil_tmp104 == __cil_tmp103) {
9779#line 656
9780 *busy = 1;
9781#line 657
9782 return ((scb_t *)0);
9783 } else {
9784
9785 }
9786 }
9787#line 660
9788 scb->raw_mbox[0] = (u8 )110U;
9789#line 661
9790 scb->raw_mbox[2] = (u8 )4U;
9791#line 662
9792 scb->raw_mbox[3] = (u8 )ldrv_num;
9793#line 664
9794 scb->dma_direction = 3U;
9795#line 666
9796 return (scb);
9797 case_26:
9798 {
9799#line 677
9800 sg = scsi_sglist(cmd);
9801#line 678
9802 tmp = sg_page(sg);
9803#line 678
9804 tmp___0 = __kmap_atomic(tmp);
9805#line 678
9806 __cil_tmp105 = sg->offset;
9807#line 678
9808 __cil_tmp106 = (unsigned long )__cil_tmp105;
9809#line 678
9810 __cil_tmp107 = (char *)tmp___0;
9811#line 678
9812 buf = __cil_tmp107 + __cil_tmp106;
9813#line 680
9814 __cil_tmp108 = (void *)buf;
9815#line 680
9816 __cil_tmp109 = cmd->cmnd;
9817#line 680
9818 __cil_tmp110 = __cil_tmp109 + 4UL;
9819#line 680
9820 __cil_tmp111 = *__cil_tmp110;
9821#line 680
9822 __cil_tmp112 = (size_t )__cil_tmp111;
9823#line 680
9824 memset(__cil_tmp108, 0, __cil_tmp112);
9825#line 681
9826 __cil_tmp113 = sg->offset;
9827#line 681
9828 __cil_tmp114 = (unsigned long )__cil_tmp113;
9829#line 681
9830 __cil_tmp115 = - __cil_tmp114;
9831#line 681
9832 __cil_tmp116 = buf + __cil_tmp115;
9833#line 681
9834 __cil_tmp117 = (void *)__cil_tmp116;
9835#line 681
9836 __kunmap_atomic(__cil_tmp117);
9837#line 683
9838 cmd->result = 0;
9839#line 684
9840 __cil_tmp118 = cmd->scsi_done;
9841#line 684
9842 (*__cil_tmp118)(cmd);
9843 }
9844#line 685
9845 return ((scb_t *)0);
9846 case_37: ;
9847 case_18: ;
9848 {
9849#line 691
9850 __cil_tmp119 = cmd->device;
9851#line 691
9852 __cil_tmp120 = __cil_tmp119->channel;
9853#line 691
9854 __cil_tmp121 = (int )__cil_tmp120;
9855#line 691
9856 __cil_tmp122 = adapter->flag;
9857#line 691
9858 __cil_tmp123 = (long )__cil_tmp122;
9859#line 691
9860 __cil_tmp124 = __cil_tmp123 >> __cil_tmp121;
9861#line 691
9862 __cil_tmp125 = __cil_tmp124 & 1L;
9863#line 691
9864 if (__cil_tmp125 == 0L) {
9865 {
9866#line 693
9867 __cil_tmp126 = adapter->host;
9868#line 693
9869 __cil_tmp127 = __cil_tmp126->host_no;
9870#line 693
9871 __cil_tmp128 = cmd->device;
9872#line 693
9873 __cil_tmp129 = __cil_tmp128->channel;
9874#line 693
9875 printk("<5>scsi%d: scanning scsi channel %d ", __cil_tmp127,
9876 __cil_tmp129);
9877#line 697
9878 printk("for logical drives.\n");
9879#line 699
9880 __cil_tmp130 = cmd->device;
9881#line 699
9882 __cil_tmp131 = __cil_tmp130->channel;
9883#line 699
9884 __cil_tmp132 = (int )__cil_tmp131;
9885#line 699
9886 __cil_tmp133 = 1L << __cil_tmp132;
9887#line 699
9888 __cil_tmp134 = (int )__cil_tmp133;
9889#line 699
9890 __cil_tmp135 = adapter->flag;
9891#line 699
9892 __cil_tmp136 = (int )__cil_tmp135;
9893#line 699
9894 __cil_tmp137 = __cil_tmp136 | __cil_tmp134;
9895#line 699
9896 adapter->flag = (u32 )__cil_tmp137;
9897 }
9898 } else {
9899
9900 }
9901 }
9902 {
9903#line 703
9904 scb = mega_allocate_scb(adapter, cmd);
9905 }
9906 {
9907#line 703
9908 __cil_tmp138 = (scb_t *)0;
9909#line 703
9910 __cil_tmp139 = (unsigned long )__cil_tmp138;
9911#line 703
9912 __cil_tmp140 = (unsigned long )scb;
9913#line 703
9914 if (__cil_tmp140 == __cil_tmp139) {
9915#line 704
9916 *busy = 1;
9917#line 705
9918 return ((scb_t *)0);
9919 } else {
9920
9921 }
9922 }
9923 {
9924#line 707
9925 pthru = scb->pthru;
9926#line 709
9927 __cil_tmp141 = & scb->raw_mbox;
9928#line 709
9929 mbox = (mbox_t *)__cil_tmp141;
9930#line 710
9931 __cil_tmp142 = (void *)mbox;
9932#line 710
9933 memset(__cil_tmp142, 0, 66UL);
9934#line 711
9935 __cil_tmp143 = (void *)pthru;
9936#line 711
9937 memset(__cil_tmp143, 0, 60UL);
9938#line 713
9939 pthru->timeout = (unsigned char)0;
9940#line 714
9941 pthru->ars = (unsigned char)1;
9942#line 715
9943 pthru->reqsenselen = (u8 )14U;
9944#line 716
9945 pthru->islogical = (unsigned char)1;
9946#line 717
9947 pthru->logdrv = (u8 )ldrv_num;
9948#line 718
9949 __cil_tmp144 = cmd->cmd_len;
9950#line 718
9951 pthru->cdblen = (u8 )__cil_tmp144;
9952#line 719
9953 __cil_tmp145 = cmd->cmd_len;
9954#line 719
9955 __len = (size_t )__cil_tmp145;
9956#line 719
9957 __cil_tmp146 = & pthru->cdb;
9958#line 719
9959 __cil_tmp147 = (void *)__cil_tmp146;
9960#line 719
9961 __cil_tmp148 = cmd->cmnd;
9962#line 719
9963 __cil_tmp149 = (void const *)__cil_tmp148;
9964#line 719
9965 __ret = __builtin_memcpy(__cil_tmp147, __cil_tmp149,
9966 __len);
9967 }
9968 {
9969#line 721
9970 __cil_tmp150 = adapter->has_64bit_addr;
9971#line 721
9972 if (__cil_tmp150 != 0) {
9973#line 722
9974 mbox->m_out.cmd = (u8 )195U;
9975 } else {
9976#line 725
9977 mbox->m_out.cmd = (u8 )3U;
9978 }
9979 }
9980 {
9981#line 728
9982 scb->dma_direction = 2U;
9983#line 730
9984 __cil_tmp151 = & pthru->dataxferaddr;
9985#line 730
9986 __cil_tmp152 = & pthru->dataxferlen;
9987#line 730
9988 tmp___1 = mega_build_sglist(adapter, scb, __cil_tmp151,
9989 __cil_tmp152);
9990#line 730
9991 pthru->numsgelements = (u8 )tmp___1;
9992#line 733
9993 __cil_tmp153 = scb->pthru_dma_addr;
9994#line 733
9995 mbox->m_out.xferaddr = (u32 )__cil_tmp153;
9996 }
9997#line 735
9998 return (scb);
9999 case_8: ;
10000 case_10: ;
10001 case_40: ;
10002 case_42: ;
10003 case_168: ;
10004 case_170:
10005 {
10006#line 745
10007 scb = mega_allocate_scb(adapter, cmd);
10008 }
10009 {
10010#line 745
10011 __cil_tmp154 = (scb_t *)0;
10012#line 745
10013 __cil_tmp155 = (unsigned long )__cil_tmp154;
10014#line 745
10015 __cil_tmp156 = (unsigned long )scb;
10016#line 745
10017 if (__cil_tmp156 == __cil_tmp155) {
10018#line 746
10019 *busy = 1;
10020#line 747
10021 return ((scb_t *)0);
10022 } else {
10023
10024 }
10025 }
10026 {
10027#line 749
10028 __cil_tmp157 = & scb->raw_mbox;
10029#line 749
10030 mbox = (mbox_t *)__cil_tmp157;
10031#line 751
10032 __cil_tmp158 = (void *)mbox;
10033#line 751
10034 memset(__cil_tmp158, 0, 66UL);
10035#line 752
10036 mbox->m_out.logdrv = (u8 )ldrv_num;
10037 }
10038 {
10039#line 758
10040 __cil_tmp159 = adapter->has_64bit_addr;
10041#line 758
10042 if (__cil_tmp159 != 0) {
10043 {
10044#line 759
10045 __cil_tmp160 = cmd->cmnd;
10046#line 759
10047 __cil_tmp161 = *__cil_tmp160;
10048#line 759
10049 __cil_tmp162 = (int )__cil_tmp161;
10050#line 759
10051 __cil_tmp163 = __cil_tmp162 & 2;
10052#line 759
10053 if (__cil_tmp163 != 0) {
10054#line 759
10055 mbox->m_out.cmd = (u8 )168U;
10056 } else {
10057#line 759
10058 mbox->m_out.cmd = (u8 )167U;
10059 }
10060 }
10061 } else {
10062 {
10063#line 764
10064 __cil_tmp164 = cmd->cmnd;
10065#line 764
10066 __cil_tmp165 = *__cil_tmp164;
10067#line 764
10068 __cil_tmp166 = (int )__cil_tmp165;
10069#line 764
10070 __cil_tmp167 = __cil_tmp166 & 2;
10071#line 764
10072 if (__cil_tmp167 != 0) {
10073#line 764
10074 mbox->m_out.cmd = (u8 )2U;
10075 } else {
10076#line 764
10077 mbox->m_out.cmd = (u8 )1U;
10078 }
10079 }
10080 }
10081 }
10082 {
10083#line 772
10084 __cil_tmp168 = cmd->cmd_len;
10085#line 772
10086 __cil_tmp169 = (unsigned int )__cil_tmp168;
10087#line 772
10088 if (__cil_tmp169 == 6U) {
10089#line 773
10090 __cil_tmp170 = cmd->cmnd;
10091#line 773
10092 __cil_tmp171 = __cil_tmp170 + 4UL;
10093#line 773
10094 __cil_tmp172 = *__cil_tmp171;
10095#line 773
10096 mbox->m_out.numsectors = (u16 )__cil_tmp172;
10097#line 774
10098 __cil_tmp173 = cmd->cmnd;
10099#line 774
10100 __cil_tmp174 = __cil_tmp173 + 3UL;
10101#line 774
10102 __cil_tmp175 = *__cil_tmp174;
10103#line 774
10104 __cil_tmp176 = (unsigned int )__cil_tmp175;
10105#line 774
10106 __cil_tmp177 = cmd->cmnd;
10107#line 774
10108 __cil_tmp178 = __cil_tmp177 + 2UL;
10109#line 774
10110 __cil_tmp179 = *__cil_tmp178;
10111#line 774
10112 __cil_tmp180 = (unsigned int )__cil_tmp179;
10113#line 774
10114 __cil_tmp181 = __cil_tmp180 << 8;
10115#line 774
10116 __cil_tmp182 = cmd->cmnd;
10117#line 774
10118 __cil_tmp183 = __cil_tmp182 + 1UL;
10119#line 774
10120 __cil_tmp184 = *__cil_tmp183;
10121#line 774
10122 __cil_tmp185 = (unsigned int )__cil_tmp184;
10123#line 774
10124 __cil_tmp186 = __cil_tmp185 << 16;
10125#line 774
10126 __cil_tmp187 = __cil_tmp186 | __cil_tmp181;
10127#line 774
10128 mbox->m_out.lba = __cil_tmp187 | __cil_tmp176;
10129#line 779
10130 __cil_tmp188 = mbox->m_out.lba;
10131#line 779
10132 mbox->m_out.lba = __cil_tmp188 & 2097151U;
10133 } else {
10134
10135 }
10136 }
10137 {
10138#line 802
10139 __cil_tmp189 = cmd->cmd_len;
10140#line 802
10141 __cil_tmp190 = (unsigned int )__cil_tmp189;
10142#line 802
10143 if (__cil_tmp190 == 10U) {
10144#line 803
10145 __cil_tmp191 = cmd->cmnd;
10146#line 803
10147 __cil_tmp192 = __cil_tmp191 + 7UL;
10148#line 803
10149 __cil_tmp193 = *__cil_tmp192;
10150#line 803
10151 __cil_tmp194 = (u16 )__cil_tmp193;
10152#line 803
10153 __cil_tmp195 = (int )__cil_tmp194;
10154#line 803
10155 __cil_tmp196 = __cil_tmp195 << 8U;
10156#line 803
10157 __cil_tmp197 = cmd->cmnd;
10158#line 803
10159 __cil_tmp198 = __cil_tmp197 + 8UL;
10160#line 803
10161 __cil_tmp199 = *__cil_tmp198;
10162#line 803
10163 __cil_tmp200 = (u16 )__cil_tmp199;
10164#line 803
10165 __cil_tmp201 = (int )__cil_tmp200;
10166#line 803
10167 __cil_tmp202 = __cil_tmp201 | __cil_tmp196;
10168#line 803
10169 mbox->m_out.numsectors = (u16 )__cil_tmp202;
10170#line 806
10171 __cil_tmp203 = cmd->cmnd;
10172#line 806
10173 __cil_tmp204 = __cil_tmp203 + 5UL;
10174#line 806
10175 __cil_tmp205 = *__cil_tmp204;
10176#line 806
10177 __cil_tmp206 = (unsigned int )__cil_tmp205;
10178#line 806
10179 __cil_tmp207 = cmd->cmnd;
10180#line 806
10181 __cil_tmp208 = __cil_tmp207 + 4UL;
10182#line 806
10183 __cil_tmp209 = *__cil_tmp208;
10184#line 806
10185 __cil_tmp210 = (unsigned int )__cil_tmp209;
10186#line 806
10187 __cil_tmp211 = __cil_tmp210 << 8;
10188#line 806
10189 __cil_tmp212 = cmd->cmnd;
10190#line 806
10191 __cil_tmp213 = __cil_tmp212 + 3UL;
10192#line 806
10193 __cil_tmp214 = *__cil_tmp213;
10194#line 806
10195 __cil_tmp215 = (unsigned int )__cil_tmp214;
10196#line 806
10197 __cil_tmp216 = __cil_tmp215 << 16;
10198#line 806
10199 __cil_tmp217 = cmd->cmnd;
10200#line 806
10201 __cil_tmp218 = __cil_tmp217 + 2UL;
10202#line 806
10203 __cil_tmp219 = *__cil_tmp218;
10204#line 806
10205 __cil_tmp220 = (unsigned int )__cil_tmp219;
10206#line 806
10207 __cil_tmp221 = __cil_tmp220 << 24;
10208#line 806
10209 __cil_tmp222 = __cil_tmp221 | __cil_tmp216;
10210#line 806
10211 __cil_tmp223 = __cil_tmp222 | __cil_tmp211;
10212#line 806
10213 mbox->m_out.lba = __cil_tmp223 | __cil_tmp206;
10214 } else {
10215
10216 }
10217 }
10218 {
10219#line 828
10220 __cil_tmp224 = cmd->cmd_len;
10221#line 828
10222 __cil_tmp225 = (unsigned int )__cil_tmp224;
10223#line 828
10224 if (__cil_tmp225 == 12U) {
10225#line 829
10226 __cil_tmp226 = cmd->cmnd;
10227#line 829
10228 __cil_tmp227 = __cil_tmp226 + 5UL;
10229#line 829
10230 __cil_tmp228 = *__cil_tmp227;
10231#line 829
10232 __cil_tmp229 = (unsigned int )__cil_tmp228;
10233#line 829
10234 __cil_tmp230 = cmd->cmnd;
10235#line 829
10236 __cil_tmp231 = __cil_tmp230 + 4UL;
10237#line 829
10238 __cil_tmp232 = *__cil_tmp231;
10239#line 829
10240 __cil_tmp233 = (unsigned int )__cil_tmp232;
10241#line 829
10242 __cil_tmp234 = __cil_tmp233 << 8;
10243#line 829
10244 __cil_tmp235 = cmd->cmnd;
10245#line 829
10246 __cil_tmp236 = __cil_tmp235 + 3UL;
10247#line 829
10248 __cil_tmp237 = *__cil_tmp236;
10249#line 829
10250 __cil_tmp238 = (unsigned int )__cil_tmp237;
10251#line 829
10252 __cil_tmp239 = __cil_tmp238 << 16;
10253#line 829
10254 __cil_tmp240 = cmd->cmnd;
10255#line 829
10256 __cil_tmp241 = __cil_tmp240 + 2UL;
10257#line 829
10258 __cil_tmp242 = *__cil_tmp241;
10259#line 829
10260 __cil_tmp243 = (unsigned int )__cil_tmp242;
10261#line 829
10262 __cil_tmp244 = __cil_tmp243 << 24;
10263#line 829
10264 __cil_tmp245 = __cil_tmp244 | __cil_tmp239;
10265#line 829
10266 __cil_tmp246 = __cil_tmp245 | __cil_tmp234;
10267#line 829
10268 mbox->m_out.lba = __cil_tmp246 | __cil_tmp229;
10269#line 835
10270 __cil_tmp247 = cmd->cmnd;
10271#line 835
10272 __cil_tmp248 = __cil_tmp247 + 9UL;
10273#line 835
10274 __cil_tmp249 = *__cil_tmp248;
10275#line 835
10276 __cil_tmp250 = (u16 )__cil_tmp249;
10277#line 835
10278 __cil_tmp251 = (int )__cil_tmp250;
10279#line 835
10280 __cil_tmp252 = cmd->cmnd;
10281#line 835
10282 __cil_tmp253 = __cil_tmp252 + 8UL;
10283#line 835
10284 __cil_tmp254 = *__cil_tmp253;
10285#line 835
10286 __cil_tmp255 = (u16 )__cil_tmp254;
10287#line 835
10288 __cil_tmp256 = (int )__cil_tmp255;
10289#line 835
10290 __cil_tmp257 = __cil_tmp256 << 8U;
10291#line 835
10292 __cil_tmp258 = __cil_tmp257 | __cil_tmp251;
10293#line 835
10294 mbox->m_out.numsectors = (u16 )__cil_tmp258;
10295 } else {
10296
10297 }
10298 }
10299 {
10300#line 857
10301 __cil_tmp259 = cmd->cmnd;
10302#line 857
10303 __cil_tmp260 = *__cil_tmp259;
10304#line 857
10305 __cil_tmp261 = (int )__cil_tmp260;
10306#line 857
10307 __cil_tmp262 = __cil_tmp261 & 15;
10308#line 857
10309 if (__cil_tmp262 == 8) {
10310#line 858
10311 scb->dma_direction = 2U;
10312 } else {
10313#line 861
10314 scb->dma_direction = 1U;
10315 }
10316 }
10317 {
10318#line 865
10319 __cil_tmp263 = & mbox->m_out.xferaddr;
10320#line 865
10321 __cil_tmp264 = (u32 *)(& seg);
10322#line 865
10323 tmp___2 = mega_build_sglist(adapter, scb, __cil_tmp263,
10324 __cil_tmp264);
10325#line 865
10326 mbox->m_out.numsgelements = (u8 )tmp___2;
10327 }
10328#line 868
10329 return (scb);
10330 case_22: ;
10331 case_23: ;
10332 {
10333#line 877
10334 __cil_tmp265 = adapter->has_cluster;
10335#line 877
10336 if (__cil_tmp265 == 0) {
10337 {
10338#line 879
10339 cmd->result = 262144;
10340#line 880
10341 __cil_tmp266 = cmd->scsi_done;
10342#line 880
10343 (*__cil_tmp266)(cmd);
10344 }
10345#line 881
10346 return ((scb_t *)0);
10347 } else {
10348
10349 }
10350 }
10351 {
10352#line 885
10353 scb = mega_allocate_scb(adapter, cmd);
10354 }
10355 {
10356#line 885
10357 __cil_tmp267 = (scb_t *)0;
10358#line 885
10359 __cil_tmp268 = (unsigned long )__cil_tmp267;
10360#line 885
10361 __cil_tmp269 = (unsigned long )scb;
10362#line 885
10363 if (__cil_tmp269 == __cil_tmp268) {
10364#line 886
10365 *busy = 1;
10366#line 887
10367 return ((scb_t *)0);
10368 } else {
10369
10370 }
10371 }
10372#line 890
10373 scb->raw_mbox[0] = (u8 )110U;
10374 {
10375#line 891
10376 __cil_tmp270 = cmd->cmnd;
10377#line 891
10378 __cil_tmp271 = *__cil_tmp270;
10379#line 891
10380 __cil_tmp272 = (unsigned int )__cil_tmp271;
10381#line 891
10382 if (__cil_tmp272 == 22U) {
10383#line 891
10384 scb->raw_mbox[2] = (u8 )1U;
10385 } else {
10386#line 891
10387 scb->raw_mbox[2] = (u8 )2U;
10388 }
10389 }
10390#line 894
10391 scb->raw_mbox[3] = (u8 )ldrv_num;
10392#line 896
10393 scb->dma_direction = 3U;
10394#line 898
10395 return (scb);
10396 switch_default:
10397 {
10398#line 902
10399 cmd->result = 262144;
10400#line 903
10401 __cil_tmp273 = cmd->scsi_done;
10402#line 903
10403 (*__cil_tmp273)(cmd);
10404 }
10405#line 904
10406 return ((scb_t *)0);
10407 } else {
10408
10409 }
10410 }
10411 }
10412 }
10413 }
10414 }
10415 }
10416 }
10417 }
10418 }
10419 }
10420 }
10421 }
10422 }
10423 }
10424 }
10425 }
10426 }
10427 }
10428 }
10429 }
10430 }
10431 }
10432 }
10433 }
10434 } else {
10435 {
10436#line 913
10437 scb = mega_allocate_scb(adapter, cmd);
10438 }
10439 {
10440#line 913
10441 __cil_tmp274 = (scb_t *)0;
10442#line 913
10443 __cil_tmp275 = (unsigned long )__cil_tmp274;
10444#line 913
10445 __cil_tmp276 = (unsigned long )scb;
10446#line 913
10447 if (__cil_tmp276 == __cil_tmp275) {
10448#line 914
10449 *busy = 1;
10450#line 915
10451 return ((scb_t *)0);
10452 } else {
10453
10454 }
10455 }
10456 {
10457#line 918
10458 __cil_tmp277 = & scb->raw_mbox;
10459#line 918
10460 mbox = (mbox_t *)__cil_tmp277;
10461#line 919
10462 __cil_tmp278 = (void *)mbox;
10463#line 919
10464 memset(__cil_tmp278, 0, 66UL);
10465 }
10466 {
10467#line 921
10468 __cil_tmp279 = adapter->support_ext_cdb;
10469#line 921
10470 if (__cil_tmp279 != 0) {
10471 {
10472#line 923
10473 epthru = mega_prepare_extpassthru(adapter, scb, cmd, channel, target);
10474#line 926
10475 mbox->m_out.cmd = (u8 )227U;
10476#line 928
10477 __cil_tmp280 = scb->epthru_dma_addr;
10478#line 928
10479 mbox->m_out.xferaddr = (u32 )__cil_tmp280;
10480 }
10481 } else {
10482 {
10483#line 933
10484 pthru = mega_prepare_passthru(adapter, scb, cmd, channel, target);
10485 }
10486 {
10487#line 937
10488 __cil_tmp281 = adapter->has_64bit_addr;
10489#line 937
10490 if (__cil_tmp281 != 0) {
10491#line 938
10492 mbox->m_out.cmd = (u8 )195U;
10493 } else {
10494#line 941
10495 mbox->m_out.cmd = (u8 )3U;
10496 }
10497 }
10498#line 944
10499 __cil_tmp282 = scb->pthru_dma_addr;
10500#line 944
10501 mbox->m_out.xferaddr = (u32 )__cil_tmp282;
10502 }
10503 }
10504#line 947
10505 return (scb);
10506 }
10507 }
10508#line 949
10509 return ((scb_t *)0);
10510}
10511}
10512#line 964 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
10513static mega_passthru *mega_prepare_passthru(adapter_t *adapter , scb_t *scb , Scsi_Cmnd *cmd ,
10514 int channel , int target )
10515{ mega_passthru *pthru ;
10516 size_t __len ;
10517 void *__ret ;
10518 int tmp ;
10519 void *__cil_tmp10 ;
10520 u32 __cil_tmp11 ;
10521 long __cil_tmp12 ;
10522 long __cil_tmp13 ;
10523 u32 __cil_tmp14 ;
10524 long __cil_tmp15 ;
10525 long __cil_tmp16 ;
10526 signed char __cil_tmp17 ;
10527 int __cil_tmp18 ;
10528 int __cil_tmp19 ;
10529 signed char __cil_tmp20 ;
10530 int __cil_tmp21 ;
10531 int __cil_tmp22 ;
10532 unsigned short __cil_tmp23 ;
10533 struct scsi_device *__cil_tmp24 ;
10534 unsigned int __cil_tmp25 ;
10535 unsigned short __cil_tmp26 ;
10536 u8 (*__cil_tmp27)[10U] ;
10537 void *__cil_tmp28 ;
10538 unsigned char *__cil_tmp29 ;
10539 void const *__cil_tmp30 ;
10540 unsigned char *__cil_tmp31 ;
10541 unsigned char __cil_tmp32 ;
10542 int __cil_tmp33 ;
10543 unsigned char *__cil_tmp34 ;
10544 unsigned char __cil_tmp35 ;
10545 int __cil_tmp36 ;
10546 struct scsi_device *__cil_tmp37 ;
10547 unsigned int __cil_tmp38 ;
10548 int __cil_tmp39 ;
10549 u32 __cil_tmp40 ;
10550 long __cil_tmp41 ;
10551 long __cil_tmp42 ;
10552 long __cil_tmp43 ;
10553 struct Scsi_Host *__cil_tmp44 ;
10554 unsigned int __cil_tmp45 ;
10555 struct scsi_device *__cil_tmp46 ;
10556 unsigned int __cil_tmp47 ;
10557 struct scsi_device *__cil_tmp48 ;
10558 unsigned int __cil_tmp49 ;
10559 int __cil_tmp50 ;
10560 long __cil_tmp51 ;
10561 int __cil_tmp52 ;
10562 u32 __cil_tmp53 ;
10563 int __cil_tmp54 ;
10564 int __cil_tmp55 ;
10565 u32 *__cil_tmp56 ;
10566 u32 *__cil_tmp57 ;
10567
10568 {
10569 {
10570#line 969
10571 pthru = scb->pthru;
10572#line 970
10573 __cil_tmp10 = (void *)pthru;
10574#line 970
10575 memset(__cil_tmp10, 0, 60UL);
10576#line 973
10577 pthru->timeout = (unsigned char)2;
10578#line 975
10579 pthru->ars = (unsigned char)1;
10580#line 976
10581 pthru->reqsenselen = (u8 )14U;
10582#line 977
10583 pthru->islogical = (unsigned char)0;
10584 }
10585 {
10586#line 979
10587 __cil_tmp11 = adapter->flag;
10588#line 979
10589 __cil_tmp12 = (long )__cil_tmp11;
10590#line 979
10591 __cil_tmp13 = __cil_tmp12 & 134217728L;
10592#line 979
10593 if (__cil_tmp13 == 0L) {
10594#line 979
10595 pthru->channel = (u8 )channel;
10596 } else {
10597#line 979
10598 pthru->channel = (u8 )0U;
10599 }
10600 }
10601 {
10602#line 981
10603 __cil_tmp14 = adapter->flag;
10604#line 981
10605 __cil_tmp15 = (long )__cil_tmp14;
10606#line 981
10607 __cil_tmp16 = __cil_tmp15 & 134217728L;
10608#line 981
10609 if (__cil_tmp16 != 0L) {
10610#line 981
10611 __cil_tmp17 = (signed char )target;
10612#line 981
10613 __cil_tmp18 = (int )__cil_tmp17;
10614#line 981
10615 __cil_tmp19 = channel << 4;
10616#line 981
10617 __cil_tmp20 = (signed char )__cil_tmp19;
10618#line 981
10619 __cil_tmp21 = (int )__cil_tmp20;
10620#line 981
10621 __cil_tmp22 = __cil_tmp21 | __cil_tmp18;
10622#line 981
10623 pthru->target = (u8 )__cil_tmp22;
10624 } else {
10625#line 981
10626 pthru->target = (u8 )target;
10627 }
10628 }
10629 {
10630#line 984
10631 __cil_tmp23 = cmd->cmd_len;
10632#line 984
10633 pthru->cdblen = (u8 )__cil_tmp23;
10634#line 985
10635 __cil_tmp24 = cmd->device;
10636#line 985
10637 __cil_tmp25 = __cil_tmp24->lun;
10638#line 985
10639 pthru->logdrv = (u8 )__cil_tmp25;
10640#line 987
10641 __cil_tmp26 = cmd->cmd_len;
10642#line 987
10643 __len = (size_t )__cil_tmp26;
10644#line 987
10645 __cil_tmp27 = & pthru->cdb;
10646#line 987
10647 __cil_tmp28 = (void *)__cil_tmp27;
10648#line 987
10649 __cil_tmp29 = cmd->cmnd;
10650#line 987
10651 __cil_tmp30 = (void const *)__cil_tmp29;
10652#line 987
10653 __ret = __builtin_memcpy(__cil_tmp28, __cil_tmp30, __len);
10654#line 990
10655 scb->dma_direction = 0U;
10656 }
10657 {
10658#line 994
10659 __cil_tmp31 = cmd->cmnd;
10660#line 994
10661 __cil_tmp32 = *__cil_tmp31;
10662#line 994
10663 __cil_tmp33 = (int )__cil_tmp32;
10664#line 994
10665 if (__cil_tmp33 == 18) {
10666#line 994
10667 goto case_18;
10668 } else {
10669 {
10670#line 995
10671 __cil_tmp34 = cmd->cmnd;
10672#line 995
10673 __cil_tmp35 = *__cil_tmp34;
10674#line 995
10675 __cil_tmp36 = (int )__cil_tmp35;
10676#line 995
10677 if (__cil_tmp36 == 37) {
10678#line 995
10679 goto case_37;
10680 } else {
10681#line 1007
10682 goto switch_default;
10683#line 993
10684 if (0) {
10685 case_18: ;
10686 case_37: ;
10687 {
10688#line 996
10689 __cil_tmp37 = cmd->device;
10690#line 996
10691 __cil_tmp38 = __cil_tmp37->channel;
10692#line 996
10693 __cil_tmp39 = (int )__cil_tmp38;
10694#line 996
10695 __cil_tmp40 = adapter->flag;
10696#line 996
10697 __cil_tmp41 = (long )__cil_tmp40;
10698#line 996
10699 __cil_tmp42 = __cil_tmp41 >> __cil_tmp39;
10700#line 996
10701 __cil_tmp43 = __cil_tmp42 & 1L;
10702#line 996
10703 if (__cil_tmp43 == 0L) {
10704 {
10705#line 998
10706 __cil_tmp44 = adapter->host;
10707#line 998
10708 __cil_tmp45 = __cil_tmp44->host_no;
10709#line 998
10710 __cil_tmp46 = cmd->device;
10711#line 998
10712 __cil_tmp47 = __cil_tmp46->channel;
10713#line 998
10714 printk("<5>scsi%d: scanning scsi channel %d [P%d] ", __cil_tmp45, __cil_tmp47,
10715 channel);
10716#line 1002
10717 printk("for physical devices.\n");
10718#line 1004
10719 __cil_tmp48 = cmd->device;
10720#line 1004
10721 __cil_tmp49 = __cil_tmp48->channel;
10722#line 1004
10723 __cil_tmp50 = (int )__cil_tmp49;
10724#line 1004
10725 __cil_tmp51 = 1L << __cil_tmp50;
10726#line 1004
10727 __cil_tmp52 = (int )__cil_tmp51;
10728#line 1004
10729 __cil_tmp53 = adapter->flag;
10730#line 1004
10731 __cil_tmp54 = (int )__cil_tmp53;
10732#line 1004
10733 __cil_tmp55 = __cil_tmp54 | __cil_tmp52;
10734#line 1004
10735 adapter->flag = (u32 )__cil_tmp55;
10736 }
10737 } else {
10738
10739 }
10740 }
10741 switch_default:
10742 {
10743#line 1008
10744 __cil_tmp56 = & pthru->dataxferaddr;
10745#line 1008
10746 __cil_tmp57 = & pthru->dataxferlen;
10747#line 1008
10748 tmp = mega_build_sglist(adapter, scb, __cil_tmp56, __cil_tmp57);
10749#line 1008
10750 pthru->numsgelements = (u8 )tmp;
10751 }
10752#line 1010
10753 goto ldv_32012;
10754 } else {
10755
10756 }
10757 }
10758 }
10759 }
10760 }
10761 ldv_32012: ;
10762#line 1012
10763 return (pthru);
10764}
10765}
10766#line 1028 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
10767static mega_ext_passthru *mega_prepare_extpassthru(adapter_t *adapter , scb_t *scb ,
10768 Scsi_Cmnd *cmd , int channel ,
10769 int target )
10770{ mega_ext_passthru *epthru ;
10771 size_t __len ;
10772 void *__ret ;
10773 int tmp ;
10774 void *__cil_tmp10 ;
10775 u32 __cil_tmp11 ;
10776 long __cil_tmp12 ;
10777 long __cil_tmp13 ;
10778 u32 __cil_tmp14 ;
10779 long __cil_tmp15 ;
10780 long __cil_tmp16 ;
10781 signed char __cil_tmp17 ;
10782 int __cil_tmp18 ;
10783 int __cil_tmp19 ;
10784 signed char __cil_tmp20 ;
10785 int __cil_tmp21 ;
10786 int __cil_tmp22 ;
10787 unsigned short __cil_tmp23 ;
10788 struct scsi_device *__cil_tmp24 ;
10789 unsigned int __cil_tmp25 ;
10790 unsigned short __cil_tmp26 ;
10791 u8 (*__cil_tmp27)[16U] ;
10792 void *__cil_tmp28 ;
10793 unsigned char *__cil_tmp29 ;
10794 void const *__cil_tmp30 ;
10795 unsigned char *__cil_tmp31 ;
10796 unsigned char __cil_tmp32 ;
10797 int __cil_tmp33 ;
10798 unsigned char *__cil_tmp34 ;
10799 unsigned char __cil_tmp35 ;
10800 int __cil_tmp36 ;
10801 struct scsi_device *__cil_tmp37 ;
10802 unsigned int __cil_tmp38 ;
10803 int __cil_tmp39 ;
10804 u32 __cil_tmp40 ;
10805 long __cil_tmp41 ;
10806 long __cil_tmp42 ;
10807 long __cil_tmp43 ;
10808 struct Scsi_Host *__cil_tmp44 ;
10809 unsigned int __cil_tmp45 ;
10810 struct scsi_device *__cil_tmp46 ;
10811 unsigned int __cil_tmp47 ;
10812 struct scsi_device *__cil_tmp48 ;
10813 unsigned int __cil_tmp49 ;
10814 int __cil_tmp50 ;
10815 long __cil_tmp51 ;
10816 int __cil_tmp52 ;
10817 u32 __cil_tmp53 ;
10818 int __cil_tmp54 ;
10819 int __cil_tmp55 ;
10820 u32 *__cil_tmp56 ;
10821 u32 *__cil_tmp57 ;
10822
10823 {
10824 {
10825#line 1033
10826 epthru = scb->epthru;
10827#line 1034
10828 __cil_tmp10 = (void *)epthru;
10829#line 1034
10830 memset(__cil_tmp10, 0, 68UL);
10831#line 1037
10832 epthru->timeout = (unsigned char)2;
10833#line 1039
10834 epthru->ars = (unsigned char)1;
10835#line 1040
10836 epthru->reqsenselen = (u8 )14U;
10837#line 1041
10838 epthru->islogical = (unsigned char)0;
10839 }
10840 {
10841#line 1043
10842 __cil_tmp11 = adapter->flag;
10843#line 1043
10844 __cil_tmp12 = (long )__cil_tmp11;
10845#line 1043
10846 __cil_tmp13 = __cil_tmp12 & 134217728L;
10847#line 1043
10848 if (__cil_tmp13 == 0L) {
10849#line 1043
10850 epthru->channel = (u8 )channel;
10851 } else {
10852#line 1043
10853 epthru->channel = (u8 )0U;
10854 }
10855 }
10856 {
10857#line 1044
10858 __cil_tmp14 = adapter->flag;
10859#line 1044
10860 __cil_tmp15 = (long )__cil_tmp14;
10861#line 1044
10862 __cil_tmp16 = __cil_tmp15 & 134217728L;
10863#line 1044
10864 if (__cil_tmp16 != 0L) {
10865#line 1044
10866 __cil_tmp17 = (signed char )target;
10867#line 1044
10868 __cil_tmp18 = (int )__cil_tmp17;
10869#line 1044
10870 __cil_tmp19 = channel << 4;
10871#line 1044
10872 __cil_tmp20 = (signed char )__cil_tmp19;
10873#line 1044
10874 __cil_tmp21 = (int )__cil_tmp20;
10875#line 1044
10876 __cil_tmp22 = __cil_tmp21 | __cil_tmp18;
10877#line 1044
10878 epthru->target = (u8 )__cil_tmp22;
10879 } else {
10880#line 1044
10881 epthru->target = (u8 )target;
10882 }
10883 }
10884 {
10885#line 1047
10886 __cil_tmp23 = cmd->cmd_len;
10887#line 1047
10888 epthru->cdblen = (u8 )__cil_tmp23;
10889#line 1048
10890 __cil_tmp24 = cmd->device;
10891#line 1048
10892 __cil_tmp25 = __cil_tmp24->lun;
10893#line 1048
10894 epthru->logdrv = (u8 )__cil_tmp25;
10895#line 1050
10896 __cil_tmp26 = cmd->cmd_len;
10897#line 1050
10898 __len = (size_t )__cil_tmp26;
10899#line 1050
10900 __cil_tmp27 = & epthru->cdb;
10901#line 1050
10902 __cil_tmp28 = (void *)__cil_tmp27;
10903#line 1050
10904 __cil_tmp29 = cmd->cmnd;
10905#line 1050
10906 __cil_tmp30 = (void const *)__cil_tmp29;
10907#line 1050
10908 __ret = __builtin_memcpy(__cil_tmp28, __cil_tmp30, __len);
10909#line 1053
10910 scb->dma_direction = 0U;
10911 }
10912 {
10913#line 1056
10914 __cil_tmp31 = cmd->cmnd;
10915#line 1056
10916 __cil_tmp32 = *__cil_tmp31;
10917#line 1056
10918 __cil_tmp33 = (int )__cil_tmp32;
10919#line 1056
10920 if (__cil_tmp33 == 18) {
10921#line 1056
10922 goto case_18;
10923 } else {
10924 {
10925#line 1057
10926 __cil_tmp34 = cmd->cmnd;
10927#line 1057
10928 __cil_tmp35 = *__cil_tmp34;
10929#line 1057
10930 __cil_tmp36 = (int )__cil_tmp35;
10931#line 1057
10932 if (__cil_tmp36 == 37) {
10933#line 1057
10934 goto case_37;
10935 } else {
10936#line 1069
10937 goto switch_default;
10938#line 1055
10939 if (0) {
10940 case_18: ;
10941 case_37: ;
10942 {
10943#line 1058
10944 __cil_tmp37 = cmd->device;
10945#line 1058
10946 __cil_tmp38 = __cil_tmp37->channel;
10947#line 1058
10948 __cil_tmp39 = (int )__cil_tmp38;
10949#line 1058
10950 __cil_tmp40 = adapter->flag;
10951#line 1058
10952 __cil_tmp41 = (long )__cil_tmp40;
10953#line 1058
10954 __cil_tmp42 = __cil_tmp41 >> __cil_tmp39;
10955#line 1058
10956 __cil_tmp43 = __cil_tmp42 & 1L;
10957#line 1058
10958 if (__cil_tmp43 == 0L) {
10959 {
10960#line 1060
10961 __cil_tmp44 = adapter->host;
10962#line 1060
10963 __cil_tmp45 = __cil_tmp44->host_no;
10964#line 1060
10965 __cil_tmp46 = cmd->device;
10966#line 1060
10967 __cil_tmp47 = __cil_tmp46->channel;
10968#line 1060
10969 printk("<5>scsi%d: scanning scsi channel %d [P%d] ", __cil_tmp45, __cil_tmp47,
10970 channel);
10971#line 1064
10972 printk("for physical devices.\n");
10973#line 1066
10974 __cil_tmp48 = cmd->device;
10975#line 1066
10976 __cil_tmp49 = __cil_tmp48->channel;
10977#line 1066
10978 __cil_tmp50 = (int )__cil_tmp49;
10979#line 1066
10980 __cil_tmp51 = 1L << __cil_tmp50;
10981#line 1066
10982 __cil_tmp52 = (int )__cil_tmp51;
10983#line 1066
10984 __cil_tmp53 = adapter->flag;
10985#line 1066
10986 __cil_tmp54 = (int )__cil_tmp53;
10987#line 1066
10988 __cil_tmp55 = __cil_tmp54 | __cil_tmp52;
10989#line 1066
10990 adapter->flag = (u32 )__cil_tmp55;
10991 }
10992 } else {
10993
10994 }
10995 }
10996 switch_default:
10997 {
10998#line 1070
10999 __cil_tmp56 = & epthru->dataxferaddr;
11000#line 1070
11001 __cil_tmp57 = & epthru->dataxferlen;
11002#line 1070
11003 tmp = mega_build_sglist(adapter, scb, __cil_tmp56, __cil_tmp57);
11004#line 1070
11005 epthru->numsgelements = (u8 )tmp;
11006 }
11007#line 1072
11008 goto ldv_32027;
11009 } else {
11010
11011 }
11012 }
11013 }
11014 }
11015 }
11016 ldv_32027: ;
11017#line 1075
11018 return (epthru);
11019}
11020}
11021#line 1079 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
11022static void __mega_runpendq(adapter_t *adapter )
11023{ scb_t *scb ;
11024 struct list_head *pos ;
11025 struct list_head *next ;
11026 struct list_head const *__mptr ;
11027 int tmp ;
11028 scb_t *__cil_tmp7 ;
11029 u32 __cil_tmp8 ;
11030 unsigned int __cil_tmp9 ;
11031 unsigned long __cil_tmp10 ;
11032 struct list_head *__cil_tmp11 ;
11033 unsigned long __cil_tmp12 ;
11034
11035 {
11036#line 1085
11037 pos = adapter->pending_list.next;
11038#line 1085
11039 next = pos->next;
11040#line 1085
11041 goto ldv_32037;
11042 ldv_32036:
11043#line 1087
11044 __mptr = (struct list_head const *)pos;
11045#line 1087
11046 __cil_tmp7 = (scb_t *)__mptr;
11047#line 1087
11048 scb = __cil_tmp7 + 1152921504606846968UL;
11049 {
11050#line 1089
11051 __cil_tmp8 = scb->state;
11052#line 1089
11053 __cil_tmp9 = __cil_tmp8 & 4U;
11054#line 1089
11055 if (__cil_tmp9 == 0U) {
11056 {
11057#line 1091
11058 tmp = issue_scb(adapter, scb);
11059 }
11060#line 1091
11061 if (tmp != 0) {
11062#line 1092
11063 return;
11064 } else {
11065
11066 }
11067 } else {
11068
11069 }
11070 }
11071#line 1085
11072 pos = next;
11073#line 1085
11074 next = pos->next;
11075 ldv_32037: ;
11076 {
11077#line 1085
11078 __cil_tmp10 = (unsigned long )pos;
11079#line 1085
11080 __cil_tmp11 = & adapter->pending_list;
11081#line 1085
11082 __cil_tmp12 = (unsigned long )__cil_tmp11;
11083#line 1085
11084 if (__cil_tmp12 != __cil_tmp10) {
11085#line 1086
11086 goto ldv_32036;
11087 } else {
11088#line 1088
11089 goto ldv_32038;
11090 }
11091 }
11092 ldv_32038: ;
11093#line 1096
11094 return;
11095}
11096}
11097#line 1110 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
11098static int issue_scb(adapter_t *adapter , scb_t *scb )
11099{ mbox64_t volatile *mbox64 ;
11100 mbox_t volatile *mbox ;
11101 unsigned int i ;
11102 long tmp ;
11103 size_t __len ;
11104 void *__ret ;
11105 long tmp___0 ;
11106 u8 volatile __cil_tmp10 ;
11107 unsigned char __cil_tmp11 ;
11108 unsigned int __cil_tmp12 ;
11109 int __cil_tmp13 ;
11110 long __cil_tmp14 ;
11111 u8 volatile __cil_tmp15 ;
11112 unsigned char __cil_tmp16 ;
11113 unsigned int __cil_tmp17 ;
11114 unsigned int __cil_tmp18 ;
11115 u8 volatile __cil_tmp19 ;
11116 unsigned char __cil_tmp20 ;
11117 unsigned int __cil_tmp21 ;
11118 struct mbox_out volatile *__cil_tmp22 ;
11119 void *__cil_tmp23 ;
11120 u8 (*__cil_tmp24)[66U] ;
11121 void const *__cil_tmp25 ;
11122 struct mbox_out volatile *__cil_tmp26 ;
11123 void *__cil_tmp27 ;
11124 u8 (*__cil_tmp28)[66U] ;
11125 void const *__cil_tmp29 ;
11126 int __cil_tmp30 ;
11127 atomic_t *__cil_tmp31 ;
11128 u8 volatile __cil_tmp32 ;
11129 int __cil_tmp33 ;
11130 u8 volatile __cil_tmp34 ;
11131 int __cil_tmp35 ;
11132 u8 volatile __cil_tmp36 ;
11133 int __cil_tmp37 ;
11134 u8 volatile __cil_tmp38 ;
11135 int __cil_tmp39 ;
11136 u32 __cil_tmp40 ;
11137 u32 __cil_tmp41 ;
11138 long __cil_tmp42 ;
11139 long __cil_tmp43 ;
11140 int __cil_tmp44 ;
11141 long __cil_tmp45 ;
11142 dma_addr_t __cil_tmp46 ;
11143 unsigned int __cil_tmp47 ;
11144 unsigned int __cil_tmp48 ;
11145 void *__cil_tmp49 ;
11146 void volatile *__cil_tmp50 ;
11147 void volatile *__cil_tmp51 ;
11148 unsigned long __cil_tmp52 ;
11149 unsigned int __cil_tmp53 ;
11150 unsigned int __cil_tmp54 ;
11151 int __cil_tmp55 ;
11152 unsigned long __cil_tmp56 ;
11153 int __cil_tmp57 ;
11154
11155 {
11156 {
11157#line 1112
11158 mbox64 = adapter->mbox64;
11159#line 1113
11160 mbox = adapter->mbox;
11161#line 1114
11162 i = 0U;
11163#line 1116
11164 __cil_tmp10 = mbox->m_in.busy;
11165#line 1116
11166 __cil_tmp11 = (unsigned char )__cil_tmp10;
11167#line 1116
11168 __cil_tmp12 = (unsigned int )__cil_tmp11;
11169#line 1116
11170 __cil_tmp13 = __cil_tmp12 != 0U;
11171#line 1116
11172 __cil_tmp14 = (long )__cil_tmp13;
11173#line 1116
11174 tmp = __builtin_expect(__cil_tmp14, 0L);
11175 }
11176#line 1116
11177 if (tmp != 0L) {
11178 ldv_32046:
11179 {
11180#line 1118
11181 __const_udelay(4295UL);
11182#line 1119
11183 i = i + 1U;
11184 }
11185 {
11186#line 1120
11187 __cil_tmp15 = mbox->m_in.busy;
11188#line 1120
11189 __cil_tmp16 = (unsigned char )__cil_tmp15;
11190#line 1120
11191 __cil_tmp17 = (unsigned int )__cil_tmp16;
11192#line 1120
11193 if (__cil_tmp17 != 0U) {
11194 {
11195#line 1120
11196 __cil_tmp18 = (unsigned int )max_mbox_busy_wait;
11197#line 1120
11198 if (__cil_tmp18 > i) {
11199#line 1121
11200 goto ldv_32046;
11201 } else {
11202#line 1123
11203 goto ldv_32047;
11204 }
11205 }
11206 } else {
11207#line 1123
11208 goto ldv_32047;
11209 }
11210 }
11211 ldv_32047: ;
11212 {
11213#line 1122
11214 __cil_tmp19 = mbox->m_in.busy;
11215#line 1122
11216 __cil_tmp20 = (unsigned char )__cil_tmp19;
11217#line 1122
11218 __cil_tmp21 = (unsigned int )__cil_tmp20;
11219#line 1122
11220 if (__cil_tmp21 != 0U) {
11221#line 1122
11222 return (-1);
11223 } else {
11224
11225 }
11226 }
11227 } else {
11228
11229 }
11230#line 1126
11231 __len = 15UL;
11232#line 1126
11233 if (__len > 63UL) {
11234 {
11235#line 1126
11236 __cil_tmp22 = & mbox->m_out;
11237#line 1126
11238 __cil_tmp23 = (void *)__cil_tmp22;
11239#line 1126
11240 __cil_tmp24 = & scb->raw_mbox;
11241#line 1126
11242 __cil_tmp25 = (void const *)__cil_tmp24;
11243#line 1126
11244 __ret = __memcpy(__cil_tmp23, __cil_tmp25, __len);
11245 }
11246 } else {
11247 {
11248#line 1126
11249 __cil_tmp26 = & mbox->m_out;
11250#line 1126
11251 __cil_tmp27 = (void *)__cil_tmp26;
11252#line 1126
11253 __cil_tmp28 = & scb->raw_mbox;
11254#line 1126
11255 __cil_tmp29 = (void const *)__cil_tmp28;
11256#line 1126
11257 __ret = __builtin_memcpy(__cil_tmp27, __cil_tmp29, __len);
11258 }
11259 }
11260 {
11261#line 1129
11262 __cil_tmp30 = scb->idx;
11263#line 1129
11264 mbox->m_out.cmdid = (u8 volatile )__cil_tmp30;
11265#line 1130
11266 mbox->m_in.busy = (u8 volatile )1U;
11267#line 1136
11268 __cil_tmp31 = & adapter->pend_cmds;
11269#line 1136
11270 atomic_inc(__cil_tmp31);
11271 }
11272 {
11273#line 1139
11274 __cil_tmp32 = mbox->m_out.cmd;
11275#line 1139
11276 __cil_tmp33 = (int )__cil_tmp32;
11277#line 1139
11278 if (__cil_tmp33 == 167) {
11279#line 1139
11280 goto case_167;
11281 } else {
11282 {
11283#line 1140
11284 __cil_tmp34 = mbox->m_out.cmd;
11285#line 1140
11286 __cil_tmp35 = (int )__cil_tmp34;
11287#line 1140
11288 if (__cil_tmp35 == 168) {
11289#line 1140
11290 goto case_168;
11291 } else {
11292 {
11293#line 1141
11294 __cil_tmp36 = mbox->m_out.cmd;
11295#line 1141
11296 __cil_tmp37 = (int )__cil_tmp36;
11297#line 1141
11298 if (__cil_tmp37 == 195) {
11299#line 1141
11300 goto case_195;
11301 } else {
11302 {
11303#line 1142
11304 __cil_tmp38 = mbox->m_out.cmd;
11305#line 1142
11306 __cil_tmp39 = (int )__cil_tmp38;
11307#line 1142
11308 if (__cil_tmp39 == 227) {
11309#line 1142
11310 goto case_227;
11311 } else {
11312#line 1147
11313 goto switch_default;
11314#line 1138
11315 if (0) {
11316 case_167: ;
11317 case_168: ;
11318 case_195: ;
11319 case_227:
11320#line 1143
11321 mbox64->xfer_segment_lo = mbox->m_out.xferaddr;
11322#line 1144
11323 mbox64->xfer_segment_hi = (u32 volatile )0U;
11324#line 1145
11325 mbox->m_out.xferaddr = (u32 volatile )4294967295U;
11326#line 1146
11327 goto ldv_32055;
11328 switch_default:
11329#line 1148
11330 mbox64->xfer_segment_lo = (u32 volatile )0U;
11331#line 1149
11332 mbox64->xfer_segment_hi = (u32 volatile )0U;
11333 } else {
11334
11335 }
11336 }
11337 }
11338 }
11339 }
11340 }
11341 }
11342 }
11343 }
11344 ldv_32055:
11345 {
11346#line 1155
11347 __cil_tmp40 = scb->state;
11348#line 1155
11349 scb->state = __cil_tmp40 | 4U;
11350#line 1157
11351 __cil_tmp41 = adapter->flag;
11352#line 1157
11353 __cil_tmp42 = (long )__cil_tmp41;
11354#line 1157
11355 __cil_tmp43 = __cil_tmp42 & 536870912L;
11356#line 1157
11357 __cil_tmp44 = __cil_tmp43 != 0L;
11358#line 1157
11359 __cil_tmp45 = (long )__cil_tmp44;
11360#line 1157
11361 tmp___0 = __builtin_expect(__cil_tmp45, 1L);
11362 }
11363#line 1157
11364 if (tmp___0 != 0L) {
11365 {
11366#line 1158
11367 mbox->m_in.poll = (u8 volatile )0U;
11368#line 1159
11369 mbox->m_in.ack = (u8 volatile )0U;
11370#line 1160
11371 __cil_tmp46 = adapter->mbox_dma;
11372#line 1160
11373 __cil_tmp47 = (unsigned int )__cil_tmp46;
11374#line 1160
11375 __cil_tmp48 = __cil_tmp47 | 1U;
11376#line 1160
11377 __cil_tmp49 = adapter->mmio_base;
11378#line 1160
11379 __cil_tmp50 = (void volatile *)__cil_tmp49;
11380#line 1160
11381 __cil_tmp51 = __cil_tmp50 + 32U;
11382#line 1160
11383 writel(__cil_tmp48, __cil_tmp51);
11384 }
11385 } else {
11386 {
11387#line 1163
11388 __cil_tmp52 = adapter->base;
11389#line 1163
11390 __cil_tmp53 = (unsigned int )__cil_tmp52;
11391#line 1163
11392 __cil_tmp54 = __cil_tmp53 + 1U;
11393#line 1163
11394 __cil_tmp55 = (int )__cil_tmp54;
11395#line 1163
11396 outb_p((unsigned char)192, __cil_tmp55);
11397#line 1164
11398 __cil_tmp56 = adapter->base;
11399#line 1164
11400 __cil_tmp57 = (int )__cil_tmp56;
11401#line 1164
11402 outb_p((unsigned char)16, __cil_tmp57);
11403 }
11404 }
11405#line 1167
11406 return (0);
11407}
11408}
11409#line 1174 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
11410__inline static int mega_busywait_mbox(adapter_t *adapter )
11411{ int tmp ;
11412 mbox_t volatile *__cil_tmp3 ;
11413 u8 volatile __cil_tmp4 ;
11414 unsigned char __cil_tmp5 ;
11415 unsigned int __cil_tmp6 ;
11416
11417 {
11418 {
11419#line 1176
11420 __cil_tmp3 = adapter->mbox;
11421#line 1176
11422 __cil_tmp4 = __cil_tmp3->m_in.busy;
11423#line 1176
11424 __cil_tmp5 = (unsigned char )__cil_tmp4;
11425#line 1176
11426 __cil_tmp6 = (unsigned int )__cil_tmp5;
11427#line 1176
11428 if (__cil_tmp6 != 0U) {
11429 {
11430#line 1177
11431 tmp = __mega_busywait_mbox(adapter);
11432 }
11433#line 1177
11434 return (tmp);
11435 } else {
11436
11437 }
11438 }
11439#line 1178
11440 return (0);
11441}
11442}
11443#line 1189 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
11444static int issue_scb_block(adapter_t *adapter , u_char *raw_mbox )
11445{ mbox64_t volatile *mbox64 ;
11446 mbox_t volatile *mbox ;
11447 u8 byte ;
11448 int tmp ;
11449 size_t __len ;
11450 void *__ret ;
11451 unsigned int tmp___0 ;
11452 long tmp___1 ;
11453 void *__cil_tmp11 ;
11454 void const *__cil_tmp12 ;
11455 void *__cil_tmp13 ;
11456 void const *__cil_tmp14 ;
11457 u_char __cil_tmp15 ;
11458 int __cil_tmp16 ;
11459 u_char __cil_tmp17 ;
11460 int __cil_tmp18 ;
11461 u_char __cil_tmp19 ;
11462 int __cil_tmp20 ;
11463 u_char __cil_tmp21 ;
11464 int __cil_tmp22 ;
11465 u32 __cil_tmp23 ;
11466 long __cil_tmp24 ;
11467 long __cil_tmp25 ;
11468 int __cil_tmp26 ;
11469 long __cil_tmp27 ;
11470 dma_addr_t __cil_tmp28 ;
11471 unsigned int __cil_tmp29 ;
11472 unsigned int __cil_tmp30 ;
11473 void *__cil_tmp31 ;
11474 void volatile *__cil_tmp32 ;
11475 void volatile *__cil_tmp33 ;
11476 u8 volatile __cil_tmp34 ;
11477 unsigned char __cil_tmp35 ;
11478 unsigned int __cil_tmp36 ;
11479 u8 volatile __cil_tmp37 ;
11480 unsigned char __cil_tmp38 ;
11481 unsigned int __cil_tmp39 ;
11482 dma_addr_t __cil_tmp40 ;
11483 unsigned int __cil_tmp41 ;
11484 unsigned int __cil_tmp42 ;
11485 void *__cil_tmp43 ;
11486 void volatile *__cil_tmp44 ;
11487 void volatile *__cil_tmp45 ;
11488 void *__cil_tmp46 ;
11489 void const volatile *__cil_tmp47 ;
11490 void const volatile *__cil_tmp48 ;
11491 unsigned int __cil_tmp49 ;
11492 unsigned long __cil_tmp50 ;
11493 unsigned int __cil_tmp51 ;
11494 unsigned int __cil_tmp52 ;
11495 int __cil_tmp53 ;
11496 unsigned long __cil_tmp54 ;
11497 int __cil_tmp55 ;
11498 unsigned long __cil_tmp56 ;
11499 unsigned int __cil_tmp57 ;
11500 unsigned int __cil_tmp58 ;
11501 int __cil_tmp59 ;
11502 int __cil_tmp60 ;
11503 int __cil_tmp61 ;
11504 int __cil_tmp62 ;
11505 unsigned char __cil_tmp63 ;
11506 unsigned long __cil_tmp64 ;
11507 unsigned int __cil_tmp65 ;
11508 unsigned int __cil_tmp66 ;
11509 int __cil_tmp67 ;
11510 unsigned long __cil_tmp68 ;
11511 unsigned int __cil_tmp69 ;
11512 unsigned int __cil_tmp70 ;
11513 int __cil_tmp71 ;
11514 unsigned long __cil_tmp72 ;
11515 int __cil_tmp73 ;
11516 u8 volatile __cil_tmp74 ;
11517
11518 {
11519 {
11520#line 1191
11521 mbox64 = adapter->mbox64;
11522#line 1192
11523 mbox = adapter->mbox;
11524#line 1196
11525 tmp = mega_busywait_mbox(adapter);
11526 }
11527#line 1196
11528 if (tmp != 0) {
11529#line 1197
11530 goto bug_blocked_mailbox;
11531 } else {
11532
11533 }
11534#line 1200
11535 __len = 15UL;
11536#line 1200
11537 if (__len > 63UL) {
11538 {
11539#line 1200
11540 __cil_tmp11 = (void *)mbox;
11541#line 1200
11542 __cil_tmp12 = (void const *)raw_mbox;
11543#line 1200
11544 __ret = __memcpy(__cil_tmp11, __cil_tmp12, __len);
11545 }
11546 } else {
11547 {
11548#line 1200
11549 __cil_tmp13 = (void *)mbox;
11550#line 1200
11551 __cil_tmp14 = (void const *)raw_mbox;
11552#line 1200
11553 __ret = __builtin_memcpy(__cil_tmp13, __cil_tmp14, __len);
11554 }
11555 }
11556#line 1201
11557 mbox->m_out.cmdid = (u8 volatile )254U;
11558#line 1202
11559 mbox->m_in.busy = (u8 volatile )1U;
11560 {
11561#line 1205
11562 __cil_tmp15 = *raw_mbox;
11563#line 1205
11564 __cil_tmp16 = (int )__cil_tmp15;
11565#line 1205
11566 if (__cil_tmp16 == 167) {
11567#line 1205
11568 goto case_167;
11569 } else {
11570 {
11571#line 1206
11572 __cil_tmp17 = *raw_mbox;
11573#line 1206
11574 __cil_tmp18 = (int )__cil_tmp17;
11575#line 1206
11576 if (__cil_tmp18 == 168) {
11577#line 1206
11578 goto case_168;
11579 } else {
11580 {
11581#line 1207
11582 __cil_tmp19 = *raw_mbox;
11583#line 1207
11584 __cil_tmp20 = (int )__cil_tmp19;
11585#line 1207
11586 if (__cil_tmp20 == 195) {
11587#line 1207
11588 goto case_195;
11589 } else {
11590 {
11591#line 1208
11592 __cil_tmp21 = *raw_mbox;
11593#line 1208
11594 __cil_tmp22 = (int )__cil_tmp21;
11595#line 1208
11596 if (__cil_tmp22 == 227) {
11597#line 1208
11598 goto case_227;
11599 } else {
11600#line 1213
11601 goto switch_default;
11602#line 1204
11603 if (0) {
11604 case_167: ;
11605 case_168: ;
11606 case_195: ;
11607 case_227:
11608#line 1209
11609 mbox64->xfer_segment_lo = mbox->m_out.xferaddr;
11610#line 1210
11611 mbox64->xfer_segment_hi = (u32 volatile )0U;
11612#line 1211
11613 mbox->m_out.xferaddr = (u32 volatile )4294967295U;
11614#line 1212
11615 goto ldv_32075;
11616 switch_default:
11617#line 1214
11618 mbox64->xfer_segment_lo = (u32 volatile )0U;
11619#line 1215
11620 mbox64->xfer_segment_hi = (u32 volatile )0U;
11621 } else {
11622
11623 }
11624 }
11625 }
11626 }
11627 }
11628 }
11629 }
11630 }
11631 }
11632 ldv_32075:
11633 {
11634#line 1218
11635 __cil_tmp23 = adapter->flag;
11636#line 1218
11637 __cil_tmp24 = (long )__cil_tmp23;
11638#line 1218
11639 __cil_tmp25 = __cil_tmp24 & 536870912L;
11640#line 1218
11641 __cil_tmp26 = __cil_tmp25 != 0L;
11642#line 1218
11643 __cil_tmp27 = (long )__cil_tmp26;
11644#line 1218
11645 tmp___1 = __builtin_expect(__cil_tmp27, 1L);
11646 }
11647#line 1218
11648 if (tmp___1 != 0L) {
11649 {
11650#line 1219
11651 mbox->m_in.poll = (u8 volatile )0U;
11652#line 1220
11653 mbox->m_in.ack = (u8 volatile )0U;
11654#line 1221
11655 mbox->m_in.numstatus = (u8 volatile )255U;
11656#line 1222
11657 mbox->m_in.status = (u8 volatile )255U;
11658#line 1223
11659 __cil_tmp28 = adapter->mbox_dma;
11660#line 1223
11661 __cil_tmp29 = (unsigned int )__cil_tmp28;
11662#line 1223
11663 __cil_tmp30 = __cil_tmp29 | 1U;
11664#line 1223
11665 __cil_tmp31 = adapter->mmio_base;
11666#line 1223
11667 __cil_tmp32 = (void volatile *)__cil_tmp31;
11668#line 1223
11669 __cil_tmp33 = __cil_tmp32 + 32U;
11670#line 1223
11671 writel(__cil_tmp30, __cil_tmp33);
11672 }
11673#line 1225
11674 goto ldv_32078;
11675 ldv_32077:
11676 {
11677#line 1226
11678 cpu_relax();
11679 }
11680 ldv_32078: ;
11681 {
11682#line 1225
11683 __cil_tmp34 = mbox->m_in.numstatus;
11684#line 1225
11685 __cil_tmp35 = (unsigned char )__cil_tmp34;
11686#line 1225
11687 __cil_tmp36 = (unsigned int )__cil_tmp35;
11688#line 1225
11689 if (__cil_tmp36 == 255U) {
11690#line 1226
11691 goto ldv_32077;
11692 } else {
11693#line 1228
11694 goto ldv_32079;
11695 }
11696 }
11697 ldv_32079:
11698#line 1228
11699 mbox->m_in.numstatus = (u8 volatile )255U;
11700#line 1230
11701 goto ldv_32081;
11702 ldv_32080:
11703 {
11704#line 1231
11705 cpu_relax();
11706 }
11707 ldv_32081: ;
11708 {
11709#line 1230
11710 __cil_tmp37 = mbox->m_in.poll;
11711#line 1230
11712 __cil_tmp38 = (unsigned char )__cil_tmp37;
11713#line 1230
11714 __cil_tmp39 = (unsigned int )__cil_tmp38;
11715#line 1230
11716 if (__cil_tmp39 != 119U) {
11717#line 1231
11718 goto ldv_32080;
11719 } else {
11720#line 1233
11721 goto ldv_32082;
11722 }
11723 }
11724 ldv_32082:
11725 {
11726#line 1233
11727 mbox->m_in.poll = (u8 volatile )0U;
11728#line 1234
11729 mbox->m_in.ack = (u8 volatile )119U;
11730#line 1236
11731 __cil_tmp40 = adapter->mbox_dma;
11732#line 1236
11733 __cil_tmp41 = (unsigned int )__cil_tmp40;
11734#line 1236
11735 __cil_tmp42 = __cil_tmp41 | 2U;
11736#line 1236
11737 __cil_tmp43 = adapter->mmio_base;
11738#line 1236
11739 __cil_tmp44 = (void volatile *)__cil_tmp43;
11740#line 1236
11741 __cil_tmp45 = __cil_tmp44 + 32U;
11742#line 1236
11743 writel(__cil_tmp42, __cil_tmp45);
11744 }
11745#line 1238
11746 goto ldv_32084;
11747 ldv_32083:
11748 {
11749#line 1239
11750 cpu_relax();
11751 }
11752 ldv_32084:
11753 {
11754#line 1238
11755 __cil_tmp46 = adapter->mmio_base;
11756#line 1238
11757 __cil_tmp47 = (void const volatile *)__cil_tmp46;
11758#line 1238
11759 __cil_tmp48 = __cil_tmp47 + 32U;
11760#line 1238
11761 tmp___0 = readl(__cil_tmp48);
11762 }
11763 {
11764#line 1238
11765 __cil_tmp49 = tmp___0 & 2U;
11766#line 1238
11767 if (__cil_tmp49 != 0U) {
11768#line 1239
11769 goto ldv_32083;
11770 } else {
11771#line 1241
11772 goto ldv_32085;
11773 }
11774 }
11775 ldv_32085: ;
11776 } else {
11777 {
11778#line 1242
11779 __cil_tmp50 = adapter->base;
11780#line 1242
11781 __cil_tmp51 = (unsigned int )__cil_tmp50;
11782#line 1242
11783 __cil_tmp52 = __cil_tmp51 + 1U;
11784#line 1242
11785 __cil_tmp53 = (int )__cil_tmp52;
11786#line 1242
11787 outb_p((unsigned char)0, __cil_tmp53);
11788#line 1243
11789 __cil_tmp54 = adapter->base;
11790#line 1243
11791 __cil_tmp55 = (int )__cil_tmp54;
11792#line 1243
11793 outb_p((unsigned char)16, __cil_tmp55);
11794 }
11795#line 1245
11796 goto ldv_32087;
11797 ldv_32086:
11798 {
11799#line 1246
11800 cpu_relax();
11801 }
11802 ldv_32087:
11803 {
11804#line 1245
11805 __cil_tmp56 = adapter->base;
11806#line 1245
11807 __cil_tmp57 = (unsigned int )__cil_tmp56;
11808#line 1245
11809 __cil_tmp58 = __cil_tmp57 + 10U;
11810#line 1245
11811 __cil_tmp59 = (int )__cil_tmp58;
11812#line 1245
11813 byte = inb_p(__cil_tmp59);
11814 }
11815 {
11816#line 1245
11817 __cil_tmp60 = (int )byte;
11818#line 1245
11819 __cil_tmp61 = __cil_tmp60 & 64;
11820#line 1245
11821 if (__cil_tmp61 == 0) {
11822#line 1246
11823 goto ldv_32086;
11824 } else {
11825#line 1248
11826 goto ldv_32088;
11827 }
11828 }
11829 ldv_32088:
11830 {
11831#line 1248
11832 __cil_tmp62 = (int )byte;
11833#line 1248
11834 __cil_tmp63 = (unsigned char )__cil_tmp62;
11835#line 1248
11836 __cil_tmp64 = adapter->base;
11837#line 1248
11838 __cil_tmp65 = (unsigned int )__cil_tmp64;
11839#line 1248
11840 __cil_tmp66 = __cil_tmp65 + 10U;
11841#line 1248
11842 __cil_tmp67 = (int )__cil_tmp66;
11843#line 1248
11844 outb_p(__cil_tmp63, __cil_tmp67);
11845#line 1249
11846 __cil_tmp68 = adapter->base;
11847#line 1249
11848 __cil_tmp69 = (unsigned int )__cil_tmp68;
11849#line 1249
11850 __cil_tmp70 = __cil_tmp69 + 1U;
11851#line 1249
11852 __cil_tmp71 = (int )__cil_tmp70;
11853#line 1249
11854 outb_p((unsigned char)192, __cil_tmp71);
11855#line 1250
11856 __cil_tmp72 = adapter->base;
11857#line 1250
11858 __cil_tmp73 = (int )__cil_tmp72;
11859#line 1250
11860 outb_p((unsigned char)8, __cil_tmp73);
11861 }
11862 }
11863 {
11864#line 1253
11865 __cil_tmp74 = mbox->m_in.status;
11866#line 1253
11867 return ((int )__cil_tmp74);
11868 }
11869 bug_blocked_mailbox:
11870 {
11871#line 1256
11872 printk("<4>megaraid: Blocked mailbox......!!\n");
11873#line 1257
11874 __const_udelay(4295000UL);
11875 }
11876#line 1258
11877 return (-1);
11878}
11879}
11880#line 1272 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
11881static irqreturn_t megaraid_isr_iomapped(int irq , void *devp )
11882{ adapter_t *adapter ;
11883 unsigned long flags ;
11884 u8 status ;
11885 u8 nstatus ;
11886 u8 completed[46U] ;
11887 u8 byte ;
11888 int handled ;
11889 raw_spinlock_t *tmp ;
11890 size_t __len ;
11891 void *__ret ;
11892 int tmp___0 ;
11893 spinlock_t *__cil_tmp14 ;
11894 unsigned long __cil_tmp15 ;
11895 unsigned int __cil_tmp16 ;
11896 unsigned int __cil_tmp17 ;
11897 int __cil_tmp18 ;
11898 int __cil_tmp19 ;
11899 int __cil_tmp20 ;
11900 int __cil_tmp21 ;
11901 unsigned char __cil_tmp22 ;
11902 unsigned long __cil_tmp23 ;
11903 unsigned int __cil_tmp24 ;
11904 unsigned int __cil_tmp25 ;
11905 int __cil_tmp26 ;
11906 mbox_t volatile *__cil_tmp27 ;
11907 u8 volatile __cil_tmp28 ;
11908 unsigned int __cil_tmp29 ;
11909 mbox_t volatile *__cil_tmp30 ;
11910 mbox_t volatile *__cil_tmp31 ;
11911 u8 volatile __cil_tmp32 ;
11912 int __cil_tmp33 ;
11913 atomic_t *__cil_tmp34 ;
11914 void *__cil_tmp35 ;
11915 mbox_t volatile *__cil_tmp36 ;
11916 u8 volatile ((*__cil_tmp37))[46U] ;
11917 void const *__cil_tmp38 ;
11918 unsigned long __cil_tmp39 ;
11919 int __cil_tmp40 ;
11920 u8 *__cil_tmp41 ;
11921 int __cil_tmp42 ;
11922 int __cil_tmp43 ;
11923 atomic_t *__cil_tmp44 ;
11924 atomic_t const *__cil_tmp45 ;
11925 spinlock_t *__cil_tmp46 ;
11926 int __cil_tmp47 ;
11927
11928 {
11929 {
11930#line 1274
11931 adapter = (adapter_t *)devp;
11932#line 1280
11933 handled = 0;
11934#line 1286
11935 __cil_tmp14 = & adapter->lock;
11936#line 1286
11937 tmp = spinlock_check(__cil_tmp14);
11938#line 1286
11939 flags = _raw_spin_lock_irqsave(tmp);
11940 }
11941 ldv_32110:
11942 {
11943#line 1290
11944 __cil_tmp15 = adapter->base;
11945#line 1290
11946 __cil_tmp16 = (unsigned int )__cil_tmp15;
11947#line 1290
11948 __cil_tmp17 = __cil_tmp16 + 10U;
11949#line 1290
11950 __cil_tmp18 = (int )__cil_tmp17;
11951#line 1290
11952 byte = inb_p(__cil_tmp18);
11953 }
11954 {
11955#line 1291
11956 __cil_tmp19 = (int )byte;
11957#line 1291
11958 __cil_tmp20 = __cil_tmp19 & 64;
11959#line 1291
11960 if (__cil_tmp20 == 0) {
11961#line 1295
11962 goto out_unlock;
11963 } else {
11964
11965 }
11966 }
11967 {
11968#line 1297
11969 __cil_tmp21 = (int )byte;
11970#line 1297
11971 __cil_tmp22 = (unsigned char )__cil_tmp21;
11972#line 1297
11973 __cil_tmp23 = adapter->base;
11974#line 1297
11975 __cil_tmp24 = (unsigned int )__cil_tmp23;
11976#line 1297
11977 __cil_tmp25 = __cil_tmp24 + 10U;
11978#line 1297
11979 __cil_tmp26 = (int )__cil_tmp25;
11980#line 1297
11981 outb_p(__cil_tmp22, __cil_tmp26);
11982 }
11983#line 1299
11984 goto ldv_32105;
11985 ldv_32104:
11986 {
11987#line 1301
11988 cpu_relax();
11989 }
11990 ldv_32105:
11991#line 1299
11992 __cil_tmp27 = adapter->mbox;
11993#line 1299
11994 __cil_tmp28 = __cil_tmp27->m_in.numstatus;
11995#line 1299
11996 nstatus = (u8 )__cil_tmp28;
11997 {
11998#line 1299
11999 __cil_tmp29 = (unsigned int )nstatus;
12000#line 1299
12001 if (__cil_tmp29 == 255U) {
12002#line 1301
12003 goto ldv_32104;
12004 } else {
12005#line 1303
12006 goto ldv_32106;
12007 }
12008 }
12009 ldv_32106:
12010 {
12011#line 1302
12012 __cil_tmp30 = adapter->mbox;
12013#line 1302
12014 __cil_tmp30->m_in.numstatus = (u8 volatile )255U;
12015#line 1304
12016 __cil_tmp31 = adapter->mbox;
12017#line 1304
12018 __cil_tmp32 = __cil_tmp31->m_in.status;
12019#line 1304
12020 status = (u8 )__cil_tmp32;
12021#line 1309
12022 __cil_tmp33 = (int )nstatus;
12023#line 1309
12024 __cil_tmp34 = & adapter->pend_cmds;
12025#line 1309
12026 atomic_sub(__cil_tmp33, __cil_tmp34);
12027#line 1311
12028 __len = (size_t )nstatus;
12029#line 1311
12030 __cil_tmp35 = (void *)(& completed);
12031#line 1311
12032 __cil_tmp36 = adapter->mbox;
12033#line 1311
12034 __cil_tmp37 = & __cil_tmp36->m_in.completed;
12035#line 1311
12036 __cil_tmp38 = (void const *)__cil_tmp37;
12037#line 1311
12038 __ret = __builtin_memcpy(__cil_tmp35, __cil_tmp38, __len);
12039#line 1315
12040 __cil_tmp39 = adapter->base;
12041#line 1315
12042 __cil_tmp40 = (int )__cil_tmp39;
12043#line 1315
12044 outb_p((unsigned char)8, __cil_tmp40);
12045#line 1317
12046 __cil_tmp41 = (u8 *)(& completed);
12047#line 1317
12048 __cil_tmp42 = (int )nstatus;
12049#line 1317
12050 __cil_tmp43 = (int )status;
12051#line 1317
12052 mega_cmd_done(adapter, __cil_tmp41, __cil_tmp42, __cil_tmp43);
12053#line 1319
12054 mega_rundoneq(adapter);
12055#line 1321
12056 handled = 1;
12057#line 1324
12058 __cil_tmp44 = & adapter->quiescent;
12059#line 1324
12060 __cil_tmp45 = (atomic_t const *)__cil_tmp44;
12061#line 1324
12062 tmp___0 = atomic_read(__cil_tmp45);
12063 }
12064#line 1324
12065 if (tmp___0 == 0) {
12066 {
12067#line 1325
12068 mega_runpendq(adapter);
12069 }
12070 } else {
12071
12072 }
12073#line 1328
12074 goto ldv_32110;
12075 out_unlock:
12076 {
12077#line 1332
12078 __cil_tmp46 = & adapter->lock;
12079#line 1332
12080 spin_unlock_irqrestore(__cil_tmp46, flags);
12081 }
12082 {
12083#line 1334
12084 __cil_tmp47 = handled != 0;
12085#line 1334
12086 return ((irqreturn_t )__cil_tmp47);
12087 }
12088}
12089}
12090#line 1348 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
12091static irqreturn_t megaraid_isr_memmapped(int irq , void *devp )
12092{ adapter_t *adapter ;
12093 unsigned long flags ;
12094 u8 status ;
12095 u32 dword ;
12096 u8 nstatus ;
12097 u8 completed[46U] ;
12098 int handled ;
12099 raw_spinlock_t *tmp ;
12100 size_t __len ;
12101 void *__ret ;
12102 unsigned int tmp___0 ;
12103 int tmp___1 ;
12104 spinlock_t *__cil_tmp15 ;
12105 void *__cil_tmp16 ;
12106 void const volatile *__cil_tmp17 ;
12107 void const volatile *__cil_tmp18 ;
12108 void *__cil_tmp19 ;
12109 void volatile *__cil_tmp20 ;
12110 void volatile *__cil_tmp21 ;
12111 mbox_t volatile *__cil_tmp22 ;
12112 u8 volatile __cil_tmp23 ;
12113 unsigned int __cil_tmp24 ;
12114 mbox_t volatile *__cil_tmp25 ;
12115 mbox_t volatile *__cil_tmp26 ;
12116 u8 volatile __cil_tmp27 ;
12117 int __cil_tmp28 ;
12118 atomic_t *__cil_tmp29 ;
12119 void *__cil_tmp30 ;
12120 mbox_t volatile *__cil_tmp31 ;
12121 u8 volatile ((*__cil_tmp32))[46U] ;
12122 void const *__cil_tmp33 ;
12123 void *__cil_tmp34 ;
12124 void volatile *__cil_tmp35 ;
12125 void volatile *__cil_tmp36 ;
12126 void *__cil_tmp37 ;
12127 void const volatile *__cil_tmp38 ;
12128 void const volatile *__cil_tmp39 ;
12129 unsigned int __cil_tmp40 ;
12130 u8 *__cil_tmp41 ;
12131 int __cil_tmp42 ;
12132 int __cil_tmp43 ;
12133 atomic_t *__cil_tmp44 ;
12134 atomic_t const *__cil_tmp45 ;
12135 spinlock_t *__cil_tmp46 ;
12136 int __cil_tmp47 ;
12137
12138 {
12139 {
12140#line 1350
12141 adapter = (adapter_t *)devp;
12142#line 1353
12143 dword = 0U;
12144#line 1356
12145 handled = 0;
12146#line 1362
12147 __cil_tmp15 = & adapter->lock;
12148#line 1362
12149 tmp = spinlock_check(__cil_tmp15);
12150#line 1362
12151 flags = _raw_spin_lock_irqsave(tmp);
12152 }
12153 ldv_32135:
12154 {
12155#line 1366
12156 __cil_tmp16 = adapter->mmio_base;
12157#line 1366
12158 __cil_tmp17 = (void const volatile *)__cil_tmp16;
12159#line 1366
12160 __cil_tmp18 = __cil_tmp17 + 44U;
12161#line 1366
12162 dword = readl(__cil_tmp18);
12163 }
12164#line 1367
12165 if (dword != 268440116U) {
12166#line 1371
12167 goto out_unlock;
12168 } else {
12169
12170 }
12171 {
12172#line 1373
12173 __cil_tmp19 = adapter->mmio_base;
12174#line 1373
12175 __cil_tmp20 = (void volatile *)__cil_tmp19;
12176#line 1373
12177 __cil_tmp21 = __cil_tmp20 + 44U;
12178#line 1373
12179 writel(268440116U, __cil_tmp21);
12180 }
12181#line 1375
12182 goto ldv_32127;
12183 ldv_32126:
12184 {
12185#line 1377
12186 cpu_relax();
12187 }
12188 ldv_32127:
12189#line 1375
12190 __cil_tmp22 = adapter->mbox;
12191#line 1375
12192 __cil_tmp23 = __cil_tmp22->m_in.numstatus;
12193#line 1375
12194 nstatus = (u8 )__cil_tmp23;
12195 {
12196#line 1375
12197 __cil_tmp24 = (unsigned int )nstatus;
12198#line 1375
12199 if (__cil_tmp24 == 255U) {
12200#line 1377
12201 goto ldv_32126;
12202 } else {
12203#line 1379
12204 goto ldv_32128;
12205 }
12206 }
12207 ldv_32128:
12208 {
12209#line 1379
12210 __cil_tmp25 = adapter->mbox;
12211#line 1379
12212 __cil_tmp25->m_in.numstatus = (u8 volatile )255U;
12213#line 1381
12214 __cil_tmp26 = adapter->mbox;
12215#line 1381
12216 __cil_tmp27 = __cil_tmp26->m_in.status;
12217#line 1381
12218 status = (u8 )__cil_tmp27;
12219#line 1386
12220 __cil_tmp28 = (int )nstatus;
12221#line 1386
12222 __cil_tmp29 = & adapter->pend_cmds;
12223#line 1386
12224 atomic_sub(__cil_tmp28, __cil_tmp29);
12225#line 1388
12226 __len = (size_t )nstatus;
12227#line 1388
12228 __cil_tmp30 = (void *)(& completed);
12229#line 1388
12230 __cil_tmp31 = adapter->mbox;
12231#line 1388
12232 __cil_tmp32 = & __cil_tmp31->m_in.completed;
12233#line 1388
12234 __cil_tmp33 = (void const *)__cil_tmp32;
12235#line 1388
12236 __ret = __builtin_memcpy(__cil_tmp30, __cil_tmp33, __len);
12237#line 1392
12238 __cil_tmp34 = adapter->mmio_base;
12239#line 1392
12240 __cil_tmp35 = (void volatile *)__cil_tmp34;
12241#line 1392
12242 __cil_tmp36 = __cil_tmp35 + 32U;
12243#line 1392
12244 writel(2U, __cil_tmp36);
12245#line 1394
12246 handled = 1;
12247 }
12248#line 1396
12249 goto ldv_32133;
12250 ldv_32132:
12251 {
12252#line 1397
12253 cpu_relax();
12254 }
12255 ldv_32133:
12256 {
12257#line 1396
12258 __cil_tmp37 = adapter->mmio_base;
12259#line 1396
12260 __cil_tmp38 = (void const volatile *)__cil_tmp37;
12261#line 1396
12262 __cil_tmp39 = __cil_tmp38 + 32U;
12263#line 1396
12264 tmp___0 = readl(__cil_tmp39);
12265 }
12266 {
12267#line 1396
12268 __cil_tmp40 = tmp___0 & 2U;
12269#line 1396
12270 if (__cil_tmp40 != 0U) {
12271#line 1397
12272 goto ldv_32132;
12273 } else {
12274#line 1399
12275 goto ldv_32134;
12276 }
12277 }
12278 ldv_32134:
12279 {
12280#line 1399
12281 __cil_tmp41 = (u8 *)(& completed);
12282#line 1399
12283 __cil_tmp42 = (int )nstatus;
12284#line 1399
12285 __cil_tmp43 = (int )status;
12286#line 1399
12287 mega_cmd_done(adapter, __cil_tmp41, __cil_tmp42, __cil_tmp43);
12288#line 1401
12289 mega_rundoneq(adapter);
12290#line 1404
12291 __cil_tmp44 = & adapter->quiescent;
12292#line 1404
12293 __cil_tmp45 = (atomic_t const *)__cil_tmp44;
12294#line 1404
12295 tmp___1 = atomic_read(__cil_tmp45);
12296 }
12297#line 1404
12298 if (tmp___1 == 0) {
12299 {
12300#line 1405
12301 mega_runpendq(adapter);
12302 }
12303 } else {
12304
12305 }
12306#line 1408
12307 goto ldv_32135;
12308 out_unlock:
12309 {
12310#line 1412
12311 __cil_tmp46 = & adapter->lock;
12312#line 1412
12313 spin_unlock_irqrestore(__cil_tmp46, flags);
12314 }
12315 {
12316#line 1414
12317 __cil_tmp47 = handled != 0;
12318#line 1414
12319 return ((irqreturn_t )__cil_tmp47);
12320 }
12321}
12322}
12323#line 1426 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
12324static void mega_cmd_done(adapter_t *adapter , u8 *completed , int nstatus , int status )
12325{ mega_ext_passthru *epthru ;
12326 struct scatterlist *sgl ;
12327 Scsi_Cmnd *cmd ;
12328 mega_passthru *pthru ;
12329 mbox_t *mbox ;
12330 u8 c ;
12331 scb_t *scb ;
12332 int islogical ;
12333 int cmdid ;
12334 int i ;
12335 void *tmp ;
12336 struct page *tmp___0 ;
12337 size_t __len ;
12338 void *__ret ;
12339 size_t __len___0 ;
12340 void *__ret___0 ;
12341 unsigned long __cil_tmp21 ;
12342 u8 *__cil_tmp22 ;
12343 u8 __cil_tmp23 ;
12344 u8 (*__cil_tmp24)[66U] ;
12345 unsigned long __cil_tmp25 ;
12346 scb_t *__cil_tmp26 ;
12347 u32 __cil_tmp27 ;
12348 unsigned int __cil_tmp28 ;
12349 u32 __cil_tmp29 ;
12350 Scsi_Cmnd *__cil_tmp30 ;
12351 Scsi_Cmnd *__cil_tmp31 ;
12352 unsigned long __cil_tmp32 ;
12353 Scsi_Cmnd *__cil_tmp33 ;
12354 unsigned long __cil_tmp34 ;
12355 u32 __cil_tmp35 ;
12356 Scsi_Cmnd *__cil_tmp36 ;
12357 u32 __cil_tmp37 ;
12358 unsigned int __cil_tmp38 ;
12359 int __cil_tmp39 ;
12360 Scsi_Cmnd *__cil_tmp40 ;
12361 Scsi_Cmnd *__cil_tmp41 ;
12362 struct scsi_pointer *__cil_tmp42 ;
12363 struct list_head *__cil_tmp43 ;
12364 struct list_head *__cil_tmp44 ;
12365 u32 __cil_tmp45 ;
12366 unsigned int __cil_tmp46 ;
12367 int __cil_tmp47 ;
12368 Scsi_Cmnd *__cil_tmp48 ;
12369 Scsi_Cmnd *__cil_tmp49 ;
12370 struct scsi_pointer *__cil_tmp50 ;
12371 struct list_head *__cil_tmp51 ;
12372 struct list_head *__cil_tmp52 ;
12373 u8 (*__cil_tmp53)[66U] ;
12374 u8 __cil_tmp54 ;
12375 unsigned char *__cil_tmp55 ;
12376 unsigned char __cil_tmp56 ;
12377 unsigned int __cil_tmp57 ;
12378 struct page *__cil_tmp58 ;
12379 unsigned long __cil_tmp59 ;
12380 unsigned long __cil_tmp60 ;
12381 unsigned char *__cil_tmp61 ;
12382 struct scsi_device *__cil_tmp62 ;
12383 unsigned int __cil_tmp63 ;
12384 int __cil_tmp64 ;
12385 int __cil_tmp65 ;
12386 int __cil_tmp66 ;
12387 int __cil_tmp67 ;
12388 int __cil_tmp68 ;
12389 u8 __cil_tmp69 ;
12390 unsigned int __cil_tmp70 ;
12391 u8 __cil_tmp71 ;
12392 unsigned int __cil_tmp72 ;
12393 unsigned char *__cil_tmp73 ;
12394 void *__cil_tmp74 ;
12395 u8 (*__cil_tmp75)[32U] ;
12396 void const *__cil_tmp76 ;
12397 unsigned char *__cil_tmp77 ;
12398 void *__cil_tmp78 ;
12399 u8 (*__cil_tmp79)[32U] ;
12400 void const *__cil_tmp80 ;
12401 u8 __cil_tmp81 ;
12402 unsigned int __cil_tmp82 ;
12403 unsigned char *__cil_tmp83 ;
12404 void *__cil_tmp84 ;
12405 u8 (*__cil_tmp85)[32U] ;
12406 void const *__cil_tmp86 ;
12407 unsigned char *__cil_tmp87 ;
12408 void *__cil_tmp88 ;
12409 u8 (*__cil_tmp89)[32U] ;
12410 void const *__cil_tmp90 ;
12411 unsigned char *__cil_tmp91 ;
12412 unsigned char *__cil_tmp92 ;
12413 unsigned char *__cil_tmp93 ;
12414 int __cil_tmp94 ;
12415 int __cil_tmp95 ;
12416 int __cil_tmp96 ;
12417 unsigned char *__cil_tmp97 ;
12418 unsigned char __cil_tmp98 ;
12419 unsigned int __cil_tmp99 ;
12420 int __cil_tmp100 ;
12421 unsigned char *__cil_tmp101 ;
12422 unsigned char __cil_tmp102 ;
12423 unsigned int __cil_tmp103 ;
12424 int __cil_tmp104 ;
12425 unsigned char *__cil_tmp105 ;
12426 unsigned char __cil_tmp106 ;
12427 unsigned int __cil_tmp107 ;
12428 int __cil_tmp108 ;
12429 int __cil_tmp109 ;
12430 int __cil_tmp110 ;
12431 int __cil_tmp111 ;
12432 int __cil_tmp112 ;
12433 struct list_head *__cil_tmp113 ;
12434 struct scsi_pointer *__cil_tmp114 ;
12435 struct list_head *__cil_tmp115 ;
12436 struct list_head *__cil_tmp116 ;
12437
12438 {
12439#line 1428
12440 epthru = (mega_ext_passthru *)0;
12441#line 1430
12442 cmd = (Scsi_Cmnd *)0;
12443#line 1431
12444 pthru = (mega_passthru *)0;
12445#line 1432
12446 mbox = (mbox_t *)0;
12447#line 1443
12448 i = 0;
12449#line 1443
12450 goto ldv_32165;
12451 ldv_32164:
12452#line 1445
12453 __cil_tmp21 = (unsigned long )i;
12454#line 1445
12455 __cil_tmp22 = completed + __cil_tmp21;
12456#line 1445
12457 __cil_tmp23 = *__cil_tmp22;
12458#line 1445
12459 cmdid = (int )__cil_tmp23;
12460#line 1447
12461 if (cmdid == 127) {
12462#line 1448
12463 scb = & adapter->int_scb;
12464#line 1449
12465 cmd = scb->cmd;
12466#line 1450
12467 __cil_tmp24 = & scb->raw_mbox;
12468#line 1450
12469 mbox = (mbox_t *)__cil_tmp24;
12470#line 1456
12471 pthru = scb->pthru;
12472 } else {
12473#line 1460
12474 __cil_tmp25 = (unsigned long )cmdid;
12475#line 1460
12476 __cil_tmp26 = adapter->scb_list;
12477#line 1460
12478 scb = __cil_tmp26 + __cil_tmp25;
12479 {
12480#line 1465
12481 __cil_tmp27 = scb->state;
12482#line 1465
12483 __cil_tmp28 = __cil_tmp27 & 4U;
12484#line 1465
12485 if (__cil_tmp28 == 0U) {
12486 {
12487#line 1466
12488 printk("<2>megaraid: invalid command ");
12489#line 1468
12490 __cil_tmp29 = scb->state;
12491#line 1468
12492 __cil_tmp30 = scb->cmd;
12493#line 1468
12494 printk("Id %d, scb->state:%x, scsi cmd:%p\n", cmdid, __cil_tmp29, __cil_tmp30);
12495 }
12496#line 1471
12497 goto ldv_32152;
12498 } else {
12499 {
12500#line 1465
12501 __cil_tmp31 = (Scsi_Cmnd *)0;
12502#line 1465
12503 __cil_tmp32 = (unsigned long )__cil_tmp31;
12504#line 1465
12505 __cil_tmp33 = scb->cmd;
12506#line 1465
12507 __cil_tmp34 = (unsigned long )__cil_tmp33;
12508#line 1465
12509 if (__cil_tmp34 == __cil_tmp32) {
12510 {
12511#line 1466
12512 printk("<2>megaraid: invalid command ");
12513#line 1468
12514 __cil_tmp35 = scb->state;
12515#line 1468
12516 __cil_tmp36 = scb->cmd;
12517#line 1468
12518 printk("Id %d, scb->state:%x, scsi cmd:%p\n", cmdid, __cil_tmp35, __cil_tmp36);
12519 }
12520#line 1471
12521 goto ldv_32152;
12522 } else {
12523
12524 }
12525 }
12526 }
12527 }
12528 {
12529#line 1477
12530 __cil_tmp37 = scb->state;
12531#line 1477
12532 __cil_tmp38 = __cil_tmp37 & 8U;
12533#line 1477
12534 if (__cil_tmp38 != 0U) {
12535 {
12536#line 1479
12537 __cil_tmp39 = scb->idx;
12538#line 1479
12539 printk("<4>megaraid: aborted cmd [%x] complete.\n", __cil_tmp39);
12540#line 1483
12541 __cil_tmp40 = scb->cmd;
12542#line 1483
12543 __cil_tmp40->result = 327680;
12544#line 1485
12545 __cil_tmp41 = scb->cmd;
12546#line 1485
12547 __cil_tmp42 = & __cil_tmp41->SCp;
12548#line 1485
12549 __cil_tmp43 = (struct list_head *)__cil_tmp42;
12550#line 1485
12551 __cil_tmp44 = & adapter->completed_list;
12552#line 1485
12553 list_add_tail(__cil_tmp43, __cil_tmp44);
12554#line 1488
12555 mega_free_scb(adapter, scb);
12556 }
12557#line 1490
12558 goto ldv_32152;
12559 } else {
12560
12561 }
12562 }
12563 {
12564#line 1496
12565 __cil_tmp45 = scb->state;
12566#line 1496
12567 __cil_tmp46 = __cil_tmp45 & 16U;
12568#line 1496
12569 if (__cil_tmp46 != 0U) {
12570 {
12571#line 1498
12572 __cil_tmp47 = scb->idx;
12573#line 1498
12574 printk("<4>megaraid: reset cmd [%x] complete.\n", __cil_tmp47);
12575#line 1502
12576 __cil_tmp48 = scb->cmd;
12577#line 1502
12578 __cil_tmp48->result = 524288;
12579#line 1504
12580 __cil_tmp49 = scb->cmd;
12581#line 1504
12582 __cil_tmp50 = & __cil_tmp49->SCp;
12583#line 1504
12584 __cil_tmp51 = (struct list_head *)__cil_tmp50;
12585#line 1504
12586 __cil_tmp52 = & adapter->completed_list;
12587#line 1504
12588 list_add_tail(__cil_tmp51, __cil_tmp52);
12589#line 1507
12590 mega_free_scb(adapter, scb);
12591 }
12592#line 1509
12593 goto ldv_32152;
12594 } else {
12595
12596 }
12597 }
12598#line 1512
12599 cmd = scb->cmd;
12600#line 1513
12601 pthru = scb->pthru;
12602#line 1514
12603 epthru = scb->epthru;
12604#line 1515
12605 __cil_tmp53 = & scb->raw_mbox;
12606#line 1515
12607 mbox = (mbox_t *)__cil_tmp53;
12608 }
12609#line 1558
12610 __cil_tmp54 = adapter->logdrv_chan[(cmd->device)->channel];
12611#line 1558
12612 islogical = (int )__cil_tmp54;
12613 {
12614#line 1559
12615 __cil_tmp55 = cmd->cmnd;
12616#line 1559
12617 __cil_tmp56 = *__cil_tmp55;
12618#line 1559
12619 __cil_tmp57 = (unsigned int )__cil_tmp56;
12620#line 1559
12621 if (__cil_tmp57 == 18U) {
12622#line 1559
12623 if (islogical == 0) {
12624 {
12625#line 1561
12626 sgl = scsi_sglist(cmd);
12627#line 1562
12628 tmp___0 = sg_page(sgl);
12629 }
12630 {
12631#line 1562
12632 __cil_tmp58 = (struct page *)0;
12633#line 1562
12634 __cil_tmp59 = (unsigned long )__cil_tmp58;
12635#line 1562
12636 __cil_tmp60 = (unsigned long )tmp___0;
12637#line 1562
12638 if (__cil_tmp60 != __cil_tmp59) {
12639 {
12640#line 1563
12641 tmp = sg_virt(sgl);
12642#line 1563
12643 __cil_tmp61 = (unsigned char *)tmp;
12644#line 1563
12645 c = *__cil_tmp61;
12646 }
12647 } else {
12648 {
12649#line 1565
12650 printk("<4>megaraid: invalid sg.\n");
12651#line 1567
12652 c = (u8 )0U;
12653 }
12654 }
12655 }
12656 {
12657#line 1570
12658 __cil_tmp62 = cmd->device;
12659#line 1570
12660 __cil_tmp63 = __cil_tmp62->channel;
12661#line 1570
12662 __cil_tmp64 = (int )__cil_tmp63;
12663#line 1570
12664 __cil_tmp65 = adapter->mega_ch_class;
12665#line 1570
12666 __cil_tmp66 = __cil_tmp65 >> __cil_tmp64;
12667#line 1570
12668 if (__cil_tmp66 & 1) {
12669 {
12670#line 1570
12671 __cil_tmp67 = (int )c;
12672#line 1570
12673 __cil_tmp68 = __cil_tmp67 & 31;
12674#line 1570
12675 if (__cil_tmp68 == 0) {
12676#line 1572
12677 status = 240;
12678 } else {
12679
12680 }
12681 }
12682 } else {
12683
12684 }
12685 }
12686 } else {
12687
12688 }
12689 } else {
12690
12691 }
12692 }
12693#line 1577
12694 cmd->result = 0;
12695#line 1581
12696 if (status == 0) {
12697#line 1581
12698 goto case_0;
12699 } else
12700#line 1585
12701 if (status == 2) {
12702#line 1585
12703 goto case_2;
12704 } else
12705#line 1616
12706 if (status == 8) {
12707#line 1616
12708 goto case_8;
12709 } else {
12710#line 1621
12711 goto switch_default;
12712#line 1580
12713 if (0) {
12714 case_0:
12715#line 1582
12716 cmd->result = cmd->result;
12717#line 1583
12718 goto ldv_32154;
12719 case_2: ;
12720 {
12721#line 1589
12722 __cil_tmp69 = mbox->m_out.cmd;
12723#line 1589
12724 __cil_tmp70 = (unsigned int )__cil_tmp69;
12725#line 1589
12726 if (__cil_tmp70 == 3U) {
12727#line 1589
12728 goto _L;
12729 } else {
12730 {
12731#line 1589
12732 __cil_tmp71 = mbox->m_out.cmd;
12733#line 1589
12734 __cil_tmp72 = (unsigned int )__cil_tmp71;
12735#line 1589
12736 if (__cil_tmp72 == 195U) {
12737 _L:
12738#line 1592
12739 __len = 14UL;
12740#line 1592
12741 if (__len > 63UL) {
12742 {
12743#line 1592
12744 __cil_tmp73 = cmd->sense_buffer;
12745#line 1592
12746 __cil_tmp74 = (void *)__cil_tmp73;
12747#line 1592
12748 __cil_tmp75 = & pthru->reqsensearea;
12749#line 1592
12750 __cil_tmp76 = (void const *)__cil_tmp75;
12751#line 1592
12752 __ret = __memcpy(__cil_tmp74, __cil_tmp76, __len);
12753 }
12754 } else {
12755 {
12756#line 1592
12757 __cil_tmp77 = cmd->sense_buffer;
12758#line 1592
12759 __cil_tmp78 = (void *)__cil_tmp77;
12760#line 1592
12761 __cil_tmp79 = & pthru->reqsensearea;
12762#line 1592
12763 __cil_tmp80 = (void const *)__cil_tmp79;
12764#line 1592
12765 __ret = __builtin_memcpy(__cil_tmp78, __cil_tmp80, __len);
12766 }
12767 }
12768#line 1595
12769 cmd->result = 134217730;
12770 } else {
12771 {
12772#line 1600
12773 __cil_tmp81 = mbox->m_out.cmd;
12774#line 1600
12775 __cil_tmp82 = (unsigned int )__cil_tmp81;
12776#line 1600
12777 if (__cil_tmp82 == 227U) {
12778#line 1602
12779 __len___0 = 14UL;
12780#line 1602
12781 if (__len___0 > 63UL) {
12782 {
12783#line 1602
12784 __cil_tmp83 = cmd->sense_buffer;
12785#line 1602
12786 __cil_tmp84 = (void *)__cil_tmp83;
12787#line 1602
12788 __cil_tmp85 = & epthru->reqsensearea;
12789#line 1602
12790 __cil_tmp86 = (void const *)__cil_tmp85;
12791#line 1602
12792 __ret___0 = __memcpy(__cil_tmp84, __cil_tmp86, __len___0);
12793 }
12794 } else {
12795 {
12796#line 1602
12797 __cil_tmp87 = cmd->sense_buffer;
12798#line 1602
12799 __cil_tmp88 = (void *)__cil_tmp87;
12800#line 1602
12801 __cil_tmp89 = & epthru->reqsensearea;
12802#line 1602
12803 __cil_tmp90 = (void const *)__cil_tmp89;
12804#line 1602
12805 __ret___0 = __builtin_memcpy(__cil_tmp88, __cil_tmp90, __len___0);
12806 }
12807 }
12808#line 1605
12809 cmd->result = 134217730;
12810 } else {
12811#line 1609
12812 __cil_tmp91 = cmd->sense_buffer;
12813#line 1609
12814 *__cil_tmp91 = (unsigned char)112;
12815#line 1610
12816 __cil_tmp92 = cmd->sense_buffer;
12817#line 1610
12818 __cil_tmp93 = __cil_tmp92 + 2UL;
12819#line 1610
12820 *__cil_tmp93 = (unsigned char)11;
12821#line 1611
12822 __cil_tmp94 = cmd->result;
12823#line 1611
12824 cmd->result = __cil_tmp94 | 2;
12825 }
12826 }
12827 }
12828 }
12829 }
12830 }
12831#line 1614
12832 goto ldv_32154;
12833 case_8:
12834#line 1618
12835 __cil_tmp95 = status | 131072;
12836#line 1618
12837 __cil_tmp96 = cmd->result;
12838#line 1618
12839 cmd->result = __cil_tmp96 | __cil_tmp95;
12840#line 1619
12841 goto ldv_32154;
12842 switch_default: ;
12843 {
12844#line 1627
12845 __cil_tmp97 = cmd->cmnd;
12846#line 1627
12847 __cil_tmp98 = *__cil_tmp97;
12848#line 1627
12849 __cil_tmp99 = (unsigned int )__cil_tmp98;
12850#line 1627
12851 if (__cil_tmp99 == 0U) {
12852#line 1628
12853 __cil_tmp100 = cmd->result;
12854#line 1628
12855 cmd->result = __cil_tmp100 | 458776;
12856 } else
12857#line 1636
12858 if (status == 1) {
12859 {
12860#line 1636
12861 __cil_tmp101 = cmd->cmnd;
12862#line 1636
12863 __cil_tmp102 = *__cil_tmp101;
12864#line 1636
12865 __cil_tmp103 = (unsigned int )__cil_tmp102;
12866#line 1636
12867 if (__cil_tmp103 == 22U) {
12868#line 1640
12869 __cil_tmp104 = cmd->result;
12870#line 1640
12871 cmd->result = __cil_tmp104 | 458776;
12872 } else {
12873 {
12874#line 1636
12875 __cil_tmp105 = cmd->cmnd;
12876#line 1636
12877 __cil_tmp106 = *__cil_tmp105;
12878#line 1636
12879 __cil_tmp107 = (unsigned int )__cil_tmp106;
12880#line 1636
12881 if (__cil_tmp107 == 23U) {
12882#line 1640
12883 __cil_tmp108 = cmd->result;
12884#line 1640
12885 cmd->result = __cil_tmp108 | 458776;
12886 } else {
12887#line 1645
12888 __cil_tmp109 = status | 262144;
12889#line 1645
12890 __cil_tmp110 = cmd->result;
12891#line 1645
12892 cmd->result = __cil_tmp110 | __cil_tmp109;
12893 }
12894 }
12895 }
12896 }
12897 } else {
12898#line 1645
12899 __cil_tmp111 = status | 262144;
12900#line 1645
12901 __cil_tmp112 = cmd->result;
12902#line 1645
12903 cmd->result = __cil_tmp112 | __cil_tmp111;
12904 }
12905 }
12906 } else {
12907
12908 }
12909 }
12910 ldv_32154: ;
12911#line 1655
12912 if (cmdid == 127) {
12913 {
12914#line 1656
12915 cmd->result = status;
12916#line 1661
12917 __cil_tmp113 = & scb->list;
12918#line 1661
12919 list_del_init(__cil_tmp113);
12920#line 1662
12921 scb->state = 0U;
12922 }
12923 } else {
12924 {
12925#line 1665
12926 mega_free_scb(adapter, scb);
12927 }
12928 }
12929 {
12930#line 1669
12931 __cil_tmp114 = & cmd->SCp;
12932#line 1669
12933 __cil_tmp115 = (struct list_head *)__cil_tmp114;
12934#line 1669
12935 __cil_tmp116 = & adapter->completed_list;
12936#line 1669
12937 list_add_tail(__cil_tmp115, __cil_tmp116);
12938 }
12939 ldv_32152:
12940#line 1443
12941 i = i + 1;
12942 ldv_32165: ;
12943#line 1443
12944 if (i < nstatus) {
12945#line 1444
12946 goto ldv_32164;
12947 } else {
12948#line 1446
12949 goto ldv_32166;
12950 }
12951 ldv_32166: ;
12952#line 1448
12953 return;
12954}
12955}
12956#line 1680 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
12957static void mega_rundoneq(adapter_t *adapter )
12958{ Scsi_Cmnd *cmd ;
12959 struct list_head *pos ;
12960 struct scsi_pointer *spos ;
12961 struct scsi_pointer const *__mptr ;
12962 Scsi_Cmnd *__cil_tmp6 ;
12963 void (*__cil_tmp7)(struct scsi_cmnd * ) ;
12964 unsigned long __cil_tmp8 ;
12965 struct list_head *__cil_tmp9 ;
12966 unsigned long __cil_tmp10 ;
12967 struct list_head *__cil_tmp11 ;
12968
12969 {
12970#line 1685
12971 pos = adapter->completed_list.next;
12972#line 1685
12973 goto ldv_32176;
12974 ldv_32175:
12975 {
12976#line 1687
12977 spos = (struct scsi_pointer *)pos;
12978#line 1689
12979 __mptr = (struct scsi_pointer const *)spos;
12980#line 1689
12981 __cil_tmp6 = (Scsi_Cmnd *)__mptr;
12982#line 1689
12983 cmd = __cil_tmp6 + 1152921504606846824UL;
12984#line 1690
12985 __cil_tmp7 = cmd->scsi_done;
12986#line 1690
12987 (*__cil_tmp7)(cmd);
12988#line 1685
12989 pos = pos->next;
12990 }
12991 ldv_32176: ;
12992 {
12993#line 1685
12994 __cil_tmp8 = (unsigned long )pos;
12995#line 1685
12996 __cil_tmp9 = & adapter->completed_list;
12997#line 1685
12998 __cil_tmp10 = (unsigned long )__cil_tmp9;
12999#line 1685
13000 if (__cil_tmp10 != __cil_tmp8) {
13001#line 1686
13002 goto ldv_32175;
13003 } else {
13004#line 1688
13005 goto ldv_32177;
13006 }
13007 }
13008 ldv_32177:
13009 {
13010#line 1693
13011 __cil_tmp11 = & adapter->completed_list;
13012#line 1693
13013 INIT_LIST_HEAD(__cil_tmp11);
13014 }
13015#line 1694
13016 return;
13017}
13018}
13019#line 1702 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13020static void mega_free_scb(adapter_t *adapter , scb_t *scb )
13021{ u32 __cil_tmp3 ;
13022 int __cil_tmp4 ;
13023 u32 __cil_tmp5 ;
13024 int __cil_tmp6 ;
13025 Scsi_Cmnd *__cil_tmp7 ;
13026 struct list_head *__cil_tmp8 ;
13027 struct list_head *__cil_tmp9 ;
13028 struct list_head *__cil_tmp10 ;
13029
13030 {
13031 {
13032#line 1706
13033 __cil_tmp3 = scb->dma_type;
13034#line 1706
13035 __cil_tmp4 = (int )__cil_tmp3;
13036#line 1706
13037 if (__cil_tmp4 == 65535) {
13038#line 1706
13039 goto case_65535;
13040 } else {
13041 {
13042#line 1709
13043 __cil_tmp5 = scb->dma_type;
13044#line 1709
13045 __cil_tmp6 = (int )__cil_tmp5;
13046#line 1709
13047 if (__cil_tmp6 == 2) {
13048#line 1709
13049 goto case_2;
13050 } else {
13051#line 1712
13052 goto switch_default;
13053#line 1704
13054 if (0) {
13055 case_65535: ;
13056#line 1707
13057 goto ldv_32183;
13058 case_2:
13059 {
13060#line 1710
13061 __cil_tmp7 = scb->cmd;
13062#line 1710
13063 scsi_dma_unmap(__cil_tmp7);
13064 }
13065#line 1711
13066 goto ldv_32183;
13067 switch_default: ;
13068#line 1713
13069 goto ldv_32183;
13070 } else {
13071
13072 }
13073 }
13074 }
13075 }
13076 }
13077 ldv_32183:
13078 {
13079#line 1719
13080 __cil_tmp8 = & scb->list;
13081#line 1719
13082 list_del_init(__cil_tmp8);
13083#line 1722
13084 scb->state = 0U;
13085#line 1723
13086 scb->cmd = (Scsi_Cmnd *)0;
13087#line 1725
13088 __cil_tmp9 = & scb->list;
13089#line 1725
13090 __cil_tmp10 = & adapter->free_list;
13091#line 1725
13092 list_add(__cil_tmp9, __cil_tmp10);
13093 }
13094#line 1726
13095 return;
13096}
13097}
13098#line 1730 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13099static int __mega_busywait_mbox(adapter_t *adapter )
13100{ mbox_t volatile *mbox ;
13101 long counter ;
13102 u8 volatile __cil_tmp4 ;
13103 unsigned char __cil_tmp5 ;
13104 unsigned int __cil_tmp6 ;
13105
13106 {
13107#line 1732
13108 mbox = adapter->mbox;
13109#line 1735
13110 counter = 0L;
13111#line 1735
13112 goto ldv_32193;
13113 ldv_32192: ;
13114 {
13115#line 1736
13116 __cil_tmp4 = mbox->m_in.busy;
13117#line 1736
13118 __cil_tmp5 = (unsigned char )__cil_tmp4;
13119#line 1736
13120 __cil_tmp6 = (unsigned int )__cil_tmp5;
13121#line 1736
13122 if (__cil_tmp6 == 0U) {
13123#line 1737
13124 return (0);
13125 } else {
13126
13127 }
13128 }
13129 {
13130#line 1738
13131 __const_udelay(429500UL);
13132#line 1739
13133 __might_sleep("/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p",
13134 1739, 0);
13135#line 1739
13136 _cond_resched();
13137#line 1735
13138 counter = counter + 1L;
13139 }
13140 ldv_32193: ;
13141#line 1735
13142 if (counter <= 9999L) {
13143#line 1736
13144 goto ldv_32192;
13145 } else {
13146#line 1738
13147 goto ldv_32194;
13148 }
13149 ldv_32194: ;
13150#line 1741
13151 return (-1);
13152}
13153}
13154#line 1749 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13155static int mega_build_sglist(adapter_t *adapter , scb_t *scb , u32 *buf , u32 *len )
13156{ struct scatterlist *sg ;
13157 Scsi_Cmnd *cmd ;
13158 int sgcnt ;
13159 int idx ;
13160 long tmp ;
13161 long tmp___0 ;
13162 unsigned int tmp___1 ;
13163 u32 tmp___2 ;
13164 u32 tmp___3 ;
13165 u8 __cil_tmp14 ;
13166 int __cil_tmp15 ;
13167 int __cil_tmp16 ;
13168 long __cil_tmp17 ;
13169 int __cil_tmp18 ;
13170 long __cil_tmp19 ;
13171 int __cil_tmp20 ;
13172 dma_addr_t __cil_tmp21 ;
13173 int __cil_tmp22 ;
13174 unsigned long __cil_tmp23 ;
13175 mega_sgl64 *__cil_tmp24 ;
13176 mega_sgl64 *__cil_tmp25 ;
13177 unsigned long __cil_tmp26 ;
13178 mega_sgl64 *__cil_tmp27 ;
13179 mega_sgl64 *__cil_tmp28 ;
13180 u32 __cil_tmp29 ;
13181 unsigned long __cil_tmp30 ;
13182 mega_sglist *__cil_tmp31 ;
13183 mega_sglist *__cil_tmp32 ;
13184 dma_addr_t __cil_tmp33 ;
13185 unsigned long __cil_tmp34 ;
13186 mega_sglist *__cil_tmp35 ;
13187 mega_sglist *__cil_tmp36 ;
13188 u32 __cil_tmp37 ;
13189 dma_addr_t __cil_tmp38 ;
13190
13191 {
13192 {
13193#line 1756
13194 cmd = scb->cmd;
13195#line 1763
13196 sgcnt = scsi_dma_map(cmd);
13197#line 1765
13198 scb->dma_type = 2U;
13199#line 1767
13200 __cil_tmp14 = adapter->sglen;
13201#line 1767
13202 __cil_tmp15 = (int )__cil_tmp14;
13203#line 1767
13204 __cil_tmp16 = __cil_tmp15 < sgcnt;
13205#line 1767
13206 __cil_tmp17 = (long )__cil_tmp16;
13207#line 1767
13208 tmp = __builtin_expect(__cil_tmp17, 0L);
13209 }
13210#line 1767
13211 if (tmp != 0L) {
13212#line 1767
13213 goto _L;
13214 } else {
13215 {
13216#line 1767
13217 __cil_tmp18 = sgcnt < 0;
13218#line 1767
13219 __cil_tmp19 = (long )__cil_tmp18;
13220#line 1767
13221 tmp___0 = __builtin_expect(__cil_tmp19, 0L);
13222 }
13223#line 1767
13224 if (tmp___0 != 0L) {
13225 _L:
13226#line 1767
13227 __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/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"),
13228 "i" (1767), "i" (12UL));
13229 ldv_32205: ;
13230#line 1767
13231 goto ldv_32205;
13232 } else {
13233
13234 }
13235 }
13236 {
13237#line 1769
13238 *len = 0U;
13239#line 1771
13240 tmp___1 = scsi_sg_count(cmd);
13241 }
13242#line 1771
13243 if (tmp___1 == 1U) {
13244 {
13245#line 1771
13246 __cil_tmp20 = adapter->has_64bit_addr;
13247#line 1771
13248 if (__cil_tmp20 == 0) {
13249 {
13250#line 1772
13251 sg = scsi_sglist(cmd);
13252#line 1773
13253 scb->dma_h_bulkdata = sg->dma_address;
13254#line 1774
13255 __cil_tmp21 = scb->dma_h_bulkdata;
13256#line 1774
13257 *buf = (unsigned int )__cil_tmp21;
13258#line 1775
13259 *len = sg->dma_length;
13260 }
13261#line 1776
13262 return (0);
13263 } else {
13264
13265 }
13266 }
13267 } else {
13268
13269 }
13270 {
13271#line 1779
13272 idx = 0;
13273#line 1779
13274 sg = scsi_sglist(cmd);
13275 }
13276#line 1779
13277 goto ldv_32207;
13278 ldv_32206: ;
13279 {
13280#line 1780
13281 __cil_tmp22 = adapter->has_64bit_addr;
13282#line 1780
13283 if (__cil_tmp22 != 0) {
13284#line 1781
13285 __cil_tmp23 = (unsigned long )idx;
13286#line 1781
13287 __cil_tmp24 = scb->sgl64;
13288#line 1781
13289 __cil_tmp25 = __cil_tmp24 + __cil_tmp23;
13290#line 1781
13291 __cil_tmp25->address = sg->dma_address;
13292#line 1782
13293 tmp___2 = sg->dma_length;
13294#line 1782
13295 __cil_tmp26 = (unsigned long )idx;
13296#line 1782
13297 __cil_tmp27 = scb->sgl64;
13298#line 1782
13299 __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
13300#line 1782
13301 __cil_tmp28->length = tmp___2;
13302#line 1782
13303 __cil_tmp29 = *len;
13304#line 1782
13305 *len = __cil_tmp29 + tmp___2;
13306 } else {
13307#line 1784
13308 __cil_tmp30 = (unsigned long )idx;
13309#line 1784
13310 __cil_tmp31 = scb->sgl;
13311#line 1784
13312 __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
13313#line 1784
13314 __cil_tmp33 = sg->dma_address;
13315#line 1784
13316 __cil_tmp32->address = (u32 )__cil_tmp33;
13317#line 1785
13318 tmp___3 = sg->dma_length;
13319#line 1785
13320 __cil_tmp34 = (unsigned long )idx;
13321#line 1785
13322 __cil_tmp35 = scb->sgl;
13323#line 1785
13324 __cil_tmp36 = __cil_tmp35 + __cil_tmp34;
13325#line 1785
13326 __cil_tmp36->length = tmp___3;
13327#line 1785
13328 __cil_tmp37 = *len;
13329#line 1785
13330 *len = __cil_tmp37 + tmp___3;
13331 }
13332 }
13333 {
13334#line 1779
13335 idx = idx + 1;
13336#line 1779
13337 sg = sg_next(sg);
13338 }
13339 ldv_32207: ;
13340#line 1779
13341 if (idx < sgcnt) {
13342#line 1780
13343 goto ldv_32206;
13344 } else {
13345#line 1782
13346 goto ldv_32208;
13347 }
13348 ldv_32208:
13349#line 1790
13350 __cil_tmp38 = scb->sgl_dma_addr;
13351#line 1790
13352 *buf = (u32 )__cil_tmp38;
13353#line 1793
13354 return (sgcnt);
13355}
13356}
13357#line 1804 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13358static void mega_8_to_40ld(mraid_inquiry *inquiry , mega_inquiry3 *enquiry3 , mega_product_info *product_info )
13359{ int i ;
13360 u8 __cil_tmp5 ;
13361
13362 {
13363#line 1809
13364 product_info->max_commands = inquiry->adapter_info.max_commands;
13365#line 1810
13366 enquiry3->rebuild_rate = inquiry->adapter_info.rebuild_rate;
13367#line 1811
13368 product_info->nchannels = inquiry->adapter_info.nchannels;
13369#line 1813
13370 i = 0;
13371#line 1813
13372 goto ldv_32216;
13373 ldv_32215:
13374#line 1814
13375 product_info->fw_version[i] = inquiry->adapter_info.fw_version[i];
13376#line 1817
13377 product_info->bios_version[i] = inquiry->adapter_info.bios_version[i];
13378#line 1813
13379 i = i + 1;
13380 ldv_32216: ;
13381#line 1813
13382 if (i <= 3) {
13383#line 1814
13384 goto ldv_32215;
13385 } else {
13386#line 1816
13387 goto ldv_32217;
13388 }
13389 ldv_32217:
13390#line 1820
13391 enquiry3->cache_flush_interval = inquiry->adapter_info.cache_flush_interval;
13392#line 1823
13393 __cil_tmp5 = inquiry->adapter_info.dram_size;
13394#line 1823
13395 product_info->dram_size = (u16 )__cil_tmp5;
13396#line 1825
13397 enquiry3->num_ldrv = inquiry->logdrv_info.num_ldrv;
13398#line 1827
13399 i = 0;
13400#line 1827
13401 goto ldv_32219;
13402 ldv_32218:
13403#line 1828
13404 enquiry3->ldrv_size[i] = inquiry->logdrv_info.ldrv_size[i];
13405#line 1829
13406 enquiry3->ldrv_prop[i] = inquiry->logdrv_info.ldrv_prop[i];
13407#line 1830
13408 enquiry3->ldrv_state[i] = inquiry->logdrv_info.ldrv_state[i];
13409#line 1827
13410 i = i + 1;
13411 ldv_32219: ;
13412#line 1827
13413 if (i <= 7) {
13414#line 1828
13415 goto ldv_32218;
13416 } else {
13417#line 1830
13418 goto ldv_32220;
13419 }
13420 ldv_32220:
13421#line 1833
13422 i = 0;
13423#line 1833
13424 goto ldv_32222;
13425 ldv_32221:
13426#line 1834
13427 enquiry3->pdrv_state[i] = inquiry->pdrv_info.pdrv_state[i];
13428#line 1833
13429 i = i + 1;
13430 ldv_32222: ;
13431#line 1833
13432 if (i <= 74) {
13433#line 1834
13434 goto ldv_32221;
13435 } else {
13436#line 1836
13437 goto ldv_32223;
13438 }
13439 ldv_32223: ;
13440#line 1838
13441 return;
13442}
13443}
13444#line 1838 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13445__inline static void mega_free_sgl(adapter_t *adapter )
13446{ scb_t *scb ;
13447 int i ;
13448 unsigned long __cil_tmp4 ;
13449 scb_t *__cil_tmp5 ;
13450 mega_sgl64 *__cil_tmp6 ;
13451 unsigned long __cil_tmp7 ;
13452 mega_sgl64 *__cil_tmp8 ;
13453 unsigned long __cil_tmp9 ;
13454 struct pci_dev *__cil_tmp10 ;
13455 u8 __cil_tmp11 ;
13456 unsigned long __cil_tmp12 ;
13457 unsigned long __cil_tmp13 ;
13458 mega_sgl64 *__cil_tmp14 ;
13459 void *__cil_tmp15 ;
13460 dma_addr_t __cil_tmp16 ;
13461 mega_passthru *__cil_tmp17 ;
13462 unsigned long __cil_tmp18 ;
13463 mega_passthru *__cil_tmp19 ;
13464 unsigned long __cil_tmp20 ;
13465 struct pci_dev *__cil_tmp21 ;
13466 mega_passthru *__cil_tmp22 ;
13467 void *__cil_tmp23 ;
13468 dma_addr_t __cil_tmp24 ;
13469 mega_ext_passthru *__cil_tmp25 ;
13470 unsigned long __cil_tmp26 ;
13471 mega_ext_passthru *__cil_tmp27 ;
13472 unsigned long __cil_tmp28 ;
13473 struct pci_dev *__cil_tmp29 ;
13474 mega_ext_passthru *__cil_tmp30 ;
13475 void *__cil_tmp31 ;
13476 dma_addr_t __cil_tmp32 ;
13477 u8 __cil_tmp33 ;
13478 int __cil_tmp34 ;
13479
13480 {
13481#line 1843
13482 i = 0;
13483#line 1843
13484 goto ldv_32230;
13485 ldv_32229:
13486#line 1845
13487 __cil_tmp4 = (unsigned long )i;
13488#line 1845
13489 __cil_tmp5 = adapter->scb_list;
13490#line 1845
13491 scb = __cil_tmp5 + __cil_tmp4;
13492 {
13493#line 1847
13494 __cil_tmp6 = (mega_sgl64 *)0;
13495#line 1847
13496 __cil_tmp7 = (unsigned long )__cil_tmp6;
13497#line 1847
13498 __cil_tmp8 = scb->sgl64;
13499#line 1847
13500 __cil_tmp9 = (unsigned long )__cil_tmp8;
13501#line 1847
13502 if (__cil_tmp9 != __cil_tmp7) {
13503 {
13504#line 1848
13505 __cil_tmp10 = adapter->dev;
13506#line 1848
13507 __cil_tmp11 = adapter->sglen;
13508#line 1848
13509 __cil_tmp12 = (unsigned long )__cil_tmp11;
13510#line 1848
13511 __cil_tmp13 = __cil_tmp12 * 12UL;
13512#line 1848
13513 __cil_tmp14 = scb->sgl64;
13514#line 1848
13515 __cil_tmp15 = (void *)__cil_tmp14;
13516#line 1848
13517 __cil_tmp16 = scb->sgl_dma_addr;
13518#line 1848
13519 pci_free_consistent(__cil_tmp10, __cil_tmp13, __cil_tmp15, __cil_tmp16);
13520#line 1853
13521 scb->sgl64 = (mega_sgl64 *)0;
13522 }
13523 } else {
13524
13525 }
13526 }
13527 {
13528#line 1856
13529 __cil_tmp17 = (mega_passthru *)0;
13530#line 1856
13531 __cil_tmp18 = (unsigned long )__cil_tmp17;
13532#line 1856
13533 __cil_tmp19 = scb->pthru;
13534#line 1856
13535 __cil_tmp20 = (unsigned long )__cil_tmp19;
13536#line 1856
13537 if (__cil_tmp20 != __cil_tmp18) {
13538 {
13539#line 1857
13540 __cil_tmp21 = adapter->dev;
13541#line 1857
13542 __cil_tmp22 = scb->pthru;
13543#line 1857
13544 __cil_tmp23 = (void *)__cil_tmp22;
13545#line 1857
13546 __cil_tmp24 = scb->pthru_dma_addr;
13547#line 1857
13548 pci_free_consistent(__cil_tmp21, 60UL, __cil_tmp23, __cil_tmp24);
13549#line 1860
13550 scb->pthru = (mega_passthru *)0;
13551 }
13552 } else {
13553
13554 }
13555 }
13556 {
13557#line 1863
13558 __cil_tmp25 = (mega_ext_passthru *)0;
13559#line 1863
13560 __cil_tmp26 = (unsigned long )__cil_tmp25;
13561#line 1863
13562 __cil_tmp27 = scb->epthru;
13563#line 1863
13564 __cil_tmp28 = (unsigned long )__cil_tmp27;
13565#line 1863
13566 if (__cil_tmp28 != __cil_tmp26) {
13567 {
13568#line 1864
13569 __cil_tmp29 = adapter->dev;
13570#line 1864
13571 __cil_tmp30 = scb->epthru;
13572#line 1864
13573 __cil_tmp31 = (void *)__cil_tmp30;
13574#line 1864
13575 __cil_tmp32 = scb->epthru_dma_addr;
13576#line 1864
13577 pci_free_consistent(__cil_tmp29, 68UL, __cil_tmp31, __cil_tmp32);
13578#line 1868
13579 scb->epthru = (mega_ext_passthru *)0;
13580 }
13581 } else {
13582
13583 }
13584 }
13585#line 1843
13586 i = i + 1;
13587 ldv_32230: ;
13588 {
13589#line 1843
13590 __cil_tmp33 = adapter->max_cmds;
13591#line 1843
13592 __cil_tmp34 = (int )__cil_tmp33;
13593#line 1843
13594 if (__cil_tmp34 > i) {
13595#line 1844
13596 goto ldv_32229;
13597 } else {
13598#line 1846
13599 goto ldv_32231;
13600 }
13601 }
13602 ldv_32231: ;
13603#line 1848
13604 return;
13605}
13606}
13607#line 1879 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13608char const *megaraid_info(struct Scsi_Host *host )
13609{ char buffer[512U] ;
13610 adapter_t *adapter ;
13611 unsigned long (*__cil_tmp4)[0U] ;
13612 char *__cil_tmp5 ;
13613 u8 (*__cil_tmp6)[7U] ;
13614 u8 *__cil_tmp7 ;
13615 u8 __cil_tmp8 ;
13616 int __cil_tmp9 ;
13617 struct Scsi_Host *__cil_tmp10 ;
13618 unsigned int __cil_tmp11 ;
13619 struct Scsi_Host *__cil_tmp12 ;
13620 unsigned int __cil_tmp13 ;
13621 struct Scsi_Host *__cil_tmp14 ;
13622 unsigned int __cil_tmp15 ;
13623
13624 {
13625 {
13626#line 1884
13627 __cil_tmp4 = & host->hostdata;
13628#line 1884
13629 adapter = (adapter_t *)__cil_tmp4;
13630#line 1886
13631 __cil_tmp5 = (char *)(& buffer);
13632#line 1886
13633 __cil_tmp6 = & adapter->fw_version;
13634#line 1886
13635 __cil_tmp7 = (u8 *)__cil_tmp6;
13636#line 1886
13637 __cil_tmp8 = adapter->product_info.max_commands;
13638#line 1886
13639 __cil_tmp9 = (int )__cil_tmp8;
13640#line 1886
13641 __cil_tmp10 = adapter->host;
13642#line 1886
13643 __cil_tmp11 = __cil_tmp10->max_id;
13644#line 1886
13645 __cil_tmp12 = adapter->host;
13646#line 1886
13647 __cil_tmp13 = __cil_tmp12->max_channel;
13648#line 1886
13649 __cil_tmp14 = adapter->host;
13650#line 1886
13651 __cil_tmp15 = __cil_tmp14->max_lun;
13652#line 1886
13653 sprintf(__cil_tmp5, "LSI Logic MegaRAID %s %d commands %d targs %d chans %d luns",
13654 __cil_tmp7, __cil_tmp9, __cil_tmp11, __cil_tmp13, __cil_tmp15);
13655 }
13656#line 1891
13657 return ((char const *)(& buffer));
13658}
13659}
13660#line 1899 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13661static int megaraid_abort(Scsi_Cmnd *cmd )
13662{ adapter_t *adapter ;
13663 int rval ;
13664 struct scsi_device *__cil_tmp4 ;
13665 struct Scsi_Host *__cil_tmp5 ;
13666 unsigned long (*__cil_tmp6)[0U] ;
13667
13668 {
13669 {
13670#line 1904
13671 __cil_tmp4 = cmd->device;
13672#line 1904
13673 __cil_tmp5 = __cil_tmp4->host;
13674#line 1904
13675 __cil_tmp6 = & __cil_tmp5->hostdata;
13676#line 1904
13677 adapter = (adapter_t *)__cil_tmp6;
13678#line 1906
13679 rval = megaraid_abort_and_reset(adapter, cmd, 8);
13680#line 1912
13681 mega_rundoneq(adapter);
13682 }
13683#line 1914
13684 return (rval);
13685}
13686}
13687#line 1919 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13688static int megaraid_reset(struct scsi_cmnd *cmd )
13689{ adapter_t *adapter ;
13690 megacmd_t mc ;
13691 int rval ;
13692 int tmp ;
13693 struct scsi_device *__cil_tmp6 ;
13694 struct Scsi_Host *__cil_tmp7 ;
13695 unsigned long (*__cil_tmp8)[0U] ;
13696 mega_passthru *__cil_tmp9 ;
13697 spinlock_t *__cil_tmp10 ;
13698 spinlock_t *__cil_tmp11 ;
13699
13700 {
13701 {
13702#line 1925
13703 __cil_tmp6 = cmd->device;
13704#line 1925
13705 __cil_tmp7 = __cil_tmp6->host;
13706#line 1925
13707 __cil_tmp8 = & __cil_tmp7->hostdata;
13708#line 1925
13709 adapter = (adapter_t *)__cil_tmp8;
13710#line 1928
13711 mc.cmd = (u8 )110U;
13712#line 1929
13713 mc.opcode = (u8 )3U;
13714#line 1931
13715 __cil_tmp9 = (mega_passthru *)0;
13716#line 1931
13717 tmp = mega_internal_command(adapter, & mc, __cil_tmp9);
13718 }
13719#line 1931
13720 if (tmp != 0) {
13721 {
13722#line 1932
13723 printk("<4>megaraid: reservation reset failed.\n");
13724 }
13725 } else {
13726 {
13727#line 1936
13728 printk("<6>megaraid: reservation reset.\n");
13729 }
13730 }
13731 {
13732#line 1940
13733 __cil_tmp10 = & adapter->lock;
13734#line 1940
13735 spin_lock_irq(__cil_tmp10);
13736#line 1942
13737 rval = megaraid_abort_and_reset(adapter, cmd, 16);
13738#line 1948
13739 mega_rundoneq(adapter);
13740#line 1949
13741 __cil_tmp11 = & adapter->lock;
13742#line 1949
13743 spin_unlock_irq(__cil_tmp11);
13744 }
13745#line 1951
13746 return (rval);
13747}
13748}
13749#line 1964 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13750static int megaraid_abort_and_reset(adapter_t *adapter , Scsi_Cmnd *cmd , int aor )
13751{ struct list_head *pos ;
13752 struct list_head *next ;
13753 scb_t *scb ;
13754 char *tmp ;
13755 int tmp___0 ;
13756 struct list_head const *__mptr ;
13757 char *tmp___1 ;
13758 char *tmp___2 ;
13759 unsigned char *__cil_tmp12 ;
13760 unsigned char __cil_tmp13 ;
13761 int __cil_tmp14 ;
13762 struct scsi_device *__cil_tmp15 ;
13763 unsigned int __cil_tmp16 ;
13764 struct scsi_device *__cil_tmp17 ;
13765 unsigned int __cil_tmp18 ;
13766 struct scsi_device *__cil_tmp19 ;
13767 unsigned int __cil_tmp20 ;
13768 struct list_head *__cil_tmp21 ;
13769 struct list_head const *__cil_tmp22 ;
13770 scb_t *__cil_tmp23 ;
13771 unsigned long __cil_tmp24 ;
13772 Scsi_Cmnd *__cil_tmp25 ;
13773 unsigned long __cil_tmp26 ;
13774 u32 __cil_tmp27 ;
13775 u32 __cil_tmp28 ;
13776 u32 __cil_tmp29 ;
13777 unsigned int __cil_tmp30 ;
13778 int __cil_tmp31 ;
13779 int __cil_tmp32 ;
13780 struct scsi_pointer *__cil_tmp33 ;
13781 struct list_head *__cil_tmp34 ;
13782 struct list_head *__cil_tmp35 ;
13783 unsigned long __cil_tmp36 ;
13784 struct list_head *__cil_tmp37 ;
13785 unsigned long __cil_tmp38 ;
13786
13787 {
13788#line 1969
13789 if (aor == 8) {
13790#line 1969
13791 tmp = (char *)"ABORTING";
13792 } else {
13793#line 1969
13794 tmp = (char *)"RESET";
13795 }
13796 {
13797#line 1969
13798 __cil_tmp12 = cmd->cmnd;
13799#line 1969
13800 __cil_tmp13 = *__cil_tmp12;
13801#line 1969
13802 __cil_tmp14 = (int )__cil_tmp13;
13803#line 1969
13804 __cil_tmp15 = cmd->device;
13805#line 1969
13806 __cil_tmp16 = __cil_tmp15->channel;
13807#line 1969
13808 __cil_tmp17 = cmd->device;
13809#line 1969
13810 __cil_tmp18 = __cil_tmp17->id;
13811#line 1969
13812 __cil_tmp19 = cmd->device;
13813#line 1969
13814 __cil_tmp20 = __cil_tmp19->lun;
13815#line 1969
13816 printk("<4>megaraid: %s cmd=%x <c=%d t=%d l=%d>\n", tmp, __cil_tmp14, __cil_tmp16,
13817 __cil_tmp18, __cil_tmp20);
13818#line 1974
13819 __cil_tmp21 = & adapter->pending_list;
13820#line 1974
13821 __cil_tmp22 = (struct list_head const *)__cil_tmp21;
13822#line 1974
13823 tmp___0 = list_empty(__cil_tmp22);
13824 }
13825#line 1974
13826 if (tmp___0 != 0) {
13827#line 1975
13828 return (0);
13829 } else {
13830
13831 }
13832#line 1977
13833 pos = adapter->pending_list.next;
13834#line 1977
13835 next = pos->next;
13836#line 1977
13837 goto ldv_32259;
13838 ldv_32258:
13839#line 1979
13840 __mptr = (struct list_head const *)pos;
13841#line 1979
13842 __cil_tmp23 = (scb_t *)__mptr;
13843#line 1979
13844 scb = __cil_tmp23 + 1152921504606846968UL;
13845 {
13846#line 1981
13847 __cil_tmp24 = (unsigned long )cmd;
13848#line 1981
13849 __cil_tmp25 = scb->cmd;
13850#line 1981
13851 __cil_tmp26 = (unsigned long )__cil_tmp25;
13852#line 1981
13853 if (__cil_tmp26 == __cil_tmp24) {
13854#line 1983
13855 __cil_tmp27 = (u32 )aor;
13856#line 1983
13857 __cil_tmp28 = scb->state;
13858#line 1983
13859 scb->state = __cil_tmp28 | __cil_tmp27;
13860 {
13861#line 1991
13862 __cil_tmp29 = scb->state;
13863#line 1991
13864 __cil_tmp30 = __cil_tmp29 & 4U;
13865#line 1991
13866 if (__cil_tmp30 != 0U) {
13867#line 1993
13868 if (aor == 8) {
13869#line 1993
13870 tmp___1 = (char *)"ABORTING";
13871 } else {
13872#line 1993
13873 tmp___1 = (char *)"RESET";
13874 }
13875 {
13876#line 1993
13877 __cil_tmp31 = scb->idx;
13878#line 1993
13879 printk("<4>megaraid: %s[%x], fw owner.\n", tmp___1, __cil_tmp31);
13880 }
13881#line 1998
13882 return (0);
13883 } else {
13884#line 2006
13885 if (aor == 8) {
13886#line 2006
13887 tmp___2 = (char *)"ABORTING";
13888 } else {
13889#line 2006
13890 tmp___2 = (char *)"RESET";
13891 }
13892 {
13893#line 2006
13894 __cil_tmp32 = scb->idx;
13895#line 2006
13896 printk("<4>megaraid: %s-[%x], driver owner.\n", tmp___2, __cil_tmp32);
13897#line 2011
13898 mega_free_scb(adapter, scb);
13899 }
13900#line 2013
13901 if (aor == 8) {
13902#line 2014
13903 cmd->result = 327680;
13904 } else {
13905#line 2017
13906 cmd->result = 524288;
13907 }
13908 {
13909#line 2020
13910 __cil_tmp33 = & cmd->SCp;
13911#line 2020
13912 __cil_tmp34 = (struct list_head *)__cil_tmp33;
13913#line 2020
13914 __cil_tmp35 = & adapter->completed_list;
13915#line 2020
13916 list_add_tail(__cil_tmp34, __cil_tmp35);
13917 }
13918#line 2023
13919 return (1);
13920 }
13921 }
13922 } else {
13923
13924 }
13925 }
13926#line 1977
13927 pos = next;
13928#line 1977
13929 next = pos->next;
13930 ldv_32259: ;
13931 {
13932#line 1977
13933 __cil_tmp36 = (unsigned long )pos;
13934#line 1977
13935 __cil_tmp37 = & adapter->pending_list;
13936#line 1977
13937 __cil_tmp38 = (unsigned long )__cil_tmp37;
13938#line 1977
13939 if (__cil_tmp38 != __cil_tmp36) {
13940#line 1978
13941 goto ldv_32258;
13942 } else {
13943#line 1980
13944 goto ldv_32260;
13945 }
13946 }
13947 ldv_32260: ;
13948#line 2028
13949 return (0);
13950}
13951}
13952#line 2032 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
13953__inline static int make_local_pdev(adapter_t *adapter , struct pci_dev **pdev )
13954{ size_t __len ;
13955 void *__ret ;
13956 int tmp ;
13957 struct pci_dev *__cil_tmp6 ;
13958 unsigned long __cil_tmp7 ;
13959 struct pci_dev *__cil_tmp8 ;
13960 unsigned long __cil_tmp9 ;
13961 struct pci_dev *__cil_tmp10 ;
13962 void *__cil_tmp11 ;
13963 struct pci_dev *__cil_tmp12 ;
13964 void const *__cil_tmp13 ;
13965 struct pci_dev *__cil_tmp14 ;
13966 void *__cil_tmp15 ;
13967 struct pci_dev *__cil_tmp16 ;
13968 void const *__cil_tmp17 ;
13969 struct pci_dev *__cil_tmp18 ;
13970 struct pci_dev *__cil_tmp19 ;
13971 void const *__cil_tmp20 ;
13972
13973 {
13974 {
13975#line 2034
13976 *pdev = alloc_pci_dev();
13977 }
13978 {
13979#line 2036
13980 __cil_tmp6 = (struct pci_dev *)0;
13981#line 2036
13982 __cil_tmp7 = (unsigned long )__cil_tmp6;
13983#line 2036
13984 __cil_tmp8 = *pdev;
13985#line 2036
13986 __cil_tmp9 = (unsigned long )__cil_tmp8;
13987#line 2036
13988 if (__cil_tmp9 == __cil_tmp7) {
13989#line 2036
13990 return (-1);
13991 } else {
13992
13993 }
13994 }
13995#line 2038
13996 __len = 2848UL;
13997#line 2038
13998 if (__len > 63UL) {
13999 {
14000#line 2038
14001 __cil_tmp10 = *pdev;
14002#line 2038
14003 __cil_tmp11 = (void *)__cil_tmp10;
14004#line 2038
14005 __cil_tmp12 = adapter->dev;
14006#line 2038
14007 __cil_tmp13 = (void const *)__cil_tmp12;
14008#line 2038
14009 __ret = __memcpy(__cil_tmp11, __cil_tmp13, __len);
14010 }
14011 } else {
14012 {
14013#line 2038
14014 __cil_tmp14 = *pdev;
14015#line 2038
14016 __cil_tmp15 = (void *)__cil_tmp14;
14017#line 2038
14018 __cil_tmp16 = adapter->dev;
14019#line 2038
14020 __cil_tmp17 = (void const *)__cil_tmp16;
14021#line 2038
14022 __ret = __builtin_memcpy(__cil_tmp15, __cil_tmp17, __len);
14023 }
14024 }
14025 {
14026#line 2040
14027 __cil_tmp18 = *pdev;
14028#line 2040
14029 tmp = pci_set_dma_mask(__cil_tmp18, 4294967295ULL);
14030 }
14031#line 2040
14032 if (tmp != 0) {
14033 {
14034#line 2041
14035 __cil_tmp19 = *pdev;
14036#line 2041
14037 __cil_tmp20 = (void const *)__cil_tmp19;
14038#line 2041
14039 kfree(__cil_tmp20);
14040 }
14041#line 2042
14042 return (-1);
14043 } else {
14044
14045 }
14046#line 2045
14047 return (0);
14048}
14049}
14050#line 2049 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14051__inline static void free_local_pdev(struct pci_dev *pdev )
14052{ void const *__cil_tmp2 ;
14053
14054 {
14055 {
14056#line 2051
14057 __cil_tmp2 = (void const *)pdev;
14058#line 2051
14059 kfree(__cil_tmp2);
14060 }
14061#line 2052
14062 return;
14063}
14064}
14065#line 2062 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14066__inline static void *mega_allocate_inquiry(dma_addr_t *dma_handle , struct pci_dev *pdev )
14067{ void *tmp ;
14068
14069 {
14070 {
14071#line 2064
14072 tmp = pci_alloc_consistent(pdev, 1024UL, dma_handle);
14073 }
14074#line 2064
14075 return (tmp);
14076}
14077}
14078#line 2069 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14079__inline static void mega_free_inquiry(void *inquiry , dma_addr_t dma_handle , struct pci_dev *pdev )
14080{
14081
14082 {
14083 {
14084#line 2071
14085 pci_free_consistent(pdev, 1024UL, inquiry, dma_handle);
14086 }
14087#line 2072
14088 return;
14089}
14090}
14091#line 2091 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14092static void mega_create_proc_entry(int index , struct proc_dir_entry *parent )
14093{ struct proc_dir_entry *controller_proc_dir_entry ;
14094 u8 string[64U] ;
14095 adapter_t *adapter ;
14096 struct proc_dir_entry *tmp ;
14097 char *__cil_tmp7 ;
14098 struct Scsi_Host *__cil_tmp8 ;
14099 unsigned int __cil_tmp9 ;
14100 char const *__cil_tmp10 ;
14101 struct proc_dir_entry *__cil_tmp11 ;
14102 unsigned long __cil_tmp12 ;
14103 unsigned long __cil_tmp13 ;
14104 void *__cil_tmp14 ;
14105 void *__cil_tmp15 ;
14106 void *__cil_tmp16 ;
14107 void *__cil_tmp17 ;
14108 void *__cil_tmp18 ;
14109 void *__cil_tmp19 ;
14110 void *__cil_tmp20 ;
14111 void *__cil_tmp21 ;
14112 void *__cil_tmp22 ;
14113 void *__cil_tmp23 ;
14114 void *__cil_tmp24 ;
14115 void *__cil_tmp25 ;
14116 void *__cil_tmp26 ;
14117
14118 {
14119 {
14120#line 2093
14121 controller_proc_dir_entry = (struct proc_dir_entry *)0;
14122#line 2094
14123 string[0] = (u8 )0U;
14124#line 2095
14125 adapter = hba_soft_state[index];
14126#line 2097
14127 __cil_tmp7 = (char *)(& string);
14128#line 2097
14129 __cil_tmp8 = adapter->host;
14130#line 2097
14131 __cil_tmp9 = __cil_tmp8->host_no;
14132#line 2097
14133 sprintf(__cil_tmp7, "hba%d", __cil_tmp9);
14134#line 2099
14135 __cil_tmp10 = (char const *)(& string);
14136#line 2099
14137 tmp = proc_mkdir(__cil_tmp10, parent);
14138#line 2099
14139 adapter->controller_proc_dir_entry = tmp;
14140#line 2099
14141 controller_proc_dir_entry = tmp;
14142 }
14143 {
14144#line 2102
14145 __cil_tmp11 = (struct proc_dir_entry *)0;
14146#line 2102
14147 __cil_tmp12 = (unsigned long )__cil_tmp11;
14148#line 2102
14149 __cil_tmp13 = (unsigned long )controller_proc_dir_entry;
14150#line 2102
14151 if (__cil_tmp13 == __cil_tmp12) {
14152 {
14153#line 2103
14154 printk("<4>\nmegaraid: proc_mkdir failed\n");
14155 }
14156#line 2104
14157 return;
14158 } else {
14159
14160 }
14161 }
14162 {
14163#line 2106
14164 __cil_tmp14 = (void *)adapter;
14165#line 2106
14166 adapter->proc_read = create_proc_read_entry("config", 33024U, controller_proc_dir_entry,
14167 & proc_read_config, __cil_tmp14);
14168#line 2107
14169 __cil_tmp15 = (void *)adapter;
14170#line 2107
14171 adapter->proc_stat = create_proc_read_entry("stat", 33024U, controller_proc_dir_entry,
14172 & proc_read_stat, __cil_tmp15);
14173#line 2108
14174 __cil_tmp16 = (void *)adapter;
14175#line 2108
14176 adapter->proc_mbox = create_proc_read_entry("mailbox", 33024U, controller_proc_dir_entry,
14177 & proc_read_mbox, __cil_tmp16);
14178#line 2110
14179 __cil_tmp17 = (void *)adapter;
14180#line 2110
14181 adapter->proc_rr = create_proc_read_entry("rebuild-rate", 33024U, controller_proc_dir_entry,
14182 & proc_rebuild_rate, __cil_tmp17);
14183#line 2111
14184 __cil_tmp18 = (void *)adapter;
14185#line 2111
14186 adapter->proc_battery = create_proc_read_entry("battery-status", 33024U, controller_proc_dir_entry,
14187 & proc_battery, __cil_tmp18);
14188#line 2117
14189 __cil_tmp19 = (void *)adapter;
14190#line 2117
14191 adapter->proc_pdrvstat[0] = create_proc_read_entry("diskdrives-ch0", 33024U, controller_proc_dir_entry,
14192 & proc_pdrv_ch0, __cil_tmp19);
14193#line 2119
14194 __cil_tmp20 = (void *)adapter;
14195#line 2119
14196 adapter->proc_pdrvstat[1] = create_proc_read_entry("diskdrives-ch1", 33024U, controller_proc_dir_entry,
14197 & proc_pdrv_ch1, __cil_tmp20);
14198#line 2121
14199 __cil_tmp21 = (void *)adapter;
14200#line 2121
14201 adapter->proc_pdrvstat[2] = create_proc_read_entry("diskdrives-ch2", 33024U, controller_proc_dir_entry,
14202 & proc_pdrv_ch2, __cil_tmp21);
14203#line 2123
14204 __cil_tmp22 = (void *)adapter;
14205#line 2123
14206 adapter->proc_pdrvstat[3] = create_proc_read_entry("diskdrives-ch3", 33024U, controller_proc_dir_entry,
14207 & proc_pdrv_ch3, __cil_tmp22);
14208#line 2130
14209 __cil_tmp23 = (void *)adapter;
14210#line 2130
14211 adapter->proc_rdrvstat[0] = create_proc_read_entry("raiddrives-0-9", 33024U, controller_proc_dir_entry,
14212 & proc_rdrv_10, __cil_tmp23);
14213#line 2132
14214 __cil_tmp24 = (void *)adapter;
14215#line 2132
14216 adapter->proc_rdrvstat[1] = create_proc_read_entry("raiddrives-10-19", 33024U, controller_proc_dir_entry,
14217 & proc_rdrv_20, __cil_tmp24);
14218#line 2134
14219 __cil_tmp25 = (void *)adapter;
14220#line 2134
14221 adapter->proc_rdrvstat[2] = create_proc_read_entry("raiddrives-20-29", 33024U, controller_proc_dir_entry,
14222 & proc_rdrv_30, __cil_tmp25);
14223#line 2136
14224 __cil_tmp26 = (void *)adapter;
14225#line 2136
14226 adapter->proc_rdrvstat[3] = create_proc_read_entry("raiddrives-30-39", 33024U, controller_proc_dir_entry,
14227 & proc_rdrv_40, __cil_tmp26);
14228 }
14229#line 2137
14230 return;
14231}
14232}
14233#line 2154 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14234static int proc_read_config(char *page , char **start , off_t offset , int count ,
14235 int *eof , void *data )
14236{ adapter_t *adapter ;
14237 int len ;
14238 int tmp ;
14239 int tmp___0 ;
14240 int tmp___1 ;
14241 int tmp___2 ;
14242 int tmp___3 ;
14243 int tmp___4 ;
14244 int tmp___5 ;
14245 int tmp___6 ;
14246 int tmp___7 ;
14247 int tmp___8 ;
14248 int tmp___9 ;
14249 int tmp___10 ;
14250 int tmp___11 ;
14251 int tmp___12 ;
14252 int tmp___13 ;
14253 int tmp___14 ;
14254 int tmp___15 ;
14255 int tmp___16 ;
14256 int tmp___17 ;
14257 int tmp___18 ;
14258 int tmp___19 ;
14259 int tmp___20 ;
14260 int tmp___21 ;
14261 int tmp___22 ;
14262 int tmp___23 ;
14263 int tmp___24 ;
14264 unsigned long __cil_tmp35 ;
14265 char *__cil_tmp36 ;
14266 char *__cil_tmp37 ;
14267 u8 __cil_tmp38 ;
14268 unsigned int __cil_tmp39 ;
14269 unsigned long __cil_tmp40 ;
14270 char *__cil_tmp41 ;
14271 u8 (*__cil_tmp42)[80U] ;
14272 u8 *__cil_tmp43 ;
14273 unsigned long __cil_tmp44 ;
14274 char *__cil_tmp45 ;
14275 u32 __cil_tmp46 ;
14276 long __cil_tmp47 ;
14277 long __cil_tmp48 ;
14278 unsigned long __cil_tmp49 ;
14279 char *__cil_tmp50 ;
14280 unsigned long __cil_tmp51 ;
14281 char *__cil_tmp52 ;
14282 u32 __cil_tmp53 ;
14283 long __cil_tmp54 ;
14284 long __cil_tmp55 ;
14285 unsigned long __cil_tmp56 ;
14286 char *__cil_tmp57 ;
14287 u32 __cil_tmp58 ;
14288 long __cil_tmp59 ;
14289 long __cil_tmp60 ;
14290 unsigned long __cil_tmp61 ;
14291 char *__cil_tmp62 ;
14292 int __cil_tmp63 ;
14293 unsigned long __cil_tmp64 ;
14294 char *__cil_tmp65 ;
14295 unsigned long __cil_tmp66 ;
14296 char *__cil_tmp67 ;
14297 unsigned long __cil_tmp68 ;
14298 char *__cil_tmp69 ;
14299 unsigned long __cil_tmp70 ;
14300 struct Scsi_Host *__cil_tmp71 ;
14301 unsigned int __cil_tmp72 ;
14302 unsigned long __cil_tmp73 ;
14303 char *__cil_tmp74 ;
14304 u8 __cil_tmp75 ;
14305 int __cil_tmp76 ;
14306 u8 __cil_tmp77 ;
14307 int __cil_tmp78 ;
14308 unsigned long __cil_tmp79 ;
14309 char *__cil_tmp80 ;
14310 u8 (*__cil_tmp81)[7U] ;
14311 u8 *__cil_tmp82 ;
14312 u8 (*__cil_tmp83)[7U] ;
14313 u8 *__cil_tmp84 ;
14314 u16 __cil_tmp85 ;
14315 int __cil_tmp86 ;
14316 unsigned long __cil_tmp87 ;
14317 char *__cil_tmp88 ;
14318 u8 __cil_tmp89 ;
14319 int __cil_tmp90 ;
14320 u8 __cil_tmp91 ;
14321 int __cil_tmp92 ;
14322 unsigned long __cil_tmp93 ;
14323 char *__cil_tmp94 ;
14324 int __cil_tmp95 ;
14325 unsigned long __cil_tmp96 ;
14326 char *__cil_tmp97 ;
14327 int __cil_tmp98 ;
14328 unsigned long __cil_tmp99 ;
14329 char *__cil_tmp100 ;
14330 int __cil_tmp101 ;
14331 unsigned long __cil_tmp102 ;
14332 char *__cil_tmp103 ;
14333 int __cil_tmp104 ;
14334 unsigned long __cil_tmp105 ;
14335 char *__cil_tmp106 ;
14336 int __cil_tmp107 ;
14337 unsigned long __cil_tmp108 ;
14338 char *__cil_tmp109 ;
14339 int __cil_tmp110 ;
14340 unsigned long __cil_tmp111 ;
14341 char *__cil_tmp112 ;
14342 int __cil_tmp113 ;
14343 atomic_t *__cil_tmp114 ;
14344 atomic_t const *__cil_tmp115 ;
14345 unsigned long __cil_tmp116 ;
14346 char *__cil_tmp117 ;
14347 unsigned long __cil_tmp118 ;
14348 char *__cil_tmp119 ;
14349 int __cil_tmp120 ;
14350 unsigned long __cil_tmp121 ;
14351 char *__cil_tmp122 ;
14352 unsigned long __cil_tmp123 ;
14353 char *__cil_tmp124 ;
14354 unsigned long __cil_tmp125 ;
14355 char *__cil_tmp126 ;
14356 int __cil_tmp127 ;
14357
14358 {
14359 {
14360#line 2158
14361 adapter = (adapter_t *)data;
14362#line 2159
14363 len = 0;
14364#line 2161
14365 __cil_tmp35 = (unsigned long )len;
14366#line 2161
14367 __cil_tmp36 = page + __cil_tmp35;
14368#line 2161
14369 __cil_tmp37 = (char *)"v2.00.4 (Release Date: Thu Feb 9 08:51:30 EST 2006)\n";
14370#line 2161
14371 tmp = sprintf(__cil_tmp36, "%s", __cil_tmp37);
14372#line 2161
14373 len = tmp + len;
14374 }
14375 {
14376#line 2163
14377 __cil_tmp38 = adapter->product_info.product_name[0];
14378#line 2163
14379 __cil_tmp39 = (unsigned int )__cil_tmp38;
14380#line 2163
14381 if (__cil_tmp39 != 0U) {
14382 {
14383#line 2164
14384 __cil_tmp40 = (unsigned long )len;
14385#line 2164
14386 __cil_tmp41 = page + __cil_tmp40;
14387#line 2164
14388 __cil_tmp42 = & adapter->product_info.product_name;
14389#line 2164
14390 __cil_tmp43 = (u8 *)__cil_tmp42;
14391#line 2164
14392 tmp___0 = sprintf(__cil_tmp41, "%s\n", __cil_tmp43);
14393#line 2164
14394 len = tmp___0 + len;
14395 }
14396 } else {
14397
14398 }
14399 }
14400 {
14401#line 2167
14402 __cil_tmp44 = (unsigned long )len;
14403#line 2167
14404 __cil_tmp45 = page + __cil_tmp44;
14405#line 2167
14406 tmp___1 = sprintf(__cil_tmp45, "Controller Type: ");
14407#line 2167
14408 len = tmp___1 + len;
14409 }
14410 {
14411#line 2169
14412 __cil_tmp46 = adapter->flag;
14413#line 2169
14414 __cil_tmp47 = (long )__cil_tmp46;
14415#line 2169
14416 __cil_tmp48 = __cil_tmp47 & 536870912L;
14417#line 2169
14418 if (__cil_tmp48 != 0L) {
14419 {
14420#line 2170
14421 __cil_tmp49 = (unsigned long )len;
14422#line 2170
14423 __cil_tmp50 = page + __cil_tmp49;
14424#line 2170
14425 tmp___2 = sprintf(__cil_tmp50, "438/466/467/471/493/518/520/531/532\n");
14426#line 2170
14427 len = tmp___2 + len;
14428 }
14429 } else {
14430 {
14431#line 2174
14432 __cil_tmp51 = (unsigned long )len;
14433#line 2174
14434 __cil_tmp52 = page + __cil_tmp51;
14435#line 2174
14436 tmp___3 = sprintf(__cil_tmp52, "418/428/434\n");
14437#line 2174
14438 len = tmp___3 + len;
14439 }
14440 }
14441 }
14442 {
14443#line 2178
14444 __cil_tmp53 = adapter->flag;
14445#line 2178
14446 __cil_tmp54 = (long )__cil_tmp53;
14447#line 2178
14448 __cil_tmp55 = __cil_tmp54 & 134217728L;
14449#line 2178
14450 if (__cil_tmp55 != 0L) {
14451 {
14452#line 2179
14453 __cil_tmp56 = (unsigned long )len;
14454#line 2179
14455 __cil_tmp57 = page + __cil_tmp56;
14456#line 2179
14457 tmp___4 = sprintf(__cil_tmp57, "Controller Supports 40 Logical Drives\n");
14458#line 2179
14459 len = tmp___4 + len;
14460 }
14461 } else {
14462
14463 }
14464 }
14465 {
14466#line 2183
14467 __cil_tmp58 = adapter->flag;
14468#line 2183
14469 __cil_tmp59 = (long )__cil_tmp58;
14470#line 2183
14471 __cil_tmp60 = __cil_tmp59 & 67108864L;
14472#line 2183
14473 if (__cil_tmp60 != 0L) {
14474 {
14475#line 2184
14476 __cil_tmp61 = (unsigned long )len;
14477#line 2184
14478 __cil_tmp62 = page + __cil_tmp61;
14479#line 2184
14480 tmp___5 = sprintf(__cil_tmp62, "Controller capable of 64-bit memory addressing\n");
14481#line 2184
14482 len = tmp___5 + len;
14483 }
14484 } else {
14485
14486 }
14487 }
14488 {
14489#line 2187
14490 __cil_tmp63 = adapter->has_64bit_addr;
14491#line 2187
14492 if (__cil_tmp63 != 0) {
14493 {
14494#line 2188
14495 __cil_tmp64 = (unsigned long )len;
14496#line 2188
14497 __cil_tmp65 = page + __cil_tmp64;
14498#line 2188
14499 tmp___6 = sprintf(__cil_tmp65, "Controller using 64-bit memory addressing\n");
14500#line 2188
14501 len = tmp___6 + len;
14502 }
14503 } else {
14504 {
14505#line 2192
14506 __cil_tmp66 = (unsigned long )len;
14507#line 2192
14508 __cil_tmp67 = page + __cil_tmp66;
14509#line 2192
14510 tmp___7 = sprintf(__cil_tmp67, "Controller is not using 64-bit memory addressing\n");
14511#line 2192
14512 len = tmp___7 + len;
14513 }
14514 }
14515 }
14516 {
14517#line 2196
14518 __cil_tmp68 = (unsigned long )len;
14519#line 2196
14520 __cil_tmp69 = page + __cil_tmp68;
14521#line 2196
14522 __cil_tmp70 = adapter->base;
14523#line 2196
14524 __cil_tmp71 = adapter->host;
14525#line 2196
14526 __cil_tmp72 = __cil_tmp71->irq;
14527#line 2196
14528 tmp___8 = sprintf(__cil_tmp69, "Base = %08lx, Irq = %d, ", __cil_tmp70, __cil_tmp72);
14529#line 2196
14530 len = tmp___8 + len;
14531#line 2199
14532 __cil_tmp73 = (unsigned long )len;
14533#line 2199
14534 __cil_tmp74 = page + __cil_tmp73;
14535#line 2199
14536 __cil_tmp75 = adapter->numldrv;
14537#line 2199
14538 __cil_tmp76 = (int )__cil_tmp75;
14539#line 2199
14540 __cil_tmp77 = adapter->product_info.nchannels;
14541#line 2199
14542 __cil_tmp78 = (int )__cil_tmp77;
14543#line 2199
14544 tmp___9 = sprintf(__cil_tmp74, "Logical Drives = %d, Channels = %d\n", __cil_tmp76,
14545 __cil_tmp78);
14546#line 2199
14547 len = tmp___9 + len;
14548#line 2202
14549 __cil_tmp79 = (unsigned long )len;
14550#line 2202
14551 __cil_tmp80 = page + __cil_tmp79;
14552#line 2202
14553 __cil_tmp81 = & adapter->fw_version;
14554#line 2202
14555 __cil_tmp82 = (u8 *)__cil_tmp81;
14556#line 2202
14557 __cil_tmp83 = & adapter->bios_version;
14558#line 2202
14559 __cil_tmp84 = (u8 *)__cil_tmp83;
14560#line 2202
14561 __cil_tmp85 = adapter->product_info.dram_size;
14562#line 2202
14563 __cil_tmp86 = (int )__cil_tmp85;
14564#line 2202
14565 tmp___10 = sprintf(__cil_tmp80, "Version =%s:%s, DRAM = %dMb\n", __cil_tmp82, __cil_tmp84,
14566 __cil_tmp86);
14567#line 2202
14568 len = tmp___10 + len;
14569#line 2206
14570 __cil_tmp87 = (unsigned long )len;
14571#line 2206
14572 __cil_tmp88 = page + __cil_tmp87;
14573#line 2206
14574 __cil_tmp89 = adapter->product_info.max_commands;
14575#line 2206
14576 __cil_tmp90 = (int )__cil_tmp89;
14577#line 2206
14578 __cil_tmp91 = adapter->max_cmds;
14579#line 2206
14580 __cil_tmp92 = (int )__cil_tmp91;
14581#line 2206
14582 tmp___11 = sprintf(__cil_tmp88, "Controller Queue Depth = %d, Driver Queue Depth = %d\n",
14583 __cil_tmp90, __cil_tmp92);
14584#line 2206
14585 len = tmp___11 + len;
14586#line 2210
14587 __cil_tmp93 = (unsigned long )len;
14588#line 2210
14589 __cil_tmp94 = page + __cil_tmp93;
14590#line 2210
14591 __cil_tmp95 = adapter->support_ext_cdb;
14592#line 2210
14593 tmp___12 = sprintf(__cil_tmp94, "support_ext_cdb = %d\n", __cil_tmp95);
14594#line 2210
14595 len = tmp___12 + len;
14596#line 2212
14597 __cil_tmp96 = (unsigned long )len;
14598#line 2212
14599 __cil_tmp97 = page + __cil_tmp96;
14600#line 2212
14601 __cil_tmp98 = adapter->support_random_del;
14602#line 2212
14603 tmp___13 = sprintf(__cil_tmp97, "support_random_del = %d\n", __cil_tmp98);
14604#line 2212
14605 len = tmp___13 + len;
14606#line 2214
14607 __cil_tmp99 = (unsigned long )len;
14608#line 2214
14609 __cil_tmp100 = page + __cil_tmp99;
14610#line 2214
14611 __cil_tmp101 = adapter->boot_ldrv_enabled;
14612#line 2214
14613 tmp___14 = sprintf(__cil_tmp100, "boot_ldrv_enabled = %d\n", __cil_tmp101);
14614#line 2214
14615 len = tmp___14 + len;
14616#line 2216
14617 __cil_tmp102 = (unsigned long )len;
14618#line 2216
14619 __cil_tmp103 = page + __cil_tmp102;
14620#line 2216
14621 __cil_tmp104 = adapter->boot_ldrv;
14622#line 2216
14623 tmp___15 = sprintf(__cil_tmp103, "boot_ldrv = %d\n", __cil_tmp104);
14624#line 2216
14625 len = tmp___15 + len;
14626#line 2218
14627 __cil_tmp105 = (unsigned long )len;
14628#line 2218
14629 __cil_tmp106 = page + __cil_tmp105;
14630#line 2218
14631 __cil_tmp107 = adapter->boot_pdrv_enabled;
14632#line 2218
14633 tmp___16 = sprintf(__cil_tmp106, "boot_pdrv_enabled = %d\n", __cil_tmp107);
14634#line 2218
14635 len = tmp___16 + len;
14636#line 2220
14637 __cil_tmp108 = (unsigned long )len;
14638#line 2220
14639 __cil_tmp109 = page + __cil_tmp108;
14640#line 2220
14641 __cil_tmp110 = adapter->boot_pdrv_ch;
14642#line 2220
14643 tmp___17 = sprintf(__cil_tmp109, "boot_pdrv_ch = %d\n", __cil_tmp110);
14644#line 2220
14645 len = tmp___17 + len;
14646#line 2222
14647 __cil_tmp111 = (unsigned long )len;
14648#line 2222
14649 __cil_tmp112 = page + __cil_tmp111;
14650#line 2222
14651 __cil_tmp113 = adapter->boot_pdrv_tgt;
14652#line 2222
14653 tmp___18 = sprintf(__cil_tmp112, "boot_pdrv_tgt = %d\n", __cil_tmp113);
14654#line 2222
14655 len = tmp___18 + len;
14656#line 2224
14657 __cil_tmp114 = & adapter->quiescent;
14658#line 2224
14659 __cil_tmp115 = (atomic_t const *)__cil_tmp114;
14660#line 2224
14661 tmp___19 = atomic_read(__cil_tmp115);
14662#line 2224
14663 __cil_tmp116 = (unsigned long )len;
14664#line 2224
14665 __cil_tmp117 = page + __cil_tmp116;
14666#line 2224
14667 tmp___20 = sprintf(__cil_tmp117, "quiescent = %d\n", tmp___19);
14668#line 2224
14669 len = tmp___20 + len;
14670#line 2226
14671 __cil_tmp118 = (unsigned long )len;
14672#line 2226
14673 __cil_tmp119 = page + __cil_tmp118;
14674#line 2226
14675 __cil_tmp120 = adapter->has_cluster;
14676#line 2226
14677 tmp___21 = sprintf(__cil_tmp119, "has_cluster = %d\n", __cil_tmp120);
14678#line 2226
14679 len = tmp___21 + len;
14680#line 2229
14681 __cil_tmp121 = (unsigned long )len;
14682#line 2229
14683 __cil_tmp122 = page + __cil_tmp121;
14684#line 2229
14685 tmp___22 = sprintf(__cil_tmp122, "\nModule Parameters:\n");
14686#line 2229
14687 len = tmp___22 + len;
14688#line 2230
14689 __cil_tmp123 = (unsigned long )len;
14690#line 2230
14691 __cil_tmp124 = page + __cil_tmp123;
14692#line 2230
14693 tmp___23 = sprintf(__cil_tmp124, "max_cmd_per_lun = %d\n", max_cmd_per_lun);
14694#line 2230
14695 len = tmp___23 + len;
14696#line 2232
14697 __cil_tmp125 = (unsigned long )len;
14698#line 2232
14699 __cil_tmp126 = page + __cil_tmp125;
14700#line 2232
14701 __cil_tmp127 = (int )max_sectors_per_io;
14702#line 2232
14703 tmp___24 = sprintf(__cil_tmp126, "max_sectors_per_io = %d\n", __cil_tmp127);
14704#line 2232
14705 len = tmp___24 + len;
14706#line 2235
14707 *eof = 1;
14708 }
14709#line 2237
14710 return (len);
14711}
14712}
14713#line 2254 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14714static int proc_read_stat(char *page , char **start , off_t offset , int count , int *eof ,
14715 void *data )
14716{ adapter_t *adapter ;
14717 int len ;
14718 int i ;
14719 int tmp ;
14720 int tmp___0 ;
14721 int tmp___1 ;
14722 atomic_t *__cil_tmp13 ;
14723 atomic_t const *__cil_tmp14 ;
14724 unsigned long __cil_tmp15 ;
14725 char *__cil_tmp16 ;
14726 unsigned long __cil_tmp17 ;
14727 char *__cil_tmp18 ;
14728
14729 {
14730 {
14731#line 2261
14732 i = 0;
14733#line 2262
14734 len = 0;
14735#line 2263
14736 adapter = (adapter_t *)data;
14737#line 2265
14738 len = sprintf(page, "Statistical Information for this controller\n");
14739#line 2266
14740 __cil_tmp13 = & adapter->pend_cmds;
14741#line 2266
14742 __cil_tmp14 = (atomic_t const *)__cil_tmp13;
14743#line 2266
14744 tmp = atomic_read(__cil_tmp14);
14745#line 2266
14746 __cil_tmp15 = (unsigned long )len;
14747#line 2266
14748 __cil_tmp16 = page + __cil_tmp15;
14749#line 2266
14750 tmp___0 = sprintf(__cil_tmp16, "pend_cmds = %d\n", tmp);
14751#line 2266
14752 len = tmp___0 + len;
14753#line 2285
14754 __cil_tmp17 = (unsigned long )len;
14755#line 2285
14756 __cil_tmp18 = page + __cil_tmp17;
14757#line 2285
14758 tmp___1 = sprintf(__cil_tmp18, "IO and error counters not compiled in driver.\n");
14759#line 2285
14760 len = tmp___1 + len;
14761#line 2289
14762 *eof = 1;
14763 }
14764#line 2291
14765 return (len);
14766}
14767}
14768#line 2308 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14769static int proc_read_mbox(char *page , char **start , off_t offset , int count , int *eof ,
14770 void *data )
14771{ adapter_t *adapter ;
14772 mbox_t volatile *mbox ;
14773 int len ;
14774 int tmp ;
14775 int tmp___0 ;
14776 int tmp___1 ;
14777 int tmp___2 ;
14778 int tmp___3 ;
14779 int tmp___4 ;
14780 int tmp___5 ;
14781 int tmp___6 ;
14782 int tmp___7 ;
14783 unsigned long __cil_tmp19 ;
14784 char *__cil_tmp20 ;
14785 u8 volatile __cil_tmp21 ;
14786 int __cil_tmp22 ;
14787 unsigned long __cil_tmp23 ;
14788 char *__cil_tmp24 ;
14789 u8 volatile __cil_tmp25 ;
14790 int __cil_tmp26 ;
14791 unsigned long __cil_tmp27 ;
14792 char *__cil_tmp28 ;
14793 u16 volatile __cil_tmp29 ;
14794 int __cil_tmp30 ;
14795 unsigned long __cil_tmp31 ;
14796 char *__cil_tmp32 ;
14797 u32 volatile __cil_tmp33 ;
14798 unsigned long __cil_tmp34 ;
14799 char *__cil_tmp35 ;
14800 u32 volatile __cil_tmp36 ;
14801 unsigned long __cil_tmp37 ;
14802 char *__cil_tmp38 ;
14803 u8 volatile __cil_tmp39 ;
14804 int __cil_tmp40 ;
14805 unsigned long __cil_tmp41 ;
14806 char *__cil_tmp42 ;
14807 u8 volatile __cil_tmp43 ;
14808 int __cil_tmp44 ;
14809 unsigned long __cil_tmp45 ;
14810 char *__cil_tmp46 ;
14811 u8 volatile __cil_tmp47 ;
14812 int __cil_tmp48 ;
14813 unsigned long __cil_tmp49 ;
14814 char *__cil_tmp50 ;
14815 u8 volatile __cil_tmp51 ;
14816 int __cil_tmp52 ;
14817
14818 {
14819 {
14820#line 2312
14821 adapter = (adapter_t *)data;
14822#line 2313
14823 mbox = adapter->mbox;
14824#line 2314
14825 len = 0;
14826#line 2316
14827 len = sprintf(page, "Contents of Mail Box Structure\n");
14828#line 2317
14829 __cil_tmp19 = (unsigned long )len;
14830#line 2317
14831 __cil_tmp20 = page + __cil_tmp19;
14832#line 2317
14833 __cil_tmp21 = mbox->m_out.cmd;
14834#line 2317
14835 __cil_tmp22 = (int )__cil_tmp21;
14836#line 2317
14837 tmp = sprintf(__cil_tmp20, " Fw Command = 0x%02x\n", __cil_tmp22);
14838#line 2317
14839 len = tmp + len;
14840#line 2319
14841 __cil_tmp23 = (unsigned long )len;
14842#line 2319
14843 __cil_tmp24 = page + __cil_tmp23;
14844#line 2319
14845 __cil_tmp25 = mbox->m_out.cmdid;
14846#line 2319
14847 __cil_tmp26 = (int )__cil_tmp25;
14848#line 2319
14849 tmp___0 = sprintf(__cil_tmp24, " Cmd Sequence = 0x%02x\n", __cil_tmp26);
14850#line 2319
14851 len = tmp___0 + len;
14852#line 2321
14853 __cil_tmp27 = (unsigned long )len;
14854#line 2321
14855 __cil_tmp28 = page + __cil_tmp27;
14856#line 2321
14857 __cil_tmp29 = mbox->m_out.numsectors;
14858#line 2321
14859 __cil_tmp30 = (int )__cil_tmp29;
14860#line 2321
14861 tmp___1 = sprintf(__cil_tmp28, " No of Sectors= %04d\n", __cil_tmp30);
14862#line 2321
14863 len = tmp___1 + len;
14864#line 2323
14865 __cil_tmp31 = (unsigned long )len;
14866#line 2323
14867 __cil_tmp32 = page + __cil_tmp31;
14868#line 2323
14869 __cil_tmp33 = mbox->m_out.lba;
14870#line 2323
14871 tmp___2 = sprintf(__cil_tmp32, " LBA = 0x%02x\n", __cil_tmp33);
14872#line 2323
14873 len = tmp___2 + len;
14874#line 2325
14875 __cil_tmp34 = (unsigned long )len;
14876#line 2325
14877 __cil_tmp35 = page + __cil_tmp34;
14878#line 2325
14879 __cil_tmp36 = mbox->m_out.xferaddr;
14880#line 2325
14881 tmp___3 = sprintf(__cil_tmp35, " DTA = 0x%08x\n", __cil_tmp36);
14882#line 2325
14883 len = tmp___3 + len;
14884#line 2327
14885 __cil_tmp37 = (unsigned long )len;
14886#line 2327
14887 __cil_tmp38 = page + __cil_tmp37;
14888#line 2327
14889 __cil_tmp39 = mbox->m_out.logdrv;
14890#line 2327
14891 __cil_tmp40 = (int )__cil_tmp39;
14892#line 2327
14893 tmp___4 = sprintf(__cil_tmp38, " Logical Drive= 0x%02x\n", __cil_tmp40);
14894#line 2327
14895 len = tmp___4 + len;
14896#line 2329
14897 __cil_tmp41 = (unsigned long )len;
14898#line 2329
14899 __cil_tmp42 = page + __cil_tmp41;
14900#line 2329
14901 __cil_tmp43 = mbox->m_out.numsgelements;
14902#line 2329
14903 __cil_tmp44 = (int )__cil_tmp43;
14904#line 2329
14905 tmp___5 = sprintf(__cil_tmp42, " No of SG Elmt= 0x%02x\n", __cil_tmp44);
14906#line 2329
14907 len = tmp___5 + len;
14908#line 2331
14909 __cil_tmp45 = (unsigned long )len;
14910#line 2331
14911 __cil_tmp46 = page + __cil_tmp45;
14912#line 2331
14913 __cil_tmp47 = mbox->m_in.busy;
14914#line 2331
14915 __cil_tmp48 = (int )__cil_tmp47;
14916#line 2331
14917 tmp___6 = sprintf(__cil_tmp46, " Busy = %01x\n", __cil_tmp48);
14918#line 2331
14919 len = tmp___6 + len;
14920#line 2333
14921 __cil_tmp49 = (unsigned long )len;
14922#line 2333
14923 __cil_tmp50 = page + __cil_tmp49;
14924#line 2333
14925 __cil_tmp51 = mbox->m_in.status;
14926#line 2333
14927 __cil_tmp52 = (int )__cil_tmp51;
14928#line 2333
14929 tmp___7 = sprintf(__cil_tmp50, " Status = 0x%02x\n", __cil_tmp52);
14930#line 2333
14931 len = tmp___7 + len;
14932#line 2336
14933 *eof = 1;
14934 }
14935#line 2338
14936 return (len);
14937}
14938}
14939#line 2354 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
14940static int proc_rebuild_rate(char *page , char **start , off_t offset , int count ,
14941 int *eof , void *data )
14942{ adapter_t *adapter ;
14943 dma_addr_t dma_handle ;
14944 caddr_t inquiry ;
14945 struct pci_dev *pdev ;
14946 int len ;
14947 int tmp ;
14948 void *tmp___0 ;
14949 int tmp___1 ;
14950 caddr_t __cil_tmp15 ;
14951 unsigned long __cil_tmp16 ;
14952 unsigned long __cil_tmp17 ;
14953 void *__cil_tmp18 ;
14954 u32 __cil_tmp19 ;
14955 long __cil_tmp20 ;
14956 long __cil_tmp21 ;
14957 mega_inquiry3 *__cil_tmp22 ;
14958 u8 __cil_tmp23 ;
14959 int __cil_tmp24 ;
14960 mraid_ext_inquiry *__cil_tmp25 ;
14961 u8 __cil_tmp26 ;
14962 int __cil_tmp27 ;
14963 void *__cil_tmp28 ;
14964
14965 {
14966 {
14967#line 2357
14968 adapter = (adapter_t *)data;
14969#line 2361
14970 len = 0;
14971#line 2363
14972 tmp = make_local_pdev(adapter, & pdev);
14973 }
14974#line 2363
14975 if (tmp != 0) {
14976#line 2364
14977 *eof = 1;
14978#line 2365
14979 return (len);
14980 } else {
14981
14982 }
14983 {
14984#line 2368
14985 tmp___0 = mega_allocate_inquiry(& dma_handle, pdev);
14986#line 2368
14987 inquiry = (caddr_t )tmp___0;
14988 }
14989 {
14990#line 2368
14991 __cil_tmp15 = (caddr_t )0;
14992#line 2368
14993 __cil_tmp16 = (unsigned long )__cil_tmp15;
14994#line 2368
14995 __cil_tmp17 = (unsigned long )inquiry;
14996#line 2368
14997 if (__cil_tmp17 == __cil_tmp16) {
14998 {
14999#line 2369
15000 free_local_pdev(pdev);
15001#line 2370
15002 *eof = 1;
15003 }
15004#line 2371
15005 return (len);
15006 } else {
15007
15008 }
15009 }
15010 {
15011#line 2374
15012 tmp___1 = mega_adapinq(adapter, dma_handle);
15013 }
15014#line 2374
15015 if (tmp___1 != 0) {
15016 {
15017#line 2376
15018 len = sprintf(page, "Adapter inquiry failed.\n");
15019#line 2378
15020 printk("<4>megaraid: inquiry failed.\n");
15021#line 2380
15022 __cil_tmp18 = (void *)inquiry;
15023#line 2380
15024 mega_free_inquiry(__cil_tmp18, dma_handle, pdev);
15025#line 2382
15026 free_local_pdev(pdev);
15027#line 2384
15028 *eof = 1;
15029 }
15030#line 2386
15031 return (len);
15032 } else {
15033
15034 }
15035 {
15036#line 2389
15037 __cil_tmp19 = adapter->flag;
15038#line 2389
15039 __cil_tmp20 = (long )__cil_tmp19;
15040#line 2389
15041 __cil_tmp21 = __cil_tmp20 & 134217728L;
15042#line 2389
15043 if (__cil_tmp21 != 0L) {
15044 {
15045#line 2390
15046 __cil_tmp22 = (mega_inquiry3 *)inquiry;
15047#line 2390
15048 __cil_tmp23 = __cil_tmp22->rebuild_rate;
15049#line 2390
15050 __cil_tmp24 = (int )__cil_tmp23;
15051#line 2390
15052 len = sprintf(page, "Rebuild Rate: [%d%%]\n", __cil_tmp24);
15053 }
15054 } else {
15055 {
15056#line 2394
15057 __cil_tmp25 = (mraid_ext_inquiry *)inquiry;
15058#line 2394
15059 __cil_tmp26 = __cil_tmp25->raid_inq.adapter_info.rebuild_rate;
15060#line 2394
15061 __cil_tmp27 = (int )__cil_tmp26;
15062#line 2394
15063 len = sprintf(page, "Rebuild Rate: [%d%%]\n", __cil_tmp27);
15064 }
15065 }
15066 }
15067 {
15068#line 2400
15069 __cil_tmp28 = (void *)inquiry;
15070#line 2400
15071 mega_free_inquiry(__cil_tmp28, dma_handle, pdev);
15072#line 2402
15073 free_local_pdev(pdev);
15074#line 2404
15075 *eof = 1;
15076 }
15077#line 2406
15078 return (len);
15079}
15080}
15081#line 2422 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
15082static int proc_battery(char *page , char **start , off_t offset , int count , int *eof ,
15083 void *data )
15084{ adapter_t *adapter ;
15085 dma_addr_t dma_handle ;
15086 caddr_t inquiry ;
15087 struct pci_dev *pdev ;
15088 u8 battery_status ;
15089 char str[256U] ;
15090 int len ;
15091 int tmp ;
15092 void *tmp___0 ;
15093 int tmp___1 ;
15094 caddr_t __cil_tmp17 ;
15095 unsigned long __cil_tmp18 ;
15096 unsigned long __cil_tmp19 ;
15097 void *__cil_tmp20 ;
15098 u32 __cil_tmp21 ;
15099 long __cil_tmp22 ;
15100 long __cil_tmp23 ;
15101 mega_inquiry3 *__cil_tmp24 ;
15102 mraid_ext_inquiry *__cil_tmp25 ;
15103 char *__cil_tmp26 ;
15104 int __cil_tmp27 ;
15105 unsigned int __cil_tmp28 ;
15106 char *__cil_tmp29 ;
15107 int __cil_tmp30 ;
15108 char *__cil_tmp31 ;
15109 int __cil_tmp32 ;
15110 int __cil_tmp33 ;
15111 char *__cil_tmp34 ;
15112 int __cil_tmp35 ;
15113 int __cil_tmp36 ;
15114 char *__cil_tmp37 ;
15115 int __cil_tmp38 ;
15116 int __cil_tmp39 ;
15117 char *__cil_tmp40 ;
15118 int __cil_tmp41 ;
15119 int __cil_tmp42 ;
15120 char *__cil_tmp43 ;
15121 int __cil_tmp44 ;
15122 int __cil_tmp45 ;
15123 char *__cil_tmp46 ;
15124 int __cil_tmp47 ;
15125 int __cil_tmp48 ;
15126 char *__cil_tmp49 ;
15127 char *__cil_tmp50 ;
15128 void *__cil_tmp51 ;
15129
15130 {
15131 {
15132#line 2425
15133 adapter = (adapter_t *)data;
15134#line 2429
15135 battery_status = (u8 )0U;
15136#line 2431
15137 len = 0;
15138#line 2433
15139 tmp = make_local_pdev(adapter, & pdev);
15140 }
15141#line 2433
15142 if (tmp != 0) {
15143#line 2434
15144 *eof = 1;
15145#line 2435
15146 return (len);
15147 } else {
15148
15149 }
15150 {
15151#line 2438
15152 tmp___0 = mega_allocate_inquiry(& dma_handle, pdev);
15153#line 2438
15154 inquiry = (caddr_t )tmp___0;
15155 }
15156 {
15157#line 2438
15158 __cil_tmp17 = (caddr_t )0;
15159#line 2438
15160 __cil_tmp18 = (unsigned long )__cil_tmp17;
15161#line 2438
15162 __cil_tmp19 = (unsigned long )inquiry;
15163#line 2438
15164 if (__cil_tmp19 == __cil_tmp18) {
15165 {
15166#line 2439
15167 free_local_pdev(pdev);
15168#line 2440
15169 *eof = 1;
15170 }
15171#line 2441
15172 return (len);
15173 } else {
15174
15175 }
15176 }
15177 {
15178#line 2444
15179 tmp___1 = mega_adapinq(adapter, dma_handle);
15180 }
15181#line 2444
15182 if (tmp___1 != 0) {
15183 {
15184#line 2446
15185 len = sprintf(page, "Adapter inquiry failed.\n");
15186#line 2448
15187 printk("<4>megaraid: inquiry failed.\n");
15188#line 2450
15189 __cil_tmp20 = (void *)inquiry;
15190#line 2450
15191 mega_free_inquiry(__cil_tmp20, dma_handle, pdev);
15192#line 2452
15193 free_local_pdev(pdev);
15194#line 2454
15195 *eof = 1;
15196 }
15197#line 2456
15198 return (len);
15199 } else {
15200
15201 }
15202 {
15203#line 2459
15204 __cil_tmp21 = adapter->flag;
15205#line 2459
15206 __cil_tmp22 = (long )__cil_tmp21;
15207#line 2459
15208 __cil_tmp23 = __cil_tmp22 & 134217728L;
15209#line 2459
15210 if (__cil_tmp23 != 0L) {
15211#line 2460
15212 __cil_tmp24 = (mega_inquiry3 *)inquiry;
15213#line 2460
15214 battery_status = __cil_tmp24->battery_status;
15215 } else {
15216#line 2463
15217 __cil_tmp25 = (mraid_ext_inquiry *)inquiry;
15218#line 2463
15219 battery_status = __cil_tmp25->raid_inq.adapter_info.battery_status;
15220 }
15221 }
15222 {
15223#line 2470
15224 __cil_tmp26 = (char *)(& str);
15225#line 2470
15226 __cil_tmp27 = (int )battery_status;
15227#line 2470
15228 sprintf(__cil_tmp26, "Battery Status:[%d]", __cil_tmp27);
15229 }
15230 {
15231#line 2472
15232 __cil_tmp28 = (unsigned int )battery_status;
15233#line 2472
15234 if (__cil_tmp28 == 0U) {
15235 {
15236#line 2473
15237 __cil_tmp29 = (char *)(& str);
15238#line 2473
15239 strcat(__cil_tmp29, " Charge Done");
15240 }
15241 } else {
15242
15243 }
15244 }
15245 {
15246#line 2475
15247 __cil_tmp30 = (int )battery_status;
15248#line 2475
15249 if (__cil_tmp30 & 1) {
15250 {
15251#line 2476
15252 __cil_tmp31 = (char *)(& str);
15253#line 2476
15254 strcat(__cil_tmp31, " Module Missing");
15255 }
15256 } else {
15257
15258 }
15259 }
15260 {
15261#line 2478
15262 __cil_tmp32 = (int )battery_status;
15263#line 2478
15264 __cil_tmp33 = __cil_tmp32 & 2;
15265#line 2478
15266 if (__cil_tmp33 != 0) {
15267 {
15268#line 2479
15269 __cil_tmp34 = (char *)(& str);
15270#line 2479
15271 strcat(__cil_tmp34, " Low Voltage");
15272 }
15273 } else {
15274
15275 }
15276 }
15277 {
15278#line 2481
15279 __cil_tmp35 = (int )battery_status;
15280#line 2481
15281 __cil_tmp36 = __cil_tmp35 & 4;
15282#line 2481
15283 if (__cil_tmp36 != 0) {
15284 {
15285#line 2482
15286 __cil_tmp37 = (char *)(& str);
15287#line 2482
15288 strcat(__cil_tmp37, " Temperature High");
15289 }
15290 } else {
15291
15292 }
15293 }
15294 {
15295#line 2484
15296 __cil_tmp38 = (int )battery_status;
15297#line 2484
15298 __cil_tmp39 = __cil_tmp38 & 8;
15299#line 2484
15300 if (__cil_tmp39 != 0) {
15301 {
15302#line 2485
15303 __cil_tmp40 = (char *)(& str);
15304#line 2485
15305 strcat(__cil_tmp40, " Pack Missing");
15306 }
15307 } else {
15308
15309 }
15310 }
15311 {
15312#line 2487
15313 __cil_tmp41 = (int )battery_status;
15314#line 2487
15315 __cil_tmp42 = __cil_tmp41 & 16;
15316#line 2487
15317 if (__cil_tmp42 != 0) {
15318 {
15319#line 2488
15320 __cil_tmp43 = (char *)(& str);
15321#line 2488
15322 strcat(__cil_tmp43, " Charge In-progress");
15323 }
15324 } else {
15325
15326 }
15327 }
15328 {
15329#line 2490
15330 __cil_tmp44 = (int )battery_status;
15331#line 2490
15332 __cil_tmp45 = __cil_tmp44 & 32;
15333#line 2490
15334 if (__cil_tmp45 != 0) {
15335 {
15336#line 2491
15337 __cil_tmp46 = (char *)(& str);
15338#line 2491
15339 strcat(__cil_tmp46, " Charge Fail");
15340 }
15341 } else {
15342
15343 }
15344 }
15345 {
15346#line 2493
15347 __cil_tmp47 = (int )battery_status;
15348#line 2493
15349 __cil_tmp48 = __cil_tmp47 & 64;
15350#line 2493
15351 if (__cil_tmp48 != 0) {
15352 {
15353#line 2494
15354 __cil_tmp49 = (char *)(& str);
15355#line 2494
15356 strcat(__cil_tmp49, " Cycles Exceeded");
15357 }
15358 } else {
15359
15360 }
15361 }
15362 {
15363#line 2496
15364 __cil_tmp50 = (char *)(& str);
15365#line 2496
15366 len = sprintf(page, "%s\n", __cil_tmp50);
15367#line 2499
15368 __cil_tmp51 = (void *)inquiry;
15369#line 2499
15370 mega_free_inquiry(__cil_tmp51, dma_handle, pdev);
15371#line 2501
15372 free_local_pdev(pdev);
15373#line 2503
15374 *eof = 1;
15375 }
15376#line 2505
15377 return (len);
15378}
15379}
15380#line 2521 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
15381static int proc_pdrv_ch0(char *page , char **start , off_t offset , int count , int *eof ,
15382 void *data )
15383{ adapter_t *adapter ;
15384 int tmp ;
15385
15386 {
15387 {
15388#line 2524
15389 adapter = (adapter_t *)data;
15390#line 2526
15391 *eof = 1;
15392#line 2528
15393 tmp = proc_pdrv(adapter, page, 0);
15394 }
15395#line 2528
15396 return (tmp);
15397}
15398}
15399#line 2544 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
15400static int proc_pdrv_ch1(char *page , char **start , off_t offset , int count , int *eof ,
15401 void *data )
15402{ adapter_t *adapter ;
15403 int tmp ;
15404
15405 {
15406 {
15407#line 2547
15408 adapter = (adapter_t *)data;
15409#line 2549
15410 *eof = 1;
15411#line 2551
15412 tmp = proc_pdrv(adapter, page, 1);
15413 }
15414#line 2551
15415 return (tmp);
15416}
15417}
15418#line 2567 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
15419static int proc_pdrv_ch2(char *page , char **start , off_t offset , int count , int *eof ,
15420 void *data )
15421{ adapter_t *adapter ;
15422 int tmp ;
15423
15424 {
15425 {
15426#line 2570
15427 adapter = (adapter_t *)data;
15428#line 2572
15429 *eof = 1;
15430#line 2574
15431 tmp = proc_pdrv(adapter, page, 2);
15432 }
15433#line 2574
15434 return (tmp);
15435}
15436}
15437#line 2590 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
15438static int proc_pdrv_ch3(char *page , char **start , off_t offset , int count , int *eof ,
15439 void *data )
15440{ adapter_t *adapter ;
15441 int tmp ;
15442
15443 {
15444 {
15445#line 2593
15446 adapter = (adapter_t *)data;
15447#line 2595
15448 *eof = 1;
15449#line 2597
15450 tmp = proc_pdrv(adapter, page, 3);
15451 }
15452#line 2597
15453 return (tmp);
15454}
15455}
15456#line 2609 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
15457static int proc_pdrv(adapter_t *adapter , char *page , int channel )
15458{ dma_addr_t dma_handle ;
15459 char *scsi_inq ;
15460 dma_addr_t scsi_inq_dma_handle ;
15461 caddr_t inquiry ;
15462 struct pci_dev *pdev ;
15463 u8 *pdrv_state ;
15464 u8 state ;
15465 int tgt ;
15466 int max_channels ;
15467 int len ;
15468 char str[80U] ;
15469 int i ;
15470 int tmp ;
15471 void *tmp___0 ;
15472 int tmp___1 ;
15473 void *tmp___2 ;
15474 int tmp___3 ;
15475 int tmp___4 ;
15476 int tmp___5 ;
15477 caddr_t __cil_tmp23 ;
15478 unsigned long __cil_tmp24 ;
15479 unsigned long __cil_tmp25 ;
15480 char *__cil_tmp26 ;
15481 unsigned long __cil_tmp27 ;
15482 unsigned long __cil_tmp28 ;
15483 u32 __cil_tmp29 ;
15484 long __cil_tmp30 ;
15485 long __cil_tmp31 ;
15486 mega_inquiry3 *__cil_tmp32 ;
15487 u8 (*__cil_tmp33)[256U] ;
15488 mraid_ext_inquiry *__cil_tmp34 ;
15489 u8 (*__cil_tmp35)[75U] ;
15490 u8 __cil_tmp36 ;
15491 int __cil_tmp37 ;
15492 unsigned long __cil_tmp38 ;
15493 u8 *__cil_tmp39 ;
15494 int __cil_tmp40 ;
15495 int __cil_tmp41 ;
15496 int __cil_tmp42 ;
15497 int __cil_tmp43 ;
15498 int __cil_tmp44 ;
15499 int __cil_tmp45 ;
15500 int __cil_tmp46 ;
15501 int __cil_tmp47 ;
15502 char *__cil_tmp48 ;
15503 char *__cil_tmp49 ;
15504 char *__cil_tmp50 ;
15505 char *__cil_tmp51 ;
15506 char *__cil_tmp52 ;
15507 void *__cil_tmp53 ;
15508 u8 __cil_tmp54 ;
15509 int __cil_tmp55 ;
15510 u8 __cil_tmp56 ;
15511 u8 __cil_tmp57 ;
15512 int __cil_tmp58 ;
15513 u8 __cil_tmp59 ;
15514 char __cil_tmp60 ;
15515 int __cil_tmp61 ;
15516 int __cil_tmp62 ;
15517 int __cil_tmp63 ;
15518 unsigned int __cil_tmp64 ;
15519 unsigned long __cil_tmp65 ;
15520 char *__cil_tmp66 ;
15521 char *__cil_tmp67 ;
15522 unsigned long __cil_tmp68 ;
15523 char *__cil_tmp69 ;
15524 void *__cil_tmp70 ;
15525 void *__cil_tmp71 ;
15526
15527 {
15528 {
15529#line 2620
15530 len = 0;
15531#line 2624
15532 tmp = make_local_pdev(adapter, & pdev);
15533 }
15534#line 2624
15535 if (tmp != 0) {
15536#line 2625
15537 return (len);
15538 } else {
15539
15540 }
15541 {
15542#line 2628
15543 tmp___0 = mega_allocate_inquiry(& dma_handle, pdev);
15544#line 2628
15545 inquiry = (caddr_t )tmp___0;
15546 }
15547 {
15548#line 2628
15549 __cil_tmp23 = (caddr_t )0;
15550#line 2628
15551 __cil_tmp24 = (unsigned long )__cil_tmp23;
15552#line 2628
15553 __cil_tmp25 = (unsigned long )inquiry;
15554#line 2628
15555 if (__cil_tmp25 == __cil_tmp24) {
15556#line 2629
15557 goto free_pdev;
15558 } else {
15559
15560 }
15561 }
15562 {
15563#line 2632
15564 tmp___1 = mega_adapinq(adapter, dma_handle);
15565 }
15566#line 2632
15567 if (tmp___1 != 0) {
15568 {
15569#line 2633
15570 len = sprintf(page, "Adapter inquiry failed.\n");
15571#line 2635
15572 printk("<4>megaraid: inquiry failed.\n");
15573 }
15574#line 2637
15575 goto free_inquiry;
15576 } else {
15577
15578 }
15579 {
15580#line 2641
15581 tmp___2 = pci_alloc_consistent(pdev, 256UL, & scsi_inq_dma_handle);
15582#line 2641
15583 scsi_inq = (char *)tmp___2;
15584 }
15585 {
15586#line 2643
15587 __cil_tmp26 = (char *)0;
15588#line 2643
15589 __cil_tmp27 = (unsigned long )__cil_tmp26;
15590#line 2643
15591 __cil_tmp28 = (unsigned long )scsi_inq;
15592#line 2643
15593 if (__cil_tmp28 == __cil_tmp27) {
15594 {
15595#line 2644
15596 len = sprintf(page, "memory not available for scsi inq.\n");
15597 }
15598#line 2646
15599 goto free_inquiry;
15600 } else {
15601
15602 }
15603 }
15604 {
15605#line 2649
15606 __cil_tmp29 = adapter->flag;
15607#line 2649
15608 __cil_tmp30 = (long )__cil_tmp29;
15609#line 2649
15610 __cil_tmp31 = __cil_tmp30 & 134217728L;
15611#line 2649
15612 if (__cil_tmp31 != 0L) {
15613#line 2650
15614 __cil_tmp32 = (mega_inquiry3 *)inquiry;
15615#line 2650
15616 __cil_tmp33 = & __cil_tmp32->pdrv_state;
15617#line 2650
15618 pdrv_state = (u8 *)__cil_tmp33;
15619 } else {
15620#line 2653
15621 __cil_tmp34 = (mraid_ext_inquiry *)inquiry;
15622#line 2653
15623 __cil_tmp35 = & __cil_tmp34->raid_inq.pdrv_info.pdrv_state;
15624#line 2653
15625 pdrv_state = (u8 *)__cil_tmp35;
15626 }
15627 }
15628#line 2657
15629 __cil_tmp36 = adapter->product_info.nchannels;
15630#line 2657
15631 max_channels = (int )__cil_tmp36;
15632#line 2659
15633 if (channel >= max_channels) {
15634#line 2660
15635 goto free_pci;
15636 } else {
15637
15638 }
15639#line 2663
15640 tgt = 0;
15641#line 2663
15642 goto ldv_32412;
15643 ldv_32411:
15644#line 2665
15645 __cil_tmp37 = channel * 16;
15646#line 2665
15647 i = __cil_tmp37 + tgt;
15648#line 2667
15649 __cil_tmp38 = (unsigned long )i;
15650#line 2667
15651 __cil_tmp39 = pdrv_state + __cil_tmp38;
15652#line 2667
15653 state = *__cil_tmp39;
15654 {
15655#line 2671
15656 __cil_tmp40 = (int )state;
15657#line 2671
15658 __cil_tmp41 = __cil_tmp40 & 15;
15659#line 2671
15660 if (__cil_tmp41 == 3) {
15661#line 2671
15662 goto case_3;
15663 } else {
15664 {
15665#line 2677
15666 __cil_tmp42 = (int )state;
15667#line 2677
15668 __cil_tmp43 = __cil_tmp42 & 15;
15669#line 2677
15670 if (__cil_tmp43 == 4) {
15671#line 2677
15672 goto case_4;
15673 } else {
15674 {
15675#line 2683
15676 __cil_tmp44 = (int )state;
15677#line 2683
15678 __cil_tmp45 = __cil_tmp44 & 15;
15679#line 2683
15680 if (__cil_tmp45 == 5) {
15681#line 2683
15682 goto case_5;
15683 } else {
15684 {
15685#line 2689
15686 __cil_tmp46 = (int )state;
15687#line 2689
15688 __cil_tmp47 = __cil_tmp46 & 15;
15689#line 2689
15690 if (__cil_tmp47 == 6) {
15691#line 2689
15692 goto case_6;
15693 } else {
15694#line 2695
15695 goto switch_default;
15696#line 2669
15697 if (0) {
15698 case_3:
15699 {
15700#line 2672
15701 __cil_tmp48 = (char *)(& str);
15702#line 2672
15703 sprintf(__cil_tmp48, "Channel:%2d Id:%2d State: Online", channel, tgt);
15704 }
15705#line 2675
15706 goto ldv_32404;
15707 case_4:
15708 {
15709#line 2678
15710 __cil_tmp49 = (char *)(& str);
15711#line 2678
15712 sprintf(__cil_tmp49, "Channel:%2d Id:%2d State: Failed", channel, tgt);
15713 }
15714#line 2681
15715 goto ldv_32404;
15716 case_5:
15717 {
15718#line 2684
15719 __cil_tmp50 = (char *)(& str);
15720#line 2684
15721 sprintf(__cil_tmp50, "Channel:%2d Id:%2d State: Rebuild", channel, tgt);
15722 }
15723#line 2687
15724 goto ldv_32404;
15725 case_6:
15726 {
15727#line 2690
15728 __cil_tmp51 = (char *)(& str);
15729#line 2690
15730 sprintf(__cil_tmp51, "Channel:%2d Id:%2d State: Hot spare", channel, tgt);
15731 }
15732#line 2693
15733 goto ldv_32404;
15734 switch_default:
15735 {
15736#line 2696
15737 __cil_tmp52 = (char *)(& str);
15738#line 2696
15739 sprintf(__cil_tmp52, "Channel:%2d Id:%2d State: Un-configured", channel,
15740 tgt);
15741 }
15742#line 2699
15743 goto ldv_32404;
15744 } else {
15745
15746 }
15747 }
15748 }
15749 }
15750 }
15751 }
15752 }
15753 }
15754 }
15755 ldv_32404:
15756 {
15757#line 2708
15758 __cil_tmp53 = (void *)scsi_inq;
15759#line 2708
15760 memset(__cil_tmp53, 0, 256UL);
15761#line 2709
15762 __cil_tmp54 = (u8 )channel;
15763#line 2709
15764 __cil_tmp55 = (int )__cil_tmp54;
15765#line 2709
15766 __cil_tmp56 = (u8 )__cil_tmp55;
15767#line 2709
15768 __cil_tmp57 = (u8 )tgt;
15769#line 2709
15770 __cil_tmp58 = (int )__cil_tmp57;
15771#line 2709
15772 __cil_tmp59 = (u8 )__cil_tmp58;
15773#line 2709
15774 tmp___3 = mega_internal_dev_inquiry(adapter, __cil_tmp56, __cil_tmp59, scsi_inq_dma_handle);
15775 }
15776#line 2709
15777 if (tmp___3 != 0) {
15778#line 2712
15779 goto ldv_32409;
15780 } else {
15781 {
15782#line 2709
15783 __cil_tmp60 = *scsi_inq;
15784#line 2709
15785 __cil_tmp61 = (int )__cil_tmp60;
15786#line 2709
15787 __cil_tmp62 = __cil_tmp61 & 31;
15788#line 2709
15789 if (__cil_tmp62 != 0) {
15790#line 2712
15791 goto ldv_32409;
15792 } else {
15793
15794 }
15795 }
15796 }
15797 {
15798#line 2719
15799 __cil_tmp63 = len + 240;
15800#line 2719
15801 __cil_tmp64 = (unsigned int )__cil_tmp63;
15802#line 2719
15803 if (__cil_tmp64 > 4095U) {
15804#line 2719
15805 goto ldv_32410;
15806 } else {
15807
15808 }
15809 }
15810 {
15811#line 2721
15812 __cil_tmp65 = (unsigned long )len;
15813#line 2721
15814 __cil_tmp66 = page + __cil_tmp65;
15815#line 2721
15816 __cil_tmp67 = (char *)(& str);
15817#line 2721
15818 tmp___4 = sprintf(__cil_tmp66, "%s.\n", __cil_tmp67);
15819#line 2721
15820 len = tmp___4 + len;
15821#line 2723
15822 __cil_tmp68 = (unsigned long )len;
15823#line 2723
15824 __cil_tmp69 = page + __cil_tmp68;
15825#line 2723
15826 tmp___5 = mega_print_inquiry(__cil_tmp69, scsi_inq);
15827#line 2723
15828 len = tmp___5 + len;
15829 }
15830 ldv_32409:
15831#line 2663
15832 tgt = tgt + 1;
15833 ldv_32412: ;
15834#line 2663
15835 if (tgt <= 15) {
15836#line 2664
15837 goto ldv_32411;
15838 } else {
15839#line 2666
15840 goto ldv_32410;
15841 }
15842 ldv_32410: ;
15843 free_pci:
15844 {
15845#line 2727
15846 __cil_tmp70 = (void *)scsi_inq;
15847#line 2727
15848 pci_free_consistent(pdev, 256UL, __cil_tmp70, scsi_inq_dma_handle);
15849 }
15850 free_inquiry:
15851 {
15852#line 2729
15853 __cil_tmp71 = (void *)inquiry;
15854#line 2729
15855 mega_free_inquiry(__cil_tmp71, dma_handle, pdev);
15856 }
15857 free_pdev:
15858 {
15859#line 2731
15860 free_local_pdev(pdev);
15861 }
15862#line 2733
15863 return (len);
15864}
15865}
15866#line 2741 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
15867static int mega_print_inquiry(char *page , char *scsi_inq )
15868{ int len ;
15869 int i ;
15870 int tmp ;
15871 int tmp___0 ;
15872 int tmp___1 ;
15873 int tmp___2 ;
15874 int tmp___3 ;
15875 int tmp___4 ;
15876 char const *tmp___5 ;
15877 int tmp___6 ;
15878 int tmp___7 ;
15879 int tmp___8 ;
15880 int tmp___9 ;
15881 unsigned long __cil_tmp16 ;
15882 char *__cil_tmp17 ;
15883 unsigned long __cil_tmp18 ;
15884 char *__cil_tmp19 ;
15885 char __cil_tmp20 ;
15886 int __cil_tmp21 ;
15887 unsigned long __cil_tmp22 ;
15888 char *__cil_tmp23 ;
15889 unsigned long __cil_tmp24 ;
15890 char *__cil_tmp25 ;
15891 unsigned long __cil_tmp26 ;
15892 char *__cil_tmp27 ;
15893 char __cil_tmp28 ;
15894 int __cil_tmp29 ;
15895 unsigned long __cil_tmp30 ;
15896 char *__cil_tmp31 ;
15897 unsigned long __cil_tmp32 ;
15898 char *__cil_tmp33 ;
15899 unsigned long __cil_tmp34 ;
15900 char *__cil_tmp35 ;
15901 char __cil_tmp36 ;
15902 int __cil_tmp37 ;
15903 unsigned long __cil_tmp38 ;
15904 char *__cil_tmp39 ;
15905 char __cil_tmp40 ;
15906 int __cil_tmp41 ;
15907 unsigned int __cil_tmp42 ;
15908 unsigned long __cil_tmp43 ;
15909 char *__cil_tmp44 ;
15910 unsigned long __cil_tmp45 ;
15911 char *__cil_tmp46 ;
15912 char *__cil_tmp47 ;
15913 char __cil_tmp48 ;
15914 int __cil_tmp49 ;
15915 int __cil_tmp50 ;
15916 char *__cil_tmp51 ;
15917 char __cil_tmp52 ;
15918 int __cil_tmp53 ;
15919 int __cil_tmp54 ;
15920 char *__cil_tmp55 ;
15921 char __cil_tmp56 ;
15922 int __cil_tmp57 ;
15923 int __cil_tmp58 ;
15924 unsigned long __cil_tmp59 ;
15925 char *__cil_tmp60 ;
15926 unsigned long __cil_tmp61 ;
15927 char *__cil_tmp62 ;
15928 unsigned long __cil_tmp63 ;
15929 char *__cil_tmp64 ;
15930
15931 {
15932 {
15933#line 2743
15934 len = 0;
15935#line 2746
15936 len = sprintf(page, " Vendor: ");
15937#line 2747
15938 i = 8;
15939 }
15940#line 2747
15941 goto ldv_32420;
15942 ldv_32419:
15943 {
15944#line 2748
15945 __cil_tmp16 = (unsigned long )len;
15946#line 2748
15947 __cil_tmp17 = page + __cil_tmp16;
15948#line 2748
15949 __cil_tmp18 = (unsigned long )i;
15950#line 2748
15951 __cil_tmp19 = scsi_inq + __cil_tmp18;
15952#line 2748
15953 __cil_tmp20 = *__cil_tmp19;
15954#line 2748
15955 __cil_tmp21 = (int )__cil_tmp20;
15956#line 2748
15957 tmp = sprintf(__cil_tmp17, "%c", __cil_tmp21);
15958#line 2748
15959 len = tmp + len;
15960#line 2747
15961 i = i + 1;
15962 }
15963 ldv_32420: ;
15964#line 2747
15965 if (i <= 15) {
15966#line 2748
15967 goto ldv_32419;
15968 } else {
15969#line 2750
15970 goto ldv_32421;
15971 }
15972 ldv_32421:
15973 {
15974#line 2751
15975 __cil_tmp22 = (unsigned long )len;
15976#line 2751
15977 __cil_tmp23 = page + __cil_tmp22;
15978#line 2751
15979 tmp___0 = sprintf(__cil_tmp23, " Model: ");
15980#line 2751
15981 len = tmp___0 + len;
15982#line 2753
15983 i = 16;
15984 }
15985#line 2753
15986 goto ldv_32423;
15987 ldv_32422:
15988 {
15989#line 2754
15990 __cil_tmp24 = (unsigned long )len;
15991#line 2754
15992 __cil_tmp25 = page + __cil_tmp24;
15993#line 2754
15994 __cil_tmp26 = (unsigned long )i;
15995#line 2754
15996 __cil_tmp27 = scsi_inq + __cil_tmp26;
15997#line 2754
15998 __cil_tmp28 = *__cil_tmp27;
15999#line 2754
16000 __cil_tmp29 = (int )__cil_tmp28;
16001#line 2754
16002 tmp___1 = sprintf(__cil_tmp25, "%c", __cil_tmp29);
16003#line 2754
16004 len = tmp___1 + len;
16005#line 2753
16006 i = i + 1;
16007 }
16008 ldv_32423: ;
16009#line 2753
16010 if (i <= 31) {
16011#line 2754
16012 goto ldv_32422;
16013 } else {
16014#line 2756
16015 goto ldv_32424;
16016 }
16017 ldv_32424:
16018 {
16019#line 2757
16020 __cil_tmp30 = (unsigned long )len;
16021#line 2757
16022 __cil_tmp31 = page + __cil_tmp30;
16023#line 2757
16024 tmp___2 = sprintf(__cil_tmp31, " Rev: ");
16025#line 2757
16026 len = tmp___2 + len;
16027#line 2759
16028 i = 32;
16029 }
16030#line 2759
16031 goto ldv_32426;
16032 ldv_32425:
16033 {
16034#line 2760
16035 __cil_tmp32 = (unsigned long )len;
16036#line 2760
16037 __cil_tmp33 = page + __cil_tmp32;
16038#line 2760
16039 __cil_tmp34 = (unsigned long )i;
16040#line 2760
16041 __cil_tmp35 = scsi_inq + __cil_tmp34;
16042#line 2760
16043 __cil_tmp36 = *__cil_tmp35;
16044#line 2760
16045 __cil_tmp37 = (int )__cil_tmp36;
16046#line 2760
16047 tmp___3 = sprintf(__cil_tmp33, "%c", __cil_tmp37);
16048#line 2760
16049 len = tmp___3 + len;
16050#line 2759
16051 i = i + 1;
16052 }
16053 ldv_32426: ;
16054#line 2759
16055 if (i <= 35) {
16056#line 2760
16057 goto ldv_32425;
16058 } else {
16059#line 2762
16060 goto ldv_32427;
16061 }
16062 ldv_32427:
16063 {
16064#line 2763
16065 __cil_tmp38 = (unsigned long )len;
16066#line 2763
16067 __cil_tmp39 = page + __cil_tmp38;
16068#line 2763
16069 tmp___4 = sprintf(__cil_tmp39, "\n");
16070#line 2763
16071 len = tmp___4 + len;
16072#line 2765
16073 __cil_tmp40 = *scsi_inq;
16074#line 2765
16075 __cil_tmp41 = (int )__cil_tmp40;
16076#line 2765
16077 i = __cil_tmp41 & 31;
16078#line 2767
16079 __cil_tmp42 = (unsigned int )i;
16080#line 2767
16081 tmp___5 = scsi_device_type(__cil_tmp42);
16082#line 2767
16083 __cil_tmp43 = (unsigned long )len;
16084#line 2767
16085 __cil_tmp44 = page + __cil_tmp43;
16086#line 2767
16087 tmp___6 = sprintf(__cil_tmp44, " Type: %s ", tmp___5);
16088#line 2767
16089 len = tmp___6 + len;
16090#line 2769
16091 __cil_tmp45 = (unsigned long )len;
16092#line 2769
16093 __cil_tmp46 = page + __cil_tmp45;
16094#line 2769
16095 __cil_tmp47 = scsi_inq + 2UL;
16096#line 2769
16097 __cil_tmp48 = *__cil_tmp47;
16098#line 2769
16099 __cil_tmp49 = (int )__cil_tmp48;
16100#line 2769
16101 __cil_tmp50 = __cil_tmp49 & 7;
16102#line 2769
16103 tmp___7 = sprintf(__cil_tmp46, " ANSI SCSI revision: %02x", __cil_tmp50);
16104#line 2769
16105 len = tmp___7 + len;
16106 }
16107 {
16108#line 2772
16109 __cil_tmp51 = scsi_inq + 2UL;
16110#line 2772
16111 __cil_tmp52 = *__cil_tmp51;
16112#line 2772
16113 __cil_tmp53 = (int )__cil_tmp52;
16114#line 2772
16115 __cil_tmp54 = __cil_tmp53 & 7;
16116#line 2772
16117 if (__cil_tmp54 == 1) {
16118 {
16119#line 2772
16120 __cil_tmp55 = scsi_inq + 3UL;
16121#line 2772
16122 __cil_tmp56 = *__cil_tmp55;
16123#line 2772
16124 __cil_tmp57 = (int )__cil_tmp56;
16125#line 2772
16126 __cil_tmp58 = __cil_tmp57 & 15;
16127#line 2772
16128 if (__cil_tmp58 == 1) {
16129 {
16130#line 2773
16131 __cil_tmp59 = (unsigned long )len;
16132#line 2773
16133 __cil_tmp60 = page + __cil_tmp59;
16134#line 2773
16135 tmp___8 = sprintf(__cil_tmp60, " CCS\n");
16136#line 2773
16137 len = tmp___8 + len;
16138 }
16139 } else {
16140 {
16141#line 2775
16142 __cil_tmp61 = (unsigned long )len;
16143#line 2775
16144 __cil_tmp62 = page + __cil_tmp61;
16145#line 2775
16146 tmp___9 = sprintf(__cil_tmp62, "\n");
16147#line 2775
16148 len = tmp___9 + len;
16149 }
16150 }
16151 }
16152 } else {
16153 {
16154#line 2775
16155 __cil_tmp63 = (unsigned long )len;
16156#line 2775
16157 __cil_tmp64 = page + __cil_tmp63;
16158#line 2775
16159 tmp___9 = sprintf(__cil_tmp64, "\n");
16160#line 2775
16161 len = tmp___9 + len;
16162 }
16163 }
16164 }
16165#line 2777
16166 return (len);
16167}
16168}
16169#line 2793 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
16170static int proc_rdrv_10(char *page , char **start , off_t offset , int count , int *eof ,
16171 void *data )
16172{ adapter_t *adapter ;
16173 int tmp ;
16174
16175 {
16176 {
16177#line 2796
16178 adapter = (adapter_t *)data;
16179#line 2798
16180 *eof = 1;
16181#line 2800
16182 tmp = proc_rdrv(adapter, page, 0, 9);
16183 }
16184#line 2800
16185 return (tmp);
16186}
16187}
16188#line 2816 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
16189static int proc_rdrv_20(char *page , char **start , off_t offset , int count , int *eof ,
16190 void *data )
16191{ adapter_t *adapter ;
16192 int tmp ;
16193
16194 {
16195 {
16196#line 2819
16197 adapter = (adapter_t *)data;
16198#line 2821
16199 *eof = 1;
16200#line 2823
16201 tmp = proc_rdrv(adapter, page, 10, 19);
16202 }
16203#line 2823
16204 return (tmp);
16205}
16206}
16207#line 2839 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
16208static int proc_rdrv_30(char *page , char **start , off_t offset , int count , int *eof ,
16209 void *data )
16210{ adapter_t *adapter ;
16211 int tmp ;
16212
16213 {
16214 {
16215#line 2842
16216 adapter = (adapter_t *)data;
16217#line 2844
16218 *eof = 1;
16219#line 2846
16220 tmp = proc_rdrv(adapter, page, 20, 29);
16221 }
16222#line 2846
16223 return (tmp);
16224}
16225}
16226#line 2862 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
16227static int proc_rdrv_40(char *page , char **start , off_t offset , int count , int *eof ,
16228 void *data )
16229{ adapter_t *adapter ;
16230 int tmp ;
16231
16232 {
16233 {
16234#line 2865
16235 adapter = (adapter_t *)data;
16236#line 2867
16237 *eof = 1;
16238#line 2869
16239 tmp = proc_rdrv(adapter, page, 30, 39);
16240 }
16241#line 2869
16242 return (tmp);
16243}
16244}
16245#line 2884 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
16246static int proc_rdrv(adapter_t *adapter , char *page , int start , int end )
16247{ dma_addr_t dma_handle ;
16248 logdrv_param *lparam ;
16249 megacmd_t mc ;
16250 char *disk_array ;
16251 dma_addr_t disk_array_dma_handle ;
16252 caddr_t inquiry ;
16253 struct pci_dev *pdev ;
16254 u8 *rdrv_state ;
16255 int num_ldrv ;
16256 u32 array_sz ;
16257 int len ;
16258 int i ;
16259 int tmp ;
16260 void *tmp___0 ;
16261 int tmp___1 ;
16262 void *tmp___2 ;
16263 int tmp___3 ;
16264 int tmp___4 ;
16265 int tmp___5 ;
16266 int tmp___6 ;
16267 int tmp___7 ;
16268 int tmp___8 ;
16269 int tmp___9 ;
16270 int tmp___10 ;
16271 int tmp___11 ;
16272 int tmp___12 ;
16273 int tmp___13 ;
16274 int tmp___14 ;
16275 int tmp___15 ;
16276 int tmp___16 ;
16277 int tmp___17 ;
16278 int tmp___18 ;
16279 int tmp___19 ;
16280 int tmp___20 ;
16281 int tmp___21 ;
16282 int tmp___22 ;
16283 int tmp___23 ;
16284 int tmp___24 ;
16285 int tmp___25 ;
16286 int tmp___26 ;
16287 int tmp___27 ;
16288 int tmp___28 ;
16289 int tmp___29 ;
16290 int tmp___30 ;
16291 caddr_t __cil_tmp49 ;
16292 unsigned long __cil_tmp50 ;
16293 unsigned long __cil_tmp51 ;
16294 void *__cil_tmp52 ;
16295 void *__cil_tmp53 ;
16296 u32 __cil_tmp54 ;
16297 long __cil_tmp55 ;
16298 long __cil_tmp56 ;
16299 mega_inquiry3 *__cil_tmp57 ;
16300 u8 (*__cil_tmp58)[40U] ;
16301 mega_inquiry3 *__cil_tmp59 ;
16302 u8 __cil_tmp60 ;
16303 mraid_ext_inquiry *__cil_tmp61 ;
16304 u8 (*__cil_tmp62)[8U] ;
16305 mraid_ext_inquiry *__cil_tmp63 ;
16306 u8 __cil_tmp64 ;
16307 size_t __cil_tmp65 ;
16308 char *__cil_tmp66 ;
16309 unsigned long __cil_tmp67 ;
16310 unsigned long __cil_tmp68 ;
16311 void *__cil_tmp69 ;
16312 u32 __cil_tmp70 ;
16313 long __cil_tmp71 ;
16314 long __cil_tmp72 ;
16315 mega_passthru *__cil_tmp73 ;
16316 void *__cil_tmp74 ;
16317 size_t __cil_tmp75 ;
16318 void *__cil_tmp76 ;
16319 mega_passthru *__cil_tmp77 ;
16320 mega_passthru *__cil_tmp78 ;
16321 void *__cil_tmp79 ;
16322 size_t __cil_tmp80 ;
16323 void *__cil_tmp81 ;
16324 u32 __cil_tmp82 ;
16325 long __cil_tmp83 ;
16326 long __cil_tmp84 ;
16327 disk_array_40ld *__cil_tmp85 ;
16328 disk_array_8ld *__cil_tmp86 ;
16329 int __cil_tmp87 ;
16330 unsigned int __cil_tmp88 ;
16331 unsigned long __cil_tmp89 ;
16332 char *__cil_tmp90 ;
16333 unsigned long __cil_tmp91 ;
16334 u8 *__cil_tmp92 ;
16335 u8 __cil_tmp93 ;
16336 int __cil_tmp94 ;
16337 int __cil_tmp95 ;
16338 unsigned long __cil_tmp96 ;
16339 u8 *__cil_tmp97 ;
16340 u8 __cil_tmp98 ;
16341 int __cil_tmp99 ;
16342 int __cil_tmp100 ;
16343 unsigned long __cil_tmp101 ;
16344 u8 *__cil_tmp102 ;
16345 u8 __cil_tmp103 ;
16346 int __cil_tmp104 ;
16347 int __cil_tmp105 ;
16348 unsigned long __cil_tmp106 ;
16349 u8 *__cil_tmp107 ;
16350 u8 __cil_tmp108 ;
16351 int __cil_tmp109 ;
16352 int __cil_tmp110 ;
16353 unsigned long __cil_tmp111 ;
16354 char *__cil_tmp112 ;
16355 unsigned long __cil_tmp113 ;
16356 char *__cil_tmp114 ;
16357 unsigned long __cil_tmp115 ;
16358 char *__cil_tmp116 ;
16359 unsigned long __cil_tmp117 ;
16360 char *__cil_tmp118 ;
16361 unsigned long __cil_tmp119 ;
16362 char *__cil_tmp120 ;
16363 unsigned long __cil_tmp121 ;
16364 u8 *__cil_tmp122 ;
16365 u8 __cil_tmp123 ;
16366 int __cil_tmp124 ;
16367 int __cil_tmp125 ;
16368 unsigned long __cil_tmp126 ;
16369 char *__cil_tmp127 ;
16370 unsigned long __cil_tmp128 ;
16371 u8 *__cil_tmp129 ;
16372 u8 __cil_tmp130 ;
16373 int __cil_tmp131 ;
16374 int __cil_tmp132 ;
16375 unsigned long __cil_tmp133 ;
16376 char *__cil_tmp134 ;
16377 unsigned long __cil_tmp135 ;
16378 char *__cil_tmp136 ;
16379 unsigned long __cil_tmp137 ;
16380 char *__cil_tmp138 ;
16381 u8 __cil_tmp139 ;
16382 int __cil_tmp140 ;
16383 unsigned long __cil_tmp141 ;
16384 char *__cil_tmp142 ;
16385 u8 __cil_tmp143 ;
16386 int __cil_tmp144 ;
16387 u8 __cil_tmp145 ;
16388 unsigned int __cil_tmp146 ;
16389 u8 __cil_tmp147 ;
16390 unsigned int __cil_tmp148 ;
16391 unsigned int __cil_tmp149 ;
16392 unsigned long __cil_tmp150 ;
16393 char *__cil_tmp151 ;
16394 unsigned long __cil_tmp152 ;
16395 char *__cil_tmp153 ;
16396 u8 __cil_tmp154 ;
16397 int __cil_tmp155 ;
16398 unsigned long __cil_tmp156 ;
16399 char *__cil_tmp157 ;
16400 u8 __cil_tmp158 ;
16401 int __cil_tmp159 ;
16402 u8 __cil_tmp160 ;
16403 int __cil_tmp161 ;
16404 u8 __cil_tmp162 ;
16405 int __cil_tmp163 ;
16406 unsigned long __cil_tmp164 ;
16407 char *__cil_tmp165 ;
16408 unsigned long __cil_tmp166 ;
16409 char *__cil_tmp167 ;
16410 unsigned long __cil_tmp168 ;
16411 char *__cil_tmp169 ;
16412 unsigned long __cil_tmp170 ;
16413 char *__cil_tmp171 ;
16414 u8 __cil_tmp172 ;
16415 int __cil_tmp173 ;
16416 u8 __cil_tmp174 ;
16417 int __cil_tmp175 ;
16418 unsigned long __cil_tmp176 ;
16419 char *__cil_tmp177 ;
16420 unsigned long __cil_tmp178 ;
16421 char *__cil_tmp179 ;
16422 unsigned long __cil_tmp180 ;
16423 char *__cil_tmp181 ;
16424 u8 __cil_tmp182 ;
16425 int __cil_tmp183 ;
16426 u8 __cil_tmp184 ;
16427 int __cil_tmp185 ;
16428 unsigned long __cil_tmp186 ;
16429 char *__cil_tmp187 ;
16430 unsigned long __cil_tmp188 ;
16431 char *__cil_tmp189 ;
16432 int __cil_tmp190 ;
16433 void *__cil_tmp191 ;
16434 size_t __cil_tmp192 ;
16435 void *__cil_tmp193 ;
16436
16437 {
16438 {
16439#line 2896
16440 len = 0;
16441#line 2899
16442 tmp = make_local_pdev(adapter, & pdev);
16443 }
16444#line 2899
16445 if (tmp != 0) {
16446#line 2900
16447 return (len);
16448 } else {
16449
16450 }
16451 {
16452#line 2903
16453 tmp___0 = mega_allocate_inquiry(& dma_handle, pdev);
16454#line 2903
16455 inquiry = (caddr_t )tmp___0;
16456 }
16457 {
16458#line 2903
16459 __cil_tmp49 = (caddr_t )0;
16460#line 2903
16461 __cil_tmp50 = (unsigned long )__cil_tmp49;
16462#line 2903
16463 __cil_tmp51 = (unsigned long )inquiry;
16464#line 2903
16465 if (__cil_tmp51 == __cil_tmp50) {
16466 {
16467#line 2904
16468 free_local_pdev(pdev);
16469 }
16470#line 2905
16471 return (len);
16472 } else {
16473
16474 }
16475 }
16476 {
16477#line 2908
16478 tmp___1 = mega_adapinq(adapter, dma_handle);
16479 }
16480#line 2908
16481 if (tmp___1 != 0) {
16482 {
16483#line 2910
16484 len = sprintf(page, "Adapter inquiry failed.\n");
16485#line 2912
16486 printk("<4>megaraid: inquiry failed.\n");
16487#line 2914
16488 __cil_tmp52 = (void *)inquiry;
16489#line 2914
16490 mega_free_inquiry(__cil_tmp52, dma_handle, pdev);
16491#line 2916
16492 free_local_pdev(pdev);
16493 }
16494#line 2918
16495 return (len);
16496 } else {
16497
16498 }
16499 {
16500#line 2921
16501 __cil_tmp53 = (void *)(& mc);
16502#line 2921
16503 memset(__cil_tmp53, 0, 18UL);
16504 }
16505 {
16506#line 2923
16507 __cil_tmp54 = adapter->flag;
16508#line 2923
16509 __cil_tmp55 = (long )__cil_tmp54;
16510#line 2923
16511 __cil_tmp56 = __cil_tmp55 & 134217728L;
16512#line 2923
16513 if (__cil_tmp56 != 0L) {
16514#line 2924
16515 array_sz = 23964U;
16516#line 2926
16517 __cil_tmp57 = (mega_inquiry3 *)inquiry;
16518#line 2926
16519 __cil_tmp58 = & __cil_tmp57->ldrv_state;
16520#line 2926
16521 rdrv_state = (u8 *)__cil_tmp58;
16522#line 2928
16523 __cil_tmp59 = (mega_inquiry3 *)inquiry;
16524#line 2928
16525 __cil_tmp60 = __cil_tmp59->num_ldrv;
16526#line 2928
16527 num_ldrv = (int )__cil_tmp60;
16528 } else {
16529#line 2931
16530 array_sz = 2204U;
16531#line 2933
16532 __cil_tmp61 = (mraid_ext_inquiry *)inquiry;
16533#line 2933
16534 __cil_tmp62 = & __cil_tmp61->raid_inq.logdrv_info.ldrv_state;
16535#line 2933
16536 rdrv_state = (u8 *)__cil_tmp62;
16537#line 2936
16538 __cil_tmp63 = (mraid_ext_inquiry *)inquiry;
16539#line 2936
16540 __cil_tmp64 = __cil_tmp63->raid_inq.logdrv_info.num_ldrv;
16541#line 2936
16542 num_ldrv = (int )__cil_tmp64;
16543 }
16544 }
16545 {
16546#line 2940
16547 __cil_tmp65 = (size_t )array_sz;
16548#line 2940
16549 tmp___2 = pci_alloc_consistent(pdev, __cil_tmp65, & disk_array_dma_handle);
16550#line 2940
16551 disk_array = (char *)tmp___2;
16552 }
16553 {
16554#line 2943
16555 __cil_tmp66 = (char *)0;
16556#line 2943
16557 __cil_tmp67 = (unsigned long )__cil_tmp66;
16558#line 2943
16559 __cil_tmp68 = (unsigned long )disk_array;
16560#line 2943
16561 if (__cil_tmp68 == __cil_tmp67) {
16562 {
16563#line 2944
16564 len = sprintf(page, "memory not available.\n");
16565#line 2946
16566 __cil_tmp69 = (void *)inquiry;
16567#line 2946
16568 mega_free_inquiry(__cil_tmp69, dma_handle, pdev);
16569#line 2948
16570 free_local_pdev(pdev);
16571 }
16572#line 2950
16573 return (len);
16574 } else {
16575
16576 }
16577 }
16578#line 2953
16579 mc.xferaddr = (unsigned int )disk_array_dma_handle;
16580 {
16581#line 2955
16582 __cil_tmp70 = adapter->flag;
16583#line 2955
16584 __cil_tmp71 = (long )__cil_tmp70;
16585#line 2955
16586 __cil_tmp72 = __cil_tmp71 & 134217728L;
16587#line 2955
16588 if (__cil_tmp72 != 0L) {
16589 {
16590#line 2956
16591 mc.cmd = (u8 )161U;
16592#line 2957
16593 mc.opcode = (u8 )4U;
16594#line 2959
16595 __cil_tmp73 = (mega_passthru *)0;
16596#line 2959
16597 tmp___3 = mega_internal_command(adapter, & mc, __cil_tmp73);
16598 }
16599#line 2959
16600 if (tmp___3 != 0) {
16601 {
16602#line 2961
16603 len = sprintf(page, "40LD read config failed.\n");
16604#line 2963
16605 __cil_tmp74 = (void *)inquiry;
16606#line 2963
16607 mega_free_inquiry(__cil_tmp74, dma_handle, pdev);
16608#line 2965
16609 __cil_tmp75 = (size_t )array_sz;
16610#line 2965
16611 __cil_tmp76 = (void *)disk_array;
16612#line 2965
16613 pci_free_consistent(pdev, __cil_tmp75, __cil_tmp76, disk_array_dma_handle);
16614#line 2968
16615 free_local_pdev(pdev);
16616 }
16617#line 2970
16618 return (len);
16619 } else {
16620
16621 }
16622 } else {
16623 {
16624#line 2975
16625 mc.cmd = (u8 )103U;
16626#line 2977
16627 __cil_tmp77 = (mega_passthru *)0;
16628#line 2977
16629 tmp___5 = mega_internal_command(adapter, & mc, __cil_tmp77);
16630 }
16631#line 2977
16632 if (tmp___5 != 0) {
16633 {
16634#line 2979
16635 mc.cmd = (u8 )7U;
16636#line 2981
16637 __cil_tmp78 = (mega_passthru *)0;
16638#line 2981
16639 tmp___4 = mega_internal_command(adapter, & mc, __cil_tmp78);
16640 }
16641#line 2981
16642 if (tmp___4 != 0) {
16643 {
16644#line 2984
16645 len = sprintf(page, "8LD read config failed.\n");
16646#line 2987
16647 __cil_tmp79 = (void *)inquiry;
16648#line 2987
16649 mega_free_inquiry(__cil_tmp79, dma_handle, pdev);
16650#line 2989
16651 __cil_tmp80 = (size_t )array_sz;
16652#line 2989
16653 __cil_tmp81 = (void *)disk_array;
16654#line 2989
16655 pci_free_consistent(pdev, __cil_tmp80, __cil_tmp81, disk_array_dma_handle);
16656#line 2993
16657 free_local_pdev(pdev);
16658 }
16659#line 2995
16660 return (len);
16661 } else {
16662
16663 }
16664 } else {
16665
16666 }
16667 }
16668 }
16669#line 3000
16670 i = start;
16671#line 3000
16672 goto ldv_32500;
16673 ldv_32499: ;
16674 {
16675#line 3002
16676 __cil_tmp82 = adapter->flag;
16677#line 3002
16678 __cil_tmp83 = (long )__cil_tmp82;
16679#line 3002
16680 __cil_tmp84 = __cil_tmp83 & 134217728L;
16681#line 3002
16682 if (__cil_tmp84 != 0L) {
16683#line 3003
16684 __cil_tmp85 = (disk_array_40ld *)disk_array;
16685#line 3003
16686 lparam = & __cil_tmp85->ldrv[i].lparam;
16687 } else {
16688#line 3007
16689 __cil_tmp86 = (disk_array_8ld *)disk_array;
16690#line 3007
16691 lparam = & __cil_tmp86->ldrv[i].lparam;
16692 }
16693 }
16694 {
16695#line 3015
16696 __cil_tmp87 = len + 240;
16697#line 3015
16698 __cil_tmp88 = (unsigned int )__cil_tmp87;
16699#line 3015
16700 if (__cil_tmp88 > 4095U) {
16701#line 3015
16702 goto ldv_32482;
16703 } else {
16704
16705 }
16706 }
16707 {
16708#line 3017
16709 __cil_tmp89 = (unsigned long )len;
16710#line 3017
16711 __cil_tmp90 = page + __cil_tmp89;
16712#line 3017
16713 tmp___6 = sprintf(__cil_tmp90, "Logical drive:%2d:, ", i);
16714#line 3017
16715 len = tmp___6 + len;
16716 }
16717 {
16718#line 3020
16719 __cil_tmp91 = (unsigned long )i;
16720#line 3020
16721 __cil_tmp92 = rdrv_state + __cil_tmp91;
16722#line 3020
16723 __cil_tmp93 = *__cil_tmp92;
16724#line 3020
16725 __cil_tmp94 = (int )__cil_tmp93;
16726#line 3020
16727 __cil_tmp95 = __cil_tmp94 & 15;
16728#line 3020
16729 if (__cil_tmp95 == 0) {
16730#line 3020
16731 goto case_0;
16732 } else {
16733 {
16734#line 3024
16735 __cil_tmp96 = (unsigned long )i;
16736#line 3024
16737 __cil_tmp97 = rdrv_state + __cil_tmp96;
16738#line 3024
16739 __cil_tmp98 = *__cil_tmp97;
16740#line 3024
16741 __cil_tmp99 = (int )__cil_tmp98;
16742#line 3024
16743 __cil_tmp100 = __cil_tmp99 & 15;
16744#line 3024
16745 if (__cil_tmp100 == 1) {
16746#line 3024
16747 goto case_1;
16748 } else {
16749 {
16750#line 3028
16751 __cil_tmp101 = (unsigned long )i;
16752#line 3028
16753 __cil_tmp102 = rdrv_state + __cil_tmp101;
16754#line 3028
16755 __cil_tmp103 = *__cil_tmp102;
16756#line 3028
16757 __cil_tmp104 = (int )__cil_tmp103;
16758#line 3028
16759 __cil_tmp105 = __cil_tmp104 & 15;
16760#line 3028
16761 if (__cil_tmp105 == 2) {
16762#line 3028
16763 goto case_2;
16764 } else {
16765 {
16766#line 3032
16767 __cil_tmp106 = (unsigned long )i;
16768#line 3032
16769 __cil_tmp107 = rdrv_state + __cil_tmp106;
16770#line 3032
16771 __cil_tmp108 = *__cil_tmp107;
16772#line 3032
16773 __cil_tmp109 = (int )__cil_tmp108;
16774#line 3032
16775 __cil_tmp110 = __cil_tmp109 & 15;
16776#line 3032
16777 if (__cil_tmp110 == 3) {
16778#line 3032
16779 goto case_3;
16780 } else {
16781#line 3036
16782 goto switch_default;
16783#line 3019
16784 if (0) {
16785 case_0:
16786 {
16787#line 3021
16788 __cil_tmp111 = (unsigned long )len;
16789#line 3021
16790 __cil_tmp112 = page + __cil_tmp111;
16791#line 3021
16792 tmp___7 = sprintf(__cil_tmp112, "state: offline");
16793#line 3021
16794 len = tmp___7 + len;
16795 }
16796#line 3022
16797 goto ldv_32484;
16798 case_1:
16799 {
16800#line 3025
16801 __cil_tmp113 = (unsigned long )len;
16802#line 3025
16803 __cil_tmp114 = page + __cil_tmp113;
16804#line 3025
16805 tmp___8 = sprintf(__cil_tmp114, "state: degraded");
16806#line 3025
16807 len = tmp___8 + len;
16808 }
16809#line 3026
16810 goto ldv_32484;
16811 case_2:
16812 {
16813#line 3029
16814 __cil_tmp115 = (unsigned long )len;
16815#line 3029
16816 __cil_tmp116 = page + __cil_tmp115;
16817#line 3029
16818 tmp___9 = sprintf(__cil_tmp116, "state: optimal");
16819#line 3029
16820 len = tmp___9 + len;
16821 }
16822#line 3030
16823 goto ldv_32484;
16824 case_3:
16825 {
16826#line 3033
16827 __cil_tmp117 = (unsigned long )len;
16828#line 3033
16829 __cil_tmp118 = page + __cil_tmp117;
16830#line 3033
16831 tmp___10 = sprintf(__cil_tmp118, "state: deleted");
16832#line 3033
16833 len = tmp___10 + len;
16834 }
16835#line 3034
16836 goto ldv_32484;
16837 switch_default:
16838 {
16839#line 3037
16840 __cil_tmp119 = (unsigned long )len;
16841#line 3037
16842 __cil_tmp120 = page + __cil_tmp119;
16843#line 3037
16844 tmp___11 = sprintf(__cil_tmp120, "state: unknown");
16845#line 3037
16846 len = tmp___11 + len;
16847 }
16848#line 3038
16849 goto ldv_32484;
16850 } else {
16851
16852 }
16853 }
16854 }
16855 }
16856 }
16857 }
16858 }
16859 }
16860 }
16861 ldv_32484: ;
16862 {
16863#line 3045
16864 __cil_tmp121 = (unsigned long )i;
16865#line 3045
16866 __cil_tmp122 = rdrv_state + __cil_tmp121;
16867#line 3045
16868 __cil_tmp123 = *__cil_tmp122;
16869#line 3045
16870 __cil_tmp124 = (int )__cil_tmp123;
16871#line 3045
16872 __cil_tmp125 = __cil_tmp124 & 240;
16873#line 3045
16874 if (__cil_tmp125 == 32) {
16875 {
16876#line 3046
16877 __cil_tmp126 = (unsigned long )len;
16878#line 3046
16879 __cil_tmp127 = page + __cil_tmp126;
16880#line 3046
16881 tmp___12 = sprintf(__cil_tmp127, ", check-consistency in progress");
16882#line 3046
16883 len = tmp___12 + len;
16884 }
16885 } else {
16886 {
16887#line 3049
16888 __cil_tmp128 = (unsigned long )i;
16889#line 3049
16890 __cil_tmp129 = rdrv_state + __cil_tmp128;
16891#line 3049
16892 __cil_tmp130 = *__cil_tmp129;
16893#line 3049
16894 __cil_tmp131 = (int )__cil_tmp130;
16895#line 3049
16896 __cil_tmp132 = __cil_tmp131 & 240;
16897#line 3049
16898 if (__cil_tmp132 == 16) {
16899 {
16900#line 3050
16901 __cil_tmp133 = (unsigned long )len;
16902#line 3050
16903 __cil_tmp134 = page + __cil_tmp133;
16904#line 3050
16905 tmp___13 = sprintf(__cil_tmp134, ", initialization in progress");
16906#line 3050
16907 len = tmp___13 + len;
16908 }
16909 } else {
16910
16911 }
16912 }
16913 }
16914 }
16915 {
16916#line 3054
16917 __cil_tmp135 = (unsigned long )len;
16918#line 3054
16919 __cil_tmp136 = page + __cil_tmp135;
16920#line 3054
16921 tmp___14 = sprintf(__cil_tmp136, "\n");
16922#line 3054
16923 len = tmp___14 + len;
16924#line 3056
16925 __cil_tmp137 = (unsigned long )len;
16926#line 3056
16927 __cil_tmp138 = page + __cil_tmp137;
16928#line 3056
16929 __cil_tmp139 = lparam->span_depth;
16930#line 3056
16931 __cil_tmp140 = (int )__cil_tmp139;
16932#line 3056
16933 tmp___15 = sprintf(__cil_tmp138, "Span depth:%3d, ", __cil_tmp140);
16934#line 3056
16935 len = tmp___15 + len;
16936#line 3059
16937 __cil_tmp141 = (unsigned long )len;
16938#line 3059
16939 __cil_tmp142 = page + __cil_tmp141;
16940#line 3059
16941 __cil_tmp143 = lparam->level;
16942#line 3059
16943 __cil_tmp144 = (int )__cil_tmp143;
16944#line 3059
16945 tmp___16 = sprintf(__cil_tmp142, "RAID level:%3d, ", __cil_tmp144);
16946#line 3059
16947 len = tmp___16 + len;
16948 }
16949 {
16950#line 3062
16951 __cil_tmp145 = lparam->stripe_sz;
16952#line 3062
16953 __cil_tmp146 = (unsigned int )__cil_tmp145;
16954#line 3062
16955 if (__cil_tmp146 != 0U) {
16956#line 3062
16957 __cil_tmp147 = lparam->stripe_sz;
16958#line 3062
16959 __cil_tmp148 = (unsigned int )__cil_tmp147;
16960#line 3062
16961 __cil_tmp149 = __cil_tmp148 / 2U;
16962#line 3062
16963 tmp___17 = (int )__cil_tmp149;
16964 } else {
16965#line 3062
16966 tmp___17 = 128;
16967 }
16968 }
16969 {
16970#line 3062
16971 __cil_tmp150 = (unsigned long )len;
16972#line 3062
16973 __cil_tmp151 = page + __cil_tmp150;
16974#line 3062
16975 tmp___18 = sprintf(__cil_tmp151, "Stripe size:%3d, ", tmp___17);
16976#line 3062
16977 len = tmp___18 + len;
16978#line 3065
16979 __cil_tmp152 = (unsigned long )len;
16980#line 3065
16981 __cil_tmp153 = page + __cil_tmp152;
16982#line 3065
16983 __cil_tmp154 = lparam->row_size;
16984#line 3065
16985 __cil_tmp155 = (int )__cil_tmp154;
16986#line 3065
16987 tmp___19 = sprintf(__cil_tmp153, "Row size:%3d\n", __cil_tmp155);
16988#line 3065
16989 len = tmp___19 + len;
16990#line 3069
16991 __cil_tmp156 = (unsigned long )len;
16992#line 3069
16993 __cil_tmp157 = page + __cil_tmp156;
16994#line 3069
16995 tmp___20 = sprintf(__cil_tmp157, "Read Policy: ");
16996#line 3069
16997 len = tmp___20 + len;
16998 }
16999 {
17000#line 3073
17001 __cil_tmp158 = lparam->read_ahead;
17002#line 3073
17003 __cil_tmp159 = (int )__cil_tmp158;
17004#line 3073
17005 if (__cil_tmp159 == 0) {
17006#line 3073
17007 goto case_0___0;
17008 } else {
17009 {
17010#line 3077
17011 __cil_tmp160 = lparam->read_ahead;
17012#line 3077
17013 __cil_tmp161 = (int )__cil_tmp160;
17014#line 3077
17015 if (__cil_tmp161 == 1) {
17016#line 3077
17017 goto case_1___0;
17018 } else {
17019 {
17020#line 3081
17021 __cil_tmp162 = lparam->read_ahead;
17022#line 3081
17023 __cil_tmp163 = (int )__cil_tmp162;
17024#line 3081
17025 if (__cil_tmp163 == 2) {
17026#line 3081
17027 goto case_2___0;
17028 } else
17029#line 3071
17030 if (0) {
17031 case_0___0:
17032 {
17033#line 3074
17034 __cil_tmp164 = (unsigned long )len;
17035#line 3074
17036 __cil_tmp165 = page + __cil_tmp164;
17037#line 3074
17038 tmp___21 = sprintf(__cil_tmp165, "No read ahead, ");
17039#line 3074
17040 len = tmp___21 + len;
17041 }
17042#line 3075
17043 goto ldv_32490;
17044 case_1___0:
17045 {
17046#line 3078
17047 __cil_tmp166 = (unsigned long )len;
17048#line 3078
17049 __cil_tmp167 = page + __cil_tmp166;
17050#line 3078
17051 tmp___22 = sprintf(__cil_tmp167, "Read ahead, ");
17052#line 3078
17053 len = tmp___22 + len;
17054 }
17055#line 3079
17056 goto ldv_32490;
17057 case_2___0:
17058 {
17059#line 3082
17060 __cil_tmp168 = (unsigned long )len;
17061#line 3082
17062 __cil_tmp169 = page + __cil_tmp168;
17063#line 3082
17064 tmp___23 = sprintf(__cil_tmp169, "Adaptive, ");
17065#line 3082
17066 len = tmp___23 + len;
17067 }
17068#line 3083
17069 goto ldv_32490;
17070 } else {
17071
17072 }
17073 }
17074 }
17075 }
17076 }
17077 }
17078 ldv_32490:
17079 {
17080#line 3087
17081 __cil_tmp170 = (unsigned long )len;
17082#line 3087
17083 __cil_tmp171 = page + __cil_tmp170;
17084#line 3087
17085 tmp___24 = sprintf(__cil_tmp171, "Write Policy: ");
17086#line 3087
17087 len = tmp___24 + len;
17088 }
17089 {
17090#line 3091
17091 __cil_tmp172 = lparam->write_mode;
17092#line 3091
17093 __cil_tmp173 = (int )__cil_tmp172;
17094#line 3091
17095 if (__cil_tmp173 == 0) {
17096#line 3091
17097 goto case_0___1;
17098 } else {
17099 {
17100#line 3095
17101 __cil_tmp174 = lparam->write_mode;
17102#line 3095
17103 __cil_tmp175 = (int )__cil_tmp174;
17104#line 3095
17105 if (__cil_tmp175 == 1) {
17106#line 3095
17107 goto case_1___1;
17108 } else
17109#line 3089
17110 if (0) {
17111 case_0___1:
17112 {
17113#line 3092
17114 __cil_tmp176 = (unsigned long )len;
17115#line 3092
17116 __cil_tmp177 = page + __cil_tmp176;
17117#line 3092
17118 tmp___25 = sprintf(__cil_tmp177, "Write thru, ");
17119#line 3092
17120 len = tmp___25 + len;
17121 }
17122#line 3093
17123 goto ldv_32494;
17124 case_1___1:
17125 {
17126#line 3096
17127 __cil_tmp178 = (unsigned long )len;
17128#line 3096
17129 __cil_tmp179 = page + __cil_tmp178;
17130#line 3096
17131 tmp___26 = sprintf(__cil_tmp179, "Write back, ");
17132#line 3096
17133 len = tmp___26 + len;
17134 }
17135#line 3097
17136 goto ldv_32494;
17137 } else {
17138
17139 }
17140 }
17141 }
17142 }
17143 ldv_32494:
17144 {
17145#line 3100
17146 __cil_tmp180 = (unsigned long )len;
17147#line 3100
17148 __cil_tmp181 = page + __cil_tmp180;
17149#line 3100
17150 tmp___27 = sprintf(__cil_tmp181, "Cache Policy: ");
17151#line 3100
17152 len = tmp___27 + len;
17153 }
17154 {
17155#line 3104
17156 __cil_tmp182 = lparam->direct_io;
17157#line 3104
17158 __cil_tmp183 = (int )__cil_tmp182;
17159#line 3104
17160 if (__cil_tmp183 == 0) {
17161#line 3104
17162 goto case_0___2;
17163 } else {
17164 {
17165#line 3108
17166 __cil_tmp184 = lparam->direct_io;
17167#line 3108
17168 __cil_tmp185 = (int )__cil_tmp184;
17169#line 3108
17170 if (__cil_tmp185 == 1) {
17171#line 3108
17172 goto case_1___2;
17173 } else
17174#line 3102
17175 if (0) {
17176 case_0___2:
17177 {
17178#line 3105
17179 __cil_tmp186 = (unsigned long )len;
17180#line 3105
17181 __cil_tmp187 = page + __cil_tmp186;
17182#line 3105
17183 tmp___28 = sprintf(__cil_tmp187, "Cached IO\n\n");
17184#line 3105
17185 len = tmp___28 + len;
17186 }
17187#line 3106
17188 goto ldv_32497;
17189 case_1___2:
17190 {
17191#line 3109
17192 __cil_tmp188 = (unsigned long )len;
17193#line 3109
17194 __cil_tmp189 = page + __cil_tmp188;
17195#line 3109
17196 tmp___29 = sprintf(__cil_tmp189, "Direct IO\n\n");
17197#line 3109
17198 len = tmp___29 + len;
17199 }
17200#line 3110
17201 goto ldv_32497;
17202 } else {
17203
17204 }
17205 }
17206 }
17207 }
17208 ldv_32497:
17209#line 3000
17210 i = i + 1;
17211 ldv_32500: ;
17212 {
17213#line 3000
17214 __cil_tmp190 = end + 1;
17215#line 3000
17216 if (num_ldrv < __cil_tmp190) {
17217#line 3000
17218 tmp___30 = num_ldrv;
17219 } else {
17220#line 3000
17221 tmp___30 = end + 1;
17222 }
17223 }
17224#line 3000
17225 if (tmp___30 > i) {
17226#line 3001
17227 goto ldv_32499;
17228 } else {
17229#line 3003
17230 goto ldv_32482;
17231 }
17232 ldv_32482:
17233 {
17234#line 3114
17235 __cil_tmp191 = (void *)inquiry;
17236#line 3114
17237 mega_free_inquiry(__cil_tmp191, dma_handle, pdev);
17238#line 3116
17239 __cil_tmp192 = (size_t )array_sz;
17240#line 3116
17241 __cil_tmp193 = (void *)disk_array;
17242#line 3116
17243 pci_free_consistent(pdev, __cil_tmp192, __cil_tmp193, disk_array_dma_handle);
17244#line 3119
17245 free_local_pdev(pdev);
17246 }
17247#line 3121
17248 return (len);
17249}
17250}
17251#line 3136 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
17252static int megaraid_biosparam(struct scsi_device *sdev , struct block_device *bdev ,
17253 sector_t capacity , int *geom )
17254{ adapter_t *adapter ;
17255 unsigned char *bh ;
17256 int heads ;
17257 int sectors ;
17258 int cylinders ;
17259 int rval ;
17260 struct Scsi_Host *__cil_tmp11 ;
17261 unsigned long (*__cil_tmp12)[0U] ;
17262 unsigned int __cil_tmp13 ;
17263 int __cil_tmp14 ;
17264 int __cil_tmp15 ;
17265 int __cil_tmp16 ;
17266 int __cil_tmp17 ;
17267 sector_t __cil_tmp18 ;
17268 sector_t __cil_tmp19 ;
17269 int __cil_tmp20 ;
17270 sector_t __cil_tmp21 ;
17271 sector_t __cil_tmp22 ;
17272 int *__cil_tmp23 ;
17273 int *__cil_tmp24 ;
17274 unsigned char *__cil_tmp25 ;
17275 unsigned long __cil_tmp26 ;
17276 unsigned long __cil_tmp27 ;
17277 unsigned int *__cil_tmp28 ;
17278 unsigned int *__cil_tmp29 ;
17279 unsigned int *__cil_tmp30 ;
17280 unsigned int *__cil_tmp31 ;
17281 unsigned int *__cil_tmp32 ;
17282 void const *__cil_tmp33 ;
17283 unsigned int __cil_tmp34 ;
17284 int __cil_tmp35 ;
17285 sector_t __cil_tmp36 ;
17286 sector_t __cil_tmp37 ;
17287 int __cil_tmp38 ;
17288 sector_t __cil_tmp39 ;
17289 sector_t __cil_tmp40 ;
17290 int *__cil_tmp41 ;
17291 int *__cil_tmp42 ;
17292
17293 {
17294#line 3147
17295 __cil_tmp11 = sdev->host;
17296#line 3147
17297 __cil_tmp12 = & __cil_tmp11->hostdata;
17298#line 3147
17299 adapter = (adapter_t *)__cil_tmp12;
17300 {
17301#line 3149
17302 __cil_tmp13 = sdev->channel;
17303#line 3149
17304 __cil_tmp14 = (int )__cil_tmp13;
17305#line 3149
17306 __cil_tmp15 = adapter->mega_ch_class;
17307#line 3149
17308 __cil_tmp16 = __cil_tmp15 >> __cil_tmp14;
17309#line 3149
17310 if (__cil_tmp16 & 1) {
17311#line 3151
17312 heads = 64;
17313#line 3152
17314 sectors = 32;
17315#line 3153
17316 __cil_tmp17 = heads * sectors;
17317#line 3153
17318 __cil_tmp18 = (sector_t )__cil_tmp17;
17319#line 3153
17320 __cil_tmp19 = capacity / __cil_tmp18;
17321#line 3153
17322 cylinders = (int )__cil_tmp19;
17323#line 3159
17324 if (capacity > 2097151UL) {
17325#line 3160
17326 heads = 255;
17327#line 3161
17328 sectors = 63;
17329#line 3162
17330 __cil_tmp20 = heads * sectors;
17331#line 3162
17332 __cil_tmp21 = (sector_t )__cil_tmp20;
17333#line 3162
17334 __cil_tmp22 = capacity / __cil_tmp21;
17335#line 3162
17336 cylinders = (int )__cil_tmp22;
17337 } else {
17338
17339 }
17340#line 3166
17341 *geom = heads;
17342#line 3167
17343 __cil_tmp23 = geom + 1UL;
17344#line 3167
17345 *__cil_tmp23 = sectors;
17346#line 3168
17347 __cil_tmp24 = geom + 2UL;
17348#line 3168
17349 *__cil_tmp24 = cylinders;
17350 } else {
17351 {
17352#line 3171
17353 bh = scsi_bios_ptable(bdev);
17354 }
17355 {
17356#line 3173
17357 __cil_tmp25 = (unsigned char *)0;
17358#line 3173
17359 __cil_tmp26 = (unsigned long )__cil_tmp25;
17360#line 3173
17361 __cil_tmp27 = (unsigned long )bh;
17362#line 3173
17363 if (__cil_tmp27 != __cil_tmp26) {
17364 {
17365#line 3174
17366 __cil_tmp28 = (unsigned int *)geom;
17367#line 3174
17368 __cil_tmp29 = __cil_tmp28 + 2U;
17369#line 3174
17370 __cil_tmp30 = (unsigned int *)geom;
17371#line 3174
17372 __cil_tmp31 = (unsigned int *)geom;
17373#line 3174
17374 __cil_tmp32 = __cil_tmp31 + 1U;
17375#line 3174
17376 rval = scsi_partsize(bh, capacity, __cil_tmp29, __cil_tmp30, __cil_tmp32);
17377#line 3176
17378 __cil_tmp33 = (void const *)bh;
17379#line 3176
17380 kfree(__cil_tmp33);
17381 }
17382#line 3177
17383 if (rval != -1) {
17384#line 3178
17385 return (rval);
17386 } else {
17387
17388 }
17389 } else {
17390
17391 }
17392 }
17393 {
17394#line 3181
17395 __cil_tmp34 = sdev->channel;
17396#line 3181
17397 printk("<6>megaraid: invalid partition on this disk on channel %d\n", __cil_tmp34);
17398#line 3186
17399 heads = 64;
17400#line 3187
17401 sectors = 32;
17402#line 3188
17403 __cil_tmp35 = heads * sectors;
17404#line 3188
17405 __cil_tmp36 = (sector_t )__cil_tmp35;
17406#line 3188
17407 __cil_tmp37 = capacity / __cil_tmp36;
17408#line 3188
17409 cylinders = (int )__cil_tmp37;
17410 }
17411#line 3191
17412 if (capacity > 2097151UL) {
17413#line 3192
17414 heads = 255;
17415#line 3193
17416 sectors = 63;
17417#line 3194
17418 __cil_tmp38 = heads * sectors;
17419#line 3194
17420 __cil_tmp39 = (sector_t )__cil_tmp38;
17421#line 3194
17422 __cil_tmp40 = capacity / __cil_tmp39;
17423#line 3194
17424 cylinders = (int )__cil_tmp40;
17425 } else {
17426
17427 }
17428#line 3198
17429 *geom = heads;
17430#line 3199
17431 __cil_tmp41 = geom + 1UL;
17432#line 3199
17433 *__cil_tmp41 = sectors;
17434#line 3200
17435 __cil_tmp42 = geom + 2UL;
17436#line 3200
17437 *__cil_tmp42 = cylinders;
17438 }
17439 }
17440#line 3203
17441 return (0);
17442}
17443}
17444#line 3215 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
17445static int mega_init_scb(adapter_t *adapter )
17446{ scb_t *scb ;
17447 int i ;
17448 void *tmp ;
17449 void *tmp___0 ;
17450 void *tmp___1 ;
17451 unsigned long __cil_tmp7 ;
17452 scb_t *__cil_tmp8 ;
17453 u8 __cil_tmp9 ;
17454 int __cil_tmp10 ;
17455 unsigned long __cil_tmp11 ;
17456 scb_t *__cil_tmp12 ;
17457 struct pci_dev *__cil_tmp13 ;
17458 u8 __cil_tmp14 ;
17459 unsigned long __cil_tmp15 ;
17460 unsigned long __cil_tmp16 ;
17461 dma_addr_t *__cil_tmp17 ;
17462 mega_sgl64 *__cil_tmp18 ;
17463 mega_sglist *__cil_tmp19 ;
17464 unsigned long __cil_tmp20 ;
17465 mega_sglist *__cil_tmp21 ;
17466 unsigned long __cil_tmp22 ;
17467 struct pci_dev *__cil_tmp23 ;
17468 dma_addr_t *__cil_tmp24 ;
17469 mega_passthru *__cil_tmp25 ;
17470 unsigned long __cil_tmp26 ;
17471 mega_passthru *__cil_tmp27 ;
17472 unsigned long __cil_tmp28 ;
17473 struct pci_dev *__cil_tmp29 ;
17474 dma_addr_t *__cil_tmp30 ;
17475 mega_ext_passthru *__cil_tmp31 ;
17476 unsigned long __cil_tmp32 ;
17477 mega_ext_passthru *__cil_tmp33 ;
17478 unsigned long __cil_tmp34 ;
17479 struct list_head *__cil_tmp35 ;
17480 struct list_head *__cil_tmp36 ;
17481 u8 __cil_tmp37 ;
17482 int __cil_tmp38 ;
17483
17484 {
17485#line 3220
17486 i = 0;
17487#line 3220
17488 goto ldv_32519;
17489 ldv_32518:
17490#line 3222
17491 __cil_tmp7 = (unsigned long )i;
17492#line 3222
17493 __cil_tmp8 = adapter->scb_list;
17494#line 3222
17495 scb = __cil_tmp8 + __cil_tmp7;
17496#line 3224
17497 scb->sgl64 = (mega_sgl64 *)0;
17498#line 3225
17499 scb->sgl = (mega_sglist *)0;
17500#line 3226
17501 scb->pthru = (mega_passthru *)0;
17502#line 3227
17503 scb->epthru = (mega_ext_passthru *)0;
17504#line 3220
17505 i = i + 1;
17506 ldv_32519: ;
17507 {
17508#line 3220
17509 __cil_tmp9 = adapter->max_cmds;
17510#line 3220
17511 __cil_tmp10 = (int )__cil_tmp9;
17512#line 3220
17513 if (__cil_tmp10 > i) {
17514#line 3221
17515 goto ldv_32518;
17516 } else {
17517#line 3223
17518 goto ldv_32520;
17519 }
17520 }
17521 ldv_32520:
17522#line 3230
17523 i = 0;
17524#line 3230
17525 goto ldv_32522;
17526 ldv_32521:
17527 {
17528#line 3232
17529 __cil_tmp11 = (unsigned long )i;
17530#line 3232
17531 __cil_tmp12 = adapter->scb_list;
17532#line 3232
17533 scb = __cil_tmp12 + __cil_tmp11;
17534#line 3234
17535 scb->idx = i;
17536#line 3236
17537 __cil_tmp13 = adapter->dev;
17538#line 3236
17539 __cil_tmp14 = adapter->sglen;
17540#line 3236
17541 __cil_tmp15 = (unsigned long )__cil_tmp14;
17542#line 3236
17543 __cil_tmp16 = __cil_tmp15 * 12UL;
17544#line 3236
17545 __cil_tmp17 = & scb->sgl_dma_addr;
17546#line 3236
17547 tmp = pci_alloc_consistent(__cil_tmp13, __cil_tmp16, __cil_tmp17);
17548#line 3236
17549 scb->sgl64 = (mega_sgl64 *)tmp;
17550#line 3240
17551 __cil_tmp18 = scb->sgl64;
17552#line 3240
17553 scb->sgl = (mega_sglist *)__cil_tmp18;
17554 }
17555 {
17556#line 3242
17557 __cil_tmp19 = (mega_sglist *)0;
17558#line 3242
17559 __cil_tmp20 = (unsigned long )__cil_tmp19;
17560#line 3242
17561 __cil_tmp21 = scb->sgl;
17562#line 3242
17563 __cil_tmp22 = (unsigned long )__cil_tmp21;
17564#line 3242
17565 if (__cil_tmp22 == __cil_tmp20) {
17566 {
17567#line 3243
17568 printk("<4>RAID: Can\'t allocate sglist.\n");
17569#line 3244
17570 mega_free_sgl(adapter);
17571 }
17572#line 3245
17573 return (-1);
17574 } else {
17575
17576 }
17577 }
17578 {
17579#line 3248
17580 __cil_tmp23 = adapter->dev;
17581#line 3248
17582 __cil_tmp24 = & scb->pthru_dma_addr;
17583#line 3248
17584 tmp___0 = pci_alloc_consistent(__cil_tmp23, 60UL, __cil_tmp24);
17585#line 3248
17586 scb->pthru = (mega_passthru *)tmp___0;
17587 }
17588 {
17589#line 3252
17590 __cil_tmp25 = (mega_passthru *)0;
17591#line 3252
17592 __cil_tmp26 = (unsigned long )__cil_tmp25;
17593#line 3252
17594 __cil_tmp27 = scb->pthru;
17595#line 3252
17596 __cil_tmp28 = (unsigned long )__cil_tmp27;
17597#line 3252
17598 if (__cil_tmp28 == __cil_tmp26) {
17599 {
17600#line 3253
17601 printk("<4>RAID: Can\'t allocate passthru.\n");
17602#line 3254
17603 mega_free_sgl(adapter);
17604 }
17605#line 3255
17606 return (-1);
17607 } else {
17608
17609 }
17610 }
17611 {
17612#line 3258
17613 __cil_tmp29 = adapter->dev;
17614#line 3258
17615 __cil_tmp30 = & scb->epthru_dma_addr;
17616#line 3258
17617 tmp___1 = pci_alloc_consistent(__cil_tmp29, 68UL, __cil_tmp30);
17618#line 3258
17619 scb->epthru = (mega_ext_passthru *)tmp___1;
17620 }
17621 {
17622#line 3262
17623 __cil_tmp31 = (mega_ext_passthru *)0;
17624#line 3262
17625 __cil_tmp32 = (unsigned long )__cil_tmp31;
17626#line 3262
17627 __cil_tmp33 = scb->epthru;
17628#line 3262
17629 __cil_tmp34 = (unsigned long )__cil_tmp33;
17630#line 3262
17631 if (__cil_tmp34 == __cil_tmp32) {
17632 {
17633#line 3263
17634 printk("<4>Can\'t allocate extended passthru.\n");
17635#line 3265
17636 mega_free_sgl(adapter);
17637 }
17638#line 3266
17639 return (-1);
17640 } else {
17641
17642 }
17643 }
17644 {
17645#line 3270
17646 scb->dma_type = 65535U;
17647#line 3277
17648 scb->state = 0U;
17649#line 3278
17650 scb->cmd = (Scsi_Cmnd *)0;
17651#line 3279
17652 __cil_tmp35 = & scb->list;
17653#line 3279
17654 __cil_tmp36 = & adapter->free_list;
17655#line 3279
17656 list_add(__cil_tmp35, __cil_tmp36);
17657#line 3230
17658 i = i + 1;
17659 }
17660 ldv_32522: ;
17661 {
17662#line 3230
17663 __cil_tmp37 = adapter->max_cmds;
17664#line 3230
17665 __cil_tmp38 = (int )__cil_tmp37;
17666#line 3230
17667 if (__cil_tmp38 > i) {
17668#line 3231
17669 goto ldv_32521;
17670 } else {
17671#line 3233
17672 goto ldv_32523;
17673 }
17674 }
17675 ldv_32523: ;
17676#line 3282
17677 return (0);
17678}
17679}
17680#line 3295 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
17681static int megadev_open(struct inode *inode , struct file *filep )
17682{ bool tmp ;
17683 int tmp___0 ;
17684
17685 {
17686 {
17687#line 3300
17688 tmp = capable(21);
17689 }
17690#line 3300
17691 if (tmp) {
17692#line 3300
17693 tmp___0 = 0;
17694 } else {
17695#line 3300
17696 tmp___0 = 1;
17697 }
17698#line 3300
17699 if (tmp___0) {
17700#line 3300
17701 return (-13);
17702 } else {
17703
17704 }
17705#line 3302
17706 return (0);
17707}
17708}
17709#line 3319 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
17710static int megadev_ioctl(struct file *filep , unsigned int cmd , unsigned long arg )
17711{ adapter_t *adapter ;
17712 nitioctl_t uioc ;
17713 int adapno ;
17714 int rval ;
17715 mega_passthru *upthru ;
17716 mega_passthru *pthru ;
17717 dma_addr_t pthru_dma_hndl ;
17718 void *data ;
17719 dma_addr_t data_dma_hndl ;
17720 megacmd_t mc ;
17721 megastat_t *ustats ;
17722 int num_ldrv ;
17723 u32 uxferaddr ;
17724 struct pci_dev *pdev ;
17725 int __ret_pu ;
17726 u32 __pu_val ;
17727 int __ret_pu___0 ;
17728 u32 __pu_val___0 ;
17729 int tmp ;
17730 int tmp___0 ;
17731 void *tmp___1 ;
17732 unsigned long tmp___2 ;
17733 unsigned long tmp___3 ;
17734 int tmp___4 ;
17735 int tmp___5 ;
17736 unsigned long tmp___6 ;
17737 size_t __len ;
17738 void *__ret ;
17739 int tmp___7 ;
17740 unsigned int __cil_tmp33 ;
17741 unsigned int __cil_tmp34 ;
17742 void *__cil_tmp35 ;
17743 void *__cil_tmp36 ;
17744 int __cil_tmp37 ;
17745 int __cil_tmp38 ;
17746 int __cil_tmp39 ;
17747 int __cil_tmp40 ;
17748 unsigned int __cil_tmp41 ;
17749 unsigned long __cil_tmp42 ;
17750 void const *__cil_tmp43 ;
17751 void const *__cil_tmp44 ;
17752 unsigned int __cil_tmp45 ;
17753 unsigned int __cil_tmp46 ;
17754 unsigned int __cil_tmp47 ;
17755 int __cil_tmp48 ;
17756 int __cil_tmp49 ;
17757 void *__cil_tmp50 ;
17758 void *__cil_tmp51 ;
17759 unsigned int __cil_tmp52 ;
17760 unsigned int __cil_tmp53 ;
17761 unsigned int __cil_tmp54 ;
17762 mega_passthru *__cil_tmp55 ;
17763 unsigned long __cil_tmp56 ;
17764 unsigned long __cil_tmp57 ;
17765 u8 (*__cil_tmp58)[18U] ;
17766 megacmd_t *__cil_tmp59 ;
17767 u32 __cil_tmp60 ;
17768 unsigned long __cil_tmp61 ;
17769 void *__cil_tmp62 ;
17770 void const *__cil_tmp63 ;
17771 void *__cil_tmp64 ;
17772 u32 __cil_tmp65 ;
17773 u32 __cil_tmp66 ;
17774 size_t __cil_tmp67 ;
17775 void *__cil_tmp68 ;
17776 unsigned long __cil_tmp69 ;
17777 unsigned long __cil_tmp70 ;
17778 void *__cil_tmp71 ;
17779 u32 __cil_tmp72 ;
17780 unsigned int __cil_tmp73 ;
17781 unsigned long __cil_tmp74 ;
17782 void const *__cil_tmp75 ;
17783 u32 __cil_tmp76 ;
17784 unsigned long __cil_tmp77 ;
17785 void *__cil_tmp78 ;
17786 void *__cil_tmp79 ;
17787 u32 __cil_tmp80 ;
17788 int __cil_tmp81 ;
17789 unsigned long __cil_tmp82 ;
17790 void *__cil_tmp83 ;
17791 void const *__cil_tmp84 ;
17792 u32 __cil_tmp85 ;
17793 u8 (*__cil_tmp86)[32U] ;
17794 void *__cil_tmp87 ;
17795 u8 (*__cil_tmp88)[32U] ;
17796 void const *__cil_tmp89 ;
17797 u32 __cil_tmp90 ;
17798 u32 __cil_tmp91 ;
17799 size_t __cil_tmp92 ;
17800 void *__cil_tmp93 ;
17801 size_t __cil_tmp94 ;
17802 void *__cil_tmp95 ;
17803 unsigned long __cil_tmp96 ;
17804 unsigned long __cil_tmp97 ;
17805 u8 (*__cil_tmp98)[18U] ;
17806 megacmd_t *__cil_tmp99 ;
17807 unsigned int __cil_tmp100 ;
17808 unsigned long __cil_tmp101 ;
17809 void const *__cil_tmp102 ;
17810 unsigned long __cil_tmp103 ;
17811 size_t __cil_tmp104 ;
17812 void *__cil_tmp105 ;
17813 u8 (*__cil_tmp106)[18U] ;
17814 void const *__cil_tmp107 ;
17815 void *__cil_tmp108 ;
17816 u8 (*__cil_tmp109)[18U] ;
17817 void const *__cil_tmp110 ;
17818 mega_passthru *__cil_tmp111 ;
17819 void *__cil_tmp112 ;
17820 size_t __cil_tmp113 ;
17821 int __cil_tmp114 ;
17822 unsigned long __cil_tmp115 ;
17823 void *__cil_tmp116 ;
17824 void const *__cil_tmp117 ;
17825 size_t __cil_tmp118 ;
17826
17827 {
17828#line 3328
17829 data = (void *)0;
17830#line 3333
17831 uxferaddr = 0U;
17832#line 3336
17833 ustats = (megastat_t *)0;
17834#line 3337
17835 num_ldrv = 0;
17836 {
17837#line 3343
17838 __cil_tmp33 = cmd >> 8;
17839#line 3343
17840 __cil_tmp34 = __cil_tmp33 & 255U;
17841#line 3343
17842 if (__cil_tmp34 != 109U) {
17843#line 3343
17844 if (cmd != 224U) {
17845#line 3344
17846 return (-22);
17847 } else {
17848
17849 }
17850 } else {
17851
17852 }
17853 }
17854 {
17855#line 3355
17856 __cil_tmp35 = (void *)(& uioc);
17857#line 3355
17858 memset(__cil_tmp35, 0, 48UL);
17859#line 3356
17860 __cil_tmp36 = (void *)arg;
17861#line 3356
17862 rval = mega_m_to_n(__cil_tmp36, & uioc);
17863 }
17864#line 3356
17865 if (rval != 0) {
17866#line 3357
17867 return (rval);
17868 } else {
17869
17870 }
17871 {
17872#line 3362
17873 __cil_tmp37 = (int )uioc.opcode;
17874#line 3362
17875 if (__cil_tmp37 == 65536) {
17876#line 3362
17877 goto case_65536;
17878 } else {
17879 {
17880#line 3368
17881 __cil_tmp38 = (int )uioc.opcode;
17882#line 3368
17883 if (__cil_tmp38 == 131072) {
17884#line 3368
17885 goto case_131072;
17886 } else {
17887 {
17888#line 3379
17889 __cil_tmp39 = (int )uioc.opcode;
17890#line 3379
17891 if (__cil_tmp39 == 196608) {
17892#line 3379
17893 goto case_196608;
17894 } else {
17895 {
17896#line 3440
17897 __cil_tmp40 = (int )uioc.opcode;
17898#line 3440
17899 if (__cil_tmp40 == 0) {
17900#line 3440
17901 goto case_0;
17902 } else {
17903#line 3703
17904 goto switch_default___1;
17905#line 3360
17906 if (0) {
17907 case_65536:
17908 {
17909#line 3363
17910 might_fault();
17911#line 3363
17912 __pu_val = driver_ver;
17913 }
17914#line 3363
17915 if (1) {
17916#line 3363
17917 goto case_4;
17918 } else {
17919#line 3363
17920 goto switch_default;
17921#line 3363
17922 if (0) {
17923#line 3363
17924 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val),
17925 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17926#line 3363
17927 goto ldv_32551;
17928#line 3363
17929 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val),
17930 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17931#line 3363
17932 goto ldv_32551;
17933 case_4:
17934#line 3363
17935 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val),
17936 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17937#line 3363
17938 goto ldv_32551;
17939#line 3363
17940 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val),
17941 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17942#line 3363
17943 goto ldv_32551;
17944 switch_default:
17945#line 3363
17946 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val),
17947 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17948#line 3363
17949 goto ldv_32551;
17950 } else {
17951
17952 }
17953 }
17954 ldv_32551: ;
17955#line 3363
17956 if (__ret_pu != 0) {
17957#line 3364
17958 return (-14);
17959 } else {
17960
17961 }
17962#line 3366
17963 goto ldv_32557;
17964 case_131072:
17965 {
17966#line 3369
17967 might_fault();
17968#line 3369
17969 __pu_val___0 = (u32 )hba_count;
17970 }
17971#line 3369
17972 if (1) {
17973#line 3369
17974 goto case_4___0;
17975 } else {
17976#line 3369
17977 goto switch_default___0;
17978#line 3369
17979 if (0) {
17980#line 3369
17981 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu___0): "0" (__pu_val___0),
17982 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17983#line 3369
17984 goto ldv_32562;
17985#line 3369
17986 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu___0): "0" (__pu_val___0),
17987 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17988#line 3369
17989 goto ldv_32562;
17990 case_4___0:
17991#line 3369
17992 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu___0): "0" (__pu_val___0),
17993 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17994#line 3369
17995 goto ldv_32562;
17996#line 3369
17997 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu___0): "0" (__pu_val___0),
17998 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
17999#line 3369
18000 goto ldv_32562;
18001 switch_default___0:
18002#line 3369
18003 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu___0): "0" (__pu_val___0),
18004 "c" ((u32 *)uioc.__ua.__uaddr): "ebx");
18005#line 3369
18006 goto ldv_32562;
18007 } else {
18008
18009 }
18010 }
18011 ldv_32562: ;
18012#line 3369
18013 if (__ret_pu___0 != 0) {
18014#line 3370
18015 return (-14);
18016 } else {
18017
18018 }
18019#line 3377
18020 return (hba_count);
18021 case_196608:
18022#line 3384
18023 __cil_tmp41 = uioc.adapno ^ 27904U;
18024#line 3384
18025 adapno = (int )__cil_tmp41;
18026#line 3384
18027 if (adapno >= hba_count) {
18028#line 3385
18029 return (-19);
18030 } else {
18031
18032 }
18033 {
18034#line 3387
18035 __cil_tmp42 = (unsigned long )adapno;
18036#line 3387
18037 __cil_tmp43 = (void const *)(& mcontroller);
18038#line 3387
18039 __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
18040#line 3387
18041 tmp = copy_to_user(uioc.__ua.__uaddr, __cil_tmp44, 32U);
18042 }
18043#line 3387
18044 if (tmp != 0) {
18045#line 3389
18046 return (-14);
18047 } else {
18048
18049 }
18050#line 3390
18051 goto ldv_32557;
18052 case_0:
18053#line 3445
18054 __cil_tmp45 = uioc.adapno ^ 27904U;
18055#line 3445
18056 adapno = (int )__cil_tmp45;
18057#line 3445
18058 if (adapno >= hba_count) {
18059#line 3446
18060 return (-19);
18061 } else {
18062
18063 }
18064#line 3448
18065 adapter = hba_soft_state[adapno];
18066 {
18067#line 3454
18068 __cil_tmp46 = (unsigned int )uioc.__ua.__raw_mbox[0];
18069#line 3454
18070 if (__cil_tmp46 == 164U) {
18071 {
18072#line 3454
18073 __cil_tmp47 = (unsigned int )uioc.__ua.__raw_mbox[2];
18074#line 3454
18075 if (__cil_tmp47 == 28U) {
18076 {
18077#line 3460
18078 __cil_tmp48 = adapter->support_random_del;
18079#line 3460
18080 if (__cil_tmp48 == 0) {
18081 {
18082#line 3461
18083 printk("<4>megaraid: logdrv ");
18084#line 3462
18085 printk("delete on non-supporting F/W.\n");
18086 }
18087#line 3464
18088 return (-22);
18089 } else {
18090
18091 }
18092 }
18093 {
18094#line 3467
18095 __cil_tmp49 = (int )uioc.__ua.__raw_mbox[3];
18096#line 3467
18097 rval = mega_del_logdrv(adapter, __cil_tmp49);
18098 }
18099#line 3469
18100 if (rval == 0) {
18101 {
18102#line 3470
18103 __cil_tmp50 = (void *)(& mc);
18104#line 3470
18105 memset(__cil_tmp50, 0, 18UL);
18106#line 3472
18107 mc.status = (u8 )rval;
18108#line 3474
18109 __cil_tmp51 = (void *)arg;
18110#line 3474
18111 rval = mega_n_to_m(__cil_tmp51, & mc);
18112 }
18113 } else {
18114
18115 }
18116#line 3477
18117 return (rval);
18118 } else {
18119
18120 }
18121 }
18122 } else {
18123
18124 }
18125 }
18126 {
18127#line 3483
18128 __cil_tmp52 = (unsigned int )uioc.__ua.__raw_mbox[0];
18129#line 3483
18130 if (__cil_tmp52 == 195U) {
18131 {
18132#line 3486
18133 printk("<4>megaraid: rejected passthru.\n");
18134 }
18135#line 3488
18136 return (-22);
18137 } else {
18138 {
18139#line 3483
18140 __cil_tmp53 = (unsigned int )uioc.__ua.__raw_mbox[0];
18141#line 3483
18142 if (__cil_tmp53 == 227U) {
18143 {
18144#line 3486
18145 printk("<4>megaraid: rejected passthru.\n");
18146 }
18147#line 3488
18148 return (-22);
18149 } else {
18150
18151 }
18152 }
18153 }
18154 }
18155 {
18156#line 3495
18157 tmp___0 = make_local_pdev(adapter, & pdev);
18158 }
18159#line 3495
18160 if (tmp___0 != 0) {
18161#line 3496
18162 return (-5);
18163 } else {
18164
18165 }
18166 {
18167#line 3499
18168 __cil_tmp54 = (unsigned int )uioc.__ua.__raw_mbox[0];
18169#line 3499
18170 if (__cil_tmp54 == 3U) {
18171 {
18172#line 3502
18173 tmp___1 = pci_alloc_consistent(pdev, 60UL, & pthru_dma_hndl);
18174#line 3502
18175 pthru = (mega_passthru *)tmp___1;
18176 }
18177 {
18178#line 3506
18179 __cil_tmp55 = (mega_passthru *)0;
18180#line 3506
18181 __cil_tmp56 = (unsigned long )__cil_tmp55;
18182#line 3506
18183 __cil_tmp57 = (unsigned long )pthru;
18184#line 3506
18185 if (__cil_tmp57 == __cil_tmp56) {
18186 {
18187#line 3507
18188 free_local_pdev(pdev);
18189 }
18190#line 3508
18191 return (-12);
18192 } else {
18193
18194 }
18195 }
18196 {
18197#line 3514
18198 __cil_tmp58 = & uioc.__ua.__raw_mbox;
18199#line 3514
18200 __cil_tmp59 = (megacmd_t *)__cil_tmp58;
18201#line 3514
18202 __cil_tmp60 = __cil_tmp59->xferaddr;
18203#line 3514
18204 __cil_tmp61 = (unsigned long )__cil_tmp60;
18205#line 3514
18206 upthru = (mega_passthru *)__cil_tmp61;
18207#line 3519
18208 __cil_tmp62 = (void *)pthru;
18209#line 3519
18210 __cil_tmp63 = (void const *)upthru;
18211#line 3519
18212 tmp___2 = copy_from_user(__cil_tmp62, __cil_tmp63, 60UL);
18213 }
18214#line 3519
18215 if (tmp___2 != 0UL) {
18216 {
18217#line 3522
18218 __cil_tmp64 = (void *)pthru;
18219#line 3522
18220 pci_free_consistent(pdev, 60UL, __cil_tmp64, pthru_dma_hndl);
18221#line 3526
18222 free_local_pdev(pdev);
18223 }
18224#line 3528
18225 return (-14);
18226 } else {
18227
18228 }
18229 {
18230#line 3534
18231 __cil_tmp65 = pthru->dataxferlen;
18232#line 3534
18233 if (__cil_tmp65 != 0U) {
18234 {
18235#line 3535
18236 __cil_tmp66 = pthru->dataxferlen;
18237#line 3535
18238 __cil_tmp67 = (size_t )__cil_tmp66;
18239#line 3535
18240 data = pci_alloc_consistent(pdev, __cil_tmp67, & data_dma_hndl);
18241 }
18242 {
18243#line 3539
18244 __cil_tmp68 = (void *)0;
18245#line 3539
18246 __cil_tmp69 = (unsigned long )__cil_tmp68;
18247#line 3539
18248 __cil_tmp70 = (unsigned long )data;
18249#line 3539
18250 if (__cil_tmp70 == __cil_tmp69) {
18251 {
18252#line 3540
18253 __cil_tmp71 = (void *)pthru;
18254#line 3540
18255 pci_free_consistent(pdev, 60UL, __cil_tmp71, pthru_dma_hndl);
18256#line 3545
18257 free_local_pdev(pdev);
18258 }
18259#line 3547
18260 return (-12);
18261 } else {
18262
18263 }
18264 }
18265#line 3554
18266 uxferaddr = pthru->dataxferaddr;
18267#line 3555
18268 pthru->dataxferaddr = (u32 )data_dma_hndl;
18269 } else {
18270
18271 }
18272 }
18273 {
18274#line 3562
18275 __cil_tmp72 = pthru->dataxferlen;
18276#line 3562
18277 if (__cil_tmp72 != 0U) {
18278 {
18279#line 3562
18280 __cil_tmp73 = uioc.flags & 2U;
18281#line 3562
18282 if (__cil_tmp73 != 0U) {
18283 {
18284#line 3566
18285 __cil_tmp74 = (unsigned long )uxferaddr;
18286#line 3566
18287 __cil_tmp75 = (void const *)__cil_tmp74;
18288#line 3566
18289 __cil_tmp76 = pthru->dataxferlen;
18290#line 3566
18291 __cil_tmp77 = (unsigned long )__cil_tmp76;
18292#line 3566
18293 tmp___3 = copy_from_user(data, __cil_tmp75, __cil_tmp77);
18294 }
18295#line 3566
18296 if (tmp___3 != 0UL) {
18297#line 3568
18298 rval = -14;
18299#line 3569
18300 goto freemem_and_return;
18301 } else {
18302
18303 }
18304 } else {
18305
18306 }
18307 }
18308 } else {
18309
18310 }
18311 }
18312 {
18313#line 3573
18314 __cil_tmp78 = (void *)(& mc);
18315#line 3573
18316 memset(__cil_tmp78, 0, 18UL);
18317#line 3575
18318 mc.cmd = (u8 )3U;
18319#line 3576
18320 mc.xferaddr = (unsigned int )pthru_dma_hndl;
18321#line 3581
18322 mega_internal_command(adapter, & mc, pthru);
18323#line 3583
18324 __cil_tmp79 = (void *)arg;
18325#line 3583
18326 rval = mega_n_to_m(__cil_tmp79, & mc);
18327 }
18328#line 3585
18329 if (rval != 0) {
18330#line 3585
18331 goto freemem_and_return;
18332 } else {
18333
18334 }
18335 {
18336#line 3591
18337 __cil_tmp80 = pthru->dataxferlen;
18338#line 3591
18339 if (__cil_tmp80 != 0U) {
18340 {
18341#line 3591
18342 __cil_tmp81 = (int )uioc.flags;
18343#line 3591
18344 if (__cil_tmp81 & 1) {
18345 {
18346#line 3592
18347 __cil_tmp82 = (unsigned long )uxferaddr;
18348#line 3592
18349 __cil_tmp83 = (void *)__cil_tmp82;
18350#line 3592
18351 __cil_tmp84 = (void const *)data;
18352#line 3592
18353 __cil_tmp85 = pthru->dataxferlen;
18354#line 3592
18355 tmp___4 = copy_to_user(__cil_tmp83, __cil_tmp84, __cil_tmp85);
18356 }
18357#line 3592
18358 if (tmp___4 != 0) {
18359#line 3594
18360 rval = -14;
18361 } else {
18362
18363 }
18364 } else {
18365
18366 }
18367 }
18368 } else {
18369
18370 }
18371 }
18372 {
18373#line 3602
18374 __cil_tmp86 = & upthru->reqsensearea;
18375#line 3602
18376 __cil_tmp87 = (void *)__cil_tmp86;
18377#line 3602
18378 __cil_tmp88 = & pthru->reqsensearea;
18379#line 3602
18380 __cil_tmp89 = (void const *)__cil_tmp88;
18381#line 3602
18382 tmp___5 = copy_to_user(__cil_tmp87, __cil_tmp89, 14U);
18383 }
18384#line 3602
18385 if (tmp___5 != 0) {
18386#line 3604
18387 rval = -14;
18388 } else {
18389
18390 }
18391 freemem_and_return: ;
18392 {
18393#line 3607
18394 __cil_tmp90 = pthru->dataxferlen;
18395#line 3607
18396 if (__cil_tmp90 != 0U) {
18397 {
18398#line 3608
18399 __cil_tmp91 = pthru->dataxferlen;
18400#line 3608
18401 __cil_tmp92 = (size_t )__cil_tmp91;
18402#line 3608
18403 pci_free_consistent(pdev, __cil_tmp92, data, data_dma_hndl);
18404 }
18405 } else {
18406
18407 }
18408 }
18409 {
18410#line 3613
18411 __cil_tmp93 = (void *)pthru;
18412#line 3613
18413 pci_free_consistent(pdev, 60UL, __cil_tmp93, pthru_dma_hndl);
18414#line 3616
18415 free_local_pdev(pdev);
18416 }
18417#line 3618
18418 return (rval);
18419 } else {
18420#line 3626
18421 if (uioc.xferlen != 0U) {
18422 {
18423#line 3627
18424 __cil_tmp94 = (size_t )uioc.xferlen;
18425#line 3627
18426 data = pci_alloc_consistent(pdev, __cil_tmp94, & data_dma_hndl);
18427 }
18428 {
18429#line 3630
18430 __cil_tmp95 = (void *)0;
18431#line 3630
18432 __cil_tmp96 = (unsigned long )__cil_tmp95;
18433#line 3630
18434 __cil_tmp97 = (unsigned long )data;
18435#line 3630
18436 if (__cil_tmp97 == __cil_tmp96) {
18437 {
18438#line 3631
18439 free_local_pdev(pdev);
18440 }
18441#line 3632
18442 return (-12);
18443 } else {
18444
18445 }
18446 }
18447#line 3635
18448 __cil_tmp98 = & uioc.__ua.__raw_mbox;
18449#line 3635
18450 __cil_tmp99 = (megacmd_t *)__cil_tmp98;
18451#line 3635
18452 uxferaddr = __cil_tmp99->xferaddr;
18453 } else {
18454
18455 }
18456#line 3641
18457 if (uioc.xferlen != 0U) {
18458 {
18459#line 3641
18460 __cil_tmp100 = uioc.flags & 2U;
18461#line 3641
18462 if (__cil_tmp100 != 0U) {
18463 {
18464#line 3645
18465 __cil_tmp101 = (unsigned long )uxferaddr;
18466#line 3645
18467 __cil_tmp102 = (void const *)__cil_tmp101;
18468#line 3645
18469 __cil_tmp103 = (unsigned long )uioc.xferlen;
18470#line 3645
18471 tmp___6 = copy_from_user(data, __cil_tmp102, __cil_tmp103);
18472 }
18473#line 3645
18474 if (tmp___6 != 0UL) {
18475 {
18476#line 3648
18477 __cil_tmp104 = (size_t )uioc.xferlen;
18478#line 3648
18479 pci_free_consistent(pdev, __cil_tmp104, data, data_dma_hndl);
18480#line 3652
18481 free_local_pdev(pdev);
18482 }
18483#line 3654
18484 return (-14);
18485 } else {
18486
18487 }
18488 } else {
18489
18490 }
18491 }
18492 } else {
18493
18494 }
18495#line 3658
18496 __len = 18UL;
18497#line 3658
18498 if (__len > 63UL) {
18499 {
18500#line 3658
18501 __cil_tmp105 = (void *)(& mc);
18502#line 3658
18503 __cil_tmp106 = & uioc.__ua.__raw_mbox;
18504#line 3658
18505 __cil_tmp107 = (void const *)__cil_tmp106;
18506#line 3658
18507 __ret = __memcpy(__cil_tmp105, __cil_tmp107, __len);
18508 }
18509 } else {
18510 {
18511#line 3658
18512 __cil_tmp108 = (void *)(& mc);
18513#line 3658
18514 __cil_tmp109 = & uioc.__ua.__raw_mbox;
18515#line 3658
18516 __cil_tmp110 = (void const *)__cil_tmp109;
18517#line 3658
18518 __ret = __builtin_memcpy(__cil_tmp108, __cil_tmp110, __len);
18519 }
18520 }
18521 {
18522#line 3660
18523 mc.xferaddr = (unsigned int )data_dma_hndl;
18524#line 3665
18525 __cil_tmp111 = (mega_passthru *)0;
18526#line 3665
18527 mega_internal_command(adapter, & mc, __cil_tmp111);
18528#line 3667
18529 __cil_tmp112 = (void *)arg;
18530#line 3667
18531 rval = mega_n_to_m(__cil_tmp112, & mc);
18532 }
18533#line 3669
18534 if (rval != 0) {
18535#line 3670
18536 if (uioc.xferlen != 0U) {
18537 {
18538#line 3671
18539 __cil_tmp113 = (size_t )uioc.xferlen;
18540#line 3671
18541 pci_free_consistent(pdev, __cil_tmp113, data, data_dma_hndl);
18542 }
18543 } else {
18544
18545 }
18546 {
18547#line 3676
18548 free_local_pdev(pdev);
18549 }
18550#line 3678
18551 return (rval);
18552 } else {
18553
18554 }
18555#line 3684
18556 if (uioc.xferlen != 0U) {
18557 {
18558#line 3684
18559 __cil_tmp114 = (int )uioc.flags;
18560#line 3684
18561 if (__cil_tmp114 & 1) {
18562 {
18563#line 3685
18564 __cil_tmp115 = (unsigned long )uxferaddr;
18565#line 3685
18566 __cil_tmp116 = (void *)__cil_tmp115;
18567#line 3685
18568 __cil_tmp117 = (void const *)data;
18569#line 3685
18570 tmp___7 = copy_to_user(__cil_tmp116, __cil_tmp117, uioc.xferlen);
18571 }
18572#line 3685
18573 if (tmp___7 != 0) {
18574#line 3688
18575 rval = -14;
18576 } else {
18577
18578 }
18579 } else {
18580
18581 }
18582 }
18583 } else {
18584
18585 }
18586#line 3692
18587 if (uioc.xferlen != 0U) {
18588 {
18589#line 3693
18590 __cil_tmp118 = (size_t )uioc.xferlen;
18591#line 3693
18592 pci_free_consistent(pdev, __cil_tmp118, data, data_dma_hndl);
18593 }
18594 } else {
18595
18596 }
18597 {
18598#line 3698
18599 free_local_pdev(pdev);
18600 }
18601#line 3700
18602 return (rval);
18603 }
18604 }
18605 switch_default___1: ;
18606#line 3704
18607 return (-22);
18608 } else {
18609
18610 }
18611 }
18612 }
18613 }
18614 }
18615 }
18616 }
18617 }
18618 }
18619 ldv_32557: ;
18620#line 3707
18621 return (0);
18622}
18623}
18624#line 3711 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
18625static long megadev_unlocked_ioctl(struct file *filep , unsigned int cmd , unsigned long arg )
18626{ int ret ;
18627
18628 {
18629 {
18630#line 3715
18631 mutex_lock_nested(& megadev_mutex, 0U);
18632#line 3716
18633 ret = megadev_ioctl(filep, cmd, arg);
18634#line 3717
18635 mutex_unlock(& megadev_mutex);
18636 }
18637#line 3719
18638 return ((long )ret);
18639}
18640}
18641#line 3733 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
18642static int mega_m_to_n(void *arg , nitioctl_t *uioc )
18643{ struct uioctl_t uioc_mimd ;
18644 char signature[8U] ;
18645 u8 opcode ;
18646 u8 subopcode ;
18647 unsigned long tmp ;
18648 int tmp___0 ;
18649 unsigned long tmp___1 ;
18650 size_t __len ;
18651 void *__ret ;
18652 size_t __len___0 ;
18653 void *__ret___0 ;
18654 void *__cil_tmp14 ;
18655 void const *__cil_tmp15 ;
18656 void const *__cil_tmp16 ;
18657 void const *__cil_tmp17 ;
18658 void *__cil_tmp18 ;
18659 void const *__cil_tmp19 ;
18660 int __cil_tmp20 ;
18661 int __cil_tmp21 ;
18662 int __cil_tmp22 ;
18663 int __cil_tmp23 ;
18664 int __cil_tmp24 ;
18665 int __cil_tmp25 ;
18666 u8 (*__cil_tmp26)[18U] ;
18667 void *__cil_tmp27 ;
18668 u8 (*__cil_tmp28)[18U] ;
18669 void const *__cil_tmp29 ;
18670 u8 (*__cil_tmp30)[18U] ;
18671 void *__cil_tmp31 ;
18672 u8 (*__cil_tmp32)[18U] ;
18673 void const *__cil_tmp33 ;
18674 u32 __cil_tmp34 ;
18675 u8 (*__cil_tmp35)[18U] ;
18676 void *__cil_tmp36 ;
18677 u8 (*__cil_tmp37)[18U] ;
18678 void const *__cil_tmp38 ;
18679 u8 (*__cil_tmp39)[18U] ;
18680 void *__cil_tmp40 ;
18681 u8 (*__cil_tmp41)[18U] ;
18682 void const *__cil_tmp42 ;
18683 u32 __cil_tmp43 ;
18684
18685 {
18686 {
18687#line 3736
18688 signature[0] = (char)0;
18689#line 3736
18690 signature[1] = (char)0;
18691#line 3736
18692 signature[2] = (char)0;
18693#line 3736
18694 signature[3] = (char)0;
18695#line 3736
18696 signature[4] = (char)0;
18697#line 3736
18698 signature[5] = (char)0;
18699#line 3736
18700 signature[6] = (char)0;
18701#line 3736
18702 signature[7] = (char)0;
18703#line 3748
18704 __cil_tmp14 = (void *)(& signature);
18705#line 3748
18706 __cil_tmp15 = (void const *)arg;
18707#line 3748
18708 tmp = copy_from_user(__cil_tmp14, __cil_tmp15, 7UL);
18709 }
18710#line 3748
18711 if (tmp != 0UL) {
18712#line 3749
18713 return (-14);
18714 } else {
18715
18716 }
18717 {
18718#line 3751
18719 __cil_tmp16 = (void const *)(& signature);
18720#line 3751
18721 __cil_tmp17 = (void const *)"MEGANIT";
18722#line 3751
18723 tmp___0 = memcmp(__cil_tmp16, __cil_tmp17, 7UL);
18724 }
18725#line 3751
18726 if (tmp___0 == 0) {
18727#line 3759
18728 return (-22);
18729 } else {
18730
18731 }
18732 {
18733#line 3772
18734 __cil_tmp18 = (void *)(& uioc_mimd);
18735#line 3772
18736 __cil_tmp19 = (void const *)arg;
18737#line 3772
18738 tmp___1 = copy_from_user(__cil_tmp18, __cil_tmp19, 110UL);
18739 }
18740#line 3772
18741 if (tmp___1 != 0UL) {
18742#line 3773
18743 return (-14);
18744 } else {
18745
18746 }
18747#line 3779
18748 opcode = uioc_mimd.ui.fcs.opcode;
18749#line 3780
18750 subopcode = uioc_mimd.ui.fcs.subopcode;
18751 {
18752#line 3783
18753 __cil_tmp20 = (int )opcode;
18754#line 3783
18755 if (__cil_tmp20 == 130) {
18756#line 3783
18757 goto case_130;
18758 } else {
18759 {
18760#line 3810
18761 __cil_tmp21 = (int )opcode;
18762#line 3810
18763 if (__cil_tmp21 == 129) {
18764#line 3810
18765 goto case_129;
18766 } else {
18767 {
18768#line 3824
18769 __cil_tmp22 = (int )opcode;
18770#line 3824
18771 if (__cil_tmp22 == 128) {
18772#line 3824
18773 goto case_128;
18774 } else {
18775#line 3842
18776 goto switch_default___0;
18777#line 3782
18778 if (0) {
18779 case_130: ;
18780 {
18781#line 3787
18782 __cil_tmp23 = (int )subopcode;
18783#line 3787
18784 if (__cil_tmp23 == 101) {
18785#line 3787
18786 goto case_101;
18787 } else {
18788 {
18789#line 3792
18790 __cil_tmp24 = (int )subopcode;
18791#line 3792
18792 if (__cil_tmp24 == 109) {
18793#line 3792
18794 goto case_109;
18795 } else {
18796 {
18797#line 3797
18798 __cil_tmp25 = (int )subopcode;
18799#line 3797
18800 if (__cil_tmp25 == 103) {
18801#line 3797
18802 goto case_103;
18803 } else {
18804#line 3803
18805 goto switch_default;
18806#line 3785
18807 if (0) {
18808 case_101:
18809#line 3788
18810 uioc->opcode = 65536U;
18811#line 3789
18812 uioc->__ua.__uaddr = (void *)uioc_mimd.data;
18813#line 3790
18814 goto ldv_32591;
18815 case_109:
18816#line 3793
18817 uioc->opcode = 131072U;
18818#line 3794
18819 uioc->__ua.__uaddr = (void *)uioc_mimd.data;
18820#line 3795
18821 goto ldv_32591;
18822 case_103:
18823#line 3798
18824 uioc->opcode = 196608U;
18825#line 3799
18826 uioc->adapno = (u32 )uioc_mimd.ui.fcs.adapno;
18827#line 3800
18828 uioc->__ua.__uaddr = (void *)uioc_mimd.data;
18829#line 3801
18830 goto ldv_32591;
18831 switch_default: ;
18832#line 3804
18833 return (-22);
18834 } else {
18835
18836 }
18837 }
18838 }
18839 }
18840 }
18841 }
18842 }
18843 ldv_32591: ;
18844#line 3807
18845 goto ldv_32595;
18846 case_129:
18847#line 3812
18848 uioc->opcode = 0U;
18849#line 3813
18850 uioc->adapno = (u32 )uioc_mimd.ui.fcs.adapno;
18851#line 3815
18852 __len = 18UL;
18853#line 3815
18854 if (__len > 63UL) {
18855 {
18856#line 3815
18857 __cil_tmp26 = & uioc->__ua.__raw_mbox;
18858#line 3815
18859 __cil_tmp27 = (void *)__cil_tmp26;
18860#line 3815
18861 __cil_tmp28 = & uioc_mimd.mbox;
18862#line 3815
18863 __cil_tmp29 = (void const *)__cil_tmp28;
18864#line 3815
18865 __ret = __memcpy(__cil_tmp27, __cil_tmp29, __len);
18866 }
18867 } else {
18868 {
18869#line 3815
18870 __cil_tmp30 = & uioc->__ua.__raw_mbox;
18871#line 3815
18872 __cil_tmp31 = (void *)__cil_tmp30;
18873#line 3815
18874 __cil_tmp32 = & uioc_mimd.mbox;
18875#line 3815
18876 __cil_tmp33 = (void const *)__cil_tmp32;
18877#line 3815
18878 __ret = __builtin_memcpy(__cil_tmp31, __cil_tmp33, __len);
18879 }
18880 }
18881#line 3817
18882 uioc->xferlen = uioc_mimd.ui.fcs.length;
18883#line 3819
18884 if (uioc_mimd.outlen != 0U) {
18885#line 3819
18886 uioc->flags = 1U;
18887 } else {
18888
18889 }
18890#line 3820
18891 if (uioc_mimd.inlen != 0U) {
18892#line 3820
18893 __cil_tmp34 = uioc->flags;
18894#line 3820
18895 uioc->flags = __cil_tmp34 | 2U;
18896 } else {
18897
18898 }
18899#line 3822
18900 goto ldv_32595;
18901 case_128:
18902#line 3826
18903 uioc->opcode = 0U;
18904#line 3827
18905 uioc->adapno = (u32 )uioc_mimd.ui.fcs.adapno;
18906#line 3829
18907 __len___0 = 18UL;
18908#line 3829
18909 if (__len___0 > 63UL) {
18910 {
18911#line 3829
18912 __cil_tmp35 = & uioc->__ua.__raw_mbox;
18913#line 3829
18914 __cil_tmp36 = (void *)__cil_tmp35;
18915#line 3829
18916 __cil_tmp37 = & uioc_mimd.mbox;
18917#line 3829
18918 __cil_tmp38 = (void const *)__cil_tmp37;
18919#line 3829
18920 __ret___0 = __memcpy(__cil_tmp36, __cil_tmp38, __len___0);
18921 }
18922 } else {
18923 {
18924#line 3829
18925 __cil_tmp39 = & uioc->__ua.__raw_mbox;
18926#line 3829
18927 __cil_tmp40 = (void *)__cil_tmp39;
18928#line 3829
18929 __cil_tmp41 = & uioc_mimd.mbox;
18930#line 3829
18931 __cil_tmp42 = (void const *)__cil_tmp41;
18932#line 3829
18933 __ret___0 = __builtin_memcpy(__cil_tmp40, __cil_tmp42, __len___0);
18934 }
18935 }
18936#line 3834
18937 if (uioc_mimd.outlen > uioc_mimd.inlen) {
18938#line 3834
18939 uioc->xferlen = uioc_mimd.outlen;
18940 } else {
18941#line 3834
18942 uioc->xferlen = uioc_mimd.inlen;
18943 }
18944#line 3837
18945 if (uioc_mimd.outlen != 0U) {
18946#line 3837
18947 uioc->flags = 1U;
18948 } else {
18949
18950 }
18951#line 3838
18952 if (uioc_mimd.inlen != 0U) {
18953#line 3838
18954 __cil_tmp43 = uioc->flags;
18955#line 3838
18956 uioc->flags = __cil_tmp43 | 2U;
18957 } else {
18958
18959 }
18960#line 3840
18961 goto ldv_32595;
18962 switch_default___0: ;
18963#line 3843
18964 return (-22);
18965 } else {
18966
18967 }
18968 }
18969 }
18970 }
18971 }
18972 }
18973 }
18974 ldv_32595: ;
18975#line 3847
18976 return (0);
18977}
18978}
18979#line 3859 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
18980static int mega_n_to_m(void *arg , megacmd_t *mc )
18981{ nitioctl_t *uiocp ;
18982 megacmd_t *umc ;
18983 mega_passthru *upthru ;
18984 struct uioctl_t *uioc_mimd ;
18985 char signature[8U] ;
18986 unsigned long tmp ;
18987 int __ret_pu ;
18988 u8 __pu_val ;
18989 int __ret_gu ;
18990 unsigned long __val_gu ;
18991 int __ret_pu___0 ;
18992 u8 __pu_val___0 ;
18993 int __ret_pu___1 ;
18994 u8 __pu_val___1 ;
18995 int __ret_gu___0 ;
18996 unsigned long __val_gu___0 ;
18997 int __ret_pu___2 ;
18998 u8 __pu_val___2 ;
18999 int tmp___0 ;
19000 void *__cil_tmp22 ;
19001 void const *__cil_tmp23 ;
19002 void const *__cil_tmp24 ;
19003 void const *__cil_tmp25 ;
19004 u8 (*__cil_tmp26)[18U] ;
19005 megacmd_t *__cil_tmp27 ;
19006 u8 (*__cil_tmp28)[18U] ;
19007 megacmd_t *__cil_tmp29 ;
19008 u8 (*__cil_tmp30)[18U] ;
19009 megacmd_t *__cil_tmp31 ;
19010 u8 (*__cil_tmp32)[18U] ;
19011 megacmd_t *__cil_tmp33 ;
19012 u8 (*__cil_tmp34)[18U] ;
19013 megacmd_t *__cil_tmp35 ;
19014 u8 __cil_tmp36 ;
19015 unsigned int __cil_tmp37 ;
19016 u8 (*__cil_tmp38)[18U] ;
19017 u32 *__cil_tmp39 ;
19018 u32 *__cil_tmp40 ;
19019 u32 *__cil_tmp41 ;
19020 u32 *__cil_tmp42 ;
19021 u32 *__cil_tmp43 ;
19022 u8 (*__cil_tmp44)[18U] ;
19023 u8 *__cil_tmp45 ;
19024 u8 (*__cil_tmp46)[18U] ;
19025 u8 *__cil_tmp47 ;
19026 u8 (*__cil_tmp48)[18U] ;
19027 u8 *__cil_tmp49 ;
19028 u8 (*__cil_tmp50)[18U] ;
19029 u8 *__cil_tmp51 ;
19030 u8 (*__cil_tmp52)[18U] ;
19031 u8 *__cil_tmp53 ;
19032 u8 __cil_tmp54 ;
19033 unsigned int __cil_tmp55 ;
19034 u8 (*__cil_tmp56)[18U] ;
19035 u32 *__cil_tmp57 ;
19036 u32 *__cil_tmp58 ;
19037 u32 *__cil_tmp59 ;
19038 u32 *__cil_tmp60 ;
19039 u32 *__cil_tmp61 ;
19040
19041 {
19042 {
19043#line 3865
19044 signature[0] = (char)0;
19045#line 3865
19046 signature[1] = (char)0;
19047#line 3865
19048 signature[2] = (char)0;
19049#line 3865
19050 signature[3] = (char)0;
19051#line 3865
19052 signature[4] = (char)0;
19053#line 3865
19054 signature[5] = (char)0;
19055#line 3865
19056 signature[6] = (char)0;
19057#line 3865
19058 signature[7] = (char)0;
19059#line 3870
19060 __cil_tmp22 = (void *)(& signature);
19061#line 3870
19062 __cil_tmp23 = (void const *)arg;
19063#line 3870
19064 tmp = copy_from_user(__cil_tmp22, __cil_tmp23, 7UL);
19065 }
19066#line 3870
19067 if (tmp != 0UL) {
19068#line 3871
19069 return (-14);
19070 } else {
19071
19072 }
19073 {
19074#line 3873
19075 __cil_tmp24 = (void const *)(& signature);
19076#line 3873
19077 __cil_tmp25 = (void const *)"MEGANIT";
19078#line 3873
19079 tmp___0 = memcmp(__cil_tmp24, __cil_tmp25, 7UL);
19080 }
19081#line 3873
19082 if (tmp___0 == 0) {
19083 {
19084#line 3875
19085 uiocp = (nitioctl_t *)arg;
19086#line 3877
19087 might_fault();
19088#line 3877
19089 __pu_val = mc->status;
19090 }
19091#line 3877
19092 if (1) {
19093#line 3877
19094 goto case_1;
19095 } else {
19096#line 3877
19097 goto switch_default;
19098#line 3877
19099 if (0) {
19100 case_1:
19101#line 3877
19102 __cil_tmp26 = & uiocp->__ua.__raw_mbox;
19103#line 3877
19104 __cil_tmp27 = (megacmd_t *)__cil_tmp26;
19105#line 3877
19106 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val),
19107 "c" (& __cil_tmp27->status): "ebx");
19108#line 3877
19109 goto ldv_32617;
19110#line 3877
19111 __cil_tmp28 = & uiocp->__ua.__raw_mbox;
19112#line 3877
19113 __cil_tmp29 = (megacmd_t *)__cil_tmp28;
19114#line 3877
19115 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val),
19116 "c" (& __cil_tmp29->status): "ebx");
19117#line 3877
19118 goto ldv_32617;
19119#line 3877
19120 __cil_tmp30 = & uiocp->__ua.__raw_mbox;
19121#line 3877
19122 __cil_tmp31 = (megacmd_t *)__cil_tmp30;
19123#line 3877
19124 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val),
19125 "c" (& __cil_tmp31->status): "ebx");
19126#line 3877
19127 goto ldv_32617;
19128#line 3877
19129 __cil_tmp32 = & uiocp->__ua.__raw_mbox;
19130#line 3877
19131 __cil_tmp33 = (megacmd_t *)__cil_tmp32;
19132#line 3877
19133 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val),
19134 "c" (& __cil_tmp33->status): "ebx");
19135#line 3877
19136 goto ldv_32617;
19137 switch_default:
19138#line 3877
19139 __cil_tmp34 = & uiocp->__ua.__raw_mbox;
19140#line 3877
19141 __cil_tmp35 = (megacmd_t *)__cil_tmp34;
19142#line 3877
19143 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val),
19144 "c" (& __cil_tmp35->status): "ebx");
19145#line 3877
19146 goto ldv_32617;
19147 } else {
19148
19149 }
19150 }
19151 ldv_32617: ;
19152#line 3877
19153 if (__ret_pu != 0) {
19154#line 3878
19155 return (-14);
19156 } else {
19157
19158 }
19159 {
19160#line 3880
19161 __cil_tmp36 = mc->cmd;
19162#line 3880
19163 __cil_tmp37 = (unsigned int )__cil_tmp36;
19164#line 3880
19165 if (__cil_tmp37 == 3U) {
19166 {
19167#line 3882
19168 __cil_tmp38 = & uiocp->__ua.__raw_mbox;
19169#line 3882
19170 umc = (megacmd_t *)__cil_tmp38;
19171#line 3884
19172 might_fault();
19173 }
19174#line 3884
19175 if (1) {
19176#line 3884
19177 goto case_8___0;
19178 } else {
19179#line 3884
19180 goto switch_default___0;
19181#line 3884
19182 if (0) {
19183#line 3884
19184 __cil_tmp39 = & umc->xferaddr;
19185#line 3884
19186 __asm__ volatile ("call __get_user_1": "=a" (__ret_gu), "=d" (__val_gu): "0" ((mega_passthru **)__cil_tmp39));
19187#line 3884
19188 goto ldv_32626;
19189#line 3884
19190 __cil_tmp40 = & umc->xferaddr;
19191#line 3884
19192 __asm__ volatile ("call __get_user_2": "=a" (__ret_gu), "=d" (__val_gu): "0" ((mega_passthru **)__cil_tmp40));
19193#line 3884
19194 goto ldv_32626;
19195#line 3884
19196 __cil_tmp41 = & umc->xferaddr;
19197#line 3884
19198 __asm__ volatile ("call __get_user_4": "=a" (__ret_gu), "=d" (__val_gu): "0" ((mega_passthru **)__cil_tmp41));
19199#line 3884
19200 goto ldv_32626;
19201 case_8___0:
19202#line 3884
19203 __cil_tmp42 = & umc->xferaddr;
19204#line 3884
19205 __asm__ volatile ("call __get_user_8": "=a" (__ret_gu), "=d" (__val_gu): "0" ((mega_passthru **)__cil_tmp42));
19206#line 3884
19207 goto ldv_32626;
19208 switch_default___0:
19209#line 3884
19210 __cil_tmp43 = & umc->xferaddr;
19211#line 3884
19212 __asm__ volatile ("call __get_user_X": "=a" (__ret_gu), "=d" (__val_gu): "0" ((mega_passthru **)__cil_tmp43));
19213#line 3884
19214 goto ldv_32626;
19215 } else {
19216
19217 }
19218 }
19219 ldv_32626:
19220#line 3884
19221 upthru = (mega_passthru *)__val_gu;
19222#line 3884
19223 if (__ret_gu != 0) {
19224#line 3885
19225 return (-14);
19226 } else {
19227
19228 }
19229 {
19230#line 3887
19231 might_fault();
19232#line 3887
19233 __pu_val___0 = mc->status;
19234 }
19235#line 3887
19236 if (1) {
19237#line 3887
19238 goto case_1___1;
19239 } else {
19240#line 3887
19241 goto switch_default___1;
19242#line 3887
19243 if (0) {
19244 case_1___1:
19245#line 3887
19246 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu___0): "0" (__pu_val___0),
19247 "c" (& upthru->scsistatus): "ebx");
19248#line 3887
19249 goto ldv_32635;
19250#line 3887
19251 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu___0): "0" (__pu_val___0),
19252 "c" (& upthru->scsistatus): "ebx");
19253#line 3887
19254 goto ldv_32635;
19255#line 3887
19256 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu___0): "0" (__pu_val___0),
19257 "c" (& upthru->scsistatus): "ebx");
19258#line 3887
19259 goto ldv_32635;
19260#line 3887
19261 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu___0): "0" (__pu_val___0),
19262 "c" (& upthru->scsistatus): "ebx");
19263#line 3887
19264 goto ldv_32635;
19265 switch_default___1:
19266#line 3887
19267 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu___0): "0" (__pu_val___0),
19268 "c" (& upthru->scsistatus): "ebx");
19269#line 3887
19270 goto ldv_32635;
19271 } else {
19272
19273 }
19274 }
19275 ldv_32635: ;
19276#line 3887
19277 if (__ret_pu___0 != 0) {
19278#line 3888
19279 return (-14);
19280 } else {
19281
19282 }
19283 } else {
19284
19285 }
19286 }
19287 } else {
19288 {
19289#line 3892
19290 uioc_mimd = (struct uioctl_t *)arg;
19291#line 3894
19292 might_fault();
19293#line 3894
19294 __pu_val___1 = mc->status;
19295 }
19296#line 3894
19297 if (1) {
19298#line 3894
19299 goto case_1___2;
19300 } else {
19301#line 3894
19302 goto switch_default___2;
19303#line 3894
19304 if (0) {
19305 case_1___2:
19306#line 3894
19307 __cil_tmp44 = & uioc_mimd->mbox;
19308#line 3894
19309 __cil_tmp45 = (u8 *)__cil_tmp44;
19310#line 3894
19311 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu___1): "0" (__pu_val___1),
19312 "c" (__cil_tmp45 + 17UL): "ebx");
19313#line 3894
19314 goto ldv_32644;
19315#line 3894
19316 __cil_tmp46 = & uioc_mimd->mbox;
19317#line 3894
19318 __cil_tmp47 = (u8 *)__cil_tmp46;
19319#line 3894
19320 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu___1): "0" (__pu_val___1),
19321 "c" (__cil_tmp47 + 17UL): "ebx");
19322#line 3894
19323 goto ldv_32644;
19324#line 3894
19325 __cil_tmp48 = & uioc_mimd->mbox;
19326#line 3894
19327 __cil_tmp49 = (u8 *)__cil_tmp48;
19328#line 3894
19329 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu___1): "0" (__pu_val___1),
19330 "c" (__cil_tmp49 + 17UL): "ebx");
19331#line 3894
19332 goto ldv_32644;
19333#line 3894
19334 __cil_tmp50 = & uioc_mimd->mbox;
19335#line 3894
19336 __cil_tmp51 = (u8 *)__cil_tmp50;
19337#line 3894
19338 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu___1): "0" (__pu_val___1),
19339 "c" (__cil_tmp51 + 17UL): "ebx");
19340#line 3894
19341 goto ldv_32644;
19342 switch_default___2:
19343#line 3894
19344 __cil_tmp52 = & uioc_mimd->mbox;
19345#line 3894
19346 __cil_tmp53 = (u8 *)__cil_tmp52;
19347#line 3894
19348 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu___1): "0" (__pu_val___1),
19349 "c" (__cil_tmp53 + 17UL): "ebx");
19350#line 3894
19351 goto ldv_32644;
19352 } else {
19353
19354 }
19355 }
19356 ldv_32644: ;
19357#line 3894
19358 if (__ret_pu___1 != 0) {
19359#line 3895
19360 return (-14);
19361 } else {
19362
19363 }
19364 {
19365#line 3897
19366 __cil_tmp54 = mc->cmd;
19367#line 3897
19368 __cil_tmp55 = (unsigned int )__cil_tmp54;
19369#line 3897
19370 if (__cil_tmp55 == 3U) {
19371 {
19372#line 3899
19373 __cil_tmp56 = & uioc_mimd->mbox;
19374#line 3899
19375 umc = (megacmd_t *)__cil_tmp56;
19376#line 3901
19377 might_fault();
19378 }
19379#line 3901
19380 if (1) {
19381#line 3901
19382 goto case_8___3;
19383 } else {
19384#line 3901
19385 goto switch_default___3;
19386#line 3901
19387 if (0) {
19388#line 3901
19389 __cil_tmp57 = & umc->xferaddr;
19390#line 3901
19391 __asm__ volatile ("call __get_user_1": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" ((mega_passthru **)__cil_tmp57));
19392#line 3901
19393 goto ldv_32653;
19394#line 3901
19395 __cil_tmp58 = & umc->xferaddr;
19396#line 3901
19397 __asm__ volatile ("call __get_user_2": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" ((mega_passthru **)__cil_tmp58));
19398#line 3901
19399 goto ldv_32653;
19400#line 3901
19401 __cil_tmp59 = & umc->xferaddr;
19402#line 3901
19403 __asm__ volatile ("call __get_user_4": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" ((mega_passthru **)__cil_tmp59));
19404#line 3901
19405 goto ldv_32653;
19406 case_8___3:
19407#line 3901
19408 __cil_tmp60 = & umc->xferaddr;
19409#line 3901
19410 __asm__ volatile ("call __get_user_8": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" ((mega_passthru **)__cil_tmp60));
19411#line 3901
19412 goto ldv_32653;
19413 switch_default___3:
19414#line 3901
19415 __cil_tmp61 = & umc->xferaddr;
19416#line 3901
19417 __asm__ volatile ("call __get_user_X": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" ((mega_passthru **)__cil_tmp61));
19418#line 3901
19419 goto ldv_32653;
19420 } else {
19421
19422 }
19423 }
19424 ldv_32653:
19425#line 3901
19426 upthru = (mega_passthru *)__val_gu___0;
19427#line 3901
19428 if (__ret_gu___0 != 0) {
19429#line 3902
19430 return (-14);
19431 } else {
19432
19433 }
19434 {
19435#line 3904
19436 might_fault();
19437#line 3904
19438 __pu_val___2 = mc->status;
19439 }
19440#line 3904
19441 if (1) {
19442#line 3904
19443 goto case_1___4;
19444 } else {
19445#line 3904
19446 goto switch_default___4;
19447#line 3904
19448 if (0) {
19449 case_1___4:
19450#line 3904
19451 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu___2): "0" (__pu_val___2),
19452 "c" (& upthru->scsistatus): "ebx");
19453#line 3904
19454 goto ldv_32662;
19455#line 3904
19456 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu___2): "0" (__pu_val___2),
19457 "c" (& upthru->scsistatus): "ebx");
19458#line 3904
19459 goto ldv_32662;
19460#line 3904
19461 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu___2): "0" (__pu_val___2),
19462 "c" (& upthru->scsistatus): "ebx");
19463#line 3904
19464 goto ldv_32662;
19465#line 3904
19466 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu___2): "0" (__pu_val___2),
19467 "c" (& upthru->scsistatus): "ebx");
19468#line 3904
19469 goto ldv_32662;
19470 switch_default___4:
19471#line 3904
19472 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu___2): "0" (__pu_val___2),
19473 "c" (& upthru->scsistatus): "ebx");
19474#line 3904
19475 goto ldv_32662;
19476 } else {
19477
19478 }
19479 }
19480 ldv_32662: ;
19481#line 3904
19482 if (__ret_pu___2 != 0) {
19483#line 3905
19484 return (-14);
19485 } else {
19486
19487 }
19488 } else {
19489
19490 }
19491 }
19492 }
19493#line 3909
19494 return (0);
19495}
19496}
19497#line 3924 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
19498static int mega_is_bios_enabled(adapter_t *adapter )
19499{ unsigned char raw_mbox[15U] ;
19500 mbox_t *mbox ;
19501 int ret ;
19502 struct mbox_out *__cil_tmp5 ;
19503 void *__cil_tmp6 ;
19504 u8 *__cil_tmp7 ;
19505 void *__cil_tmp8 ;
19506 dma_addr_t __cil_tmp9 ;
19507 u_char *__cil_tmp10 ;
19508 u8 *__cil_tmp11 ;
19509 char *__cil_tmp12 ;
19510 char __cil_tmp13 ;
19511
19512 {
19513 {
19514#line 3930
19515 mbox = (mbox_t *)(& raw_mbox);
19516#line 3932
19517 __cil_tmp5 = & mbox->m_out;
19518#line 3932
19519 __cil_tmp6 = (void *)__cil_tmp5;
19520#line 3932
19521 memset(__cil_tmp6, 0, 15UL);
19522#line 3934
19523 __cil_tmp7 = adapter->mega_buffer;
19524#line 3934
19525 __cil_tmp8 = (void *)__cil_tmp7;
19526#line 3934
19527 memset(__cil_tmp8, 0, 2048UL);
19528#line 3936
19529 __cil_tmp9 = adapter->buf_dma_handle;
19530#line 3936
19531 mbox->m_out.xferaddr = (unsigned int )__cil_tmp9;
19532#line 3938
19533 raw_mbox[0] = (unsigned char)98;
19534#line 3939
19535 raw_mbox[2] = (unsigned char)1;
19536#line 3942
19537 __cil_tmp10 = (u_char *)(& raw_mbox);
19538#line 3942
19539 ret = issue_scb_block(adapter, __cil_tmp10);
19540 }
19541 {
19542#line 3944
19543 __cil_tmp11 = adapter->mega_buffer;
19544#line 3944
19545 __cil_tmp12 = (char *)__cil_tmp11;
19546#line 3944
19547 __cil_tmp13 = *__cil_tmp12;
19548#line 3944
19549 return ((int )__cil_tmp13);
19550 }
19551}
19552}
19553#line 3957 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
19554static void mega_enum_raid_scsi(adapter_t *adapter )
19555{ unsigned char raw_mbox[15U] ;
19556 mbox_t *mbox ;
19557 int i ;
19558 int tmp ;
19559 struct mbox_out *__cil_tmp6 ;
19560 void *__cil_tmp7 ;
19561 u8 *__cil_tmp8 ;
19562 void *__cil_tmp9 ;
19563 dma_addr_t __cil_tmp10 ;
19564 u_char *__cil_tmp11 ;
19565 u8 *__cil_tmp12 ;
19566 char *__cil_tmp13 ;
19567 char __cil_tmp14 ;
19568 int __cil_tmp15 ;
19569 int __cil_tmp16 ;
19570 u8 __cil_tmp17 ;
19571 int __cil_tmp18 ;
19572
19573 {
19574 {
19575#line 3963
19576 mbox = (mbox_t *)(& raw_mbox);
19577#line 3965
19578 __cil_tmp6 = & mbox->m_out;
19579#line 3965
19580 __cil_tmp7 = (void *)__cil_tmp6;
19581#line 3965
19582 memset(__cil_tmp7, 0, 15UL);
19583#line 3970
19584 raw_mbox[0] = (unsigned char)169;
19585#line 3971
19586 raw_mbox[2] = (unsigned char)0;
19587#line 3973
19588 __cil_tmp8 = adapter->mega_buffer;
19589#line 3973
19590 __cil_tmp9 = (void *)__cil_tmp8;
19591#line 3973
19592 memset(__cil_tmp9, 0, 2048UL);
19593#line 3975
19594 __cil_tmp10 = adapter->buf_dma_handle;
19595#line 3975
19596 mbox->m_out.xferaddr = (unsigned int )__cil_tmp10;
19597#line 3981
19598 adapter->mega_ch_class = 255;
19599#line 3983
19600 __cil_tmp11 = (u_char *)(& raw_mbox);
19601#line 3983
19602 tmp = issue_scb_block(adapter, __cil_tmp11);
19603 }
19604#line 3983
19605 if (tmp == 0) {
19606#line 3984
19607 __cil_tmp12 = adapter->mega_buffer;
19608#line 3984
19609 __cil_tmp13 = (char *)__cil_tmp12;
19610#line 3984
19611 __cil_tmp14 = *__cil_tmp13;
19612#line 3984
19613 adapter->mega_ch_class = (int )__cil_tmp14;
19614 } else {
19615
19616 }
19617#line 3988
19618 i = 0;
19619#line 3988
19620 goto ldv_32681;
19621 ldv_32680: ;
19622 {
19623#line 3989
19624 __cil_tmp15 = adapter->mega_ch_class;
19625#line 3989
19626 __cil_tmp16 = __cil_tmp15 >> i;
19627#line 3989
19628 if (__cil_tmp16 & 1) {
19629 {
19630#line 3990
19631 printk("<6>megaraid: channel[%d] is raid.\n", i);
19632 }
19633 } else {
19634 {
19635#line 3994
19636 printk("<6>megaraid: channel[%d] is scsi.\n", i);
19637 }
19638 }
19639 }
19640#line 3988
19641 i = i + 1;
19642 ldv_32681: ;
19643 {
19644#line 3988
19645 __cil_tmp17 = adapter->product_info.nchannels;
19646#line 3988
19647 __cil_tmp18 = (int )__cil_tmp17;
19648#line 3988
19649 if (__cil_tmp18 > i) {
19650#line 3989
19651 goto ldv_32680;
19652 } else {
19653#line 3991
19654 goto ldv_32682;
19655 }
19656 }
19657 ldv_32682: ;
19658#line 3999
19659 return;
19660}
19661}
19662#line 4011 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
19663static void mega_get_boot_drv(adapter_t *adapter )
19664{ struct private_bios_data *prv_bios_data ;
19665 unsigned char raw_mbox[15U] ;
19666 mbox_t *mbox ;
19667 u16 cksum ;
19668 u8 *cksum_p ;
19669 u8 boot_pdrv ;
19670 int i ;
19671 u8 *tmp ;
19672 int tmp___0 ;
19673 struct mbox_out *__cil_tmp11 ;
19674 void *__cil_tmp12 ;
19675 u8 *__cil_tmp13 ;
19676 void *__cil_tmp14 ;
19677 dma_addr_t __cil_tmp15 ;
19678 u_char *__cil_tmp16 ;
19679 u8 *__cil_tmp17 ;
19680 int __cil_tmp18 ;
19681 u8 __cil_tmp19 ;
19682 u16 __cil_tmp20 ;
19683 int __cil_tmp21 ;
19684 int __cil_tmp22 ;
19685 int __cil_tmp23 ;
19686 int __cil_tmp24 ;
19687 unsigned short __cil_tmp25 ;
19688 int __cil_tmp26 ;
19689 u16 __cil_tmp27 ;
19690 int __cil_tmp28 ;
19691 u8 __cil_tmp29 ;
19692 signed char __cil_tmp30 ;
19693 int __cil_tmp31 ;
19694 u8 __cil_tmp32 ;
19695 unsigned int __cil_tmp33 ;
19696 unsigned int __cil_tmp34 ;
19697 unsigned int __cil_tmp35 ;
19698 unsigned int __cil_tmp36 ;
19699 int __cil_tmp37 ;
19700 u8 __cil_tmp38 ;
19701
19702 {
19703 {
19704#line 4016
19705 cksum = (u16 )0U;
19706#line 4021
19707 mbox = (mbox_t *)(& raw_mbox);
19708#line 4023
19709 __cil_tmp11 = & mbox->m_out;
19710#line 4023
19711 __cil_tmp12 = (void *)__cil_tmp11;
19712#line 4023
19713 memset(__cil_tmp12, 0, 15UL);
19714#line 4025
19715 raw_mbox[0] = (unsigned char)64;
19716#line 4026
19717 raw_mbox[2] = (unsigned char)0;
19718#line 4028
19719 __cil_tmp13 = adapter->mega_buffer;
19720#line 4028
19721 __cil_tmp14 = (void *)__cil_tmp13;
19722#line 4028
19723 memset(__cil_tmp14, 0, 2048UL);
19724#line 4030
19725 __cil_tmp15 = adapter->buf_dma_handle;
19726#line 4030
19727 mbox->m_out.xferaddr = (unsigned int )__cil_tmp15;
19728#line 4032
19729 adapter->boot_ldrv_enabled = 0;
19730#line 4033
19731 adapter->boot_ldrv = 0;
19732#line 4035
19733 adapter->boot_pdrv_enabled = 0;
19734#line 4036
19735 adapter->boot_pdrv_ch = 0;
19736#line 4037
19737 adapter->boot_pdrv_tgt = 0;
19738#line 4039
19739 __cil_tmp16 = (u_char *)(& raw_mbox);
19740#line 4039
19741 tmp___0 = issue_scb_block(adapter, __cil_tmp16);
19742 }
19743#line 4039
19744 if (tmp___0 == 0) {
19745#line 4040
19746 __cil_tmp17 = adapter->mega_buffer;
19747#line 4040
19748 prv_bios_data = (struct private_bios_data *)__cil_tmp17;
19749#line 4043
19750 cksum = (u16 )0U;
19751#line 4044
19752 cksum_p = (u8 *)prv_bios_data;
19753#line 4045
19754 i = 0;
19755#line 4045
19756 goto ldv_32694;
19757 ldv_32693:
19758#line 4046
19759 tmp = cksum_p;
19760#line 4046
19761 cksum_p = cksum_p + 1;
19762#line 4046
19763 __cil_tmp18 = (int )cksum;
19764#line 4046
19765 __cil_tmp19 = *tmp;
19766#line 4046
19767 __cil_tmp20 = (u16 )__cil_tmp19;
19768#line 4046
19769 __cil_tmp21 = (int )__cil_tmp20;
19770#line 4046
19771 __cil_tmp22 = __cil_tmp21 + __cil_tmp18;
19772#line 4046
19773 cksum = (u16 )__cil_tmp22;
19774#line 4045
19775 i = i + 1;
19776 ldv_32694: ;
19777#line 4045
19778 if (i <= 13) {
19779#line 4046
19780 goto ldv_32693;
19781 } else {
19782#line 4048
19783 goto ldv_32695;
19784 }
19785 ldv_32695: ;
19786 {
19787#line 4049
19788 __cil_tmp23 = (int )cksum;
19789#line 4049
19790 __cil_tmp24 = - __cil_tmp23;
19791#line 4049
19792 __cil_tmp25 = (unsigned short )__cil_tmp24;
19793#line 4049
19794 __cil_tmp26 = (int )__cil_tmp25;
19795#line 4049
19796 __cil_tmp27 = prv_bios_data->cksum;
19797#line 4049
19798 __cil_tmp28 = (int )__cil_tmp27;
19799#line 4049
19800 if (__cil_tmp28 == __cil_tmp26) {
19801 {
19802#line 4055
19803 __cil_tmp29 = prv_bios_data->boot_drv;
19804#line 4055
19805 __cil_tmp30 = (signed char )__cil_tmp29;
19806#line 4055
19807 __cil_tmp31 = (int )__cil_tmp30;
19808#line 4055
19809 if (__cil_tmp31 < 0) {
19810#line 4056
19811 adapter->boot_pdrv_enabled = 1;
19812#line 4057
19813 __cil_tmp32 = prv_bios_data->boot_drv;
19814#line 4057
19815 __cil_tmp33 = (unsigned int )__cil_tmp32;
19816#line 4057
19817 __cil_tmp34 = __cil_tmp33 & 127U;
19818#line 4057
19819 boot_pdrv = (u8 )__cil_tmp34;
19820#line 4058
19821 __cil_tmp35 = (unsigned int )boot_pdrv;
19822#line 4058
19823 __cil_tmp36 = __cil_tmp35 / 16U;
19824#line 4058
19825 adapter->boot_pdrv_ch = (int )__cil_tmp36;
19826#line 4059
19827 __cil_tmp37 = (int )boot_pdrv;
19828#line 4059
19829 adapter->boot_pdrv_tgt = __cil_tmp37 & 15;
19830 } else {
19831#line 4062
19832 adapter->boot_ldrv_enabled = 1;
19833#line 4063
19834 __cil_tmp38 = prv_bios_data->boot_drv;
19835#line 4063
19836 adapter->boot_ldrv = (int )__cil_tmp38;
19837 }
19838 }
19839 } else {
19840
19841 }
19842 }
19843 } else {
19844
19845 }
19846#line 4066
19847 return;
19848}
19849}
19850#line 4078 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
19851static int mega_support_random_del(adapter_t *adapter )
19852{ unsigned char raw_mbox[15U] ;
19853 mbox_t *mbox ;
19854 int rval ;
19855 struct mbox_out *__cil_tmp5 ;
19856 void *__cil_tmp6 ;
19857 u_char *__cil_tmp7 ;
19858
19859 {
19860 {
19861#line 4084
19862 mbox = (mbox_t *)(& raw_mbox);
19863#line 4086
19864 __cil_tmp5 = & mbox->m_out;
19865#line 4086
19866 __cil_tmp6 = (void *)__cil_tmp5;
19867#line 4086
19868 memset(__cil_tmp6, 0, 15UL);
19869#line 4091
19870 raw_mbox[0] = (unsigned char)164;
19871#line 4092
19872 raw_mbox[2] = (unsigned char)42;
19873#line 4094
19874 __cil_tmp7 = (u_char *)(& raw_mbox);
19875#line 4094
19876 rval = issue_scb_block(adapter, __cil_tmp7);
19877 }
19878#line 4096
19879 return (rval == 0);
19880}
19881}
19882#line 4107 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
19883static int mega_support_ext_cdb(adapter_t *adapter )
19884{ unsigned char raw_mbox[15U] ;
19885 mbox_t *mbox ;
19886 int rval ;
19887 struct mbox_out *__cil_tmp5 ;
19888 void *__cil_tmp6 ;
19889 u_char *__cil_tmp7 ;
19890
19891 {
19892 {
19893#line 4113
19894 mbox = (mbox_t *)(& raw_mbox);
19895#line 4115
19896 __cil_tmp5 = & mbox->m_out;
19897#line 4115
19898 __cil_tmp6 = (void *)__cil_tmp5;
19899#line 4115
19900 memset(__cil_tmp6, 0, 15UL);
19901#line 4119
19902 raw_mbox[0] = (unsigned char)164;
19903#line 4120
19904 raw_mbox[2] = (unsigned char)22;
19905#line 4122
19906 __cil_tmp7 = (u_char *)(& raw_mbox);
19907#line 4122
19908 rval = issue_scb_block(adapter, __cil_tmp7);
19909 }
19910#line 4124
19911 return (rval == 0);
19912}
19913}
19914#line 4137 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
19915static int mega_del_logdrv(adapter_t *adapter , int logdrv )
19916{ unsigned long flags ;
19917 scb_t *scb ;
19918 int rval ;
19919 int tmp ;
19920 int tmp___0 ;
19921 raw_spinlock_t *tmp___1 ;
19922 struct list_head *pos ;
19923 struct list_head const *__mptr ;
19924 atomic_t *__cil_tmp11 ;
19925 atomic_t *__cil_tmp12 ;
19926 atomic_t const *__cil_tmp13 ;
19927 struct list_head *__cil_tmp14 ;
19928 struct list_head const *__cil_tmp15 ;
19929 spinlock_t *__cil_tmp16 ;
19930 int __cil_tmp17 ;
19931 scb_t *__cil_tmp18 ;
19932 mega_passthru *__cil_tmp19 ;
19933 u8 __cil_tmp20 ;
19934 signed char __cil_tmp21 ;
19935 int __cil_tmp22 ;
19936 mega_passthru *__cil_tmp23 ;
19937 mega_passthru *__cil_tmp24 ;
19938 u8 __cil_tmp25 ;
19939 unsigned int __cil_tmp26 ;
19940 unsigned int __cil_tmp27 ;
19941 unsigned long __cil_tmp28 ;
19942 struct list_head *__cil_tmp29 ;
19943 unsigned long __cil_tmp30 ;
19944 atomic_t *__cil_tmp31 ;
19945 spinlock_t *__cil_tmp32 ;
19946
19947 {
19948 {
19949#line 4147
19950 __cil_tmp11 = & adapter->quiescent;
19951#line 4147
19952 atomic_set(__cil_tmp11, 1);
19953 }
19954#line 4153
19955 goto ldv_32716;
19956 ldv_32715:
19957 {
19958#line 4155
19959 msleep(1000U);
19960 }
19961 ldv_32716:
19962 {
19963#line 4153
19964 __cil_tmp12 = & adapter->pend_cmds;
19965#line 4153
19966 __cil_tmp13 = (atomic_t const *)__cil_tmp12;
19967#line 4153
19968 tmp = atomic_read(__cil_tmp13);
19969 }
19970#line 4153
19971 if (tmp > 0) {
19972#line 4155
19973 goto ldv_32715;
19974 } else {
19975 {
19976#line 4153
19977 __cil_tmp14 = & adapter->pending_list;
19978#line 4153
19979 __cil_tmp15 = (struct list_head const *)__cil_tmp14;
19980#line 4153
19981 tmp___0 = list_empty(__cil_tmp15);
19982 }
19983#line 4153
19984 if (tmp___0 == 0) {
19985#line 4155
19986 goto ldv_32715;
19987 } else {
19988#line 4157
19989 goto ldv_32717;
19990 }
19991 }
19992 ldv_32717:
19993 {
19994#line 4157
19995 rval = mega_do_del_logdrv(adapter, logdrv);
19996#line 4159
19997 __cil_tmp16 = & adapter->lock;
19998#line 4159
19999 tmp___1 = spinlock_check(__cil_tmp16);
20000#line 4159
20001 flags = _raw_spin_lock_irqsave(tmp___1);
20002 }
20003 {
20004#line 4165
20005 __cil_tmp17 = adapter->read_ldidmap;
20006#line 4165
20007 if (__cil_tmp17 != 0) {
20008#line 4167
20009 pos = adapter->pending_list.next;
20010#line 4167
20011 goto ldv_32725;
20012 ldv_32724:
20013#line 4168
20014 __mptr = (struct list_head const *)pos;
20015#line 4168
20016 __cil_tmp18 = (scb_t *)__mptr;
20017#line 4168
20018 scb = __cil_tmp18 + 1152921504606846968UL;
20019 {
20020#line 4169
20021 __cil_tmp19 = scb->pthru;
20022#line 4169
20023 __cil_tmp20 = __cil_tmp19->logdrv;
20024#line 4169
20025 __cil_tmp21 = (signed char )__cil_tmp20;
20026#line 4169
20027 __cil_tmp22 = (int )__cil_tmp21;
20028#line 4169
20029 if (__cil_tmp22 >= 0) {
20030#line 4170
20031 __cil_tmp23 = scb->pthru;
20032#line 4170
20033 __cil_tmp24 = scb->pthru;
20034#line 4170
20035 __cil_tmp25 = __cil_tmp24->logdrv;
20036#line 4170
20037 __cil_tmp26 = (unsigned int )__cil_tmp25;
20038#line 4170
20039 __cil_tmp27 = __cil_tmp26 + 128U;
20040#line 4170
20041 __cil_tmp23->logdrv = (u8 )__cil_tmp27;
20042 } else {
20043
20044 }
20045 }
20046#line 4167
20047 pos = pos->next;
20048 ldv_32725: ;
20049 {
20050#line 4167
20051 __cil_tmp28 = (unsigned long )pos;
20052#line 4167
20053 __cil_tmp29 = & adapter->pending_list;
20054#line 4167
20055 __cil_tmp30 = (unsigned long )__cil_tmp29;
20056#line 4167
20057 if (__cil_tmp30 != __cil_tmp28) {
20058#line 4168
20059 goto ldv_32724;
20060 } else {
20061#line 4170
20062 goto ldv_32726;
20063 }
20064 }
20065 ldv_32726: ;
20066 } else {
20067
20068 }
20069 }
20070 {
20071#line 4174
20072 __cil_tmp31 = & adapter->quiescent;
20073#line 4174
20074 atomic_set(__cil_tmp31, 0);
20075#line 4176
20076 mega_runpendq(adapter);
20077#line 4178
20078 __cil_tmp32 = & adapter->lock;
20079#line 4178
20080 spin_unlock_irqrestore(__cil_tmp32, flags);
20081 }
20082#line 4180
20083 return (rval);
20084}
20085}
20086#line 4185 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20087static int mega_do_del_logdrv(adapter_t *adapter , int logdrv )
20088{ megacmd_t mc ;
20089 int rval ;
20090 void *__cil_tmp5 ;
20091 mega_passthru *__cil_tmp6 ;
20092
20093 {
20094 {
20095#line 4190
20096 __cil_tmp5 = (void *)(& mc);
20097#line 4190
20098 memset(__cil_tmp5, 0, 18UL);
20099#line 4192
20100 mc.cmd = (u8 )164U;
20101#line 4193
20102 mc.opcode = (u8 )28U;
20103#line 4194
20104 mc.subopcode = (u8 )logdrv;
20105#line 4196
20106 __cil_tmp6 = (mega_passthru *)0;
20107#line 4196
20108 rval = mega_internal_command(adapter, & mc, __cil_tmp6);
20109 }
20110#line 4199
20111 if (rval != 0) {
20112 {
20113#line 4200
20114 printk("<4>megaraid: Delete LD-%d failed.", logdrv);
20115 }
20116#line 4201
20117 return (rval);
20118 } else {
20119
20120 }
20121#line 4208
20122 adapter->read_ldidmap = 1;
20123#line 4210
20124 return (rval);
20125}
20126}
20127#line 4222 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20128static void mega_get_max_sgl(adapter_t *adapter )
20129{ unsigned char raw_mbox[15U] ;
20130 mbox_t *mbox ;
20131 int tmp ;
20132 void *__cil_tmp5 ;
20133 u8 *__cil_tmp6 ;
20134 void *__cil_tmp7 ;
20135 dma_addr_t __cil_tmp8 ;
20136 u_char *__cil_tmp9 ;
20137 u8 *__cil_tmp10 ;
20138 char *__cil_tmp11 ;
20139 char __cil_tmp12 ;
20140 u8 __cil_tmp13 ;
20141 unsigned int __cil_tmp14 ;
20142
20143 {
20144 {
20145#line 4227
20146 mbox = (mbox_t *)(& raw_mbox);
20147#line 4229
20148 __cil_tmp5 = (void *)mbox;
20149#line 4229
20150 memset(__cil_tmp5, 0, 15UL);
20151#line 4231
20152 __cil_tmp6 = adapter->mega_buffer;
20153#line 4231
20154 __cil_tmp7 = (void *)__cil_tmp6;
20155#line 4231
20156 memset(__cil_tmp7, 0, 2048UL);
20157#line 4233
20158 __cil_tmp8 = adapter->buf_dma_handle;
20159#line 4233
20160 mbox->m_out.xferaddr = (unsigned int )__cil_tmp8;
20161#line 4235
20162 raw_mbox[0] = (unsigned char)164;
20163#line 4236
20164 raw_mbox[2] = (unsigned char)1;
20165#line 4239
20166 __cil_tmp9 = (u_char *)(& raw_mbox);
20167#line 4239
20168 tmp = issue_scb_block(adapter, __cil_tmp9);
20169 }
20170#line 4239
20171 if (tmp != 0) {
20172#line 4243
20173 adapter->sglen = (u8 )26U;
20174 } else {
20175#line 4246
20176 __cil_tmp10 = adapter->mega_buffer;
20177#line 4246
20178 __cil_tmp11 = (char *)__cil_tmp10;
20179#line 4246
20180 __cil_tmp12 = *__cil_tmp11;
20181#line 4246
20182 adapter->sglen = (u8 )__cil_tmp12;
20183 {
20184#line 4252
20185 __cil_tmp13 = adapter->sglen;
20186#line 4252
20187 __cil_tmp14 = (unsigned int )__cil_tmp13;
20188#line 4252
20189 if (__cil_tmp14 > 64U) {
20190#line 4253
20191 adapter->sglen = (u8 )64U;
20192 } else {
20193
20194 }
20195 }
20196 }
20197#line 4256
20198 return;
20199}
20200}
20201#line 4267 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20202static int mega_support_cluster(adapter_t *adapter )
20203{ unsigned char raw_mbox[15U] ;
20204 mbox_t *mbox ;
20205 int tmp ;
20206 void *__cil_tmp5 ;
20207 u8 *__cil_tmp6 ;
20208 void *__cil_tmp7 ;
20209 dma_addr_t __cil_tmp8 ;
20210 u_char *__cil_tmp9 ;
20211 u8 *__cil_tmp10 ;
20212 u32 *__cil_tmp11 ;
20213 u32 __cil_tmp12 ;
20214 struct Scsi_Host *__cil_tmp13 ;
20215
20216 {
20217 {
20218#line 4272
20219 mbox = (mbox_t *)(& raw_mbox);
20220#line 4274
20221 __cil_tmp5 = (void *)mbox;
20222#line 4274
20223 memset(__cil_tmp5, 0, 15UL);
20224#line 4276
20225 __cil_tmp6 = adapter->mega_buffer;
20226#line 4276
20227 __cil_tmp7 = (void *)__cil_tmp6;
20228#line 4276
20229 memset(__cil_tmp7, 0, 2048UL);
20230#line 4278
20231 __cil_tmp8 = adapter->buf_dma_handle;
20232#line 4278
20233 mbox->m_out.xferaddr = (unsigned int )__cil_tmp8;
20234#line 4284
20235 raw_mbox[0] = (unsigned char)125;
20236#line 4286
20237 __cil_tmp9 = (u_char *)(& raw_mbox);
20238#line 4286
20239 tmp = issue_scb_block(adapter, __cil_tmp9);
20240 }
20241#line 4286
20242 if (tmp == 0) {
20243#line 4292
20244 __cil_tmp10 = adapter->mega_buffer;
20245#line 4292
20246 __cil_tmp11 = (u32 *)__cil_tmp10;
20247#line 4292
20248 __cil_tmp12 = *__cil_tmp11;
20249#line 4292
20250 adapter->this_id = (int )__cil_tmp12;
20251#line 4293
20252 __cil_tmp13 = adapter->host;
20253#line 4293
20254 __cil_tmp13->this_id = adapter->this_id;
20255#line 4295
20256 return (1);
20257 } else {
20258
20259 }
20260#line 4298
20261 return (0);
20262}
20263}
20264#line 4312 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20265static int mega_adapinq(adapter_t *adapter , dma_addr_t dma_handle )
20266{ megacmd_t mc ;
20267 int tmp ;
20268 void *__cil_tmp5 ;
20269 u32 __cil_tmp6 ;
20270 long __cil_tmp7 ;
20271 long __cil_tmp8 ;
20272 mega_passthru *__cil_tmp9 ;
20273
20274 {
20275 {
20276#line 4316
20277 __cil_tmp5 = (void *)(& mc);
20278#line 4316
20279 memset(__cil_tmp5, 0, 18UL);
20280 }
20281 {
20282#line 4318
20283 __cil_tmp6 = adapter->flag;
20284#line 4318
20285 __cil_tmp7 = (long )__cil_tmp6;
20286#line 4318
20287 __cil_tmp8 = __cil_tmp7 & 134217728L;
20288#line 4318
20289 if (__cil_tmp8 != 0L) {
20290#line 4319
20291 mc.cmd = (u8 )161U;
20292#line 4320
20293 mc.opcode = (u8 )15U;
20294#line 4321
20295 mc.subopcode = (u8 )2U;
20296 } else {
20297#line 4324
20298 mc.cmd = (u8 )4U;
20299 }
20300 }
20301 {
20302#line 4327
20303 mc.xferaddr = (unsigned int )dma_handle;
20304#line 4329
20305 __cil_tmp9 = (mega_passthru *)0;
20306#line 4329
20307 tmp = mega_internal_command(adapter, & mc, __cil_tmp9);
20308 }
20309#line 4329
20310 if (tmp != 0) {
20311#line 4330
20312 return (-1);
20313 } else {
20314
20315 }
20316#line 4333
20317 return (0);
20318}
20319}
20320#line 4346 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20321static int mega_internal_dev_inquiry(adapter_t *adapter , u8 ch , u8 tgt , dma_addr_t buf_dma_handle )
20322{ mega_passthru *pthru ;
20323 dma_addr_t pthru_dma_handle ;
20324 megacmd_t mc ;
20325 int rval ;
20326 struct pci_dev *pdev ;
20327 int tmp ;
20328 void *tmp___0 ;
20329 mega_passthru *__cil_tmp12 ;
20330 unsigned long __cil_tmp13 ;
20331 unsigned long __cil_tmp14 ;
20332 u32 __cil_tmp15 ;
20333 long __cil_tmp16 ;
20334 long __cil_tmp17 ;
20335 u32 __cil_tmp18 ;
20336 long __cil_tmp19 ;
20337 long __cil_tmp20 ;
20338 signed char __cil_tmp21 ;
20339 int __cil_tmp22 ;
20340 int __cil_tmp23 ;
20341 int __cil_tmp24 ;
20342 signed char __cil_tmp25 ;
20343 int __cil_tmp26 ;
20344 int __cil_tmp27 ;
20345 void *__cil_tmp28 ;
20346 void *__cil_tmp29 ;
20347
20348 {
20349 {
20350#line 4360
20351 tmp = make_local_pdev(adapter, & pdev);
20352 }
20353#line 4360
20354 if (tmp != 0) {
20355#line 4360
20356 return (-1);
20357 } else {
20358
20359 }
20360 {
20361#line 4362
20362 tmp___0 = pci_alloc_consistent(pdev, 60UL, & pthru_dma_handle);
20363#line 4362
20364 pthru = (mega_passthru *)tmp___0;
20365 }
20366 {
20367#line 4365
20368 __cil_tmp12 = (mega_passthru *)0;
20369#line 4365
20370 __cil_tmp13 = (unsigned long )__cil_tmp12;
20371#line 4365
20372 __cil_tmp14 = (unsigned long )pthru;
20373#line 4365
20374 if (__cil_tmp14 == __cil_tmp13) {
20375 {
20376#line 4366
20377 free_local_pdev(pdev);
20378 }
20379#line 4367
20380 return (-1);
20381 } else {
20382
20383 }
20384 }
20385#line 4370
20386 pthru->timeout = (unsigned char)2;
20387#line 4371
20388 pthru->ars = (unsigned char)1;
20389#line 4372
20390 pthru->reqsenselen = (u8 )14U;
20391#line 4373
20392 pthru->islogical = (unsigned char)0;
20393 {
20394#line 4375
20395 __cil_tmp15 = adapter->flag;
20396#line 4375
20397 __cil_tmp16 = (long )__cil_tmp15;
20398#line 4375
20399 __cil_tmp17 = __cil_tmp16 & 134217728L;
20400#line 4375
20401 if (__cil_tmp17 == 0L) {
20402#line 4375
20403 pthru->channel = ch;
20404 } else {
20405#line 4375
20406 pthru->channel = (u8 )0U;
20407 }
20408 }
20409 {
20410#line 4377
20411 __cil_tmp18 = adapter->flag;
20412#line 4377
20413 __cil_tmp19 = (long )__cil_tmp18;
20414#line 4377
20415 __cil_tmp20 = __cil_tmp19 & 134217728L;
20416#line 4377
20417 if (__cil_tmp20 != 0L) {
20418#line 4377
20419 __cil_tmp21 = (signed char )tgt;
20420#line 4377
20421 __cil_tmp22 = (int )__cil_tmp21;
20422#line 4377
20423 __cil_tmp23 = (int )ch;
20424#line 4377
20425 __cil_tmp24 = __cil_tmp23 << 4;
20426#line 4377
20427 __cil_tmp25 = (signed char )__cil_tmp24;
20428#line 4377
20429 __cil_tmp26 = (int )__cil_tmp25;
20430#line 4377
20431 __cil_tmp27 = __cil_tmp26 | __cil_tmp22;
20432#line 4377
20433 pthru->target = (u8 )__cil_tmp27;
20434 } else {
20435#line 4377
20436 pthru->target = tgt;
20437 }
20438 }
20439 {
20440#line 4379
20441 pthru->cdblen = (u8 )6U;
20442#line 4381
20443 pthru->cdb[0] = (u8 )18U;
20444#line 4382
20445 pthru->cdb[1] = (u8 )0U;
20446#line 4383
20447 pthru->cdb[2] = (u8 )0U;
20448#line 4384
20449 pthru->cdb[3] = (u8 )0U;
20450#line 4385
20451 pthru->cdb[4] = (u8 )255U;
20452#line 4386
20453 pthru->cdb[5] = (u8 )0U;
20454#line 4389
20455 pthru->dataxferaddr = (unsigned int )buf_dma_handle;
20456#line 4390
20457 pthru->dataxferlen = 256U;
20458#line 4392
20459 __cil_tmp28 = (void *)(& mc);
20460#line 4392
20461 memset(__cil_tmp28, 0, 18UL);
20462#line 4394
20463 mc.cmd = (u8 )3U;
20464#line 4395
20465 mc.xferaddr = (unsigned int )pthru_dma_handle;
20466#line 4397
20467 rval = mega_internal_command(adapter, & mc, pthru);
20468#line 4399
20469 __cil_tmp29 = (void *)pthru;
20470#line 4399
20471 pci_free_consistent(pdev, 60UL, __cil_tmp29, pthru_dma_handle);
20472#line 4402
20473 free_local_pdev(pdev);
20474 }
20475#line 4404
20476 return (rval);
20477}
20478}
20479#line 4424 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20480static int mega_internal_command(adapter_t *adapter , megacmd_t *mc , mega_passthru *pthru )
20481{ Scsi_Cmnd *scmd ;
20482 struct scsi_device *sdev ;
20483 scb_t *scb ;
20484 int rval ;
20485 struct scsi_cmnd *tmp ;
20486 void *tmp___0 ;
20487 size_t __len ;
20488 void *__ret ;
20489 Scsi_Cmnd *__cil_tmp12 ;
20490 unsigned long __cil_tmp13 ;
20491 unsigned long __cil_tmp14 ;
20492 struct mutex *__cil_tmp15 ;
20493 void *__cil_tmp16 ;
20494 unsigned char (*__cil_tmp17)[16U] ;
20495 void *__cil_tmp18 ;
20496 unsigned char (*__cil_tmp19)[16U] ;
20497 struct scsi_device *__cil_tmp20 ;
20498 unsigned char *__cil_tmp21 ;
20499 u32 __cil_tmp22 ;
20500 u8 (*__cil_tmp23)[66U] ;
20501 void *__cil_tmp24 ;
20502 void const *__cil_tmp25 ;
20503 u8 (*__cil_tmp26)[66U] ;
20504 void *__cil_tmp27 ;
20505 void const *__cil_tmp28 ;
20506 u8 __cil_tmp29 ;
20507 unsigned int __cil_tmp30 ;
20508 struct completion *__cil_tmp31 ;
20509 int __cil_tmp32 ;
20510 void const *__cil_tmp33 ;
20511 int __cil_tmp34 ;
20512 u8 __cil_tmp35 ;
20513 int __cil_tmp36 ;
20514 u8 __cil_tmp37 ;
20515 int __cil_tmp38 ;
20516 u8 __cil_tmp39 ;
20517 int __cil_tmp40 ;
20518 int __cil_tmp41 ;
20519 struct mutex *__cil_tmp42 ;
20520
20521 {
20522 {
20523#line 4431
20524 tmp = scsi_allocate_command(208U);
20525#line 4431
20526 scmd = tmp;
20527 }
20528 {
20529#line 4432
20530 __cil_tmp12 = (Scsi_Cmnd *)0;
20531#line 4432
20532 __cil_tmp13 = (unsigned long )__cil_tmp12;
20533#line 4432
20534 __cil_tmp14 = (unsigned long )scmd;
20535#line 4432
20536 if (__cil_tmp14 == __cil_tmp13) {
20537#line 4433
20538 return (-12);
20539 } else {
20540
20541 }
20542 }
20543 {
20544#line 4440
20545 __cil_tmp15 = & adapter->int_mtx;
20546#line 4440
20547 mutex_lock_nested(__cil_tmp15, 0U);
20548#line 4442
20549 scb = & adapter->int_scb;
20550#line 4443
20551 __cil_tmp16 = (void *)scb;
20552#line 4443
20553 memset(__cil_tmp16, 0, 184UL);
20554#line 4445
20555 tmp___0 = kzalloc(2832UL, 208U);
20556#line 4445
20557 sdev = (struct scsi_device *)tmp___0;
20558#line 4446
20559 scmd->device = sdev;
20560#line 4448
20561 __cil_tmp17 = & adapter->int_cdb;
20562#line 4448
20563 __cil_tmp18 = (void *)__cil_tmp17;
20564#line 4448
20565 memset(__cil_tmp18, 0, 16UL);
20566#line 4449
20567 __cil_tmp19 = & adapter->int_cdb;
20568#line 4449
20569 scmd->cmnd = (unsigned char *)__cil_tmp19;
20570#line 4450
20571 __cil_tmp20 = scmd->device;
20572#line 4450
20573 __cil_tmp20->host = adapter->host;
20574#line 4451
20575 scmd->host_scribble = (unsigned char *)scb;
20576#line 4452
20577 __cil_tmp21 = scmd->cmnd;
20578#line 4452
20579 *__cil_tmp21 = (unsigned char)225;
20580#line 4454
20581 __cil_tmp22 = scb->state;
20582#line 4454
20583 scb->state = __cil_tmp22 | 1U;
20584#line 4455
20585 scb->cmd = scmd;
20586#line 4457
20587 __len = 18UL;
20588 }
20589#line 4457
20590 if (__len > 63UL) {
20591 {
20592#line 4457
20593 __cil_tmp23 = & scb->raw_mbox;
20594#line 4457
20595 __cil_tmp24 = (void *)__cil_tmp23;
20596#line 4457
20597 __cil_tmp25 = (void const *)mc;
20598#line 4457
20599 __ret = __memcpy(__cil_tmp24, __cil_tmp25, __len);
20600 }
20601 } else {
20602 {
20603#line 4457
20604 __cil_tmp26 = & scb->raw_mbox;
20605#line 4457
20606 __cil_tmp27 = (void *)__cil_tmp26;
20607#line 4457
20608 __cil_tmp28 = (void const *)mc;
20609#line 4457
20610 __ret = __builtin_memcpy(__cil_tmp27, __cil_tmp28, __len);
20611 }
20612 }
20613 {
20614#line 4462
20615 __cil_tmp29 = mc->cmd;
20616#line 4462
20617 __cil_tmp30 = (unsigned int )__cil_tmp29;
20618#line 4462
20619 if (__cil_tmp30 == 3U) {
20620#line 4464
20621 scb->pthru = pthru;
20622 } else {
20623
20624 }
20625 }
20626 {
20627#line 4467
20628 scb->idx = 127;
20629#line 4469
20630 megaraid_queue_lck(scmd, & mega_internal_done);
20631#line 4471
20632 __cil_tmp31 = & adapter->int_waitq;
20633#line 4471
20634 wait_for_completion(__cil_tmp31);
20635#line 4473
20636 rval = scmd->result;
20637#line 4474
20638 __cil_tmp32 = scmd->result;
20639#line 4474
20640 mc->status = (u8 )__cil_tmp32;
20641#line 4475
20642 __cil_tmp33 = (void const *)sdev;
20643#line 4475
20644 kfree(__cil_tmp33);
20645 }
20646 {
20647#line 4481
20648 __cil_tmp34 = scmd->result;
20649#line 4481
20650 if (__cil_tmp34 != 0) {
20651#line 4481
20652 if (trace_level != 0) {
20653 {
20654#line 4482
20655 __cil_tmp35 = mc->cmd;
20656#line 4482
20657 __cil_tmp36 = (int )__cil_tmp35;
20658#line 4482
20659 __cil_tmp37 = mc->opcode;
20660#line 4482
20661 __cil_tmp38 = (int )__cil_tmp37;
20662#line 4482
20663 __cil_tmp39 = mc->subopcode;
20664#line 4482
20665 __cil_tmp40 = (int )__cil_tmp39;
20666#line 4482
20667 __cil_tmp41 = scmd->result;
20668#line 4482
20669 printk("megaraid: cmd [%x, %x, %x] status:[%x]\n", __cil_tmp36, __cil_tmp38,
20670 __cil_tmp40, __cil_tmp41);
20671 }
20672 } else {
20673
20674 }
20675 } else {
20676
20677 }
20678 }
20679 {
20680#line 4486
20681 __cil_tmp42 = & adapter->int_mtx;
20682#line 4486
20683 mutex_unlock(__cil_tmp42);
20684#line 4488
20685 scsi_free_command(208U, scmd);
20686 }
20687#line 4490
20688 return (rval);
20689}
20690}
20691#line 4501 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20692static void mega_internal_done(Scsi_Cmnd *scmd )
20693{ adapter_t *adapter ;
20694 struct scsi_device *__cil_tmp3 ;
20695 struct Scsi_Host *__cil_tmp4 ;
20696 unsigned long (*__cil_tmp5)[0U] ;
20697 struct completion *__cil_tmp6 ;
20698
20699 {
20700 {
20701#line 4505
20702 __cil_tmp3 = scmd->device;
20703#line 4505
20704 __cil_tmp4 = __cil_tmp3->host;
20705#line 4505
20706 __cil_tmp5 = & __cil_tmp4->hostdata;
20707#line 4505
20708 adapter = (adapter_t *)__cil_tmp5;
20709#line 4507
20710 __cil_tmp6 = & adapter->int_waitq;
20711#line 4507
20712 complete(__cil_tmp6);
20713 }
20714#line 4508
20715 return;
20716}
20717}
20718#line 4512 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20719static struct scsi_host_template megaraid_template =
20720#line 4512
20721 {& __this_module, "MegaRAID", (int (*)(struct scsi_host_template * ))0, (int (*)(struct Scsi_Host * ))0,
20722 & megaraid_info, (int (*)(struct scsi_device * , int , void * ))0, (int (*)(struct scsi_device * ,
20723 int ,
20724 void * ))0,
20725 & megaraid_queue, (int (*)(struct scsi_cmnd * , void (*)(struct scsi_cmnd * ) ))0,
20726 & megaraid_abort, & megaraid_reset, (int (*)(struct scsi_cmnd * ))0, & megaraid_reset,
20727 & megaraid_reset, (int (*)(struct scsi_device * ))0, (int (*)(struct scsi_device * ))0,
20728 (void (*)(struct scsi_device * ))0, (int (*)(struct scsi_target * ))0, (void (*)(struct scsi_target * ))0,
20729 (int (*)(struct Scsi_Host * , unsigned long ))0, (void (*)(struct Scsi_Host * ))0,
20730 (int (*)(struct scsi_device * , int , int ))0, (int (*)(struct scsi_device * ,
20731 int ))0, & megaraid_biosparam,
20732 (void (*)(struct scsi_device * ))0, (int (*)(struct Scsi_Host * , char * , char ** ,
20733 off_t , int , int ))0, (enum blk_eh_timer_return (*)(struct scsi_cmnd * ))0,
20734 "megaraid_legacy", (struct proc_dir_entry *)0, 126, 7, (unsigned short)64, (unsigned short)0,
20735 (unsigned short)128, 0UL, (short)63, (unsigned char)0, (unsigned char)0, (unsigned char)0,
20736 (unsigned char)1, (unsigned char)0, (unsigned char)0, (unsigned char)0, 0U, (struct device_attribute **)0,
20737 (struct device_attribute **)0, {(struct list_head *)0, (struct list_head *)0},
20738 0ULL};
20739#line 4532 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
20740static int megaraid_probe_one(struct pci_dev *pdev , struct pci_device_id const *id )
20741{ struct Scsi_Host *host ;
20742 adapter_t *adapter ;
20743 unsigned long mega_baseport ;
20744 unsigned long tbase ;
20745 unsigned long flag ;
20746 u16 subsysid ;
20747 u16 subsysvid ;
20748 u8 pci_bus ;
20749 u8 pci_dev_func ;
20750 int irq ;
20751 int i ;
20752 int j ;
20753 int error ;
20754 int tmp ;
20755 u16 magic ;
20756 u32 magic64 ;
20757 struct resource *tmp___0 ;
20758 void *tmp___1 ;
20759 struct resource *tmp___2 ;
20760 struct lock_class_key __key ;
20761 void *tmp___3 ;
20762 void *tmp___4 ;
20763 irqreturn_t (*tmp___5)(int irq , void *devp ) ;
20764 int tmp___6 ;
20765 int tmp___7 ;
20766 int tmp___8 ;
20767 int tmp___9 ;
20768 int tmp___10 ;
20769 int tmp___11 ;
20770 int tmp___12 ;
20771 int tmp___13 ;
20772 int tmp___14 ;
20773 int tmp___15 ;
20774 struct lock_class_key __key___0 ;
20775 struct pci_bus *__cil_tmp37 ;
20776 unsigned int __cil_tmp38 ;
20777 unsigned short __cil_tmp39 ;
20778 unsigned int __cil_tmp40 ;
20779 unsigned short __cil_tmp41 ;
20780 unsigned int __cil_tmp42 ;
20781 unsigned short __cil_tmp43 ;
20782 unsigned int __cil_tmp44 ;
20783 unsigned int __cil_tmp45 ;
20784 unsigned int __cil_tmp46 ;
20785 kernel_ulong_t __cil_tmp47 ;
20786 unsigned long __cil_tmp48 ;
20787 unsigned long __cil_tmp49 ;
20788 __u32 __cil_tmp50 ;
20789 __u32 __cil_tmp51 ;
20790 int __cil_tmp52 ;
20791 int __cil_tmp53 ;
20792 int __cil_tmp54 ;
20793 int __cil_tmp55 ;
20794 int __cil_tmp56 ;
20795 int __cil_tmp57 ;
20796 resource_size_t __cil_tmp58 ;
20797 unsigned int __cil_tmp59 ;
20798 unsigned long __cil_tmp60 ;
20799 unsigned long __cil_tmp61 ;
20800 resource_size_t __cil_tmp62 ;
20801 struct resource *__cil_tmp63 ;
20802 unsigned long __cil_tmp64 ;
20803 unsigned long __cil_tmp65 ;
20804 resource_size_t __cil_tmp66 ;
20805 resource_size_t __cil_tmp67 ;
20806 struct resource *__cil_tmp68 ;
20807 unsigned long __cil_tmp69 ;
20808 unsigned long __cil_tmp70 ;
20809 struct Scsi_Host *__cil_tmp71 ;
20810 unsigned long __cil_tmp72 ;
20811 unsigned long __cil_tmp73 ;
20812 unsigned long (*__cil_tmp74)[0U] ;
20813 void *__cil_tmp75 ;
20814 unsigned int __cil_tmp76 ;
20815 unsigned long __cil_tmp77 ;
20816 struct list_head *__cil_tmp78 ;
20817 struct list_head *__cil_tmp79 ;
20818 struct list_head *__cil_tmp80 ;
20819 spinlock_t *__cil_tmp81 ;
20820 struct raw_spinlock *__cil_tmp82 ;
20821 struct Scsi_Host *__cil_tmp83 ;
20822 unsigned long __cil_tmp84 ;
20823 struct Scsi_Host *__cil_tmp85 ;
20824 struct Scsi_Host *__cil_tmp86 ;
20825 struct Scsi_Host *__cil_tmp87 ;
20826 struct Scsi_Host *__cil_tmp88 ;
20827 int __cil_tmp89 ;
20828 int __cil_tmp90 ;
20829 int __cil_tmp91 ;
20830 int __cil_tmp92 ;
20831 struct pci_dev *__cil_tmp93 ;
20832 dma_addr_t *__cil_tmp94 ;
20833 u8 *__cil_tmp95 ;
20834 unsigned long __cil_tmp96 ;
20835 u8 *__cil_tmp97 ;
20836 unsigned long __cil_tmp98 ;
20837 scb_t *__cil_tmp99 ;
20838 unsigned long __cil_tmp100 ;
20839 scb_t *__cil_tmp101 ;
20840 unsigned long __cil_tmp102 ;
20841 u32 __cil_tmp103 ;
20842 long __cil_tmp104 ;
20843 long __cil_tmp105 ;
20844 unsigned int __cil_tmp106 ;
20845 void *__cil_tmp107 ;
20846 unsigned int __cil_tmp108 ;
20847 unsigned int __cil_tmp109 ;
20848 u8 (*__cil_tmp110)[7U] ;
20849 char const *__cil_tmp111 ;
20850 u8 (*__cil_tmp112)[7U] ;
20851 char const *__cil_tmp113 ;
20852 unsigned int __cil_tmp114 ;
20853 unsigned int __cil_tmp115 ;
20854 unsigned int __cil_tmp116 ;
20855 u8 (*__cil_tmp117)[7U] ;
20856 char const *__cil_tmp118 ;
20857 u32 __cil_tmp119 ;
20858 u8 (*__cil_tmp120)[7U] ;
20859 char const *__cil_tmp121 ;
20860 u32 __cil_tmp122 ;
20861 u8 (*__cil_tmp123)[7U] ;
20862 char const *__cil_tmp124 ;
20863 u32 __cil_tmp125 ;
20864 int __cil_tmp126 ;
20865 u8 __cil_tmp127 ;
20866 int __cil_tmp128 ;
20867 int __cil_tmp129 ;
20868 atomic_t *__cil_tmp130 ;
20869 atomic_t *__cil_tmp131 ;
20870 __u32 __cil_tmp132 ;
20871 unsigned int __cil_tmp133 ;
20872 unsigned int __cil_tmp134 ;
20873 __u32 __cil_tmp135 ;
20874 int __cil_tmp136 ;
20875 int __cil_tmp137 ;
20876 int __cil_tmp138 ;
20877 int __cil_tmp139 ;
20878 int __cil_tmp140 ;
20879 int __cil_tmp141 ;
20880 u32 __cil_tmp142 ;
20881 long __cil_tmp143 ;
20882 long __cil_tmp144 ;
20883 struct mutex *__cil_tmp145 ;
20884 struct completion *__cil_tmp146 ;
20885 struct Scsi_Host *__cil_tmp147 ;
20886 int __cil_tmp148 ;
20887 int __cil_tmp149 ;
20888 void *__cil_tmp150 ;
20889 struct device *__cil_tmp151 ;
20890 struct pci_dev *__cil_tmp152 ;
20891 mbox64_t *__cil_tmp153 ;
20892 void *__cil_tmp154 ;
20893 dma_addr_t __cil_tmp155 ;
20894 struct Scsi_Host *__cil_tmp156 ;
20895 unsigned int __cil_tmp157 ;
20896 void *__cil_tmp158 ;
20897 scb_t *__cil_tmp159 ;
20898 void const *__cil_tmp160 ;
20899 struct pci_dev *__cil_tmp161 ;
20900 u8 *__cil_tmp162 ;
20901 void *__cil_tmp163 ;
20902 dma_addr_t __cil_tmp164 ;
20903 unsigned long __cil_tmp165 ;
20904 void volatile *__cil_tmp166 ;
20905 unsigned long __cil_tmp167 ;
20906 resource_size_t __cil_tmp168 ;
20907 resource_size_t __cil_tmp169 ;
20908
20909 {
20910 {
20911#line 4536
20912 flag = 0UL;
20913#line 4540
20914 error = -19;
20915#line 4542
20916 tmp = pci_enable_device(pdev);
20917 }
20918#line 4542
20919 if (tmp != 0) {
20920#line 4543
20921 goto out;
20922 } else {
20923
20924 }
20925 {
20926#line 4544
20927 pci_set_master(pdev);
20928#line 4546
20929 __cil_tmp37 = pdev->bus;
20930#line 4546
20931 pci_bus = __cil_tmp37->number;
20932#line 4547
20933 __cil_tmp38 = pdev->devfn;
20934#line 4547
20935 pci_dev_func = (u8 )__cil_tmp38;
20936 }
20937 {
20938#line 4553
20939 __cil_tmp39 = pdev->vendor;
20940#line 4553
20941 __cil_tmp40 = (unsigned int )__cil_tmp39;
20942#line 4553
20943 if (__cil_tmp40 == 32902U) {
20944 {
20945#line 4559
20946 __cil_tmp41 = pdev->subsystem_vendor;
20947#line 4559
20948 __cil_tmp42 = (unsigned int )__cil_tmp41;
20949#line 4559
20950 if (__cil_tmp42 == 3601U) {
20951 {
20952#line 4559
20953 __cil_tmp43 = pdev->subsystem_device;
20954#line 4559
20955 __cil_tmp44 = (unsigned int )__cil_tmp43;
20956#line 4559
20957 if (__cil_tmp44 == 49152U) {
20958#line 4561
20959 return (-19);
20960 } else {
20961
20962 }
20963 }
20964 } else {
20965
20966 }
20967 }
20968 {
20969#line 4563
20970 pci_read_config_word(pdev, 160, & magic);
20971 }
20972 {
20973#line 4564
20974 __cil_tmp45 = (unsigned int )magic;
20975#line 4564
20976 if (__cil_tmp45 != 52428U) {
20977 {
20978#line 4564
20979 __cil_tmp46 = (unsigned int )magic;
20980#line 4564
20981 if (__cil_tmp46 != 13124U) {
20982#line 4565
20983 return (-19);
20984 } else {
20985
20986 }
20987 }
20988 } else {
20989
20990 }
20991 }
20992 } else {
20993
20994 }
20995 }
20996 {
20997#line 4573
20998 __cil_tmp47 = id->driver_data;
20999#line 4573
21000 __cil_tmp48 = (unsigned long )__cil_tmp47;
21001#line 4573
21002 __cil_tmp49 = __cil_tmp48 & 67108864UL;
21003#line 4573
21004 if (__cil_tmp49 != 0UL) {
21005#line 4574
21006 flag = flag | 67108864UL;
21007 } else {
21008 {
21009#line 4578
21010 pci_read_config_dword(pdev, 164, & magic64);
21011 }
21012#line 4579
21013 if (magic64 == 665U) {
21014#line 4580
21015 flag = flag | 67108864UL;
21016 } else {
21017
21018 }
21019 }
21020 }
21021 {
21022#line 4583
21023 subsysvid = pdev->subsystem_vendor;
21024#line 4584
21025 subsysid = pdev->subsystem_device;
21026#line 4586
21027 __cil_tmp50 = id->vendor;
21028#line 4586
21029 __cil_tmp51 = id->device;
21030#line 4586
21031 __cil_tmp52 = (int )pci_bus;
21032#line 4586
21033 printk("<5>megaraid: found 0x%4.04x:0x%4.04x:bus %d:", __cil_tmp50, __cil_tmp51,
21034 __cil_tmp52);
21035#line 4589
21036 __cil_tmp53 = (int )pci_dev_func;
21037#line 4589
21038 __cil_tmp54 = __cil_tmp53 >> 3;
21039#line 4589
21040 __cil_tmp55 = __cil_tmp54 & 31;
21041#line 4589
21042 __cil_tmp56 = (int )pci_dev_func;
21043#line 4589
21044 __cil_tmp57 = __cil_tmp56 & 7;
21045#line 4589
21046 printk("slot %d:func %d\n", __cil_tmp55, __cil_tmp57);
21047#line 4593
21048 __cil_tmp58 = pdev->resource[0].start;
21049#line 4593
21050 mega_baseport = (unsigned long )__cil_tmp58;
21051#line 4594
21052 __cil_tmp59 = pdev->irq;
21053#line 4594
21054 irq = (int )__cil_tmp59;
21055#line 4596
21056 tbase = mega_baseport;
21057 }
21058 {
21059#line 4597
21060 __cil_tmp60 = pdev->resource[0].flags;
21061#line 4597
21062 __cil_tmp61 = __cil_tmp60 & 512UL;
21063#line 4597
21064 if (__cil_tmp61 != 0UL) {
21065 {
21066#line 4598
21067 flag = flag | 536870912UL;
21068#line 4600
21069 __cil_tmp62 = (resource_size_t )mega_baseport;
21070#line 4600
21071 tmp___0 = __request_region(& iomem_resource, __cil_tmp62, 128ULL, "megaraid",
21072 0);
21073 }
21074 {
21075#line 4600
21076 __cil_tmp63 = (struct resource *)0;
21077#line 4600
21078 __cil_tmp64 = (unsigned long )__cil_tmp63;
21079#line 4600
21080 __cil_tmp65 = (unsigned long )tmp___0;
21081#line 4600
21082 if (__cil_tmp65 == __cil_tmp64) {
21083 {
21084#line 4601
21085 printk("<4>megaraid: mem region busy!\n");
21086 }
21087#line 4602
21088 goto out_disable_device;
21089 } else {
21090
21091 }
21092 }
21093 {
21094#line 4605
21095 __cil_tmp66 = (resource_size_t )mega_baseport;
21096#line 4605
21097 tmp___1 = ioremap(__cil_tmp66, 128UL);
21098#line 4605
21099 mega_baseport = (unsigned long )tmp___1;
21100 }
21101#line 4606
21102 if (mega_baseport == 0UL) {
21103 {
21104#line 4607
21105 printk("<4>megaraid: could not map hba memory\n");
21106 }
21107#line 4609
21108 goto out_release_region;
21109 } else {
21110
21111 }
21112 } else {
21113 {
21114#line 4612
21115 flag = flag | 268435456UL;
21116#line 4613
21117 mega_baseport = mega_baseport + 16UL;
21118#line 4615
21119 __cil_tmp67 = (resource_size_t )mega_baseport;
21120#line 4615
21121 tmp___2 = __request_region(& ioport_resource, __cil_tmp67, 16ULL, "megaraid",
21122 0);
21123 }
21124 {
21125#line 4615
21126 __cil_tmp68 = (struct resource *)0;
21127#line 4615
21128 __cil_tmp69 = (unsigned long )__cil_tmp68;
21129#line 4615
21130 __cil_tmp70 = (unsigned long )tmp___2;
21131#line 4615
21132 if (__cil_tmp70 == __cil_tmp69) {
21133#line 4616
21134 goto out_disable_device;
21135 } else {
21136
21137 }
21138 }
21139 }
21140 }
21141 {
21142#line 4620
21143 host = scsi_host_alloc(& megaraid_template, 1928);
21144 }
21145 {
21146#line 4621
21147 __cil_tmp71 = (struct Scsi_Host *)0;
21148#line 4621
21149 __cil_tmp72 = (unsigned long )__cil_tmp71;
21150#line 4621
21151 __cil_tmp73 = (unsigned long )host;
21152#line 4621
21153 if (__cil_tmp73 == __cil_tmp72) {
21154#line 4622
21155 goto out_iounmap;
21156 } else {
21157
21158 }
21159 }
21160 {
21161#line 4624
21162 __cil_tmp74 = & host->hostdata;
21163#line 4624
21164 adapter = (adapter_t *)__cil_tmp74;
21165#line 4625
21166 __cil_tmp75 = (void *)adapter;
21167#line 4625
21168 memset(__cil_tmp75, 0, 1928UL);
21169#line 4627
21170 __cil_tmp76 = host->host_no;
21171#line 4627
21172 printk("<5>scsi%d:Found MegaRAID controller at 0x%lx, IRQ:%d\n", __cil_tmp76, mega_baseport,
21173 irq);
21174#line 4631
21175 adapter->base = mega_baseport;
21176 }
21177 {
21178#line 4632
21179 __cil_tmp77 = flag & 536870912UL;
21180#line 4632
21181 if (__cil_tmp77 != 0UL) {
21182#line 4633
21183 adapter->mmio_base = (void *)mega_baseport;
21184 } else {
21185
21186 }
21187 }
21188 {
21189#line 4635
21190 __cil_tmp78 = & adapter->free_list;
21191#line 4635
21192 INIT_LIST_HEAD(__cil_tmp78);
21193#line 4636
21194 __cil_tmp79 = & adapter->pending_list;
21195#line 4636
21196 INIT_LIST_HEAD(__cil_tmp79);
21197#line 4637
21198 __cil_tmp80 = & adapter->completed_list;
21199#line 4637
21200 INIT_LIST_HEAD(__cil_tmp80);
21201#line 4639
21202 adapter->flag = (u32 )flag;
21203#line 4640
21204 __cil_tmp81 = & adapter->lock;
21205#line 4640
21206 spinlock_check(__cil_tmp81);
21207#line 4640
21208 __cil_tmp82 = & adapter->lock.ldv_6060.rlock;
21209#line 4640
21210 __raw_spin_lock_init(__cil_tmp82, "&(&adapter->lock)->rlock", & __key);
21211#line 4642
21212 host->cmd_per_lun = (short )max_cmd_per_lun;
21213#line 4643
21214 host->max_sectors = max_sectors_per_io;
21215#line 4645
21216 adapter->dev = pdev;
21217#line 4646
21218 adapter->host = host;
21219#line 4648
21220 __cil_tmp83 = adapter->host;
21221#line 4648
21222 __cil_tmp83->irq = (unsigned int )irq;
21223 }
21224 {
21225#line 4650
21226 __cil_tmp84 = flag & 536870912UL;
21227#line 4650
21228 if (__cil_tmp84 != 0UL) {
21229#line 4651
21230 __cil_tmp85 = adapter->host;
21231#line 4651
21232 __cil_tmp85->base = tbase;
21233 } else {
21234#line 4653
21235 __cil_tmp86 = adapter->host;
21236#line 4653
21237 __cil_tmp86->io_port = tbase;
21238#line 4654
21239 __cil_tmp87 = adapter->host;
21240#line 4654
21241 __cil_tmp87->n_io_port = (unsigned char)16;
21242 }
21243 }
21244 {
21245#line 4657
21246 __cil_tmp88 = adapter->host;
21247#line 4657
21248 __cil_tmp89 = (int )pci_dev_func;
21249#line 4657
21250 __cil_tmp90 = (int )pci_bus;
21251#line 4657
21252 __cil_tmp91 = __cil_tmp90 << 8;
21253#line 4657
21254 __cil_tmp92 = __cil_tmp91 | __cil_tmp89;
21255#line 4657
21256 __cil_tmp88->unique_id = (unsigned int )__cil_tmp92;
21257#line 4662
21258 __cil_tmp93 = adapter->dev;
21259#line 4662
21260 __cil_tmp94 = & adapter->buf_dma_handle;
21261#line 4662
21262 tmp___3 = pci_alloc_consistent(__cil_tmp93, 2048UL, __cil_tmp94);
21263#line 4662
21264 adapter->mega_buffer = (u8 *)tmp___3;
21265 }
21266 {
21267#line 4664
21268 __cil_tmp95 = (u8 *)0;
21269#line 4664
21270 __cil_tmp96 = (unsigned long )__cil_tmp95;
21271#line 4664
21272 __cil_tmp97 = adapter->mega_buffer;
21273#line 4664
21274 __cil_tmp98 = (unsigned long )__cil_tmp97;
21275#line 4664
21276 if (__cil_tmp98 == __cil_tmp96) {
21277 {
21278#line 4665
21279 printk("<4>megaraid: out of RAM.\n");
21280 }
21281#line 4666
21282 goto out_host_put;
21283 } else {
21284
21285 }
21286 }
21287 {
21288#line 4669
21289 tmp___4 = kmalloc(23184UL, 208U);
21290#line 4669
21291 adapter->scb_list = (scb_t *)tmp___4;
21292 }
21293 {
21294#line 4670
21295 __cil_tmp99 = (scb_t *)0;
21296#line 4670
21297 __cil_tmp100 = (unsigned long )__cil_tmp99;
21298#line 4670
21299 __cil_tmp101 = adapter->scb_list;
21300#line 4670
21301 __cil_tmp102 = (unsigned long )__cil_tmp101;
21302#line 4670
21303 if (__cil_tmp102 == __cil_tmp100) {
21304 {
21305#line 4671
21306 printk("<4>megaraid: out of RAM.\n");
21307 }
21308#line 4672
21309 goto out_free_cmd_buffer;
21310 } else {
21311
21312 }
21313 }
21314 {
21315#line 4675
21316 __cil_tmp103 = adapter->flag;
21317#line 4675
21318 __cil_tmp104 = (long )__cil_tmp103;
21319#line 4675
21320 __cil_tmp105 = __cil_tmp104 & 536870912L;
21321#line 4675
21322 if (__cil_tmp105 != 0L) {
21323#line 4675
21324 tmp___5 = & megaraid_isr_memmapped;
21325 } else {
21326#line 4675
21327 tmp___5 = & megaraid_isr_iomapped;
21328 }
21329 }
21330 {
21331#line 4675
21332 __cil_tmp106 = (unsigned int )irq;
21333#line 4675
21334 __cil_tmp107 = (void *)adapter;
21335#line 4675
21336 tmp___6 = request_irq(__cil_tmp106, tmp___5, 128UL, "megaraid", __cil_tmp107);
21337 }
21338#line 4675
21339 if (tmp___6 != 0) {
21340 {
21341#line 4678
21342 printk("<4>megaraid: Couldn\'t register IRQ %d!\n", irq);
21343 }
21344#line 4680
21345 goto out_free_scb_list;
21346 } else {
21347
21348 }
21349 {
21350#line 4683
21351 tmp___7 = mega_setup_mailbox(adapter);
21352 }
21353#line 4683
21354 if (tmp___7 != 0) {
21355#line 4684
21356 goto out_free_irq;
21357 } else {
21358
21359 }
21360 {
21361#line 4686
21362 tmp___8 = mega_query_adapter(adapter);
21363 }
21364#line 4686
21365 if (tmp___8 != 0) {
21366#line 4687
21367 goto out_free_mbox;
21368 } else {
21369
21370 }
21371 {
21372#line 4692
21373 __cil_tmp108 = (unsigned int )subsysid;
21374#line 4692
21375 if (__cil_tmp108 == 4369U) {
21376 {
21377#line 4692
21378 __cil_tmp109 = (unsigned int )subsysvid;
21379#line 4692
21380 if (__cil_tmp109 == 4369U) {
21381 {
21382#line 4696
21383 __cil_tmp110 = & adapter->fw_version;
21384#line 4696
21385 __cil_tmp111 = (char const *)__cil_tmp110;
21386#line 4696
21387 tmp___9 = strcmp(__cil_tmp111, "3.00");
21388 }
21389#line 4696
21390 if (tmp___9 == 0) {
21391 {
21392#line 4699
21393 printk("<4>megaraid: Your card is a Dell PERC 2/SC RAID controller with firmware\nmegaraid: 3.00 or 3.01. This driver is known to have corruption issues\nmegaraid: with those firmware versions on this specific card. In order\nmegaraid: to protect your data, please upgrade your firmware to version\nmegaraid: 3.10 or later, available from the Dell Technical Support web\nmegaraid: site at\nhttp://support.dell.com/us/en/filelib/download/index.asp?fileid=2940\n");
21394 }
21395 } else {
21396 {
21397#line 4696
21398 __cil_tmp112 = & adapter->fw_version;
21399#line 4696
21400 __cil_tmp113 = (char const *)__cil_tmp112;
21401#line 4696
21402 tmp___10 = strcmp(__cil_tmp113, "3.01");
21403 }
21404#line 4696
21405 if (tmp___10 == 0) {
21406 {
21407#line 4699
21408 printk("<4>megaraid: Your card is a Dell PERC 2/SC RAID controller with firmware\nmegaraid: 3.00 or 3.01. This driver is known to have corruption issues\nmegaraid: with those firmware versions on this specific card. In order\nmegaraid: to protect your data, please upgrade your firmware to version\nmegaraid: 3.10 or later, available from the Dell Technical Support web\nmegaraid: site at\nhttp://support.dell.com/us/en/filelib/download/index.asp?fileid=2940\n");
21409 }
21410 } else {
21411
21412 }
21413 }
21414 } else {
21415
21416 }
21417 }
21418 } else {
21419
21420 }
21421 }
21422 {
21423#line 4724
21424 __cil_tmp114 = (unsigned int )subsysvid;
21425#line 4724
21426 if (__cil_tmp114 == 4156U) {
21427 {
21428#line 4724
21429 __cil_tmp115 = (unsigned int )subsysid;
21430#line 4724
21431 if (__cil_tmp115 == 24807U) {
21432#line 4724
21433 goto _L;
21434 } else {
21435 {
21436#line 4724
21437 __cil_tmp116 = (unsigned int )subsysid;
21438#line 4724
21439 if (__cil_tmp116 == 24808U) {
21440 _L:
21441 {
21442#line 4729
21443 __cil_tmp117 = & adapter->fw_version;
21444#line 4729
21445 __cil_tmp118 = (char const *)__cil_tmp117;
21446#line 4729
21447 tmp___11 = strcmp(__cil_tmp118, "H01.07");
21448 }
21449#line 4729
21450 if (tmp___11 == 0) {
21451 {
21452#line 4732
21453 printk("<4>megaraid: Firmware H.01.07, H.01.08, and H.01.09 on 1M/2M controllers\nmegaraid: do not support 64 bit addressing.\nmegaraid: DISABLING 64 bit support.\n");
21454#line 4739
21455 __cil_tmp119 = adapter->flag;
21456#line 4739
21457 adapter->flag = __cil_tmp119 & 4227858431U;
21458 }
21459 } else {
21460 {
21461#line 4729
21462 __cil_tmp120 = & adapter->fw_version;
21463#line 4729
21464 __cil_tmp121 = (char const *)__cil_tmp120;
21465#line 4729
21466 tmp___12 = strcmp(__cil_tmp121, "H01.08");
21467 }
21468#line 4729
21469 if (tmp___12 == 0) {
21470 {
21471#line 4732
21472 printk("<4>megaraid: Firmware H.01.07, H.01.08, and H.01.09 on 1M/2M controllers\nmegaraid: do not support 64 bit addressing.\nmegaraid: DISABLING 64 bit support.\n");
21473#line 4739
21474 __cil_tmp122 = adapter->flag;
21475#line 4739
21476 adapter->flag = __cil_tmp122 & 4227858431U;
21477 }
21478 } else {
21479 {
21480#line 4729
21481 __cil_tmp123 = & adapter->fw_version;
21482#line 4729
21483 __cil_tmp124 = (char const *)__cil_tmp123;
21484#line 4729
21485 tmp___13 = strcmp(__cil_tmp124, "H01.09");
21486 }
21487#line 4729
21488 if (tmp___13 == 0) {
21489 {
21490#line 4732
21491 printk("<4>megaraid: Firmware H.01.07, H.01.08, and H.01.09 on 1M/2M controllers\nmegaraid: do not support 64 bit addressing.\nmegaraid: DISABLING 64 bit support.\n");
21492#line 4739
21493 __cil_tmp125 = adapter->flag;
21494#line 4739
21495 adapter->flag = __cil_tmp125 & 4227858431U;
21496 }
21497 } else {
21498
21499 }
21500 }
21501 }
21502 } else {
21503
21504 }
21505 }
21506 }
21507 }
21508 } else {
21509
21510 }
21511 }
21512 {
21513#line 4743
21514 tmp___14 = mega_is_bios_enabled(adapter);
21515 }
21516#line 4743
21517 if (tmp___14 != 0) {
21518#line 4744
21519 mega_hbas[hba_count].is_bios_enabled = 1;
21520 } else {
21521
21522 }
21523 {
21524#line 4745
21525 mega_hbas[hba_count].hostdata_addr = adapter;
21526#line 4751
21527 mega_enum_raid_scsi(adapter);
21528#line 4761
21529 mega_get_boot_drv(adapter);
21530 }
21531 {
21532#line 4763
21533 __cil_tmp126 = adapter->boot_pdrv_enabled;
21534#line 4763
21535 if (__cil_tmp126 != 0) {
21536#line 4764
21537 __cil_tmp127 = adapter->product_info.nchannels;
21538#line 4764
21539 j = (int )__cil_tmp127;
21540#line 4765
21541 i = 0;
21542#line 4765
21543 goto ldv_32806;
21544 ldv_32805:
21545#line 4766
21546 adapter->logdrv_chan[i] = (u8 )0U;
21547#line 4765
21548 i = i + 1;
21549 ldv_32806: ;
21550#line 4765
21551 if (i < j) {
21552#line 4766
21553 goto ldv_32805;
21554 } else {
21555#line 4768
21556 goto ldv_32807;
21557 }
21558 ldv_32807:
21559#line 4767
21560 i = j;
21561#line 4767
21562 goto ldv_32809;
21563 ldv_32808:
21564#line 4768
21565 adapter->logdrv_chan[i] = (u8 )1U;
21566#line 4767
21567 i = i + 1;
21568 ldv_32809: ;
21569 {
21570#line 4767
21571 __cil_tmp128 = j + 4;
21572#line 4767
21573 if (__cil_tmp128 > i) {
21574#line 4768
21575 goto ldv_32808;
21576 } else {
21577#line 4770
21578 goto ldv_32810;
21579 }
21580 }
21581 ldv_32810: ;
21582 } else {
21583#line 4770
21584 i = 0;
21585#line 4770
21586 goto ldv_32812;
21587 ldv_32811:
21588#line 4771
21589 adapter->logdrv_chan[i] = (u8 )1U;
21590#line 4770
21591 i = i + 1;
21592 ldv_32812: ;
21593#line 4770
21594 if (i <= 3) {
21595#line 4771
21596 goto ldv_32811;
21597 } else {
21598#line 4773
21599 goto ldv_32813;
21600 }
21601 ldv_32813:
21602#line 4772
21603 i = 4;
21604#line 4772
21605 goto ldv_32815;
21606 ldv_32814:
21607#line 4773
21608 adapter->logdrv_chan[i] = (u8 )0U;
21609#line 4772
21610 i = i + 1;
21611 ldv_32815: ;
21612#line 4772
21613 if (i <= 8) {
21614#line 4773
21615 goto ldv_32814;
21616 } else {
21617#line 4775
21618 goto ldv_32816;
21619 }
21620 ldv_32816:
21621#line 4774
21622 __cil_tmp129 = adapter->mega_ch_class;
21623#line 4774
21624 adapter->mega_ch_class = __cil_tmp129 << 4;
21625 }
21626 }
21627 {
21628#line 4781
21629 adapter->read_ldidmap = 0;
21630#line 4783
21631 adapter->support_random_del = mega_support_random_del(adapter);
21632#line 4786
21633 tmp___15 = mega_init_scb(adapter);
21634 }
21635#line 4786
21636 if (tmp___15 != 0) {
21637#line 4787
21638 goto out_free_mbox;
21639 } else {
21640
21641 }
21642 {
21643#line 4792
21644 __cil_tmp130 = & adapter->pend_cmds;
21645#line 4792
21646 atomic_set(__cil_tmp130, 0);
21647#line 4797
21648 __cil_tmp131 = & adapter->quiescent;
21649#line 4797
21650 atomic_set(__cil_tmp131, 0);
21651#line 4799
21652 hba_soft_state[hba_count] = adapter;
21653#line 4806
21654 i = hba_count;
21655#line 4808
21656 mcontroller[i].base = (u64 )mega_baseport;
21657#line 4809
21658 mcontroller[i].irq = (u8 )irq;
21659#line 4810
21660 mcontroller[i].numldrv = adapter->numldrv;
21661#line 4811
21662 mcontroller[i].pcibus = pci_bus;
21663#line 4812
21664 __cil_tmp132 = id->device;
21665#line 4812
21666 mcontroller[i].pcidev = (u16 )__cil_tmp132;
21667#line 4813
21668 __cil_tmp133 = (unsigned int )pci_dev_func;
21669#line 4813
21670 __cil_tmp134 = __cil_tmp133 & 7U;
21671#line 4813
21672 mcontroller[i].pcifun = (u8 )__cil_tmp134;
21673#line 4814
21674 mcontroller[i].pciid = (u16 )65535U;
21675#line 4815
21676 __cil_tmp135 = id->vendor;
21677#line 4815
21678 mcontroller[i].pcivendor = (u16 )__cil_tmp135;
21679#line 4816
21680 __cil_tmp136 = (int )pci_dev_func;
21681#line 4816
21682 __cil_tmp137 = __cil_tmp136 >> 3;
21683#line 4816
21684 mcontroller[i].pcislot = (u8 )__cil_tmp137;
21685#line 4817
21686 __cil_tmp138 = (int )pci_dev_func;
21687#line 4817
21688 __cil_tmp139 = (int )pci_bus;
21689#line 4817
21690 __cil_tmp140 = __cil_tmp139 << 8;
21691#line 4817
21692 __cil_tmp141 = __cil_tmp140 | __cil_tmp138;
21693#line 4817
21694 mcontroller[i].uid = (u32 )__cil_tmp141;
21695 }
21696 {
21697#line 4821
21698 __cil_tmp142 = adapter->flag;
21699#line 4821
21700 __cil_tmp143 = (long )__cil_tmp142;
21701#line 4821
21702 __cil_tmp144 = __cil_tmp143 & 67108864L;
21703#line 4821
21704 if (__cil_tmp144 != 0L) {
21705 {
21706#line 4822
21707 pci_set_dma_mask(pdev, 1152921504606846975ULL);
21708#line 4823
21709 adapter->has_64bit_addr = 1;
21710 }
21711 } else {
21712 {
21713#line 4825
21714 pci_set_dma_mask(pdev, 4294967295ULL);
21715#line 4826
21716 adapter->has_64bit_addr = 0;
21717 }
21718 }
21719 }
21720 {
21721#line 4829
21722 __cil_tmp145 = & adapter->int_mtx;
21723#line 4829
21724 __mutex_init(__cil_tmp145, "&adapter->int_mtx", & __key___0);
21725#line 4830
21726 __cil_tmp146 = & adapter->int_waitq;
21727#line 4830
21728 init_completion(__cil_tmp146);
21729#line 4832
21730 adapter->this_id = 7;
21731#line 4833
21732 __cil_tmp147 = adapter->host;
21733#line 4833
21734 __cil_tmp147->this_id = 7;
21735#line 4843
21736 adapter->has_cluster = mega_support_cluster(adapter);
21737 }
21738 {
21739#line 4844
21740 __cil_tmp148 = adapter->has_cluster;
21741#line 4844
21742 if (__cil_tmp148 != 0) {
21743 {
21744#line 4845
21745 __cil_tmp149 = adapter->this_id;
21746#line 4845
21747 printk("<5>megaraid: Cluster driver, initiator id:%d\n", __cil_tmp149);
21748 }
21749 } else {
21750
21751 }
21752 }
21753 {
21754#line 4851
21755 __cil_tmp150 = (void *)host;
21756#line 4851
21757 pci_set_drvdata(pdev, __cil_tmp150);
21758#line 4853
21759 mega_create_proc_entry(hba_count, mega_proc_dir_entry);
21760#line 4855
21761 __cil_tmp151 = & pdev->dev;
21762#line 4855
21763 error = scsi_add_host(host, __cil_tmp151);
21764 }
21765#line 4856
21766 if (error != 0) {
21767#line 4857
21768 goto out_free_mbox;
21769 } else {
21770
21771 }
21772 {
21773#line 4859
21774 scsi_scan_host(host);
21775#line 4860
21776 hba_count = hba_count + 1;
21777 }
21778#line 4861
21779 return (0);
21780 out_free_mbox:
21781 {
21782#line 4864
21783 __cil_tmp152 = adapter->dev;
21784#line 4864
21785 __cil_tmp153 = adapter->una_mbox64;
21786#line 4864
21787 __cil_tmp154 = (void *)__cil_tmp153;
21788#line 4864
21789 __cil_tmp155 = adapter->una_mbox64_dma;
21790#line 4864
21791 pci_free_consistent(__cil_tmp152, 74UL, __cil_tmp154, __cil_tmp155);
21792 }
21793 out_free_irq:
21794 {
21795#line 4867
21796 __cil_tmp156 = adapter->host;
21797#line 4867
21798 __cil_tmp157 = __cil_tmp156->irq;
21799#line 4867
21800 __cil_tmp158 = (void *)adapter;
21801#line 4867
21802 free_irq(__cil_tmp157, __cil_tmp158);
21803 }
21804 out_free_scb_list:
21805 {
21806#line 4869
21807 __cil_tmp159 = adapter->scb_list;
21808#line 4869
21809 __cil_tmp160 = (void const *)__cil_tmp159;
21810#line 4869
21811 kfree(__cil_tmp160);
21812 }
21813 out_free_cmd_buffer:
21814 {
21815#line 4871
21816 __cil_tmp161 = adapter->dev;
21817#line 4871
21818 __cil_tmp162 = adapter->mega_buffer;
21819#line 4871
21820 __cil_tmp163 = (void *)__cil_tmp162;
21821#line 4871
21822 __cil_tmp164 = adapter->buf_dma_handle;
21823#line 4871
21824 pci_free_consistent(__cil_tmp161, 2048UL, __cil_tmp163, __cil_tmp164);
21825 }
21826 out_host_put:
21827 {
21828#line 4874
21829 scsi_host_put(host);
21830 }
21831 out_iounmap: ;
21832 {
21833#line 4876
21834 __cil_tmp165 = flag & 536870912UL;
21835#line 4876
21836 if (__cil_tmp165 != 0UL) {
21837 {
21838#line 4877
21839 __cil_tmp166 = (void volatile *)mega_baseport;
21840#line 4877
21841 iounmap(__cil_tmp166);
21842 }
21843 } else {
21844
21845 }
21846 }
21847 out_release_region: ;
21848 {
21849#line 4879
21850 __cil_tmp167 = flag & 536870912UL;
21851#line 4879
21852 if (__cil_tmp167 != 0UL) {
21853 {
21854#line 4880
21855 __cil_tmp168 = (resource_size_t )tbase;
21856#line 4880
21857 __release_region(& iomem_resource, __cil_tmp168, 128ULL);
21858 }
21859 } else {
21860 {
21861#line 4882
21862 __cil_tmp169 = (resource_size_t )mega_baseport;
21863#line 4882
21864 __release_region(& ioport_resource, __cil_tmp169, 16ULL);
21865 }
21866 }
21867 }
21868 out_disable_device:
21869 {
21870#line 4884
21871 pci_disable_device(pdev);
21872 }
21873 out: ;
21874#line 4886
21875 return (error);
21876}
21877}
21878#line 4890 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
21879static void __megaraid_shutdown(adapter_t *adapter )
21880{ u_char raw_mbox[15U] ;
21881 mbox_t *mbox ;
21882 int i ;
21883 int tmp ;
21884 unsigned long __ms ;
21885 unsigned long tmp___0 ;
21886 struct mbox_out *__cil_tmp8 ;
21887 void *__cil_tmp9 ;
21888 struct Scsi_Host *__cil_tmp10 ;
21889 unsigned int __cil_tmp11 ;
21890 void *__cil_tmp12 ;
21891 u_char *__cil_tmp13 ;
21892 struct mbox_out *__cil_tmp14 ;
21893 void *__cil_tmp15 ;
21894 u_char *__cil_tmp16 ;
21895 atomic_t *__cil_tmp17 ;
21896 atomic_t const *__cil_tmp18 ;
21897
21898 {
21899 {
21900#line 4893
21901 mbox = (mbox_t *)(& raw_mbox);
21902#line 4897
21903 __cil_tmp8 = & mbox->m_out;
21904#line 4897
21905 __cil_tmp9 = (void *)__cil_tmp8;
21906#line 4897
21907 memset(__cil_tmp9, 0, 15UL);
21908#line 4898
21909 raw_mbox[0] = (u_char )10U;
21910#line 4900
21911 __cil_tmp10 = adapter->host;
21912#line 4900
21913 __cil_tmp11 = __cil_tmp10->irq;
21914#line 4900
21915 __cil_tmp12 = (void *)adapter;
21916#line 4900
21917 free_irq(__cil_tmp11, __cil_tmp12);
21918#line 4903
21919 __cil_tmp13 = (u_char *)(& raw_mbox);
21920#line 4903
21921 issue_scb_block(adapter, __cil_tmp13);
21922#line 4906
21923 __cil_tmp14 = & mbox->m_out;
21924#line 4906
21925 __cil_tmp15 = (void *)__cil_tmp14;
21926#line 4906
21927 memset(__cil_tmp15, 0, 15UL);
21928#line 4907
21929 raw_mbox[0] = (u_char )254U;
21930#line 4910
21931 __cil_tmp16 = (u_char *)(& raw_mbox);
21932#line 4910
21933 issue_scb_block(adapter, __cil_tmp16);
21934#line 4912
21935 __cil_tmp17 = & adapter->pend_cmds;
21936#line 4912
21937 __cil_tmp18 = (atomic_t const *)__cil_tmp17;
21938#line 4912
21939 tmp = atomic_read(__cil_tmp18);
21940 }
21941#line 4912
21942 if (tmp > 0) {
21943 {
21944#line 4913
21945 printk("<4>megaraid: pending commands!!\n");
21946 }
21947 } else {
21948
21949 }
21950#line 4919
21951 i = 0;
21952#line 4919
21953 goto ldv_32829;
21954 ldv_32828:
21955#line 4920
21956 __ms = 1000UL;
21957#line 4920
21958 goto ldv_32826;
21959 ldv_32825:
21960 {
21961#line 4920
21962 __const_udelay(4295000UL);
21963 }
21964 ldv_32826:
21965#line 4920
21966 tmp___0 = __ms;
21967#line 4920
21968 __ms = __ms - 1UL;
21969#line 4920
21970 if (tmp___0 != 0UL) {
21971#line 4921
21972 goto ldv_32825;
21973 } else {
21974#line 4923
21975 goto ldv_32827;
21976 }
21977 ldv_32827:
21978#line 4919
21979 i = i + 1;
21980 ldv_32829: ;
21981#line 4919
21982 if (i <= 10) {
21983#line 4920
21984 goto ldv_32828;
21985 } else {
21986#line 4922
21987 goto ldv_32830;
21988 }
21989 ldv_32830: ;
21990#line 4924
21991 return;
21992}
21993}
21994#line 4924 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
21995static void megaraid_remove_one(struct pci_dev *pdev )
21996{ struct Scsi_Host *host ;
21997 void *tmp ;
21998 adapter_t *adapter ;
21999 char buf[12U] ;
22000 unsigned long (*__cil_tmp6)[0U] ;
22001 u32 __cil_tmp7 ;
22002 long __cil_tmp8 ;
22003 long __cil_tmp9 ;
22004 unsigned long __cil_tmp10 ;
22005 void volatile *__cil_tmp11 ;
22006 struct Scsi_Host *__cil_tmp12 ;
22007 unsigned long __cil_tmp13 ;
22008 resource_size_t __cil_tmp14 ;
22009 unsigned long __cil_tmp15 ;
22010 resource_size_t __cil_tmp16 ;
22011 struct proc_dir_entry *__cil_tmp17 ;
22012 unsigned long __cil_tmp18 ;
22013 struct proc_dir_entry *__cil_tmp19 ;
22014 unsigned long __cil_tmp20 ;
22015 struct proc_dir_entry *__cil_tmp21 ;
22016 struct proc_dir_entry *__cil_tmp22 ;
22017 struct proc_dir_entry *__cil_tmp23 ;
22018 struct proc_dir_entry *__cil_tmp24 ;
22019 struct proc_dir_entry *__cil_tmp25 ;
22020 struct proc_dir_entry *__cil_tmp26 ;
22021 struct proc_dir_entry *__cil_tmp27 ;
22022 struct proc_dir_entry *__cil_tmp28 ;
22023 struct proc_dir_entry *__cil_tmp29 ;
22024 struct proc_dir_entry *__cil_tmp30 ;
22025 struct proc_dir_entry *__cil_tmp31 ;
22026 struct proc_dir_entry *__cil_tmp32 ;
22027 struct proc_dir_entry *__cil_tmp33 ;
22028 char *__cil_tmp34 ;
22029 struct Scsi_Host *__cil_tmp35 ;
22030 unsigned int __cil_tmp36 ;
22031 char const *__cil_tmp37 ;
22032 struct pci_dev *__cil_tmp38 ;
22033 u8 *__cil_tmp39 ;
22034 void *__cil_tmp40 ;
22035 dma_addr_t __cil_tmp41 ;
22036 scb_t *__cil_tmp42 ;
22037 void const *__cil_tmp43 ;
22038 struct pci_dev *__cil_tmp44 ;
22039 mbox64_t *__cil_tmp45 ;
22040 void *__cil_tmp46 ;
22041 dma_addr_t __cil_tmp47 ;
22042
22043 {
22044 {
22045#line 4926
22046 tmp = pci_get_drvdata(pdev);
22047#line 4926
22048 host = (struct Scsi_Host *)tmp;
22049#line 4927
22050 __cil_tmp6 = & host->hostdata;
22051#line 4927
22052 adapter = (adapter_t *)__cil_tmp6;
22053#line 4929
22054 scsi_remove_host(host);
22055#line 4931
22056 __megaraid_shutdown(adapter);
22057 }
22058 {
22059#line 4934
22060 __cil_tmp7 = adapter->flag;
22061#line 4934
22062 __cil_tmp8 = (long )__cil_tmp7;
22063#line 4934
22064 __cil_tmp9 = __cil_tmp8 & 536870912L;
22065#line 4934
22066 if (__cil_tmp9 != 0L) {
22067 {
22068#line 4935
22069 __cil_tmp10 = adapter->base;
22070#line 4935
22071 __cil_tmp11 = (void volatile *)__cil_tmp10;
22072#line 4935
22073 iounmap(__cil_tmp11);
22074#line 4936
22075 __cil_tmp12 = adapter->host;
22076#line 4936
22077 __cil_tmp13 = __cil_tmp12->base;
22078#line 4936
22079 __cil_tmp14 = (resource_size_t )__cil_tmp13;
22080#line 4936
22081 __release_region(& iomem_resource, __cil_tmp14, 128ULL);
22082 }
22083 } else {
22084 {
22085#line 4938
22086 __cil_tmp15 = adapter->base;
22087#line 4938
22088 __cil_tmp16 = (resource_size_t )__cil_tmp15;
22089#line 4938
22090 __release_region(& ioport_resource, __cil_tmp16, 16ULL);
22091 }
22092 }
22093 }
22094 {
22095#line 4940
22096 mega_free_sgl(adapter);
22097 }
22098 {
22099#line 4943
22100 __cil_tmp17 = (struct proc_dir_entry *)0;
22101#line 4943
22102 __cil_tmp18 = (unsigned long )__cil_tmp17;
22103#line 4943
22104 __cil_tmp19 = adapter->controller_proc_dir_entry;
22105#line 4943
22106 __cil_tmp20 = (unsigned long )__cil_tmp19;
22107#line 4943
22108 if (__cil_tmp20 != __cil_tmp18) {
22109 {
22110#line 4944
22111 __cil_tmp21 = adapter->controller_proc_dir_entry;
22112#line 4944
22113 remove_proc_entry("stat", __cil_tmp21);
22114#line 4945
22115 __cil_tmp22 = adapter->controller_proc_dir_entry;
22116#line 4945
22117 remove_proc_entry("config", __cil_tmp22);
22118#line 4947
22119 __cil_tmp23 = adapter->controller_proc_dir_entry;
22120#line 4947
22121 remove_proc_entry("mailbox", __cil_tmp23);
22122#line 4950
22123 __cil_tmp24 = adapter->controller_proc_dir_entry;
22124#line 4950
22125 remove_proc_entry("rebuild-rate", __cil_tmp24);
22126#line 4952
22127 __cil_tmp25 = adapter->controller_proc_dir_entry;
22128#line 4952
22129 remove_proc_entry("battery-status", __cil_tmp25);
22130#line 4955
22131 __cil_tmp26 = adapter->controller_proc_dir_entry;
22132#line 4955
22133 remove_proc_entry("diskdrives-ch0", __cil_tmp26);
22134#line 4957
22135 __cil_tmp27 = adapter->controller_proc_dir_entry;
22136#line 4957
22137 remove_proc_entry("diskdrives-ch1", __cil_tmp27);
22138#line 4959
22139 __cil_tmp28 = adapter->controller_proc_dir_entry;
22140#line 4959
22141 remove_proc_entry("diskdrives-ch2", __cil_tmp28);
22142#line 4961
22143 __cil_tmp29 = adapter->controller_proc_dir_entry;
22144#line 4961
22145 remove_proc_entry("diskdrives-ch3", __cil_tmp29);
22146#line 4964
22147 __cil_tmp30 = adapter->controller_proc_dir_entry;
22148#line 4964
22149 remove_proc_entry("raiddrives-0-9", __cil_tmp30);
22150#line 4966
22151 __cil_tmp31 = adapter->controller_proc_dir_entry;
22152#line 4966
22153 remove_proc_entry("raiddrives-10-19", __cil_tmp31);
22154#line 4968
22155 __cil_tmp32 = adapter->controller_proc_dir_entry;
22156#line 4968
22157 remove_proc_entry("raiddrives-20-29", __cil_tmp32);
22158#line 4970
22159 __cil_tmp33 = adapter->controller_proc_dir_entry;
22160#line 4970
22161 remove_proc_entry("raiddrives-30-39", __cil_tmp33);
22162#line 4974
22163 buf[0] = (char)0;
22164#line 4974
22165 buf[1] = (char)0;
22166#line 4974
22167 buf[2] = (char)0;
22168#line 4974
22169 buf[3] = (char)0;
22170#line 4974
22171 buf[4] = (char)0;
22172#line 4974
22173 buf[5] = (char)0;
22174#line 4974
22175 buf[6] = (char)0;
22176#line 4974
22177 buf[7] = (char)0;
22178#line 4974
22179 buf[8] = (char)0;
22180#line 4974
22181 buf[9] = (char)0;
22182#line 4974
22183 buf[10] = (char)0;
22184#line 4974
22185 buf[11] = (char)0;
22186#line 4975
22187 __cil_tmp34 = (char *)(& buf);
22188#line 4975
22189 __cil_tmp35 = adapter->host;
22190#line 4975
22191 __cil_tmp36 = __cil_tmp35->host_no;
22192#line 4975
22193 sprintf(__cil_tmp34, "hba%d", __cil_tmp36);
22194#line 4976
22195 __cil_tmp37 = (char const *)(& buf);
22196#line 4976
22197 remove_proc_entry(__cil_tmp37, mega_proc_dir_entry);
22198 }
22199 } else {
22200
22201 }
22202 }
22203 {
22204#line 4981
22205 __cil_tmp38 = adapter->dev;
22206#line 4981
22207 __cil_tmp39 = adapter->mega_buffer;
22208#line 4981
22209 __cil_tmp40 = (void *)__cil_tmp39;
22210#line 4981
22211 __cil_tmp41 = adapter->buf_dma_handle;
22212#line 4981
22213 pci_free_consistent(__cil_tmp38, 2048UL, __cil_tmp40, __cil_tmp41);
22214#line 4983
22215 __cil_tmp42 = adapter->scb_list;
22216#line 4983
22217 __cil_tmp43 = (void const *)__cil_tmp42;
22218#line 4983
22219 kfree(__cil_tmp43);
22220#line 4984
22221 __cil_tmp44 = adapter->dev;
22222#line 4984
22223 __cil_tmp45 = adapter->una_mbox64;
22224#line 4984
22225 __cil_tmp46 = (void *)__cil_tmp45;
22226#line 4984
22227 __cil_tmp47 = adapter->una_mbox64_dma;
22228#line 4984
22229 pci_free_consistent(__cil_tmp44, 74UL, __cil_tmp46, __cil_tmp47);
22230#line 4987
22231 scsi_host_put(host);
22232#line 4988
22233 pci_disable_device(pdev);
22234#line 4990
22235 hba_count = hba_count - 1;
22236 }
22237#line 4991
22238 return;
22239}
22240}
22241#line 4994 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22242static void megaraid_shutdown(struct pci_dev *pdev )
22243{ struct Scsi_Host *host ;
22244 void *tmp ;
22245 adapter_t *adapter ;
22246 unsigned long (*__cil_tmp5)[0U] ;
22247
22248 {
22249 {
22250#line 4996
22251 tmp = pci_get_drvdata(pdev);
22252#line 4996
22253 host = (struct Scsi_Host *)tmp;
22254#line 4997
22255 __cil_tmp5 = & host->hostdata;
22256#line 4997
22257 adapter = (adapter_t *)__cil_tmp5;
22258#line 4999
22259 __megaraid_shutdown(adapter);
22260 }
22261#line 5000
22262 return;
22263}
22264}
22265#line 5002 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22266static struct pci_device_id megaraid_pci_tbl[4U] = { {4126U, 36880U, 4294967295U, 4294967295U, 0U, 0U, 0UL},
22267 {4126U, 36960U, 4294967295U, 4294967295U, 0U, 0U, 0UL},
22268 {32902U, 6496U, 4294967295U, 4294967295U, 0U, 0U, 0UL},
22269 {0U, 0U, 0U, 0U, 0U, 0U, 0UL}};
22270#line 5011 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22271struct pci_device_id const __mod_pci_device_table ;
22272#line 5013 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22273static struct pci_driver megaraid_pci_driver =
22274#line 5013
22275 {{(struct list_head *)0, (struct list_head *)0}, "megaraid_legacy", (struct pci_device_id const *)(& megaraid_pci_tbl),
22276 & megaraid_probe_one, & megaraid_remove_one, (int (*)(struct pci_dev * , pm_message_t ))0,
22277 (int (*)(struct pci_dev * , pm_message_t ))0, (int (*)(struct pci_dev * ))0,
22278 (int (*)(struct pci_dev * ))0, & megaraid_shutdown, (struct pci_error_handlers *)0,
22279 {(char const *)0, (struct bus_type *)0, (struct module *)0, (char const *)0,
22280 (_Bool)0, (struct of_device_id const *)0, (int (*)(struct device * ))0, (int (*)(struct device * ))0,
22281 (void (*)(struct device * ))0, (int (*)(struct device * , pm_message_t ))0,
22282 (int (*)(struct device * ))0, (struct attribute_group const **)0, (struct dev_pm_ops const *)0,
22283 (struct driver_private *)0}, {{{{{0U}, 0U, 0U, (void *)0, {(struct lock_class_key *)0,
22284 {(struct lock_class *)0,
22285 (struct lock_class *)0},
22286 (char const *)0,
22287 0, 0UL}}}}, {(struct list_head *)0,
22288 (struct list_head *)0}}};
22289#line 5021 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22290static int megaraid_init(void)
22291{ int error ;
22292 unsigned int __cil_tmp2 ;
22293 struct proc_dir_entry *__cil_tmp3 ;
22294 struct proc_dir_entry *__cil_tmp4 ;
22295 unsigned long __cil_tmp5 ;
22296 unsigned long __cil_tmp6 ;
22297 struct proc_dir_entry *__cil_tmp7 ;
22298
22299 {
22300#line 5025
22301 if (max_cmd_per_lun == 0U) {
22302#line 5026
22303 max_cmd_per_lun = 126U;
22304 } else
22305#line 5025
22306 if (max_cmd_per_lun > 126U) {
22307#line 5026
22308 max_cmd_per_lun = 126U;
22309 } else {
22310
22311 }
22312 {
22313#line 5027
22314 __cil_tmp2 = (unsigned int )max_mbox_busy_wait;
22315#line 5027
22316 if (__cil_tmp2 > 10U) {
22317#line 5028
22318 max_mbox_busy_wait = (unsigned short)10;
22319 } else {
22320
22321 }
22322 }
22323 {
22324#line 5031
22325 __cil_tmp3 = (struct proc_dir_entry *)0;
22326#line 5031
22327 mega_proc_dir_entry = proc_mkdir("megaraid", __cil_tmp3);
22328 }
22329 {
22330#line 5032
22331 __cil_tmp4 = (struct proc_dir_entry *)0;
22332#line 5032
22333 __cil_tmp5 = (unsigned long )__cil_tmp4;
22334#line 5032
22335 __cil_tmp6 = (unsigned long )mega_proc_dir_entry;
22336#line 5032
22337 if (__cil_tmp6 == __cil_tmp5) {
22338 {
22339#line 5033
22340 printk("<4>megaraid: failed to create megaraid root\n");
22341 }
22342 } else {
22343
22344 }
22345 }
22346 {
22347#line 5037
22348 error = __pci_register_driver(& megaraid_pci_driver, & __this_module, "megaraid");
22349 }
22350#line 5038
22351 if (error != 0) {
22352 {
22353#line 5040
22354 __cil_tmp7 = (struct proc_dir_entry *)0;
22355#line 5040
22356 remove_proc_entry("megaraid", __cil_tmp7);
22357 }
22358#line 5042
22359 return (error);
22360 } else {
22361
22362 }
22363 {
22364#line 5051
22365 major = register_chrdev(0U, "megadev_legacy", & megadev_fops);
22366 }
22367#line 5052
22368 if (major == 0) {
22369 {
22370#line 5053
22371 printk("<4>megaraid: failed to register char device\n");
22372 }
22373 } else {
22374
22375 }
22376#line 5057
22377 return (0);
22378}
22379}
22380#line 5060 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22381static void megaraid_exit(void)
22382{ unsigned int __cil_tmp1 ;
22383 struct proc_dir_entry *__cil_tmp2 ;
22384
22385 {
22386 {
22387#line 5065
22388 __cil_tmp1 = (unsigned int )major;
22389#line 5065
22390 unregister_chrdev(__cil_tmp1, "megadev_legacy");
22391#line 5067
22392 pci_unregister_driver(& megaraid_pci_driver);
22393#line 5070
22394 __cil_tmp2 = (struct proc_dir_entry *)0;
22395#line 5070
22396 remove_proc_entry("megaraid", __cil_tmp2);
22397 }
22398#line 5071
22399 return;
22400}
22401}
22402#line 5095
22403void ldv_check_final_state(void) ;
22404#line 5098
22405extern void ldv_check_return_value(int ) ;
22406#line 5101
22407extern void ldv_initialize(void) ;
22408#line 5104
22409extern int nondet_int(void) ;
22410#line 5107 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22411int LDV_IN_INTERRUPT ;
22412#line 5110 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22413void main(void)
22414{ struct file *var_group1 ;
22415 unsigned int var_megadev_unlocked_ioctl_49_p1 ;
22416 unsigned long var_megadev_unlocked_ioctl_49_p2 ;
22417 struct inode *var_group2 ;
22418 int res_megadev_open_47 ;
22419 struct Scsi_Host *var_group3 ;
22420 Scsi_Cmnd *var_megaraid_abort_21_p0 ;
22421 struct scsi_cmnd *var_group4 ;
22422 struct pci_dev *var_group5 ;
22423 struct pci_device_id const *var_megaraid_probe_one_65_p1 ;
22424 int res_megaraid_probe_one_65 ;
22425 int var_megaraid_isr_iomapped_12_p0 ;
22426 void *var_megaraid_isr_iomapped_12_p1 ;
22427 int var_megaraid_isr_memmapped_13_p0 ;
22428 void *var_megaraid_isr_memmapped_13_p1 ;
22429 int ldv_s_megadev_fops_file_operations ;
22430 int ldv_s_megaraid_pci_driver_pci_driver ;
22431 int tmp ;
22432 int tmp___0 ;
22433 int tmp___1 ;
22434
22435 {
22436 {
22437#line 5747
22438 ldv_s_megadev_fops_file_operations = 0;
22439#line 5752
22440 ldv_s_megaraid_pci_driver_pci_driver = 0;
22441#line 5678
22442 LDV_IN_INTERRUPT = 1;
22443#line 5687
22444 ldv_initialize();
22445#line 5741
22446 tmp = megaraid_init();
22447 }
22448#line 5741
22449 if (tmp != 0) {
22450#line 5742
22451 goto ldv_final;
22452 } else {
22453
22454 }
22455#line 5758
22456 goto ldv_32905;
22457 ldv_32904:
22458 {
22459#line 5763
22460 tmp___0 = nondet_int();
22461 }
22462#line 5765
22463 if (tmp___0 == 0) {
22464#line 5765
22465 goto case_0;
22466 } else
22467#line 5840
22468 if (tmp___0 == 1) {
22469#line 5840
22470 goto case_1;
22471 } else
22472#line 5912
22473 if (tmp___0 == 2) {
22474#line 5912
22475 goto case_2;
22476 } else
22477#line 5984
22478 if (tmp___0 == 3) {
22479#line 5984
22480 goto case_3;
22481 } else
22482#line 6056
22483 if (tmp___0 == 4) {
22484#line 6056
22485 goto case_4;
22486 } else
22487#line 6126
22488 if (tmp___0 == 5) {
22489#line 6126
22490 goto case_5;
22491 } else
22492#line 6199
22493 if (tmp___0 == 6) {
22494#line 6199
22495 goto case_6;
22496 } else
22497#line 6271
22498 if (tmp___0 == 7) {
22499#line 6271
22500 goto case_7;
22501 } else
22502#line 6343
22503 if (tmp___0 == 8) {
22504#line 6343
22505 goto case_8;
22506 } else {
22507#line 6415
22508 goto switch_default;
22509#line 5763
22510 if (0) {
22511 case_0: ;
22512#line 5768
22513 if (ldv_s_megadev_fops_file_operations == 0) {
22514 {
22515#line 5809
22516 res_megadev_open_47 = megadev_open(var_group2, var_group1);
22517#line 5810
22518 ldv_check_return_value(res_megadev_open_47);
22519 }
22520#line 5811
22521 if (res_megadev_open_47 != 0) {
22522#line 5812
22523 goto ldv_module_exit;
22524 } else {
22525
22526 }
22527#line 5833
22528 ldv_s_megadev_fops_file_operations = 0;
22529 } else {
22530
22531 }
22532#line 5839
22533 goto ldv_32894;
22534 case_1:
22535 {
22536#line 5886
22537 megadev_unlocked_ioctl(var_group1, var_megadev_unlocked_ioctl_49_p1, var_megadev_unlocked_ioctl_49_p2);
22538 }
22539#line 5911
22540 goto ldv_32894;
22541 case_2:
22542 {
22543#line 5942
22544 megaraid_info(var_group3);
22545 }
22546#line 5983
22547 goto ldv_32894;
22548 case_3:
22549 {
22550#line 6014
22551 megaraid_abort(var_megaraid_abort_21_p0);
22552 }
22553#line 6055
22554 goto ldv_32894;
22555 case_4:
22556 {
22557#line 6086
22558 megaraid_reset(var_group4);
22559 }
22560#line 6125
22561 goto ldv_32894;
22562 case_5: ;
22563#line 6129
22564 if (ldv_s_megaraid_pci_driver_pci_driver == 0) {
22565 {
22566#line 6176
22567 res_megaraid_probe_one_65 = megaraid_probe_one(var_group5, var_megaraid_probe_one_65_p1);
22568#line 6177
22569 ldv_check_return_value(res_megaraid_probe_one_65);
22570 }
22571#line 6178
22572 if (res_megaraid_probe_one_65 != 0) {
22573#line 6179
22574 goto ldv_module_exit;
22575 } else {
22576
22577 }
22578#line 6192
22579 ldv_s_megaraid_pci_driver_pci_driver = 0;
22580 } else {
22581
22582 }
22583#line 6198
22584 goto ldv_32894;
22585 case_6:
22586 {
22587#line 6255
22588 megaraid_shutdown(var_group5);
22589 }
22590#line 6270
22591 goto ldv_32894;
22592 case_7:
22593 {
22594#line 6274
22595 LDV_IN_INTERRUPT = 2;
22596#line 6297
22597 megaraid_isr_iomapped(var_megaraid_isr_iomapped_12_p0, var_megaraid_isr_iomapped_12_p1);
22598#line 6336
22599 LDV_IN_INTERRUPT = 1;
22600 }
22601#line 6342
22602 goto ldv_32894;
22603 case_8:
22604 {
22605#line 6346
22606 LDV_IN_INTERRUPT = 2;
22607#line 6369
22608 megaraid_isr_memmapped(var_megaraid_isr_memmapped_13_p0, var_megaraid_isr_memmapped_13_p1);
22609#line 6408
22610 LDV_IN_INTERRUPT = 1;
22611 }
22612#line 6414
22613 goto ldv_32894;
22614 switch_default: ;
22615#line 6415
22616 goto ldv_32894;
22617 } else {
22618
22619 }
22620 }
22621 ldv_32894: ;
22622 ldv_32905:
22623 {
22624#line 5758
22625 tmp___1 = nondet_int();
22626 }
22627#line 5758
22628 if (tmp___1 != 0) {
22629#line 5761
22630 goto ldv_32904;
22631 } else
22632#line 5758
22633 if (ldv_s_megadev_fops_file_operations != 0) {
22634#line 5761
22635 goto ldv_32904;
22636 } else
22637#line 5758
22638 if (ldv_s_megaraid_pci_driver_pci_driver != 0) {
22639#line 5761
22640 goto ldv_32904;
22641 } else {
22642#line 5763
22643 goto ldv_32906;
22644 }
22645 ldv_32906: ;
22646 ldv_module_exit:
22647 {
22648#line 6479
22649 megaraid_exit();
22650 }
22651 ldv_final:
22652 {
22653#line 6482
22654 ldv_check_final_state();
22655 }
22656#line 6485
22657 return;
22658}
22659}
22660#line 5 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-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"
22661void ldv_blast_assert(void)
22662{
22663
22664 {
22665 ERROR: ;
22666#line 6
22667 goto ERROR;
22668}
22669}
22670#line 6 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-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"
22671extern int ldv_undefined_int(void) ;
22672#line 6502 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22673int ldv_module_refcounter = 1;
22674#line 6505 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22675void ldv_module_get(struct module *module )
22676{ struct module *__cil_tmp2 ;
22677 unsigned long __cil_tmp3 ;
22678 unsigned long __cil_tmp4 ;
22679
22680 {
22681 {
22682#line 6508
22683 __cil_tmp2 = (struct module *)0;
22684#line 6508
22685 __cil_tmp3 = (unsigned long )__cil_tmp2;
22686#line 6508
22687 __cil_tmp4 = (unsigned long )module;
22688#line 6508
22689 if (__cil_tmp4 != __cil_tmp3) {
22690#line 6510
22691 ldv_module_refcounter = ldv_module_refcounter + 1;
22692 } else {
22693
22694 }
22695 }
22696#line 6511
22697 return;
22698}
22699}
22700#line 6515 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22701int ldv_try_module_get(struct module *module )
22702{ int module_get_succeeded ;
22703 struct module *__cil_tmp3 ;
22704 unsigned long __cil_tmp4 ;
22705 unsigned long __cil_tmp5 ;
22706
22707 {
22708 {
22709#line 6520
22710 __cil_tmp3 = (struct module *)0;
22711#line 6520
22712 __cil_tmp4 = (unsigned long )__cil_tmp3;
22713#line 6520
22714 __cil_tmp5 = (unsigned long )module;
22715#line 6520
22716 if (__cil_tmp5 != __cil_tmp4) {
22717 {
22718#line 6523
22719 module_get_succeeded = ldv_undefined_int();
22720 }
22721#line 6525
22722 if (module_get_succeeded == 1) {
22723#line 6527
22724 ldv_module_refcounter = ldv_module_refcounter + 1;
22725#line 6529
22726 return (1);
22727 } else {
22728#line 6534
22729 return (0);
22730 }
22731 } else {
22732
22733 }
22734 }
22735#line 6536
22736 return (0);
22737}
22738}
22739#line 6540 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22740void ldv_module_put(struct module *module )
22741{ struct module *__cil_tmp2 ;
22742 unsigned long __cil_tmp3 ;
22743 unsigned long __cil_tmp4 ;
22744
22745 {
22746 {
22747#line 6543
22748 __cil_tmp2 = (struct module *)0;
22749#line 6543
22750 __cil_tmp3 = (unsigned long )__cil_tmp2;
22751#line 6543
22752 __cil_tmp4 = (unsigned long )module;
22753#line 6543
22754 if (__cil_tmp4 != __cil_tmp3) {
22755#line 6545
22756 if (ldv_module_refcounter <= 1) {
22757 {
22758#line 6545
22759 ldv_blast_assert();
22760 }
22761 } else {
22762
22763 }
22764#line 6547
22765 ldv_module_refcounter = ldv_module_refcounter - 1;
22766 } else {
22767
22768 }
22769 }
22770#line 6549
22771 return;
22772}
22773}
22774#line 6552 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22775void ldv_module_put_and_exit(void)
22776{ struct module *__cil_tmp1 ;
22777
22778 {
22779 {
22780#line 6554
22781 __cil_tmp1 = (struct module *)1;
22782#line 6554
22783 ldv_module_put(__cil_tmp1);
22784 }
22785 LDV_STOP: ;
22786#line 6556
22787 goto LDV_STOP;
22788}
22789}
22790#line 6560 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22791unsigned int ldv_module_refcount(void)
22792{ int __cil_tmp1 ;
22793
22794 {
22795 {
22796#line 6563
22797 __cil_tmp1 = ldv_module_refcounter + -1;
22798#line 6563
22799 return ((unsigned int )__cil_tmp1);
22800 }
22801}
22802}
22803#line 6567 "/anthill/stuff/tacas-comp/work/current--X--drivers/scsi/megaraid.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/scsi/megaraid.c.p"
22804void ldv_check_final_state(void)
22805{
22806
22807 {
22808#line 6570
22809 if (ldv_module_refcounter != 1) {
22810 {
22811#line 6570
22812 ldv_blast_assert();
22813 }
22814 } else {
22815
22816 }
22817#line 6573
22818 return;
22819}
22820}