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