1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 20 "include/asm-generic/int-ll64.h"
7typedef unsigned char __u8;
8#line 22 "include/asm-generic/int-ll64.h"
9typedef short __s16;
10#line 23 "include/asm-generic/int-ll64.h"
11typedef unsigned short __u16;
12#line 25 "include/asm-generic/int-ll64.h"
13typedef int __s32;
14#line 26 "include/asm-generic/int-ll64.h"
15typedef unsigned int __u32;
16#line 29 "include/asm-generic/int-ll64.h"
17typedef long long __s64;
18#line 30 "include/asm-generic/int-ll64.h"
19typedef unsigned long long __u64;
20#line 43 "include/asm-generic/int-ll64.h"
21typedef unsigned char u8;
22#line 45 "include/asm-generic/int-ll64.h"
23typedef short s16;
24#line 46 "include/asm-generic/int-ll64.h"
25typedef unsigned short u16;
26#line 48 "include/asm-generic/int-ll64.h"
27typedef int s32;
28#line 49 "include/asm-generic/int-ll64.h"
29typedef unsigned int u32;
30#line 51 "include/asm-generic/int-ll64.h"
31typedef long long s64;
32#line 52 "include/asm-generic/int-ll64.h"
33typedef unsigned long long u64;
34#line 14 "include/asm-generic/posix_types.h"
35typedef long __kernel_long_t;
36#line 15 "include/asm-generic/posix_types.h"
37typedef unsigned long __kernel_ulong_t;
38#line 31 "include/asm-generic/posix_types.h"
39typedef int __kernel_pid_t;
40#line 52 "include/asm-generic/posix_types.h"
41typedef unsigned int __kernel_uid32_t;
42#line 53 "include/asm-generic/posix_types.h"
43typedef unsigned int __kernel_gid32_t;
44#line 75 "include/asm-generic/posix_types.h"
45typedef __kernel_ulong_t __kernel_size_t;
46#line 76 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_ssize_t;
48#line 91 "include/asm-generic/posix_types.h"
49typedef long long __kernel_loff_t;
50#line 92 "include/asm-generic/posix_types.h"
51typedef __kernel_long_t __kernel_time_t;
52#line 93 "include/asm-generic/posix_types.h"
53typedef __kernel_long_t __kernel_clock_t;
54#line 94 "include/asm-generic/posix_types.h"
55typedef int __kernel_timer_t;
56#line 95 "include/asm-generic/posix_types.h"
57typedef int __kernel_clockid_t;
58#line 21 "include/linux/types.h"
59typedef __u32 __kernel_dev_t;
60#line 24 "include/linux/types.h"
61typedef __kernel_dev_t dev_t;
62#line 27 "include/linux/types.h"
63typedef unsigned short umode_t;
64#line 30 "include/linux/types.h"
65typedef __kernel_pid_t pid_t;
66#line 35 "include/linux/types.h"
67typedef __kernel_clockid_t clockid_t;
68#line 38 "include/linux/types.h"
69typedef _Bool bool;
70#line 40 "include/linux/types.h"
71typedef __kernel_uid32_t uid_t;
72#line 41 "include/linux/types.h"
73typedef __kernel_gid32_t gid_t;
74#line 54 "include/linux/types.h"
75typedef __kernel_loff_t loff_t;
76#line 63 "include/linux/types.h"
77typedef __kernel_size_t size_t;
78#line 68 "include/linux/types.h"
79typedef __kernel_ssize_t ssize_t;
80#line 78 "include/linux/types.h"
81typedef __kernel_time_t time_t;
82#line 111 "include/linux/types.h"
83typedef __s32 int32_t;
84#line 117 "include/linux/types.h"
85typedef __u32 uint32_t;
86#line 142 "include/linux/types.h"
87typedef unsigned long sector_t;
88#line 143 "include/linux/types.h"
89typedef unsigned long blkcnt_t;
90#line 155 "include/linux/types.h"
91typedef u64 dma_addr_t;
92#line 178 "include/linux/types.h"
93typedef __u16 __le16;
94#line 180 "include/linux/types.h"
95typedef __u32 __le32;
96#line 202 "include/linux/types.h"
97typedef unsigned int gfp_t;
98#line 203 "include/linux/types.h"
99typedef unsigned int fmode_t;
100#line 221 "include/linux/types.h"
101struct __anonstruct_atomic_t_6 {
102 int counter ;
103};
104#line 221 "include/linux/types.h"
105typedef struct __anonstruct_atomic_t_6 atomic_t;
106#line 226 "include/linux/types.h"
107struct __anonstruct_atomic64_t_7 {
108 long counter ;
109};
110#line 226 "include/linux/types.h"
111typedef struct __anonstruct_atomic64_t_7 atomic64_t;
112#line 227 "include/linux/types.h"
113struct list_head {
114 struct list_head *next ;
115 struct list_head *prev ;
116};
117#line 232
118struct hlist_node;
119#line 232 "include/linux/types.h"
120struct hlist_head {
121 struct hlist_node *first ;
122};
123#line 236 "include/linux/types.h"
124struct hlist_node {
125 struct hlist_node *next ;
126 struct hlist_node **pprev ;
127};
128#line 247 "include/linux/types.h"
129struct rcu_head {
130 struct rcu_head *next ;
131 void (*func)(struct rcu_head * ) ;
132};
133#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
134struct module;
135#line 55
136struct module;
137#line 146 "include/linux/init.h"
138typedef void (*ctor_fn_t)(void);
139#line 46 "include/linux/dynamic_debug.h"
140struct device;
141#line 46
142struct device;
143#line 57
144struct completion;
145#line 57
146struct completion;
147#line 58
148struct pt_regs;
149#line 58
150struct pt_regs;
151#line 348 "include/linux/kernel.h"
152struct pid;
153#line 348
154struct pid;
155#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
156struct timespec;
157#line 112
158struct timespec;
159#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
160struct page;
161#line 58
162struct page;
163#line 26 "include/asm-generic/getorder.h"
164struct task_struct;
165#line 26
166struct task_struct;
167#line 28
168struct mm_struct;
169#line 28
170struct mm_struct;
171#line 268 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/segment.h"
172struct pt_regs {
173 unsigned long r15 ;
174 unsigned long r14 ;
175 unsigned long r13 ;
176 unsigned long r12 ;
177 unsigned long bp ;
178 unsigned long bx ;
179 unsigned long r11 ;
180 unsigned long r10 ;
181 unsigned long r9 ;
182 unsigned long r8 ;
183 unsigned long ax ;
184 unsigned long cx ;
185 unsigned long dx ;
186 unsigned long si ;
187 unsigned long di ;
188 unsigned long orig_ax ;
189 unsigned long ip ;
190 unsigned long cs ;
191 unsigned long flags ;
192 unsigned long sp ;
193 unsigned long ss ;
194};
195#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
196struct __anonstruct_ldv_2180_13 {
197 unsigned int a ;
198 unsigned int b ;
199};
200#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
201struct __anonstruct_ldv_2195_14 {
202 u16 limit0 ;
203 u16 base0 ;
204 unsigned char base1 ;
205 unsigned char type : 4 ;
206 unsigned char s : 1 ;
207 unsigned char dpl : 2 ;
208 unsigned char p : 1 ;
209 unsigned char limit : 4 ;
210 unsigned char avl : 1 ;
211 unsigned char l : 1 ;
212 unsigned char d : 1 ;
213 unsigned char g : 1 ;
214 unsigned char base2 ;
215};
216#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
217union __anonunion_ldv_2196_12 {
218 struct __anonstruct_ldv_2180_13 ldv_2180 ;
219 struct __anonstruct_ldv_2195_14 ldv_2195 ;
220};
221#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
222struct desc_struct {
223 union __anonunion_ldv_2196_12 ldv_2196 ;
224};
225#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
226typedef unsigned long pgdval_t;
227#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
228typedef unsigned long pgprotval_t;
229#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
230struct pgprot {
231 pgprotval_t pgprot ;
232};
233#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
234typedef struct pgprot pgprot_t;
235#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
236struct __anonstruct_pgd_t_16 {
237 pgdval_t pgd ;
238};
239#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
240typedef struct __anonstruct_pgd_t_16 pgd_t;
241#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
242typedef struct page *pgtable_t;
243#line 290
244struct file;
245#line 290
246struct file;
247#line 305
248struct seq_file;
249#line 305
250struct seq_file;
251#line 337
252struct thread_struct;
253#line 337
254struct thread_struct;
255#line 339
256struct cpumask;
257#line 339
258struct cpumask;
259#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
260struct arch_spinlock;
261#line 327
262struct arch_spinlock;
263#line 300 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
264struct kernel_vm86_regs {
265 struct pt_regs pt ;
266 unsigned short es ;
267 unsigned short __esh ;
268 unsigned short ds ;
269 unsigned short __dsh ;
270 unsigned short fs ;
271 unsigned short __fsh ;
272 unsigned short gs ;
273 unsigned short __gsh ;
274};
275#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
276union __anonunion_ldv_2824_19 {
277 struct pt_regs *regs ;
278 struct kernel_vm86_regs *vm86 ;
279};
280#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
281struct math_emu_info {
282 long ___orig_eip ;
283 union __anonunion_ldv_2824_19 ldv_2824 ;
284};
285#line 306 "include/linux/bitmap.h"
286struct bug_entry {
287 int bug_addr_disp ;
288 int file_disp ;
289 unsigned short line ;
290 unsigned short flags ;
291};
292#line 89 "include/linux/bug.h"
293struct cpumask {
294 unsigned long bits[64U] ;
295};
296#line 14 "include/linux/cpumask.h"
297typedef struct cpumask cpumask_t;
298#line 637 "include/linux/cpumask.h"
299typedef struct cpumask *cpumask_var_t;
300#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
301struct static_key;
302#line 234
303struct static_key;
304#line 287 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
305struct i387_fsave_struct {
306 u32 cwd ;
307 u32 swd ;
308 u32 twd ;
309 u32 fip ;
310 u32 fcs ;
311 u32 foo ;
312 u32 fos ;
313 u32 st_space[20U] ;
314 u32 status ;
315};
316#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
317struct __anonstruct_ldv_5180_24 {
318 u64 rip ;
319 u64 rdp ;
320};
321#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
322struct __anonstruct_ldv_5186_25 {
323 u32 fip ;
324 u32 fcs ;
325 u32 foo ;
326 u32 fos ;
327};
328#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
329union __anonunion_ldv_5187_23 {
330 struct __anonstruct_ldv_5180_24 ldv_5180 ;
331 struct __anonstruct_ldv_5186_25 ldv_5186 ;
332};
333#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
334union __anonunion_ldv_5196_26 {
335 u32 padding1[12U] ;
336 u32 sw_reserved[12U] ;
337};
338#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
339struct i387_fxsave_struct {
340 u16 cwd ;
341 u16 swd ;
342 u16 twd ;
343 u16 fop ;
344 union __anonunion_ldv_5187_23 ldv_5187 ;
345 u32 mxcsr ;
346 u32 mxcsr_mask ;
347 u32 st_space[32U] ;
348 u32 xmm_space[64U] ;
349 u32 padding[12U] ;
350 union __anonunion_ldv_5196_26 ldv_5196 ;
351};
352#line 339 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
353struct i387_soft_struct {
354 u32 cwd ;
355 u32 swd ;
356 u32 twd ;
357 u32 fip ;
358 u32 fcs ;
359 u32 foo ;
360 u32 fos ;
361 u32 st_space[20U] ;
362 u8 ftop ;
363 u8 changed ;
364 u8 lookahead ;
365 u8 no_update ;
366 u8 rm ;
367 u8 alimit ;
368 struct math_emu_info *info ;
369 u32 entry_eip ;
370};
371#line 360 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
372struct ymmh_struct {
373 u32 ymmh_space[64U] ;
374};
375#line 365 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
376struct xsave_hdr_struct {
377 u64 xstate_bv ;
378 u64 reserved1[2U] ;
379 u64 reserved2[5U] ;
380};
381#line 371 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
382struct xsave_struct {
383 struct i387_fxsave_struct i387 ;
384 struct xsave_hdr_struct xsave_hdr ;
385 struct ymmh_struct ymmh ;
386};
387#line 377 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
388union thread_xstate {
389 struct i387_fsave_struct fsave ;
390 struct i387_fxsave_struct fxsave ;
391 struct i387_soft_struct soft ;
392 struct xsave_struct xsave ;
393};
394#line 385 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
395struct fpu {
396 unsigned int last_cpu ;
397 unsigned int has_fpu ;
398 union thread_xstate *state ;
399};
400#line 433
401struct kmem_cache;
402#line 434
403struct perf_event;
404#line 434
405struct perf_event;
406#line 435 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
407struct thread_struct {
408 struct desc_struct tls_array[3U] ;
409 unsigned long sp0 ;
410 unsigned long sp ;
411 unsigned long usersp ;
412 unsigned short es ;
413 unsigned short ds ;
414 unsigned short fsindex ;
415 unsigned short gsindex ;
416 unsigned long fs ;
417 unsigned long gs ;
418 struct perf_event *ptrace_bps[4U] ;
419 unsigned long debugreg6 ;
420 unsigned long ptrace_dr7 ;
421 unsigned long cr2 ;
422 unsigned long trap_nr ;
423 unsigned long error_code ;
424 struct fpu fpu ;
425 unsigned long *io_bitmap_ptr ;
426 unsigned long iopl ;
427 unsigned int io_bitmap_max ;
428};
429#line 23 "include/asm-generic/atomic-long.h"
430typedef atomic64_t atomic_long_t;
431#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
432typedef u16 __ticket_t;
433#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
434typedef u32 __ticketpair_t;
435#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
436struct __raw_tickets {
437 __ticket_t head ;
438 __ticket_t tail ;
439};
440#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
441union __anonunion_ldv_5907_29 {
442 __ticketpair_t head_tail ;
443 struct __raw_tickets tickets ;
444};
445#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
446struct arch_spinlock {
447 union __anonunion_ldv_5907_29 ldv_5907 ;
448};
449#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
450typedef struct arch_spinlock arch_spinlock_t;
451#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
452struct __anonstruct_ldv_5914_31 {
453 u32 read ;
454 s32 write ;
455};
456#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
457union __anonunion_arch_rwlock_t_30 {
458 s64 lock ;
459 struct __anonstruct_ldv_5914_31 ldv_5914 ;
460};
461#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
462typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
463#line 34
464struct lockdep_map;
465#line 34
466struct lockdep_map;
467#line 55 "include/linux/debug_locks.h"
468struct stack_trace {
469 unsigned int nr_entries ;
470 unsigned int max_entries ;
471 unsigned long *entries ;
472 int skip ;
473};
474#line 26 "include/linux/stacktrace.h"
475struct lockdep_subclass_key {
476 char __one_byte ;
477};
478#line 53 "include/linux/lockdep.h"
479struct lock_class_key {
480 struct lockdep_subclass_key subkeys[8U] ;
481};
482#line 59 "include/linux/lockdep.h"
483struct lock_class {
484 struct list_head hash_entry ;
485 struct list_head lock_entry ;
486 struct lockdep_subclass_key *key ;
487 unsigned int subclass ;
488 unsigned int dep_gen_id ;
489 unsigned long usage_mask ;
490 struct stack_trace usage_traces[13U] ;
491 struct list_head locks_after ;
492 struct list_head locks_before ;
493 unsigned int version ;
494 unsigned long ops ;
495 char const *name ;
496 int name_version ;
497 unsigned long contention_point[4U] ;
498 unsigned long contending_point[4U] ;
499};
500#line 144 "include/linux/lockdep.h"
501struct lockdep_map {
502 struct lock_class_key *key ;
503 struct lock_class *class_cache[2U] ;
504 char const *name ;
505 int cpu ;
506 unsigned long ip ;
507};
508#line 187 "include/linux/lockdep.h"
509struct held_lock {
510 u64 prev_chain_key ;
511 unsigned long acquire_ip ;
512 struct lockdep_map *instance ;
513 struct lockdep_map *nest_lock ;
514 u64 waittime_stamp ;
515 u64 holdtime_stamp ;
516 unsigned short class_idx : 13 ;
517 unsigned char irq_context : 2 ;
518 unsigned char trylock : 1 ;
519 unsigned char read : 2 ;
520 unsigned char check : 2 ;
521 unsigned char hardirqs_off : 1 ;
522 unsigned short references : 11 ;
523};
524#line 556 "include/linux/lockdep.h"
525struct raw_spinlock {
526 arch_spinlock_t raw_lock ;
527 unsigned int magic ;
528 unsigned int owner_cpu ;
529 void *owner ;
530 struct lockdep_map dep_map ;
531};
532#line 32 "include/linux/spinlock_types.h"
533typedef struct raw_spinlock raw_spinlock_t;
534#line 33 "include/linux/spinlock_types.h"
535struct __anonstruct_ldv_6122_33 {
536 u8 __padding[24U] ;
537 struct lockdep_map dep_map ;
538};
539#line 33 "include/linux/spinlock_types.h"
540union __anonunion_ldv_6123_32 {
541 struct raw_spinlock rlock ;
542 struct __anonstruct_ldv_6122_33 ldv_6122 ;
543};
544#line 33 "include/linux/spinlock_types.h"
545struct spinlock {
546 union __anonunion_ldv_6123_32 ldv_6123 ;
547};
548#line 76 "include/linux/spinlock_types.h"
549typedef struct spinlock spinlock_t;
550#line 23 "include/linux/rwlock_types.h"
551struct __anonstruct_rwlock_t_34 {
552 arch_rwlock_t raw_lock ;
553 unsigned int magic ;
554 unsigned int owner_cpu ;
555 void *owner ;
556 struct lockdep_map dep_map ;
557};
558#line 23 "include/linux/rwlock_types.h"
559typedef struct __anonstruct_rwlock_t_34 rwlock_t;
560#line 110 "include/linux/seqlock.h"
561struct seqcount {
562 unsigned int sequence ;
563};
564#line 121 "include/linux/seqlock.h"
565typedef struct seqcount seqcount_t;
566#line 254 "include/linux/seqlock.h"
567struct timespec {
568 __kernel_time_t tv_sec ;
569 long tv_nsec ;
570};
571#line 286 "include/linux/time.h"
572struct kstat {
573 u64 ino ;
574 dev_t dev ;
575 umode_t mode ;
576 unsigned int nlink ;
577 uid_t uid ;
578 gid_t gid ;
579 dev_t rdev ;
580 loff_t size ;
581 struct timespec atime ;
582 struct timespec mtime ;
583 struct timespec ctime ;
584 unsigned long blksize ;
585 unsigned long long blocks ;
586};
587#line 48 "include/linux/wait.h"
588struct __wait_queue_head {
589 spinlock_t lock ;
590 struct list_head task_list ;
591};
592#line 53 "include/linux/wait.h"
593typedef struct __wait_queue_head wait_queue_head_t;
594#line 98 "include/linux/nodemask.h"
595struct __anonstruct_nodemask_t_36 {
596 unsigned long bits[16U] ;
597};
598#line 98 "include/linux/nodemask.h"
599typedef struct __anonstruct_nodemask_t_36 nodemask_t;
600#line 670 "include/linux/mmzone.h"
601struct mutex {
602 atomic_t count ;
603 spinlock_t wait_lock ;
604 struct list_head wait_list ;
605 struct task_struct *owner ;
606 char const *name ;
607 void *magic ;
608 struct lockdep_map dep_map ;
609};
610#line 63 "include/linux/mutex.h"
611struct mutex_waiter {
612 struct list_head list ;
613 struct task_struct *task ;
614 void *magic ;
615};
616#line 171
617struct rw_semaphore;
618#line 171
619struct rw_semaphore;
620#line 172 "include/linux/mutex.h"
621struct rw_semaphore {
622 long count ;
623 raw_spinlock_t wait_lock ;
624 struct list_head wait_list ;
625 struct lockdep_map dep_map ;
626};
627#line 128 "include/linux/rwsem.h"
628struct completion {
629 unsigned int done ;
630 wait_queue_head_t wait ;
631};
632#line 312 "include/linux/jiffies.h"
633union ktime {
634 s64 tv64 ;
635};
636#line 59 "include/linux/ktime.h"
637typedef union ktime ktime_t;
638#line 341
639struct tvec_base;
640#line 341
641struct tvec_base;
642#line 342 "include/linux/ktime.h"
643struct timer_list {
644 struct list_head entry ;
645 unsigned long expires ;
646 struct tvec_base *base ;
647 void (*function)(unsigned long ) ;
648 unsigned long data ;
649 int slack ;
650 int start_pid ;
651 void *start_site ;
652 char start_comm[16U] ;
653 struct lockdep_map lockdep_map ;
654};
655#line 289 "include/linux/timer.h"
656struct hrtimer;
657#line 289
658struct hrtimer;
659#line 290
660enum hrtimer_restart;
661#line 302
662struct work_struct;
663#line 302
664struct work_struct;
665#line 45 "include/linux/workqueue.h"
666struct work_struct {
667 atomic_long_t data ;
668 struct list_head entry ;
669 void (*func)(struct work_struct * ) ;
670 struct lockdep_map lockdep_map ;
671};
672#line 86 "include/linux/workqueue.h"
673struct delayed_work {
674 struct work_struct work ;
675 struct timer_list timer ;
676};
677#line 46 "include/linux/pm.h"
678struct pm_message {
679 int event ;
680};
681#line 52 "include/linux/pm.h"
682typedef struct pm_message pm_message_t;
683#line 53 "include/linux/pm.h"
684struct dev_pm_ops {
685 int (*prepare)(struct device * ) ;
686 void (*complete)(struct device * ) ;
687 int (*suspend)(struct device * ) ;
688 int (*resume)(struct device * ) ;
689 int (*freeze)(struct device * ) ;
690 int (*thaw)(struct device * ) ;
691 int (*poweroff)(struct device * ) ;
692 int (*restore)(struct device * ) ;
693 int (*suspend_late)(struct device * ) ;
694 int (*resume_early)(struct device * ) ;
695 int (*freeze_late)(struct device * ) ;
696 int (*thaw_early)(struct device * ) ;
697 int (*poweroff_late)(struct device * ) ;
698 int (*restore_early)(struct device * ) ;
699 int (*suspend_noirq)(struct device * ) ;
700 int (*resume_noirq)(struct device * ) ;
701 int (*freeze_noirq)(struct device * ) ;
702 int (*thaw_noirq)(struct device * ) ;
703 int (*poweroff_noirq)(struct device * ) ;
704 int (*restore_noirq)(struct device * ) ;
705 int (*runtime_suspend)(struct device * ) ;
706 int (*runtime_resume)(struct device * ) ;
707 int (*runtime_idle)(struct device * ) ;
708};
709#line 289
710enum rpm_status {
711 RPM_ACTIVE = 0,
712 RPM_RESUMING = 1,
713 RPM_SUSPENDED = 2,
714 RPM_SUSPENDING = 3
715} ;
716#line 296
717enum rpm_request {
718 RPM_REQ_NONE = 0,
719 RPM_REQ_IDLE = 1,
720 RPM_REQ_SUSPEND = 2,
721 RPM_REQ_AUTOSUSPEND = 3,
722 RPM_REQ_RESUME = 4
723} ;
724#line 304
725struct wakeup_source;
726#line 304
727struct wakeup_source;
728#line 494 "include/linux/pm.h"
729struct pm_subsys_data {
730 spinlock_t lock ;
731 unsigned int refcount ;
732};
733#line 499
734struct dev_pm_qos_request;
735#line 499
736struct pm_qos_constraints;
737#line 499 "include/linux/pm.h"
738struct dev_pm_info {
739 pm_message_t power_state ;
740 unsigned char can_wakeup : 1 ;
741 unsigned char async_suspend : 1 ;
742 bool is_prepared ;
743 bool is_suspended ;
744 bool ignore_children ;
745 spinlock_t lock ;
746 struct list_head entry ;
747 struct completion completion ;
748 struct wakeup_source *wakeup ;
749 bool wakeup_path ;
750 struct timer_list suspend_timer ;
751 unsigned long timer_expires ;
752 struct work_struct work ;
753 wait_queue_head_t wait_queue ;
754 atomic_t usage_count ;
755 atomic_t child_count ;
756 unsigned char disable_depth : 3 ;
757 unsigned char idle_notification : 1 ;
758 unsigned char request_pending : 1 ;
759 unsigned char deferred_resume : 1 ;
760 unsigned char run_wake : 1 ;
761 unsigned char runtime_auto : 1 ;
762 unsigned char no_callbacks : 1 ;
763 unsigned char irq_safe : 1 ;
764 unsigned char use_autosuspend : 1 ;
765 unsigned char timer_autosuspends : 1 ;
766 enum rpm_request request ;
767 enum rpm_status runtime_status ;
768 int runtime_error ;
769 int autosuspend_delay ;
770 unsigned long last_busy ;
771 unsigned long active_jiffies ;
772 unsigned long suspended_jiffies ;
773 unsigned long accounting_timestamp ;
774 ktime_t suspend_time ;
775 s64 max_time_suspended_ns ;
776 struct dev_pm_qos_request *pq_req ;
777 struct pm_subsys_data *subsys_data ;
778 struct pm_qos_constraints *constraints ;
779};
780#line 558 "include/linux/pm.h"
781struct dev_pm_domain {
782 struct dev_pm_ops ops ;
783};
784#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
785struct __anonstruct_mm_context_t_101 {
786 void *ldt ;
787 int size ;
788 unsigned short ia32_compat ;
789 struct mutex lock ;
790 void *vdso ;
791};
792#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
793typedef struct __anonstruct_mm_context_t_101 mm_context_t;
794#line 18 "include/asm-generic/pci_iomap.h"
795struct vm_area_struct;
796#line 18
797struct vm_area_struct;
798#line 835 "include/linux/sysctl.h"
799struct rb_node {
800 unsigned long rb_parent_color ;
801 struct rb_node *rb_right ;
802 struct rb_node *rb_left ;
803};
804#line 108 "include/linux/rbtree.h"
805struct rb_root {
806 struct rb_node *rb_node ;
807};
808#line 176
809struct nsproxy;
810#line 176
811struct nsproxy;
812#line 37 "include/linux/kmod.h"
813struct cred;
814#line 37
815struct cred;
816#line 18 "include/linux/elf.h"
817typedef __u64 Elf64_Addr;
818#line 19 "include/linux/elf.h"
819typedef __u16 Elf64_Half;
820#line 23 "include/linux/elf.h"
821typedef __u32 Elf64_Word;
822#line 24 "include/linux/elf.h"
823typedef __u64 Elf64_Xword;
824#line 193 "include/linux/elf.h"
825struct elf64_sym {
826 Elf64_Word st_name ;
827 unsigned char st_info ;
828 unsigned char st_other ;
829 Elf64_Half st_shndx ;
830 Elf64_Addr st_value ;
831 Elf64_Xword st_size ;
832};
833#line 201 "include/linux/elf.h"
834typedef struct elf64_sym Elf64_Sym;
835#line 445
836struct sock;
837#line 445
838struct sock;
839#line 446
840struct kobject;
841#line 446
842struct kobject;
843#line 447
844enum kobj_ns_type {
845 KOBJ_NS_TYPE_NONE = 0,
846 KOBJ_NS_TYPE_NET = 1,
847 KOBJ_NS_TYPES = 2
848} ;
849#line 453 "include/linux/elf.h"
850struct kobj_ns_type_operations {
851 enum kobj_ns_type type ;
852 void *(*grab_current_ns)(void) ;
853 void const *(*netlink_ns)(struct sock * ) ;
854 void const *(*initial_ns)(void) ;
855 void (*drop_ns)(void * ) ;
856};
857#line 57 "include/linux/kobject_ns.h"
858struct attribute {
859 char const *name ;
860 umode_t mode ;
861 struct lock_class_key *key ;
862 struct lock_class_key skey ;
863};
864#line 33 "include/linux/sysfs.h"
865struct attribute_group {
866 char const *name ;
867 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
868 struct attribute **attrs ;
869};
870#line 62 "include/linux/sysfs.h"
871struct bin_attribute {
872 struct attribute attr ;
873 size_t size ;
874 void *private ;
875 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
876 loff_t , size_t ) ;
877 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
878 loff_t , size_t ) ;
879 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
880};
881#line 98 "include/linux/sysfs.h"
882struct sysfs_ops {
883 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
884 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
885 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
886};
887#line 117
888struct sysfs_dirent;
889#line 117
890struct sysfs_dirent;
891#line 182 "include/linux/sysfs.h"
892struct kref {
893 atomic_t refcount ;
894};
895#line 49 "include/linux/kobject.h"
896struct kset;
897#line 49
898struct kobj_type;
899#line 49 "include/linux/kobject.h"
900struct kobject {
901 char const *name ;
902 struct list_head entry ;
903 struct kobject *parent ;
904 struct kset *kset ;
905 struct kobj_type *ktype ;
906 struct sysfs_dirent *sd ;
907 struct kref kref ;
908 unsigned char state_initialized : 1 ;
909 unsigned char state_in_sysfs : 1 ;
910 unsigned char state_add_uevent_sent : 1 ;
911 unsigned char state_remove_uevent_sent : 1 ;
912 unsigned char uevent_suppress : 1 ;
913};
914#line 107 "include/linux/kobject.h"
915struct kobj_type {
916 void (*release)(struct kobject * ) ;
917 struct sysfs_ops const *sysfs_ops ;
918 struct attribute **default_attrs ;
919 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
920 void const *(*namespace)(struct kobject * ) ;
921};
922#line 115 "include/linux/kobject.h"
923struct kobj_uevent_env {
924 char *envp[32U] ;
925 int envp_idx ;
926 char buf[2048U] ;
927 int buflen ;
928};
929#line 122 "include/linux/kobject.h"
930struct kset_uevent_ops {
931 int (* const filter)(struct kset * , struct kobject * ) ;
932 char const *(* const name)(struct kset * , struct kobject * ) ;
933 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
934};
935#line 139 "include/linux/kobject.h"
936struct kset {
937 struct list_head list ;
938 spinlock_t list_lock ;
939 struct kobject kobj ;
940 struct kset_uevent_ops const *uevent_ops ;
941};
942#line 215
943struct kernel_param;
944#line 215
945struct kernel_param;
946#line 216 "include/linux/kobject.h"
947struct kernel_param_ops {
948 int (*set)(char const * , struct kernel_param const * ) ;
949 int (*get)(char * , struct kernel_param const * ) ;
950 void (*free)(void * ) ;
951};
952#line 49 "include/linux/moduleparam.h"
953struct kparam_string;
954#line 49
955struct kparam_array;
956#line 49 "include/linux/moduleparam.h"
957union __anonunion_ldv_13363_134 {
958 void *arg ;
959 struct kparam_string const *str ;
960 struct kparam_array const *arr ;
961};
962#line 49 "include/linux/moduleparam.h"
963struct kernel_param {
964 char const *name ;
965 struct kernel_param_ops const *ops ;
966 u16 perm ;
967 s16 level ;
968 union __anonunion_ldv_13363_134 ldv_13363 ;
969};
970#line 61 "include/linux/moduleparam.h"
971struct kparam_string {
972 unsigned int maxlen ;
973 char *string ;
974};
975#line 67 "include/linux/moduleparam.h"
976struct kparam_array {
977 unsigned int max ;
978 unsigned int elemsize ;
979 unsigned int *num ;
980 struct kernel_param_ops const *ops ;
981 void *elem ;
982};
983#line 458 "include/linux/moduleparam.h"
984struct static_key {
985 atomic_t enabled ;
986};
987#line 225 "include/linux/jump_label.h"
988struct tracepoint;
989#line 225
990struct tracepoint;
991#line 226 "include/linux/jump_label.h"
992struct tracepoint_func {
993 void *func ;
994 void *data ;
995};
996#line 29 "include/linux/tracepoint.h"
997struct tracepoint {
998 char const *name ;
999 struct static_key key ;
1000 void (*regfunc)(void) ;
1001 void (*unregfunc)(void) ;
1002 struct tracepoint_func *funcs ;
1003};
1004#line 86 "include/linux/tracepoint.h"
1005struct kernel_symbol {
1006 unsigned long value ;
1007 char const *name ;
1008};
1009#line 27 "include/linux/export.h"
1010struct mod_arch_specific {
1011
1012};
1013#line 34 "include/linux/module.h"
1014struct module_param_attrs;
1015#line 34 "include/linux/module.h"
1016struct module_kobject {
1017 struct kobject kobj ;
1018 struct module *mod ;
1019 struct kobject *drivers_dir ;
1020 struct module_param_attrs *mp ;
1021};
1022#line 43 "include/linux/module.h"
1023struct module_attribute {
1024 struct attribute attr ;
1025 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
1026 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
1027 size_t ) ;
1028 void (*setup)(struct module * , char const * ) ;
1029 int (*test)(struct module * ) ;
1030 void (*free)(struct module * ) ;
1031};
1032#line 69
1033struct exception_table_entry;
1034#line 69
1035struct exception_table_entry;
1036#line 198
1037enum module_state {
1038 MODULE_STATE_LIVE = 0,
1039 MODULE_STATE_COMING = 1,
1040 MODULE_STATE_GOING = 2
1041} ;
1042#line 204 "include/linux/module.h"
1043struct module_ref {
1044 unsigned long incs ;
1045 unsigned long decs ;
1046};
1047#line 219
1048struct module_sect_attrs;
1049#line 219
1050struct module_notes_attrs;
1051#line 219
1052struct ftrace_event_call;
1053#line 219 "include/linux/module.h"
1054struct module {
1055 enum module_state state ;
1056 struct list_head list ;
1057 char name[56U] ;
1058 struct module_kobject mkobj ;
1059 struct module_attribute *modinfo_attrs ;
1060 char const *version ;
1061 char const *srcversion ;
1062 struct kobject *holders_dir ;
1063 struct kernel_symbol const *syms ;
1064 unsigned long const *crcs ;
1065 unsigned int num_syms ;
1066 struct kernel_param *kp ;
1067 unsigned int num_kp ;
1068 unsigned int num_gpl_syms ;
1069 struct kernel_symbol const *gpl_syms ;
1070 unsigned long const *gpl_crcs ;
1071 struct kernel_symbol const *unused_syms ;
1072 unsigned long const *unused_crcs ;
1073 unsigned int num_unused_syms ;
1074 unsigned int num_unused_gpl_syms ;
1075 struct kernel_symbol const *unused_gpl_syms ;
1076 unsigned long const *unused_gpl_crcs ;
1077 struct kernel_symbol const *gpl_future_syms ;
1078 unsigned long const *gpl_future_crcs ;
1079 unsigned int num_gpl_future_syms ;
1080 unsigned int num_exentries ;
1081 struct exception_table_entry *extable ;
1082 int (*init)(void) ;
1083 void *module_init ;
1084 void *module_core ;
1085 unsigned int init_size ;
1086 unsigned int core_size ;
1087 unsigned int init_text_size ;
1088 unsigned int core_text_size ;
1089 unsigned int init_ro_size ;
1090 unsigned int core_ro_size ;
1091 struct mod_arch_specific arch ;
1092 unsigned int taints ;
1093 unsigned int num_bugs ;
1094 struct list_head bug_list ;
1095 struct bug_entry *bug_table ;
1096 Elf64_Sym *symtab ;
1097 Elf64_Sym *core_symtab ;
1098 unsigned int num_symtab ;
1099 unsigned int core_num_syms ;
1100 char *strtab ;
1101 char *core_strtab ;
1102 struct module_sect_attrs *sect_attrs ;
1103 struct module_notes_attrs *notes_attrs ;
1104 char *args ;
1105 void *percpu ;
1106 unsigned int percpu_size ;
1107 unsigned int num_tracepoints ;
1108 struct tracepoint * const *tracepoints_ptrs ;
1109 unsigned int num_trace_bprintk_fmt ;
1110 char const **trace_bprintk_fmt_start ;
1111 struct ftrace_event_call **trace_events ;
1112 unsigned int num_trace_events ;
1113 struct list_head source_list ;
1114 struct list_head target_list ;
1115 struct task_struct *waiter ;
1116 void (*exit)(void) ;
1117 struct module_ref *refptr ;
1118 ctor_fn_t (**ctors)(void) ;
1119 unsigned int num_ctors ;
1120};
1121#line 88 "include/linux/kmemleak.h"
1122struct kmem_cache_cpu {
1123 void **freelist ;
1124 unsigned long tid ;
1125 struct page *page ;
1126 struct page *partial ;
1127 int node ;
1128 unsigned int stat[26U] ;
1129};
1130#line 55 "include/linux/slub_def.h"
1131struct kmem_cache_node {
1132 spinlock_t list_lock ;
1133 unsigned long nr_partial ;
1134 struct list_head partial ;
1135 atomic_long_t nr_slabs ;
1136 atomic_long_t total_objects ;
1137 struct list_head full ;
1138};
1139#line 66 "include/linux/slub_def.h"
1140struct kmem_cache_order_objects {
1141 unsigned long x ;
1142};
1143#line 76 "include/linux/slub_def.h"
1144struct kmem_cache {
1145 struct kmem_cache_cpu *cpu_slab ;
1146 unsigned long flags ;
1147 unsigned long min_partial ;
1148 int size ;
1149 int objsize ;
1150 int offset ;
1151 int cpu_partial ;
1152 struct kmem_cache_order_objects oo ;
1153 struct kmem_cache_order_objects max ;
1154 struct kmem_cache_order_objects min ;
1155 gfp_t allocflags ;
1156 int refcount ;
1157 void (*ctor)(void * ) ;
1158 int inuse ;
1159 int align ;
1160 int reserved ;
1161 char const *name ;
1162 struct list_head list ;
1163 struct kobject kobj ;
1164 int remote_node_defrag_ratio ;
1165 struct kmem_cache_node *node[1024U] ;
1166};
1167#line 18 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
1168struct block_device;
1169#line 18
1170struct block_device;
1171#line 93 "include/linux/bit_spinlock.h"
1172struct hlist_bl_node;
1173#line 93 "include/linux/bit_spinlock.h"
1174struct hlist_bl_head {
1175 struct hlist_bl_node *first ;
1176};
1177#line 36 "include/linux/list_bl.h"
1178struct hlist_bl_node {
1179 struct hlist_bl_node *next ;
1180 struct hlist_bl_node **pprev ;
1181};
1182#line 114 "include/linux/rculist_bl.h"
1183struct nameidata;
1184#line 114
1185struct nameidata;
1186#line 115
1187struct path;
1188#line 115
1189struct path;
1190#line 116
1191struct vfsmount;
1192#line 116
1193struct vfsmount;
1194#line 117 "include/linux/rculist_bl.h"
1195struct qstr {
1196 unsigned int hash ;
1197 unsigned int len ;
1198 unsigned char const *name ;
1199};
1200#line 72 "include/linux/dcache.h"
1201struct inode;
1202#line 72
1203struct dentry_operations;
1204#line 72
1205struct super_block;
1206#line 72 "include/linux/dcache.h"
1207union __anonunion_d_u_135 {
1208 struct list_head d_child ;
1209 struct rcu_head d_rcu ;
1210};
1211#line 72 "include/linux/dcache.h"
1212struct dentry {
1213 unsigned int d_flags ;
1214 seqcount_t d_seq ;
1215 struct hlist_bl_node d_hash ;
1216 struct dentry *d_parent ;
1217 struct qstr d_name ;
1218 struct inode *d_inode ;
1219 unsigned char d_iname[32U] ;
1220 unsigned int d_count ;
1221 spinlock_t d_lock ;
1222 struct dentry_operations const *d_op ;
1223 struct super_block *d_sb ;
1224 unsigned long d_time ;
1225 void *d_fsdata ;
1226 struct list_head d_lru ;
1227 union __anonunion_d_u_135 d_u ;
1228 struct list_head d_subdirs ;
1229 struct list_head d_alias ;
1230};
1231#line 123 "include/linux/dcache.h"
1232struct dentry_operations {
1233 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1234 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1235 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1236 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1237 int (*d_delete)(struct dentry const * ) ;
1238 void (*d_release)(struct dentry * ) ;
1239 void (*d_prune)(struct dentry * ) ;
1240 void (*d_iput)(struct dentry * , struct inode * ) ;
1241 char *(*d_dname)(struct dentry * , char * , int ) ;
1242 struct vfsmount *(*d_automount)(struct path * ) ;
1243 int (*d_manage)(struct dentry * , bool ) ;
1244};
1245#line 402 "include/linux/dcache.h"
1246struct path {
1247 struct vfsmount *mnt ;
1248 struct dentry *dentry ;
1249};
1250#line 58 "include/linux/radix-tree.h"
1251struct radix_tree_node;
1252#line 58 "include/linux/radix-tree.h"
1253struct radix_tree_root {
1254 unsigned int height ;
1255 gfp_t gfp_mask ;
1256 struct radix_tree_node *rnode ;
1257};
1258#line 377
1259struct prio_tree_node;
1260#line 377 "include/linux/radix-tree.h"
1261struct raw_prio_tree_node {
1262 struct prio_tree_node *left ;
1263 struct prio_tree_node *right ;
1264 struct prio_tree_node *parent ;
1265};
1266#line 19 "include/linux/prio_tree.h"
1267struct prio_tree_node {
1268 struct prio_tree_node *left ;
1269 struct prio_tree_node *right ;
1270 struct prio_tree_node *parent ;
1271 unsigned long start ;
1272 unsigned long last ;
1273};
1274#line 27 "include/linux/prio_tree.h"
1275struct prio_tree_root {
1276 struct prio_tree_node *prio_tree_node ;
1277 unsigned short index_bits ;
1278 unsigned short raw ;
1279};
1280#line 111
1281enum pid_type {
1282 PIDTYPE_PID = 0,
1283 PIDTYPE_PGID = 1,
1284 PIDTYPE_SID = 2,
1285 PIDTYPE_MAX = 3
1286} ;
1287#line 118
1288struct pid_namespace;
1289#line 118 "include/linux/prio_tree.h"
1290struct upid {
1291 int nr ;
1292 struct pid_namespace *ns ;
1293 struct hlist_node pid_chain ;
1294};
1295#line 56 "include/linux/pid.h"
1296struct pid {
1297 atomic_t count ;
1298 unsigned int level ;
1299 struct hlist_head tasks[3U] ;
1300 struct rcu_head rcu ;
1301 struct upid numbers[1U] ;
1302};
1303#line 68 "include/linux/pid.h"
1304struct pid_link {
1305 struct hlist_node node ;
1306 struct pid *pid ;
1307};
1308#line 93 "include/linux/capability.h"
1309struct kernel_cap_struct {
1310 __u32 cap[2U] ;
1311};
1312#line 96 "include/linux/capability.h"
1313typedef struct kernel_cap_struct kernel_cap_t;
1314#line 104
1315struct user_namespace;
1316#line 104
1317struct user_namespace;
1318#line 45 "include/linux/semaphore.h"
1319struct fiemap_extent {
1320 __u64 fe_logical ;
1321 __u64 fe_physical ;
1322 __u64 fe_length ;
1323 __u64 fe_reserved64[2U] ;
1324 __u32 fe_flags ;
1325 __u32 fe_reserved[3U] ;
1326};
1327#line 38 "include/linux/fiemap.h"
1328struct shrink_control {
1329 gfp_t gfp_mask ;
1330 unsigned long nr_to_scan ;
1331};
1332#line 14 "include/linux/shrinker.h"
1333struct shrinker {
1334 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1335 int seeks ;
1336 long batch ;
1337 struct list_head list ;
1338 atomic_long_t nr_in_batch ;
1339};
1340#line 43
1341enum migrate_mode {
1342 MIGRATE_ASYNC = 0,
1343 MIGRATE_SYNC_LIGHT = 1,
1344 MIGRATE_SYNC = 2
1345} ;
1346#line 49
1347struct export_operations;
1348#line 49
1349struct export_operations;
1350#line 51
1351struct iovec;
1352#line 51
1353struct iovec;
1354#line 52
1355struct kiocb;
1356#line 52
1357struct kiocb;
1358#line 53
1359struct pipe_inode_info;
1360#line 53
1361struct pipe_inode_info;
1362#line 54
1363struct poll_table_struct;
1364#line 54
1365struct poll_table_struct;
1366#line 55
1367struct kstatfs;
1368#line 55
1369struct kstatfs;
1370#line 435 "include/linux/fs.h"
1371struct iattr {
1372 unsigned int ia_valid ;
1373 umode_t ia_mode ;
1374 uid_t ia_uid ;
1375 gid_t ia_gid ;
1376 loff_t ia_size ;
1377 struct timespec ia_atime ;
1378 struct timespec ia_mtime ;
1379 struct timespec ia_ctime ;
1380 struct file *ia_file ;
1381};
1382#line 119 "include/linux/quota.h"
1383struct if_dqinfo {
1384 __u64 dqi_bgrace ;
1385 __u64 dqi_igrace ;
1386 __u32 dqi_flags ;
1387 __u32 dqi_valid ;
1388};
1389#line 176 "include/linux/percpu_counter.h"
1390struct fs_disk_quota {
1391 __s8 d_version ;
1392 __s8 d_flags ;
1393 __u16 d_fieldmask ;
1394 __u32 d_id ;
1395 __u64 d_blk_hardlimit ;
1396 __u64 d_blk_softlimit ;
1397 __u64 d_ino_hardlimit ;
1398 __u64 d_ino_softlimit ;
1399 __u64 d_bcount ;
1400 __u64 d_icount ;
1401 __s32 d_itimer ;
1402 __s32 d_btimer ;
1403 __u16 d_iwarns ;
1404 __u16 d_bwarns ;
1405 __s32 d_padding2 ;
1406 __u64 d_rtb_hardlimit ;
1407 __u64 d_rtb_softlimit ;
1408 __u64 d_rtbcount ;
1409 __s32 d_rtbtimer ;
1410 __u16 d_rtbwarns ;
1411 __s16 d_padding3 ;
1412 char d_padding4[8U] ;
1413};
1414#line 75 "include/linux/dqblk_xfs.h"
1415struct fs_qfilestat {
1416 __u64 qfs_ino ;
1417 __u64 qfs_nblks ;
1418 __u32 qfs_nextents ;
1419};
1420#line 150 "include/linux/dqblk_xfs.h"
1421typedef struct fs_qfilestat fs_qfilestat_t;
1422#line 151 "include/linux/dqblk_xfs.h"
1423struct fs_quota_stat {
1424 __s8 qs_version ;
1425 __u16 qs_flags ;
1426 __s8 qs_pad ;
1427 fs_qfilestat_t qs_uquota ;
1428 fs_qfilestat_t qs_gquota ;
1429 __u32 qs_incoredqs ;
1430 __s32 qs_btimelimit ;
1431 __s32 qs_itimelimit ;
1432 __s32 qs_rtbtimelimit ;
1433 __u16 qs_bwarnlimit ;
1434 __u16 qs_iwarnlimit ;
1435};
1436#line 165
1437struct dquot;
1438#line 165
1439struct dquot;
1440#line 185 "include/linux/quota.h"
1441typedef __kernel_uid32_t qid_t;
1442#line 186 "include/linux/quota.h"
1443typedef long long qsize_t;
1444#line 189 "include/linux/quota.h"
1445struct mem_dqblk {
1446 qsize_t dqb_bhardlimit ;
1447 qsize_t dqb_bsoftlimit ;
1448 qsize_t dqb_curspace ;
1449 qsize_t dqb_rsvspace ;
1450 qsize_t dqb_ihardlimit ;
1451 qsize_t dqb_isoftlimit ;
1452 qsize_t dqb_curinodes ;
1453 time_t dqb_btime ;
1454 time_t dqb_itime ;
1455};
1456#line 211
1457struct quota_format_type;
1458#line 211
1459struct quota_format_type;
1460#line 212 "include/linux/quota.h"
1461struct mem_dqinfo {
1462 struct quota_format_type *dqi_format ;
1463 int dqi_fmt_id ;
1464 struct list_head dqi_dirty_list ;
1465 unsigned long dqi_flags ;
1466 unsigned int dqi_bgrace ;
1467 unsigned int dqi_igrace ;
1468 qsize_t dqi_maxblimit ;
1469 qsize_t dqi_maxilimit ;
1470 void *dqi_priv ;
1471};
1472#line 275 "include/linux/quota.h"
1473struct dquot {
1474 struct hlist_node dq_hash ;
1475 struct list_head dq_inuse ;
1476 struct list_head dq_free ;
1477 struct list_head dq_dirty ;
1478 struct mutex dq_lock ;
1479 atomic_t dq_count ;
1480 wait_queue_head_t dq_wait_unused ;
1481 struct super_block *dq_sb ;
1482 unsigned int dq_id ;
1483 loff_t dq_off ;
1484 unsigned long dq_flags ;
1485 short dq_type ;
1486 struct mem_dqblk dq_dqb ;
1487};
1488#line 303 "include/linux/quota.h"
1489struct quota_format_ops {
1490 int (*check_quota_file)(struct super_block * , int ) ;
1491 int (*read_file_info)(struct super_block * , int ) ;
1492 int (*write_file_info)(struct super_block * , int ) ;
1493 int (*free_file_info)(struct super_block * , int ) ;
1494 int (*read_dqblk)(struct dquot * ) ;
1495 int (*commit_dqblk)(struct dquot * ) ;
1496 int (*release_dqblk)(struct dquot * ) ;
1497};
1498#line 314 "include/linux/quota.h"
1499struct dquot_operations {
1500 int (*write_dquot)(struct dquot * ) ;
1501 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1502 void (*destroy_dquot)(struct dquot * ) ;
1503 int (*acquire_dquot)(struct dquot * ) ;
1504 int (*release_dquot)(struct dquot * ) ;
1505 int (*mark_dirty)(struct dquot * ) ;
1506 int (*write_info)(struct super_block * , int ) ;
1507 qsize_t *(*get_reserved_space)(struct inode * ) ;
1508};
1509#line 328 "include/linux/quota.h"
1510struct quotactl_ops {
1511 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1512 int (*quota_on_meta)(struct super_block * , int , int ) ;
1513 int (*quota_off)(struct super_block * , int ) ;
1514 int (*quota_sync)(struct super_block * , int , int ) ;
1515 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1516 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1517 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1518 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1519 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1520 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1521};
1522#line 344 "include/linux/quota.h"
1523struct quota_format_type {
1524 int qf_fmt_id ;
1525 struct quota_format_ops const *qf_ops ;
1526 struct module *qf_owner ;
1527 struct quota_format_type *qf_next ;
1528};
1529#line 390 "include/linux/quota.h"
1530struct quota_info {
1531 unsigned int flags ;
1532 struct mutex dqio_mutex ;
1533 struct mutex dqonoff_mutex ;
1534 struct rw_semaphore dqptr_sem ;
1535 struct inode *files[2U] ;
1536 struct mem_dqinfo info[2U] ;
1537 struct quota_format_ops const *ops[2U] ;
1538};
1539#line 421
1540struct address_space;
1541#line 421
1542struct address_space;
1543#line 422
1544struct writeback_control;
1545#line 422
1546struct writeback_control;
1547#line 585 "include/linux/fs.h"
1548union __anonunion_arg_138 {
1549 char *buf ;
1550 void *data ;
1551};
1552#line 585 "include/linux/fs.h"
1553struct __anonstruct_read_descriptor_t_137 {
1554 size_t written ;
1555 size_t count ;
1556 union __anonunion_arg_138 arg ;
1557 int error ;
1558};
1559#line 585 "include/linux/fs.h"
1560typedef struct __anonstruct_read_descriptor_t_137 read_descriptor_t;
1561#line 588 "include/linux/fs.h"
1562struct address_space_operations {
1563 int (*writepage)(struct page * , struct writeback_control * ) ;
1564 int (*readpage)(struct file * , struct page * ) ;
1565 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1566 int (*set_page_dirty)(struct page * ) ;
1567 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1568 unsigned int ) ;
1569 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
1570 unsigned int , struct page ** , void ** ) ;
1571 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
1572 unsigned int , struct page * , void * ) ;
1573 sector_t (*bmap)(struct address_space * , sector_t ) ;
1574 void (*invalidatepage)(struct page * , unsigned long ) ;
1575 int (*releasepage)(struct page * , gfp_t ) ;
1576 void (*freepage)(struct page * ) ;
1577 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
1578 unsigned long ) ;
1579 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1580 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1581 int (*launder_page)(struct page * ) ;
1582 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1583 int (*error_remove_page)(struct address_space * , struct page * ) ;
1584};
1585#line 642
1586struct backing_dev_info;
1587#line 642
1588struct backing_dev_info;
1589#line 643 "include/linux/fs.h"
1590struct address_space {
1591 struct inode *host ;
1592 struct radix_tree_root page_tree ;
1593 spinlock_t tree_lock ;
1594 unsigned int i_mmap_writable ;
1595 struct prio_tree_root i_mmap ;
1596 struct list_head i_mmap_nonlinear ;
1597 struct mutex i_mmap_mutex ;
1598 unsigned long nrpages ;
1599 unsigned long writeback_index ;
1600 struct address_space_operations const *a_ops ;
1601 unsigned long flags ;
1602 struct backing_dev_info *backing_dev_info ;
1603 spinlock_t private_lock ;
1604 struct list_head private_list ;
1605 struct address_space *assoc_mapping ;
1606};
1607#line 664
1608struct request_queue;
1609#line 664
1610struct request_queue;
1611#line 665
1612struct hd_struct;
1613#line 665
1614struct gendisk;
1615#line 665 "include/linux/fs.h"
1616struct block_device {
1617 dev_t bd_dev ;
1618 int bd_openers ;
1619 struct inode *bd_inode ;
1620 struct super_block *bd_super ;
1621 struct mutex bd_mutex ;
1622 struct list_head bd_inodes ;
1623 void *bd_claiming ;
1624 void *bd_holder ;
1625 int bd_holders ;
1626 bool bd_write_holder ;
1627 struct list_head bd_holder_disks ;
1628 struct block_device *bd_contains ;
1629 unsigned int bd_block_size ;
1630 struct hd_struct *bd_part ;
1631 unsigned int bd_part_count ;
1632 int bd_invalidated ;
1633 struct gendisk *bd_disk ;
1634 struct request_queue *bd_queue ;
1635 struct list_head bd_list ;
1636 unsigned long bd_private ;
1637 int bd_fsfreeze_count ;
1638 struct mutex bd_fsfreeze_mutex ;
1639};
1640#line 737
1641struct posix_acl;
1642#line 737
1643struct posix_acl;
1644#line 738
1645struct inode_operations;
1646#line 738 "include/linux/fs.h"
1647union __anonunion_ldv_15748_139 {
1648 unsigned int const i_nlink ;
1649 unsigned int __i_nlink ;
1650};
1651#line 738 "include/linux/fs.h"
1652union __anonunion_ldv_15767_140 {
1653 struct list_head i_dentry ;
1654 struct rcu_head i_rcu ;
1655};
1656#line 738
1657struct file_operations;
1658#line 738
1659struct file_lock;
1660#line 738
1661struct cdev;
1662#line 738 "include/linux/fs.h"
1663union __anonunion_ldv_15785_141 {
1664 struct pipe_inode_info *i_pipe ;
1665 struct block_device *i_bdev ;
1666 struct cdev *i_cdev ;
1667};
1668#line 738 "include/linux/fs.h"
1669struct inode {
1670 umode_t i_mode ;
1671 unsigned short i_opflags ;
1672 uid_t i_uid ;
1673 gid_t i_gid ;
1674 unsigned int i_flags ;
1675 struct posix_acl *i_acl ;
1676 struct posix_acl *i_default_acl ;
1677 struct inode_operations const *i_op ;
1678 struct super_block *i_sb ;
1679 struct address_space *i_mapping ;
1680 void *i_security ;
1681 unsigned long i_ino ;
1682 union __anonunion_ldv_15748_139 ldv_15748 ;
1683 dev_t i_rdev ;
1684 struct timespec i_atime ;
1685 struct timespec i_mtime ;
1686 struct timespec i_ctime ;
1687 spinlock_t i_lock ;
1688 unsigned short i_bytes ;
1689 blkcnt_t i_blocks ;
1690 loff_t i_size ;
1691 unsigned long i_state ;
1692 struct mutex i_mutex ;
1693 unsigned long dirtied_when ;
1694 struct hlist_node i_hash ;
1695 struct list_head i_wb_list ;
1696 struct list_head i_lru ;
1697 struct list_head i_sb_list ;
1698 union __anonunion_ldv_15767_140 ldv_15767 ;
1699 atomic_t i_count ;
1700 unsigned int i_blkbits ;
1701 u64 i_version ;
1702 atomic_t i_dio_count ;
1703 atomic_t i_writecount ;
1704 struct file_operations const *i_fop ;
1705 struct file_lock *i_flock ;
1706 struct address_space i_data ;
1707 struct dquot *i_dquot[2U] ;
1708 struct list_head i_devices ;
1709 union __anonunion_ldv_15785_141 ldv_15785 ;
1710 __u32 i_generation ;
1711 __u32 i_fsnotify_mask ;
1712 struct hlist_head i_fsnotify_marks ;
1713 atomic_t i_readcount ;
1714 void *i_private ;
1715};
1716#line 941 "include/linux/fs.h"
1717struct fown_struct {
1718 rwlock_t lock ;
1719 struct pid *pid ;
1720 enum pid_type pid_type ;
1721 uid_t uid ;
1722 uid_t euid ;
1723 int signum ;
1724};
1725#line 949 "include/linux/fs.h"
1726struct file_ra_state {
1727 unsigned long start ;
1728 unsigned int size ;
1729 unsigned int async_size ;
1730 unsigned int ra_pages ;
1731 unsigned int mmap_miss ;
1732 loff_t prev_pos ;
1733};
1734#line 972 "include/linux/fs.h"
1735union __anonunion_f_u_142 {
1736 struct list_head fu_list ;
1737 struct rcu_head fu_rcuhead ;
1738};
1739#line 972 "include/linux/fs.h"
1740struct file {
1741 union __anonunion_f_u_142 f_u ;
1742 struct path f_path ;
1743 struct file_operations const *f_op ;
1744 spinlock_t f_lock ;
1745 int f_sb_list_cpu ;
1746 atomic_long_t f_count ;
1747 unsigned int f_flags ;
1748 fmode_t f_mode ;
1749 loff_t f_pos ;
1750 struct fown_struct f_owner ;
1751 struct cred const *f_cred ;
1752 struct file_ra_state f_ra ;
1753 u64 f_version ;
1754 void *f_security ;
1755 void *private_data ;
1756 struct list_head f_ep_links ;
1757 struct list_head f_tfile_llink ;
1758 struct address_space *f_mapping ;
1759 unsigned long f_mnt_write_state ;
1760};
1761#line 1111
1762struct files_struct;
1763#line 1111 "include/linux/fs.h"
1764typedef struct files_struct *fl_owner_t;
1765#line 1112 "include/linux/fs.h"
1766struct file_lock_operations {
1767 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1768 void (*fl_release_private)(struct file_lock * ) ;
1769};
1770#line 1117 "include/linux/fs.h"
1771struct lock_manager_operations {
1772 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1773 void (*lm_notify)(struct file_lock * ) ;
1774 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1775 void (*lm_release_private)(struct file_lock * ) ;
1776 void (*lm_break)(struct file_lock * ) ;
1777 int (*lm_change)(struct file_lock ** , int ) ;
1778};
1779#line 1134
1780struct nlm_lockowner;
1781#line 1134
1782struct nlm_lockowner;
1783#line 1135 "include/linux/fs.h"
1784struct nfs_lock_info {
1785 u32 state ;
1786 struct nlm_lockowner *owner ;
1787 struct list_head list ;
1788};
1789#line 14 "include/linux/nfs_fs_i.h"
1790struct nfs4_lock_state;
1791#line 14
1792struct nfs4_lock_state;
1793#line 15 "include/linux/nfs_fs_i.h"
1794struct nfs4_lock_info {
1795 struct nfs4_lock_state *owner ;
1796};
1797#line 19
1798struct fasync_struct;
1799#line 19 "include/linux/nfs_fs_i.h"
1800struct __anonstruct_afs_144 {
1801 struct list_head link ;
1802 int state ;
1803};
1804#line 19 "include/linux/nfs_fs_i.h"
1805union __anonunion_fl_u_143 {
1806 struct nfs_lock_info nfs_fl ;
1807 struct nfs4_lock_info nfs4_fl ;
1808 struct __anonstruct_afs_144 afs ;
1809};
1810#line 19 "include/linux/nfs_fs_i.h"
1811struct file_lock {
1812 struct file_lock *fl_next ;
1813 struct list_head fl_link ;
1814 struct list_head fl_block ;
1815 fl_owner_t fl_owner ;
1816 unsigned int fl_flags ;
1817 unsigned char fl_type ;
1818 unsigned int fl_pid ;
1819 struct pid *fl_nspid ;
1820 wait_queue_head_t fl_wait ;
1821 struct file *fl_file ;
1822 loff_t fl_start ;
1823 loff_t fl_end ;
1824 struct fasync_struct *fl_fasync ;
1825 unsigned long fl_break_time ;
1826 unsigned long fl_downgrade_time ;
1827 struct file_lock_operations const *fl_ops ;
1828 struct lock_manager_operations const *fl_lmops ;
1829 union __anonunion_fl_u_143 fl_u ;
1830};
1831#line 1221 "include/linux/fs.h"
1832struct fasync_struct {
1833 spinlock_t fa_lock ;
1834 int magic ;
1835 int fa_fd ;
1836 struct fasync_struct *fa_next ;
1837 struct file *fa_file ;
1838 struct rcu_head fa_rcu ;
1839};
1840#line 1417
1841struct file_system_type;
1842#line 1417
1843struct super_operations;
1844#line 1417
1845struct xattr_handler;
1846#line 1417
1847struct mtd_info;
1848#line 1417 "include/linux/fs.h"
1849struct super_block {
1850 struct list_head s_list ;
1851 dev_t s_dev ;
1852 unsigned char s_dirt ;
1853 unsigned char s_blocksize_bits ;
1854 unsigned long s_blocksize ;
1855 loff_t s_maxbytes ;
1856 struct file_system_type *s_type ;
1857 struct super_operations const *s_op ;
1858 struct dquot_operations const *dq_op ;
1859 struct quotactl_ops const *s_qcop ;
1860 struct export_operations const *s_export_op ;
1861 unsigned long s_flags ;
1862 unsigned long s_magic ;
1863 struct dentry *s_root ;
1864 struct rw_semaphore s_umount ;
1865 struct mutex s_lock ;
1866 int s_count ;
1867 atomic_t s_active ;
1868 void *s_security ;
1869 struct xattr_handler const **s_xattr ;
1870 struct list_head s_inodes ;
1871 struct hlist_bl_head s_anon ;
1872 struct list_head *s_files ;
1873 struct list_head s_mounts ;
1874 struct list_head s_dentry_lru ;
1875 int s_nr_dentry_unused ;
1876 spinlock_t s_inode_lru_lock ;
1877 struct list_head s_inode_lru ;
1878 int s_nr_inodes_unused ;
1879 struct block_device *s_bdev ;
1880 struct backing_dev_info *s_bdi ;
1881 struct mtd_info *s_mtd ;
1882 struct hlist_node s_instances ;
1883 struct quota_info s_dquot ;
1884 int s_frozen ;
1885 wait_queue_head_t s_wait_unfrozen ;
1886 char s_id[32U] ;
1887 u8 s_uuid[16U] ;
1888 void *s_fs_info ;
1889 unsigned int s_max_links ;
1890 fmode_t s_mode ;
1891 u32 s_time_gran ;
1892 struct mutex s_vfs_rename_mutex ;
1893 char *s_subtype ;
1894 char *s_options ;
1895 struct dentry_operations const *s_d_op ;
1896 int cleancache_poolid ;
1897 struct shrinker s_shrink ;
1898 atomic_long_t s_remove_count ;
1899 int s_readonly_remount ;
1900};
1901#line 1563 "include/linux/fs.h"
1902struct fiemap_extent_info {
1903 unsigned int fi_flags ;
1904 unsigned int fi_extents_mapped ;
1905 unsigned int fi_extents_max ;
1906 struct fiemap_extent *fi_extents_start ;
1907};
1908#line 1602 "include/linux/fs.h"
1909struct file_operations {
1910 struct module *owner ;
1911 loff_t (*llseek)(struct file * , loff_t , int ) ;
1912 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1913 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1914 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1915 loff_t ) ;
1916 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1917 loff_t ) ;
1918 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1919 loff_t , u64 , unsigned int ) ) ;
1920 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1921 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1922 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1923 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1924 int (*open)(struct inode * , struct file * ) ;
1925 int (*flush)(struct file * , fl_owner_t ) ;
1926 int (*release)(struct inode * , struct file * ) ;
1927 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
1928 int (*aio_fsync)(struct kiocb * , int ) ;
1929 int (*fasync)(int , struct file * , int ) ;
1930 int (*lock)(struct file * , int , struct file_lock * ) ;
1931 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1932 int ) ;
1933 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1934 unsigned long , unsigned long ) ;
1935 int (*check_flags)(int ) ;
1936 int (*flock)(struct file * , int , struct file_lock * ) ;
1937 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1938 unsigned int ) ;
1939 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1940 unsigned int ) ;
1941 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1942 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
1943};
1944#line 1637 "include/linux/fs.h"
1945struct inode_operations {
1946 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1947 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1948 int (*permission)(struct inode * , int ) ;
1949 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1950 int (*readlink)(struct dentry * , char * , int ) ;
1951 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1952 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
1953 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1954 int (*unlink)(struct inode * , struct dentry * ) ;
1955 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
1956 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
1957 int (*rmdir)(struct inode * , struct dentry * ) ;
1958 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
1959 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1960 void (*truncate)(struct inode * ) ;
1961 int (*setattr)(struct dentry * , struct iattr * ) ;
1962 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
1963 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
1964 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
1965 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
1966 int (*removexattr)(struct dentry * , char const * ) ;
1967 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
1968 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
1969};
1970#line 1682 "include/linux/fs.h"
1971struct super_operations {
1972 struct inode *(*alloc_inode)(struct super_block * ) ;
1973 void (*destroy_inode)(struct inode * ) ;
1974 void (*dirty_inode)(struct inode * , int ) ;
1975 int (*write_inode)(struct inode * , struct writeback_control * ) ;
1976 int (*drop_inode)(struct inode * ) ;
1977 void (*evict_inode)(struct inode * ) ;
1978 void (*put_super)(struct super_block * ) ;
1979 void (*write_super)(struct super_block * ) ;
1980 int (*sync_fs)(struct super_block * , int ) ;
1981 int (*freeze_fs)(struct super_block * ) ;
1982 int (*unfreeze_fs)(struct super_block * ) ;
1983 int (*statfs)(struct dentry * , struct kstatfs * ) ;
1984 int (*remount_fs)(struct super_block * , int * , char * ) ;
1985 void (*umount_begin)(struct super_block * ) ;
1986 int (*show_options)(struct seq_file * , struct dentry * ) ;
1987 int (*show_devname)(struct seq_file * , struct dentry * ) ;
1988 int (*show_path)(struct seq_file * , struct dentry * ) ;
1989 int (*show_stats)(struct seq_file * , struct dentry * ) ;
1990 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
1991 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
1992 loff_t ) ;
1993 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
1994 int (*nr_cached_objects)(struct super_block * ) ;
1995 void (*free_cached_objects)(struct super_block * , int ) ;
1996};
1997#line 1834 "include/linux/fs.h"
1998struct file_system_type {
1999 char const *name ;
2000 int fs_flags ;
2001 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
2002 void (*kill_sb)(struct super_block * ) ;
2003 struct module *owner ;
2004 struct file_system_type *next ;
2005 struct hlist_head fs_supers ;
2006 struct lock_class_key s_lock_key ;
2007 struct lock_class_key s_umount_key ;
2008 struct lock_class_key s_vfs_rename_key ;
2009 struct lock_class_key i_lock_key ;
2010 struct lock_class_key i_mutex_key ;
2011 struct lock_class_key i_mutex_dir_key ;
2012};
2013#line 6 "include/asm-generic/termbits.h"
2014typedef unsigned char cc_t;
2015#line 7 "include/asm-generic/termbits.h"
2016typedef unsigned int speed_t;
2017#line 8 "include/asm-generic/termbits.h"
2018typedef unsigned int tcflag_t;
2019#line 30 "include/asm-generic/termbits.h"
2020struct ktermios {
2021 tcflag_t c_iflag ;
2022 tcflag_t c_oflag ;
2023 tcflag_t c_cflag ;
2024 tcflag_t c_lflag ;
2025 cc_t c_line ;
2026 cc_t c_cc[19U] ;
2027 speed_t c_ispeed ;
2028 speed_t c_ospeed ;
2029};
2030#line 41 "include/asm-generic/termbits.h"
2031struct winsize {
2032 unsigned short ws_row ;
2033 unsigned short ws_col ;
2034 unsigned short ws_xpixel ;
2035 unsigned short ws_ypixel ;
2036};
2037#line 30 "include/asm-generic/termios.h"
2038struct exception_table_entry {
2039 unsigned long insn ;
2040 unsigned long fixup ;
2041};
2042#line 138 "include/asm-generic/termios.h"
2043struct termiox {
2044 __u16 x_hflag ;
2045 __u16 x_cflag ;
2046 __u16 x_rflag[5U] ;
2047 __u16 x_sflag ;
2048};
2049#line 16 "include/linux/termios.h"
2050struct cdev {
2051 struct kobject kobj ;
2052 struct module *owner ;
2053 struct file_operations const *ops ;
2054 struct list_head list ;
2055 dev_t dev ;
2056 unsigned int count ;
2057};
2058#line 34 "include/linux/cdev.h"
2059struct tty_struct;
2060#line 34
2061struct tty_struct;
2062#line 35
2063struct tty_driver;
2064#line 35
2065struct tty_driver;
2066#line 36
2067struct serial_icounter_struct;
2068#line 36
2069struct serial_icounter_struct;
2070#line 37 "include/linux/cdev.h"
2071struct tty_operations {
2072 struct tty_struct *(*lookup)(struct tty_driver * , struct inode * , int ) ;
2073 int (*install)(struct tty_driver * , struct tty_struct * ) ;
2074 void (*remove)(struct tty_driver * , struct tty_struct * ) ;
2075 int (*open)(struct tty_struct * , struct file * ) ;
2076 void (*close)(struct tty_struct * , struct file * ) ;
2077 void (*shutdown)(struct tty_struct * ) ;
2078 void (*cleanup)(struct tty_struct * ) ;
2079 int (*write)(struct tty_struct * , unsigned char const * , int ) ;
2080 int (*put_char)(struct tty_struct * , unsigned char ) ;
2081 void (*flush_chars)(struct tty_struct * ) ;
2082 int (*write_room)(struct tty_struct * ) ;
2083 int (*chars_in_buffer)(struct tty_struct * ) ;
2084 int (*ioctl)(struct tty_struct * , unsigned int , unsigned long ) ;
2085 long (*compat_ioctl)(struct tty_struct * , unsigned int , unsigned long ) ;
2086 void (*set_termios)(struct tty_struct * , struct ktermios * ) ;
2087 void (*throttle)(struct tty_struct * ) ;
2088 void (*unthrottle)(struct tty_struct * ) ;
2089 void (*stop)(struct tty_struct * ) ;
2090 void (*start)(struct tty_struct * ) ;
2091 void (*hangup)(struct tty_struct * ) ;
2092 int (*break_ctl)(struct tty_struct * , int ) ;
2093 void (*flush_buffer)(struct tty_struct * ) ;
2094 void (*set_ldisc)(struct tty_struct * ) ;
2095 void (*wait_until_sent)(struct tty_struct * , int ) ;
2096 void (*send_xchar)(struct tty_struct * , char ) ;
2097 int (*tiocmget)(struct tty_struct * ) ;
2098 int (*tiocmset)(struct tty_struct * , unsigned int , unsigned int ) ;
2099 int (*resize)(struct tty_struct * , struct winsize * ) ;
2100 int (*set_termiox)(struct tty_struct * , struct termiox * ) ;
2101 int (*get_icount)(struct tty_struct * , struct serial_icounter_struct * ) ;
2102 int (*poll_init)(struct tty_driver * , int , char * ) ;
2103 int (*poll_get_char)(struct tty_driver * , int ) ;
2104 void (*poll_put_char)(struct tty_driver * , int , char ) ;
2105 struct file_operations const *proc_fops ;
2106};
2107#line 293 "include/linux/tty_driver.h"
2108struct proc_dir_entry;
2109#line 293 "include/linux/tty_driver.h"
2110struct tty_driver {
2111 int magic ;
2112 struct kref kref ;
2113 struct cdev cdev ;
2114 struct module *owner ;
2115 char const *driver_name ;
2116 char const *name ;
2117 int name_base ;
2118 int major ;
2119 int minor_start ;
2120 int num ;
2121 short type ;
2122 short subtype ;
2123 struct ktermios init_termios ;
2124 int flags ;
2125 struct proc_dir_entry *proc_entry ;
2126 struct tty_driver *other ;
2127 struct tty_struct **ttys ;
2128 struct ktermios **termios ;
2129 void *driver_state ;
2130 struct tty_operations const *ops ;
2131 struct list_head tty_drivers ;
2132};
2133#line 122 "include/linux/pps.h"
2134struct klist_node;
2135#line 122
2136struct klist_node;
2137#line 37 "include/linux/klist.h"
2138struct klist_node {
2139 void *n_klist ;
2140 struct list_head n_node ;
2141 struct kref n_ref ;
2142};
2143#line 67
2144struct dma_map_ops;
2145#line 67 "include/linux/klist.h"
2146struct dev_archdata {
2147 void *acpi_handle ;
2148 struct dma_map_ops *dma_ops ;
2149 void *iommu ;
2150};
2151#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2152struct device_private;
2153#line 17
2154struct device_private;
2155#line 18
2156struct device_driver;
2157#line 18
2158struct device_driver;
2159#line 19
2160struct driver_private;
2161#line 19
2162struct driver_private;
2163#line 20
2164struct class;
2165#line 20
2166struct class;
2167#line 21
2168struct subsys_private;
2169#line 21
2170struct subsys_private;
2171#line 22
2172struct bus_type;
2173#line 22
2174struct bus_type;
2175#line 23
2176struct device_node;
2177#line 23
2178struct device_node;
2179#line 24
2180struct iommu_ops;
2181#line 24
2182struct iommu_ops;
2183#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2184struct bus_attribute {
2185 struct attribute attr ;
2186 ssize_t (*show)(struct bus_type * , char * ) ;
2187 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
2188};
2189#line 51 "include/linux/device.h"
2190struct device_attribute;
2191#line 51
2192struct driver_attribute;
2193#line 51 "include/linux/device.h"
2194struct bus_type {
2195 char const *name ;
2196 char const *dev_name ;
2197 struct device *dev_root ;
2198 struct bus_attribute *bus_attrs ;
2199 struct device_attribute *dev_attrs ;
2200 struct driver_attribute *drv_attrs ;
2201 int (*match)(struct device * , struct device_driver * ) ;
2202 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
2203 int (*probe)(struct device * ) ;
2204 int (*remove)(struct device * ) ;
2205 void (*shutdown)(struct device * ) ;
2206 int (*suspend)(struct device * , pm_message_t ) ;
2207 int (*resume)(struct device * ) ;
2208 struct dev_pm_ops const *pm ;
2209 struct iommu_ops *iommu_ops ;
2210 struct subsys_private *p ;
2211};
2212#line 125
2213struct device_type;
2214#line 182
2215struct of_device_id;
2216#line 182 "include/linux/device.h"
2217struct device_driver {
2218 char const *name ;
2219 struct bus_type *bus ;
2220 struct module *owner ;
2221 char const *mod_name ;
2222 bool suppress_bind_attrs ;
2223 struct of_device_id const *of_match_table ;
2224 int (*probe)(struct device * ) ;
2225 int (*remove)(struct device * ) ;
2226 void (*shutdown)(struct device * ) ;
2227 int (*suspend)(struct device * , pm_message_t ) ;
2228 int (*resume)(struct device * ) ;
2229 struct attribute_group const **groups ;
2230 struct dev_pm_ops const *pm ;
2231 struct driver_private *p ;
2232};
2233#line 245 "include/linux/device.h"
2234struct driver_attribute {
2235 struct attribute attr ;
2236 ssize_t (*show)(struct device_driver * , char * ) ;
2237 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
2238};
2239#line 299
2240struct class_attribute;
2241#line 299 "include/linux/device.h"
2242struct class {
2243 char const *name ;
2244 struct module *owner ;
2245 struct class_attribute *class_attrs ;
2246 struct device_attribute *dev_attrs ;
2247 struct bin_attribute *dev_bin_attrs ;
2248 struct kobject *dev_kobj ;
2249 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
2250 char *(*devnode)(struct device * , umode_t * ) ;
2251 void (*class_release)(struct class * ) ;
2252 void (*dev_release)(struct device * ) ;
2253 int (*suspend)(struct device * , pm_message_t ) ;
2254 int (*resume)(struct device * ) ;
2255 struct kobj_ns_type_operations const *ns_type ;
2256 void const *(*namespace)(struct device * ) ;
2257 struct dev_pm_ops const *pm ;
2258 struct subsys_private *p ;
2259};
2260#line 394 "include/linux/device.h"
2261struct class_attribute {
2262 struct attribute attr ;
2263 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
2264 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
2265 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
2266};
2267#line 447 "include/linux/device.h"
2268struct device_type {
2269 char const *name ;
2270 struct attribute_group const **groups ;
2271 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
2272 char *(*devnode)(struct device * , umode_t * ) ;
2273 void (*release)(struct device * ) ;
2274 struct dev_pm_ops const *pm ;
2275};
2276#line 474 "include/linux/device.h"
2277struct device_attribute {
2278 struct attribute attr ;
2279 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
2280 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
2281 size_t ) ;
2282};
2283#line 557 "include/linux/device.h"
2284struct device_dma_parameters {
2285 unsigned int max_segment_size ;
2286 unsigned long segment_boundary_mask ;
2287};
2288#line 567
2289struct dma_coherent_mem;
2290#line 567 "include/linux/device.h"
2291struct device {
2292 struct device *parent ;
2293 struct device_private *p ;
2294 struct kobject kobj ;
2295 char const *init_name ;
2296 struct device_type const *type ;
2297 struct mutex mutex ;
2298 struct bus_type *bus ;
2299 struct device_driver *driver ;
2300 void *platform_data ;
2301 struct dev_pm_info power ;
2302 struct dev_pm_domain *pm_domain ;
2303 int numa_node ;
2304 u64 *dma_mask ;
2305 u64 coherent_dma_mask ;
2306 struct device_dma_parameters *dma_parms ;
2307 struct list_head dma_pools ;
2308 struct dma_coherent_mem *dma_mem ;
2309 struct dev_archdata archdata ;
2310 struct device_node *of_node ;
2311 dev_t devt ;
2312 u32 id ;
2313 spinlock_t devres_lock ;
2314 struct list_head devres_head ;
2315 struct klist_node knode_class ;
2316 struct class *class ;
2317 struct attribute_group const **groups ;
2318 void (*release)(struct device * ) ;
2319};
2320#line 681 "include/linux/device.h"
2321struct wakeup_source {
2322 char const *name ;
2323 struct list_head entry ;
2324 spinlock_t lock ;
2325 struct timer_list timer ;
2326 unsigned long timer_expires ;
2327 ktime_t total_time ;
2328 ktime_t max_time ;
2329 ktime_t last_time ;
2330 unsigned long event_count ;
2331 unsigned long active_count ;
2332 unsigned long relax_count ;
2333 unsigned long hit_count ;
2334 unsigned char active : 1 ;
2335};
2336#line 48 "include/linux/pps_kernel.h"
2337struct pps_event_time {
2338 struct timespec ts_real ;
2339};
2340#line 116 "include/linux/pps_kernel.h"
2341struct tty_ldisc_ops {
2342 int magic ;
2343 char *name ;
2344 int num ;
2345 int flags ;
2346 int (*open)(struct tty_struct * ) ;
2347 void (*close)(struct tty_struct * ) ;
2348 void (*flush_buffer)(struct tty_struct * ) ;
2349 ssize_t (*chars_in_buffer)(struct tty_struct * ) ;
2350 ssize_t (*read)(struct tty_struct * , struct file * , unsigned char * , size_t ) ;
2351 ssize_t (*write)(struct tty_struct * , struct file * , unsigned char const * ,
2352 size_t ) ;
2353 int (*ioctl)(struct tty_struct * , struct file * , unsigned int , unsigned long ) ;
2354 long (*compat_ioctl)(struct tty_struct * , struct file * , unsigned int , unsigned long ) ;
2355 void (*set_termios)(struct tty_struct * , struct ktermios * ) ;
2356 unsigned int (*poll)(struct tty_struct * , struct file * , struct poll_table_struct * ) ;
2357 int (*hangup)(struct tty_struct * ) ;
2358 void (*receive_buf)(struct tty_struct * , unsigned char const * , char * , int ) ;
2359 void (*write_wakeup)(struct tty_struct * ) ;
2360 void (*dcd_change)(struct tty_struct * , unsigned int , struct pps_event_time * ) ;
2361 struct module *owner ;
2362 int refcount ;
2363};
2364#line 153 "include/linux/tty_ldisc.h"
2365struct tty_ldisc {
2366 struct tty_ldisc_ops *ops ;
2367 atomic_t users ;
2368};
2369#line 158 "include/linux/tty_ldisc.h"
2370struct tty_buffer {
2371 struct tty_buffer *next ;
2372 char *char_buf_ptr ;
2373 unsigned char *flag_buf_ptr ;
2374 int used ;
2375 int size ;
2376 int commit ;
2377 int read ;
2378 unsigned long data[0U] ;
2379};
2380#line 75 "include/linux/tty.h"
2381struct tty_bufhead {
2382 struct work_struct work ;
2383 spinlock_t lock ;
2384 struct tty_buffer *head ;
2385 struct tty_buffer *tail ;
2386 struct tty_buffer *free ;
2387 int memory_used ;
2388};
2389#line 95
2390struct signal_struct;
2391#line 95
2392struct signal_struct;
2393#line 96
2394struct tty_port;
2395#line 96
2396struct tty_port;
2397#line 97 "include/linux/tty.h"
2398struct tty_port_operations {
2399 int (*carrier_raised)(struct tty_port * ) ;
2400 void (*dtr_rts)(struct tty_port * , int ) ;
2401 void (*shutdown)(struct tty_port * ) ;
2402 void (*drop)(struct tty_port * ) ;
2403 int (*activate)(struct tty_port * , struct tty_struct * ) ;
2404 void (*destruct)(struct tty_port * ) ;
2405};
2406#line 222 "include/linux/tty.h"
2407struct tty_port {
2408 struct tty_struct *tty ;
2409 struct tty_port_operations const *ops ;
2410 spinlock_t lock ;
2411 int blocked_open ;
2412 int count ;
2413 wait_queue_head_t open_wait ;
2414 wait_queue_head_t close_wait ;
2415 wait_queue_head_t delta_msr_wait ;
2416 unsigned long flags ;
2417 unsigned char console : 1 ;
2418 struct mutex mutex ;
2419 struct mutex buf_mutex ;
2420 unsigned char *xmit_buf ;
2421 unsigned int close_delay ;
2422 unsigned int closing_wait ;
2423 int drain_delay ;
2424 struct kref kref ;
2425};
2426#line 244 "include/linux/tty.h"
2427struct tty_struct {
2428 int magic ;
2429 struct kref kref ;
2430 struct device *dev ;
2431 struct tty_driver *driver ;
2432 struct tty_operations const *ops ;
2433 int index ;
2434 struct mutex ldisc_mutex ;
2435 struct tty_ldisc *ldisc ;
2436 struct mutex termios_mutex ;
2437 spinlock_t ctrl_lock ;
2438 struct ktermios *termios ;
2439 struct ktermios *termios_locked ;
2440 struct termiox *termiox ;
2441 char name[64U] ;
2442 struct pid *pgrp ;
2443 struct pid *session ;
2444 unsigned long flags ;
2445 int count ;
2446 struct winsize winsize ;
2447 unsigned char stopped : 1 ;
2448 unsigned char hw_stopped : 1 ;
2449 unsigned char flow_stopped : 1 ;
2450 unsigned char packet : 1 ;
2451 unsigned char low_latency : 1 ;
2452 unsigned char warned : 1 ;
2453 unsigned char ctrl_status ;
2454 unsigned int receive_room ;
2455 struct tty_struct *link ;
2456 struct fasync_struct *fasync ;
2457 struct tty_bufhead buf ;
2458 int alt_speed ;
2459 wait_queue_head_t write_wait ;
2460 wait_queue_head_t read_wait ;
2461 struct work_struct hangup_work ;
2462 void *disc_data ;
2463 void *driver_data ;
2464 struct list_head tty_files ;
2465 unsigned int column ;
2466 unsigned char lnext : 1 ;
2467 unsigned char erasing : 1 ;
2468 unsigned char raw : 1 ;
2469 unsigned char real_raw : 1 ;
2470 unsigned char icanon : 1 ;
2471 unsigned char closing : 1 ;
2472 unsigned char echo_overrun : 1 ;
2473 unsigned short minimum_to_wake ;
2474 unsigned long overrun_time ;
2475 int num_overrun ;
2476 unsigned long process_char_map[4U] ;
2477 char *read_buf ;
2478 int read_head ;
2479 int read_tail ;
2480 int read_cnt ;
2481 unsigned long read_flags[64U] ;
2482 unsigned char *echo_buf ;
2483 unsigned int echo_pos ;
2484 unsigned int echo_cnt ;
2485 int canon_data ;
2486 unsigned long canon_head ;
2487 unsigned int canon_column ;
2488 struct mutex atomic_read_lock ;
2489 struct mutex atomic_write_lock ;
2490 struct mutex output_lock ;
2491 struct mutex echo_lock ;
2492 unsigned char *write_buf ;
2493 int write_cnt ;
2494 spinlock_t read_lock ;
2495 struct work_struct SAK_work ;
2496 struct tty_port *port ;
2497};
2498#line 12 "include/linux/mod_devicetable.h"
2499typedef unsigned long kernel_ulong_t;
2500#line 38 "include/linux/mod_devicetable.h"
2501struct usb_device_id {
2502 __u16 match_flags ;
2503 __u16 idVendor ;
2504 __u16 idProduct ;
2505 __u16 bcdDevice_lo ;
2506 __u16 bcdDevice_hi ;
2507 __u8 bDeviceClass ;
2508 __u8 bDeviceSubClass ;
2509 __u8 bDeviceProtocol ;
2510 __u8 bInterfaceClass ;
2511 __u8 bInterfaceSubClass ;
2512 __u8 bInterfaceProtocol ;
2513 kernel_ulong_t driver_info ;
2514};
2515#line 215 "include/linux/mod_devicetable.h"
2516struct of_device_id {
2517 char name[32U] ;
2518 char type[32U] ;
2519 char compatible[128U] ;
2520 void *data ;
2521};
2522#line 245 "include/linux/usb/ch9.h"
2523struct usb_device_descriptor {
2524 __u8 bLength ;
2525 __u8 bDescriptorType ;
2526 __le16 bcdUSB ;
2527 __u8 bDeviceClass ;
2528 __u8 bDeviceSubClass ;
2529 __u8 bDeviceProtocol ;
2530 __u8 bMaxPacketSize0 ;
2531 __le16 idVendor ;
2532 __le16 idProduct ;
2533 __le16 bcdDevice ;
2534 __u8 iManufacturer ;
2535 __u8 iProduct ;
2536 __u8 iSerialNumber ;
2537 __u8 bNumConfigurations ;
2538};
2539#line 267 "include/linux/usb/ch9.h"
2540struct usb_config_descriptor {
2541 __u8 bLength ;
2542 __u8 bDescriptorType ;
2543 __le16 wTotalLength ;
2544 __u8 bNumInterfaces ;
2545 __u8 bConfigurationValue ;
2546 __u8 iConfiguration ;
2547 __u8 bmAttributes ;
2548 __u8 bMaxPower ;
2549};
2550#line 335 "include/linux/usb/ch9.h"
2551struct usb_interface_descriptor {
2552 __u8 bLength ;
2553 __u8 bDescriptorType ;
2554 __u8 bInterfaceNumber ;
2555 __u8 bAlternateSetting ;
2556 __u8 bNumEndpoints ;
2557 __u8 bInterfaceClass ;
2558 __u8 bInterfaceSubClass ;
2559 __u8 bInterfaceProtocol ;
2560 __u8 iInterface ;
2561};
2562#line 355 "include/linux/usb/ch9.h"
2563struct usb_endpoint_descriptor {
2564 __u8 bLength ;
2565 __u8 bDescriptorType ;
2566 __u8 bEndpointAddress ;
2567 __u8 bmAttributes ;
2568 __le16 wMaxPacketSize ;
2569 __u8 bInterval ;
2570 __u8 bRefresh ;
2571 __u8 bSynchAddress ;
2572};
2573#line 594 "include/linux/usb/ch9.h"
2574struct usb_ss_ep_comp_descriptor {
2575 __u8 bLength ;
2576 __u8 bDescriptorType ;
2577 __u8 bMaxBurst ;
2578 __u8 bmAttributes ;
2579 __le16 wBytesPerInterval ;
2580};
2581#line 673 "include/linux/usb/ch9.h"
2582struct usb_interface_assoc_descriptor {
2583 __u8 bLength ;
2584 __u8 bDescriptorType ;
2585 __u8 bFirstInterface ;
2586 __u8 bInterfaceCount ;
2587 __u8 bFunctionClass ;
2588 __u8 bFunctionSubClass ;
2589 __u8 bFunctionProtocol ;
2590 __u8 iFunction ;
2591};
2592#line 732 "include/linux/usb/ch9.h"
2593struct usb_bos_descriptor {
2594 __u8 bLength ;
2595 __u8 bDescriptorType ;
2596 __le16 wTotalLength ;
2597 __u8 bNumDeviceCaps ;
2598};
2599#line 782 "include/linux/usb/ch9.h"
2600struct usb_ext_cap_descriptor {
2601 __u8 bLength ;
2602 __u8 bDescriptorType ;
2603 __u8 bDevCapabilityType ;
2604 __le32 bmAttributes ;
2605};
2606#line 792 "include/linux/usb/ch9.h"
2607struct usb_ss_cap_descriptor {
2608 __u8 bLength ;
2609 __u8 bDescriptorType ;
2610 __u8 bDevCapabilityType ;
2611 __u8 bmAttributes ;
2612 __le16 wSpeedSupported ;
2613 __u8 bFunctionalitySupport ;
2614 __u8 bU1devExitLat ;
2615 __le16 bU2DevExitLat ;
2616};
2617#line 821 "include/linux/usb/ch9.h"
2618struct usb_ss_container_id_descriptor {
2619 __u8 bLength ;
2620 __u8 bDescriptorType ;
2621 __u8 bDevCapabilityType ;
2622 __u8 bReserved ;
2623 __u8 ContainerID[16U] ;
2624};
2625#line 886
2626enum usb_device_speed {
2627 USB_SPEED_UNKNOWN = 0,
2628 USB_SPEED_LOW = 1,
2629 USB_SPEED_FULL = 2,
2630 USB_SPEED_HIGH = 3,
2631 USB_SPEED_WIRELESS = 4,
2632 USB_SPEED_SUPER = 5
2633} ;
2634#line 908
2635enum usb_device_state {
2636 USB_STATE_NOTATTACHED = 0,
2637 USB_STATE_ATTACHED = 1,
2638 USB_STATE_POWERED = 2,
2639 USB_STATE_RECONNECTING = 3,
2640 USB_STATE_UNAUTHENTICATED = 4,
2641 USB_STATE_DEFAULT = 5,
2642 USB_STATE_ADDRESS = 6,
2643 USB_STATE_CONFIGURED = 7,
2644 USB_STATE_SUSPENDED = 8
2645} ;
2646#line 189 "include/linux/hardirq.h"
2647struct timerqueue_node {
2648 struct rb_node node ;
2649 ktime_t expires ;
2650};
2651#line 12 "include/linux/timerqueue.h"
2652struct timerqueue_head {
2653 struct rb_root head ;
2654 struct timerqueue_node *next ;
2655};
2656#line 50
2657struct hrtimer_clock_base;
2658#line 50
2659struct hrtimer_clock_base;
2660#line 51
2661struct hrtimer_cpu_base;
2662#line 51
2663struct hrtimer_cpu_base;
2664#line 60
2665enum hrtimer_restart {
2666 HRTIMER_NORESTART = 0,
2667 HRTIMER_RESTART = 1
2668} ;
2669#line 65 "include/linux/timerqueue.h"
2670struct hrtimer {
2671 struct timerqueue_node node ;
2672 ktime_t _softexpires ;
2673 enum hrtimer_restart (*function)(struct hrtimer * ) ;
2674 struct hrtimer_clock_base *base ;
2675 unsigned long state ;
2676 int start_pid ;
2677 void *start_site ;
2678 char start_comm[16U] ;
2679};
2680#line 132 "include/linux/hrtimer.h"
2681struct hrtimer_clock_base {
2682 struct hrtimer_cpu_base *cpu_base ;
2683 int index ;
2684 clockid_t clockid ;
2685 struct timerqueue_head active ;
2686 ktime_t resolution ;
2687 ktime_t (*get_time)(void) ;
2688 ktime_t softirq_time ;
2689 ktime_t offset ;
2690};
2691#line 162 "include/linux/hrtimer.h"
2692struct hrtimer_cpu_base {
2693 raw_spinlock_t lock ;
2694 unsigned long active_bases ;
2695 ktime_t expires_next ;
2696 int hres_active ;
2697 int hang_detected ;
2698 unsigned long nr_events ;
2699 unsigned long nr_retries ;
2700 unsigned long nr_hangs ;
2701 ktime_t max_hang_time ;
2702 struct hrtimer_clock_base clock_base[3U] ;
2703};
2704#line 55 "include/linux/sched.h"
2705union __anonunion_ldv_21432_148 {
2706 unsigned long index ;
2707 void *freelist ;
2708};
2709#line 55 "include/linux/sched.h"
2710struct __anonstruct_ldv_21442_152 {
2711 unsigned short inuse ;
2712 unsigned short objects : 15 ;
2713 unsigned char frozen : 1 ;
2714};
2715#line 55 "include/linux/sched.h"
2716union __anonunion_ldv_21443_151 {
2717 atomic_t _mapcount ;
2718 struct __anonstruct_ldv_21442_152 ldv_21442 ;
2719};
2720#line 55 "include/linux/sched.h"
2721struct __anonstruct_ldv_21445_150 {
2722 union __anonunion_ldv_21443_151 ldv_21443 ;
2723 atomic_t _count ;
2724};
2725#line 55 "include/linux/sched.h"
2726union __anonunion_ldv_21446_149 {
2727 unsigned long counters ;
2728 struct __anonstruct_ldv_21445_150 ldv_21445 ;
2729};
2730#line 55 "include/linux/sched.h"
2731struct __anonstruct_ldv_21447_147 {
2732 union __anonunion_ldv_21432_148 ldv_21432 ;
2733 union __anonunion_ldv_21446_149 ldv_21446 ;
2734};
2735#line 55 "include/linux/sched.h"
2736struct __anonstruct_ldv_21454_154 {
2737 struct page *next ;
2738 int pages ;
2739 int pobjects ;
2740};
2741#line 55 "include/linux/sched.h"
2742union __anonunion_ldv_21455_153 {
2743 struct list_head lru ;
2744 struct __anonstruct_ldv_21454_154 ldv_21454 ;
2745};
2746#line 55 "include/linux/sched.h"
2747union __anonunion_ldv_21460_155 {
2748 unsigned long private ;
2749 struct kmem_cache *slab ;
2750 struct page *first_page ;
2751};
2752#line 55 "include/linux/sched.h"
2753struct page {
2754 unsigned long flags ;
2755 struct address_space *mapping ;
2756 struct __anonstruct_ldv_21447_147 ldv_21447 ;
2757 union __anonunion_ldv_21455_153 ldv_21455 ;
2758 union __anonunion_ldv_21460_155 ldv_21460 ;
2759 unsigned long debug_flags ;
2760};
2761#line 192 "include/linux/mm_types.h"
2762struct __anonstruct_vm_set_157 {
2763 struct list_head list ;
2764 void *parent ;
2765 struct vm_area_struct *head ;
2766};
2767#line 192 "include/linux/mm_types.h"
2768union __anonunion_shared_156 {
2769 struct __anonstruct_vm_set_157 vm_set ;
2770 struct raw_prio_tree_node prio_tree_node ;
2771};
2772#line 192
2773struct anon_vma;
2774#line 192
2775struct vm_operations_struct;
2776#line 192
2777struct mempolicy;
2778#line 192 "include/linux/mm_types.h"
2779struct vm_area_struct {
2780 struct mm_struct *vm_mm ;
2781 unsigned long vm_start ;
2782 unsigned long vm_end ;
2783 struct vm_area_struct *vm_next ;
2784 struct vm_area_struct *vm_prev ;
2785 pgprot_t vm_page_prot ;
2786 unsigned long vm_flags ;
2787 struct rb_node vm_rb ;
2788 union __anonunion_shared_156 shared ;
2789 struct list_head anon_vma_chain ;
2790 struct anon_vma *anon_vma ;
2791 struct vm_operations_struct const *vm_ops ;
2792 unsigned long vm_pgoff ;
2793 struct file *vm_file ;
2794 void *vm_private_data ;
2795 struct mempolicy *vm_policy ;
2796};
2797#line 255 "include/linux/mm_types.h"
2798struct core_thread {
2799 struct task_struct *task ;
2800 struct core_thread *next ;
2801};
2802#line 261 "include/linux/mm_types.h"
2803struct core_state {
2804 atomic_t nr_threads ;
2805 struct core_thread dumper ;
2806 struct completion startup ;
2807};
2808#line 274 "include/linux/mm_types.h"
2809struct mm_rss_stat {
2810 atomic_long_t count[3U] ;
2811};
2812#line 287
2813struct linux_binfmt;
2814#line 287
2815struct mmu_notifier_mm;
2816#line 287 "include/linux/mm_types.h"
2817struct mm_struct {
2818 struct vm_area_struct *mmap ;
2819 struct rb_root mm_rb ;
2820 struct vm_area_struct *mmap_cache ;
2821 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
2822 unsigned long , unsigned long ) ;
2823 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
2824 unsigned long mmap_base ;
2825 unsigned long task_size ;
2826 unsigned long cached_hole_size ;
2827 unsigned long free_area_cache ;
2828 pgd_t *pgd ;
2829 atomic_t mm_users ;
2830 atomic_t mm_count ;
2831 int map_count ;
2832 spinlock_t page_table_lock ;
2833 struct rw_semaphore mmap_sem ;
2834 struct list_head mmlist ;
2835 unsigned long hiwater_rss ;
2836 unsigned long hiwater_vm ;
2837 unsigned long total_vm ;
2838 unsigned long locked_vm ;
2839 unsigned long pinned_vm ;
2840 unsigned long shared_vm ;
2841 unsigned long exec_vm ;
2842 unsigned long stack_vm ;
2843 unsigned long reserved_vm ;
2844 unsigned long def_flags ;
2845 unsigned long nr_ptes ;
2846 unsigned long start_code ;
2847 unsigned long end_code ;
2848 unsigned long start_data ;
2849 unsigned long end_data ;
2850 unsigned long start_brk ;
2851 unsigned long brk ;
2852 unsigned long start_stack ;
2853 unsigned long arg_start ;
2854 unsigned long arg_end ;
2855 unsigned long env_start ;
2856 unsigned long env_end ;
2857 unsigned long saved_auxv[44U] ;
2858 struct mm_rss_stat rss_stat ;
2859 struct linux_binfmt *binfmt ;
2860 cpumask_var_t cpu_vm_mask_var ;
2861 mm_context_t context ;
2862 unsigned int faultstamp ;
2863 unsigned int token_priority ;
2864 unsigned int last_interval ;
2865 unsigned long flags ;
2866 struct core_state *core_state ;
2867 spinlock_t ioctx_lock ;
2868 struct hlist_head ioctx_list ;
2869 struct task_struct *owner ;
2870 struct file *exe_file ;
2871 unsigned long num_exe_file_vmas ;
2872 struct mmu_notifier_mm *mmu_notifier_mm ;
2873 pgtable_t pmd_huge_pte ;
2874 struct cpumask cpumask_allocation ;
2875};
2876#line 7 "include/asm-generic/cputime.h"
2877typedef unsigned long cputime_t;
2878#line 98 "include/linux/sem.h"
2879struct sem_undo_list;
2880#line 98 "include/linux/sem.h"
2881struct sysv_sem {
2882 struct sem_undo_list *undo_list ;
2883};
2884#line 107
2885struct siginfo;
2886#line 107
2887struct siginfo;
2888#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2889struct __anonstruct_sigset_t_158 {
2890 unsigned long sig[1U] ;
2891};
2892#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2893typedef struct __anonstruct_sigset_t_158 sigset_t;
2894#line 17 "include/asm-generic/signal-defs.h"
2895typedef void __signalfn_t(int );
2896#line 18 "include/asm-generic/signal-defs.h"
2897typedef __signalfn_t *__sighandler_t;
2898#line 20 "include/asm-generic/signal-defs.h"
2899typedef void __restorefn_t(void);
2900#line 21 "include/asm-generic/signal-defs.h"
2901typedef __restorefn_t *__sigrestore_t;
2902#line 126 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2903struct sigaction {
2904 __sighandler_t sa_handler ;
2905 unsigned long sa_flags ;
2906 __sigrestore_t sa_restorer ;
2907 sigset_t sa_mask ;
2908};
2909#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2910struct k_sigaction {
2911 struct sigaction sa ;
2912};
2913#line 185 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2914union sigval {
2915 int sival_int ;
2916 void *sival_ptr ;
2917};
2918#line 10 "include/asm-generic/siginfo.h"
2919typedef union sigval sigval_t;
2920#line 11 "include/asm-generic/siginfo.h"
2921struct __anonstruct__kill_160 {
2922 __kernel_pid_t _pid ;
2923 __kernel_uid32_t _uid ;
2924};
2925#line 11 "include/asm-generic/siginfo.h"
2926struct __anonstruct__timer_161 {
2927 __kernel_timer_t _tid ;
2928 int _overrun ;
2929 char _pad[0U] ;
2930 sigval_t _sigval ;
2931 int _sys_private ;
2932};
2933#line 11 "include/asm-generic/siginfo.h"
2934struct __anonstruct__rt_162 {
2935 __kernel_pid_t _pid ;
2936 __kernel_uid32_t _uid ;
2937 sigval_t _sigval ;
2938};
2939#line 11 "include/asm-generic/siginfo.h"
2940struct __anonstruct__sigchld_163 {
2941 __kernel_pid_t _pid ;
2942 __kernel_uid32_t _uid ;
2943 int _status ;
2944 __kernel_clock_t _utime ;
2945 __kernel_clock_t _stime ;
2946};
2947#line 11 "include/asm-generic/siginfo.h"
2948struct __anonstruct__sigfault_164 {
2949 void *_addr ;
2950 short _addr_lsb ;
2951};
2952#line 11 "include/asm-generic/siginfo.h"
2953struct __anonstruct__sigpoll_165 {
2954 long _band ;
2955 int _fd ;
2956};
2957#line 11 "include/asm-generic/siginfo.h"
2958union __anonunion__sifields_159 {
2959 int _pad[28U] ;
2960 struct __anonstruct__kill_160 _kill ;
2961 struct __anonstruct__timer_161 _timer ;
2962 struct __anonstruct__rt_162 _rt ;
2963 struct __anonstruct__sigchld_163 _sigchld ;
2964 struct __anonstruct__sigfault_164 _sigfault ;
2965 struct __anonstruct__sigpoll_165 _sigpoll ;
2966};
2967#line 11 "include/asm-generic/siginfo.h"
2968struct siginfo {
2969 int si_signo ;
2970 int si_errno ;
2971 int si_code ;
2972 union __anonunion__sifields_159 _sifields ;
2973};
2974#line 102 "include/asm-generic/siginfo.h"
2975typedef struct siginfo siginfo_t;
2976#line 14 "include/linux/signal.h"
2977struct user_struct;
2978#line 24 "include/linux/signal.h"
2979struct sigpending {
2980 struct list_head list ;
2981 sigset_t signal ;
2982};
2983#line 10 "include/linux/seccomp.h"
2984struct __anonstruct_seccomp_t_168 {
2985 int mode ;
2986};
2987#line 10 "include/linux/seccomp.h"
2988typedef struct __anonstruct_seccomp_t_168 seccomp_t;
2989#line 26 "include/linux/seccomp.h"
2990struct plist_head {
2991 struct list_head node_list ;
2992};
2993#line 84 "include/linux/plist.h"
2994struct plist_node {
2995 int prio ;
2996 struct list_head prio_list ;
2997 struct list_head node_list ;
2998};
2999#line 38 "include/linux/rtmutex.h"
3000struct rt_mutex_waiter;
3001#line 38
3002struct rt_mutex_waiter;
3003#line 41 "include/linux/resource.h"
3004struct rlimit {
3005 unsigned long rlim_cur ;
3006 unsigned long rlim_max ;
3007};
3008#line 85 "include/linux/resource.h"
3009struct task_io_accounting {
3010 u64 rchar ;
3011 u64 wchar ;
3012 u64 syscr ;
3013 u64 syscw ;
3014 u64 read_bytes ;
3015 u64 write_bytes ;
3016 u64 cancelled_write_bytes ;
3017};
3018#line 45 "include/linux/task_io_accounting.h"
3019struct latency_record {
3020 unsigned long backtrace[12U] ;
3021 unsigned int count ;
3022 unsigned long time ;
3023 unsigned long max ;
3024};
3025#line 29 "include/linux/key.h"
3026typedef int32_t key_serial_t;
3027#line 32 "include/linux/key.h"
3028typedef uint32_t key_perm_t;
3029#line 33
3030struct key;
3031#line 33
3032struct key;
3033#line 34
3034struct key_type;
3035#line 34
3036struct key_type;
3037#line 36
3038struct keyring_list;
3039#line 36
3040struct keyring_list;
3041#line 115
3042struct key_user;
3043#line 115 "include/linux/key.h"
3044union __anonunion_ldv_22259_169 {
3045 time_t expiry ;
3046 time_t revoked_at ;
3047};
3048#line 115 "include/linux/key.h"
3049union __anonunion_type_data_170 {
3050 struct list_head link ;
3051 unsigned long x[2U] ;
3052 void *p[2U] ;
3053 int reject_error ;
3054};
3055#line 115 "include/linux/key.h"
3056union __anonunion_payload_171 {
3057 unsigned long value ;
3058 void *rcudata ;
3059 void *data ;
3060 struct keyring_list *subscriptions ;
3061};
3062#line 115 "include/linux/key.h"
3063struct key {
3064 atomic_t usage ;
3065 key_serial_t serial ;
3066 struct rb_node serial_node ;
3067 struct key_type *type ;
3068 struct rw_semaphore sem ;
3069 struct key_user *user ;
3070 void *security ;
3071 union __anonunion_ldv_22259_169 ldv_22259 ;
3072 uid_t uid ;
3073 gid_t gid ;
3074 key_perm_t perm ;
3075 unsigned short quotalen ;
3076 unsigned short datalen ;
3077 unsigned long flags ;
3078 char *description ;
3079 union __anonunion_type_data_170 type_data ;
3080 union __anonunion_payload_171 payload ;
3081};
3082#line 316
3083struct audit_context;
3084#line 316
3085struct audit_context;
3086#line 27 "include/linux/selinux.h"
3087struct group_info {
3088 atomic_t usage ;
3089 int ngroups ;
3090 int nblocks ;
3091 gid_t small_block[32U] ;
3092 gid_t *blocks[0U] ;
3093};
3094#line 77 "include/linux/cred.h"
3095struct thread_group_cred {
3096 atomic_t usage ;
3097 pid_t tgid ;
3098 spinlock_t lock ;
3099 struct key *session_keyring ;
3100 struct key *process_keyring ;
3101 struct rcu_head rcu ;
3102};
3103#line 91 "include/linux/cred.h"
3104struct cred {
3105 atomic_t usage ;
3106 atomic_t subscribers ;
3107 void *put_addr ;
3108 unsigned int magic ;
3109 uid_t uid ;
3110 gid_t gid ;
3111 uid_t suid ;
3112 gid_t sgid ;
3113 uid_t euid ;
3114 gid_t egid ;
3115 uid_t fsuid ;
3116 gid_t fsgid ;
3117 unsigned int securebits ;
3118 kernel_cap_t cap_inheritable ;
3119 kernel_cap_t cap_permitted ;
3120 kernel_cap_t cap_effective ;
3121 kernel_cap_t cap_bset ;
3122 unsigned char jit_keyring ;
3123 struct key *thread_keyring ;
3124 struct key *request_key_auth ;
3125 struct thread_group_cred *tgcred ;
3126 void *security ;
3127 struct user_struct *user ;
3128 struct user_namespace *user_ns ;
3129 struct group_info *group_info ;
3130 struct rcu_head rcu ;
3131};
3132#line 264
3133struct llist_node;
3134#line 64 "include/linux/llist.h"
3135struct llist_node {
3136 struct llist_node *next ;
3137};
3138#line 185
3139struct futex_pi_state;
3140#line 185
3141struct futex_pi_state;
3142#line 186
3143struct robust_list_head;
3144#line 186
3145struct robust_list_head;
3146#line 187
3147struct bio_list;
3148#line 187
3149struct bio_list;
3150#line 188
3151struct fs_struct;
3152#line 188
3153struct fs_struct;
3154#line 189
3155struct perf_event_context;
3156#line 189
3157struct perf_event_context;
3158#line 190
3159struct blk_plug;
3160#line 190
3161struct blk_plug;
3162#line 149 "include/linux/sched.h"
3163struct cfs_rq;
3164#line 149
3165struct cfs_rq;
3166#line 44 "include/linux/aio_abi.h"
3167struct io_event {
3168 __u64 data ;
3169 __u64 obj ;
3170 __s64 res ;
3171 __s64 res2 ;
3172};
3173#line 106 "include/linux/aio_abi.h"
3174struct iovec {
3175 void *iov_base ;
3176 __kernel_size_t iov_len ;
3177};
3178#line 54 "include/linux/uio.h"
3179struct kioctx;
3180#line 54
3181struct kioctx;
3182#line 55 "include/linux/uio.h"
3183union __anonunion_ki_obj_172 {
3184 void *user ;
3185 struct task_struct *tsk ;
3186};
3187#line 55
3188struct eventfd_ctx;
3189#line 55 "include/linux/uio.h"
3190struct kiocb {
3191 struct list_head ki_run_list ;
3192 unsigned long ki_flags ;
3193 int ki_users ;
3194 unsigned int ki_key ;
3195 struct file *ki_filp ;
3196 struct kioctx *ki_ctx ;
3197 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
3198 ssize_t (*ki_retry)(struct kiocb * ) ;
3199 void (*ki_dtor)(struct kiocb * ) ;
3200 union __anonunion_ki_obj_172 ki_obj ;
3201 __u64 ki_user_data ;
3202 loff_t ki_pos ;
3203 void *private ;
3204 unsigned short ki_opcode ;
3205 size_t ki_nbytes ;
3206 char *ki_buf ;
3207 size_t ki_left ;
3208 struct iovec ki_inline_vec ;
3209 struct iovec *ki_iovec ;
3210 unsigned long ki_nr_segs ;
3211 unsigned long ki_cur_seg ;
3212 struct list_head ki_list ;
3213 struct list_head ki_batch ;
3214 struct eventfd_ctx *ki_eventfd ;
3215};
3216#line 162 "include/linux/aio.h"
3217struct aio_ring_info {
3218 unsigned long mmap_base ;
3219 unsigned long mmap_size ;
3220 struct page **ring_pages ;
3221 spinlock_t ring_lock ;
3222 long nr_pages ;
3223 unsigned int nr ;
3224 unsigned int tail ;
3225 struct page *internal_pages[8U] ;
3226};
3227#line 178 "include/linux/aio.h"
3228struct kioctx {
3229 atomic_t users ;
3230 int dead ;
3231 struct mm_struct *mm ;
3232 unsigned long user_id ;
3233 struct hlist_node list ;
3234 wait_queue_head_t wait ;
3235 spinlock_t ctx_lock ;
3236 int reqs_active ;
3237 struct list_head active_reqs ;
3238 struct list_head run_list ;
3239 unsigned int max_reqs ;
3240 struct aio_ring_info ring_info ;
3241 struct delayed_work wq ;
3242 struct rcu_head rcu_head ;
3243};
3244#line 406 "include/linux/sched.h"
3245struct sighand_struct {
3246 atomic_t count ;
3247 struct k_sigaction action[64U] ;
3248 spinlock_t siglock ;
3249 wait_queue_head_t signalfd_wqh ;
3250};
3251#line 449 "include/linux/sched.h"
3252struct pacct_struct {
3253 int ac_flag ;
3254 long ac_exitcode ;
3255 unsigned long ac_mem ;
3256 cputime_t ac_utime ;
3257 cputime_t ac_stime ;
3258 unsigned long ac_minflt ;
3259 unsigned long ac_majflt ;
3260};
3261#line 457 "include/linux/sched.h"
3262struct cpu_itimer {
3263 cputime_t expires ;
3264 cputime_t incr ;
3265 u32 error ;
3266 u32 incr_error ;
3267};
3268#line 464 "include/linux/sched.h"
3269struct task_cputime {
3270 cputime_t utime ;
3271 cputime_t stime ;
3272 unsigned long long sum_exec_runtime ;
3273};
3274#line 481 "include/linux/sched.h"
3275struct thread_group_cputimer {
3276 struct task_cputime cputime ;
3277 int running ;
3278 raw_spinlock_t lock ;
3279};
3280#line 517
3281struct autogroup;
3282#line 517
3283struct autogroup;
3284#line 518
3285struct taskstats;
3286#line 518
3287struct tty_audit_buf;
3288#line 518 "include/linux/sched.h"
3289struct signal_struct {
3290 atomic_t sigcnt ;
3291 atomic_t live ;
3292 int nr_threads ;
3293 wait_queue_head_t wait_chldexit ;
3294 struct task_struct *curr_target ;
3295 struct sigpending shared_pending ;
3296 int group_exit_code ;
3297 int notify_count ;
3298 struct task_struct *group_exit_task ;
3299 int group_stop_count ;
3300 unsigned int flags ;
3301 unsigned char is_child_subreaper : 1 ;
3302 unsigned char has_child_subreaper : 1 ;
3303 struct list_head posix_timers ;
3304 struct hrtimer real_timer ;
3305 struct pid *leader_pid ;
3306 ktime_t it_real_incr ;
3307 struct cpu_itimer it[2U] ;
3308 struct thread_group_cputimer cputimer ;
3309 struct task_cputime cputime_expires ;
3310 struct list_head cpu_timers[3U] ;
3311 struct pid *tty_old_pgrp ;
3312 int leader ;
3313 struct tty_struct *tty ;
3314 struct autogroup *autogroup ;
3315 cputime_t utime ;
3316 cputime_t stime ;
3317 cputime_t cutime ;
3318 cputime_t cstime ;
3319 cputime_t gtime ;
3320 cputime_t cgtime ;
3321 cputime_t prev_utime ;
3322 cputime_t prev_stime ;
3323 unsigned long nvcsw ;
3324 unsigned long nivcsw ;
3325 unsigned long cnvcsw ;
3326 unsigned long cnivcsw ;
3327 unsigned long min_flt ;
3328 unsigned long maj_flt ;
3329 unsigned long cmin_flt ;
3330 unsigned long cmaj_flt ;
3331 unsigned long inblock ;
3332 unsigned long oublock ;
3333 unsigned long cinblock ;
3334 unsigned long coublock ;
3335 unsigned long maxrss ;
3336 unsigned long cmaxrss ;
3337 struct task_io_accounting ioac ;
3338 unsigned long long sum_sched_runtime ;
3339 struct rlimit rlim[16U] ;
3340 struct pacct_struct pacct ;
3341 struct taskstats *stats ;
3342 unsigned int audit_tty ;
3343 struct tty_audit_buf *tty_audit_buf ;
3344 struct rw_semaphore group_rwsem ;
3345 int oom_adj ;
3346 int oom_score_adj ;
3347 int oom_score_adj_min ;
3348 struct mutex cred_guard_mutex ;
3349};
3350#line 699 "include/linux/sched.h"
3351struct user_struct {
3352 atomic_t __count ;
3353 atomic_t processes ;
3354 atomic_t files ;
3355 atomic_t sigpending ;
3356 atomic_t inotify_watches ;
3357 atomic_t inotify_devs ;
3358 atomic_t fanotify_listeners ;
3359 atomic_long_t epoll_watches ;
3360 unsigned long mq_bytes ;
3361 unsigned long locked_shm ;
3362 struct key *uid_keyring ;
3363 struct key *session_keyring ;
3364 struct hlist_node uidhash_node ;
3365 uid_t uid ;
3366 struct user_namespace *user_ns ;
3367 atomic_long_t locked_vm ;
3368};
3369#line 744
3370struct reclaim_state;
3371#line 744
3372struct reclaim_state;
3373#line 745 "include/linux/sched.h"
3374struct sched_info {
3375 unsigned long pcount ;
3376 unsigned long long run_delay ;
3377 unsigned long long last_arrival ;
3378 unsigned long long last_queued ;
3379};
3380#line 760 "include/linux/sched.h"
3381struct task_delay_info {
3382 spinlock_t lock ;
3383 unsigned int flags ;
3384 struct timespec blkio_start ;
3385 struct timespec blkio_end ;
3386 u64 blkio_delay ;
3387 u64 swapin_delay ;
3388 u32 blkio_count ;
3389 u32 swapin_count ;
3390 struct timespec freepages_start ;
3391 struct timespec freepages_end ;
3392 u64 freepages_delay ;
3393 u32 freepages_count ;
3394};
3395#line 1069
3396struct io_context;
3397#line 1069
3398struct io_context;
3399#line 1098
3400struct rq;
3401#line 1098
3402struct rq;
3403#line 1099 "include/linux/sched.h"
3404struct sched_class {
3405 struct sched_class const *next ;
3406 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
3407 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
3408 void (*yield_task)(struct rq * ) ;
3409 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
3410 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
3411 struct task_struct *(*pick_next_task)(struct rq * ) ;
3412 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
3413 int (*select_task_rq)(struct task_struct * , int , int ) ;
3414 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
3415 void (*post_schedule)(struct rq * ) ;
3416 void (*task_waking)(struct task_struct * ) ;
3417 void (*task_woken)(struct rq * , struct task_struct * ) ;
3418 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
3419 void (*rq_online)(struct rq * ) ;
3420 void (*rq_offline)(struct rq * ) ;
3421 void (*set_curr_task)(struct rq * ) ;
3422 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
3423 void (*task_fork)(struct task_struct * ) ;
3424 void (*switched_from)(struct rq * , struct task_struct * ) ;
3425 void (*switched_to)(struct rq * , struct task_struct * ) ;
3426 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
3427 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
3428 void (*task_move_group)(struct task_struct * , int ) ;
3429};
3430#line 1165 "include/linux/sched.h"
3431struct load_weight {
3432 unsigned long weight ;
3433 unsigned long inv_weight ;
3434};
3435#line 1170 "include/linux/sched.h"
3436struct sched_statistics {
3437 u64 wait_start ;
3438 u64 wait_max ;
3439 u64 wait_count ;
3440 u64 wait_sum ;
3441 u64 iowait_count ;
3442 u64 iowait_sum ;
3443 u64 sleep_start ;
3444 u64 sleep_max ;
3445 s64 sum_sleep_runtime ;
3446 u64 block_start ;
3447 u64 block_max ;
3448 u64 exec_max ;
3449 u64 slice_max ;
3450 u64 nr_migrations_cold ;
3451 u64 nr_failed_migrations_affine ;
3452 u64 nr_failed_migrations_running ;
3453 u64 nr_failed_migrations_hot ;
3454 u64 nr_forced_migrations ;
3455 u64 nr_wakeups ;
3456 u64 nr_wakeups_sync ;
3457 u64 nr_wakeups_migrate ;
3458 u64 nr_wakeups_local ;
3459 u64 nr_wakeups_remote ;
3460 u64 nr_wakeups_affine ;
3461 u64 nr_wakeups_affine_attempts ;
3462 u64 nr_wakeups_passive ;
3463 u64 nr_wakeups_idle ;
3464};
3465#line 1205 "include/linux/sched.h"
3466struct sched_entity {
3467 struct load_weight load ;
3468 struct rb_node run_node ;
3469 struct list_head group_node ;
3470 unsigned int on_rq ;
3471 u64 exec_start ;
3472 u64 sum_exec_runtime ;
3473 u64 vruntime ;
3474 u64 prev_sum_exec_runtime ;
3475 u64 nr_migrations ;
3476 struct sched_statistics statistics ;
3477 struct sched_entity *parent ;
3478 struct cfs_rq *cfs_rq ;
3479 struct cfs_rq *my_q ;
3480};
3481#line 1231
3482struct rt_rq;
3483#line 1231 "include/linux/sched.h"
3484struct sched_rt_entity {
3485 struct list_head run_list ;
3486 unsigned long timeout ;
3487 unsigned int time_slice ;
3488 int nr_cpus_allowed ;
3489 struct sched_rt_entity *back ;
3490 struct sched_rt_entity *parent ;
3491 struct rt_rq *rt_rq ;
3492 struct rt_rq *my_q ;
3493};
3494#line 1255
3495struct mem_cgroup;
3496#line 1255 "include/linux/sched.h"
3497struct memcg_batch_info {
3498 int do_batch ;
3499 struct mem_cgroup *memcg ;
3500 unsigned long nr_pages ;
3501 unsigned long memsw_nr_pages ;
3502};
3503#line 1616
3504struct css_set;
3505#line 1616
3506struct compat_robust_list_head;
3507#line 1616 "include/linux/sched.h"
3508struct task_struct {
3509 long volatile state ;
3510 void *stack ;
3511 atomic_t usage ;
3512 unsigned int flags ;
3513 unsigned int ptrace ;
3514 struct llist_node wake_entry ;
3515 int on_cpu ;
3516 int on_rq ;
3517 int prio ;
3518 int static_prio ;
3519 int normal_prio ;
3520 unsigned int rt_priority ;
3521 struct sched_class const *sched_class ;
3522 struct sched_entity se ;
3523 struct sched_rt_entity rt ;
3524 struct hlist_head preempt_notifiers ;
3525 unsigned char fpu_counter ;
3526 unsigned int policy ;
3527 cpumask_t cpus_allowed ;
3528 struct sched_info sched_info ;
3529 struct list_head tasks ;
3530 struct plist_node pushable_tasks ;
3531 struct mm_struct *mm ;
3532 struct mm_struct *active_mm ;
3533 unsigned char brk_randomized : 1 ;
3534 int exit_state ;
3535 int exit_code ;
3536 int exit_signal ;
3537 int pdeath_signal ;
3538 unsigned int jobctl ;
3539 unsigned int personality ;
3540 unsigned char did_exec : 1 ;
3541 unsigned char in_execve : 1 ;
3542 unsigned char in_iowait : 1 ;
3543 unsigned char sched_reset_on_fork : 1 ;
3544 unsigned char sched_contributes_to_load : 1 ;
3545 unsigned char irq_thread : 1 ;
3546 pid_t pid ;
3547 pid_t tgid ;
3548 unsigned long stack_canary ;
3549 struct task_struct *real_parent ;
3550 struct task_struct *parent ;
3551 struct list_head children ;
3552 struct list_head sibling ;
3553 struct task_struct *group_leader ;
3554 struct list_head ptraced ;
3555 struct list_head ptrace_entry ;
3556 struct pid_link pids[3U] ;
3557 struct list_head thread_group ;
3558 struct completion *vfork_done ;
3559 int *set_child_tid ;
3560 int *clear_child_tid ;
3561 cputime_t utime ;
3562 cputime_t stime ;
3563 cputime_t utimescaled ;
3564 cputime_t stimescaled ;
3565 cputime_t gtime ;
3566 cputime_t prev_utime ;
3567 cputime_t prev_stime ;
3568 unsigned long nvcsw ;
3569 unsigned long nivcsw ;
3570 struct timespec start_time ;
3571 struct timespec real_start_time ;
3572 unsigned long min_flt ;
3573 unsigned long maj_flt ;
3574 struct task_cputime cputime_expires ;
3575 struct list_head cpu_timers[3U] ;
3576 struct cred const *real_cred ;
3577 struct cred const *cred ;
3578 struct cred *replacement_session_keyring ;
3579 char comm[16U] ;
3580 int link_count ;
3581 int total_link_count ;
3582 struct sysv_sem sysvsem ;
3583 unsigned long last_switch_count ;
3584 struct thread_struct thread ;
3585 struct fs_struct *fs ;
3586 struct files_struct *files ;
3587 struct nsproxy *nsproxy ;
3588 struct signal_struct *signal ;
3589 struct sighand_struct *sighand ;
3590 sigset_t blocked ;
3591 sigset_t real_blocked ;
3592 sigset_t saved_sigmask ;
3593 struct sigpending pending ;
3594 unsigned long sas_ss_sp ;
3595 size_t sas_ss_size ;
3596 int (*notifier)(void * ) ;
3597 void *notifier_data ;
3598 sigset_t *notifier_mask ;
3599 struct audit_context *audit_context ;
3600 uid_t loginuid ;
3601 unsigned int sessionid ;
3602 seccomp_t seccomp ;
3603 u32 parent_exec_id ;
3604 u32 self_exec_id ;
3605 spinlock_t alloc_lock ;
3606 raw_spinlock_t pi_lock ;
3607 struct plist_head pi_waiters ;
3608 struct rt_mutex_waiter *pi_blocked_on ;
3609 struct mutex_waiter *blocked_on ;
3610 unsigned int irq_events ;
3611 unsigned long hardirq_enable_ip ;
3612 unsigned long hardirq_disable_ip ;
3613 unsigned int hardirq_enable_event ;
3614 unsigned int hardirq_disable_event ;
3615 int hardirqs_enabled ;
3616 int hardirq_context ;
3617 unsigned long softirq_disable_ip ;
3618 unsigned long softirq_enable_ip ;
3619 unsigned int softirq_disable_event ;
3620 unsigned int softirq_enable_event ;
3621 int softirqs_enabled ;
3622 int softirq_context ;
3623 u64 curr_chain_key ;
3624 int lockdep_depth ;
3625 unsigned int lockdep_recursion ;
3626 struct held_lock held_locks[48U] ;
3627 gfp_t lockdep_reclaim_gfp ;
3628 void *journal_info ;
3629 struct bio_list *bio_list ;
3630 struct blk_plug *plug ;
3631 struct reclaim_state *reclaim_state ;
3632 struct backing_dev_info *backing_dev_info ;
3633 struct io_context *io_context ;
3634 unsigned long ptrace_message ;
3635 siginfo_t *last_siginfo ;
3636 struct task_io_accounting ioac ;
3637 u64 acct_rss_mem1 ;
3638 u64 acct_vm_mem1 ;
3639 cputime_t acct_timexpd ;
3640 nodemask_t mems_allowed ;
3641 seqcount_t mems_allowed_seq ;
3642 int cpuset_mem_spread_rotor ;
3643 int cpuset_slab_spread_rotor ;
3644 struct css_set *cgroups ;
3645 struct list_head cg_list ;
3646 struct robust_list_head *robust_list ;
3647 struct compat_robust_list_head *compat_robust_list ;
3648 struct list_head pi_state_list ;
3649 struct futex_pi_state *pi_state_cache ;
3650 struct perf_event_context *perf_event_ctxp[2U] ;
3651 struct mutex perf_event_mutex ;
3652 struct list_head perf_event_list ;
3653 struct mempolicy *mempolicy ;
3654 short il_next ;
3655 short pref_node_fork ;
3656 struct rcu_head rcu ;
3657 struct pipe_inode_info *splice_pipe ;
3658 struct task_delay_info *delays ;
3659 int make_it_fail ;
3660 int nr_dirtied ;
3661 int nr_dirtied_pause ;
3662 unsigned long dirty_paused_when ;
3663 int latency_record_count ;
3664 struct latency_record latency_record[32U] ;
3665 unsigned long timer_slack_ns ;
3666 unsigned long default_timer_slack_ns ;
3667 struct list_head *scm_work_list ;
3668 unsigned long trace ;
3669 unsigned long trace_recursion ;
3670 struct memcg_batch_info memcg_batch ;
3671 atomic_t ptrace_bp_refcnt ;
3672};
3673#line 253 "include/linux/pm_runtime.h"
3674struct usb_device;
3675#line 253
3676struct usb_device;
3677#line 254
3678struct usb_driver;
3679#line 254
3680struct usb_driver;
3681#line 255
3682struct wusb_dev;
3683#line 255
3684struct wusb_dev;
3685#line 256
3686struct ep_device;
3687#line 256
3688struct ep_device;
3689#line 257 "include/linux/pm_runtime.h"
3690struct usb_host_endpoint {
3691 struct usb_endpoint_descriptor desc ;
3692 struct usb_ss_ep_comp_descriptor ss_ep_comp ;
3693 struct list_head urb_list ;
3694 void *hcpriv ;
3695 struct ep_device *ep_dev ;
3696 unsigned char *extra ;
3697 int extralen ;
3698 int enabled ;
3699};
3700#line 75 "include/linux/usb.h"
3701struct usb_host_interface {
3702 struct usb_interface_descriptor desc ;
3703 struct usb_host_endpoint *endpoint ;
3704 char *string ;
3705 unsigned char *extra ;
3706 int extralen ;
3707};
3708#line 89
3709enum usb_interface_condition {
3710 USB_INTERFACE_UNBOUND = 0,
3711 USB_INTERFACE_BINDING = 1,
3712 USB_INTERFACE_BOUND = 2,
3713 USB_INTERFACE_UNBINDING = 3
3714} ;
3715#line 96 "include/linux/usb.h"
3716struct usb_interface {
3717 struct usb_host_interface *altsetting ;
3718 struct usb_host_interface *cur_altsetting ;
3719 unsigned int num_altsetting ;
3720 struct usb_interface_assoc_descriptor *intf_assoc ;
3721 int minor ;
3722 enum usb_interface_condition condition ;
3723 unsigned char sysfs_files_created : 1 ;
3724 unsigned char ep_devs_created : 1 ;
3725 unsigned char unregistering : 1 ;
3726 unsigned char needs_remote_wakeup : 1 ;
3727 unsigned char needs_altsetting0 : 1 ;
3728 unsigned char needs_binding : 1 ;
3729 unsigned char reset_running : 1 ;
3730 unsigned char resetting_device : 1 ;
3731 struct device dev ;
3732 struct device *usb_dev ;
3733 atomic_t pm_usage_cnt ;
3734 struct work_struct reset_ws ;
3735};
3736#line 203 "include/linux/usb.h"
3737struct usb_interface_cache {
3738 unsigned int num_altsetting ;
3739 struct kref ref ;
3740 struct usb_host_interface altsetting[0U] ;
3741};
3742#line 230 "include/linux/usb.h"
3743struct usb_host_config {
3744 struct usb_config_descriptor desc ;
3745 char *string ;
3746 struct usb_interface_assoc_descriptor *intf_assoc[16U] ;
3747 struct usb_interface *interface[32U] ;
3748 struct usb_interface_cache *intf_cache[32U] ;
3749 unsigned char *extra ;
3750 int extralen ;
3751};
3752#line 294 "include/linux/usb.h"
3753struct usb_host_bos {
3754 struct usb_bos_descriptor *desc ;
3755 struct usb_ext_cap_descriptor *ext_cap ;
3756 struct usb_ss_cap_descriptor *ss_cap ;
3757 struct usb_ss_container_id_descriptor *ss_id ;
3758};
3759#line 306 "include/linux/usb.h"
3760struct usb_devmap {
3761 unsigned long devicemap[2U] ;
3762};
3763#line 318
3764struct mon_bus;
3765#line 318 "include/linux/usb.h"
3766struct usb_bus {
3767 struct device *controller ;
3768 int busnum ;
3769 char const *bus_name ;
3770 u8 uses_dma ;
3771 u8 uses_pio_for_control ;
3772 u8 otg_port ;
3773 unsigned char is_b_host : 1 ;
3774 unsigned char b_hnp_enable : 1 ;
3775 unsigned int sg_tablesize ;
3776 int devnum_next ;
3777 struct usb_devmap devmap ;
3778 struct usb_device *root_hub ;
3779 struct usb_bus *hs_companion ;
3780 struct list_head bus_list ;
3781 int bandwidth_allocated ;
3782 int bandwidth_int_reqs ;
3783 int bandwidth_isoc_reqs ;
3784 struct dentry *usbfs_dentry ;
3785 struct mon_bus *mon_bus ;
3786 int monitored ;
3787};
3788#line 362
3789struct usb_tt;
3790#line 362
3791struct usb_tt;
3792#line 363
3793enum usb_device_removable {
3794 USB_DEVICE_REMOVABLE_UNKNOWN = 0,
3795 USB_DEVICE_REMOVABLE = 1,
3796 USB_DEVICE_FIXED = 2
3797} ;
3798#line 369 "include/linux/usb.h"
3799struct usb_device {
3800 int devnum ;
3801 char devpath[16U] ;
3802 u32 route ;
3803 enum usb_device_state state ;
3804 enum usb_device_speed speed ;
3805 struct usb_tt *tt ;
3806 int ttport ;
3807 unsigned int toggle[2U] ;
3808 struct usb_device *parent ;
3809 struct usb_bus *bus ;
3810 struct usb_host_endpoint ep0 ;
3811 struct device dev ;
3812 struct usb_device_descriptor descriptor ;
3813 struct usb_host_bos *bos ;
3814 struct usb_host_config *config ;
3815 struct usb_host_config *actconfig ;
3816 struct usb_host_endpoint *ep_in[16U] ;
3817 struct usb_host_endpoint *ep_out[16U] ;
3818 char **rawdescriptors ;
3819 unsigned short bus_mA ;
3820 u8 portnum ;
3821 u8 level ;
3822 unsigned char can_submit : 1 ;
3823 unsigned char persist_enabled : 1 ;
3824 unsigned char have_langid : 1 ;
3825 unsigned char authorized : 1 ;
3826 unsigned char authenticated : 1 ;
3827 unsigned char wusb : 1 ;
3828 unsigned char lpm_capable : 1 ;
3829 unsigned char usb2_hw_lpm_capable : 1 ;
3830 unsigned char usb2_hw_lpm_enabled : 1 ;
3831 int string_langid ;
3832 char *product ;
3833 char *manufacturer ;
3834 char *serial ;
3835 struct list_head filelist ;
3836 struct device *usb_classdev ;
3837 struct dentry *usbfs_dentry ;
3838 int maxchild ;
3839 struct usb_device **children ;
3840 u32 quirks ;
3841 atomic_t urbnum ;
3842 unsigned long active_duration ;
3843 unsigned long connect_time ;
3844 unsigned char do_remote_wakeup : 1 ;
3845 unsigned char reset_resume : 1 ;
3846 struct wusb_dev *wusb_dev ;
3847 int slot_id ;
3848 enum usb_device_removable removable ;
3849};
3850#line 670 "include/linux/usb.h"
3851struct usb_dynids {
3852 spinlock_t lock ;
3853 struct list_head list ;
3854};
3855#line 800 "include/linux/usb.h"
3856struct usbdrv_wrap {
3857 struct device_driver driver ;
3858 int for_devices ;
3859};
3860#line 812 "include/linux/usb.h"
3861struct usb_driver {
3862 char const *name ;
3863 int (*probe)(struct usb_interface * , struct usb_device_id const * ) ;
3864 void (*disconnect)(struct usb_interface * ) ;
3865 int (*unlocked_ioctl)(struct usb_interface * , unsigned int , void * ) ;
3866 int (*suspend)(struct usb_interface * , pm_message_t ) ;
3867 int (*resume)(struct usb_interface * ) ;
3868 int (*reset_resume)(struct usb_interface * ) ;
3869 int (*pre_reset)(struct usb_interface * ) ;
3870 int (*post_reset)(struct usb_interface * ) ;
3871 struct usb_device_id const *id_table ;
3872 struct usb_dynids dynids ;
3873 struct usbdrv_wrap drvwrap ;
3874 unsigned char no_dynamic_id : 1 ;
3875 unsigned char supports_autosuspend : 1 ;
3876 unsigned char soft_unbind : 1 ;
3877};
3878#line 986 "include/linux/usb.h"
3879struct usb_iso_packet_descriptor {
3880 unsigned int offset ;
3881 unsigned int length ;
3882 unsigned int actual_length ;
3883 int status ;
3884};
3885#line 1028
3886struct urb;
3887#line 1028
3888struct urb;
3889#line 1029 "include/linux/usb.h"
3890struct usb_anchor {
3891 struct list_head urb_list ;
3892 wait_queue_head_t wait ;
3893 spinlock_t lock ;
3894 unsigned char poisoned : 1 ;
3895};
3896#line 1046
3897struct scatterlist;
3898#line 1046 "include/linux/usb.h"
3899struct urb {
3900 struct kref kref ;
3901 void *hcpriv ;
3902 atomic_t use_count ;
3903 atomic_t reject ;
3904 int unlinked ;
3905 struct list_head urb_list ;
3906 struct list_head anchor_list ;
3907 struct usb_anchor *anchor ;
3908 struct usb_device *dev ;
3909 struct usb_host_endpoint *ep ;
3910 unsigned int pipe ;
3911 unsigned int stream_id ;
3912 int status ;
3913 unsigned int transfer_flags ;
3914 void *transfer_buffer ;
3915 dma_addr_t transfer_dma ;
3916 struct scatterlist *sg ;
3917 int num_mapped_sgs ;
3918 int num_sgs ;
3919 u32 transfer_buffer_length ;
3920 u32 actual_length ;
3921 unsigned char *setup_packet ;
3922 dma_addr_t setup_dma ;
3923 int start_frame ;
3924 int number_of_packets ;
3925 int interval ;
3926 int error_count ;
3927 void *context ;
3928 void (*complete)(struct urb * ) ;
3929 struct usb_iso_packet_descriptor iso_frame_desc[0U] ;
3930};
3931#line 178 "include/linux/mm.h"
3932struct vm_fault {
3933 unsigned int flags ;
3934 unsigned long pgoff ;
3935 void *virtual_address ;
3936 struct page *page ;
3937};
3938#line 195 "include/linux/mm.h"
3939struct vm_operations_struct {
3940 void (*open)(struct vm_area_struct * ) ;
3941 void (*close)(struct vm_area_struct * ) ;
3942 int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
3943 int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
3944 int (*access)(struct vm_area_struct * , unsigned long , void * , int , int ) ;
3945 int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
3946 struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long ) ;
3947 int (*migrate)(struct vm_area_struct * , nodemask_t const * , nodemask_t const * ,
3948 unsigned long ) ;
3949};
3950#line 1631 "include/linux/mm.h"
3951struct scatterlist {
3952 unsigned long sg_magic ;
3953 unsigned long page_link ;
3954 unsigned int offset ;
3955 unsigned int length ;
3956 dma_addr_t dma_address ;
3957 unsigned int dma_length ;
3958};
3959#line 268 "include/linux/scatterlist.h"
3960struct __kfifo {
3961 unsigned int in ;
3962 unsigned int out ;
3963 unsigned int mask ;
3964 unsigned int esize ;
3965 void *data ;
3966};
3967#line 65 "include/linux/kfifo.h"
3968union __anonunion_ldv_27310_174 {
3969 struct __kfifo kfifo ;
3970 unsigned char *type ;
3971 char (*rectype)[0U] ;
3972 void *ptr ;
3973 void const *ptr_const ;
3974};
3975#line 65 "include/linux/kfifo.h"
3976struct kfifo {
3977 union __anonunion_ldv_27310_174 ldv_27310 ;
3978 unsigned char buf[0U] ;
3979};
3980#line 851
3981struct usb_serial;
3982#line 851 "include/linux/kfifo.h"
3983struct usb_serial_port {
3984 struct usb_serial *serial ;
3985 struct tty_port port ;
3986 spinlock_t lock ;
3987 unsigned char number ;
3988 unsigned char *interrupt_in_buffer ;
3989 struct urb *interrupt_in_urb ;
3990 __u8 interrupt_in_endpointAddress ;
3991 unsigned char *interrupt_out_buffer ;
3992 int interrupt_out_size ;
3993 struct urb *interrupt_out_urb ;
3994 __u8 interrupt_out_endpointAddress ;
3995 unsigned char *bulk_in_buffer ;
3996 int bulk_in_size ;
3997 struct urb *read_urb ;
3998 __u8 bulk_in_endpointAddress ;
3999 unsigned char *bulk_in_buffers[2U] ;
4000 struct urb *read_urbs[2U] ;
4001 unsigned long read_urbs_free ;
4002 unsigned char *bulk_out_buffer ;
4003 int bulk_out_size ;
4004 struct urb *write_urb ;
4005 struct kfifo write_fifo ;
4006 unsigned char *bulk_out_buffers[2U] ;
4007 struct urb *write_urbs[2U] ;
4008 unsigned long write_urbs_free ;
4009 __u8 bulk_out_endpointAddress ;
4010 int tx_bytes ;
4011 unsigned long flags ;
4012 wait_queue_head_t write_wait ;
4013 struct work_struct work ;
4014 char throttled ;
4015 char throttle_req ;
4016 unsigned long sysrq ;
4017 struct device dev ;
4018};
4019#line 134 "include/linux/usb/serial.h"
4020struct usb_serial_driver;
4021#line 134 "include/linux/usb/serial.h"
4022struct usb_serial {
4023 struct usb_device *dev ;
4024 struct usb_serial_driver *type ;
4025 struct usb_interface *interface ;
4026 unsigned char disconnected : 1 ;
4027 unsigned char suspending : 1 ;
4028 unsigned char attached : 1 ;
4029 unsigned char minor ;
4030 unsigned char num_ports ;
4031 unsigned char num_port_pointers ;
4032 char num_interrupt_in ;
4033 char num_interrupt_out ;
4034 char num_bulk_in ;
4035 char num_bulk_out ;
4036 struct usb_serial_port *port[8U] ;
4037 struct kref kref ;
4038 struct mutex disc_mutex ;
4039 void *private ;
4040};
4041#line 183 "include/linux/usb/serial.h"
4042struct usb_serial_driver {
4043 char const *description ;
4044 struct usb_device_id const *id_table ;
4045 char num_ports ;
4046 struct list_head driver_list ;
4047 struct device_driver driver ;
4048 struct usb_driver *usb_driver ;
4049 struct usb_dynids dynids ;
4050 size_t bulk_in_size ;
4051 size_t bulk_out_size ;
4052 int (*probe)(struct usb_serial * , struct usb_device_id const * ) ;
4053 int (*attach)(struct usb_serial * ) ;
4054 int (*calc_num_ports)(struct usb_serial * ) ;
4055 void (*disconnect)(struct usb_serial * ) ;
4056 void (*release)(struct usb_serial * ) ;
4057 int (*port_probe)(struct usb_serial_port * ) ;
4058 int (*port_remove)(struct usb_serial_port * ) ;
4059 int (*suspend)(struct usb_serial * , pm_message_t ) ;
4060 int (*resume)(struct usb_serial * ) ;
4061 int (*open)(struct tty_struct * , struct usb_serial_port * ) ;
4062 void (*close)(struct usb_serial_port * ) ;
4063 int (*write)(struct tty_struct * , struct usb_serial_port * , unsigned char const * ,
4064 int ) ;
4065 int (*write_room)(struct tty_struct * ) ;
4066 int (*ioctl)(struct tty_struct * , unsigned int , unsigned long ) ;
4067 void (*set_termios)(struct tty_struct * , struct usb_serial_port * , struct ktermios * ) ;
4068 void (*break_ctl)(struct tty_struct * , int ) ;
4069 int (*chars_in_buffer)(struct tty_struct * ) ;
4070 void (*throttle)(struct tty_struct * ) ;
4071 void (*unthrottle)(struct tty_struct * ) ;
4072 int (*tiocmget)(struct tty_struct * ) ;
4073 int (*tiocmset)(struct tty_struct * , unsigned int , unsigned int ) ;
4074 int (*get_icount)(struct tty_struct * , struct serial_icounter_struct * ) ;
4075 void (*dtr_rts)(struct usb_serial_port * , int ) ;
4076 int (*carrier_raised)(struct usb_serial_port * ) ;
4077 void (*init_termios)(struct tty_struct * ) ;
4078 void (*read_int_callback)(struct urb * ) ;
4079 void (*write_int_callback)(struct urb * ) ;
4080 void (*read_bulk_callback)(struct urb * ) ;
4081 void (*write_bulk_callback)(struct urb * ) ;
4082 void (*process_read_urb)(struct urb * ) ;
4083 int (*prepare_write_buffer)(struct usb_serial_port * , void * , size_t ) ;
4084};
4085#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/serial/usb-wwan.h"
4086struct usb_wwan_intf_private {
4087 spinlock_t susp_lock ;
4088 unsigned char suspended : 1 ;
4089 int in_flight ;
4090 int (*send_setup)(struct usb_serial_port * ) ;
4091 void *private ;
4092};
4093#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4094void ldv_spin_lock(void) ;
4095#line 3
4096void ldv_spin_unlock(void) ;
4097#line 4
4098int ldv_spin_trylock(void) ;
4099#line 101 "include/linux/printk.h"
4100extern int printk(char const * , ...) ;
4101#line 121 "include/linux/string.h"
4102extern void *kmemdup(void const * , size_t , gfp_t ) ;
4103#line 93 "include/linux/spinlock.h"
4104extern void __raw_spin_lock_init(raw_spinlock_t * , char const * , struct lock_class_key * ) ;
4105#line 272 "include/linux/spinlock.h"
4106__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
4107{
4108
4109 {
4110#line 274
4111 return ((struct raw_spinlock *)lock);
4112}
4113}
4114#line 161 "include/linux/slab.h"
4115extern void kfree(void const * ) ;
4116#line 220 "include/linux/slub_def.h"
4117extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
4118#line 223
4119void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
4120#line 353 "include/linux/slab.h"
4121__inline static void *kzalloc(size_t size , gfp_t flags ) ;
4122#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4123extern void *__VERIFIER_nondet_pointer(void) ;
4124#line 11
4125void ldv_check_alloc_flags(gfp_t flags ) ;
4126#line 12
4127void ldv_check_alloc_nonatomic(void) ;
4128#line 14
4129struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
4130#line 892 "include/linux/device.h"
4131extern int dev_err(struct device const * , char const * , ...) ;
4132#line 1443 "include/linux/usb.h"
4133extern int usb_control_msg(struct usb_device * , unsigned int , __u8 , __u8 , __u16 ,
4134 __u16 , void * , __u16 , int ) ;
4135#line 1461
4136extern int usb_clear_halt(struct usb_device * , int ) ;
4137#line 1567 "include/linux/usb.h"
4138__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint )
4139{ unsigned int __cil_tmp3 ;
4140 int __cil_tmp4 ;
4141 int __cil_tmp5 ;
4142 unsigned int __cil_tmp6 ;
4143
4144 {
4145 {
4146#line 1570
4147 __cil_tmp3 = endpoint << 15;
4148#line 1570
4149 __cil_tmp4 = *((int *)dev);
4150#line 1570
4151 __cil_tmp5 = __cil_tmp4 << 8;
4152#line 1570
4153 __cil_tmp6 = (unsigned int )__cil_tmp5;
4154#line 1570
4155 return (__cil_tmp6 | __cil_tmp3);
4156 }
4157}
4158}
4159#line 174 "include/linux/usb/serial.h"
4160__inline static void *usb_get_serial_data(struct usb_serial *serial )
4161{ unsigned long __cil_tmp2 ;
4162 unsigned long __cil_tmp3 ;
4163
4164 {
4165 {
4166#line 176
4167 __cil_tmp2 = (unsigned long )serial;
4168#line 176
4169 __cil_tmp3 = __cil_tmp2 + 272;
4170#line 176
4171 return (*((void **)__cil_tmp3));
4172 }
4173}
4174}
4175#line 179 "include/linux/usb/serial.h"
4176__inline static void usb_set_serial_data(struct usb_serial *serial , void *data )
4177{ unsigned long __cil_tmp3 ;
4178 unsigned long __cil_tmp4 ;
4179
4180 {
4181#line 181
4182 __cil_tmp3 = (unsigned long )serial;
4183#line 181
4184 __cil_tmp4 = __cil_tmp3 + 272;
4185#line 181
4186 *((void **)__cil_tmp4) = data;
4187#line 182
4188 return;
4189}
4190}
4191#line 9 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/serial/usb-wwan.h"
4192extern int usb_wwan_open(struct tty_struct * , struct usb_serial_port * ) ;
4193#line 10
4194extern void usb_wwan_close(struct usb_serial_port * ) ;
4195#line 13
4196extern void usb_wwan_release(struct usb_serial * ) ;
4197#line 155 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4198struct usb_device_id const __mod_usb_device_table ;
4199#line 164 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4200static bool debug ;
4201#line 166 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4202static int ipw_open(struct tty_struct *tty , struct usb_serial_port *port )
4203{ struct usb_device *dev ;
4204 u8 buf_flow_static[16U] ;
4205 u8 *buf_flow_init ;
4206 int result ;
4207 void *tmp ;
4208 unsigned int tmp___0 ;
4209 unsigned int tmp___1 ;
4210 unsigned int tmp___2 ;
4211 unsigned int tmp___3 ;
4212 unsigned int tmp___4 ;
4213 struct usb_serial *__cil_tmp13 ;
4214 unsigned long __cil_tmp14 ;
4215 unsigned long __cil_tmp15 ;
4216 unsigned long __cil_tmp16 ;
4217 unsigned long __cil_tmp17 ;
4218 unsigned long __cil_tmp18 ;
4219 unsigned long __cil_tmp19 ;
4220 unsigned long __cil_tmp20 ;
4221 unsigned long __cil_tmp21 ;
4222 unsigned long __cil_tmp22 ;
4223 unsigned long __cil_tmp23 ;
4224 unsigned long __cil_tmp24 ;
4225 unsigned long __cil_tmp25 ;
4226 unsigned long __cil_tmp26 ;
4227 unsigned long __cil_tmp27 ;
4228 unsigned long __cil_tmp28 ;
4229 unsigned long __cil_tmp29 ;
4230 unsigned long __cil_tmp30 ;
4231 unsigned long __cil_tmp31 ;
4232 unsigned long __cil_tmp32 ;
4233 unsigned long __cil_tmp33 ;
4234 unsigned long __cil_tmp34 ;
4235 unsigned long __cil_tmp35 ;
4236 unsigned long __cil_tmp36 ;
4237 unsigned long __cil_tmp37 ;
4238 unsigned long __cil_tmp38 ;
4239 unsigned long __cil_tmp39 ;
4240 unsigned long __cil_tmp40 ;
4241 unsigned long __cil_tmp41 ;
4242 unsigned long __cil_tmp42 ;
4243 unsigned long __cil_tmp43 ;
4244 unsigned long __cil_tmp44 ;
4245 unsigned long __cil_tmp45 ;
4246 bool *__cil_tmp46 ;
4247 bool __cil_tmp47 ;
4248 char *__cil_tmp48 ;
4249 void const *__cil_tmp49 ;
4250 u8 *__cil_tmp50 ;
4251 unsigned long __cil_tmp51 ;
4252 unsigned long __cil_tmp52 ;
4253 bool *__cil_tmp53 ;
4254 bool __cil_tmp54 ;
4255 char *__cil_tmp55 ;
4256 unsigned int __cil_tmp56 ;
4257 __u8 __cil_tmp57 ;
4258 __u8 __cil_tmp58 ;
4259 __u16 __cil_tmp59 ;
4260 __u16 __cil_tmp60 ;
4261 void *__cil_tmp61 ;
4262 __u16 __cil_tmp62 ;
4263 unsigned long __cil_tmp63 ;
4264 unsigned long __cil_tmp64 ;
4265 struct device *__cil_tmp65 ;
4266 struct device const *__cil_tmp66 ;
4267 unsigned long __cil_tmp67 ;
4268 unsigned long __cil_tmp68 ;
4269 __u8 __cil_tmp69 ;
4270 unsigned int __cil_tmp70 ;
4271 unsigned int __cil_tmp71 ;
4272 int __cil_tmp72 ;
4273 unsigned long __cil_tmp73 ;
4274 unsigned long __cil_tmp74 ;
4275 __u8 __cil_tmp75 ;
4276 unsigned int __cil_tmp76 ;
4277 unsigned int __cil_tmp77 ;
4278 int __cil_tmp78 ;
4279 bool *__cil_tmp79 ;
4280 bool __cil_tmp80 ;
4281 char *__cil_tmp81 ;
4282 bool *__cil_tmp82 ;
4283 bool __cil_tmp83 ;
4284 char *__cil_tmp84 ;
4285 unsigned int __cil_tmp85 ;
4286 __u8 __cil_tmp86 ;
4287 __u8 __cil_tmp87 ;
4288 __u16 __cil_tmp88 ;
4289 __u16 __cil_tmp89 ;
4290 void *__cil_tmp90 ;
4291 __u16 __cil_tmp91 ;
4292 unsigned long __cil_tmp92 ;
4293 unsigned long __cil_tmp93 ;
4294 struct device *__cil_tmp94 ;
4295 struct device const *__cil_tmp95 ;
4296 bool *__cil_tmp96 ;
4297 bool __cil_tmp97 ;
4298 char *__cil_tmp98 ;
4299 unsigned int __cil_tmp99 ;
4300 __u8 __cil_tmp100 ;
4301 __u8 __cil_tmp101 ;
4302 __u16 __cil_tmp102 ;
4303 __u16 __cil_tmp103 ;
4304 void *__cil_tmp104 ;
4305 __u16 __cil_tmp105 ;
4306 unsigned long __cil_tmp106 ;
4307 unsigned long __cil_tmp107 ;
4308 struct device *__cil_tmp108 ;
4309 struct device const *__cil_tmp109 ;
4310 void const *__cil_tmp110 ;
4311
4312 {
4313#line 168
4314 __cil_tmp13 = *((struct usb_serial **)port);
4315#line 168
4316 dev = *((struct usb_device **)__cil_tmp13);
4317#line 169
4318 __cil_tmp14 = 0 * 1UL;
4319#line 169
4320 __cil_tmp15 = (unsigned long )(buf_flow_static) + __cil_tmp14;
4321#line 169
4322 *((u8 *)__cil_tmp15) = (u8 )1U;
4323#line 169
4324 __cil_tmp16 = 1 * 1UL;
4325#line 169
4326 __cil_tmp17 = (unsigned long )(buf_flow_static) + __cil_tmp16;
4327#line 169
4328 *((u8 *)__cil_tmp17) = (u8 )0U;
4329#line 169
4330 __cil_tmp18 = 2 * 1UL;
4331#line 169
4332 __cil_tmp19 = (unsigned long )(buf_flow_static) + __cil_tmp18;
4333#line 169
4334 *((u8 *)__cil_tmp19) = (u8 )0U;
4335#line 169
4336 __cil_tmp20 = 3 * 1UL;
4337#line 169
4338 __cil_tmp21 = (unsigned long )(buf_flow_static) + __cil_tmp20;
4339#line 169
4340 *((u8 *)__cil_tmp21) = (u8 )0U;
4341#line 169
4342 __cil_tmp22 = 4 * 1UL;
4343#line 169
4344 __cil_tmp23 = (unsigned long )(buf_flow_static) + __cil_tmp22;
4345#line 169
4346 *((u8 *)__cil_tmp23) = (u8 )64U;
4347#line 169
4348 __cil_tmp24 = 5 * 1UL;
4349#line 169
4350 __cil_tmp25 = (unsigned long )(buf_flow_static) + __cil_tmp24;
4351#line 169
4352 *((u8 *)__cil_tmp25) = (u8 )0U;
4353#line 169
4354 __cil_tmp26 = 6 * 1UL;
4355#line 169
4356 __cil_tmp27 = (unsigned long )(buf_flow_static) + __cil_tmp26;
4357#line 169
4358 *((u8 *)__cil_tmp27) = (u8 )0U;
4359#line 169
4360 __cil_tmp28 = 7 * 1UL;
4361#line 169
4362 __cil_tmp29 = (unsigned long )(buf_flow_static) + __cil_tmp28;
4363#line 169
4364 *((u8 *)__cil_tmp29) = (u8 )0U;
4365#line 169
4366 __cil_tmp30 = 8 * 1UL;
4367#line 169
4368 __cil_tmp31 = (unsigned long )(buf_flow_static) + __cil_tmp30;
4369#line 169
4370 *((u8 *)__cil_tmp31) = (u8 )0U;
4371#line 169
4372 __cil_tmp32 = 9 * 1UL;
4373#line 169
4374 __cil_tmp33 = (unsigned long )(buf_flow_static) + __cil_tmp32;
4375#line 169
4376 *((u8 *)__cil_tmp33) = (u8 )0U;
4377#line 169
4378 __cil_tmp34 = 10 * 1UL;
4379#line 169
4380 __cil_tmp35 = (unsigned long )(buf_flow_static) + __cil_tmp34;
4381#line 169
4382 *((u8 *)__cil_tmp35) = (u8 )0U;
4383#line 169
4384 __cil_tmp36 = 11 * 1UL;
4385#line 169
4386 __cil_tmp37 = (unsigned long )(buf_flow_static) + __cil_tmp36;
4387#line 169
4388 *((u8 *)__cil_tmp37) = (u8 )0U;
4389#line 169
4390 __cil_tmp38 = 12 * 1UL;
4391#line 169
4392 __cil_tmp39 = (unsigned long )(buf_flow_static) + __cil_tmp38;
4393#line 169
4394 *((u8 *)__cil_tmp39) = (u8 )0U;
4395#line 169
4396 __cil_tmp40 = 13 * 1UL;
4397#line 169
4398 __cil_tmp41 = (unsigned long )(buf_flow_static) + __cil_tmp40;
4399#line 169
4400 *((u8 *)__cil_tmp41) = (u8 )0U;
4401#line 169
4402 __cil_tmp42 = 14 * 1UL;
4403#line 169
4404 __cil_tmp43 = (unsigned long )(buf_flow_static) + __cil_tmp42;
4405#line 169
4406 *((u8 *)__cil_tmp43) = (u8 )0U;
4407#line 169
4408 __cil_tmp44 = 15 * 1UL;
4409#line 169
4410 __cil_tmp45 = (unsigned long )(buf_flow_static) + __cil_tmp44;
4411#line 169
4412 *((u8 *)__cil_tmp45) = (u8 )0U;
4413 {
4414#line 173
4415 __cil_tmp46 = & debug;
4416#line 173
4417 __cil_tmp47 = *__cil_tmp46;
4418#line 173
4419 if ((int )__cil_tmp47) {
4420 {
4421#line 173
4422 __cil_tmp48 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p";
4423#line 173
4424 printk("<7>%s: %s\n", __cil_tmp48, "ipw_open");
4425 }
4426 } else {
4427
4428 }
4429 }
4430 {
4431#line 175
4432 __cil_tmp49 = (void const *)(& buf_flow_static);
4433#line 175
4434 tmp = kmemdup(__cil_tmp49, 16UL, 208U);
4435#line 175
4436 buf_flow_init = (u8 *)tmp;
4437 }
4438 {
4439#line 176
4440 __cil_tmp50 = (u8 *)0;
4441#line 176
4442 __cil_tmp51 = (unsigned long )__cil_tmp50;
4443#line 176
4444 __cil_tmp52 = (unsigned long )buf_flow_init;
4445#line 176
4446 if (__cil_tmp52 == __cil_tmp51) {
4447#line 177
4448 return (-12);
4449 } else {
4450
4451 }
4452 }
4453 {
4454#line 182
4455 __cil_tmp53 = & debug;
4456#line 182
4457 __cil_tmp54 = *__cil_tmp53;
4458#line 182
4459 if ((int )__cil_tmp54) {
4460 {
4461#line 182
4462 __cil_tmp55 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p";
4463#line 182
4464 printk("<7>%s: %s: Sending SIO_INIT (we guess)\n", __cil_tmp55, "ipw_open");
4465 }
4466 } else {
4467
4468 }
4469 }
4470 {
4471#line 183
4472 tmp___0 = __create_pipe(dev, 0U);
4473#line 183
4474 __cil_tmp56 = tmp___0 | 2147483648U;
4475#line 183
4476 __cil_tmp57 = (__u8 )17;
4477#line 183
4478 __cil_tmp58 = (__u8 )65;
4479#line 183
4480 __cil_tmp59 = (__u16 )0;
4481#line 183
4482 __cil_tmp60 = (__u16 )0;
4483#line 183
4484 __cil_tmp61 = (void *)0;
4485#line 183
4486 __cil_tmp62 = (__u16 )0;
4487#line 183
4488 result = usb_control_msg(dev, __cil_tmp56, __cil_tmp57, __cil_tmp58, __cil_tmp59,
4489 __cil_tmp60, __cil_tmp61, __cil_tmp62, 100000);
4490 }
4491#line 191
4492 if (result < 0) {
4493 {
4494#line 192
4495 __cil_tmp63 = (unsigned long )port;
4496#line 192
4497 __cil_tmp64 = __cil_tmp63 + 1240;
4498#line 192
4499 __cil_tmp65 = (struct device *)__cil_tmp64;
4500#line 192
4501 __cil_tmp66 = (struct device const *)__cil_tmp65;
4502#line 192
4503 dev_err(__cil_tmp66, "Init of modem failed (error = %d)\n", result);
4504 }
4505 } else {
4506
4507 }
4508 {
4509#line 196
4510 __cil_tmp67 = (unsigned long )port;
4511#line 196
4512 __cil_tmp68 = __cil_tmp67 + 904;
4513#line 196
4514 __cil_tmp69 = *((__u8 *)__cil_tmp68);
4515#line 196
4516 __cil_tmp70 = (unsigned int )__cil_tmp69;
4517#line 196
4518 tmp___1 = __create_pipe(dev, __cil_tmp70);
4519#line 196
4520 __cil_tmp71 = tmp___1 | 3221225600U;
4521#line 196
4522 __cil_tmp72 = (int )__cil_tmp71;
4523#line 196
4524 usb_clear_halt(dev, __cil_tmp72);
4525#line 198
4526 __cil_tmp73 = (unsigned long )port;
4527#line 198
4528 __cil_tmp74 = __cil_tmp73 + 1040;
4529#line 198
4530 __cil_tmp75 = *((__u8 *)__cil_tmp74);
4531#line 198
4532 __cil_tmp76 = (unsigned int )__cil_tmp75;
4533#line 198
4534 tmp___2 = __create_pipe(dev, __cil_tmp76);
4535#line 198
4536 __cil_tmp77 = tmp___2 | 3221225472U;
4537#line 198
4538 __cil_tmp78 = (int )__cil_tmp77;
4539#line 198
4540 usb_clear_halt(dev, __cil_tmp78);
4541 }
4542 {
4543#line 202
4544 __cil_tmp79 = & debug;
4545#line 202
4546 __cil_tmp80 = *__cil_tmp79;
4547#line 202
4548 if ((int )__cil_tmp80) {
4549 {
4550#line 202
4551 __cil_tmp81 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p";
4552#line 202
4553 printk("<7>%s: %s: setting up bulk read callback\n", __cil_tmp81, "ipw_open");
4554 }
4555 } else {
4556
4557 }
4558 }
4559 {
4560#line 203
4561 usb_wwan_open(tty, port);
4562 }
4563 {
4564#line 206
4565 __cil_tmp82 = & debug;
4566#line 206
4567 __cil_tmp83 = *__cil_tmp82;
4568#line 206
4569 if ((int )__cil_tmp83) {
4570 {
4571#line 206
4572 __cil_tmp84 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p";
4573#line 206
4574 printk("<7>%s: %s:asking modem for RxRead (RXBULK_ON)\n", __cil_tmp84, "ipw_open");
4575 }
4576 } else {
4577
4578 }
4579 }
4580 {
4581#line 207
4582 tmp___3 = __create_pipe(dev, 0U);
4583#line 207
4584 __cil_tmp85 = tmp___3 | 2147483648U;
4585#line 207
4586 __cil_tmp86 = (__u8 )0;
4587#line 207
4588 __cil_tmp87 = (__u8 )65;
4589#line 207
4590 __cil_tmp88 = (__u16 )1;
4591#line 207
4592 __cil_tmp89 = (__u16 )0;
4593#line 207
4594 __cil_tmp90 = (void *)0;
4595#line 207
4596 __cil_tmp91 = (__u16 )0;
4597#line 207
4598 result = usb_control_msg(dev, __cil_tmp85, __cil_tmp86, __cil_tmp87, __cil_tmp88,
4599 __cil_tmp89, __cil_tmp90, __cil_tmp91, 100000);
4600 }
4601#line 215
4602 if (result < 0) {
4603 {
4604#line 216
4605 __cil_tmp92 = (unsigned long )port;
4606#line 216
4607 __cil_tmp93 = __cil_tmp92 + 1240;
4608#line 216
4609 __cil_tmp94 = (struct device *)__cil_tmp93;
4610#line 216
4611 __cil_tmp95 = (struct device const *)__cil_tmp94;
4612#line 216
4613 dev_err(__cil_tmp95, "Enabling bulk RxRead failed (error = %d)\n", result);
4614 }
4615 } else {
4616
4617 }
4618 {
4619#line 220
4620 __cil_tmp96 = & debug;
4621#line 220
4622 __cil_tmp97 = *__cil_tmp96;
4623#line 220
4624 if ((int )__cil_tmp97) {
4625 {
4626#line 220
4627 __cil_tmp98 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p";
4628#line 220
4629 printk("<7>%s: %s:setting init flowcontrol (%s)\n", __cil_tmp98, "ipw_open", buf_flow_init);
4630 }
4631 } else {
4632
4633 }
4634 }
4635 {
4636#line 221
4637 tmp___4 = __create_pipe(dev, 0U);
4638#line 221
4639 __cil_tmp99 = tmp___4 | 2147483648U;
4640#line 221
4641 __cil_tmp100 = (__u8 )19;
4642#line 221
4643 __cil_tmp101 = (__u8 )65;
4644#line 221
4645 __cil_tmp102 = (__u16 )0;
4646#line 221
4647 __cil_tmp103 = (__u16 )0;
4648#line 221
4649 __cil_tmp104 = (void *)buf_flow_init;
4650#line 221
4651 __cil_tmp105 = (__u16 )16;
4652#line 221
4653 result = usb_control_msg(dev, __cil_tmp99, __cil_tmp100, __cil_tmp101, __cil_tmp102,
4654 __cil_tmp103, __cil_tmp104, __cil_tmp105, 200000);
4655 }
4656#line 229
4657 if (result < 0) {
4658 {
4659#line 230
4660 __cil_tmp106 = (unsigned long )port;
4661#line 230
4662 __cil_tmp107 = __cil_tmp106 + 1240;
4663#line 230
4664 __cil_tmp108 = (struct device *)__cil_tmp107;
4665#line 230
4666 __cil_tmp109 = (struct device const *)__cil_tmp108;
4667#line 230
4668 dev_err(__cil_tmp109, "initial flowcontrol failed (error = %d)\n", result);
4669 }
4670 } else {
4671
4672 }
4673 {
4674#line 233
4675 __cil_tmp110 = (void const *)buf_flow_init;
4676#line 233
4677 kfree(__cil_tmp110);
4678 }
4679#line 234
4680 return (0);
4681}
4682}
4683#line 238 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4684static int ipw_probe(struct usb_serial *serial , struct usb_device_id const *id )
4685{ struct usb_wwan_intf_private *data ;
4686 void *tmp ;
4687 struct lock_class_key __key ;
4688 struct usb_wwan_intf_private *__cil_tmp6 ;
4689 unsigned long __cil_tmp7 ;
4690 unsigned long __cil_tmp8 ;
4691 spinlock_t *__cil_tmp9 ;
4692 struct raw_spinlock *__cil_tmp10 ;
4693 void *__cil_tmp11 ;
4694
4695 {
4696 {
4697#line 242
4698 tmp = kzalloc(96UL, 208U);
4699#line 242
4700 data = (struct usb_wwan_intf_private *)tmp;
4701 }
4702 {
4703#line 243
4704 __cil_tmp6 = (struct usb_wwan_intf_private *)0;
4705#line 243
4706 __cil_tmp7 = (unsigned long )__cil_tmp6;
4707#line 243
4708 __cil_tmp8 = (unsigned long )data;
4709#line 243
4710 if (__cil_tmp8 == __cil_tmp7) {
4711#line 244
4712 return (-12);
4713 } else {
4714
4715 }
4716 }
4717 {
4718#line 246
4719 __cil_tmp9 = (spinlock_t *)data;
4720#line 246
4721 spinlock_check(__cil_tmp9);
4722#line 246
4723 __cil_tmp10 = (struct raw_spinlock *)data;
4724#line 246
4725 __raw_spin_lock_init(__cil_tmp10, "&(&data->susp_lock)->rlock", & __key);
4726#line 247
4727 __cil_tmp11 = (void *)data;
4728#line 247
4729 usb_set_serial_data(serial, __cil_tmp11);
4730 }
4731#line 248
4732 return (0);
4733}
4734}
4735#line 251 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4736static void ipw_release(struct usb_serial *serial )
4737{ struct usb_wwan_intf_private *data ;
4738 void *tmp ;
4739 void *__cil_tmp4 ;
4740 void const *__cil_tmp5 ;
4741
4742 {
4743 {
4744#line 253
4745 tmp = usb_get_serial_data(serial);
4746#line 253
4747 data = (struct usb_wwan_intf_private *)tmp;
4748#line 255
4749 usb_wwan_release(serial);
4750#line 256
4751 __cil_tmp4 = (void *)0;
4752#line 256
4753 usb_set_serial_data(serial, __cil_tmp4);
4754#line 257
4755 __cil_tmp5 = (void const *)data;
4756#line 257
4757 kfree(__cil_tmp5);
4758 }
4759#line 258
4760 return;
4761}
4762}
4763#line 260 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4764static void ipw_dtr_rts(struct usb_serial_port *port , int on )
4765{ struct usb_device *dev ;
4766 int result ;
4767 int tmp ;
4768 unsigned int tmp___0 ;
4769 int tmp___1 ;
4770 unsigned int tmp___2 ;
4771 struct usb_serial *__cil_tmp9 ;
4772 bool *__cil_tmp10 ;
4773 bool __cil_tmp11 ;
4774 char *__cil_tmp12 ;
4775 unsigned int __cil_tmp13 ;
4776 __u8 __cil_tmp14 ;
4777 __u8 __cil_tmp15 ;
4778 __u16 __cil_tmp16 ;
4779 __u16 __cil_tmp17 ;
4780 void *__cil_tmp18 ;
4781 __u16 __cil_tmp19 ;
4782 unsigned long __cil_tmp20 ;
4783 unsigned long __cil_tmp21 ;
4784 struct device *__cil_tmp22 ;
4785 struct device const *__cil_tmp23 ;
4786 unsigned int __cil_tmp24 ;
4787 __u8 __cil_tmp25 ;
4788 __u8 __cil_tmp26 ;
4789 __u16 __cil_tmp27 ;
4790 __u16 __cil_tmp28 ;
4791 void *__cil_tmp29 ;
4792 __u16 __cil_tmp30 ;
4793 unsigned long __cil_tmp31 ;
4794 unsigned long __cil_tmp32 ;
4795 struct device *__cil_tmp33 ;
4796 struct device const *__cil_tmp34 ;
4797
4798 {
4799#line 262
4800 __cil_tmp9 = *((struct usb_serial **)port);
4801#line 262
4802 dev = *((struct usb_device **)__cil_tmp9);
4803 {
4804#line 265
4805 __cil_tmp10 = & debug;
4806#line 265
4807 __cil_tmp11 = *__cil_tmp10;
4808#line 265
4809 if ((int )__cil_tmp11) {
4810 {
4811#line 265
4812 __cil_tmp12 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p";
4813#line 265
4814 printk("<7>%s: %s: on = %d\n", __cil_tmp12, "ipw_dtr_rts", on);
4815 }
4816 } else {
4817
4818 }
4819 }
4820#line 267
4821 if (on != 0) {
4822#line 267
4823 tmp = 257;
4824 } else {
4825#line 267
4826 tmp = 256;
4827 }
4828 {
4829#line 267
4830 tmp___0 = __create_pipe(dev, 0U);
4831#line 267
4832 __cil_tmp13 = tmp___0 | 2147483648U;
4833#line 267
4834 __cil_tmp14 = (__u8 )3;
4835#line 267
4836 __cil_tmp15 = (__u8 )65;
4837#line 267
4838 __cil_tmp16 = (__u16 )tmp;
4839#line 267
4840 __cil_tmp17 = (__u16 )0;
4841#line 267
4842 __cil_tmp18 = (void *)0;
4843#line 267
4844 __cil_tmp19 = (__u16 )0;
4845#line 267
4846 result = usb_control_msg(dev, __cil_tmp13, __cil_tmp14, __cil_tmp15, __cil_tmp16,
4847 __cil_tmp17, __cil_tmp18, __cil_tmp19, 200000);
4848 }
4849#line 275
4850 if (result < 0) {
4851 {
4852#line 276
4853 __cil_tmp20 = (unsigned long )port;
4854#line 276
4855 __cil_tmp21 = __cil_tmp20 + 1240;
4856#line 276
4857 __cil_tmp22 = (struct device *)__cil_tmp21;
4858#line 276
4859 __cil_tmp23 = (struct device const *)__cil_tmp22;
4860#line 276
4861 dev_err(__cil_tmp23, "setting dtr failed (error = %d)\n", result);
4862 }
4863 } else {
4864
4865 }
4866#line 279
4867 if (on != 0) {
4868#line 279
4869 tmp___1 = 514;
4870 } else {
4871#line 279
4872 tmp___1 = 512;
4873 }
4874 {
4875#line 279
4876 tmp___2 = __create_pipe(dev, 0U);
4877#line 279
4878 __cil_tmp24 = tmp___2 | 2147483648U;
4879#line 279
4880 __cil_tmp25 = (__u8 )3;
4881#line 279
4882 __cil_tmp26 = (__u8 )65;
4883#line 279
4884 __cil_tmp27 = (__u16 )tmp___1;
4885#line 279
4886 __cil_tmp28 = (__u16 )0;
4887#line 279
4888 __cil_tmp29 = (void *)0;
4889#line 279
4890 __cil_tmp30 = (__u16 )0;
4891#line 279
4892 result = usb_control_msg(dev, __cil_tmp24, __cil_tmp25, __cil_tmp26, __cil_tmp27,
4893 __cil_tmp28, __cil_tmp29, __cil_tmp30, 200000);
4894 }
4895#line 287
4896 if (result < 0) {
4897 {
4898#line 288
4899 __cil_tmp31 = (unsigned long )port;
4900#line 288
4901 __cil_tmp32 = __cil_tmp31 + 1240;
4902#line 288
4903 __cil_tmp33 = (struct device *)__cil_tmp32;
4904#line 288
4905 __cil_tmp34 = (struct device const *)__cil_tmp33;
4906#line 288
4907 dev_err(__cil_tmp34, "setting rts failed (error = %d)\n", result);
4908 }
4909 } else {
4910
4911 }
4912#line 289
4913 return;
4914}
4915}
4916#line 292 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
4917static void ipw_close(struct usb_serial_port *port )
4918{ struct usb_device *dev ;
4919 int result ;
4920 unsigned int tmp ;
4921 unsigned int tmp___0 ;
4922 struct usb_serial *__cil_tmp6 ;
4923 bool *__cil_tmp7 ;
4924 bool __cil_tmp8 ;
4925 char *__cil_tmp9 ;
4926 unsigned int __cil_tmp10 ;
4927 __u8 __cil_tmp11 ;
4928 __u8 __cil_tmp12 ;
4929 __u16 __cil_tmp13 ;
4930 __u16 __cil_tmp14 ;
4931 void *__cil_tmp15 ;
4932 __u16 __cil_tmp16 ;
4933 unsigned long __cil_tmp17 ;
4934 unsigned long __cil_tmp18 ;
4935 struct device *__cil_tmp19 ;
4936 struct device const *__cil_tmp20 ;
4937 unsigned int __cil_tmp21 ;
4938 __u8 __cil_tmp22 ;
4939 __u8 __cil_tmp23 ;
4940 __u16 __cil_tmp24 ;
4941 __u16 __cil_tmp25 ;
4942 void *__cil_tmp26 ;
4943 __u16 __cil_tmp27 ;
4944 unsigned long __cil_tmp28 ;
4945 unsigned long __cil_tmp29 ;
4946 struct device *__cil_tmp30 ;
4947 struct device const *__cil_tmp31 ;
4948
4949 {
4950#line 294
4951 __cil_tmp6 = *((struct usb_serial **)port);
4952#line 294
4953 dev = *((struct usb_device **)__cil_tmp6);
4954 {
4955#line 298
4956 __cil_tmp7 = & debug;
4957#line 298
4958 __cil_tmp8 = *__cil_tmp7;
4959#line 298
4960 if ((int )__cil_tmp8) {
4961 {
4962#line 298
4963 __cil_tmp9 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p";
4964#line 298
4965 printk("<7>%s: %s:sending purge\n", __cil_tmp9, "ipw_close");
4966 }
4967 } else {
4968
4969 }
4970 }
4971 {
4972#line 299
4973 tmp = __create_pipe(dev, 0U);
4974#line 299
4975 __cil_tmp10 = tmp | 2147483648U;
4976#line 299
4977 __cil_tmp11 = (__u8 )18;
4978#line 299
4979 __cil_tmp12 = (__u8 )65;
4980#line 299
4981 __cil_tmp13 = (__u16 )3;
4982#line 299
4983 __cil_tmp14 = (__u16 )0;
4984#line 299
4985 __cil_tmp15 = (void *)0;
4986#line 299
4987 __cil_tmp16 = (__u16 )0;
4988#line 299
4989 result = usb_control_msg(dev, __cil_tmp10, __cil_tmp11, __cil_tmp12, __cil_tmp13,
4990 __cil_tmp14, __cil_tmp15, __cil_tmp16, 200000);
4991 }
4992#line 307
4993 if (result < 0) {
4994 {
4995#line 308
4996 __cil_tmp17 = (unsigned long )port;
4997#line 308
4998 __cil_tmp18 = __cil_tmp17 + 1240;
4999#line 308
5000 __cil_tmp19 = (struct device *)__cil_tmp18;
5001#line 308
5002 __cil_tmp20 = (struct device const *)__cil_tmp19;
5003#line 308
5004 dev_err(__cil_tmp20, "purge failed (error = %d)\n", result);
5005 }
5006 } else {
5007
5008 }
5009 {
5010#line 313
5011 tmp___0 = __create_pipe(dev, 0U);
5012#line 313
5013 __cil_tmp21 = tmp___0 | 2147483648U;
5014#line 313
5015 __cil_tmp22 = (__u8 )0;
5016#line 313
5017 __cil_tmp23 = (__u8 )65;
5018#line 313
5019 __cil_tmp24 = (__u16 )0;
5020#line 313
5021 __cil_tmp25 = (__u16 )0;
5022#line 313
5023 __cil_tmp26 = (void *)0;
5024#line 313
5025 __cil_tmp27 = (__u16 )0;
5026#line 313
5027 result = usb_control_msg(dev, __cil_tmp21, __cil_tmp22, __cil_tmp23, __cil_tmp24,
5028 __cil_tmp25, __cil_tmp26, __cil_tmp27, 100000);
5029 }
5030#line 322
5031 if (result < 0) {
5032 {
5033#line 323
5034 __cil_tmp28 = (unsigned long )port;
5035#line 323
5036 __cil_tmp29 = __cil_tmp28 + 1240;
5037#line 323
5038 __cil_tmp30 = (struct device *)__cil_tmp29;
5039#line 323
5040 __cil_tmp31 = (struct device const *)__cil_tmp30;
5041#line 323
5042 dev_err(__cil_tmp31, "Disabling bulk RxRead failed (error = %d)\n", result);
5043 }
5044 } else {
5045
5046 }
5047 {
5048#line 326
5049 usb_wwan_close(port);
5050 }
5051#line 327
5052 return;
5053}
5054}
5055#line 377
5056extern void ldv_check_final_state(void) ;
5057#line 380
5058extern void ldv_check_return_value(int ) ;
5059#line 383
5060extern void ldv_initialize(void) ;
5061#line 386
5062extern int __VERIFIER_nondet_int(void) ;
5063#line 389 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5064int LDV_IN_INTERRUPT ;
5065#line 392 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5066void main(void)
5067{ struct tty_struct *var_group1 ;
5068 struct usb_serial_port *var_group2 ;
5069 int res_ipw_open_0 ;
5070 struct usb_serial *var_group3 ;
5071 struct usb_device_id const *var_ipw_probe_1_p1 ;
5072 int res_ipw_probe_1 ;
5073 int var_ipw_dtr_rts_3_p1 ;
5074 int ldv_s_ipw_device_usb_serial_driver ;
5075 int tmp ;
5076 int tmp___0 ;
5077
5078 {
5079 {
5080#line 605
5081 ldv_s_ipw_device_usb_serial_driver = 0;
5082#line 595
5083 LDV_IN_INTERRUPT = 1;
5084#line 604
5085 ldv_initialize();
5086 }
5087#line 609
5088 goto ldv_27900;
5089 ldv_27899:
5090 {
5091#line 613
5092 tmp = __VERIFIER_nondet_int();
5093 }
5094#line 615
5095 if (tmp == 0) {
5096#line 615
5097 goto case_0;
5098 } else
5099#line 667
5100 if (tmp == 1) {
5101#line 667
5102 goto case_1;
5103 } else
5104#line 719
5105 if (tmp == 2) {
5106#line 719
5107 goto case_2;
5108 } else
5109#line 768
5110 if (tmp == 3) {
5111#line 768
5112 goto case_3;
5113 } else
5114#line 817
5115 if (tmp == 4) {
5116#line 817
5117 goto case_4;
5118 } else {
5119 {
5120#line 866
5121 goto switch_default;
5122#line 613
5123 if (0) {
5124 case_0: ;
5125#line 618
5126 if (ldv_s_ipw_device_usb_serial_driver == 0) {
5127 {
5128#line 656
5129 res_ipw_open_0 = ipw_open(var_group1, var_group2);
5130#line 657
5131 ldv_check_return_value(res_ipw_open_0);
5132 }
5133#line 658
5134 if (res_ipw_open_0 != 0) {
5135#line 659
5136 goto ldv_module_exit;
5137 } else {
5138
5139 }
5140#line 660
5141 ldv_s_ipw_device_usb_serial_driver = ldv_s_ipw_device_usb_serial_driver + 1;
5142 } else {
5143
5144 }
5145#line 666
5146 goto ldv_27893;
5147 case_1: ;
5148#line 670
5149 if (ldv_s_ipw_device_usb_serial_driver == 1) {
5150 {
5151#line 708
5152 res_ipw_probe_1 = ipw_probe(var_group3, var_ipw_probe_1_p1);
5153#line 709
5154 ldv_check_return_value(res_ipw_probe_1);
5155 }
5156#line 710
5157 if (res_ipw_probe_1 != 0) {
5158#line 711
5159 goto ldv_module_exit;
5160 } else {
5161
5162 }
5163#line 712
5164 ldv_s_ipw_device_usb_serial_driver = ldv_s_ipw_device_usb_serial_driver + 1;
5165 } else {
5166
5167 }
5168#line 718
5169 goto ldv_27893;
5170 case_2: ;
5171#line 722
5172 if (ldv_s_ipw_device_usb_serial_driver == 2) {
5173 {
5174#line 760
5175 ipw_close(var_group2);
5176#line 761
5177 ldv_s_ipw_device_usb_serial_driver = ldv_s_ipw_device_usb_serial_driver + 1;
5178 }
5179 } else {
5180
5181 }
5182#line 767
5183 goto ldv_27893;
5184 case_3: ;
5185#line 771
5186 if (ldv_s_ipw_device_usb_serial_driver == 3) {
5187 {
5188#line 809
5189 ipw_release(var_group3);
5190#line 810
5191 ldv_s_ipw_device_usb_serial_driver = 0;
5192 }
5193 } else {
5194
5195 }
5196#line 816
5197 goto ldv_27893;
5198 case_4:
5199 {
5200#line 858
5201 ipw_dtr_rts(var_group2, var_ipw_dtr_rts_3_p1);
5202 }
5203#line 865
5204 goto ldv_27893;
5205 switch_default: ;
5206#line 866
5207 goto ldv_27893;
5208 } else {
5209 switch_break: ;
5210 }
5211 }
5212 }
5213 ldv_27893: ;
5214 ldv_27900:
5215 {
5216#line 609
5217 tmp___0 = __VERIFIER_nondet_int();
5218 }
5219#line 609
5220 if (tmp___0 != 0) {
5221#line 611
5222 goto ldv_27899;
5223 } else
5224#line 609
5225 if (ldv_s_ipw_device_usb_serial_driver != 0) {
5226#line 611
5227 goto ldv_27899;
5228 } else {
5229#line 613
5230 goto ldv_27901;
5231 }
5232 ldv_27901: ;
5233 ldv_module_exit: ;
5234 {
5235#line 875
5236 ldv_check_final_state();
5237 }
5238#line 878
5239 return;
5240}
5241}
5242#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
5243void ldv_blast_assert(void)
5244{
5245
5246 {
5247 ERROR: ;
5248#line 6
5249 goto ERROR;
5250}
5251}
5252#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
5253extern int __VERIFIER_nondet_int(void) ;
5254#line 899 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5255int ldv_spin = 0;
5256#line 903 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5257void ldv_check_alloc_flags(gfp_t flags )
5258{
5259
5260 {
5261#line 906
5262 if (ldv_spin != 0) {
5263#line 906
5264 if (flags != 32U) {
5265 {
5266#line 906
5267 ldv_blast_assert();
5268 }
5269 } else {
5270
5271 }
5272 } else {
5273
5274 }
5275#line 909
5276 return;
5277}
5278}
5279#line 909
5280extern struct page *ldv_some_page(void) ;
5281#line 912 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5282struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
5283{ struct page *tmp ;
5284
5285 {
5286#line 915
5287 if (ldv_spin != 0) {
5288#line 915
5289 if (flags != 32U) {
5290 {
5291#line 915
5292 ldv_blast_assert();
5293 }
5294 } else {
5295
5296 }
5297 } else {
5298
5299 }
5300 {
5301#line 917
5302 tmp = ldv_some_page();
5303 }
5304#line 917
5305 return (tmp);
5306}
5307}
5308#line 921 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5309void ldv_check_alloc_nonatomic(void)
5310{
5311
5312 {
5313#line 924
5314 if (ldv_spin != 0) {
5315 {
5316#line 924
5317 ldv_blast_assert();
5318 }
5319 } else {
5320
5321 }
5322#line 927
5323 return;
5324}
5325}
5326#line 928 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5327void ldv_spin_lock(void)
5328{
5329
5330 {
5331#line 931
5332 ldv_spin = 1;
5333#line 932
5334 return;
5335}
5336}
5337#line 935 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5338void ldv_spin_unlock(void)
5339{
5340
5341 {
5342#line 938
5343 ldv_spin = 0;
5344#line 939
5345 return;
5346}
5347}
5348#line 942 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5349int ldv_spin_trylock(void)
5350{ int is_lock ;
5351
5352 {
5353 {
5354#line 947
5355 is_lock = __VERIFIER_nondet_int();
5356 }
5357#line 949
5358 if (is_lock != 0) {
5359#line 952
5360 return (0);
5361 } else {
5362#line 957
5363 ldv_spin = 1;
5364#line 959
5365 return (1);
5366 }
5367}
5368}
5369#line 1126 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5370void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
5371{
5372
5373 {
5374 {
5375#line 1132
5376 ldv_check_alloc_flags(ldv_func_arg2);
5377#line 1134
5378 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
5379 }
5380#line 1135
5381 return ((void *)0);
5382}
5383}
5384#line 1137 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1809/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ipw.c.p"
5385__inline static void *kzalloc(size_t size , gfp_t flags )
5386{ void *tmp ;
5387
5388 {
5389 {
5390#line 1143
5391 ldv_check_alloc_flags(flags);
5392#line 1144
5393 tmp = __VERIFIER_nondet_pointer();
5394 }
5395#line 1144
5396 return (tmp);
5397}
5398}