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