1
2
3
4#line 20 "include/asm-generic/int-ll64.h"
5typedef unsigned char __u8;
6#line 23 "include/asm-generic/int-ll64.h"
7typedef unsigned short __u16;
8#line 25 "include/asm-generic/int-ll64.h"
9typedef int __s32;
10#line 26 "include/asm-generic/int-ll64.h"
11typedef unsigned int __u32;
12#line 30 "include/asm-generic/int-ll64.h"
13typedef unsigned long long __u64;
14#line 43 "include/asm-generic/int-ll64.h"
15typedef unsigned char u8;
16#line 45 "include/asm-generic/int-ll64.h"
17typedef short s16;
18#line 46 "include/asm-generic/int-ll64.h"
19typedef unsigned short u16;
20#line 48 "include/asm-generic/int-ll64.h"
21typedef int s32;
22#line 49 "include/asm-generic/int-ll64.h"
23typedef unsigned int u32;
24#line 51 "include/asm-generic/int-ll64.h"
25typedef long long s64;
26#line 52 "include/asm-generic/int-ll64.h"
27typedef unsigned long long u64;
28#line 14 "include/asm-generic/posix_types.h"
29typedef long __kernel_long_t;
30#line 15 "include/asm-generic/posix_types.h"
31typedef unsigned long __kernel_ulong_t;
32#line 31 "include/asm-generic/posix_types.h"
33typedef int __kernel_pid_t;
34#line 52 "include/asm-generic/posix_types.h"
35typedef unsigned int __kernel_uid32_t;
36#line 53 "include/asm-generic/posix_types.h"
37typedef unsigned int __kernel_gid32_t;
38#line 75 "include/asm-generic/posix_types.h"
39typedef __kernel_ulong_t __kernel_size_t;
40#line 76 "include/asm-generic/posix_types.h"
41typedef __kernel_long_t __kernel_ssize_t;
42#line 91 "include/asm-generic/posix_types.h"
43typedef long long __kernel_loff_t;
44#line 92 "include/asm-generic/posix_types.h"
45typedef __kernel_long_t __kernel_time_t;
46#line 93 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_clock_t;
48#line 94 "include/asm-generic/posix_types.h"
49typedef int __kernel_timer_t;
50#line 95 "include/asm-generic/posix_types.h"
51typedef int __kernel_clockid_t;
52#line 21 "include/linux/types.h"
53typedef __u32 __kernel_dev_t;
54#line 24 "include/linux/types.h"
55typedef __kernel_dev_t dev_t;
56#line 27 "include/linux/types.h"
57typedef unsigned short umode_t;
58#line 30 "include/linux/types.h"
59typedef __kernel_pid_t pid_t;
60#line 35 "include/linux/types.h"
61typedef __kernel_clockid_t clockid_t;
62#line 38 "include/linux/types.h"
63typedef _Bool bool;
64#line 40 "include/linux/types.h"
65typedef __kernel_uid32_t uid_t;
66#line 41 "include/linux/types.h"
67typedef __kernel_gid32_t gid_t;
68#line 54 "include/linux/types.h"
69typedef __kernel_loff_t loff_t;
70#line 63 "include/linux/types.h"
71typedef __kernel_size_t size_t;
72#line 68 "include/linux/types.h"
73typedef __kernel_ssize_t ssize_t;
74#line 78 "include/linux/types.h"
75typedef __kernel_time_t time_t;
76#line 111 "include/linux/types.h"
77typedef __s32 int32_t;
78#line 117 "include/linux/types.h"
79typedef __u32 uint32_t;
80#line 202 "include/linux/types.h"
81typedef unsigned int gfp_t;
82#line 221 "include/linux/types.h"
83struct __anonstruct_atomic_t_6 {
84 int counter ;
85};
86#line 221 "include/linux/types.h"
87typedef struct __anonstruct_atomic_t_6 atomic_t;
88#line 226 "include/linux/types.h"
89struct __anonstruct_atomic64_t_7 {
90 long counter ;
91};
92#line 226 "include/linux/types.h"
93typedef struct __anonstruct_atomic64_t_7 atomic64_t;
94#line 227 "include/linux/types.h"
95struct list_head {
96 struct list_head *next ;
97 struct list_head *prev ;
98};
99#line 232
100struct hlist_node;
101#line 232 "include/linux/types.h"
102struct hlist_head {
103 struct hlist_node *first ;
104};
105#line 236 "include/linux/types.h"
106struct hlist_node {
107 struct hlist_node *next ;
108 struct hlist_node **pprev ;
109};
110#line 247 "include/linux/types.h"
111struct rcu_head {
112 struct rcu_head *next ;
113 void (*func)(struct rcu_head * ) ;
114};
115#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
116struct module;
117#line 55
118struct module;
119#line 146 "include/linux/init.h"
120typedef void (*ctor_fn_t)(void);
121#line 46 "include/linux/dynamic_debug.h"
122struct device;
123#line 46
124struct device;
125#line 57
126struct completion;
127#line 57
128struct completion;
129#line 58
130struct pt_regs;
131#line 58
132struct pt_regs;
133#line 348 "include/linux/kernel.h"
134struct pid;
135#line 348
136struct pid;
137#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
138struct timespec;
139#line 112
140struct timespec;
141#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
142struct page;
143#line 58
144struct page;
145#line 26 "include/asm-generic/getorder.h"
146struct task_struct;
147#line 26
148struct task_struct;
149#line 28
150struct mm_struct;
151#line 28
152struct mm_struct;
153#line 268 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/segment.h"
154struct pt_regs {
155 unsigned long r15 ;
156 unsigned long r14 ;
157 unsigned long r13 ;
158 unsigned long r12 ;
159 unsigned long bp ;
160 unsigned long bx ;
161 unsigned long r11 ;
162 unsigned long r10 ;
163 unsigned long r9 ;
164 unsigned long r8 ;
165 unsigned long ax ;
166 unsigned long cx ;
167 unsigned long dx ;
168 unsigned long si ;
169 unsigned long di ;
170 unsigned long orig_ax ;
171 unsigned long ip ;
172 unsigned long cs ;
173 unsigned long flags ;
174 unsigned long sp ;
175 unsigned long ss ;
176};
177#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
178struct __anonstruct_ldv_2180_13 {
179 unsigned int a ;
180 unsigned int b ;
181};
182#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
183struct __anonstruct_ldv_2195_14 {
184 u16 limit0 ;
185 u16 base0 ;
186 unsigned char base1 ;
187 unsigned char type : 4 ;
188 unsigned char s : 1 ;
189 unsigned char dpl : 2 ;
190 unsigned char p : 1 ;
191 unsigned char limit : 4 ;
192 unsigned char avl : 1 ;
193 unsigned char l : 1 ;
194 unsigned char d : 1 ;
195 unsigned char g : 1 ;
196 unsigned char base2 ;
197};
198#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
199union __anonunion_ldv_2196_12 {
200 struct __anonstruct_ldv_2180_13 ldv_2180 ;
201 struct __anonstruct_ldv_2195_14 ldv_2195 ;
202};
203#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
204struct desc_struct {
205 union __anonunion_ldv_2196_12 ldv_2196 ;
206};
207#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
208typedef unsigned long pgdval_t;
209#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
210typedef unsigned long pgprotval_t;
211#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
212struct pgprot {
213 pgprotval_t pgprot ;
214};
215#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
216typedef struct pgprot pgprot_t;
217#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
218struct __anonstruct_pgd_t_16 {
219 pgdval_t pgd ;
220};
221#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
222typedef struct __anonstruct_pgd_t_16 pgd_t;
223#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
224typedef struct page *pgtable_t;
225#line 290
226struct file;
227#line 290
228struct file;
229#line 337
230struct thread_struct;
231#line 337
232struct thread_struct;
233#line 339
234struct cpumask;
235#line 339
236struct cpumask;
237#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
238struct arch_spinlock;
239#line 327
240struct arch_spinlock;
241#line 300 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
242struct kernel_vm86_regs {
243 struct pt_regs pt ;
244 unsigned short es ;
245 unsigned short __esh ;
246 unsigned short ds ;
247 unsigned short __dsh ;
248 unsigned short fs ;
249 unsigned short __fsh ;
250 unsigned short gs ;
251 unsigned short __gsh ;
252};
253#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
254union __anonunion_ldv_2824_19 {
255 struct pt_regs *regs ;
256 struct kernel_vm86_regs *vm86 ;
257};
258#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
259struct math_emu_info {
260 long ___orig_eip ;
261 union __anonunion_ldv_2824_19 ldv_2824 ;
262};
263#line 306 "include/linux/bitmap.h"
264struct bug_entry {
265 int bug_addr_disp ;
266 int file_disp ;
267 unsigned short line ;
268 unsigned short flags ;
269};
270#line 89 "include/linux/bug.h"
271struct cpumask {
272 unsigned long bits[64U] ;
273};
274#line 14 "include/linux/cpumask.h"
275typedef struct cpumask cpumask_t;
276#line 637 "include/linux/cpumask.h"
277typedef struct cpumask *cpumask_var_t;
278#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
279struct static_key;
280#line 234
281struct static_key;
282#line 287 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
283struct i387_fsave_struct {
284 u32 cwd ;
285 u32 swd ;
286 u32 twd ;
287 u32 fip ;
288 u32 fcs ;
289 u32 foo ;
290 u32 fos ;
291 u32 st_space[20U] ;
292 u32 status ;
293};
294#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
295struct __anonstruct_ldv_5180_24 {
296 u64 rip ;
297 u64 rdp ;
298};
299#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
300struct __anonstruct_ldv_5186_25 {
301 u32 fip ;
302 u32 fcs ;
303 u32 foo ;
304 u32 fos ;
305};
306#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
307union __anonunion_ldv_5187_23 {
308 struct __anonstruct_ldv_5180_24 ldv_5180 ;
309 struct __anonstruct_ldv_5186_25 ldv_5186 ;
310};
311#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
312union __anonunion_ldv_5196_26 {
313 u32 padding1[12U] ;
314 u32 sw_reserved[12U] ;
315};
316#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
317struct i387_fxsave_struct {
318 u16 cwd ;
319 u16 swd ;
320 u16 twd ;
321 u16 fop ;
322 union __anonunion_ldv_5187_23 ldv_5187 ;
323 u32 mxcsr ;
324 u32 mxcsr_mask ;
325 u32 st_space[32U] ;
326 u32 xmm_space[64U] ;
327 u32 padding[12U] ;
328 union __anonunion_ldv_5196_26 ldv_5196 ;
329};
330#line 339 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
331struct i387_soft_struct {
332 u32 cwd ;
333 u32 swd ;
334 u32 twd ;
335 u32 fip ;
336 u32 fcs ;
337 u32 foo ;
338 u32 fos ;
339 u32 st_space[20U] ;
340 u8 ftop ;
341 u8 changed ;
342 u8 lookahead ;
343 u8 no_update ;
344 u8 rm ;
345 u8 alimit ;
346 struct math_emu_info *info ;
347 u32 entry_eip ;
348};
349#line 360 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
350struct ymmh_struct {
351 u32 ymmh_space[64U] ;
352};
353#line 365 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
354struct xsave_hdr_struct {
355 u64 xstate_bv ;
356 u64 reserved1[2U] ;
357 u64 reserved2[5U] ;
358};
359#line 371 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
360struct xsave_struct {
361 struct i387_fxsave_struct i387 ;
362 struct xsave_hdr_struct xsave_hdr ;
363 struct ymmh_struct ymmh ;
364};
365#line 377 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
366union thread_xstate {
367 struct i387_fsave_struct fsave ;
368 struct i387_fxsave_struct fxsave ;
369 struct i387_soft_struct soft ;
370 struct xsave_struct xsave ;
371};
372#line 385 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
373struct fpu {
374 unsigned int last_cpu ;
375 unsigned int has_fpu ;
376 union thread_xstate *state ;
377};
378#line 433
379struct kmem_cache;
380#line 434
381struct perf_event;
382#line 434
383struct perf_event;
384#line 435 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
385struct thread_struct {
386 struct desc_struct tls_array[3U] ;
387 unsigned long sp0 ;
388 unsigned long sp ;
389 unsigned long usersp ;
390 unsigned short es ;
391 unsigned short ds ;
392 unsigned short fsindex ;
393 unsigned short gsindex ;
394 unsigned long fs ;
395 unsigned long gs ;
396 struct perf_event *ptrace_bps[4U] ;
397 unsigned long debugreg6 ;
398 unsigned long ptrace_dr7 ;
399 unsigned long cr2 ;
400 unsigned long trap_nr ;
401 unsigned long error_code ;
402 struct fpu fpu ;
403 unsigned long *io_bitmap_ptr ;
404 unsigned long iopl ;
405 unsigned int io_bitmap_max ;
406};
407#line 23 "include/asm-generic/atomic-long.h"
408typedef atomic64_t atomic_long_t;
409#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
410typedef u16 __ticket_t;
411#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
412typedef u32 __ticketpair_t;
413#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
414struct __raw_tickets {
415 __ticket_t head ;
416 __ticket_t tail ;
417};
418#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
419union __anonunion_ldv_5907_29 {
420 __ticketpair_t head_tail ;
421 struct __raw_tickets tickets ;
422};
423#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
424struct arch_spinlock {
425 union __anonunion_ldv_5907_29 ldv_5907 ;
426};
427#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
428typedef struct arch_spinlock arch_spinlock_t;
429#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
430struct lockdep_map;
431#line 34
432struct lockdep_map;
433#line 55 "include/linux/debug_locks.h"
434struct stack_trace {
435 unsigned int nr_entries ;
436 unsigned int max_entries ;
437 unsigned long *entries ;
438 int skip ;
439};
440#line 26 "include/linux/stacktrace.h"
441struct lockdep_subclass_key {
442 char __one_byte ;
443};
444#line 53 "include/linux/lockdep.h"
445struct lock_class_key {
446 struct lockdep_subclass_key subkeys[8U] ;
447};
448#line 59 "include/linux/lockdep.h"
449struct lock_class {
450 struct list_head hash_entry ;
451 struct list_head lock_entry ;
452 struct lockdep_subclass_key *key ;
453 unsigned int subclass ;
454 unsigned int dep_gen_id ;
455 unsigned long usage_mask ;
456 struct stack_trace usage_traces[13U] ;
457 struct list_head locks_after ;
458 struct list_head locks_before ;
459 unsigned int version ;
460 unsigned long ops ;
461 char const *name ;
462 int name_version ;
463 unsigned long contention_point[4U] ;
464 unsigned long contending_point[4U] ;
465};
466#line 144 "include/linux/lockdep.h"
467struct lockdep_map {
468 struct lock_class_key *key ;
469 struct lock_class *class_cache[2U] ;
470 char const *name ;
471 int cpu ;
472 unsigned long ip ;
473};
474#line 187 "include/linux/lockdep.h"
475struct held_lock {
476 u64 prev_chain_key ;
477 unsigned long acquire_ip ;
478 struct lockdep_map *instance ;
479 struct lockdep_map *nest_lock ;
480 u64 waittime_stamp ;
481 u64 holdtime_stamp ;
482 unsigned short class_idx : 13 ;
483 unsigned char irq_context : 2 ;
484 unsigned char trylock : 1 ;
485 unsigned char read : 2 ;
486 unsigned char check : 2 ;
487 unsigned char hardirqs_off : 1 ;
488 unsigned short references : 11 ;
489};
490#line 556 "include/linux/lockdep.h"
491struct raw_spinlock {
492 arch_spinlock_t raw_lock ;
493 unsigned int magic ;
494 unsigned int owner_cpu ;
495 void *owner ;
496 struct lockdep_map dep_map ;
497};
498#line 32 "include/linux/spinlock_types.h"
499typedef struct raw_spinlock raw_spinlock_t;
500#line 33 "include/linux/spinlock_types.h"
501struct __anonstruct_ldv_6122_33 {
502 u8 __padding[24U] ;
503 struct lockdep_map dep_map ;
504};
505#line 33 "include/linux/spinlock_types.h"
506union __anonunion_ldv_6123_32 {
507 struct raw_spinlock rlock ;
508 struct __anonstruct_ldv_6122_33 ldv_6122 ;
509};
510#line 33 "include/linux/spinlock_types.h"
511struct spinlock {
512 union __anonunion_ldv_6123_32 ldv_6123 ;
513};
514#line 76 "include/linux/spinlock_types.h"
515typedef struct spinlock spinlock_t;
516#line 110 "include/linux/seqlock.h"
517struct seqcount {
518 unsigned int sequence ;
519};
520#line 121 "include/linux/seqlock.h"
521typedef struct seqcount seqcount_t;
522#line 254 "include/linux/seqlock.h"
523struct timespec {
524 __kernel_time_t tv_sec ;
525 long tv_nsec ;
526};
527#line 48 "include/linux/wait.h"
528struct __wait_queue_head {
529 spinlock_t lock ;
530 struct list_head task_list ;
531};
532#line 53 "include/linux/wait.h"
533typedef struct __wait_queue_head wait_queue_head_t;
534#line 98 "include/linux/nodemask.h"
535struct __anonstruct_nodemask_t_36 {
536 unsigned long bits[16U] ;
537};
538#line 98 "include/linux/nodemask.h"
539typedef struct __anonstruct_nodemask_t_36 nodemask_t;
540#line 670 "include/linux/mmzone.h"
541struct mutex {
542 atomic_t count ;
543 spinlock_t wait_lock ;
544 struct list_head wait_list ;
545 struct task_struct *owner ;
546 char const *name ;
547 void *magic ;
548 struct lockdep_map dep_map ;
549};
550#line 63 "include/linux/mutex.h"
551struct mutex_waiter {
552 struct list_head list ;
553 struct task_struct *task ;
554 void *magic ;
555};
556#line 171
557struct rw_semaphore;
558#line 171
559struct rw_semaphore;
560#line 172 "include/linux/mutex.h"
561struct rw_semaphore {
562 long count ;
563 raw_spinlock_t wait_lock ;
564 struct list_head wait_list ;
565 struct lockdep_map dep_map ;
566};
567#line 128 "include/linux/rwsem.h"
568struct completion {
569 unsigned int done ;
570 wait_queue_head_t wait ;
571};
572#line 312 "include/linux/jiffies.h"
573union ktime {
574 s64 tv64 ;
575};
576#line 59 "include/linux/ktime.h"
577typedef union ktime ktime_t;
578#line 341
579struct tvec_base;
580#line 341
581struct tvec_base;
582#line 342 "include/linux/ktime.h"
583struct timer_list {
584 struct list_head entry ;
585 unsigned long expires ;
586 struct tvec_base *base ;
587 void (*function)(unsigned long ) ;
588 unsigned long data ;
589 int slack ;
590 int start_pid ;
591 void *start_site ;
592 char start_comm[16U] ;
593 struct lockdep_map lockdep_map ;
594};
595#line 289 "include/linux/timer.h"
596struct hrtimer;
597#line 289
598struct hrtimer;
599#line 290
600enum hrtimer_restart;
601#line 302
602struct work_struct;
603#line 302
604struct work_struct;
605#line 45 "include/linux/workqueue.h"
606struct work_struct {
607 atomic_long_t data ;
608 struct list_head entry ;
609 void (*func)(struct work_struct * ) ;
610 struct lockdep_map lockdep_map ;
611};
612#line 46 "include/linux/pm.h"
613struct pm_message {
614 int event ;
615};
616#line 52 "include/linux/pm.h"
617typedef struct pm_message pm_message_t;
618#line 53 "include/linux/pm.h"
619struct dev_pm_ops {
620 int (*prepare)(struct device * ) ;
621 void (*complete)(struct device * ) ;
622 int (*suspend)(struct device * ) ;
623 int (*resume)(struct device * ) ;
624 int (*freeze)(struct device * ) ;
625 int (*thaw)(struct device * ) ;
626 int (*poweroff)(struct device * ) ;
627 int (*restore)(struct device * ) ;
628 int (*suspend_late)(struct device * ) ;
629 int (*resume_early)(struct device * ) ;
630 int (*freeze_late)(struct device * ) ;
631 int (*thaw_early)(struct device * ) ;
632 int (*poweroff_late)(struct device * ) ;
633 int (*restore_early)(struct device * ) ;
634 int (*suspend_noirq)(struct device * ) ;
635 int (*resume_noirq)(struct device * ) ;
636 int (*freeze_noirq)(struct device * ) ;
637 int (*thaw_noirq)(struct device * ) ;
638 int (*poweroff_noirq)(struct device * ) ;
639 int (*restore_noirq)(struct device * ) ;
640 int (*runtime_suspend)(struct device * ) ;
641 int (*runtime_resume)(struct device * ) ;
642 int (*runtime_idle)(struct device * ) ;
643};
644#line 289
645enum rpm_status {
646 RPM_ACTIVE = 0,
647 RPM_RESUMING = 1,
648 RPM_SUSPENDED = 2,
649 RPM_SUSPENDING = 3
650} ;
651#line 296
652enum rpm_request {
653 RPM_REQ_NONE = 0,
654 RPM_REQ_IDLE = 1,
655 RPM_REQ_SUSPEND = 2,
656 RPM_REQ_AUTOSUSPEND = 3,
657 RPM_REQ_RESUME = 4
658} ;
659#line 304
660struct wakeup_source;
661#line 304
662struct wakeup_source;
663#line 494 "include/linux/pm.h"
664struct pm_subsys_data {
665 spinlock_t lock ;
666 unsigned int refcount ;
667};
668#line 499
669struct dev_pm_qos_request;
670#line 499
671struct pm_qos_constraints;
672#line 499 "include/linux/pm.h"
673struct dev_pm_info {
674 pm_message_t power_state ;
675 unsigned char can_wakeup : 1 ;
676 unsigned char async_suspend : 1 ;
677 bool is_prepared ;
678 bool is_suspended ;
679 bool ignore_children ;
680 spinlock_t lock ;
681 struct list_head entry ;
682 struct completion completion ;
683 struct wakeup_source *wakeup ;
684 bool wakeup_path ;
685 struct timer_list suspend_timer ;
686 unsigned long timer_expires ;
687 struct work_struct work ;
688 wait_queue_head_t wait_queue ;
689 atomic_t usage_count ;
690 atomic_t child_count ;
691 unsigned char disable_depth : 3 ;
692 unsigned char idle_notification : 1 ;
693 unsigned char request_pending : 1 ;
694 unsigned char deferred_resume : 1 ;
695 unsigned char run_wake : 1 ;
696 unsigned char runtime_auto : 1 ;
697 unsigned char no_callbacks : 1 ;
698 unsigned char irq_safe : 1 ;
699 unsigned char use_autosuspend : 1 ;
700 unsigned char timer_autosuspends : 1 ;
701 enum rpm_request request ;
702 enum rpm_status runtime_status ;
703 int runtime_error ;
704 int autosuspend_delay ;
705 unsigned long last_busy ;
706 unsigned long active_jiffies ;
707 unsigned long suspended_jiffies ;
708 unsigned long accounting_timestamp ;
709 ktime_t suspend_time ;
710 s64 max_time_suspended_ns ;
711 struct dev_pm_qos_request *pq_req ;
712 struct pm_subsys_data *subsys_data ;
713 struct pm_qos_constraints *constraints ;
714};
715#line 558 "include/linux/pm.h"
716struct dev_pm_domain {
717 struct dev_pm_ops ops ;
718};
719#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
720struct __anonstruct_mm_context_t_101 {
721 void *ldt ;
722 int size ;
723 unsigned short ia32_compat ;
724 struct mutex lock ;
725 void *vdso ;
726};
727#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
728typedef struct __anonstruct_mm_context_t_101 mm_context_t;
729#line 18 "include/asm-generic/pci_iomap.h"
730struct vm_area_struct;
731#line 18
732struct vm_area_struct;
733#line 835 "include/linux/sysctl.h"
734struct rb_node {
735 unsigned long rb_parent_color ;
736 struct rb_node *rb_right ;
737 struct rb_node *rb_left ;
738};
739#line 108 "include/linux/rbtree.h"
740struct rb_root {
741 struct rb_node *rb_node ;
742};
743#line 176
744struct nsproxy;
745#line 176
746struct nsproxy;
747#line 37 "include/linux/kmod.h"
748struct cred;
749#line 37
750struct cred;
751#line 18 "include/linux/elf.h"
752typedef __u64 Elf64_Addr;
753#line 19 "include/linux/elf.h"
754typedef __u16 Elf64_Half;
755#line 23 "include/linux/elf.h"
756typedef __u32 Elf64_Word;
757#line 24 "include/linux/elf.h"
758typedef __u64 Elf64_Xword;
759#line 193 "include/linux/elf.h"
760struct elf64_sym {
761 Elf64_Word st_name ;
762 unsigned char st_info ;
763 unsigned char st_other ;
764 Elf64_Half st_shndx ;
765 Elf64_Addr st_value ;
766 Elf64_Xword st_size ;
767};
768#line 201 "include/linux/elf.h"
769typedef struct elf64_sym Elf64_Sym;
770#line 445
771struct sock;
772#line 445
773struct sock;
774#line 446
775struct kobject;
776#line 446
777struct kobject;
778#line 447
779enum kobj_ns_type {
780 KOBJ_NS_TYPE_NONE = 0,
781 KOBJ_NS_TYPE_NET = 1,
782 KOBJ_NS_TYPES = 2
783} ;
784#line 453 "include/linux/elf.h"
785struct kobj_ns_type_operations {
786 enum kobj_ns_type type ;
787 void *(*grab_current_ns)(void) ;
788 void const *(*netlink_ns)(struct sock * ) ;
789 void const *(*initial_ns)(void) ;
790 void (*drop_ns)(void * ) ;
791};
792#line 57 "include/linux/kobject_ns.h"
793struct attribute {
794 char const *name ;
795 umode_t mode ;
796 struct lock_class_key *key ;
797 struct lock_class_key skey ;
798};
799#line 33 "include/linux/sysfs.h"
800struct attribute_group {
801 char const *name ;
802 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
803 struct attribute **attrs ;
804};
805#line 62 "include/linux/sysfs.h"
806struct bin_attribute {
807 struct attribute attr ;
808 size_t size ;
809 void *private ;
810 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
811 loff_t , size_t ) ;
812 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
813 loff_t , size_t ) ;
814 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
815};
816#line 98 "include/linux/sysfs.h"
817struct sysfs_ops {
818 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
819 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
820 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
821};
822#line 117
823struct sysfs_dirent;
824#line 117
825struct sysfs_dirent;
826#line 182 "include/linux/sysfs.h"
827struct kref {
828 atomic_t refcount ;
829};
830#line 49 "include/linux/kobject.h"
831struct kset;
832#line 49
833struct kobj_type;
834#line 49 "include/linux/kobject.h"
835struct kobject {
836 char const *name ;
837 struct list_head entry ;
838 struct kobject *parent ;
839 struct kset *kset ;
840 struct kobj_type *ktype ;
841 struct sysfs_dirent *sd ;
842 struct kref kref ;
843 unsigned char state_initialized : 1 ;
844 unsigned char state_in_sysfs : 1 ;
845 unsigned char state_add_uevent_sent : 1 ;
846 unsigned char state_remove_uevent_sent : 1 ;
847 unsigned char uevent_suppress : 1 ;
848};
849#line 107 "include/linux/kobject.h"
850struct kobj_type {
851 void (*release)(struct kobject * ) ;
852 struct sysfs_ops const *sysfs_ops ;
853 struct attribute **default_attrs ;
854 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
855 void const *(*namespace)(struct kobject * ) ;
856};
857#line 115 "include/linux/kobject.h"
858struct kobj_uevent_env {
859 char *envp[32U] ;
860 int envp_idx ;
861 char buf[2048U] ;
862 int buflen ;
863};
864#line 122 "include/linux/kobject.h"
865struct kset_uevent_ops {
866 int (* const filter)(struct kset * , struct kobject * ) ;
867 char const *(* const name)(struct kset * , struct kobject * ) ;
868 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
869};
870#line 139 "include/linux/kobject.h"
871struct kset {
872 struct list_head list ;
873 spinlock_t list_lock ;
874 struct kobject kobj ;
875 struct kset_uevent_ops const *uevent_ops ;
876};
877#line 215
878struct kernel_param;
879#line 215
880struct kernel_param;
881#line 216 "include/linux/kobject.h"
882struct kernel_param_ops {
883 int (*set)(char const * , struct kernel_param const * ) ;
884 int (*get)(char * , struct kernel_param const * ) ;
885 void (*free)(void * ) ;
886};
887#line 49 "include/linux/moduleparam.h"
888struct kparam_string;
889#line 49
890struct kparam_array;
891#line 49 "include/linux/moduleparam.h"
892union __anonunion_ldv_13363_134 {
893 void *arg ;
894 struct kparam_string const *str ;
895 struct kparam_array const *arr ;
896};
897#line 49 "include/linux/moduleparam.h"
898struct kernel_param {
899 char const *name ;
900 struct kernel_param_ops const *ops ;
901 u16 perm ;
902 s16 level ;
903 union __anonunion_ldv_13363_134 ldv_13363 ;
904};
905#line 61 "include/linux/moduleparam.h"
906struct kparam_string {
907 unsigned int maxlen ;
908 char *string ;
909};
910#line 67 "include/linux/moduleparam.h"
911struct kparam_array {
912 unsigned int max ;
913 unsigned int elemsize ;
914 unsigned int *num ;
915 struct kernel_param_ops const *ops ;
916 void *elem ;
917};
918#line 458 "include/linux/moduleparam.h"
919struct static_key {
920 atomic_t enabled ;
921};
922#line 225 "include/linux/jump_label.h"
923struct tracepoint;
924#line 225
925struct tracepoint;
926#line 226 "include/linux/jump_label.h"
927struct tracepoint_func {
928 void *func ;
929 void *data ;
930};
931#line 29 "include/linux/tracepoint.h"
932struct tracepoint {
933 char const *name ;
934 struct static_key key ;
935 void (*regfunc)(void) ;
936 void (*unregfunc)(void) ;
937 struct tracepoint_func *funcs ;
938};
939#line 86 "include/linux/tracepoint.h"
940struct kernel_symbol {
941 unsigned long value ;
942 char const *name ;
943};
944#line 27 "include/linux/export.h"
945struct mod_arch_specific {
946
947};
948#line 34 "include/linux/module.h"
949struct module_param_attrs;
950#line 34 "include/linux/module.h"
951struct module_kobject {
952 struct kobject kobj ;
953 struct module *mod ;
954 struct kobject *drivers_dir ;
955 struct module_param_attrs *mp ;
956};
957#line 43 "include/linux/module.h"
958struct module_attribute {
959 struct attribute attr ;
960 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
961 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
962 size_t ) ;
963 void (*setup)(struct module * , char const * ) ;
964 int (*test)(struct module * ) ;
965 void (*free)(struct module * ) ;
966};
967#line 69
968struct exception_table_entry;
969#line 69
970struct exception_table_entry;
971#line 198
972enum module_state {
973 MODULE_STATE_LIVE = 0,
974 MODULE_STATE_COMING = 1,
975 MODULE_STATE_GOING = 2
976} ;
977#line 204 "include/linux/module.h"
978struct module_ref {
979 unsigned long incs ;
980 unsigned long decs ;
981};
982#line 219
983struct module_sect_attrs;
984#line 219
985struct module_notes_attrs;
986#line 219
987struct ftrace_event_call;
988#line 219 "include/linux/module.h"
989struct module {
990 enum module_state state ;
991 struct list_head list ;
992 char name[56U] ;
993 struct module_kobject mkobj ;
994 struct module_attribute *modinfo_attrs ;
995 char const *version ;
996 char const *srcversion ;
997 struct kobject *holders_dir ;
998 struct kernel_symbol const *syms ;
999 unsigned long const *crcs ;
1000 unsigned int num_syms ;
1001 struct kernel_param *kp ;
1002 unsigned int num_kp ;
1003 unsigned int num_gpl_syms ;
1004 struct kernel_symbol const *gpl_syms ;
1005 unsigned long const *gpl_crcs ;
1006 struct kernel_symbol const *unused_syms ;
1007 unsigned long const *unused_crcs ;
1008 unsigned int num_unused_syms ;
1009 unsigned int num_unused_gpl_syms ;
1010 struct kernel_symbol const *unused_gpl_syms ;
1011 unsigned long const *unused_gpl_crcs ;
1012 struct kernel_symbol const *gpl_future_syms ;
1013 unsigned long const *gpl_future_crcs ;
1014 unsigned int num_gpl_future_syms ;
1015 unsigned int num_exentries ;
1016 struct exception_table_entry *extable ;
1017 int (*init)(void) ;
1018 void *module_init ;
1019 void *module_core ;
1020 unsigned int init_size ;
1021 unsigned int core_size ;
1022 unsigned int init_text_size ;
1023 unsigned int core_text_size ;
1024 unsigned int init_ro_size ;
1025 unsigned int core_ro_size ;
1026 struct mod_arch_specific arch ;
1027 unsigned int taints ;
1028 unsigned int num_bugs ;
1029 struct list_head bug_list ;
1030 struct bug_entry *bug_table ;
1031 Elf64_Sym *symtab ;
1032 Elf64_Sym *core_symtab ;
1033 unsigned int num_symtab ;
1034 unsigned int core_num_syms ;
1035 char *strtab ;
1036 char *core_strtab ;
1037 struct module_sect_attrs *sect_attrs ;
1038 struct module_notes_attrs *notes_attrs ;
1039 char *args ;
1040 void *percpu ;
1041 unsigned int percpu_size ;
1042 unsigned int num_tracepoints ;
1043 struct tracepoint * const *tracepoints_ptrs ;
1044 unsigned int num_trace_bprintk_fmt ;
1045 char const **trace_bprintk_fmt_start ;
1046 struct ftrace_event_call **trace_events ;
1047 unsigned int num_trace_events ;
1048 struct list_head source_list ;
1049 struct list_head target_list ;
1050 struct task_struct *waiter ;
1051 void (*exit)(void) ;
1052 struct module_ref *refptr ;
1053 ctor_fn_t (**ctors)(void) ;
1054 unsigned int num_ctors ;
1055};
1056#line 88 "include/linux/kmemleak.h"
1057struct kmem_cache_cpu {
1058 void **freelist ;
1059 unsigned long tid ;
1060 struct page *page ;
1061 struct page *partial ;
1062 int node ;
1063 unsigned int stat[26U] ;
1064};
1065#line 55 "include/linux/slub_def.h"
1066struct kmem_cache_node {
1067 spinlock_t list_lock ;
1068 unsigned long nr_partial ;
1069 struct list_head partial ;
1070 atomic_long_t nr_slabs ;
1071 atomic_long_t total_objects ;
1072 struct list_head full ;
1073};
1074#line 66 "include/linux/slub_def.h"
1075struct kmem_cache_order_objects {
1076 unsigned long x ;
1077};
1078#line 76 "include/linux/slub_def.h"
1079struct kmem_cache {
1080 struct kmem_cache_cpu *cpu_slab ;
1081 unsigned long flags ;
1082 unsigned long min_partial ;
1083 int size ;
1084 int objsize ;
1085 int offset ;
1086 int cpu_partial ;
1087 struct kmem_cache_order_objects oo ;
1088 struct kmem_cache_order_objects max ;
1089 struct kmem_cache_order_objects min ;
1090 gfp_t allocflags ;
1091 int refcount ;
1092 void (*ctor)(void * ) ;
1093 int inuse ;
1094 int align ;
1095 int reserved ;
1096 char const *name ;
1097 struct list_head list ;
1098 struct kobject kobj ;
1099 int remote_node_defrag_ratio ;
1100 struct kmem_cache_node *node[1024U] ;
1101};
1102#line 12 "include/linux/mod_devicetable.h"
1103typedef unsigned long kernel_ulong_t;
1104#line 215 "include/linux/mod_devicetable.h"
1105struct of_device_id {
1106 char name[32U] ;
1107 char type[32U] ;
1108 char compatible[128U] ;
1109 void *data ;
1110};
1111#line 425 "include/linux/mod_devicetable.h"
1112struct i2c_device_id {
1113 char name[20U] ;
1114 kernel_ulong_t driver_data ;
1115};
1116#line 584
1117struct klist_node;
1118#line 584
1119struct klist_node;
1120#line 37 "include/linux/klist.h"
1121struct klist_node {
1122 void *n_klist ;
1123 struct list_head n_node ;
1124 struct kref n_ref ;
1125};
1126#line 67
1127struct dma_map_ops;
1128#line 67 "include/linux/klist.h"
1129struct dev_archdata {
1130 void *acpi_handle ;
1131 struct dma_map_ops *dma_ops ;
1132 void *iommu ;
1133};
1134#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1135struct device_private;
1136#line 17
1137struct device_private;
1138#line 18
1139struct device_driver;
1140#line 18
1141struct device_driver;
1142#line 19
1143struct driver_private;
1144#line 19
1145struct driver_private;
1146#line 20
1147struct class;
1148#line 20
1149struct class;
1150#line 21
1151struct subsys_private;
1152#line 21
1153struct subsys_private;
1154#line 22
1155struct bus_type;
1156#line 22
1157struct bus_type;
1158#line 23
1159struct device_node;
1160#line 23
1161struct device_node;
1162#line 24
1163struct iommu_ops;
1164#line 24
1165struct iommu_ops;
1166#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1167struct bus_attribute {
1168 struct attribute attr ;
1169 ssize_t (*show)(struct bus_type * , char * ) ;
1170 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
1171};
1172#line 51 "include/linux/device.h"
1173struct device_attribute;
1174#line 51
1175struct driver_attribute;
1176#line 51 "include/linux/device.h"
1177struct bus_type {
1178 char const *name ;
1179 char const *dev_name ;
1180 struct device *dev_root ;
1181 struct bus_attribute *bus_attrs ;
1182 struct device_attribute *dev_attrs ;
1183 struct driver_attribute *drv_attrs ;
1184 int (*match)(struct device * , struct device_driver * ) ;
1185 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1186 int (*probe)(struct device * ) ;
1187 int (*remove)(struct device * ) ;
1188 void (*shutdown)(struct device * ) ;
1189 int (*suspend)(struct device * , pm_message_t ) ;
1190 int (*resume)(struct device * ) ;
1191 struct dev_pm_ops const *pm ;
1192 struct iommu_ops *iommu_ops ;
1193 struct subsys_private *p ;
1194};
1195#line 125
1196struct device_type;
1197#line 182 "include/linux/device.h"
1198struct device_driver {
1199 char const *name ;
1200 struct bus_type *bus ;
1201 struct module *owner ;
1202 char const *mod_name ;
1203 bool suppress_bind_attrs ;
1204 struct of_device_id const *of_match_table ;
1205 int (*probe)(struct device * ) ;
1206 int (*remove)(struct device * ) ;
1207 void (*shutdown)(struct device * ) ;
1208 int (*suspend)(struct device * , pm_message_t ) ;
1209 int (*resume)(struct device * ) ;
1210 struct attribute_group const **groups ;
1211 struct dev_pm_ops const *pm ;
1212 struct driver_private *p ;
1213};
1214#line 245 "include/linux/device.h"
1215struct driver_attribute {
1216 struct attribute attr ;
1217 ssize_t (*show)(struct device_driver * , char * ) ;
1218 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
1219};
1220#line 299
1221struct class_attribute;
1222#line 299 "include/linux/device.h"
1223struct class {
1224 char const *name ;
1225 struct module *owner ;
1226 struct class_attribute *class_attrs ;
1227 struct device_attribute *dev_attrs ;
1228 struct bin_attribute *dev_bin_attrs ;
1229 struct kobject *dev_kobj ;
1230 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1231 char *(*devnode)(struct device * , umode_t * ) ;
1232 void (*class_release)(struct class * ) ;
1233 void (*dev_release)(struct device * ) ;
1234 int (*suspend)(struct device * , pm_message_t ) ;
1235 int (*resume)(struct device * ) ;
1236 struct kobj_ns_type_operations const *ns_type ;
1237 void const *(*namespace)(struct device * ) ;
1238 struct dev_pm_ops const *pm ;
1239 struct subsys_private *p ;
1240};
1241#line 394 "include/linux/device.h"
1242struct class_attribute {
1243 struct attribute attr ;
1244 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1245 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1246 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
1247};
1248#line 447 "include/linux/device.h"
1249struct device_type {
1250 char const *name ;
1251 struct attribute_group const **groups ;
1252 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1253 char *(*devnode)(struct device * , umode_t * ) ;
1254 void (*release)(struct device * ) ;
1255 struct dev_pm_ops const *pm ;
1256};
1257#line 474 "include/linux/device.h"
1258struct device_attribute {
1259 struct attribute attr ;
1260 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1261 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1262 size_t ) ;
1263};
1264#line 557 "include/linux/device.h"
1265struct device_dma_parameters {
1266 unsigned int max_segment_size ;
1267 unsigned long segment_boundary_mask ;
1268};
1269#line 567
1270struct dma_coherent_mem;
1271#line 567 "include/linux/device.h"
1272struct device {
1273 struct device *parent ;
1274 struct device_private *p ;
1275 struct kobject kobj ;
1276 char const *init_name ;
1277 struct device_type const *type ;
1278 struct mutex mutex ;
1279 struct bus_type *bus ;
1280 struct device_driver *driver ;
1281 void *platform_data ;
1282 struct dev_pm_info power ;
1283 struct dev_pm_domain *pm_domain ;
1284 int numa_node ;
1285 u64 *dma_mask ;
1286 u64 coherent_dma_mask ;
1287 struct device_dma_parameters *dma_parms ;
1288 struct list_head dma_pools ;
1289 struct dma_coherent_mem *dma_mem ;
1290 struct dev_archdata archdata ;
1291 struct device_node *of_node ;
1292 dev_t devt ;
1293 u32 id ;
1294 spinlock_t devres_lock ;
1295 struct list_head devres_head ;
1296 struct klist_node knode_class ;
1297 struct class *class ;
1298 struct attribute_group const **groups ;
1299 void (*release)(struct device * ) ;
1300};
1301#line 681 "include/linux/device.h"
1302struct wakeup_source {
1303 char const *name ;
1304 struct list_head entry ;
1305 spinlock_t lock ;
1306 struct timer_list timer ;
1307 unsigned long timer_expires ;
1308 ktime_t total_time ;
1309 ktime_t max_time ;
1310 ktime_t last_time ;
1311 unsigned long event_count ;
1312 unsigned long active_count ;
1313 unsigned long relax_count ;
1314 unsigned long hit_count ;
1315 unsigned char active : 1 ;
1316};
1317#line 93 "include/linux/capability.h"
1318struct kernel_cap_struct {
1319 __u32 cap[2U] ;
1320};
1321#line 96 "include/linux/capability.h"
1322typedef struct kernel_cap_struct kernel_cap_t;
1323#line 105
1324struct user_namespace;
1325#line 105
1326struct user_namespace;
1327#line 554
1328struct prio_tree_node;
1329#line 554 "include/linux/capability.h"
1330struct raw_prio_tree_node {
1331 struct prio_tree_node *left ;
1332 struct prio_tree_node *right ;
1333 struct prio_tree_node *parent ;
1334};
1335#line 19 "include/linux/prio_tree.h"
1336struct prio_tree_node {
1337 struct prio_tree_node *left ;
1338 struct prio_tree_node *right ;
1339 struct prio_tree_node *parent ;
1340 unsigned long start ;
1341 unsigned long last ;
1342};
1343#line 116
1344struct address_space;
1345#line 116
1346struct address_space;
1347#line 117 "include/linux/prio_tree.h"
1348union __anonunion_ldv_15299_138 {
1349 unsigned long index ;
1350 void *freelist ;
1351};
1352#line 117 "include/linux/prio_tree.h"
1353struct __anonstruct_ldv_15309_142 {
1354 unsigned short inuse ;
1355 unsigned short objects : 15 ;
1356 unsigned char frozen : 1 ;
1357};
1358#line 117 "include/linux/prio_tree.h"
1359union __anonunion_ldv_15310_141 {
1360 atomic_t _mapcount ;
1361 struct __anonstruct_ldv_15309_142 ldv_15309 ;
1362};
1363#line 117 "include/linux/prio_tree.h"
1364struct __anonstruct_ldv_15312_140 {
1365 union __anonunion_ldv_15310_141 ldv_15310 ;
1366 atomic_t _count ;
1367};
1368#line 117 "include/linux/prio_tree.h"
1369union __anonunion_ldv_15313_139 {
1370 unsigned long counters ;
1371 struct __anonstruct_ldv_15312_140 ldv_15312 ;
1372};
1373#line 117 "include/linux/prio_tree.h"
1374struct __anonstruct_ldv_15314_137 {
1375 union __anonunion_ldv_15299_138 ldv_15299 ;
1376 union __anonunion_ldv_15313_139 ldv_15313 ;
1377};
1378#line 117 "include/linux/prio_tree.h"
1379struct __anonstruct_ldv_15321_144 {
1380 struct page *next ;
1381 int pages ;
1382 int pobjects ;
1383};
1384#line 117 "include/linux/prio_tree.h"
1385union __anonunion_ldv_15322_143 {
1386 struct list_head lru ;
1387 struct __anonstruct_ldv_15321_144 ldv_15321 ;
1388};
1389#line 117 "include/linux/prio_tree.h"
1390union __anonunion_ldv_15327_145 {
1391 unsigned long private ;
1392 struct kmem_cache *slab ;
1393 struct page *first_page ;
1394};
1395#line 117 "include/linux/prio_tree.h"
1396struct page {
1397 unsigned long flags ;
1398 struct address_space *mapping ;
1399 struct __anonstruct_ldv_15314_137 ldv_15314 ;
1400 union __anonunion_ldv_15322_143 ldv_15322 ;
1401 union __anonunion_ldv_15327_145 ldv_15327 ;
1402 unsigned long debug_flags ;
1403};
1404#line 192 "include/linux/mm_types.h"
1405struct __anonstruct_vm_set_147 {
1406 struct list_head list ;
1407 void *parent ;
1408 struct vm_area_struct *head ;
1409};
1410#line 192 "include/linux/mm_types.h"
1411union __anonunion_shared_146 {
1412 struct __anonstruct_vm_set_147 vm_set ;
1413 struct raw_prio_tree_node prio_tree_node ;
1414};
1415#line 192
1416struct anon_vma;
1417#line 192
1418struct vm_operations_struct;
1419#line 192
1420struct mempolicy;
1421#line 192 "include/linux/mm_types.h"
1422struct vm_area_struct {
1423 struct mm_struct *vm_mm ;
1424 unsigned long vm_start ;
1425 unsigned long vm_end ;
1426 struct vm_area_struct *vm_next ;
1427 struct vm_area_struct *vm_prev ;
1428 pgprot_t vm_page_prot ;
1429 unsigned long vm_flags ;
1430 struct rb_node vm_rb ;
1431 union __anonunion_shared_146 shared ;
1432 struct list_head anon_vma_chain ;
1433 struct anon_vma *anon_vma ;
1434 struct vm_operations_struct const *vm_ops ;
1435 unsigned long vm_pgoff ;
1436 struct file *vm_file ;
1437 void *vm_private_data ;
1438 struct mempolicy *vm_policy ;
1439};
1440#line 255 "include/linux/mm_types.h"
1441struct core_thread {
1442 struct task_struct *task ;
1443 struct core_thread *next ;
1444};
1445#line 261 "include/linux/mm_types.h"
1446struct core_state {
1447 atomic_t nr_threads ;
1448 struct core_thread dumper ;
1449 struct completion startup ;
1450};
1451#line 274 "include/linux/mm_types.h"
1452struct mm_rss_stat {
1453 atomic_long_t count[3U] ;
1454};
1455#line 287
1456struct linux_binfmt;
1457#line 287
1458struct mmu_notifier_mm;
1459#line 287 "include/linux/mm_types.h"
1460struct mm_struct {
1461 struct vm_area_struct *mmap ;
1462 struct rb_root mm_rb ;
1463 struct vm_area_struct *mmap_cache ;
1464 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1465 unsigned long , unsigned long ) ;
1466 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1467 unsigned long mmap_base ;
1468 unsigned long task_size ;
1469 unsigned long cached_hole_size ;
1470 unsigned long free_area_cache ;
1471 pgd_t *pgd ;
1472 atomic_t mm_users ;
1473 atomic_t mm_count ;
1474 int map_count ;
1475 spinlock_t page_table_lock ;
1476 struct rw_semaphore mmap_sem ;
1477 struct list_head mmlist ;
1478 unsigned long hiwater_rss ;
1479 unsigned long hiwater_vm ;
1480 unsigned long total_vm ;
1481 unsigned long locked_vm ;
1482 unsigned long pinned_vm ;
1483 unsigned long shared_vm ;
1484 unsigned long exec_vm ;
1485 unsigned long stack_vm ;
1486 unsigned long reserved_vm ;
1487 unsigned long def_flags ;
1488 unsigned long nr_ptes ;
1489 unsigned long start_code ;
1490 unsigned long end_code ;
1491 unsigned long start_data ;
1492 unsigned long end_data ;
1493 unsigned long start_brk ;
1494 unsigned long brk ;
1495 unsigned long start_stack ;
1496 unsigned long arg_start ;
1497 unsigned long arg_end ;
1498 unsigned long env_start ;
1499 unsigned long env_end ;
1500 unsigned long saved_auxv[44U] ;
1501 struct mm_rss_stat rss_stat ;
1502 struct linux_binfmt *binfmt ;
1503 cpumask_var_t cpu_vm_mask_var ;
1504 mm_context_t context ;
1505 unsigned int faultstamp ;
1506 unsigned int token_priority ;
1507 unsigned int last_interval ;
1508 unsigned long flags ;
1509 struct core_state *core_state ;
1510 spinlock_t ioctx_lock ;
1511 struct hlist_head ioctx_list ;
1512 struct task_struct *owner ;
1513 struct file *exe_file ;
1514 unsigned long num_exe_file_vmas ;
1515 struct mmu_notifier_mm *mmu_notifier_mm ;
1516 pgtable_t pmd_huge_pte ;
1517 struct cpumask cpumask_allocation ;
1518};
1519#line 7 "include/asm-generic/cputime.h"
1520typedef unsigned long cputime_t;
1521#line 98 "include/linux/sem.h"
1522struct sem_undo_list;
1523#line 98 "include/linux/sem.h"
1524struct sysv_sem {
1525 struct sem_undo_list *undo_list ;
1526};
1527#line 107
1528struct siginfo;
1529#line 107
1530struct siginfo;
1531#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1532struct __anonstruct_sigset_t_148 {
1533 unsigned long sig[1U] ;
1534};
1535#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1536typedef struct __anonstruct_sigset_t_148 sigset_t;
1537#line 17 "include/asm-generic/signal-defs.h"
1538typedef void __signalfn_t(int );
1539#line 18 "include/asm-generic/signal-defs.h"
1540typedef __signalfn_t *__sighandler_t;
1541#line 20 "include/asm-generic/signal-defs.h"
1542typedef void __restorefn_t(void);
1543#line 21 "include/asm-generic/signal-defs.h"
1544typedef __restorefn_t *__sigrestore_t;
1545#line 126 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1546struct sigaction {
1547 __sighandler_t sa_handler ;
1548 unsigned long sa_flags ;
1549 __sigrestore_t sa_restorer ;
1550 sigset_t sa_mask ;
1551};
1552#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1553struct k_sigaction {
1554 struct sigaction sa ;
1555};
1556#line 185 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1557union sigval {
1558 int sival_int ;
1559 void *sival_ptr ;
1560};
1561#line 10 "include/asm-generic/siginfo.h"
1562typedef union sigval sigval_t;
1563#line 11 "include/asm-generic/siginfo.h"
1564struct __anonstruct__kill_150 {
1565 __kernel_pid_t _pid ;
1566 __kernel_uid32_t _uid ;
1567};
1568#line 11 "include/asm-generic/siginfo.h"
1569struct __anonstruct__timer_151 {
1570 __kernel_timer_t _tid ;
1571 int _overrun ;
1572 char _pad[0U] ;
1573 sigval_t _sigval ;
1574 int _sys_private ;
1575};
1576#line 11 "include/asm-generic/siginfo.h"
1577struct __anonstruct__rt_152 {
1578 __kernel_pid_t _pid ;
1579 __kernel_uid32_t _uid ;
1580 sigval_t _sigval ;
1581};
1582#line 11 "include/asm-generic/siginfo.h"
1583struct __anonstruct__sigchld_153 {
1584 __kernel_pid_t _pid ;
1585 __kernel_uid32_t _uid ;
1586 int _status ;
1587 __kernel_clock_t _utime ;
1588 __kernel_clock_t _stime ;
1589};
1590#line 11 "include/asm-generic/siginfo.h"
1591struct __anonstruct__sigfault_154 {
1592 void *_addr ;
1593 short _addr_lsb ;
1594};
1595#line 11 "include/asm-generic/siginfo.h"
1596struct __anonstruct__sigpoll_155 {
1597 long _band ;
1598 int _fd ;
1599};
1600#line 11 "include/asm-generic/siginfo.h"
1601union __anonunion__sifields_149 {
1602 int _pad[28U] ;
1603 struct __anonstruct__kill_150 _kill ;
1604 struct __anonstruct__timer_151 _timer ;
1605 struct __anonstruct__rt_152 _rt ;
1606 struct __anonstruct__sigchld_153 _sigchld ;
1607 struct __anonstruct__sigfault_154 _sigfault ;
1608 struct __anonstruct__sigpoll_155 _sigpoll ;
1609};
1610#line 11 "include/asm-generic/siginfo.h"
1611struct siginfo {
1612 int si_signo ;
1613 int si_errno ;
1614 int si_code ;
1615 union __anonunion__sifields_149 _sifields ;
1616};
1617#line 102 "include/asm-generic/siginfo.h"
1618typedef struct siginfo siginfo_t;
1619#line 14 "include/linux/signal.h"
1620struct user_struct;
1621#line 24 "include/linux/signal.h"
1622struct sigpending {
1623 struct list_head list ;
1624 sigset_t signal ;
1625};
1626#line 395
1627struct pid_namespace;
1628#line 395 "include/linux/signal.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 10 "include/linux/seccomp.h"
1648struct __anonstruct_seccomp_t_158 {
1649 int mode ;
1650};
1651#line 10 "include/linux/seccomp.h"
1652typedef struct __anonstruct_seccomp_t_158 seccomp_t;
1653#line 427 "include/linux/rculist.h"
1654struct plist_head {
1655 struct list_head node_list ;
1656};
1657#line 84 "include/linux/plist.h"
1658struct plist_node {
1659 int prio ;
1660 struct list_head prio_list ;
1661 struct list_head node_list ;
1662};
1663#line 20 "include/linux/rtmutex.h"
1664struct rt_mutex {
1665 raw_spinlock_t wait_lock ;
1666 struct plist_head wait_list ;
1667 struct task_struct *owner ;
1668 int save_state ;
1669 char const *name ;
1670 char const *file ;
1671 int line ;
1672 void *magic ;
1673};
1674#line 38
1675struct rt_mutex_waiter;
1676#line 38
1677struct rt_mutex_waiter;
1678#line 41 "include/linux/resource.h"
1679struct rlimit {
1680 unsigned long rlim_cur ;
1681 unsigned long rlim_max ;
1682};
1683#line 85 "include/linux/resource.h"
1684struct timerqueue_node {
1685 struct rb_node node ;
1686 ktime_t expires ;
1687};
1688#line 12 "include/linux/timerqueue.h"
1689struct timerqueue_head {
1690 struct rb_root head ;
1691 struct timerqueue_node *next ;
1692};
1693#line 50
1694struct hrtimer_clock_base;
1695#line 50
1696struct hrtimer_clock_base;
1697#line 51
1698struct hrtimer_cpu_base;
1699#line 51
1700struct hrtimer_cpu_base;
1701#line 60
1702enum hrtimer_restart {
1703 HRTIMER_NORESTART = 0,
1704 HRTIMER_RESTART = 1
1705} ;
1706#line 65 "include/linux/timerqueue.h"
1707struct hrtimer {
1708 struct timerqueue_node node ;
1709 ktime_t _softexpires ;
1710 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1711 struct hrtimer_clock_base *base ;
1712 unsigned long state ;
1713 int start_pid ;
1714 void *start_site ;
1715 char start_comm[16U] ;
1716};
1717#line 132 "include/linux/hrtimer.h"
1718struct hrtimer_clock_base {
1719 struct hrtimer_cpu_base *cpu_base ;
1720 int index ;
1721 clockid_t clockid ;
1722 struct timerqueue_head active ;
1723 ktime_t resolution ;
1724 ktime_t (*get_time)(void) ;
1725 ktime_t softirq_time ;
1726 ktime_t offset ;
1727};
1728#line 162 "include/linux/hrtimer.h"
1729struct hrtimer_cpu_base {
1730 raw_spinlock_t lock ;
1731 unsigned long active_bases ;
1732 ktime_t expires_next ;
1733 int hres_active ;
1734 int hang_detected ;
1735 unsigned long nr_events ;
1736 unsigned long nr_retries ;
1737 unsigned long nr_hangs ;
1738 ktime_t max_hang_time ;
1739 struct hrtimer_clock_base clock_base[3U] ;
1740};
1741#line 452 "include/linux/hrtimer.h"
1742struct task_io_accounting {
1743 u64 rchar ;
1744 u64 wchar ;
1745 u64 syscr ;
1746 u64 syscw ;
1747 u64 read_bytes ;
1748 u64 write_bytes ;
1749 u64 cancelled_write_bytes ;
1750};
1751#line 45 "include/linux/task_io_accounting.h"
1752struct latency_record {
1753 unsigned long backtrace[12U] ;
1754 unsigned int count ;
1755 unsigned long time ;
1756 unsigned long max ;
1757};
1758#line 29 "include/linux/key.h"
1759typedef int32_t key_serial_t;
1760#line 32 "include/linux/key.h"
1761typedef uint32_t key_perm_t;
1762#line 33
1763struct key;
1764#line 33
1765struct key;
1766#line 34
1767struct signal_struct;
1768#line 34
1769struct signal_struct;
1770#line 35
1771struct key_type;
1772#line 35
1773struct key_type;
1774#line 37
1775struct keyring_list;
1776#line 37
1777struct keyring_list;
1778#line 115
1779struct key_user;
1780#line 115 "include/linux/key.h"
1781union __anonunion_ldv_16563_159 {
1782 time_t expiry ;
1783 time_t revoked_at ;
1784};
1785#line 115 "include/linux/key.h"
1786union __anonunion_type_data_160 {
1787 struct list_head link ;
1788 unsigned long x[2U] ;
1789 void *p[2U] ;
1790 int reject_error ;
1791};
1792#line 115 "include/linux/key.h"
1793union __anonunion_payload_161 {
1794 unsigned long value ;
1795 void *rcudata ;
1796 void *data ;
1797 struct keyring_list *subscriptions ;
1798};
1799#line 115 "include/linux/key.h"
1800struct key {
1801 atomic_t usage ;
1802 key_serial_t serial ;
1803 struct rb_node serial_node ;
1804 struct key_type *type ;
1805 struct rw_semaphore sem ;
1806 struct key_user *user ;
1807 void *security ;
1808 union __anonunion_ldv_16563_159 ldv_16563 ;
1809 uid_t uid ;
1810 gid_t gid ;
1811 key_perm_t perm ;
1812 unsigned short quotalen ;
1813 unsigned short datalen ;
1814 unsigned long flags ;
1815 char *description ;
1816 union __anonunion_type_data_160 type_data ;
1817 union __anonunion_payload_161 payload ;
1818};
1819#line 316
1820struct audit_context;
1821#line 316
1822struct audit_context;
1823#line 28 "include/linux/selinux.h"
1824struct group_info {
1825 atomic_t usage ;
1826 int ngroups ;
1827 int nblocks ;
1828 gid_t small_block[32U] ;
1829 gid_t *blocks[0U] ;
1830};
1831#line 77 "include/linux/cred.h"
1832struct thread_group_cred {
1833 atomic_t usage ;
1834 pid_t tgid ;
1835 spinlock_t lock ;
1836 struct key *session_keyring ;
1837 struct key *process_keyring ;
1838 struct rcu_head rcu ;
1839};
1840#line 91 "include/linux/cred.h"
1841struct cred {
1842 atomic_t usage ;
1843 atomic_t subscribers ;
1844 void *put_addr ;
1845 unsigned int magic ;
1846 uid_t uid ;
1847 gid_t gid ;
1848 uid_t suid ;
1849 gid_t sgid ;
1850 uid_t euid ;
1851 gid_t egid ;
1852 uid_t fsuid ;
1853 gid_t fsgid ;
1854 unsigned int securebits ;
1855 kernel_cap_t cap_inheritable ;
1856 kernel_cap_t cap_permitted ;
1857 kernel_cap_t cap_effective ;
1858 kernel_cap_t cap_bset ;
1859 unsigned char jit_keyring ;
1860 struct key *thread_keyring ;
1861 struct key *request_key_auth ;
1862 struct thread_group_cred *tgcred ;
1863 void *security ;
1864 struct user_struct *user ;
1865 struct user_namespace *user_ns ;
1866 struct group_info *group_info ;
1867 struct rcu_head rcu ;
1868};
1869#line 264
1870struct llist_node;
1871#line 64 "include/linux/llist.h"
1872struct llist_node {
1873 struct llist_node *next ;
1874};
1875#line 185
1876struct futex_pi_state;
1877#line 185
1878struct futex_pi_state;
1879#line 186
1880struct robust_list_head;
1881#line 186
1882struct robust_list_head;
1883#line 187
1884struct bio_list;
1885#line 187
1886struct bio_list;
1887#line 188
1888struct fs_struct;
1889#line 188
1890struct fs_struct;
1891#line 189
1892struct perf_event_context;
1893#line 189
1894struct perf_event_context;
1895#line 190
1896struct blk_plug;
1897#line 190
1898struct blk_plug;
1899#line 149 "include/linux/sched.h"
1900struct cfs_rq;
1901#line 149
1902struct cfs_rq;
1903#line 406 "include/linux/sched.h"
1904struct sighand_struct {
1905 atomic_t count ;
1906 struct k_sigaction action[64U] ;
1907 spinlock_t siglock ;
1908 wait_queue_head_t signalfd_wqh ;
1909};
1910#line 449 "include/linux/sched.h"
1911struct pacct_struct {
1912 int ac_flag ;
1913 long ac_exitcode ;
1914 unsigned long ac_mem ;
1915 cputime_t ac_utime ;
1916 cputime_t ac_stime ;
1917 unsigned long ac_minflt ;
1918 unsigned long ac_majflt ;
1919};
1920#line 457 "include/linux/sched.h"
1921struct cpu_itimer {
1922 cputime_t expires ;
1923 cputime_t incr ;
1924 u32 error ;
1925 u32 incr_error ;
1926};
1927#line 464 "include/linux/sched.h"
1928struct task_cputime {
1929 cputime_t utime ;
1930 cputime_t stime ;
1931 unsigned long long sum_exec_runtime ;
1932};
1933#line 481 "include/linux/sched.h"
1934struct thread_group_cputimer {
1935 struct task_cputime cputime ;
1936 int running ;
1937 raw_spinlock_t lock ;
1938};
1939#line 517
1940struct autogroup;
1941#line 517
1942struct autogroup;
1943#line 518
1944struct tty_struct;
1945#line 518
1946struct taskstats;
1947#line 518
1948struct tty_audit_buf;
1949#line 518 "include/linux/sched.h"
1950struct signal_struct {
1951 atomic_t sigcnt ;
1952 atomic_t live ;
1953 int nr_threads ;
1954 wait_queue_head_t wait_chldexit ;
1955 struct task_struct *curr_target ;
1956 struct sigpending shared_pending ;
1957 int group_exit_code ;
1958 int notify_count ;
1959 struct task_struct *group_exit_task ;
1960 int group_stop_count ;
1961 unsigned int flags ;
1962 unsigned char is_child_subreaper : 1 ;
1963 unsigned char has_child_subreaper : 1 ;
1964 struct list_head posix_timers ;
1965 struct hrtimer real_timer ;
1966 struct pid *leader_pid ;
1967 ktime_t it_real_incr ;
1968 struct cpu_itimer it[2U] ;
1969 struct thread_group_cputimer cputimer ;
1970 struct task_cputime cputime_expires ;
1971 struct list_head cpu_timers[3U] ;
1972 struct pid *tty_old_pgrp ;
1973 int leader ;
1974 struct tty_struct *tty ;
1975 struct autogroup *autogroup ;
1976 cputime_t utime ;
1977 cputime_t stime ;
1978 cputime_t cutime ;
1979 cputime_t cstime ;
1980 cputime_t gtime ;
1981 cputime_t cgtime ;
1982 cputime_t prev_utime ;
1983 cputime_t prev_stime ;
1984 unsigned long nvcsw ;
1985 unsigned long nivcsw ;
1986 unsigned long cnvcsw ;
1987 unsigned long cnivcsw ;
1988 unsigned long min_flt ;
1989 unsigned long maj_flt ;
1990 unsigned long cmin_flt ;
1991 unsigned long cmaj_flt ;
1992 unsigned long inblock ;
1993 unsigned long oublock ;
1994 unsigned long cinblock ;
1995 unsigned long coublock ;
1996 unsigned long maxrss ;
1997 unsigned long cmaxrss ;
1998 struct task_io_accounting ioac ;
1999 unsigned long long sum_sched_runtime ;
2000 struct rlimit rlim[16U] ;
2001 struct pacct_struct pacct ;
2002 struct taskstats *stats ;
2003 unsigned int audit_tty ;
2004 struct tty_audit_buf *tty_audit_buf ;
2005 struct rw_semaphore group_rwsem ;
2006 int oom_adj ;
2007 int oom_score_adj ;
2008 int oom_score_adj_min ;
2009 struct mutex cred_guard_mutex ;
2010};
2011#line 699 "include/linux/sched.h"
2012struct user_struct {
2013 atomic_t __count ;
2014 atomic_t processes ;
2015 atomic_t files ;
2016 atomic_t sigpending ;
2017 atomic_t inotify_watches ;
2018 atomic_t inotify_devs ;
2019 atomic_t fanotify_listeners ;
2020 atomic_long_t epoll_watches ;
2021 unsigned long mq_bytes ;
2022 unsigned long locked_shm ;
2023 struct key *uid_keyring ;
2024 struct key *session_keyring ;
2025 struct hlist_node uidhash_node ;
2026 uid_t uid ;
2027 struct user_namespace *user_ns ;
2028 atomic_long_t locked_vm ;
2029};
2030#line 744
2031struct backing_dev_info;
2032#line 744
2033struct backing_dev_info;
2034#line 745
2035struct reclaim_state;
2036#line 745
2037struct reclaim_state;
2038#line 746 "include/linux/sched.h"
2039struct sched_info {
2040 unsigned long pcount ;
2041 unsigned long long run_delay ;
2042 unsigned long long last_arrival ;
2043 unsigned long long last_queued ;
2044};
2045#line 760 "include/linux/sched.h"
2046struct task_delay_info {
2047 spinlock_t lock ;
2048 unsigned int flags ;
2049 struct timespec blkio_start ;
2050 struct timespec blkio_end ;
2051 u64 blkio_delay ;
2052 u64 swapin_delay ;
2053 u32 blkio_count ;
2054 u32 swapin_count ;
2055 struct timespec freepages_start ;
2056 struct timespec freepages_end ;
2057 u64 freepages_delay ;
2058 u32 freepages_count ;
2059};
2060#line 1069
2061struct io_context;
2062#line 1069
2063struct io_context;
2064#line 1097
2065struct pipe_inode_info;
2066#line 1097
2067struct pipe_inode_info;
2068#line 1099
2069struct rq;
2070#line 1099
2071struct rq;
2072#line 1100 "include/linux/sched.h"
2073struct sched_class {
2074 struct sched_class const *next ;
2075 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
2076 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
2077 void (*yield_task)(struct rq * ) ;
2078 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
2079 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
2080 struct task_struct *(*pick_next_task)(struct rq * ) ;
2081 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
2082 int (*select_task_rq)(struct task_struct * , int , int ) ;
2083 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
2084 void (*post_schedule)(struct rq * ) ;
2085 void (*task_waking)(struct task_struct * ) ;
2086 void (*task_woken)(struct rq * , struct task_struct * ) ;
2087 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
2088 void (*rq_online)(struct rq * ) ;
2089 void (*rq_offline)(struct rq * ) ;
2090 void (*set_curr_task)(struct rq * ) ;
2091 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
2092 void (*task_fork)(struct task_struct * ) ;
2093 void (*switched_from)(struct rq * , struct task_struct * ) ;
2094 void (*switched_to)(struct rq * , struct task_struct * ) ;
2095 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
2096 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
2097 void (*task_move_group)(struct task_struct * , int ) ;
2098};
2099#line 1165 "include/linux/sched.h"
2100struct load_weight {
2101 unsigned long weight ;
2102 unsigned long inv_weight ;
2103};
2104#line 1170 "include/linux/sched.h"
2105struct sched_statistics {
2106 u64 wait_start ;
2107 u64 wait_max ;
2108 u64 wait_count ;
2109 u64 wait_sum ;
2110 u64 iowait_count ;
2111 u64 iowait_sum ;
2112 u64 sleep_start ;
2113 u64 sleep_max ;
2114 s64 sum_sleep_runtime ;
2115 u64 block_start ;
2116 u64 block_max ;
2117 u64 exec_max ;
2118 u64 slice_max ;
2119 u64 nr_migrations_cold ;
2120 u64 nr_failed_migrations_affine ;
2121 u64 nr_failed_migrations_running ;
2122 u64 nr_failed_migrations_hot ;
2123 u64 nr_forced_migrations ;
2124 u64 nr_wakeups ;
2125 u64 nr_wakeups_sync ;
2126 u64 nr_wakeups_migrate ;
2127 u64 nr_wakeups_local ;
2128 u64 nr_wakeups_remote ;
2129 u64 nr_wakeups_affine ;
2130 u64 nr_wakeups_affine_attempts ;
2131 u64 nr_wakeups_passive ;
2132 u64 nr_wakeups_idle ;
2133};
2134#line 1205 "include/linux/sched.h"
2135struct sched_entity {
2136 struct load_weight load ;
2137 struct rb_node run_node ;
2138 struct list_head group_node ;
2139 unsigned int on_rq ;
2140 u64 exec_start ;
2141 u64 sum_exec_runtime ;
2142 u64 vruntime ;
2143 u64 prev_sum_exec_runtime ;
2144 u64 nr_migrations ;
2145 struct sched_statistics statistics ;
2146 struct sched_entity *parent ;
2147 struct cfs_rq *cfs_rq ;
2148 struct cfs_rq *my_q ;
2149};
2150#line 1231
2151struct rt_rq;
2152#line 1231 "include/linux/sched.h"
2153struct sched_rt_entity {
2154 struct list_head run_list ;
2155 unsigned long timeout ;
2156 unsigned int time_slice ;
2157 int nr_cpus_allowed ;
2158 struct sched_rt_entity *back ;
2159 struct sched_rt_entity *parent ;
2160 struct rt_rq *rt_rq ;
2161 struct rt_rq *my_q ;
2162};
2163#line 1255
2164struct mem_cgroup;
2165#line 1255 "include/linux/sched.h"
2166struct memcg_batch_info {
2167 int do_batch ;
2168 struct mem_cgroup *memcg ;
2169 unsigned long nr_pages ;
2170 unsigned long memsw_nr_pages ;
2171};
2172#line 1616
2173struct files_struct;
2174#line 1616
2175struct css_set;
2176#line 1616
2177struct compat_robust_list_head;
2178#line 1616 "include/linux/sched.h"
2179struct task_struct {
2180 long volatile state ;
2181 void *stack ;
2182 atomic_t usage ;
2183 unsigned int flags ;
2184 unsigned int ptrace ;
2185 struct llist_node wake_entry ;
2186 int on_cpu ;
2187 int on_rq ;
2188 int prio ;
2189 int static_prio ;
2190 int normal_prio ;
2191 unsigned int rt_priority ;
2192 struct sched_class const *sched_class ;
2193 struct sched_entity se ;
2194 struct sched_rt_entity rt ;
2195 struct hlist_head preempt_notifiers ;
2196 unsigned char fpu_counter ;
2197 unsigned int policy ;
2198 cpumask_t cpus_allowed ;
2199 struct sched_info sched_info ;
2200 struct list_head tasks ;
2201 struct plist_node pushable_tasks ;
2202 struct mm_struct *mm ;
2203 struct mm_struct *active_mm ;
2204 unsigned char brk_randomized : 1 ;
2205 int exit_state ;
2206 int exit_code ;
2207 int exit_signal ;
2208 int pdeath_signal ;
2209 unsigned int jobctl ;
2210 unsigned int personality ;
2211 unsigned char did_exec : 1 ;
2212 unsigned char in_execve : 1 ;
2213 unsigned char in_iowait : 1 ;
2214 unsigned char sched_reset_on_fork : 1 ;
2215 unsigned char sched_contributes_to_load : 1 ;
2216 unsigned char irq_thread : 1 ;
2217 pid_t pid ;
2218 pid_t tgid ;
2219 unsigned long stack_canary ;
2220 struct task_struct *real_parent ;
2221 struct task_struct *parent ;
2222 struct list_head children ;
2223 struct list_head sibling ;
2224 struct task_struct *group_leader ;
2225 struct list_head ptraced ;
2226 struct list_head ptrace_entry ;
2227 struct pid_link pids[3U] ;
2228 struct list_head thread_group ;
2229 struct completion *vfork_done ;
2230 int *set_child_tid ;
2231 int *clear_child_tid ;
2232 cputime_t utime ;
2233 cputime_t stime ;
2234 cputime_t utimescaled ;
2235 cputime_t stimescaled ;
2236 cputime_t gtime ;
2237 cputime_t prev_utime ;
2238 cputime_t prev_stime ;
2239 unsigned long nvcsw ;
2240 unsigned long nivcsw ;
2241 struct timespec start_time ;
2242 struct timespec real_start_time ;
2243 unsigned long min_flt ;
2244 unsigned long maj_flt ;
2245 struct task_cputime cputime_expires ;
2246 struct list_head cpu_timers[3U] ;
2247 struct cred const *real_cred ;
2248 struct cred const *cred ;
2249 struct cred *replacement_session_keyring ;
2250 char comm[16U] ;
2251 int link_count ;
2252 int total_link_count ;
2253 struct sysv_sem sysvsem ;
2254 unsigned long last_switch_count ;
2255 struct thread_struct thread ;
2256 struct fs_struct *fs ;
2257 struct files_struct *files ;
2258 struct nsproxy *nsproxy ;
2259 struct signal_struct *signal ;
2260 struct sighand_struct *sighand ;
2261 sigset_t blocked ;
2262 sigset_t real_blocked ;
2263 sigset_t saved_sigmask ;
2264 struct sigpending pending ;
2265 unsigned long sas_ss_sp ;
2266 size_t sas_ss_size ;
2267 int (*notifier)(void * ) ;
2268 void *notifier_data ;
2269 sigset_t *notifier_mask ;
2270 struct audit_context *audit_context ;
2271 uid_t loginuid ;
2272 unsigned int sessionid ;
2273 seccomp_t seccomp ;
2274 u32 parent_exec_id ;
2275 u32 self_exec_id ;
2276 spinlock_t alloc_lock ;
2277 raw_spinlock_t pi_lock ;
2278 struct plist_head pi_waiters ;
2279 struct rt_mutex_waiter *pi_blocked_on ;
2280 struct mutex_waiter *blocked_on ;
2281 unsigned int irq_events ;
2282 unsigned long hardirq_enable_ip ;
2283 unsigned long hardirq_disable_ip ;
2284 unsigned int hardirq_enable_event ;
2285 unsigned int hardirq_disable_event ;
2286 int hardirqs_enabled ;
2287 int hardirq_context ;
2288 unsigned long softirq_disable_ip ;
2289 unsigned long softirq_enable_ip ;
2290 unsigned int softirq_disable_event ;
2291 unsigned int softirq_enable_event ;
2292 int softirqs_enabled ;
2293 int softirq_context ;
2294 u64 curr_chain_key ;
2295 int lockdep_depth ;
2296 unsigned int lockdep_recursion ;
2297 struct held_lock held_locks[48U] ;
2298 gfp_t lockdep_reclaim_gfp ;
2299 void *journal_info ;
2300 struct bio_list *bio_list ;
2301 struct blk_plug *plug ;
2302 struct reclaim_state *reclaim_state ;
2303 struct backing_dev_info *backing_dev_info ;
2304 struct io_context *io_context ;
2305 unsigned long ptrace_message ;
2306 siginfo_t *last_siginfo ;
2307 struct task_io_accounting ioac ;
2308 u64 acct_rss_mem1 ;
2309 u64 acct_vm_mem1 ;
2310 cputime_t acct_timexpd ;
2311 nodemask_t mems_allowed ;
2312 seqcount_t mems_allowed_seq ;
2313 int cpuset_mem_spread_rotor ;
2314 int cpuset_slab_spread_rotor ;
2315 struct css_set *cgroups ;
2316 struct list_head cg_list ;
2317 struct robust_list_head *robust_list ;
2318 struct compat_robust_list_head *compat_robust_list ;
2319 struct list_head pi_state_list ;
2320 struct futex_pi_state *pi_state_cache ;
2321 struct perf_event_context *perf_event_ctxp[2U] ;
2322 struct mutex perf_event_mutex ;
2323 struct list_head perf_event_list ;
2324 struct mempolicy *mempolicy ;
2325 short il_next ;
2326 short pref_node_fork ;
2327 struct rcu_head rcu ;
2328 struct pipe_inode_info *splice_pipe ;
2329 struct task_delay_info *delays ;
2330 int make_it_fail ;
2331 int nr_dirtied ;
2332 int nr_dirtied_pause ;
2333 unsigned long dirty_paused_when ;
2334 int latency_record_count ;
2335 struct latency_record latency_record[32U] ;
2336 unsigned long timer_slack_ns ;
2337 unsigned long default_timer_slack_ns ;
2338 struct list_head *scm_work_list ;
2339 unsigned long trace ;
2340 unsigned long trace_recursion ;
2341 struct memcg_batch_info memcg_batch ;
2342 atomic_t ptrace_bp_refcnt ;
2343};
2344#line 28 "include/linux/of.h"
2345typedef u32 phandle;
2346#line 30 "include/linux/of.h"
2347struct property {
2348 char *name ;
2349 int length ;
2350 void *value ;
2351 struct property *next ;
2352 unsigned long _flags ;
2353 unsigned int unique_id ;
2354};
2355#line 39
2356struct proc_dir_entry;
2357#line 39 "include/linux/of.h"
2358struct device_node {
2359 char const *name ;
2360 char const *type ;
2361 phandle phandle ;
2362 char *full_name ;
2363 struct property *properties ;
2364 struct property *deadprops ;
2365 struct device_node *parent ;
2366 struct device_node *child ;
2367 struct device_node *sibling ;
2368 struct device_node *next ;
2369 struct device_node *allnext ;
2370 struct proc_dir_entry *pde ;
2371 struct kref kref ;
2372 unsigned long _flags ;
2373 void *data ;
2374};
2375#line 41 "include/linux/i2c.h"
2376struct i2c_msg;
2377#line 41
2378struct i2c_msg;
2379#line 42
2380struct i2c_algorithm;
2381#line 42
2382struct i2c_algorithm;
2383#line 43
2384struct i2c_adapter;
2385#line 43
2386struct i2c_adapter;
2387#line 44
2388struct i2c_client;
2389#line 44
2390struct i2c_client;
2391#line 45
2392struct i2c_driver;
2393#line 45
2394struct i2c_driver;
2395#line 46
2396union i2c_smbus_data;
2397#line 46
2398union i2c_smbus_data;
2399#line 47
2400struct i2c_board_info;
2401#line 47
2402struct i2c_board_info;
2403#line 119 "include/linux/i2c.h"
2404struct i2c_driver {
2405 unsigned int class ;
2406 int (*attach_adapter)(struct i2c_adapter * ) ;
2407 int (*detach_adapter)(struct i2c_adapter * ) ;
2408 int (*probe)(struct i2c_client * , struct i2c_device_id const * ) ;
2409 int (*remove)(struct i2c_client * ) ;
2410 void (*shutdown)(struct i2c_client * ) ;
2411 int (*suspend)(struct i2c_client * , pm_message_t ) ;
2412 int (*resume)(struct i2c_client * ) ;
2413 void (*alert)(struct i2c_client * , unsigned int ) ;
2414 int (*command)(struct i2c_client * , unsigned int , void * ) ;
2415 struct device_driver driver ;
2416 struct i2c_device_id const *id_table ;
2417 int (*detect)(struct i2c_client * , struct i2c_board_info * ) ;
2418 unsigned short const *address_list ;
2419 struct list_head clients ;
2420};
2421#line 200 "include/linux/i2c.h"
2422struct i2c_client {
2423 unsigned short flags ;
2424 unsigned short addr ;
2425 char name[20U] ;
2426 struct i2c_adapter *adapter ;
2427 struct i2c_driver *driver ;
2428 struct device dev ;
2429 int irq ;
2430 struct list_head detected ;
2431};
2432#line 251 "include/linux/i2c.h"
2433struct i2c_board_info {
2434 char type[20U] ;
2435 unsigned short flags ;
2436 unsigned short addr ;
2437 void *platform_data ;
2438 struct dev_archdata *archdata ;
2439 struct device_node *of_node ;
2440 int irq ;
2441};
2442#line 336 "include/linux/i2c.h"
2443struct i2c_algorithm {
2444 int (*master_xfer)(struct i2c_adapter * , struct i2c_msg * , int ) ;
2445 int (*smbus_xfer)(struct i2c_adapter * , u16 , unsigned short , char , u8 ,
2446 int , union i2c_smbus_data * ) ;
2447 u32 (*functionality)(struct i2c_adapter * ) ;
2448};
2449#line 368 "include/linux/i2c.h"
2450struct i2c_adapter {
2451 struct module *owner ;
2452 unsigned int class ;
2453 struct i2c_algorithm const *algo ;
2454 void *algo_data ;
2455 struct rt_mutex bus_lock ;
2456 int timeout ;
2457 int retries ;
2458 struct device dev ;
2459 int nr ;
2460 char name[48U] ;
2461 struct completion dev_released ;
2462 struct mutex userspace_clients_lock ;
2463 struct list_head userspace_clients ;
2464};
2465#line 486 "include/linux/i2c.h"
2466struct i2c_msg {
2467 __u16 addr ;
2468 __u16 flags ;
2469 __u16 len ;
2470 __u8 *buf ;
2471};
2472#line 551 "include/linux/i2c.h"
2473union i2c_smbus_data {
2474 __u8 byte ;
2475 __u16 word ;
2476 __u8 block[34U] ;
2477};
2478#line 56 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2479struct pcf8591_data {
2480 struct device *hwmon_dev ;
2481 struct mutex update_lock ;
2482 u8 control ;
2483 u8 aout ;
2484};
2485#line 1 "<compiler builtins>"
2486long __builtin_expect(long , long ) ;
2487#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2488void ldv_spin_lock(void) ;
2489#line 3
2490void ldv_spin_unlock(void) ;
2491#line 4
2492int ldv_spin_trylock(void) ;
2493#line 101 "include/linux/printk.h"
2494extern int printk(char const * , ...) ;
2495#line 218 "include/linux/kernel.h"
2496extern int kstrtoull(char const * , unsigned int , unsigned long long * ) ;
2497#line 220 "include/linux/kernel.h"
2498__inline static int kstrtoul(char const *s , unsigned int base , unsigned long *res )
2499{ int tmp ;
2500 unsigned long long *__cil_tmp6 ;
2501
2502 {
2503 {
2504#line 228
2505 __cil_tmp6 = (unsigned long long *)res;
2506#line 228
2507 tmp = kstrtoull(s, base, __cil_tmp6);
2508 }
2509#line 228
2510 return (tmp);
2511}
2512}
2513#line 320
2514extern int sprintf(char * , char const * , ...) ;
2515#line 27 "include/linux/err.h"
2516__inline static long PTR_ERR(void const *ptr )
2517{
2518
2519 {
2520#line 29
2521 return ((long )ptr);
2522}
2523}
2524#line 32 "include/linux/err.h"
2525__inline static long IS_ERR(void const *ptr )
2526{ long tmp ;
2527 unsigned long __cil_tmp3 ;
2528 int __cil_tmp4 ;
2529 long __cil_tmp5 ;
2530
2531 {
2532 {
2533#line 34
2534 __cil_tmp3 = (unsigned long )ptr;
2535#line 34
2536 __cil_tmp4 = __cil_tmp3 > 0xfffffffffffff000UL;
2537#line 34
2538 __cil_tmp5 = (long )__cil_tmp4;
2539#line 34
2540 tmp = __builtin_expect(__cil_tmp5, 0L);
2541 }
2542#line 34
2543 return (tmp);
2544}
2545}
2546#line 115 "include/linux/mutex.h"
2547extern void __mutex_init(struct mutex * , char const * , struct lock_class_key * ) ;
2548#line 134
2549extern void mutex_lock_nested(struct mutex * , unsigned int ) ;
2550#line 169
2551extern void mutex_unlock(struct mutex * ) ;
2552#line 158 "include/linux/sysfs.h"
2553extern int sysfs_create_group(struct kobject * , struct attribute_group const * ) ;
2554#line 162
2555extern void sysfs_remove_group(struct kobject * , struct attribute_group const * ) ;
2556#line 26 "include/linux/export.h"
2557extern struct module __this_module ;
2558#line 161 "include/linux/slab.h"
2559extern void kfree(void const * ) ;
2560#line 220 "include/linux/slub_def.h"
2561extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
2562#line 223
2563void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
2564#line 353 "include/linux/slab.h"
2565__inline static void *kzalloc(size_t size , gfp_t flags ) ;
2566#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2567extern void *__VERIFIER_nondet_pointer(void) ;
2568#line 11
2569void ldv_check_alloc_flags(gfp_t flags ) ;
2570#line 12
2571void ldv_check_alloc_nonatomic(void) ;
2572#line 14
2573struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2574#line 507 "include/linux/device.h"
2575extern int device_create_file(struct device * , struct device_attribute const * ) ;
2576#line 792
2577extern void *dev_get_drvdata(struct device const * ) ;
2578#line 793
2579extern int dev_set_drvdata(struct device * , void * ) ;
2580#line 84 "include/linux/i2c.h"
2581extern s32 i2c_smbus_read_byte(struct i2c_client const * ) ;
2582#line 85
2583extern s32 i2c_smbus_write_byte(struct i2c_client const * , u8 ) ;
2584#line 88
2585extern s32 i2c_smbus_write_byte_data(struct i2c_client const * , u8 , u8 ) ;
2586#line 242 "include/linux/i2c.h"
2587__inline static void *i2c_get_clientdata(struct i2c_client const *dev )
2588{ void *tmp ;
2589 unsigned long __cil_tmp3 ;
2590 unsigned long __cil_tmp4 ;
2591 struct device const *__cil_tmp5 ;
2592
2593 {
2594 {
2595#line 244
2596 __cil_tmp3 = (unsigned long )dev;
2597#line 244
2598 __cil_tmp4 = __cil_tmp3 + 40;
2599#line 244
2600 __cil_tmp5 = (struct device const *)__cil_tmp4;
2601#line 244
2602 tmp = dev_get_drvdata(__cil_tmp5);
2603 }
2604#line 244
2605 return (tmp);
2606}
2607}
2608#line 247 "include/linux/i2c.h"
2609__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data )
2610{ unsigned long __cil_tmp3 ;
2611 unsigned long __cil_tmp4 ;
2612 struct device *__cil_tmp5 ;
2613
2614 {
2615 {
2616#line 249
2617 __cil_tmp3 = (unsigned long )dev;
2618#line 249
2619 __cil_tmp4 = __cil_tmp3 + 40;
2620#line 249
2621 __cil_tmp5 = (struct device *)__cil_tmp4;
2622#line 249
2623 dev_set_drvdata(__cil_tmp5, data);
2624 }
2625#line 250
2626 return;
2627}
2628}
2629#line 450
2630extern int i2c_register_driver(struct module * , struct i2c_driver * ) ;
2631#line 451
2632extern void i2c_del_driver(struct i2c_driver * ) ;
2633#line 19 "include/linux/hwmon.h"
2634extern struct device *hwmon_device_register(struct device * ) ;
2635#line 21
2636extern void hwmon_device_unregister(struct device * ) ;
2637#line 48 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2638static int input_mode ;
2639#line 102
2640static void pcf8591_init_client(struct i2c_client *client ) ;
2641#line 103
2642static int pcf8591_read_channel(struct device *dev , int channel ) ;
2643#line 116 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2644static ssize_t show_in0_input(struct device *dev , struct device_attribute *attr ,
2645 char *buf )
2646{ int tmp ;
2647 int tmp___0 ;
2648
2649 {
2650 {
2651#line 116
2652 tmp = pcf8591_read_channel(dev, 0);
2653#line 116
2654 tmp___0 = sprintf(buf, "%d\n", tmp);
2655 }
2656#line 116
2657 return ((ssize_t )tmp___0);
2658}
2659}
2660#line 116 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2661static struct device_attribute dev_attr_in0_input = {{"in0_input", (umode_t )292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
2662 {(char)0}, {(char)0},
2663 {(char)0}, {(char)0},
2664 {(char)0}, {(char)0}}}},
2665 & show_in0_input, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
2666 size_t ))0};
2667#line 117 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2668static ssize_t show_in1_input(struct device *dev , struct device_attribute *attr ,
2669 char *buf )
2670{ int tmp ;
2671 int tmp___0 ;
2672
2673 {
2674 {
2675#line 117
2676 tmp = pcf8591_read_channel(dev, 1);
2677#line 117
2678 tmp___0 = sprintf(buf, "%d\n", tmp);
2679 }
2680#line 117
2681 return ((ssize_t )tmp___0);
2682}
2683}
2684#line 117 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2685static struct device_attribute dev_attr_in1_input = {{"in1_input", (umode_t )292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
2686 {(char)0}, {(char)0},
2687 {(char)0}, {(char)0},
2688 {(char)0}, {(char)0}}}},
2689 & show_in1_input, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
2690 size_t ))0};
2691#line 118 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2692static ssize_t show_in2_input(struct device *dev , struct device_attribute *attr ,
2693 char *buf )
2694{ int tmp ;
2695 int tmp___0 ;
2696
2697 {
2698 {
2699#line 118
2700 tmp = pcf8591_read_channel(dev, 2);
2701#line 118
2702 tmp___0 = sprintf(buf, "%d\n", tmp);
2703 }
2704#line 118
2705 return ((ssize_t )tmp___0);
2706}
2707}
2708#line 118 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2709static struct device_attribute dev_attr_in2_input = {{"in2_input", (umode_t )292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
2710 {(char)0}, {(char)0},
2711 {(char)0}, {(char)0},
2712 {(char)0}, {(char)0}}}},
2713 & show_in2_input, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
2714 size_t ))0};
2715#line 119 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2716static ssize_t show_in3_input(struct device *dev , struct device_attribute *attr ,
2717 char *buf )
2718{ int tmp ;
2719 int tmp___0 ;
2720
2721 {
2722 {
2723#line 119
2724 tmp = pcf8591_read_channel(dev, 3);
2725#line 119
2726 tmp___0 = sprintf(buf, "%d\n", tmp);
2727 }
2728#line 119
2729 return ((ssize_t )tmp___0);
2730}
2731}
2732#line 119 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2733static struct device_attribute dev_attr_in3_input = {{"in3_input", (umode_t )292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
2734 {(char)0}, {(char)0},
2735 {(char)0}, {(char)0},
2736 {(char)0}, {(char)0}}}},
2737 & show_in3_input, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
2738 size_t ))0};
2739#line 121 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2740static ssize_t show_out0_ouput(struct device *dev , struct device_attribute *attr ,
2741 char *buf )
2742{ struct pcf8591_data *data ;
2743 struct device const *__mptr ;
2744 void *tmp ;
2745 int tmp___0 ;
2746 struct i2c_client *__cil_tmp8 ;
2747 struct i2c_client *__cil_tmp9 ;
2748 struct i2c_client const *__cil_tmp10 ;
2749 unsigned long __cil_tmp11 ;
2750 unsigned long __cil_tmp12 ;
2751 u8 __cil_tmp13 ;
2752 int __cil_tmp14 ;
2753 int __cil_tmp15 ;
2754
2755 {
2756 {
2757#line 124
2758 __mptr = (struct device const *)dev;
2759#line 124
2760 __cil_tmp8 = (struct i2c_client *)__mptr;
2761#line 124
2762 __cil_tmp9 = __cil_tmp8 + 0xffffffffffffffd8UL;
2763#line 124
2764 __cil_tmp10 = (struct i2c_client const *)__cil_tmp9;
2765#line 124
2766 tmp = i2c_get_clientdata(__cil_tmp10);
2767#line 124
2768 data = (struct pcf8591_data *)tmp;
2769#line 125
2770 __cil_tmp11 = (unsigned long )data;
2771#line 125
2772 __cil_tmp12 = __cil_tmp11 + 177;
2773#line 125
2774 __cil_tmp13 = *((u8 *)__cil_tmp12);
2775#line 125
2776 __cil_tmp14 = (int )__cil_tmp13;
2777#line 125
2778 __cil_tmp15 = __cil_tmp14 * 10;
2779#line 125
2780 tmp___0 = sprintf(buf, "%d\n", __cil_tmp15);
2781 }
2782#line 125
2783 return ((ssize_t )tmp___0);
2784}
2785}
2786#line 128 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2787static ssize_t set_out0_output(struct device *dev , struct device_attribute *attr ,
2788 char const *buf , size_t count )
2789{ unsigned long val ;
2790 struct i2c_client *client ;
2791 struct device const *__mptr ;
2792 struct pcf8591_data *data ;
2793 void *tmp ;
2794 int err ;
2795 struct i2c_client *__cil_tmp11 ;
2796 struct i2c_client const *__cil_tmp12 ;
2797 unsigned long *__cil_tmp13 ;
2798 unsigned long *__cil_tmp14 ;
2799 unsigned long __cil_tmp15 ;
2800 unsigned long *__cil_tmp16 ;
2801 unsigned long __cil_tmp17 ;
2802 unsigned long __cil_tmp18 ;
2803 unsigned long __cil_tmp19 ;
2804 unsigned long *__cil_tmp20 ;
2805 unsigned long __cil_tmp21 ;
2806 struct i2c_client const *__cil_tmp22 ;
2807 unsigned long __cil_tmp23 ;
2808 unsigned long __cil_tmp24 ;
2809 u8 __cil_tmp25 ;
2810 int __cil_tmp26 ;
2811 u8 __cil_tmp27 ;
2812 unsigned long __cil_tmp28 ;
2813 unsigned long __cil_tmp29 ;
2814 u8 __cil_tmp30 ;
2815 int __cil_tmp31 ;
2816 u8 __cil_tmp32 ;
2817
2818 {
2819 {
2820#line 133
2821 __mptr = (struct device const *)dev;
2822#line 133
2823 __cil_tmp11 = (struct i2c_client *)__mptr;
2824#line 133
2825 client = __cil_tmp11 + 0xffffffffffffffd8UL;
2826#line 134
2827 __cil_tmp12 = (struct i2c_client const *)client;
2828#line 134
2829 tmp = i2c_get_clientdata(__cil_tmp12);
2830#line 134
2831 data = (struct pcf8591_data *)tmp;
2832#line 137
2833 err = kstrtoul(buf, 10U, & val);
2834 }
2835#line 138
2836 if (err != 0) {
2837#line 139
2838 return ((ssize_t )err);
2839 } else {
2840
2841 }
2842#line 141
2843 __cil_tmp13 = & val;
2844#line 141
2845 __cil_tmp14 = & val;
2846#line 141
2847 __cil_tmp15 = *__cil_tmp14;
2848#line 141
2849 *__cil_tmp13 = __cil_tmp15 / 10UL;
2850 {
2851#line 142
2852 __cil_tmp16 = & val;
2853#line 142
2854 __cil_tmp17 = *__cil_tmp16;
2855#line 142
2856 if (__cil_tmp17 > 255UL) {
2857#line 143
2858 return (-22L);
2859 } else {
2860
2861 }
2862 }
2863 {
2864#line 145
2865 __cil_tmp18 = (unsigned long )data;
2866#line 145
2867 __cil_tmp19 = __cil_tmp18 + 177;
2868#line 145
2869 __cil_tmp20 = & val;
2870#line 145
2871 __cil_tmp21 = *__cil_tmp20;
2872#line 145
2873 *((u8 *)__cil_tmp19) = (u8 )__cil_tmp21;
2874#line 146
2875 __cil_tmp22 = (struct i2c_client const *)client;
2876#line 146
2877 __cil_tmp23 = (unsigned long )data;
2878#line 146
2879 __cil_tmp24 = __cil_tmp23 + 176;
2880#line 146
2881 __cil_tmp25 = *((u8 *)__cil_tmp24);
2882#line 146
2883 __cil_tmp26 = (int )__cil_tmp25;
2884#line 146
2885 __cil_tmp27 = (u8 )__cil_tmp26;
2886#line 146
2887 __cil_tmp28 = (unsigned long )data;
2888#line 146
2889 __cil_tmp29 = __cil_tmp28 + 177;
2890#line 146
2891 __cil_tmp30 = *((u8 *)__cil_tmp29);
2892#line 146
2893 __cil_tmp31 = (int )__cil_tmp30;
2894#line 146
2895 __cil_tmp32 = (u8 )__cil_tmp31;
2896#line 146
2897 i2c_smbus_write_byte_data(__cil_tmp22, __cil_tmp27, __cil_tmp32);
2898 }
2899#line 147
2900 return ((ssize_t )count);
2901}
2902}
2903#line 151 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2904static struct device_attribute dev_attr_out0_output = {{"out0_output", (umode_t )420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
2905 {(char)0}, {(char)0},
2906 {(char)0}, {(char)0},
2907 {(char)0}, {(char)0}}}},
2908 & show_out0_ouput, & set_out0_output};
2909#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2910static ssize_t show_out0_enable(struct device *dev , struct device_attribute *attr ,
2911 char *buf )
2912{ struct pcf8591_data *data ;
2913 struct device const *__mptr ;
2914 void *tmp ;
2915 int tmp___0 ;
2916 struct i2c_client *__cil_tmp8 ;
2917 struct i2c_client *__cil_tmp9 ;
2918 struct i2c_client const *__cil_tmp10 ;
2919 unsigned long __cil_tmp11 ;
2920 unsigned long __cil_tmp12 ;
2921 u8 __cil_tmp13 ;
2922 int __cil_tmp14 ;
2923 int __cil_tmp15 ;
2924 int __cil_tmp16 ;
2925
2926 {
2927 {
2928#line 156
2929 __mptr = (struct device const *)dev;
2930#line 156
2931 __cil_tmp8 = (struct i2c_client *)__mptr;
2932#line 156
2933 __cil_tmp9 = __cil_tmp8 + 0xffffffffffffffd8UL;
2934#line 156
2935 __cil_tmp10 = (struct i2c_client const *)__cil_tmp9;
2936#line 156
2937 tmp = i2c_get_clientdata(__cil_tmp10);
2938#line 156
2939 data = (struct pcf8591_data *)tmp;
2940#line 157
2941 __cil_tmp11 = (unsigned long )data;
2942#line 157
2943 __cil_tmp12 = __cil_tmp11 + 176;
2944#line 157
2945 __cil_tmp13 = *((u8 *)__cil_tmp12);
2946#line 157
2947 __cil_tmp14 = (int )__cil_tmp13;
2948#line 157
2949 __cil_tmp15 = __cil_tmp14 & 64;
2950#line 157
2951 __cil_tmp16 = __cil_tmp15 != 0;
2952#line 157
2953 tmp___0 = sprintf(buf, "%u\n", __cil_tmp16);
2954 }
2955#line 157
2956 return ((ssize_t )tmp___0);
2957}
2958}
2959#line 160 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
2960static ssize_t set_out0_enable(struct device *dev , struct device_attribute *attr ,
2961 char const *buf , size_t count )
2962{ struct i2c_client *client ;
2963 struct device const *__mptr ;
2964 struct pcf8591_data *data ;
2965 void *tmp ;
2966 unsigned long val ;
2967 int err ;
2968 struct i2c_client *__cil_tmp11 ;
2969 struct i2c_client const *__cil_tmp12 ;
2970 unsigned long __cil_tmp13 ;
2971 unsigned long __cil_tmp14 ;
2972 struct mutex *__cil_tmp15 ;
2973 unsigned long *__cil_tmp16 ;
2974 unsigned long __cil_tmp17 ;
2975 unsigned long __cil_tmp18 ;
2976 unsigned long __cil_tmp19 ;
2977 unsigned long __cil_tmp20 ;
2978 unsigned long __cil_tmp21 ;
2979 u8 __cil_tmp22 ;
2980 unsigned int __cil_tmp23 ;
2981 unsigned int __cil_tmp24 ;
2982 unsigned long __cil_tmp25 ;
2983 unsigned long __cil_tmp26 ;
2984 unsigned long __cil_tmp27 ;
2985 unsigned long __cil_tmp28 ;
2986 u8 __cil_tmp29 ;
2987 unsigned int __cil_tmp30 ;
2988 unsigned int __cil_tmp31 ;
2989 struct i2c_client const *__cil_tmp32 ;
2990 unsigned long __cil_tmp33 ;
2991 unsigned long __cil_tmp34 ;
2992 u8 __cil_tmp35 ;
2993 int __cil_tmp36 ;
2994 u8 __cil_tmp37 ;
2995 unsigned long __cil_tmp38 ;
2996 unsigned long __cil_tmp39 ;
2997 struct mutex *__cil_tmp40 ;
2998
2999 {
3000 {
3001#line 164
3002 __mptr = (struct device const *)dev;
3003#line 164
3004 __cil_tmp11 = (struct i2c_client *)__mptr;
3005#line 164
3006 client = __cil_tmp11 + 0xffffffffffffffd8UL;
3007#line 165
3008 __cil_tmp12 = (struct i2c_client const *)client;
3009#line 165
3010 tmp = i2c_get_clientdata(__cil_tmp12);
3011#line 165
3012 data = (struct pcf8591_data *)tmp;
3013#line 169
3014 err = kstrtoul(buf, 10U, & val);
3015 }
3016#line 170
3017 if (err != 0) {
3018#line 171
3019 return ((ssize_t )err);
3020 } else {
3021
3022 }
3023 {
3024#line 173
3025 __cil_tmp13 = (unsigned long )data;
3026#line 173
3027 __cil_tmp14 = __cil_tmp13 + 8;
3028#line 173
3029 __cil_tmp15 = (struct mutex *)__cil_tmp14;
3030#line 173
3031 mutex_lock_nested(__cil_tmp15, 0U);
3032 }
3033 {
3034#line 174
3035 __cil_tmp16 = & val;
3036#line 174
3037 __cil_tmp17 = *__cil_tmp16;
3038#line 174
3039 if (__cil_tmp17 != 0UL) {
3040#line 175
3041 __cil_tmp18 = (unsigned long )data;
3042#line 175
3043 __cil_tmp19 = __cil_tmp18 + 176;
3044#line 175
3045 __cil_tmp20 = (unsigned long )data;
3046#line 175
3047 __cil_tmp21 = __cil_tmp20 + 176;
3048#line 175
3049 __cil_tmp22 = *((u8 *)__cil_tmp21);
3050#line 175
3051 __cil_tmp23 = (unsigned int )__cil_tmp22;
3052#line 175
3053 __cil_tmp24 = __cil_tmp23 | 64U;
3054#line 175
3055 *((u8 *)__cil_tmp19) = (u8 )__cil_tmp24;
3056 } else {
3057#line 177
3058 __cil_tmp25 = (unsigned long )data;
3059#line 177
3060 __cil_tmp26 = __cil_tmp25 + 176;
3061#line 177
3062 __cil_tmp27 = (unsigned long )data;
3063#line 177
3064 __cil_tmp28 = __cil_tmp27 + 176;
3065#line 177
3066 __cil_tmp29 = *((u8 *)__cil_tmp28);
3067#line 177
3068 __cil_tmp30 = (unsigned int )__cil_tmp29;
3069#line 177
3070 __cil_tmp31 = __cil_tmp30 & 191U;
3071#line 177
3072 *((u8 *)__cil_tmp26) = (u8 )__cil_tmp31;
3073 }
3074 }
3075 {
3076#line 178
3077 __cil_tmp32 = (struct i2c_client const *)client;
3078#line 178
3079 __cil_tmp33 = (unsigned long )data;
3080#line 178
3081 __cil_tmp34 = __cil_tmp33 + 176;
3082#line 178
3083 __cil_tmp35 = *((u8 *)__cil_tmp34);
3084#line 178
3085 __cil_tmp36 = (int )__cil_tmp35;
3086#line 178
3087 __cil_tmp37 = (u8 )__cil_tmp36;
3088#line 178
3089 i2c_smbus_write_byte(__cil_tmp32, __cil_tmp37);
3090#line 179
3091 __cil_tmp38 = (unsigned long )data;
3092#line 179
3093 __cil_tmp39 = __cil_tmp38 + 8;
3094#line 179
3095 __cil_tmp40 = (struct mutex *)__cil_tmp39;
3096#line 179
3097 mutex_unlock(__cil_tmp40);
3098 }
3099#line 180
3100 return ((ssize_t )count);
3101}
3102}
3103#line 184 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3104static struct device_attribute dev_attr_out0_enable = {{"out0_enable", (umode_t )420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
3105 {(char)0}, {(char)0},
3106 {(char)0}, {(char)0},
3107 {(char)0}, {(char)0}}}},
3108 & show_out0_enable, & set_out0_enable};
3109#line 186 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3110static struct attribute *pcf8591_attributes[5U] = { & dev_attr_out0_enable.attr, & dev_attr_out0_output.attr, & dev_attr_in0_input.attr, & dev_attr_in1_input.attr,
3111 (struct attribute *)0};
3112#line 194 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3113static struct attribute_group const pcf8591_attr_group = {(char const *)0, (umode_t (*)(struct kobject * , struct attribute * , int ))0,
3114 (struct attribute **)(& pcf8591_attributes)};
3115#line 198 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3116static struct attribute *pcf8591_attributes_opt[3U] = { & dev_attr_in2_input.attr, & dev_attr_in3_input.attr, (struct attribute *)0};
3117#line 204 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3118static struct attribute_group const pcf8591_attr_group_opt = {(char const *)0, (umode_t (*)(struct kobject * , struct attribute * , int ))0,
3119 (struct attribute **)(& pcf8591_attributes_opt)};
3120#line 212 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3121static int pcf8591_probe(struct i2c_client *client , struct i2c_device_id const *id )
3122{ struct pcf8591_data *data ;
3123 int err ;
3124 void *tmp ;
3125 struct lock_class_key __key ;
3126 long tmp___0 ;
3127 long tmp___1 ;
3128 struct pcf8591_data *__cil_tmp9 ;
3129 unsigned long __cil_tmp10 ;
3130 unsigned long __cil_tmp11 ;
3131 void *__cil_tmp12 ;
3132 unsigned long __cil_tmp13 ;
3133 unsigned long __cil_tmp14 ;
3134 struct mutex *__cil_tmp15 ;
3135 unsigned long __cil_tmp16 ;
3136 unsigned long __cil_tmp17 ;
3137 unsigned long __cil_tmp18 ;
3138 struct kobject *__cil_tmp19 ;
3139 int *__cil_tmp20 ;
3140 int __cil_tmp21 ;
3141 unsigned long __cil_tmp22 ;
3142 unsigned long __cil_tmp23 ;
3143 struct device *__cil_tmp24 ;
3144 struct device_attribute const *__cil_tmp25 ;
3145 int *__cil_tmp26 ;
3146 int __cil_tmp27 ;
3147 unsigned long __cil_tmp28 ;
3148 unsigned long __cil_tmp29 ;
3149 struct device *__cil_tmp30 ;
3150 struct device_attribute const *__cil_tmp31 ;
3151 unsigned long __cil_tmp32 ;
3152 unsigned long __cil_tmp33 ;
3153 struct device *__cil_tmp34 ;
3154 struct device *__cil_tmp35 ;
3155 void const *__cil_tmp36 ;
3156 struct device *__cil_tmp37 ;
3157 void const *__cil_tmp38 ;
3158 unsigned long __cil_tmp39 ;
3159 unsigned long __cil_tmp40 ;
3160 unsigned long __cil_tmp41 ;
3161 struct kobject *__cil_tmp42 ;
3162 unsigned long __cil_tmp43 ;
3163 unsigned long __cil_tmp44 ;
3164 unsigned long __cil_tmp45 ;
3165 struct kobject *__cil_tmp46 ;
3166 void const *__cil_tmp47 ;
3167
3168 {
3169 {
3170#line 218
3171 tmp = kzalloc(184UL, 208U);
3172#line 218
3173 data = (struct pcf8591_data *)tmp;
3174 }
3175 {
3176#line 219
3177 __cil_tmp9 = (struct pcf8591_data *)0;
3178#line 219
3179 __cil_tmp10 = (unsigned long )__cil_tmp9;
3180#line 219
3181 __cil_tmp11 = (unsigned long )data;
3182#line 219
3183 if (__cil_tmp11 == __cil_tmp10) {
3184#line 220
3185 err = -12;
3186#line 221
3187 goto exit;
3188 } else {
3189
3190 }
3191 }
3192 {
3193#line 224
3194 __cil_tmp12 = (void *)data;
3195#line 224
3196 i2c_set_clientdata(client, __cil_tmp12);
3197#line 225
3198 __cil_tmp13 = (unsigned long )data;
3199#line 225
3200 __cil_tmp14 = __cil_tmp13 + 8;
3201#line 225
3202 __cil_tmp15 = (struct mutex *)__cil_tmp14;
3203#line 225
3204 __mutex_init(__cil_tmp15, "&data->update_lock", & __key);
3205#line 228
3206 pcf8591_init_client(client);
3207#line 231
3208 __cil_tmp16 = 40 + 16;
3209#line 231
3210 __cil_tmp17 = (unsigned long )client;
3211#line 231
3212 __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
3213#line 231
3214 __cil_tmp19 = (struct kobject *)__cil_tmp18;
3215#line 231
3216 err = sysfs_create_group(__cil_tmp19, & pcf8591_attr_group);
3217 }
3218#line 232
3219 if (err != 0) {
3220#line 233
3221 goto exit_kfree;
3222 } else {
3223
3224 }
3225 {
3226#line 236
3227 __cil_tmp20 = & input_mode;
3228#line 236
3229 __cil_tmp21 = *__cil_tmp20;
3230#line 236
3231 if (__cil_tmp21 != 3) {
3232 {
3233#line 237
3234 __cil_tmp22 = (unsigned long )client;
3235#line 237
3236 __cil_tmp23 = __cil_tmp22 + 40;
3237#line 237
3238 __cil_tmp24 = (struct device *)__cil_tmp23;
3239#line 237
3240 __cil_tmp25 = (struct device_attribute const *)(& dev_attr_in2_input);
3241#line 237
3242 err = device_create_file(__cil_tmp24, __cil_tmp25);
3243 }
3244#line 238
3245 if (err != 0) {
3246#line 239
3247 goto exit_sysfs_remove;
3248 } else {
3249
3250 }
3251 } else {
3252
3253 }
3254 }
3255 {
3256#line 243
3257 __cil_tmp26 = & input_mode;
3258#line 243
3259 __cil_tmp27 = *__cil_tmp26;
3260#line 243
3261 if (__cil_tmp27 == 0) {
3262 {
3263#line 244
3264 __cil_tmp28 = (unsigned long )client;
3265#line 244
3266 __cil_tmp29 = __cil_tmp28 + 40;
3267#line 244
3268 __cil_tmp30 = (struct device *)__cil_tmp29;
3269#line 244
3270 __cil_tmp31 = (struct device_attribute const *)(& dev_attr_in3_input);
3271#line 244
3272 err = device_create_file(__cil_tmp30, __cil_tmp31);
3273 }
3274#line 245
3275 if (err != 0) {
3276#line 246
3277 goto exit_sysfs_remove;
3278 } else {
3279
3280 }
3281 } else {
3282
3283 }
3284 }
3285 {
3286#line 249
3287 __cil_tmp32 = (unsigned long )client;
3288#line 249
3289 __cil_tmp33 = __cil_tmp32 + 40;
3290#line 249
3291 __cil_tmp34 = (struct device *)__cil_tmp33;
3292#line 249
3293 *((struct device **)data) = hwmon_device_register(__cil_tmp34);
3294#line 250
3295 __cil_tmp35 = *((struct device **)data);
3296#line 250
3297 __cil_tmp36 = (void const *)__cil_tmp35;
3298#line 250
3299 tmp___1 = IS_ERR(__cil_tmp36);
3300 }
3301#line 250
3302 if (tmp___1 != 0L) {
3303 {
3304#line 251
3305 __cil_tmp37 = *((struct device **)data);
3306#line 251
3307 __cil_tmp38 = (void const *)__cil_tmp37;
3308#line 251
3309 tmp___0 = PTR_ERR(__cil_tmp38);
3310#line 251
3311 err = (int )tmp___0;
3312 }
3313#line 252
3314 goto exit_sysfs_remove;
3315 } else {
3316
3317 }
3318#line 255
3319 return (0);
3320 exit_sysfs_remove:
3321 {
3322#line 258
3323 __cil_tmp39 = 40 + 16;
3324#line 258
3325 __cil_tmp40 = (unsigned long )client;
3326#line 258
3327 __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
3328#line 258
3329 __cil_tmp42 = (struct kobject *)__cil_tmp41;
3330#line 258
3331 sysfs_remove_group(__cil_tmp42, & pcf8591_attr_group_opt);
3332#line 259
3333 __cil_tmp43 = 40 + 16;
3334#line 259
3335 __cil_tmp44 = (unsigned long )client;
3336#line 259
3337 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
3338#line 259
3339 __cil_tmp46 = (struct kobject *)__cil_tmp45;
3340#line 259
3341 sysfs_remove_group(__cil_tmp46, & pcf8591_attr_group);
3342 }
3343 exit_kfree:
3344 {
3345#line 261
3346 __cil_tmp47 = (void const *)data;
3347#line 261
3348 kfree(__cil_tmp47);
3349 }
3350 exit: ;
3351#line 263
3352 return (err);
3353}
3354}
3355#line 266 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3356static int pcf8591_remove(struct i2c_client *client )
3357{ struct pcf8591_data *data ;
3358 void *tmp ;
3359 void *tmp___0 ;
3360 struct i2c_client const *__cil_tmp5 ;
3361 struct device *__cil_tmp6 ;
3362 unsigned long __cil_tmp7 ;
3363 unsigned long __cil_tmp8 ;
3364 unsigned long __cil_tmp9 ;
3365 struct kobject *__cil_tmp10 ;
3366 unsigned long __cil_tmp11 ;
3367 unsigned long __cil_tmp12 ;
3368 unsigned long __cil_tmp13 ;
3369 struct kobject *__cil_tmp14 ;
3370 struct i2c_client const *__cil_tmp15 ;
3371 void const *__cil_tmp16 ;
3372
3373 {
3374 {
3375#line 268
3376 __cil_tmp5 = (struct i2c_client const *)client;
3377#line 268
3378 tmp = i2c_get_clientdata(__cil_tmp5);
3379#line 268
3380 data = (struct pcf8591_data *)tmp;
3381#line 270
3382 __cil_tmp6 = *((struct device **)data);
3383#line 270
3384 hwmon_device_unregister(__cil_tmp6);
3385#line 271
3386 __cil_tmp7 = 40 + 16;
3387#line 271
3388 __cil_tmp8 = (unsigned long )client;
3389#line 271
3390 __cil_tmp9 = __cil_tmp8 + __cil_tmp7;
3391#line 271
3392 __cil_tmp10 = (struct kobject *)__cil_tmp9;
3393#line 271
3394 sysfs_remove_group(__cil_tmp10, & pcf8591_attr_group_opt);
3395#line 272
3396 __cil_tmp11 = 40 + 16;
3397#line 272
3398 __cil_tmp12 = (unsigned long )client;
3399#line 272
3400 __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
3401#line 272
3402 __cil_tmp14 = (struct kobject *)__cil_tmp13;
3403#line 272
3404 sysfs_remove_group(__cil_tmp14, & pcf8591_attr_group);
3405#line 273
3406 __cil_tmp15 = (struct i2c_client const *)client;
3407#line 273
3408 tmp___0 = i2c_get_clientdata(__cil_tmp15);
3409#line 273
3410 __cil_tmp16 = (void const *)tmp___0;
3411#line 273
3412 kfree(__cil_tmp16);
3413 }
3414#line 274
3415 return (0);
3416}
3417}
3418#line 278 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3419static void pcf8591_init_client(struct i2c_client *client )
3420{ struct pcf8591_data *data ;
3421 void *tmp ;
3422 struct i2c_client const *__cil_tmp4 ;
3423 unsigned long __cil_tmp5 ;
3424 unsigned long __cil_tmp6 ;
3425 int *__cil_tmp7 ;
3426 int __cil_tmp8 ;
3427 int __cil_tmp9 ;
3428 signed char __cil_tmp10 ;
3429 int __cil_tmp11 ;
3430 int __cil_tmp12 ;
3431 unsigned long __cil_tmp13 ;
3432 unsigned long __cil_tmp14 ;
3433 struct i2c_client const *__cil_tmp15 ;
3434 unsigned long __cil_tmp16 ;
3435 unsigned long __cil_tmp17 ;
3436 u8 __cil_tmp18 ;
3437 int __cil_tmp19 ;
3438 u8 __cil_tmp20 ;
3439 unsigned long __cil_tmp21 ;
3440 unsigned long __cil_tmp22 ;
3441 u8 __cil_tmp23 ;
3442 int __cil_tmp24 ;
3443 u8 __cil_tmp25 ;
3444 struct i2c_client const *__cil_tmp26 ;
3445
3446 {
3447 {
3448#line 280
3449 __cil_tmp4 = (struct i2c_client const *)client;
3450#line 280
3451 tmp = i2c_get_clientdata(__cil_tmp4);
3452#line 280
3453 data = (struct pcf8591_data *)tmp;
3454#line 281
3455 __cil_tmp5 = (unsigned long )data;
3456#line 281
3457 __cil_tmp6 = __cil_tmp5 + 176;
3458#line 281
3459 __cil_tmp7 = & input_mode;
3460#line 281
3461 __cil_tmp8 = *__cil_tmp7;
3462#line 281
3463 __cil_tmp9 = __cil_tmp8 << 4;
3464#line 281
3465 __cil_tmp10 = (signed char )__cil_tmp9;
3466#line 281
3467 __cil_tmp11 = (int )__cil_tmp10;
3468#line 281
3469 __cil_tmp12 = __cil_tmp11 | 64;
3470#line 281
3471 *((u8 *)__cil_tmp6) = (u8 )__cil_tmp12;
3472#line 282
3473 __cil_tmp13 = (unsigned long )data;
3474#line 282
3475 __cil_tmp14 = __cil_tmp13 + 177;
3476#line 282
3477 *((u8 *)__cil_tmp14) = (u8 )0U;
3478#line 284
3479 __cil_tmp15 = (struct i2c_client const *)client;
3480#line 284
3481 __cil_tmp16 = (unsigned long )data;
3482#line 284
3483 __cil_tmp17 = __cil_tmp16 + 176;
3484#line 284
3485 __cil_tmp18 = *((u8 *)__cil_tmp17);
3486#line 284
3487 __cil_tmp19 = (int )__cil_tmp18;
3488#line 284
3489 __cil_tmp20 = (u8 )__cil_tmp19;
3490#line 284
3491 __cil_tmp21 = (unsigned long )data;
3492#line 284
3493 __cil_tmp22 = __cil_tmp21 + 177;
3494#line 284
3495 __cil_tmp23 = *((u8 *)__cil_tmp22);
3496#line 284
3497 __cil_tmp24 = (int )__cil_tmp23;
3498#line 284
3499 __cil_tmp25 = (u8 )__cil_tmp24;
3500#line 284
3501 i2c_smbus_write_byte_data(__cil_tmp15, __cil_tmp20, __cil_tmp25);
3502#line 290
3503 __cil_tmp26 = (struct i2c_client const *)client;
3504#line 290
3505 i2c_smbus_read_byte(__cil_tmp26);
3506 }
3507#line 291
3508 return;
3509}
3510}
3511#line 293 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3512static int pcf8591_read_channel(struct device *dev , int channel )
3513{ u8 value ;
3514 struct i2c_client *client ;
3515 struct device const *__mptr ;
3516 struct pcf8591_data *data ;
3517 void *tmp ;
3518 s32 tmp___0 ;
3519 int tmp___1 ;
3520 struct i2c_client *__cil_tmp10 ;
3521 struct i2c_client const *__cil_tmp11 ;
3522 unsigned long __cil_tmp12 ;
3523 unsigned long __cil_tmp13 ;
3524 struct mutex *__cil_tmp14 ;
3525 unsigned long __cil_tmp15 ;
3526 unsigned long __cil_tmp16 ;
3527 u8 __cil_tmp17 ;
3528 int __cil_tmp18 ;
3529 int __cil_tmp19 ;
3530 unsigned long __cil_tmp20 ;
3531 unsigned long __cil_tmp21 ;
3532 signed char __cil_tmp22 ;
3533 int __cil_tmp23 ;
3534 unsigned long __cil_tmp24 ;
3535 unsigned long __cil_tmp25 ;
3536 u8 __cil_tmp26 ;
3537 signed char __cil_tmp27 ;
3538 int __cil_tmp28 ;
3539 int __cil_tmp29 ;
3540 int __cil_tmp30 ;
3541 struct i2c_client const *__cil_tmp31 ;
3542 unsigned long __cil_tmp32 ;
3543 unsigned long __cil_tmp33 ;
3544 u8 __cil_tmp34 ;
3545 int __cil_tmp35 ;
3546 u8 __cil_tmp36 ;
3547 struct i2c_client const *__cil_tmp37 ;
3548 struct i2c_client const *__cil_tmp38 ;
3549 unsigned long __cil_tmp39 ;
3550 unsigned long __cil_tmp40 ;
3551 struct mutex *__cil_tmp41 ;
3552 int *__cil_tmp42 ;
3553 int __cil_tmp43 ;
3554 int *__cil_tmp44 ;
3555 int __cil_tmp45 ;
3556 int *__cil_tmp46 ;
3557 int __cil_tmp47 ;
3558 signed char __cil_tmp48 ;
3559 int __cil_tmp49 ;
3560 int __cil_tmp50 ;
3561 int __cil_tmp51 ;
3562 int __cil_tmp52 ;
3563 int __cil_tmp53 ;
3564 int __cil_tmp54 ;
3565
3566 {
3567 {
3568#line 296
3569 __mptr = (struct device const *)dev;
3570#line 296
3571 __cil_tmp10 = (struct i2c_client *)__mptr;
3572#line 296
3573 client = __cil_tmp10 + 0xffffffffffffffd8UL;
3574#line 297
3575 __cil_tmp11 = (struct i2c_client const *)client;
3576#line 297
3577 tmp = i2c_get_clientdata(__cil_tmp11);
3578#line 297
3579 data = (struct pcf8591_data *)tmp;
3580#line 299
3581 __cil_tmp12 = (unsigned long )data;
3582#line 299
3583 __cil_tmp13 = __cil_tmp12 + 8;
3584#line 299
3585 __cil_tmp14 = (struct mutex *)__cil_tmp13;
3586#line 299
3587 mutex_lock_nested(__cil_tmp14, 0U);
3588 }
3589 {
3590#line 301
3591 __cil_tmp15 = (unsigned long )data;
3592#line 301
3593 __cil_tmp16 = __cil_tmp15 + 176;
3594#line 301
3595 __cil_tmp17 = *((u8 *)__cil_tmp16);
3596#line 301
3597 __cil_tmp18 = (int )__cil_tmp17;
3598#line 301
3599 __cil_tmp19 = __cil_tmp18 & 3;
3600#line 301
3601 if (__cil_tmp19 != channel) {
3602 {
3603#line 302
3604 __cil_tmp20 = (unsigned long )data;
3605#line 302
3606 __cil_tmp21 = __cil_tmp20 + 176;
3607#line 302
3608 __cil_tmp22 = (signed char )channel;
3609#line 302
3610 __cil_tmp23 = (int )__cil_tmp22;
3611#line 302
3612 __cil_tmp24 = (unsigned long )data;
3613#line 302
3614 __cil_tmp25 = __cil_tmp24 + 176;
3615#line 302
3616 __cil_tmp26 = *((u8 *)__cil_tmp25);
3617#line 302
3618 __cil_tmp27 = (signed char )__cil_tmp26;
3619#line 302
3620 __cil_tmp28 = (int )__cil_tmp27;
3621#line 302
3622 __cil_tmp29 = __cil_tmp28 & -4;
3623#line 302
3624 __cil_tmp30 = __cil_tmp29 | __cil_tmp23;
3625#line 302
3626 *((u8 *)__cil_tmp21) = (u8 )__cil_tmp30;
3627#line 304
3628 __cil_tmp31 = (struct i2c_client const *)client;
3629#line 304
3630 __cil_tmp32 = (unsigned long )data;
3631#line 304
3632 __cil_tmp33 = __cil_tmp32 + 176;
3633#line 304
3634 __cil_tmp34 = *((u8 *)__cil_tmp33);
3635#line 304
3636 __cil_tmp35 = (int )__cil_tmp34;
3637#line 304
3638 __cil_tmp36 = (u8 )__cil_tmp35;
3639#line 304
3640 i2c_smbus_write_byte(__cil_tmp31, __cil_tmp36);
3641#line 310
3642 __cil_tmp37 = (struct i2c_client const *)client;
3643#line 310
3644 i2c_smbus_read_byte(__cil_tmp37);
3645 }
3646 } else {
3647
3648 }
3649 }
3650 {
3651#line 312
3652 __cil_tmp38 = (struct i2c_client const *)client;
3653#line 312
3654 tmp___0 = i2c_smbus_read_byte(__cil_tmp38);
3655#line 312
3656 value = (u8 )tmp___0;
3657#line 314
3658 __cil_tmp39 = (unsigned long )data;
3659#line 314
3660 __cil_tmp40 = __cil_tmp39 + 8;
3661#line 314
3662 __cil_tmp41 = (struct mutex *)__cil_tmp40;
3663#line 314
3664 mutex_unlock(__cil_tmp41);
3665 }
3666#line 316
3667 if (channel == 2) {
3668 {
3669#line 316
3670 __cil_tmp42 = & input_mode;
3671#line 316
3672 __cil_tmp43 = *__cil_tmp42;
3673#line 316
3674 if (__cil_tmp43 == 2) {
3675#line 316
3676 goto _L___0;
3677 } else {
3678#line 316
3679 goto _L___1;
3680 }
3681 }
3682 } else
3683 _L___1:
3684#line 316
3685 if (channel != 3) {
3686 {
3687#line 316
3688 __cil_tmp44 = & input_mode;
3689#line 316
3690 __cil_tmp45 = *__cil_tmp44;
3691#line 316
3692 if (__cil_tmp45 == 1) {
3693#line 316
3694 goto _L___0;
3695 } else {
3696 {
3697#line 316
3698 __cil_tmp46 = & input_mode;
3699#line 316
3700 __cil_tmp47 = *__cil_tmp46;
3701#line 316
3702 if (__cil_tmp47 == 3) {
3703 _L___0:
3704 {
3705#line 318
3706 __cil_tmp48 = (signed char )value;
3707#line 318
3708 __cil_tmp49 = (int )__cil_tmp48;
3709#line 318
3710 if (__cil_tmp49 < 0) {
3711#line 318
3712 __cil_tmp50 = (int )value;
3713#line 318
3714 __cil_tmp51 = __cil_tmp50 * 10;
3715#line 318
3716 tmp___1 = __cil_tmp51 + -2560;
3717 } else {
3718#line 318
3719 __cil_tmp52 = (int )value;
3720#line 318
3721 tmp___1 = __cil_tmp52 * 10;
3722 }
3723 }
3724#line 318
3725 return (tmp___1);
3726 } else {
3727 {
3728#line 320
3729 __cil_tmp53 = (int )value;
3730#line 320
3731 return (__cil_tmp53 * 10);
3732 }
3733 }
3734 }
3735 }
3736 }
3737 } else {
3738 {
3739#line 320
3740 __cil_tmp54 = (int )value;
3741#line 320
3742 return (__cil_tmp54 * 10);
3743 }
3744 }
3745}
3746}
3747#line 323 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3748static struct i2c_device_id const pcf8591_id[2U] = { {{(char )'p', (char )'c', (char )'f', (char )'8', (char )'5', (char )'9', (char )'1',
3749 (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
3750 (char)0, (char)0, (char)0, (char)0, (char)0}, 0UL},
3751 {{(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
3752 (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
3753 (char)0, (char)0}, 0UL}};
3754#line 327 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3755struct i2c_device_id const __mod_i2c_device_table ;
3756#line 329 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3757static struct i2c_driver pcf8591_driver =
3758#line 329
3759 {0U, (int (*)(struct i2c_adapter * ))0, (int (*)(struct i2c_adapter * ))0, & pcf8591_probe,
3760 & pcf8591_remove, (void (*)(struct i2c_client * ))0, (int (*)(struct i2c_client * ,
3761 pm_message_t ))0,
3762 (int (*)(struct i2c_client * ))0, (void (*)(struct i2c_client * , unsigned int ))0,
3763 (int (*)(struct i2c_client * , unsigned int , void * ))0, {"pcf8591", (struct bus_type *)0,
3764 (struct module *)0,
3765 (char const *)0,
3766 (_Bool)0, (struct of_device_id const *)0,
3767 (int (*)(struct device * ))0,
3768 (int (*)(struct device * ))0,
3769 (void (*)(struct device * ))0,
3770 (int (*)(struct device * ,
3771 pm_message_t ))0,
3772 (int (*)(struct device * ))0,
3773 (struct attribute_group const **)0,
3774 (struct dev_pm_ops const *)0,
3775 (struct driver_private *)0},
3776 (struct i2c_device_id const *)(& pcf8591_id), (int (*)(struct i2c_client * ,
3777 struct i2c_board_info * ))0,
3778 (unsigned short const *)0, {(struct list_head *)0, (struct list_head *)0}};
3779#line 338 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3780static int pcf8591_init(void)
3781{ int tmp ;
3782 int *__cil_tmp2 ;
3783 int __cil_tmp3 ;
3784 int *__cil_tmp4 ;
3785 int __cil_tmp5 ;
3786 int *__cil_tmp6 ;
3787 int *__cil_tmp7 ;
3788 int __cil_tmp8 ;
3789 int *__cil_tmp9 ;
3790 int __cil_tmp10 ;
3791 int *__cil_tmp11 ;
3792
3793 {
3794 {
3795#line 340
3796 __cil_tmp2 = & input_mode;
3797#line 340
3798 __cil_tmp3 = *__cil_tmp2;
3799#line 340
3800 if (__cil_tmp3 < 0) {
3801 {
3802#line 341
3803 __cil_tmp4 = & input_mode;
3804#line 341
3805 __cil_tmp5 = *__cil_tmp4;
3806#line 341
3807 printk("<4>pcf8591: invalid input_mode (%d)\n", __cil_tmp5);
3808#line 342
3809 __cil_tmp6 = & input_mode;
3810#line 342
3811 *__cil_tmp6 = 0;
3812 }
3813 } else {
3814 {
3815#line 340
3816 __cil_tmp7 = & input_mode;
3817#line 340
3818 __cil_tmp8 = *__cil_tmp7;
3819#line 340
3820 if (__cil_tmp8 > 3) {
3821 {
3822#line 341
3823 __cil_tmp9 = & input_mode;
3824#line 341
3825 __cil_tmp10 = *__cil_tmp9;
3826#line 341
3827 printk("<4>pcf8591: invalid input_mode (%d)\n", __cil_tmp10);
3828#line 342
3829 __cil_tmp11 = & input_mode;
3830#line 342
3831 *__cil_tmp11 = 0;
3832 }
3833 } else {
3834
3835 }
3836 }
3837 }
3838 }
3839 {
3840#line 344
3841 tmp = i2c_register_driver(& __this_module, & pcf8591_driver);
3842 }
3843#line 344
3844 return (tmp);
3845}
3846}
3847#line 347 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3848static void pcf8591_exit(void)
3849{
3850
3851 {
3852 {
3853#line 349
3854 i2c_del_driver(& pcf8591_driver);
3855 }
3856#line 350
3857 return;
3858}
3859}
3860#line 375
3861extern void ldv_check_final_state(void) ;
3862#line 378
3863extern void ldv_check_return_value(int ) ;
3864#line 381
3865extern void ldv_initialize(void) ;
3866#line 384
3867extern int __VERIFIER_nondet_int(void) ;
3868#line 387 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3869int LDV_IN_INTERRUPT ;
3870#line 390 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
3871void main(void)
3872{ struct i2c_client *var_group1 ;
3873 struct i2c_device_id const *var_pcf8591_probe_4_p1 ;
3874 int res_pcf8591_probe_4 ;
3875 int res_pcf8591_remove_5 ;
3876 int ldv_s_pcf8591_driver_i2c_driver ;
3877 int tmp ;
3878 int tmp___0 ;
3879 int tmp___1 ;
3880
3881 {
3882 {
3883#line 487
3884 ldv_s_pcf8591_driver_i2c_driver = 0;
3885#line 452
3886 LDV_IN_INTERRUPT = 1;
3887#line 461
3888 ldv_initialize();
3889#line 485
3890 tmp = pcf8591_init();
3891 }
3892#line 485
3893 if (tmp != 0) {
3894#line 486
3895 goto ldv_final;
3896 } else {
3897
3898 }
3899#line 490
3900 goto ldv_18934;
3901 ldv_18933:
3902 {
3903#line 494
3904 tmp___0 = __VERIFIER_nondet_int();
3905 }
3906#line 496
3907 if (tmp___0 == 0) {
3908#line 496
3909 goto case_0;
3910 } else
3911#line 533
3912 if (tmp___0 == 1) {
3913#line 533
3914 goto case_1;
3915 } else {
3916 {
3917#line 570
3918 goto switch_default;
3919#line 494
3920 if (0) {
3921 case_0: ;
3922#line 499
3923 if (ldv_s_pcf8591_driver_i2c_driver == 0) {
3924 {
3925#line 522
3926 res_pcf8591_probe_4 = pcf8591_probe(var_group1, var_pcf8591_probe_4_p1);
3927#line 523
3928 ldv_check_return_value(res_pcf8591_probe_4);
3929 }
3930#line 524
3931 if (res_pcf8591_probe_4 != 0) {
3932#line 525
3933 goto ldv_module_exit;
3934 } else {
3935
3936 }
3937#line 526
3938 ldv_s_pcf8591_driver_i2c_driver = ldv_s_pcf8591_driver_i2c_driver + 1;
3939 } else {
3940
3941 }
3942#line 532
3943 goto ldv_18930;
3944 case_1: ;
3945#line 536
3946 if (ldv_s_pcf8591_driver_i2c_driver == 1) {
3947 {
3948#line 559
3949 res_pcf8591_remove_5 = pcf8591_remove(var_group1);
3950#line 560
3951 ldv_check_return_value(res_pcf8591_remove_5);
3952 }
3953#line 561
3954 if (res_pcf8591_remove_5 != 0) {
3955#line 562
3956 goto ldv_module_exit;
3957 } else {
3958
3959 }
3960#line 563
3961 ldv_s_pcf8591_driver_i2c_driver = 0;
3962 } else {
3963
3964 }
3965#line 569
3966 goto ldv_18930;
3967 switch_default: ;
3968#line 570
3969 goto ldv_18930;
3970 } else {
3971 switch_break: ;
3972 }
3973 }
3974 }
3975 ldv_18930: ;
3976 ldv_18934:
3977 {
3978#line 490
3979 tmp___1 = __VERIFIER_nondet_int();
3980 }
3981#line 490
3982 if (tmp___1 != 0) {
3983#line 492
3984 goto ldv_18933;
3985 } else
3986#line 490
3987 if (ldv_s_pcf8591_driver_i2c_driver != 0) {
3988#line 492
3989 goto ldv_18933;
3990 } else {
3991#line 494
3992 goto ldv_18935;
3993 }
3994 ldv_18935: ;
3995 ldv_module_exit:
3996 {
3997#line 600
3998 pcf8591_exit();
3999 }
4000 ldv_final:
4001 {
4002#line 603
4003 ldv_check_final_state();
4004 }
4005#line 606
4006 return;
4007}
4008}
4009#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
4010void ldv_blast_assert(void)
4011{
4012
4013 {
4014 ERROR: ;
4015#line 6
4016 goto ERROR;
4017}
4018}
4019#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
4020extern int __VERIFIER_nondet_int(void) ;
4021#line 627 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4022int ldv_spin = 0;
4023#line 631 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4024void ldv_check_alloc_flags(gfp_t flags )
4025{
4026
4027 {
4028#line 634
4029 if (ldv_spin != 0) {
4030#line 634
4031 if (flags != 32U) {
4032 {
4033#line 634
4034 ldv_blast_assert();
4035 }
4036 } else {
4037
4038 }
4039 } else {
4040
4041 }
4042#line 637
4043 return;
4044}
4045}
4046#line 637
4047extern struct page *ldv_some_page(void) ;
4048#line 640 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4049struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
4050{ struct page *tmp ;
4051
4052 {
4053#line 643
4054 if (ldv_spin != 0) {
4055#line 643
4056 if (flags != 32U) {
4057 {
4058#line 643
4059 ldv_blast_assert();
4060 }
4061 } else {
4062
4063 }
4064 } else {
4065
4066 }
4067 {
4068#line 645
4069 tmp = ldv_some_page();
4070 }
4071#line 645
4072 return (tmp);
4073}
4074}
4075#line 649 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4076void ldv_check_alloc_nonatomic(void)
4077{
4078
4079 {
4080#line 652
4081 if (ldv_spin != 0) {
4082 {
4083#line 652
4084 ldv_blast_assert();
4085 }
4086 } else {
4087
4088 }
4089#line 655
4090 return;
4091}
4092}
4093#line 656 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4094void ldv_spin_lock(void)
4095{
4096
4097 {
4098#line 659
4099 ldv_spin = 1;
4100#line 660
4101 return;
4102}
4103}
4104#line 663 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4105void ldv_spin_unlock(void)
4106{
4107
4108 {
4109#line 666
4110 ldv_spin = 0;
4111#line 667
4112 return;
4113}
4114}
4115#line 670 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4116int ldv_spin_trylock(void)
4117{ int is_lock ;
4118
4119 {
4120 {
4121#line 675
4122 is_lock = __VERIFIER_nondet_int();
4123 }
4124#line 677
4125 if (is_lock != 0) {
4126#line 680
4127 return (0);
4128 } else {
4129#line 685
4130 ldv_spin = 1;
4131#line 687
4132 return (1);
4133 }
4134}
4135}
4136#line 854 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4137void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
4138{
4139
4140 {
4141 {
4142#line 860
4143 ldv_check_alloc_flags(ldv_func_arg2);
4144#line 862
4145 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
4146 }
4147#line 863
4148 return ((void *)0);
4149}
4150}
4151#line 865 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11097/dscv_tempdir/dscv/ri/43_1a/drivers/hwmon/pcf8591.c.p"
4152__inline static void *kzalloc(size_t size , gfp_t flags )
4153{ void *tmp ;
4154
4155 {
4156 {
4157#line 871
4158 ldv_check_alloc_flags(flags);
4159#line 872
4160 tmp = __VERIFIER_nondet_pointer();
4161 }
4162#line 872
4163 return (tmp);
4164}
4165}