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/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.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_21454_148 {
2706 unsigned long index ;
2707 void *freelist ;
2708};
2709#line 55 "include/linux/sched.h"
2710struct __anonstruct_ldv_21464_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_21465_151 {
2717 atomic_t _mapcount ;
2718 struct __anonstruct_ldv_21464_152 ldv_21464 ;
2719};
2720#line 55 "include/linux/sched.h"
2721struct __anonstruct_ldv_21467_150 {
2722 union __anonunion_ldv_21465_151 ldv_21465 ;
2723 atomic_t _count ;
2724};
2725#line 55 "include/linux/sched.h"
2726union __anonunion_ldv_21468_149 {
2727 unsigned long counters ;
2728 struct __anonstruct_ldv_21467_150 ldv_21467 ;
2729};
2730#line 55 "include/linux/sched.h"
2731struct __anonstruct_ldv_21469_147 {
2732 union __anonunion_ldv_21454_148 ldv_21454 ;
2733 union __anonunion_ldv_21468_149 ldv_21468 ;
2734};
2735#line 55 "include/linux/sched.h"
2736struct __anonstruct_ldv_21476_154 {
2737 struct page *next ;
2738 int pages ;
2739 int pobjects ;
2740};
2741#line 55 "include/linux/sched.h"
2742union __anonunion_ldv_21477_153 {
2743 struct list_head lru ;
2744 struct __anonstruct_ldv_21476_154 ldv_21476 ;
2745};
2746#line 55 "include/linux/sched.h"
2747union __anonunion_ldv_21482_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_21469_147 ldv_21469 ;
2757 union __anonunion_ldv_21477_153 ldv_21477 ;
2758 union __anonunion_ldv_21482_155 ldv_21482 ;
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_22281_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_22281_169 ldv_22281 ;
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_27344_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_27344_174 ldv_27344 ;
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 377 "include/linux/usb/serial.h"
4086struct usb_irda_cs_descriptor {
4087 __u8 bLength ;
4088 __u8 bDescriptorType ;
4089 __le16 bcdSpecRevision ;
4090 __u8 bmDataSize ;
4091 __u8 bmWindowSize ;
4092 __u8 bmMinTurnaroundTime ;
4093 __le16 wBaudRate ;
4094 __u8 bmAdditionalBOFs ;
4095 __u8 bIrdaRateSniff ;
4096 __u8 bMaxUnicastList ;
4097};
4098#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4099void ldv_spin_lock(void) ;
4100#line 3
4101void ldv_spin_unlock(void) ;
4102#line 4
4103int ldv_spin_trylock(void) ;
4104#line 101 "include/linux/printk.h"
4105extern int printk(char const * , ...) ;
4106#line 43 "include/linux/spinlock_api_smp.h"
4107extern void _raw_spin_unlock_irqrestore(raw_spinlock_t * , unsigned long ) ;
4108#line 350 "include/linux/spinlock.h"
4109__inline static void ldv_spin_unlock_irqrestore_8(spinlock_t *lock , unsigned long flags )
4110{ struct raw_spinlock *__cil_tmp5 ;
4111
4112 {
4113 {
4114#line 352
4115 __cil_tmp5 = (struct raw_spinlock *)lock;
4116#line 352
4117 _raw_spin_unlock_irqrestore(__cil_tmp5, flags);
4118 }
4119#line 353
4120 return;
4121}
4122}
4123#line 350
4124__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) ;
4125#line 26 "include/linux/export.h"
4126extern struct module __this_module ;
4127#line 161 "include/linux/slab.h"
4128extern void kfree(void const * ) ;
4129#line 220 "include/linux/slub_def.h"
4130extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
4131#line 223
4132void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
4133#line 225
4134extern void *__kmalloc(size_t , gfp_t ) ;
4135#line 268 "include/linux/slub_def.h"
4136__inline static void *ldv_kmalloc_12(size_t size , gfp_t flags )
4137{ void *tmp___2 ;
4138
4139 {
4140 {
4141#line 283
4142 tmp___2 = __kmalloc(size, flags);
4143 }
4144#line 283
4145 return (tmp___2);
4146}
4147}
4148#line 268
4149__inline static void *kmalloc(size_t size , gfp_t flags ) ;
4150#line 353 "include/linux/slab.h"
4151__inline static void *kzalloc(size_t size , gfp_t flags ) ;
4152#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4153extern void *__VERIFIER_nondet_pointer(void) ;
4154#line 11
4155void ldv_check_alloc_flags(gfp_t flags ) ;
4156#line 12
4157void ldv_check_alloc_nonatomic(void) ;
4158#line 14
4159struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
4160#line 892 "include/linux/device.h"
4161extern int dev_err(struct device const * , char const * , ...) ;
4162#line 400 "include/linux/tty.h"
4163extern void tty_kref_put(struct tty_struct * ) ;
4164#line 442
4165extern void tty_flip_buffer_push(struct tty_struct * ) ;
4166#line 447
4167extern speed_t tty_get_baud_rate(struct tty_struct * ) ;
4168#line 452
4169extern void tty_encode_baud_rate(struct tty_struct * , speed_t , speed_t ) ;
4170#line 454
4171extern void tty_termios_copy_hw(struct ktermios * , struct ktermios * ) ;
4172#line 511
4173extern struct tty_struct *tty_port_tty_get(struct tty_port * ) ;
4174#line 6 "include/linux/tty_flip.h"
4175extern int tty_insert_flip_string_fixed_flag(struct tty_struct * , unsigned char const * ,
4176 char , size_t ) ;
4177#line 23 "include/linux/tty_flip.h"
4178__inline static int tty_insert_flip_string(struct tty_struct *tty , unsigned char const *chars ,
4179 size_t size )
4180{ int tmp ;
4181
4182 {
4183 {
4184#line 25
4185 tmp = tty_insert_flip_string_fixed_flag(tty, chars, (char)0, size);
4186 }
4187#line 25
4188 return (tmp);
4189}
4190}
4191#line 1309 "include/linux/usb.h"
4192__inline static void usb_fill_bulk_urb(struct urb *urb , struct usb_device *dev ,
4193 unsigned int pipe , void *transfer_buffer ,
4194 int buffer_length , void (*complete_fn)(struct urb * ) ,
4195 void *context )
4196{ unsigned long __cil_tmp8 ;
4197 unsigned long __cil_tmp9 ;
4198 unsigned long __cil_tmp10 ;
4199 unsigned long __cil_tmp11 ;
4200 unsigned long __cil_tmp12 ;
4201 unsigned long __cil_tmp13 ;
4202 unsigned long __cil_tmp14 ;
4203 unsigned long __cil_tmp15 ;
4204 unsigned long __cil_tmp16 ;
4205 unsigned long __cil_tmp17 ;
4206 unsigned long __cil_tmp18 ;
4207 unsigned long __cil_tmp19 ;
4208
4209 {
4210#line 1317
4211 __cil_tmp8 = (unsigned long )urb;
4212#line 1317
4213 __cil_tmp9 = __cil_tmp8 + 72;
4214#line 1317
4215 *((struct usb_device **)__cil_tmp9) = dev;
4216#line 1318
4217 __cil_tmp10 = (unsigned long )urb;
4218#line 1318
4219 __cil_tmp11 = __cil_tmp10 + 88;
4220#line 1318
4221 *((unsigned int *)__cil_tmp11) = pipe;
4222#line 1319
4223 __cil_tmp12 = (unsigned long )urb;
4224#line 1319
4225 __cil_tmp13 = __cil_tmp12 + 104;
4226#line 1319
4227 *((void **)__cil_tmp13) = transfer_buffer;
4228#line 1320
4229 __cil_tmp14 = (unsigned long )urb;
4230#line 1320
4231 __cil_tmp15 = __cil_tmp14 + 136;
4232#line 1320
4233 *((u32 *)__cil_tmp15) = (u32 )buffer_length;
4234#line 1321
4235 __cil_tmp16 = (unsigned long )urb;
4236#line 1321
4237 __cil_tmp17 = __cil_tmp16 + 184;
4238#line 1321
4239 *((void (**)(struct urb * ))__cil_tmp17) = complete_fn;
4240#line 1322
4241 __cil_tmp18 = (unsigned long )urb;
4242#line 1322
4243 __cil_tmp19 = __cil_tmp18 + 176;
4244#line 1322
4245 *((void **)__cil_tmp19) = context;
4246#line 1323
4247 return;
4248}
4249}
4250#line 1373
4251extern struct urb *usb_alloc_urb(int , gfp_t ) ;
4252#line 1376
4253struct urb *ldv_usb_alloc_urb_19(int ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
4254#line 1378
4255extern void usb_free_urb(struct urb * ) ;
4256#line 1381
4257extern int usb_submit_urb(struct urb * , gfp_t ) ;
4258#line 1384
4259int ldv_usb_submit_urb_20(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
4260#line 1443
4261extern int usb_control_msg(struct usb_device * , unsigned int , __u8 , __u8 , __u16 ,
4262 __u16 , void * , __u16 , int ) ;
4263#line 1567 "include/linux/usb.h"
4264__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint )
4265{ unsigned int __cil_tmp3 ;
4266 int __cil_tmp4 ;
4267 int __cil_tmp5 ;
4268 unsigned int __cil_tmp6 ;
4269
4270 {
4271 {
4272#line 1570
4273 __cil_tmp3 = endpoint << 15;
4274#line 1570
4275 __cil_tmp4 = *((int *)dev);
4276#line 1570
4277 __cil_tmp5 = __cil_tmp4 << 8;
4278#line 1570
4279 __cil_tmp6 = (unsigned int )__cil_tmp5;
4280#line 1570
4281 return (__cil_tmp6 | __cil_tmp3);
4282 }
4283}
4284}
4285#line 175 "include/linux/kfifo.h"
4286__inline static unsigned int __kfifo_uint_must_check_helper(unsigned int val )
4287{
4288
4289 {
4290#line 177
4291 return (val);
4292}
4293}
4294#line 801
4295extern unsigned int __kfifo_out(struct __kfifo * , void * , unsigned int ) ;
4296#line 822
4297extern unsigned int __kfifo_out_r(struct __kfifo * , void * , unsigned int , size_t ) ;
4298#line 295 "include/linux/usb/serial.h"
4299extern int usb_serial_register_drivers(struct usb_driver * , struct usb_serial_driver * const * ) ;
4300#line 297
4301extern void usb_serial_deregister_drivers(struct usb_driver * , struct usb_serial_driver * const * ) ;
4302#line 301
4303extern int usb_serial_probe(struct usb_interface * , struct usb_device_id const * ) ;
4304#line 303
4305extern void usb_serial_disconnect(struct usb_interface * ) ;
4306#line 326
4307extern int usb_serial_generic_open(struct tty_struct * , struct usb_serial_port * ) ;
4308#line 63 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4309static bool debug ;
4310#line 67 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4311static int buffer_size ;
4312#line 70 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4313static int xbof = -1;
4314#line 72
4315static int ir_startup(struct usb_serial *serial ) ;
4316#line 73
4317static int ir_open(struct tty_struct *tty , struct usb_serial_port *port ) ;
4318#line 74
4319static int ir_prepare_write_buffer(struct usb_serial_port *port , void *dest , size_t size ) ;
4320#line 76
4321static void ir_process_read_urb(struct urb *urb ) ;
4322#line 77
4323static void ir_set_termios(struct tty_struct *tty , struct usb_serial_port *port ,
4324 struct ktermios *old_termios ) ;
4325#line 81 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4326static u8 ir_baud ;
4327#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4328static u8 ir_xbof ;
4329#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4330static u8 ir_add_bof ;
4331#line 85 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4332static struct usb_device_id const ir_id_table[5U] = { {(__u16 )3U, (__u16 )1295U, (__u16 )384U, (unsigned short)0, (unsigned short)0,
4333 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4334 (unsigned char)0, 0UL},
4335 {(__u16 )3U, (__u16 )2281U, (__u16 )256U, (unsigned short)0, (unsigned short)0,
4336 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4337 (unsigned char)0, 0UL},
4338 {(__u16 )3U, (__u16 )2500U, (__u16 )17U, (unsigned short)0, (unsigned short)0,
4339 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4340 (unsigned char)0, 0UL},
4341 {(__u16 )896U, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0,
4342 (unsigned char)0, (unsigned char)0, (unsigned char)0, (__u8 )254U, (__u8 )2U,
4343 (__u8 )0U, 0UL},
4344 {(unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0,
4345 (unsigned short)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4346 (unsigned char)0, (unsigned char)0, 0UL}};
4347#line 93 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4348struct usb_device_id const __mod_usb_device_table ;
4349#line 95 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4350static struct usb_driver ir_driver =
4351#line 95
4352 {"ir-usb", & usb_serial_probe, & usb_serial_disconnect, (int (*)(struct usb_interface * ,
4353 unsigned int ,
4354 void * ))0, (int (*)(struct usb_interface * ,
4355 pm_message_t ))0,
4356 (int (*)(struct usb_interface * ))0, (int (*)(struct usb_interface * ))0, (int (*)(struct usb_interface * ))0,
4357 (int (*)(struct usb_interface * ))0, (struct usb_device_id const *)(& ir_id_table),
4358 {{{{{{0U}}, 0U, 0U, (void *)0, {(struct lock_class_key *)0, {(struct lock_class *)0,
4359 (struct lock_class *)0},
4360 (char const *)0, 0, 0UL}}}}, {(struct list_head *)0,
4361 (struct list_head *)0}},
4362 {{(char const *)0, (struct bus_type *)0, (struct module *)0, (char const *)0,
4363 (_Bool)0, (struct of_device_id const *)0, (int (*)(struct device * ))0, (int (*)(struct device * ))0,
4364 (void (*)(struct device * ))0, (int (*)(struct device * , pm_message_t ))0,
4365 (int (*)(struct device * ))0, (struct attribute_group const **)0, (struct dev_pm_ops const *)0,
4366 (struct driver_private *)0}, 0}, (unsigned char)0, (unsigned char)0, (unsigned char)0};
4367#line 102 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4368static struct usb_serial_driver ir_device =
4369#line 102
4370 {"IR Dongle", (struct usb_device_id const *)(& ir_id_table), (char)1, {(struct list_head *)0,
4371 (struct list_head *)0},
4372 {"ir-usb", (struct bus_type *)0, & __this_module, (char const *)0, (_Bool)0,
4373 (struct of_device_id const *)0, (int (*)(struct device * ))0, (int (*)(struct device * ))0,
4374 (void (*)(struct device * ))0, (int (*)(struct device * , pm_message_t ))0,
4375 (int (*)(struct device * ))0, (struct attribute_group const **)0, (struct dev_pm_ops const *)0,
4376 (struct driver_private *)0}, (struct usb_driver *)0, {{{{{{0U}}, 0U, 0U, (void *)0,
4377 {(struct lock_class_key *)0,
4378 {(struct lock_class *)0,
4379 (struct lock_class *)0},
4380 (char const *)0,
4381 0, 0UL}}}}, {(struct list_head *)0,
4382 (struct list_head *)0}},
4383 0UL, 0UL, (int (*)(struct usb_serial * , struct usb_device_id const * ))0, & ir_startup,
4384 (int (*)(struct usb_serial * ))0, (void (*)(struct usb_serial * ))0, (void (*)(struct usb_serial * ))0,
4385 (int (*)(struct usb_serial_port * ))0, (int (*)(struct usb_serial_port * ))0,
4386 (int (*)(struct usb_serial * , pm_message_t ))0, (int (*)(struct usb_serial * ))0,
4387 & ir_open, (void (*)(struct usb_serial_port * ))0, (int (*)(struct tty_struct * ,
4388 struct usb_serial_port * ,
4389 unsigned char const * ,
4390 int ))0, (int (*)(struct tty_struct * ))0,
4391 (int (*)(struct tty_struct * , unsigned int , unsigned long ))0, & ir_set_termios,
4392 (void (*)(struct tty_struct * , int ))0, (int (*)(struct tty_struct * ))0, (void (*)(struct tty_struct * ))0,
4393 (void (*)(struct tty_struct * ))0, (int (*)(struct tty_struct * ))0, (int (*)(struct tty_struct * ,
4394 unsigned int ,
4395 unsigned int ))0,
4396 (int (*)(struct tty_struct * , struct serial_icounter_struct * ))0, (void (*)(struct usb_serial_port * ,
4397 int ))0,
4398 (int (*)(struct usb_serial_port * ))0, (void (*)(struct tty_struct * ))0, (void (*)(struct urb * ))0,
4399 (void (*)(struct urb * ))0, (void (*)(struct urb * ))0, (void (*)(struct urb * ))0,
4400 & ir_process_read_urb, & ir_prepare_write_buffer};
4401#line 117 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4402static struct usb_serial_driver * const serial_drivers[2U] = { (struct usb_serial_driver * const )(& ir_device), (struct usb_serial_driver * const )0};
4403#line 121 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4404__inline static void irda_usb_dump_class_desc(struct usb_irda_cs_descriptor *desc )
4405{ bool *__cil_tmp2 ;
4406 bool __cil_tmp3 ;
4407 char *__cil_tmp4 ;
4408 __u8 __cil_tmp5 ;
4409 int __cil_tmp6 ;
4410 bool *__cil_tmp7 ;
4411 bool __cil_tmp8 ;
4412 char *__cil_tmp9 ;
4413 unsigned long __cil_tmp10 ;
4414 unsigned long __cil_tmp11 ;
4415 __u8 __cil_tmp12 ;
4416 int __cil_tmp13 ;
4417 bool *__cil_tmp14 ;
4418 bool __cil_tmp15 ;
4419 char *__cil_tmp16 ;
4420 unsigned long __cil_tmp17 ;
4421 unsigned long __cil_tmp18 ;
4422 __le16 __cil_tmp19 ;
4423 int __cil_tmp20 ;
4424 bool *__cil_tmp21 ;
4425 bool __cil_tmp22 ;
4426 char *__cil_tmp23 ;
4427 unsigned long __cil_tmp24 ;
4428 unsigned long __cil_tmp25 ;
4429 __u8 __cil_tmp26 ;
4430 int __cil_tmp27 ;
4431 bool *__cil_tmp28 ;
4432 bool __cil_tmp29 ;
4433 char *__cil_tmp30 ;
4434 unsigned long __cil_tmp31 ;
4435 unsigned long __cil_tmp32 ;
4436 __u8 __cil_tmp33 ;
4437 int __cil_tmp34 ;
4438 bool *__cil_tmp35 ;
4439 bool __cil_tmp36 ;
4440 char *__cil_tmp37 ;
4441 unsigned long __cil_tmp38 ;
4442 unsigned long __cil_tmp39 ;
4443 __u8 __cil_tmp40 ;
4444 int __cil_tmp41 ;
4445 bool *__cil_tmp42 ;
4446 bool __cil_tmp43 ;
4447 char *__cil_tmp44 ;
4448 unsigned long __cil_tmp45 ;
4449 unsigned long __cil_tmp46 ;
4450 __le16 __cil_tmp47 ;
4451 int __cil_tmp48 ;
4452 bool *__cil_tmp49 ;
4453 bool __cil_tmp50 ;
4454 char *__cil_tmp51 ;
4455 unsigned long __cil_tmp52 ;
4456 unsigned long __cil_tmp53 ;
4457 __u8 __cil_tmp54 ;
4458 int __cil_tmp55 ;
4459 bool *__cil_tmp56 ;
4460 bool __cil_tmp57 ;
4461 char *__cil_tmp58 ;
4462 unsigned long __cil_tmp59 ;
4463 unsigned long __cil_tmp60 ;
4464 __u8 __cil_tmp61 ;
4465 int __cil_tmp62 ;
4466 bool *__cil_tmp63 ;
4467 bool __cil_tmp64 ;
4468 char *__cil_tmp65 ;
4469 unsigned long __cil_tmp66 ;
4470 unsigned long __cil_tmp67 ;
4471 __u8 __cil_tmp68 ;
4472 int __cil_tmp69 ;
4473
4474 {
4475 {
4476#line 123
4477 __cil_tmp2 = & debug;
4478#line 123
4479 __cil_tmp3 = *__cil_tmp2;
4480#line 123
4481 if ((int )__cil_tmp3) {
4482 {
4483#line 123
4484 __cil_tmp4 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4485#line 123
4486 __cil_tmp5 = *((__u8 *)desc);
4487#line 123
4488 __cil_tmp6 = (int )__cil_tmp5;
4489#line 123
4490 printk("<7>%s: bLength=%x\n", __cil_tmp4, __cil_tmp6);
4491 }
4492 } else {
4493
4494 }
4495 }
4496 {
4497#line 124
4498 __cil_tmp7 = & debug;
4499#line 124
4500 __cil_tmp8 = *__cil_tmp7;
4501#line 124
4502 if ((int )__cil_tmp8) {
4503 {
4504#line 124
4505 __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/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4506#line 124
4507 __cil_tmp10 = (unsigned long )desc;
4508#line 124
4509 __cil_tmp11 = __cil_tmp10 + 1;
4510#line 124
4511 __cil_tmp12 = *((__u8 *)__cil_tmp11);
4512#line 124
4513 __cil_tmp13 = (int )__cil_tmp12;
4514#line 124
4515 printk("<7>%s: bDescriptorType=%x\n", __cil_tmp9, __cil_tmp13);
4516 }
4517 } else {
4518
4519 }
4520 }
4521 {
4522#line 125
4523 __cil_tmp14 = & debug;
4524#line 125
4525 __cil_tmp15 = *__cil_tmp14;
4526#line 125
4527 if ((int )__cil_tmp15) {
4528 {
4529#line 125
4530 __cil_tmp16 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4531#line 125
4532 __cil_tmp17 = (unsigned long )desc;
4533#line 125
4534 __cil_tmp18 = __cil_tmp17 + 2;
4535#line 125
4536 __cil_tmp19 = *((__le16 *)__cil_tmp18);
4537#line 125
4538 __cil_tmp20 = (int )__cil_tmp19;
4539#line 125
4540 printk("<7>%s: bcdSpecRevision=%x\n", __cil_tmp16, __cil_tmp20);
4541 }
4542 } else {
4543
4544 }
4545 }
4546 {
4547#line 126
4548 __cil_tmp21 = & debug;
4549#line 126
4550 __cil_tmp22 = *__cil_tmp21;
4551#line 126
4552 if ((int )__cil_tmp22) {
4553 {
4554#line 126
4555 __cil_tmp23 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4556#line 126
4557 __cil_tmp24 = (unsigned long )desc;
4558#line 126
4559 __cil_tmp25 = __cil_tmp24 + 4;
4560#line 126
4561 __cil_tmp26 = *((__u8 *)__cil_tmp25);
4562#line 126
4563 __cil_tmp27 = (int )__cil_tmp26;
4564#line 126
4565 printk("<7>%s: bmDataSize=%x\n", __cil_tmp23, __cil_tmp27);
4566 }
4567 } else {
4568
4569 }
4570 }
4571 {
4572#line 127
4573 __cil_tmp28 = & debug;
4574#line 127
4575 __cil_tmp29 = *__cil_tmp28;
4576#line 127
4577 if ((int )__cil_tmp29) {
4578 {
4579#line 127
4580 __cil_tmp30 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4581#line 127
4582 __cil_tmp31 = (unsigned long )desc;
4583#line 127
4584 __cil_tmp32 = __cil_tmp31 + 5;
4585#line 127
4586 __cil_tmp33 = *((__u8 *)__cil_tmp32);
4587#line 127
4588 __cil_tmp34 = (int )__cil_tmp33;
4589#line 127
4590 printk("<7>%s: bmWindowSize=%x\n", __cil_tmp30, __cil_tmp34);
4591 }
4592 } else {
4593
4594 }
4595 }
4596 {
4597#line 128
4598 __cil_tmp35 = & debug;
4599#line 128
4600 __cil_tmp36 = *__cil_tmp35;
4601#line 128
4602 if ((int )__cil_tmp36) {
4603 {
4604#line 128
4605 __cil_tmp37 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4606#line 128
4607 __cil_tmp38 = (unsigned long )desc;
4608#line 128
4609 __cil_tmp39 = __cil_tmp38 + 6;
4610#line 128
4611 __cil_tmp40 = *((__u8 *)__cil_tmp39);
4612#line 128
4613 __cil_tmp41 = (int )__cil_tmp40;
4614#line 128
4615 printk("<7>%s: bmMinTurnaroundTime=%d\n", __cil_tmp37, __cil_tmp41);
4616 }
4617 } else {
4618
4619 }
4620 }
4621 {
4622#line 129
4623 __cil_tmp42 = & debug;
4624#line 129
4625 __cil_tmp43 = *__cil_tmp42;
4626#line 129
4627 if ((int )__cil_tmp43) {
4628 {
4629#line 129
4630 __cil_tmp44 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4631#line 129
4632 __cil_tmp45 = (unsigned long )desc;
4633#line 129
4634 __cil_tmp46 = __cil_tmp45 + 8;
4635#line 129
4636 __cil_tmp47 = *((__le16 *)__cil_tmp46);
4637#line 129
4638 __cil_tmp48 = (int )__cil_tmp47;
4639#line 129
4640 printk("<7>%s: wBaudRate=%x\n", __cil_tmp44, __cil_tmp48);
4641 }
4642 } else {
4643
4644 }
4645 }
4646 {
4647#line 130
4648 __cil_tmp49 = & debug;
4649#line 130
4650 __cil_tmp50 = *__cil_tmp49;
4651#line 130
4652 if ((int )__cil_tmp50) {
4653 {
4654#line 130
4655 __cil_tmp51 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4656#line 130
4657 __cil_tmp52 = (unsigned long )desc;
4658#line 130
4659 __cil_tmp53 = __cil_tmp52 + 10;
4660#line 130
4661 __cil_tmp54 = *((__u8 *)__cil_tmp53);
4662#line 130
4663 __cil_tmp55 = (int )__cil_tmp54;
4664#line 130
4665 printk("<7>%s: bmAdditionalBOFs=%x\n", __cil_tmp51, __cil_tmp55);
4666 }
4667 } else {
4668
4669 }
4670 }
4671 {
4672#line 131
4673 __cil_tmp56 = & debug;
4674#line 131
4675 __cil_tmp57 = *__cil_tmp56;
4676#line 131
4677 if ((int )__cil_tmp57) {
4678 {
4679#line 131
4680 __cil_tmp58 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4681#line 131
4682 __cil_tmp59 = (unsigned long )desc;
4683#line 131
4684 __cil_tmp60 = __cil_tmp59 + 11;
4685#line 131
4686 __cil_tmp61 = *((__u8 *)__cil_tmp60);
4687#line 131
4688 __cil_tmp62 = (int )__cil_tmp61;
4689#line 131
4690 printk("<7>%s: bIrdaRateSniff=%x\n", __cil_tmp58, __cil_tmp62);
4691 }
4692 } else {
4693
4694 }
4695 }
4696 {
4697#line 132
4698 __cil_tmp63 = & debug;
4699#line 132
4700 __cil_tmp64 = *__cil_tmp63;
4701#line 132
4702 if ((int )__cil_tmp64) {
4703 {
4704#line 132
4705 __cil_tmp65 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4706#line 132
4707 __cil_tmp66 = (unsigned long )desc;
4708#line 132
4709 __cil_tmp67 = __cil_tmp66 + 12;
4710#line 132
4711 __cil_tmp68 = *((__u8 *)__cil_tmp67);
4712#line 132
4713 __cil_tmp69 = (int )__cil_tmp68;
4714#line 132
4715 printk("<7>%s: bMaxUnicastList=%x\n", __cil_tmp65, __cil_tmp69);
4716 }
4717 } else {
4718
4719 }
4720 }
4721#line 133
4722 return;
4723}
4724}
4725#line 148 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4726static struct usb_irda_cs_descriptor *irda_usb_find_class_desc(struct usb_device *dev ,
4727 unsigned int ifnum )
4728{ struct usb_irda_cs_descriptor *desc ;
4729 int ret ;
4730 void *tmp ;
4731 unsigned int tmp___0 ;
4732 char *tmp___1 ;
4733 struct usb_irda_cs_descriptor *__cil_tmp8 ;
4734 unsigned long __cil_tmp9 ;
4735 unsigned long __cil_tmp10 ;
4736 unsigned int __cil_tmp11 ;
4737 __u8 __cil_tmp12 ;
4738 __u8 __cil_tmp13 ;
4739 __u16 __cil_tmp14 ;
4740 __u16 __cil_tmp15 ;
4741 int __cil_tmp16 ;
4742 __u16 __cil_tmp17 ;
4743 void *__cil_tmp18 ;
4744 __u16 __cil_tmp19 ;
4745 bool *__cil_tmp20 ;
4746 bool __cil_tmp21 ;
4747 char *__cil_tmp22 ;
4748 unsigned int __cil_tmp23 ;
4749 bool *__cil_tmp24 ;
4750 bool __cil_tmp25 ;
4751 char *__cil_tmp26 ;
4752 unsigned long __cil_tmp27 ;
4753 unsigned long __cil_tmp28 ;
4754 __u8 __cil_tmp29 ;
4755 unsigned int __cil_tmp30 ;
4756 bool *__cil_tmp31 ;
4757 bool __cil_tmp32 ;
4758 char *__cil_tmp33 ;
4759 void const *__cil_tmp34 ;
4760
4761 {
4762 {
4763#line 153
4764 tmp = kzalloc(12UL, 208U);
4765#line 153
4766 desc = (struct usb_irda_cs_descriptor *)tmp;
4767 }
4768 {
4769#line 154
4770 __cil_tmp8 = (struct usb_irda_cs_descriptor *)0;
4771#line 154
4772 __cil_tmp9 = (unsigned long )__cil_tmp8;
4773#line 154
4774 __cil_tmp10 = (unsigned long )desc;
4775#line 154
4776 if (__cil_tmp10 == __cil_tmp9) {
4777#line 155
4778 return ((struct usb_irda_cs_descriptor *)0);
4779 } else {
4780
4781 }
4782 }
4783 {
4784#line 157
4785 tmp___0 = __create_pipe(dev, 0U);
4786#line 157
4787 __cil_tmp11 = tmp___0 | 2147483776U;
4788#line 157
4789 __cil_tmp12 = (__u8 )6;
4790#line 157
4791 __cil_tmp13 = (__u8 )161;
4792#line 157
4793 __cil_tmp14 = (__u16 )0;
4794#line 157
4795 __cil_tmp15 = (__u16 )ifnum;
4796#line 157
4797 __cil_tmp16 = (int )__cil_tmp15;
4798#line 157
4799 __cil_tmp17 = (__u16 )__cil_tmp16;
4800#line 157
4801 __cil_tmp18 = (void *)desc;
4802#line 157
4803 __cil_tmp19 = (__u16 )12;
4804#line 157
4805 ret = usb_control_msg(dev, __cil_tmp11, __cil_tmp12, __cil_tmp13, __cil_tmp14, __cil_tmp17,
4806 __cil_tmp18, __cil_tmp19, 1000);
4807 }
4808 {
4809#line 162
4810 __cil_tmp20 = & debug;
4811#line 162
4812 __cil_tmp21 = *__cil_tmp20;
4813#line 162
4814 if ((int )__cil_tmp21) {
4815 {
4816#line 162
4817 __cil_tmp22 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4818#line 162
4819 printk("<7>%s: %s - ret=%d\n", __cil_tmp22, "irda_usb_find_class_desc", ret);
4820 }
4821 } else {
4822
4823 }
4824 }
4825 {
4826#line 163
4827 __cil_tmp23 = (unsigned int )ret;
4828#line 163
4829 if (__cil_tmp23 <= 11U) {
4830 {
4831#line 164
4832 __cil_tmp24 = & debug;
4833#line 164
4834 __cil_tmp25 = *__cil_tmp24;
4835#line 164
4836 if ((int )__cil_tmp25) {
4837#line 164
4838 if (ret < 0) {
4839#line 164
4840 tmp___1 = (char *)"failed";
4841 } else {
4842#line 164
4843 tmp___1 = (char *)"too short";
4844 }
4845 {
4846#line 164
4847 __cil_tmp26 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4848#line 164
4849 printk("<7>%s: %s - class descriptor read %s (%d)\n", __cil_tmp26, "irda_usb_find_class_desc",
4850 tmp___1, ret);
4851 }
4852 } else {
4853
4854 }
4855 }
4856#line 168
4857 goto error;
4858 } else {
4859
4860 }
4861 }
4862 {
4863#line 170
4864 __cil_tmp27 = (unsigned long )desc;
4865#line 170
4866 __cil_tmp28 = __cil_tmp27 + 1;
4867#line 170
4868 __cil_tmp29 = *((__u8 *)__cil_tmp28);
4869#line 170
4870 __cil_tmp30 = (unsigned int )__cil_tmp29;
4871#line 170
4872 if (__cil_tmp30 != 33U) {
4873 {
4874#line 171
4875 __cil_tmp31 = & debug;
4876#line 171
4877 __cil_tmp32 = *__cil_tmp31;
4878#line 171
4879 if ((int )__cil_tmp32) {
4880 {
4881#line 171
4882 __cil_tmp33 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
4883#line 171
4884 printk("<7>%s: %s - bad class descriptor type\n", __cil_tmp33, "irda_usb_find_class_desc");
4885 }
4886 } else {
4887
4888 }
4889 }
4890#line 172
4891 goto error;
4892 } else {
4893
4894 }
4895 }
4896 {
4897#line 175
4898 irda_usb_dump_class_desc(desc);
4899 }
4900#line 176
4901 return (desc);
4902 error:
4903 {
4904#line 179
4905 __cil_tmp34 = (void const *)desc;
4906#line 179
4907 kfree(__cil_tmp34);
4908 }
4909#line 180
4910 return ((struct usb_irda_cs_descriptor *)0);
4911}
4912}
4913#line 183 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
4914static u8 ir_xbof_change(u8 xbof___0 )
4915{ u8 result ;
4916
4917 {
4918#line 189
4919 if ((int )xbof___0 == 48) {
4920#line 189
4921 goto case_48;
4922 } else
4923#line 192
4924 if ((int )xbof___0 == 28) {
4925#line 192
4926 goto case_28;
4927 } else
4928#line 193
4929 if ((int )xbof___0 == 24) {
4930#line 193
4931 goto case_24;
4932 } else
4933#line 197
4934 if ((int )xbof___0 == 12) {
4935#line 197
4936 goto case_12;
4937 } else
4938#line 200
4939 if ((int )xbof___0 == 5) {
4940#line 200
4941 goto case_5;
4942 } else
4943#line 201
4944 if ((int )xbof___0 == 6) {
4945#line 201
4946 goto case_6;
4947 } else
4948#line 204
4949 if ((int )xbof___0 == 3) {
4950#line 204
4951 goto case_3;
4952 } else
4953#line 207
4954 if ((int )xbof___0 == 2) {
4955#line 207
4956 goto case_2;
4957 } else
4958#line 210
4959 if ((int )xbof___0 == 1) {
4960#line 210
4961 goto case_1;
4962 } else
4963#line 213
4964 if ((int )xbof___0 == 0) {
4965#line 213
4966 goto case_0;
4967 } else {
4968 {
4969#line 196
4970 goto switch_default;
4971#line 188
4972 if (0) {
4973 case_48:
4974#line 190
4975 result = (u8 )16U;
4976#line 191
4977 goto ldv_27791;
4978 case_28: ;
4979 case_24:
4980#line 194
4981 result = (u8 )32U;
4982#line 195
4983 goto ldv_27791;
4984 switch_default: ;
4985 case_12:
4986#line 198
4987 result = (u8 )48U;
4988#line 199
4989 goto ldv_27791;
4990 case_5: ;
4991 case_6:
4992#line 202
4993 result = (u8 )64U;
4994#line 203
4995 goto ldv_27791;
4996 case_3:
4997#line 205
4998 result = (u8 )80U;
4999#line 206
5000 goto ldv_27791;
5001 case_2:
5002#line 208
5003 result = (u8 )96U;
5004#line 209
5005 goto ldv_27791;
5006 case_1:
5007#line 211
5008 result = (u8 )112U;
5009#line 212
5010 goto ldv_27791;
5011 case_0:
5012#line 214
5013 result = (u8 )128U;
5014#line 215
5015 goto ldv_27791;
5016 } else {
5017 switch_break: ;
5018 }
5019 }
5020 }
5021 ldv_27791: ;
5022#line 218
5023 return (result);
5024}
5025}
5026#line 221 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
5027static int ir_startup(struct usb_serial *serial )
5028{ struct usb_irda_cs_descriptor *irda_desc ;
5029 char *tmp ;
5030 char *tmp___0 ;
5031 char *tmp___1 ;
5032 char *tmp___2 ;
5033 char *tmp___3 ;
5034 char *tmp___4 ;
5035 char *tmp___5 ;
5036 char *tmp___6 ;
5037 char *tmp___7 ;
5038 struct usb_device *__cil_tmp12 ;
5039 struct usb_irda_cs_descriptor *__cil_tmp13 ;
5040 unsigned long __cil_tmp14 ;
5041 unsigned long __cil_tmp15 ;
5042 struct usb_device *__cil_tmp16 ;
5043 unsigned long __cil_tmp17 ;
5044 unsigned long __cil_tmp18 ;
5045 struct device *__cil_tmp19 ;
5046 struct device const *__cil_tmp20 ;
5047 bool *__cil_tmp21 ;
5048 bool __cil_tmp22 ;
5049 unsigned long __cil_tmp23 ;
5050 unsigned long __cil_tmp24 ;
5051 __le16 __cil_tmp25 ;
5052 int __cil_tmp26 ;
5053 int __cil_tmp27 ;
5054 unsigned long __cil_tmp28 ;
5055 unsigned long __cil_tmp29 ;
5056 __le16 __cil_tmp30 ;
5057 int __cil_tmp31 ;
5058 int __cil_tmp32 ;
5059 unsigned long __cil_tmp33 ;
5060 unsigned long __cil_tmp34 ;
5061 __le16 __cil_tmp35 ;
5062 int __cil_tmp36 ;
5063 int __cil_tmp37 ;
5064 unsigned long __cil_tmp38 ;
5065 unsigned long __cil_tmp39 ;
5066 __le16 __cil_tmp40 ;
5067 int __cil_tmp41 ;
5068 int __cil_tmp42 ;
5069 unsigned long __cil_tmp43 ;
5070 unsigned long __cil_tmp44 ;
5071 __le16 __cil_tmp45 ;
5072 int __cil_tmp46 ;
5073 int __cil_tmp47 ;
5074 unsigned long __cil_tmp48 ;
5075 unsigned long __cil_tmp49 ;
5076 __le16 __cil_tmp50 ;
5077 int __cil_tmp51 ;
5078 int __cil_tmp52 ;
5079 unsigned long __cil_tmp53 ;
5080 unsigned long __cil_tmp54 ;
5081 __le16 __cil_tmp55 ;
5082 int __cil_tmp56 ;
5083 int __cil_tmp57 ;
5084 unsigned long __cil_tmp58 ;
5085 unsigned long __cil_tmp59 ;
5086 __le16 __cil_tmp60 ;
5087 int __cil_tmp61 ;
5088 int __cil_tmp62 ;
5089 unsigned long __cil_tmp63 ;
5090 unsigned long __cil_tmp64 ;
5091 __le16 __cil_tmp65 ;
5092 int __cil_tmp66 ;
5093 char *__cil_tmp67 ;
5094 unsigned long __cil_tmp68 ;
5095 unsigned long __cil_tmp69 ;
5096 __u8 __cil_tmp70 ;
5097 void const *__cil_tmp71 ;
5098
5099 {
5100 {
5101#line 225
5102 __cil_tmp12 = *((struct usb_device **)serial);
5103#line 225
5104 irda_desc = irda_usb_find_class_desc(__cil_tmp12, 0U);
5105 }
5106 {
5107#line 226
5108 __cil_tmp13 = (struct usb_irda_cs_descriptor *)0;
5109#line 226
5110 __cil_tmp14 = (unsigned long )__cil_tmp13;
5111#line 226
5112 __cil_tmp15 = (unsigned long )irda_desc;
5113#line 226
5114 if (__cil_tmp15 == __cil_tmp14) {
5115 {
5116#line 227
5117 __cil_tmp16 = *((struct usb_device **)serial);
5118#line 227
5119 __cil_tmp17 = (unsigned long )__cil_tmp16;
5120#line 227
5121 __cil_tmp18 = __cil_tmp17 + 136;
5122#line 227
5123 __cil_tmp19 = (struct device *)__cil_tmp18;
5124#line 227
5125 __cil_tmp20 = (struct device const *)__cil_tmp19;
5126#line 227
5127 dev_err(__cil_tmp20, "IRDA class descriptor not found, device not bound\n");
5128 }
5129#line 229
5130 return (-19);
5131 } else {
5132
5133 }
5134 }
5135 {
5136#line 232
5137 __cil_tmp21 = & debug;
5138#line 232
5139 __cil_tmp22 = *__cil_tmp21;
5140#line 232
5141 if ((int )__cil_tmp22) {
5142 {
5143#line 232
5144 __cil_tmp23 = (unsigned long )irda_desc;
5145#line 232
5146 __cil_tmp24 = __cil_tmp23 + 8;
5147#line 232
5148 __cil_tmp25 = *((__le16 *)__cil_tmp24);
5149#line 232
5150 __cil_tmp26 = (int )__cil_tmp25;
5151#line 232
5152 __cil_tmp27 = __cil_tmp26 & 256;
5153#line 232
5154 if (__cil_tmp27 != 0) {
5155#line 232
5156 tmp = (char *)" 4000000";
5157 } else {
5158#line 232
5159 tmp = (char *)"";
5160 }
5161 }
5162 {
5163#line 232
5164 __cil_tmp28 = (unsigned long )irda_desc;
5165#line 232
5166 __cil_tmp29 = __cil_tmp28 + 8;
5167#line 232
5168 __cil_tmp30 = *((__le16 *)__cil_tmp29);
5169#line 232
5170 __cil_tmp31 = (int )__cil_tmp30;
5171#line 232
5172 __cil_tmp32 = __cil_tmp31 & 128;
5173#line 232
5174 if (__cil_tmp32 != 0) {
5175#line 232
5176 tmp___0 = (char *)" 1152000";
5177 } else {
5178#line 232
5179 tmp___0 = (char *)"";
5180 }
5181 }
5182 {
5183#line 232
5184 __cil_tmp33 = (unsigned long )irda_desc;
5185#line 232
5186 __cil_tmp34 = __cil_tmp33 + 8;
5187#line 232
5188 __cil_tmp35 = *((__le16 *)__cil_tmp34);
5189#line 232
5190 __cil_tmp36 = (int )__cil_tmp35;
5191#line 232
5192 __cil_tmp37 = __cil_tmp36 & 64;
5193#line 232
5194 if (__cil_tmp37 != 0) {
5195#line 232
5196 tmp___1 = (char *)" 576000";
5197 } else {
5198#line 232
5199 tmp___1 = (char *)"";
5200 }
5201 }
5202 {
5203#line 232
5204 __cil_tmp38 = (unsigned long )irda_desc;
5205#line 232
5206 __cil_tmp39 = __cil_tmp38 + 8;
5207#line 232
5208 __cil_tmp40 = *((__le16 *)__cil_tmp39);
5209#line 232
5210 __cil_tmp41 = (int )__cil_tmp40;
5211#line 232
5212 __cil_tmp42 = __cil_tmp41 & 32;
5213#line 232
5214 if (__cil_tmp42 != 0) {
5215#line 232
5216 tmp___2 = (char *)" 115200";
5217 } else {
5218#line 232
5219 tmp___2 = (char *)"";
5220 }
5221 }
5222 {
5223#line 232
5224 __cil_tmp43 = (unsigned long )irda_desc;
5225#line 232
5226 __cil_tmp44 = __cil_tmp43 + 8;
5227#line 232
5228 __cil_tmp45 = *((__le16 *)__cil_tmp44);
5229#line 232
5230 __cil_tmp46 = (int )__cil_tmp45;
5231#line 232
5232 __cil_tmp47 = __cil_tmp46 & 16;
5233#line 232
5234 if (__cil_tmp47 != 0) {
5235#line 232
5236 tmp___3 = (char *)" 57600";
5237 } else {
5238#line 232
5239 tmp___3 = (char *)"";
5240 }
5241 }
5242 {
5243#line 232
5244 __cil_tmp48 = (unsigned long )irda_desc;
5245#line 232
5246 __cil_tmp49 = __cil_tmp48 + 8;
5247#line 232
5248 __cil_tmp50 = *((__le16 *)__cil_tmp49);
5249#line 232
5250 __cil_tmp51 = (int )__cil_tmp50;
5251#line 232
5252 __cil_tmp52 = __cil_tmp51 & 8;
5253#line 232
5254 if (__cil_tmp52 != 0) {
5255#line 232
5256 tmp___4 = (char *)" 38400";
5257 } else {
5258#line 232
5259 tmp___4 = (char *)"";
5260 }
5261 }
5262 {
5263#line 232
5264 __cil_tmp53 = (unsigned long )irda_desc;
5265#line 232
5266 __cil_tmp54 = __cil_tmp53 + 8;
5267#line 232
5268 __cil_tmp55 = *((__le16 *)__cil_tmp54);
5269#line 232
5270 __cil_tmp56 = (int )__cil_tmp55;
5271#line 232
5272 __cil_tmp57 = __cil_tmp56 & 4;
5273#line 232
5274 if (__cil_tmp57 != 0) {
5275#line 232
5276 tmp___5 = (char *)" 19200";
5277 } else {
5278#line 232
5279 tmp___5 = (char *)"";
5280 }
5281 }
5282 {
5283#line 232
5284 __cil_tmp58 = (unsigned long )irda_desc;
5285#line 232
5286 __cil_tmp59 = __cil_tmp58 + 8;
5287#line 232
5288 __cil_tmp60 = *((__le16 *)__cil_tmp59);
5289#line 232
5290 __cil_tmp61 = (int )__cil_tmp60;
5291#line 232
5292 __cil_tmp62 = __cil_tmp61 & 2;
5293#line 232
5294 if (__cil_tmp62 != 0) {
5295#line 232
5296 tmp___6 = (char *)" 9600";
5297 } else {
5298#line 232
5299 tmp___6 = (char *)"";
5300 }
5301 }
5302 {
5303#line 232
5304 __cil_tmp63 = (unsigned long )irda_desc;
5305#line 232
5306 __cil_tmp64 = __cil_tmp63 + 8;
5307#line 232
5308 __cil_tmp65 = *((__le16 *)__cil_tmp64);
5309#line 232
5310 __cil_tmp66 = (int )__cil_tmp65;
5311#line 232
5312 if (__cil_tmp66 & 1) {
5313#line 232
5314 tmp___7 = (char *)" 2400";
5315 } else {
5316#line 232
5317 tmp___7 = (char *)"";
5318 }
5319 }
5320 {
5321#line 232
5322 __cil_tmp67 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
5323#line 232
5324 printk("<7>%s: %s - Baud rates supported:%s%s%s%s%s%s%s%s%s\n", __cil_tmp67, "ir_startup",
5325 tmp___7, tmp___6, tmp___5, tmp___4, tmp___3, tmp___2, tmp___1, tmp___0,
5326 tmp);
5327 }
5328 } else {
5329
5330 }
5331 }
5332 {
5333#line 244
5334 __cil_tmp68 = (unsigned long )irda_desc;
5335#line 244
5336 __cil_tmp69 = __cil_tmp68 + 10;
5337#line 244
5338 __cil_tmp70 = *((__u8 *)__cil_tmp69);
5339#line 245
5340 if ((int )__cil_tmp70 == 1) {
5341#line 245
5342 goto case_1;
5343 } else
5344#line 248
5345 if ((int )__cil_tmp70 == 2) {
5346#line 248
5347 goto case_2;
5348 } else
5349#line 251
5350 if ((int )__cil_tmp70 == 4) {
5351#line 251
5352 goto case_4;
5353 } else
5354#line 254
5355 if ((int )__cil_tmp70 == 8) {
5356#line 254
5357 goto case_8;
5358 } else
5359#line 257
5360 if ((int )__cil_tmp70 == 16) {
5361#line 257
5362 goto case_16;
5363 } else
5364#line 260
5365 if ((int )__cil_tmp70 == 32) {
5366#line 260
5367 goto case_32;
5368 } else
5369#line 263
5370 if ((int )__cil_tmp70 == 64) {
5371#line 263
5372 goto case_64;
5373 } else
5374#line 266
5375 if ((int )__cil_tmp70 == 128) {
5376#line 266
5377 goto case_128;
5378 } else {
5379 {
5380#line 269
5381 goto switch_default;
5382#line 244
5383 if (0) {
5384 case_1:
5385#line 246
5386 ir_add_bof = (u8 )48U;
5387#line 247
5388 goto ldv_27808;
5389 case_2:
5390#line 249
5391 ir_add_bof = (u8 )24U;
5392#line 250
5393 goto ldv_27808;
5394 case_4:
5395#line 252
5396 ir_add_bof = (u8 )12U;
5397#line 253
5398 goto ldv_27808;
5399 case_8:
5400#line 255
5401 ir_add_bof = (u8 )6U;
5402#line 256
5403 goto ldv_27808;
5404 case_16:
5405#line 258
5406 ir_add_bof = (u8 )3U;
5407#line 259
5408 goto ldv_27808;
5409 case_32:
5410#line 261
5411 ir_add_bof = (u8 )2U;
5412#line 262
5413 goto ldv_27808;
5414 case_64:
5415#line 264
5416 ir_add_bof = (u8 )1U;
5417#line 265
5418 goto ldv_27808;
5419 case_128:
5420#line 267
5421 ir_add_bof = (u8 )0U;
5422#line 268
5423 goto ldv_27808;
5424 switch_default: ;
5425#line 270
5426 goto ldv_27808;
5427 } else {
5428 switch_break: ;
5429 }
5430 }
5431 }
5432 }
5433 ldv_27808:
5434 {
5435#line 273
5436 __cil_tmp71 = (void const *)irda_desc;
5437#line 273
5438 kfree(__cil_tmp71);
5439 }
5440#line 275
5441 return (0);
5442}
5443}
5444#line 278 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
5445static int ir_open(struct tty_struct *tty , struct usb_serial_port *port )
5446{ int i ;
5447 int tmp ;
5448 bool *__cil_tmp5 ;
5449 bool __cil_tmp6 ;
5450 char *__cil_tmp7 ;
5451 unsigned long __cil_tmp8 ;
5452 unsigned long __cil_tmp9 ;
5453 unsigned char __cil_tmp10 ;
5454 int __cil_tmp11 ;
5455 unsigned long __cil_tmp12 ;
5456 unsigned long __cil_tmp13 ;
5457 unsigned long __cil_tmp14 ;
5458 unsigned long __cil_tmp15 ;
5459 struct urb *__cil_tmp16 ;
5460 unsigned long __cil_tmp17 ;
5461 unsigned long __cil_tmp18 ;
5462 unsigned int __cil_tmp19 ;
5463
5464 {
5465 {
5466#line 282
5467 __cil_tmp5 = & debug;
5468#line 282
5469 __cil_tmp6 = *__cil_tmp5;
5470#line 282
5471 if ((int )__cil_tmp6) {
5472 {
5473#line 282
5474 __cil_tmp7 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
5475#line 282
5476 __cil_tmp8 = (unsigned long )port;
5477#line 282
5478 __cil_tmp9 = __cil_tmp8 + 816;
5479#line 282
5480 __cil_tmp10 = *((unsigned char *)__cil_tmp9);
5481#line 282
5482 __cil_tmp11 = (int )__cil_tmp10;
5483#line 282
5484 printk("<7>%s: %s - port %d\n", __cil_tmp7, "ir_open", __cil_tmp11);
5485 }
5486 } else {
5487
5488 }
5489 }
5490#line 284
5491 i = 0;
5492#line 284
5493 goto ldv_27826;
5494 ldv_27825:
5495#line 285
5496 __cil_tmp12 = i * 8UL;
5497#line 285
5498 __cil_tmp13 = 1016 + __cil_tmp12;
5499#line 285
5500 __cil_tmp14 = (unsigned long )port;
5501#line 285
5502 __cil_tmp15 = __cil_tmp14 + __cil_tmp13;
5503#line 285
5504 __cil_tmp16 = *((struct urb **)__cil_tmp15);
5505#line 285
5506 __cil_tmp17 = (unsigned long )__cil_tmp16;
5507#line 285
5508 __cil_tmp18 = __cil_tmp17 + 100;
5509#line 285
5510 *((unsigned int *)__cil_tmp18) = 64U;
5511#line 284
5512 i = i + 1;
5513 ldv_27826: ;
5514 {
5515#line 284
5516 __cil_tmp19 = (unsigned int )i;
5517#line 284
5518 if (__cil_tmp19 <= 1U) {
5519#line 285
5520 goto ldv_27825;
5521 } else {
5522#line 287
5523 goto ldv_27827;
5524 }
5525 }
5526 ldv_27827:
5527 {
5528#line 288
5529 tmp = usb_serial_generic_open(tty, port);
5530 }
5531#line 288
5532 return (tmp);
5533}
5534}
5535#line 291 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
5536static int ir_prepare_write_buffer(struct usb_serial_port *port , void *dest , size_t size )
5537{ unsigned char *buf ;
5538 int count ;
5539 unsigned long __flags ;
5540 unsigned int __ret ;
5541 struct kfifo *__tmp ;
5542 unsigned char *__buf ;
5543 unsigned long __n ;
5544 size_t __recsize ;
5545 struct __kfifo *__kfifo ;
5546 unsigned int tmp ;
5547 unsigned int tmp___0 ;
5548 unsigned int tmp___1 ;
5549 unsigned int tmp___2 ;
5550 int __cil_tmp18 ;
5551 int __cil_tmp19 ;
5552 int __cil_tmp20 ;
5553 unsigned long __cil_tmp21 ;
5554 unsigned long __cil_tmp22 ;
5555 void *__cil_tmp23 ;
5556 unsigned int __cil_tmp24 ;
5557 void *__cil_tmp25 ;
5558 unsigned int __cil_tmp26 ;
5559 unsigned long __cil_tmp27 ;
5560 unsigned long __cil_tmp28 ;
5561 spinlock_t *__cil_tmp29 ;
5562
5563 {
5564 {
5565#line 294
5566 buf = (unsigned char *)dest;
5567#line 304
5568 __cil_tmp18 = (int )ir_baud;
5569#line 304
5570 __cil_tmp19 = (int )ir_xbof;
5571#line 304
5572 __cil_tmp20 = __cil_tmp19 | __cil_tmp18;
5573#line 304
5574 *buf = (unsigned char )__cil_tmp20;
5575#line 306
5576 ldv_spin_lock();
5577#line 306
5578 __cil_tmp21 = (unsigned long )port;
5579#line 306
5580 __cil_tmp22 = __cil_tmp21 + 976;
5581#line 306
5582 __tmp = (struct kfifo *)__cil_tmp22;
5583#line 306
5584 __buf = buf + 1UL;
5585#line 306
5586 __n = size - 1UL;
5587#line 306
5588 __recsize = 0UL;
5589#line 306
5590 __kfifo = (struct __kfifo *)__tmp;
5591 }
5592#line 306
5593 if (__recsize != 0UL) {
5594 {
5595#line 306
5596 __cil_tmp23 = (void *)__buf;
5597#line 306
5598 __cil_tmp24 = (unsigned int )__n;
5599#line 306
5600 tmp = __kfifo_out_r(__kfifo, __cil_tmp23, __cil_tmp24, __recsize);
5601#line 306
5602 tmp___1 = tmp;
5603 }
5604 } else {
5605 {
5606#line 306
5607 __cil_tmp25 = (void *)__buf;
5608#line 306
5609 __cil_tmp26 = (unsigned int )__n;
5610#line 306
5611 tmp___0 = __kfifo_out(__kfifo, __cil_tmp25, __cil_tmp26);
5612#line 306
5613 tmp___1 = tmp___0;
5614 }
5615 }
5616 {
5617#line 306
5618 __ret = __kfifo_uint_must_check_helper(tmp___1);
5619#line 306
5620 __cil_tmp27 = (unsigned long )port;
5621#line 306
5622 __cil_tmp28 = __cil_tmp27 + 744;
5623#line 306
5624 __cil_tmp29 = (spinlock_t *)__cil_tmp28;
5625#line 306
5626 spin_unlock_irqrestore(__cil_tmp29, __flags);
5627#line 306
5628 tmp___2 = __kfifo_uint_must_check_helper(__ret);
5629#line 306
5630 count = (int )tmp___2;
5631 }
5632#line 308
5633 return (count + 1);
5634}
5635}
5636#line 311 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
5637static void ir_process_read_urb(struct urb *urb )
5638{ struct usb_serial_port *port ;
5639 unsigned char *data ;
5640 struct tty_struct *tty ;
5641 unsigned long __cil_tmp5 ;
5642 unsigned long __cil_tmp6 ;
5643 void *__cil_tmp7 ;
5644 unsigned long __cil_tmp8 ;
5645 unsigned long __cil_tmp9 ;
5646 void *__cil_tmp10 ;
5647 unsigned long __cil_tmp11 ;
5648 unsigned long __cil_tmp12 ;
5649 u32 __cil_tmp13 ;
5650 unsigned char __cil_tmp14 ;
5651 int __cil_tmp15 ;
5652 int __cil_tmp16 ;
5653 unsigned char __cil_tmp17 ;
5654 unsigned int __cil_tmp18 ;
5655 unsigned int __cil_tmp19 ;
5656 unsigned long __cil_tmp20 ;
5657 unsigned long __cil_tmp21 ;
5658 u32 __cil_tmp22 ;
5659 unsigned long __cil_tmp23 ;
5660 unsigned long __cil_tmp24 ;
5661 struct tty_port *__cil_tmp25 ;
5662 struct tty_struct *__cil_tmp26 ;
5663 unsigned long __cil_tmp27 ;
5664 unsigned long __cil_tmp28 ;
5665 unsigned char const *__cil_tmp29 ;
5666 unsigned char const *__cil_tmp30 ;
5667 unsigned long __cil_tmp31 ;
5668 unsigned long __cil_tmp32 ;
5669 u32 __cil_tmp33 ;
5670 u32 __cil_tmp34 ;
5671 size_t __cil_tmp35 ;
5672
5673 {
5674#line 313
5675 __cil_tmp5 = (unsigned long )urb;
5676#line 313
5677 __cil_tmp6 = __cil_tmp5 + 176;
5678#line 313
5679 __cil_tmp7 = *((void **)__cil_tmp6);
5680#line 313
5681 port = (struct usb_serial_port *)__cil_tmp7;
5682#line 314
5683 __cil_tmp8 = (unsigned long )urb;
5684#line 314
5685 __cil_tmp9 = __cil_tmp8 + 104;
5686#line 314
5687 __cil_tmp10 = *((void **)__cil_tmp9);
5688#line 314
5689 data = (unsigned char *)__cil_tmp10;
5690 {
5691#line 317
5692 __cil_tmp11 = (unsigned long )urb;
5693#line 317
5694 __cil_tmp12 = __cil_tmp11 + 140;
5695#line 317
5696 __cil_tmp13 = *((u32 *)__cil_tmp12);
5697#line 317
5698 if (__cil_tmp13 == 0U) {
5699#line 318
5700 return;
5701 } else {
5702
5703 }
5704 }
5705 {
5706#line 324
5707 __cil_tmp14 = *data;
5708#line 324
5709 __cil_tmp15 = (int )__cil_tmp14;
5710#line 324
5711 __cil_tmp16 = __cil_tmp15 & 15;
5712#line 324
5713 if (__cil_tmp16 != 0) {
5714#line 325
5715 __cil_tmp17 = *data;
5716#line 325
5717 __cil_tmp18 = (unsigned int )__cil_tmp17;
5718#line 325
5719 __cil_tmp19 = __cil_tmp18 & 15U;
5720#line 325
5721 ir_baud = (u8 )__cil_tmp19;
5722 } else {
5723
5724 }
5725 }
5726 {
5727#line 327
5728 __cil_tmp20 = (unsigned long )urb;
5729#line 327
5730 __cil_tmp21 = __cil_tmp20 + 140;
5731#line 327
5732 __cil_tmp22 = *((u32 *)__cil_tmp21);
5733#line 327
5734 if (__cil_tmp22 == 1U) {
5735#line 328
5736 return;
5737 } else {
5738
5739 }
5740 }
5741 {
5742#line 330
5743 __cil_tmp23 = (unsigned long )port;
5744#line 330
5745 __cil_tmp24 = __cil_tmp23 + 8;
5746#line 330
5747 __cil_tmp25 = (struct tty_port *)__cil_tmp24;
5748#line 330
5749 tty = tty_port_tty_get(__cil_tmp25);
5750 }
5751 {
5752#line 331
5753 __cil_tmp26 = (struct tty_struct *)0;
5754#line 331
5755 __cil_tmp27 = (unsigned long )__cil_tmp26;
5756#line 331
5757 __cil_tmp28 = (unsigned long )tty;
5758#line 331
5759 if (__cil_tmp28 == __cil_tmp27) {
5760#line 332
5761 return;
5762 } else {
5763
5764 }
5765 }
5766 {
5767#line 333
5768 __cil_tmp29 = (unsigned char const *)data;
5769#line 333
5770 __cil_tmp30 = __cil_tmp29 + 1U;
5771#line 333
5772 __cil_tmp31 = (unsigned long )urb;
5773#line 333
5774 __cil_tmp32 = __cil_tmp31 + 140;
5775#line 333
5776 __cil_tmp33 = *((u32 *)__cil_tmp32);
5777#line 333
5778 __cil_tmp34 = __cil_tmp33 - 1U;
5779#line 333
5780 __cil_tmp35 = (size_t )__cil_tmp34;
5781#line 333
5782 tty_insert_flip_string(tty, __cil_tmp30, __cil_tmp35);
5783#line 334
5784 tty_flip_buffer_push(tty);
5785#line 335
5786 tty_kref_put(tty);
5787 }
5788#line 336
5789 return;
5790}
5791}
5792#line 338 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
5793static void ir_set_termios_callback(struct urb *urb )
5794{ struct usb_serial_port *port ;
5795 int status ;
5796 unsigned long __cil_tmp4 ;
5797 unsigned long __cil_tmp5 ;
5798 void *__cil_tmp6 ;
5799 unsigned long __cil_tmp7 ;
5800 unsigned long __cil_tmp8 ;
5801 bool *__cil_tmp9 ;
5802 bool __cil_tmp10 ;
5803 char *__cil_tmp11 ;
5804 unsigned long __cil_tmp12 ;
5805 unsigned long __cil_tmp13 ;
5806 unsigned char __cil_tmp14 ;
5807 int __cil_tmp15 ;
5808 unsigned long __cil_tmp16 ;
5809 unsigned long __cil_tmp17 ;
5810 void *__cil_tmp18 ;
5811 void const *__cil_tmp19 ;
5812 bool *__cil_tmp20 ;
5813 bool __cil_tmp21 ;
5814 char *__cil_tmp22 ;
5815
5816 {
5817#line 340
5818 __cil_tmp4 = (unsigned long )urb;
5819#line 340
5820 __cil_tmp5 = __cil_tmp4 + 176;
5821#line 340
5822 __cil_tmp6 = *((void **)__cil_tmp5);
5823#line 340
5824 port = (struct usb_serial_port *)__cil_tmp6;
5825#line 341
5826 __cil_tmp7 = (unsigned long )urb;
5827#line 341
5828 __cil_tmp8 = __cil_tmp7 + 96;
5829#line 341
5830 status = *((int *)__cil_tmp8);
5831 {
5832#line 343
5833 __cil_tmp9 = & debug;
5834#line 343
5835 __cil_tmp10 = *__cil_tmp9;
5836#line 343
5837 if ((int )__cil_tmp10) {
5838 {
5839#line 343
5840 __cil_tmp11 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
5841#line 343
5842 __cil_tmp12 = (unsigned long )port;
5843#line 343
5844 __cil_tmp13 = __cil_tmp12 + 816;
5845#line 343
5846 __cil_tmp14 = *((unsigned char *)__cil_tmp13);
5847#line 343
5848 __cil_tmp15 = (int )__cil_tmp14;
5849#line 343
5850 printk("<7>%s: %s - port %d\n", __cil_tmp11, "ir_set_termios_callback", __cil_tmp15);
5851 }
5852 } else {
5853
5854 }
5855 }
5856 {
5857#line 345
5858 __cil_tmp16 = (unsigned long )urb;
5859#line 345
5860 __cil_tmp17 = __cil_tmp16 + 104;
5861#line 345
5862 __cil_tmp18 = *((void **)__cil_tmp17);
5863#line 345
5864 __cil_tmp19 = (void const *)__cil_tmp18;
5865#line 345
5866 kfree(__cil_tmp19);
5867 }
5868#line 347
5869 if (status != 0) {
5870 {
5871#line 348
5872 __cil_tmp20 = & debug;
5873#line 348
5874 __cil_tmp21 = *__cil_tmp20;
5875#line 348
5876 if ((int )__cil_tmp21) {
5877 {
5878#line 348
5879 __cil_tmp22 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
5880#line 348
5881 printk("<7>%s: %s - non-zero urb status: %d\n", __cil_tmp22, "ir_set_termios_callback",
5882 status);
5883 }
5884 } else {
5885
5886 }
5887 }
5888 } else {
5889
5890 }
5891#line 349
5892 return;
5893}
5894}
5895#line 351 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
5896static void ir_set_termios(struct tty_struct *tty , struct usb_serial_port *port ,
5897 struct ktermios *old_termios )
5898{ struct urb *urb ;
5899 unsigned char *transfer_buffer ;
5900 int result ;
5901 speed_t baud ;
5902 int ir_baud___0 ;
5903 void *tmp ;
5904 unsigned int tmp___0 ;
5905 bool *__cil_tmp11 ;
5906 bool __cil_tmp12 ;
5907 char *__cil_tmp13 ;
5908 unsigned long __cil_tmp14 ;
5909 unsigned long __cil_tmp15 ;
5910 unsigned char __cil_tmp16 ;
5911 int __cil_tmp17 ;
5912 int *__cil_tmp18 ;
5913 int __cil_tmp19 ;
5914 int __cil_tmp20 ;
5915 u8 __cil_tmp21 ;
5916 int *__cil_tmp22 ;
5917 int __cil_tmp23 ;
5918 u8 __cil_tmp24 ;
5919 int __cil_tmp25 ;
5920 u8 __cil_tmp26 ;
5921 unsigned long __cil_tmp27 ;
5922 unsigned long __cil_tmp28 ;
5923 struct ktermios *__cil_tmp29 ;
5924 struct urb *__cil_tmp30 ;
5925 unsigned long __cil_tmp31 ;
5926 unsigned long __cil_tmp32 ;
5927 unsigned long __cil_tmp33 ;
5928 unsigned long __cil_tmp34 ;
5929 struct device *__cil_tmp35 ;
5930 struct device const *__cil_tmp36 ;
5931 unsigned char *__cil_tmp37 ;
5932 unsigned long __cil_tmp38 ;
5933 unsigned long __cil_tmp39 ;
5934 unsigned long __cil_tmp40 ;
5935 unsigned long __cil_tmp41 ;
5936 struct device *__cil_tmp42 ;
5937 struct device const *__cil_tmp43 ;
5938 signed char __cil_tmp44 ;
5939 int __cil_tmp45 ;
5940 signed char __cil_tmp46 ;
5941 int __cil_tmp47 ;
5942 int __cil_tmp48 ;
5943 struct usb_serial *__cil_tmp49 ;
5944 struct usb_device *__cil_tmp50 ;
5945 unsigned long __cil_tmp51 ;
5946 unsigned long __cil_tmp52 ;
5947 __u8 __cil_tmp53 ;
5948 unsigned int __cil_tmp54 ;
5949 struct usb_serial *__cil_tmp55 ;
5950 struct usb_device *__cil_tmp56 ;
5951 unsigned int __cil_tmp57 ;
5952 void *__cil_tmp58 ;
5953 void *__cil_tmp59 ;
5954 unsigned long __cil_tmp60 ;
5955 unsigned long __cil_tmp61 ;
5956 unsigned long __cil_tmp62 ;
5957 unsigned long __cil_tmp63 ;
5958 struct device *__cil_tmp64 ;
5959 struct device const *__cil_tmp65 ;
5960 void const *__cil_tmp66 ;
5961
5962 {
5963 {
5964#line 360
5965 __cil_tmp11 = & debug;
5966#line 360
5967 __cil_tmp12 = *__cil_tmp11;
5968#line 360
5969 if ((int )__cil_tmp12) {
5970 {
5971#line 360
5972 __cil_tmp13 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p";
5973#line 360
5974 __cil_tmp14 = (unsigned long )port;
5975#line 360
5976 __cil_tmp15 = __cil_tmp14 + 816;
5977#line 360
5978 __cil_tmp16 = *((unsigned char *)__cil_tmp15);
5979#line 360
5980 __cil_tmp17 = (int )__cil_tmp16;
5981#line 360
5982 printk("<7>%s: %s - port %d\n", __cil_tmp13, "ir_set_termios", __cil_tmp17);
5983 }
5984 } else {
5985
5986 }
5987 }
5988 {
5989#line 362
5990 baud = tty_get_baud_rate(tty);
5991 }
5992#line 371
5993 if ((int )baud == 2400) {
5994#line 371
5995 goto case_2400;
5996 } else
5997#line 374
5998 if ((int )baud == 9600) {
5999#line 374
6000 goto case_9600;
6001 } else
6002#line 377
6003 if ((int )baud == 19200) {
6004#line 377
6005 goto case_19200;
6006 } else
6007#line 380
6008 if ((int )baud == 38400) {
6009#line 380
6010 goto case_38400;
6011 } else
6012#line 383
6013 if ((int )baud == 57600) {
6014#line 383
6015 goto case_57600;
6016 } else
6017#line 386
6018 if ((int )baud == 115200) {
6019#line 386
6020 goto case_115200;
6021 } else
6022#line 389
6023 if ((int )baud == 576000) {
6024#line 389
6025 goto case_576000;
6026 } else
6027#line 392
6028 if ((int )baud == 1152000) {
6029#line 392
6030 goto case_1152000;
6031 } else
6032#line 395
6033 if ((int )baud == 4000000) {
6034#line 395
6035 goto case_4000000;
6036 } else {
6037 {
6038#line 398
6039 goto switch_default;
6040#line 370
6041 if (0) {
6042 case_2400:
6043#line 372
6044 ir_baud___0 = 1;
6045#line 373
6046 goto ldv_27869;
6047 case_9600:
6048#line 375
6049 ir_baud___0 = 2;
6050#line 376
6051 goto ldv_27869;
6052 case_19200:
6053#line 378
6054 ir_baud___0 = 4;
6055#line 379
6056 goto ldv_27869;
6057 case_38400:
6058#line 381
6059 ir_baud___0 = 8;
6060#line 382
6061 goto ldv_27869;
6062 case_57600:
6063#line 384
6064 ir_baud___0 = 16;
6065#line 385
6066 goto ldv_27869;
6067 case_115200:
6068#line 387
6069 ir_baud___0 = 32;
6070#line 388
6071 goto ldv_27869;
6072 case_576000:
6073#line 390
6074 ir_baud___0 = 64;
6075#line 391
6076 goto ldv_27869;
6077 case_1152000:
6078#line 393
6079 ir_baud___0 = 128;
6080#line 394
6081 goto ldv_27869;
6082 case_4000000:
6083#line 396
6084 ir_baud___0 = 256;
6085#line 397
6086 goto ldv_27869;
6087 switch_default:
6088#line 399
6089 ir_baud___0 = 2;
6090#line 400
6091 baud = 9600U;
6092 } else {
6093 switch_break: ;
6094 }
6095 }
6096 }
6097 ldv_27869: ;
6098 {
6099#line 403
6100 __cil_tmp18 = & xbof;
6101#line 403
6102 __cil_tmp19 = *__cil_tmp18;
6103#line 403
6104 if (__cil_tmp19 == -1) {
6105 {
6106#line 404
6107 __cil_tmp20 = (int )ir_add_bof;
6108#line 404
6109 __cil_tmp21 = (u8 )__cil_tmp20;
6110#line 404
6111 ir_xbof = ir_xbof_change(__cil_tmp21);
6112 }
6113 } else {
6114 {
6115#line 406
6116 __cil_tmp22 = & xbof;
6117#line 406
6118 __cil_tmp23 = *__cil_tmp22;
6119#line 406
6120 __cil_tmp24 = (u8 )__cil_tmp23;
6121#line 406
6122 __cil_tmp25 = (int )__cil_tmp24;
6123#line 406
6124 __cil_tmp26 = (u8 )__cil_tmp25;
6125#line 406
6126 ir_xbof = ir_xbof_change(__cil_tmp26);
6127 }
6128 }
6129 }
6130 {
6131#line 409
6132 __cil_tmp27 = (unsigned long )tty;
6133#line 409
6134 __cil_tmp28 = __cil_tmp27 + 456;
6135#line 409
6136 __cil_tmp29 = *((struct ktermios **)__cil_tmp28);
6137#line 409
6138 tty_termios_copy_hw(__cil_tmp29, old_termios);
6139#line 410
6140 tty_encode_baud_rate(tty, baud, baud);
6141#line 415
6142 urb = ldv_usb_alloc_urb_19(0, 208U);
6143 }
6144 {
6145#line 416
6146 __cil_tmp30 = (struct urb *)0;
6147#line 416
6148 __cil_tmp31 = (unsigned long )__cil_tmp30;
6149#line 416
6150 __cil_tmp32 = (unsigned long )urb;
6151#line 416
6152 if (__cil_tmp32 == __cil_tmp31) {
6153 {
6154#line 417
6155 __cil_tmp33 = (unsigned long )port;
6156#line 417
6157 __cil_tmp34 = __cil_tmp33 + 1240;
6158#line 417
6159 __cil_tmp35 = (struct device *)__cil_tmp34;
6160#line 417
6161 __cil_tmp36 = (struct device const *)__cil_tmp35;
6162#line 417
6163 dev_err(__cil_tmp36, "%s - no more urbs\n", "ir_set_termios");
6164 }
6165#line 418
6166 return;
6167 } else {
6168
6169 }
6170 }
6171 {
6172#line 420
6173 tmp = kmalloc(1UL, 208U);
6174#line 420
6175 transfer_buffer = (unsigned char *)tmp;
6176 }
6177 {
6178#line 421
6179 __cil_tmp37 = (unsigned char *)0;
6180#line 421
6181 __cil_tmp38 = (unsigned long )__cil_tmp37;
6182#line 421
6183 __cil_tmp39 = (unsigned long )transfer_buffer;
6184#line 421
6185 if (__cil_tmp39 == __cil_tmp38) {
6186 {
6187#line 422
6188 __cil_tmp40 = (unsigned long )port;
6189#line 422
6190 __cil_tmp41 = __cil_tmp40 + 1240;
6191#line 422
6192 __cil_tmp42 = (struct device *)__cil_tmp41;
6193#line 422
6194 __cil_tmp43 = (struct device const *)__cil_tmp42;
6195#line 422
6196 dev_err(__cil_tmp43, "%s - out of memory\n", "ir_set_termios");
6197 }
6198#line 423
6199 goto err_buf;
6200 } else {
6201
6202 }
6203 }
6204 {
6205#line 426
6206 __cil_tmp44 = (signed char )ir_xbof;
6207#line 426
6208 __cil_tmp45 = (int )__cil_tmp44;
6209#line 426
6210 __cil_tmp46 = (signed char )ir_baud___0;
6211#line 426
6212 __cil_tmp47 = (int )__cil_tmp46;
6213#line 426
6214 __cil_tmp48 = __cil_tmp47 | __cil_tmp45;
6215#line 426
6216 *transfer_buffer = (unsigned char )__cil_tmp48;
6217#line 428
6218 __cil_tmp49 = *((struct usb_serial **)port);
6219#line 428
6220 __cil_tmp50 = *((struct usb_device **)__cil_tmp49);
6221#line 428
6222 __cil_tmp51 = (unsigned long )port;
6223#line 428
6224 __cil_tmp52 = __cil_tmp51 + 1040;
6225#line 428
6226 __cil_tmp53 = *((__u8 *)__cil_tmp52);
6227#line 428
6228 __cil_tmp54 = (unsigned int )__cil_tmp53;
6229#line 428
6230 tmp___0 = __create_pipe(__cil_tmp50, __cil_tmp54);
6231#line 428
6232 __cil_tmp55 = *((struct usb_serial **)port);
6233#line 428
6234 __cil_tmp56 = *((struct usb_device **)__cil_tmp55);
6235#line 428
6236 __cil_tmp57 = tmp___0 | 3221225472U;
6237#line 428
6238 __cil_tmp58 = (void *)transfer_buffer;
6239#line 428
6240 __cil_tmp59 = (void *)port;
6241#line 428
6242 usb_fill_bulk_urb(urb, __cil_tmp56, __cil_tmp57, __cil_tmp58, 1, & ir_set_termios_callback,
6243 __cil_tmp59);
6244#line 438
6245 __cil_tmp60 = (unsigned long )urb;
6246#line 438
6247 __cil_tmp61 = __cil_tmp60 + 100;
6248#line 438
6249 *((unsigned int *)__cil_tmp61) = 64U;
6250#line 440
6251 result = ldv_usb_submit_urb_20(urb, 208U);
6252 }
6253#line 441
6254 if (result != 0) {
6255 {
6256#line 442
6257 __cil_tmp62 = (unsigned long )port;
6258#line 442
6259 __cil_tmp63 = __cil_tmp62 + 1240;
6260#line 442
6261 __cil_tmp64 = (struct device *)__cil_tmp63;
6262#line 442
6263 __cil_tmp65 = (struct device const *)__cil_tmp64;
6264#line 442
6265 dev_err(__cil_tmp65, "%s - failed to submit urb: %d\n", "ir_set_termios", result);
6266 }
6267#line 444
6268 goto err_subm;
6269 } else {
6270
6271 }
6272 {
6273#line 447
6274 usb_free_urb(urb);
6275 }
6276#line 449
6277 return;
6278 err_subm:
6279 {
6280#line 451
6281 __cil_tmp66 = (void const *)transfer_buffer;
6282#line 451
6283 kfree(__cil_tmp66);
6284 }
6285 err_buf:
6286 {
6287#line 453
6288 usb_free_urb(urb);
6289 }
6290#line 454
6291 return;
6292}
6293}
6294#line 456 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6295static int ir_init(void)
6296{ int retval ;
6297 int *__cil_tmp2 ;
6298 int __cil_tmp3 ;
6299 unsigned long __cil_tmp4 ;
6300 int *__cil_tmp5 ;
6301 int __cil_tmp6 ;
6302 unsigned long __cil_tmp7 ;
6303 int *__cil_tmp8 ;
6304 int __cil_tmp9 ;
6305 struct usb_serial_driver * const *__cil_tmp10 ;
6306
6307 {
6308 {
6309#line 460
6310 __cil_tmp2 = & buffer_size;
6311#line 460
6312 __cil_tmp3 = *__cil_tmp2;
6313#line 460
6314 if (__cil_tmp3 != 0) {
6315#line 461
6316 __cil_tmp4 = (unsigned long )(& ir_device) + 248;
6317#line 461
6318 __cil_tmp5 = & buffer_size;
6319#line 461
6320 __cil_tmp6 = *__cil_tmp5;
6321#line 461
6322 *((size_t *)__cil_tmp4) = (size_t )__cil_tmp6;
6323#line 462
6324 __cil_tmp7 = (unsigned long )(& ir_device) + 256;
6325#line 462
6326 __cil_tmp8 = & buffer_size;
6327#line 462
6328 __cil_tmp9 = *__cil_tmp8;
6329#line 462
6330 *((size_t *)__cil_tmp7) = (size_t )__cil_tmp9;
6331 } else {
6332
6333 }
6334 }
6335 {
6336#line 465
6337 __cil_tmp10 = (struct usb_serial_driver * const *)(& serial_drivers);
6338#line 465
6339 retval = usb_serial_register_drivers(& ir_driver, __cil_tmp10);
6340 }
6341#line 466
6342 if (retval == 0) {
6343 {
6344#line 467
6345 printk("<6>ir_usb: v0.5:USB IR Dongle driver\n");
6346 }
6347 } else {
6348
6349 }
6350#line 469
6351 return (retval);
6352}
6353}
6354#line 472 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6355static void ir_exit(void)
6356{ struct usb_serial_driver * const *__cil_tmp1 ;
6357
6358 {
6359 {
6360#line 474
6361 __cil_tmp1 = (struct usb_serial_driver * const *)(& serial_drivers);
6362#line 474
6363 usb_serial_deregister_drivers(& ir_driver, __cil_tmp1);
6364 }
6365#line 475
6366 return;
6367}
6368}
6369#line 509
6370extern void ldv_check_final_state(void) ;
6371#line 512
6372extern void ldv_check_return_value(int ) ;
6373#line 515
6374extern void ldv_initialize(void) ;
6375#line 518
6376extern int __VERIFIER_nondet_int(void) ;
6377#line 521 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6378int LDV_IN_INTERRUPT ;
6379#line 524 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6380void main(void)
6381{ struct tty_struct *var_group1 ;
6382 struct usb_serial_port *var_group2 ;
6383 struct ktermios *var_ir_set_termios_8_p2 ;
6384 struct usb_serial *var_group3 ;
6385 int res_ir_open_4 ;
6386 void *var_ir_prepare_write_buffer_5_p1 ;
6387 size_t var_ir_prepare_write_buffer_5_p2 ;
6388 struct urb *var_group4 ;
6389 int ldv_s_ir_device_usb_serial_driver ;
6390 int tmp ;
6391 int tmp___0 ;
6392 int tmp___1 ;
6393
6394 {
6395 {
6396#line 605
6397 ldv_s_ir_device_usb_serial_driver = 0;
6398#line 584
6399 LDV_IN_INTERRUPT = 1;
6400#line 593
6401 ldv_initialize();
6402#line 603
6403 tmp = ir_init();
6404 }
6405#line 603
6406 if (tmp != 0) {
6407#line 604
6408 goto ldv_final;
6409 } else {
6410
6411 }
6412#line 609
6413 goto ldv_27968;
6414 ldv_27967:
6415 {
6416#line 613
6417 tmp___0 = __VERIFIER_nondet_int();
6418 }
6419#line 615
6420 if (tmp___0 == 0) {
6421#line 615
6422 goto case_0;
6423 } else
6424#line 638
6425 if (tmp___0 == 1) {
6426#line 638
6427 goto case_1;
6428 } else
6429#line 658
6430 if (tmp___0 == 2) {
6431#line 658
6432 goto case_2;
6433 } else
6434#line 678
6435 if (tmp___0 == 3) {
6436#line 678
6437 goto case_3;
6438 } else
6439#line 698
6440 if (tmp___0 == 4) {
6441#line 698
6442 goto case_4;
6443 } else {
6444 {
6445#line 718
6446 goto switch_default;
6447#line 613
6448 if (0) {
6449 case_0: ;
6450#line 618
6451 if (ldv_s_ir_device_usb_serial_driver == 0) {
6452 {
6453#line 627
6454 res_ir_open_4 = ir_open(var_group1, var_group2);
6455#line 628
6456 ldv_check_return_value(res_ir_open_4);
6457 }
6458#line 629
6459 if (res_ir_open_4 != 0) {
6460#line 630
6461 goto ldv_module_exit;
6462 } else {
6463
6464 }
6465#line 631
6466 ldv_s_ir_device_usb_serial_driver = 0;
6467 } else {
6468
6469 }
6470#line 637
6471 goto ldv_27961;
6472 case_1:
6473 {
6474#line 650
6475 ir_set_termios(var_group1, var_group2, var_ir_set_termios_8_p2);
6476 }
6477#line 657
6478 goto ldv_27961;
6479 case_2:
6480 {
6481#line 670
6482 ir_startup(var_group3);
6483 }
6484#line 677
6485 goto ldv_27961;
6486 case_3:
6487 {
6488#line 690
6489 ir_prepare_write_buffer(var_group2, var_ir_prepare_write_buffer_5_p1, var_ir_prepare_write_buffer_5_p2);
6490 }
6491#line 697
6492 goto ldv_27961;
6493 case_4:
6494 {
6495#line 710
6496 ir_process_read_urb(var_group4);
6497 }
6498#line 717
6499 goto ldv_27961;
6500 switch_default: ;
6501#line 718
6502 goto ldv_27961;
6503 } else {
6504 switch_break: ;
6505 }
6506 }
6507 }
6508 ldv_27961: ;
6509 ldv_27968:
6510 {
6511#line 609
6512 tmp___1 = __VERIFIER_nondet_int();
6513 }
6514#line 609
6515 if (tmp___1 != 0) {
6516#line 611
6517 goto ldv_27967;
6518 } else
6519#line 609
6520 if (ldv_s_ir_device_usb_serial_driver != 0) {
6521#line 611
6522 goto ldv_27967;
6523 } else {
6524#line 613
6525 goto ldv_27969;
6526 }
6527 ldv_27969: ;
6528 ldv_module_exit:
6529 {
6530#line 734
6531 ir_exit();
6532 }
6533 ldv_final:
6534 {
6535#line 737
6536 ldv_check_final_state();
6537 }
6538#line 740
6539 return;
6540}
6541}
6542#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
6543void ldv_blast_assert(void)
6544{
6545
6546 {
6547 ERROR: ;
6548#line 6
6549 goto ERROR;
6550}
6551}
6552#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
6553extern int __VERIFIER_nondet_int(void) ;
6554#line 761 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6555int ldv_spin = 0;
6556#line 765 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6557void ldv_check_alloc_flags(gfp_t flags )
6558{
6559
6560 {
6561#line 768
6562 if (ldv_spin != 0) {
6563#line 768
6564 if (flags != 32U) {
6565 {
6566#line 768
6567 ldv_blast_assert();
6568 }
6569 } else {
6570
6571 }
6572 } else {
6573
6574 }
6575#line 771
6576 return;
6577}
6578}
6579#line 771
6580extern struct page *ldv_some_page(void) ;
6581#line 774 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6582struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
6583{ struct page *tmp ;
6584
6585 {
6586#line 777
6587 if (ldv_spin != 0) {
6588#line 777
6589 if (flags != 32U) {
6590 {
6591#line 777
6592 ldv_blast_assert();
6593 }
6594 } else {
6595
6596 }
6597 } else {
6598
6599 }
6600 {
6601#line 779
6602 tmp = ldv_some_page();
6603 }
6604#line 779
6605 return (tmp);
6606}
6607}
6608#line 783 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6609void ldv_check_alloc_nonatomic(void)
6610{
6611
6612 {
6613#line 786
6614 if (ldv_spin != 0) {
6615 {
6616#line 786
6617 ldv_blast_assert();
6618 }
6619 } else {
6620
6621 }
6622#line 789
6623 return;
6624}
6625}
6626#line 790 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6627void ldv_spin_lock(void)
6628{
6629
6630 {
6631#line 793
6632 ldv_spin = 1;
6633#line 794
6634 return;
6635}
6636}
6637#line 797 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6638void ldv_spin_unlock(void)
6639{
6640
6641 {
6642#line 800
6643 ldv_spin = 0;
6644#line 801
6645 return;
6646}
6647}
6648#line 804 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6649int ldv_spin_trylock(void)
6650{ int is_lock ;
6651
6652 {
6653 {
6654#line 809
6655 is_lock = __VERIFIER_nondet_int();
6656 }
6657#line 811
6658 if (is_lock != 0) {
6659#line 814
6660 return (0);
6661 } else {
6662#line 819
6663 ldv_spin = 1;
6664#line 821
6665 return (1);
6666 }
6667}
6668}
6669#line 897 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6670__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags )
6671{
6672
6673 {
6674 {
6675#line 903
6676 ldv_spin_unlock();
6677#line 905
6678 ldv_spin_unlock_irqrestore_8(lock, flags);
6679 }
6680#line 906
6681 return;
6682}
6683}
6684#line 943 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6685__inline static void *kmalloc(size_t size , gfp_t flags )
6686{
6687
6688 {
6689 {
6690#line 949
6691 ldv_check_alloc_flags(flags);
6692#line 951
6693 ldv_kmalloc_12(size, flags);
6694 }
6695#line 952
6696 return ((void *)0);
6697}
6698}
6699#line 988 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6700void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
6701{
6702
6703 {
6704 {
6705#line 994
6706 ldv_check_alloc_flags(ldv_func_arg2);
6707#line 996
6708 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
6709 }
6710#line 997
6711 return ((void *)0);
6712}
6713}
6714#line 999 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6715__inline static void *kzalloc(size_t size , gfp_t flags )
6716{ void *tmp ;
6717
6718 {
6719 {
6720#line 1005
6721 ldv_check_alloc_flags(flags);
6722#line 1006
6723 tmp = __VERIFIER_nondet_pointer();
6724 }
6725#line 1006
6726 return (tmp);
6727}
6728}
6729#line 1020 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6730struct urb *ldv_usb_alloc_urb_19(int ldv_func_arg1 , gfp_t ldv_func_arg2 )
6731{ struct urb *tmp ;
6732
6733 {
6734 {
6735#line 1026
6736 ldv_check_alloc_flags(ldv_func_arg2);
6737#line 1028
6738 tmp = usb_alloc_urb(ldv_func_arg1, ldv_func_arg2);
6739 }
6740#line 1028
6741 return (tmp);
6742}
6743}
6744#line 1031 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1810/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/ir-usb.c.p"
6745int ldv_usb_submit_urb_20(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 )
6746{ int tmp ;
6747
6748 {
6749 {
6750#line 1037
6751 ldv_check_alloc_flags(ldv_func_arg2);
6752#line 1039
6753 tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
6754 }
6755#line 1039
6756 return (tmp);
6757}
6758}