1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 20 "include/asm-generic/int-ll64.h"
7typedef unsigned char __u8;
8#line 22 "include/asm-generic/int-ll64.h"
9typedef short __s16;
10#line 23 "include/asm-generic/int-ll64.h"
11typedef unsigned short __u16;
12#line 25 "include/asm-generic/int-ll64.h"
13typedef int __s32;
14#line 26 "include/asm-generic/int-ll64.h"
15typedef unsigned int __u32;
16#line 29 "include/asm-generic/int-ll64.h"
17typedef long long __s64;
18#line 30 "include/asm-generic/int-ll64.h"
19typedef unsigned long long __u64;
20#line 43 "include/asm-generic/int-ll64.h"
21typedef unsigned char u8;
22#line 45 "include/asm-generic/int-ll64.h"
23typedef short s16;
24#line 46 "include/asm-generic/int-ll64.h"
25typedef unsigned short u16;
26#line 48 "include/asm-generic/int-ll64.h"
27typedef int s32;
28#line 49 "include/asm-generic/int-ll64.h"
29typedef unsigned int u32;
30#line 51 "include/asm-generic/int-ll64.h"
31typedef long long s64;
32#line 52 "include/asm-generic/int-ll64.h"
33typedef unsigned long long u64;
34#line 14 "include/asm-generic/posix_types.h"
35typedef long __kernel_long_t;
36#line 15 "include/asm-generic/posix_types.h"
37typedef unsigned long __kernel_ulong_t;
38#line 27 "include/asm-generic/posix_types.h"
39typedef __kernel_ulong_t __kernel_nlink_t;
40#line 31 "include/asm-generic/posix_types.h"
41typedef int __kernel_pid_t;
42#line 52 "include/asm-generic/posix_types.h"
43typedef unsigned int __kernel_uid32_t;
44#line 53 "include/asm-generic/posix_types.h"
45typedef unsigned int __kernel_gid32_t;
46#line 75 "include/asm-generic/posix_types.h"
47typedef __kernel_ulong_t __kernel_size_t;
48#line 76 "include/asm-generic/posix_types.h"
49typedef __kernel_long_t __kernel_ssize_t;
50#line 90 "include/asm-generic/posix_types.h"
51typedef __kernel_long_t __kernel_off_t;
52#line 91 "include/asm-generic/posix_types.h"
53typedef long long __kernel_loff_t;
54#line 92 "include/asm-generic/posix_types.h"
55typedef __kernel_long_t __kernel_time_t;
56#line 93 "include/asm-generic/posix_types.h"
57typedef __kernel_long_t __kernel_clock_t;
58#line 94 "include/asm-generic/posix_types.h"
59typedef int __kernel_timer_t;
60#line 95 "include/asm-generic/posix_types.h"
61typedef int __kernel_clockid_t;
62#line 21 "include/linux/types.h"
63typedef __u32 __kernel_dev_t;
64#line 24 "include/linux/types.h"
65typedef __kernel_dev_t dev_t;
66#line 27 "include/linux/types.h"
67typedef unsigned short umode_t;
68#line 28 "include/linux/types.h"
69typedef __kernel_nlink_t nlink_t;
70#line 29 "include/linux/types.h"
71typedef __kernel_off_t off_t;
72#line 30 "include/linux/types.h"
73typedef __kernel_pid_t pid_t;
74#line 35 "include/linux/types.h"
75typedef __kernel_clockid_t clockid_t;
76#line 38 "include/linux/types.h"
77typedef _Bool bool;
78#line 40 "include/linux/types.h"
79typedef __kernel_uid32_t uid_t;
80#line 41 "include/linux/types.h"
81typedef __kernel_gid32_t gid_t;
82#line 54 "include/linux/types.h"
83typedef __kernel_loff_t loff_t;
84#line 63 "include/linux/types.h"
85typedef __kernel_size_t size_t;
86#line 68 "include/linux/types.h"
87typedef __kernel_ssize_t ssize_t;
88#line 78 "include/linux/types.h"
89typedef __kernel_time_t time_t;
90#line 111 "include/linux/types.h"
91typedef __s32 int32_t;
92#line 117 "include/linux/types.h"
93typedef __u32 uint32_t;
94#line 142 "include/linux/types.h"
95typedef unsigned long sector_t;
96#line 143 "include/linux/types.h"
97typedef unsigned long blkcnt_t;
98#line 155 "include/linux/types.h"
99typedef u64 dma_addr_t;
100#line 202 "include/linux/types.h"
101typedef unsigned int gfp_t;
102#line 203 "include/linux/types.h"
103typedef unsigned int fmode_t;
104#line 206 "include/linux/types.h"
105typedef u64 phys_addr_t;
106#line 211 "include/linux/types.h"
107typedef phys_addr_t resource_size_t;
108#line 219 "include/linux/types.h"
109struct __anonstruct_atomic_t_7 {
110 int counter ;
111};
112#line 219 "include/linux/types.h"
113typedef struct __anonstruct_atomic_t_7 atomic_t;
114#line 224 "include/linux/types.h"
115struct __anonstruct_atomic64_t_8 {
116 long counter ;
117};
118#line 224 "include/linux/types.h"
119typedef struct __anonstruct_atomic64_t_8 atomic64_t;
120#line 229 "include/linux/types.h"
121struct list_head {
122 struct list_head *next ;
123 struct list_head *prev ;
124};
125#line 233
126struct hlist_node;
127#line 233 "include/linux/types.h"
128struct hlist_head {
129 struct hlist_node *first ;
130};
131#line 237 "include/linux/types.h"
132struct hlist_node {
133 struct hlist_node *next ;
134 struct hlist_node **pprev ;
135};
136#line 253 "include/linux/types.h"
137struct rcu_head {
138 struct rcu_head *next ;
139 void (*func)(struct rcu_head *head ) ;
140};
141#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
142struct module;
143#line 56
144struct module;
145#line 146 "include/linux/init.h"
146typedef void (*ctor_fn_t)(void);
147#line 47 "include/linux/dynamic_debug.h"
148struct device;
149#line 47
150struct device;
151#line 135 "include/linux/kernel.h"
152struct completion;
153#line 135
154struct completion;
155#line 136
156struct pt_regs;
157#line 136
158struct pt_regs;
159#line 349
160struct pid;
161#line 349
162struct pid;
163#line 18 "include/linux/ioport.h"
164struct resource {
165 resource_size_t start ;
166 resource_size_t end ;
167 char const *name ;
168 unsigned long flags ;
169 struct resource *parent ;
170 struct resource *sibling ;
171 struct resource *child ;
172};
173#line 202
174struct device;
175#line 18 "include/linux/capability.h"
176struct task_struct;
177#line 18
178struct task_struct;
179#line 94 "include/linux/capability.h"
180struct kernel_cap_struct {
181 __u32 cap[2] ;
182};
183#line 94 "include/linux/capability.h"
184typedef struct kernel_cap_struct kernel_cap_t;
185#line 377
186struct dentry;
187#line 377
188struct dentry;
189#line 378
190struct user_namespace;
191#line 378
192struct user_namespace;
193#line 12 "include/linux/thread_info.h"
194struct timespec;
195#line 12
196struct timespec;
197#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
198struct page;
199#line 18
200struct page;
201#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
202struct task_struct;
203#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
204struct task_struct;
205#line 8
206struct mm_struct;
207#line 8
208struct mm_struct;
209#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
210struct pt_regs {
211 unsigned long r15 ;
212 unsigned long r14 ;
213 unsigned long r13 ;
214 unsigned long r12 ;
215 unsigned long bp ;
216 unsigned long bx ;
217 unsigned long r11 ;
218 unsigned long r10 ;
219 unsigned long r9 ;
220 unsigned long r8 ;
221 unsigned long ax ;
222 unsigned long cx ;
223 unsigned long dx ;
224 unsigned long si ;
225 unsigned long di ;
226 unsigned long orig_ax ;
227 unsigned long ip ;
228 unsigned long cs ;
229 unsigned long flags ;
230 unsigned long sp ;
231 unsigned long ss ;
232};
233#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
234struct __anonstruct____missing_field_name_17 {
235 unsigned int a ;
236 unsigned int b ;
237};
238#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
239struct __anonstruct____missing_field_name_18 {
240 u16 limit0 ;
241 u16 base0 ;
242 unsigned int base1 : 8 ;
243 unsigned int type : 4 ;
244 unsigned int s : 1 ;
245 unsigned int dpl : 2 ;
246 unsigned int p : 1 ;
247 unsigned int limit : 4 ;
248 unsigned int avl : 1 ;
249 unsigned int l : 1 ;
250 unsigned int d : 1 ;
251 unsigned int g : 1 ;
252 unsigned int base2 : 8 ;
253};
254#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
255union __anonunion____missing_field_name_16 {
256 struct __anonstruct____missing_field_name_17 __annonCompField5 ;
257 struct __anonstruct____missing_field_name_18 __annonCompField6 ;
258};
259#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
260struct desc_struct {
261 union __anonunion____missing_field_name_16 __annonCompField7 ;
262} __attribute__((__packed__)) ;
263#line 51 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
264struct gate_struct64 {
265 u16 offset_low ;
266 u16 segment ;
267 unsigned int ist : 3 ;
268 unsigned int zero0 : 5 ;
269 unsigned int type : 5 ;
270 unsigned int dpl : 2 ;
271 unsigned int p : 1 ;
272 u16 offset_middle ;
273 u32 offset_high ;
274 u32 zero1 ;
275} __attribute__((__packed__)) ;
276#line 81 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
277typedef struct gate_struct64 gate_desc;
278#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
279struct desc_ptr {
280 unsigned short size ;
281 unsigned long address ;
282} __attribute__((__packed__)) ;
283#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
284typedef unsigned long pgdval_t;
285#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
286typedef unsigned long pgprotval_t;
287#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
288struct pgprot {
289 pgprotval_t pgprot ;
290};
291#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
292typedef struct pgprot pgprot_t;
293#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
294struct __anonstruct_pgd_t_22 {
295 pgdval_t pgd ;
296};
297#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
298typedef struct __anonstruct_pgd_t_22 pgd_t;
299#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
300typedef struct page *pgtable_t;
301#line 295
302struct file;
303#line 295
304struct file;
305#line 313
306struct seq_file;
307#line 313
308struct seq_file;
309#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
310struct page;
311#line 47
312struct thread_struct;
313#line 47
314struct thread_struct;
315#line 48
316struct desc_ptr;
317#line 49
318struct tss_struct;
319#line 49
320struct tss_struct;
321#line 50
322struct mm_struct;
323#line 51
324struct desc_struct;
325#line 52
326struct task_struct;
327#line 53
328struct cpumask;
329#line 53
330struct cpumask;
331#line 102 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
332struct pv_cpu_ops {
333 unsigned long (*get_debugreg)(int regno ) ;
334 void (*set_debugreg)(int regno , unsigned long value ) ;
335 void (*clts)(void) ;
336 unsigned long (*read_cr0)(void) ;
337 void (*write_cr0)(unsigned long ) ;
338 unsigned long (*read_cr4_safe)(void) ;
339 unsigned long (*read_cr4)(void) ;
340 void (*write_cr4)(unsigned long ) ;
341 unsigned long (*read_cr8)(void) ;
342 void (*write_cr8)(unsigned long ) ;
343 void (*load_tr_desc)(void) ;
344 void (*load_gdt)(struct desc_ptr const * ) ;
345 void (*load_idt)(struct desc_ptr const * ) ;
346 void (*store_gdt)(struct desc_ptr * ) ;
347 void (*store_idt)(struct desc_ptr * ) ;
348 void (*set_ldt)(void const *desc , unsigned int entries ) ;
349 unsigned long (*store_tr)(void) ;
350 void (*load_tls)(struct thread_struct *t , unsigned int cpu ) ;
351 void (*load_gs_index)(unsigned int idx ) ;
352 void (*write_ldt_entry)(struct desc_struct *ldt , int entrynum , void const *desc ) ;
353 void (*write_gdt_entry)(struct desc_struct * , int entrynum , void const *desc ,
354 int size ) ;
355 void (*write_idt_entry)(gate_desc * , int entrynum , gate_desc const *gate ) ;
356 void (*alloc_ldt)(struct desc_struct *ldt , unsigned int entries ) ;
357 void (*free_ldt)(struct desc_struct *ldt , unsigned int entries ) ;
358 void (*load_sp0)(struct tss_struct *tss , struct thread_struct *t ) ;
359 void (*set_iopl_mask)(unsigned int mask ) ;
360 void (*wbinvd)(void) ;
361 void (*io_delay)(void) ;
362 void (*cpuid)(unsigned int *eax , unsigned int *ebx , unsigned int *ecx , unsigned int *edx ) ;
363 u64 (*read_msr)(unsigned int msr , int *err ) ;
364 int (*rdmsr_regs)(u32 *regs ) ;
365 int (*write_msr)(unsigned int msr , unsigned int low , unsigned int high ) ;
366 int (*wrmsr_regs)(u32 *regs ) ;
367 u64 (*read_tsc)(void) ;
368 u64 (*read_pmc)(int counter ) ;
369 unsigned long long (*read_tscp)(unsigned int *aux ) ;
370 void (*irq_enable_sysexit)(void) ;
371 void (*usergs_sysret64)(void) ;
372 void (*usergs_sysret32)(void) ;
373 void (*iret)(void) ;
374 void (*swapgs)(void) ;
375 void (*start_context_switch)(struct task_struct *prev ) ;
376 void (*end_context_switch)(struct task_struct *next ) ;
377};
378#line 329
379struct arch_spinlock;
380#line 329
381struct arch_spinlock;
382#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
383struct task_struct;
384#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
385struct kernel_vm86_regs {
386 struct pt_regs pt ;
387 unsigned short es ;
388 unsigned short __esh ;
389 unsigned short ds ;
390 unsigned short __dsh ;
391 unsigned short fs ;
392 unsigned short __fsh ;
393 unsigned short gs ;
394 unsigned short __gsh ;
395};
396#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
397union __anonunion____missing_field_name_26 {
398 struct pt_regs *regs ;
399 struct kernel_vm86_regs *vm86 ;
400};
401#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
402struct math_emu_info {
403 long ___orig_eip ;
404 union __anonunion____missing_field_name_26 __annonCompField8 ;
405};
406#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
407struct task_struct;
408#line 10 "include/asm-generic/bug.h"
409struct bug_entry {
410 int bug_addr_disp ;
411 int file_disp ;
412 unsigned short line ;
413 unsigned short flags ;
414};
415#line 12 "include/linux/bug.h"
416struct pt_regs;
417#line 14 "include/linux/cpumask.h"
418struct cpumask {
419 unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
420};
421#line 14 "include/linux/cpumask.h"
422typedef struct cpumask cpumask_t;
423#line 637 "include/linux/cpumask.h"
424typedef struct cpumask *cpumask_var_t;
425#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
426struct static_key;
427#line 234
428struct static_key;
429#line 11 "include/linux/personality.h"
430struct pt_regs;
431#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
432struct x86_hw_tss {
433 u32 reserved1 ;
434 u64 sp0 ;
435 u64 sp1 ;
436 u64 sp2 ;
437 u64 reserved2 ;
438 u64 ist[7] ;
439 u32 reserved3 ;
440 u32 reserved4 ;
441 u16 reserved5 ;
442 u16 io_bitmap_base ;
443} __attribute__((__packed__, __aligned__((1) << (6) ))) ;
444#line 258 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
445struct tss_struct {
446 struct x86_hw_tss x86_tss ;
447 unsigned long io_bitmap[8192UL / sizeof(long ) + 1UL] ;
448 unsigned long stack[64] ;
449} __attribute__((__aligned__((1) << (6) ))) ;
450#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
451struct i387_fsave_struct {
452 u32 cwd ;
453 u32 swd ;
454 u32 twd ;
455 u32 fip ;
456 u32 fcs ;
457 u32 foo ;
458 u32 fos ;
459 u32 st_space[20] ;
460 u32 status ;
461};
462#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
463struct __anonstruct____missing_field_name_33 {
464 u64 rip ;
465 u64 rdp ;
466};
467#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
468struct __anonstruct____missing_field_name_34 {
469 u32 fip ;
470 u32 fcs ;
471 u32 foo ;
472 u32 fos ;
473};
474#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
475union __anonunion____missing_field_name_32 {
476 struct __anonstruct____missing_field_name_33 __annonCompField12 ;
477 struct __anonstruct____missing_field_name_34 __annonCompField13 ;
478};
479#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
480union __anonunion____missing_field_name_35 {
481 u32 padding1[12] ;
482 u32 sw_reserved[12] ;
483};
484#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
485struct i387_fxsave_struct {
486 u16 cwd ;
487 u16 swd ;
488 u16 twd ;
489 u16 fop ;
490 union __anonunion____missing_field_name_32 __annonCompField14 ;
491 u32 mxcsr ;
492 u32 mxcsr_mask ;
493 u32 st_space[32] ;
494 u32 xmm_space[64] ;
495 u32 padding[12] ;
496 union __anonunion____missing_field_name_35 __annonCompField15 ;
497} __attribute__((__aligned__(16))) ;
498#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
499struct i387_soft_struct {
500 u32 cwd ;
501 u32 swd ;
502 u32 twd ;
503 u32 fip ;
504 u32 fcs ;
505 u32 foo ;
506 u32 fos ;
507 u32 st_space[20] ;
508 u8 ftop ;
509 u8 changed ;
510 u8 lookahead ;
511 u8 no_update ;
512 u8 rm ;
513 u8 alimit ;
514 struct math_emu_info *info ;
515 u32 entry_eip ;
516};
517#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
518struct ymmh_struct {
519 u32 ymmh_space[64] ;
520};
521#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
522struct xsave_hdr_struct {
523 u64 xstate_bv ;
524 u64 reserved1[2] ;
525 u64 reserved2[5] ;
526} __attribute__((__packed__)) ;
527#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
528struct xsave_struct {
529 struct i387_fxsave_struct i387 ;
530 struct xsave_hdr_struct xsave_hdr ;
531 struct ymmh_struct ymmh ;
532} __attribute__((__packed__, __aligned__(64))) ;
533#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
534union thread_xstate {
535 struct i387_fsave_struct fsave ;
536 struct i387_fxsave_struct fxsave ;
537 struct i387_soft_struct soft ;
538 struct xsave_struct xsave ;
539};
540#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
541struct fpu {
542 unsigned int last_cpu ;
543 unsigned int has_fpu ;
544 union thread_xstate *state ;
545};
546#line 433
547struct kmem_cache;
548#line 435
549struct perf_event;
550#line 435
551struct perf_event;
552#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
553struct thread_struct {
554 struct desc_struct tls_array[3] ;
555 unsigned long sp0 ;
556 unsigned long sp ;
557 unsigned long usersp ;
558 unsigned short es ;
559 unsigned short ds ;
560 unsigned short fsindex ;
561 unsigned short gsindex ;
562 unsigned long fs ;
563 unsigned long gs ;
564 struct perf_event *ptrace_bps[4] ;
565 unsigned long debugreg6 ;
566 unsigned long ptrace_dr7 ;
567 unsigned long cr2 ;
568 unsigned long trap_nr ;
569 unsigned long error_code ;
570 struct fpu fpu ;
571 unsigned long *io_bitmap_ptr ;
572 unsigned long iopl ;
573 unsigned int io_bitmap_max ;
574};
575#line 23 "include/asm-generic/atomic-long.h"
576typedef atomic64_t atomic_long_t;
577#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
578typedef u16 __ticket_t;
579#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
580typedef u32 __ticketpair_t;
581#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
582struct __raw_tickets {
583 __ticket_t head ;
584 __ticket_t tail ;
585};
586#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
587union __anonunion____missing_field_name_38 {
588 __ticketpair_t head_tail ;
589 struct __raw_tickets tickets ;
590};
591#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
592struct arch_spinlock {
593 union __anonunion____missing_field_name_38 __annonCompField17 ;
594};
595#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
596typedef struct arch_spinlock arch_spinlock_t;
597#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
598struct __anonstruct____missing_field_name_40 {
599 u32 read ;
600 s32 write ;
601};
602#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
603union __anonunion_arch_rwlock_t_39 {
604 s64 lock ;
605 struct __anonstruct____missing_field_name_40 __annonCompField18 ;
606};
607#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
608typedef union __anonunion_arch_rwlock_t_39 arch_rwlock_t;
609#line 12 "include/linux/lockdep.h"
610struct task_struct;
611#line 391 "include/linux/lockdep.h"
612struct lock_class_key {
613
614};
615#line 20 "include/linux/spinlock_types.h"
616struct raw_spinlock {
617 arch_spinlock_t raw_lock ;
618 unsigned int magic ;
619 unsigned int owner_cpu ;
620 void *owner ;
621};
622#line 20 "include/linux/spinlock_types.h"
623typedef struct raw_spinlock raw_spinlock_t;
624#line 64 "include/linux/spinlock_types.h"
625union __anonunion____missing_field_name_41 {
626 struct raw_spinlock rlock ;
627};
628#line 64 "include/linux/spinlock_types.h"
629struct spinlock {
630 union __anonunion____missing_field_name_41 __annonCompField19 ;
631};
632#line 64 "include/linux/spinlock_types.h"
633typedef struct spinlock spinlock_t;
634#line 11 "include/linux/rwlock_types.h"
635struct __anonstruct_rwlock_t_42 {
636 arch_rwlock_t raw_lock ;
637 unsigned int magic ;
638 unsigned int owner_cpu ;
639 void *owner ;
640};
641#line 11 "include/linux/rwlock_types.h"
642typedef struct __anonstruct_rwlock_t_42 rwlock_t;
643#line 119 "include/linux/seqlock.h"
644struct seqcount {
645 unsigned int sequence ;
646};
647#line 119 "include/linux/seqlock.h"
648typedef struct seqcount seqcount_t;
649#line 14 "include/linux/time.h"
650struct timespec {
651 __kernel_time_t tv_sec ;
652 long tv_nsec ;
653};
654#line 100 "include/linux/rbtree.h"
655struct rb_node {
656 unsigned long rb_parent_color ;
657 struct rb_node *rb_right ;
658 struct rb_node *rb_left ;
659} __attribute__((__aligned__(sizeof(long )))) ;
660#line 110 "include/linux/rbtree.h"
661struct rb_root {
662 struct rb_node *rb_node ;
663};
664#line 98 "include/linux/nodemask.h"
665struct __anonstruct_nodemask_t_44 {
666 unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
667};
668#line 98 "include/linux/nodemask.h"
669typedef struct __anonstruct_nodemask_t_44 nodemask_t;
670#line 14 "include/linux/prio_tree.h"
671struct prio_tree_node;
672#line 14 "include/linux/prio_tree.h"
673struct raw_prio_tree_node {
674 struct prio_tree_node *left ;
675 struct prio_tree_node *right ;
676 struct prio_tree_node *parent ;
677};
678#line 20 "include/linux/prio_tree.h"
679struct prio_tree_node {
680 struct prio_tree_node *left ;
681 struct prio_tree_node *right ;
682 struct prio_tree_node *parent ;
683 unsigned long start ;
684 unsigned long last ;
685};
686#line 28 "include/linux/prio_tree.h"
687struct prio_tree_root {
688 struct prio_tree_node *prio_tree_node ;
689 unsigned short index_bits ;
690 unsigned short raw ;
691};
692#line 19 "include/linux/rwsem.h"
693struct rw_semaphore;
694#line 19
695struct rw_semaphore;
696#line 25 "include/linux/rwsem.h"
697struct rw_semaphore {
698 long count ;
699 raw_spinlock_t wait_lock ;
700 struct list_head wait_list ;
701};
702#line 49 "include/linux/wait.h"
703struct __wait_queue_head {
704 spinlock_t lock ;
705 struct list_head task_list ;
706};
707#line 53 "include/linux/wait.h"
708typedef struct __wait_queue_head wait_queue_head_t;
709#line 55
710struct task_struct;
711#line 25 "include/linux/completion.h"
712struct completion {
713 unsigned int done ;
714 wait_queue_head_t wait ;
715};
716#line 48 "include/linux/mutex.h"
717struct mutex {
718 atomic_t count ;
719 spinlock_t wait_lock ;
720 struct list_head wait_list ;
721 struct task_struct *owner ;
722 char const *name ;
723 void *magic ;
724};
725#line 69 "include/linux/mutex.h"
726struct mutex_waiter {
727 struct list_head list ;
728 struct task_struct *task ;
729 void *magic ;
730};
731#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
732struct __anonstruct_mm_context_t_45 {
733 void *ldt ;
734 int size ;
735 unsigned short ia32_compat ;
736 struct mutex lock ;
737 void *vdso ;
738};
739#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
740typedef struct __anonstruct_mm_context_t_45 mm_context_t;
741#line 23 "include/linux/mm_types.h"
742struct address_space;
743#line 23
744struct address_space;
745#line 40 "include/linux/mm_types.h"
746union __anonunion____missing_field_name_47 {
747 unsigned long index ;
748 void *freelist ;
749};
750#line 40 "include/linux/mm_types.h"
751struct __anonstruct____missing_field_name_51 {
752 unsigned int inuse : 16 ;
753 unsigned int objects : 15 ;
754 unsigned int frozen : 1 ;
755};
756#line 40 "include/linux/mm_types.h"
757union __anonunion____missing_field_name_50 {
758 atomic_t _mapcount ;
759 struct __anonstruct____missing_field_name_51 __annonCompField21 ;
760};
761#line 40 "include/linux/mm_types.h"
762struct __anonstruct____missing_field_name_49 {
763 union __anonunion____missing_field_name_50 __annonCompField22 ;
764 atomic_t _count ;
765};
766#line 40 "include/linux/mm_types.h"
767union __anonunion____missing_field_name_48 {
768 unsigned long counters ;
769 struct __anonstruct____missing_field_name_49 __annonCompField23 ;
770};
771#line 40 "include/linux/mm_types.h"
772struct __anonstruct____missing_field_name_46 {
773 union __anonunion____missing_field_name_47 __annonCompField20 ;
774 union __anonunion____missing_field_name_48 __annonCompField24 ;
775};
776#line 40 "include/linux/mm_types.h"
777struct __anonstruct____missing_field_name_53 {
778 struct page *next ;
779 int pages ;
780 int pobjects ;
781};
782#line 40 "include/linux/mm_types.h"
783union __anonunion____missing_field_name_52 {
784 struct list_head lru ;
785 struct __anonstruct____missing_field_name_53 __annonCompField26 ;
786};
787#line 40 "include/linux/mm_types.h"
788union __anonunion____missing_field_name_54 {
789 unsigned long private ;
790 struct kmem_cache *slab ;
791 struct page *first_page ;
792};
793#line 40 "include/linux/mm_types.h"
794struct page {
795 unsigned long flags ;
796 struct address_space *mapping ;
797 struct __anonstruct____missing_field_name_46 __annonCompField25 ;
798 union __anonunion____missing_field_name_52 __annonCompField27 ;
799 union __anonunion____missing_field_name_54 __annonCompField28 ;
800 unsigned long debug_flags ;
801} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
802#line 200 "include/linux/mm_types.h"
803struct __anonstruct_vm_set_56 {
804 struct list_head list ;
805 void *parent ;
806 struct vm_area_struct *head ;
807};
808#line 200 "include/linux/mm_types.h"
809union __anonunion_shared_55 {
810 struct __anonstruct_vm_set_56 vm_set ;
811 struct raw_prio_tree_node prio_tree_node ;
812};
813#line 200
814struct anon_vma;
815#line 200
816struct vm_operations_struct;
817#line 200
818struct mempolicy;
819#line 200 "include/linux/mm_types.h"
820struct vm_area_struct {
821 struct mm_struct *vm_mm ;
822 unsigned long vm_start ;
823 unsigned long vm_end ;
824 struct vm_area_struct *vm_next ;
825 struct vm_area_struct *vm_prev ;
826 pgprot_t vm_page_prot ;
827 unsigned long vm_flags ;
828 struct rb_node vm_rb ;
829 union __anonunion_shared_55 shared ;
830 struct list_head anon_vma_chain ;
831 struct anon_vma *anon_vma ;
832 struct vm_operations_struct const *vm_ops ;
833 unsigned long vm_pgoff ;
834 struct file *vm_file ;
835 void *vm_private_data ;
836 struct mempolicy *vm_policy ;
837};
838#line 257 "include/linux/mm_types.h"
839struct core_thread {
840 struct task_struct *task ;
841 struct core_thread *next ;
842};
843#line 262 "include/linux/mm_types.h"
844struct core_state {
845 atomic_t nr_threads ;
846 struct core_thread dumper ;
847 struct completion startup ;
848};
849#line 284 "include/linux/mm_types.h"
850struct mm_rss_stat {
851 atomic_long_t count[3] ;
852};
853#line 288
854struct linux_binfmt;
855#line 288
856struct mmu_notifier_mm;
857#line 288 "include/linux/mm_types.h"
858struct mm_struct {
859 struct vm_area_struct *mmap ;
860 struct rb_root mm_rb ;
861 struct vm_area_struct *mmap_cache ;
862 unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
863 unsigned long pgoff , unsigned long flags ) ;
864 void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
865 unsigned long mmap_base ;
866 unsigned long task_size ;
867 unsigned long cached_hole_size ;
868 unsigned long free_area_cache ;
869 pgd_t *pgd ;
870 atomic_t mm_users ;
871 atomic_t mm_count ;
872 int map_count ;
873 spinlock_t page_table_lock ;
874 struct rw_semaphore mmap_sem ;
875 struct list_head mmlist ;
876 unsigned long hiwater_rss ;
877 unsigned long hiwater_vm ;
878 unsigned long total_vm ;
879 unsigned long locked_vm ;
880 unsigned long pinned_vm ;
881 unsigned long shared_vm ;
882 unsigned long exec_vm ;
883 unsigned long stack_vm ;
884 unsigned long reserved_vm ;
885 unsigned long def_flags ;
886 unsigned long nr_ptes ;
887 unsigned long start_code ;
888 unsigned long end_code ;
889 unsigned long start_data ;
890 unsigned long end_data ;
891 unsigned long start_brk ;
892 unsigned long brk ;
893 unsigned long start_stack ;
894 unsigned long arg_start ;
895 unsigned long arg_end ;
896 unsigned long env_start ;
897 unsigned long env_end ;
898 unsigned long saved_auxv[44] ;
899 struct mm_rss_stat rss_stat ;
900 struct linux_binfmt *binfmt ;
901 cpumask_var_t cpu_vm_mask_var ;
902 mm_context_t context ;
903 unsigned int faultstamp ;
904 unsigned int token_priority ;
905 unsigned int last_interval ;
906 unsigned long flags ;
907 struct core_state *core_state ;
908 spinlock_t ioctx_lock ;
909 struct hlist_head ioctx_list ;
910 struct task_struct *owner ;
911 struct file *exe_file ;
912 unsigned long num_exe_file_vmas ;
913 struct mmu_notifier_mm *mmu_notifier_mm ;
914 pgtable_t pmd_huge_pte ;
915 struct cpumask cpumask_allocation ;
916};
917#line 7 "include/asm-generic/cputime.h"
918typedef unsigned long cputime_t;
919#line 18 "include/linux/smp.h"
920struct call_single_data {
921 struct list_head list ;
922 void (*func)(void *info ) ;
923 void *info ;
924 u16 flags ;
925 u16 priv ;
926};
927#line 182 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/x86_init.h"
928struct pci_dev;
929#line 182
930struct pci_dev;
931#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
932struct device;
933#line 46 "include/linux/ktime.h"
934union ktime {
935 s64 tv64 ;
936};
937#line 59 "include/linux/ktime.h"
938typedef union ktime ktime_t;
939#line 10 "include/linux/timer.h"
940struct tvec_base;
941#line 10
942struct tvec_base;
943#line 12 "include/linux/timer.h"
944struct timer_list {
945 struct list_head entry ;
946 unsigned long expires ;
947 struct tvec_base *base ;
948 void (*function)(unsigned long ) ;
949 unsigned long data ;
950 int slack ;
951 int start_pid ;
952 void *start_site ;
953 char start_comm[16] ;
954};
955#line 289
956struct hrtimer;
957#line 289
958struct hrtimer;
959#line 290
960enum hrtimer_restart;
961#line 17 "include/linux/workqueue.h"
962struct work_struct;
963#line 17
964struct work_struct;
965#line 79 "include/linux/workqueue.h"
966struct work_struct {
967 atomic_long_t data ;
968 struct list_head entry ;
969 void (*func)(struct work_struct *work ) ;
970};
971#line 92 "include/linux/workqueue.h"
972struct delayed_work {
973 struct work_struct work ;
974 struct timer_list timer ;
975};
976#line 42 "include/linux/pm.h"
977struct device;
978#line 50 "include/linux/pm.h"
979struct pm_message {
980 int event ;
981};
982#line 50 "include/linux/pm.h"
983typedef struct pm_message pm_message_t;
984#line 264 "include/linux/pm.h"
985struct dev_pm_ops {
986 int (*prepare)(struct device *dev ) ;
987 void (*complete)(struct device *dev ) ;
988 int (*suspend)(struct device *dev ) ;
989 int (*resume)(struct device *dev ) ;
990 int (*freeze)(struct device *dev ) ;
991 int (*thaw)(struct device *dev ) ;
992 int (*poweroff)(struct device *dev ) ;
993 int (*restore)(struct device *dev ) ;
994 int (*suspend_late)(struct device *dev ) ;
995 int (*resume_early)(struct device *dev ) ;
996 int (*freeze_late)(struct device *dev ) ;
997 int (*thaw_early)(struct device *dev ) ;
998 int (*poweroff_late)(struct device *dev ) ;
999 int (*restore_early)(struct device *dev ) ;
1000 int (*suspend_noirq)(struct device *dev ) ;
1001 int (*resume_noirq)(struct device *dev ) ;
1002 int (*freeze_noirq)(struct device *dev ) ;
1003 int (*thaw_noirq)(struct device *dev ) ;
1004 int (*poweroff_noirq)(struct device *dev ) ;
1005 int (*restore_noirq)(struct device *dev ) ;
1006 int (*runtime_suspend)(struct device *dev ) ;
1007 int (*runtime_resume)(struct device *dev ) ;
1008 int (*runtime_idle)(struct device *dev ) ;
1009};
1010#line 458
1011enum rpm_status {
1012 RPM_ACTIVE = 0,
1013 RPM_RESUMING = 1,
1014 RPM_SUSPENDED = 2,
1015 RPM_SUSPENDING = 3
1016} ;
1017#line 480
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 488
1026struct wakeup_source;
1027#line 488
1028struct wakeup_source;
1029#line 495 "include/linux/pm.h"
1030struct pm_subsys_data {
1031 spinlock_t lock ;
1032 unsigned int refcount ;
1033};
1034#line 506
1035struct dev_pm_qos_request;
1036#line 506
1037struct pm_qos_constraints;
1038#line 506 "include/linux/pm.h"
1039struct dev_pm_info {
1040 pm_message_t power_state ;
1041 unsigned int can_wakeup : 1 ;
1042 unsigned int async_suspend : 1 ;
1043 bool is_prepared : 1 ;
1044 bool is_suspended : 1 ;
1045 bool ignore_children : 1 ;
1046 spinlock_t lock ;
1047 struct list_head entry ;
1048 struct completion completion ;
1049 struct wakeup_source *wakeup ;
1050 bool wakeup_path : 1 ;
1051 struct timer_list suspend_timer ;
1052 unsigned long timer_expires ;
1053 struct work_struct work ;
1054 wait_queue_head_t wait_queue ;
1055 atomic_t usage_count ;
1056 atomic_t child_count ;
1057 unsigned int disable_depth : 3 ;
1058 unsigned int idle_notification : 1 ;
1059 unsigned int request_pending : 1 ;
1060 unsigned int deferred_resume : 1 ;
1061 unsigned int run_wake : 1 ;
1062 unsigned int runtime_auto : 1 ;
1063 unsigned int no_callbacks : 1 ;
1064 unsigned int irq_safe : 1 ;
1065 unsigned int use_autosuspend : 1 ;
1066 unsigned int timer_autosuspends : 1 ;
1067 enum rpm_request request ;
1068 enum rpm_status runtime_status ;
1069 int runtime_error ;
1070 int autosuspend_delay ;
1071 unsigned long last_busy ;
1072 unsigned long active_jiffies ;
1073 unsigned long suspended_jiffies ;
1074 unsigned long accounting_timestamp ;
1075 ktime_t suspend_time ;
1076 s64 max_time_suspended_ns ;
1077 struct dev_pm_qos_request *pq_req ;
1078 struct pm_subsys_data *subsys_data ;
1079 struct pm_qos_constraints *constraints ;
1080};
1081#line 564 "include/linux/pm.h"
1082struct dev_pm_domain {
1083 struct dev_pm_ops ops ;
1084};
1085#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/topology.h"
1086struct pci_bus;
1087#line 174
1088struct pci_bus;
1089#line 71 "include/asm-generic/iomap.h"
1090struct pci_dev;
1091#line 14 "include/asm-generic/pci_iomap.h"
1092struct pci_dev;
1093#line 8 "include/linux/vmalloc.h"
1094struct vm_area_struct;
1095#line 336 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
1096struct bio_vec;
1097#line 336
1098struct bio_vec;
1099#line 84 "include/linux/sem.h"
1100struct task_struct;
1101#line 101
1102struct sem_undo_list;
1103#line 101 "include/linux/sem.h"
1104struct sysv_sem {
1105 struct sem_undo_list *undo_list ;
1106};
1107#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1108struct siginfo;
1109#line 10
1110struct siginfo;
1111#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1112struct __anonstruct_sigset_t_151 {
1113 unsigned long sig[1] ;
1114};
1115#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1116typedef struct __anonstruct_sigset_t_151 sigset_t;
1117#line 17 "include/asm-generic/signal-defs.h"
1118typedef void __signalfn_t(int );
1119#line 18 "include/asm-generic/signal-defs.h"
1120typedef __signalfn_t *__sighandler_t;
1121#line 20 "include/asm-generic/signal-defs.h"
1122typedef void __restorefn_t(void);
1123#line 21 "include/asm-generic/signal-defs.h"
1124typedef __restorefn_t *__sigrestore_t;
1125#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1126struct sigaction {
1127 __sighandler_t sa_handler ;
1128 unsigned long sa_flags ;
1129 __sigrestore_t sa_restorer ;
1130 sigset_t sa_mask ;
1131};
1132#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1133struct k_sigaction {
1134 struct sigaction sa ;
1135};
1136#line 7 "include/asm-generic/siginfo.h"
1137union sigval {
1138 int sival_int ;
1139 void *sival_ptr ;
1140};
1141#line 7 "include/asm-generic/siginfo.h"
1142typedef union sigval sigval_t;
1143#line 48 "include/asm-generic/siginfo.h"
1144struct __anonstruct__kill_153 {
1145 __kernel_pid_t _pid ;
1146 __kernel_uid32_t _uid ;
1147};
1148#line 48 "include/asm-generic/siginfo.h"
1149struct __anonstruct__timer_154 {
1150 __kernel_timer_t _tid ;
1151 int _overrun ;
1152 char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
1153 sigval_t _sigval ;
1154 int _sys_private ;
1155};
1156#line 48 "include/asm-generic/siginfo.h"
1157struct __anonstruct__rt_155 {
1158 __kernel_pid_t _pid ;
1159 __kernel_uid32_t _uid ;
1160 sigval_t _sigval ;
1161};
1162#line 48 "include/asm-generic/siginfo.h"
1163struct __anonstruct__sigchld_156 {
1164 __kernel_pid_t _pid ;
1165 __kernel_uid32_t _uid ;
1166 int _status ;
1167 __kernel_clock_t _utime ;
1168 __kernel_clock_t _stime ;
1169};
1170#line 48 "include/asm-generic/siginfo.h"
1171struct __anonstruct__sigfault_157 {
1172 void *_addr ;
1173 short _addr_lsb ;
1174};
1175#line 48 "include/asm-generic/siginfo.h"
1176struct __anonstruct__sigpoll_158 {
1177 long _band ;
1178 int _fd ;
1179};
1180#line 48 "include/asm-generic/siginfo.h"
1181union __anonunion__sifields_152 {
1182 int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
1183 struct __anonstruct__kill_153 _kill ;
1184 struct __anonstruct__timer_154 _timer ;
1185 struct __anonstruct__rt_155 _rt ;
1186 struct __anonstruct__sigchld_156 _sigchld ;
1187 struct __anonstruct__sigfault_157 _sigfault ;
1188 struct __anonstruct__sigpoll_158 _sigpoll ;
1189};
1190#line 48 "include/asm-generic/siginfo.h"
1191struct siginfo {
1192 int si_signo ;
1193 int si_errno ;
1194 int si_code ;
1195 union __anonunion__sifields_152 _sifields ;
1196};
1197#line 48 "include/asm-generic/siginfo.h"
1198typedef struct siginfo siginfo_t;
1199#line 288
1200struct siginfo;
1201#line 10 "include/linux/signal.h"
1202struct task_struct;
1203#line 18
1204struct user_struct;
1205#line 28 "include/linux/signal.h"
1206struct sigpending {
1207 struct list_head list ;
1208 sigset_t signal ;
1209};
1210#line 239
1211struct timespec;
1212#line 240
1213struct pt_regs;
1214#line 6 "include/linux/pid.h"
1215enum pid_type {
1216 PIDTYPE_PID = 0,
1217 PIDTYPE_PGID = 1,
1218 PIDTYPE_SID = 2,
1219 PIDTYPE_MAX = 3
1220} ;
1221#line 50
1222struct pid_namespace;
1223#line 50 "include/linux/pid.h"
1224struct upid {
1225 int nr ;
1226 struct pid_namespace *ns ;
1227 struct hlist_node pid_chain ;
1228};
1229#line 57 "include/linux/pid.h"
1230struct pid {
1231 atomic_t count ;
1232 unsigned int level ;
1233 struct hlist_head tasks[3] ;
1234 struct rcu_head rcu ;
1235 struct upid numbers[1] ;
1236};
1237#line 69 "include/linux/pid.h"
1238struct pid_link {
1239 struct hlist_node node ;
1240 struct pid *pid ;
1241};
1242#line 100
1243struct pid_namespace;
1244#line 60 "include/linux/pageblock-flags.h"
1245struct page;
1246#line 9 "include/linux/memory_hotplug.h"
1247struct page;
1248#line 994 "include/linux/mmzone.h"
1249struct page;
1250#line 18 "include/linux/percpu_counter.h"
1251struct percpu_counter {
1252 raw_spinlock_t lock ;
1253 s64 count ;
1254 struct list_head list ;
1255 s32 *counters ;
1256};
1257#line 50 "include/linux/proportions.h"
1258struct prop_local_percpu {
1259 struct percpu_counter events ;
1260 int shift ;
1261 unsigned long period ;
1262 raw_spinlock_t lock ;
1263};
1264#line 10 "include/linux/seccomp.h"
1265struct __anonstruct_seccomp_t_163 {
1266 int mode ;
1267};
1268#line 10 "include/linux/seccomp.h"
1269typedef struct __anonstruct_seccomp_t_163 seccomp_t;
1270#line 81 "include/linux/plist.h"
1271struct plist_head {
1272 struct list_head node_list ;
1273};
1274#line 85 "include/linux/plist.h"
1275struct plist_node {
1276 int prio ;
1277 struct list_head prio_list ;
1278 struct list_head node_list ;
1279};
1280#line 40 "include/linux/rtmutex.h"
1281struct rt_mutex_waiter;
1282#line 40
1283struct rt_mutex_waiter;
1284#line 42 "include/linux/resource.h"
1285struct rlimit {
1286 unsigned long rlim_cur ;
1287 unsigned long rlim_max ;
1288};
1289#line 81
1290struct task_struct;
1291#line 8 "include/linux/timerqueue.h"
1292struct timerqueue_node {
1293 struct rb_node node ;
1294 ktime_t expires ;
1295};
1296#line 13 "include/linux/timerqueue.h"
1297struct timerqueue_head {
1298 struct rb_root head ;
1299 struct timerqueue_node *next ;
1300};
1301#line 27 "include/linux/hrtimer.h"
1302struct hrtimer_clock_base;
1303#line 27
1304struct hrtimer_clock_base;
1305#line 28
1306struct hrtimer_cpu_base;
1307#line 28
1308struct hrtimer_cpu_base;
1309#line 44
1310enum hrtimer_restart {
1311 HRTIMER_NORESTART = 0,
1312 HRTIMER_RESTART = 1
1313} ;
1314#line 108 "include/linux/hrtimer.h"
1315struct hrtimer {
1316 struct timerqueue_node node ;
1317 ktime_t _softexpires ;
1318 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1319 struct hrtimer_clock_base *base ;
1320 unsigned long state ;
1321 int start_pid ;
1322 void *start_site ;
1323 char start_comm[16] ;
1324};
1325#line 145 "include/linux/hrtimer.h"
1326struct hrtimer_clock_base {
1327 struct hrtimer_cpu_base *cpu_base ;
1328 int index ;
1329 clockid_t clockid ;
1330 struct timerqueue_head active ;
1331 ktime_t resolution ;
1332 ktime_t (*get_time)(void) ;
1333 ktime_t softirq_time ;
1334 ktime_t offset ;
1335};
1336#line 178 "include/linux/hrtimer.h"
1337struct hrtimer_cpu_base {
1338 raw_spinlock_t lock ;
1339 unsigned long active_bases ;
1340 ktime_t expires_next ;
1341 int hres_active ;
1342 int hang_detected ;
1343 unsigned long nr_events ;
1344 unsigned long nr_retries ;
1345 unsigned long nr_hangs ;
1346 ktime_t max_hang_time ;
1347 struct hrtimer_clock_base clock_base[3] ;
1348};
1349#line 11 "include/linux/task_io_accounting.h"
1350struct task_io_accounting {
1351 u64 rchar ;
1352 u64 wchar ;
1353 u64 syscr ;
1354 u64 syscw ;
1355 u64 read_bytes ;
1356 u64 write_bytes ;
1357 u64 cancelled_write_bytes ;
1358};
1359#line 13 "include/linux/latencytop.h"
1360struct task_struct;
1361#line 20 "include/linux/latencytop.h"
1362struct latency_record {
1363 unsigned long backtrace[12] ;
1364 unsigned int count ;
1365 unsigned long time ;
1366 unsigned long max ;
1367};
1368#line 29 "include/linux/sysctl.h"
1369struct completion;
1370#line 939
1371struct nsproxy;
1372#line 939
1373struct nsproxy;
1374#line 29 "include/linux/key.h"
1375typedef int32_t key_serial_t;
1376#line 32 "include/linux/key.h"
1377typedef uint32_t key_perm_t;
1378#line 34
1379struct key;
1380#line 34
1381struct key;
1382#line 74
1383struct seq_file;
1384#line 75
1385struct user_struct;
1386#line 76
1387struct signal_struct;
1388#line 76
1389struct signal_struct;
1390#line 77
1391struct cred;
1392#line 77
1393struct cred;
1394#line 79
1395struct key_type;
1396#line 79
1397struct key_type;
1398#line 81
1399struct keyring_list;
1400#line 81
1401struct keyring_list;
1402#line 124
1403struct key_user;
1404#line 124 "include/linux/key.h"
1405union __anonunion____missing_field_name_220 {
1406 time_t expiry ;
1407 time_t revoked_at ;
1408};
1409#line 124 "include/linux/key.h"
1410union __anonunion_type_data_221 {
1411 struct list_head link ;
1412 unsigned long x[2] ;
1413 void *p[2] ;
1414 int reject_error ;
1415};
1416#line 124 "include/linux/key.h"
1417union __anonunion_payload_222 {
1418 unsigned long value ;
1419 void *rcudata ;
1420 void *data ;
1421 struct keyring_list *subscriptions ;
1422};
1423#line 124 "include/linux/key.h"
1424struct key {
1425 atomic_t usage ;
1426 key_serial_t serial ;
1427 struct rb_node serial_node ;
1428 struct key_type *type ;
1429 struct rw_semaphore sem ;
1430 struct key_user *user ;
1431 void *security ;
1432 union __anonunion____missing_field_name_220 __annonCompField41 ;
1433 uid_t uid ;
1434 gid_t gid ;
1435 key_perm_t perm ;
1436 unsigned short quotalen ;
1437 unsigned short datalen ;
1438 unsigned long flags ;
1439 char *description ;
1440 union __anonunion_type_data_221 type_data ;
1441 union __anonunion_payload_222 payload ;
1442};
1443#line 18 "include/linux/selinux.h"
1444struct audit_context;
1445#line 18
1446struct audit_context;
1447#line 21 "include/linux/cred.h"
1448struct user_struct;
1449#line 22
1450struct cred;
1451#line 23
1452struct inode;
1453#line 23
1454struct inode;
1455#line 31 "include/linux/cred.h"
1456struct group_info {
1457 atomic_t usage ;
1458 int ngroups ;
1459 int nblocks ;
1460 gid_t small_block[32] ;
1461 gid_t *blocks[0] ;
1462};
1463#line 83 "include/linux/cred.h"
1464struct thread_group_cred {
1465 atomic_t usage ;
1466 pid_t tgid ;
1467 spinlock_t lock ;
1468 struct key *session_keyring ;
1469 struct key *process_keyring ;
1470 struct rcu_head rcu ;
1471};
1472#line 116 "include/linux/cred.h"
1473struct cred {
1474 atomic_t usage ;
1475 atomic_t subscribers ;
1476 void *put_addr ;
1477 unsigned int magic ;
1478 uid_t uid ;
1479 gid_t gid ;
1480 uid_t suid ;
1481 gid_t sgid ;
1482 uid_t euid ;
1483 gid_t egid ;
1484 uid_t fsuid ;
1485 gid_t fsgid ;
1486 unsigned int securebits ;
1487 kernel_cap_t cap_inheritable ;
1488 kernel_cap_t cap_permitted ;
1489 kernel_cap_t cap_effective ;
1490 kernel_cap_t cap_bset ;
1491 unsigned char jit_keyring ;
1492 struct key *thread_keyring ;
1493 struct key *request_key_auth ;
1494 struct thread_group_cred *tgcred ;
1495 void *security ;
1496 struct user_struct *user ;
1497 struct user_namespace *user_ns ;
1498 struct group_info *group_info ;
1499 struct rcu_head rcu ;
1500};
1501#line 61 "include/linux/llist.h"
1502struct llist_node;
1503#line 65 "include/linux/llist.h"
1504struct llist_node {
1505 struct llist_node *next ;
1506};
1507#line 97 "include/linux/sched.h"
1508struct futex_pi_state;
1509#line 97
1510struct futex_pi_state;
1511#line 98
1512struct robust_list_head;
1513#line 98
1514struct robust_list_head;
1515#line 99
1516struct bio_list;
1517#line 99
1518struct bio_list;
1519#line 100
1520struct fs_struct;
1521#line 100
1522struct fs_struct;
1523#line 101
1524struct perf_event_context;
1525#line 101
1526struct perf_event_context;
1527#line 102
1528struct blk_plug;
1529#line 102
1530struct blk_plug;
1531#line 150
1532struct seq_file;
1533#line 151
1534struct cfs_rq;
1535#line 151
1536struct cfs_rq;
1537#line 259
1538struct task_struct;
1539#line 366
1540struct nsproxy;
1541#line 367
1542struct user_namespace;
1543#line 58 "include/linux/aio_abi.h"
1544struct io_event {
1545 __u64 data ;
1546 __u64 obj ;
1547 __s64 res ;
1548 __s64 res2 ;
1549};
1550#line 16 "include/linux/uio.h"
1551struct iovec {
1552 void *iov_base ;
1553 __kernel_size_t iov_len ;
1554};
1555#line 15 "include/linux/aio.h"
1556struct kioctx;
1557#line 15
1558struct kioctx;
1559#line 87 "include/linux/aio.h"
1560union __anonunion_ki_obj_224 {
1561 void *user ;
1562 struct task_struct *tsk ;
1563};
1564#line 87
1565struct eventfd_ctx;
1566#line 87 "include/linux/aio.h"
1567struct kiocb {
1568 struct list_head ki_run_list ;
1569 unsigned long ki_flags ;
1570 int ki_users ;
1571 unsigned int ki_key ;
1572 struct file *ki_filp ;
1573 struct kioctx *ki_ctx ;
1574 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
1575 ssize_t (*ki_retry)(struct kiocb * ) ;
1576 void (*ki_dtor)(struct kiocb * ) ;
1577 union __anonunion_ki_obj_224 ki_obj ;
1578 __u64 ki_user_data ;
1579 loff_t ki_pos ;
1580 void *private ;
1581 unsigned short ki_opcode ;
1582 size_t ki_nbytes ;
1583 char *ki_buf ;
1584 size_t ki_left ;
1585 struct iovec ki_inline_vec ;
1586 struct iovec *ki_iovec ;
1587 unsigned long ki_nr_segs ;
1588 unsigned long ki_cur_seg ;
1589 struct list_head ki_list ;
1590 struct list_head ki_batch ;
1591 struct eventfd_ctx *ki_eventfd ;
1592};
1593#line 166 "include/linux/aio.h"
1594struct aio_ring_info {
1595 unsigned long mmap_base ;
1596 unsigned long mmap_size ;
1597 struct page **ring_pages ;
1598 spinlock_t ring_lock ;
1599 long nr_pages ;
1600 unsigned int nr ;
1601 unsigned int tail ;
1602 struct page *internal_pages[8] ;
1603};
1604#line 179 "include/linux/aio.h"
1605struct kioctx {
1606 atomic_t users ;
1607 int dead ;
1608 struct mm_struct *mm ;
1609 unsigned long user_id ;
1610 struct hlist_node list ;
1611 wait_queue_head_t wait ;
1612 spinlock_t ctx_lock ;
1613 int reqs_active ;
1614 struct list_head active_reqs ;
1615 struct list_head run_list ;
1616 unsigned int max_reqs ;
1617 struct aio_ring_info ring_info ;
1618 struct delayed_work wq ;
1619 struct rcu_head rcu_head ;
1620};
1621#line 214
1622struct mm_struct;
1623#line 443 "include/linux/sched.h"
1624struct sighand_struct {
1625 atomic_t count ;
1626 struct k_sigaction action[64] ;
1627 spinlock_t siglock ;
1628 wait_queue_head_t signalfd_wqh ;
1629};
1630#line 450 "include/linux/sched.h"
1631struct pacct_struct {
1632 int ac_flag ;
1633 long ac_exitcode ;
1634 unsigned long ac_mem ;
1635 cputime_t ac_utime ;
1636 cputime_t ac_stime ;
1637 unsigned long ac_minflt ;
1638 unsigned long ac_majflt ;
1639};
1640#line 458 "include/linux/sched.h"
1641struct cpu_itimer {
1642 cputime_t expires ;
1643 cputime_t incr ;
1644 u32 error ;
1645 u32 incr_error ;
1646};
1647#line 476 "include/linux/sched.h"
1648struct task_cputime {
1649 cputime_t utime ;
1650 cputime_t stime ;
1651 unsigned long long sum_exec_runtime ;
1652};
1653#line 512 "include/linux/sched.h"
1654struct thread_group_cputimer {
1655 struct task_cputime cputime ;
1656 int running ;
1657 raw_spinlock_t lock ;
1658};
1659#line 519
1660struct autogroup;
1661#line 519
1662struct autogroup;
1663#line 528
1664struct tty_struct;
1665#line 528
1666struct taskstats;
1667#line 528
1668struct tty_audit_buf;
1669#line 528 "include/linux/sched.h"
1670struct signal_struct {
1671 atomic_t sigcnt ;
1672 atomic_t live ;
1673 int nr_threads ;
1674 wait_queue_head_t wait_chldexit ;
1675 struct task_struct *curr_target ;
1676 struct sigpending shared_pending ;
1677 int group_exit_code ;
1678 int notify_count ;
1679 struct task_struct *group_exit_task ;
1680 int group_stop_count ;
1681 unsigned int flags ;
1682 unsigned int is_child_subreaper : 1 ;
1683 unsigned int has_child_subreaper : 1 ;
1684 struct list_head posix_timers ;
1685 struct hrtimer real_timer ;
1686 struct pid *leader_pid ;
1687 ktime_t it_real_incr ;
1688 struct cpu_itimer it[2] ;
1689 struct thread_group_cputimer cputimer ;
1690 struct task_cputime cputime_expires ;
1691 struct list_head cpu_timers[3] ;
1692 struct pid *tty_old_pgrp ;
1693 int leader ;
1694 struct tty_struct *tty ;
1695 struct autogroup *autogroup ;
1696 cputime_t utime ;
1697 cputime_t stime ;
1698 cputime_t cutime ;
1699 cputime_t cstime ;
1700 cputime_t gtime ;
1701 cputime_t cgtime ;
1702 cputime_t prev_utime ;
1703 cputime_t prev_stime ;
1704 unsigned long nvcsw ;
1705 unsigned long nivcsw ;
1706 unsigned long cnvcsw ;
1707 unsigned long cnivcsw ;
1708 unsigned long min_flt ;
1709 unsigned long maj_flt ;
1710 unsigned long cmin_flt ;
1711 unsigned long cmaj_flt ;
1712 unsigned long inblock ;
1713 unsigned long oublock ;
1714 unsigned long cinblock ;
1715 unsigned long coublock ;
1716 unsigned long maxrss ;
1717 unsigned long cmaxrss ;
1718 struct task_io_accounting ioac ;
1719 unsigned long long sum_sched_runtime ;
1720 struct rlimit rlim[16] ;
1721 struct pacct_struct pacct ;
1722 struct taskstats *stats ;
1723 unsigned int audit_tty ;
1724 struct tty_audit_buf *tty_audit_buf ;
1725 struct rw_semaphore group_rwsem ;
1726 int oom_adj ;
1727 int oom_score_adj ;
1728 int oom_score_adj_min ;
1729 struct mutex cred_guard_mutex ;
1730};
1731#line 703 "include/linux/sched.h"
1732struct user_struct {
1733 atomic_t __count ;
1734 atomic_t processes ;
1735 atomic_t files ;
1736 atomic_t sigpending ;
1737 atomic_t inotify_watches ;
1738 atomic_t inotify_devs ;
1739 atomic_t fanotify_listeners ;
1740 atomic_long_t epoll_watches ;
1741 unsigned long mq_bytes ;
1742 unsigned long locked_shm ;
1743 struct key *uid_keyring ;
1744 struct key *session_keyring ;
1745 struct hlist_node uidhash_node ;
1746 uid_t uid ;
1747 struct user_namespace *user_ns ;
1748 atomic_long_t locked_vm ;
1749};
1750#line 747
1751struct backing_dev_info;
1752#line 747
1753struct backing_dev_info;
1754#line 748
1755struct reclaim_state;
1756#line 748
1757struct reclaim_state;
1758#line 751 "include/linux/sched.h"
1759struct sched_info {
1760 unsigned long pcount ;
1761 unsigned long long run_delay ;
1762 unsigned long long last_arrival ;
1763 unsigned long long last_queued ;
1764};
1765#line 763 "include/linux/sched.h"
1766struct task_delay_info {
1767 spinlock_t lock ;
1768 unsigned int flags ;
1769 struct timespec blkio_start ;
1770 struct timespec blkio_end ;
1771 u64 blkio_delay ;
1772 u64 swapin_delay ;
1773 u32 blkio_count ;
1774 u32 swapin_count ;
1775 struct timespec freepages_start ;
1776 struct timespec freepages_end ;
1777 u64 freepages_delay ;
1778 u32 freepages_count ;
1779};
1780#line 1088
1781struct io_context;
1782#line 1088
1783struct io_context;
1784#line 1097
1785struct audit_context;
1786#line 1098
1787struct mempolicy;
1788#line 1099
1789struct pipe_inode_info;
1790#line 1099
1791struct pipe_inode_info;
1792#line 1102
1793struct rq;
1794#line 1102
1795struct rq;
1796#line 1122 "include/linux/sched.h"
1797struct sched_class {
1798 struct sched_class const *next ;
1799 void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
1800 void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
1801 void (*yield_task)(struct rq *rq ) ;
1802 bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
1803 void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
1804 struct task_struct *(*pick_next_task)(struct rq *rq ) ;
1805 void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
1806 int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
1807 void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
1808 void (*post_schedule)(struct rq *this_rq ) ;
1809 void (*task_waking)(struct task_struct *task ) ;
1810 void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
1811 void (*set_cpus_allowed)(struct task_struct *p , struct cpumask const *newmask ) ;
1812 void (*rq_online)(struct rq *rq ) ;
1813 void (*rq_offline)(struct rq *rq ) ;
1814 void (*set_curr_task)(struct rq *rq ) ;
1815 void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
1816 void (*task_fork)(struct task_struct *p ) ;
1817 void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
1818 void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
1819 void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
1820 unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
1821 void (*task_move_group)(struct task_struct *p , int on_rq ) ;
1822};
1823#line 1167 "include/linux/sched.h"
1824struct load_weight {
1825 unsigned long weight ;
1826 unsigned long inv_weight ;
1827};
1828#line 1172 "include/linux/sched.h"
1829struct sched_statistics {
1830 u64 wait_start ;
1831 u64 wait_max ;
1832 u64 wait_count ;
1833 u64 wait_sum ;
1834 u64 iowait_count ;
1835 u64 iowait_sum ;
1836 u64 sleep_start ;
1837 u64 sleep_max ;
1838 s64 sum_sleep_runtime ;
1839 u64 block_start ;
1840 u64 block_max ;
1841 u64 exec_max ;
1842 u64 slice_max ;
1843 u64 nr_migrations_cold ;
1844 u64 nr_failed_migrations_affine ;
1845 u64 nr_failed_migrations_running ;
1846 u64 nr_failed_migrations_hot ;
1847 u64 nr_forced_migrations ;
1848 u64 nr_wakeups ;
1849 u64 nr_wakeups_sync ;
1850 u64 nr_wakeups_migrate ;
1851 u64 nr_wakeups_local ;
1852 u64 nr_wakeups_remote ;
1853 u64 nr_wakeups_affine ;
1854 u64 nr_wakeups_affine_attempts ;
1855 u64 nr_wakeups_passive ;
1856 u64 nr_wakeups_idle ;
1857};
1858#line 1207 "include/linux/sched.h"
1859struct sched_entity {
1860 struct load_weight load ;
1861 struct rb_node run_node ;
1862 struct list_head group_node ;
1863 unsigned int on_rq ;
1864 u64 exec_start ;
1865 u64 sum_exec_runtime ;
1866 u64 vruntime ;
1867 u64 prev_sum_exec_runtime ;
1868 u64 nr_migrations ;
1869 struct sched_statistics statistics ;
1870 struct sched_entity *parent ;
1871 struct cfs_rq *cfs_rq ;
1872 struct cfs_rq *my_q ;
1873};
1874#line 1233
1875struct rt_rq;
1876#line 1233 "include/linux/sched.h"
1877struct sched_rt_entity {
1878 struct list_head run_list ;
1879 unsigned long timeout ;
1880 unsigned int time_slice ;
1881 int nr_cpus_allowed ;
1882 struct sched_rt_entity *back ;
1883 struct sched_rt_entity *parent ;
1884 struct rt_rq *rt_rq ;
1885 struct rt_rq *my_q ;
1886};
1887#line 1264
1888struct files_struct;
1889#line 1264
1890struct css_set;
1891#line 1264
1892struct compat_robust_list_head;
1893#line 1264
1894struct mem_cgroup;
1895#line 1264 "include/linux/sched.h"
1896struct memcg_batch_info {
1897 int do_batch ;
1898 struct mem_cgroup *memcg ;
1899 unsigned long nr_pages ;
1900 unsigned long memsw_nr_pages ;
1901};
1902#line 1264 "include/linux/sched.h"
1903struct task_struct {
1904 long volatile state ;
1905 void *stack ;
1906 atomic_t usage ;
1907 unsigned int flags ;
1908 unsigned int ptrace ;
1909 struct llist_node wake_entry ;
1910 int on_cpu ;
1911 int on_rq ;
1912 int prio ;
1913 int static_prio ;
1914 int normal_prio ;
1915 unsigned int rt_priority ;
1916 struct sched_class const *sched_class ;
1917 struct sched_entity se ;
1918 struct sched_rt_entity rt ;
1919 struct hlist_head preempt_notifiers ;
1920 unsigned char fpu_counter ;
1921 unsigned int policy ;
1922 cpumask_t cpus_allowed ;
1923 struct sched_info sched_info ;
1924 struct list_head tasks ;
1925 struct plist_node pushable_tasks ;
1926 struct mm_struct *mm ;
1927 struct mm_struct *active_mm ;
1928 unsigned int brk_randomized : 1 ;
1929 int exit_state ;
1930 int exit_code ;
1931 int exit_signal ;
1932 int pdeath_signal ;
1933 unsigned int jobctl ;
1934 unsigned int personality ;
1935 unsigned int did_exec : 1 ;
1936 unsigned int in_execve : 1 ;
1937 unsigned int in_iowait : 1 ;
1938 unsigned int sched_reset_on_fork : 1 ;
1939 unsigned int sched_contributes_to_load : 1 ;
1940 unsigned int irq_thread : 1 ;
1941 pid_t pid ;
1942 pid_t tgid ;
1943 unsigned long stack_canary ;
1944 struct task_struct *real_parent ;
1945 struct task_struct *parent ;
1946 struct list_head children ;
1947 struct list_head sibling ;
1948 struct task_struct *group_leader ;
1949 struct list_head ptraced ;
1950 struct list_head ptrace_entry ;
1951 struct pid_link pids[3] ;
1952 struct list_head thread_group ;
1953 struct completion *vfork_done ;
1954 int *set_child_tid ;
1955 int *clear_child_tid ;
1956 cputime_t utime ;
1957 cputime_t stime ;
1958 cputime_t utimescaled ;
1959 cputime_t stimescaled ;
1960 cputime_t gtime ;
1961 cputime_t prev_utime ;
1962 cputime_t prev_stime ;
1963 unsigned long nvcsw ;
1964 unsigned long nivcsw ;
1965 struct timespec start_time ;
1966 struct timespec real_start_time ;
1967 unsigned long min_flt ;
1968 unsigned long maj_flt ;
1969 struct task_cputime cputime_expires ;
1970 struct list_head cpu_timers[3] ;
1971 struct cred const *real_cred ;
1972 struct cred const *cred ;
1973 struct cred *replacement_session_keyring ;
1974 char comm[16] ;
1975 int link_count ;
1976 int total_link_count ;
1977 struct sysv_sem sysvsem ;
1978 unsigned long last_switch_count ;
1979 struct thread_struct thread ;
1980 struct fs_struct *fs ;
1981 struct files_struct *files ;
1982 struct nsproxy *nsproxy ;
1983 struct signal_struct *signal ;
1984 struct sighand_struct *sighand ;
1985 sigset_t blocked ;
1986 sigset_t real_blocked ;
1987 sigset_t saved_sigmask ;
1988 struct sigpending pending ;
1989 unsigned long sas_ss_sp ;
1990 size_t sas_ss_size ;
1991 int (*notifier)(void *priv ) ;
1992 void *notifier_data ;
1993 sigset_t *notifier_mask ;
1994 struct audit_context *audit_context ;
1995 uid_t loginuid ;
1996 unsigned int sessionid ;
1997 seccomp_t seccomp ;
1998 u32 parent_exec_id ;
1999 u32 self_exec_id ;
2000 spinlock_t alloc_lock ;
2001 raw_spinlock_t pi_lock ;
2002 struct plist_head pi_waiters ;
2003 struct rt_mutex_waiter *pi_blocked_on ;
2004 struct mutex_waiter *blocked_on ;
2005 unsigned int irq_events ;
2006 unsigned long hardirq_enable_ip ;
2007 unsigned long hardirq_disable_ip ;
2008 unsigned int hardirq_enable_event ;
2009 unsigned int hardirq_disable_event ;
2010 int hardirqs_enabled ;
2011 int hardirq_context ;
2012 unsigned long softirq_disable_ip ;
2013 unsigned long softirq_enable_ip ;
2014 unsigned int softirq_disable_event ;
2015 unsigned int softirq_enable_event ;
2016 int softirqs_enabled ;
2017 int softirq_context ;
2018 void *journal_info ;
2019 struct bio_list *bio_list ;
2020 struct blk_plug *plug ;
2021 struct reclaim_state *reclaim_state ;
2022 struct backing_dev_info *backing_dev_info ;
2023 struct io_context *io_context ;
2024 unsigned long ptrace_message ;
2025 siginfo_t *last_siginfo ;
2026 struct task_io_accounting ioac ;
2027 u64 acct_rss_mem1 ;
2028 u64 acct_vm_mem1 ;
2029 cputime_t acct_timexpd ;
2030 nodemask_t mems_allowed ;
2031 seqcount_t mems_allowed_seq ;
2032 int cpuset_mem_spread_rotor ;
2033 int cpuset_slab_spread_rotor ;
2034 struct css_set *cgroups ;
2035 struct list_head cg_list ;
2036 struct robust_list_head *robust_list ;
2037 struct compat_robust_list_head *compat_robust_list ;
2038 struct list_head pi_state_list ;
2039 struct futex_pi_state *pi_state_cache ;
2040 struct perf_event_context *perf_event_ctxp[2] ;
2041 struct mutex perf_event_mutex ;
2042 struct list_head perf_event_list ;
2043 struct mempolicy *mempolicy ;
2044 short il_next ;
2045 short pref_node_fork ;
2046 struct rcu_head rcu ;
2047 struct pipe_inode_info *splice_pipe ;
2048 struct task_delay_info *delays ;
2049 int make_it_fail ;
2050 int nr_dirtied ;
2051 int nr_dirtied_pause ;
2052 unsigned long dirty_paused_when ;
2053 int latency_record_count ;
2054 struct latency_record latency_record[32] ;
2055 unsigned long timer_slack_ns ;
2056 unsigned long default_timer_slack_ns ;
2057 struct list_head *scm_work_list ;
2058 unsigned long trace ;
2059 unsigned long trace_recursion ;
2060 struct memcg_batch_info memcg_batch ;
2061 atomic_t ptrace_bp_refcnt ;
2062};
2063#line 1681
2064struct pid_namespace;
2065#line 10 "include/linux/gfp.h"
2066struct vm_area_struct;
2067#line 20 "include/linux/kobject_ns.h"
2068struct sock;
2069#line 20
2070struct sock;
2071#line 21
2072struct kobject;
2073#line 21
2074struct kobject;
2075#line 27
2076enum kobj_ns_type {
2077 KOBJ_NS_TYPE_NONE = 0,
2078 KOBJ_NS_TYPE_NET = 1,
2079 KOBJ_NS_TYPES = 2
2080} ;
2081#line 40 "include/linux/kobject_ns.h"
2082struct kobj_ns_type_operations {
2083 enum kobj_ns_type type ;
2084 void *(*grab_current_ns)(void) ;
2085 void const *(*netlink_ns)(struct sock *sk ) ;
2086 void const *(*initial_ns)(void) ;
2087 void (*drop_ns)(void * ) ;
2088};
2089#line 22 "include/linux/sysfs.h"
2090struct kobject;
2091#line 23
2092struct module;
2093#line 24
2094enum kobj_ns_type;
2095#line 26 "include/linux/sysfs.h"
2096struct attribute {
2097 char const *name ;
2098 umode_t mode ;
2099};
2100#line 56 "include/linux/sysfs.h"
2101struct attribute_group {
2102 char const *name ;
2103 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
2104 struct attribute **attrs ;
2105};
2106#line 85
2107struct file;
2108#line 86
2109struct vm_area_struct;
2110#line 88 "include/linux/sysfs.h"
2111struct bin_attribute {
2112 struct attribute attr ;
2113 size_t size ;
2114 void *private ;
2115 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
2116 loff_t , size_t ) ;
2117 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
2118 loff_t , size_t ) ;
2119 int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
2120};
2121#line 112 "include/linux/sysfs.h"
2122struct sysfs_ops {
2123 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
2124 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
2125 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
2126};
2127#line 118
2128struct sysfs_dirent;
2129#line 118
2130struct sysfs_dirent;
2131#line 22 "include/linux/kref.h"
2132struct kref {
2133 atomic_t refcount ;
2134};
2135#line 60 "include/linux/kobject.h"
2136struct kset;
2137#line 60
2138struct kobj_type;
2139#line 60 "include/linux/kobject.h"
2140struct kobject {
2141 char const *name ;
2142 struct list_head entry ;
2143 struct kobject *parent ;
2144 struct kset *kset ;
2145 struct kobj_type *ktype ;
2146 struct sysfs_dirent *sd ;
2147 struct kref kref ;
2148 unsigned int state_initialized : 1 ;
2149 unsigned int state_in_sysfs : 1 ;
2150 unsigned int state_add_uevent_sent : 1 ;
2151 unsigned int state_remove_uevent_sent : 1 ;
2152 unsigned int uevent_suppress : 1 ;
2153};
2154#line 108 "include/linux/kobject.h"
2155struct kobj_type {
2156 void (*release)(struct kobject *kobj ) ;
2157 struct sysfs_ops const *sysfs_ops ;
2158 struct attribute **default_attrs ;
2159 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject *kobj ) ;
2160 void const *(*namespace)(struct kobject *kobj ) ;
2161};
2162#line 116 "include/linux/kobject.h"
2163struct kobj_uevent_env {
2164 char *envp[32] ;
2165 int envp_idx ;
2166 char buf[2048] ;
2167 int buflen ;
2168};
2169#line 123 "include/linux/kobject.h"
2170struct kset_uevent_ops {
2171 int (* const filter)(struct kset *kset , struct kobject *kobj ) ;
2172 char const *(* const name)(struct kset *kset , struct kobject *kobj ) ;
2173 int (* const uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
2174};
2175#line 140
2176struct sock;
2177#line 159 "include/linux/kobject.h"
2178struct kset {
2179 struct list_head list ;
2180 spinlock_t list_lock ;
2181 struct kobject kobj ;
2182 struct kset_uevent_ops const *uevent_ops ;
2183};
2184#line 46 "include/linux/slub_def.h"
2185struct kmem_cache_cpu {
2186 void **freelist ;
2187 unsigned long tid ;
2188 struct page *page ;
2189 struct page *partial ;
2190 int node ;
2191 unsigned int stat[26] ;
2192};
2193#line 57 "include/linux/slub_def.h"
2194struct kmem_cache_node {
2195 spinlock_t list_lock ;
2196 unsigned long nr_partial ;
2197 struct list_head partial ;
2198 atomic_long_t nr_slabs ;
2199 atomic_long_t total_objects ;
2200 struct list_head full ;
2201};
2202#line 73 "include/linux/slub_def.h"
2203struct kmem_cache_order_objects {
2204 unsigned long x ;
2205};
2206#line 80 "include/linux/slub_def.h"
2207struct kmem_cache {
2208 struct kmem_cache_cpu *cpu_slab ;
2209 unsigned long flags ;
2210 unsigned long min_partial ;
2211 int size ;
2212 int objsize ;
2213 int offset ;
2214 int cpu_partial ;
2215 struct kmem_cache_order_objects oo ;
2216 struct kmem_cache_order_objects max ;
2217 struct kmem_cache_order_objects min ;
2218 gfp_t allocflags ;
2219 int refcount ;
2220 void (*ctor)(void * ) ;
2221 int inuse ;
2222 int align ;
2223 int reserved ;
2224 char const *name ;
2225 struct list_head list ;
2226 struct kobject kobj ;
2227 int remote_node_defrag_ratio ;
2228 struct kmem_cache_node *node[1 << 10] ;
2229};
2230#line 25 "include/linux/genhd.h"
2231struct device_type;
2232#line 27
2233struct class;
2234#line 19 "include/linux/klist.h"
2235struct klist_node;
2236#line 19
2237struct klist_node;
2238#line 39 "include/linux/klist.h"
2239struct klist_node {
2240 void *n_klist ;
2241 struct list_head n_node ;
2242 struct kref n_ref ;
2243};
2244#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2245struct dma_map_ops;
2246#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2247struct dev_archdata {
2248 void *acpi_handle ;
2249 struct dma_map_ops *dma_ops ;
2250 void *iommu ;
2251};
2252#line 28 "include/linux/device.h"
2253struct device;
2254#line 29
2255struct device_private;
2256#line 29
2257struct device_private;
2258#line 30
2259struct device_driver;
2260#line 30
2261struct device_driver;
2262#line 31
2263struct driver_private;
2264#line 31
2265struct driver_private;
2266#line 32
2267struct module;
2268#line 33
2269struct class;
2270#line 34
2271struct subsys_private;
2272#line 34
2273struct subsys_private;
2274#line 35
2275struct bus_type;
2276#line 35
2277struct bus_type;
2278#line 36
2279struct device_node;
2280#line 36
2281struct device_node;
2282#line 37
2283struct iommu_ops;
2284#line 37
2285struct iommu_ops;
2286#line 39 "include/linux/device.h"
2287struct bus_attribute {
2288 struct attribute attr ;
2289 ssize_t (*show)(struct bus_type *bus , char *buf ) ;
2290 ssize_t (*store)(struct bus_type *bus , char const *buf , size_t count ) ;
2291};
2292#line 89
2293struct device_attribute;
2294#line 89
2295struct driver_attribute;
2296#line 89 "include/linux/device.h"
2297struct bus_type {
2298 char const *name ;
2299 char const *dev_name ;
2300 struct device *dev_root ;
2301 struct bus_attribute *bus_attrs ;
2302 struct device_attribute *dev_attrs ;
2303 struct driver_attribute *drv_attrs ;
2304 int (*match)(struct device *dev , struct device_driver *drv ) ;
2305 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2306 int (*probe)(struct device *dev ) ;
2307 int (*remove)(struct device *dev ) ;
2308 void (*shutdown)(struct device *dev ) ;
2309 int (*suspend)(struct device *dev , pm_message_t state ) ;
2310 int (*resume)(struct device *dev ) ;
2311 struct dev_pm_ops const *pm ;
2312 struct iommu_ops *iommu_ops ;
2313 struct subsys_private *p ;
2314};
2315#line 214
2316struct of_device_id;
2317#line 214 "include/linux/device.h"
2318struct device_driver {
2319 char const *name ;
2320 struct bus_type *bus ;
2321 struct module *owner ;
2322 char const *mod_name ;
2323 bool suppress_bind_attrs ;
2324 struct of_device_id const *of_match_table ;
2325 int (*probe)(struct device *dev ) ;
2326 int (*remove)(struct device *dev ) ;
2327 void (*shutdown)(struct device *dev ) ;
2328 int (*suspend)(struct device *dev , pm_message_t state ) ;
2329 int (*resume)(struct device *dev ) ;
2330 struct attribute_group const **groups ;
2331 struct dev_pm_ops const *pm ;
2332 struct driver_private *p ;
2333};
2334#line 249 "include/linux/device.h"
2335struct driver_attribute {
2336 struct attribute attr ;
2337 ssize_t (*show)(struct device_driver *driver , char *buf ) ;
2338 ssize_t (*store)(struct device_driver *driver , char const *buf , size_t count ) ;
2339};
2340#line 330
2341struct class_attribute;
2342#line 330 "include/linux/device.h"
2343struct class {
2344 char const *name ;
2345 struct module *owner ;
2346 struct class_attribute *class_attrs ;
2347 struct device_attribute *dev_attrs ;
2348 struct bin_attribute *dev_bin_attrs ;
2349 struct kobject *dev_kobj ;
2350 int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2351 char *(*devnode)(struct device *dev , umode_t *mode ) ;
2352 void (*class_release)(struct class *class ) ;
2353 void (*dev_release)(struct device *dev ) ;
2354 int (*suspend)(struct device *dev , pm_message_t state ) ;
2355 int (*resume)(struct device *dev ) ;
2356 struct kobj_ns_type_operations const *ns_type ;
2357 void const *(*namespace)(struct device *dev ) ;
2358 struct dev_pm_ops const *pm ;
2359 struct subsys_private *p ;
2360};
2361#line 397 "include/linux/device.h"
2362struct class_attribute {
2363 struct attribute attr ;
2364 ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
2365 ssize_t (*store)(struct class *class , struct class_attribute *attr , char const *buf ,
2366 size_t count ) ;
2367 void const *(*namespace)(struct class *class , struct class_attribute const *attr ) ;
2368};
2369#line 465 "include/linux/device.h"
2370struct device_type {
2371 char const *name ;
2372 struct attribute_group const **groups ;
2373 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2374 char *(*devnode)(struct device *dev , umode_t *mode ) ;
2375 void (*release)(struct device *dev ) ;
2376 struct dev_pm_ops const *pm ;
2377};
2378#line 476 "include/linux/device.h"
2379struct device_attribute {
2380 struct attribute attr ;
2381 ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
2382 ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const *buf ,
2383 size_t count ) ;
2384};
2385#line 559 "include/linux/device.h"
2386struct device_dma_parameters {
2387 unsigned int max_segment_size ;
2388 unsigned long segment_boundary_mask ;
2389};
2390#line 627
2391struct dma_coherent_mem;
2392#line 627 "include/linux/device.h"
2393struct device {
2394 struct device *parent ;
2395 struct device_private *p ;
2396 struct kobject kobj ;
2397 char const *init_name ;
2398 struct device_type const *type ;
2399 struct mutex mutex ;
2400 struct bus_type *bus ;
2401 struct device_driver *driver ;
2402 void *platform_data ;
2403 struct dev_pm_info power ;
2404 struct dev_pm_domain *pm_domain ;
2405 int numa_node ;
2406 u64 *dma_mask ;
2407 u64 coherent_dma_mask ;
2408 struct device_dma_parameters *dma_parms ;
2409 struct list_head dma_pools ;
2410 struct dma_coherent_mem *dma_mem ;
2411 struct dev_archdata archdata ;
2412 struct device_node *of_node ;
2413 dev_t devt ;
2414 u32 id ;
2415 spinlock_t devres_lock ;
2416 struct list_head devres_head ;
2417 struct klist_node knode_class ;
2418 struct class *class ;
2419 struct attribute_group const **groups ;
2420 void (*release)(struct device *dev ) ;
2421};
2422#line 43 "include/linux/pm_wakeup.h"
2423struct wakeup_source {
2424 char const *name ;
2425 struct list_head entry ;
2426 spinlock_t lock ;
2427 struct timer_list timer ;
2428 unsigned long timer_expires ;
2429 ktime_t total_time ;
2430 ktime_t max_time ;
2431 ktime_t last_time ;
2432 unsigned long event_count ;
2433 unsigned long active_count ;
2434 unsigned long relax_count ;
2435 unsigned long hit_count ;
2436 unsigned int active : 1 ;
2437};
2438#line 13 "include/linux/blk_types.h"
2439struct bio;
2440#line 13
2441struct bio;
2442#line 14
2443struct bio_integrity_payload;
2444#line 14
2445struct bio_integrity_payload;
2446#line 15
2447struct page;
2448#line 16
2449struct block_device;
2450#line 16
2451struct block_device;
2452#line 17 "include/linux/blk_types.h"
2453typedef void bio_end_io_t(struct bio * , int );
2454#line 18 "include/linux/blk_types.h"
2455typedef void bio_destructor_t(struct bio * );
2456#line 23 "include/linux/blk_types.h"
2457struct bio_vec {
2458 struct page *bv_page ;
2459 unsigned int bv_len ;
2460 unsigned int bv_offset ;
2461};
2462#line 33 "include/linux/blk_types.h"
2463struct bio {
2464 sector_t bi_sector ;
2465 struct bio *bi_next ;
2466 struct block_device *bi_bdev ;
2467 unsigned long bi_flags ;
2468 unsigned long bi_rw ;
2469 unsigned short bi_vcnt ;
2470 unsigned short bi_idx ;
2471 unsigned int bi_phys_segments ;
2472 unsigned int bi_size ;
2473 unsigned int bi_seg_front_size ;
2474 unsigned int bi_seg_back_size ;
2475 unsigned int bi_max_vecs ;
2476 atomic_t bi_cnt ;
2477 struct bio_vec *bi_io_vec ;
2478 bio_end_io_t *bi_end_io ;
2479 void *bi_private ;
2480 struct bio_integrity_payload *bi_integrity ;
2481 bio_destructor_t *bi_destructor ;
2482 struct bio_vec bi_inline_vecs[0] ;
2483};
2484#line 33 "include/linux/list_bl.h"
2485struct hlist_bl_node;
2486#line 33 "include/linux/list_bl.h"
2487struct hlist_bl_head {
2488 struct hlist_bl_node *first ;
2489};
2490#line 37 "include/linux/list_bl.h"
2491struct hlist_bl_node {
2492 struct hlist_bl_node *next ;
2493 struct hlist_bl_node **pprev ;
2494};
2495#line 13 "include/linux/dcache.h"
2496struct nameidata;
2497#line 13
2498struct nameidata;
2499#line 14
2500struct path;
2501#line 14
2502struct path;
2503#line 15
2504struct vfsmount;
2505#line 15
2506struct vfsmount;
2507#line 35 "include/linux/dcache.h"
2508struct qstr {
2509 unsigned int hash ;
2510 unsigned int len ;
2511 unsigned char const *name ;
2512};
2513#line 88
2514struct dentry_operations;
2515#line 88
2516struct super_block;
2517#line 88 "include/linux/dcache.h"
2518union __anonunion_d_u_227 {
2519 struct list_head d_child ;
2520 struct rcu_head d_rcu ;
2521};
2522#line 88 "include/linux/dcache.h"
2523struct dentry {
2524 unsigned int d_flags ;
2525 seqcount_t d_seq ;
2526 struct hlist_bl_node d_hash ;
2527 struct dentry *d_parent ;
2528 struct qstr d_name ;
2529 struct inode *d_inode ;
2530 unsigned char d_iname[32] ;
2531 unsigned int d_count ;
2532 spinlock_t d_lock ;
2533 struct dentry_operations const *d_op ;
2534 struct super_block *d_sb ;
2535 unsigned long d_time ;
2536 void *d_fsdata ;
2537 struct list_head d_lru ;
2538 union __anonunion_d_u_227 d_u ;
2539 struct list_head d_subdirs ;
2540 struct list_head d_alias ;
2541};
2542#line 131 "include/linux/dcache.h"
2543struct dentry_operations {
2544 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
2545 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
2546 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
2547 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
2548 int (*d_delete)(struct dentry const * ) ;
2549 void (*d_release)(struct dentry * ) ;
2550 void (*d_prune)(struct dentry * ) ;
2551 void (*d_iput)(struct dentry * , struct inode * ) ;
2552 char *(*d_dname)(struct dentry * , char * , int ) ;
2553 struct vfsmount *(*d_automount)(struct path * ) ;
2554 int (*d_manage)(struct dentry * , bool ) ;
2555} __attribute__((__aligned__((1) << (6) ))) ;
2556#line 4 "include/linux/path.h"
2557struct dentry;
2558#line 5
2559struct vfsmount;
2560#line 7 "include/linux/path.h"
2561struct path {
2562 struct vfsmount *mnt ;
2563 struct dentry *dentry ;
2564};
2565#line 62 "include/linux/stat.h"
2566struct kstat {
2567 u64 ino ;
2568 dev_t dev ;
2569 umode_t mode ;
2570 unsigned int nlink ;
2571 uid_t uid ;
2572 gid_t gid ;
2573 dev_t rdev ;
2574 loff_t size ;
2575 struct timespec atime ;
2576 struct timespec mtime ;
2577 struct timespec ctime ;
2578 unsigned long blksize ;
2579 unsigned long long blocks ;
2580};
2581#line 64 "include/linux/radix-tree.h"
2582struct radix_tree_node;
2583#line 64 "include/linux/radix-tree.h"
2584struct radix_tree_root {
2585 unsigned int height ;
2586 gfp_t gfp_mask ;
2587 struct radix_tree_node *rnode ;
2588};
2589#line 16 "include/linux/fiemap.h"
2590struct fiemap_extent {
2591 __u64 fe_logical ;
2592 __u64 fe_physical ;
2593 __u64 fe_length ;
2594 __u64 fe_reserved64[2] ;
2595 __u32 fe_flags ;
2596 __u32 fe_reserved[3] ;
2597};
2598#line 8 "include/linux/shrinker.h"
2599struct shrink_control {
2600 gfp_t gfp_mask ;
2601 unsigned long nr_to_scan ;
2602};
2603#line 31 "include/linux/shrinker.h"
2604struct shrinker {
2605 int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
2606 int seeks ;
2607 long batch ;
2608 struct list_head list ;
2609 atomic_long_t nr_in_batch ;
2610};
2611#line 10 "include/linux/migrate_mode.h"
2612enum migrate_mode {
2613 MIGRATE_ASYNC = 0,
2614 MIGRATE_SYNC_LIGHT = 1,
2615 MIGRATE_SYNC = 2
2616} ;
2617#line 408 "include/linux/fs.h"
2618struct export_operations;
2619#line 408
2620struct export_operations;
2621#line 409
2622struct hd_geometry;
2623#line 409
2624struct hd_geometry;
2625#line 410
2626struct iovec;
2627#line 411
2628struct nameidata;
2629#line 412
2630struct kiocb;
2631#line 413
2632struct kobject;
2633#line 414
2634struct pipe_inode_info;
2635#line 415
2636struct poll_table_struct;
2637#line 415
2638struct poll_table_struct;
2639#line 416
2640struct kstatfs;
2641#line 416
2642struct kstatfs;
2643#line 417
2644struct vm_area_struct;
2645#line 418
2646struct vfsmount;
2647#line 419
2648struct cred;
2649#line 469 "include/linux/fs.h"
2650struct iattr {
2651 unsigned int ia_valid ;
2652 umode_t ia_mode ;
2653 uid_t ia_uid ;
2654 gid_t ia_gid ;
2655 loff_t ia_size ;
2656 struct timespec ia_atime ;
2657 struct timespec ia_mtime ;
2658 struct timespec ia_ctime ;
2659 struct file *ia_file ;
2660};
2661#line 129 "include/linux/quota.h"
2662struct if_dqinfo {
2663 __u64 dqi_bgrace ;
2664 __u64 dqi_igrace ;
2665 __u32 dqi_flags ;
2666 __u32 dqi_valid ;
2667};
2668#line 50 "include/linux/dqblk_xfs.h"
2669struct fs_disk_quota {
2670 __s8 d_version ;
2671 __s8 d_flags ;
2672 __u16 d_fieldmask ;
2673 __u32 d_id ;
2674 __u64 d_blk_hardlimit ;
2675 __u64 d_blk_softlimit ;
2676 __u64 d_ino_hardlimit ;
2677 __u64 d_ino_softlimit ;
2678 __u64 d_bcount ;
2679 __u64 d_icount ;
2680 __s32 d_itimer ;
2681 __s32 d_btimer ;
2682 __u16 d_iwarns ;
2683 __u16 d_bwarns ;
2684 __s32 d_padding2 ;
2685 __u64 d_rtb_hardlimit ;
2686 __u64 d_rtb_softlimit ;
2687 __u64 d_rtbcount ;
2688 __s32 d_rtbtimer ;
2689 __u16 d_rtbwarns ;
2690 __s16 d_padding3 ;
2691 char d_padding4[8] ;
2692};
2693#line 146 "include/linux/dqblk_xfs.h"
2694struct fs_qfilestat {
2695 __u64 qfs_ino ;
2696 __u64 qfs_nblks ;
2697 __u32 qfs_nextents ;
2698};
2699#line 146 "include/linux/dqblk_xfs.h"
2700typedef struct fs_qfilestat fs_qfilestat_t;
2701#line 152 "include/linux/dqblk_xfs.h"
2702struct fs_quota_stat {
2703 __s8 qs_version ;
2704 __u16 qs_flags ;
2705 __s8 qs_pad ;
2706 fs_qfilestat_t qs_uquota ;
2707 fs_qfilestat_t qs_gquota ;
2708 __u32 qs_incoredqs ;
2709 __s32 qs_btimelimit ;
2710 __s32 qs_itimelimit ;
2711 __s32 qs_rtbtimelimit ;
2712 __u16 qs_bwarnlimit ;
2713 __u16 qs_iwarnlimit ;
2714};
2715#line 17 "include/linux/dqblk_qtree.h"
2716struct dquot;
2717#line 17
2718struct dquot;
2719#line 185 "include/linux/quota.h"
2720typedef __kernel_uid32_t qid_t;
2721#line 186 "include/linux/quota.h"
2722typedef long long qsize_t;
2723#line 200 "include/linux/quota.h"
2724struct mem_dqblk {
2725 qsize_t dqb_bhardlimit ;
2726 qsize_t dqb_bsoftlimit ;
2727 qsize_t dqb_curspace ;
2728 qsize_t dqb_rsvspace ;
2729 qsize_t dqb_ihardlimit ;
2730 qsize_t dqb_isoftlimit ;
2731 qsize_t dqb_curinodes ;
2732 time_t dqb_btime ;
2733 time_t dqb_itime ;
2734};
2735#line 215
2736struct quota_format_type;
2737#line 215
2738struct quota_format_type;
2739#line 217 "include/linux/quota.h"
2740struct mem_dqinfo {
2741 struct quota_format_type *dqi_format ;
2742 int dqi_fmt_id ;
2743 struct list_head dqi_dirty_list ;
2744 unsigned long dqi_flags ;
2745 unsigned int dqi_bgrace ;
2746 unsigned int dqi_igrace ;
2747 qsize_t dqi_maxblimit ;
2748 qsize_t dqi_maxilimit ;
2749 void *dqi_priv ;
2750};
2751#line 230
2752struct super_block;
2753#line 288 "include/linux/quota.h"
2754struct dquot {
2755 struct hlist_node dq_hash ;
2756 struct list_head dq_inuse ;
2757 struct list_head dq_free ;
2758 struct list_head dq_dirty ;
2759 struct mutex dq_lock ;
2760 atomic_t dq_count ;
2761 wait_queue_head_t dq_wait_unused ;
2762 struct super_block *dq_sb ;
2763 unsigned int dq_id ;
2764 loff_t dq_off ;
2765 unsigned long dq_flags ;
2766 short dq_type ;
2767 struct mem_dqblk dq_dqb ;
2768};
2769#line 305 "include/linux/quota.h"
2770struct quota_format_ops {
2771 int (*check_quota_file)(struct super_block *sb , int type ) ;
2772 int (*read_file_info)(struct super_block *sb , int type ) ;
2773 int (*write_file_info)(struct super_block *sb , int type ) ;
2774 int (*free_file_info)(struct super_block *sb , int type ) ;
2775 int (*read_dqblk)(struct dquot *dquot ) ;
2776 int (*commit_dqblk)(struct dquot *dquot ) ;
2777 int (*release_dqblk)(struct dquot *dquot ) ;
2778};
2779#line 316 "include/linux/quota.h"
2780struct dquot_operations {
2781 int (*write_dquot)(struct dquot * ) ;
2782 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
2783 void (*destroy_dquot)(struct dquot * ) ;
2784 int (*acquire_dquot)(struct dquot * ) ;
2785 int (*release_dquot)(struct dquot * ) ;
2786 int (*mark_dirty)(struct dquot * ) ;
2787 int (*write_info)(struct super_block * , int ) ;
2788 qsize_t *(*get_reserved_space)(struct inode * ) ;
2789};
2790#line 329
2791struct path;
2792#line 332 "include/linux/quota.h"
2793struct quotactl_ops {
2794 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
2795 int (*quota_on_meta)(struct super_block * , int , int ) ;
2796 int (*quota_off)(struct super_block * , int ) ;
2797 int (*quota_sync)(struct super_block * , int , int ) ;
2798 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
2799 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
2800 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2801 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2802 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
2803 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
2804};
2805#line 345 "include/linux/quota.h"
2806struct quota_format_type {
2807 int qf_fmt_id ;
2808 struct quota_format_ops const *qf_ops ;
2809 struct module *qf_owner ;
2810 struct quota_format_type *qf_next ;
2811};
2812#line 399 "include/linux/quota.h"
2813struct quota_info {
2814 unsigned int flags ;
2815 struct mutex dqio_mutex ;
2816 struct mutex dqonoff_mutex ;
2817 struct rw_semaphore dqptr_sem ;
2818 struct inode *files[2] ;
2819 struct mem_dqinfo info[2] ;
2820 struct quota_format_ops const *ops[2] ;
2821};
2822#line 532 "include/linux/fs.h"
2823struct page;
2824#line 533
2825struct address_space;
2826#line 534
2827struct writeback_control;
2828#line 534
2829struct writeback_control;
2830#line 577 "include/linux/fs.h"
2831union __anonunion_arg_234 {
2832 char *buf ;
2833 void *data ;
2834};
2835#line 577 "include/linux/fs.h"
2836struct __anonstruct_read_descriptor_t_233 {
2837 size_t written ;
2838 size_t count ;
2839 union __anonunion_arg_234 arg ;
2840 int error ;
2841};
2842#line 577 "include/linux/fs.h"
2843typedef struct __anonstruct_read_descriptor_t_233 read_descriptor_t;
2844#line 590 "include/linux/fs.h"
2845struct address_space_operations {
2846 int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
2847 int (*readpage)(struct file * , struct page * ) ;
2848 int (*writepages)(struct address_space * , struct writeback_control * ) ;
2849 int (*set_page_dirty)(struct page *page ) ;
2850 int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
2851 unsigned int nr_pages ) ;
2852 int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
2853 unsigned int len , unsigned int flags , struct page **pagep ,
2854 void **fsdata ) ;
2855 int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
2856 unsigned int copied , struct page *page , void *fsdata ) ;
2857 sector_t (*bmap)(struct address_space * , sector_t ) ;
2858 void (*invalidatepage)(struct page * , unsigned long ) ;
2859 int (*releasepage)(struct page * , gfp_t ) ;
2860 void (*freepage)(struct page * ) ;
2861 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const *iov , loff_t offset ,
2862 unsigned long nr_segs ) ;
2863 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2864 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
2865 int (*launder_page)(struct page * ) ;
2866 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2867 int (*error_remove_page)(struct address_space * , struct page * ) ;
2868};
2869#line 645
2870struct backing_dev_info;
2871#line 646 "include/linux/fs.h"
2872struct address_space {
2873 struct inode *host ;
2874 struct radix_tree_root page_tree ;
2875 spinlock_t tree_lock ;
2876 unsigned int i_mmap_writable ;
2877 struct prio_tree_root i_mmap ;
2878 struct list_head i_mmap_nonlinear ;
2879 struct mutex i_mmap_mutex ;
2880 unsigned long nrpages ;
2881 unsigned long writeback_index ;
2882 struct address_space_operations const *a_ops ;
2883 unsigned long flags ;
2884 struct backing_dev_info *backing_dev_info ;
2885 spinlock_t private_lock ;
2886 struct list_head private_list ;
2887 struct address_space *assoc_mapping ;
2888} __attribute__((__aligned__(sizeof(long )))) ;
2889#line 669
2890struct request_queue;
2891#line 669
2892struct request_queue;
2893#line 671
2894struct hd_struct;
2895#line 671
2896struct gendisk;
2897#line 671 "include/linux/fs.h"
2898struct block_device {
2899 dev_t bd_dev ;
2900 int bd_openers ;
2901 struct inode *bd_inode ;
2902 struct super_block *bd_super ;
2903 struct mutex bd_mutex ;
2904 struct list_head bd_inodes ;
2905 void *bd_claiming ;
2906 void *bd_holder ;
2907 int bd_holders ;
2908 bool bd_write_holder ;
2909 struct list_head bd_holder_disks ;
2910 struct block_device *bd_contains ;
2911 unsigned int bd_block_size ;
2912 struct hd_struct *bd_part ;
2913 unsigned int bd_part_count ;
2914 int bd_invalidated ;
2915 struct gendisk *bd_disk ;
2916 struct request_queue *bd_queue ;
2917 struct list_head bd_list ;
2918 unsigned long bd_private ;
2919 int bd_fsfreeze_count ;
2920 struct mutex bd_fsfreeze_mutex ;
2921};
2922#line 749
2923struct posix_acl;
2924#line 749
2925struct posix_acl;
2926#line 761
2927struct inode_operations;
2928#line 761 "include/linux/fs.h"
2929union __anonunion____missing_field_name_235 {
2930 unsigned int const i_nlink ;
2931 unsigned int __i_nlink ;
2932};
2933#line 761 "include/linux/fs.h"
2934union __anonunion____missing_field_name_236 {
2935 struct list_head i_dentry ;
2936 struct rcu_head i_rcu ;
2937};
2938#line 761
2939struct file_operations;
2940#line 761
2941struct file_lock;
2942#line 761
2943struct cdev;
2944#line 761 "include/linux/fs.h"
2945union __anonunion____missing_field_name_237 {
2946 struct pipe_inode_info *i_pipe ;
2947 struct block_device *i_bdev ;
2948 struct cdev *i_cdev ;
2949};
2950#line 761 "include/linux/fs.h"
2951struct inode {
2952 umode_t i_mode ;
2953 unsigned short i_opflags ;
2954 uid_t i_uid ;
2955 gid_t i_gid ;
2956 unsigned int i_flags ;
2957 struct posix_acl *i_acl ;
2958 struct posix_acl *i_default_acl ;
2959 struct inode_operations const *i_op ;
2960 struct super_block *i_sb ;
2961 struct address_space *i_mapping ;
2962 void *i_security ;
2963 unsigned long i_ino ;
2964 union __anonunion____missing_field_name_235 __annonCompField43 ;
2965 dev_t i_rdev ;
2966 struct timespec i_atime ;
2967 struct timespec i_mtime ;
2968 struct timespec i_ctime ;
2969 spinlock_t i_lock ;
2970 unsigned short i_bytes ;
2971 blkcnt_t i_blocks ;
2972 loff_t i_size ;
2973 unsigned long i_state ;
2974 struct mutex i_mutex ;
2975 unsigned long dirtied_when ;
2976 struct hlist_node i_hash ;
2977 struct list_head i_wb_list ;
2978 struct list_head i_lru ;
2979 struct list_head i_sb_list ;
2980 union __anonunion____missing_field_name_236 __annonCompField44 ;
2981 atomic_t i_count ;
2982 unsigned int i_blkbits ;
2983 u64 i_version ;
2984 atomic_t i_dio_count ;
2985 atomic_t i_writecount ;
2986 struct file_operations const *i_fop ;
2987 struct file_lock *i_flock ;
2988 struct address_space i_data ;
2989 struct dquot *i_dquot[2] ;
2990 struct list_head i_devices ;
2991 union __anonunion____missing_field_name_237 __annonCompField45 ;
2992 __u32 i_generation ;
2993 __u32 i_fsnotify_mask ;
2994 struct hlist_head i_fsnotify_marks ;
2995 atomic_t i_readcount ;
2996 void *i_private ;
2997};
2998#line 942 "include/linux/fs.h"
2999struct fown_struct {
3000 rwlock_t lock ;
3001 struct pid *pid ;
3002 enum pid_type pid_type ;
3003 uid_t uid ;
3004 uid_t euid ;
3005 int signum ;
3006};
3007#line 953 "include/linux/fs.h"
3008struct file_ra_state {
3009 unsigned long start ;
3010 unsigned int size ;
3011 unsigned int async_size ;
3012 unsigned int ra_pages ;
3013 unsigned int mmap_miss ;
3014 loff_t prev_pos ;
3015};
3016#line 976 "include/linux/fs.h"
3017union __anonunion_f_u_238 {
3018 struct list_head fu_list ;
3019 struct rcu_head fu_rcuhead ;
3020};
3021#line 976 "include/linux/fs.h"
3022struct file {
3023 union __anonunion_f_u_238 f_u ;
3024 struct path f_path ;
3025 struct file_operations const *f_op ;
3026 spinlock_t f_lock ;
3027 int f_sb_list_cpu ;
3028 atomic_long_t f_count ;
3029 unsigned int f_flags ;
3030 fmode_t f_mode ;
3031 loff_t f_pos ;
3032 struct fown_struct f_owner ;
3033 struct cred const *f_cred ;
3034 struct file_ra_state f_ra ;
3035 u64 f_version ;
3036 void *f_security ;
3037 void *private_data ;
3038 struct list_head f_ep_links ;
3039 struct list_head f_tfile_llink ;
3040 struct address_space *f_mapping ;
3041 unsigned long f_mnt_write_state ;
3042};
3043#line 1111 "include/linux/fs.h"
3044typedef struct files_struct *fl_owner_t;
3045#line 1113 "include/linux/fs.h"
3046struct file_lock_operations {
3047 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
3048 void (*fl_release_private)(struct file_lock * ) ;
3049};
3050#line 1118 "include/linux/fs.h"
3051struct lock_manager_operations {
3052 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
3053 void (*lm_notify)(struct file_lock * ) ;
3054 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
3055 void (*lm_release_private)(struct file_lock * ) ;
3056 void (*lm_break)(struct file_lock * ) ;
3057 int (*lm_change)(struct file_lock ** , int ) ;
3058};
3059#line 4 "include/linux/nfs_fs_i.h"
3060struct nlm_lockowner;
3061#line 4
3062struct nlm_lockowner;
3063#line 9 "include/linux/nfs_fs_i.h"
3064struct nfs_lock_info {
3065 u32 state ;
3066 struct nlm_lockowner *owner ;
3067 struct list_head list ;
3068};
3069#line 15
3070struct nfs4_lock_state;
3071#line 15
3072struct nfs4_lock_state;
3073#line 16 "include/linux/nfs_fs_i.h"
3074struct nfs4_lock_info {
3075 struct nfs4_lock_state *owner ;
3076};
3077#line 1138 "include/linux/fs.h"
3078struct fasync_struct;
3079#line 1138 "include/linux/fs.h"
3080struct __anonstruct_afs_240 {
3081 struct list_head link ;
3082 int state ;
3083};
3084#line 1138 "include/linux/fs.h"
3085union __anonunion_fl_u_239 {
3086 struct nfs_lock_info nfs_fl ;
3087 struct nfs4_lock_info nfs4_fl ;
3088 struct __anonstruct_afs_240 afs ;
3089};
3090#line 1138 "include/linux/fs.h"
3091struct file_lock {
3092 struct file_lock *fl_next ;
3093 struct list_head fl_link ;
3094 struct list_head fl_block ;
3095 fl_owner_t fl_owner ;
3096 unsigned int fl_flags ;
3097 unsigned char fl_type ;
3098 unsigned int fl_pid ;
3099 struct pid *fl_nspid ;
3100 wait_queue_head_t fl_wait ;
3101 struct file *fl_file ;
3102 loff_t fl_start ;
3103 loff_t fl_end ;
3104 struct fasync_struct *fl_fasync ;
3105 unsigned long fl_break_time ;
3106 unsigned long fl_downgrade_time ;
3107 struct file_lock_operations const *fl_ops ;
3108 struct lock_manager_operations const *fl_lmops ;
3109 union __anonunion_fl_u_239 fl_u ;
3110};
3111#line 1378 "include/linux/fs.h"
3112struct fasync_struct {
3113 spinlock_t fa_lock ;
3114 int magic ;
3115 int fa_fd ;
3116 struct fasync_struct *fa_next ;
3117 struct file *fa_file ;
3118 struct rcu_head fa_rcu ;
3119};
3120#line 1418
3121struct file_system_type;
3122#line 1418
3123struct super_operations;
3124#line 1418
3125struct xattr_handler;
3126#line 1418
3127struct mtd_info;
3128#line 1418 "include/linux/fs.h"
3129struct super_block {
3130 struct list_head s_list ;
3131 dev_t s_dev ;
3132 unsigned char s_dirt ;
3133 unsigned char s_blocksize_bits ;
3134 unsigned long s_blocksize ;
3135 loff_t s_maxbytes ;
3136 struct file_system_type *s_type ;
3137 struct super_operations const *s_op ;
3138 struct dquot_operations const *dq_op ;
3139 struct quotactl_ops const *s_qcop ;
3140 struct export_operations const *s_export_op ;
3141 unsigned long s_flags ;
3142 unsigned long s_magic ;
3143 struct dentry *s_root ;
3144 struct rw_semaphore s_umount ;
3145 struct mutex s_lock ;
3146 int s_count ;
3147 atomic_t s_active ;
3148 void *s_security ;
3149 struct xattr_handler const **s_xattr ;
3150 struct list_head s_inodes ;
3151 struct hlist_bl_head s_anon ;
3152 struct list_head *s_files ;
3153 struct list_head s_mounts ;
3154 struct list_head s_dentry_lru ;
3155 int s_nr_dentry_unused ;
3156 spinlock_t s_inode_lru_lock __attribute__((__aligned__((1) << (6) ))) ;
3157 struct list_head s_inode_lru ;
3158 int s_nr_inodes_unused ;
3159 struct block_device *s_bdev ;
3160 struct backing_dev_info *s_bdi ;
3161 struct mtd_info *s_mtd ;
3162 struct hlist_node s_instances ;
3163 struct quota_info s_dquot ;
3164 int s_frozen ;
3165 wait_queue_head_t s_wait_unfrozen ;
3166 char s_id[32] ;
3167 u8 s_uuid[16] ;
3168 void *s_fs_info ;
3169 unsigned int s_max_links ;
3170 fmode_t s_mode ;
3171 u32 s_time_gran ;
3172 struct mutex s_vfs_rename_mutex ;
3173 char *s_subtype ;
3174 char *s_options ;
3175 struct dentry_operations const *s_d_op ;
3176 int cleancache_poolid ;
3177 struct shrinker s_shrink ;
3178 atomic_long_t s_remove_count ;
3179 int s_readonly_remount ;
3180};
3181#line 1567 "include/linux/fs.h"
3182struct fiemap_extent_info {
3183 unsigned int fi_flags ;
3184 unsigned int fi_extents_mapped ;
3185 unsigned int fi_extents_max ;
3186 struct fiemap_extent *fi_extents_start ;
3187};
3188#line 1601
3189struct block_device_operations;
3190#line 1601
3191struct block_device_operations;
3192#line 1609 "include/linux/fs.h"
3193struct file_operations {
3194 struct module *owner ;
3195 loff_t (*llseek)(struct file * , loff_t , int ) ;
3196 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
3197 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
3198 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
3199 loff_t ) ;
3200 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
3201 loff_t ) ;
3202 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
3203 loff_t , u64 , unsigned int ) ) ;
3204 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
3205 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
3206 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
3207 int (*mmap)(struct file * , struct vm_area_struct * ) ;
3208 int (*open)(struct inode * , struct file * ) ;
3209 int (*flush)(struct file * , fl_owner_t id ) ;
3210 int (*release)(struct inode * , struct file * ) ;
3211 int (*fsync)(struct file * , loff_t , loff_t , int datasync ) ;
3212 int (*aio_fsync)(struct kiocb * , int datasync ) ;
3213 int (*fasync)(int , struct file * , int ) ;
3214 int (*lock)(struct file * , int , struct file_lock * ) ;
3215 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
3216 int ) ;
3217 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
3218 unsigned long , unsigned long ) ;
3219 int (*check_flags)(int ) ;
3220 int (*flock)(struct file * , int , struct file_lock * ) ;
3221 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
3222 unsigned int ) ;
3223 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
3224 unsigned int ) ;
3225 int (*setlease)(struct file * , long , struct file_lock ** ) ;
3226 long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
3227};
3228#line 1639 "include/linux/fs.h"
3229struct inode_operations {
3230 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
3231 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
3232 int (*permission)(struct inode * , int ) ;
3233 struct posix_acl *(*get_acl)(struct inode * , int ) ;
3234 int (*readlink)(struct dentry * , char * , int ) ;
3235 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
3236 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
3237 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
3238 int (*unlink)(struct inode * , struct dentry * ) ;
3239 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
3240 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
3241 int (*rmdir)(struct inode * , struct dentry * ) ;
3242 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
3243 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
3244 void (*truncate)(struct inode * ) ;
3245 int (*setattr)(struct dentry * , struct iattr * ) ;
3246 int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
3247 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
3248 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
3249 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
3250 int (*removexattr)(struct dentry * , char const * ) ;
3251 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
3252 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
3253} __attribute__((__aligned__((1) << (6) ))) ;
3254#line 1669
3255struct seq_file;
3256#line 1684 "include/linux/fs.h"
3257struct super_operations {
3258 struct inode *(*alloc_inode)(struct super_block *sb ) ;
3259 void (*destroy_inode)(struct inode * ) ;
3260 void (*dirty_inode)(struct inode * , int flags ) ;
3261 int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
3262 int (*drop_inode)(struct inode * ) ;
3263 void (*evict_inode)(struct inode * ) ;
3264 void (*put_super)(struct super_block * ) ;
3265 void (*write_super)(struct super_block * ) ;
3266 int (*sync_fs)(struct super_block *sb , int wait ) ;
3267 int (*freeze_fs)(struct super_block * ) ;
3268 int (*unfreeze_fs)(struct super_block * ) ;
3269 int (*statfs)(struct dentry * , struct kstatfs * ) ;
3270 int (*remount_fs)(struct super_block * , int * , char * ) ;
3271 void (*umount_begin)(struct super_block * ) ;
3272 int (*show_options)(struct seq_file * , struct dentry * ) ;
3273 int (*show_devname)(struct seq_file * , struct dentry * ) ;
3274 int (*show_path)(struct seq_file * , struct dentry * ) ;
3275 int (*show_stats)(struct seq_file * , struct dentry * ) ;
3276 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
3277 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
3278 loff_t ) ;
3279 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
3280 int (*nr_cached_objects)(struct super_block * ) ;
3281 void (*free_cached_objects)(struct super_block * , int ) ;
3282};
3283#line 1835 "include/linux/fs.h"
3284struct file_system_type {
3285 char const *name ;
3286 int fs_flags ;
3287 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
3288 void (*kill_sb)(struct super_block * ) ;
3289 struct module *owner ;
3290 struct file_system_type *next ;
3291 struct hlist_head fs_supers ;
3292 struct lock_class_key s_lock_key ;
3293 struct lock_class_key s_umount_key ;
3294 struct lock_class_key s_vfs_rename_key ;
3295 struct lock_class_key i_lock_key ;
3296 struct lock_class_key i_mutex_key ;
3297 struct lock_class_key i_mutex_dir_key ;
3298};
3299#line 82 "include/linux/genhd.h"
3300struct disk_stats {
3301 unsigned long sectors[2] ;
3302 unsigned long ios[2] ;
3303 unsigned long merges[2] ;
3304 unsigned long ticks[2] ;
3305 unsigned long io_ticks ;
3306 unsigned long time_in_queue ;
3307};
3308#line 94 "include/linux/genhd.h"
3309struct partition_meta_info {
3310 u8 uuid[16] ;
3311 u8 volname[64] ;
3312};
3313#line 99 "include/linux/genhd.h"
3314struct hd_struct {
3315 sector_t start_sect ;
3316 sector_t nr_sects ;
3317 sector_t alignment_offset ;
3318 unsigned int discard_alignment ;
3319 struct device __dev ;
3320 struct kobject *holder_dir ;
3321 int policy ;
3322 int partno ;
3323 struct partition_meta_info *info ;
3324 int make_it_fail ;
3325 unsigned long stamp ;
3326 atomic_t in_flight[2] ;
3327 struct disk_stats *dkstats ;
3328 atomic_t ref ;
3329 struct rcu_head rcu_head ;
3330};
3331#line 147 "include/linux/genhd.h"
3332struct disk_part_tbl {
3333 struct rcu_head rcu_head ;
3334 int len ;
3335 struct hd_struct *last_lookup ;
3336 struct hd_struct *part[] ;
3337};
3338#line 154
3339struct disk_events;
3340#line 154
3341struct disk_events;
3342#line 156
3343struct timer_rand_state;
3344#line 156
3345struct blk_integrity;
3346#line 156 "include/linux/genhd.h"
3347struct gendisk {
3348 int major ;
3349 int first_minor ;
3350 int minors ;
3351 char disk_name[32] ;
3352 char *(*devnode)(struct gendisk *gd , umode_t *mode ) ;
3353 unsigned int events ;
3354 unsigned int async_events ;
3355 struct disk_part_tbl *part_tbl ;
3356 struct hd_struct part0 ;
3357 struct block_device_operations const *fops ;
3358 struct request_queue *queue ;
3359 void *private_data ;
3360 int flags ;
3361 struct device *driverfs_dev ;
3362 struct kobject *slave_dir ;
3363 struct timer_rand_state *random ;
3364 atomic_t sync_io ;
3365 struct disk_events *ev ;
3366 struct blk_integrity *integrity ;
3367 int node_id ;
3368};
3369#line 8 "include/linux/debug_locks.h"
3370struct task_struct;
3371#line 48
3372struct task_struct;
3373#line 22 "include/linux/mm.h"
3374struct mempolicy;
3375#line 23
3376struct anon_vma;
3377#line 24
3378struct file_ra_state;
3379#line 25
3380struct user_struct;
3381#line 26
3382struct writeback_control;
3383#line 41 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64.h"
3384struct mm_struct;
3385#line 656 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable.h"
3386struct vm_area_struct;
3387#line 188 "include/linux/mm.h"
3388struct vm_fault {
3389 unsigned int flags ;
3390 unsigned long pgoff ;
3391 void *virtual_address ;
3392 struct page *page ;
3393};
3394#line 205 "include/linux/mm.h"
3395struct vm_operations_struct {
3396 void (*open)(struct vm_area_struct *area ) ;
3397 void (*close)(struct vm_area_struct *area ) ;
3398 int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
3399 int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
3400 int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
3401 int write ) ;
3402 int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
3403 struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
3404 int (*migrate)(struct vm_area_struct *vma , nodemask_t const *from , nodemask_t const *to ,
3405 unsigned long flags ) ;
3406};
3407#line 247
3408struct inode;
3409#line 195 "include/linux/page-flags.h"
3410struct page;
3411#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
3412struct exception_table_entry {
3413 unsigned long insn ;
3414 unsigned long fixup ;
3415};
3416#line 10 "include/linux/irqreturn.h"
3417enum irqreturn {
3418 IRQ_NONE = 0,
3419 IRQ_HANDLED = 1,
3420 IRQ_WAKE_THREAD = 2
3421} ;
3422#line 16 "include/linux/irqreturn.h"
3423typedef enum irqreturn irqreturn_t;
3424#line 31 "include/linux/irq.h"
3425struct seq_file;
3426#line 32
3427struct module;
3428#line 12 "include/linux/irqdesc.h"
3429struct proc_dir_entry;
3430#line 12
3431struct proc_dir_entry;
3432#line 13
3433struct timer_rand_state;
3434#line 14
3435struct module;
3436#line 16 "include/linux/profile.h"
3437struct proc_dir_entry;
3438#line 17
3439struct pt_regs;
3440#line 65
3441struct task_struct;
3442#line 66
3443struct mm_struct;
3444#line 88
3445struct pt_regs;
3446#line 132 "include/linux/hardirq.h"
3447struct task_struct;
3448#line 28 "include/linux/writeback.h"
3449struct backing_dev_info;
3450#line 33
3451enum writeback_sync_modes {
3452 WB_SYNC_NONE = 0,
3453 WB_SYNC_ALL = 1
3454} ;
3455#line 60 "include/linux/writeback.h"
3456struct writeback_control {
3457 enum writeback_sync_modes sync_mode ;
3458 long nr_to_write ;
3459 long pages_skipped ;
3460 loff_t range_start ;
3461 loff_t range_end ;
3462 unsigned int for_kupdate : 1 ;
3463 unsigned int for_background : 1 ;
3464 unsigned int tagged_writepages : 1 ;
3465 unsigned int for_reclaim : 1 ;
3466 unsigned int range_cyclic : 1 ;
3467};
3468#line 84
3469struct bdi_writeback;
3470#line 84
3471struct bdi_writeback;
3472#line 21 "include/linux/backing-dev.h"
3473struct page;
3474#line 22
3475struct device;
3476#line 23
3477struct dentry;
3478#line 38 "include/linux/backing-dev.h"
3479typedef int congested_fn(void * , int );
3480#line 50 "include/linux/backing-dev.h"
3481struct bdi_writeback {
3482 struct backing_dev_info *bdi ;
3483 unsigned int nr ;
3484 unsigned long last_old_flush ;
3485 unsigned long last_active ;
3486 struct task_struct *task ;
3487 struct timer_list wakeup_timer ;
3488 struct list_head b_dirty ;
3489 struct list_head b_io ;
3490 struct list_head b_more_io ;
3491 spinlock_t list_lock ;
3492};
3493#line 65 "include/linux/backing-dev.h"
3494struct backing_dev_info {
3495 struct list_head bdi_list ;
3496 unsigned long ra_pages ;
3497 unsigned long state ;
3498 unsigned int capabilities ;
3499 congested_fn *congested_fn ;
3500 void *congested_data ;
3501 char *name ;
3502 struct percpu_counter bdi_stat[4] ;
3503 unsigned long bw_time_stamp ;
3504 unsigned long dirtied_stamp ;
3505 unsigned long written_stamp ;
3506 unsigned long write_bandwidth ;
3507 unsigned long avg_write_bandwidth ;
3508 unsigned long dirty_ratelimit ;
3509 unsigned long balanced_dirty_ratelimit ;
3510 struct prop_local_percpu completions ;
3511 int dirty_exceeded ;
3512 unsigned int min_ratio ;
3513 unsigned int max_ratio ;
3514 unsigned int max_prop_frac ;
3515 struct bdi_writeback wb ;
3516 spinlock_t wb_lock ;
3517 struct list_head work_list ;
3518 struct device *dev ;
3519 struct timer_list laptop_mode_wb_timer ;
3520 struct dentry *debug_dir ;
3521 struct dentry *debug_stats ;
3522};
3523#line 9 "include/linux/mempool.h"
3524struct kmem_cache;
3525#line 11 "include/linux/mempool.h"
3526typedef void *mempool_alloc_t(gfp_t gfp_mask , void *pool_data );
3527#line 12 "include/linux/mempool.h"
3528typedef void mempool_free_t(void *element , void *pool_data );
3529#line 14 "include/linux/mempool.h"
3530struct mempool_s {
3531 spinlock_t lock ;
3532 int min_nr ;
3533 int curr_nr ;
3534 void **elements ;
3535 void *pool_data ;
3536 mempool_alloc_t *alloc ;
3537 mempool_free_t *free ;
3538 wait_queue_head_t wait ;
3539};
3540#line 14 "include/linux/mempool.h"
3541typedef struct mempool_s mempool_t;
3542#line 75 "include/linux/iocontext.h"
3543union __anonunion____missing_field_name_251 {
3544 struct list_head q_node ;
3545 struct kmem_cache *__rcu_icq_cache ;
3546};
3547#line 75 "include/linux/iocontext.h"
3548union __anonunion____missing_field_name_252 {
3549 struct hlist_node ioc_node ;
3550 struct rcu_head __rcu_head ;
3551};
3552#line 75 "include/linux/iocontext.h"
3553struct io_cq {
3554 struct request_queue *q ;
3555 struct io_context *ioc ;
3556 union __anonunion____missing_field_name_251 __annonCompField46 ;
3557 union __anonunion____missing_field_name_252 __annonCompField47 ;
3558 unsigned int flags ;
3559};
3560#line 101 "include/linux/iocontext.h"
3561struct io_context {
3562 atomic_long_t refcount ;
3563 atomic_t nr_tasks ;
3564 spinlock_t lock ;
3565 unsigned short ioprio ;
3566 int nr_batch_requests ;
3567 unsigned long last_waited ;
3568 struct radix_tree_root icq_tree ;
3569 struct io_cq *icq_hint ;
3570 struct hlist_head icq_list ;
3571 struct work_struct release_work ;
3572};
3573#line 137
3574struct task_struct;
3575#line 170 "include/linux/bio.h"
3576struct bio_integrity_payload {
3577 struct bio *bip_bio ;
3578 sector_t bip_sector ;
3579 void *bip_buf ;
3580 bio_end_io_t *bip_end_io ;
3581 unsigned int bip_size ;
3582 unsigned short bip_slab ;
3583 unsigned short bip_vcnt ;
3584 unsigned short bip_idx ;
3585 struct work_struct bip_work ;
3586 struct bio_vec bip_vec[0] ;
3587};
3588#line 222
3589struct request_queue;
3590#line 374 "include/linux/bio.h"
3591struct bio_list {
3592 struct bio *head ;
3593 struct bio *tail ;
3594};
3595#line 67 "include/linux/bsg.h"
3596struct bsg_class_device {
3597 struct device *class_dev ;
3598 struct device *parent ;
3599 int minor ;
3600 struct request_queue *queue ;
3601 struct kref ref ;
3602 void (*release)(struct device * ) ;
3603};
3604#line 6 "include/asm-generic/scatterlist.h"
3605struct scatterlist {
3606 unsigned long sg_magic ;
3607 unsigned long page_link ;
3608 unsigned int offset ;
3609 unsigned int length ;
3610 dma_addr_t dma_address ;
3611 unsigned int dma_length ;
3612};
3613#line 25 "include/linux/blkdev.h"
3614struct module;
3615#line 28
3616struct request_queue;
3617#line 29
3618struct elevator_queue;
3619#line 29
3620struct elevator_queue;
3621#line 32
3622struct request;
3623#line 32
3624struct request;
3625#line 34
3626struct bsg_job;
3627#line 34
3628struct bsg_job;
3629#line 39
3630struct request;
3631#line 40 "include/linux/blkdev.h"
3632typedef void rq_end_io_fn(struct request * , int );
3633#line 42 "include/linux/blkdev.h"
3634struct request_list {
3635 int count[2] ;
3636 int starved[2] ;
3637 int elvpriv ;
3638 mempool_t *rq_pool ;
3639 wait_queue_head_t wait[2] ;
3640};
3641#line 57
3642enum rq_cmd_type_bits {
3643 REQ_TYPE_FS = 1,
3644 REQ_TYPE_BLOCK_PC = 2,
3645 REQ_TYPE_SENSE = 3,
3646 REQ_TYPE_PM_SUSPEND = 4,
3647 REQ_TYPE_PM_RESUME = 5,
3648 REQ_TYPE_PM_SHUTDOWN = 6,
3649 REQ_TYPE_SPECIAL = 7,
3650 REQ_TYPE_ATA_TASKFILE = 8,
3651 REQ_TYPE_ATA_PC = 9
3652} ;
3653#line 81 "include/linux/blkdev.h"
3654union __anonunion____missing_field_name_255 {
3655 struct rb_node rb_node ;
3656 void *completion_data ;
3657};
3658#line 81 "include/linux/blkdev.h"
3659struct __anonstruct_elv_257 {
3660 struct io_cq *icq ;
3661 void *priv[2] ;
3662};
3663#line 81 "include/linux/blkdev.h"
3664struct __anonstruct_flush_258 {
3665 unsigned int seq ;
3666 struct list_head list ;
3667 rq_end_io_fn *saved_end_io ;
3668};
3669#line 81 "include/linux/blkdev.h"
3670union __anonunion____missing_field_name_256 {
3671 struct __anonstruct_elv_257 elv ;
3672 struct __anonstruct_flush_258 flush ;
3673};
3674#line 81 "include/linux/blkdev.h"
3675struct request {
3676 struct list_head queuelist ;
3677 struct call_single_data csd ;
3678 struct request_queue *q ;
3679 unsigned int cmd_flags ;
3680 enum rq_cmd_type_bits cmd_type ;
3681 unsigned long atomic_flags ;
3682 int cpu ;
3683 unsigned int __data_len ;
3684 sector_t __sector ;
3685 struct bio *bio ;
3686 struct bio *biotail ;
3687 struct hlist_node hash ;
3688 union __anonunion____missing_field_name_255 __annonCompField48 ;
3689 union __anonunion____missing_field_name_256 __annonCompField49 ;
3690 struct gendisk *rq_disk ;
3691 struct hd_struct *part ;
3692 unsigned long start_time ;
3693 unsigned short nr_phys_segments ;
3694 unsigned short nr_integrity_segments ;
3695 unsigned short ioprio ;
3696 int ref_count ;
3697 void *special ;
3698 char *buffer ;
3699 int tag ;
3700 int errors ;
3701 unsigned char __cmd[16] ;
3702 unsigned char *cmd ;
3703 unsigned short cmd_len ;
3704 unsigned int extra_len ;
3705 unsigned int sense_len ;
3706 unsigned int resid_len ;
3707 void *sense ;
3708 unsigned long deadline ;
3709 struct list_head timeout_list ;
3710 unsigned int timeout ;
3711 int retries ;
3712 rq_end_io_fn *end_io ;
3713 void *end_io_data ;
3714 struct request *next_rq ;
3715};
3716#line 8 "include/linux/elevator.h"
3717struct io_cq;
3718#line 10 "include/linux/elevator.h"
3719typedef int elevator_merge_fn(struct request_queue * , struct request ** , struct bio * );
3720#line 13 "include/linux/elevator.h"
3721typedef void elevator_merge_req_fn(struct request_queue * , struct request * , struct request * );
3722#line 15 "include/linux/elevator.h"
3723typedef void elevator_merged_fn(struct request_queue * , struct request * , int );
3724#line 17 "include/linux/elevator.h"
3725typedef int elevator_allow_merge_fn(struct request_queue * , struct request * , struct bio * );
3726#line 19 "include/linux/elevator.h"
3727typedef void elevator_bio_merged_fn(struct request_queue * , struct request * , struct bio * );
3728#line 22 "include/linux/elevator.h"
3729typedef int elevator_dispatch_fn(struct request_queue * , int );
3730#line 24 "include/linux/elevator.h"
3731typedef void elevator_add_req_fn(struct request_queue * , struct request * );
3732#line 25 "include/linux/elevator.h"
3733typedef struct request *elevator_request_list_fn(struct request_queue * , struct request * );
3734#line 26 "include/linux/elevator.h"
3735typedef void elevator_completed_req_fn(struct request_queue * , struct request * );
3736#line 27 "include/linux/elevator.h"
3737typedef int elevator_may_queue_fn(struct request_queue * , int );
3738#line 29 "include/linux/elevator.h"
3739typedef void elevator_init_icq_fn(struct io_cq * );
3740#line 30 "include/linux/elevator.h"
3741typedef void elevator_exit_icq_fn(struct io_cq * );
3742#line 31 "include/linux/elevator.h"
3743typedef int elevator_set_req_fn(struct request_queue * , struct request * , gfp_t );
3744#line 32 "include/linux/elevator.h"
3745typedef void elevator_put_req_fn(struct request * );
3746#line 33 "include/linux/elevator.h"
3747typedef void elevator_activate_req_fn(struct request_queue * , struct request * );
3748#line 34 "include/linux/elevator.h"
3749typedef void elevator_deactivate_req_fn(struct request_queue * , struct request * );
3750#line 36 "include/linux/elevator.h"
3751typedef void *elevator_init_fn(struct request_queue * );
3752#line 37 "include/linux/elevator.h"
3753typedef void elevator_exit_fn(struct elevator_queue * );
3754#line 39 "include/linux/elevator.h"
3755struct elevator_ops {
3756 elevator_merge_fn *elevator_merge_fn ;
3757 elevator_merged_fn *elevator_merged_fn ;
3758 elevator_merge_req_fn *elevator_merge_req_fn ;
3759 elevator_allow_merge_fn *elevator_allow_merge_fn ;
3760 elevator_bio_merged_fn *elevator_bio_merged_fn ;
3761 elevator_dispatch_fn *elevator_dispatch_fn ;
3762 elevator_add_req_fn *elevator_add_req_fn ;
3763 elevator_activate_req_fn *elevator_activate_req_fn ;
3764 elevator_deactivate_req_fn *elevator_deactivate_req_fn ;
3765 elevator_completed_req_fn *elevator_completed_req_fn ;
3766 elevator_request_list_fn *elevator_former_req_fn ;
3767 elevator_request_list_fn *elevator_latter_req_fn ;
3768 elevator_init_icq_fn *elevator_init_icq_fn ;
3769 elevator_exit_icq_fn *elevator_exit_icq_fn ;
3770 elevator_set_req_fn *elevator_set_req_fn ;
3771 elevator_put_req_fn *elevator_put_req_fn ;
3772 elevator_may_queue_fn *elevator_may_queue_fn ;
3773 elevator_init_fn *elevator_init_fn ;
3774 elevator_exit_fn *elevator_exit_fn ;
3775};
3776#line 71 "include/linux/elevator.h"
3777struct elv_fs_entry {
3778 struct attribute attr ;
3779 ssize_t (*show)(struct elevator_queue * , char * ) ;
3780 ssize_t (*store)(struct elevator_queue * , char const * , size_t ) ;
3781};
3782#line 80 "include/linux/elevator.h"
3783struct elevator_type {
3784 struct kmem_cache *icq_cache ;
3785 struct elevator_ops ops ;
3786 size_t icq_size ;
3787 size_t icq_align ;
3788 struct elv_fs_entry *elevator_attrs ;
3789 char elevator_name[16] ;
3790 struct module *elevator_owner ;
3791 char icq_cache_name[21] ;
3792 struct list_head list ;
3793};
3794#line 101 "include/linux/elevator.h"
3795struct elevator_queue {
3796 struct elevator_type *type ;
3797 void *elevator_data ;
3798 struct kobject kobj ;
3799 struct mutex sysfs_lock ;
3800 struct hlist_head *hash ;
3801 unsigned int registered : 1 ;
3802};
3803#line 202 "include/linux/blkdev.h"
3804typedef void request_fn_proc(struct request_queue *q );
3805#line 203 "include/linux/blkdev.h"
3806typedef void make_request_fn(struct request_queue *q , struct bio *bio );
3807#line 204 "include/linux/blkdev.h"
3808typedef int prep_rq_fn(struct request_queue * , struct request * );
3809#line 205 "include/linux/blkdev.h"
3810typedef void unprep_rq_fn(struct request_queue * , struct request * );
3811#line 207
3812struct bio_vec;
3813#line 208 "include/linux/blkdev.h"
3814struct bvec_merge_data {
3815 struct block_device *bi_bdev ;
3816 sector_t bi_sector ;
3817 unsigned int bi_size ;
3818 unsigned long bi_rw ;
3819};
3820#line 214 "include/linux/blkdev.h"
3821typedef int merge_bvec_fn(struct request_queue * , struct bvec_merge_data * , struct bio_vec * );
3822#line 216 "include/linux/blkdev.h"
3823typedef void softirq_done_fn(struct request * );
3824#line 217 "include/linux/blkdev.h"
3825typedef int dma_drain_needed_fn(struct request * );
3826#line 218 "include/linux/blkdev.h"
3827typedef int lld_busy_fn(struct request_queue *q );
3828#line 219 "include/linux/blkdev.h"
3829typedef int bsg_job_fn(struct bsg_job * );
3830#line 221
3831enum blk_eh_timer_return {
3832 BLK_EH_NOT_HANDLED = 0,
3833 BLK_EH_HANDLED = 1,
3834 BLK_EH_RESET_TIMER = 2
3835} ;
3836#line 227 "include/linux/blkdev.h"
3837typedef enum blk_eh_timer_return rq_timed_out_fn(struct request * );
3838#line 234 "include/linux/blkdev.h"
3839struct blk_queue_tag {
3840 struct request **tag_index ;
3841 unsigned long *tag_map ;
3842 int busy ;
3843 int max_depth ;
3844 int real_max_depth ;
3845 atomic_t refcnt ;
3846};
3847#line 246 "include/linux/blkdev.h"
3848struct queue_limits {
3849 unsigned long bounce_pfn ;
3850 unsigned long seg_boundary_mask ;
3851 unsigned int max_hw_sectors ;
3852 unsigned int max_sectors ;
3853 unsigned int max_segment_size ;
3854 unsigned int physical_block_size ;
3855 unsigned int alignment_offset ;
3856 unsigned int io_min ;
3857 unsigned int io_opt ;
3858 unsigned int max_discard_sectors ;
3859 unsigned int discard_granularity ;
3860 unsigned int discard_alignment ;
3861 unsigned short logical_block_size ;
3862 unsigned short max_segments ;
3863 unsigned short max_integrity_segments ;
3864 unsigned char misaligned ;
3865 unsigned char discard_misaligned ;
3866 unsigned char cluster ;
3867 unsigned char discard_zeroes_data ;
3868};
3869#line 271 "include/linux/blkdev.h"
3870struct request_queue {
3871 struct list_head queue_head ;
3872 struct request *last_merge ;
3873 struct elevator_queue *elevator ;
3874 struct request_list rq ;
3875 request_fn_proc *request_fn ;
3876 make_request_fn *make_request_fn ;
3877 prep_rq_fn *prep_rq_fn ;
3878 unprep_rq_fn *unprep_rq_fn ;
3879 merge_bvec_fn *merge_bvec_fn ;
3880 softirq_done_fn *softirq_done_fn ;
3881 rq_timed_out_fn *rq_timed_out_fn ;
3882 dma_drain_needed_fn *dma_drain_needed ;
3883 lld_busy_fn *lld_busy_fn ;
3884 sector_t end_sector ;
3885 struct request *boundary_rq ;
3886 struct delayed_work delay_work ;
3887 struct backing_dev_info backing_dev_info ;
3888 void *queuedata ;
3889 unsigned long queue_flags ;
3890 int id ;
3891 gfp_t bounce_gfp ;
3892 spinlock_t __queue_lock ;
3893 spinlock_t *queue_lock ;
3894 struct kobject kobj ;
3895 unsigned long nr_requests ;
3896 unsigned int nr_congestion_on ;
3897 unsigned int nr_congestion_off ;
3898 unsigned int nr_batching ;
3899 unsigned int dma_drain_size ;
3900 void *dma_drain_buffer ;
3901 unsigned int dma_pad_mask ;
3902 unsigned int dma_alignment ;
3903 struct blk_queue_tag *queue_tags ;
3904 struct list_head tag_busy_list ;
3905 unsigned int nr_sorted ;
3906 unsigned int in_flight[2] ;
3907 unsigned int rq_timeout ;
3908 struct timer_list timeout ;
3909 struct list_head timeout_list ;
3910 struct list_head icq_list ;
3911 struct queue_limits limits ;
3912 unsigned int sg_timeout ;
3913 unsigned int sg_reserved_size ;
3914 int node ;
3915 unsigned int flush_flags ;
3916 unsigned int flush_not_queueable : 1 ;
3917 unsigned int flush_queue_delayed : 1 ;
3918 unsigned int flush_pending_idx : 1 ;
3919 unsigned int flush_running_idx : 1 ;
3920 unsigned long flush_pending_since ;
3921 struct list_head flush_queue[2] ;
3922 struct list_head flush_data_in_flight ;
3923 struct request flush_rq ;
3924 struct mutex sysfs_lock ;
3925 bsg_job_fn *bsg_job_fn ;
3926 int bsg_job_size ;
3927 struct bsg_class_device bsg_dev ;
3928};
3929#line 889 "include/linux/blkdev.h"
3930struct blk_plug {
3931 unsigned long magic ;
3932 struct list_head list ;
3933 struct list_head cb_list ;
3934 unsigned int should_sort ;
3935};
3936#line 1165
3937struct work_struct;
3938#line 1220 "include/linux/blkdev.h"
3939struct blk_integrity_exchg {
3940 void *prot_buf ;
3941 void *data_buf ;
3942 sector_t sector ;
3943 unsigned int data_size ;
3944 unsigned short sector_size ;
3945 char const *disk_name ;
3946};
3947#line 1229 "include/linux/blkdev.h"
3948typedef void integrity_gen_fn(struct blk_integrity_exchg * );
3949#line 1230 "include/linux/blkdev.h"
3950typedef int integrity_vrfy_fn(struct blk_integrity_exchg * );
3951#line 1231 "include/linux/blkdev.h"
3952typedef void integrity_set_tag_fn(void * , void * , unsigned int );
3953#line 1232 "include/linux/blkdev.h"
3954typedef void integrity_get_tag_fn(void * , void * , unsigned int );
3955#line 1234 "include/linux/blkdev.h"
3956struct blk_integrity {
3957 integrity_gen_fn *generate_fn ;
3958 integrity_vrfy_fn *verify_fn ;
3959 integrity_set_tag_fn *set_tag_fn ;
3960 integrity_get_tag_fn *get_tag_fn ;
3961 unsigned short flags ;
3962 unsigned short tuple_size ;
3963 unsigned short sector_size ;
3964 unsigned short tag_size ;
3965 char const *name ;
3966 struct kobject kobj ;
3967};
3968#line 1362 "include/linux/blkdev.h"
3969struct block_device_operations {
3970 int (*open)(struct block_device * , fmode_t ) ;
3971 int (*release)(struct gendisk * , fmode_t ) ;
3972 int (*ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
3973 int (*compat_ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
3974 int (*direct_access)(struct block_device * , sector_t , void ** , unsigned long * ) ;
3975 unsigned int (*check_events)(struct gendisk *disk , unsigned int clearing ) ;
3976 int (*media_changed)(struct gendisk * ) ;
3977 void (*unlock_native_capacity)(struct gendisk * ) ;
3978 int (*revalidate_disk)(struct gendisk * ) ;
3979 int (*getgeo)(struct block_device * , struct hd_geometry * ) ;
3980 void (*swap_slot_free_notify)(struct block_device * , unsigned long ) ;
3981 struct module *owner ;
3982};
3983#line 11 "include/linux/proc_fs.h"
3984struct completion;
3985#line 12
3986struct mm_struct;
3987#line 46 "include/linux/proc_fs.h"
3988typedef int read_proc_t(char *page , char **start , off_t off , int count , int *eof ,
3989 void *data );
3990#line 48 "include/linux/proc_fs.h"
3991typedef int write_proc_t(struct file *file , char const *buffer , unsigned long count ,
3992 void *data );
3993#line 51 "include/linux/proc_fs.h"
3994struct proc_dir_entry {
3995 unsigned int low_ino ;
3996 umode_t mode ;
3997 nlink_t nlink ;
3998 uid_t uid ;
3999 gid_t gid ;
4000 loff_t size ;
4001 struct inode_operations const *proc_iops ;
4002 struct file_operations const *proc_fops ;
4003 struct proc_dir_entry *next ;
4004 struct proc_dir_entry *parent ;
4005 struct proc_dir_entry *subdir ;
4006 void *data ;
4007 read_proc_t *read_proc ;
4008 write_proc_t *write_proc ;
4009 atomic_t count ;
4010 int pde_users ;
4011 struct completion *pde_unload_completion ;
4012 struct list_head pde_openers ;
4013 spinlock_t pde_unload_lock ;
4014 u8 namelen ;
4015 char name[] ;
4016};
4017#line 117
4018struct pid_namespace;
4019#line 243
4020struct nsproxy;
4021#line 187 "include/linux/interrupt.h"
4022struct device;
4023#line 695
4024struct seq_file;
4025#line 12 "include/linux/mod_devicetable.h"
4026typedef unsigned long kernel_ulong_t;
4027#line 17 "include/linux/mod_devicetable.h"
4028struct pci_device_id {
4029 __u32 vendor ;
4030 __u32 device ;
4031 __u32 subvendor ;
4032 __u32 subdevice ;
4033 __u32 class ;
4034 __u32 class_mask ;
4035 kernel_ulong_t driver_data ;
4036};
4037#line 219 "include/linux/mod_devicetable.h"
4038struct of_device_id {
4039 char name[32] ;
4040 char type[32] ;
4041 char compatible[128] ;
4042 void *data ;
4043};
4044#line 25 "include/linux/io.h"
4045struct device;
4046#line 61 "include/linux/pci.h"
4047struct hotplug_slot;
4048#line 61 "include/linux/pci.h"
4049struct pci_slot {
4050 struct pci_bus *bus ;
4051 struct list_head list ;
4052 struct hotplug_slot *hotplug ;
4053 unsigned char number ;
4054 struct kobject kobj ;
4055};
4056#line 117 "include/linux/pci.h"
4057typedef int pci_power_t;
4058#line 143 "include/linux/pci.h"
4059typedef unsigned int pci_channel_state_t;
4060#line 145
4061enum pci_channel_state {
4062 pci_channel_io_normal = 1,
4063 pci_channel_io_frozen = 2,
4064 pci_channel_io_perm_failure = 3
4065} ;
4066#line 169 "include/linux/pci.h"
4067typedef unsigned short pci_dev_flags_t;
4068#line 186 "include/linux/pci.h"
4069typedef unsigned short pci_bus_flags_t;
4070#line 230
4071struct pcie_link_state;
4072#line 230
4073struct pcie_link_state;
4074#line 231
4075struct pci_vpd;
4076#line 231
4077struct pci_vpd;
4078#line 232
4079struct pci_sriov;
4080#line 232
4081struct pci_sriov;
4082#line 233
4083struct pci_ats;
4084#line 233
4085struct pci_ats;
4086#line 238
4087struct pci_driver;
4088#line 238 "include/linux/pci.h"
4089union __anonunion____missing_field_name_267 {
4090 struct pci_sriov *sriov ;
4091 struct pci_dev *physfn ;
4092};
4093#line 238 "include/linux/pci.h"
4094struct pci_dev {
4095 struct list_head bus_list ;
4096 struct pci_bus *bus ;
4097 struct pci_bus *subordinate ;
4098 void *sysdata ;
4099 struct proc_dir_entry *procent ;
4100 struct pci_slot *slot ;
4101 unsigned int devfn ;
4102 unsigned short vendor ;
4103 unsigned short device ;
4104 unsigned short subsystem_vendor ;
4105 unsigned short subsystem_device ;
4106 unsigned int class ;
4107 u8 revision ;
4108 u8 hdr_type ;
4109 u8 pcie_cap ;
4110 u8 pcie_type : 4 ;
4111 u8 pcie_mpss : 3 ;
4112 u8 rom_base_reg ;
4113 u8 pin ;
4114 struct pci_driver *driver ;
4115 u64 dma_mask ;
4116 struct device_dma_parameters dma_parms ;
4117 pci_power_t current_state ;
4118 int pm_cap ;
4119 unsigned int pme_support : 5 ;
4120 unsigned int pme_interrupt : 1 ;
4121 unsigned int pme_poll : 1 ;
4122 unsigned int d1_support : 1 ;
4123 unsigned int d2_support : 1 ;
4124 unsigned int no_d1d2 : 1 ;
4125 unsigned int mmio_always_on : 1 ;
4126 unsigned int wakeup_prepared : 1 ;
4127 unsigned int d3_delay ;
4128 struct pcie_link_state *link_state ;
4129 pci_channel_state_t error_state ;
4130 struct device dev ;
4131 int cfg_size ;
4132 unsigned int irq ;
4133 struct resource resource[17] ;
4134 unsigned int transparent : 1 ;
4135 unsigned int multifunction : 1 ;
4136 unsigned int is_added : 1 ;
4137 unsigned int is_busmaster : 1 ;
4138 unsigned int no_msi : 1 ;
4139 unsigned int block_cfg_access : 1 ;
4140 unsigned int broken_parity_status : 1 ;
4141 unsigned int irq_reroute_variant : 2 ;
4142 unsigned int msi_enabled : 1 ;
4143 unsigned int msix_enabled : 1 ;
4144 unsigned int ari_enabled : 1 ;
4145 unsigned int is_managed : 1 ;
4146 unsigned int is_pcie : 1 ;
4147 unsigned int needs_freset : 1 ;
4148 unsigned int state_saved : 1 ;
4149 unsigned int is_physfn : 1 ;
4150 unsigned int is_virtfn : 1 ;
4151 unsigned int reset_fn : 1 ;
4152 unsigned int is_hotplug_bridge : 1 ;
4153 unsigned int __aer_firmware_first_valid : 1 ;
4154 unsigned int __aer_firmware_first : 1 ;
4155 pci_dev_flags_t dev_flags ;
4156 atomic_t enable_cnt ;
4157 u32 saved_config_space[16] ;
4158 struct hlist_head saved_cap_space ;
4159 struct bin_attribute *rom_attr ;
4160 int rom_attr_enabled ;
4161 struct bin_attribute *res_attr[17] ;
4162 struct bin_attribute *res_attr_wc[17] ;
4163 struct list_head msi_list ;
4164 struct kset *msi_kset ;
4165 struct pci_vpd *vpd ;
4166 union __anonunion____missing_field_name_267 __annonCompField50 ;
4167 struct pci_ats *ats ;
4168};
4169#line 406
4170struct pci_ops;
4171#line 406 "include/linux/pci.h"
4172struct pci_bus {
4173 struct list_head node ;
4174 struct pci_bus *parent ;
4175 struct list_head children ;
4176 struct list_head devices ;
4177 struct pci_dev *self ;
4178 struct list_head slots ;
4179 struct resource *resource[4] ;
4180 struct list_head resources ;
4181 struct pci_ops *ops ;
4182 void *sysdata ;
4183 struct proc_dir_entry *procdir ;
4184 unsigned char number ;
4185 unsigned char primary ;
4186 unsigned char secondary ;
4187 unsigned char subordinate ;
4188 unsigned char max_bus_speed ;
4189 unsigned char cur_bus_speed ;
4190 char name[48] ;
4191 unsigned short bridge_ctl ;
4192 pci_bus_flags_t bus_flags ;
4193 struct device *bridge ;
4194 struct device dev ;
4195 struct bin_attribute *legacy_io ;
4196 struct bin_attribute *legacy_mem ;
4197 unsigned int is_added : 1 ;
4198};
4199#line 472 "include/linux/pci.h"
4200struct pci_ops {
4201 int (*read)(struct pci_bus *bus , unsigned int devfn , int where , int size , u32 *val ) ;
4202 int (*write)(struct pci_bus *bus , unsigned int devfn , int where , int size ,
4203 u32 val ) ;
4204};
4205#line 491 "include/linux/pci.h"
4206struct pci_dynids {
4207 spinlock_t lock ;
4208 struct list_head list ;
4209};
4210#line 503 "include/linux/pci.h"
4211typedef unsigned int pci_ers_result_t;
4212#line 523 "include/linux/pci.h"
4213struct pci_error_handlers {
4214 pci_ers_result_t (*error_detected)(struct pci_dev *dev , enum pci_channel_state error ) ;
4215 pci_ers_result_t (*mmio_enabled)(struct pci_dev *dev ) ;
4216 pci_ers_result_t (*link_reset)(struct pci_dev *dev ) ;
4217 pci_ers_result_t (*slot_reset)(struct pci_dev *dev ) ;
4218 void (*resume)(struct pci_dev *dev ) ;
4219};
4220#line 543
4221struct module;
4222#line 544 "include/linux/pci.h"
4223struct pci_driver {
4224 struct list_head node ;
4225 char const *name ;
4226 struct pci_device_id const *id_table ;
4227 int (*probe)(struct pci_dev *dev , struct pci_device_id const *id ) ;
4228 void (*remove)(struct pci_dev *dev ) ;
4229 int (*suspend)(struct pci_dev *dev , pm_message_t state ) ;
4230 int (*suspend_late)(struct pci_dev *dev , pm_message_t state ) ;
4231 int (*resume_early)(struct pci_dev *dev ) ;
4232 int (*resume)(struct pci_dev *dev ) ;
4233 void (*shutdown)(struct pci_dev *dev ) ;
4234 struct pci_error_handlers *err_handler ;
4235 struct device_driver driver ;
4236 struct pci_dynids dynids ;
4237};
4238#line 27 "include/linux/dma-attrs.h"
4239struct dma_attrs {
4240 unsigned long flags[((4UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
4241};
4242#line 7 "include/linux/dma-direction.h"
4243enum dma_data_direction {
4244 DMA_BIDIRECTIONAL = 0,
4245 DMA_TO_DEVICE = 1,
4246 DMA_FROM_DEVICE = 2,
4247 DMA_NONE = 3
4248} ;
4249#line 11 "include/linux/dma-mapping.h"
4250struct dma_map_ops {
4251 void *(*alloc)(struct device *dev , size_t size , dma_addr_t *dma_handle , gfp_t gfp ,
4252 struct dma_attrs *attrs ) ;
4253 void (*free)(struct device *dev , size_t size , void *vaddr , dma_addr_t dma_handle ,
4254 struct dma_attrs *attrs ) ;
4255 int (*mmap)(struct device * , struct vm_area_struct * , void * , dma_addr_t ,
4256 size_t , struct dma_attrs *attrs ) ;
4257 dma_addr_t (*map_page)(struct device *dev , struct page *page , unsigned long offset ,
4258 size_t size , enum dma_data_direction dir , struct dma_attrs *attrs ) ;
4259 void (*unmap_page)(struct device *dev , dma_addr_t dma_handle , size_t size , enum dma_data_direction dir ,
4260 struct dma_attrs *attrs ) ;
4261 int (*map_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
4262 struct dma_attrs *attrs ) ;
4263 void (*unmap_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
4264 struct dma_attrs *attrs ) ;
4265 void (*sync_single_for_cpu)(struct device *dev , dma_addr_t dma_handle , size_t size ,
4266 enum dma_data_direction dir ) ;
4267 void (*sync_single_for_device)(struct device *dev , dma_addr_t dma_handle , size_t size ,
4268 enum dma_data_direction dir ) ;
4269 void (*sync_sg_for_cpu)(struct device *dev , struct scatterlist *sg , int nents ,
4270 enum dma_data_direction dir ) ;
4271 void (*sync_sg_for_device)(struct device *dev , struct scatterlist *sg , int nents ,
4272 enum dma_data_direction dir ) ;
4273 int (*mapping_error)(struct device *dev , dma_addr_t dma_addr ) ;
4274 int (*dma_supported)(struct device *dev , u64 mask ) ;
4275 int (*set_dma_mask)(struct device *dev , u64 mask ) ;
4276 int is_phys ;
4277};
4278#line 25 "include/linux/dma-debug.h"
4279struct device;
4280#line 26
4281struct scatterlist;
4282#line 27
4283struct bus_type;
4284#line 6 "include/linux/swiotlb.h"
4285struct device;
4286#line 7
4287struct dma_attrs;
4288#line 8
4289struct scatterlist;
4290#line 79 "include/acpi/actbl.h"
4291#pragma pack(1)
4292#line 321
4293#pragma pack()
4294#line 79 "include/acpi/actbl1.h"
4295#pragma pack(1)
4296#line 961
4297#pragma pack()
4298#line 96 "include/acpi/actbl2.h"
4299#pragma pack(1)
4300#line 1046
4301#pragma pack()
4302#line 87 "include/acpi/actbl3.h"
4303#pragma pack(1)
4304#line 550
4305#pragma pack()
4306#line 152 "include/acpi/acrestyp.h"
4307#pragma pack(1)
4308#line 588
4309#pragma pack()
4310#line 281 "include/linux/cdrom.h"
4311struct request_sense;
4312#line 697 "include/linux/cdrom.h"
4313struct request_sense {
4314 __u8 error_code : 7 ;
4315 __u8 valid : 1 ;
4316 __u8 segment_number ;
4317 __u8 sense_key : 4 ;
4318 __u8 reserved2 : 1 ;
4319 __u8 ili : 1 ;
4320 __u8 reserved1 : 2 ;
4321 __u8 information[4] ;
4322 __u8 add_sense_len ;
4323 __u8 command_info[4] ;
4324 __u8 asc ;
4325 __u8 ascq ;
4326 __u8 fruc ;
4327 __u8 sks[3] ;
4328 __u8 asb[46] ;
4329};
4330#line 44 "include/linux/ide.h"
4331struct device;
4332#line 58 "include/linux/ide.h"
4333union __anonunion____missing_field_name_285 {
4334 unsigned long error_addr ;
4335 unsigned long feature_addr ;
4336};
4337#line 58 "include/linux/ide.h"
4338union __anonunion____missing_field_name_286 {
4339 unsigned long status_addr ;
4340 unsigned long command_addr ;
4341};
4342#line 58 "include/linux/ide.h"
4343struct ide_io_ports {
4344 unsigned long data_addr ;
4345 union __anonunion____missing_field_name_285 __annonCompField51 ;
4346 unsigned long nsect_addr ;
4347 unsigned long lbal_addr ;
4348 unsigned long lbam_addr ;
4349 unsigned long lbah_addr ;
4350 unsigned long device_addr ;
4351 union __anonunion____missing_field_name_286 __annonCompField52 ;
4352 unsigned long ctl_addr ;
4353 unsigned long irq_addr ;
4354};
4355#line 170 "include/linux/ide.h"
4356typedef u8 hwif_chipset_t;
4357#line 175 "include/linux/ide.h"
4358union __anonunion____missing_field_name_289 {
4359 struct ide_io_ports io_ports ;
4360 unsigned long io_ports_array[10] ;
4361};
4362#line 175 "include/linux/ide.h"
4363struct ide_hw {
4364 union __anonunion____missing_field_name_289 __annonCompField53 ;
4365 int irq ;
4366 struct device *dev ;
4367 struct device *parent ;
4368 unsigned long config ;
4369};
4370#line 223
4371enum __anonenum_ide_startstop_t_291 {
4372 ide_stopped = 0,
4373 ide_started = 1
4374} ;
4375#line 223 "include/linux/ide.h"
4376typedef enum __anonenum_ide_startstop_t_291 ide_startstop_t;
4377#line 271 "include/linux/ide.h"
4378union __anonunion____missing_field_name_295 {
4379 u8 error ;
4380 u8 feature ;
4381};
4382#line 271 "include/linux/ide.h"
4383union __anonunion____missing_field_name_296 {
4384 u8 status ;
4385 u8 command ;
4386};
4387#line 271 "include/linux/ide.h"
4388struct ide_taskfile {
4389 u8 data ;
4390 union __anonunion____missing_field_name_295 __annonCompField54 ;
4391 u8 nsect ;
4392 u8 lbal ;
4393 u8 lbam ;
4394 u8 lbah ;
4395 u8 device ;
4396 union __anonunion____missing_field_name_296 __annonCompField55 ;
4397};
4398#line 288 "include/linux/ide.h"
4399struct __anonstruct_out_298 {
4400 u8 tf ;
4401 u8 hob ;
4402};
4403#line 288 "include/linux/ide.h"
4404struct __anonstruct_valid_297 {
4405 struct __anonstruct_out_298 out ;
4406 struct __anonstruct_out_298 in ;
4407};
4408#line 288 "include/linux/ide.h"
4409struct ide_cmd {
4410 struct ide_taskfile tf ;
4411 struct ide_taskfile hob ;
4412 struct __anonstruct_valid_297 valid ;
4413 u16 tf_flags ;
4414 u8 ftf_flags ;
4415 int protocol ;
4416 int sg_nents ;
4417 int orig_sg_nents ;
4418 int sg_dma_direction ;
4419 unsigned int nbytes ;
4420 unsigned int nleft ;
4421 unsigned int last_xfer_len ;
4422 struct scatterlist *cursg ;
4423 unsigned int cursg_ofs ;
4424 struct request *rq ;
4425};
4426#line 330 "include/linux/ide.h"
4427struct ide_atapi_pc {
4428 u8 c[12] ;
4429 int retries ;
4430 int error ;
4431 int req_xfer ;
4432 struct request *rq ;
4433 unsigned long flags ;
4434 unsigned long timeout ;
4435};
4436#line 352
4437struct ide_devset;
4438#line 352
4439struct ide_devset;
4440#line 356
4441struct ide_acpi_drive_link;
4442#line 356
4443struct ide_acpi_drive_link;
4444#line 357
4445struct ide_acpi_hwif_link;
4446#line 357
4447struct ide_acpi_hwif_link;
4448#line 360
4449struct ide_drive_s;
4450#line 360
4451struct ide_drive_s;
4452#line 362 "include/linux/ide.h"
4453struct ide_disk_ops {
4454 int (*check)(struct ide_drive_s * , char const * ) ;
4455 int (*get_capacity)(struct ide_drive_s * ) ;
4456 void (*unlock_native_capacity)(struct ide_drive_s * ) ;
4457 void (*setup)(struct ide_drive_s * ) ;
4458 void (*flush)(struct ide_drive_s * ) ;
4459 int (*init_media)(struct ide_drive_s * , struct gendisk * ) ;
4460 int (*set_doorlock)(struct ide_drive_s * , struct gendisk * , int ) ;
4461 ide_startstop_t (*do_request)(struct ide_drive_s * , struct request * , sector_t ) ;
4462 int (*ioctl)(struct ide_drive_s * , struct block_device * , fmode_t , unsigned int ,
4463 unsigned long ) ;
4464};
4465#line 486
4466struct ide_proc_devset;
4467#line 486
4468struct hwif_s;
4469#line 486 "include/linux/ide.h"
4470struct ide_drive_s {
4471 char name[4] ;
4472 char driver_req[10] ;
4473 struct request_queue *queue ;
4474 struct request *rq ;
4475 void *driver_data ;
4476 u16 *id ;
4477 struct proc_dir_entry *proc ;
4478 struct ide_proc_devset const *settings ;
4479 struct hwif_s *hwif ;
4480 struct ide_disk_ops const *disk_ops ;
4481 unsigned long dev_flags ;
4482 unsigned long sleep ;
4483 unsigned long timeout ;
4484 u8 special_flags ;
4485 u8 select ;
4486 u8 retry_pio ;
4487 u8 waiting_for_dma ;
4488 u8 dma ;
4489 u8 init_speed ;
4490 u8 current_speed ;
4491 u8 desired_speed ;
4492 u8 pio_mode ;
4493 u8 dma_mode ;
4494 u8 dn ;
4495 u8 acoustic ;
4496 u8 media ;
4497 u8 ready_stat ;
4498 u8 mult_count ;
4499 u8 mult_req ;
4500 u8 io_32bit ;
4501 u8 bad_wstat ;
4502 u8 head ;
4503 u8 sect ;
4504 u8 bios_head ;
4505 u8 bios_sect ;
4506 u8 pc_delay ;
4507 unsigned int bios_cyl ;
4508 unsigned int cyl ;
4509 void *drive_data ;
4510 unsigned int failures ;
4511 unsigned int max_failures ;
4512 u64 probed_capacity ;
4513 u64 capacity64 ;
4514 int lun ;
4515 int crc_count ;
4516 unsigned long debug_mask ;
4517 struct ide_acpi_drive_link *acpidata ;
4518 struct list_head list ;
4519 struct device gendev ;
4520 struct completion gendev_rel_comp ;
4521 struct ide_atapi_pc *pc ;
4522 struct ide_atapi_pc *failed_pc ;
4523 int (*pc_callback)(struct ide_drive_s * , int ) ;
4524 ide_startstop_t (*irq_handler)(struct ide_drive_s * ) ;
4525 unsigned long atapi_flags ;
4526 struct ide_atapi_pc request_sense_pc ;
4527 bool sense_rq_armed ;
4528 struct request sense_rq ;
4529 struct request_sense sense_data ;
4530};
4531#line 577 "include/linux/ide.h"
4532typedef struct ide_drive_s ide_drive_t;
4533#line 587
4534struct ide_port_info;
4535#line 587
4536struct ide_port_info;
4537#line 589 "include/linux/ide.h"
4538struct ide_tp_ops {
4539 void (*exec_command)(struct hwif_s * , u8 ) ;
4540 u8 (*read_status)(struct hwif_s * ) ;
4541 u8 (*read_altstatus)(struct hwif_s * ) ;
4542 void (*write_devctl)(struct hwif_s * , u8 ) ;
4543 void (*dev_select)(ide_drive_t * ) ;
4544 void (*tf_load)(ide_drive_t * , struct ide_taskfile * , u8 ) ;
4545 void (*tf_read)(ide_drive_t * , struct ide_taskfile * , u8 ) ;
4546 void (*input_data)(ide_drive_t * , struct ide_cmd * , void * , unsigned int ) ;
4547 void (*output_data)(ide_drive_t * , struct ide_cmd * , void * , unsigned int ) ;
4548};
4549#line 625 "include/linux/ide.h"
4550struct ide_port_ops {
4551 void (*init_dev)(ide_drive_t * ) ;
4552 void (*set_pio_mode)(struct hwif_s * , ide_drive_t * ) ;
4553 void (*set_dma_mode)(struct hwif_s * , ide_drive_t * ) ;
4554 int (*reset_poll)(ide_drive_t * ) ;
4555 void (*pre_reset)(ide_drive_t * ) ;
4556 void (*resetproc)(ide_drive_t * ) ;
4557 void (*maskproc)(ide_drive_t * , int ) ;
4558 void (*quirkproc)(ide_drive_t * ) ;
4559 void (*clear_irq)(ide_drive_t * ) ;
4560 int (*test_irq)(struct hwif_s * ) ;
4561 u8 (*mdma_filter)(ide_drive_t * ) ;
4562 u8 (*udma_filter)(ide_drive_t * ) ;
4563 u8 (*cable_detect)(struct hwif_s * ) ;
4564};
4565#line 643 "include/linux/ide.h"
4566struct ide_dma_ops {
4567 void (*dma_host_set)(struct ide_drive_s * , int ) ;
4568 int (*dma_setup)(struct ide_drive_s * , struct ide_cmd * ) ;
4569 void (*dma_start)(struct ide_drive_s * ) ;
4570 int (*dma_end)(struct ide_drive_s * ) ;
4571 int (*dma_test_irq)(struct ide_drive_s * ) ;
4572 void (*dma_lost_irq)(struct ide_drive_s * ) ;
4573 int (*dma_check)(struct ide_drive_s * , struct ide_cmd * ) ;
4574 int (*dma_timer_expiry)(struct ide_drive_s * ) ;
4575 void (*dma_clear)(struct ide_drive_s * ) ;
4576 u8 (*dma_sff_read_status)(struct hwif_s * ) ;
4577};
4578#line 665
4579struct ide_host;
4580#line 665
4581struct ide_host;
4582#line 667 "include/linux/ide.h"
4583struct hwif_s {
4584 struct hwif_s *mate ;
4585 struct proc_dir_entry *proc ;
4586 struct ide_host *host ;
4587 char name[6] ;
4588 struct ide_io_ports io_ports ;
4589 unsigned long sata_scr[3] ;
4590 ide_drive_t *devices[3] ;
4591 unsigned long port_flags ;
4592 u8 major ;
4593 u8 index ;
4594 u8 channel ;
4595 u32 host_flags ;
4596 u8 pio_mask ;
4597 u8 ultra_mask ;
4598 u8 mwdma_mask ;
4599 u8 swdma_mask ;
4600 u8 cbl ;
4601 hwif_chipset_t chipset ;
4602 struct device *dev ;
4603 void (*rw_disk)(ide_drive_t * , struct request * ) ;
4604 struct ide_tp_ops const *tp_ops ;
4605 struct ide_port_ops const *port_ops ;
4606 struct ide_dma_ops const *dma_ops ;
4607 unsigned int *dmatable_cpu ;
4608 dma_addr_t dmatable_dma ;
4609 int prd_max_nents ;
4610 int prd_ent_size ;
4611 struct scatterlist *sg_table ;
4612 int sg_max_nents ;
4613 struct ide_cmd cmd ;
4614 int rqsize ;
4615 int irq ;
4616 unsigned long dma_base ;
4617 unsigned long config_data ;
4618 unsigned long select_data ;
4619 unsigned long extra_base ;
4620 unsigned int extra_ports ;
4621 unsigned int present : 1 ;
4622 unsigned int busy : 1 ;
4623 struct device gendev ;
4624 struct device *portdev ;
4625 struct completion gendev_rel_comp ;
4626 void *hwif_data ;
4627 struct ide_acpi_hwif_link *acpidata ;
4628 ide_startstop_t (*handler)(ide_drive_t * ) ;
4629 unsigned int polling : 1 ;
4630 ide_drive_t *cur_dev ;
4631 struct request *rq ;
4632 struct timer_list timer ;
4633 unsigned long poll_timeout ;
4634 int (*expiry)(ide_drive_t * ) ;
4635 int req_gen ;
4636 int req_gen_timer ;
4637 spinlock_t lock ;
4638} __attribute__((__aligned__((1) << (12) ))) ;
4639#line 667 "include/linux/ide.h"
4640typedef struct hwif_s ide_hwif_t;
4641#line 775 "include/linux/ide.h"
4642struct ide_host {
4643 ide_hwif_t *ports[5] ;
4644 unsigned int n_ports ;
4645 struct device *dev[2] ;
4646 int (*init_chipset)(struct pci_dev * ) ;
4647 void (*get_lock)(irqreturn_t (*)(int , void * ) , void * ) ;
4648 void (*release_lock)(void) ;
4649 irqreturn_t (*irq_handler)(int , void * ) ;
4650 unsigned long host_flags ;
4651 int irq_flags ;
4652 void *host_priv ;
4653 ide_hwif_t *cur_port ;
4654 unsigned long volatile host_busy ;
4655};
4656#line 817 "include/linux/ide.h"
4657struct ide_devset {
4658 int (*get)(ide_drive_t * ) ;
4659 int (*set)(ide_drive_t * , int ) ;
4660 unsigned int flags ;
4661};
4662#line 901 "include/linux/ide.h"
4663struct ide_proc_devset {
4664 char const *name ;
4665 struct ide_devset const *setting ;
4666 int min ;
4667 int max ;
4668 int (*mulf)(ide_drive_t * ) ;
4669 int (*divf)(ide_drive_t * ) ;
4670};
4671#line 1207 "include/linux/ide.h"
4672struct ide_pci_enablebit {
4673 u8 reg ;
4674 u8 mask ;
4675 u8 val ;
4676};
4677#line 1288 "include/linux/ide.h"
4678struct ide_port_info {
4679 char *name ;
4680 int (*init_chipset)(struct pci_dev * ) ;
4681 void (*get_lock)(irqreturn_t (*)(int , void * ) , void * ) ;
4682 void (*release_lock)(void) ;
4683 void (*init_iops)(ide_hwif_t * ) ;
4684 void (*init_hwif)(ide_hwif_t * ) ;
4685 int (*init_dma)(ide_hwif_t * , struct ide_port_info const * ) ;
4686 struct ide_tp_ops const *tp_ops ;
4687 struct ide_port_ops const *port_ops ;
4688 struct ide_dma_ops const *dma_ops ;
4689 struct ide_pci_enablebit enablebits[2] ;
4690 hwif_chipset_t chipset ;
4691 u16 max_sectors ;
4692 u32 host_flags ;
4693 int irq_flags ;
4694 u8 pio_mask ;
4695 u8 swdma_mask ;
4696 u8 mwdma_mask ;
4697 u8 udma_mask ;
4698};
4699#line 1463 "include/linux/ide.h"
4700struct ide_timing {
4701 u8 mode ;
4702 u8 setup ;
4703 u16 act8b ;
4704 u16 rec8b ;
4705 u16 cyc8b ;
4706 u16 active ;
4707 u16 recover ;
4708 u16 cycle ;
4709 u16 udma ;
4710};
4711#line 48 "include/linux/kmod.h"
4712struct cred;
4713#line 49
4714struct file;
4715#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
4716struct task_struct;
4717#line 18 "include/linux/elf.h"
4718typedef __u64 Elf64_Addr;
4719#line 19 "include/linux/elf.h"
4720typedef __u16 Elf64_Half;
4721#line 23 "include/linux/elf.h"
4722typedef __u32 Elf64_Word;
4723#line 24 "include/linux/elf.h"
4724typedef __u64 Elf64_Xword;
4725#line 194 "include/linux/elf.h"
4726struct elf64_sym {
4727 Elf64_Word st_name ;
4728 unsigned char st_info ;
4729 unsigned char st_other ;
4730 Elf64_Half st_shndx ;
4731 Elf64_Addr st_value ;
4732 Elf64_Xword st_size ;
4733};
4734#line 194 "include/linux/elf.h"
4735typedef struct elf64_sym Elf64_Sym;
4736#line 438
4737struct file;
4738#line 39 "include/linux/moduleparam.h"
4739struct kernel_param;
4740#line 39
4741struct kernel_param;
4742#line 41 "include/linux/moduleparam.h"
4743struct kernel_param_ops {
4744 int (*set)(char const *val , struct kernel_param const *kp ) ;
4745 int (*get)(char *buffer , struct kernel_param const *kp ) ;
4746 void (*free)(void *arg ) ;
4747};
4748#line 50
4749struct kparam_string;
4750#line 50
4751struct kparam_array;
4752#line 50 "include/linux/moduleparam.h"
4753union __anonunion____missing_field_name_313 {
4754 void *arg ;
4755 struct kparam_string const *str ;
4756 struct kparam_array const *arr ;
4757};
4758#line 50 "include/linux/moduleparam.h"
4759struct kernel_param {
4760 char const *name ;
4761 struct kernel_param_ops const *ops ;
4762 u16 perm ;
4763 s16 level ;
4764 union __anonunion____missing_field_name_313 __annonCompField56 ;
4765};
4766#line 63 "include/linux/moduleparam.h"
4767struct kparam_string {
4768 unsigned int maxlen ;
4769 char *string ;
4770};
4771#line 69 "include/linux/moduleparam.h"
4772struct kparam_array {
4773 unsigned int max ;
4774 unsigned int elemsize ;
4775 unsigned int *num ;
4776 struct kernel_param_ops const *ops ;
4777 void *elem ;
4778};
4779#line 445
4780struct module;
4781#line 80 "include/linux/jump_label.h"
4782struct module;
4783#line 143 "include/linux/jump_label.h"
4784struct static_key {
4785 atomic_t enabled ;
4786};
4787#line 22 "include/linux/tracepoint.h"
4788struct module;
4789#line 23
4790struct tracepoint;
4791#line 23
4792struct tracepoint;
4793#line 25 "include/linux/tracepoint.h"
4794struct tracepoint_func {
4795 void *func ;
4796 void *data ;
4797};
4798#line 30 "include/linux/tracepoint.h"
4799struct tracepoint {
4800 char const *name ;
4801 struct static_key key ;
4802 void (*regfunc)(void) ;
4803 void (*unregfunc)(void) ;
4804 struct tracepoint_func *funcs ;
4805};
4806#line 19 "include/linux/export.h"
4807struct kernel_symbol {
4808 unsigned long value ;
4809 char const *name ;
4810};
4811#line 8 "include/asm-generic/module.h"
4812struct mod_arch_specific {
4813
4814};
4815#line 35 "include/linux/module.h"
4816struct module;
4817#line 37
4818struct module_param_attrs;
4819#line 37 "include/linux/module.h"
4820struct module_kobject {
4821 struct kobject kobj ;
4822 struct module *mod ;
4823 struct kobject *drivers_dir ;
4824 struct module_param_attrs *mp ;
4825};
4826#line 44 "include/linux/module.h"
4827struct module_attribute {
4828 struct attribute attr ;
4829 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
4830 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
4831 size_t count ) ;
4832 void (*setup)(struct module * , char const * ) ;
4833 int (*test)(struct module * ) ;
4834 void (*free)(struct module * ) ;
4835};
4836#line 71
4837struct exception_table_entry;
4838#line 199
4839enum module_state {
4840 MODULE_STATE_LIVE = 0,
4841 MODULE_STATE_COMING = 1,
4842 MODULE_STATE_GOING = 2
4843} ;
4844#line 215 "include/linux/module.h"
4845struct module_ref {
4846 unsigned long incs ;
4847 unsigned long decs ;
4848} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
4849#line 220
4850struct module_sect_attrs;
4851#line 220
4852struct module_notes_attrs;
4853#line 220
4854struct ftrace_event_call;
4855#line 220 "include/linux/module.h"
4856struct module {
4857 enum module_state state ;
4858 struct list_head list ;
4859 char name[64UL - sizeof(unsigned long )] ;
4860 struct module_kobject mkobj ;
4861 struct module_attribute *modinfo_attrs ;
4862 char const *version ;
4863 char const *srcversion ;
4864 struct kobject *holders_dir ;
4865 struct kernel_symbol const *syms ;
4866 unsigned long const *crcs ;
4867 unsigned int num_syms ;
4868 struct kernel_param *kp ;
4869 unsigned int num_kp ;
4870 unsigned int num_gpl_syms ;
4871 struct kernel_symbol const *gpl_syms ;
4872 unsigned long const *gpl_crcs ;
4873 struct kernel_symbol const *unused_syms ;
4874 unsigned long const *unused_crcs ;
4875 unsigned int num_unused_syms ;
4876 unsigned int num_unused_gpl_syms ;
4877 struct kernel_symbol const *unused_gpl_syms ;
4878 unsigned long const *unused_gpl_crcs ;
4879 struct kernel_symbol const *gpl_future_syms ;
4880 unsigned long const *gpl_future_crcs ;
4881 unsigned int num_gpl_future_syms ;
4882 unsigned int num_exentries ;
4883 struct exception_table_entry *extable ;
4884 int (*init)(void) ;
4885 void *module_init ;
4886 void *module_core ;
4887 unsigned int init_size ;
4888 unsigned int core_size ;
4889 unsigned int init_text_size ;
4890 unsigned int core_text_size ;
4891 unsigned int init_ro_size ;
4892 unsigned int core_ro_size ;
4893 struct mod_arch_specific arch ;
4894 unsigned int taints ;
4895 unsigned int num_bugs ;
4896 struct list_head bug_list ;
4897 struct bug_entry *bug_table ;
4898 Elf64_Sym *symtab ;
4899 Elf64_Sym *core_symtab ;
4900 unsigned int num_symtab ;
4901 unsigned int core_num_syms ;
4902 char *strtab ;
4903 char *core_strtab ;
4904 struct module_sect_attrs *sect_attrs ;
4905 struct module_notes_attrs *notes_attrs ;
4906 char *args ;
4907 void *percpu ;
4908 unsigned int percpu_size ;
4909 unsigned int num_tracepoints ;
4910 struct tracepoint * const *tracepoints_ptrs ;
4911 unsigned int num_trace_bprintk_fmt ;
4912 char const **trace_bprintk_fmt_start ;
4913 struct ftrace_event_call **trace_events ;
4914 unsigned int num_trace_events ;
4915 struct list_head source_list ;
4916 struct list_head target_list ;
4917 struct task_struct *waiter ;
4918 void (*exit)(void) ;
4919 struct module_ref *refptr ;
4920 ctor_fn_t *ctors ;
4921 unsigned int num_ctors ;
4922};
4923#line 1 "<compiler builtins>"
4924long __builtin_expect(long val , long res ) ;
4925#line 100 "include/linux/printk.h"
4926extern int ( printk)(char const *fmt , ...) ;
4927#line 10 "include/asm-generic/delay.h"
4928extern void __const_udelay(unsigned long xloops ) ;
4929#line 137 "include/linux/ioport.h"
4930extern struct resource ioport_resource ;
4931#line 181
4932extern struct resource *__request_region(struct resource * , resource_size_t start ,
4933 resource_size_t n , char const *name ,
4934 int flags ) ;
4935#line 192
4936extern void __release_region(struct resource * , resource_size_t , resource_size_t ) ;
4937#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
4938extern void *memset(void *s , int c , size_t n ) ;
4939#line 355 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
4940extern struct pv_cpu_ops pv_cpu_ops ;
4941#line 349 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
4942__inline static void slow_down_io(void) __attribute__((__no_instrument_function__)) ;
4943#line 349 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
4944__inline static void slow_down_io(void)
4945{ unsigned long __cil_tmp1 ;
4946 void (*__cil_tmp2)(void) ;
4947
4948 {
4949 {
4950#line 351
4951 __cil_tmp1 = (unsigned long )(& pv_cpu_ops) + 216;
4952#line 351
4953 __cil_tmp2 = *((void (**)(void))__cil_tmp1);
4954#line 351
4955 (*__cil_tmp2)();
4956 }
4957#line 357
4958 return;
4959}
4960}
4961#line 32 "include/linux/spinlock_api_smp.h"
4962extern unsigned long _raw_spin_lock_irqsave(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4963#line 42
4964extern void _raw_spin_unlock_irqrestore(raw_spinlock_t *lock , unsigned long flags ) __attribute__((__section__(".spinlock.text"))) ;
4965#line 272 "include/linux/spinlock.h"
4966__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4967#line 272 "include/linux/spinlock.h"
4968__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
4969{
4970
4971 {
4972#line 274
4973 return ((struct raw_spinlock *)lock);
4974}
4975}
4976#line 338
4977__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) __attribute__((__no_instrument_function__)) ;
4978#line 338 "include/linux/spinlock.h"
4979__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags )
4980{ struct raw_spinlock *__cil_tmp5 ;
4981
4982 {
4983 {
4984#line 340
4985 while (1) {
4986 while_continue: ;
4987 {
4988#line 340
4989 __cil_tmp5 = (struct raw_spinlock *)lock;
4990#line 340
4991 _raw_spin_unlock_irqrestore(__cil_tmp5, flags);
4992 }
4993#line 340
4994 goto while_break;
4995 }
4996 while_break: ;
4997 }
4998#line 341
4999 return;
5000}
5001}
5002#line 152 "include/linux/mutex.h"
5003void mutex_lock(struct mutex *lock ) ;
5004#line 153
5005int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock ) ;
5006#line 154
5007int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock ) ;
5008#line 168
5009int mutex_trylock(struct mutex *lock ) ;
5010#line 169
5011void mutex_unlock(struct mutex *lock ) ;
5012#line 170
5013int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
5014#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5015__inline static void outb(unsigned char value , int port ) __attribute__((__no_instrument_function__)) ;
5016#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5017__inline static void outb(unsigned char value , int port )
5018{
5019
5020 {
5021#line 308
5022 __asm__ volatile ("out"
5023 "b"
5024 " %"
5025 "b"
5026 "0, %w1": : "a" (value), "Nd" (port));
5027#line 308
5028 return;
5029}
5030}
5031#line 308
5032__inline static unsigned char inb(int port ) __attribute__((__no_instrument_function__)) ;
5033#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5034__inline static unsigned char inb(int port )
5035{ unsigned char value ;
5036
5037 {
5038#line 308
5039 __asm__ volatile ("in"
5040 "b"
5041 " %w1, %"
5042 "b"
5043 "0": "=a" (value): "Nd" (port));
5044#line 308
5045 return (value);
5046}
5047}
5048#line 308
5049__inline static void outb_p(unsigned char value , int port ) __attribute__((__no_instrument_function__)) ;
5050#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5051__inline static void outb_p(unsigned char value , int port )
5052{
5053
5054 {
5055 {
5056#line 308
5057 outb(value, port);
5058#line 308
5059 slow_down_io();
5060 }
5061#line 308
5062 return;
5063}
5064}
5065#line 308
5066__inline static unsigned char inb_p(int port ) __attribute__((__no_instrument_function__)) ;
5067#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5068__inline static unsigned char inb_p(int port )
5069{ unsigned char value ;
5070 unsigned char tmp ;
5071
5072 {
5073 {
5074#line 308
5075 tmp = inb(port);
5076#line 308
5077 value = tmp;
5078#line 308
5079 slow_down_io();
5080 }
5081#line 308
5082 return (value);
5083}
5084}
5085#line 310
5086__inline static void outl(unsigned int value , int port ) __attribute__((__no_instrument_function__)) ;
5087#line 310 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5088__inline static void outl(unsigned int value , int port )
5089{
5090
5091 {
5092#line 310
5093 __asm__ volatile ("out"
5094 "l"
5095 " %"
5096 ""
5097 "0, %w1": : "a" (value), "Nd" (port));
5098#line 310
5099 return;
5100}
5101}
5102#line 310
5103__inline static unsigned int inl(int port ) __attribute__((__no_instrument_function__)) ;
5104#line 310 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5105__inline static unsigned int inl(int port )
5106{ unsigned int value ;
5107
5108 {
5109#line 310
5110 __asm__ volatile ("in"
5111 "l"
5112 " %w1, %"
5113 ""
5114 "0": "=a" (value): "Nd" (port));
5115#line 310
5116 return (value);
5117}
5118}
5119#line 310
5120__inline static void outl_p(unsigned int value , int port ) __attribute__((__no_instrument_function__)) ;
5121#line 310 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
5122__inline static void outl_p(unsigned int value , int port )
5123{
5124
5125 {
5126 {
5127#line 310
5128 outl(value, port);
5129#line 310
5130 slow_down_io();
5131 }
5132#line 310
5133 return;
5134}
5135}
5136#line 186 "include/linux/ide.h"
5137__inline static void ide_std_init_ports(struct ide_hw *hw , unsigned long io_addr ,
5138 unsigned long ctl_addr ) __attribute__((__no_instrument_function__)) ;
5139#line 186 "include/linux/ide.h"
5140__inline static void ide_std_init_ports(struct ide_hw *hw , unsigned long io_addr ,
5141 unsigned long ctl_addr )
5142{ unsigned int i ;
5143 unsigned long tmp___7 ;
5144 unsigned long __cil_tmp6 ;
5145 unsigned long __cil_tmp7 ;
5146 unsigned long __cil_tmp8 ;
5147 unsigned long __cil_tmp9 ;
5148 unsigned long __cil_tmp10 ;
5149 unsigned long __cil_tmp11 ;
5150 unsigned long __cil_tmp12 ;
5151 unsigned long __cil_tmp13 ;
5152 unsigned long __cil_tmp14 ;
5153
5154 {
5155#line 192
5156 i = 0U;
5157 {
5158#line 192
5159 while (1) {
5160 while_continue: ;
5161#line 192
5162 if (i <= 7U) {
5163
5164 } else {
5165#line 192
5166 goto while_break;
5167 }
5168#line 193
5169 tmp___7 = io_addr;
5170#line 193
5171 io_addr = io_addr + 1UL;
5172#line 193
5173 __cil_tmp6 = i * 8UL;
5174#line 193
5175 __cil_tmp7 = 0 + __cil_tmp6;
5176#line 193
5177 __cil_tmp8 = 0 + __cil_tmp7;
5178#line 193
5179 __cil_tmp9 = (unsigned long )hw;
5180#line 193
5181 __cil_tmp10 = __cil_tmp9 + __cil_tmp8;
5182#line 193
5183 *((unsigned long *)__cil_tmp10) = tmp___7;
5184#line 192
5185 i = i + 1U;
5186 }
5187 while_break: ;
5188 }
5189#line 195
5190 __cil_tmp11 = 0 + 64;
5191#line 195
5192 __cil_tmp12 = 0 + __cil_tmp11;
5193#line 195
5194 __cil_tmp13 = (unsigned long )hw;
5195#line 195
5196 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
5197#line 195
5198 *((unsigned long *)__cil_tmp14) = ctl_addr;
5199#line 196
5200 return;
5201}
5202}
5203#line 1047
5204extern int ide_vlb_clk ;
5205#line 1048
5206extern int ide_pci_clk ;
5207#line 1441
5208extern int ide_host_add(struct ide_port_info const * , struct ide_hw ** , unsigned int ,
5209 struct ide_host ** ) ;
5210#line 1491
5211extern struct ide_timing *ide_timing_find_mode(u8 ) ;
5212#line 1492
5213extern u16 ide_pio_cycle_time(ide_drive_t * , u8 ) ;
5214#line 1531
5215__inline static ide_drive_t *ide_get_pair_dev(ide_drive_t *drive ) __attribute__((__no_instrument_function__)) ;
5216#line 1531 "include/linux/ide.h"
5217__inline static ide_drive_t *ide_get_pair_dev(ide_drive_t *drive )
5218{ ide_drive_t *peer ;
5219 ide_drive_t *tmp___7 ;
5220 unsigned long __cil_tmp4 ;
5221 unsigned long __cil_tmp5 ;
5222 u8 __cil_tmp6 ;
5223 int __cil_tmp7 ;
5224 int __cil_tmp8 ;
5225 int __cil_tmp9 ;
5226 unsigned long __cil_tmp10 ;
5227 unsigned long __cil_tmp11 ;
5228 unsigned long __cil_tmp12 ;
5229 unsigned long __cil_tmp13 ;
5230 struct hwif_s *__cil_tmp14 ;
5231 unsigned long __cil_tmp15 ;
5232 unsigned long __cil_tmp16 ;
5233 unsigned long __cil_tmp17 ;
5234 unsigned long __cil_tmp18 ;
5235 unsigned long __cil_tmp19 ;
5236 void *__cil_tmp20 ;
5237
5238 {
5239#line 1533
5240 __cil_tmp4 = (unsigned long )drive;
5241#line 1533
5242 __cil_tmp5 = __cil_tmp4 + 114;
5243#line 1533
5244 __cil_tmp6 = *((u8 *)__cil_tmp5);
5245#line 1533
5246 __cil_tmp7 = (int )__cil_tmp6;
5247#line 1533
5248 __cil_tmp8 = __cil_tmp7 ^ 1;
5249#line 1533
5250 __cil_tmp9 = __cil_tmp8 & 1;
5251#line 1533
5252 __cil_tmp10 = __cil_tmp9 * 8UL;
5253#line 1533
5254 __cil_tmp11 = 136 + __cil_tmp10;
5255#line 1533
5256 __cil_tmp12 = (unsigned long )drive;
5257#line 1533
5258 __cil_tmp13 = __cil_tmp12 + 64;
5259#line 1533
5260 __cil_tmp14 = *((struct hwif_s **)__cil_tmp13);
5261#line 1533
5262 __cil_tmp15 = (unsigned long )__cil_tmp14;
5263#line 1533
5264 __cil_tmp16 = __cil_tmp15 + __cil_tmp11;
5265#line 1533
5266 peer = *((ide_drive_t **)__cil_tmp16);
5267 {
5268#line 1535
5269 __cil_tmp17 = (unsigned long )peer;
5270#line 1535
5271 __cil_tmp18 = __cil_tmp17 + 80;
5272#line 1535
5273 __cil_tmp19 = *((unsigned long *)__cil_tmp18);
5274#line 1535
5275 if (__cil_tmp19 & 64UL) {
5276#line 1535
5277 tmp___7 = peer;
5278 } else {
5279#line 1535
5280 __cil_tmp20 = (void *)0;
5281#line 1535
5282 tmp___7 = (ide_drive_t *)__cil_tmp20;
5283 }
5284 }
5285#line 1535
5286 return (tmp___7);
5287}
5288}
5289#line 382 "include/linux/moduleparam.h"
5290extern struct kernel_param_ops param_ops_bool ;
5291#line 67 "include/linux/module.h"
5292int init_module(void) ;
5293#line 115 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5294static bool cmd640_vlb ;
5295#line 165 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5296static u8 prefetch_regs[4] = { (u8 )81, (u8 )81, (u8 )87, (u8 )87};
5297#line 166 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5298static u8 prefetch_masks[4] = { (u8 )64, (u8 )128, (u8 )4, (u8 )8};
5299#line 170 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5300static u8 arttim_regs[4] = { (u8 )83, (u8 )85, (u8 )87, (u8 )87};
5301#line 171 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5302static u8 drwtim_regs[4] = { (u8 )84, (u8 )86, (u8 )88, (u8 )88};
5303#line 177 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5304static u8 setup_counts[4] = { (u8 )4, (u8 )4, (u8 )4, (u8 )4};
5305#line 178 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5306static u8 active_counts[4] = { (u8 )16, (u8 )16, (u8 )16, (u8 )16};
5307#line 179 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5308static u8 recovery_counts[4] = { (u8 )16, (u8 )16, (u8 )16, (u8 )16};
5309#line 183 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5310static spinlock_t cmd640_lock = {{{{{(__ticketpair_t )0}}, 3735899821U, 4294967295U, (void *)-1L}}};
5311#line 188 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5312static unsigned int cmd640_key ;
5313#line 189 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5314static void (*__put_cmd640_reg)(u16 reg , u8 val ) ;
5315#line 190 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5316static u8 (*__get_cmd640_reg)(u16 reg ) ;
5317#line 195 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5318static unsigned int cmd640_chip_version ;
5319#line 205 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5320static void put_cmd640_reg_pci1(u16 reg , u8 val )
5321{ int __cil_tmp3 ;
5322 int __cil_tmp4 ;
5323 unsigned int __cil_tmp5 ;
5324 unsigned int __cil_tmp6 ;
5325 int __cil_tmp7 ;
5326 int __cil_tmp8 ;
5327 int __cil_tmp9 ;
5328
5329 {
5330 {
5331#line 207
5332 __cil_tmp3 = (int )reg;
5333#line 207
5334 __cil_tmp4 = __cil_tmp3 & 252;
5335#line 207
5336 __cil_tmp5 = (unsigned int )__cil_tmp4;
5337#line 207
5338 __cil_tmp6 = __cil_tmp5 | cmd640_key;
5339#line 207
5340 outl_p(__cil_tmp6, 3320);
5341#line 208
5342 __cil_tmp7 = (int )reg;
5343#line 208
5344 __cil_tmp8 = __cil_tmp7 & 3;
5345#line 208
5346 __cil_tmp9 = __cil_tmp8 | 3324;
5347#line 208
5348 outb_p(val, __cil_tmp9);
5349 }
5350#line 209
5351 return;
5352}
5353}
5354#line 211 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5355static u8 get_cmd640_reg_pci1(u16 reg )
5356{ unsigned char tmp___7 ;
5357 int __cil_tmp3 ;
5358 int __cil_tmp4 ;
5359 unsigned int __cil_tmp5 ;
5360 unsigned int __cil_tmp6 ;
5361 int __cil_tmp7 ;
5362 int __cil_tmp8 ;
5363 int __cil_tmp9 ;
5364
5365 {
5366 {
5367#line 213
5368 __cil_tmp3 = (int )reg;
5369#line 213
5370 __cil_tmp4 = __cil_tmp3 & 252;
5371#line 213
5372 __cil_tmp5 = (unsigned int )__cil_tmp4;
5373#line 213
5374 __cil_tmp6 = __cil_tmp5 | cmd640_key;
5375#line 213
5376 outl_p(__cil_tmp6, 3320);
5377#line 214
5378 __cil_tmp7 = (int )reg;
5379#line 214
5380 __cil_tmp8 = __cil_tmp7 & 3;
5381#line 214
5382 __cil_tmp9 = __cil_tmp8 | 3324;
5383#line 214
5384 tmp___7 = inb_p(__cil_tmp9);
5385 }
5386#line 214
5387 return (tmp___7);
5388}
5389}
5390#line 219 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5391static void put_cmd640_reg_pci2(u16 reg , u8 val )
5392{ unsigned int __cil_tmp3 ;
5393 unsigned int __cil_tmp4 ;
5394 int __cil_tmp5 ;
5395
5396 {
5397 {
5398#line 221
5399 outb_p((unsigned char)16, 3320);
5400#line 222
5401 __cil_tmp3 = (unsigned int )reg;
5402#line 222
5403 __cil_tmp4 = cmd640_key + __cil_tmp3;
5404#line 222
5405 __cil_tmp5 = (int )__cil_tmp4;
5406#line 222
5407 outb_p(val, __cil_tmp5);
5408#line 223
5409 outb_p((unsigned char)0, 3320);
5410 }
5411#line 224
5412 return;
5413}
5414}
5415#line 226 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5416static u8 get_cmd640_reg_pci2(u16 reg )
5417{ u8 b ;
5418 unsigned int __cil_tmp3 ;
5419 unsigned int __cil_tmp4 ;
5420 int __cil_tmp5 ;
5421
5422 {
5423 {
5424#line 230
5425 outb_p((unsigned char)16, 3320);
5426#line 231
5427 __cil_tmp3 = (unsigned int )reg;
5428#line 231
5429 __cil_tmp4 = cmd640_key + __cil_tmp3;
5430#line 231
5431 __cil_tmp5 = (int )__cil_tmp4;
5432#line 231
5433 b = inb_p(__cil_tmp5);
5434#line 232
5435 outb_p((unsigned char)0, 3320);
5436 }
5437#line 233
5438 return (b);
5439}
5440}
5441#line 238 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5442static void put_cmd640_reg_vlb(u16 reg , u8 val )
5443{ unsigned char __cil_tmp3 ;
5444 int __cil_tmp4 ;
5445 unsigned int __cil_tmp5 ;
5446 int __cil_tmp6 ;
5447
5448 {
5449 {
5450#line 240
5451 __cil_tmp3 = (unsigned char )reg;
5452#line 240
5453 __cil_tmp4 = (int )cmd640_key;
5454#line 240
5455 outb_p(__cil_tmp3, __cil_tmp4);
5456#line 241
5457 __cil_tmp5 = cmd640_key + 4U;
5458#line 241
5459 __cil_tmp6 = (int )__cil_tmp5;
5460#line 241
5461 outb_p(val, __cil_tmp6);
5462 }
5463#line 242
5464 return;
5465}
5466}
5467#line 244 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5468static u8 get_cmd640_reg_vlb(u16 reg )
5469{ unsigned char tmp___7 ;
5470 unsigned char __cil_tmp3 ;
5471 int __cil_tmp4 ;
5472 unsigned int __cil_tmp5 ;
5473 int __cil_tmp6 ;
5474
5475 {
5476 {
5477#line 246
5478 __cil_tmp3 = (unsigned char )reg;
5479#line 246
5480 __cil_tmp4 = (int )cmd640_key;
5481#line 246
5482 outb_p(__cil_tmp3, __cil_tmp4);
5483#line 247
5484 __cil_tmp5 = cmd640_key + 4U;
5485#line 247
5486 __cil_tmp6 = (int )__cil_tmp5;
5487#line 247
5488 tmp___7 = inb_p(__cil_tmp6);
5489 }
5490#line 247
5491 return (tmp___7);
5492}
5493}
5494#line 250 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5495static u8 get_cmd640_reg(u16 reg )
5496{ unsigned long flags ;
5497 u8 b ;
5498 raw_spinlock_t *tmp___7 ;
5499
5500 {
5501 {
5502#line 255
5503 while (1) {
5504 while_continue: ;
5505 {
5506#line 255
5507 while (1) {
5508 while_continue___0: ;
5509 {
5510#line 255
5511 tmp___7 = spinlock_check(& cmd640_lock);
5512#line 255
5513 flags = _raw_spin_lock_irqsave(tmp___7);
5514 }
5515#line 255
5516 goto while_break___0;
5517 }
5518 while_break___0: ;
5519 }
5520#line 255
5521 goto while_break;
5522 }
5523 while_break: ;
5524 }
5525 {
5526#line 256
5527 b = (*__get_cmd640_reg)(reg);
5528#line 257
5529 spin_unlock_irqrestore(& cmd640_lock, flags);
5530 }
5531#line 258
5532 return (b);
5533}
5534}
5535#line 261 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5536static void put_cmd640_reg(u16 reg , u8 val )
5537{ unsigned long flags ;
5538 raw_spinlock_t *tmp___7 ;
5539
5540 {
5541 {
5542#line 265
5543 while (1) {
5544 while_continue: ;
5545 {
5546#line 265
5547 while (1) {
5548 while_continue___0: ;
5549 {
5550#line 265
5551 tmp___7 = spinlock_check(& cmd640_lock);
5552#line 265
5553 flags = _raw_spin_lock_irqsave(tmp___7);
5554 }
5555#line 265
5556 goto while_break___0;
5557 }
5558 while_break___0: ;
5559 }
5560#line 265
5561 goto while_break;
5562 }
5563 while_break: ;
5564 }
5565 {
5566#line 266
5567 (*__put_cmd640_reg)(reg, val);
5568#line 267
5569 spin_unlock_irqrestore(& cmd640_lock, flags);
5570 }
5571#line 268
5572 return;
5573}
5574}
5575#line 270
5576static int match_pci_cmd640_device(void) __attribute__((__section__(".init.text"),
5577__no_instrument_function__)) ;
5578#line 270 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5579static int match_pci_cmd640_device(void)
5580{ u8 ven_dev[4] ;
5581 unsigned int i ;
5582 u8 tmp___7 ;
5583 unsigned long __cil_tmp4 ;
5584 unsigned long __cil_tmp5 ;
5585 unsigned long __cil_tmp6 ;
5586 unsigned long __cil_tmp7 ;
5587 unsigned long __cil_tmp8 ;
5588 unsigned long __cil_tmp9 ;
5589 unsigned long __cil_tmp10 ;
5590 unsigned long __cil_tmp11 ;
5591 u16 __cil_tmp12 ;
5592 unsigned long __cil_tmp13 ;
5593 unsigned long __cil_tmp14 ;
5594 u8 __cil_tmp15 ;
5595 int __cil_tmp16 ;
5596 int __cil_tmp17 ;
5597
5598 {
5599#line 272
5600 __cil_tmp4 = 0 * 1UL;
5601#line 272
5602 __cil_tmp5 = (unsigned long )(ven_dev) + __cil_tmp4;
5603#line 272
5604 *((u8 *)__cil_tmp5) = (u8 )149;
5605#line 272
5606 __cil_tmp6 = 1 * 1UL;
5607#line 272
5608 __cil_tmp7 = (unsigned long )(ven_dev) + __cil_tmp6;
5609#line 272
5610 *((u8 *)__cil_tmp7) = (u8 )16;
5611#line 272
5612 __cil_tmp8 = 2 * 1UL;
5613#line 272
5614 __cil_tmp9 = (unsigned long )(ven_dev) + __cil_tmp8;
5615#line 272
5616 *((u8 *)__cil_tmp9) = (u8 )64;
5617#line 272
5618 __cil_tmp10 = 3 * 1UL;
5619#line 272
5620 __cil_tmp11 = (unsigned long )(ven_dev) + __cil_tmp10;
5621#line 272
5622 *((u8 *)__cil_tmp11) = (u8 )6;
5623#line 274
5624 i = 0U;
5625 {
5626#line 274
5627 while (1) {
5628 while_continue: ;
5629#line 274
5630 if (i < 4U) {
5631
5632 } else {
5633#line 274
5634 goto while_break;
5635 }
5636 {
5637#line 275
5638 __cil_tmp12 = (u16 )i;
5639#line 275
5640 tmp___7 = get_cmd640_reg(__cil_tmp12);
5641 }
5642 {
5643#line 275
5644 __cil_tmp13 = i * 1UL;
5645#line 275
5646 __cil_tmp14 = (unsigned long )(ven_dev) + __cil_tmp13;
5647#line 275
5648 __cil_tmp15 = *((u8 *)__cil_tmp14);
5649#line 275
5650 __cil_tmp16 = (int )__cil_tmp15;
5651#line 275
5652 __cil_tmp17 = (int )tmp___7;
5653#line 275
5654 if (__cil_tmp17 != __cil_tmp16) {
5655#line 276
5656 return (0);
5657 } else {
5658
5659 }
5660 }
5661#line 274
5662 i = i + 1U;
5663 }
5664 while_break: ;
5665 }
5666#line 284
5667 return (1);
5668}
5669}
5670#line 290
5671static int probe_for_cmd640_pci1(void) __attribute__((__section__(".init.text"),
5672__no_instrument_function__)) ;
5673#line 290 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5674static int probe_for_cmd640_pci1(void)
5675{ int tmp___7 ;
5676
5677 {
5678#line 292
5679 __get_cmd640_reg = & get_cmd640_reg_pci1;
5680#line 293
5681 __put_cmd640_reg = & put_cmd640_reg_pci1;
5682#line 294
5683 cmd640_key = 2147483648U;
5684 {
5685#line 294
5686 while (1) {
5687 while_continue: ;
5688#line 294
5689 if (cmd640_key <= 2147547136U) {
5690
5691 } else {
5692#line 294
5693 goto while_break;
5694 }
5695 {
5696#line 297
5697 tmp___7 = match_pci_cmd640_device();
5698 }
5699#line 297
5700 if (tmp___7) {
5701#line 298
5702 return (1);
5703 } else {
5704
5705 }
5706#line 294
5707 cmd640_key = cmd640_key + 2048U;
5708 }
5709 while_break: ;
5710 }
5711#line 300
5712 return (0);
5713}
5714}
5715#line 306
5716static int probe_for_cmd640_pci2(void) __attribute__((__section__(".init.text"),
5717__no_instrument_function__)) ;
5718#line 306 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5719static int probe_for_cmd640_pci2(void)
5720{ int tmp___7 ;
5721
5722 {
5723#line 308
5724 __get_cmd640_reg = & get_cmd640_reg_pci2;
5725#line 309
5726 __put_cmd640_reg = & put_cmd640_reg_pci2;
5727#line 310
5728 cmd640_key = 49152U;
5729 {
5730#line 310
5731 while (1) {
5732 while_continue: ;
5733#line 310
5734 if (cmd640_key <= 52992U) {
5735
5736 } else {
5737#line 310
5738 goto while_break;
5739 }
5740 {
5741#line 311
5742 tmp___7 = match_pci_cmd640_device();
5743 }
5744#line 311
5745 if (tmp___7) {
5746#line 312
5747 return (1);
5748 } else {
5749
5750 }
5751#line 310
5752 cmd640_key = cmd640_key + 256U;
5753 }
5754 while_break: ;
5755 }
5756#line 314
5757 return (0);
5758}
5759}
5760#line 320
5761static int probe_for_cmd640_vlb(void) __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
5762#line 320 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5763static int probe_for_cmd640_vlb(void)
5764{ u8 b ;
5765 u16 __cil_tmp2 ;
5766 int __cil_tmp3 ;
5767 int __cil_tmp4 ;
5768 int __cil_tmp5 ;
5769 u16 __cil_tmp6 ;
5770 int __cil_tmp7 ;
5771 int __cil_tmp8 ;
5772 int __cil_tmp9 ;
5773 int __cil_tmp10 ;
5774
5775 {
5776 {
5777#line 324
5778 __get_cmd640_reg = & get_cmd640_reg_vlb;
5779#line 325
5780 __put_cmd640_reg = & put_cmd640_reg_vlb;
5781#line 326
5782 cmd640_key = 376U;
5783#line 327
5784 __cil_tmp2 = (u16 )80;
5785#line 327
5786 b = get_cmd640_reg(__cil_tmp2);
5787 }
5788 {
5789#line 328
5790 __cil_tmp3 = (int )b;
5791#line 328
5792 if (__cil_tmp3 == 255) {
5793#line 328
5794 goto _L;
5795 } else {
5796 {
5797#line 328
5798 __cil_tmp4 = (int )b;
5799#line 328
5800 if (__cil_tmp4 == 0) {
5801#line 328
5802 goto _L;
5803 } else {
5804 {
5805#line 328
5806 __cil_tmp5 = (int )b;
5807#line 328
5808 if (__cil_tmp5 & 32) {
5809 _L:
5810 {
5811#line 329
5812 cmd640_key = 120U;
5813#line 330
5814 __cil_tmp6 = (u16 )80;
5815#line 330
5816 b = get_cmd640_reg(__cil_tmp6);
5817 }
5818 {
5819#line 331
5820 __cil_tmp7 = (int )b;
5821#line 331
5822 if (__cil_tmp7 == 255) {
5823#line 332
5824 return (0);
5825 } else {
5826 {
5827#line 331
5828 __cil_tmp8 = (int )b;
5829#line 331
5830 if (__cil_tmp8 == 0) {
5831#line 332
5832 return (0);
5833 } else {
5834 {
5835#line 331
5836 __cil_tmp9 = (int )b;
5837#line 331
5838 __cil_tmp10 = __cil_tmp9 & 32;
5839#line 331
5840 if (! __cil_tmp10) {
5841#line 332
5842 return (0);
5843 } else {
5844
5845 }
5846 }
5847 }
5848 }
5849 }
5850 }
5851 } else {
5852
5853 }
5854 }
5855 }
5856 }
5857 }
5858 }
5859#line 334
5860 return (1);
5861}
5862}
5863#line 341
5864static int secondary_port_responding(void) __attribute__((__section__(".init.text"),
5865__no_instrument_function__)) ;
5866#line 341 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5867static int secondary_port_responding(void)
5868{ unsigned long flags ;
5869 raw_spinlock_t *tmp___7 ;
5870 unsigned char tmp___8 ;
5871 unsigned char tmp___9 ;
5872 int __cil_tmp7 ;
5873 int __cil_tmp8 ;
5874 int __cil_tmp9 ;
5875 int __cil_tmp10 ;
5876
5877 {
5878 {
5879#line 345
5880 while (1) {
5881 while_continue: ;
5882 {
5883#line 345
5884 while (1) {
5885 while_continue___0: ;
5886 {
5887#line 345
5888 tmp___7 = spinlock_check(& cmd640_lock);
5889#line 345
5890 flags = _raw_spin_lock_irqsave(tmp___7);
5891 }
5892#line 345
5893 goto while_break___0;
5894 }
5895 while_break___0: ;
5896 }
5897#line 345
5898 goto while_break;
5899 }
5900 while_break: ;
5901 }
5902 {
5903#line 347
5904 outb_p((unsigned char)10, 374);
5905#line 348
5906 __const_udelay(429500UL);
5907#line 349
5908 tmp___9 = inb_p(374);
5909 }
5910 {
5911#line 349
5912 __cil_tmp7 = (int )tmp___9;
5913#line 349
5914 __cil_tmp8 = __cil_tmp7 & 31;
5915#line 349
5916 if (__cil_tmp8 != 10) {
5917 {
5918#line 350
5919 outb_p((unsigned char)26, 374);
5920#line 351
5921 __const_udelay(429500UL);
5922#line 352
5923 tmp___8 = inb_p(374);
5924 }
5925 {
5926#line 352
5927 __cil_tmp9 = (int )tmp___8;
5928#line 352
5929 __cil_tmp10 = __cil_tmp9 & 31;
5930#line 352
5931 if (__cil_tmp10 != 26) {
5932 {
5933#line 353
5934 spin_unlock_irqrestore(& cmd640_lock, flags);
5935 }
5936#line 354
5937 return (0);
5938 } else {
5939
5940 }
5941 }
5942 } else {
5943
5944 }
5945 }
5946 {
5947#line 357
5948 spin_unlock_irqrestore(& cmd640_lock, flags);
5949 }
5950#line 358
5951 return (1);
5952}
5953}
5954#line 380 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
5955static void __set_prefetch_mode(ide_drive_t *drive , int mode )
5956{ unsigned long __cil_tmp3 ;
5957 unsigned long __cil_tmp4 ;
5958 unsigned long __cil_tmp5 ;
5959 unsigned long __cil_tmp6 ;
5960 unsigned long __cil_tmp7 ;
5961 unsigned long __cil_tmp8 ;
5962 unsigned long __cil_tmp9 ;
5963 unsigned long __cil_tmp10 ;
5964 unsigned long __cil_tmp11 ;
5965 unsigned long __cil_tmp12 ;
5966 unsigned long __cil_tmp13 ;
5967 unsigned long __cil_tmp14 ;
5968 unsigned long __cil_tmp15 ;
5969 unsigned long __cil_tmp16 ;
5970 unsigned long __cil_tmp17 ;
5971 unsigned long __cil_tmp18 ;
5972 unsigned long __cil_tmp19 ;
5973 unsigned long __cil_tmp20 ;
5974 unsigned long __cil_tmp21 ;
5975 unsigned long __cil_tmp22 ;
5976 unsigned long __cil_tmp23 ;
5977 unsigned long __cil_tmp24 ;
5978 unsigned long __cil_tmp25 ;
5979 unsigned long __cil_tmp26 ;
5980 unsigned long __cil_tmp27 ;
5981 unsigned long __cil_tmp28 ;
5982 unsigned long __cil_tmp29 ;
5983
5984 {
5985#line 382
5986 if (mode) {
5987#line 384
5988 __cil_tmp3 = (unsigned long )drive;
5989#line 384
5990 __cil_tmp4 = __cil_tmp3 + 80;
5991#line 384
5992 __cil_tmp5 = (unsigned long )drive;
5993#line 384
5994 __cil_tmp6 = __cil_tmp5 + 80;
5995#line 384
5996 __cil_tmp7 = *((unsigned long *)__cil_tmp6);
5997#line 384
5998 *((unsigned long *)__cil_tmp4) = __cil_tmp7 | 8192UL;
5999#line 385
6000 __cil_tmp8 = (unsigned long )drive;
6001#line 385
6002 __cil_tmp9 = __cil_tmp8 + 80;
6003#line 385
6004 __cil_tmp10 = (unsigned long )drive;
6005#line 385
6006 __cil_tmp11 = __cil_tmp10 + 80;
6007#line 385
6008 __cil_tmp12 = *((unsigned long *)__cil_tmp11);
6009#line 385
6010 *((unsigned long *)__cil_tmp9) = __cil_tmp12 & 0xfffffffffffffffbUL;
6011#line 387
6012 __cil_tmp13 = (unsigned long )drive;
6013#line 387
6014 __cil_tmp14 = __cil_tmp13 + 80;
6015#line 387
6016 __cil_tmp15 = (unsigned long )drive;
6017#line 387
6018 __cil_tmp16 = __cil_tmp15 + 80;
6019#line 387
6020 __cil_tmp17 = *((unsigned long *)__cil_tmp16);
6021#line 387
6022 *((unsigned long *)__cil_tmp14) = __cil_tmp17 & 0xffffffffffffbfffUL;
6023 } else {
6024#line 389
6025 __cil_tmp18 = (unsigned long )drive;
6026#line 389
6027 __cil_tmp19 = __cil_tmp18 + 80;
6028#line 389
6029 __cil_tmp20 = (unsigned long )drive;
6030#line 389
6031 __cil_tmp21 = __cil_tmp20 + 80;
6032#line 389
6033 __cil_tmp22 = *((unsigned long *)__cil_tmp21);
6034#line 389
6035 *((unsigned long *)__cil_tmp19) = __cil_tmp22 & 0xffffffffffffdfffUL;
6036#line 390
6037 __cil_tmp23 = (unsigned long )drive;
6038#line 390
6039 __cil_tmp24 = __cil_tmp23 + 80;
6040#line 390
6041 __cil_tmp25 = (unsigned long )drive;
6042#line 390
6043 __cil_tmp26 = __cil_tmp25 + 80;
6044#line 390
6045 __cil_tmp27 = *((unsigned long *)__cil_tmp26);
6046#line 390
6047 *((unsigned long *)__cil_tmp24) = __cil_tmp27 | 16384UL;
6048#line 391
6049 __cil_tmp28 = (unsigned long )drive;
6050#line 391
6051 __cil_tmp29 = __cil_tmp28 + 120;
6052#line 391
6053 *((u8 *)__cil_tmp29) = (u8 )0;
6054 }
6055#line 393
6056 return;
6057}
6058}
6059#line 411 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
6060static void set_prefetch_mode(ide_drive_t *drive , unsigned int index , int mode )
6061{ unsigned long flags ;
6062 int reg ;
6063 u8 b ;
6064 raw_spinlock_t *tmp___7 ;
6065 unsigned long __cil_tmp10 ;
6066 unsigned long __cil_tmp11 ;
6067 u8 __cil_tmp12 ;
6068 u16 __cil_tmp13 ;
6069 unsigned long __cil_tmp14 ;
6070 unsigned long __cil_tmp15 ;
6071 u8 __cil_tmp16 ;
6072 int __cil_tmp17 ;
6073 int __cil_tmp18 ;
6074 int __cil_tmp19 ;
6075 int __cil_tmp20 ;
6076 unsigned long __cil_tmp21 ;
6077 unsigned long __cil_tmp22 ;
6078 u8 __cil_tmp23 ;
6079 int __cil_tmp24 ;
6080 int __cil_tmp25 ;
6081 int __cil_tmp26 ;
6082 u16 __cil_tmp27 ;
6083
6084 {
6085#line 414
6086 __cil_tmp10 = index * 1UL;
6087#line 414
6088 __cil_tmp11 = (unsigned long )(prefetch_regs) + __cil_tmp10;
6089#line 414
6090 __cil_tmp12 = *((u8 *)__cil_tmp11);
6091#line 414
6092 reg = (int )__cil_tmp12;
6093 {
6094#line 417
6095 while (1) {
6096 while_continue: ;
6097 {
6098#line 417
6099 while (1) {
6100 while_continue___0: ;
6101 {
6102#line 417
6103 tmp___7 = spinlock_check(& cmd640_lock);
6104#line 417
6105 flags = _raw_spin_lock_irqsave(tmp___7);
6106 }
6107#line 417
6108 goto while_break___0;
6109 }
6110 while_break___0: ;
6111 }
6112#line 417
6113 goto while_break;
6114 }
6115 while_break: ;
6116 }
6117 {
6118#line 418
6119 __cil_tmp13 = (u16 )reg;
6120#line 418
6121 b = (*__get_cmd640_reg)(__cil_tmp13);
6122#line 419
6123 __set_prefetch_mode(drive, mode);
6124 }
6125#line 420
6126 if (mode) {
6127#line 421
6128 __cil_tmp14 = index * 1UL;
6129#line 421
6130 __cil_tmp15 = (unsigned long )(prefetch_masks) + __cil_tmp14;
6131#line 421
6132 __cil_tmp16 = *((u8 *)__cil_tmp15);
6133#line 421
6134 __cil_tmp17 = (int )__cil_tmp16;
6135#line 421
6136 __cil_tmp18 = ~ __cil_tmp17;
6137#line 421
6138 __cil_tmp19 = (int )b;
6139#line 421
6140 __cil_tmp20 = __cil_tmp19 & __cil_tmp18;
6141#line 421
6142 b = (u8 )__cil_tmp20;
6143 } else {
6144#line 423
6145 __cil_tmp21 = index * 1UL;
6146#line 423
6147 __cil_tmp22 = (unsigned long )(prefetch_masks) + __cil_tmp21;
6148#line 423
6149 __cil_tmp23 = *((u8 *)__cil_tmp22);
6150#line 423
6151 __cil_tmp24 = (int )__cil_tmp23;
6152#line 423
6153 __cil_tmp25 = (int )b;
6154#line 423
6155 __cil_tmp26 = __cil_tmp25 | __cil_tmp24;
6156#line 423
6157 b = (u8 )__cil_tmp26;
6158 }
6159 {
6160#line 424
6161 __cil_tmp27 = (u16 )reg;
6162#line 424
6163 (*__put_cmd640_reg)(__cil_tmp27, b);
6164#line 425
6165 spin_unlock_irqrestore(& cmd640_lock, flags);
6166 }
6167#line 426
6168 return;
6169}
6170}
6171#line 431 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
6172static void display_clocks(unsigned int index )
6173{ u8 active_count ;
6174 u8 recovery_count ;
6175 unsigned long __cil_tmp4 ;
6176 unsigned long __cil_tmp5 ;
6177 int __cil_tmp6 ;
6178 int __cil_tmp7 ;
6179 int __cil_tmp8 ;
6180 unsigned long __cil_tmp9 ;
6181 unsigned long __cil_tmp10 ;
6182 int __cil_tmp11 ;
6183 int __cil_tmp12 ;
6184 int __cil_tmp13 ;
6185 int __cil_tmp14 ;
6186 int __cil_tmp15 ;
6187 int __cil_tmp16 ;
6188 unsigned long __cil_tmp17 ;
6189 unsigned long __cil_tmp18 ;
6190 u8 __cil_tmp19 ;
6191 int __cil_tmp20 ;
6192 int __cil_tmp21 ;
6193 int __cil_tmp22 ;
6194
6195 {
6196#line 435
6197 __cil_tmp4 = index * 1UL;
6198#line 435
6199 __cil_tmp5 = (unsigned long )(active_counts) + __cil_tmp4;
6200#line 435
6201 active_count = *((u8 *)__cil_tmp5);
6202 {
6203#line 436
6204 __cil_tmp6 = (int )active_count;
6205#line 436
6206 if (__cil_tmp6 == 1) {
6207#line 437
6208 __cil_tmp7 = (int )active_count;
6209#line 437
6210 __cil_tmp8 = __cil_tmp7 + 1;
6211#line 437
6212 active_count = (u8 )__cil_tmp8;
6213 } else {
6214
6215 }
6216 }
6217#line 438
6218 __cil_tmp9 = index * 1UL;
6219#line 438
6220 __cil_tmp10 = (unsigned long )(recovery_counts) + __cil_tmp9;
6221#line 438
6222 recovery_count = *((u8 *)__cil_tmp10);
6223 {
6224#line 439
6225 __cil_tmp11 = (int )active_count;
6226#line 439
6227 if (__cil_tmp11 > 3) {
6228 {
6229#line 439
6230 __cil_tmp12 = (int )recovery_count;
6231#line 439
6232 if (__cil_tmp12 == 1) {
6233#line 440
6234 __cil_tmp13 = (int )recovery_count;
6235#line 440
6236 __cil_tmp14 = __cil_tmp13 + 1;
6237#line 440
6238 recovery_count = (u8 )__cil_tmp14;
6239 } else {
6240
6241 }
6242 }
6243 } else {
6244
6245 }
6246 }
6247#line 441
6248 if (cmd640_chip_version > 1U) {
6249#line 442
6250 __cil_tmp15 = (int )recovery_count;
6251#line 442
6252 __cil_tmp16 = __cil_tmp15 + 1;
6253#line 442
6254 recovery_count = (u8 )__cil_tmp16;
6255 } else {
6256
6257 }
6258 {
6259#line 443
6260 __cil_tmp17 = index * 1UL;
6261#line 443
6262 __cil_tmp18 = (unsigned long )(setup_counts) + __cil_tmp17;
6263#line 443
6264 __cil_tmp19 = *((u8 *)__cil_tmp18);
6265#line 443
6266 __cil_tmp20 = (int )__cil_tmp19;
6267#line 443
6268 __cil_tmp21 = (int )active_count;
6269#line 443
6270 __cil_tmp22 = (int )recovery_count;
6271#line 443
6272 printk(", clocks=%d/%d/%d\n", __cil_tmp20, __cil_tmp21, __cil_tmp22);
6273 }
6274#line 444
6275 return;
6276}
6277}
6278#line 450
6279__inline static u8 pack_nibbles(u8 upper , u8 lower ) __attribute__((__no_instrument_function__)) ;
6280#line 450 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
6281__inline static u8 pack_nibbles(u8 upper , u8 lower )
6282{ int __cil_tmp3 ;
6283 int __cil_tmp4 ;
6284 int __cil_tmp5 ;
6285 int __cil_tmp6 ;
6286 int __cil_tmp7 ;
6287 int __cil_tmp8 ;
6288
6289 {
6290 {
6291#line 452
6292 __cil_tmp3 = (int )lower;
6293#line 452
6294 __cil_tmp4 = __cil_tmp3 & 15;
6295#line 452
6296 __cil_tmp5 = (int )upper;
6297#line 452
6298 __cil_tmp6 = __cil_tmp5 & 15;
6299#line 452
6300 __cil_tmp7 = __cil_tmp6 << 4;
6301#line 452
6302 __cil_tmp8 = __cil_tmp7 | __cil_tmp4;
6303#line 452
6304 return ((u8 )__cil_tmp8);
6305 }
6306}
6307}
6308#line 459 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
6309static void program_drive_counts(ide_drive_t *drive , unsigned int index )
6310{ unsigned long flags ;
6311 u8 setup_count ;
6312 u8 active_count ;
6313 u8 recovery_count ;
6314 ide_drive_t *peer ;
6315 ide_drive_t *tmp___7 ;
6316 unsigned int mate ;
6317 raw_spinlock_t *tmp___8 ;
6318 u8 tmp___9 ;
6319 u8 tmp___10 ;
6320 unsigned long __cil_tmp15 ;
6321 unsigned long __cil_tmp16 ;
6322 unsigned long __cil_tmp17 ;
6323 unsigned long __cil_tmp18 ;
6324 unsigned long __cil_tmp19 ;
6325 unsigned long __cil_tmp20 ;
6326 unsigned long __cil_tmp21 ;
6327 unsigned long __cil_tmp22 ;
6328 u8 __cil_tmp23 ;
6329 int __cil_tmp24 ;
6330 int __cil_tmp25 ;
6331 unsigned long __cil_tmp26 ;
6332 unsigned long __cil_tmp27 ;
6333 unsigned long __cil_tmp28 ;
6334 unsigned long __cil_tmp29 ;
6335 u8 __cil_tmp30 ;
6336 int __cil_tmp31 ;
6337 int __cil_tmp32 ;
6338 unsigned long __cil_tmp33 ;
6339 unsigned long __cil_tmp34 ;
6340 unsigned long __cil_tmp35 ;
6341 unsigned long __cil_tmp36 ;
6342 u8 __cil_tmp37 ;
6343 int __cil_tmp38 ;
6344 int __cil_tmp39 ;
6345 unsigned long __cil_tmp40 ;
6346 unsigned long __cil_tmp41 ;
6347 unsigned long __cil_tmp42 ;
6348 unsigned long __cil_tmp43 ;
6349 u8 __cil_tmp44 ;
6350 u16 __cil_tmp45 ;
6351 int __cil_tmp46 ;
6352 int __cil_tmp47 ;
6353 int __cil_tmp48 ;
6354 int __cil_tmp49 ;
6355 unsigned long __cil_tmp50 ;
6356 unsigned long __cil_tmp51 ;
6357 u8 __cil_tmp52 ;
6358 u16 __cil_tmp53 ;
6359 unsigned long __cil_tmp54 ;
6360 unsigned long __cil_tmp55 ;
6361 u8 __cil_tmp56 ;
6362 u16 __cil_tmp57 ;
6363
6364 {
6365#line 462
6366 __cil_tmp15 = index * 1UL;
6367#line 462
6368 __cil_tmp16 = (unsigned long )(setup_counts) + __cil_tmp15;
6369#line 462
6370 setup_count = *((u8 *)__cil_tmp16);
6371#line 463
6372 __cil_tmp17 = index * 1UL;
6373#line 463
6374 __cil_tmp18 = (unsigned long )(active_counts) + __cil_tmp17;
6375#line 463
6376 active_count = *((u8 *)__cil_tmp18);
6377#line 464
6378 __cil_tmp19 = index * 1UL;
6379#line 464
6380 __cil_tmp20 = (unsigned long )(recovery_counts) + __cil_tmp19;
6381#line 464
6382 recovery_count = *((u8 *)__cil_tmp20);
6383#line 472
6384 if (index > 1U) {
6385 {
6386#line 473
6387 tmp___7 = ide_get_pair_dev(drive);
6388#line 473
6389 peer = tmp___7;
6390#line 474
6391 mate = index ^ 1U;
6392 }
6393#line 476
6394 if (peer) {
6395 {
6396#line 477
6397 __cil_tmp21 = mate * 1UL;
6398#line 477
6399 __cil_tmp22 = (unsigned long )(setup_counts) + __cil_tmp21;
6400#line 477
6401 __cil_tmp23 = *((u8 *)__cil_tmp22);
6402#line 477
6403 __cil_tmp24 = (int )__cil_tmp23;
6404#line 477
6405 __cil_tmp25 = (int )setup_count;
6406#line 477
6407 if (__cil_tmp25 < __cil_tmp24) {
6408#line 478
6409 __cil_tmp26 = mate * 1UL;
6410#line 478
6411 __cil_tmp27 = (unsigned long )(setup_counts) + __cil_tmp26;
6412#line 478
6413 setup_count = *((u8 *)__cil_tmp27);
6414 } else {
6415
6416 }
6417 }
6418 {
6419#line 479
6420 __cil_tmp28 = mate * 1UL;
6421#line 479
6422 __cil_tmp29 = (unsigned long )(active_counts) + __cil_tmp28;
6423#line 479
6424 __cil_tmp30 = *((u8 *)__cil_tmp29);
6425#line 479
6426 __cil_tmp31 = (int )__cil_tmp30;
6427#line 479
6428 __cil_tmp32 = (int )active_count;
6429#line 479
6430 if (__cil_tmp32 < __cil_tmp31) {
6431#line 480
6432 __cil_tmp33 = mate * 1UL;
6433#line 480
6434 __cil_tmp34 = (unsigned long )(active_counts) + __cil_tmp33;
6435#line 480
6436 active_count = *((u8 *)__cil_tmp34);
6437 } else {
6438
6439 }
6440 }
6441 {
6442#line 481
6443 __cil_tmp35 = mate * 1UL;
6444#line 481
6445 __cil_tmp36 = (unsigned long )(recovery_counts) + __cil_tmp35;
6446#line 481
6447 __cil_tmp37 = *((u8 *)__cil_tmp36);
6448#line 481
6449 __cil_tmp38 = (int )__cil_tmp37;
6450#line 481
6451 __cil_tmp39 = (int )recovery_count;
6452#line 481
6453 if (__cil_tmp39 < __cil_tmp38) {
6454#line 482
6455 __cil_tmp40 = mate * 1UL;
6456#line 482
6457 __cil_tmp41 = (unsigned long )(recovery_counts) + __cil_tmp40;
6458#line 482
6459 recovery_count = *((u8 *)__cil_tmp41);
6460 } else {
6461
6462 }
6463 }
6464 } else {
6465
6466 }
6467 } else {
6468
6469 }
6470#line 490
6471 if ((int )setup_count == 4) {
6472#line 490
6473 goto case_4;
6474 } else
6475#line 491
6476 if ((int )setup_count == 3) {
6477#line 491
6478 goto case_3;
6479 } else
6480#line 492
6481 if ((int )setup_count == 1) {
6482#line 492
6483 goto case_1;
6484 } else
6485#line 493
6486 if ((int )setup_count == 2) {
6487#line 493
6488 goto case_1;
6489 } else {
6490 {
6491#line 494
6492 goto switch_default;
6493#line 489
6494 if (0) {
6495 case_4:
6496#line 490
6497 setup_count = (u8 )0;
6498#line 490
6499 goto switch_break;
6500 case_3:
6501#line 491
6502 setup_count = (u8 )128;
6503#line 491
6504 goto switch_break;
6505 case_1:
6506 case_2:
6507#line 493
6508 setup_count = (u8 )64;
6509#line 493
6510 goto switch_break;
6511 switch_default:
6512#line 494
6513 setup_count = (u8 )192;
6514 } else {
6515 switch_break: ;
6516 }
6517 }
6518 }
6519 {
6520#line 500
6521 while (1) {
6522 while_continue: ;
6523 {
6524#line 500
6525 while (1) {
6526 while_continue___0: ;
6527 {
6528#line 500
6529 tmp___8 = spinlock_check(& cmd640_lock);
6530#line 500
6531 flags = _raw_spin_lock_irqsave(tmp___8);
6532 }
6533#line 500
6534 goto while_break___0;
6535 }
6536 while_break___0: ;
6537 }
6538#line 500
6539 goto while_break;
6540 }
6541 while_break: ;
6542 }
6543 {
6544#line 506
6545 __cil_tmp42 = index * 1UL;
6546#line 506
6547 __cil_tmp43 = (unsigned long )(arttim_regs) + __cil_tmp42;
6548#line 506
6549 __cil_tmp44 = *((u8 *)__cil_tmp43);
6550#line 506
6551 __cil_tmp45 = (u16 )__cil_tmp44;
6552#line 506
6553 tmp___9 = (*__get_cmd640_reg)(__cil_tmp45);
6554#line 506
6555 __cil_tmp46 = (int )tmp___9;
6556#line 506
6557 __cil_tmp47 = __cil_tmp46 & 63;
6558#line 506
6559 __cil_tmp48 = (int )setup_count;
6560#line 506
6561 __cil_tmp49 = __cil_tmp48 | __cil_tmp47;
6562#line 506
6563 setup_count = (u8 )__cil_tmp49;
6564#line 507
6565 __cil_tmp50 = index * 1UL;
6566#line 507
6567 __cil_tmp51 = (unsigned long )(arttim_regs) + __cil_tmp50;
6568#line 507
6569 __cil_tmp52 = *((u8 *)__cil_tmp51);
6570#line 507
6571 __cil_tmp53 = (u16 )__cil_tmp52;
6572#line 507
6573 (*__put_cmd640_reg)(__cil_tmp53, setup_count);
6574#line 508
6575 tmp___10 = pack_nibbles(active_count, recovery_count);
6576#line 508
6577 __cil_tmp54 = index * 1UL;
6578#line 508
6579 __cil_tmp55 = (unsigned long )(drwtim_regs) + __cil_tmp54;
6580#line 508
6581 __cil_tmp56 = *((u8 *)__cil_tmp55);
6582#line 508
6583 __cil_tmp57 = (u16 )__cil_tmp56;
6584#line 508
6585 (*__put_cmd640_reg)(__cil_tmp57, tmp___10);
6586#line 509
6587 spin_unlock_irqrestore(& cmd640_lock, flags);
6588 }
6589#line 510
6590 return;
6591}
6592}
6593#line 515 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
6594static void cmd640_set_mode(ide_drive_t *drive , unsigned int index , u8 pio_mode ,
6595 unsigned int cycle_time )
6596{ struct ide_timing *t ;
6597 int setup_time ;
6598 int active_time ;
6599 int recovery_time ;
6600 int clock_time ;
6601 u8 setup_count ;
6602 u8 active_count ;
6603 u8 recovery_count ;
6604 u8 recovery_count2 ;
6605 u8 cycle_count ;
6606 int bus_speed ;
6607 bool *__cil_tmp16 ;
6608 int __cil_tmp17 ;
6609 int __cil_tmp18 ;
6610 int __cil_tmp19 ;
6611 u8 __cil_tmp20 ;
6612 unsigned long __cil_tmp21 ;
6613 unsigned long __cil_tmp22 ;
6614 u8 __cil_tmp23 ;
6615 unsigned long __cil_tmp24 ;
6616 unsigned long __cil_tmp25 ;
6617 u16 __cil_tmp26 ;
6618 int __cil_tmp27 ;
6619 unsigned int __cil_tmp28 ;
6620 unsigned int __cil_tmp29 ;
6621 unsigned int __cil_tmp30 ;
6622 unsigned int __cil_tmp31 ;
6623 unsigned int __cil_tmp32 ;
6624 unsigned int __cil_tmp33 ;
6625 unsigned int __cil_tmp34 ;
6626 int __cil_tmp35 ;
6627 int __cil_tmp36 ;
6628 int __cil_tmp37 ;
6629 int __cil_tmp38 ;
6630 int __cil_tmp39 ;
6631 int __cil_tmp40 ;
6632 int __cil_tmp41 ;
6633 int __cil_tmp42 ;
6634 int __cil_tmp43 ;
6635 int __cil_tmp44 ;
6636 int __cil_tmp45 ;
6637 int __cil_tmp46 ;
6638 int __cil_tmp47 ;
6639 int __cil_tmp48 ;
6640 int __cil_tmp49 ;
6641 int __cil_tmp50 ;
6642 int __cil_tmp51 ;
6643 int __cil_tmp52 ;
6644 int __cil_tmp53 ;
6645 int __cil_tmp54 ;
6646 int __cil_tmp55 ;
6647 int __cil_tmp56 ;
6648 int __cil_tmp57 ;
6649 int __cil_tmp58 ;
6650 int __cil_tmp59 ;
6651 int __cil_tmp60 ;
6652 int __cil_tmp61 ;
6653 unsigned long __cil_tmp62 ;
6654 unsigned long __cil_tmp63 ;
6655 unsigned long __cil_tmp64 ;
6656 unsigned long __cil_tmp65 ;
6657 unsigned long __cil_tmp66 ;
6658 unsigned long __cil_tmp67 ;
6659
6660 {
6661 {
6662#line 523
6663 __cil_tmp16 = & cmd640_vlb;
6664#line 523
6665 if (*__cil_tmp16) {
6666#line 524
6667 if (ide_vlb_clk) {
6668#line 524
6669 bus_speed = ide_vlb_clk;
6670 } else {
6671#line 524
6672 bus_speed = 50;
6673 }
6674 } else
6675#line 526
6676 if (ide_pci_clk) {
6677#line 526
6678 bus_speed = ide_pci_clk;
6679 } else {
6680#line 526
6681 bus_speed = 33;
6682 }
6683 }
6684 {
6685#line 528
6686 __cil_tmp17 = (int )pio_mode;
6687#line 528
6688 if (__cil_tmp17 > 5) {
6689#line 529
6690 pio_mode = (u8 )5;
6691 } else {
6692
6693 }
6694 }
6695 {
6696#line 531
6697 __cil_tmp18 = (int )pio_mode;
6698#line 531
6699 __cil_tmp19 = 8 + __cil_tmp18;
6700#line 531
6701 __cil_tmp20 = (u8 )__cil_tmp19;
6702#line 531
6703 t = ide_timing_find_mode(__cil_tmp20);
6704#line 532
6705 __cil_tmp21 = (unsigned long )t;
6706#line 532
6707 __cil_tmp22 = __cil_tmp21 + 1;
6708#line 532
6709 __cil_tmp23 = *((u8 *)__cil_tmp22);
6710#line 532
6711 setup_time = (int )__cil_tmp23;
6712#line 533
6713 __cil_tmp24 = (unsigned long )t;
6714#line 533
6715 __cil_tmp25 = __cil_tmp24 + 8;
6716#line 533
6717 __cil_tmp26 = *((u16 *)__cil_tmp25);
6718#line 533
6719 active_time = (int )__cil_tmp26;
6720#line 535
6721 __cil_tmp27 = setup_time + active_time;
6722#line 535
6723 __cil_tmp28 = (unsigned int )__cil_tmp27;
6724#line 535
6725 __cil_tmp29 = cycle_time - __cil_tmp28;
6726#line 535
6727 recovery_time = (int )__cil_tmp29;
6728#line 536
6729 clock_time = 1000 / bus_speed;
6730#line 537
6731 __cil_tmp30 = (unsigned int )clock_time;
6732#line 537
6733 __cil_tmp31 = (unsigned int )clock_time;
6734#line 537
6735 __cil_tmp32 = cycle_time + __cil_tmp31;
6736#line 537
6737 __cil_tmp33 = __cil_tmp32 - 1U;
6738#line 537
6739 __cil_tmp34 = __cil_tmp33 / __cil_tmp30;
6740#line 537
6741 cycle_count = (u8 )__cil_tmp34;
6742#line 539
6743 __cil_tmp35 = setup_time + clock_time;
6744#line 539
6745 __cil_tmp36 = __cil_tmp35 - 1;
6746#line 539
6747 __cil_tmp37 = __cil_tmp36 / clock_time;
6748#line 539
6749 setup_count = (u8 )__cil_tmp37;
6750#line 541
6751 __cil_tmp38 = active_time + clock_time;
6752#line 541
6753 __cil_tmp39 = __cil_tmp38 - 1;
6754#line 541
6755 __cil_tmp40 = __cil_tmp39 / clock_time;
6756#line 541
6757 active_count = (u8 )__cil_tmp40;
6758 }
6759 {
6760#line 542
6761 __cil_tmp41 = (int )active_count;
6762#line 542
6763 if (__cil_tmp41 < 2) {
6764#line 543
6765 active_count = (u8 )2;
6766 } else {
6767
6768 }
6769 }
6770#line 545
6771 __cil_tmp42 = recovery_time + clock_time;
6772#line 545
6773 __cil_tmp43 = __cil_tmp42 - 1;
6774#line 545
6775 __cil_tmp44 = __cil_tmp43 / clock_time;
6776#line 545
6777 recovery_count = (u8 )__cil_tmp44;
6778#line 546
6779 __cil_tmp45 = (int )active_count;
6780#line 546
6781 __cil_tmp46 = (int )setup_count;
6782#line 546
6783 __cil_tmp47 = __cil_tmp46 + __cil_tmp45;
6784#line 546
6785 __cil_tmp48 = (int )cycle_count;
6786#line 546
6787 __cil_tmp49 = __cil_tmp48 - __cil_tmp47;
6788#line 546
6789 recovery_count2 = (u8 )__cil_tmp49;
6790 {
6791#line 547
6792 __cil_tmp50 = (int )recovery_count;
6793#line 547
6794 __cil_tmp51 = (int )recovery_count2;
6795#line 547
6796 if (__cil_tmp51 > __cil_tmp50) {
6797#line 548
6798 recovery_count = recovery_count2;
6799 } else {
6800
6801 }
6802 }
6803 {
6804#line 549
6805 __cil_tmp52 = (int )recovery_count;
6806#line 549
6807 if (__cil_tmp52 < 2) {
6808#line 550
6809 recovery_count = (u8 )2;
6810 } else {
6811
6812 }
6813 }
6814 {
6815#line 551
6816 __cil_tmp53 = (int )recovery_count;
6817#line 551
6818 if (__cil_tmp53 > 17) {
6819#line 552
6820 __cil_tmp54 = (int )recovery_count;
6821#line 552
6822 __cil_tmp55 = __cil_tmp54 - 17;
6823#line 552
6824 __cil_tmp56 = (int )active_count;
6825#line 552
6826 __cil_tmp57 = __cil_tmp56 + __cil_tmp55;
6827#line 552
6828 active_count = (u8 )__cil_tmp57;
6829#line 553
6830 recovery_count = (u8 )17;
6831 } else {
6832
6833 }
6834 }
6835 {
6836#line 555
6837 __cil_tmp58 = (int )active_count;
6838#line 555
6839 if (__cil_tmp58 > 16) {
6840#line 556
6841 active_count = (u8 )16;
6842 } else {
6843
6844 }
6845 }
6846#line 557
6847 if (cmd640_chip_version > 1U) {
6848#line 558
6849 __cil_tmp59 = (int )recovery_count;
6850#line 558
6851 __cil_tmp60 = __cil_tmp59 - 1;
6852#line 558
6853 recovery_count = (u8 )__cil_tmp60;
6854 } else {
6855
6856 }
6857 {
6858#line 559
6859 __cil_tmp61 = (int )recovery_count;
6860#line 559
6861 if (__cil_tmp61 > 16) {
6862#line 560
6863 recovery_count = (u8 )16;
6864 } else {
6865
6866 }
6867 }
6868 {
6869#line 562
6870 __cil_tmp62 = index * 1UL;
6871#line 562
6872 __cil_tmp63 = (unsigned long )(setup_counts) + __cil_tmp62;
6873#line 562
6874 *((u8 *)__cil_tmp63) = setup_count;
6875#line 563
6876 __cil_tmp64 = index * 1UL;
6877#line 563
6878 __cil_tmp65 = (unsigned long )(active_counts) + __cil_tmp64;
6879#line 563
6880 *((u8 *)__cil_tmp65) = active_count;
6881#line 564
6882 __cil_tmp66 = index * 1UL;
6883#line 564
6884 __cil_tmp67 = (unsigned long )(recovery_counts) + __cil_tmp66;
6885#line 564
6886 *((u8 *)__cil_tmp67) = recovery_count;
6887#line 574
6888 program_drive_counts(drive, index);
6889 }
6890#line 575
6891 return;
6892}
6893}
6894#line 577 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
6895static void cmd640_set_pio_mode(ide_hwif_t *hwif , ide_drive_t *drive )
6896{ unsigned int index ;
6897 unsigned int cycle_time ;
6898 u8 pio ;
6899 u8 b ;
6900 u8 tmp___7 ;
6901 char const *tmp___8 ;
6902 char const *tmp___9 ;
6903 u16 tmp___10 ;
6904 unsigned long __cil_tmp11 ;
6905 unsigned long __cil_tmp12 ;
6906 u8 __cil_tmp13 ;
6907 int __cil_tmp14 ;
6908 int __cil_tmp15 ;
6909 u16 __cil_tmp16 ;
6910 int __cil_tmp17 ;
6911 int __cil_tmp18 ;
6912 int __cil_tmp19 ;
6913 int __cil_tmp20 ;
6914 int __cil_tmp21 ;
6915 u16 __cil_tmp22 ;
6916 int __cil_tmp23 ;
6917 unsigned long __cil_tmp24 ;
6918 unsigned long __cil_tmp25 ;
6919 unsigned long __cil_tmp26 ;
6920 unsigned long __cil_tmp27 ;
6921 char *__cil_tmp28 ;
6922 int __cil_tmp29 ;
6923 int __cil_tmp30 ;
6924 int __cil_tmp31 ;
6925 unsigned long __cil_tmp32 ;
6926 unsigned long __cil_tmp33 ;
6927 unsigned long __cil_tmp34 ;
6928 unsigned long __cil_tmp35 ;
6929 char *__cil_tmp36 ;
6930 unsigned long __cil_tmp37 ;
6931 unsigned long __cil_tmp38 ;
6932 unsigned long __cil_tmp39 ;
6933 unsigned long __cil_tmp40 ;
6934 char *__cil_tmp41 ;
6935 int __cil_tmp42 ;
6936
6937 {
6938#line 579
6939 index = 0U;
6940#line 580
6941 __cil_tmp11 = (unsigned long )drive;
6942#line 580
6943 __cil_tmp12 = __cil_tmp11 + 112;
6944#line 580
6945 __cil_tmp13 = *((u8 *)__cil_tmp12);
6946#line 580
6947 __cil_tmp14 = (int )__cil_tmp13;
6948#line 580
6949 __cil_tmp15 = __cil_tmp14 - 8;
6950#line 580
6951 pio = (u8 )__cil_tmp15;
6952#line 584
6953 if ((int )pio == 6) {
6954#line 584
6955 goto case_6;
6956 } else
6957#line 585
6958 if ((int )pio == 7) {
6959#line 585
6960 goto case_6;
6961 } else
6962#line 593
6963 if ((int )pio == 8) {
6964#line 593
6965 goto case_8;
6966 } else
6967#line 594
6968 if ((int )pio == 9) {
6969#line 594
6970 goto case_8;
6971 } else
6972#line 583
6973 if (0) {
6974 case_6:
6975 case_7:
6976 {
6977#line 586
6978 __cil_tmp16 = (u16 )81;
6979#line 586
6980 tmp___7 = get_cmd640_reg(__cil_tmp16);
6981#line 586
6982 __cil_tmp17 = (int )tmp___7;
6983#line 586
6984 __cil_tmp18 = __cil_tmp17 & -40;
6985#line 586
6986 b = (u8 )__cil_tmp18;
6987 }
6988 {
6989#line 587
6990 __cil_tmp19 = (int )pio;
6991#line 587
6992 if (__cil_tmp19 & 1) {
6993#line 588
6994 __cil_tmp20 = (int )b;
6995#line 588
6996 __cil_tmp21 = __cil_tmp20 | 39;
6997#line 588
6998 b = (u8 )__cil_tmp21;
6999 } else {
7000
7001 }
7002 }
7003 {
7004#line 589
7005 __cil_tmp22 = (u16 )81;
7006#line 589
7007 put_cmd640_reg(__cil_tmp22, b);
7008 }
7009 {
7010#line 590
7011 __cil_tmp23 = (int )pio;
7012#line 590
7013 if (__cil_tmp23 & 1) {
7014#line 590
7015 tmp___8 = "en";
7016 } else {
7017#line 590
7018 tmp___8 = "dis";
7019 }
7020 }
7021 {
7022#line 590
7023 __cil_tmp24 = 0 * 1UL;
7024#line 590
7025 __cil_tmp25 = 0 + __cil_tmp24;
7026#line 590
7027 __cil_tmp26 = (unsigned long )drive;
7028#line 590
7029 __cil_tmp27 = __cil_tmp26 + __cil_tmp25;
7030#line 590
7031 __cil_tmp28 = (char *)__cil_tmp27;
7032#line 590
7033 printk("%s: %sabled cmd640 fast host timing (devsel)\n", __cil_tmp28, tmp___8);
7034 }
7035#line 592
7036 return;
7037 case_8:
7038 case_9:
7039 {
7040#line 595
7041 __cil_tmp29 = (int )pio;
7042#line 595
7043 __cil_tmp30 = __cil_tmp29 & 1;
7044#line 595
7045 set_prefetch_mode(drive, index, __cil_tmp30);
7046 }
7047 {
7048#line 596
7049 __cil_tmp31 = (int )pio;
7050#line 596
7051 if (__cil_tmp31 & 1) {
7052#line 596
7053 tmp___9 = "en";
7054 } else {
7055#line 596
7056 tmp___9 = "dis";
7057 }
7058 }
7059 {
7060#line 596
7061 __cil_tmp32 = 0 * 1UL;
7062#line 596
7063 __cil_tmp33 = 0 + __cil_tmp32;
7064#line 596
7065 __cil_tmp34 = (unsigned long )drive;
7066#line 596
7067 __cil_tmp35 = __cil_tmp34 + __cil_tmp33;
7068#line 596
7069 __cil_tmp36 = (char *)__cil_tmp35;
7070#line 596
7071 printk("%s: %sabled cmd640 prefetch\n", __cil_tmp36, tmp___9);
7072 }
7073#line 598
7074 return;
7075 } else {
7076 switch_break: ;
7077 }
7078 {
7079#line 601
7080 tmp___10 = ide_pio_cycle_time(drive, pio);
7081#line 601
7082 cycle_time = (unsigned int )tmp___10;
7083#line 602
7084 cmd640_set_mode(drive, index, pio, cycle_time);
7085#line 604
7086 __cil_tmp37 = 0 * 1UL;
7087#line 604
7088 __cil_tmp38 = 0 + __cil_tmp37;
7089#line 604
7090 __cil_tmp39 = (unsigned long )drive;
7091#line 604
7092 __cil_tmp40 = __cil_tmp39 + __cil_tmp38;
7093#line 604
7094 __cil_tmp41 = (char *)__cil_tmp40;
7095#line 604
7096 __cil_tmp42 = (int )pio;
7097#line 604
7098 printk("%s: selected cmd640 PIO mode%d (%dns)", __cil_tmp41, __cil_tmp42, cycle_time);
7099#line 607
7100 display_clocks(index);
7101 }
7102#line 608
7103 return;
7104}
7105}
7106#line 611
7107static void cmd640_init_dev(ide_drive_t *drive ) __attribute__((__section__(".init.text"),
7108__no_instrument_function__)) ;
7109#line 611 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7110static void cmd640_init_dev(ide_drive_t *drive )
7111{ unsigned int i ;
7112 unsigned long __cil_tmp3 ;
7113 unsigned long __cil_tmp4 ;
7114 u8 __cil_tmp5 ;
7115 int __cil_tmp6 ;
7116 int __cil_tmp7 ;
7117 unsigned long __cil_tmp8 ;
7118 unsigned long __cil_tmp9 ;
7119 struct hwif_s *__cil_tmp10 ;
7120 unsigned long __cil_tmp11 ;
7121 unsigned long __cil_tmp12 ;
7122 u8 __cil_tmp13 ;
7123 int __cil_tmp14 ;
7124 int __cil_tmp15 ;
7125 int __cil_tmp16 ;
7126 unsigned long __cil_tmp17 ;
7127 unsigned long __cil_tmp18 ;
7128 unsigned long __cil_tmp19 ;
7129 unsigned long __cil_tmp20 ;
7130 unsigned long __cil_tmp21 ;
7131 unsigned long __cil_tmp22 ;
7132
7133 {
7134 {
7135#line 613
7136 __cil_tmp3 = (unsigned long )drive;
7137#line 613
7138 __cil_tmp4 = __cil_tmp3 + 114;
7139#line 613
7140 __cil_tmp5 = *((u8 *)__cil_tmp4);
7141#line 613
7142 __cil_tmp6 = (int )__cil_tmp5;
7143#line 613
7144 __cil_tmp7 = __cil_tmp6 & 1;
7145#line 613
7146 __cil_tmp8 = (unsigned long )drive;
7147#line 613
7148 __cil_tmp9 = __cil_tmp8 + 64;
7149#line 613
7150 __cil_tmp10 = *((struct hwif_s **)__cil_tmp9);
7151#line 613
7152 __cil_tmp11 = (unsigned long )__cil_tmp10;
7153#line 613
7154 __cil_tmp12 = __cil_tmp11 + 170;
7155#line 613
7156 __cil_tmp13 = *((u8 *)__cil_tmp12);
7157#line 613
7158 __cil_tmp14 = (int )__cil_tmp13;
7159#line 613
7160 __cil_tmp15 = __cil_tmp14 * 2;
7161#line 613
7162 __cil_tmp16 = __cil_tmp15 + __cil_tmp7;
7163#line 613
7164 i = (unsigned int )__cil_tmp16;
7165#line 620
7166 __cil_tmp17 = i * 1UL;
7167#line 620
7168 __cil_tmp18 = (unsigned long )(setup_counts) + __cil_tmp17;
7169#line 620
7170 *((u8 *)__cil_tmp18) = (u8 )4;
7171#line 621
7172 __cil_tmp19 = i * 1UL;
7173#line 621
7174 __cil_tmp20 = (unsigned long )(active_counts) + __cil_tmp19;
7175#line 621
7176 *((u8 *)__cil_tmp20) = (u8 )16;
7177#line 622
7178 __cil_tmp21 = i * 1UL;
7179#line 622
7180 __cil_tmp22 = (unsigned long )(recovery_counts) + __cil_tmp21;
7181#line 622
7182 *((u8 *)__cil_tmp22) = (u8 )16;
7183#line 623
7184 program_drive_counts(drive, i);
7185#line 624
7186 set_prefetch_mode(drive, i, 0);
7187#line 625
7188 printk("<6>cmd640: drive%d timings/prefetch cleared\n", i);
7189 }
7190#line 634
7191 return;
7192}
7193}
7194#line 636 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7195static int cmd640_test_irq(ide_hwif_t *hwif )
7196{ int irq_reg ;
7197 int tmp___7 ;
7198 u8 irq_mask ;
7199 int tmp___8 ;
7200 u8 irq_stat___0 ;
7201 u8 tmp___9 ;
7202 int tmp___10 ;
7203 unsigned long __cil_tmp9 ;
7204 unsigned long __cil_tmp10 ;
7205 unsigned long __cil_tmp11 ;
7206 unsigned long __cil_tmp12 ;
7207 u16 __cil_tmp13 ;
7208 int __cil_tmp14 ;
7209 int __cil_tmp15 ;
7210
7211 {
7212 {
7213#line 638
7214 __cil_tmp9 = (unsigned long )hwif;
7215#line 638
7216 __cil_tmp10 = __cil_tmp9 + 170;
7217#line 638
7218 if (*((u8 *)__cil_tmp10)) {
7219#line 638
7220 tmp___7 = 87;
7221 } else {
7222#line 638
7223 tmp___7 = 80;
7224 }
7225 }
7226#line 638
7227 irq_reg = tmp___7;
7228 {
7229#line 639
7230 __cil_tmp11 = (unsigned long )hwif;
7231#line 639
7232 __cil_tmp12 = __cil_tmp11 + 170;
7233#line 639
7234 if (*((u8 *)__cil_tmp12)) {
7235#line 639
7236 tmp___8 = 16;
7237 } else {
7238#line 639
7239 tmp___8 = 4;
7240 }
7241 }
7242 {
7243#line 639
7244 irq_mask = (u8 )tmp___8;
7245#line 641
7246 __cil_tmp13 = (u16 )irq_reg;
7247#line 641
7248 tmp___9 = get_cmd640_reg(__cil_tmp13);
7249#line 641
7250 irq_stat___0 = tmp___9;
7251 }
7252 {
7253#line 643
7254 __cil_tmp14 = (int )irq_mask;
7255#line 643
7256 __cil_tmp15 = (int )irq_stat___0;
7257#line 643
7258 if (__cil_tmp15 & __cil_tmp14) {
7259#line 643
7260 tmp___10 = 1;
7261 } else {
7262#line 643
7263 tmp___10 = 0;
7264 }
7265 }
7266#line 643
7267 return (tmp___10);
7268}
7269}
7270#line 646 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7271static struct ide_port_ops const cmd640_port_ops =
7272#line 646
7273 {& cmd640_init_dev, & cmd640_set_pio_mode, (void (*)(struct hwif_s * , ide_drive_t * ))0,
7274 (int (*)(ide_drive_t * ))0, (void (*)(ide_drive_t * ))0, (void (*)(ide_drive_t * ))0,
7275 (void (*)(ide_drive_t * , int ))0, (void (*)(ide_drive_t * ))0, (void (*)(ide_drive_t * ))0,
7276 & cmd640_test_irq, (u8 (*)(ide_drive_t * ))0, (u8 (*)(ide_drive_t * ))0, (u8 (*)(struct hwif_s * ))0};
7277#line 654 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7278static int pci_conf1(void)
7279{ unsigned long flags ;
7280 u32 tmp___7 ;
7281 raw_spinlock_t *tmp___8 ;
7282 unsigned int tmp___9 ;
7283
7284 {
7285 {
7286#line 659
7287 while (1) {
7288 while_continue: ;
7289 {
7290#line 659
7291 while (1) {
7292 while_continue___0: ;
7293 {
7294#line 659
7295 tmp___8 = spinlock_check(& cmd640_lock);
7296#line 659
7297 flags = _raw_spin_lock_irqsave(tmp___8);
7298 }
7299#line 659
7300 goto while_break___0;
7301 }
7302 while_break___0: ;
7303 }
7304#line 659
7305 goto while_break;
7306 }
7307 while_break: ;
7308 }
7309 {
7310#line 660
7311 outb((unsigned char)1, 3323);
7312#line 661
7313 tmp___7 = inl(3320);
7314#line 662
7315 outl(2147483648U, 3320);
7316#line 663
7317 tmp___9 = inl(3320);
7318 }
7319#line 663
7320 if (tmp___9 == 2147483648U) {
7321 {
7322#line 664
7323 outl(tmp___7, 3320);
7324#line 665
7325 spin_unlock_irqrestore(& cmd640_lock, flags);
7326 }
7327#line 666
7328 return (1);
7329 } else {
7330
7331 }
7332 {
7333#line 668
7334 outl(tmp___7, 3320);
7335#line 669
7336 spin_unlock_irqrestore(& cmd640_lock, flags);
7337 }
7338#line 670
7339 return (0);
7340}
7341}
7342#line 673 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7343static int pci_conf2(void)
7344{ unsigned long flags ;
7345 raw_spinlock_t *tmp___7 ;
7346 unsigned char tmp___8 ;
7347 unsigned char tmp___9 ;
7348 int __cil_tmp7 ;
7349 int __cil_tmp8 ;
7350
7351 {
7352 {
7353#line 677
7354 while (1) {
7355 while_continue: ;
7356 {
7357#line 677
7358 while (1) {
7359 while_continue___0: ;
7360 {
7361#line 677
7362 tmp___7 = spinlock_check(& cmd640_lock);
7363#line 677
7364 flags = _raw_spin_lock_irqsave(tmp___7);
7365 }
7366#line 677
7367 goto while_break___0;
7368 }
7369 while_break___0: ;
7370 }
7371#line 677
7372 goto while_break;
7373 }
7374 while_break: ;
7375 }
7376 {
7377#line 678
7378 outb((unsigned char)0, 3323);
7379#line 679
7380 outb((unsigned char)0, 3320);
7381#line 680
7382 outb((unsigned char)0, 3322);
7383#line 681
7384 tmp___8 = inb(3320);
7385 }
7386 {
7387#line 681
7388 __cil_tmp7 = (int )tmp___8;
7389#line 681
7390 if (__cil_tmp7 == 0) {
7391 {
7392#line 681
7393 tmp___9 = inb(3320);
7394 }
7395 {
7396#line 681
7397 __cil_tmp8 = (int )tmp___9;
7398#line 681
7399 if (__cil_tmp8 == 0) {
7400 {
7401#line 682
7402 spin_unlock_irqrestore(& cmd640_lock, flags);
7403 }
7404#line 683
7405 return (1);
7406 } else {
7407
7408 }
7409 }
7410 } else {
7411
7412 }
7413 }
7414 {
7415#line 685
7416 spin_unlock_irqrestore(& cmd640_lock, flags);
7417 }
7418#line 686
7419 return (0);
7420}
7421}
7422#line 689 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7423static struct ide_port_info const cmd640_port_info __attribute__((__section__(".init.data"))) =
7424#line 689
7425 {(char *)0, (int (*)(struct pci_dev * ))0, (void (*)(irqreturn_t (*)(int , void * ) ,
7426 void * ))0, (void (*)(void))0,
7427 (void (*)(ide_hwif_t * ))0, (void (*)(ide_hwif_t * ))0, (int (*)(ide_hwif_t * ,
7428 struct ide_port_info const * ))0,
7429 (struct ide_tp_ops const *)0, & cmd640_port_ops, (struct ide_dma_ops const *)0,
7430 {{(unsigned char)0, (unsigned char)0, (unsigned char)0}, {(unsigned char)0, (unsigned char)0,
7431 (unsigned char)0}},
7432 (hwif_chipset_t )3, (unsigned short)0, (u32 )1065008, 0, (u8 )63, (unsigned char)0,
7433 (unsigned char)0, (unsigned char)0};
7434#line 699 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7435static int cmd640x_init_one(unsigned long base , unsigned long ctl )
7436{ struct resource *tmp___7 ;
7437 struct resource *tmp___8 ;
7438 resource_size_t __cil_tmp5 ;
7439 resource_size_t __cil_tmp6 ;
7440 unsigned long __cil_tmp7 ;
7441 resource_size_t __cil_tmp8 ;
7442 resource_size_t __cil_tmp9 ;
7443 resource_size_t __cil_tmp10 ;
7444 resource_size_t __cil_tmp11 ;
7445
7446 {
7447 {
7448#line 701
7449 __cil_tmp5 = (resource_size_t )base;
7450#line 701
7451 __cil_tmp6 = (resource_size_t )8;
7452#line 701
7453 tmp___7 = __request_region(& ioport_resource, __cil_tmp5, __cil_tmp6, "cmd640",
7454 0);
7455 }
7456#line 701
7457 if (tmp___7) {
7458
7459 } else {
7460 {
7461#line 702
7462 __cil_tmp7 = base + 7UL;
7463#line 702
7464 printk("<3>%s: I/O resource 0x%lX-0x%lX not free.\n", "cmd640", base, __cil_tmp7);
7465 }
7466#line 704
7467 return (-16);
7468 }
7469 {
7470#line 707
7471 __cil_tmp8 = (resource_size_t )ctl;
7472#line 707
7473 __cil_tmp9 = (resource_size_t )1;
7474#line 707
7475 tmp___8 = __request_region(& ioport_resource, __cil_tmp8, __cil_tmp9, "cmd640",
7476 0);
7477 }
7478#line 707
7479 if (tmp___8) {
7480
7481 } else {
7482 {
7483#line 708
7484 printk("<3>%s: I/O resource 0x%lX not free.\n", "cmd640", ctl);
7485#line 710
7486 __cil_tmp10 = (resource_size_t )base;
7487#line 710
7488 __cil_tmp11 = (resource_size_t )8;
7489#line 710
7490 __release_region(& ioport_resource, __cil_tmp10, __cil_tmp11);
7491 }
7492#line 711
7493 return (-16);
7494 }
7495#line 714
7496 return (0);
7497}
7498}
7499#line 720
7500static int cmd640x_init(void) __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
7501#line 720 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7502static int cmd640x_init(void)
7503{ int second_port_cmd640 ;
7504 int rc ;
7505 char const *bus_type ;
7506 char const *port2 ;
7507 u8 b ;
7508 u8 cfr ;
7509 struct ide_hw hw[2] ;
7510 struct ide_hw *hws[2] ;
7511 int tmp___7 ;
7512 int tmp___8 ;
7513 int tmp___9 ;
7514 int tmp___10 ;
7515 int tmp___11 ;
7516 u8 tmp___12 ;
7517 int tmp___13 ;
7518 int tmp___14 ;
7519 char const *tmp___15 ;
7520 int tmp___16 ;
7521 int tmp___17 ;
7522 bool *__cil_tmp20 ;
7523 bool *__cil_tmp21 ;
7524 u16 __cil_tmp22 ;
7525 u8 __cil_tmp23 ;
7526 u16 __cil_tmp24 ;
7527 int __cil_tmp25 ;
7528 u16 __cil_tmp26 ;
7529 u8 __cil_tmp27 ;
7530 u16 __cil_tmp28 ;
7531 int __cil_tmp29 ;
7532 int __cil_tmp30 ;
7533 resource_size_t __cil_tmp31 ;
7534 resource_size_t __cil_tmp32 ;
7535 resource_size_t __cil_tmp33 ;
7536 resource_size_t __cil_tmp34 ;
7537 void *__cil_tmp35 ;
7538 unsigned long __cil_tmp36 ;
7539 unsigned long __cil_tmp37 ;
7540 struct ide_hw *__cil_tmp38 ;
7541 unsigned long __cil_tmp39 ;
7542 unsigned long __cil_tmp40 ;
7543 unsigned long __cil_tmp41 ;
7544 unsigned long __cil_tmp42 ;
7545 unsigned long __cil_tmp43 ;
7546 struct ide_hw *__cil_tmp44 ;
7547 unsigned long __cil_tmp45 ;
7548 unsigned long __cil_tmp46 ;
7549 unsigned long __cil_tmp47 ;
7550 unsigned int __cil_tmp48 ;
7551 unsigned int __cil_tmp49 ;
7552 int __cil_tmp50 ;
7553 unsigned long __cil_tmp51 ;
7554 unsigned long __cil_tmp52 ;
7555 unsigned long __cil_tmp53 ;
7556 unsigned long __cil_tmp54 ;
7557 u16 __cil_tmp55 ;
7558 u8 __cil_tmp56 ;
7559 u16 __cil_tmp57 ;
7560 u8 __cil_tmp58 ;
7561 u16 __cil_tmp59 ;
7562 int __cil_tmp60 ;
7563 bool *__cil_tmp61 ;
7564 u16 __cil_tmp62 ;
7565 int __cil_tmp63 ;
7566 int __cil_tmp64 ;
7567 u8 __cil_tmp65 ;
7568 u16 __cil_tmp66 ;
7569 unsigned long __cil_tmp67 ;
7570 unsigned long __cil_tmp68 ;
7571 unsigned long __cil_tmp69 ;
7572 unsigned long __cil_tmp70 ;
7573 unsigned long __cil_tmp71 ;
7574 unsigned long __cil_tmp72 ;
7575 struct ide_hw **__cil_tmp73 ;
7576 unsigned int __cil_tmp74 ;
7577 void *__cil_tmp75 ;
7578 struct ide_host **__cil_tmp76 ;
7579
7580 {
7581#line 722
7582 second_port_cmd640 = 0;
7583 {
7584#line 727
7585 __cil_tmp20 = & cmd640_vlb;
7586#line 727
7587 if (*__cil_tmp20) {
7588 {
7589#line 727
7590 tmp___11 = probe_for_cmd640_vlb();
7591 }
7592#line 727
7593 if (tmp___11) {
7594#line 728
7595 bus_type = "VLB";
7596 } else {
7597#line 727
7598 goto _L___0;
7599 }
7600 } else {
7601 _L___0:
7602 {
7603#line 730
7604 __cil_tmp21 = & cmd640_vlb;
7605#line 730
7606 *__cil_tmp21 = (bool )0;
7607#line 733
7608 tmp___9 = pci_conf1();
7609 }
7610#line 733
7611 if (tmp___9) {
7612 {
7613#line 733
7614 tmp___10 = probe_for_cmd640_pci1();
7615 }
7616#line 733
7617 if (tmp___10) {
7618#line 734
7619 bus_type = "PCI (type1)";
7620 } else {
7621#line 733
7622 goto _L;
7623 }
7624 } else {
7625 _L:
7626 {
7627#line 735
7628 tmp___7 = pci_conf2();
7629 }
7630#line 735
7631 if (tmp___7) {
7632 {
7633#line 735
7634 tmp___8 = probe_for_cmd640_pci2();
7635 }
7636#line 735
7637 if (tmp___8) {
7638#line 736
7639 bus_type = "PCI (type2)";
7640 } else {
7641#line 738
7642 return (0);
7643 }
7644 } else {
7645#line 738
7646 return (0);
7647 }
7648 }
7649 }
7650 }
7651 {
7652#line 743
7653 __cil_tmp22 = (u16 )91;
7654#line 743
7655 __cil_tmp23 = (u8 )189;
7656#line 743
7657 put_cmd640_reg(__cil_tmp22, __cil_tmp23);
7658#line 744
7659 __cil_tmp24 = (u16 )91;
7660#line 744
7661 tmp___12 = get_cmd640_reg(__cil_tmp24);
7662 }
7663 {
7664#line 744
7665 __cil_tmp25 = (int )tmp___12;
7666#line 744
7667 if (__cil_tmp25 != 189) {
7668 {
7669#line 745
7670 printk("<3>ide: cmd640 init failed: wrong value in reg 0x5b\n");
7671 }
7672#line 746
7673 return (0);
7674 } else {
7675
7676 }
7677 }
7678 {
7679#line 748
7680 __cil_tmp26 = (u16 )91;
7681#line 748
7682 __cil_tmp27 = (u8 )0;
7683#line 748
7684 put_cmd640_reg(__cil_tmp26, __cil_tmp27);
7685#line 757
7686 __cil_tmp28 = (u16 )80;
7687#line 757
7688 cfr = get_cmd640_reg(__cil_tmp28);
7689#line 758
7690 __cil_tmp29 = (int )cfr;
7691#line 758
7692 __cil_tmp30 = __cil_tmp29 & 3;
7693#line 758
7694 cmd640_chip_version = (unsigned int )__cil_tmp30;
7695 }
7696#line 759
7697 if (cmd640_chip_version == 0U) {
7698 {
7699#line 760
7700 printk("ide: bad cmd640 revision: %d\n", cmd640_chip_version);
7701 }
7702#line 761
7703 return (0);
7704 } else {
7705
7706 }
7707 {
7708#line 764
7709 rc = cmd640x_init_one(496UL, 1014UL);
7710 }
7711#line 765
7712 if (rc) {
7713#line 766
7714 return (rc);
7715 } else {
7716
7717 }
7718 {
7719#line 768
7720 rc = cmd640x_init_one(368UL, 886UL);
7721 }
7722#line 769
7723 if (rc) {
7724 {
7725#line 770
7726 __cil_tmp31 = (resource_size_t )1014;
7727#line 770
7728 __cil_tmp32 = (resource_size_t )1;
7729#line 770
7730 __release_region(& ioport_resource, __cil_tmp31, __cil_tmp32);
7731#line 771
7732 __cil_tmp33 = (resource_size_t )496;
7733#line 771
7734 __cil_tmp34 = (resource_size_t )8;
7735#line 771
7736 __release_region(& ioport_resource, __cil_tmp33, __cil_tmp34);
7737 }
7738#line 772
7739 return (rc);
7740 } else {
7741
7742 }
7743 {
7744#line 775
7745 __cil_tmp35 = (void *)(& hw);
7746#line 775
7747 memset(__cil_tmp35, 0, 224UL);
7748#line 777
7749 __cil_tmp36 = 0 * 112UL;
7750#line 777
7751 __cil_tmp37 = (unsigned long )(hw) + __cil_tmp36;
7752#line 777
7753 __cil_tmp38 = (struct ide_hw *)__cil_tmp37;
7754#line 777
7755 ide_std_init_ports(__cil_tmp38, 496UL, 1014UL);
7756#line 778
7757 __cil_tmp39 = 0 * 112UL;
7758#line 778
7759 __cil_tmp40 = __cil_tmp39 + 80;
7760#line 778
7761 __cil_tmp41 = (unsigned long )(hw) + __cil_tmp40;
7762#line 778
7763 *((int *)__cil_tmp41) = 14;
7764#line 780
7765 __cil_tmp42 = 1 * 112UL;
7766#line 780
7767 __cil_tmp43 = (unsigned long )(hw) + __cil_tmp42;
7768#line 780
7769 __cil_tmp44 = (struct ide_hw *)__cil_tmp43;
7770#line 780
7771 ide_std_init_ports(__cil_tmp44, 368UL, 886UL);
7772#line 781
7773 __cil_tmp45 = 1 * 112UL;
7774#line 781
7775 __cil_tmp46 = __cil_tmp45 + 80;
7776#line 781
7777 __cil_tmp47 = (unsigned long )(hw) + __cil_tmp46;
7778#line 781
7779 *((int *)__cil_tmp47) = 15;
7780#line 783
7781 __cil_tmp48 = 97U + cmd640_chip_version;
7782#line 783
7783 __cil_tmp49 = __cil_tmp48 - 1U;
7784#line 783
7785 __cil_tmp50 = (int )cfr;
7786#line 783
7787 printk("<6>cmd640: buggy cmd640%c interface on %s, config=0x%02x\n", __cil_tmp49,
7788 bus_type, __cil_tmp50);
7789#line 789
7790 __cil_tmp51 = 0 * 8UL;
7791#line 789
7792 __cil_tmp52 = (unsigned long )(hws) + __cil_tmp51;
7793#line 789
7794 __cil_tmp53 = 0 * 112UL;
7795#line 789
7796 __cil_tmp54 = (unsigned long )(hw) + __cil_tmp53;
7797#line 789
7798 *((struct ide_hw **)__cil_tmp52) = (struct ide_hw *)__cil_tmp54;
7799#line 798
7800 __cil_tmp55 = (u16 )82;
7801#line 798
7802 __cil_tmp56 = (u8 )0;
7803#line 798
7804 put_cmd640_reg(__cil_tmp55, __cil_tmp56);
7805#line 799
7806 __cil_tmp57 = (u16 )89;
7807#line 799
7808 __cil_tmp58 = (u8 )64;
7809#line 799
7810 put_cmd640_reg(__cil_tmp57, __cil_tmp58);
7811#line 801
7812 __cil_tmp59 = (u16 )81;
7813#line 801
7814 b = get_cmd640_reg(__cil_tmp59);
7815#line 806
7816 tmp___14 = secondary_port_responding();
7817 }
7818#line 806
7819 if (tmp___14) {
7820 {
7821#line 807
7822 __cil_tmp60 = (int )b;
7823#line 807
7824 if (__cil_tmp60 & 8) {
7825#line 808
7826 second_port_cmd640 = 1;
7827#line 809
7828 port2 = "okay";
7829 } else {
7830 {
7831#line 810
7832 __cil_tmp61 = & cmd640_vlb;
7833#line 810
7834 if (*__cil_tmp61) {
7835#line 811
7836 second_port_cmd640 = 1;
7837#line 812
7838 port2 = "alive";
7839 } else {
7840#line 814
7841 port2 = "not cmd640";
7842 }
7843 }
7844 }
7845 }
7846 } else {
7847 {
7848#line 816
7849 __cil_tmp62 = (u16 )81;
7850#line 816
7851 __cil_tmp63 = (int )b;
7852#line 816
7853 __cil_tmp64 = __cil_tmp63 ^ 8;
7854#line 816
7855 __cil_tmp65 = (u8 )__cil_tmp64;
7856#line 816
7857 put_cmd640_reg(__cil_tmp62, __cil_tmp65);
7858#line 817
7859 tmp___13 = secondary_port_responding();
7860 }
7861#line 817
7862 if (tmp___13) {
7863#line 818
7864 second_port_cmd640 = 1;
7865#line 819
7866 port2 = "enabled";
7867 } else {
7868 {
7869#line 821
7870 __cil_tmp66 = (u16 )81;
7871#line 821
7872 put_cmd640_reg(__cil_tmp66, b);
7873#line 822
7874 port2 = "not responding";
7875 }
7876 }
7877 }
7878#line 829
7879 if (second_port_cmd640) {
7880#line 830
7881 __cil_tmp67 = 1 * 8UL;
7882#line 830
7883 __cil_tmp68 = (unsigned long )(hws) + __cil_tmp67;
7884#line 830
7885 __cil_tmp69 = 1 * 112UL;
7886#line 830
7887 __cil_tmp70 = (unsigned long )(hw) + __cil_tmp69;
7888#line 830
7889 *((struct ide_hw **)__cil_tmp68) = (struct ide_hw *)__cil_tmp70;
7890 } else {
7891
7892 }
7893#line 832
7894 if (second_port_cmd640) {
7895#line 832
7896 tmp___15 = "";
7897 } else {
7898#line 832
7899 tmp___15 = "not ";
7900 }
7901 {
7902#line 832
7903 printk("<6>cmd640: %sserialized, secondary interface %s\n", tmp___15, port2);
7904 }
7905#line 839
7906 if (second_port_cmd640) {
7907#line 839
7908 tmp___16 = 2;
7909 } else {
7910#line 839
7911 tmp___16 = 1;
7912 }
7913 {
7914#line 839
7915 __cil_tmp71 = 0 * 8UL;
7916#line 839
7917 __cil_tmp72 = (unsigned long )(hws) + __cil_tmp71;
7918#line 839
7919 __cil_tmp73 = (struct ide_hw **)__cil_tmp72;
7920#line 839
7921 __cil_tmp74 = (unsigned int )tmp___16;
7922#line 839
7923 __cil_tmp75 = (void *)0;
7924#line 839
7925 __cil_tmp76 = (struct ide_host **)__cil_tmp75;
7926#line 839
7927 tmp___17 = ide_host_add(& cmd640_port_info, __cil_tmp73, __cil_tmp74, __cil_tmp76);
7928 }
7929#line 839
7930 return (tmp___17);
7931}
7932}
7933#line 843 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7934static char const __param_str_probe_vlb[10] =
7935#line 843
7936 { (char const )'p', (char const )'r', (char const )'o', (char const )'b',
7937 (char const )'e', (char const )'_', (char const )'v', (char const )'l',
7938 (char const )'b', (char const )'\000'};
7939#line 843 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7940static struct kernel_param const __param_probe_vlb __attribute__((__used__, __unused__,
7941__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_probe_vlb, (struct kernel_param_ops const *)(& param_ops_bool),
7942 (u16 )0, (s16 )0, {(void *)(& cmd640_vlb)}};
7943#line 843 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7944static char const __mod_probe_vlbtype843[24] __attribute__((__used__, __unused__,
7945__section__(".modinfo"), __aligned__(1))) =
7946#line 843
7947 { (char const )'p', (char const )'a', (char const )'r', (char const )'m',
7948 (char const )'t', (char const )'y', (char const )'p', (char const )'e',
7949 (char const )'=', (char const )'p', (char const )'r', (char const )'o',
7950 (char const )'b', (char const )'e', (char const )'_', (char const )'v',
7951 (char const )'l', (char const )'b', (char const )':', (char const )'b',
7952 (char const )'o', (char const )'o', (char const )'l', (char const )'\000'};
7953#line 844 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7954static char const __mod_probe_vlb844[55] __attribute__((__used__, __unused__, __section__(".modinfo"),
7955__aligned__(1))) =
7956#line 844
7957 { (char const )'p', (char const )'a', (char const )'r', (char const )'m',
7958 (char const )'=', (char const )'p', (char const )'r', (char const )'o',
7959 (char const )'b', (char const )'e', (char const )'_', (char const )'v',
7960 (char const )'l', (char const )'b', (char const )':', (char const )'p',
7961 (char const )'r', (char const )'o', (char const )'b', (char const )'e',
7962 (char const )' ', (char const )'f', (char const )'o', (char const )'r',
7963 (char const )' ', (char const )'V', (char const )'L', (char const )'B',
7964 (char const )' ', (char const )'v', (char const )'e', (char const )'r',
7965 (char const )'s', (char const )'i', (char const )'o', (char const )'n',
7966 (char const )' ', (char const )'o', (char const )'f', (char const )' ',
7967 (char const )'C', (char const )'M', (char const )'D', (char const )'6',
7968 (char const )'4', (char const )'0', (char const )' ', (char const )'c',
7969 (char const )'h', (char const )'i', (char const )'p', (char const )'s',
7970 (char const )'e', (char const )'t', (char const )'\000'};
7971#line 846 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7972int init_module(void)
7973{ int tmp___7 ;
7974
7975 {
7976 {
7977#line 846
7978 tmp___7 = cmd640x_init();
7979 }
7980#line 846
7981 return (tmp___7);
7982}
7983}
7984#line 848 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7985static char const __mod_license848[12] __attribute__((__used__, __unused__, __section__(".modinfo"),
7986__aligned__(1))) =
7987#line 848
7988 { (char const )'l', (char const )'i', (char const )'c', (char const )'e',
7989 (char const )'n', (char const )'s', (char const )'e', (char const )'=',
7990 (char const )'G', (char const )'P', (char const )'L', (char const )'\000'};
7991#line 866
7992void ldv_check_final_state(void) ;
7993#line 872
7994extern void ldv_initialize(void) ;
7995#line 875
7996extern int __VERIFIER_nondet_int(void) ;
7997#line 878 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
7998int LDV_IN_INTERRUPT ;
7999#line 881 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
8000void main(void)
8001{ ide_drive_t *var_cmd640_init_dev_22_p0 ;
8002 ide_hwif_t *var_cmd640_set_pio_mode_21_p0 ;
8003 ide_drive_t *var_cmd640_set_pio_mode_21_p1 ;
8004 ide_hwif_t *var_cmd640_test_irq_23_p0 ;
8005 int tmp___7 ;
8006 int tmp___8 ;
8007 int tmp___9 ;
8008
8009 {
8010 {
8011#line 1092
8012 LDV_IN_INTERRUPT = 1;
8013#line 1101
8014 ldv_initialize();
8015#line 1163
8016 tmp___7 = cmd640x_init();
8017 }
8018#line 1163
8019 if (tmp___7) {
8020#line 1164
8021 goto ldv_module_exit;
8022 } else {
8023
8024 }
8025 {
8026#line 1168
8027 while (1) {
8028 while_continue: ;
8029 {
8030#line 1168
8031 tmp___9 = __VERIFIER_nondet_int();
8032 }
8033#line 1168
8034 if (tmp___9) {
8035
8036 } else {
8037#line 1168
8038 goto while_break;
8039 }
8040 {
8041#line 1171
8042 tmp___8 = __VERIFIER_nondet_int();
8043 }
8044#line 1173
8045 if (tmp___8 == 0) {
8046#line 1173
8047 goto case_0;
8048 } else
8049#line 1248
8050 if (tmp___8 == 1) {
8051#line 1248
8052 goto case_1;
8053 } else
8054#line 1326
8055 if (tmp___8 == 2) {
8056#line 1326
8057 goto case_2;
8058 } else {
8059 {
8060#line 1404
8061 goto switch_default;
8062#line 1171
8063 if (0) {
8064 case_0:
8065 {
8066#line 1232
8067 cmd640_init_dev(var_cmd640_init_dev_22_p0);
8068 }
8069#line 1247
8070 goto switch_break;
8071 case_1:
8072 {
8073#line 1306
8074 cmd640_set_pio_mode(var_cmd640_set_pio_mode_21_p0, var_cmd640_set_pio_mode_21_p1);
8075 }
8076#line 1325
8077 goto switch_break;
8078 case_2:
8079 {
8080#line 1388
8081 cmd640_test_irq(var_cmd640_test_irq_23_p0);
8082 }
8083#line 1403
8084 goto switch_break;
8085 switch_default:
8086#line 1404
8087 goto switch_break;
8088 } else {
8089 switch_break: ;
8090 }
8091 }
8092 }
8093 }
8094 while_break: ;
8095 }
8096 ldv_module_exit:
8097 {
8098#line 1413
8099 ldv_check_final_state();
8100 }
8101#line 1416
8102 return;
8103}
8104}
8105#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
8106void ldv_blast_assert(void)
8107{
8108
8109 {
8110 ERROR:
8111#line 6
8112 goto ERROR;
8113}
8114}
8115#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
8116extern int __VERIFIER_nondet_int(void) ;
8117#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8118int ldv_mutex = 1;
8119#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8120int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock )
8121{ int nondetermined ;
8122
8123 {
8124#line 29
8125 if (ldv_mutex == 1) {
8126
8127 } else {
8128 {
8129#line 29
8130 ldv_blast_assert();
8131 }
8132 }
8133 {
8134#line 32
8135 nondetermined = __VERIFIER_nondet_int();
8136 }
8137#line 35
8138 if (nondetermined) {
8139#line 38
8140 ldv_mutex = 2;
8141#line 40
8142 return (0);
8143 } else {
8144#line 45
8145 return (-4);
8146 }
8147}
8148}
8149#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8150int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock )
8151{ int nondetermined ;
8152
8153 {
8154#line 57
8155 if (ldv_mutex == 1) {
8156
8157 } else {
8158 {
8159#line 57
8160 ldv_blast_assert();
8161 }
8162 }
8163 {
8164#line 60
8165 nondetermined = __VERIFIER_nondet_int();
8166 }
8167#line 63
8168 if (nondetermined) {
8169#line 66
8170 ldv_mutex = 2;
8171#line 68
8172 return (0);
8173 } else {
8174#line 73
8175 return (-4);
8176 }
8177}
8178}
8179#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8180int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock )
8181{ int atomic_value_after_dec ;
8182
8183 {
8184#line 83
8185 if (ldv_mutex == 1) {
8186
8187 } else {
8188 {
8189#line 83
8190 ldv_blast_assert();
8191 }
8192 }
8193 {
8194#line 86
8195 atomic_value_after_dec = __VERIFIER_nondet_int();
8196 }
8197#line 89
8198 if (atomic_value_after_dec == 0) {
8199#line 92
8200 ldv_mutex = 2;
8201#line 94
8202 return (1);
8203 } else {
8204
8205 }
8206#line 98
8207 return (0);
8208}
8209}
8210#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8211void mutex_lock(struct mutex *lock )
8212{
8213
8214 {
8215#line 108
8216 if (ldv_mutex == 1) {
8217
8218 } else {
8219 {
8220#line 108
8221 ldv_blast_assert();
8222 }
8223 }
8224#line 110
8225 ldv_mutex = 2;
8226#line 111
8227 return;
8228}
8229}
8230#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8231int mutex_trylock(struct mutex *lock )
8232{ int nondetermined ;
8233
8234 {
8235#line 121
8236 if (ldv_mutex == 1) {
8237
8238 } else {
8239 {
8240#line 121
8241 ldv_blast_assert();
8242 }
8243 }
8244 {
8245#line 124
8246 nondetermined = __VERIFIER_nondet_int();
8247 }
8248#line 127
8249 if (nondetermined) {
8250#line 130
8251 ldv_mutex = 2;
8252#line 132
8253 return (1);
8254 } else {
8255#line 137
8256 return (0);
8257 }
8258}
8259}
8260#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8261void mutex_unlock(struct mutex *lock )
8262{
8263
8264 {
8265#line 147
8266 if (ldv_mutex == 2) {
8267
8268 } else {
8269 {
8270#line 147
8271 ldv_blast_assert();
8272 }
8273 }
8274#line 149
8275 ldv_mutex = 1;
8276#line 150
8277 return;
8278}
8279}
8280#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8281void ldv_check_final_state(void)
8282{
8283
8284 {
8285#line 156
8286 if (ldv_mutex == 1) {
8287
8288 } else {
8289 {
8290#line 156
8291 ldv_blast_assert();
8292 }
8293 }
8294#line 157
8295 return;
8296}
8297}
8298#line 1425 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12312/dscv_tempdir/dscv/ri/32_1/drivers/ide/cmd640.c.common.c"
8299long s__builtin_expect(long val , long res )
8300{
8301
8302 {
8303#line 1426
8304 return (val);
8305}
8306}