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