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