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