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 31 "include/asm-generic/posix_types.h"
39typedef int __kernel_pid_t;
40#line 52 "include/asm-generic/posix_types.h"
41typedef unsigned int __kernel_uid32_t;
42#line 53 "include/asm-generic/posix_types.h"
43typedef unsigned int __kernel_gid32_t;
44#line 75 "include/asm-generic/posix_types.h"
45typedef __kernel_ulong_t __kernel_size_t;
46#line 76 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_ssize_t;
48#line 91 "include/asm-generic/posix_types.h"
49typedef long long __kernel_loff_t;
50#line 92 "include/asm-generic/posix_types.h"
51typedef __kernel_long_t __kernel_time_t;
52#line 93 "include/asm-generic/posix_types.h"
53typedef __kernel_long_t __kernel_clock_t;
54#line 94 "include/asm-generic/posix_types.h"
55typedef int __kernel_timer_t;
56#line 95 "include/asm-generic/posix_types.h"
57typedef int __kernel_clockid_t;
58#line 21 "include/linux/types.h"
59typedef __u32 __kernel_dev_t;
60#line 24 "include/linux/types.h"
61typedef __kernel_dev_t dev_t;
62#line 27 "include/linux/types.h"
63typedef unsigned short umode_t;
64#line 30 "include/linux/types.h"
65typedef __kernel_pid_t pid_t;
66#line 35 "include/linux/types.h"
67typedef __kernel_clockid_t clockid_t;
68#line 38 "include/linux/types.h"
69typedef _Bool bool;
70#line 40 "include/linux/types.h"
71typedef __kernel_uid32_t uid_t;
72#line 41 "include/linux/types.h"
73typedef __kernel_gid32_t gid_t;
74#line 54 "include/linux/types.h"
75typedef __kernel_loff_t loff_t;
76#line 63 "include/linux/types.h"
77typedef __kernel_size_t size_t;
78#line 68 "include/linux/types.h"
79typedef __kernel_ssize_t ssize_t;
80#line 78 "include/linux/types.h"
81typedef __kernel_time_t time_t;
82#line 111 "include/linux/types.h"
83typedef __s32 int32_t;
84#line 117 "include/linux/types.h"
85typedef __u32 uint32_t;
86#line 142 "include/linux/types.h"
87typedef unsigned long sector_t;
88#line 143 "include/linux/types.h"
89typedef unsigned long blkcnt_t;
90#line 155 "include/linux/types.h"
91typedef u64 dma_addr_t;
92#line 178 "include/linux/types.h"
93typedef __u16 __le16;
94#line 180 "include/linux/types.h"
95typedef __u32 __le32;
96#line 202 "include/linux/types.h"
97typedef unsigned int gfp_t;
98#line 203 "include/linux/types.h"
99typedef unsigned int fmode_t;
100#line 221 "include/linux/types.h"
101struct __anonstruct_atomic_t_6 {
102 int counter ;
103};
104#line 221 "include/linux/types.h"
105typedef struct __anonstruct_atomic_t_6 atomic_t;
106#line 226 "include/linux/types.h"
107struct __anonstruct_atomic64_t_7 {
108 long counter ;
109};
110#line 226 "include/linux/types.h"
111typedef struct __anonstruct_atomic64_t_7 atomic64_t;
112#line 227 "include/linux/types.h"
113struct list_head {
114 struct list_head *next ;
115 struct list_head *prev ;
116};
117#line 232
118struct hlist_node;
119#line 232 "include/linux/types.h"
120struct hlist_head {
121 struct hlist_node *first ;
122};
123#line 236 "include/linux/types.h"
124struct hlist_node {
125 struct hlist_node *next ;
126 struct hlist_node **pprev ;
127};
128#line 247 "include/linux/types.h"
129struct rcu_head {
130 struct rcu_head *next ;
131 void (*func)(struct rcu_head * ) ;
132};
133#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
134struct module;
135#line 55
136struct module;
137#line 146 "include/linux/init.h"
138typedef void (*ctor_fn_t)(void);
139#line 46 "include/linux/dynamic_debug.h"
140struct device;
141#line 46
142struct device;
143#line 57
144struct completion;
145#line 57
146struct completion;
147#line 58
148struct pt_regs;
149#line 58
150struct pt_regs;
151#line 348 "include/linux/kernel.h"
152struct pid;
153#line 348
154struct pid;
155#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
156struct timespec;
157#line 112
158struct timespec;
159#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
160struct page;
161#line 58
162struct page;
163#line 26 "include/asm-generic/getorder.h"
164struct task_struct;
165#line 26
166struct task_struct;
167#line 28
168struct mm_struct;
169#line 28
170struct mm_struct;
171#line 268 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/segment.h"
172struct pt_regs {
173 unsigned long r15 ;
174 unsigned long r14 ;
175 unsigned long r13 ;
176 unsigned long r12 ;
177 unsigned long bp ;
178 unsigned long bx ;
179 unsigned long r11 ;
180 unsigned long r10 ;
181 unsigned long r9 ;
182 unsigned long r8 ;
183 unsigned long ax ;
184 unsigned long cx ;
185 unsigned long dx ;
186 unsigned long si ;
187 unsigned long di ;
188 unsigned long orig_ax ;
189 unsigned long ip ;
190 unsigned long cs ;
191 unsigned long flags ;
192 unsigned long sp ;
193 unsigned long ss ;
194};
195#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
196struct __anonstruct_ldv_2180_13 {
197 unsigned int a ;
198 unsigned int b ;
199};
200#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
201struct __anonstruct_ldv_2195_14 {
202 u16 limit0 ;
203 u16 base0 ;
204 unsigned char base1 ;
205 unsigned char type : 4 ;
206 unsigned char s : 1 ;
207 unsigned char dpl : 2 ;
208 unsigned char p : 1 ;
209 unsigned char limit : 4 ;
210 unsigned char avl : 1 ;
211 unsigned char l : 1 ;
212 unsigned char d : 1 ;
213 unsigned char g : 1 ;
214 unsigned char base2 ;
215};
216#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
217union __anonunion_ldv_2196_12 {
218 struct __anonstruct_ldv_2180_13 ldv_2180 ;
219 struct __anonstruct_ldv_2195_14 ldv_2195 ;
220};
221#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
222struct desc_struct {
223 union __anonunion_ldv_2196_12 ldv_2196 ;
224};
225#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
226typedef unsigned long pgdval_t;
227#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
228typedef unsigned long pgprotval_t;
229#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
230struct pgprot {
231 pgprotval_t pgprot ;
232};
233#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
234typedef struct pgprot pgprot_t;
235#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
236struct __anonstruct_pgd_t_16 {
237 pgdval_t pgd ;
238};
239#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
240typedef struct __anonstruct_pgd_t_16 pgd_t;
241#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
242typedef struct page *pgtable_t;
243#line 290
244struct file;
245#line 290
246struct file;
247#line 305
248struct seq_file;
249#line 305
250struct seq_file;
251#line 337
252struct thread_struct;
253#line 337
254struct thread_struct;
255#line 339
256struct cpumask;
257#line 339
258struct cpumask;
259#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
260struct arch_spinlock;
261#line 327
262struct arch_spinlock;
263#line 300 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
264struct kernel_vm86_regs {
265 struct pt_regs pt ;
266 unsigned short es ;
267 unsigned short __esh ;
268 unsigned short ds ;
269 unsigned short __dsh ;
270 unsigned short fs ;
271 unsigned short __fsh ;
272 unsigned short gs ;
273 unsigned short __gsh ;
274};
275#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
276union __anonunion_ldv_2824_19 {
277 struct pt_regs *regs ;
278 struct kernel_vm86_regs *vm86 ;
279};
280#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
281struct math_emu_info {
282 long ___orig_eip ;
283 union __anonunion_ldv_2824_19 ldv_2824 ;
284};
285#line 306 "include/linux/bitmap.h"
286struct bug_entry {
287 int bug_addr_disp ;
288 int file_disp ;
289 unsigned short line ;
290 unsigned short flags ;
291};
292#line 89 "include/linux/bug.h"
293struct cpumask {
294 unsigned long bits[64U] ;
295};
296#line 14 "include/linux/cpumask.h"
297typedef struct cpumask cpumask_t;
298#line 637 "include/linux/cpumask.h"
299typedef struct cpumask *cpumask_var_t;
300#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
301struct static_key;
302#line 234
303struct static_key;
304#line 287 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
305struct i387_fsave_struct {
306 u32 cwd ;
307 u32 swd ;
308 u32 twd ;
309 u32 fip ;
310 u32 fcs ;
311 u32 foo ;
312 u32 fos ;
313 u32 st_space[20U] ;
314 u32 status ;
315};
316#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
317struct __anonstruct_ldv_5180_24 {
318 u64 rip ;
319 u64 rdp ;
320};
321#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
322struct __anonstruct_ldv_5186_25 {
323 u32 fip ;
324 u32 fcs ;
325 u32 foo ;
326 u32 fos ;
327};
328#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
329union __anonunion_ldv_5187_23 {
330 struct __anonstruct_ldv_5180_24 ldv_5180 ;
331 struct __anonstruct_ldv_5186_25 ldv_5186 ;
332};
333#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
334union __anonunion_ldv_5196_26 {
335 u32 padding1[12U] ;
336 u32 sw_reserved[12U] ;
337};
338#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
339struct i387_fxsave_struct {
340 u16 cwd ;
341 u16 swd ;
342 u16 twd ;
343 u16 fop ;
344 union __anonunion_ldv_5187_23 ldv_5187 ;
345 u32 mxcsr ;
346 u32 mxcsr_mask ;
347 u32 st_space[32U] ;
348 u32 xmm_space[64U] ;
349 u32 padding[12U] ;
350 union __anonunion_ldv_5196_26 ldv_5196 ;
351};
352#line 339 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
353struct i387_soft_struct {
354 u32 cwd ;
355 u32 swd ;
356 u32 twd ;
357 u32 fip ;
358 u32 fcs ;
359 u32 foo ;
360 u32 fos ;
361 u32 st_space[20U] ;
362 u8 ftop ;
363 u8 changed ;
364 u8 lookahead ;
365 u8 no_update ;
366 u8 rm ;
367 u8 alimit ;
368 struct math_emu_info *info ;
369 u32 entry_eip ;
370};
371#line 360 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
372struct ymmh_struct {
373 u32 ymmh_space[64U] ;
374};
375#line 365 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
376struct xsave_hdr_struct {
377 u64 xstate_bv ;
378 u64 reserved1[2U] ;
379 u64 reserved2[5U] ;
380};
381#line 371 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
382struct xsave_struct {
383 struct i387_fxsave_struct i387 ;
384 struct xsave_hdr_struct xsave_hdr ;
385 struct ymmh_struct ymmh ;
386};
387#line 377 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
388union thread_xstate {
389 struct i387_fsave_struct fsave ;
390 struct i387_fxsave_struct fxsave ;
391 struct i387_soft_struct soft ;
392 struct xsave_struct xsave ;
393};
394#line 385 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
395struct fpu {
396 unsigned int last_cpu ;
397 unsigned int has_fpu ;
398 union thread_xstate *state ;
399};
400#line 433
401struct kmem_cache;
402#line 434
403struct perf_event;
404#line 434
405struct perf_event;
406#line 435 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
407struct thread_struct {
408 struct desc_struct tls_array[3U] ;
409 unsigned long sp0 ;
410 unsigned long sp ;
411 unsigned long usersp ;
412 unsigned short es ;
413 unsigned short ds ;
414 unsigned short fsindex ;
415 unsigned short gsindex ;
416 unsigned long fs ;
417 unsigned long gs ;
418 struct perf_event *ptrace_bps[4U] ;
419 unsigned long debugreg6 ;
420 unsigned long ptrace_dr7 ;
421 unsigned long cr2 ;
422 unsigned long trap_nr ;
423 unsigned long error_code ;
424 struct fpu fpu ;
425 unsigned long *io_bitmap_ptr ;
426 unsigned long iopl ;
427 unsigned int io_bitmap_max ;
428};
429#line 23 "include/asm-generic/atomic-long.h"
430typedef atomic64_t atomic_long_t;
431#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
432typedef u16 __ticket_t;
433#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
434typedef u32 __ticketpair_t;
435#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
436struct __raw_tickets {
437 __ticket_t head ;
438 __ticket_t tail ;
439};
440#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
441union __anonunion_ldv_5907_29 {
442 __ticketpair_t head_tail ;
443 struct __raw_tickets tickets ;
444};
445#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
446struct arch_spinlock {
447 union __anonunion_ldv_5907_29 ldv_5907 ;
448};
449#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
450typedef struct arch_spinlock arch_spinlock_t;
451#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
452struct __anonstruct_ldv_5914_31 {
453 u32 read ;
454 s32 write ;
455};
456#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
457union __anonunion_arch_rwlock_t_30 {
458 s64 lock ;
459 struct __anonstruct_ldv_5914_31 ldv_5914 ;
460};
461#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
462typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
463#line 34
464struct lockdep_map;
465#line 34
466struct lockdep_map;
467#line 55 "include/linux/debug_locks.h"
468struct stack_trace {
469 unsigned int nr_entries ;
470 unsigned int max_entries ;
471 unsigned long *entries ;
472 int skip ;
473};
474#line 26 "include/linux/stacktrace.h"
475struct lockdep_subclass_key {
476 char __one_byte ;
477};
478#line 53 "include/linux/lockdep.h"
479struct lock_class_key {
480 struct lockdep_subclass_key subkeys[8U] ;
481};
482#line 59 "include/linux/lockdep.h"
483struct lock_class {
484 struct list_head hash_entry ;
485 struct list_head lock_entry ;
486 struct lockdep_subclass_key *key ;
487 unsigned int subclass ;
488 unsigned int dep_gen_id ;
489 unsigned long usage_mask ;
490 struct stack_trace usage_traces[13U] ;
491 struct list_head locks_after ;
492 struct list_head locks_before ;
493 unsigned int version ;
494 unsigned long ops ;
495 char const *name ;
496 int name_version ;
497 unsigned long contention_point[4U] ;
498 unsigned long contending_point[4U] ;
499};
500#line 144 "include/linux/lockdep.h"
501struct lockdep_map {
502 struct lock_class_key *key ;
503 struct lock_class *class_cache[2U] ;
504 char const *name ;
505 int cpu ;
506 unsigned long ip ;
507};
508#line 187 "include/linux/lockdep.h"
509struct held_lock {
510 u64 prev_chain_key ;
511 unsigned long acquire_ip ;
512 struct lockdep_map *instance ;
513 struct lockdep_map *nest_lock ;
514 u64 waittime_stamp ;
515 u64 holdtime_stamp ;
516 unsigned short class_idx : 13 ;
517 unsigned char irq_context : 2 ;
518 unsigned char trylock : 1 ;
519 unsigned char read : 2 ;
520 unsigned char check : 2 ;
521 unsigned char hardirqs_off : 1 ;
522 unsigned short references : 11 ;
523};
524#line 556 "include/linux/lockdep.h"
525struct raw_spinlock {
526 arch_spinlock_t raw_lock ;
527 unsigned int magic ;
528 unsigned int owner_cpu ;
529 void *owner ;
530 struct lockdep_map dep_map ;
531};
532#line 32 "include/linux/spinlock_types.h"
533typedef struct raw_spinlock raw_spinlock_t;
534#line 33 "include/linux/spinlock_types.h"
535struct __anonstruct_ldv_6122_33 {
536 u8 __padding[24U] ;
537 struct lockdep_map dep_map ;
538};
539#line 33 "include/linux/spinlock_types.h"
540union __anonunion_ldv_6123_32 {
541 struct raw_spinlock rlock ;
542 struct __anonstruct_ldv_6122_33 ldv_6122 ;
543};
544#line 33 "include/linux/spinlock_types.h"
545struct spinlock {
546 union __anonunion_ldv_6123_32 ldv_6123 ;
547};
548#line 76 "include/linux/spinlock_types.h"
549typedef struct spinlock spinlock_t;
550#line 23 "include/linux/rwlock_types.h"
551struct __anonstruct_rwlock_t_34 {
552 arch_rwlock_t raw_lock ;
553 unsigned int magic ;
554 unsigned int owner_cpu ;
555 void *owner ;
556 struct lockdep_map dep_map ;
557};
558#line 23 "include/linux/rwlock_types.h"
559typedef struct __anonstruct_rwlock_t_34 rwlock_t;
560#line 110 "include/linux/seqlock.h"
561struct seqcount {
562 unsigned int sequence ;
563};
564#line 121 "include/linux/seqlock.h"
565typedef struct seqcount seqcount_t;
566#line 254 "include/linux/seqlock.h"
567struct timespec {
568 __kernel_time_t tv_sec ;
569 long tv_nsec ;
570};
571#line 286 "include/linux/time.h"
572struct kstat {
573 u64 ino ;
574 dev_t dev ;
575 umode_t mode ;
576 unsigned int nlink ;
577 uid_t uid ;
578 gid_t gid ;
579 dev_t rdev ;
580 loff_t size ;
581 struct timespec atime ;
582 struct timespec mtime ;
583 struct timespec ctime ;
584 unsigned long blksize ;
585 unsigned long long blocks ;
586};
587#line 48 "include/linux/wait.h"
588struct __wait_queue_head {
589 spinlock_t lock ;
590 struct list_head task_list ;
591};
592#line 53 "include/linux/wait.h"
593typedef struct __wait_queue_head wait_queue_head_t;
594#line 98 "include/linux/nodemask.h"
595struct __anonstruct_nodemask_t_36 {
596 unsigned long bits[16U] ;
597};
598#line 98 "include/linux/nodemask.h"
599typedef struct __anonstruct_nodemask_t_36 nodemask_t;
600#line 670 "include/linux/mmzone.h"
601struct mutex {
602 atomic_t count ;
603 spinlock_t wait_lock ;
604 struct list_head wait_list ;
605 struct task_struct *owner ;
606 char const *name ;
607 void *magic ;
608 struct lockdep_map dep_map ;
609};
610#line 63 "include/linux/mutex.h"
611struct mutex_waiter {
612 struct list_head list ;
613 struct task_struct *task ;
614 void *magic ;
615};
616#line 171
617struct rw_semaphore;
618#line 171
619struct rw_semaphore;
620#line 172 "include/linux/mutex.h"
621struct rw_semaphore {
622 long count ;
623 raw_spinlock_t wait_lock ;
624 struct list_head wait_list ;
625 struct lockdep_map dep_map ;
626};
627#line 128 "include/linux/rwsem.h"
628struct completion {
629 unsigned int done ;
630 wait_queue_head_t wait ;
631};
632#line 312 "include/linux/jiffies.h"
633union ktime {
634 s64 tv64 ;
635};
636#line 59 "include/linux/ktime.h"
637typedef union ktime ktime_t;
638#line 341
639struct tvec_base;
640#line 341
641struct tvec_base;
642#line 342 "include/linux/ktime.h"
643struct timer_list {
644 struct list_head entry ;
645 unsigned long expires ;
646 struct tvec_base *base ;
647 void (*function)(unsigned long ) ;
648 unsigned long data ;
649 int slack ;
650 int start_pid ;
651 void *start_site ;
652 char start_comm[16U] ;
653 struct lockdep_map lockdep_map ;
654};
655#line 289 "include/linux/timer.h"
656struct hrtimer;
657#line 289
658struct hrtimer;
659#line 290
660enum hrtimer_restart;
661#line 302
662struct work_struct;
663#line 302
664struct work_struct;
665#line 45 "include/linux/workqueue.h"
666struct work_struct {
667 atomic_long_t data ;
668 struct list_head entry ;
669 void (*func)(struct work_struct * ) ;
670 struct lockdep_map lockdep_map ;
671};
672#line 86 "include/linux/workqueue.h"
673struct delayed_work {
674 struct work_struct work ;
675 struct timer_list timer ;
676};
677#line 46 "include/linux/pm.h"
678struct pm_message {
679 int event ;
680};
681#line 52 "include/linux/pm.h"
682typedef struct pm_message pm_message_t;
683#line 53 "include/linux/pm.h"
684struct dev_pm_ops {
685 int (*prepare)(struct device * ) ;
686 void (*complete)(struct device * ) ;
687 int (*suspend)(struct device * ) ;
688 int (*resume)(struct device * ) ;
689 int (*freeze)(struct device * ) ;
690 int (*thaw)(struct device * ) ;
691 int (*poweroff)(struct device * ) ;
692 int (*restore)(struct device * ) ;
693 int (*suspend_late)(struct device * ) ;
694 int (*resume_early)(struct device * ) ;
695 int (*freeze_late)(struct device * ) ;
696 int (*thaw_early)(struct device * ) ;
697 int (*poweroff_late)(struct device * ) ;
698 int (*restore_early)(struct device * ) ;
699 int (*suspend_noirq)(struct device * ) ;
700 int (*resume_noirq)(struct device * ) ;
701 int (*freeze_noirq)(struct device * ) ;
702 int (*thaw_noirq)(struct device * ) ;
703 int (*poweroff_noirq)(struct device * ) ;
704 int (*restore_noirq)(struct device * ) ;
705 int (*runtime_suspend)(struct device * ) ;
706 int (*runtime_resume)(struct device * ) ;
707 int (*runtime_idle)(struct device * ) ;
708};
709#line 289
710enum rpm_status {
711 RPM_ACTIVE = 0,
712 RPM_RESUMING = 1,
713 RPM_SUSPENDED = 2,
714 RPM_SUSPENDING = 3
715} ;
716#line 296
717enum rpm_request {
718 RPM_REQ_NONE = 0,
719 RPM_REQ_IDLE = 1,
720 RPM_REQ_SUSPEND = 2,
721 RPM_REQ_AUTOSUSPEND = 3,
722 RPM_REQ_RESUME = 4
723} ;
724#line 304
725struct wakeup_source;
726#line 304
727struct wakeup_source;
728#line 494 "include/linux/pm.h"
729struct pm_subsys_data {
730 spinlock_t lock ;
731 unsigned int refcount ;
732};
733#line 499
734struct dev_pm_qos_request;
735#line 499
736struct pm_qos_constraints;
737#line 499 "include/linux/pm.h"
738struct dev_pm_info {
739 pm_message_t power_state ;
740 unsigned char can_wakeup : 1 ;
741 unsigned char async_suspend : 1 ;
742 bool is_prepared ;
743 bool is_suspended ;
744 bool ignore_children ;
745 spinlock_t lock ;
746 struct list_head entry ;
747 struct completion completion ;
748 struct wakeup_source *wakeup ;
749 bool wakeup_path ;
750 struct timer_list suspend_timer ;
751 unsigned long timer_expires ;
752 struct work_struct work ;
753 wait_queue_head_t wait_queue ;
754 atomic_t usage_count ;
755 atomic_t child_count ;
756 unsigned char disable_depth : 3 ;
757 unsigned char idle_notification : 1 ;
758 unsigned char request_pending : 1 ;
759 unsigned char deferred_resume : 1 ;
760 unsigned char run_wake : 1 ;
761 unsigned char runtime_auto : 1 ;
762 unsigned char no_callbacks : 1 ;
763 unsigned char irq_safe : 1 ;
764 unsigned char use_autosuspend : 1 ;
765 unsigned char timer_autosuspends : 1 ;
766 enum rpm_request request ;
767 enum rpm_status runtime_status ;
768 int runtime_error ;
769 int autosuspend_delay ;
770 unsigned long last_busy ;
771 unsigned long active_jiffies ;
772 unsigned long suspended_jiffies ;
773 unsigned long accounting_timestamp ;
774 ktime_t suspend_time ;
775 s64 max_time_suspended_ns ;
776 struct dev_pm_qos_request *pq_req ;
777 struct pm_subsys_data *subsys_data ;
778 struct pm_qos_constraints *constraints ;
779};
780#line 558 "include/linux/pm.h"
781struct dev_pm_domain {
782 struct dev_pm_ops ops ;
783};
784#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
785struct __anonstruct_mm_context_t_101 {
786 void *ldt ;
787 int size ;
788 unsigned short ia32_compat ;
789 struct mutex lock ;
790 void *vdso ;
791};
792#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
793typedef struct __anonstruct_mm_context_t_101 mm_context_t;
794#line 18 "include/asm-generic/pci_iomap.h"
795struct vm_area_struct;
796#line 18
797struct vm_area_struct;
798#line 68 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/xen/hypervisor.h"
799struct bio_vec;
800#line 68
801struct bio_vec;
802#line 18 "include/linux/smp.h"
803struct call_single_data {
804 struct list_head list ;
805 void (*func)(void * ) ;
806 void *info ;
807 u16 flags ;
808 u16 priv ;
809};
810#line 835 "include/linux/sysctl.h"
811struct rb_node {
812 unsigned long rb_parent_color ;
813 struct rb_node *rb_right ;
814 struct rb_node *rb_left ;
815};
816#line 108 "include/linux/rbtree.h"
817struct rb_root {
818 struct rb_node *rb_node ;
819};
820#line 176
821struct nsproxy;
822#line 176
823struct nsproxy;
824#line 37 "include/linux/kmod.h"
825struct cred;
826#line 37
827struct cred;
828#line 18 "include/linux/elf.h"
829typedef __u64 Elf64_Addr;
830#line 19 "include/linux/elf.h"
831typedef __u16 Elf64_Half;
832#line 23 "include/linux/elf.h"
833typedef __u32 Elf64_Word;
834#line 24 "include/linux/elf.h"
835typedef __u64 Elf64_Xword;
836#line 193 "include/linux/elf.h"
837struct elf64_sym {
838 Elf64_Word st_name ;
839 unsigned char st_info ;
840 unsigned char st_other ;
841 Elf64_Half st_shndx ;
842 Elf64_Addr st_value ;
843 Elf64_Xword st_size ;
844};
845#line 201 "include/linux/elf.h"
846typedef struct elf64_sym Elf64_Sym;
847#line 445
848struct sock;
849#line 445
850struct sock;
851#line 446
852struct kobject;
853#line 446
854struct kobject;
855#line 447
856enum kobj_ns_type {
857 KOBJ_NS_TYPE_NONE = 0,
858 KOBJ_NS_TYPE_NET = 1,
859 KOBJ_NS_TYPES = 2
860} ;
861#line 453 "include/linux/elf.h"
862struct kobj_ns_type_operations {
863 enum kobj_ns_type type ;
864 void *(*grab_current_ns)(void) ;
865 void const *(*netlink_ns)(struct sock * ) ;
866 void const *(*initial_ns)(void) ;
867 void (*drop_ns)(void * ) ;
868};
869#line 57 "include/linux/kobject_ns.h"
870struct attribute {
871 char const *name ;
872 umode_t mode ;
873 struct lock_class_key *key ;
874 struct lock_class_key skey ;
875};
876#line 33 "include/linux/sysfs.h"
877struct attribute_group {
878 char const *name ;
879 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
880 struct attribute **attrs ;
881};
882#line 62 "include/linux/sysfs.h"
883struct bin_attribute {
884 struct attribute attr ;
885 size_t size ;
886 void *private ;
887 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
888 loff_t , size_t ) ;
889 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
890 loff_t , size_t ) ;
891 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
892};
893#line 98 "include/linux/sysfs.h"
894struct sysfs_ops {
895 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
896 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
897 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
898};
899#line 117
900struct sysfs_dirent;
901#line 117
902struct sysfs_dirent;
903#line 182 "include/linux/sysfs.h"
904struct kref {
905 atomic_t refcount ;
906};
907#line 49 "include/linux/kobject.h"
908struct kset;
909#line 49
910struct kobj_type;
911#line 49 "include/linux/kobject.h"
912struct kobject {
913 char const *name ;
914 struct list_head entry ;
915 struct kobject *parent ;
916 struct kset *kset ;
917 struct kobj_type *ktype ;
918 struct sysfs_dirent *sd ;
919 struct kref kref ;
920 unsigned char state_initialized : 1 ;
921 unsigned char state_in_sysfs : 1 ;
922 unsigned char state_add_uevent_sent : 1 ;
923 unsigned char state_remove_uevent_sent : 1 ;
924 unsigned char uevent_suppress : 1 ;
925};
926#line 107 "include/linux/kobject.h"
927struct kobj_type {
928 void (*release)(struct kobject * ) ;
929 struct sysfs_ops const *sysfs_ops ;
930 struct attribute **default_attrs ;
931 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
932 void const *(*namespace)(struct kobject * ) ;
933};
934#line 115 "include/linux/kobject.h"
935struct kobj_uevent_env {
936 char *envp[32U] ;
937 int envp_idx ;
938 char buf[2048U] ;
939 int buflen ;
940};
941#line 122 "include/linux/kobject.h"
942struct kset_uevent_ops {
943 int (* const filter)(struct kset * , struct kobject * ) ;
944 char const *(* const name)(struct kset * , struct kobject * ) ;
945 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
946};
947#line 139 "include/linux/kobject.h"
948struct kset {
949 struct list_head list ;
950 spinlock_t list_lock ;
951 struct kobject kobj ;
952 struct kset_uevent_ops const *uevent_ops ;
953};
954#line 215
955struct kernel_param;
956#line 215
957struct kernel_param;
958#line 216 "include/linux/kobject.h"
959struct kernel_param_ops {
960 int (*set)(char const * , struct kernel_param const * ) ;
961 int (*get)(char * , struct kernel_param const * ) ;
962 void (*free)(void * ) ;
963};
964#line 49 "include/linux/moduleparam.h"
965struct kparam_string;
966#line 49
967struct kparam_array;
968#line 49 "include/linux/moduleparam.h"
969union __anonunion_ldv_13363_134 {
970 void *arg ;
971 struct kparam_string const *str ;
972 struct kparam_array const *arr ;
973};
974#line 49 "include/linux/moduleparam.h"
975struct kernel_param {
976 char const *name ;
977 struct kernel_param_ops const *ops ;
978 u16 perm ;
979 s16 level ;
980 union __anonunion_ldv_13363_134 ldv_13363 ;
981};
982#line 61 "include/linux/moduleparam.h"
983struct kparam_string {
984 unsigned int maxlen ;
985 char *string ;
986};
987#line 67 "include/linux/moduleparam.h"
988struct kparam_array {
989 unsigned int max ;
990 unsigned int elemsize ;
991 unsigned int *num ;
992 struct kernel_param_ops const *ops ;
993 void *elem ;
994};
995#line 458 "include/linux/moduleparam.h"
996struct static_key {
997 atomic_t enabled ;
998};
999#line 225 "include/linux/jump_label.h"
1000struct tracepoint;
1001#line 225
1002struct tracepoint;
1003#line 226 "include/linux/jump_label.h"
1004struct tracepoint_func {
1005 void *func ;
1006 void *data ;
1007};
1008#line 29 "include/linux/tracepoint.h"
1009struct tracepoint {
1010 char const *name ;
1011 struct static_key key ;
1012 void (*regfunc)(void) ;
1013 void (*unregfunc)(void) ;
1014 struct tracepoint_func *funcs ;
1015};
1016#line 86 "include/linux/tracepoint.h"
1017struct kernel_symbol {
1018 unsigned long value ;
1019 char const *name ;
1020};
1021#line 27 "include/linux/export.h"
1022struct mod_arch_specific {
1023
1024};
1025#line 34 "include/linux/module.h"
1026struct module_param_attrs;
1027#line 34 "include/linux/module.h"
1028struct module_kobject {
1029 struct kobject kobj ;
1030 struct module *mod ;
1031 struct kobject *drivers_dir ;
1032 struct module_param_attrs *mp ;
1033};
1034#line 43 "include/linux/module.h"
1035struct module_attribute {
1036 struct attribute attr ;
1037 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
1038 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
1039 size_t ) ;
1040 void (*setup)(struct module * , char const * ) ;
1041 int (*test)(struct module * ) ;
1042 void (*free)(struct module * ) ;
1043};
1044#line 69
1045struct exception_table_entry;
1046#line 69
1047struct exception_table_entry;
1048#line 198
1049enum module_state {
1050 MODULE_STATE_LIVE = 0,
1051 MODULE_STATE_COMING = 1,
1052 MODULE_STATE_GOING = 2
1053} ;
1054#line 204 "include/linux/module.h"
1055struct module_ref {
1056 unsigned long incs ;
1057 unsigned long decs ;
1058};
1059#line 219
1060struct module_sect_attrs;
1061#line 219
1062struct module_notes_attrs;
1063#line 219
1064struct ftrace_event_call;
1065#line 219 "include/linux/module.h"
1066struct module {
1067 enum module_state state ;
1068 struct list_head list ;
1069 char name[56U] ;
1070 struct module_kobject mkobj ;
1071 struct module_attribute *modinfo_attrs ;
1072 char const *version ;
1073 char const *srcversion ;
1074 struct kobject *holders_dir ;
1075 struct kernel_symbol const *syms ;
1076 unsigned long const *crcs ;
1077 unsigned int num_syms ;
1078 struct kernel_param *kp ;
1079 unsigned int num_kp ;
1080 unsigned int num_gpl_syms ;
1081 struct kernel_symbol const *gpl_syms ;
1082 unsigned long const *gpl_crcs ;
1083 struct kernel_symbol const *unused_syms ;
1084 unsigned long const *unused_crcs ;
1085 unsigned int num_unused_syms ;
1086 unsigned int num_unused_gpl_syms ;
1087 struct kernel_symbol const *unused_gpl_syms ;
1088 unsigned long const *unused_gpl_crcs ;
1089 struct kernel_symbol const *gpl_future_syms ;
1090 unsigned long const *gpl_future_crcs ;
1091 unsigned int num_gpl_future_syms ;
1092 unsigned int num_exentries ;
1093 struct exception_table_entry *extable ;
1094 int (*init)(void) ;
1095 void *module_init ;
1096 void *module_core ;
1097 unsigned int init_size ;
1098 unsigned int core_size ;
1099 unsigned int init_text_size ;
1100 unsigned int core_text_size ;
1101 unsigned int init_ro_size ;
1102 unsigned int core_ro_size ;
1103 struct mod_arch_specific arch ;
1104 unsigned int taints ;
1105 unsigned int num_bugs ;
1106 struct list_head bug_list ;
1107 struct bug_entry *bug_table ;
1108 Elf64_Sym *symtab ;
1109 Elf64_Sym *core_symtab ;
1110 unsigned int num_symtab ;
1111 unsigned int core_num_syms ;
1112 char *strtab ;
1113 char *core_strtab ;
1114 struct module_sect_attrs *sect_attrs ;
1115 struct module_notes_attrs *notes_attrs ;
1116 char *args ;
1117 void *percpu ;
1118 unsigned int percpu_size ;
1119 unsigned int num_tracepoints ;
1120 struct tracepoint * const *tracepoints_ptrs ;
1121 unsigned int num_trace_bprintk_fmt ;
1122 char const **trace_bprintk_fmt_start ;
1123 struct ftrace_event_call **trace_events ;
1124 unsigned int num_trace_events ;
1125 struct list_head source_list ;
1126 struct list_head target_list ;
1127 struct task_struct *waiter ;
1128 void (*exit)(void) ;
1129 struct module_ref *refptr ;
1130 ctor_fn_t (**ctors)(void) ;
1131 unsigned int num_ctors ;
1132};
1133#line 88 "include/linux/kmemleak.h"
1134struct kmem_cache_cpu {
1135 void **freelist ;
1136 unsigned long tid ;
1137 struct page *page ;
1138 struct page *partial ;
1139 int node ;
1140 unsigned int stat[26U] ;
1141};
1142#line 55 "include/linux/slub_def.h"
1143struct kmem_cache_node {
1144 spinlock_t list_lock ;
1145 unsigned long nr_partial ;
1146 struct list_head partial ;
1147 atomic_long_t nr_slabs ;
1148 atomic_long_t total_objects ;
1149 struct list_head full ;
1150};
1151#line 66 "include/linux/slub_def.h"
1152struct kmem_cache_order_objects {
1153 unsigned long x ;
1154};
1155#line 76 "include/linux/slub_def.h"
1156struct kmem_cache {
1157 struct kmem_cache_cpu *cpu_slab ;
1158 unsigned long flags ;
1159 unsigned long min_partial ;
1160 int size ;
1161 int objsize ;
1162 int offset ;
1163 int cpu_partial ;
1164 struct kmem_cache_order_objects oo ;
1165 struct kmem_cache_order_objects max ;
1166 struct kmem_cache_order_objects min ;
1167 gfp_t allocflags ;
1168 int refcount ;
1169 void (*ctor)(void * ) ;
1170 int inuse ;
1171 int align ;
1172 int reserved ;
1173 char const *name ;
1174 struct list_head list ;
1175 struct kobject kobj ;
1176 int remote_node_defrag_ratio ;
1177 struct kmem_cache_node *node[1024U] ;
1178};
1179#line 15 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
1180struct prio_tree_node;
1181#line 15 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
1182struct raw_prio_tree_node {
1183 struct prio_tree_node *left ;
1184 struct prio_tree_node *right ;
1185 struct prio_tree_node *parent ;
1186};
1187#line 19 "include/linux/prio_tree.h"
1188struct prio_tree_node {
1189 struct prio_tree_node *left ;
1190 struct prio_tree_node *right ;
1191 struct prio_tree_node *parent ;
1192 unsigned long start ;
1193 unsigned long last ;
1194};
1195#line 27 "include/linux/prio_tree.h"
1196struct prio_tree_root {
1197 struct prio_tree_node *prio_tree_node ;
1198 unsigned short index_bits ;
1199 unsigned short raw ;
1200};
1201#line 116
1202struct address_space;
1203#line 116
1204struct address_space;
1205#line 117 "include/linux/prio_tree.h"
1206union __anonunion_ldv_14216_136 {
1207 unsigned long index ;
1208 void *freelist ;
1209};
1210#line 117 "include/linux/prio_tree.h"
1211struct __anonstruct_ldv_14226_140 {
1212 unsigned short inuse ;
1213 unsigned short objects : 15 ;
1214 unsigned char frozen : 1 ;
1215};
1216#line 117 "include/linux/prio_tree.h"
1217union __anonunion_ldv_14227_139 {
1218 atomic_t _mapcount ;
1219 struct __anonstruct_ldv_14226_140 ldv_14226 ;
1220};
1221#line 117 "include/linux/prio_tree.h"
1222struct __anonstruct_ldv_14229_138 {
1223 union __anonunion_ldv_14227_139 ldv_14227 ;
1224 atomic_t _count ;
1225};
1226#line 117 "include/linux/prio_tree.h"
1227union __anonunion_ldv_14230_137 {
1228 unsigned long counters ;
1229 struct __anonstruct_ldv_14229_138 ldv_14229 ;
1230};
1231#line 117 "include/linux/prio_tree.h"
1232struct __anonstruct_ldv_14231_135 {
1233 union __anonunion_ldv_14216_136 ldv_14216 ;
1234 union __anonunion_ldv_14230_137 ldv_14230 ;
1235};
1236#line 117 "include/linux/prio_tree.h"
1237struct __anonstruct_ldv_14238_142 {
1238 struct page *next ;
1239 int pages ;
1240 int pobjects ;
1241};
1242#line 117 "include/linux/prio_tree.h"
1243union __anonunion_ldv_14239_141 {
1244 struct list_head lru ;
1245 struct __anonstruct_ldv_14238_142 ldv_14238 ;
1246};
1247#line 117 "include/linux/prio_tree.h"
1248union __anonunion_ldv_14244_143 {
1249 unsigned long private ;
1250 struct kmem_cache *slab ;
1251 struct page *first_page ;
1252};
1253#line 117 "include/linux/prio_tree.h"
1254struct page {
1255 unsigned long flags ;
1256 struct address_space *mapping ;
1257 struct __anonstruct_ldv_14231_135 ldv_14231 ;
1258 union __anonunion_ldv_14239_141 ldv_14239 ;
1259 union __anonunion_ldv_14244_143 ldv_14244 ;
1260 unsigned long debug_flags ;
1261};
1262#line 192 "include/linux/mm_types.h"
1263struct __anonstruct_vm_set_145 {
1264 struct list_head list ;
1265 void *parent ;
1266 struct vm_area_struct *head ;
1267};
1268#line 192 "include/linux/mm_types.h"
1269union __anonunion_shared_144 {
1270 struct __anonstruct_vm_set_145 vm_set ;
1271 struct raw_prio_tree_node prio_tree_node ;
1272};
1273#line 192
1274struct anon_vma;
1275#line 192
1276struct vm_operations_struct;
1277#line 192
1278struct mempolicy;
1279#line 192 "include/linux/mm_types.h"
1280struct vm_area_struct {
1281 struct mm_struct *vm_mm ;
1282 unsigned long vm_start ;
1283 unsigned long vm_end ;
1284 struct vm_area_struct *vm_next ;
1285 struct vm_area_struct *vm_prev ;
1286 pgprot_t vm_page_prot ;
1287 unsigned long vm_flags ;
1288 struct rb_node vm_rb ;
1289 union __anonunion_shared_144 shared ;
1290 struct list_head anon_vma_chain ;
1291 struct anon_vma *anon_vma ;
1292 struct vm_operations_struct const *vm_ops ;
1293 unsigned long vm_pgoff ;
1294 struct file *vm_file ;
1295 void *vm_private_data ;
1296 struct mempolicy *vm_policy ;
1297};
1298#line 255 "include/linux/mm_types.h"
1299struct core_thread {
1300 struct task_struct *task ;
1301 struct core_thread *next ;
1302};
1303#line 261 "include/linux/mm_types.h"
1304struct core_state {
1305 atomic_t nr_threads ;
1306 struct core_thread dumper ;
1307 struct completion startup ;
1308};
1309#line 274 "include/linux/mm_types.h"
1310struct mm_rss_stat {
1311 atomic_long_t count[3U] ;
1312};
1313#line 287
1314struct linux_binfmt;
1315#line 287
1316struct mmu_notifier_mm;
1317#line 287 "include/linux/mm_types.h"
1318struct mm_struct {
1319 struct vm_area_struct *mmap ;
1320 struct rb_root mm_rb ;
1321 struct vm_area_struct *mmap_cache ;
1322 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1323 unsigned long , unsigned long ) ;
1324 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1325 unsigned long mmap_base ;
1326 unsigned long task_size ;
1327 unsigned long cached_hole_size ;
1328 unsigned long free_area_cache ;
1329 pgd_t *pgd ;
1330 atomic_t mm_users ;
1331 atomic_t mm_count ;
1332 int map_count ;
1333 spinlock_t page_table_lock ;
1334 struct rw_semaphore mmap_sem ;
1335 struct list_head mmlist ;
1336 unsigned long hiwater_rss ;
1337 unsigned long hiwater_vm ;
1338 unsigned long total_vm ;
1339 unsigned long locked_vm ;
1340 unsigned long pinned_vm ;
1341 unsigned long shared_vm ;
1342 unsigned long exec_vm ;
1343 unsigned long stack_vm ;
1344 unsigned long reserved_vm ;
1345 unsigned long def_flags ;
1346 unsigned long nr_ptes ;
1347 unsigned long start_code ;
1348 unsigned long end_code ;
1349 unsigned long start_data ;
1350 unsigned long end_data ;
1351 unsigned long start_brk ;
1352 unsigned long brk ;
1353 unsigned long start_stack ;
1354 unsigned long arg_start ;
1355 unsigned long arg_end ;
1356 unsigned long env_start ;
1357 unsigned long env_end ;
1358 unsigned long saved_auxv[44U] ;
1359 struct mm_rss_stat rss_stat ;
1360 struct linux_binfmt *binfmt ;
1361 cpumask_var_t cpu_vm_mask_var ;
1362 mm_context_t context ;
1363 unsigned int faultstamp ;
1364 unsigned int token_priority ;
1365 unsigned int last_interval ;
1366 unsigned long flags ;
1367 struct core_state *core_state ;
1368 spinlock_t ioctx_lock ;
1369 struct hlist_head ioctx_list ;
1370 struct task_struct *owner ;
1371 struct file *exe_file ;
1372 unsigned long num_exe_file_vmas ;
1373 struct mmu_notifier_mm *mmu_notifier_mm ;
1374 pgtable_t pmd_huge_pte ;
1375 struct cpumask cpumask_allocation ;
1376};
1377#line 93 "include/linux/bit_spinlock.h"
1378struct shrink_control {
1379 gfp_t gfp_mask ;
1380 unsigned long nr_to_scan ;
1381};
1382#line 14 "include/linux/shrinker.h"
1383struct shrinker {
1384 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1385 int seeks ;
1386 long batch ;
1387 struct list_head list ;
1388 atomic_long_t nr_in_batch ;
1389};
1390#line 43
1391struct file_ra_state;
1392#line 43
1393struct file_ra_state;
1394#line 44
1395struct user_struct;
1396#line 44
1397struct user_struct;
1398#line 45
1399struct writeback_control;
1400#line 45
1401struct writeback_control;
1402#line 178 "include/linux/mm.h"
1403struct vm_fault {
1404 unsigned int flags ;
1405 unsigned long pgoff ;
1406 void *virtual_address ;
1407 struct page *page ;
1408};
1409#line 195 "include/linux/mm.h"
1410struct vm_operations_struct {
1411 void (*open)(struct vm_area_struct * ) ;
1412 void (*close)(struct vm_area_struct * ) ;
1413 int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
1414 int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
1415 int (*access)(struct vm_area_struct * , unsigned long , void * , int , int ) ;
1416 int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
1417 struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long ) ;
1418 int (*migrate)(struct vm_area_struct * , nodemask_t const * , nodemask_t const * ,
1419 unsigned long ) ;
1420};
1421#line 244
1422struct inode;
1423#line 244
1424struct inode;
1425#line 1631 "include/linux/mm.h"
1426struct scatterlist {
1427 unsigned long sg_magic ;
1428 unsigned long page_link ;
1429 unsigned int offset ;
1430 unsigned int length ;
1431 dma_addr_t dma_address ;
1432 unsigned int dma_length ;
1433};
1434#line 17 "include/asm-generic/scatterlist.h"
1435struct sg_table {
1436 struct scatterlist *sgl ;
1437 unsigned int nents ;
1438 unsigned int orig_nents ;
1439};
1440#line 268 "include/linux/scatterlist.h"
1441struct scsi_cmnd;
1442#line 268
1443struct scsi_cmnd;
1444#line 564 "include/scsi/scsi.h"
1445struct klist_node;
1446#line 564
1447struct klist_node;
1448#line 37 "include/linux/klist.h"
1449struct klist_node {
1450 void *n_klist ;
1451 struct list_head n_node ;
1452 struct kref n_ref ;
1453};
1454#line 67
1455struct dma_map_ops;
1456#line 67 "include/linux/klist.h"
1457struct dev_archdata {
1458 void *acpi_handle ;
1459 struct dma_map_ops *dma_ops ;
1460 void *iommu ;
1461};
1462#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1463struct device_private;
1464#line 17
1465struct device_private;
1466#line 18
1467struct device_driver;
1468#line 18
1469struct device_driver;
1470#line 19
1471struct driver_private;
1472#line 19
1473struct driver_private;
1474#line 20
1475struct class;
1476#line 20
1477struct class;
1478#line 21
1479struct subsys_private;
1480#line 21
1481struct subsys_private;
1482#line 22
1483struct bus_type;
1484#line 22
1485struct bus_type;
1486#line 23
1487struct device_node;
1488#line 23
1489struct device_node;
1490#line 24
1491struct iommu_ops;
1492#line 24
1493struct iommu_ops;
1494#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1495struct bus_attribute {
1496 struct attribute attr ;
1497 ssize_t (*show)(struct bus_type * , char * ) ;
1498 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
1499};
1500#line 51 "include/linux/device.h"
1501struct device_attribute;
1502#line 51
1503struct driver_attribute;
1504#line 51 "include/linux/device.h"
1505struct bus_type {
1506 char const *name ;
1507 char const *dev_name ;
1508 struct device *dev_root ;
1509 struct bus_attribute *bus_attrs ;
1510 struct device_attribute *dev_attrs ;
1511 struct driver_attribute *drv_attrs ;
1512 int (*match)(struct device * , struct device_driver * ) ;
1513 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1514 int (*probe)(struct device * ) ;
1515 int (*remove)(struct device * ) ;
1516 void (*shutdown)(struct device * ) ;
1517 int (*suspend)(struct device * , pm_message_t ) ;
1518 int (*resume)(struct device * ) ;
1519 struct dev_pm_ops const *pm ;
1520 struct iommu_ops *iommu_ops ;
1521 struct subsys_private *p ;
1522};
1523#line 125
1524struct device_type;
1525#line 182
1526struct of_device_id;
1527#line 182 "include/linux/device.h"
1528struct device_driver {
1529 char const *name ;
1530 struct bus_type *bus ;
1531 struct module *owner ;
1532 char const *mod_name ;
1533 bool suppress_bind_attrs ;
1534 struct of_device_id const *of_match_table ;
1535 int (*probe)(struct device * ) ;
1536 int (*remove)(struct device * ) ;
1537 void (*shutdown)(struct device * ) ;
1538 int (*suspend)(struct device * , pm_message_t ) ;
1539 int (*resume)(struct device * ) ;
1540 struct attribute_group const **groups ;
1541 struct dev_pm_ops const *pm ;
1542 struct driver_private *p ;
1543};
1544#line 245 "include/linux/device.h"
1545struct driver_attribute {
1546 struct attribute attr ;
1547 ssize_t (*show)(struct device_driver * , char * ) ;
1548 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
1549};
1550#line 299
1551struct class_attribute;
1552#line 299 "include/linux/device.h"
1553struct class {
1554 char const *name ;
1555 struct module *owner ;
1556 struct class_attribute *class_attrs ;
1557 struct device_attribute *dev_attrs ;
1558 struct bin_attribute *dev_bin_attrs ;
1559 struct kobject *dev_kobj ;
1560 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1561 char *(*devnode)(struct device * , umode_t * ) ;
1562 void (*class_release)(struct class * ) ;
1563 void (*dev_release)(struct device * ) ;
1564 int (*suspend)(struct device * , pm_message_t ) ;
1565 int (*resume)(struct device * ) ;
1566 struct kobj_ns_type_operations const *ns_type ;
1567 void const *(*namespace)(struct device * ) ;
1568 struct dev_pm_ops const *pm ;
1569 struct subsys_private *p ;
1570};
1571#line 394 "include/linux/device.h"
1572struct class_attribute {
1573 struct attribute attr ;
1574 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1575 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1576 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
1577};
1578#line 447 "include/linux/device.h"
1579struct device_type {
1580 char const *name ;
1581 struct attribute_group const **groups ;
1582 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1583 char *(*devnode)(struct device * , umode_t * ) ;
1584 void (*release)(struct device * ) ;
1585 struct dev_pm_ops const *pm ;
1586};
1587#line 474 "include/linux/device.h"
1588struct device_attribute {
1589 struct attribute attr ;
1590 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1591 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1592 size_t ) ;
1593};
1594#line 557 "include/linux/device.h"
1595struct device_dma_parameters {
1596 unsigned int max_segment_size ;
1597 unsigned long segment_boundary_mask ;
1598};
1599#line 567
1600struct dma_coherent_mem;
1601#line 567 "include/linux/device.h"
1602struct device {
1603 struct device *parent ;
1604 struct device_private *p ;
1605 struct kobject kobj ;
1606 char const *init_name ;
1607 struct device_type const *type ;
1608 struct mutex mutex ;
1609 struct bus_type *bus ;
1610 struct device_driver *driver ;
1611 void *platform_data ;
1612 struct dev_pm_info power ;
1613 struct dev_pm_domain *pm_domain ;
1614 int numa_node ;
1615 u64 *dma_mask ;
1616 u64 coherent_dma_mask ;
1617 struct device_dma_parameters *dma_parms ;
1618 struct list_head dma_pools ;
1619 struct dma_coherent_mem *dma_mem ;
1620 struct dev_archdata archdata ;
1621 struct device_node *of_node ;
1622 dev_t devt ;
1623 u32 id ;
1624 spinlock_t devres_lock ;
1625 struct list_head devres_head ;
1626 struct klist_node knode_class ;
1627 struct class *class ;
1628 struct attribute_group const **groups ;
1629 void (*release)(struct device * ) ;
1630};
1631#line 681 "include/linux/device.h"
1632struct wakeup_source {
1633 char const *name ;
1634 struct list_head entry ;
1635 spinlock_t lock ;
1636 struct timer_list timer ;
1637 unsigned long timer_expires ;
1638 ktime_t total_time ;
1639 ktime_t max_time ;
1640 ktime_t last_time ;
1641 unsigned long event_count ;
1642 unsigned long active_count ;
1643 unsigned long relax_count ;
1644 unsigned long hit_count ;
1645 unsigned char active : 1 ;
1646};
1647#line 999 "include/linux/device.h"
1648struct dma_attrs {
1649 unsigned long flags[1U] ;
1650};
1651#line 67 "include/linux/dma-attrs.h"
1652enum dma_data_direction {
1653 DMA_BIDIRECTIONAL = 0,
1654 DMA_TO_DEVICE = 1,
1655 DMA_FROM_DEVICE = 2,
1656 DMA_NONE = 3
1657} ;
1658#line 74 "include/linux/dma-attrs.h"
1659struct dma_map_ops {
1660 void *(*alloc)(struct device * , size_t , dma_addr_t * , gfp_t , struct dma_attrs * ) ;
1661 void (*free)(struct device * , size_t , void * , dma_addr_t , struct dma_attrs * ) ;
1662 int (*mmap)(struct device * , struct vm_area_struct * , void * , dma_addr_t ,
1663 size_t , struct dma_attrs * ) ;
1664 dma_addr_t (*map_page)(struct device * , struct page * , unsigned long , size_t ,
1665 enum dma_data_direction , struct dma_attrs * ) ;
1666 void (*unmap_page)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
1667 struct dma_attrs * ) ;
1668 int (*map_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
1669 struct dma_attrs * ) ;
1670 void (*unmap_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
1671 struct dma_attrs * ) ;
1672 void (*sync_single_for_cpu)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
1673 void (*sync_single_for_device)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
1674 void (*sync_sg_for_cpu)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
1675 void (*sync_sg_for_device)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
1676 int (*mapping_error)(struct device * , dma_addr_t ) ;
1677 int (*dma_supported)(struct device * , u64 ) ;
1678 int (*set_dma_mask)(struct device * , u64 ) ;
1679 int is_phys ;
1680};
1681#line 93 "include/linux/capability.h"
1682struct kernel_cap_struct {
1683 __u32 cap[2U] ;
1684};
1685#line 96 "include/linux/capability.h"
1686typedef struct kernel_cap_struct kernel_cap_t;
1687#line 104
1688struct dentry;
1689#line 104
1690struct dentry;
1691#line 105
1692struct user_namespace;
1693#line 105
1694struct user_namespace;
1695#line 7 "include/asm-generic/cputime.h"
1696typedef unsigned long cputime_t;
1697#line 98 "include/linux/sem.h"
1698struct sem_undo_list;
1699#line 98 "include/linux/sem.h"
1700struct sysv_sem {
1701 struct sem_undo_list *undo_list ;
1702};
1703#line 107
1704struct siginfo;
1705#line 107
1706struct siginfo;
1707#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1708struct __anonstruct_sigset_t_147 {
1709 unsigned long sig[1U] ;
1710};
1711#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1712typedef struct __anonstruct_sigset_t_147 sigset_t;
1713#line 17 "include/asm-generic/signal-defs.h"
1714typedef void __signalfn_t(int );
1715#line 18 "include/asm-generic/signal-defs.h"
1716typedef __signalfn_t *__sighandler_t;
1717#line 20 "include/asm-generic/signal-defs.h"
1718typedef void __restorefn_t(void);
1719#line 21 "include/asm-generic/signal-defs.h"
1720typedef __restorefn_t *__sigrestore_t;
1721#line 126 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1722struct sigaction {
1723 __sighandler_t sa_handler ;
1724 unsigned long sa_flags ;
1725 __sigrestore_t sa_restorer ;
1726 sigset_t sa_mask ;
1727};
1728#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1729struct k_sigaction {
1730 struct sigaction sa ;
1731};
1732#line 185 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1733union sigval {
1734 int sival_int ;
1735 void *sival_ptr ;
1736};
1737#line 10 "include/asm-generic/siginfo.h"
1738typedef union sigval sigval_t;
1739#line 11 "include/asm-generic/siginfo.h"
1740struct __anonstruct__kill_149 {
1741 __kernel_pid_t _pid ;
1742 __kernel_uid32_t _uid ;
1743};
1744#line 11 "include/asm-generic/siginfo.h"
1745struct __anonstruct__timer_150 {
1746 __kernel_timer_t _tid ;
1747 int _overrun ;
1748 char _pad[0U] ;
1749 sigval_t _sigval ;
1750 int _sys_private ;
1751};
1752#line 11 "include/asm-generic/siginfo.h"
1753struct __anonstruct__rt_151 {
1754 __kernel_pid_t _pid ;
1755 __kernel_uid32_t _uid ;
1756 sigval_t _sigval ;
1757};
1758#line 11 "include/asm-generic/siginfo.h"
1759struct __anonstruct__sigchld_152 {
1760 __kernel_pid_t _pid ;
1761 __kernel_uid32_t _uid ;
1762 int _status ;
1763 __kernel_clock_t _utime ;
1764 __kernel_clock_t _stime ;
1765};
1766#line 11 "include/asm-generic/siginfo.h"
1767struct __anonstruct__sigfault_153 {
1768 void *_addr ;
1769 short _addr_lsb ;
1770};
1771#line 11 "include/asm-generic/siginfo.h"
1772struct __anonstruct__sigpoll_154 {
1773 long _band ;
1774 int _fd ;
1775};
1776#line 11 "include/asm-generic/siginfo.h"
1777union __anonunion__sifields_148 {
1778 int _pad[28U] ;
1779 struct __anonstruct__kill_149 _kill ;
1780 struct __anonstruct__timer_150 _timer ;
1781 struct __anonstruct__rt_151 _rt ;
1782 struct __anonstruct__sigchld_152 _sigchld ;
1783 struct __anonstruct__sigfault_153 _sigfault ;
1784 struct __anonstruct__sigpoll_154 _sigpoll ;
1785};
1786#line 11 "include/asm-generic/siginfo.h"
1787struct siginfo {
1788 int si_signo ;
1789 int si_errno ;
1790 int si_code ;
1791 union __anonunion__sifields_148 _sifields ;
1792};
1793#line 102 "include/asm-generic/siginfo.h"
1794typedef struct siginfo siginfo_t;
1795#line 24 "include/linux/signal.h"
1796struct sigpending {
1797 struct list_head list ;
1798 sigset_t signal ;
1799};
1800#line 388
1801enum pid_type {
1802 PIDTYPE_PID = 0,
1803 PIDTYPE_PGID = 1,
1804 PIDTYPE_SID = 2,
1805 PIDTYPE_MAX = 3
1806} ;
1807#line 395
1808struct pid_namespace;
1809#line 395 "include/linux/signal.h"
1810struct upid {
1811 int nr ;
1812 struct pid_namespace *ns ;
1813 struct hlist_node pid_chain ;
1814};
1815#line 56 "include/linux/pid.h"
1816struct pid {
1817 atomic_t count ;
1818 unsigned int level ;
1819 struct hlist_head tasks[3U] ;
1820 struct rcu_head rcu ;
1821 struct upid numbers[1U] ;
1822};
1823#line 68 "include/linux/pid.h"
1824struct pid_link {
1825 struct hlist_node node ;
1826 struct pid *pid ;
1827};
1828#line 175 "include/linux/pid.h"
1829struct percpu_counter {
1830 raw_spinlock_t lock ;
1831 s64 count ;
1832 struct list_head list ;
1833 s32 *counters ;
1834};
1835#line 45 "include/linux/proportions.h"
1836struct prop_local_percpu {
1837 struct percpu_counter events ;
1838 int shift ;
1839 unsigned long period ;
1840 raw_spinlock_t lock ;
1841};
1842#line 10 "include/linux/seccomp.h"
1843struct __anonstruct_seccomp_t_157 {
1844 int mode ;
1845};
1846#line 10 "include/linux/seccomp.h"
1847typedef struct __anonstruct_seccomp_t_157 seccomp_t;
1848#line 427 "include/linux/rculist.h"
1849struct plist_head {
1850 struct list_head node_list ;
1851};
1852#line 84 "include/linux/plist.h"
1853struct plist_node {
1854 int prio ;
1855 struct list_head prio_list ;
1856 struct list_head node_list ;
1857};
1858#line 38 "include/linux/rtmutex.h"
1859struct rt_mutex_waiter;
1860#line 38
1861struct rt_mutex_waiter;
1862#line 41 "include/linux/resource.h"
1863struct rlimit {
1864 unsigned long rlim_cur ;
1865 unsigned long rlim_max ;
1866};
1867#line 85 "include/linux/resource.h"
1868struct timerqueue_node {
1869 struct rb_node node ;
1870 ktime_t expires ;
1871};
1872#line 12 "include/linux/timerqueue.h"
1873struct timerqueue_head {
1874 struct rb_root head ;
1875 struct timerqueue_node *next ;
1876};
1877#line 50
1878struct hrtimer_clock_base;
1879#line 50
1880struct hrtimer_clock_base;
1881#line 51
1882struct hrtimer_cpu_base;
1883#line 51
1884struct hrtimer_cpu_base;
1885#line 60
1886enum hrtimer_restart {
1887 HRTIMER_NORESTART = 0,
1888 HRTIMER_RESTART = 1
1889} ;
1890#line 65 "include/linux/timerqueue.h"
1891struct hrtimer {
1892 struct timerqueue_node node ;
1893 ktime_t _softexpires ;
1894 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1895 struct hrtimer_clock_base *base ;
1896 unsigned long state ;
1897 int start_pid ;
1898 void *start_site ;
1899 char start_comm[16U] ;
1900};
1901#line 132 "include/linux/hrtimer.h"
1902struct hrtimer_clock_base {
1903 struct hrtimer_cpu_base *cpu_base ;
1904 int index ;
1905 clockid_t clockid ;
1906 struct timerqueue_head active ;
1907 ktime_t resolution ;
1908 ktime_t (*get_time)(void) ;
1909 ktime_t softirq_time ;
1910 ktime_t offset ;
1911};
1912#line 162 "include/linux/hrtimer.h"
1913struct hrtimer_cpu_base {
1914 raw_spinlock_t lock ;
1915 unsigned long active_bases ;
1916 ktime_t expires_next ;
1917 int hres_active ;
1918 int hang_detected ;
1919 unsigned long nr_events ;
1920 unsigned long nr_retries ;
1921 unsigned long nr_hangs ;
1922 ktime_t max_hang_time ;
1923 struct hrtimer_clock_base clock_base[3U] ;
1924};
1925#line 452 "include/linux/hrtimer.h"
1926struct task_io_accounting {
1927 u64 rchar ;
1928 u64 wchar ;
1929 u64 syscr ;
1930 u64 syscw ;
1931 u64 read_bytes ;
1932 u64 write_bytes ;
1933 u64 cancelled_write_bytes ;
1934};
1935#line 45 "include/linux/task_io_accounting.h"
1936struct latency_record {
1937 unsigned long backtrace[12U] ;
1938 unsigned int count ;
1939 unsigned long time ;
1940 unsigned long max ;
1941};
1942#line 29 "include/linux/key.h"
1943typedef int32_t key_serial_t;
1944#line 32 "include/linux/key.h"
1945typedef uint32_t key_perm_t;
1946#line 33
1947struct key;
1948#line 33
1949struct key;
1950#line 34
1951struct signal_struct;
1952#line 34
1953struct signal_struct;
1954#line 35
1955struct key_type;
1956#line 35
1957struct key_type;
1958#line 37
1959struct keyring_list;
1960#line 37
1961struct keyring_list;
1962#line 115
1963struct key_user;
1964#line 115 "include/linux/key.h"
1965union __anonunion_ldv_19571_158 {
1966 time_t expiry ;
1967 time_t revoked_at ;
1968};
1969#line 115 "include/linux/key.h"
1970union __anonunion_type_data_159 {
1971 struct list_head link ;
1972 unsigned long x[2U] ;
1973 void *p[2U] ;
1974 int reject_error ;
1975};
1976#line 115 "include/linux/key.h"
1977union __anonunion_payload_160 {
1978 unsigned long value ;
1979 void *rcudata ;
1980 void *data ;
1981 struct keyring_list *subscriptions ;
1982};
1983#line 115 "include/linux/key.h"
1984struct key {
1985 atomic_t usage ;
1986 key_serial_t serial ;
1987 struct rb_node serial_node ;
1988 struct key_type *type ;
1989 struct rw_semaphore sem ;
1990 struct key_user *user ;
1991 void *security ;
1992 union __anonunion_ldv_19571_158 ldv_19571 ;
1993 uid_t uid ;
1994 gid_t gid ;
1995 key_perm_t perm ;
1996 unsigned short quotalen ;
1997 unsigned short datalen ;
1998 unsigned long flags ;
1999 char *description ;
2000 union __anonunion_type_data_159 type_data ;
2001 union __anonunion_payload_160 payload ;
2002};
2003#line 316
2004struct audit_context;
2005#line 316
2006struct audit_context;
2007#line 27 "include/linux/selinux.h"
2008struct group_info {
2009 atomic_t usage ;
2010 int ngroups ;
2011 int nblocks ;
2012 gid_t small_block[32U] ;
2013 gid_t *blocks[0U] ;
2014};
2015#line 77 "include/linux/cred.h"
2016struct thread_group_cred {
2017 atomic_t usage ;
2018 pid_t tgid ;
2019 spinlock_t lock ;
2020 struct key *session_keyring ;
2021 struct key *process_keyring ;
2022 struct rcu_head rcu ;
2023};
2024#line 91 "include/linux/cred.h"
2025struct cred {
2026 atomic_t usage ;
2027 atomic_t subscribers ;
2028 void *put_addr ;
2029 unsigned int magic ;
2030 uid_t uid ;
2031 gid_t gid ;
2032 uid_t suid ;
2033 gid_t sgid ;
2034 uid_t euid ;
2035 gid_t egid ;
2036 uid_t fsuid ;
2037 gid_t fsgid ;
2038 unsigned int securebits ;
2039 kernel_cap_t cap_inheritable ;
2040 kernel_cap_t cap_permitted ;
2041 kernel_cap_t cap_effective ;
2042 kernel_cap_t cap_bset ;
2043 unsigned char jit_keyring ;
2044 struct key *thread_keyring ;
2045 struct key *request_key_auth ;
2046 struct thread_group_cred *tgcred ;
2047 void *security ;
2048 struct user_struct *user ;
2049 struct user_namespace *user_ns ;
2050 struct group_info *group_info ;
2051 struct rcu_head rcu ;
2052};
2053#line 264
2054struct llist_node;
2055#line 64 "include/linux/llist.h"
2056struct llist_node {
2057 struct llist_node *next ;
2058};
2059#line 185
2060struct futex_pi_state;
2061#line 185
2062struct futex_pi_state;
2063#line 186
2064struct robust_list_head;
2065#line 186
2066struct robust_list_head;
2067#line 187
2068struct bio_list;
2069#line 187
2070struct bio_list;
2071#line 188
2072struct fs_struct;
2073#line 188
2074struct fs_struct;
2075#line 189
2076struct perf_event_context;
2077#line 189
2078struct perf_event_context;
2079#line 190
2080struct blk_plug;
2081#line 190
2082struct blk_plug;
2083#line 149 "include/linux/sched.h"
2084struct cfs_rq;
2085#line 149
2086struct cfs_rq;
2087#line 44 "include/linux/aio_abi.h"
2088struct io_event {
2089 __u64 data ;
2090 __u64 obj ;
2091 __s64 res ;
2092 __s64 res2 ;
2093};
2094#line 106 "include/linux/aio_abi.h"
2095struct iovec {
2096 void *iov_base ;
2097 __kernel_size_t iov_len ;
2098};
2099#line 54 "include/linux/uio.h"
2100struct kioctx;
2101#line 54
2102struct kioctx;
2103#line 55 "include/linux/uio.h"
2104union __anonunion_ki_obj_161 {
2105 void *user ;
2106 struct task_struct *tsk ;
2107};
2108#line 55
2109struct eventfd_ctx;
2110#line 55 "include/linux/uio.h"
2111struct kiocb {
2112 struct list_head ki_run_list ;
2113 unsigned long ki_flags ;
2114 int ki_users ;
2115 unsigned int ki_key ;
2116 struct file *ki_filp ;
2117 struct kioctx *ki_ctx ;
2118 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
2119 ssize_t (*ki_retry)(struct kiocb * ) ;
2120 void (*ki_dtor)(struct kiocb * ) ;
2121 union __anonunion_ki_obj_161 ki_obj ;
2122 __u64 ki_user_data ;
2123 loff_t ki_pos ;
2124 void *private ;
2125 unsigned short ki_opcode ;
2126 size_t ki_nbytes ;
2127 char *ki_buf ;
2128 size_t ki_left ;
2129 struct iovec ki_inline_vec ;
2130 struct iovec *ki_iovec ;
2131 unsigned long ki_nr_segs ;
2132 unsigned long ki_cur_seg ;
2133 struct list_head ki_list ;
2134 struct list_head ki_batch ;
2135 struct eventfd_ctx *ki_eventfd ;
2136};
2137#line 162 "include/linux/aio.h"
2138struct aio_ring_info {
2139 unsigned long mmap_base ;
2140 unsigned long mmap_size ;
2141 struct page **ring_pages ;
2142 spinlock_t ring_lock ;
2143 long nr_pages ;
2144 unsigned int nr ;
2145 unsigned int tail ;
2146 struct page *internal_pages[8U] ;
2147};
2148#line 178 "include/linux/aio.h"
2149struct kioctx {
2150 atomic_t users ;
2151 int dead ;
2152 struct mm_struct *mm ;
2153 unsigned long user_id ;
2154 struct hlist_node list ;
2155 wait_queue_head_t wait ;
2156 spinlock_t ctx_lock ;
2157 int reqs_active ;
2158 struct list_head active_reqs ;
2159 struct list_head run_list ;
2160 unsigned int max_reqs ;
2161 struct aio_ring_info ring_info ;
2162 struct delayed_work wq ;
2163 struct rcu_head rcu_head ;
2164};
2165#line 406 "include/linux/sched.h"
2166struct sighand_struct {
2167 atomic_t count ;
2168 struct k_sigaction action[64U] ;
2169 spinlock_t siglock ;
2170 wait_queue_head_t signalfd_wqh ;
2171};
2172#line 449 "include/linux/sched.h"
2173struct pacct_struct {
2174 int ac_flag ;
2175 long ac_exitcode ;
2176 unsigned long ac_mem ;
2177 cputime_t ac_utime ;
2178 cputime_t ac_stime ;
2179 unsigned long ac_minflt ;
2180 unsigned long ac_majflt ;
2181};
2182#line 457 "include/linux/sched.h"
2183struct cpu_itimer {
2184 cputime_t expires ;
2185 cputime_t incr ;
2186 u32 error ;
2187 u32 incr_error ;
2188};
2189#line 464 "include/linux/sched.h"
2190struct task_cputime {
2191 cputime_t utime ;
2192 cputime_t stime ;
2193 unsigned long long sum_exec_runtime ;
2194};
2195#line 481 "include/linux/sched.h"
2196struct thread_group_cputimer {
2197 struct task_cputime cputime ;
2198 int running ;
2199 raw_spinlock_t lock ;
2200};
2201#line 517
2202struct autogroup;
2203#line 517
2204struct autogroup;
2205#line 518
2206struct tty_struct;
2207#line 518
2208struct taskstats;
2209#line 518
2210struct tty_audit_buf;
2211#line 518 "include/linux/sched.h"
2212struct signal_struct {
2213 atomic_t sigcnt ;
2214 atomic_t live ;
2215 int nr_threads ;
2216 wait_queue_head_t wait_chldexit ;
2217 struct task_struct *curr_target ;
2218 struct sigpending shared_pending ;
2219 int group_exit_code ;
2220 int notify_count ;
2221 struct task_struct *group_exit_task ;
2222 int group_stop_count ;
2223 unsigned int flags ;
2224 unsigned char is_child_subreaper : 1 ;
2225 unsigned char has_child_subreaper : 1 ;
2226 struct list_head posix_timers ;
2227 struct hrtimer real_timer ;
2228 struct pid *leader_pid ;
2229 ktime_t it_real_incr ;
2230 struct cpu_itimer it[2U] ;
2231 struct thread_group_cputimer cputimer ;
2232 struct task_cputime cputime_expires ;
2233 struct list_head cpu_timers[3U] ;
2234 struct pid *tty_old_pgrp ;
2235 int leader ;
2236 struct tty_struct *tty ;
2237 struct autogroup *autogroup ;
2238 cputime_t utime ;
2239 cputime_t stime ;
2240 cputime_t cutime ;
2241 cputime_t cstime ;
2242 cputime_t gtime ;
2243 cputime_t cgtime ;
2244 cputime_t prev_utime ;
2245 cputime_t prev_stime ;
2246 unsigned long nvcsw ;
2247 unsigned long nivcsw ;
2248 unsigned long cnvcsw ;
2249 unsigned long cnivcsw ;
2250 unsigned long min_flt ;
2251 unsigned long maj_flt ;
2252 unsigned long cmin_flt ;
2253 unsigned long cmaj_flt ;
2254 unsigned long inblock ;
2255 unsigned long oublock ;
2256 unsigned long cinblock ;
2257 unsigned long coublock ;
2258 unsigned long maxrss ;
2259 unsigned long cmaxrss ;
2260 struct task_io_accounting ioac ;
2261 unsigned long long sum_sched_runtime ;
2262 struct rlimit rlim[16U] ;
2263 struct pacct_struct pacct ;
2264 struct taskstats *stats ;
2265 unsigned int audit_tty ;
2266 struct tty_audit_buf *tty_audit_buf ;
2267 struct rw_semaphore group_rwsem ;
2268 int oom_adj ;
2269 int oom_score_adj ;
2270 int oom_score_adj_min ;
2271 struct mutex cred_guard_mutex ;
2272};
2273#line 699 "include/linux/sched.h"
2274struct user_struct {
2275 atomic_t __count ;
2276 atomic_t processes ;
2277 atomic_t files ;
2278 atomic_t sigpending ;
2279 atomic_t inotify_watches ;
2280 atomic_t inotify_devs ;
2281 atomic_t fanotify_listeners ;
2282 atomic_long_t epoll_watches ;
2283 unsigned long mq_bytes ;
2284 unsigned long locked_shm ;
2285 struct key *uid_keyring ;
2286 struct key *session_keyring ;
2287 struct hlist_node uidhash_node ;
2288 uid_t uid ;
2289 struct user_namespace *user_ns ;
2290 atomic_long_t locked_vm ;
2291};
2292#line 744
2293struct backing_dev_info;
2294#line 744
2295struct backing_dev_info;
2296#line 745
2297struct reclaim_state;
2298#line 745
2299struct reclaim_state;
2300#line 746 "include/linux/sched.h"
2301struct sched_info {
2302 unsigned long pcount ;
2303 unsigned long long run_delay ;
2304 unsigned long long last_arrival ;
2305 unsigned long long last_queued ;
2306};
2307#line 760 "include/linux/sched.h"
2308struct task_delay_info {
2309 spinlock_t lock ;
2310 unsigned int flags ;
2311 struct timespec blkio_start ;
2312 struct timespec blkio_end ;
2313 u64 blkio_delay ;
2314 u64 swapin_delay ;
2315 u32 blkio_count ;
2316 u32 swapin_count ;
2317 struct timespec freepages_start ;
2318 struct timespec freepages_end ;
2319 u64 freepages_delay ;
2320 u32 freepages_count ;
2321};
2322#line 1069
2323struct io_context;
2324#line 1069
2325struct io_context;
2326#line 1097
2327struct pipe_inode_info;
2328#line 1097
2329struct pipe_inode_info;
2330#line 1099
2331struct rq;
2332#line 1099
2333struct rq;
2334#line 1100 "include/linux/sched.h"
2335struct sched_class {
2336 struct sched_class const *next ;
2337 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
2338 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
2339 void (*yield_task)(struct rq * ) ;
2340 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
2341 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
2342 struct task_struct *(*pick_next_task)(struct rq * ) ;
2343 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
2344 int (*select_task_rq)(struct task_struct * , int , int ) ;
2345 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
2346 void (*post_schedule)(struct rq * ) ;
2347 void (*task_waking)(struct task_struct * ) ;
2348 void (*task_woken)(struct rq * , struct task_struct * ) ;
2349 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
2350 void (*rq_online)(struct rq * ) ;
2351 void (*rq_offline)(struct rq * ) ;
2352 void (*set_curr_task)(struct rq * ) ;
2353 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
2354 void (*task_fork)(struct task_struct * ) ;
2355 void (*switched_from)(struct rq * , struct task_struct * ) ;
2356 void (*switched_to)(struct rq * , struct task_struct * ) ;
2357 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
2358 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
2359 void (*task_move_group)(struct task_struct * , int ) ;
2360};
2361#line 1165 "include/linux/sched.h"
2362struct load_weight {
2363 unsigned long weight ;
2364 unsigned long inv_weight ;
2365};
2366#line 1170 "include/linux/sched.h"
2367struct sched_statistics {
2368 u64 wait_start ;
2369 u64 wait_max ;
2370 u64 wait_count ;
2371 u64 wait_sum ;
2372 u64 iowait_count ;
2373 u64 iowait_sum ;
2374 u64 sleep_start ;
2375 u64 sleep_max ;
2376 s64 sum_sleep_runtime ;
2377 u64 block_start ;
2378 u64 block_max ;
2379 u64 exec_max ;
2380 u64 slice_max ;
2381 u64 nr_migrations_cold ;
2382 u64 nr_failed_migrations_affine ;
2383 u64 nr_failed_migrations_running ;
2384 u64 nr_failed_migrations_hot ;
2385 u64 nr_forced_migrations ;
2386 u64 nr_wakeups ;
2387 u64 nr_wakeups_sync ;
2388 u64 nr_wakeups_migrate ;
2389 u64 nr_wakeups_local ;
2390 u64 nr_wakeups_remote ;
2391 u64 nr_wakeups_affine ;
2392 u64 nr_wakeups_affine_attempts ;
2393 u64 nr_wakeups_passive ;
2394 u64 nr_wakeups_idle ;
2395};
2396#line 1205 "include/linux/sched.h"
2397struct sched_entity {
2398 struct load_weight load ;
2399 struct rb_node run_node ;
2400 struct list_head group_node ;
2401 unsigned int on_rq ;
2402 u64 exec_start ;
2403 u64 sum_exec_runtime ;
2404 u64 vruntime ;
2405 u64 prev_sum_exec_runtime ;
2406 u64 nr_migrations ;
2407 struct sched_statistics statistics ;
2408 struct sched_entity *parent ;
2409 struct cfs_rq *cfs_rq ;
2410 struct cfs_rq *my_q ;
2411};
2412#line 1231
2413struct rt_rq;
2414#line 1231 "include/linux/sched.h"
2415struct sched_rt_entity {
2416 struct list_head run_list ;
2417 unsigned long timeout ;
2418 unsigned int time_slice ;
2419 int nr_cpus_allowed ;
2420 struct sched_rt_entity *back ;
2421 struct sched_rt_entity *parent ;
2422 struct rt_rq *rt_rq ;
2423 struct rt_rq *my_q ;
2424};
2425#line 1255
2426struct mem_cgroup;
2427#line 1255 "include/linux/sched.h"
2428struct memcg_batch_info {
2429 int do_batch ;
2430 struct mem_cgroup *memcg ;
2431 unsigned long nr_pages ;
2432 unsigned long memsw_nr_pages ;
2433};
2434#line 1616
2435struct files_struct;
2436#line 1616
2437struct css_set;
2438#line 1616
2439struct compat_robust_list_head;
2440#line 1616 "include/linux/sched.h"
2441struct task_struct {
2442 long volatile state ;
2443 void *stack ;
2444 atomic_t usage ;
2445 unsigned int flags ;
2446 unsigned int ptrace ;
2447 struct llist_node wake_entry ;
2448 int on_cpu ;
2449 int on_rq ;
2450 int prio ;
2451 int static_prio ;
2452 int normal_prio ;
2453 unsigned int rt_priority ;
2454 struct sched_class const *sched_class ;
2455 struct sched_entity se ;
2456 struct sched_rt_entity rt ;
2457 struct hlist_head preempt_notifiers ;
2458 unsigned char fpu_counter ;
2459 unsigned int policy ;
2460 cpumask_t cpus_allowed ;
2461 struct sched_info sched_info ;
2462 struct list_head tasks ;
2463 struct plist_node pushable_tasks ;
2464 struct mm_struct *mm ;
2465 struct mm_struct *active_mm ;
2466 unsigned char brk_randomized : 1 ;
2467 int exit_state ;
2468 int exit_code ;
2469 int exit_signal ;
2470 int pdeath_signal ;
2471 unsigned int jobctl ;
2472 unsigned int personality ;
2473 unsigned char did_exec : 1 ;
2474 unsigned char in_execve : 1 ;
2475 unsigned char in_iowait : 1 ;
2476 unsigned char sched_reset_on_fork : 1 ;
2477 unsigned char sched_contributes_to_load : 1 ;
2478 unsigned char irq_thread : 1 ;
2479 pid_t pid ;
2480 pid_t tgid ;
2481 unsigned long stack_canary ;
2482 struct task_struct *real_parent ;
2483 struct task_struct *parent ;
2484 struct list_head children ;
2485 struct list_head sibling ;
2486 struct task_struct *group_leader ;
2487 struct list_head ptraced ;
2488 struct list_head ptrace_entry ;
2489 struct pid_link pids[3U] ;
2490 struct list_head thread_group ;
2491 struct completion *vfork_done ;
2492 int *set_child_tid ;
2493 int *clear_child_tid ;
2494 cputime_t utime ;
2495 cputime_t stime ;
2496 cputime_t utimescaled ;
2497 cputime_t stimescaled ;
2498 cputime_t gtime ;
2499 cputime_t prev_utime ;
2500 cputime_t prev_stime ;
2501 unsigned long nvcsw ;
2502 unsigned long nivcsw ;
2503 struct timespec start_time ;
2504 struct timespec real_start_time ;
2505 unsigned long min_flt ;
2506 unsigned long maj_flt ;
2507 struct task_cputime cputime_expires ;
2508 struct list_head cpu_timers[3U] ;
2509 struct cred const *real_cred ;
2510 struct cred const *cred ;
2511 struct cred *replacement_session_keyring ;
2512 char comm[16U] ;
2513 int link_count ;
2514 int total_link_count ;
2515 struct sysv_sem sysvsem ;
2516 unsigned long last_switch_count ;
2517 struct thread_struct thread ;
2518 struct fs_struct *fs ;
2519 struct files_struct *files ;
2520 struct nsproxy *nsproxy ;
2521 struct signal_struct *signal ;
2522 struct sighand_struct *sighand ;
2523 sigset_t blocked ;
2524 sigset_t real_blocked ;
2525 sigset_t saved_sigmask ;
2526 struct sigpending pending ;
2527 unsigned long sas_ss_sp ;
2528 size_t sas_ss_size ;
2529 int (*notifier)(void * ) ;
2530 void *notifier_data ;
2531 sigset_t *notifier_mask ;
2532 struct audit_context *audit_context ;
2533 uid_t loginuid ;
2534 unsigned int sessionid ;
2535 seccomp_t seccomp ;
2536 u32 parent_exec_id ;
2537 u32 self_exec_id ;
2538 spinlock_t alloc_lock ;
2539 raw_spinlock_t pi_lock ;
2540 struct plist_head pi_waiters ;
2541 struct rt_mutex_waiter *pi_blocked_on ;
2542 struct mutex_waiter *blocked_on ;
2543 unsigned int irq_events ;
2544 unsigned long hardirq_enable_ip ;
2545 unsigned long hardirq_disable_ip ;
2546 unsigned int hardirq_enable_event ;
2547 unsigned int hardirq_disable_event ;
2548 int hardirqs_enabled ;
2549 int hardirq_context ;
2550 unsigned long softirq_disable_ip ;
2551 unsigned long softirq_enable_ip ;
2552 unsigned int softirq_disable_event ;
2553 unsigned int softirq_enable_event ;
2554 int softirqs_enabled ;
2555 int softirq_context ;
2556 u64 curr_chain_key ;
2557 int lockdep_depth ;
2558 unsigned int lockdep_recursion ;
2559 struct held_lock held_locks[48U] ;
2560 gfp_t lockdep_reclaim_gfp ;
2561 void *journal_info ;
2562 struct bio_list *bio_list ;
2563 struct blk_plug *plug ;
2564 struct reclaim_state *reclaim_state ;
2565 struct backing_dev_info *backing_dev_info ;
2566 struct io_context *io_context ;
2567 unsigned long ptrace_message ;
2568 siginfo_t *last_siginfo ;
2569 struct task_io_accounting ioac ;
2570 u64 acct_rss_mem1 ;
2571 u64 acct_vm_mem1 ;
2572 cputime_t acct_timexpd ;
2573 nodemask_t mems_allowed ;
2574 seqcount_t mems_allowed_seq ;
2575 int cpuset_mem_spread_rotor ;
2576 int cpuset_slab_spread_rotor ;
2577 struct css_set *cgroups ;
2578 struct list_head cg_list ;
2579 struct robust_list_head *robust_list ;
2580 struct compat_robust_list_head *compat_robust_list ;
2581 struct list_head pi_state_list ;
2582 struct futex_pi_state *pi_state_cache ;
2583 struct perf_event_context *perf_event_ctxp[2U] ;
2584 struct mutex perf_event_mutex ;
2585 struct list_head perf_event_list ;
2586 struct mempolicy *mempolicy ;
2587 short il_next ;
2588 short pref_node_fork ;
2589 struct rcu_head rcu ;
2590 struct pipe_inode_info *splice_pipe ;
2591 struct task_delay_info *delays ;
2592 int make_it_fail ;
2593 int nr_dirtied ;
2594 int nr_dirtied_pause ;
2595 unsigned long dirty_paused_when ;
2596 int latency_record_count ;
2597 struct latency_record latency_record[32U] ;
2598 unsigned long timer_slack_ns ;
2599 unsigned long default_timer_slack_ns ;
2600 struct list_head *scm_work_list ;
2601 unsigned long trace ;
2602 unsigned long trace_recursion ;
2603 struct memcg_batch_info memcg_batch ;
2604 atomic_t ptrace_bp_refcnt ;
2605};
2606#line 52 "include/linux/genhd.h"
2607struct bio;
2608#line 52
2609struct bio;
2610#line 53
2611struct bio_integrity_payload;
2612#line 53
2613struct bio_integrity_payload;
2614#line 54
2615struct block_device;
2616#line 54
2617struct block_device;
2618#line 17 "include/linux/blk_types.h"
2619typedef void bio_end_io_t(struct bio * , int );
2620#line 18 "include/linux/blk_types.h"
2621typedef void bio_destructor_t(struct bio * );
2622#line 19 "include/linux/blk_types.h"
2623struct bio_vec {
2624 struct page *bv_page ;
2625 unsigned int bv_len ;
2626 unsigned int bv_offset ;
2627};
2628#line 28 "include/linux/blk_types.h"
2629struct bio {
2630 sector_t bi_sector ;
2631 struct bio *bi_next ;
2632 struct block_device *bi_bdev ;
2633 unsigned long bi_flags ;
2634 unsigned long bi_rw ;
2635 unsigned short bi_vcnt ;
2636 unsigned short bi_idx ;
2637 unsigned int bi_phys_segments ;
2638 unsigned int bi_size ;
2639 unsigned int bi_seg_front_size ;
2640 unsigned int bi_seg_back_size ;
2641 unsigned int bi_max_vecs ;
2642 atomic_t bi_cnt ;
2643 struct bio_vec *bi_io_vec ;
2644 bio_end_io_t *bi_end_io ;
2645 void *bi_private ;
2646 struct bio_integrity_payload *bi_integrity ;
2647 bio_destructor_t *bi_destructor ;
2648 struct bio_vec bi_inline_vecs[0U] ;
2649};
2650#line 57 "include/linux/fs.h"
2651struct hlist_bl_node;
2652#line 57 "include/linux/fs.h"
2653struct hlist_bl_head {
2654 struct hlist_bl_node *first ;
2655};
2656#line 36 "include/linux/list_bl.h"
2657struct hlist_bl_node {
2658 struct hlist_bl_node *next ;
2659 struct hlist_bl_node **pprev ;
2660};
2661#line 114 "include/linux/rculist_bl.h"
2662struct nameidata;
2663#line 114
2664struct nameidata;
2665#line 115
2666struct path;
2667#line 115
2668struct path;
2669#line 116
2670struct vfsmount;
2671#line 116
2672struct vfsmount;
2673#line 117 "include/linux/rculist_bl.h"
2674struct qstr {
2675 unsigned int hash ;
2676 unsigned int len ;
2677 unsigned char const *name ;
2678};
2679#line 72 "include/linux/dcache.h"
2680struct dentry_operations;
2681#line 72
2682struct super_block;
2683#line 72 "include/linux/dcache.h"
2684union __anonunion_d_u_163 {
2685 struct list_head d_child ;
2686 struct rcu_head d_rcu ;
2687};
2688#line 72 "include/linux/dcache.h"
2689struct dentry {
2690 unsigned int d_flags ;
2691 seqcount_t d_seq ;
2692 struct hlist_bl_node d_hash ;
2693 struct dentry *d_parent ;
2694 struct qstr d_name ;
2695 struct inode *d_inode ;
2696 unsigned char d_iname[32U] ;
2697 unsigned int d_count ;
2698 spinlock_t d_lock ;
2699 struct dentry_operations const *d_op ;
2700 struct super_block *d_sb ;
2701 unsigned long d_time ;
2702 void *d_fsdata ;
2703 struct list_head d_lru ;
2704 union __anonunion_d_u_163 d_u ;
2705 struct list_head d_subdirs ;
2706 struct list_head d_alias ;
2707};
2708#line 123 "include/linux/dcache.h"
2709struct dentry_operations {
2710 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
2711 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
2712 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
2713 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
2714 int (*d_delete)(struct dentry const * ) ;
2715 void (*d_release)(struct dentry * ) ;
2716 void (*d_prune)(struct dentry * ) ;
2717 void (*d_iput)(struct dentry * , struct inode * ) ;
2718 char *(*d_dname)(struct dentry * , char * , int ) ;
2719 struct vfsmount *(*d_automount)(struct path * ) ;
2720 int (*d_manage)(struct dentry * , bool ) ;
2721};
2722#line 402 "include/linux/dcache.h"
2723struct path {
2724 struct vfsmount *mnt ;
2725 struct dentry *dentry ;
2726};
2727#line 58 "include/linux/radix-tree.h"
2728struct radix_tree_node;
2729#line 58 "include/linux/radix-tree.h"
2730struct radix_tree_root {
2731 unsigned int height ;
2732 gfp_t gfp_mask ;
2733 struct radix_tree_node *rnode ;
2734};
2735#line 45 "include/linux/semaphore.h"
2736struct fiemap_extent {
2737 __u64 fe_logical ;
2738 __u64 fe_physical ;
2739 __u64 fe_length ;
2740 __u64 fe_reserved64[2U] ;
2741 __u32 fe_flags ;
2742 __u32 fe_reserved[3U] ;
2743};
2744#line 38 "include/linux/fiemap.h"
2745enum migrate_mode {
2746 MIGRATE_ASYNC = 0,
2747 MIGRATE_SYNC_LIGHT = 1,
2748 MIGRATE_SYNC = 2
2749} ;
2750#line 44
2751struct export_operations;
2752#line 44
2753struct export_operations;
2754#line 45
2755struct hd_geometry;
2756#line 45
2757struct hd_geometry;
2758#line 46
2759struct poll_table_struct;
2760#line 46
2761struct poll_table_struct;
2762#line 47
2763struct kstatfs;
2764#line 47
2765struct kstatfs;
2766#line 435 "include/linux/fs.h"
2767struct iattr {
2768 unsigned int ia_valid ;
2769 umode_t ia_mode ;
2770 uid_t ia_uid ;
2771 gid_t ia_gid ;
2772 loff_t ia_size ;
2773 struct timespec ia_atime ;
2774 struct timespec ia_mtime ;
2775 struct timespec ia_ctime ;
2776 struct file *ia_file ;
2777};
2778#line 119 "include/linux/quota.h"
2779struct if_dqinfo {
2780 __u64 dqi_bgrace ;
2781 __u64 dqi_igrace ;
2782 __u32 dqi_flags ;
2783 __u32 dqi_valid ;
2784};
2785#line 152 "include/linux/quota.h"
2786struct fs_disk_quota {
2787 __s8 d_version ;
2788 __s8 d_flags ;
2789 __u16 d_fieldmask ;
2790 __u32 d_id ;
2791 __u64 d_blk_hardlimit ;
2792 __u64 d_blk_softlimit ;
2793 __u64 d_ino_hardlimit ;
2794 __u64 d_ino_softlimit ;
2795 __u64 d_bcount ;
2796 __u64 d_icount ;
2797 __s32 d_itimer ;
2798 __s32 d_btimer ;
2799 __u16 d_iwarns ;
2800 __u16 d_bwarns ;
2801 __s32 d_padding2 ;
2802 __u64 d_rtb_hardlimit ;
2803 __u64 d_rtb_softlimit ;
2804 __u64 d_rtbcount ;
2805 __s32 d_rtbtimer ;
2806 __u16 d_rtbwarns ;
2807 __s16 d_padding3 ;
2808 char d_padding4[8U] ;
2809};
2810#line 75 "include/linux/dqblk_xfs.h"
2811struct fs_qfilestat {
2812 __u64 qfs_ino ;
2813 __u64 qfs_nblks ;
2814 __u32 qfs_nextents ;
2815};
2816#line 150 "include/linux/dqblk_xfs.h"
2817typedef struct fs_qfilestat fs_qfilestat_t;
2818#line 151 "include/linux/dqblk_xfs.h"
2819struct fs_quota_stat {
2820 __s8 qs_version ;
2821 __u16 qs_flags ;
2822 __s8 qs_pad ;
2823 fs_qfilestat_t qs_uquota ;
2824 fs_qfilestat_t qs_gquota ;
2825 __u32 qs_incoredqs ;
2826 __s32 qs_btimelimit ;
2827 __s32 qs_itimelimit ;
2828 __s32 qs_rtbtimelimit ;
2829 __u16 qs_bwarnlimit ;
2830 __u16 qs_iwarnlimit ;
2831};
2832#line 165
2833struct dquot;
2834#line 165
2835struct dquot;
2836#line 185 "include/linux/quota.h"
2837typedef __kernel_uid32_t qid_t;
2838#line 186 "include/linux/quota.h"
2839typedef long long qsize_t;
2840#line 189 "include/linux/quota.h"
2841struct mem_dqblk {
2842 qsize_t dqb_bhardlimit ;
2843 qsize_t dqb_bsoftlimit ;
2844 qsize_t dqb_curspace ;
2845 qsize_t dqb_rsvspace ;
2846 qsize_t dqb_ihardlimit ;
2847 qsize_t dqb_isoftlimit ;
2848 qsize_t dqb_curinodes ;
2849 time_t dqb_btime ;
2850 time_t dqb_itime ;
2851};
2852#line 211
2853struct quota_format_type;
2854#line 211
2855struct quota_format_type;
2856#line 212 "include/linux/quota.h"
2857struct mem_dqinfo {
2858 struct quota_format_type *dqi_format ;
2859 int dqi_fmt_id ;
2860 struct list_head dqi_dirty_list ;
2861 unsigned long dqi_flags ;
2862 unsigned int dqi_bgrace ;
2863 unsigned int dqi_igrace ;
2864 qsize_t dqi_maxblimit ;
2865 qsize_t dqi_maxilimit ;
2866 void *dqi_priv ;
2867};
2868#line 275 "include/linux/quota.h"
2869struct dquot {
2870 struct hlist_node dq_hash ;
2871 struct list_head dq_inuse ;
2872 struct list_head dq_free ;
2873 struct list_head dq_dirty ;
2874 struct mutex dq_lock ;
2875 atomic_t dq_count ;
2876 wait_queue_head_t dq_wait_unused ;
2877 struct super_block *dq_sb ;
2878 unsigned int dq_id ;
2879 loff_t dq_off ;
2880 unsigned long dq_flags ;
2881 short dq_type ;
2882 struct mem_dqblk dq_dqb ;
2883};
2884#line 303 "include/linux/quota.h"
2885struct quota_format_ops {
2886 int (*check_quota_file)(struct super_block * , int ) ;
2887 int (*read_file_info)(struct super_block * , int ) ;
2888 int (*write_file_info)(struct super_block * , int ) ;
2889 int (*free_file_info)(struct super_block * , int ) ;
2890 int (*read_dqblk)(struct dquot * ) ;
2891 int (*commit_dqblk)(struct dquot * ) ;
2892 int (*release_dqblk)(struct dquot * ) ;
2893};
2894#line 314 "include/linux/quota.h"
2895struct dquot_operations {
2896 int (*write_dquot)(struct dquot * ) ;
2897 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
2898 void (*destroy_dquot)(struct dquot * ) ;
2899 int (*acquire_dquot)(struct dquot * ) ;
2900 int (*release_dquot)(struct dquot * ) ;
2901 int (*mark_dirty)(struct dquot * ) ;
2902 int (*write_info)(struct super_block * , int ) ;
2903 qsize_t *(*get_reserved_space)(struct inode * ) ;
2904};
2905#line 328 "include/linux/quota.h"
2906struct quotactl_ops {
2907 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
2908 int (*quota_on_meta)(struct super_block * , int , int ) ;
2909 int (*quota_off)(struct super_block * , int ) ;
2910 int (*quota_sync)(struct super_block * , int , int ) ;
2911 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
2912 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
2913 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2914 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2915 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
2916 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
2917};
2918#line 344 "include/linux/quota.h"
2919struct quota_format_type {
2920 int qf_fmt_id ;
2921 struct quota_format_ops const *qf_ops ;
2922 struct module *qf_owner ;
2923 struct quota_format_type *qf_next ;
2924};
2925#line 390 "include/linux/quota.h"
2926struct quota_info {
2927 unsigned int flags ;
2928 struct mutex dqio_mutex ;
2929 struct mutex dqonoff_mutex ;
2930 struct rw_semaphore dqptr_sem ;
2931 struct inode *files[2U] ;
2932 struct mem_dqinfo info[2U] ;
2933 struct quota_format_ops const *ops[2U] ;
2934};
2935#line 585 "include/linux/fs.h"
2936union __anonunion_arg_165 {
2937 char *buf ;
2938 void *data ;
2939};
2940#line 585 "include/linux/fs.h"
2941struct __anonstruct_read_descriptor_t_164 {
2942 size_t written ;
2943 size_t count ;
2944 union __anonunion_arg_165 arg ;
2945 int error ;
2946};
2947#line 585 "include/linux/fs.h"
2948typedef struct __anonstruct_read_descriptor_t_164 read_descriptor_t;
2949#line 588 "include/linux/fs.h"
2950struct address_space_operations {
2951 int (*writepage)(struct page * , struct writeback_control * ) ;
2952 int (*readpage)(struct file * , struct page * ) ;
2953 int (*writepages)(struct address_space * , struct writeback_control * ) ;
2954 int (*set_page_dirty)(struct page * ) ;
2955 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
2956 unsigned int ) ;
2957 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
2958 unsigned int , struct page ** , void ** ) ;
2959 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
2960 unsigned int , struct page * , void * ) ;
2961 sector_t (*bmap)(struct address_space * , sector_t ) ;
2962 void (*invalidatepage)(struct page * , unsigned long ) ;
2963 int (*releasepage)(struct page * , gfp_t ) ;
2964 void (*freepage)(struct page * ) ;
2965 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
2966 unsigned long ) ;
2967 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2968 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
2969 int (*launder_page)(struct page * ) ;
2970 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2971 int (*error_remove_page)(struct address_space * , struct page * ) ;
2972};
2973#line 642 "include/linux/fs.h"
2974struct address_space {
2975 struct inode *host ;
2976 struct radix_tree_root page_tree ;
2977 spinlock_t tree_lock ;
2978 unsigned int i_mmap_writable ;
2979 struct prio_tree_root i_mmap ;
2980 struct list_head i_mmap_nonlinear ;
2981 struct mutex i_mmap_mutex ;
2982 unsigned long nrpages ;
2983 unsigned long writeback_index ;
2984 struct address_space_operations const *a_ops ;
2985 unsigned long flags ;
2986 struct backing_dev_info *backing_dev_info ;
2987 spinlock_t private_lock ;
2988 struct list_head private_list ;
2989 struct address_space *assoc_mapping ;
2990};
2991#line 664
2992struct request_queue;
2993#line 664
2994struct request_queue;
2995#line 665
2996struct hd_struct;
2997#line 665
2998struct gendisk;
2999#line 665 "include/linux/fs.h"
3000struct block_device {
3001 dev_t bd_dev ;
3002 int bd_openers ;
3003 struct inode *bd_inode ;
3004 struct super_block *bd_super ;
3005 struct mutex bd_mutex ;
3006 struct list_head bd_inodes ;
3007 void *bd_claiming ;
3008 void *bd_holder ;
3009 int bd_holders ;
3010 bool bd_write_holder ;
3011 struct list_head bd_holder_disks ;
3012 struct block_device *bd_contains ;
3013 unsigned int bd_block_size ;
3014 struct hd_struct *bd_part ;
3015 unsigned int bd_part_count ;
3016 int bd_invalidated ;
3017 struct gendisk *bd_disk ;
3018 struct request_queue *bd_queue ;
3019 struct list_head bd_list ;
3020 unsigned long bd_private ;
3021 int bd_fsfreeze_count ;
3022 struct mutex bd_fsfreeze_mutex ;
3023};
3024#line 737
3025struct posix_acl;
3026#line 737
3027struct posix_acl;
3028#line 738
3029struct inode_operations;
3030#line 738 "include/linux/fs.h"
3031union __anonunion_ldv_22603_166 {
3032 unsigned int const i_nlink ;
3033 unsigned int __i_nlink ;
3034};
3035#line 738 "include/linux/fs.h"
3036union __anonunion_ldv_22622_167 {
3037 struct list_head i_dentry ;
3038 struct rcu_head i_rcu ;
3039};
3040#line 738
3041struct file_operations;
3042#line 738
3043struct file_lock;
3044#line 738
3045struct cdev;
3046#line 738 "include/linux/fs.h"
3047union __anonunion_ldv_22640_168 {
3048 struct pipe_inode_info *i_pipe ;
3049 struct block_device *i_bdev ;
3050 struct cdev *i_cdev ;
3051};
3052#line 738 "include/linux/fs.h"
3053struct inode {
3054 umode_t i_mode ;
3055 unsigned short i_opflags ;
3056 uid_t i_uid ;
3057 gid_t i_gid ;
3058 unsigned int i_flags ;
3059 struct posix_acl *i_acl ;
3060 struct posix_acl *i_default_acl ;
3061 struct inode_operations const *i_op ;
3062 struct super_block *i_sb ;
3063 struct address_space *i_mapping ;
3064 void *i_security ;
3065 unsigned long i_ino ;
3066 union __anonunion_ldv_22603_166 ldv_22603 ;
3067 dev_t i_rdev ;
3068 struct timespec i_atime ;
3069 struct timespec i_mtime ;
3070 struct timespec i_ctime ;
3071 spinlock_t i_lock ;
3072 unsigned short i_bytes ;
3073 blkcnt_t i_blocks ;
3074 loff_t i_size ;
3075 unsigned long i_state ;
3076 struct mutex i_mutex ;
3077 unsigned long dirtied_when ;
3078 struct hlist_node i_hash ;
3079 struct list_head i_wb_list ;
3080 struct list_head i_lru ;
3081 struct list_head i_sb_list ;
3082 union __anonunion_ldv_22622_167 ldv_22622 ;
3083 atomic_t i_count ;
3084 unsigned int i_blkbits ;
3085 u64 i_version ;
3086 atomic_t i_dio_count ;
3087 atomic_t i_writecount ;
3088 struct file_operations const *i_fop ;
3089 struct file_lock *i_flock ;
3090 struct address_space i_data ;
3091 struct dquot *i_dquot[2U] ;
3092 struct list_head i_devices ;
3093 union __anonunion_ldv_22640_168 ldv_22640 ;
3094 __u32 i_generation ;
3095 __u32 i_fsnotify_mask ;
3096 struct hlist_head i_fsnotify_marks ;
3097 atomic_t i_readcount ;
3098 void *i_private ;
3099};
3100#line 941 "include/linux/fs.h"
3101struct fown_struct {
3102 rwlock_t lock ;
3103 struct pid *pid ;
3104 enum pid_type pid_type ;
3105 uid_t uid ;
3106 uid_t euid ;
3107 int signum ;
3108};
3109#line 949 "include/linux/fs.h"
3110struct file_ra_state {
3111 unsigned long start ;
3112 unsigned int size ;
3113 unsigned int async_size ;
3114 unsigned int ra_pages ;
3115 unsigned int mmap_miss ;
3116 loff_t prev_pos ;
3117};
3118#line 972 "include/linux/fs.h"
3119union __anonunion_f_u_169 {
3120 struct list_head fu_list ;
3121 struct rcu_head fu_rcuhead ;
3122};
3123#line 972 "include/linux/fs.h"
3124struct file {
3125 union __anonunion_f_u_169 f_u ;
3126 struct path f_path ;
3127 struct file_operations const *f_op ;
3128 spinlock_t f_lock ;
3129 int f_sb_list_cpu ;
3130 atomic_long_t f_count ;
3131 unsigned int f_flags ;
3132 fmode_t f_mode ;
3133 loff_t f_pos ;
3134 struct fown_struct f_owner ;
3135 struct cred const *f_cred ;
3136 struct file_ra_state f_ra ;
3137 u64 f_version ;
3138 void *f_security ;
3139 void *private_data ;
3140 struct list_head f_ep_links ;
3141 struct list_head f_tfile_llink ;
3142 struct address_space *f_mapping ;
3143 unsigned long f_mnt_write_state ;
3144};
3145#line 1111 "include/linux/fs.h"
3146typedef struct files_struct *fl_owner_t;
3147#line 1112 "include/linux/fs.h"
3148struct file_lock_operations {
3149 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
3150 void (*fl_release_private)(struct file_lock * ) ;
3151};
3152#line 1117 "include/linux/fs.h"
3153struct lock_manager_operations {
3154 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
3155 void (*lm_notify)(struct file_lock * ) ;
3156 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
3157 void (*lm_release_private)(struct file_lock * ) ;
3158 void (*lm_break)(struct file_lock * ) ;
3159 int (*lm_change)(struct file_lock ** , int ) ;
3160};
3161#line 1134
3162struct nlm_lockowner;
3163#line 1134
3164struct nlm_lockowner;
3165#line 1135 "include/linux/fs.h"
3166struct nfs_lock_info {
3167 u32 state ;
3168 struct nlm_lockowner *owner ;
3169 struct list_head list ;
3170};
3171#line 14 "include/linux/nfs_fs_i.h"
3172struct nfs4_lock_state;
3173#line 14
3174struct nfs4_lock_state;
3175#line 15 "include/linux/nfs_fs_i.h"
3176struct nfs4_lock_info {
3177 struct nfs4_lock_state *owner ;
3178};
3179#line 19
3180struct fasync_struct;
3181#line 19 "include/linux/nfs_fs_i.h"
3182struct __anonstruct_afs_171 {
3183 struct list_head link ;
3184 int state ;
3185};
3186#line 19 "include/linux/nfs_fs_i.h"
3187union __anonunion_fl_u_170 {
3188 struct nfs_lock_info nfs_fl ;
3189 struct nfs4_lock_info nfs4_fl ;
3190 struct __anonstruct_afs_171 afs ;
3191};
3192#line 19 "include/linux/nfs_fs_i.h"
3193struct file_lock {
3194 struct file_lock *fl_next ;
3195 struct list_head fl_link ;
3196 struct list_head fl_block ;
3197 fl_owner_t fl_owner ;
3198 unsigned int fl_flags ;
3199 unsigned char fl_type ;
3200 unsigned int fl_pid ;
3201 struct pid *fl_nspid ;
3202 wait_queue_head_t fl_wait ;
3203 struct file *fl_file ;
3204 loff_t fl_start ;
3205 loff_t fl_end ;
3206 struct fasync_struct *fl_fasync ;
3207 unsigned long fl_break_time ;
3208 unsigned long fl_downgrade_time ;
3209 struct file_lock_operations const *fl_ops ;
3210 struct lock_manager_operations const *fl_lmops ;
3211 union __anonunion_fl_u_170 fl_u ;
3212};
3213#line 1221 "include/linux/fs.h"
3214struct fasync_struct {
3215 spinlock_t fa_lock ;
3216 int magic ;
3217 int fa_fd ;
3218 struct fasync_struct *fa_next ;
3219 struct file *fa_file ;
3220 struct rcu_head fa_rcu ;
3221};
3222#line 1417
3223struct file_system_type;
3224#line 1417
3225struct super_operations;
3226#line 1417
3227struct xattr_handler;
3228#line 1417
3229struct mtd_info;
3230#line 1417 "include/linux/fs.h"
3231struct super_block {
3232 struct list_head s_list ;
3233 dev_t s_dev ;
3234 unsigned char s_dirt ;
3235 unsigned char s_blocksize_bits ;
3236 unsigned long s_blocksize ;
3237 loff_t s_maxbytes ;
3238 struct file_system_type *s_type ;
3239 struct super_operations const *s_op ;
3240 struct dquot_operations const *dq_op ;
3241 struct quotactl_ops const *s_qcop ;
3242 struct export_operations const *s_export_op ;
3243 unsigned long s_flags ;
3244 unsigned long s_magic ;
3245 struct dentry *s_root ;
3246 struct rw_semaphore s_umount ;
3247 struct mutex s_lock ;
3248 int s_count ;
3249 atomic_t s_active ;
3250 void *s_security ;
3251 struct xattr_handler const **s_xattr ;
3252 struct list_head s_inodes ;
3253 struct hlist_bl_head s_anon ;
3254 struct list_head *s_files ;
3255 struct list_head s_mounts ;
3256 struct list_head s_dentry_lru ;
3257 int s_nr_dentry_unused ;
3258 spinlock_t s_inode_lru_lock ;
3259 struct list_head s_inode_lru ;
3260 int s_nr_inodes_unused ;
3261 struct block_device *s_bdev ;
3262 struct backing_dev_info *s_bdi ;
3263 struct mtd_info *s_mtd ;
3264 struct hlist_node s_instances ;
3265 struct quota_info s_dquot ;
3266 int s_frozen ;
3267 wait_queue_head_t s_wait_unfrozen ;
3268 char s_id[32U] ;
3269 u8 s_uuid[16U] ;
3270 void *s_fs_info ;
3271 unsigned int s_max_links ;
3272 fmode_t s_mode ;
3273 u32 s_time_gran ;
3274 struct mutex s_vfs_rename_mutex ;
3275 char *s_subtype ;
3276 char *s_options ;
3277 struct dentry_operations const *s_d_op ;
3278 int cleancache_poolid ;
3279 struct shrinker s_shrink ;
3280 atomic_long_t s_remove_count ;
3281 int s_readonly_remount ;
3282};
3283#line 1563 "include/linux/fs.h"
3284struct fiemap_extent_info {
3285 unsigned int fi_flags ;
3286 unsigned int fi_extents_mapped ;
3287 unsigned int fi_extents_max ;
3288 struct fiemap_extent *fi_extents_start ;
3289};
3290#line 1601
3291struct block_device_operations;
3292#line 1601
3293struct block_device_operations;
3294#line 1602 "include/linux/fs.h"
3295struct file_operations {
3296 struct module *owner ;
3297 loff_t (*llseek)(struct file * , loff_t , int ) ;
3298 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
3299 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
3300 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
3301 loff_t ) ;
3302 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
3303 loff_t ) ;
3304 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
3305 loff_t , u64 , unsigned int ) ) ;
3306 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
3307 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
3308 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
3309 int (*mmap)(struct file * , struct vm_area_struct * ) ;
3310 int (*open)(struct inode * , struct file * ) ;
3311 int (*flush)(struct file * , fl_owner_t ) ;
3312 int (*release)(struct inode * , struct file * ) ;
3313 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
3314 int (*aio_fsync)(struct kiocb * , int ) ;
3315 int (*fasync)(int , struct file * , int ) ;
3316 int (*lock)(struct file * , int , struct file_lock * ) ;
3317 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
3318 int ) ;
3319 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
3320 unsigned long , unsigned long ) ;
3321 int (*check_flags)(int ) ;
3322 int (*flock)(struct file * , int , struct file_lock * ) ;
3323 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
3324 unsigned int ) ;
3325 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
3326 unsigned int ) ;
3327 int (*setlease)(struct file * , long , struct file_lock ** ) ;
3328 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
3329};
3330#line 1637 "include/linux/fs.h"
3331struct inode_operations {
3332 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
3333 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
3334 int (*permission)(struct inode * , int ) ;
3335 struct posix_acl *(*get_acl)(struct inode * , int ) ;
3336 int (*readlink)(struct dentry * , char * , int ) ;
3337 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
3338 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
3339 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
3340 int (*unlink)(struct inode * , struct dentry * ) ;
3341 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
3342 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
3343 int (*rmdir)(struct inode * , struct dentry * ) ;
3344 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
3345 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
3346 void (*truncate)(struct inode * ) ;
3347 int (*setattr)(struct dentry * , struct iattr * ) ;
3348 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
3349 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
3350 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
3351 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
3352 int (*removexattr)(struct dentry * , char const * ) ;
3353 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
3354 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
3355};
3356#line 1682 "include/linux/fs.h"
3357struct super_operations {
3358 struct inode *(*alloc_inode)(struct super_block * ) ;
3359 void (*destroy_inode)(struct inode * ) ;
3360 void (*dirty_inode)(struct inode * , int ) ;
3361 int (*write_inode)(struct inode * , struct writeback_control * ) ;
3362 int (*drop_inode)(struct inode * ) ;
3363 void (*evict_inode)(struct inode * ) ;
3364 void (*put_super)(struct super_block * ) ;
3365 void (*write_super)(struct super_block * ) ;
3366 int (*sync_fs)(struct super_block * , int ) ;
3367 int (*freeze_fs)(struct super_block * ) ;
3368 int (*unfreeze_fs)(struct super_block * ) ;
3369 int (*statfs)(struct dentry * , struct kstatfs * ) ;
3370 int (*remount_fs)(struct super_block * , int * , char * ) ;
3371 void (*umount_begin)(struct super_block * ) ;
3372 int (*show_options)(struct seq_file * , struct dentry * ) ;
3373 int (*show_devname)(struct seq_file * , struct dentry * ) ;
3374 int (*show_path)(struct seq_file * , struct dentry * ) ;
3375 int (*show_stats)(struct seq_file * , struct dentry * ) ;
3376 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
3377 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
3378 loff_t ) ;
3379 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
3380 int (*nr_cached_objects)(struct super_block * ) ;
3381 void (*free_cached_objects)(struct super_block * , int ) ;
3382};
3383#line 1834 "include/linux/fs.h"
3384struct file_system_type {
3385 char const *name ;
3386 int fs_flags ;
3387 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
3388 void (*kill_sb)(struct super_block * ) ;
3389 struct module *owner ;
3390 struct file_system_type *next ;
3391 struct hlist_head fs_supers ;
3392 struct lock_class_key s_lock_key ;
3393 struct lock_class_key s_umount_key ;
3394 struct lock_class_key s_vfs_rename_key ;
3395 struct lock_class_key i_lock_key ;
3396 struct lock_class_key i_mutex_key ;
3397 struct lock_class_key i_mutex_dir_key ;
3398};
3399#line 81 "include/linux/genhd.h"
3400struct disk_stats {
3401 unsigned long sectors[2U] ;
3402 unsigned long ios[2U] ;
3403 unsigned long merges[2U] ;
3404 unsigned long ticks[2U] ;
3405 unsigned long io_ticks ;
3406 unsigned long time_in_queue ;
3407};
3408#line 90 "include/linux/genhd.h"
3409struct partition_meta_info {
3410 u8 uuid[16U] ;
3411 u8 volname[64U] ;
3412};
3413#line 98 "include/linux/genhd.h"
3414struct hd_struct {
3415 sector_t start_sect ;
3416 sector_t nr_sects ;
3417 sector_t alignment_offset ;
3418 unsigned int discard_alignment ;
3419 struct device __dev ;
3420 struct kobject *holder_dir ;
3421 int policy ;
3422 int partno ;
3423 struct partition_meta_info *info ;
3424 int make_it_fail ;
3425 unsigned long stamp ;
3426 atomic_t in_flight[2U] ;
3427 struct disk_stats *dkstats ;
3428 atomic_t ref ;
3429 struct rcu_head rcu_head ;
3430};
3431#line 146 "include/linux/genhd.h"
3432struct disk_part_tbl {
3433 struct rcu_head rcu_head ;
3434 int len ;
3435 struct hd_struct *last_lookup ;
3436 struct hd_struct *part[0U] ;
3437};
3438#line 153
3439struct disk_events;
3440#line 153
3441struct disk_events;
3442#line 154
3443struct timer_rand_state;
3444#line 154
3445struct blk_integrity;
3446#line 154 "include/linux/genhd.h"
3447struct gendisk {
3448 int major ;
3449 int first_minor ;
3450 int minors ;
3451 char disk_name[32U] ;
3452 char *(*devnode)(struct gendisk * , umode_t * ) ;
3453 unsigned int events ;
3454 unsigned int async_events ;
3455 struct disk_part_tbl *part_tbl ;
3456 struct hd_struct part0 ;
3457 struct block_device_operations const *fops ;
3458 struct request_queue *queue ;
3459 void *private_data ;
3460 int flags ;
3461 struct device *driverfs_dev ;
3462 struct kobject *slave_dir ;
3463 struct timer_rand_state *random ;
3464 atomic_t sync_io ;
3465 struct disk_events *ev ;
3466 struct blk_integrity *integrity ;
3467 int node_id ;
3468};
3469#line 650 "include/linux/genhd.h"
3470struct exception_table_entry {
3471 unsigned long insn ;
3472 unsigned long fixup ;
3473};
3474#line 11 "include/linux/writeback.h"
3475enum writeback_sync_modes {
3476 WB_SYNC_NONE = 0,
3477 WB_SYNC_ALL = 1
3478} ;
3479#line 54 "include/linux/writeback.h"
3480struct writeback_control {
3481 enum writeback_sync_modes sync_mode ;
3482 long nr_to_write ;
3483 long pages_skipped ;
3484 loff_t range_start ;
3485 loff_t range_end ;
3486 unsigned char for_kupdate : 1 ;
3487 unsigned char for_background : 1 ;
3488 unsigned char tagged_writepages : 1 ;
3489 unsigned char for_reclaim : 1 ;
3490 unsigned char range_cyclic : 1 ;
3491};
3492#line 80
3493struct bdi_writeback;
3494#line 80
3495struct bdi_writeback;
3496#line 38 "include/linux/backing-dev.h"
3497typedef int congested_fn(void * , int );
3498#line 47 "include/linux/backing-dev.h"
3499struct bdi_writeback {
3500 struct backing_dev_info *bdi ;
3501 unsigned int nr ;
3502 unsigned long last_old_flush ;
3503 unsigned long last_active ;
3504 struct task_struct *task ;
3505 struct timer_list wakeup_timer ;
3506 struct list_head b_dirty ;
3507 struct list_head b_io ;
3508 struct list_head b_more_io ;
3509 spinlock_t list_lock ;
3510};
3511#line 64 "include/linux/backing-dev.h"
3512struct backing_dev_info {
3513 struct list_head bdi_list ;
3514 unsigned long ra_pages ;
3515 unsigned long state ;
3516 unsigned int capabilities ;
3517 congested_fn *congested_fn ;
3518 void *congested_data ;
3519 char *name ;
3520 struct percpu_counter bdi_stat[4U] ;
3521 unsigned long bw_time_stamp ;
3522 unsigned long dirtied_stamp ;
3523 unsigned long written_stamp ;
3524 unsigned long write_bandwidth ;
3525 unsigned long avg_write_bandwidth ;
3526 unsigned long dirty_ratelimit ;
3527 unsigned long balanced_dirty_ratelimit ;
3528 struct prop_local_percpu completions ;
3529 int dirty_exceeded ;
3530 unsigned int min_ratio ;
3531 unsigned int max_ratio ;
3532 unsigned int max_prop_frac ;
3533 struct bdi_writeback wb ;
3534 spinlock_t wb_lock ;
3535 struct list_head work_list ;
3536 struct device *dev ;
3537 struct timer_list laptop_mode_wb_timer ;
3538 struct dentry *debug_dir ;
3539 struct dentry *debug_stats ;
3540};
3541#line 11 "include/linux/mempool.h"
3542typedef void *mempool_alloc_t(gfp_t , void * );
3543#line 12 "include/linux/mempool.h"
3544typedef void mempool_free_t(void * , void * );
3545#line 13 "include/linux/mempool.h"
3546struct mempool_s {
3547 spinlock_t lock ;
3548 int min_nr ;
3549 int curr_nr ;
3550 void **elements ;
3551 void *pool_data ;
3552 mempool_alloc_t *alloc ;
3553 mempool_free_t *free ;
3554 wait_queue_head_t wait ;
3555};
3556#line 24 "include/linux/mempool.h"
3557typedef struct mempool_s mempool_t;
3558#line 79 "include/linux/mempool.h"
3559union __anonunion_ldv_26913_173 {
3560 struct list_head q_node ;
3561 struct kmem_cache *__rcu_icq_cache ;
3562};
3563#line 79 "include/linux/mempool.h"
3564union __anonunion_ldv_26917_174 {
3565 struct hlist_node ioc_node ;
3566 struct rcu_head __rcu_head ;
3567};
3568#line 79 "include/linux/mempool.h"
3569struct io_cq {
3570 struct request_queue *q ;
3571 struct io_context *ioc ;
3572 union __anonunion_ldv_26913_173 ldv_26913 ;
3573 union __anonunion_ldv_26917_174 ldv_26917 ;
3574 unsigned int flags ;
3575};
3576#line 96 "include/linux/iocontext.h"
3577struct io_context {
3578 atomic_long_t refcount ;
3579 atomic_t nr_tasks ;
3580 spinlock_t lock ;
3581 unsigned short ioprio ;
3582 int nr_batch_requests ;
3583 unsigned long last_waited ;
3584 struct radix_tree_root icq_tree ;
3585 struct io_cq *icq_hint ;
3586 struct hlist_head icq_list ;
3587 struct work_struct release_work ;
3588};
3589#line 91 "include/linux/bio.h"
3590struct bio_integrity_payload {
3591 struct bio *bip_bio ;
3592 sector_t bip_sector ;
3593 void *bip_buf ;
3594 bio_end_io_t *bip_end_io ;
3595 unsigned int bip_size ;
3596 unsigned short bip_slab ;
3597 unsigned short bip_vcnt ;
3598 unsigned short bip_idx ;
3599 struct work_struct bip_work ;
3600 struct bio_vec bip_vec[0U] ;
3601};
3602#line 366 "include/linux/bio.h"
3603struct bio_list {
3604 struct bio *head ;
3605 struct bio *tail ;
3606};
3607#line 63 "include/linux/bsg.h"
3608struct bsg_class_device {
3609 struct device *class_dev ;
3610 struct device *parent ;
3611 int minor ;
3612 struct request_queue *queue ;
3613 struct kref ref ;
3614 void (*release)(struct device * ) ;
3615};
3616#line 81
3617struct elevator_queue;
3618#line 81
3619struct elevator_queue;
3620#line 84
3621struct request;
3622#line 84
3623struct request;
3624#line 86
3625struct bsg_job;
3626#line 86
3627struct bsg_job;
3628#line 40 "include/linux/blkdev.h"
3629typedef void rq_end_io_fn(struct request * , int );
3630#line 41 "include/linux/blkdev.h"
3631struct request_list {
3632 int count[2U] ;
3633 int starved[2U] ;
3634 int elvpriv ;
3635 mempool_t *rq_pool ;
3636 wait_queue_head_t wait[2U] ;
3637};
3638#line 53
3639enum rq_cmd_type_bits {
3640 REQ_TYPE_FS = 1,
3641 REQ_TYPE_BLOCK_PC = 2,
3642 REQ_TYPE_SENSE = 3,
3643 REQ_TYPE_PM_SUSPEND = 4,
3644 REQ_TYPE_PM_RESUME = 5,
3645 REQ_TYPE_PM_SHUTDOWN = 6,
3646 REQ_TYPE_SPECIAL = 7,
3647 REQ_TYPE_ATA_TASKFILE = 8,
3648 REQ_TYPE_ATA_PC = 9
3649} ;
3650#line 65 "include/linux/blkdev.h"
3651union __anonunion_ldv_27340_175 {
3652 struct rb_node rb_node ;
3653 void *completion_data ;
3654};
3655#line 65 "include/linux/blkdev.h"
3656struct __anonstruct_elv_177 {
3657 struct io_cq *icq ;
3658 void *priv[2U] ;
3659};
3660#line 65 "include/linux/blkdev.h"
3661struct __anonstruct_flush_178 {
3662 unsigned int seq ;
3663 struct list_head list ;
3664 rq_end_io_fn *saved_end_io ;
3665};
3666#line 65 "include/linux/blkdev.h"
3667union __anonunion_ldv_27351_176 {
3668 struct __anonstruct_elv_177 elv ;
3669 struct __anonstruct_flush_178 flush ;
3670};
3671#line 65 "include/linux/blkdev.h"
3672struct request {
3673 struct list_head queuelist ;
3674 struct call_single_data csd ;
3675 struct request_queue *q ;
3676 unsigned int cmd_flags ;
3677 enum rq_cmd_type_bits cmd_type ;
3678 unsigned long atomic_flags ;
3679 int cpu ;
3680 unsigned int __data_len ;
3681 sector_t __sector ;
3682 struct bio *bio ;
3683 struct bio *biotail ;
3684 struct hlist_node hash ;
3685 union __anonunion_ldv_27340_175 ldv_27340 ;
3686 union __anonunion_ldv_27351_176 ldv_27351 ;
3687 struct gendisk *rq_disk ;
3688 struct hd_struct *part ;
3689 unsigned long start_time ;
3690 unsigned short nr_phys_segments ;
3691 unsigned short nr_integrity_segments ;
3692 unsigned short ioprio ;
3693 int ref_count ;
3694 void *special ;
3695 char *buffer ;
3696 int tag ;
3697 int errors ;
3698 unsigned char __cmd[16U] ;
3699 unsigned char *cmd ;
3700 unsigned short cmd_len ;
3701 unsigned int extra_len ;
3702 unsigned int sense_len ;
3703 unsigned int resid_len ;
3704 void *sense ;
3705 unsigned long deadline ;
3706 struct list_head timeout_list ;
3707 unsigned int timeout ;
3708 int retries ;
3709 rq_end_io_fn *end_io ;
3710 void *end_io_data ;
3711 struct request *next_rq ;
3712};
3713#line 10 "include/linux/elevator.h"
3714typedef int elevator_merge_fn(struct request_queue * , struct request ** , struct bio * );
3715#line 13 "include/linux/elevator.h"
3716typedef void elevator_merge_req_fn(struct request_queue * , struct request * , struct request * );
3717#line 15 "include/linux/elevator.h"
3718typedef void elevator_merged_fn(struct request_queue * , struct request * , int );
3719#line 17 "include/linux/elevator.h"
3720typedef int elevator_allow_merge_fn(struct request_queue * , struct request * , struct bio * );
3721#line 19 "include/linux/elevator.h"
3722typedef void elevator_bio_merged_fn(struct request_queue * , struct request * , struct bio * );
3723#line 22 "include/linux/elevator.h"
3724typedef int elevator_dispatch_fn(struct request_queue * , int );
3725#line 24 "include/linux/elevator.h"
3726typedef void elevator_add_req_fn(struct request_queue * , struct request * );
3727#line 25 "include/linux/elevator.h"
3728typedef struct request *elevator_request_list_fn(struct request_queue * , struct request * );
3729#line 26 "include/linux/elevator.h"
3730typedef void elevator_completed_req_fn(struct request_queue * , struct request * );
3731#line 27 "include/linux/elevator.h"
3732typedef int elevator_may_queue_fn(struct request_queue * , int );
3733#line 29 "include/linux/elevator.h"
3734typedef void elevator_init_icq_fn(struct io_cq * );
3735#line 30 "include/linux/elevator.h"
3736typedef void elevator_exit_icq_fn(struct io_cq * );
3737#line 31 "include/linux/elevator.h"
3738typedef int elevator_set_req_fn(struct request_queue * , struct request * , gfp_t );
3739#line 32 "include/linux/elevator.h"
3740typedef void elevator_put_req_fn(struct request * );
3741#line 33 "include/linux/elevator.h"
3742typedef void elevator_activate_req_fn(struct request_queue * , struct request * );
3743#line 34 "include/linux/elevator.h"
3744typedef void elevator_deactivate_req_fn(struct request_queue * , struct request * );
3745#line 36 "include/linux/elevator.h"
3746typedef void *elevator_init_fn(struct request_queue * );
3747#line 37 "include/linux/elevator.h"
3748typedef void elevator_exit_fn(struct elevator_queue * );
3749#line 38 "include/linux/elevator.h"
3750struct elevator_ops {
3751 elevator_merge_fn *elevator_merge_fn ;
3752 elevator_merged_fn *elevator_merged_fn ;
3753 elevator_merge_req_fn *elevator_merge_req_fn ;
3754 elevator_allow_merge_fn *elevator_allow_merge_fn ;
3755 elevator_bio_merged_fn *elevator_bio_merged_fn ;
3756 elevator_dispatch_fn *elevator_dispatch_fn ;
3757 elevator_add_req_fn *elevator_add_req_fn ;
3758 elevator_activate_req_fn *elevator_activate_req_fn ;
3759 elevator_deactivate_req_fn *elevator_deactivate_req_fn ;
3760 elevator_completed_req_fn *elevator_completed_req_fn ;
3761 elevator_request_list_fn *elevator_former_req_fn ;
3762 elevator_request_list_fn *elevator_latter_req_fn ;
3763 elevator_init_icq_fn *elevator_init_icq_fn ;
3764 elevator_exit_icq_fn *elevator_exit_icq_fn ;
3765 elevator_set_req_fn *elevator_set_req_fn ;
3766 elevator_put_req_fn *elevator_put_req_fn ;
3767 elevator_may_queue_fn *elevator_may_queue_fn ;
3768 elevator_init_fn *elevator_init_fn ;
3769 elevator_exit_fn *elevator_exit_fn ;
3770};
3771#line 68 "include/linux/elevator.h"
3772struct elv_fs_entry {
3773 struct attribute attr ;
3774 ssize_t (*show)(struct elevator_queue * , char * ) ;
3775 ssize_t (*store)(struct elevator_queue * , char const * , size_t ) ;
3776};
3777#line 76 "include/linux/elevator.h"
3778struct elevator_type {
3779 struct kmem_cache *icq_cache ;
3780 struct elevator_ops ops ;
3781 size_t icq_size ;
3782 size_t icq_align ;
3783 struct elv_fs_entry *elevator_attrs ;
3784 char elevator_name[16U] ;
3785 struct module *elevator_owner ;
3786 char icq_cache_name[21U] ;
3787 struct list_head list ;
3788};
3789#line 97 "include/linux/elevator.h"
3790struct elevator_queue {
3791 struct elevator_type *type ;
3792 void *elevator_data ;
3793 struct kobject kobj ;
3794 struct mutex sysfs_lock ;
3795 struct hlist_head *hash ;
3796 unsigned char registered : 1 ;
3797};
3798#line 202 "include/linux/blkdev.h"
3799typedef void request_fn_proc(struct request_queue * );
3800#line 203 "include/linux/blkdev.h"
3801typedef void make_request_fn(struct request_queue * , struct bio * );
3802#line 204 "include/linux/blkdev.h"
3803typedef int prep_rq_fn(struct request_queue * , struct request * );
3804#line 205 "include/linux/blkdev.h"
3805typedef void unprep_rq_fn(struct request_queue * , struct request * );
3806#line 206 "include/linux/blkdev.h"
3807struct bvec_merge_data {
3808 struct block_device *bi_bdev ;
3809 sector_t bi_sector ;
3810 unsigned int bi_size ;
3811 unsigned long bi_rw ;
3812};
3813#line 214 "include/linux/blkdev.h"
3814typedef int merge_bvec_fn(struct request_queue * , struct bvec_merge_data * , struct bio_vec * );
3815#line 216 "include/linux/blkdev.h"
3816typedef void softirq_done_fn(struct request * );
3817#line 217 "include/linux/blkdev.h"
3818typedef int dma_drain_needed_fn(struct request * );
3819#line 218 "include/linux/blkdev.h"
3820typedef int lld_busy_fn(struct request_queue * );
3821#line 219 "include/linux/blkdev.h"
3822typedef int bsg_job_fn(struct bsg_job * );
3823#line 220
3824enum blk_eh_timer_return {
3825 BLK_EH_NOT_HANDLED = 0,
3826 BLK_EH_HANDLED = 1,
3827 BLK_EH_RESET_TIMER = 2
3828} ;
3829#line 227 "include/linux/blkdev.h"
3830typedef enum blk_eh_timer_return rq_timed_out_fn(struct request * );
3831#line 233 "include/linux/blkdev.h"
3832struct blk_queue_tag {
3833 struct request **tag_index ;
3834 unsigned long *tag_map ;
3835 int busy ;
3836 int max_depth ;
3837 int real_max_depth ;
3838 atomic_t refcnt ;
3839};
3840#line 242 "include/linux/blkdev.h"
3841struct queue_limits {
3842 unsigned long bounce_pfn ;
3843 unsigned long seg_boundary_mask ;
3844 unsigned int max_hw_sectors ;
3845 unsigned int max_sectors ;
3846 unsigned int max_segment_size ;
3847 unsigned int physical_block_size ;
3848 unsigned int alignment_offset ;
3849 unsigned int io_min ;
3850 unsigned int io_opt ;
3851 unsigned int max_discard_sectors ;
3852 unsigned int discard_granularity ;
3853 unsigned int discard_alignment ;
3854 unsigned short logical_block_size ;
3855 unsigned short max_segments ;
3856 unsigned short max_integrity_segments ;
3857 unsigned char misaligned ;
3858 unsigned char discard_misaligned ;
3859 unsigned char cluster ;
3860 unsigned char discard_zeroes_data ;
3861};
3862#line 270 "include/linux/blkdev.h"
3863struct request_queue {
3864 struct list_head queue_head ;
3865 struct request *last_merge ;
3866 struct elevator_queue *elevator ;
3867 struct request_list rq ;
3868 request_fn_proc *request_fn ;
3869 make_request_fn *make_request_fn ;
3870 prep_rq_fn *prep_rq_fn ;
3871 unprep_rq_fn *unprep_rq_fn ;
3872 merge_bvec_fn *merge_bvec_fn ;
3873 softirq_done_fn *softirq_done_fn ;
3874 rq_timed_out_fn *rq_timed_out_fn ;
3875 dma_drain_needed_fn *dma_drain_needed ;
3876 lld_busy_fn *lld_busy_fn ;
3877 sector_t end_sector ;
3878 struct request *boundary_rq ;
3879 struct delayed_work delay_work ;
3880 struct backing_dev_info backing_dev_info ;
3881 void *queuedata ;
3882 unsigned long queue_flags ;
3883 int id ;
3884 gfp_t bounce_gfp ;
3885 spinlock_t __queue_lock ;
3886 spinlock_t *queue_lock ;
3887 struct kobject kobj ;
3888 unsigned long nr_requests ;
3889 unsigned int nr_congestion_on ;
3890 unsigned int nr_congestion_off ;
3891 unsigned int nr_batching ;
3892 unsigned int dma_drain_size ;
3893 void *dma_drain_buffer ;
3894 unsigned int dma_pad_mask ;
3895 unsigned int dma_alignment ;
3896 struct blk_queue_tag *queue_tags ;
3897 struct list_head tag_busy_list ;
3898 unsigned int nr_sorted ;
3899 unsigned int in_flight[2U] ;
3900 unsigned int rq_timeout ;
3901 struct timer_list timeout ;
3902 struct list_head timeout_list ;
3903 struct list_head icq_list ;
3904 struct queue_limits limits ;
3905 unsigned int sg_timeout ;
3906 unsigned int sg_reserved_size ;
3907 int node ;
3908 unsigned int flush_flags ;
3909 unsigned char flush_not_queueable : 1 ;
3910 unsigned char flush_queue_delayed : 1 ;
3911 unsigned char flush_pending_idx : 1 ;
3912 unsigned char flush_running_idx : 1 ;
3913 unsigned long flush_pending_since ;
3914 struct list_head flush_queue[2U] ;
3915 struct list_head flush_data_in_flight ;
3916 struct request flush_rq ;
3917 struct mutex sysfs_lock ;
3918 bsg_job_fn *bsg_job_fn ;
3919 int bsg_job_size ;
3920 struct bsg_class_device bsg_dev ;
3921};
3922#line 876 "include/linux/blkdev.h"
3923struct blk_plug {
3924 unsigned long magic ;
3925 struct list_head list ;
3926 struct list_head cb_list ;
3927 unsigned int should_sort ;
3928};
3929#line 1208 "include/linux/blkdev.h"
3930struct blk_integrity_exchg {
3931 void *prot_buf ;
3932 void *data_buf ;
3933 sector_t sector ;
3934 unsigned int data_size ;
3935 unsigned short sector_size ;
3936 char const *disk_name ;
3937};
3938#line 1229 "include/linux/blkdev.h"
3939typedef void integrity_gen_fn(struct blk_integrity_exchg * );
3940#line 1230 "include/linux/blkdev.h"
3941typedef int integrity_vrfy_fn(struct blk_integrity_exchg * );
3942#line 1231 "include/linux/blkdev.h"
3943typedef void integrity_set_tag_fn(void * , void * , unsigned int );
3944#line 1232 "include/linux/blkdev.h"
3945typedef void integrity_get_tag_fn(void * , void * , unsigned int );
3946#line 1233 "include/linux/blkdev.h"
3947struct blk_integrity {
3948 integrity_gen_fn *generate_fn ;
3949 integrity_vrfy_fn *verify_fn ;
3950 integrity_set_tag_fn *set_tag_fn ;
3951 integrity_get_tag_fn *get_tag_fn ;
3952 unsigned short flags ;
3953 unsigned short tuple_size ;
3954 unsigned short sector_size ;
3955 unsigned short tag_size ;
3956 char const *name ;
3957 struct kobject kobj ;
3958};
3959#line 1292 "include/linux/blkdev.h"
3960struct block_device_operations {
3961 int (*open)(struct block_device * , fmode_t ) ;
3962 int (*release)(struct gendisk * , fmode_t ) ;
3963 int (*ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
3964 int (*compat_ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
3965 int (*direct_access)(struct block_device * , sector_t , void ** , unsigned long * ) ;
3966 unsigned int (*check_events)(struct gendisk * , unsigned int ) ;
3967 int (*media_changed)(struct gendisk * ) ;
3968 void (*unlock_native_capacity)(struct gendisk * ) ;
3969 int (*revalidate_disk)(struct gendisk * ) ;
3970 int (*getgeo)(struct block_device * , struct hd_geometry * ) ;
3971 void (*swap_slot_free_notify)(struct block_device * , unsigned long ) ;
3972 struct module *owner ;
3973};
3974#line 1383
3975struct scsi_device;
3976#line 1383
3977struct scsi_device;
3978#line 1385 "include/linux/blkdev.h"
3979struct scsi_data_buffer {
3980 struct sg_table table ;
3981 unsigned int length ;
3982 int resid ;
3983};
3984#line 37 "include/scsi/scsi_cmnd.h"
3985struct scsi_pointer {
3986 char *ptr ;
3987 int this_residual ;
3988 struct scatterlist *buffer ;
3989 int buffers_residual ;
3990 dma_addr_t dma_handle ;
3991 int volatile Status ;
3992 int volatile Message ;
3993 int volatile have_data_in ;
3994 int volatile sent_command ;
3995 int volatile phase ;
3996};
3997#line 53 "include/scsi/scsi_cmnd.h"
3998struct scsi_cmnd {
3999 struct scsi_device *device ;
4000 struct list_head list ;
4001 struct list_head eh_entry ;
4002 int eh_eflags ;
4003 unsigned long serial_number ;
4004 unsigned long jiffies_at_alloc ;
4005 int retries ;
4006 int allowed ;
4007 unsigned char prot_op ;
4008 unsigned char prot_type ;
4009 unsigned short cmd_len ;
4010 enum dma_data_direction sc_data_direction ;
4011 unsigned char *cmnd ;
4012 struct scsi_data_buffer sdb ;
4013 struct scsi_data_buffer *prot_sdb ;
4014 unsigned int underflow ;
4015 unsigned int transfersize ;
4016 struct request *request ;
4017 unsigned char *sense_buffer ;
4018 void (*scsi_done)(struct scsi_cmnd * ) ;
4019 struct scsi_pointer SCp ;
4020 unsigned char *host_scribble ;
4021 int result ;
4022 unsigned char tag ;
4023};
4024#line 72 "include/scsi/scsi_eh.h"
4025struct scsi_eh_save {
4026 int result ;
4027 enum dma_data_direction data_direction ;
4028 unsigned int underflow ;
4029 unsigned char cmd_len ;
4030 unsigned char prot_op ;
4031 unsigned char *cmnd ;
4032 struct scsi_data_buffer sdb ;
4033 struct request *next_rq ;
4034 unsigned char eh_cmnd[16U] ;
4035 struct scatterlist sense_sgl ;
4036};
4037#line 12 "include/linux/mod_devicetable.h"
4038typedef unsigned long kernel_ulong_t;
4039#line 38 "include/linux/mod_devicetable.h"
4040struct usb_device_id {
4041 __u16 match_flags ;
4042 __u16 idVendor ;
4043 __u16 idProduct ;
4044 __u16 bcdDevice_lo ;
4045 __u16 bcdDevice_hi ;
4046 __u8 bDeviceClass ;
4047 __u8 bDeviceSubClass ;
4048 __u8 bDeviceProtocol ;
4049 __u8 bInterfaceClass ;
4050 __u8 bInterfaceSubClass ;
4051 __u8 bInterfaceProtocol ;
4052 kernel_ulong_t driver_info ;
4053};
4054#line 215 "include/linux/mod_devicetable.h"
4055struct of_device_id {
4056 char name[32U] ;
4057 char type[32U] ;
4058 char compatible[128U] ;
4059 void *data ;
4060};
4061#line 584 "include/linux/mod_devicetable.h"
4062struct usb_ctrlrequest {
4063 __u8 bRequestType ;
4064 __u8 bRequest ;
4065 __le16 wValue ;
4066 __le16 wIndex ;
4067 __le16 wLength ;
4068};
4069#line 245 "include/linux/usb/ch9.h"
4070struct usb_device_descriptor {
4071 __u8 bLength ;
4072 __u8 bDescriptorType ;
4073 __le16 bcdUSB ;
4074 __u8 bDeviceClass ;
4075 __u8 bDeviceSubClass ;
4076 __u8 bDeviceProtocol ;
4077 __u8 bMaxPacketSize0 ;
4078 __le16 idVendor ;
4079 __le16 idProduct ;
4080 __le16 bcdDevice ;
4081 __u8 iManufacturer ;
4082 __u8 iProduct ;
4083 __u8 iSerialNumber ;
4084 __u8 bNumConfigurations ;
4085};
4086#line 267 "include/linux/usb/ch9.h"
4087struct usb_config_descriptor {
4088 __u8 bLength ;
4089 __u8 bDescriptorType ;
4090 __le16 wTotalLength ;
4091 __u8 bNumInterfaces ;
4092 __u8 bConfigurationValue ;
4093 __u8 iConfiguration ;
4094 __u8 bmAttributes ;
4095 __u8 bMaxPower ;
4096};
4097#line 335 "include/linux/usb/ch9.h"
4098struct usb_interface_descriptor {
4099 __u8 bLength ;
4100 __u8 bDescriptorType ;
4101 __u8 bInterfaceNumber ;
4102 __u8 bAlternateSetting ;
4103 __u8 bNumEndpoints ;
4104 __u8 bInterfaceClass ;
4105 __u8 bInterfaceSubClass ;
4106 __u8 bInterfaceProtocol ;
4107 __u8 iInterface ;
4108};
4109#line 355 "include/linux/usb/ch9.h"
4110struct usb_endpoint_descriptor {
4111 __u8 bLength ;
4112 __u8 bDescriptorType ;
4113 __u8 bEndpointAddress ;
4114 __u8 bmAttributes ;
4115 __le16 wMaxPacketSize ;
4116 __u8 bInterval ;
4117 __u8 bRefresh ;
4118 __u8 bSynchAddress ;
4119};
4120#line 594 "include/linux/usb/ch9.h"
4121struct usb_ss_ep_comp_descriptor {
4122 __u8 bLength ;
4123 __u8 bDescriptorType ;
4124 __u8 bMaxBurst ;
4125 __u8 bmAttributes ;
4126 __le16 wBytesPerInterval ;
4127};
4128#line 673 "include/linux/usb/ch9.h"
4129struct usb_interface_assoc_descriptor {
4130 __u8 bLength ;
4131 __u8 bDescriptorType ;
4132 __u8 bFirstInterface ;
4133 __u8 bInterfaceCount ;
4134 __u8 bFunctionClass ;
4135 __u8 bFunctionSubClass ;
4136 __u8 bFunctionProtocol ;
4137 __u8 iFunction ;
4138};
4139#line 732 "include/linux/usb/ch9.h"
4140struct usb_bos_descriptor {
4141 __u8 bLength ;
4142 __u8 bDescriptorType ;
4143 __le16 wTotalLength ;
4144 __u8 bNumDeviceCaps ;
4145};
4146#line 782 "include/linux/usb/ch9.h"
4147struct usb_ext_cap_descriptor {
4148 __u8 bLength ;
4149 __u8 bDescriptorType ;
4150 __u8 bDevCapabilityType ;
4151 __le32 bmAttributes ;
4152};
4153#line 792 "include/linux/usb/ch9.h"
4154struct usb_ss_cap_descriptor {
4155 __u8 bLength ;
4156 __u8 bDescriptorType ;
4157 __u8 bDevCapabilityType ;
4158 __u8 bmAttributes ;
4159 __le16 wSpeedSupported ;
4160 __u8 bFunctionalitySupport ;
4161 __u8 bU1devExitLat ;
4162 __le16 bU2DevExitLat ;
4163};
4164#line 821 "include/linux/usb/ch9.h"
4165struct usb_ss_container_id_descriptor {
4166 __u8 bLength ;
4167 __u8 bDescriptorType ;
4168 __u8 bDevCapabilityType ;
4169 __u8 bReserved ;
4170 __u8 ContainerID[16U] ;
4171};
4172#line 886
4173enum usb_device_speed {
4174 USB_SPEED_UNKNOWN = 0,
4175 USB_SPEED_LOW = 1,
4176 USB_SPEED_FULL = 2,
4177 USB_SPEED_HIGH = 3,
4178 USB_SPEED_WIRELESS = 4,
4179 USB_SPEED_SUPER = 5
4180} ;
4181#line 908
4182enum usb_device_state {
4183 USB_STATE_NOTATTACHED = 0,
4184 USB_STATE_ATTACHED = 1,
4185 USB_STATE_POWERED = 2,
4186 USB_STATE_RECONNECTING = 3,
4187 USB_STATE_UNAUTHENTICATED = 4,
4188 USB_STATE_DEFAULT = 5,
4189 USB_STATE_ADDRESS = 6,
4190 USB_STATE_CONFIGURED = 7,
4191 USB_STATE_SUSPENDED = 8
4192} ;
4193#line 253 "include/linux/pm_runtime.h"
4194struct usb_device;
4195#line 253
4196struct usb_device;
4197#line 255
4198struct wusb_dev;
4199#line 255
4200struct wusb_dev;
4201#line 256
4202struct ep_device;
4203#line 256
4204struct ep_device;
4205#line 257 "include/linux/pm_runtime.h"
4206struct usb_host_endpoint {
4207 struct usb_endpoint_descriptor desc ;
4208 struct usb_ss_ep_comp_descriptor ss_ep_comp ;
4209 struct list_head urb_list ;
4210 void *hcpriv ;
4211 struct ep_device *ep_dev ;
4212 unsigned char *extra ;
4213 int extralen ;
4214 int enabled ;
4215};
4216#line 75 "include/linux/usb.h"
4217struct usb_host_interface {
4218 struct usb_interface_descriptor desc ;
4219 struct usb_host_endpoint *endpoint ;
4220 char *string ;
4221 unsigned char *extra ;
4222 int extralen ;
4223};
4224#line 89
4225enum usb_interface_condition {
4226 USB_INTERFACE_UNBOUND = 0,
4227 USB_INTERFACE_BINDING = 1,
4228 USB_INTERFACE_BOUND = 2,
4229 USB_INTERFACE_UNBINDING = 3
4230} ;
4231#line 96 "include/linux/usb.h"
4232struct usb_interface {
4233 struct usb_host_interface *altsetting ;
4234 struct usb_host_interface *cur_altsetting ;
4235 unsigned int num_altsetting ;
4236 struct usb_interface_assoc_descriptor *intf_assoc ;
4237 int minor ;
4238 enum usb_interface_condition condition ;
4239 unsigned char sysfs_files_created : 1 ;
4240 unsigned char ep_devs_created : 1 ;
4241 unsigned char unregistering : 1 ;
4242 unsigned char needs_remote_wakeup : 1 ;
4243 unsigned char needs_altsetting0 : 1 ;
4244 unsigned char needs_binding : 1 ;
4245 unsigned char reset_running : 1 ;
4246 unsigned char resetting_device : 1 ;
4247 struct device dev ;
4248 struct device *usb_dev ;
4249 atomic_t pm_usage_cnt ;
4250 struct work_struct reset_ws ;
4251};
4252#line 203 "include/linux/usb.h"
4253struct usb_interface_cache {
4254 unsigned int num_altsetting ;
4255 struct kref ref ;
4256 struct usb_host_interface altsetting[0U] ;
4257};
4258#line 230 "include/linux/usb.h"
4259struct usb_host_config {
4260 struct usb_config_descriptor desc ;
4261 char *string ;
4262 struct usb_interface_assoc_descriptor *intf_assoc[16U] ;
4263 struct usb_interface *interface[32U] ;
4264 struct usb_interface_cache *intf_cache[32U] ;
4265 unsigned char *extra ;
4266 int extralen ;
4267};
4268#line 294 "include/linux/usb.h"
4269struct usb_host_bos {
4270 struct usb_bos_descriptor *desc ;
4271 struct usb_ext_cap_descriptor *ext_cap ;
4272 struct usb_ss_cap_descriptor *ss_cap ;
4273 struct usb_ss_container_id_descriptor *ss_id ;
4274};
4275#line 306 "include/linux/usb.h"
4276struct usb_devmap {
4277 unsigned long devicemap[2U] ;
4278};
4279#line 318
4280struct mon_bus;
4281#line 318 "include/linux/usb.h"
4282struct usb_bus {
4283 struct device *controller ;
4284 int busnum ;
4285 char const *bus_name ;
4286 u8 uses_dma ;
4287 u8 uses_pio_for_control ;
4288 u8 otg_port ;
4289 unsigned char is_b_host : 1 ;
4290 unsigned char b_hnp_enable : 1 ;
4291 unsigned int sg_tablesize ;
4292 int devnum_next ;
4293 struct usb_devmap devmap ;
4294 struct usb_device *root_hub ;
4295 struct usb_bus *hs_companion ;
4296 struct list_head bus_list ;
4297 int bandwidth_allocated ;
4298 int bandwidth_int_reqs ;
4299 int bandwidth_isoc_reqs ;
4300 struct dentry *usbfs_dentry ;
4301 struct mon_bus *mon_bus ;
4302 int monitored ;
4303};
4304#line 362
4305struct usb_tt;
4306#line 362
4307struct usb_tt;
4308#line 363
4309enum usb_device_removable {
4310 USB_DEVICE_REMOVABLE_UNKNOWN = 0,
4311 USB_DEVICE_REMOVABLE = 1,
4312 USB_DEVICE_FIXED = 2
4313} ;
4314#line 369 "include/linux/usb.h"
4315struct usb_device {
4316 int devnum ;
4317 char devpath[16U] ;
4318 u32 route ;
4319 enum usb_device_state state ;
4320 enum usb_device_speed speed ;
4321 struct usb_tt *tt ;
4322 int ttport ;
4323 unsigned int toggle[2U] ;
4324 struct usb_device *parent ;
4325 struct usb_bus *bus ;
4326 struct usb_host_endpoint ep0 ;
4327 struct device dev ;
4328 struct usb_device_descriptor descriptor ;
4329 struct usb_host_bos *bos ;
4330 struct usb_host_config *config ;
4331 struct usb_host_config *actconfig ;
4332 struct usb_host_endpoint *ep_in[16U] ;
4333 struct usb_host_endpoint *ep_out[16U] ;
4334 char **rawdescriptors ;
4335 unsigned short bus_mA ;
4336 u8 portnum ;
4337 u8 level ;
4338 unsigned char can_submit : 1 ;
4339 unsigned char persist_enabled : 1 ;
4340 unsigned char have_langid : 1 ;
4341 unsigned char authorized : 1 ;
4342 unsigned char authenticated : 1 ;
4343 unsigned char wusb : 1 ;
4344 unsigned char lpm_capable : 1 ;
4345 unsigned char usb2_hw_lpm_capable : 1 ;
4346 unsigned char usb2_hw_lpm_enabled : 1 ;
4347 int string_langid ;
4348 char *product ;
4349 char *manufacturer ;
4350 char *serial ;
4351 struct list_head filelist ;
4352 struct device *usb_classdev ;
4353 struct dentry *usbfs_dentry ;
4354 int maxchild ;
4355 struct usb_device **children ;
4356 u32 quirks ;
4357 atomic_t urbnum ;
4358 unsigned long active_duration ;
4359 unsigned long connect_time ;
4360 unsigned char do_remote_wakeup : 1 ;
4361 unsigned char reset_resume : 1 ;
4362 struct wusb_dev *wusb_dev ;
4363 int slot_id ;
4364 enum usb_device_removable removable ;
4365};
4366#line 986 "include/linux/usb.h"
4367struct usb_iso_packet_descriptor {
4368 unsigned int offset ;
4369 unsigned int length ;
4370 unsigned int actual_length ;
4371 int status ;
4372};
4373#line 1028
4374struct urb;
4375#line 1028
4376struct urb;
4377#line 1029 "include/linux/usb.h"
4378struct usb_anchor {
4379 struct list_head urb_list ;
4380 wait_queue_head_t wait ;
4381 spinlock_t lock ;
4382 unsigned char poisoned : 1 ;
4383};
4384#line 1046 "include/linux/usb.h"
4385struct urb {
4386 struct kref kref ;
4387 void *hcpriv ;
4388 atomic_t use_count ;
4389 atomic_t reject ;
4390 int unlinked ;
4391 struct list_head urb_list ;
4392 struct list_head anchor_list ;
4393 struct usb_anchor *anchor ;
4394 struct usb_device *dev ;
4395 struct usb_host_endpoint *ep ;
4396 unsigned int pipe ;
4397 unsigned int stream_id ;
4398 int status ;
4399 unsigned int transfer_flags ;
4400 void *transfer_buffer ;
4401 dma_addr_t transfer_dma ;
4402 struct scatterlist *sg ;
4403 int num_mapped_sgs ;
4404 int num_sgs ;
4405 u32 transfer_buffer_length ;
4406 u32 actual_length ;
4407 unsigned char *setup_packet ;
4408 dma_addr_t setup_dma ;
4409 int start_frame ;
4410 int number_of_packets ;
4411 int interval ;
4412 int error_count ;
4413 void *context ;
4414 void (*complete)(struct urb * ) ;
4415 struct usb_iso_packet_descriptor iso_frame_desc[0U] ;
4416};
4417#line 1468 "include/linux/usb.h"
4418struct usb_sg_request {
4419 int status ;
4420 size_t bytes ;
4421 spinlock_t lock ;
4422 struct usb_device *dev ;
4423 int pipe ;
4424 int entries ;
4425 struct urb **urbs ;
4426 int count ;
4427 struct completion complete ;
4428};
4429#line 920 "include/scsi/scsi_host.h"
4430struct us_data;
4431#line 920
4432struct us_data;
4433#line 921 "include/scsi/scsi_host.h"
4434struct us_unusual_dev {
4435 char const *vendorName ;
4436 char const *productName ;
4437 __u8 useProtocol ;
4438 __u8 useTransport ;
4439 int (*initFunction)(struct us_data * ) ;
4440};
4441#line 97 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
4442struct us_data {
4443 struct mutex dev_mutex ;
4444 struct usb_device *pusb_dev ;
4445 struct usb_interface *pusb_intf ;
4446 struct us_unusual_dev *unusual_dev ;
4447 unsigned long fflags ;
4448 unsigned long dflags ;
4449 unsigned int send_bulk_pipe ;
4450 unsigned int recv_bulk_pipe ;
4451 unsigned int send_ctrl_pipe ;
4452 unsigned int recv_ctrl_pipe ;
4453 unsigned int recv_intr_pipe ;
4454 char *transport_name ;
4455 char *protocol_name ;
4456 __le32 bcs_signature ;
4457 u8 subclass ;
4458 u8 protocol ;
4459 u8 max_lun ;
4460 u8 ifnum ;
4461 u8 ep_bInterval ;
4462 int (*transport)(struct scsi_cmnd * , struct us_data * ) ;
4463 int (*transport_reset)(struct us_data * ) ;
4464 void (*proto_handler)(struct scsi_cmnd * , struct us_data * ) ;
4465 struct scsi_cmnd *srb ;
4466 unsigned int tag ;
4467 char scsi_name[32U] ;
4468 struct urb *current_urb ;
4469 struct usb_ctrlrequest *cr ;
4470 struct usb_sg_request current_sg ;
4471 unsigned char *iobuf ;
4472 dma_addr_t iobuf_dma ;
4473 struct task_struct *ctl_thread ;
4474 struct completion cmnd_ready ;
4475 struct completion notify ;
4476 wait_queue_head_t delay_wait ;
4477 struct delayed_work scan_dwork ;
4478 void *extra ;
4479 void (*extra_destructor)(void * ) ;
4480 void (*suspend_resume_hook)(struct us_data * , int ) ;
4481 int use_last_sector_hacks ;
4482 int last_sector_retries ;
4483};
4484#line 1 "<compiler builtins>"
4485
4486#line 1
4487long __builtin_expect(long , long ) ;
4488#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
4489void ldv_spin_lock(void) ;
4490#line 3
4491void ldv_spin_unlock(void) ;
4492#line 4
4493int ldv_spin_trylock(void) ;
4494#line 101 "include/linux/printk.h"
4495extern int printk(char const * , ...) ;
4496#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
4497extern void *__memcpy(void * , void const * , size_t ) ;
4498#line 55
4499extern void *memset(void * , int , size_t ) ;
4500#line 60
4501extern int memcmp(void const * , void const * , size_t ) ;
4502#line 220 "include/linux/slub_def.h"
4503extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
4504#line 223
4505void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
4506#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
4507void ldv_check_alloc_flags(gfp_t flags ) ;
4508#line 12
4509void ldv_check_alloc_nonatomic(void) ;
4510#line 14
4511struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
4512#line 88 "include/scsi/scsi_eh.h"
4513extern void scsi_eh_prep_cmnd(struct scsi_cmnd * , struct scsi_eh_save * , unsigned char * ,
4514 int , unsigned int ) ;
4515#line 92
4516extern void scsi_eh_restore_cmnd(struct scsi_cmnd * , struct scsi_eh_save * ) ;
4517#line 197 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
4518extern int usb_stor_probe1(struct us_data ** , struct usb_interface * , struct usb_device_id const * ,
4519 struct us_unusual_dev * ) ;
4520#line 201
4521extern int usb_stor_probe2(struct us_data * ) ;
4522#line 45 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/protocol.h"
4523extern void usb_stor_transparent_scsi_command(struct scsi_cmnd * , struct us_data * ) ;
4524#line 45 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/scsiglue.h"
4525extern unsigned char usb_stor_sense_invalidCDB[18U] ;
4526#line 61 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
4527static struct usb_device_id cypress_usb_ids[4U] = { {(__u16 )15U, (__u16 )1204U, (__u16 )26672U, (__u16 )0U, (__u16 )39321U, (unsigned char)0,
4528 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4529 16777216UL},
4530 {(__u16 )15U, (__u16 )1204U, (__u16 )26673U, (__u16 )0U, (__u16 )39321U, (unsigned char)0,
4531 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4532 16777216UL},
4533 {(__u16 )15U, (__u16 )5325U, (__u16 )24854U, (__u16 )0U, (__u16 )39321U, (unsigned char)0,
4534 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4535 16777216UL},
4536 {(unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0,
4537 (unsigned short)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4538 (unsigned char)0, (unsigned char)0, 0UL}};
4539#line 65 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
4540struct usb_device_id const __mod_usb_device_table ;
4541#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
4542static struct us_unusual_dev cypress_unusual_dev_list[4U] = { {"Cypress", "Cypress AT2LP", (__u8 )241U, (__u8 )255U, (int (*)(struct us_data * ))0},
4543 {"Cypress",
4544 "Cypress ISD-300LP", (__u8 )241U, (__u8 )255U, (int (*)(struct us_data * ))0},
4545 {"Super Top",
4546 "USB 2.0 SATA BRIDGE", (__u8 )241U, (__u8 )255U, (int (*)(struct us_data * ))0},
4547 {(char const *)0,
4548 (char const *)0, (unsigned char)0, (unsigned char)0, (int (*)(struct us_data * ))0}};
4549#line 98 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
4550static void cypress_atacb_passthrough(struct scsi_cmnd *srb , struct us_data *us )
4551{ unsigned char save_cmnd[16U] ;
4552 long tmp ;
4553 long tmp___0 ;
4554 size_t __len ;
4555 void *__ret ;
4556 int tmp___1 ;
4557 struct scsi_eh_save ses ;
4558 unsigned char regs[8U] ;
4559 unsigned char *sb ;
4560 unsigned char *desc ;
4561 int tmp_result ;
4562 size_t __len___0 ;
4563 void *__ret___0 ;
4564 size_t __len___1 ;
4565 void *__ret___1 ;
4566 size_t __len___2 ;
4567 void *__ret___2 ;
4568 unsigned long __cil_tmp20 ;
4569 unsigned long __cil_tmp21 ;
4570 unsigned char *__cil_tmp22 ;
4571 unsigned char __cil_tmp23 ;
4572 unsigned int __cil_tmp24 ;
4573 int __cil_tmp25 ;
4574 long __cil_tmp26 ;
4575 unsigned long __cil_tmp27 ;
4576 unsigned long __cil_tmp28 ;
4577 unsigned char *__cil_tmp29 ;
4578 unsigned char __cil_tmp30 ;
4579 unsigned int __cil_tmp31 ;
4580 int __cil_tmp32 ;
4581 long __cil_tmp33 ;
4582 void *__cil_tmp34 ;
4583 unsigned long __cil_tmp35 ;
4584 unsigned long __cil_tmp36 ;
4585 unsigned char *__cil_tmp37 ;
4586 void const *__cil_tmp38 ;
4587 void *__cil_tmp39 ;
4588 unsigned long __cil_tmp40 ;
4589 unsigned long __cil_tmp41 ;
4590 unsigned char *__cil_tmp42 ;
4591 void const *__cil_tmp43 ;
4592 unsigned long __cil_tmp44 ;
4593 unsigned long __cil_tmp45 ;
4594 unsigned char *__cil_tmp46 ;
4595 void *__cil_tmp47 ;
4596 unsigned long __cil_tmp48 ;
4597 unsigned long __cil_tmp49 ;
4598 unsigned char __cil_tmp50 ;
4599 int __cil_tmp51 ;
4600 int __cil_tmp52 ;
4601 unsigned int __cil_tmp53 ;
4602 unsigned long __cil_tmp54 ;
4603 unsigned long __cil_tmp55 ;
4604 unsigned char __cil_tmp56 ;
4605 int __cil_tmp57 ;
4606 int __cil_tmp58 ;
4607 unsigned long __cil_tmp59 ;
4608 unsigned long __cil_tmp60 ;
4609 unsigned long __cil_tmp61 ;
4610 unsigned long __cil_tmp62 ;
4611 unsigned char *__cil_tmp63 ;
4612 unsigned long __cil_tmp64 ;
4613 unsigned long __cil_tmp65 ;
4614 unsigned char *__cil_tmp66 ;
4615 unsigned char *__cil_tmp67 ;
4616 unsigned long __cil_tmp68 ;
4617 unsigned long __cil_tmp69 ;
4618 unsigned char *__cil_tmp70 ;
4619 unsigned char *__cil_tmp71 ;
4620 unsigned long __cil_tmp72 ;
4621 unsigned long __cil_tmp73 ;
4622 unsigned char *__cil_tmp74 ;
4623 unsigned char *__cil_tmp75 ;
4624 unsigned long __cil_tmp76 ;
4625 unsigned long __cil_tmp77 ;
4626 unsigned char __cil_tmp78 ;
4627 unsigned int __cil_tmp79 ;
4628 unsigned long __cil_tmp80 ;
4629 unsigned long __cil_tmp81 ;
4630 unsigned char *__cil_tmp82 ;
4631 unsigned char *__cil_tmp83 ;
4632 unsigned long __cil_tmp84 ;
4633 unsigned long __cil_tmp85 ;
4634 unsigned long __cil_tmp86 ;
4635 unsigned long __cil_tmp87 ;
4636 unsigned char *__cil_tmp88 ;
4637 unsigned char *__cil_tmp89 ;
4638 unsigned long __cil_tmp90 ;
4639 unsigned long __cil_tmp91 ;
4640 unsigned long __cil_tmp92 ;
4641 unsigned long __cil_tmp93 ;
4642 unsigned char *__cil_tmp94 ;
4643 unsigned char *__cil_tmp95 ;
4644 unsigned long __cil_tmp96 ;
4645 unsigned long __cil_tmp97 ;
4646 unsigned long __cil_tmp98 ;
4647 unsigned long __cil_tmp99 ;
4648 unsigned char *__cil_tmp100 ;
4649 unsigned char *__cil_tmp101 ;
4650 unsigned long __cil_tmp102 ;
4651 unsigned long __cil_tmp103 ;
4652 unsigned long __cil_tmp104 ;
4653 unsigned long __cil_tmp105 ;
4654 unsigned char *__cil_tmp106 ;
4655 unsigned char *__cil_tmp107 ;
4656 unsigned long __cil_tmp108 ;
4657 unsigned long __cil_tmp109 ;
4658 unsigned long __cil_tmp110 ;
4659 unsigned long __cil_tmp111 ;
4660 unsigned char *__cil_tmp112 ;
4661 unsigned char *__cil_tmp113 ;
4662 unsigned long __cil_tmp114 ;
4663 unsigned long __cil_tmp115 ;
4664 unsigned long __cil_tmp116 ;
4665 unsigned long __cil_tmp117 ;
4666 unsigned char *__cil_tmp118 ;
4667 unsigned char *__cil_tmp119 ;
4668 unsigned long __cil_tmp120 ;
4669 unsigned long __cil_tmp121 ;
4670 unsigned long __cil_tmp122 ;
4671 unsigned long __cil_tmp123 ;
4672 unsigned char __cil_tmp124 ;
4673 int __cil_tmp125 ;
4674 unsigned long __cil_tmp126 ;
4675 unsigned long __cil_tmp127 ;
4676 unsigned char __cil_tmp128 ;
4677 unsigned int __cil_tmp129 ;
4678 unsigned long __cil_tmp130 ;
4679 unsigned long __cil_tmp131 ;
4680 unsigned char __cil_tmp132 ;
4681 unsigned int __cil_tmp133 ;
4682 unsigned long __cil_tmp134 ;
4683 unsigned long __cil_tmp135 ;
4684 unsigned char __cil_tmp136 ;
4685 unsigned int __cil_tmp137 ;
4686 unsigned long __cil_tmp138 ;
4687 unsigned long __cil_tmp139 ;
4688 unsigned char __cil_tmp140 ;
4689 unsigned int __cil_tmp141 ;
4690 unsigned long __cil_tmp142 ;
4691 unsigned long __cil_tmp143 ;
4692 unsigned char __cil_tmp144 ;
4693 unsigned int __cil_tmp145 ;
4694 unsigned long __cil_tmp146 ;
4695 unsigned long __cil_tmp147 ;
4696 unsigned char *__cil_tmp148 ;
4697 unsigned char *__cil_tmp149 ;
4698 unsigned long __cil_tmp150 ;
4699 unsigned long __cil_tmp151 ;
4700 unsigned long __cil_tmp152 ;
4701 unsigned long __cil_tmp153 ;
4702 unsigned char *__cil_tmp154 ;
4703 unsigned char *__cil_tmp155 ;
4704 unsigned long __cil_tmp156 ;
4705 unsigned long __cil_tmp157 ;
4706 unsigned long __cil_tmp158 ;
4707 unsigned long __cil_tmp159 ;
4708 unsigned char *__cil_tmp160 ;
4709 unsigned char *__cil_tmp161 ;
4710 unsigned long __cil_tmp162 ;
4711 unsigned long __cil_tmp163 ;
4712 unsigned long __cil_tmp164 ;
4713 unsigned long __cil_tmp165 ;
4714 unsigned char *__cil_tmp166 ;
4715 unsigned char *__cil_tmp167 ;
4716 unsigned long __cil_tmp168 ;
4717 unsigned long __cil_tmp169 ;
4718 unsigned long __cil_tmp170 ;
4719 unsigned long __cil_tmp171 ;
4720 unsigned char *__cil_tmp172 ;
4721 unsigned char *__cil_tmp173 ;
4722 unsigned long __cil_tmp174 ;
4723 unsigned long __cil_tmp175 ;
4724 unsigned long __cil_tmp176 ;
4725 unsigned long __cil_tmp177 ;
4726 unsigned char *__cil_tmp178 ;
4727 unsigned char *__cil_tmp179 ;
4728 unsigned long __cil_tmp180 ;
4729 unsigned long __cil_tmp181 ;
4730 unsigned long __cil_tmp182 ;
4731 unsigned long __cil_tmp183 ;
4732 unsigned char *__cil_tmp184 ;
4733 unsigned char *__cil_tmp185 ;
4734 unsigned long __cil_tmp186 ;
4735 unsigned long __cil_tmp187 ;
4736 unsigned long __cil_tmp188 ;
4737 unsigned long __cil_tmp189 ;
4738 unsigned char *__cil_tmp190 ;
4739 unsigned char *__cil_tmp191 ;
4740 unsigned char __cil_tmp192 ;
4741 unsigned int __cil_tmp193 ;
4742 unsigned long __cil_tmp194 ;
4743 unsigned long __cil_tmp195 ;
4744 unsigned char *__cil_tmp196 ;
4745 unsigned char *__cil_tmp197 ;
4746 unsigned char __cil_tmp198 ;
4747 unsigned int __cil_tmp199 ;
4748 unsigned long __cil_tmp200 ;
4749 unsigned long __cil_tmp201 ;
4750 unsigned char *__cil_tmp202 ;
4751 unsigned char *__cil_tmp203 ;
4752 unsigned char __cil_tmp204 ;
4753 unsigned int __cil_tmp205 ;
4754 unsigned long __cil_tmp206 ;
4755 unsigned long __cil_tmp207 ;
4756 unsigned char *__cil_tmp208 ;
4757 unsigned char *__cil_tmp209 ;
4758 unsigned long __cil_tmp210 ;
4759 unsigned long __cil_tmp211 ;
4760 unsigned char *__cil_tmp212 ;
4761 unsigned char *__cil_tmp213 ;
4762 unsigned char __cil_tmp214 ;
4763 unsigned int __cil_tmp215 ;
4764 unsigned int __cil_tmp216 ;
4765 unsigned long __cil_tmp217 ;
4766 unsigned long __cil_tmp218 ;
4767 unsigned char *__cil_tmp219 ;
4768 unsigned char *__cil_tmp220 ;
4769 unsigned char __cil_tmp221 ;
4770 unsigned int __cil_tmp222 ;
4771 unsigned long __cil_tmp223 ;
4772 unsigned long __cil_tmp224 ;
4773 unsigned char *__cil_tmp225 ;
4774 unsigned char *__cil_tmp226 ;
4775 unsigned long __cil_tmp227 ;
4776 unsigned long __cil_tmp228 ;
4777 unsigned char *__cil_tmp229 ;
4778 unsigned char *__cil_tmp230 ;
4779 unsigned char __cil_tmp231 ;
4780 unsigned int __cil_tmp232 ;
4781 unsigned int __cil_tmp233 ;
4782 unsigned long __cil_tmp234 ;
4783 unsigned long __cil_tmp235 ;
4784 int __cil_tmp236 ;
4785 unsigned long __cil_tmp237 ;
4786 unsigned long __cil_tmp238 ;
4787 unsigned char *__cil_tmp239 ;
4788 void const *__cil_tmp240 ;
4789 void const *__cil_tmp241 ;
4790 unsigned long __cil_tmp242 ;
4791 unsigned long __cil_tmp243 ;
4792 int __cil_tmp244 ;
4793 unsigned long __cil_tmp245 ;
4794 unsigned long __cil_tmp246 ;
4795 int __cil_tmp247 ;
4796 unsigned long __cil_tmp248 ;
4797 unsigned long __cil_tmp249 ;
4798 unsigned char __cil_tmp250 ;
4799 int __cil_tmp251 ;
4800 int __cil_tmp252 ;
4801 unsigned long __cil_tmp253 ;
4802 unsigned long __cil_tmp254 ;
4803 unsigned char *__cil_tmp255 ;
4804 unsigned long __cil_tmp256 ;
4805 unsigned long __cil_tmp257 ;
4806 unsigned long __cil_tmp258 ;
4807 unsigned long __cil_tmp259 ;
4808 unsigned long __cil_tmp260 ;
4809 unsigned long __cil_tmp261 ;
4810 unsigned long __cil_tmp262 ;
4811 unsigned char *__cil_tmp263 ;
4812 unsigned char *__cil_tmp264 ;
4813 void *__cil_tmp265 ;
4814 unsigned long __cil_tmp266 ;
4815 unsigned long __cil_tmp267 ;
4816 unsigned char *__cil_tmp268 ;
4817 void const *__cil_tmp269 ;
4818 void *__cil_tmp270 ;
4819 unsigned long __cil_tmp271 ;
4820 unsigned long __cil_tmp272 ;
4821 unsigned char *__cil_tmp273 ;
4822 void const *__cil_tmp274 ;
4823 unsigned long __cil_tmp275 ;
4824 unsigned long __cil_tmp276 ;
4825 void *__cil_tmp277 ;
4826 unsigned char *__cil_tmp278 ;
4827 unsigned char *__cil_tmp279 ;
4828 unsigned char *__cil_tmp280 ;
4829 unsigned char *__cil_tmp281 ;
4830 unsigned char *__cil_tmp282 ;
4831 unsigned char *__cil_tmp283 ;
4832 unsigned char *__cil_tmp284 ;
4833 unsigned long __cil_tmp285 ;
4834 unsigned long __cil_tmp286 ;
4835 unsigned char *__cil_tmp287 ;
4836 unsigned long __cil_tmp288 ;
4837 unsigned long __cil_tmp289 ;
4838 unsigned char *__cil_tmp290 ;
4839 unsigned long __cil_tmp291 ;
4840 unsigned long __cil_tmp292 ;
4841 unsigned char *__cil_tmp293 ;
4842 unsigned long __cil_tmp294 ;
4843 unsigned long __cil_tmp295 ;
4844 unsigned char *__cil_tmp296 ;
4845 unsigned long __cil_tmp297 ;
4846 unsigned long __cil_tmp298 ;
4847 unsigned char *__cil_tmp299 ;
4848 unsigned long __cil_tmp300 ;
4849 unsigned long __cil_tmp301 ;
4850 unsigned char *__cil_tmp302 ;
4851 unsigned long __cil_tmp303 ;
4852 unsigned long __cil_tmp304 ;
4853 unsigned long __cil_tmp305 ;
4854 unsigned long __cil_tmp306 ;
4855 unsigned long __cil_tmp307 ;
4856 unsigned long __cil_tmp308 ;
4857 unsigned long __cil_tmp309 ;
4858 unsigned long __cil_tmp310 ;
4859 unsigned char *__cil_tmp311 ;
4860 void *__cil_tmp312 ;
4861 void const *__cil_tmp313 ;
4862 unsigned long __cil_tmp314 ;
4863 unsigned long __cil_tmp315 ;
4864 unsigned char *__cil_tmp316 ;
4865 void *__cil_tmp317 ;
4866 void const *__cil_tmp318 ;
4867 unsigned long __cil_tmp319 ;
4868 unsigned long __cil_tmp320 ;
4869 unsigned char *__cil_tmp321 ;
4870 void *__cil_tmp322 ;
4871 void const *__cil_tmp323 ;
4872 unsigned long __cil_tmp324 ;
4873 unsigned long __cil_tmp325 ;
4874 unsigned char *__cil_tmp326 ;
4875 void *__cil_tmp327 ;
4876 void const *__cil_tmp328 ;
4877 unsigned long __cil_tmp329 ;
4878 unsigned long __cil_tmp330 ;
4879 unsigned char *__cil_tmp331 ;
4880 unsigned char __cil_tmp332 ;
4881 unsigned int __cil_tmp333 ;
4882 unsigned long __cil_tmp334 ;
4883 unsigned long __cil_tmp335 ;
4884
4885 {
4886 {
4887#line 102
4888 __cil_tmp20 = (unsigned long )srb;
4889#line 102
4890 __cil_tmp21 = __cil_tmp20 + 80;
4891#line 102
4892 __cil_tmp22 = *((unsigned char **)__cil_tmp21);
4893#line 102
4894 __cil_tmp23 = *__cil_tmp22;
4895#line 102
4896 __cil_tmp24 = (unsigned int )__cil_tmp23;
4897#line 102
4898 __cil_tmp25 = __cil_tmp24 != 133U;
4899#line 102
4900 __cil_tmp26 = (long )__cil_tmp25;
4901#line 102
4902 tmp = __builtin_expect(__cil_tmp26, 1L);
4903 }
4904#line 102
4905 if (tmp != 0L) {
4906 {
4907#line 102
4908 __cil_tmp27 = (unsigned long )srb;
4909#line 102
4910 __cil_tmp28 = __cil_tmp27 + 80;
4911#line 102
4912 __cil_tmp29 = *((unsigned char **)__cil_tmp28);
4913#line 102
4914 __cil_tmp30 = *__cil_tmp29;
4915#line 102
4916 __cil_tmp31 = (unsigned int )__cil_tmp30;
4917#line 102
4918 __cil_tmp32 = __cil_tmp31 != 161U;
4919#line 102
4920 __cil_tmp33 = (long )__cil_tmp32;
4921#line 102
4922 tmp___0 = __builtin_expect(__cil_tmp33, 1L);
4923 }
4924#line 102
4925 if (tmp___0 != 0L) {
4926 {
4927#line 103
4928 usb_stor_transparent_scsi_command(srb, us);
4929 }
4930#line 104
4931 return;
4932 } else {
4933
4934 }
4935 } else {
4936
4937 }
4938#line 107
4939 __len = 16UL;
4940#line 107
4941 if (__len > 63UL) {
4942 {
4943#line 107
4944 __cil_tmp34 = (void *)(& save_cmnd);
4945#line 107
4946 __cil_tmp35 = (unsigned long )srb;
4947#line 107
4948 __cil_tmp36 = __cil_tmp35 + 80;
4949#line 107
4950 __cil_tmp37 = *((unsigned char **)__cil_tmp36);
4951#line 107
4952 __cil_tmp38 = (void const *)__cil_tmp37;
4953#line 107
4954 __ret = __memcpy(__cil_tmp34, __cil_tmp38, __len);
4955 }
4956 } else {
4957 {
4958#line 107
4959 __cil_tmp39 = (void *)(& save_cmnd);
4960#line 107
4961 __cil_tmp40 = (unsigned long )srb;
4962#line 107
4963 __cil_tmp41 = __cil_tmp40 + 80;
4964#line 107
4965 __cil_tmp42 = *((unsigned char **)__cil_tmp41);
4966#line 107
4967 __cil_tmp43 = (void const *)__cil_tmp42;
4968#line 107
4969 __ret = __builtin_memcpy(__cil_tmp39, __cil_tmp43, __len);
4970 }
4971 }
4972 {
4973#line 108
4974 __cil_tmp44 = (unsigned long )srb;
4975#line 108
4976 __cil_tmp45 = __cil_tmp44 + 80;
4977#line 108
4978 __cil_tmp46 = *((unsigned char **)__cil_tmp45);
4979#line 108
4980 __cil_tmp47 = (void *)__cil_tmp46;
4981#line 108
4982 memset(__cil_tmp47, 0, 16UL);
4983 }
4984 {
4985#line 111
4986 __cil_tmp48 = 1 * 1UL;
4987#line 111
4988 __cil_tmp49 = (unsigned long )(save_cmnd) + __cil_tmp48;
4989#line 111
4990 __cil_tmp50 = *((unsigned char *)__cil_tmp49);
4991#line 111
4992 __cil_tmp51 = (int )__cil_tmp50;
4993#line 111
4994 __cil_tmp52 = __cil_tmp51 >> 5;
4995#line 111
4996 __cil_tmp53 = (unsigned int )__cil_tmp52;
4997#line 111
4998 if (__cil_tmp53 != 0U) {
4999#line 112
5000 goto invalid_fld;
5001 } else {
5002
5003 }
5004 }
5005 {
5006#line 114
5007 __cil_tmp54 = 1 * 1UL;
5008#line 114
5009 __cil_tmp55 = (unsigned long )(save_cmnd) + __cil_tmp54;
5010#line 114
5011 __cil_tmp56 = *((unsigned char *)__cil_tmp55);
5012#line 114
5013 __cil_tmp57 = (int )__cil_tmp56;
5014#line 114
5015 __cil_tmp58 = __cil_tmp57 >> 1;
5016#line 115
5017 if ((__cil_tmp58 & 15) == 3) {
5018#line 115
5019 goto case_3;
5020 } else
5021#line 116
5022 if ((__cil_tmp58 & 15) == 4) {
5023#line 116
5024 goto case_4;
5025 } else
5026#line 117
5027 if ((__cil_tmp58 & 15) == 5) {
5028#line 117
5029 goto case_5;
5030 } else {
5031 {
5032#line 119
5033 goto switch_default;
5034#line 114
5035 if (0) {
5036 case_3: ;
5037 case_4: ;
5038 case_5: ;
5039#line 118
5040 goto ldv_31240;
5041 switch_default: ;
5042#line 120
5043 goto invalid_fld;
5044 } else {
5045 switch_break: ;
5046 }
5047 }
5048 }
5049 }
5050 ldv_31240:
5051#line 124
5052 __cil_tmp59 = (unsigned long )srb;
5053#line 124
5054 __cil_tmp60 = __cil_tmp59 + 74;
5055#line 124
5056 *((unsigned short *)__cil_tmp60) = (unsigned short)16;
5057#line 126
5058 __cil_tmp61 = (unsigned long )srb;
5059#line 126
5060 __cil_tmp62 = __cil_tmp61 + 80;
5061#line 126
5062 __cil_tmp63 = *((unsigned char **)__cil_tmp62);
5063#line 126
5064 *__cil_tmp63 = (unsigned char)36;
5065#line 129
5066 __cil_tmp64 = (unsigned long )srb;
5067#line 129
5068 __cil_tmp65 = __cil_tmp64 + 80;
5069#line 129
5070 __cil_tmp66 = *((unsigned char **)__cil_tmp65);
5071#line 129
5072 __cil_tmp67 = __cil_tmp66 + 1UL;
5073#line 129
5074 *__cil_tmp67 = (unsigned char)36;
5075#line 131
5076 __cil_tmp68 = (unsigned long )srb;
5077#line 131
5078 __cil_tmp69 = __cil_tmp68 + 80;
5079#line 131
5080 __cil_tmp70 = *((unsigned char **)__cil_tmp69);
5081#line 131
5082 __cil_tmp71 = __cil_tmp70 + 3UL;
5083#line 131
5084 *__cil_tmp71 = (unsigned char)254;
5085#line 133
5086 __cil_tmp72 = (unsigned long )srb;
5087#line 133
5088 __cil_tmp73 = __cil_tmp72 + 80;
5089#line 133
5090 __cil_tmp74 = *((unsigned char **)__cil_tmp73);
5091#line 133
5092 __cil_tmp75 = __cil_tmp74 + 4UL;
5093#line 133
5094 *__cil_tmp75 = (unsigned char)1;
5095 {
5096#line 135
5097 __cil_tmp76 = 0 * 1UL;
5098#line 135
5099 __cil_tmp77 = (unsigned long )(save_cmnd) + __cil_tmp76;
5100#line 135
5101 __cil_tmp78 = *((unsigned char *)__cil_tmp77);
5102#line 135
5103 __cil_tmp79 = (unsigned int )__cil_tmp78;
5104#line 135
5105 if (__cil_tmp79 == 133U) {
5106#line 136
5107 __cil_tmp80 = (unsigned long )srb;
5108#line 136
5109 __cil_tmp81 = __cil_tmp80 + 80;
5110#line 136
5111 __cil_tmp82 = *((unsigned char **)__cil_tmp81);
5112#line 136
5113 __cil_tmp83 = __cil_tmp82 + 6UL;
5114#line 136
5115 __cil_tmp84 = 4 * 1UL;
5116#line 136
5117 __cil_tmp85 = (unsigned long )(save_cmnd) + __cil_tmp84;
5118#line 136
5119 *__cil_tmp83 = *((unsigned char *)__cil_tmp85);
5120#line 137
5121 __cil_tmp86 = (unsigned long )srb;
5122#line 137
5123 __cil_tmp87 = __cil_tmp86 + 80;
5124#line 137
5125 __cil_tmp88 = *((unsigned char **)__cil_tmp87);
5126#line 137
5127 __cil_tmp89 = __cil_tmp88 + 7UL;
5128#line 137
5129 __cil_tmp90 = 6 * 1UL;
5130#line 137
5131 __cil_tmp91 = (unsigned long )(save_cmnd) + __cil_tmp90;
5132#line 137
5133 *__cil_tmp89 = *((unsigned char *)__cil_tmp91);
5134#line 138
5135 __cil_tmp92 = (unsigned long )srb;
5136#line 138
5137 __cil_tmp93 = __cil_tmp92 + 80;
5138#line 138
5139 __cil_tmp94 = *((unsigned char **)__cil_tmp93);
5140#line 138
5141 __cil_tmp95 = __cil_tmp94 + 8UL;
5142#line 138
5143 __cil_tmp96 = 8 * 1UL;
5144#line 138
5145 __cil_tmp97 = (unsigned long )(save_cmnd) + __cil_tmp96;
5146#line 138
5147 *__cil_tmp95 = *((unsigned char *)__cil_tmp97);
5148#line 139
5149 __cil_tmp98 = (unsigned long )srb;
5150#line 139
5151 __cil_tmp99 = __cil_tmp98 + 80;
5152#line 139
5153 __cil_tmp100 = *((unsigned char **)__cil_tmp99);
5154#line 139
5155 __cil_tmp101 = __cil_tmp100 + 9UL;
5156#line 139
5157 __cil_tmp102 = 10 * 1UL;
5158#line 139
5159 __cil_tmp103 = (unsigned long )(save_cmnd) + __cil_tmp102;
5160#line 139
5161 *__cil_tmp101 = *((unsigned char *)__cil_tmp103);
5162#line 140
5163 __cil_tmp104 = (unsigned long )srb;
5164#line 140
5165 __cil_tmp105 = __cil_tmp104 + 80;
5166#line 140
5167 __cil_tmp106 = *((unsigned char **)__cil_tmp105);
5168#line 140
5169 __cil_tmp107 = __cil_tmp106 + 10UL;
5170#line 140
5171 __cil_tmp108 = 12 * 1UL;
5172#line 140
5173 __cil_tmp109 = (unsigned long )(save_cmnd) + __cil_tmp108;
5174#line 140
5175 *__cil_tmp107 = *((unsigned char *)__cil_tmp109);
5176#line 141
5177 __cil_tmp110 = (unsigned long )srb;
5178#line 141
5179 __cil_tmp111 = __cil_tmp110 + 80;
5180#line 141
5181 __cil_tmp112 = *((unsigned char **)__cil_tmp111);
5182#line 141
5183 __cil_tmp113 = __cil_tmp112 + 11UL;
5184#line 141
5185 __cil_tmp114 = 13 * 1UL;
5186#line 141
5187 __cil_tmp115 = (unsigned long )(save_cmnd) + __cil_tmp114;
5188#line 141
5189 *__cil_tmp113 = *((unsigned char *)__cil_tmp115);
5190#line 142
5191 __cil_tmp116 = (unsigned long )srb;
5192#line 142
5193 __cil_tmp117 = __cil_tmp116 + 80;
5194#line 142
5195 __cil_tmp118 = *((unsigned char **)__cil_tmp117);
5196#line 142
5197 __cil_tmp119 = __cil_tmp118 + 12UL;
5198#line 142
5199 __cil_tmp120 = 14 * 1UL;
5200#line 142
5201 __cil_tmp121 = (unsigned long )(save_cmnd) + __cil_tmp120;
5202#line 142
5203 *__cil_tmp119 = *((unsigned char *)__cil_tmp121);
5204 {
5205#line 144
5206 __cil_tmp122 = 1 * 1UL;
5207#line 144
5208 __cil_tmp123 = (unsigned long )(save_cmnd) + __cil_tmp122;
5209#line 144
5210 __cil_tmp124 = *((unsigned char *)__cil_tmp123);
5211#line 144
5212 __cil_tmp125 = (int )__cil_tmp124;
5213#line 144
5214 if (__cil_tmp125 & 1) {
5215 {
5216#line 146
5217 __cil_tmp126 = 3 * 1UL;
5218#line 146
5219 __cil_tmp127 = (unsigned long )(save_cmnd) + __cil_tmp126;
5220#line 146
5221 __cil_tmp128 = *((unsigned char *)__cil_tmp127);
5222#line 146
5223 __cil_tmp129 = (unsigned int )__cil_tmp128;
5224#line 146
5225 if (__cil_tmp129 != 0U) {
5226#line 148
5227 goto invalid_fld;
5228 } else {
5229 {
5230#line 146
5231 __cil_tmp130 = 5 * 1UL;
5232#line 146
5233 __cil_tmp131 = (unsigned long )(save_cmnd) + __cil_tmp130;
5234#line 146
5235 __cil_tmp132 = *((unsigned char *)__cil_tmp131);
5236#line 146
5237 __cil_tmp133 = (unsigned int )__cil_tmp132;
5238#line 146
5239 if (__cil_tmp133 != 0U) {
5240#line 148
5241 goto invalid_fld;
5242 } else {
5243 {
5244#line 146
5245 __cil_tmp134 = 7 * 1UL;
5246#line 146
5247 __cil_tmp135 = (unsigned long )(save_cmnd) + __cil_tmp134;
5248#line 146
5249 __cil_tmp136 = *((unsigned char *)__cil_tmp135);
5250#line 146
5251 __cil_tmp137 = (unsigned int )__cil_tmp136;
5252#line 146
5253 if (__cil_tmp137 != 0U) {
5254#line 148
5255 goto invalid_fld;
5256 } else {
5257 {
5258#line 146
5259 __cil_tmp138 = 9 * 1UL;
5260#line 146
5261 __cil_tmp139 = (unsigned long )(save_cmnd) + __cil_tmp138;
5262#line 146
5263 __cil_tmp140 = *((unsigned char *)__cil_tmp139);
5264#line 146
5265 __cil_tmp141 = (unsigned int )__cil_tmp140;
5266#line 146
5267 if (__cil_tmp141 != 0U) {
5268#line 148
5269 goto invalid_fld;
5270 } else {
5271 {
5272#line 146
5273 __cil_tmp142 = 11 * 1UL;
5274#line 146
5275 __cil_tmp143 = (unsigned long )(save_cmnd) + __cil_tmp142;
5276#line 146
5277 __cil_tmp144 = *((unsigned char *)__cil_tmp143);
5278#line 146
5279 __cil_tmp145 = (unsigned int )__cil_tmp144;
5280#line 146
5281 if (__cil_tmp145 != 0U) {
5282#line 148
5283 goto invalid_fld;
5284 } else {
5285
5286 }
5287 }
5288 }
5289 }
5290 }
5291 }
5292 }
5293 }
5294 }
5295 }
5296 } else {
5297
5298 }
5299 }
5300 } else {
5301#line 152
5302 __cil_tmp146 = (unsigned long )srb;
5303#line 152
5304 __cil_tmp147 = __cil_tmp146 + 80;
5305#line 152
5306 __cil_tmp148 = *((unsigned char **)__cil_tmp147);
5307#line 152
5308 __cil_tmp149 = __cil_tmp148 + 6UL;
5309#line 152
5310 __cil_tmp150 = 3 * 1UL;
5311#line 152
5312 __cil_tmp151 = (unsigned long )(save_cmnd) + __cil_tmp150;
5313#line 152
5314 *__cil_tmp149 = *((unsigned char *)__cil_tmp151);
5315#line 153
5316 __cil_tmp152 = (unsigned long )srb;
5317#line 153
5318 __cil_tmp153 = __cil_tmp152 + 80;
5319#line 153
5320 __cil_tmp154 = *((unsigned char **)__cil_tmp153);
5321#line 153
5322 __cil_tmp155 = __cil_tmp154 + 7UL;
5323#line 153
5324 __cil_tmp156 = 4 * 1UL;
5325#line 153
5326 __cil_tmp157 = (unsigned long )(save_cmnd) + __cil_tmp156;
5327#line 153
5328 *__cil_tmp155 = *((unsigned char *)__cil_tmp157);
5329#line 154
5330 __cil_tmp158 = (unsigned long )srb;
5331#line 154
5332 __cil_tmp159 = __cil_tmp158 + 80;
5333#line 154
5334 __cil_tmp160 = *((unsigned char **)__cil_tmp159);
5335#line 154
5336 __cil_tmp161 = __cil_tmp160 + 8UL;
5337#line 154
5338 __cil_tmp162 = 5 * 1UL;
5339#line 154
5340 __cil_tmp163 = (unsigned long )(save_cmnd) + __cil_tmp162;
5341#line 154
5342 *__cil_tmp161 = *((unsigned char *)__cil_tmp163);
5343#line 155
5344 __cil_tmp164 = (unsigned long )srb;
5345#line 155
5346 __cil_tmp165 = __cil_tmp164 + 80;
5347#line 155
5348 __cil_tmp166 = *((unsigned char **)__cil_tmp165);
5349#line 155
5350 __cil_tmp167 = __cil_tmp166 + 9UL;
5351#line 155
5352 __cil_tmp168 = 6 * 1UL;
5353#line 155
5354 __cil_tmp169 = (unsigned long )(save_cmnd) + __cil_tmp168;
5355#line 155
5356 *__cil_tmp167 = *((unsigned char *)__cil_tmp169);
5357#line 156
5358 __cil_tmp170 = (unsigned long )srb;
5359#line 156
5360 __cil_tmp171 = __cil_tmp170 + 80;
5361#line 156
5362 __cil_tmp172 = *((unsigned char **)__cil_tmp171);
5363#line 156
5364 __cil_tmp173 = __cil_tmp172 + 10UL;
5365#line 156
5366 __cil_tmp174 = 7 * 1UL;
5367#line 156
5368 __cil_tmp175 = (unsigned long )(save_cmnd) + __cil_tmp174;
5369#line 156
5370 *__cil_tmp173 = *((unsigned char *)__cil_tmp175);
5371#line 157
5372 __cil_tmp176 = (unsigned long )srb;
5373#line 157
5374 __cil_tmp177 = __cil_tmp176 + 80;
5375#line 157
5376 __cil_tmp178 = *((unsigned char **)__cil_tmp177);
5377#line 157
5378 __cil_tmp179 = __cil_tmp178 + 11UL;
5379#line 157
5380 __cil_tmp180 = 8 * 1UL;
5381#line 157
5382 __cil_tmp181 = (unsigned long )(save_cmnd) + __cil_tmp180;
5383#line 157
5384 *__cil_tmp179 = *((unsigned char *)__cil_tmp181);
5385#line 158
5386 __cil_tmp182 = (unsigned long )srb;
5387#line 158
5388 __cil_tmp183 = __cil_tmp182 + 80;
5389#line 158
5390 __cil_tmp184 = *((unsigned char **)__cil_tmp183);
5391#line 158
5392 __cil_tmp185 = __cil_tmp184 + 12UL;
5393#line 158
5394 __cil_tmp186 = 9 * 1UL;
5395#line 158
5396 __cil_tmp187 = (unsigned long )(save_cmnd) + __cil_tmp186;
5397#line 158
5398 *__cil_tmp185 = *((unsigned char *)__cil_tmp187);
5399 }
5400 }
5401 {
5402#line 162
5403 __cil_tmp188 = (unsigned long )srb;
5404#line 162
5405 __cil_tmp189 = __cil_tmp188 + 80;
5406#line 162
5407 __cil_tmp190 = *((unsigned char **)__cil_tmp189);
5408#line 162
5409 __cil_tmp191 = __cil_tmp190 + 12UL;
5410#line 162
5411 __cil_tmp192 = *__cil_tmp191;
5412#line 162
5413 __cil_tmp193 = (unsigned int )__cil_tmp192;
5414#line 162
5415 if (__cil_tmp193 == 239U) {
5416 {
5417#line 162
5418 __cil_tmp194 = (unsigned long )srb;
5419#line 162
5420 __cil_tmp195 = __cil_tmp194 + 80;
5421#line 162
5422 __cil_tmp196 = *((unsigned char **)__cil_tmp195);
5423#line 162
5424 __cil_tmp197 = __cil_tmp196 + 6UL;
5425#line 162
5426 __cil_tmp198 = *__cil_tmp197;
5427#line 162
5428 __cil_tmp199 = (unsigned int )__cil_tmp198;
5429#line 162
5430 if (__cil_tmp199 == 3U) {
5431#line 164
5432 goto invalid_fld;
5433 } else {
5434
5435 }
5436 }
5437 } else {
5438
5439 }
5440 }
5441 {
5442#line 166
5443 __cil_tmp200 = (unsigned long )srb;
5444#line 166
5445 __cil_tmp201 = __cil_tmp200 + 80;
5446#line 166
5447 __cil_tmp202 = *((unsigned char **)__cil_tmp201);
5448#line 166
5449 __cil_tmp203 = __cil_tmp202 + 12UL;
5450#line 166
5451 __cil_tmp204 = *__cil_tmp203;
5452#line 166
5453 __cil_tmp205 = (unsigned int )__cil_tmp204;
5454#line 166
5455 if (__cil_tmp205 == 236U) {
5456#line 167
5457 __cil_tmp206 = (unsigned long )srb;
5458#line 167
5459 __cil_tmp207 = __cil_tmp206 + 80;
5460#line 167
5461 __cil_tmp208 = *((unsigned char **)__cil_tmp207);
5462#line 167
5463 __cil_tmp209 = __cil_tmp208 + 2UL;
5464#line 167
5465 __cil_tmp210 = (unsigned long )srb;
5466#line 167
5467 __cil_tmp211 = __cil_tmp210 + 80;
5468#line 167
5469 __cil_tmp212 = *((unsigned char **)__cil_tmp211);
5470#line 167
5471 __cil_tmp213 = __cil_tmp212 + 2UL;
5472#line 167
5473 __cil_tmp214 = *__cil_tmp213;
5474#line 167
5475 __cil_tmp215 = (unsigned int )__cil_tmp214;
5476#line 167
5477 __cil_tmp216 = __cil_tmp215 | 128U;
5478#line 167
5479 *__cil_tmp209 = (unsigned char )__cil_tmp216;
5480 } else {
5481 {
5482#line 166
5483 __cil_tmp217 = (unsigned long )srb;
5484#line 166
5485 __cil_tmp218 = __cil_tmp217 + 80;
5486#line 166
5487 __cil_tmp219 = *((unsigned char **)__cil_tmp218);
5488#line 166
5489 __cil_tmp220 = __cil_tmp219 + 12UL;
5490#line 166
5491 __cil_tmp221 = *__cil_tmp220;
5492#line 166
5493 __cil_tmp222 = (unsigned int )__cil_tmp221;
5494#line 166
5495 if (__cil_tmp222 == 161U) {
5496#line 167
5497 __cil_tmp223 = (unsigned long )srb;
5498#line 167
5499 __cil_tmp224 = __cil_tmp223 + 80;
5500#line 167
5501 __cil_tmp225 = *((unsigned char **)__cil_tmp224);
5502#line 167
5503 __cil_tmp226 = __cil_tmp225 + 2UL;
5504#line 167
5505 __cil_tmp227 = (unsigned long )srb;
5506#line 167
5507 __cil_tmp228 = __cil_tmp227 + 80;
5508#line 167
5509 __cil_tmp229 = *((unsigned char **)__cil_tmp228);
5510#line 167
5511 __cil_tmp230 = __cil_tmp229 + 2UL;
5512#line 167
5513 __cil_tmp231 = *__cil_tmp230;
5514#line 167
5515 __cil_tmp232 = (unsigned int )__cil_tmp231;
5516#line 167
5517 __cil_tmp233 = __cil_tmp232 | 128U;
5518#line 167
5519 *__cil_tmp226 = (unsigned char )__cil_tmp233;
5520 } else {
5521
5522 }
5523 }
5524 }
5525 }
5526 {
5527#line 170
5528 usb_stor_transparent_scsi_command(srb, us);
5529 }
5530 {
5531#line 174
5532 __cil_tmp234 = (unsigned long )srb;
5533#line 174
5534 __cil_tmp235 = __cil_tmp234 + 224;
5535#line 174
5536 __cil_tmp236 = *((int *)__cil_tmp235);
5537#line 174
5538 if (__cil_tmp236 == 2) {
5539 {
5540#line 174
5541 __cil_tmp237 = (unsigned long )srb;
5542#line 174
5543 __cil_tmp238 = __cil_tmp237 + 136;
5544#line 174
5545 __cil_tmp239 = *((unsigned char **)__cil_tmp238);
5546#line 174
5547 __cil_tmp240 = (void const *)__cil_tmp239;
5548#line 174
5549 __cil_tmp241 = (void const *)(& usb_stor_sense_invalidCDB);
5550#line 174
5551 tmp___1 = memcmp(__cil_tmp240, __cil_tmp241, 18UL);
5552 }
5553#line 174
5554 if (tmp___1 == 0) {
5555 {
5556#line 177
5557 printk("<7>usb-storage: cypress atacb not supported ???\n");
5558 }
5559#line 178
5560 goto end;
5561 } else {
5562
5563 }
5564 } else {
5565
5566 }
5567 }
5568 {
5569#line 184
5570 __cil_tmp242 = (unsigned long )srb;
5571#line 184
5572 __cil_tmp243 = __cil_tmp242 + 224;
5573#line 184
5574 __cil_tmp244 = *((int *)__cil_tmp243);
5575#line 184
5576 if (__cil_tmp244 != 458752) {
5577 {
5578#line 184
5579 __cil_tmp245 = (unsigned long )srb;
5580#line 184
5581 __cil_tmp246 = __cil_tmp245 + 224;
5582#line 184
5583 __cil_tmp247 = *((int *)__cil_tmp246);
5584#line 184
5585 if (__cil_tmp247 != 327680) {
5586 {
5587#line 184
5588 __cil_tmp248 = 2 * 1UL;
5589#line 184
5590 __cil_tmp249 = (unsigned long )(save_cmnd) + __cil_tmp248;
5591#line 184
5592 __cil_tmp250 = *((unsigned char *)__cil_tmp249);
5593#line 184
5594 __cil_tmp251 = (int )__cil_tmp250;
5595#line 184
5596 __cil_tmp252 = __cil_tmp251 & 32;
5597#line 184
5598 if (__cil_tmp252 != 0) {
5599 {
5600#line 189
5601 __cil_tmp253 = (unsigned long )srb;
5602#line 189
5603 __cil_tmp254 = __cil_tmp253 + 136;
5604#line 189
5605 sb = *((unsigned char **)__cil_tmp254);
5606#line 190
5607 desc = sb + 8UL;
5608#line 195
5609 __cil_tmp255 = (unsigned char *)0;
5610#line 195
5611 scsi_eh_prep_cmnd(srb, & ses, __cil_tmp255, 0, 8U);
5612#line 201
5613 __cil_tmp256 = (unsigned long )srb;
5614#line 201
5615 __cil_tmp257 = __cil_tmp256 + 74;
5616#line 201
5617 *((unsigned short *)__cil_tmp257) = (unsigned short)16;
5618#line 202
5619 __cil_tmp258 = (unsigned long )srb;
5620#line 202
5621 __cil_tmp259 = __cil_tmp258 + 80;
5622#line 202
5623 __cil_tmp260 = (unsigned long )(& ses) + 16;
5624#line 202
5625 *((unsigned char **)__cil_tmp259) = *((unsigned char **)__cil_tmp260);
5626#line 203
5627 __cil_tmp261 = (unsigned long )srb;
5628#line 203
5629 __cil_tmp262 = __cil_tmp261 + 80;
5630#line 203
5631 __cil_tmp263 = *((unsigned char **)__cil_tmp262);
5632#line 203
5633 __cil_tmp264 = __cil_tmp263 + 2UL;
5634#line 203
5635 *__cil_tmp264 = (unsigned char)1;
5636#line 205
5637 usb_stor_transparent_scsi_command(srb, us);
5638#line 206
5639 __len___0 = 8UL;
5640 }
5641#line 206
5642 if (__len___0 > 63UL) {
5643 {
5644#line 206
5645 __cil_tmp265 = (void *)(& regs);
5646#line 206
5647 __cil_tmp266 = (unsigned long )srb;
5648#line 206
5649 __cil_tmp267 = __cil_tmp266 + 136;
5650#line 206
5651 __cil_tmp268 = *((unsigned char **)__cil_tmp267);
5652#line 206
5653 __cil_tmp269 = (void const *)__cil_tmp268;
5654#line 206
5655 __ret___0 = __memcpy(__cil_tmp265, __cil_tmp269, __len___0);
5656 }
5657 } else {
5658 {
5659#line 206
5660 __cil_tmp270 = (void *)(& regs);
5661#line 206
5662 __cil_tmp271 = (unsigned long )srb;
5663#line 206
5664 __cil_tmp272 = __cil_tmp271 + 136;
5665#line 206
5666 __cil_tmp273 = *((unsigned char **)__cil_tmp272);
5667#line 206
5668 __cil_tmp274 = (void const *)__cil_tmp273;
5669#line 206
5670 __ret___0 = __builtin_memcpy(__cil_tmp270, __cil_tmp274, __len___0);
5671 }
5672 }
5673 {
5674#line 207
5675 __cil_tmp275 = (unsigned long )srb;
5676#line 207
5677 __cil_tmp276 = __cil_tmp275 + 224;
5678#line 207
5679 tmp_result = *((int *)__cil_tmp276);
5680#line 208
5681 scsi_eh_restore_cmnd(srb, & ses);
5682 }
5683#line 210
5684 if (tmp_result != 0) {
5685#line 211
5686 goto invalid_fld;
5687 } else {
5688
5689 }
5690 {
5691#line 214
5692 __cil_tmp277 = (void *)sb;
5693#line 214
5694 memset(__cil_tmp277, 0, 96UL);
5695#line 217
5696 __cil_tmp278 = sb + 1UL;
5697#line 217
5698 *__cil_tmp278 = (unsigned char)1;
5699#line 218
5700 __cil_tmp279 = sb + 2UL;
5701#line 218
5702 *__cil_tmp279 = (unsigned char)0;
5703#line 219
5704 __cil_tmp280 = sb + 3UL;
5705#line 219
5706 *__cil_tmp280 = (unsigned char)29;
5707#line 228
5708 *sb = (unsigned char)114;
5709#line 229
5710 *desc = (unsigned char)9;
5711#line 232
5712 __cil_tmp281 = sb + 7UL;
5713#line 232
5714 *__cil_tmp281 = (unsigned char)14;
5715#line 233
5716 __cil_tmp282 = desc + 1UL;
5717#line 233
5718 *__cil_tmp282 = (unsigned char)12;
5719#line 236
5720 __cil_tmp283 = desc + 2UL;
5721#line 236
5722 *__cil_tmp283 = (unsigned char)0;
5723#line 237
5724 __cil_tmp284 = desc + 3UL;
5725#line 237
5726 __cil_tmp285 = 1 * 1UL;
5727#line 237
5728 __cil_tmp286 = (unsigned long )(regs) + __cil_tmp285;
5729#line 237
5730 *__cil_tmp284 = *((unsigned char *)__cil_tmp286);
5731#line 238
5732 __cil_tmp287 = desc + 5UL;
5733#line 238
5734 __cil_tmp288 = 2 * 1UL;
5735#line 238
5736 __cil_tmp289 = (unsigned long )(regs) + __cil_tmp288;
5737#line 238
5738 *__cil_tmp287 = *((unsigned char *)__cil_tmp289);
5739#line 239
5740 __cil_tmp290 = desc + 7UL;
5741#line 239
5742 __cil_tmp291 = 3 * 1UL;
5743#line 239
5744 __cil_tmp292 = (unsigned long )(regs) + __cil_tmp291;
5745#line 239
5746 *__cil_tmp290 = *((unsigned char *)__cil_tmp292);
5747#line 240
5748 __cil_tmp293 = desc + 9UL;
5749#line 240
5750 __cil_tmp294 = 4 * 1UL;
5751#line 240
5752 __cil_tmp295 = (unsigned long )(regs) + __cil_tmp294;
5753#line 240
5754 *__cil_tmp293 = *((unsigned char *)__cil_tmp295);
5755#line 241
5756 __cil_tmp296 = desc + 11UL;
5757#line 241
5758 __cil_tmp297 = 5 * 1UL;
5759#line 241
5760 __cil_tmp298 = (unsigned long )(regs) + __cil_tmp297;
5761#line 241
5762 *__cil_tmp296 = *((unsigned char *)__cil_tmp298);
5763#line 242
5764 __cil_tmp299 = desc + 12UL;
5765#line 242
5766 __cil_tmp300 = 6 * 1UL;
5767#line 242
5768 __cil_tmp301 = (unsigned long )(regs) + __cil_tmp300;
5769#line 242
5770 *__cil_tmp299 = *((unsigned char *)__cil_tmp301);
5771#line 243
5772 __cil_tmp302 = desc + 13UL;
5773#line 243
5774 __cil_tmp303 = 7 * 1UL;
5775#line 243
5776 __cil_tmp304 = (unsigned long )(regs) + __cil_tmp303;
5777#line 243
5778 *__cil_tmp302 = *((unsigned char *)__cil_tmp304);
5779#line 245
5780 __cil_tmp305 = (unsigned long )srb;
5781#line 245
5782 __cil_tmp306 = __cil_tmp305 + 224;
5783#line 245
5784 *((int *)__cil_tmp306) = 134217730;
5785 }
5786 } else {
5787
5788 }
5789 }
5790 } else {
5791
5792 }
5793 }
5794 } else {
5795
5796 }
5797 }
5798#line 247
5799 goto end;
5800 invalid_fld:
5801#line 249
5802 __cil_tmp307 = (unsigned long )srb;
5803#line 249
5804 __cil_tmp308 = __cil_tmp307 + 224;
5805#line 249
5806 *((int *)__cil_tmp308) = 134217730;
5807#line 251
5808 __len___1 = 18UL;
5809#line 251
5810 if (__len___1 > 63UL) {
5811 {
5812#line 251
5813 __cil_tmp309 = (unsigned long )srb;
5814#line 251
5815 __cil_tmp310 = __cil_tmp309 + 136;
5816#line 251
5817 __cil_tmp311 = *((unsigned char **)__cil_tmp310);
5818#line 251
5819 __cil_tmp312 = (void *)__cil_tmp311;
5820#line 251
5821 __cil_tmp313 = (void const *)(& usb_stor_sense_invalidCDB);
5822#line 251
5823 __ret___1 = __memcpy(__cil_tmp312, __cil_tmp313, __len___1);
5824 }
5825 } else {
5826 {
5827#line 251
5828 __cil_tmp314 = (unsigned long )srb;
5829#line 251
5830 __cil_tmp315 = __cil_tmp314 + 136;
5831#line 251
5832 __cil_tmp316 = *((unsigned char **)__cil_tmp315);
5833#line 251
5834 __cil_tmp317 = (void *)__cil_tmp316;
5835#line 251
5836 __cil_tmp318 = (void const *)(& usb_stor_sense_invalidCDB);
5837#line 251
5838 __ret___1 = __builtin_memcpy(__cil_tmp317, __cil_tmp318, __len___1);
5839 }
5840 }
5841 end:
5842#line 255
5843 __len___2 = 16UL;
5844#line 255
5845 if (__len___2 > 63UL) {
5846 {
5847#line 255
5848 __cil_tmp319 = (unsigned long )srb;
5849#line 255
5850 __cil_tmp320 = __cil_tmp319 + 80;
5851#line 255
5852 __cil_tmp321 = *((unsigned char **)__cil_tmp320);
5853#line 255
5854 __cil_tmp322 = (void *)__cil_tmp321;
5855#line 255
5856 __cil_tmp323 = (void const *)(& save_cmnd);
5857#line 255
5858 __ret___2 = __memcpy(__cil_tmp322, __cil_tmp323, __len___2);
5859 }
5860 } else {
5861 {
5862#line 255
5863 __cil_tmp324 = (unsigned long )srb;
5864#line 255
5865 __cil_tmp325 = __cil_tmp324 + 80;
5866#line 255
5867 __cil_tmp326 = *((unsigned char **)__cil_tmp325);
5868#line 255
5869 __cil_tmp327 = (void *)__cil_tmp326;
5870#line 255
5871 __cil_tmp328 = (void const *)(& save_cmnd);
5872#line 255
5873 __ret___2 = __builtin_memcpy(__cil_tmp327, __cil_tmp328, __len___2);
5874 }
5875 }
5876 {
5877#line 256
5878 __cil_tmp329 = (unsigned long )srb;
5879#line 256
5880 __cil_tmp330 = __cil_tmp329 + 80;
5881#line 256
5882 __cil_tmp331 = *((unsigned char **)__cil_tmp330);
5883#line 256
5884 __cil_tmp332 = *__cil_tmp331;
5885#line 256
5886 __cil_tmp333 = (unsigned int )__cil_tmp332;
5887#line 256
5888 if (__cil_tmp333 == 161U) {
5889#line 257
5890 __cil_tmp334 = (unsigned long )srb;
5891#line 257
5892 __cil_tmp335 = __cil_tmp334 + 74;
5893#line 257
5894 *((unsigned short *)__cil_tmp335) = (unsigned short)12;
5895 } else {
5896
5897 }
5898 }
5899#line 258
5900 return;
5901}
5902}
5903#line 261 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
5904static int cypress_probe(struct usb_interface *intf , struct usb_device_id const *id )
5905{ struct us_data *us ;
5906 int result ;
5907 long __cil_tmp5 ;
5908 long __cil_tmp6 ;
5909 long __cil_tmp7 ;
5910 long __cil_tmp8 ;
5911 unsigned long __cil_tmp9 ;
5912 struct us_unusual_dev *__cil_tmp10 ;
5913 struct us_unusual_dev *__cil_tmp11 ;
5914 struct us_data **__cil_tmp12 ;
5915 struct us_data *__cil_tmp13 ;
5916 unsigned long __cil_tmp14 ;
5917 unsigned long __cil_tmp15 ;
5918 struct us_data **__cil_tmp16 ;
5919 struct us_data *__cil_tmp17 ;
5920 unsigned long __cil_tmp18 ;
5921 unsigned long __cil_tmp19 ;
5922 struct us_data **__cil_tmp20 ;
5923 struct us_data *__cil_tmp21 ;
5924
5925 {
5926 {
5927#line 267
5928 __cil_tmp5 = (long )(& cypress_usb_ids);
5929#line 267
5930 __cil_tmp6 = (long )id;
5931#line 267
5932 __cil_tmp7 = __cil_tmp6 - __cil_tmp5;
5933#line 267
5934 __cil_tmp8 = __cil_tmp7 / 24L;
5935#line 267
5936 __cil_tmp9 = (unsigned long )__cil_tmp8;
5937#line 267
5938 __cil_tmp10 = (struct us_unusual_dev *)(& cypress_unusual_dev_list);
5939#line 267
5940 __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
5941#line 267
5942 result = usb_stor_probe1(& us, intf, id, __cil_tmp11);
5943 }
5944#line 269
5945 if (result != 0) {
5946#line 270
5947 return (result);
5948 } else {
5949
5950 }
5951 {
5952#line 272
5953 __cil_tmp12 = & us;
5954#line 272
5955 __cil_tmp13 = *__cil_tmp12;
5956#line 272
5957 __cil_tmp14 = (unsigned long )__cil_tmp13;
5958#line 272
5959 __cil_tmp15 = __cil_tmp14 + 240;
5960#line 272
5961 *((char **)__cil_tmp15) = (char *)"Transparent SCSI with Cypress ATACB";
5962#line 273
5963 __cil_tmp16 = & us;
5964#line 273
5965 __cil_tmp17 = *__cil_tmp16;
5966#line 273
5967 __cil_tmp18 = (unsigned long )__cil_tmp17;
5968#line 273
5969 __cil_tmp19 = __cil_tmp18 + 280;
5970#line 273
5971 *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp19) = & cypress_atacb_passthrough;
5972#line 275
5973 __cil_tmp20 = & us;
5974#line 275
5975 __cil_tmp21 = *__cil_tmp20;
5976#line 275
5977 result = usb_stor_probe2(__cil_tmp21);
5978 }
5979#line 276
5980 return (result);
5981}
5982}
5983#line 311
5984extern void ldv_check_final_state(void) ;
5985#line 314
5986extern void ldv_check_return_value(int ) ;
5987#line 317
5988extern void ldv_initialize(void) ;
5989#line 320
5990extern int __VERIFIER_nondet_int(void) ;
5991#line 323 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
5992int LDV_IN_INTERRUPT ;
5993#line 326 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
5994void main(void)
5995{ struct usb_interface *var_group1 ;
5996 struct usb_device_id const *var_cypress_probe_1_p1 ;
5997 int res_cypress_probe_1 ;
5998 int ldv_s_cypress_driver_usb_driver ;
5999 int tmp ;
6000 int tmp___0 ;
6001
6002 {
6003 {
6004#line 376
6005 ldv_s_cypress_driver_usb_driver = 0;
6006#line 366
6007 LDV_IN_INTERRUPT = 1;
6008#line 375
6009 ldv_initialize();
6010 }
6011#line 379
6012 goto ldv_31301;
6013 ldv_31300:
6014 {
6015#line 383
6016 tmp = __VERIFIER_nondet_int();
6017 }
6018#line 385
6019 if (tmp == 0) {
6020#line 385
6021 goto case_0;
6022 } else {
6023 {
6024#line 422
6025 goto switch_default;
6026#line 383
6027 if (0) {
6028 case_0: ;
6029#line 388
6030 if (ldv_s_cypress_driver_usb_driver == 0) {
6031 {
6032#line 411
6033 res_cypress_probe_1 = cypress_probe(var_group1, var_cypress_probe_1_p1);
6034#line 412
6035 ldv_check_return_value(res_cypress_probe_1);
6036 }
6037#line 413
6038 if (res_cypress_probe_1 != 0) {
6039#line 414
6040 goto ldv_module_exit;
6041 } else {
6042
6043 }
6044#line 415
6045 ldv_s_cypress_driver_usb_driver = 0;
6046 } else {
6047
6048 }
6049#line 421
6050 goto ldv_31298;
6051 switch_default: ;
6052#line 422
6053 goto ldv_31298;
6054 } else {
6055 switch_break: ;
6056 }
6057 }
6058 }
6059 ldv_31298: ;
6060 ldv_31301:
6061 {
6062#line 379
6063 tmp___0 = __VERIFIER_nondet_int();
6064 }
6065#line 379
6066 if (tmp___0 != 0) {
6067#line 381
6068 goto ldv_31300;
6069 } else
6070#line 379
6071 if (ldv_s_cypress_driver_usb_driver != 0) {
6072#line 381
6073 goto ldv_31300;
6074 } else {
6075#line 383
6076 goto ldv_31302;
6077 }
6078 ldv_31302: ;
6079 ldv_module_exit: ;
6080 {
6081#line 431
6082 ldv_check_final_state();
6083 }
6084#line 434
6085 return;
6086}
6087}
6088#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
6089void ldv_blast_assert(void)
6090{
6091
6092 {
6093 ERROR: ;
6094#line 6
6095 goto ERROR;
6096}
6097}
6098#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
6099extern int __VERIFIER_nondet_int(void) ;
6100#line 455 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6101int ldv_spin = 0;
6102#line 459 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6103void ldv_check_alloc_flags(gfp_t flags )
6104{
6105
6106 {
6107#line 462
6108 if (ldv_spin != 0) {
6109#line 462
6110 if (flags != 32U) {
6111 {
6112#line 462
6113 ldv_blast_assert();
6114 }
6115 } else {
6116
6117 }
6118 } else {
6119
6120 }
6121#line 465
6122 return;
6123}
6124}
6125#line 465
6126extern struct page *ldv_some_page(void) ;
6127#line 468 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6128struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
6129{ struct page *tmp ;
6130
6131 {
6132#line 471
6133 if (ldv_spin != 0) {
6134#line 471
6135 if (flags != 32U) {
6136 {
6137#line 471
6138 ldv_blast_assert();
6139 }
6140 } else {
6141
6142 }
6143 } else {
6144
6145 }
6146 {
6147#line 473
6148 tmp = ldv_some_page();
6149 }
6150#line 473
6151 return (tmp);
6152}
6153}
6154#line 477 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6155void ldv_check_alloc_nonatomic(void)
6156{
6157
6158 {
6159#line 480
6160 if (ldv_spin != 0) {
6161 {
6162#line 480
6163 ldv_blast_assert();
6164 }
6165 } else {
6166
6167 }
6168#line 483
6169 return;
6170}
6171}
6172#line 484 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6173void ldv_spin_lock(void)
6174{
6175
6176 {
6177#line 487
6178 ldv_spin = 1;
6179#line 488
6180 return;
6181}
6182}
6183#line 491 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6184void ldv_spin_unlock(void)
6185{
6186
6187 {
6188#line 494
6189 ldv_spin = 0;
6190#line 495
6191 return;
6192}
6193}
6194#line 498 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6195int ldv_spin_trylock(void)
6196{ int is_lock ;
6197
6198 {
6199 {
6200#line 503
6201 is_lock = __VERIFIER_nondet_int();
6202 }
6203#line 505
6204 if (is_lock != 0) {
6205#line 508
6206 return (0);
6207 } else {
6208#line 513
6209 ldv_spin = 1;
6210#line 515
6211 return (1);
6212 }
6213}
6214}
6215#line 682 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2013/dscv_tempdir/dscv/ri/43_1a/drivers/usb/storage/cypress_atacb.c.p"
6216void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
6217{
6218
6219 {
6220 {
6221#line 688
6222 ldv_check_alloc_flags(ldv_func_arg2);
6223#line 690
6224 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
6225 }
6226#line 691
6227 return ((void *)0);
6228}
6229}