1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 20 "include/asm-generic/int-ll64.h"
7typedef unsigned char __u8;
8#line 22 "include/asm-generic/int-ll64.h"
9typedef short __s16;
10#line 23 "include/asm-generic/int-ll64.h"
11typedef unsigned short __u16;
12#line 25 "include/asm-generic/int-ll64.h"
13typedef int __s32;
14#line 26 "include/asm-generic/int-ll64.h"
15typedef unsigned int __u32;
16#line 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 52 "include/asm-generic/posix_types.h"
37typedef unsigned int __kernel_uid32_t;
38#line 53 "include/asm-generic/posix_types.h"
39typedef unsigned int __kernel_gid32_t;
40#line 75 "include/asm-generic/posix_types.h"
41typedef __kernel_ulong_t __kernel_size_t;
42#line 76 "include/asm-generic/posix_types.h"
43typedef __kernel_long_t __kernel_ssize_t;
44#line 91 "include/asm-generic/posix_types.h"
45typedef long long __kernel_loff_t;
46#line 92 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_time_t;
48#line 95 "include/asm-generic/posix_types.h"
49typedef int __kernel_clockid_t;
50#line 21 "include/linux/types.h"
51typedef __u32 __kernel_dev_t;
52#line 24 "include/linux/types.h"
53typedef __kernel_dev_t dev_t;
54#line 27 "include/linux/types.h"
55typedef unsigned short umode_t;
56#line 35 "include/linux/types.h"
57typedef __kernel_clockid_t clockid_t;
58#line 38 "include/linux/types.h"
59typedef _Bool bool;
60#line 40 "include/linux/types.h"
61typedef __kernel_uid32_t uid_t;
62#line 41 "include/linux/types.h"
63typedef __kernel_gid32_t gid_t;
64#line 54 "include/linux/types.h"
65typedef __kernel_loff_t loff_t;
66#line 63 "include/linux/types.h"
67typedef __kernel_size_t size_t;
68#line 68 "include/linux/types.h"
69typedef __kernel_ssize_t ssize_t;
70#line 78 "include/linux/types.h"
71typedef __kernel_time_t time_t;
72#line 115 "include/linux/types.h"
73typedef __u8 uint8_t;
74#line 142 "include/linux/types.h"
75typedef unsigned long sector_t;
76#line 143 "include/linux/types.h"
77typedef unsigned long blkcnt_t;
78#line 202 "include/linux/types.h"
79typedef unsigned int gfp_t;
80#line 203 "include/linux/types.h"
81typedef unsigned int fmode_t;
82#line 206 "include/linux/types.h"
83typedef u64 phys_addr_t;
84#line 211 "include/linux/types.h"
85typedef phys_addr_t resource_size_t;
86#line 221 "include/linux/types.h"
87struct __anonstruct_atomic_t_6 {
88 int counter ;
89};
90#line 221 "include/linux/types.h"
91typedef struct __anonstruct_atomic_t_6 atomic_t;
92#line 226 "include/linux/types.h"
93struct __anonstruct_atomic64_t_7 {
94 long counter ;
95};
96#line 226 "include/linux/types.h"
97typedef struct __anonstruct_atomic64_t_7 atomic64_t;
98#line 227 "include/linux/types.h"
99struct list_head {
100 struct list_head *next ;
101 struct list_head *prev ;
102};
103#line 232
104struct hlist_node;
105#line 232 "include/linux/types.h"
106struct hlist_head {
107 struct hlist_node *first ;
108};
109#line 236 "include/linux/types.h"
110struct hlist_node {
111 struct hlist_node *next ;
112 struct hlist_node **pprev ;
113};
114#line 247 "include/linux/types.h"
115struct rcu_head {
116 struct rcu_head *next ;
117 void (*func)(struct rcu_head * ) ;
118};
119#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
120struct module;
121#line 55
122struct module;
123#line 146 "include/linux/init.h"
124typedef void (*ctor_fn_t)(void);
125#line 46 "include/linux/dynamic_debug.h"
126struct device;
127#line 46
128struct device;
129#line 57
130struct completion;
131#line 57
132struct completion;
133#line 348 "include/linux/kernel.h"
134struct pid;
135#line 348
136struct pid;
137#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
138struct timespec;
139#line 112
140struct timespec;
141#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
142struct page;
143#line 58
144struct page;
145#line 26 "include/asm-generic/getorder.h"
146struct task_struct;
147#line 26
148struct task_struct;
149#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
150struct file;
151#line 290
152struct file;
153#line 305
154struct seq_file;
155#line 305
156struct seq_file;
157#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
158struct arch_spinlock;
159#line 327
160struct arch_spinlock;
161#line 306 "include/linux/bitmap.h"
162struct bug_entry {
163 int bug_addr_disp ;
164 int file_disp ;
165 unsigned short line ;
166 unsigned short flags ;
167};
168#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
169struct static_key;
170#line 234
171struct static_key;
172#line 153 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
173struct seq_operations;
174#line 433
175struct kmem_cache;
176#line 23 "include/asm-generic/atomic-long.h"
177typedef atomic64_t atomic_long_t;
178#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
179typedef u16 __ticket_t;
180#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
181typedef u32 __ticketpair_t;
182#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
183struct __raw_tickets {
184 __ticket_t head ;
185 __ticket_t tail ;
186};
187#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
188union __anonunion_ldv_5907_29 {
189 __ticketpair_t head_tail ;
190 struct __raw_tickets tickets ;
191};
192#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
193struct arch_spinlock {
194 union __anonunion_ldv_5907_29 ldv_5907 ;
195};
196#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
197typedef struct arch_spinlock arch_spinlock_t;
198#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
199struct __anonstruct_ldv_5914_31 {
200 u32 read ;
201 s32 write ;
202};
203#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
204union __anonunion_arch_rwlock_t_30 {
205 s64 lock ;
206 struct __anonstruct_ldv_5914_31 ldv_5914 ;
207};
208#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
209typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
210#line 34
211struct lockdep_map;
212#line 34
213struct lockdep_map;
214#line 55 "include/linux/debug_locks.h"
215struct stack_trace {
216 unsigned int nr_entries ;
217 unsigned int max_entries ;
218 unsigned long *entries ;
219 int skip ;
220};
221#line 26 "include/linux/stacktrace.h"
222struct lockdep_subclass_key {
223 char __one_byte ;
224};
225#line 53 "include/linux/lockdep.h"
226struct lock_class_key {
227 struct lockdep_subclass_key subkeys[8U] ;
228};
229#line 59 "include/linux/lockdep.h"
230struct lock_class {
231 struct list_head hash_entry ;
232 struct list_head lock_entry ;
233 struct lockdep_subclass_key *key ;
234 unsigned int subclass ;
235 unsigned int dep_gen_id ;
236 unsigned long usage_mask ;
237 struct stack_trace usage_traces[13U] ;
238 struct list_head locks_after ;
239 struct list_head locks_before ;
240 unsigned int version ;
241 unsigned long ops ;
242 char const *name ;
243 int name_version ;
244 unsigned long contention_point[4U] ;
245 unsigned long contending_point[4U] ;
246};
247#line 144 "include/linux/lockdep.h"
248struct lockdep_map {
249 struct lock_class_key *key ;
250 struct lock_class *class_cache[2U] ;
251 char const *name ;
252 int cpu ;
253 unsigned long ip ;
254};
255#line 556 "include/linux/lockdep.h"
256struct raw_spinlock {
257 arch_spinlock_t raw_lock ;
258 unsigned int magic ;
259 unsigned int owner_cpu ;
260 void *owner ;
261 struct lockdep_map dep_map ;
262};
263#line 32 "include/linux/spinlock_types.h"
264typedef struct raw_spinlock raw_spinlock_t;
265#line 33 "include/linux/spinlock_types.h"
266struct __anonstruct_ldv_6122_33 {
267 u8 __padding[24U] ;
268 struct lockdep_map dep_map ;
269};
270#line 33 "include/linux/spinlock_types.h"
271union __anonunion_ldv_6123_32 {
272 struct raw_spinlock rlock ;
273 struct __anonstruct_ldv_6122_33 ldv_6122 ;
274};
275#line 33 "include/linux/spinlock_types.h"
276struct spinlock {
277 union __anonunion_ldv_6123_32 ldv_6123 ;
278};
279#line 76 "include/linux/spinlock_types.h"
280typedef struct spinlock spinlock_t;
281#line 23 "include/linux/rwlock_types.h"
282struct __anonstruct_rwlock_t_34 {
283 arch_rwlock_t raw_lock ;
284 unsigned int magic ;
285 unsigned int owner_cpu ;
286 void *owner ;
287 struct lockdep_map dep_map ;
288};
289#line 23 "include/linux/rwlock_types.h"
290typedef struct __anonstruct_rwlock_t_34 rwlock_t;
291#line 110 "include/linux/seqlock.h"
292struct seqcount {
293 unsigned int sequence ;
294};
295#line 121 "include/linux/seqlock.h"
296typedef struct seqcount seqcount_t;
297#line 254 "include/linux/seqlock.h"
298struct timespec {
299 __kernel_time_t tv_sec ;
300 long tv_nsec ;
301};
302#line 286 "include/linux/time.h"
303struct kstat {
304 u64 ino ;
305 dev_t dev ;
306 umode_t mode ;
307 unsigned int nlink ;
308 uid_t uid ;
309 gid_t gid ;
310 dev_t rdev ;
311 loff_t size ;
312 struct timespec atime ;
313 struct timespec mtime ;
314 struct timespec ctime ;
315 unsigned long blksize ;
316 unsigned long long blocks ;
317};
318#line 48 "include/linux/wait.h"
319struct __wait_queue_head {
320 spinlock_t lock ;
321 struct list_head task_list ;
322};
323#line 53 "include/linux/wait.h"
324typedef struct __wait_queue_head wait_queue_head_t;
325#line 670 "include/linux/mmzone.h"
326struct mutex {
327 atomic_t count ;
328 spinlock_t wait_lock ;
329 struct list_head wait_list ;
330 struct task_struct *owner ;
331 char const *name ;
332 void *magic ;
333 struct lockdep_map dep_map ;
334};
335#line 171 "include/linux/mutex.h"
336struct rw_semaphore;
337#line 171
338struct rw_semaphore;
339#line 172 "include/linux/mutex.h"
340struct rw_semaphore {
341 long count ;
342 raw_spinlock_t wait_lock ;
343 struct list_head wait_list ;
344 struct lockdep_map dep_map ;
345};
346#line 128 "include/linux/rwsem.h"
347struct completion {
348 unsigned int done ;
349 wait_queue_head_t wait ;
350};
351#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/e820.h"
352struct resource {
353 resource_size_t start ;
354 resource_size_t end ;
355 char const *name ;
356 unsigned long flags ;
357 struct resource *parent ;
358 struct resource *sibling ;
359 struct resource *child ;
360};
361#line 312 "include/linux/jiffies.h"
362union ktime {
363 s64 tv64 ;
364};
365#line 59 "include/linux/ktime.h"
366typedef union ktime ktime_t;
367#line 341
368struct tvec_base;
369#line 341
370struct tvec_base;
371#line 342 "include/linux/ktime.h"
372struct timer_list {
373 struct list_head entry ;
374 unsigned long expires ;
375 struct tvec_base *base ;
376 void (*function)(unsigned long ) ;
377 unsigned long data ;
378 int slack ;
379 int start_pid ;
380 void *start_site ;
381 char start_comm[16U] ;
382 struct lockdep_map lockdep_map ;
383};
384#line 289 "include/linux/timer.h"
385struct hrtimer;
386#line 289
387struct hrtimer;
388#line 290
389enum hrtimer_restart;
390#line 302
391struct work_struct;
392#line 302
393struct work_struct;
394#line 45 "include/linux/workqueue.h"
395struct work_struct {
396 atomic_long_t data ;
397 struct list_head entry ;
398 void (*func)(struct work_struct * ) ;
399 struct lockdep_map lockdep_map ;
400};
401#line 46 "include/linux/pm.h"
402struct pm_message {
403 int event ;
404};
405#line 52 "include/linux/pm.h"
406typedef struct pm_message pm_message_t;
407#line 53 "include/linux/pm.h"
408struct dev_pm_ops {
409 int (*prepare)(struct device * ) ;
410 void (*complete)(struct device * ) ;
411 int (*suspend)(struct device * ) ;
412 int (*resume)(struct device * ) ;
413 int (*freeze)(struct device * ) ;
414 int (*thaw)(struct device * ) ;
415 int (*poweroff)(struct device * ) ;
416 int (*restore)(struct device * ) ;
417 int (*suspend_late)(struct device * ) ;
418 int (*resume_early)(struct device * ) ;
419 int (*freeze_late)(struct device * ) ;
420 int (*thaw_early)(struct device * ) ;
421 int (*poweroff_late)(struct device * ) ;
422 int (*restore_early)(struct device * ) ;
423 int (*suspend_noirq)(struct device * ) ;
424 int (*resume_noirq)(struct device * ) ;
425 int (*freeze_noirq)(struct device * ) ;
426 int (*thaw_noirq)(struct device * ) ;
427 int (*poweroff_noirq)(struct device * ) ;
428 int (*restore_noirq)(struct device * ) ;
429 int (*runtime_suspend)(struct device * ) ;
430 int (*runtime_resume)(struct device * ) ;
431 int (*runtime_idle)(struct device * ) ;
432};
433#line 289
434enum rpm_status {
435 RPM_ACTIVE = 0,
436 RPM_RESUMING = 1,
437 RPM_SUSPENDED = 2,
438 RPM_SUSPENDING = 3
439} ;
440#line 296
441enum rpm_request {
442 RPM_REQ_NONE = 0,
443 RPM_REQ_IDLE = 1,
444 RPM_REQ_SUSPEND = 2,
445 RPM_REQ_AUTOSUSPEND = 3,
446 RPM_REQ_RESUME = 4
447} ;
448#line 304
449struct wakeup_source;
450#line 304
451struct wakeup_source;
452#line 494 "include/linux/pm.h"
453struct pm_subsys_data {
454 spinlock_t lock ;
455 unsigned int refcount ;
456};
457#line 499
458struct dev_pm_qos_request;
459#line 499
460struct pm_qos_constraints;
461#line 499 "include/linux/pm.h"
462struct dev_pm_info {
463 pm_message_t power_state ;
464 unsigned char can_wakeup : 1 ;
465 unsigned char async_suspend : 1 ;
466 bool is_prepared ;
467 bool is_suspended ;
468 bool ignore_children ;
469 spinlock_t lock ;
470 struct list_head entry ;
471 struct completion completion ;
472 struct wakeup_source *wakeup ;
473 bool wakeup_path ;
474 struct timer_list suspend_timer ;
475 unsigned long timer_expires ;
476 struct work_struct work ;
477 wait_queue_head_t wait_queue ;
478 atomic_t usage_count ;
479 atomic_t child_count ;
480 unsigned char disable_depth : 3 ;
481 unsigned char idle_notification : 1 ;
482 unsigned char request_pending : 1 ;
483 unsigned char deferred_resume : 1 ;
484 unsigned char run_wake : 1 ;
485 unsigned char runtime_auto : 1 ;
486 unsigned char no_callbacks : 1 ;
487 unsigned char irq_safe : 1 ;
488 unsigned char use_autosuspend : 1 ;
489 unsigned char timer_autosuspends : 1 ;
490 enum rpm_request request ;
491 enum rpm_status runtime_status ;
492 int runtime_error ;
493 int autosuspend_delay ;
494 unsigned long last_busy ;
495 unsigned long active_jiffies ;
496 unsigned long suspended_jiffies ;
497 unsigned long accounting_timestamp ;
498 ktime_t suspend_time ;
499 s64 max_time_suspended_ns ;
500 struct dev_pm_qos_request *pq_req ;
501 struct pm_subsys_data *subsys_data ;
502 struct pm_qos_constraints *constraints ;
503};
504#line 558 "include/linux/pm.h"
505struct dev_pm_domain {
506 struct dev_pm_ops ops ;
507};
508#line 18 "include/asm-generic/pci_iomap.h"
509struct vm_area_struct;
510#line 18
511struct vm_area_struct;
512#line 835 "include/linux/sysctl.h"
513struct rb_node {
514 unsigned long rb_parent_color ;
515 struct rb_node *rb_right ;
516 struct rb_node *rb_left ;
517};
518#line 108 "include/linux/rbtree.h"
519struct rb_root {
520 struct rb_node *rb_node ;
521};
522#line 37 "include/linux/kmod.h"
523struct cred;
524#line 37
525struct cred;
526#line 18 "include/linux/elf.h"
527typedef __u64 Elf64_Addr;
528#line 19 "include/linux/elf.h"
529typedef __u16 Elf64_Half;
530#line 23 "include/linux/elf.h"
531typedef __u32 Elf64_Word;
532#line 24 "include/linux/elf.h"
533typedef __u64 Elf64_Xword;
534#line 193 "include/linux/elf.h"
535struct elf64_sym {
536 Elf64_Word st_name ;
537 unsigned char st_info ;
538 unsigned char st_other ;
539 Elf64_Half st_shndx ;
540 Elf64_Addr st_value ;
541 Elf64_Xword st_size ;
542};
543#line 201 "include/linux/elf.h"
544typedef struct elf64_sym Elf64_Sym;
545#line 445
546struct sock;
547#line 445
548struct sock;
549#line 446
550struct kobject;
551#line 446
552struct kobject;
553#line 447
554enum kobj_ns_type {
555 KOBJ_NS_TYPE_NONE = 0,
556 KOBJ_NS_TYPE_NET = 1,
557 KOBJ_NS_TYPES = 2
558} ;
559#line 453 "include/linux/elf.h"
560struct kobj_ns_type_operations {
561 enum kobj_ns_type type ;
562 void *(*grab_current_ns)(void) ;
563 void const *(*netlink_ns)(struct sock * ) ;
564 void const *(*initial_ns)(void) ;
565 void (*drop_ns)(void * ) ;
566};
567#line 57 "include/linux/kobject_ns.h"
568struct attribute {
569 char const *name ;
570 umode_t mode ;
571 struct lock_class_key *key ;
572 struct lock_class_key skey ;
573};
574#line 33 "include/linux/sysfs.h"
575struct attribute_group {
576 char const *name ;
577 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
578 struct attribute **attrs ;
579};
580#line 62 "include/linux/sysfs.h"
581struct bin_attribute {
582 struct attribute attr ;
583 size_t size ;
584 void *private ;
585 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
586 loff_t , size_t ) ;
587 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
588 loff_t , size_t ) ;
589 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
590};
591#line 98 "include/linux/sysfs.h"
592struct sysfs_ops {
593 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
594 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
595 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
596};
597#line 117
598struct sysfs_dirent;
599#line 117
600struct sysfs_dirent;
601#line 182 "include/linux/sysfs.h"
602struct kref {
603 atomic_t refcount ;
604};
605#line 49 "include/linux/kobject.h"
606struct kset;
607#line 49
608struct kobj_type;
609#line 49 "include/linux/kobject.h"
610struct kobject {
611 char const *name ;
612 struct list_head entry ;
613 struct kobject *parent ;
614 struct kset *kset ;
615 struct kobj_type *ktype ;
616 struct sysfs_dirent *sd ;
617 struct kref kref ;
618 unsigned char state_initialized : 1 ;
619 unsigned char state_in_sysfs : 1 ;
620 unsigned char state_add_uevent_sent : 1 ;
621 unsigned char state_remove_uevent_sent : 1 ;
622 unsigned char uevent_suppress : 1 ;
623};
624#line 107 "include/linux/kobject.h"
625struct kobj_type {
626 void (*release)(struct kobject * ) ;
627 struct sysfs_ops const *sysfs_ops ;
628 struct attribute **default_attrs ;
629 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
630 void const *(*namespace)(struct kobject * ) ;
631};
632#line 115 "include/linux/kobject.h"
633struct kobj_uevent_env {
634 char *envp[32U] ;
635 int envp_idx ;
636 char buf[2048U] ;
637 int buflen ;
638};
639#line 122 "include/linux/kobject.h"
640struct kset_uevent_ops {
641 int (* const filter)(struct kset * , struct kobject * ) ;
642 char const *(* const name)(struct kset * , struct kobject * ) ;
643 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
644};
645#line 139 "include/linux/kobject.h"
646struct kset {
647 struct list_head list ;
648 spinlock_t list_lock ;
649 struct kobject kobj ;
650 struct kset_uevent_ops const *uevent_ops ;
651};
652#line 215
653struct kernel_param;
654#line 215
655struct kernel_param;
656#line 216 "include/linux/kobject.h"
657struct kernel_param_ops {
658 int (*set)(char const * , struct kernel_param const * ) ;
659 int (*get)(char * , struct kernel_param const * ) ;
660 void (*free)(void * ) ;
661};
662#line 49 "include/linux/moduleparam.h"
663struct kparam_string;
664#line 49
665struct kparam_array;
666#line 49 "include/linux/moduleparam.h"
667union __anonunion_ldv_13363_134 {
668 void *arg ;
669 struct kparam_string const *str ;
670 struct kparam_array const *arr ;
671};
672#line 49 "include/linux/moduleparam.h"
673struct kernel_param {
674 char const *name ;
675 struct kernel_param_ops const *ops ;
676 u16 perm ;
677 s16 level ;
678 union __anonunion_ldv_13363_134 ldv_13363 ;
679};
680#line 61 "include/linux/moduleparam.h"
681struct kparam_string {
682 unsigned int maxlen ;
683 char *string ;
684};
685#line 67 "include/linux/moduleparam.h"
686struct kparam_array {
687 unsigned int max ;
688 unsigned int elemsize ;
689 unsigned int *num ;
690 struct kernel_param_ops const *ops ;
691 void *elem ;
692};
693#line 458 "include/linux/moduleparam.h"
694struct static_key {
695 atomic_t enabled ;
696};
697#line 225 "include/linux/jump_label.h"
698struct tracepoint;
699#line 225
700struct tracepoint;
701#line 226 "include/linux/jump_label.h"
702struct tracepoint_func {
703 void *func ;
704 void *data ;
705};
706#line 29 "include/linux/tracepoint.h"
707struct tracepoint {
708 char const *name ;
709 struct static_key key ;
710 void (*regfunc)(void) ;
711 void (*unregfunc)(void) ;
712 struct tracepoint_func *funcs ;
713};
714#line 86 "include/linux/tracepoint.h"
715struct kernel_symbol {
716 unsigned long value ;
717 char const *name ;
718};
719#line 27 "include/linux/export.h"
720struct mod_arch_specific {
721
722};
723#line 34 "include/linux/module.h"
724struct module_param_attrs;
725#line 34 "include/linux/module.h"
726struct module_kobject {
727 struct kobject kobj ;
728 struct module *mod ;
729 struct kobject *drivers_dir ;
730 struct module_param_attrs *mp ;
731};
732#line 43 "include/linux/module.h"
733struct module_attribute {
734 struct attribute attr ;
735 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
736 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
737 size_t ) ;
738 void (*setup)(struct module * , char const * ) ;
739 int (*test)(struct module * ) ;
740 void (*free)(struct module * ) ;
741};
742#line 69
743struct exception_table_entry;
744#line 69
745struct exception_table_entry;
746#line 198
747enum module_state {
748 MODULE_STATE_LIVE = 0,
749 MODULE_STATE_COMING = 1,
750 MODULE_STATE_GOING = 2
751} ;
752#line 204 "include/linux/module.h"
753struct module_ref {
754 unsigned long incs ;
755 unsigned long decs ;
756};
757#line 219
758struct module_sect_attrs;
759#line 219
760struct module_notes_attrs;
761#line 219
762struct ftrace_event_call;
763#line 219 "include/linux/module.h"
764struct module {
765 enum module_state state ;
766 struct list_head list ;
767 char name[56U] ;
768 struct module_kobject mkobj ;
769 struct module_attribute *modinfo_attrs ;
770 char const *version ;
771 char const *srcversion ;
772 struct kobject *holders_dir ;
773 struct kernel_symbol const *syms ;
774 unsigned long const *crcs ;
775 unsigned int num_syms ;
776 struct kernel_param *kp ;
777 unsigned int num_kp ;
778 unsigned int num_gpl_syms ;
779 struct kernel_symbol const *gpl_syms ;
780 unsigned long const *gpl_crcs ;
781 struct kernel_symbol const *unused_syms ;
782 unsigned long const *unused_crcs ;
783 unsigned int num_unused_syms ;
784 unsigned int num_unused_gpl_syms ;
785 struct kernel_symbol const *unused_gpl_syms ;
786 unsigned long const *unused_gpl_crcs ;
787 struct kernel_symbol const *gpl_future_syms ;
788 unsigned long const *gpl_future_crcs ;
789 unsigned int num_gpl_future_syms ;
790 unsigned int num_exentries ;
791 struct exception_table_entry *extable ;
792 int (*init)(void) ;
793 void *module_init ;
794 void *module_core ;
795 unsigned int init_size ;
796 unsigned int core_size ;
797 unsigned int init_text_size ;
798 unsigned int core_text_size ;
799 unsigned int init_ro_size ;
800 unsigned int core_ro_size ;
801 struct mod_arch_specific arch ;
802 unsigned int taints ;
803 unsigned int num_bugs ;
804 struct list_head bug_list ;
805 struct bug_entry *bug_table ;
806 Elf64_Sym *symtab ;
807 Elf64_Sym *core_symtab ;
808 unsigned int num_symtab ;
809 unsigned int core_num_syms ;
810 char *strtab ;
811 char *core_strtab ;
812 struct module_sect_attrs *sect_attrs ;
813 struct module_notes_attrs *notes_attrs ;
814 char *args ;
815 void *percpu ;
816 unsigned int percpu_size ;
817 unsigned int num_tracepoints ;
818 struct tracepoint * const *tracepoints_ptrs ;
819 unsigned int num_trace_bprintk_fmt ;
820 char const **trace_bprintk_fmt_start ;
821 struct ftrace_event_call **trace_events ;
822 unsigned int num_trace_events ;
823 struct list_head source_list ;
824 struct list_head target_list ;
825 struct task_struct *waiter ;
826 void (*exit)(void) ;
827 struct module_ref *refptr ;
828 ctor_fn_t (**ctors)(void) ;
829 unsigned int num_ctors ;
830};
831#line 88 "include/linux/kmemleak.h"
832struct kmem_cache_cpu {
833 void **freelist ;
834 unsigned long tid ;
835 struct page *page ;
836 struct page *partial ;
837 int node ;
838 unsigned int stat[26U] ;
839};
840#line 55 "include/linux/slub_def.h"
841struct kmem_cache_node {
842 spinlock_t list_lock ;
843 unsigned long nr_partial ;
844 struct list_head partial ;
845 atomic_long_t nr_slabs ;
846 atomic_long_t total_objects ;
847 struct list_head full ;
848};
849#line 66 "include/linux/slub_def.h"
850struct kmem_cache_order_objects {
851 unsigned long x ;
852};
853#line 76 "include/linux/slub_def.h"
854struct kmem_cache {
855 struct kmem_cache_cpu *cpu_slab ;
856 unsigned long flags ;
857 unsigned long min_partial ;
858 int size ;
859 int objsize ;
860 int offset ;
861 int cpu_partial ;
862 struct kmem_cache_order_objects oo ;
863 struct kmem_cache_order_objects max ;
864 struct kmem_cache_order_objects min ;
865 gfp_t allocflags ;
866 int refcount ;
867 void (*ctor)(void * ) ;
868 int inuse ;
869 int align ;
870 int reserved ;
871 char const *name ;
872 struct list_head list ;
873 struct kobject kobj ;
874 int remote_node_defrag_ratio ;
875 struct kmem_cache_node *node[1024U] ;
876};
877#line 15 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
878struct klist_node;
879#line 15
880struct klist_node;
881#line 37 "include/linux/klist.h"
882struct klist_node {
883 void *n_klist ;
884 struct list_head n_node ;
885 struct kref n_ref ;
886};
887#line 67
888struct dma_map_ops;
889#line 67 "include/linux/klist.h"
890struct dev_archdata {
891 void *acpi_handle ;
892 struct dma_map_ops *dma_ops ;
893 void *iommu ;
894};
895#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
896struct pdev_archdata {
897
898};
899#line 17
900struct device_private;
901#line 17
902struct device_private;
903#line 18
904struct device_driver;
905#line 18
906struct device_driver;
907#line 19
908struct driver_private;
909#line 19
910struct driver_private;
911#line 20
912struct class;
913#line 20
914struct class;
915#line 21
916struct subsys_private;
917#line 21
918struct subsys_private;
919#line 22
920struct bus_type;
921#line 22
922struct bus_type;
923#line 23
924struct device_node;
925#line 23
926struct device_node;
927#line 24
928struct iommu_ops;
929#line 24
930struct iommu_ops;
931#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
932struct bus_attribute {
933 struct attribute attr ;
934 ssize_t (*show)(struct bus_type * , char * ) ;
935 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
936};
937#line 51 "include/linux/device.h"
938struct device_attribute;
939#line 51
940struct driver_attribute;
941#line 51 "include/linux/device.h"
942struct bus_type {
943 char const *name ;
944 char const *dev_name ;
945 struct device *dev_root ;
946 struct bus_attribute *bus_attrs ;
947 struct device_attribute *dev_attrs ;
948 struct driver_attribute *drv_attrs ;
949 int (*match)(struct device * , struct device_driver * ) ;
950 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
951 int (*probe)(struct device * ) ;
952 int (*remove)(struct device * ) ;
953 void (*shutdown)(struct device * ) ;
954 int (*suspend)(struct device * , pm_message_t ) ;
955 int (*resume)(struct device * ) ;
956 struct dev_pm_ops const *pm ;
957 struct iommu_ops *iommu_ops ;
958 struct subsys_private *p ;
959};
960#line 125
961struct device_type;
962#line 182
963struct of_device_id;
964#line 182 "include/linux/device.h"
965struct device_driver {
966 char const *name ;
967 struct bus_type *bus ;
968 struct module *owner ;
969 char const *mod_name ;
970 bool suppress_bind_attrs ;
971 struct of_device_id const *of_match_table ;
972 int (*probe)(struct device * ) ;
973 int (*remove)(struct device * ) ;
974 void (*shutdown)(struct device * ) ;
975 int (*suspend)(struct device * , pm_message_t ) ;
976 int (*resume)(struct device * ) ;
977 struct attribute_group const **groups ;
978 struct dev_pm_ops const *pm ;
979 struct driver_private *p ;
980};
981#line 245 "include/linux/device.h"
982struct driver_attribute {
983 struct attribute attr ;
984 ssize_t (*show)(struct device_driver * , char * ) ;
985 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
986};
987#line 299
988struct class_attribute;
989#line 299 "include/linux/device.h"
990struct class {
991 char const *name ;
992 struct module *owner ;
993 struct class_attribute *class_attrs ;
994 struct device_attribute *dev_attrs ;
995 struct bin_attribute *dev_bin_attrs ;
996 struct kobject *dev_kobj ;
997 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
998 char *(*devnode)(struct device * , umode_t * ) ;
999 void (*class_release)(struct class * ) ;
1000 void (*dev_release)(struct device * ) ;
1001 int (*suspend)(struct device * , pm_message_t ) ;
1002 int (*resume)(struct device * ) ;
1003 struct kobj_ns_type_operations const *ns_type ;
1004 void const *(*namespace)(struct device * ) ;
1005 struct dev_pm_ops const *pm ;
1006 struct subsys_private *p ;
1007};
1008#line 394 "include/linux/device.h"
1009struct class_attribute {
1010 struct attribute attr ;
1011 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1012 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1013 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
1014};
1015#line 447 "include/linux/device.h"
1016struct device_type {
1017 char const *name ;
1018 struct attribute_group const **groups ;
1019 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1020 char *(*devnode)(struct device * , umode_t * ) ;
1021 void (*release)(struct device * ) ;
1022 struct dev_pm_ops const *pm ;
1023};
1024#line 474 "include/linux/device.h"
1025struct device_attribute {
1026 struct attribute attr ;
1027 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1028 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1029 size_t ) ;
1030};
1031#line 557 "include/linux/device.h"
1032struct device_dma_parameters {
1033 unsigned int max_segment_size ;
1034 unsigned long segment_boundary_mask ;
1035};
1036#line 567
1037struct dma_coherent_mem;
1038#line 567 "include/linux/device.h"
1039struct device {
1040 struct device *parent ;
1041 struct device_private *p ;
1042 struct kobject kobj ;
1043 char const *init_name ;
1044 struct device_type const *type ;
1045 struct mutex mutex ;
1046 struct bus_type *bus ;
1047 struct device_driver *driver ;
1048 void *platform_data ;
1049 struct dev_pm_info power ;
1050 struct dev_pm_domain *pm_domain ;
1051 int numa_node ;
1052 u64 *dma_mask ;
1053 u64 coherent_dma_mask ;
1054 struct device_dma_parameters *dma_parms ;
1055 struct list_head dma_pools ;
1056 struct dma_coherent_mem *dma_mem ;
1057 struct dev_archdata archdata ;
1058 struct device_node *of_node ;
1059 dev_t devt ;
1060 u32 id ;
1061 spinlock_t devres_lock ;
1062 struct list_head devres_head ;
1063 struct klist_node knode_class ;
1064 struct class *class ;
1065 struct attribute_group const **groups ;
1066 void (*release)(struct device * ) ;
1067};
1068#line 681 "include/linux/device.h"
1069struct wakeup_source {
1070 char const *name ;
1071 struct list_head entry ;
1072 spinlock_t lock ;
1073 struct timer_list timer ;
1074 unsigned long timer_expires ;
1075 ktime_t total_time ;
1076 ktime_t max_time ;
1077 ktime_t last_time ;
1078 unsigned long event_count ;
1079 unsigned long active_count ;
1080 unsigned long relax_count ;
1081 unsigned long hit_count ;
1082 unsigned char active : 1 ;
1083};
1084#line 12 "include/linux/mod_devicetable.h"
1085typedef unsigned long kernel_ulong_t;
1086#line 215 "include/linux/mod_devicetable.h"
1087struct of_device_id {
1088 char name[32U] ;
1089 char type[32U] ;
1090 char compatible[128U] ;
1091 void *data ;
1092};
1093#line 492 "include/linux/mod_devicetable.h"
1094struct platform_device_id {
1095 char name[20U] ;
1096 kernel_ulong_t driver_data ;
1097};
1098#line 584
1099struct mfd_cell;
1100#line 584
1101struct mfd_cell;
1102#line 585 "include/linux/mod_devicetable.h"
1103struct platform_device {
1104 char const *name ;
1105 int id ;
1106 struct device dev ;
1107 u32 num_resources ;
1108 struct resource *resource ;
1109 struct platform_device_id const *id_entry ;
1110 struct mfd_cell *mfd_cell ;
1111 struct pdev_archdata archdata ;
1112};
1113#line 272 "include/linux/platform_device.h"
1114struct rtc_time {
1115 int tm_sec ;
1116 int tm_min ;
1117 int tm_hour ;
1118 int tm_mday ;
1119 int tm_mon ;
1120 int tm_year ;
1121 int tm_wday ;
1122 int tm_yday ;
1123 int tm_isdst ;
1124};
1125#line 31 "include/linux/rtc.h"
1126struct rtc_wkalrm {
1127 unsigned char enabled ;
1128 unsigned char pending ;
1129 struct rtc_time time ;
1130};
1131#line 64
1132enum irqreturn {
1133 IRQ_NONE = 0,
1134 IRQ_HANDLED = 1,
1135 IRQ_WAKE_THREAD = 2
1136} ;
1137#line 16 "include/linux/irqreturn.h"
1138typedef enum irqreturn irqreturn_t;
1139#line 41 "include/asm-generic/sections.h"
1140struct exception_table_entry {
1141 unsigned long insn ;
1142 unsigned long fixup ;
1143};
1144#line 189 "include/linux/hardirq.h"
1145struct timerqueue_node {
1146 struct rb_node node ;
1147 ktime_t expires ;
1148};
1149#line 12 "include/linux/timerqueue.h"
1150struct timerqueue_head {
1151 struct rb_root head ;
1152 struct timerqueue_node *next ;
1153};
1154#line 50
1155struct hrtimer_clock_base;
1156#line 50
1157struct hrtimer_clock_base;
1158#line 51
1159struct hrtimer_cpu_base;
1160#line 51
1161struct hrtimer_cpu_base;
1162#line 60
1163enum hrtimer_restart {
1164 HRTIMER_NORESTART = 0,
1165 HRTIMER_RESTART = 1
1166} ;
1167#line 65 "include/linux/timerqueue.h"
1168struct hrtimer {
1169 struct timerqueue_node node ;
1170 ktime_t _softexpires ;
1171 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1172 struct hrtimer_clock_base *base ;
1173 unsigned long state ;
1174 int start_pid ;
1175 void *start_site ;
1176 char start_comm[16U] ;
1177};
1178#line 132 "include/linux/hrtimer.h"
1179struct hrtimer_clock_base {
1180 struct hrtimer_cpu_base *cpu_base ;
1181 int index ;
1182 clockid_t clockid ;
1183 struct timerqueue_head active ;
1184 ktime_t resolution ;
1185 ktime_t (*get_time)(void) ;
1186 ktime_t softirq_time ;
1187 ktime_t offset ;
1188};
1189#line 162 "include/linux/hrtimer.h"
1190struct hrtimer_cpu_base {
1191 raw_spinlock_t lock ;
1192 unsigned long active_bases ;
1193 ktime_t expires_next ;
1194 int hres_active ;
1195 int hang_detected ;
1196 unsigned long nr_events ;
1197 unsigned long nr_retries ;
1198 unsigned long nr_hangs ;
1199 ktime_t max_hang_time ;
1200 struct hrtimer_clock_base clock_base[3U] ;
1201};
1202#line 115 "include/linux/rtc.h"
1203struct path;
1204#line 115
1205struct path;
1206#line 116
1207struct inode;
1208#line 116
1209struct inode;
1210#line 117
1211struct dentry;
1212#line 117
1213struct dentry;
1214#line 118 "include/linux/rtc.h"
1215struct seq_file {
1216 char *buf ;
1217 size_t size ;
1218 size_t from ;
1219 size_t count ;
1220 loff_t index ;
1221 loff_t read_pos ;
1222 u64 version ;
1223 struct mutex lock ;
1224 struct seq_operations const *op ;
1225 int poll_event ;
1226 void *private ;
1227};
1228#line 30 "include/linux/seq_file.h"
1229struct seq_operations {
1230 void *(*start)(struct seq_file * , loff_t * ) ;
1231 void (*stop)(struct seq_file * , void * ) ;
1232 void *(*next)(struct seq_file * , void * , loff_t * ) ;
1233 int (*show)(struct seq_file * , void * ) ;
1234};
1235#line 89 "include/linux/kdev_t.h"
1236struct file_operations;
1237#line 89
1238struct file_operations;
1239#line 90 "include/linux/kdev_t.h"
1240struct cdev {
1241 struct kobject kobj ;
1242 struct module *owner ;
1243 struct file_operations const *ops ;
1244 struct list_head list ;
1245 dev_t dev ;
1246 unsigned int count ;
1247};
1248#line 33 "include/linux/cdev.h"
1249struct backing_dev_info;
1250#line 41 "include/asm-generic/poll.h"
1251struct block_device;
1252#line 41
1253struct block_device;
1254#line 93 "include/linux/bit_spinlock.h"
1255struct hlist_bl_node;
1256#line 93 "include/linux/bit_spinlock.h"
1257struct hlist_bl_head {
1258 struct hlist_bl_node *first ;
1259};
1260#line 36 "include/linux/list_bl.h"
1261struct hlist_bl_node {
1262 struct hlist_bl_node *next ;
1263 struct hlist_bl_node **pprev ;
1264};
1265#line 114 "include/linux/rculist_bl.h"
1266struct nameidata;
1267#line 114
1268struct nameidata;
1269#line 115
1270struct vfsmount;
1271#line 115
1272struct vfsmount;
1273#line 116 "include/linux/rculist_bl.h"
1274struct qstr {
1275 unsigned int hash ;
1276 unsigned int len ;
1277 unsigned char const *name ;
1278};
1279#line 72 "include/linux/dcache.h"
1280struct dentry_operations;
1281#line 72
1282struct super_block;
1283#line 72 "include/linux/dcache.h"
1284union __anonunion_d_u_137 {
1285 struct list_head d_child ;
1286 struct rcu_head d_rcu ;
1287};
1288#line 72 "include/linux/dcache.h"
1289struct dentry {
1290 unsigned int d_flags ;
1291 seqcount_t d_seq ;
1292 struct hlist_bl_node d_hash ;
1293 struct dentry *d_parent ;
1294 struct qstr d_name ;
1295 struct inode *d_inode ;
1296 unsigned char d_iname[32U] ;
1297 unsigned int d_count ;
1298 spinlock_t d_lock ;
1299 struct dentry_operations const *d_op ;
1300 struct super_block *d_sb ;
1301 unsigned long d_time ;
1302 void *d_fsdata ;
1303 struct list_head d_lru ;
1304 union __anonunion_d_u_137 d_u ;
1305 struct list_head d_subdirs ;
1306 struct list_head d_alias ;
1307};
1308#line 123 "include/linux/dcache.h"
1309struct dentry_operations {
1310 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1311 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1312 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1313 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1314 int (*d_delete)(struct dentry const * ) ;
1315 void (*d_release)(struct dentry * ) ;
1316 void (*d_prune)(struct dentry * ) ;
1317 void (*d_iput)(struct dentry * , struct inode * ) ;
1318 char *(*d_dname)(struct dentry * , char * , int ) ;
1319 struct vfsmount *(*d_automount)(struct path * ) ;
1320 int (*d_manage)(struct dentry * , bool ) ;
1321};
1322#line 402 "include/linux/dcache.h"
1323struct path {
1324 struct vfsmount *mnt ;
1325 struct dentry *dentry ;
1326};
1327#line 58 "include/linux/radix-tree.h"
1328struct radix_tree_node;
1329#line 58 "include/linux/radix-tree.h"
1330struct radix_tree_root {
1331 unsigned int height ;
1332 gfp_t gfp_mask ;
1333 struct radix_tree_node *rnode ;
1334};
1335#line 377
1336struct prio_tree_node;
1337#line 19 "include/linux/prio_tree.h"
1338struct prio_tree_node {
1339 struct prio_tree_node *left ;
1340 struct prio_tree_node *right ;
1341 struct prio_tree_node *parent ;
1342 unsigned long start ;
1343 unsigned long last ;
1344};
1345#line 27 "include/linux/prio_tree.h"
1346struct prio_tree_root {
1347 struct prio_tree_node *prio_tree_node ;
1348 unsigned short index_bits ;
1349 unsigned short raw ;
1350};
1351#line 111
1352enum pid_type {
1353 PIDTYPE_PID = 0,
1354 PIDTYPE_PGID = 1,
1355 PIDTYPE_SID = 2,
1356 PIDTYPE_MAX = 3
1357} ;
1358#line 118
1359struct pid_namespace;
1360#line 118 "include/linux/prio_tree.h"
1361struct upid {
1362 int nr ;
1363 struct pid_namespace *ns ;
1364 struct hlist_node pid_chain ;
1365};
1366#line 56 "include/linux/pid.h"
1367struct pid {
1368 atomic_t count ;
1369 unsigned int level ;
1370 struct hlist_head tasks[3U] ;
1371 struct rcu_head rcu ;
1372 struct upid numbers[1U] ;
1373};
1374#line 45 "include/linux/semaphore.h"
1375struct fiemap_extent {
1376 __u64 fe_logical ;
1377 __u64 fe_physical ;
1378 __u64 fe_length ;
1379 __u64 fe_reserved64[2U] ;
1380 __u32 fe_flags ;
1381 __u32 fe_reserved[3U] ;
1382};
1383#line 38 "include/linux/fiemap.h"
1384struct shrink_control {
1385 gfp_t gfp_mask ;
1386 unsigned long nr_to_scan ;
1387};
1388#line 14 "include/linux/shrinker.h"
1389struct shrinker {
1390 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1391 int seeks ;
1392 long batch ;
1393 struct list_head list ;
1394 atomic_long_t nr_in_batch ;
1395};
1396#line 43
1397enum migrate_mode {
1398 MIGRATE_ASYNC = 0,
1399 MIGRATE_SYNC_LIGHT = 1,
1400 MIGRATE_SYNC = 2
1401} ;
1402#line 49
1403struct export_operations;
1404#line 49
1405struct export_operations;
1406#line 51
1407struct iovec;
1408#line 51
1409struct iovec;
1410#line 52
1411struct kiocb;
1412#line 52
1413struct kiocb;
1414#line 53
1415struct pipe_inode_info;
1416#line 53
1417struct pipe_inode_info;
1418#line 54
1419struct poll_table_struct;
1420#line 54
1421struct poll_table_struct;
1422#line 55
1423struct kstatfs;
1424#line 55
1425struct kstatfs;
1426#line 435 "include/linux/fs.h"
1427struct iattr {
1428 unsigned int ia_valid ;
1429 umode_t ia_mode ;
1430 uid_t ia_uid ;
1431 gid_t ia_gid ;
1432 loff_t ia_size ;
1433 struct timespec ia_atime ;
1434 struct timespec ia_mtime ;
1435 struct timespec ia_ctime ;
1436 struct file *ia_file ;
1437};
1438#line 119 "include/linux/quota.h"
1439struct if_dqinfo {
1440 __u64 dqi_bgrace ;
1441 __u64 dqi_igrace ;
1442 __u32 dqi_flags ;
1443 __u32 dqi_valid ;
1444};
1445#line 176 "include/linux/percpu_counter.h"
1446struct fs_disk_quota {
1447 __s8 d_version ;
1448 __s8 d_flags ;
1449 __u16 d_fieldmask ;
1450 __u32 d_id ;
1451 __u64 d_blk_hardlimit ;
1452 __u64 d_blk_softlimit ;
1453 __u64 d_ino_hardlimit ;
1454 __u64 d_ino_softlimit ;
1455 __u64 d_bcount ;
1456 __u64 d_icount ;
1457 __s32 d_itimer ;
1458 __s32 d_btimer ;
1459 __u16 d_iwarns ;
1460 __u16 d_bwarns ;
1461 __s32 d_padding2 ;
1462 __u64 d_rtb_hardlimit ;
1463 __u64 d_rtb_softlimit ;
1464 __u64 d_rtbcount ;
1465 __s32 d_rtbtimer ;
1466 __u16 d_rtbwarns ;
1467 __s16 d_padding3 ;
1468 char d_padding4[8U] ;
1469};
1470#line 75 "include/linux/dqblk_xfs.h"
1471struct fs_qfilestat {
1472 __u64 qfs_ino ;
1473 __u64 qfs_nblks ;
1474 __u32 qfs_nextents ;
1475};
1476#line 150 "include/linux/dqblk_xfs.h"
1477typedef struct fs_qfilestat fs_qfilestat_t;
1478#line 151 "include/linux/dqblk_xfs.h"
1479struct fs_quota_stat {
1480 __s8 qs_version ;
1481 __u16 qs_flags ;
1482 __s8 qs_pad ;
1483 fs_qfilestat_t qs_uquota ;
1484 fs_qfilestat_t qs_gquota ;
1485 __u32 qs_incoredqs ;
1486 __s32 qs_btimelimit ;
1487 __s32 qs_itimelimit ;
1488 __s32 qs_rtbtimelimit ;
1489 __u16 qs_bwarnlimit ;
1490 __u16 qs_iwarnlimit ;
1491};
1492#line 165
1493struct dquot;
1494#line 165
1495struct dquot;
1496#line 185 "include/linux/quota.h"
1497typedef __kernel_uid32_t qid_t;
1498#line 186 "include/linux/quota.h"
1499typedef long long qsize_t;
1500#line 189 "include/linux/quota.h"
1501struct mem_dqblk {
1502 qsize_t dqb_bhardlimit ;
1503 qsize_t dqb_bsoftlimit ;
1504 qsize_t dqb_curspace ;
1505 qsize_t dqb_rsvspace ;
1506 qsize_t dqb_ihardlimit ;
1507 qsize_t dqb_isoftlimit ;
1508 qsize_t dqb_curinodes ;
1509 time_t dqb_btime ;
1510 time_t dqb_itime ;
1511};
1512#line 211
1513struct quota_format_type;
1514#line 211
1515struct quota_format_type;
1516#line 212 "include/linux/quota.h"
1517struct mem_dqinfo {
1518 struct quota_format_type *dqi_format ;
1519 int dqi_fmt_id ;
1520 struct list_head dqi_dirty_list ;
1521 unsigned long dqi_flags ;
1522 unsigned int dqi_bgrace ;
1523 unsigned int dqi_igrace ;
1524 qsize_t dqi_maxblimit ;
1525 qsize_t dqi_maxilimit ;
1526 void *dqi_priv ;
1527};
1528#line 275 "include/linux/quota.h"
1529struct dquot {
1530 struct hlist_node dq_hash ;
1531 struct list_head dq_inuse ;
1532 struct list_head dq_free ;
1533 struct list_head dq_dirty ;
1534 struct mutex dq_lock ;
1535 atomic_t dq_count ;
1536 wait_queue_head_t dq_wait_unused ;
1537 struct super_block *dq_sb ;
1538 unsigned int dq_id ;
1539 loff_t dq_off ;
1540 unsigned long dq_flags ;
1541 short dq_type ;
1542 struct mem_dqblk dq_dqb ;
1543};
1544#line 303 "include/linux/quota.h"
1545struct quota_format_ops {
1546 int (*check_quota_file)(struct super_block * , int ) ;
1547 int (*read_file_info)(struct super_block * , int ) ;
1548 int (*write_file_info)(struct super_block * , int ) ;
1549 int (*free_file_info)(struct super_block * , int ) ;
1550 int (*read_dqblk)(struct dquot * ) ;
1551 int (*commit_dqblk)(struct dquot * ) ;
1552 int (*release_dqblk)(struct dquot * ) ;
1553};
1554#line 314 "include/linux/quota.h"
1555struct dquot_operations {
1556 int (*write_dquot)(struct dquot * ) ;
1557 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1558 void (*destroy_dquot)(struct dquot * ) ;
1559 int (*acquire_dquot)(struct dquot * ) ;
1560 int (*release_dquot)(struct dquot * ) ;
1561 int (*mark_dirty)(struct dquot * ) ;
1562 int (*write_info)(struct super_block * , int ) ;
1563 qsize_t *(*get_reserved_space)(struct inode * ) ;
1564};
1565#line 328 "include/linux/quota.h"
1566struct quotactl_ops {
1567 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1568 int (*quota_on_meta)(struct super_block * , int , int ) ;
1569 int (*quota_off)(struct super_block * , int ) ;
1570 int (*quota_sync)(struct super_block * , int , int ) ;
1571 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1572 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1573 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1574 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1575 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1576 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1577};
1578#line 344 "include/linux/quota.h"
1579struct quota_format_type {
1580 int qf_fmt_id ;
1581 struct quota_format_ops const *qf_ops ;
1582 struct module *qf_owner ;
1583 struct quota_format_type *qf_next ;
1584};
1585#line 390 "include/linux/quota.h"
1586struct quota_info {
1587 unsigned int flags ;
1588 struct mutex dqio_mutex ;
1589 struct mutex dqonoff_mutex ;
1590 struct rw_semaphore dqptr_sem ;
1591 struct inode *files[2U] ;
1592 struct mem_dqinfo info[2U] ;
1593 struct quota_format_ops const *ops[2U] ;
1594};
1595#line 421
1596struct address_space;
1597#line 421
1598struct address_space;
1599#line 422
1600struct writeback_control;
1601#line 422
1602struct writeback_control;
1603#line 585 "include/linux/fs.h"
1604union __anonunion_arg_140 {
1605 char *buf ;
1606 void *data ;
1607};
1608#line 585 "include/linux/fs.h"
1609struct __anonstruct_read_descriptor_t_139 {
1610 size_t written ;
1611 size_t count ;
1612 union __anonunion_arg_140 arg ;
1613 int error ;
1614};
1615#line 585 "include/linux/fs.h"
1616typedef struct __anonstruct_read_descriptor_t_139 read_descriptor_t;
1617#line 588 "include/linux/fs.h"
1618struct address_space_operations {
1619 int (*writepage)(struct page * , struct writeback_control * ) ;
1620 int (*readpage)(struct file * , struct page * ) ;
1621 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1622 int (*set_page_dirty)(struct page * ) ;
1623 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1624 unsigned int ) ;
1625 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
1626 unsigned int , struct page ** , void ** ) ;
1627 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
1628 unsigned int , struct page * , void * ) ;
1629 sector_t (*bmap)(struct address_space * , sector_t ) ;
1630 void (*invalidatepage)(struct page * , unsigned long ) ;
1631 int (*releasepage)(struct page * , gfp_t ) ;
1632 void (*freepage)(struct page * ) ;
1633 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
1634 unsigned long ) ;
1635 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1636 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1637 int (*launder_page)(struct page * ) ;
1638 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1639 int (*error_remove_page)(struct address_space * , struct page * ) ;
1640};
1641#line 642 "include/linux/fs.h"
1642struct address_space {
1643 struct inode *host ;
1644 struct radix_tree_root page_tree ;
1645 spinlock_t tree_lock ;
1646 unsigned int i_mmap_writable ;
1647 struct prio_tree_root i_mmap ;
1648 struct list_head i_mmap_nonlinear ;
1649 struct mutex i_mmap_mutex ;
1650 unsigned long nrpages ;
1651 unsigned long writeback_index ;
1652 struct address_space_operations const *a_ops ;
1653 unsigned long flags ;
1654 struct backing_dev_info *backing_dev_info ;
1655 spinlock_t private_lock ;
1656 struct list_head private_list ;
1657 struct address_space *assoc_mapping ;
1658};
1659#line 664
1660struct request_queue;
1661#line 664
1662struct request_queue;
1663#line 665
1664struct hd_struct;
1665#line 665
1666struct gendisk;
1667#line 665 "include/linux/fs.h"
1668struct block_device {
1669 dev_t bd_dev ;
1670 int bd_openers ;
1671 struct inode *bd_inode ;
1672 struct super_block *bd_super ;
1673 struct mutex bd_mutex ;
1674 struct list_head bd_inodes ;
1675 void *bd_claiming ;
1676 void *bd_holder ;
1677 int bd_holders ;
1678 bool bd_write_holder ;
1679 struct list_head bd_holder_disks ;
1680 struct block_device *bd_contains ;
1681 unsigned int bd_block_size ;
1682 struct hd_struct *bd_part ;
1683 unsigned int bd_part_count ;
1684 int bd_invalidated ;
1685 struct gendisk *bd_disk ;
1686 struct request_queue *bd_queue ;
1687 struct list_head bd_list ;
1688 unsigned long bd_private ;
1689 int bd_fsfreeze_count ;
1690 struct mutex bd_fsfreeze_mutex ;
1691};
1692#line 737
1693struct posix_acl;
1694#line 737
1695struct posix_acl;
1696#line 738
1697struct inode_operations;
1698#line 738 "include/linux/fs.h"
1699union __anonunion_ldv_18694_141 {
1700 unsigned int const i_nlink ;
1701 unsigned int __i_nlink ;
1702};
1703#line 738 "include/linux/fs.h"
1704union __anonunion_ldv_18713_142 {
1705 struct list_head i_dentry ;
1706 struct rcu_head i_rcu ;
1707};
1708#line 738
1709struct file_lock;
1710#line 738 "include/linux/fs.h"
1711union __anonunion_ldv_18729_143 {
1712 struct pipe_inode_info *i_pipe ;
1713 struct block_device *i_bdev ;
1714 struct cdev *i_cdev ;
1715};
1716#line 738 "include/linux/fs.h"
1717struct inode {
1718 umode_t i_mode ;
1719 unsigned short i_opflags ;
1720 uid_t i_uid ;
1721 gid_t i_gid ;
1722 unsigned int i_flags ;
1723 struct posix_acl *i_acl ;
1724 struct posix_acl *i_default_acl ;
1725 struct inode_operations const *i_op ;
1726 struct super_block *i_sb ;
1727 struct address_space *i_mapping ;
1728 void *i_security ;
1729 unsigned long i_ino ;
1730 union __anonunion_ldv_18694_141 ldv_18694 ;
1731 dev_t i_rdev ;
1732 struct timespec i_atime ;
1733 struct timespec i_mtime ;
1734 struct timespec i_ctime ;
1735 spinlock_t i_lock ;
1736 unsigned short i_bytes ;
1737 blkcnt_t i_blocks ;
1738 loff_t i_size ;
1739 unsigned long i_state ;
1740 struct mutex i_mutex ;
1741 unsigned long dirtied_when ;
1742 struct hlist_node i_hash ;
1743 struct list_head i_wb_list ;
1744 struct list_head i_lru ;
1745 struct list_head i_sb_list ;
1746 union __anonunion_ldv_18713_142 ldv_18713 ;
1747 atomic_t i_count ;
1748 unsigned int i_blkbits ;
1749 u64 i_version ;
1750 atomic_t i_dio_count ;
1751 atomic_t i_writecount ;
1752 struct file_operations const *i_fop ;
1753 struct file_lock *i_flock ;
1754 struct address_space i_data ;
1755 struct dquot *i_dquot[2U] ;
1756 struct list_head i_devices ;
1757 union __anonunion_ldv_18729_143 ldv_18729 ;
1758 __u32 i_generation ;
1759 __u32 i_fsnotify_mask ;
1760 struct hlist_head i_fsnotify_marks ;
1761 atomic_t i_readcount ;
1762 void *i_private ;
1763};
1764#line 941 "include/linux/fs.h"
1765struct fown_struct {
1766 rwlock_t lock ;
1767 struct pid *pid ;
1768 enum pid_type pid_type ;
1769 uid_t uid ;
1770 uid_t euid ;
1771 int signum ;
1772};
1773#line 949 "include/linux/fs.h"
1774struct file_ra_state {
1775 unsigned long start ;
1776 unsigned int size ;
1777 unsigned int async_size ;
1778 unsigned int ra_pages ;
1779 unsigned int mmap_miss ;
1780 loff_t prev_pos ;
1781};
1782#line 972 "include/linux/fs.h"
1783union __anonunion_f_u_144 {
1784 struct list_head fu_list ;
1785 struct rcu_head fu_rcuhead ;
1786};
1787#line 972 "include/linux/fs.h"
1788struct file {
1789 union __anonunion_f_u_144 f_u ;
1790 struct path f_path ;
1791 struct file_operations const *f_op ;
1792 spinlock_t f_lock ;
1793 int f_sb_list_cpu ;
1794 atomic_long_t f_count ;
1795 unsigned int f_flags ;
1796 fmode_t f_mode ;
1797 loff_t f_pos ;
1798 struct fown_struct f_owner ;
1799 struct cred const *f_cred ;
1800 struct file_ra_state f_ra ;
1801 u64 f_version ;
1802 void *f_security ;
1803 void *private_data ;
1804 struct list_head f_ep_links ;
1805 struct list_head f_tfile_llink ;
1806 struct address_space *f_mapping ;
1807 unsigned long f_mnt_write_state ;
1808};
1809#line 1111
1810struct files_struct;
1811#line 1111 "include/linux/fs.h"
1812typedef struct files_struct *fl_owner_t;
1813#line 1112 "include/linux/fs.h"
1814struct file_lock_operations {
1815 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1816 void (*fl_release_private)(struct file_lock * ) ;
1817};
1818#line 1117 "include/linux/fs.h"
1819struct lock_manager_operations {
1820 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1821 void (*lm_notify)(struct file_lock * ) ;
1822 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1823 void (*lm_release_private)(struct file_lock * ) ;
1824 void (*lm_break)(struct file_lock * ) ;
1825 int (*lm_change)(struct file_lock ** , int ) ;
1826};
1827#line 1134
1828struct nlm_lockowner;
1829#line 1134
1830struct nlm_lockowner;
1831#line 1135 "include/linux/fs.h"
1832struct nfs_lock_info {
1833 u32 state ;
1834 struct nlm_lockowner *owner ;
1835 struct list_head list ;
1836};
1837#line 14 "include/linux/nfs_fs_i.h"
1838struct nfs4_lock_state;
1839#line 14
1840struct nfs4_lock_state;
1841#line 15 "include/linux/nfs_fs_i.h"
1842struct nfs4_lock_info {
1843 struct nfs4_lock_state *owner ;
1844};
1845#line 19
1846struct fasync_struct;
1847#line 19 "include/linux/nfs_fs_i.h"
1848struct __anonstruct_afs_146 {
1849 struct list_head link ;
1850 int state ;
1851};
1852#line 19 "include/linux/nfs_fs_i.h"
1853union __anonunion_fl_u_145 {
1854 struct nfs_lock_info nfs_fl ;
1855 struct nfs4_lock_info nfs4_fl ;
1856 struct __anonstruct_afs_146 afs ;
1857};
1858#line 19 "include/linux/nfs_fs_i.h"
1859struct file_lock {
1860 struct file_lock *fl_next ;
1861 struct list_head fl_link ;
1862 struct list_head fl_block ;
1863 fl_owner_t fl_owner ;
1864 unsigned int fl_flags ;
1865 unsigned char fl_type ;
1866 unsigned int fl_pid ;
1867 struct pid *fl_nspid ;
1868 wait_queue_head_t fl_wait ;
1869 struct file *fl_file ;
1870 loff_t fl_start ;
1871 loff_t fl_end ;
1872 struct fasync_struct *fl_fasync ;
1873 unsigned long fl_break_time ;
1874 unsigned long fl_downgrade_time ;
1875 struct file_lock_operations const *fl_ops ;
1876 struct lock_manager_operations const *fl_lmops ;
1877 union __anonunion_fl_u_145 fl_u ;
1878};
1879#line 1221 "include/linux/fs.h"
1880struct fasync_struct {
1881 spinlock_t fa_lock ;
1882 int magic ;
1883 int fa_fd ;
1884 struct fasync_struct *fa_next ;
1885 struct file *fa_file ;
1886 struct rcu_head fa_rcu ;
1887};
1888#line 1417
1889struct file_system_type;
1890#line 1417
1891struct super_operations;
1892#line 1417
1893struct xattr_handler;
1894#line 1417
1895struct mtd_info;
1896#line 1417 "include/linux/fs.h"
1897struct super_block {
1898 struct list_head s_list ;
1899 dev_t s_dev ;
1900 unsigned char s_dirt ;
1901 unsigned char s_blocksize_bits ;
1902 unsigned long s_blocksize ;
1903 loff_t s_maxbytes ;
1904 struct file_system_type *s_type ;
1905 struct super_operations const *s_op ;
1906 struct dquot_operations const *dq_op ;
1907 struct quotactl_ops const *s_qcop ;
1908 struct export_operations const *s_export_op ;
1909 unsigned long s_flags ;
1910 unsigned long s_magic ;
1911 struct dentry *s_root ;
1912 struct rw_semaphore s_umount ;
1913 struct mutex s_lock ;
1914 int s_count ;
1915 atomic_t s_active ;
1916 void *s_security ;
1917 struct xattr_handler const **s_xattr ;
1918 struct list_head s_inodes ;
1919 struct hlist_bl_head s_anon ;
1920 struct list_head *s_files ;
1921 struct list_head s_mounts ;
1922 struct list_head s_dentry_lru ;
1923 int s_nr_dentry_unused ;
1924 spinlock_t s_inode_lru_lock ;
1925 struct list_head s_inode_lru ;
1926 int s_nr_inodes_unused ;
1927 struct block_device *s_bdev ;
1928 struct backing_dev_info *s_bdi ;
1929 struct mtd_info *s_mtd ;
1930 struct hlist_node s_instances ;
1931 struct quota_info s_dquot ;
1932 int s_frozen ;
1933 wait_queue_head_t s_wait_unfrozen ;
1934 char s_id[32U] ;
1935 u8 s_uuid[16U] ;
1936 void *s_fs_info ;
1937 unsigned int s_max_links ;
1938 fmode_t s_mode ;
1939 u32 s_time_gran ;
1940 struct mutex s_vfs_rename_mutex ;
1941 char *s_subtype ;
1942 char *s_options ;
1943 struct dentry_operations const *s_d_op ;
1944 int cleancache_poolid ;
1945 struct shrinker s_shrink ;
1946 atomic_long_t s_remove_count ;
1947 int s_readonly_remount ;
1948};
1949#line 1563 "include/linux/fs.h"
1950struct fiemap_extent_info {
1951 unsigned int fi_flags ;
1952 unsigned int fi_extents_mapped ;
1953 unsigned int fi_extents_max ;
1954 struct fiemap_extent *fi_extents_start ;
1955};
1956#line 1602 "include/linux/fs.h"
1957struct file_operations {
1958 struct module *owner ;
1959 loff_t (*llseek)(struct file * , loff_t , int ) ;
1960 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1961 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1962 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1963 loff_t ) ;
1964 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1965 loff_t ) ;
1966 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1967 loff_t , u64 , unsigned int ) ) ;
1968 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1969 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1970 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1971 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1972 int (*open)(struct inode * , struct file * ) ;
1973 int (*flush)(struct file * , fl_owner_t ) ;
1974 int (*release)(struct inode * , struct file * ) ;
1975 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
1976 int (*aio_fsync)(struct kiocb * , int ) ;
1977 int (*fasync)(int , struct file * , int ) ;
1978 int (*lock)(struct file * , int , struct file_lock * ) ;
1979 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1980 int ) ;
1981 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1982 unsigned long , unsigned long ) ;
1983 int (*check_flags)(int ) ;
1984 int (*flock)(struct file * , int , struct file_lock * ) ;
1985 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1986 unsigned int ) ;
1987 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1988 unsigned int ) ;
1989 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1990 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
1991};
1992#line 1637 "include/linux/fs.h"
1993struct inode_operations {
1994 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1995 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1996 int (*permission)(struct inode * , int ) ;
1997 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1998 int (*readlink)(struct dentry * , char * , int ) ;
1999 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
2000 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
2001 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
2002 int (*unlink)(struct inode * , struct dentry * ) ;
2003 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
2004 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
2005 int (*rmdir)(struct inode * , struct dentry * ) ;
2006 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
2007 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
2008 void (*truncate)(struct inode * ) ;
2009 int (*setattr)(struct dentry * , struct iattr * ) ;
2010 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
2011 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
2012 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
2013 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
2014 int (*removexattr)(struct dentry * , char const * ) ;
2015 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
2016 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
2017};
2018#line 1682 "include/linux/fs.h"
2019struct super_operations {
2020 struct inode *(*alloc_inode)(struct super_block * ) ;
2021 void (*destroy_inode)(struct inode * ) ;
2022 void (*dirty_inode)(struct inode * , int ) ;
2023 int (*write_inode)(struct inode * , struct writeback_control * ) ;
2024 int (*drop_inode)(struct inode * ) ;
2025 void (*evict_inode)(struct inode * ) ;
2026 void (*put_super)(struct super_block * ) ;
2027 void (*write_super)(struct super_block * ) ;
2028 int (*sync_fs)(struct super_block * , int ) ;
2029 int (*freeze_fs)(struct super_block * ) ;
2030 int (*unfreeze_fs)(struct super_block * ) ;
2031 int (*statfs)(struct dentry * , struct kstatfs * ) ;
2032 int (*remount_fs)(struct super_block * , int * , char * ) ;
2033 void (*umount_begin)(struct super_block * ) ;
2034 int (*show_options)(struct seq_file * , struct dentry * ) ;
2035 int (*show_devname)(struct seq_file * , struct dentry * ) ;
2036 int (*show_path)(struct seq_file * , struct dentry * ) ;
2037 int (*show_stats)(struct seq_file * , struct dentry * ) ;
2038 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
2039 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
2040 loff_t ) ;
2041 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
2042 int (*nr_cached_objects)(struct super_block * ) ;
2043 void (*free_cached_objects)(struct super_block * , int ) ;
2044};
2045#line 1834 "include/linux/fs.h"
2046struct file_system_type {
2047 char const *name ;
2048 int fs_flags ;
2049 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
2050 void (*kill_sb)(struct super_block * ) ;
2051 struct module *owner ;
2052 struct file_system_type *next ;
2053 struct hlist_head fs_supers ;
2054 struct lock_class_key s_lock_key ;
2055 struct lock_class_key s_umount_key ;
2056 struct lock_class_key s_vfs_rename_key ;
2057 struct lock_class_key i_lock_key ;
2058 struct lock_class_key i_mutex_key ;
2059 struct lock_class_key i_mutex_dir_key ;
2060};
2061#line 34 "include/linux/poll.h"
2062struct poll_table_struct {
2063 void (*_qproc)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
2064 unsigned long _key ;
2065};
2066#line 126 "include/linux/rtc.h"
2067struct rtc_class_ops {
2068 int (*open)(struct device * ) ;
2069 void (*release)(struct device * ) ;
2070 int (*ioctl)(struct device * , unsigned int , unsigned long ) ;
2071 int (*read_time)(struct device * , struct rtc_time * ) ;
2072 int (*set_time)(struct device * , struct rtc_time * ) ;
2073 int (*read_alarm)(struct device * , struct rtc_wkalrm * ) ;
2074 int (*set_alarm)(struct device * , struct rtc_wkalrm * ) ;
2075 int (*proc)(struct device * , struct seq_file * ) ;
2076 int (*set_mmss)(struct device * , unsigned long ) ;
2077 int (*read_callback)(struct device * , int ) ;
2078 int (*alarm_irq_enable)(struct device * , unsigned int ) ;
2079};
2080#line 156 "include/linux/rtc.h"
2081struct rtc_task {
2082 void (*func)(void * ) ;
2083 void *private_data ;
2084};
2085#line 162 "include/linux/rtc.h"
2086struct rtc_timer {
2087 struct rtc_task task ;
2088 struct timerqueue_node node ;
2089 ktime_t period ;
2090 int enabled ;
2091};
2092#line 170 "include/linux/rtc.h"
2093struct rtc_device {
2094 struct device dev ;
2095 struct module *owner ;
2096 int id ;
2097 char name[20U] ;
2098 struct rtc_class_ops const *ops ;
2099 struct mutex ops_lock ;
2100 struct cdev char_dev ;
2101 unsigned long flags ;
2102 unsigned long irq_data ;
2103 spinlock_t irq_lock ;
2104 wait_queue_head_t irq_queue ;
2105 struct fasync_struct *async_queue ;
2106 struct rtc_task *irq_task ;
2107 spinlock_t irq_task_lock ;
2108 int irq_freq ;
2109 int max_user_freq ;
2110 struct timerqueue_head timerqueue ;
2111 struct rtc_timer aie_timer ;
2112 struct rtc_timer uie_rtctimer ;
2113 struct hrtimer pie_timer ;
2114 int pie_enabled ;
2115 struct work_struct irqwork ;
2116 int uie_unsupported ;
2117 struct work_struct uie_task ;
2118 struct timer_list uie_timer ;
2119 unsigned int oldsecs ;
2120 unsigned char uie_irq_active : 1 ;
2121 unsigned char stop_uie_polling : 1 ;
2122 unsigned char uie_task_active : 1 ;
2123 unsigned char uie_timer_active : 1 ;
2124};
2125#line 280
2126struct regmap;
2127#line 280
2128struct regmap;
2129#line 220 "include/linux/regmap.h"
2130struct mfd_cell {
2131 char const *name ;
2132 int id ;
2133 atomic_t *usage_count ;
2134 int (*enable)(struct platform_device * ) ;
2135 int (*disable)(struct platform_device * ) ;
2136 int (*suspend)(struct platform_device * ) ;
2137 int (*resume)(struct platform_device * ) ;
2138 void *platform_data ;
2139 size_t pdata_size ;
2140 int num_resources ;
2141 struct resource const *resources ;
2142 bool ignore_resource_conflicts ;
2143 bool pm_runtime_no_callbacks ;
2144};
2145#line 107 "include/linux/mfd/core.h"
2146struct da9052 {
2147 struct device *dev ;
2148 struct regmap *regmap ;
2149 int irq_base ;
2150 u8 chip_id ;
2151 int chip_irq ;
2152};
2153#line 128 "include/linux/mfd/da9052/da9052.h"
2154struct da9052_rtc {
2155 struct rtc_device *rtc ;
2156 struct da9052 *da9052 ;
2157 int irq ;
2158};
2159#line 1 "<compiler builtins>"
2160long __builtin_expect(long , long ) ;
2161#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2162void ldv_spin_lock(void) ;
2163#line 3
2164void ldv_spin_unlock(void) ;
2165#line 4
2166int ldv_spin_trylock(void) ;
2167#line 27 "include/linux/err.h"
2168__inline static long PTR_ERR(void const *ptr )
2169{
2170
2171 {
2172#line 29
2173 return ((long )ptr);
2174}
2175}
2176#line 32 "include/linux/err.h"
2177__inline static long IS_ERR(void const *ptr )
2178{ long tmp ;
2179 unsigned long __cil_tmp3 ;
2180 int __cil_tmp4 ;
2181 long __cil_tmp5 ;
2182
2183 {
2184 {
2185#line 34
2186 __cil_tmp3 = (unsigned long )ptr;
2187#line 34
2188 __cil_tmp4 = __cil_tmp3 > 0xfffffffffffff000UL;
2189#line 34
2190 __cil_tmp5 = (long )__cil_tmp4;
2191#line 34
2192 tmp = __builtin_expect(__cil_tmp5, 0L);
2193 }
2194#line 34
2195 return (tmp);
2196}
2197}
2198#line 26 "include/linux/export.h"
2199extern struct module __this_module ;
2200#line 220 "include/linux/slub_def.h"
2201extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
2202#line 223
2203void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
2204#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2205void ldv_check_alloc_flags(gfp_t flags ) ;
2206#line 12
2207void ldv_check_alloc_nonatomic(void) ;
2208#line 14
2209struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2210#line 553 "include/linux/device.h"
2211extern void *devm_kzalloc(struct device * , size_t , gfp_t ) ;
2212#line 554
2213extern void devm_kfree(struct device * , void * ) ;
2214#line 792
2215extern void *dev_get_drvdata(struct device const * ) ;
2216#line 793
2217extern int dev_set_drvdata(struct device * , void * ) ;
2218#line 892
2219extern int dev_err(struct device const * , char const * , ...) ;
2220#line 49 "include/linux/platform_device.h"
2221extern int platform_get_irq_byname(struct platform_device * , char const * ) ;
2222#line 188 "include/linux/platform_device.h"
2223__inline static void platform_set_drvdata(struct platform_device *pdev , void *data )
2224{ unsigned long __cil_tmp3 ;
2225 unsigned long __cil_tmp4 ;
2226 struct device *__cil_tmp5 ;
2227
2228 {
2229 {
2230#line 190
2231 __cil_tmp3 = (unsigned long )pdev;
2232#line 190
2233 __cil_tmp4 = __cil_tmp3 + 16;
2234#line 190
2235 __cil_tmp5 = (struct device *)__cil_tmp4;
2236#line 190
2237 dev_set_drvdata(__cil_tmp5, data);
2238 }
2239#line 191
2240 return;
2241}
2242}
2243#line 127 "include/linux/interrupt.h"
2244extern int request_threaded_irq(unsigned int , irqreturn_t (*)(int , void * ) ,
2245 irqreturn_t (*)(int , void * ) , unsigned long ,
2246 char const * , void * ) ;
2247#line 184
2248extern void free_irq(unsigned int , void * ) ;
2249#line 110 "include/linux/rtc.h"
2250extern int rtc_valid_tm(struct rtc_time * ) ;
2251#line 221
2252extern struct rtc_device *rtc_device_register(char const * , struct device * , struct rtc_class_ops const * ,
2253 struct module * ) ;
2254#line 237
2255extern void rtc_update_irq(struct rtc_device * , unsigned long , unsigned long ) ;
2256#line 147 "include/linux/regmap.h"
2257extern int regmap_raw_write(struct regmap * , unsigned int , void const * , size_t ) ;
2258#line 151
2259extern int regmap_read(struct regmap * , unsigned int , unsigned int * ) ;
2260#line 154
2261extern int regmap_bulk_read(struct regmap * , unsigned int , void * , size_t ) ;
2262#line 156
2263extern int regmap_update_bits(struct regmap * , unsigned int , unsigned int , unsigned int ) ;
2264#line 89 "include/linux/mfd/da9052/da9052.h"
2265__inline static int da9052_reg_read(struct da9052 *da9052 , unsigned char reg )
2266{ int val ;
2267 int ret ;
2268 unsigned long __cil_tmp5 ;
2269 unsigned long __cil_tmp6 ;
2270 struct regmap *__cil_tmp7 ;
2271 unsigned int __cil_tmp8 ;
2272 unsigned int *__cil_tmp9 ;
2273 int *__cil_tmp10 ;
2274
2275 {
2276 {
2277#line 93
2278 __cil_tmp5 = (unsigned long )da9052;
2279#line 93
2280 __cil_tmp6 = __cil_tmp5 + 8;
2281#line 93
2282 __cil_tmp7 = *((struct regmap **)__cil_tmp6);
2283#line 93
2284 __cil_tmp8 = (unsigned int )reg;
2285#line 93
2286 __cil_tmp9 = (unsigned int *)(& val);
2287#line 93
2288 ret = regmap_read(__cil_tmp7, __cil_tmp8, __cil_tmp9);
2289 }
2290#line 94
2291 if (ret < 0) {
2292#line 95
2293 return (ret);
2294 } else {
2295
2296 }
2297 {
2298#line 96
2299 __cil_tmp10 = & val;
2300#line 96
2301 return (*__cil_tmp10);
2302 }
2303}
2304}
2305#line 105 "include/linux/mfd/da9052/da9052.h"
2306__inline static int da9052_group_read(struct da9052 *da9052 , unsigned char reg ,
2307 unsigned int reg_cnt , unsigned char *val )
2308{ int tmp ;
2309 unsigned long __cil_tmp6 ;
2310 unsigned long __cil_tmp7 ;
2311 struct regmap *__cil_tmp8 ;
2312 unsigned int __cil_tmp9 ;
2313 void *__cil_tmp10 ;
2314 size_t __cil_tmp11 ;
2315
2316 {
2317 {
2318#line 108
2319 __cil_tmp6 = (unsigned long )da9052;
2320#line 108
2321 __cil_tmp7 = __cil_tmp6 + 8;
2322#line 108
2323 __cil_tmp8 = *((struct regmap **)__cil_tmp7);
2324#line 108
2325 __cil_tmp9 = (unsigned int )reg;
2326#line 108
2327 __cil_tmp10 = (void *)val;
2328#line 108
2329 __cil_tmp11 = (size_t )reg_cnt;
2330#line 108
2331 tmp = regmap_bulk_read(__cil_tmp8, __cil_tmp9, __cil_tmp10, __cil_tmp11);
2332 }
2333#line 108
2334 return (tmp);
2335}
2336}
2337#line 111 "include/linux/mfd/da9052/da9052.h"
2338__inline static int da9052_group_write(struct da9052 *da9052 , unsigned char reg ,
2339 unsigned int reg_cnt , unsigned char *val )
2340{ int tmp ;
2341 unsigned long __cil_tmp6 ;
2342 unsigned long __cil_tmp7 ;
2343 struct regmap *__cil_tmp8 ;
2344 unsigned int __cil_tmp9 ;
2345 void const *__cil_tmp10 ;
2346 size_t __cil_tmp11 ;
2347
2348 {
2349 {
2350#line 114
2351 __cil_tmp6 = (unsigned long )da9052;
2352#line 114
2353 __cil_tmp7 = __cil_tmp6 + 8;
2354#line 114
2355 __cil_tmp8 = *((struct regmap **)__cil_tmp7);
2356#line 114
2357 __cil_tmp9 = (unsigned int )reg;
2358#line 114
2359 __cil_tmp10 = (void const *)val;
2360#line 114
2361 __cil_tmp11 = (size_t )reg_cnt;
2362#line 114
2363 tmp = regmap_raw_write(__cil_tmp8, __cil_tmp9, __cil_tmp10, __cil_tmp11);
2364 }
2365#line 114
2366 return (tmp);
2367}
2368}
2369#line 117 "include/linux/mfd/da9052/da9052.h"
2370__inline static int da9052_reg_update(struct da9052 *da9052 , unsigned char reg ,
2371 unsigned char bit_mask , unsigned char reg_val )
2372{ int tmp ;
2373 unsigned long __cil_tmp6 ;
2374 unsigned long __cil_tmp7 ;
2375 struct regmap *__cil_tmp8 ;
2376 unsigned int __cil_tmp9 ;
2377 unsigned int __cil_tmp10 ;
2378 unsigned int __cil_tmp11 ;
2379
2380 {
2381 {
2382#line 121
2383 __cil_tmp6 = (unsigned long )da9052;
2384#line 121
2385 __cil_tmp7 = __cil_tmp6 + 8;
2386#line 121
2387 __cil_tmp8 = *((struct regmap **)__cil_tmp7);
2388#line 121
2389 __cil_tmp9 = (unsigned int )reg;
2390#line 121
2391 __cil_tmp10 = (unsigned int )bit_mask;
2392#line 121
2393 __cil_tmp11 = (unsigned int )reg_val;
2394#line 121
2395 tmp = regmap_update_bits(__cil_tmp8, __cil_tmp9, __cil_tmp10, __cil_tmp11);
2396 }
2397#line 121
2398 return (tmp);
2399}
2400}
2401#line 46 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2402static int da9052_rtc_enable_alarm(struct da9052 *da9052 , bool enable )
2403{ int ret ;
2404 struct device *__cil_tmp4 ;
2405 struct device const *__cil_tmp5 ;
2406 struct device *__cil_tmp6 ;
2407 struct device const *__cil_tmp7 ;
2408
2409 {
2410#line 49
2411 if ((int )enable) {
2412 {
2413#line 50
2414 ret = da9052_reg_update(da9052, (unsigned char)121, (unsigned char)64, (unsigned char)64);
2415 }
2416#line 53
2417 if (ret != 0) {
2418 {
2419#line 54
2420 __cil_tmp4 = *((struct device **)da9052);
2421#line 54
2422 __cil_tmp5 = (struct device const *)__cil_tmp4;
2423#line 54
2424 dev_err(__cil_tmp5, "%s: Failed to enable ALM: %d\n", "da9052_rtc_enable_alarm",
2425 ret);
2426 }
2427 } else {
2428
2429 }
2430 } else {
2431 {
2432#line 56
2433 ret = da9052_reg_update(da9052, (unsigned char)121, (unsigned char)64, (unsigned char)0);
2434 }
2435#line 58
2436 if (ret != 0) {
2437 {
2438#line 59
2439 __cil_tmp6 = *((struct device **)da9052);
2440#line 59
2441 __cil_tmp7 = (struct device const *)__cil_tmp6;
2442#line 59
2443 dev_err(__cil_tmp7, "%s: Write error: %d\n", "da9052_rtc_enable_alarm", ret);
2444 }
2445 } else {
2446
2447 }
2448 }
2449#line 61
2450 return (ret);
2451}
2452}
2453#line 64 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2454static irqreturn_t da9052_rtc_irq(int irq , void *data )
2455{ struct da9052_rtc *rtc ;
2456 int ret ;
2457 unsigned long __cil_tmp5 ;
2458 unsigned long __cil_tmp6 ;
2459 struct da9052 *__cil_tmp7 ;
2460 unsigned long __cil_tmp8 ;
2461 unsigned long __cil_tmp9 ;
2462 struct da9052 *__cil_tmp10 ;
2463 struct device *__cil_tmp11 ;
2464 struct device const *__cil_tmp12 ;
2465 int __cil_tmp13 ;
2466 unsigned long __cil_tmp14 ;
2467 unsigned long __cil_tmp15 ;
2468 struct da9052 *__cil_tmp16 ;
2469 bool __cil_tmp17 ;
2470 struct rtc_device *__cil_tmp18 ;
2471 struct rtc_device *__cil_tmp19 ;
2472
2473 {
2474 {
2475#line 66
2476 rtc = (struct da9052_rtc *)data;
2477#line 69
2478 __cil_tmp5 = (unsigned long )rtc;
2479#line 69
2480 __cil_tmp6 = __cil_tmp5 + 8;
2481#line 69
2482 __cil_tmp7 = *((struct da9052 **)__cil_tmp6);
2483#line 69
2484 ret = da9052_reg_read(__cil_tmp7, (unsigned char)117);
2485 }
2486#line 70
2487 if (ret < 0) {
2488 {
2489#line 71
2490 __cil_tmp8 = (unsigned long )rtc;
2491#line 71
2492 __cil_tmp9 = __cil_tmp8 + 8;
2493#line 71
2494 __cil_tmp10 = *((struct da9052 **)__cil_tmp9);
2495#line 71
2496 __cil_tmp11 = *((struct device **)__cil_tmp10);
2497#line 71
2498 __cil_tmp12 = (struct device const *)__cil_tmp11;
2499#line 71
2500 dev_err(__cil_tmp12, "%s: Read error: %d\n", "da9052_rtc_irq", ret);
2501 }
2502#line 72
2503 return ((irqreturn_t )0);
2504 } else {
2505
2506 }
2507 {
2508#line 75
2509 __cil_tmp13 = ret & 64;
2510#line 75
2511 if (__cil_tmp13 != 0) {
2512 {
2513#line 76
2514 __cil_tmp14 = (unsigned long )rtc;
2515#line 76
2516 __cil_tmp15 = __cil_tmp14 + 8;
2517#line 76
2518 __cil_tmp16 = *((struct da9052 **)__cil_tmp15);
2519#line 76
2520 __cil_tmp17 = (bool )0;
2521#line 76
2522 da9052_rtc_enable_alarm(__cil_tmp16, __cil_tmp17);
2523#line 77
2524 __cil_tmp18 = *((struct rtc_device **)rtc);
2525#line 77
2526 rtc_update_irq(__cil_tmp18, 1UL, 160UL);
2527 }
2528 } else {
2529 {
2530#line 79
2531 __cil_tmp19 = *((struct rtc_device **)rtc);
2532#line 79
2533 rtc_update_irq(__cil_tmp19, 1UL, 192UL);
2534 }
2535 }
2536 }
2537#line 81
2538 return ((irqreturn_t )1);
2539}
2540}
2541#line 84 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2542static int da9052_read_alarm(struct da9052 *da9052 , struct rtc_time *rtc_tm )
2543{ int ret ;
2544 uint8_t v[5U] ;
2545 unsigned char *__cil_tmp5 ;
2546 struct device *__cil_tmp6 ;
2547 struct device const *__cil_tmp7 ;
2548 unsigned long __cil_tmp8 ;
2549 unsigned long __cil_tmp9 ;
2550 unsigned long __cil_tmp10 ;
2551 unsigned long __cil_tmp11 ;
2552 uint8_t __cil_tmp12 ;
2553 int __cil_tmp13 ;
2554 int __cil_tmp14 ;
2555 unsigned long __cil_tmp15 ;
2556 unsigned long __cil_tmp16 ;
2557 unsigned long __cil_tmp17 ;
2558 unsigned long __cil_tmp18 ;
2559 uint8_t __cil_tmp19 ;
2560 int __cil_tmp20 ;
2561 int __cil_tmp21 ;
2562 unsigned long __cil_tmp22 ;
2563 unsigned long __cil_tmp23 ;
2564 unsigned long __cil_tmp24 ;
2565 unsigned long __cil_tmp25 ;
2566 uint8_t __cil_tmp26 ;
2567 int __cil_tmp27 ;
2568 unsigned long __cil_tmp28 ;
2569 unsigned long __cil_tmp29 ;
2570 unsigned long __cil_tmp30 ;
2571 unsigned long __cil_tmp31 ;
2572 uint8_t __cil_tmp32 ;
2573 int __cil_tmp33 ;
2574 unsigned long __cil_tmp34 ;
2575 unsigned long __cil_tmp35 ;
2576 unsigned long __cil_tmp36 ;
2577 unsigned long __cil_tmp37 ;
2578 uint8_t __cil_tmp38 ;
2579 int __cil_tmp39 ;
2580
2581 {
2582 {
2583#line 89
2584 __cil_tmp5 = (unsigned char *)(& v);
2585#line 89
2586 ret = da9052_group_read(da9052, (unsigned char)117, 5U, __cil_tmp5);
2587 }
2588#line 90
2589 if (ret != 0) {
2590 {
2591#line 91
2592 __cil_tmp6 = *((struct device **)da9052);
2593#line 91
2594 __cil_tmp7 = (struct device const *)__cil_tmp6;
2595#line 91
2596 dev_err(__cil_tmp7, "%s: Failed to group read ALM: %d\n", "da9052_read_alarm",
2597 ret);
2598 }
2599#line 92
2600 return (ret);
2601 } else {
2602
2603 }
2604 {
2605#line 95
2606 __cil_tmp8 = (unsigned long )rtc_tm;
2607#line 95
2608 __cil_tmp9 = __cil_tmp8 + 20;
2609#line 95
2610 __cil_tmp10 = 4 * 1UL;
2611#line 95
2612 __cil_tmp11 = (unsigned long )(v) + __cil_tmp10;
2613#line 95
2614 __cil_tmp12 = *((uint8_t *)__cil_tmp11);
2615#line 95
2616 __cil_tmp13 = (int )__cil_tmp12;
2617#line 95
2618 __cil_tmp14 = __cil_tmp13 & 63;
2619#line 95
2620 *((int *)__cil_tmp9) = __cil_tmp14 + 100;
2621#line 96
2622 __cil_tmp15 = (unsigned long )rtc_tm;
2623#line 96
2624 __cil_tmp16 = __cil_tmp15 + 16;
2625#line 96
2626 __cil_tmp17 = 3 * 1UL;
2627#line 96
2628 __cil_tmp18 = (unsigned long )(v) + __cil_tmp17;
2629#line 96
2630 __cil_tmp19 = *((uint8_t *)__cil_tmp18);
2631#line 96
2632 __cil_tmp20 = (int )__cil_tmp19;
2633#line 96
2634 __cil_tmp21 = __cil_tmp20 & 15;
2635#line 96
2636 *((int *)__cil_tmp16) = __cil_tmp21 + -1;
2637#line 97
2638 __cil_tmp22 = (unsigned long )rtc_tm;
2639#line 97
2640 __cil_tmp23 = __cil_tmp22 + 12;
2641#line 97
2642 __cil_tmp24 = 2 * 1UL;
2643#line 97
2644 __cil_tmp25 = (unsigned long )(v) + __cil_tmp24;
2645#line 97
2646 __cil_tmp26 = *((uint8_t *)__cil_tmp25);
2647#line 97
2648 __cil_tmp27 = (int )__cil_tmp26;
2649#line 97
2650 *((int *)__cil_tmp23) = __cil_tmp27 & 31;
2651#line 98
2652 __cil_tmp28 = (unsigned long )rtc_tm;
2653#line 98
2654 __cil_tmp29 = __cil_tmp28 + 8;
2655#line 98
2656 __cil_tmp30 = 1 * 1UL;
2657#line 98
2658 __cil_tmp31 = (unsigned long )(v) + __cil_tmp30;
2659#line 98
2660 __cil_tmp32 = *((uint8_t *)__cil_tmp31);
2661#line 98
2662 __cil_tmp33 = (int )__cil_tmp32;
2663#line 98
2664 *((int *)__cil_tmp29) = __cil_tmp33 & 31;
2665#line 99
2666 __cil_tmp34 = (unsigned long )rtc_tm;
2667#line 99
2668 __cil_tmp35 = __cil_tmp34 + 4;
2669#line 99
2670 __cil_tmp36 = 0 * 1UL;
2671#line 99
2672 __cil_tmp37 = (unsigned long )(v) + __cil_tmp36;
2673#line 99
2674 __cil_tmp38 = *((uint8_t *)__cil_tmp37);
2675#line 99
2676 __cil_tmp39 = (int )__cil_tmp38;
2677#line 99
2678 *((int *)__cil_tmp35) = __cil_tmp39 & 63;
2679#line 101
2680 ret = rtc_valid_tm(rtc_tm);
2681 }
2682#line 102
2683 if (ret != 0) {
2684#line 103
2685 return (ret);
2686 } else {
2687
2688 }
2689#line 104
2690 return (ret);
2691}
2692}
2693#line 107 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2694static int da9052_set_alarm(struct da9052 *da9052 , struct rtc_time *rtc_tm )
2695{ int ret ;
2696 uint8_t v[3U] ;
2697 unsigned long __cil_tmp5 ;
2698 unsigned long __cil_tmp6 ;
2699 unsigned long __cil_tmp7 ;
2700 unsigned long __cil_tmp8 ;
2701 int __cil_tmp9 ;
2702 unsigned long __cil_tmp10 ;
2703 unsigned long __cil_tmp11 ;
2704 unsigned long __cil_tmp12 ;
2705 unsigned long __cil_tmp13 ;
2706 int __cil_tmp14 ;
2707 unsigned long __cil_tmp15 ;
2708 unsigned long __cil_tmp16 ;
2709 int __cil_tmp17 ;
2710 unsigned char __cil_tmp18 ;
2711 int __cil_tmp19 ;
2712 unsigned char __cil_tmp20 ;
2713 struct device *__cil_tmp21 ;
2714 struct device const *__cil_tmp22 ;
2715 unsigned long __cil_tmp23 ;
2716 unsigned long __cil_tmp24 ;
2717 unsigned long __cil_tmp25 ;
2718 unsigned long __cil_tmp26 ;
2719 int __cil_tmp27 ;
2720 unsigned long __cil_tmp28 ;
2721 unsigned long __cil_tmp29 ;
2722 unsigned long __cil_tmp30 ;
2723 unsigned long __cil_tmp31 ;
2724 int __cil_tmp32 ;
2725 unsigned long __cil_tmp33 ;
2726 unsigned long __cil_tmp34 ;
2727 unsigned long __cil_tmp35 ;
2728 unsigned long __cil_tmp36 ;
2729 int __cil_tmp37 ;
2730 unsigned char *__cil_tmp38 ;
2731 unsigned long __cil_tmp39 ;
2732 unsigned long __cil_tmp40 ;
2733 int __cil_tmp41 ;
2734 unsigned char __cil_tmp42 ;
2735 int __cil_tmp43 ;
2736 unsigned char __cil_tmp44 ;
2737 struct device *__cil_tmp45 ;
2738 struct device const *__cil_tmp46 ;
2739
2740 {
2741 {
2742#line 112
2743 __cil_tmp5 = (unsigned long )rtc_tm;
2744#line 112
2745 __cil_tmp6 = __cil_tmp5 + 20;
2746#line 112
2747 __cil_tmp7 = (unsigned long )rtc_tm;
2748#line 112
2749 __cil_tmp8 = __cil_tmp7 + 20;
2750#line 112
2751 __cil_tmp9 = *((int *)__cil_tmp8);
2752#line 112
2753 *((int *)__cil_tmp6) = __cil_tmp9 + -100;
2754#line 113
2755 __cil_tmp10 = (unsigned long )rtc_tm;
2756#line 113
2757 __cil_tmp11 = __cil_tmp10 + 16;
2758#line 113
2759 __cil_tmp12 = (unsigned long )rtc_tm;
2760#line 113
2761 __cil_tmp13 = __cil_tmp12 + 16;
2762#line 113
2763 __cil_tmp14 = *((int *)__cil_tmp13);
2764#line 113
2765 *((int *)__cil_tmp11) = __cil_tmp14 + 1;
2766#line 115
2767 __cil_tmp15 = (unsigned long )rtc_tm;
2768#line 115
2769 __cil_tmp16 = __cil_tmp15 + 4;
2770#line 115
2771 __cil_tmp17 = *((int *)__cil_tmp16);
2772#line 115
2773 __cil_tmp18 = (unsigned char )__cil_tmp17;
2774#line 115
2775 __cil_tmp19 = (int )__cil_tmp18;
2776#line 115
2777 __cil_tmp20 = (unsigned char )__cil_tmp19;
2778#line 115
2779 ret = da9052_reg_update(da9052, (unsigned char)117, (unsigned char)63, __cil_tmp20);
2780 }
2781#line 117
2782 if (ret != 0) {
2783 {
2784#line 118
2785 __cil_tmp21 = *((struct device **)da9052);
2786#line 118
2787 __cil_tmp22 = (struct device const *)__cil_tmp21;
2788#line 118
2789 dev_err(__cil_tmp22, "%s: Failed to write ALRM MIN: %d\n", "da9052_set_alarm",
2790 ret);
2791 }
2792#line 119
2793 return (ret);
2794 } else {
2795
2796 }
2797 {
2798#line 122
2799 __cil_tmp23 = 0 * 1UL;
2800#line 122
2801 __cil_tmp24 = (unsigned long )(v) + __cil_tmp23;
2802#line 122
2803 __cil_tmp25 = (unsigned long )rtc_tm;
2804#line 122
2805 __cil_tmp26 = __cil_tmp25 + 8;
2806#line 122
2807 __cil_tmp27 = *((int *)__cil_tmp26);
2808#line 122
2809 *((uint8_t *)__cil_tmp24) = (uint8_t )__cil_tmp27;
2810#line 123
2811 __cil_tmp28 = 1 * 1UL;
2812#line 123
2813 __cil_tmp29 = (unsigned long )(v) + __cil_tmp28;
2814#line 123
2815 __cil_tmp30 = (unsigned long )rtc_tm;
2816#line 123
2817 __cil_tmp31 = __cil_tmp30 + 12;
2818#line 123
2819 __cil_tmp32 = *((int *)__cil_tmp31);
2820#line 123
2821 *((uint8_t *)__cil_tmp29) = (uint8_t )__cil_tmp32;
2822#line 124
2823 __cil_tmp33 = 2 * 1UL;
2824#line 124
2825 __cil_tmp34 = (unsigned long )(v) + __cil_tmp33;
2826#line 124
2827 __cil_tmp35 = (unsigned long )rtc_tm;
2828#line 124
2829 __cil_tmp36 = __cil_tmp35 + 16;
2830#line 124
2831 __cil_tmp37 = *((int *)__cil_tmp36);
2832#line 124
2833 *((uint8_t *)__cil_tmp34) = (uint8_t )__cil_tmp37;
2834#line 126
2835 __cil_tmp38 = (unsigned char *)(& v);
2836#line 126
2837 ret = da9052_group_write(da9052, (unsigned char)118, 3U, __cil_tmp38);
2838 }
2839#line 127
2840 if (ret < 0) {
2841#line 128
2842 return (ret);
2843 } else {
2844
2845 }
2846 {
2847#line 130
2848 __cil_tmp39 = (unsigned long )rtc_tm;
2849#line 130
2850 __cil_tmp40 = __cil_tmp39 + 20;
2851#line 130
2852 __cil_tmp41 = *((int *)__cil_tmp40);
2853#line 130
2854 __cil_tmp42 = (unsigned char )__cil_tmp41;
2855#line 130
2856 __cil_tmp43 = (int )__cil_tmp42;
2857#line 130
2858 __cil_tmp44 = (unsigned char )__cil_tmp43;
2859#line 130
2860 ret = da9052_reg_update(da9052, (unsigned char)121, (unsigned char)63, __cil_tmp44);
2861 }
2862#line 132
2863 if (ret != 0) {
2864 {
2865#line 133
2866 __cil_tmp45 = *((struct device **)da9052);
2867#line 133
2868 __cil_tmp46 = (struct device const *)__cil_tmp45;
2869#line 133
2870 dev_err(__cil_tmp46, "%s: Failed to write ALRM YEAR: %d\n", "da9052_set_alarm",
2871 ret);
2872 }
2873 } else {
2874
2875 }
2876#line 135
2877 return (ret);
2878}
2879}
2880#line 138 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2881static int da9052_rtc_get_alarm_status(struct da9052 *da9052 )
2882{ int ret ;
2883 struct device *__cil_tmp3 ;
2884 struct device const *__cil_tmp4 ;
2885
2886 {
2887 {
2888#line 142
2889 ret = da9052_reg_read(da9052, (unsigned char)121);
2890 }
2891#line 143
2892 if (ret < 0) {
2893 {
2894#line 144
2895 __cil_tmp3 = *((struct device **)da9052);
2896#line 144
2897 __cil_tmp4 = (struct device const *)__cil_tmp3;
2898#line 144
2899 dev_err(__cil_tmp4, "%s: Failed to read ALM: %d\n", "da9052_rtc_get_alarm_status",
2900 ret);
2901 }
2902#line 145
2903 return (ret);
2904 } else {
2905
2906 }
2907#line 147
2908 ret = ret & 64;
2909#line 148
2910 return (ret > 0);
2911}
2912}
2913#line 151 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
2914static int da9052_rtc_read_time(struct device *dev , struct rtc_time *rtc_tm )
2915{ struct da9052_rtc *rtc ;
2916 void *tmp ;
2917 uint8_t v[6U] ;
2918 int ret ;
2919 struct device const *__cil_tmp7 ;
2920 unsigned long __cil_tmp8 ;
2921 unsigned long __cil_tmp9 ;
2922 struct da9052 *__cil_tmp10 ;
2923 unsigned char *__cil_tmp11 ;
2924 unsigned long __cil_tmp12 ;
2925 unsigned long __cil_tmp13 ;
2926 struct da9052 *__cil_tmp14 ;
2927 struct device *__cil_tmp15 ;
2928 struct device const *__cil_tmp16 ;
2929 unsigned long __cil_tmp17 ;
2930 unsigned long __cil_tmp18 ;
2931 unsigned long __cil_tmp19 ;
2932 unsigned long __cil_tmp20 ;
2933 uint8_t __cil_tmp21 ;
2934 int __cil_tmp22 ;
2935 int __cil_tmp23 ;
2936 unsigned long __cil_tmp24 ;
2937 unsigned long __cil_tmp25 ;
2938 unsigned long __cil_tmp26 ;
2939 unsigned long __cil_tmp27 ;
2940 uint8_t __cil_tmp28 ;
2941 int __cil_tmp29 ;
2942 int __cil_tmp30 ;
2943 unsigned long __cil_tmp31 ;
2944 unsigned long __cil_tmp32 ;
2945 unsigned long __cil_tmp33 ;
2946 unsigned long __cil_tmp34 ;
2947 uint8_t __cil_tmp35 ;
2948 int __cil_tmp36 ;
2949 unsigned long __cil_tmp37 ;
2950 unsigned long __cil_tmp38 ;
2951 unsigned long __cil_tmp39 ;
2952 unsigned long __cil_tmp40 ;
2953 uint8_t __cil_tmp41 ;
2954 int __cil_tmp42 ;
2955 unsigned long __cil_tmp43 ;
2956 unsigned long __cil_tmp44 ;
2957 unsigned long __cil_tmp45 ;
2958 unsigned long __cil_tmp46 ;
2959 uint8_t __cil_tmp47 ;
2960 int __cil_tmp48 ;
2961 unsigned long __cil_tmp49 ;
2962 unsigned long __cil_tmp50 ;
2963 uint8_t __cil_tmp51 ;
2964 int __cil_tmp52 ;
2965 unsigned long __cil_tmp53 ;
2966 unsigned long __cil_tmp54 ;
2967 struct da9052 *__cil_tmp55 ;
2968 struct device *__cil_tmp56 ;
2969 struct device const *__cil_tmp57 ;
2970
2971 {
2972 {
2973#line 153
2974 __cil_tmp7 = (struct device const *)dev;
2975#line 153
2976 tmp = dev_get_drvdata(__cil_tmp7);
2977#line 153
2978 rtc = (struct da9052_rtc *)tmp;
2979#line 157
2980 __cil_tmp8 = (unsigned long )rtc;
2981#line 157
2982 __cil_tmp9 = __cil_tmp8 + 8;
2983#line 157
2984 __cil_tmp10 = *((struct da9052 **)__cil_tmp9);
2985#line 157
2986 __cil_tmp11 = (unsigned char *)(& v);
2987#line 157
2988 ret = da9052_group_read(__cil_tmp10, (unsigned char)111, 6U, __cil_tmp11);
2989 }
2990#line 158
2991 if (ret < 0) {
2992 {
2993#line 159
2994 __cil_tmp12 = (unsigned long )rtc;
2995#line 159
2996 __cil_tmp13 = __cil_tmp12 + 8;
2997#line 159
2998 __cil_tmp14 = *((struct da9052 **)__cil_tmp13);
2999#line 159
3000 __cil_tmp15 = *((struct device **)__cil_tmp14);
3001#line 159
3002 __cil_tmp16 = (struct device const *)__cil_tmp15;
3003#line 159
3004 dev_err(__cil_tmp16, "%s: Failed to read RTC time : %d\n", "da9052_rtc_read_time",
3005 ret);
3006 }
3007#line 160
3008 return (ret);
3009 } else {
3010
3011 }
3012 {
3013#line 163
3014 __cil_tmp17 = (unsigned long )rtc_tm;
3015#line 163
3016 __cil_tmp18 = __cil_tmp17 + 20;
3017#line 163
3018 __cil_tmp19 = 5 * 1UL;
3019#line 163
3020 __cil_tmp20 = (unsigned long )(v) + __cil_tmp19;
3021#line 163
3022 __cil_tmp21 = *((uint8_t *)__cil_tmp20);
3023#line 163
3024 __cil_tmp22 = (int )__cil_tmp21;
3025#line 163
3026 __cil_tmp23 = __cil_tmp22 & 63;
3027#line 163
3028 *((int *)__cil_tmp18) = __cil_tmp23 + 100;
3029#line 164
3030 __cil_tmp24 = (unsigned long )rtc_tm;
3031#line 164
3032 __cil_tmp25 = __cil_tmp24 + 16;
3033#line 164
3034 __cil_tmp26 = 4 * 1UL;
3035#line 164
3036 __cil_tmp27 = (unsigned long )(v) + __cil_tmp26;
3037#line 164
3038 __cil_tmp28 = *((uint8_t *)__cil_tmp27);
3039#line 164
3040 __cil_tmp29 = (int )__cil_tmp28;
3041#line 164
3042 __cil_tmp30 = __cil_tmp29 & 15;
3043#line 164
3044 *((int *)__cil_tmp25) = __cil_tmp30 + -1;
3045#line 165
3046 __cil_tmp31 = (unsigned long )rtc_tm;
3047#line 165
3048 __cil_tmp32 = __cil_tmp31 + 12;
3049#line 165
3050 __cil_tmp33 = 3 * 1UL;
3051#line 165
3052 __cil_tmp34 = (unsigned long )(v) + __cil_tmp33;
3053#line 165
3054 __cil_tmp35 = *((uint8_t *)__cil_tmp34);
3055#line 165
3056 __cil_tmp36 = (int )__cil_tmp35;
3057#line 165
3058 *((int *)__cil_tmp32) = __cil_tmp36 & 31;
3059#line 166
3060 __cil_tmp37 = (unsigned long )rtc_tm;
3061#line 166
3062 __cil_tmp38 = __cil_tmp37 + 8;
3063#line 166
3064 __cil_tmp39 = 2 * 1UL;
3065#line 166
3066 __cil_tmp40 = (unsigned long )(v) + __cil_tmp39;
3067#line 166
3068 __cil_tmp41 = *((uint8_t *)__cil_tmp40);
3069#line 166
3070 __cil_tmp42 = (int )__cil_tmp41;
3071#line 166
3072 *((int *)__cil_tmp38) = __cil_tmp42 & 31;
3073#line 167
3074 __cil_tmp43 = (unsigned long )rtc_tm;
3075#line 167
3076 __cil_tmp44 = __cil_tmp43 + 4;
3077#line 167
3078 __cil_tmp45 = 1 * 1UL;
3079#line 167
3080 __cil_tmp46 = (unsigned long )(v) + __cil_tmp45;
3081#line 167
3082 __cil_tmp47 = *((uint8_t *)__cil_tmp46);
3083#line 167
3084 __cil_tmp48 = (int )__cil_tmp47;
3085#line 167
3086 *((int *)__cil_tmp44) = __cil_tmp48 & 63;
3087#line 168
3088 __cil_tmp49 = 0 * 1UL;
3089#line 168
3090 __cil_tmp50 = (unsigned long )(v) + __cil_tmp49;
3091#line 168
3092 __cil_tmp51 = *((uint8_t *)__cil_tmp50);
3093#line 168
3094 __cil_tmp52 = (int )__cil_tmp51;
3095#line 168
3096 *((int *)rtc_tm) = __cil_tmp52 & 63;
3097#line 170
3098 ret = rtc_valid_tm(rtc_tm);
3099 }
3100#line 171
3101 if (ret != 0) {
3102 {
3103#line 172
3104 __cil_tmp53 = (unsigned long )rtc;
3105#line 172
3106 __cil_tmp54 = __cil_tmp53 + 8;
3107#line 172
3108 __cil_tmp55 = *((struct da9052 **)__cil_tmp54);
3109#line 172
3110 __cil_tmp56 = *((struct device **)__cil_tmp55);
3111#line 172
3112 __cil_tmp57 = (struct device const *)__cil_tmp56;
3113#line 172
3114 dev_err(__cil_tmp57, "%s: rtc_valid_tm failed: %d\n", "da9052_rtc_read_time",
3115 ret);
3116 }
3117#line 173
3118 return (ret);
3119 } else {
3120
3121 }
3122#line 176
3123 return (0);
3124}
3125}
3126#line 179 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3127static int da9052_rtc_set_time(struct device *dev , struct rtc_time *tm )
3128{ struct da9052_rtc *rtc ;
3129 uint8_t v[6U] ;
3130 void *tmp ;
3131 int tmp___0 ;
3132 struct device const *__cil_tmp7 ;
3133 unsigned long __cil_tmp8 ;
3134 unsigned long __cil_tmp9 ;
3135 int __cil_tmp10 ;
3136 unsigned long __cil_tmp11 ;
3137 unsigned long __cil_tmp12 ;
3138 unsigned long __cil_tmp13 ;
3139 unsigned long __cil_tmp14 ;
3140 int __cil_tmp15 ;
3141 unsigned long __cil_tmp16 ;
3142 unsigned long __cil_tmp17 ;
3143 unsigned long __cil_tmp18 ;
3144 unsigned long __cil_tmp19 ;
3145 int __cil_tmp20 ;
3146 unsigned long __cil_tmp21 ;
3147 unsigned long __cil_tmp22 ;
3148 unsigned long __cil_tmp23 ;
3149 unsigned long __cil_tmp24 ;
3150 int __cil_tmp25 ;
3151 unsigned long __cil_tmp26 ;
3152 unsigned long __cil_tmp27 ;
3153 unsigned long __cil_tmp28 ;
3154 unsigned long __cil_tmp29 ;
3155 int __cil_tmp30 ;
3156 uint8_t __cil_tmp31 ;
3157 unsigned int __cil_tmp32 ;
3158 unsigned int __cil_tmp33 ;
3159 unsigned long __cil_tmp34 ;
3160 unsigned long __cil_tmp35 ;
3161 unsigned long __cil_tmp36 ;
3162 unsigned long __cil_tmp37 ;
3163 int __cil_tmp38 ;
3164 uint8_t __cil_tmp39 ;
3165 unsigned int __cil_tmp40 ;
3166 unsigned int __cil_tmp41 ;
3167 unsigned long __cil_tmp42 ;
3168 unsigned long __cil_tmp43 ;
3169 struct da9052 *__cil_tmp44 ;
3170 unsigned char *__cil_tmp45 ;
3171
3172 {
3173 {
3174#line 184
3175 __cil_tmp7 = (struct device const *)dev;
3176#line 184
3177 tmp = dev_get_drvdata(__cil_tmp7);
3178#line 184
3179 rtc = (struct da9052_rtc *)tmp;
3180#line 186
3181 __cil_tmp8 = 0 * 1UL;
3182#line 186
3183 __cil_tmp9 = (unsigned long )(v) + __cil_tmp8;
3184#line 186
3185 __cil_tmp10 = *((int *)tm);
3186#line 186
3187 *((uint8_t *)__cil_tmp9) = (uint8_t )__cil_tmp10;
3188#line 187
3189 __cil_tmp11 = 1 * 1UL;
3190#line 187
3191 __cil_tmp12 = (unsigned long )(v) + __cil_tmp11;
3192#line 187
3193 __cil_tmp13 = (unsigned long )tm;
3194#line 187
3195 __cil_tmp14 = __cil_tmp13 + 4;
3196#line 187
3197 __cil_tmp15 = *((int *)__cil_tmp14);
3198#line 187
3199 *((uint8_t *)__cil_tmp12) = (uint8_t )__cil_tmp15;
3200#line 188
3201 __cil_tmp16 = 2 * 1UL;
3202#line 188
3203 __cil_tmp17 = (unsigned long )(v) + __cil_tmp16;
3204#line 188
3205 __cil_tmp18 = (unsigned long )tm;
3206#line 188
3207 __cil_tmp19 = __cil_tmp18 + 8;
3208#line 188
3209 __cil_tmp20 = *((int *)__cil_tmp19);
3210#line 188
3211 *((uint8_t *)__cil_tmp17) = (uint8_t )__cil_tmp20;
3212#line 189
3213 __cil_tmp21 = 3 * 1UL;
3214#line 189
3215 __cil_tmp22 = (unsigned long )(v) + __cil_tmp21;
3216#line 189
3217 __cil_tmp23 = (unsigned long )tm;
3218#line 189
3219 __cil_tmp24 = __cil_tmp23 + 12;
3220#line 189
3221 __cil_tmp25 = *((int *)__cil_tmp24);
3222#line 189
3223 *((uint8_t *)__cil_tmp22) = (uint8_t )__cil_tmp25;
3224#line 190
3225 __cil_tmp26 = 4 * 1UL;
3226#line 190
3227 __cil_tmp27 = (unsigned long )(v) + __cil_tmp26;
3228#line 190
3229 __cil_tmp28 = (unsigned long )tm;
3230#line 190
3231 __cil_tmp29 = __cil_tmp28 + 16;
3232#line 190
3233 __cil_tmp30 = *((int *)__cil_tmp29);
3234#line 190
3235 __cil_tmp31 = (uint8_t )__cil_tmp30;
3236#line 190
3237 __cil_tmp32 = (unsigned int )__cil_tmp31;
3238#line 190
3239 __cil_tmp33 = __cil_tmp32 + 1U;
3240#line 190
3241 *((uint8_t *)__cil_tmp27) = (uint8_t )__cil_tmp33;
3242#line 191
3243 __cil_tmp34 = 5 * 1UL;
3244#line 191
3245 __cil_tmp35 = (unsigned long )(v) + __cil_tmp34;
3246#line 191
3247 __cil_tmp36 = (unsigned long )tm;
3248#line 191
3249 __cil_tmp37 = __cil_tmp36 + 20;
3250#line 191
3251 __cil_tmp38 = *((int *)__cil_tmp37);
3252#line 191
3253 __cil_tmp39 = (uint8_t )__cil_tmp38;
3254#line 191
3255 __cil_tmp40 = (unsigned int )__cil_tmp39;
3256#line 191
3257 __cil_tmp41 = __cil_tmp40 + 156U;
3258#line 191
3259 *((uint8_t *)__cil_tmp35) = (uint8_t )__cil_tmp41;
3260#line 193
3261 __cil_tmp42 = (unsigned long )rtc;
3262#line 193
3263 __cil_tmp43 = __cil_tmp42 + 8;
3264#line 193
3265 __cil_tmp44 = *((struct da9052 **)__cil_tmp43);
3266#line 193
3267 __cil_tmp45 = (unsigned char *)(& v);
3268#line 193
3269 tmp___0 = da9052_group_write(__cil_tmp44, (unsigned char)111, 6U, __cil_tmp45);
3270 }
3271#line 193
3272 return (tmp___0);
3273}
3274}
3275#line 196 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3276static int da9052_rtc_read_alarm(struct device *dev , struct rtc_wkalrm *alrm )
3277{ int ret ;
3278 struct rtc_time *tm ;
3279 struct da9052_rtc *rtc ;
3280 void *tmp ;
3281 int tmp___0 ;
3282 unsigned long __cil_tmp8 ;
3283 unsigned long __cil_tmp9 ;
3284 struct device const *__cil_tmp10 ;
3285 unsigned long __cil_tmp11 ;
3286 unsigned long __cil_tmp12 ;
3287 struct da9052 *__cil_tmp13 ;
3288 unsigned long __cil_tmp14 ;
3289 unsigned long __cil_tmp15 ;
3290 struct da9052 *__cil_tmp16 ;
3291
3292 {
3293 {
3294#line 199
3295 __cil_tmp8 = (unsigned long )alrm;
3296#line 199
3297 __cil_tmp9 = __cil_tmp8 + 4;
3298#line 199
3299 tm = (struct rtc_time *)__cil_tmp9;
3300#line 200
3301 __cil_tmp10 = (struct device const *)dev;
3302#line 200
3303 tmp = dev_get_drvdata(__cil_tmp10);
3304#line 200
3305 rtc = (struct da9052_rtc *)tmp;
3306#line 202
3307 __cil_tmp11 = (unsigned long )rtc;
3308#line 202
3309 __cil_tmp12 = __cil_tmp11 + 8;
3310#line 202
3311 __cil_tmp13 = *((struct da9052 **)__cil_tmp12);
3312#line 202
3313 ret = da9052_read_alarm(__cil_tmp13, tm);
3314 }
3315#line 204
3316 if (ret != 0) {
3317#line 205
3318 return (ret);
3319 } else {
3320
3321 }
3322 {
3323#line 207
3324 __cil_tmp14 = (unsigned long )rtc;
3325#line 207
3326 __cil_tmp15 = __cil_tmp14 + 8;
3327#line 207
3328 __cil_tmp16 = *((struct da9052 **)__cil_tmp15);
3329#line 207
3330 tmp___0 = da9052_rtc_get_alarm_status(__cil_tmp16);
3331#line 207
3332 *((unsigned char *)alrm) = (unsigned char )tmp___0;
3333 }
3334#line 209
3335 return (0);
3336}
3337}
3338#line 212 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3339static int da9052_rtc_set_alarm(struct device *dev , struct rtc_wkalrm *alrm )
3340{ int ret ;
3341 struct rtc_time *tm ;
3342 struct da9052_rtc *rtc ;
3343 void *tmp ;
3344 unsigned long __cil_tmp7 ;
3345 unsigned long __cil_tmp8 ;
3346 struct device const *__cil_tmp9 ;
3347 unsigned long __cil_tmp10 ;
3348 unsigned long __cil_tmp11 ;
3349 struct da9052 *__cil_tmp12 ;
3350 bool __cil_tmp13 ;
3351 unsigned long __cil_tmp14 ;
3352 unsigned long __cil_tmp15 ;
3353 struct da9052 *__cil_tmp16 ;
3354 unsigned long __cil_tmp17 ;
3355 unsigned long __cil_tmp18 ;
3356 struct da9052 *__cil_tmp19 ;
3357 bool __cil_tmp20 ;
3358
3359 {
3360 {
3361#line 215
3362 __cil_tmp7 = (unsigned long )alrm;
3363#line 215
3364 __cil_tmp8 = __cil_tmp7 + 4;
3365#line 215
3366 tm = (struct rtc_time *)__cil_tmp8;
3367#line 216
3368 __cil_tmp9 = (struct device const *)dev;
3369#line 216
3370 tmp = dev_get_drvdata(__cil_tmp9);
3371#line 216
3372 rtc = (struct da9052_rtc *)tmp;
3373#line 218
3374 __cil_tmp10 = (unsigned long )rtc;
3375#line 218
3376 __cil_tmp11 = __cil_tmp10 + 8;
3377#line 218
3378 __cil_tmp12 = *((struct da9052 **)__cil_tmp11);
3379#line 218
3380 __cil_tmp13 = (bool )0;
3381#line 218
3382 ret = da9052_rtc_enable_alarm(__cil_tmp12, __cil_tmp13);
3383 }
3384#line 219
3385 if (ret < 0) {
3386#line 220
3387 return (ret);
3388 } else {
3389
3390 }
3391 {
3392#line 222
3393 __cil_tmp14 = (unsigned long )rtc;
3394#line 222
3395 __cil_tmp15 = __cil_tmp14 + 8;
3396#line 222
3397 __cil_tmp16 = *((struct da9052 **)__cil_tmp15);
3398#line 222
3399 ret = da9052_set_alarm(__cil_tmp16, tm);
3400 }
3401#line 223
3402 if (ret != 0) {
3403#line 224
3404 return (ret);
3405 } else {
3406
3407 }
3408 {
3409#line 226
3410 __cil_tmp17 = (unsigned long )rtc;
3411#line 226
3412 __cil_tmp18 = __cil_tmp17 + 8;
3413#line 226
3414 __cil_tmp19 = *((struct da9052 **)__cil_tmp18);
3415#line 226
3416 __cil_tmp20 = (bool )1;
3417#line 226
3418 ret = da9052_rtc_enable_alarm(__cil_tmp19, __cil_tmp20);
3419 }
3420#line 228
3421 return (ret);
3422}
3423}
3424#line 231 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3425static int da9052_rtc_alarm_irq_enable(struct device *dev , unsigned int enabled )
3426{ struct da9052_rtc *rtc ;
3427 void *tmp ;
3428 int tmp___0 ;
3429 struct device const *__cil_tmp6 ;
3430 unsigned long __cil_tmp7 ;
3431 unsigned long __cil_tmp8 ;
3432 struct da9052 *__cil_tmp9 ;
3433 int __cil_tmp10 ;
3434 bool __cil_tmp11 ;
3435
3436 {
3437 {
3438#line 233
3439 __cil_tmp6 = (struct device const *)dev;
3440#line 233
3441 tmp = dev_get_drvdata(__cil_tmp6);
3442#line 233
3443 rtc = (struct da9052_rtc *)tmp;
3444#line 235
3445 __cil_tmp7 = (unsigned long )rtc;
3446#line 235
3447 __cil_tmp8 = __cil_tmp7 + 8;
3448#line 235
3449 __cil_tmp9 = *((struct da9052 **)__cil_tmp8);
3450#line 235
3451 __cil_tmp10 = enabled != 0U;
3452#line 235
3453 __cil_tmp11 = (bool )__cil_tmp10;
3454#line 235
3455 tmp___0 = da9052_rtc_enable_alarm(__cil_tmp9, __cil_tmp11);
3456 }
3457#line 235
3458 return (tmp___0);
3459}
3460}
3461#line 238 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3462static struct rtc_class_ops const da9052_rtc_ops =
3463#line 238
3464 {(int (*)(struct device * ))0, (void (*)(struct device * ))0, (int (*)(struct device * ,
3465 unsigned int ,
3466 unsigned long ))0,
3467 & da9052_rtc_read_time, & da9052_rtc_set_time, & da9052_rtc_read_alarm, & da9052_rtc_set_alarm,
3468 (int (*)(struct device * , struct seq_file * ))0, (int (*)(struct device * , unsigned long ))0,
3469 (int (*)(struct device * , int ))0, & da9052_rtc_alarm_irq_enable};
3470#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3471static int da9052_rtc_probe(struct platform_device *pdev )
3472{ struct da9052_rtc *rtc ;
3473 int ret ;
3474 void *tmp ;
3475 void *tmp___0 ;
3476 long tmp___1 ;
3477 long tmp___2 ;
3478 unsigned long __cil_tmp8 ;
3479 unsigned long __cil_tmp9 ;
3480 struct device *__cil_tmp10 ;
3481 struct da9052_rtc *__cil_tmp11 ;
3482 unsigned long __cil_tmp12 ;
3483 unsigned long __cil_tmp13 ;
3484 unsigned long __cil_tmp14 ;
3485 unsigned long __cil_tmp15 ;
3486 struct device *__cil_tmp16 ;
3487 struct device const *__cil_tmp17 ;
3488 unsigned long __cil_tmp18 ;
3489 unsigned long __cil_tmp19 ;
3490 void *__cil_tmp20 ;
3491 unsigned long __cil_tmp21 ;
3492 unsigned long __cil_tmp22 ;
3493 unsigned long __cil_tmp23 ;
3494 unsigned long __cil_tmp24 ;
3495 int __cil_tmp25 ;
3496 unsigned int __cil_tmp26 ;
3497 irqreturn_t (*__cil_tmp27)(int , void * ) ;
3498 void *__cil_tmp28 ;
3499 unsigned long __cil_tmp29 ;
3500 unsigned long __cil_tmp30 ;
3501 struct da9052 *__cil_tmp31 ;
3502 struct device *__cil_tmp32 ;
3503 struct device const *__cil_tmp33 ;
3504 char const *__cil_tmp34 ;
3505 unsigned long __cil_tmp35 ;
3506 unsigned long __cil_tmp36 ;
3507 struct device *__cil_tmp37 ;
3508 struct rtc_device *__cil_tmp38 ;
3509 void const *__cil_tmp39 ;
3510 struct rtc_device *__cil_tmp40 ;
3511 void const *__cil_tmp41 ;
3512 unsigned long __cil_tmp42 ;
3513 unsigned long __cil_tmp43 ;
3514 int __cil_tmp44 ;
3515 unsigned int __cil_tmp45 ;
3516 void *__cil_tmp46 ;
3517 unsigned long __cil_tmp47 ;
3518 unsigned long __cil_tmp48 ;
3519 struct device *__cil_tmp49 ;
3520 void *__cil_tmp50 ;
3521
3522 {
3523 {
3524#line 251
3525 __cil_tmp8 = (unsigned long )pdev;
3526#line 251
3527 __cil_tmp9 = __cil_tmp8 + 16;
3528#line 251
3529 __cil_tmp10 = (struct device *)__cil_tmp9;
3530#line 251
3531 tmp = devm_kzalloc(__cil_tmp10, 24UL, 208U);
3532#line 251
3533 rtc = (struct da9052_rtc *)tmp;
3534 }
3535 {
3536#line 252
3537 __cil_tmp11 = (struct da9052_rtc *)0;
3538#line 252
3539 __cil_tmp12 = (unsigned long )__cil_tmp11;
3540#line 252
3541 __cil_tmp13 = (unsigned long )rtc;
3542#line 252
3543 if (__cil_tmp13 == __cil_tmp12) {
3544#line 253
3545 return (-12);
3546 } else {
3547
3548 }
3549 }
3550 {
3551#line 255
3552 __cil_tmp14 = (unsigned long )pdev;
3553#line 255
3554 __cil_tmp15 = __cil_tmp14 + 16;
3555#line 255
3556 __cil_tmp16 = *((struct device **)__cil_tmp15);
3557#line 255
3558 __cil_tmp17 = (struct device const *)__cil_tmp16;
3559#line 255
3560 tmp___0 = dev_get_drvdata(__cil_tmp17);
3561#line 255
3562 __cil_tmp18 = (unsigned long )rtc;
3563#line 255
3564 __cil_tmp19 = __cil_tmp18 + 8;
3565#line 255
3566 *((struct da9052 **)__cil_tmp19) = (struct da9052 *)tmp___0;
3567#line 256
3568 __cil_tmp20 = (void *)rtc;
3569#line 256
3570 platform_set_drvdata(pdev, __cil_tmp20);
3571#line 257
3572 __cil_tmp21 = (unsigned long )rtc;
3573#line 257
3574 __cil_tmp22 = __cil_tmp21 + 16;
3575#line 257
3576 *((int *)__cil_tmp22) = platform_get_irq_byname(pdev, "ALM");
3577#line 258
3578 __cil_tmp23 = (unsigned long )rtc;
3579#line 258
3580 __cil_tmp24 = __cil_tmp23 + 16;
3581#line 258
3582 __cil_tmp25 = *((int *)__cil_tmp24);
3583#line 258
3584 __cil_tmp26 = (unsigned int )__cil_tmp25;
3585#line 258
3586 __cil_tmp27 = (irqreturn_t (*)(int , void * ))0;
3587#line 258
3588 __cil_tmp28 = (void *)rtc;
3589#line 258
3590 ret = request_threaded_irq(__cil_tmp26, __cil_tmp27, & da9052_rtc_irq, 8200UL, "ALM",
3591 __cil_tmp28);
3592 }
3593#line 261
3594 if (ret != 0) {
3595 {
3596#line 262
3597 __cil_tmp29 = (unsigned long )rtc;
3598#line 262
3599 __cil_tmp30 = __cil_tmp29 + 8;
3600#line 262
3601 __cil_tmp31 = *((struct da9052 **)__cil_tmp30);
3602#line 262
3603 __cil_tmp32 = *((struct device **)__cil_tmp31);
3604#line 262
3605 __cil_tmp33 = (struct device const *)__cil_tmp32;
3606#line 262
3607 dev_err(__cil_tmp33, "%s: irq registration failed: %d\n", "da9052_rtc_probe",
3608 ret);
3609 }
3610#line 263
3611 goto err_mem;
3612 } else {
3613
3614 }
3615 {
3616#line 266
3617 __cil_tmp34 = *((char const **)pdev);
3618#line 266
3619 __cil_tmp35 = (unsigned long )pdev;
3620#line 266
3621 __cil_tmp36 = __cil_tmp35 + 16;
3622#line 266
3623 __cil_tmp37 = (struct device *)__cil_tmp36;
3624#line 266
3625 *((struct rtc_device **)rtc) = rtc_device_register(__cil_tmp34, __cil_tmp37, & da9052_rtc_ops,
3626 & __this_module);
3627#line 268
3628 __cil_tmp38 = *((struct rtc_device **)rtc);
3629#line 268
3630 __cil_tmp39 = (void const *)__cil_tmp38;
3631#line 268
3632 tmp___2 = IS_ERR(__cil_tmp39);
3633 }
3634#line 268
3635 if (tmp___2 != 0L) {
3636 {
3637#line 269
3638 __cil_tmp40 = *((struct rtc_device **)rtc);
3639#line 269
3640 __cil_tmp41 = (void const *)__cil_tmp40;
3641#line 269
3642 tmp___1 = PTR_ERR(__cil_tmp41);
3643#line 269
3644 ret = (int )tmp___1;
3645 }
3646#line 270
3647 goto err_free_irq;
3648 } else {
3649
3650 }
3651#line 273
3652 return (0);
3653 err_free_irq:
3654 {
3655#line 276
3656 __cil_tmp42 = (unsigned long )rtc;
3657#line 276
3658 __cil_tmp43 = __cil_tmp42 + 16;
3659#line 276
3660 __cil_tmp44 = *((int *)__cil_tmp43);
3661#line 276
3662 __cil_tmp45 = (unsigned int )__cil_tmp44;
3663#line 276
3664 __cil_tmp46 = (void *)rtc;
3665#line 276
3666 free_irq(__cil_tmp45, __cil_tmp46);
3667 }
3668 err_mem:
3669 {
3670#line 278
3671 __cil_tmp47 = (unsigned long )pdev;
3672#line 278
3673 __cil_tmp48 = __cil_tmp47 + 16;
3674#line 278
3675 __cil_tmp49 = (struct device *)__cil_tmp48;
3676#line 278
3677 __cil_tmp50 = (void *)rtc;
3678#line 278
3679 devm_kfree(__cil_tmp49, __cil_tmp50);
3680 }
3681#line 279
3682 return (ret);
3683}
3684}
3685#line 326
3686extern void ldv_check_final_state(void) ;
3687#line 329
3688extern void ldv_check_return_value(int ) ;
3689#line 332
3690extern void ldv_initialize(void) ;
3691#line 335
3692extern int __VERIFIER_nondet_int(void) ;
3693#line 338 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3694int LDV_IN_INTERRUPT ;
3695#line 341 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3696void main(void)
3697{ struct device *var_group1 ;
3698 struct rtc_time *var_group2 ;
3699 struct rtc_wkalrm *var_group3 ;
3700 unsigned int var_da9052_rtc_alarm_irq_enable_9_p1 ;
3701 struct platform_device *var_group4 ;
3702 int res_da9052_rtc_probe_10 ;
3703 int var_da9052_rtc_irq_1_p0 ;
3704 void *var_da9052_rtc_irq_1_p1 ;
3705 int ldv_s_da9052_rtc_driver_platform_driver ;
3706 int tmp ;
3707 int tmp___0 ;
3708
3709 {
3710 {
3711#line 422
3712 ldv_s_da9052_rtc_driver_platform_driver = 0;
3713#line 410
3714 LDV_IN_INTERRUPT = 1;
3715#line 419
3716 ldv_initialize();
3717 }
3718#line 427
3719 goto ldv_21262;
3720 ldv_21261:
3721 {
3722#line 431
3723 tmp = __VERIFIER_nondet_int();
3724 }
3725#line 433
3726 if (tmp == 0) {
3727#line 433
3728 goto case_0;
3729 } else
3730#line 452
3731 if (tmp == 1) {
3732#line 452
3733 goto case_1;
3734 } else
3735#line 471
3736 if (tmp == 2) {
3737#line 471
3738 goto case_2;
3739 } else
3740#line 490
3741 if (tmp == 3) {
3742#line 490
3743 goto case_3;
3744 } else
3745#line 509
3746 if (tmp == 4) {
3747#line 509
3748 goto case_4;
3749 } else
3750#line 528
3751 if (tmp == 5) {
3752#line 528
3753 goto case_5;
3754 } else
3755#line 550
3756 if (tmp == 6) {
3757#line 550
3758 goto case_6;
3759 } else {
3760 {
3761#line 569
3762 goto switch_default;
3763#line 431
3764 if (0) {
3765 case_0:
3766 {
3767#line 444
3768 da9052_rtc_read_time(var_group1, var_group2);
3769 }
3770#line 451
3771 goto ldv_21252;
3772 case_1:
3773 {
3774#line 463
3775 da9052_rtc_set_time(var_group1, var_group2);
3776 }
3777#line 470
3778 goto ldv_21252;
3779 case_2:
3780 {
3781#line 482
3782 da9052_rtc_read_alarm(var_group1, var_group3);
3783 }
3784#line 489
3785 goto ldv_21252;
3786 case_3:
3787 {
3788#line 501
3789 da9052_rtc_set_alarm(var_group1, var_group3);
3790 }
3791#line 508
3792 goto ldv_21252;
3793 case_4:
3794 {
3795#line 520
3796 da9052_rtc_alarm_irq_enable(var_group1, var_da9052_rtc_alarm_irq_enable_9_p1);
3797 }
3798#line 527
3799 goto ldv_21252;
3800 case_5: ;
3801#line 531
3802 if (ldv_s_da9052_rtc_driver_platform_driver == 0) {
3803 {
3804#line 539
3805 res_da9052_rtc_probe_10 = da9052_rtc_probe(var_group4);
3806#line 540
3807 ldv_check_return_value(res_da9052_rtc_probe_10);
3808 }
3809#line 541
3810 if (res_da9052_rtc_probe_10 != 0) {
3811#line 542
3812 goto ldv_module_exit;
3813 } else {
3814
3815 }
3816#line 543
3817 ldv_s_da9052_rtc_driver_platform_driver = 0;
3818 } else {
3819
3820 }
3821#line 549
3822 goto ldv_21252;
3823 case_6:
3824 {
3825#line 553
3826 LDV_IN_INTERRUPT = 2;
3827#line 561
3828 da9052_rtc_irq(var_da9052_rtc_irq_1_p0, var_da9052_rtc_irq_1_p1);
3829#line 562
3830 LDV_IN_INTERRUPT = 1;
3831 }
3832#line 568
3833 goto ldv_21252;
3834 switch_default: ;
3835#line 569
3836 goto ldv_21252;
3837 } else {
3838 switch_break: ;
3839 }
3840 }
3841 }
3842 ldv_21252: ;
3843 ldv_21262:
3844 {
3845#line 427
3846 tmp___0 = __VERIFIER_nondet_int();
3847 }
3848#line 427
3849 if (tmp___0 != 0) {
3850#line 429
3851 goto ldv_21261;
3852 } else
3853#line 427
3854 if (ldv_s_da9052_rtc_driver_platform_driver != 0) {
3855#line 429
3856 goto ldv_21261;
3857 } else {
3858#line 431
3859 goto ldv_21263;
3860 }
3861 ldv_21263: ;
3862 ldv_module_exit: ;
3863 {
3864#line 578
3865 ldv_check_final_state();
3866 }
3867#line 581
3868 return;
3869}
3870}
3871#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
3872void ldv_blast_assert(void)
3873{
3874
3875 {
3876 ERROR: ;
3877#line 6
3878 goto ERROR;
3879}
3880}
3881#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
3882extern int __VERIFIER_nondet_int(void) ;
3883#line 602 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3884int ldv_spin = 0;
3885#line 606 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3886void ldv_check_alloc_flags(gfp_t flags )
3887{
3888
3889 {
3890#line 609
3891 if (ldv_spin != 0) {
3892#line 609
3893 if (flags != 32U) {
3894 {
3895#line 609
3896 ldv_blast_assert();
3897 }
3898 } else {
3899
3900 }
3901 } else {
3902
3903 }
3904#line 612
3905 return;
3906}
3907}
3908#line 612
3909extern struct page *ldv_some_page(void) ;
3910#line 615 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3911struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
3912{ struct page *tmp ;
3913
3914 {
3915#line 618
3916 if (ldv_spin != 0) {
3917#line 618
3918 if (flags != 32U) {
3919 {
3920#line 618
3921 ldv_blast_assert();
3922 }
3923 } else {
3924
3925 }
3926 } else {
3927
3928 }
3929 {
3930#line 620
3931 tmp = ldv_some_page();
3932 }
3933#line 620
3934 return (tmp);
3935}
3936}
3937#line 624 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3938void ldv_check_alloc_nonatomic(void)
3939{
3940
3941 {
3942#line 627
3943 if (ldv_spin != 0) {
3944 {
3945#line 627
3946 ldv_blast_assert();
3947 }
3948 } else {
3949
3950 }
3951#line 630
3952 return;
3953}
3954}
3955#line 631 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3956void ldv_spin_lock(void)
3957{
3958
3959 {
3960#line 634
3961 ldv_spin = 1;
3962#line 635
3963 return;
3964}
3965}
3966#line 638 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3967void ldv_spin_unlock(void)
3968{
3969
3970 {
3971#line 641
3972 ldv_spin = 0;
3973#line 642
3974 return;
3975}
3976}
3977#line 645 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3978int ldv_spin_trylock(void)
3979{ int is_lock ;
3980
3981 {
3982 {
3983#line 650
3984 is_lock = __VERIFIER_nondet_int();
3985 }
3986#line 652
3987 if (is_lock != 0) {
3988#line 655
3989 return (0);
3990 } else {
3991#line 660
3992 ldv_spin = 1;
3993#line 662
3994 return (1);
3995 }
3996}
3997}
3998#line 829 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2632/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-da9052.c.p"
3999void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
4000{
4001
4002 {
4003 {
4004#line 835
4005 ldv_check_alloc_flags(ldv_func_arg2);
4006#line 837
4007 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
4008 }
4009#line 838
4010 return ((void *)0);
4011}
4012}