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