1
2
3
4#line 23 "include/asm-generic/int-ll64.h"
5typedef unsigned short __u16;
6#line 26 "include/asm-generic/int-ll64.h"
7typedef unsigned int __u32;
8#line 30 "include/asm-generic/int-ll64.h"
9typedef unsigned long long __u64;
10#line 43 "include/asm-generic/int-ll64.h"
11typedef unsigned char u8;
12#line 45 "include/asm-generic/int-ll64.h"
13typedef short s16;
14#line 46 "include/asm-generic/int-ll64.h"
15typedef unsigned short u16;
16#line 49 "include/asm-generic/int-ll64.h"
17typedef unsigned int u32;
18#line 51 "include/asm-generic/int-ll64.h"
19typedef long long s64;
20#line 52 "include/asm-generic/int-ll64.h"
21typedef unsigned long long u64;
22#line 14 "include/asm-generic/posix_types.h"
23typedef long __kernel_long_t;
24#line 15 "include/asm-generic/posix_types.h"
25typedef unsigned long __kernel_ulong_t;
26#line 75 "include/asm-generic/posix_types.h"
27typedef __kernel_ulong_t __kernel_size_t;
28#line 76 "include/asm-generic/posix_types.h"
29typedef __kernel_long_t __kernel_ssize_t;
30#line 91 "include/asm-generic/posix_types.h"
31typedef long long __kernel_loff_t;
32#line 21 "include/linux/types.h"
33typedef __u32 __kernel_dev_t;
34#line 24 "include/linux/types.h"
35typedef __kernel_dev_t dev_t;
36#line 27 "include/linux/types.h"
37typedef unsigned short umode_t;
38#line 38 "include/linux/types.h"
39typedef _Bool bool;
40#line 54 "include/linux/types.h"
41typedef __kernel_loff_t loff_t;
42#line 63 "include/linux/types.h"
43typedef __kernel_size_t size_t;
44#line 68 "include/linux/types.h"
45typedef __kernel_ssize_t ssize_t;
46#line 202 "include/linux/types.h"
47typedef unsigned int gfp_t;
48#line 219 "include/linux/types.h"
49struct __anonstruct_atomic_t_7 {
50 int counter ;
51};
52#line 219 "include/linux/types.h"
53typedef struct __anonstruct_atomic_t_7 atomic_t;
54#line 224 "include/linux/types.h"
55struct __anonstruct_atomic64_t_8 {
56 long counter ;
57};
58#line 224 "include/linux/types.h"
59typedef struct __anonstruct_atomic64_t_8 atomic64_t;
60#line 229 "include/linux/types.h"
61struct list_head {
62 struct list_head *next ;
63 struct list_head *prev ;
64};
65#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
66struct module;
67#line 56
68struct module;
69#line 146 "include/linux/init.h"
70typedef void (*ctor_fn_t)(void);
71#line 47 "include/linux/dynamic_debug.h"
72struct device;
73#line 47
74struct device;
75#line 135 "include/linux/kernel.h"
76struct completion;
77#line 135
78struct completion;
79#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
80struct page;
81#line 18
82struct page;
83#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
84struct task_struct;
85#line 20
86struct task_struct;
87#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
88struct task_struct;
89#line 295 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
90struct file;
91#line 295
92struct file;
93#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
94struct page;
95#line 52
96struct task_struct;
97#line 329
98struct arch_spinlock;
99#line 329
100struct arch_spinlock;
101#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
102struct task_struct;
103#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
104struct task_struct;
105#line 10 "include/asm-generic/bug.h"
106struct bug_entry {
107 int bug_addr_disp ;
108 int file_disp ;
109 unsigned short line ;
110 unsigned short flags ;
111};
112#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
113struct static_key;
114#line 234
115struct static_key;
116#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
117struct kmem_cache;
118#line 23 "include/asm-generic/atomic-long.h"
119typedef atomic64_t atomic_long_t;
120#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
121typedef u16 __ticket_t;
122#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
123typedef u32 __ticketpair_t;
124#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
125struct __raw_tickets {
126 __ticket_t head ;
127 __ticket_t tail ;
128};
129#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
130union __anonunion____missing_field_name_36 {
131 __ticketpair_t head_tail ;
132 struct __raw_tickets tickets ;
133};
134#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
135struct arch_spinlock {
136 union __anonunion____missing_field_name_36 __annonCompField17 ;
137};
138#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
139typedef struct arch_spinlock arch_spinlock_t;
140#line 12 "include/linux/lockdep.h"
141struct task_struct;
142#line 20 "include/linux/spinlock_types.h"
143struct raw_spinlock {
144 arch_spinlock_t raw_lock ;
145 unsigned int magic ;
146 unsigned int owner_cpu ;
147 void *owner ;
148};
149#line 64 "include/linux/spinlock_types.h"
150union __anonunion____missing_field_name_39 {
151 struct raw_spinlock rlock ;
152};
153#line 64 "include/linux/spinlock_types.h"
154struct spinlock {
155 union __anonunion____missing_field_name_39 __annonCompField19 ;
156};
157#line 64 "include/linux/spinlock_types.h"
158typedef struct spinlock spinlock_t;
159#line 49 "include/linux/wait.h"
160struct __wait_queue_head {
161 spinlock_t lock ;
162 struct list_head task_list ;
163};
164#line 53 "include/linux/wait.h"
165typedef struct __wait_queue_head wait_queue_head_t;
166#line 55
167struct task_struct;
168#line 60 "include/linux/pageblock-flags.h"
169struct page;
170#line 48 "include/linux/mutex.h"
171struct mutex {
172 atomic_t count ;
173 spinlock_t wait_lock ;
174 struct list_head wait_list ;
175 struct task_struct *owner ;
176 char const *name ;
177 void *magic ;
178};
179#line 25 "include/linux/completion.h"
180struct completion {
181 unsigned int done ;
182 wait_queue_head_t wait ;
183};
184#line 9 "include/linux/memory_hotplug.h"
185struct page;
186#line 202 "include/linux/ioport.h"
187struct device;
188#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
189struct device;
190#line 46 "include/linux/ktime.h"
191union ktime {
192 s64 tv64 ;
193};
194#line 59 "include/linux/ktime.h"
195typedef union ktime ktime_t;
196#line 10 "include/linux/timer.h"
197struct tvec_base;
198#line 10
199struct tvec_base;
200#line 12 "include/linux/timer.h"
201struct timer_list {
202 struct list_head entry ;
203 unsigned long expires ;
204 struct tvec_base *base ;
205 void (*function)(unsigned long ) ;
206 unsigned long data ;
207 int slack ;
208 int start_pid ;
209 void *start_site ;
210 char start_comm[16] ;
211};
212#line 17 "include/linux/workqueue.h"
213struct work_struct;
214#line 17
215struct work_struct;
216#line 79 "include/linux/workqueue.h"
217struct work_struct {
218 atomic_long_t data ;
219 struct list_head entry ;
220 void (*func)(struct work_struct *work ) ;
221};
222#line 42 "include/linux/pm.h"
223struct device;
224#line 50 "include/linux/pm.h"
225struct pm_message {
226 int event ;
227};
228#line 50 "include/linux/pm.h"
229typedef struct pm_message pm_message_t;
230#line 264 "include/linux/pm.h"
231struct dev_pm_ops {
232 int (*prepare)(struct device *dev ) ;
233 void (*complete)(struct device *dev ) ;
234 int (*suspend)(struct device *dev ) ;
235 int (*resume)(struct device *dev ) ;
236 int (*freeze)(struct device *dev ) ;
237 int (*thaw)(struct device *dev ) ;
238 int (*poweroff)(struct device *dev ) ;
239 int (*restore)(struct device *dev ) ;
240 int (*suspend_late)(struct device *dev ) ;
241 int (*resume_early)(struct device *dev ) ;
242 int (*freeze_late)(struct device *dev ) ;
243 int (*thaw_early)(struct device *dev ) ;
244 int (*poweroff_late)(struct device *dev ) ;
245 int (*restore_early)(struct device *dev ) ;
246 int (*suspend_noirq)(struct device *dev ) ;
247 int (*resume_noirq)(struct device *dev ) ;
248 int (*freeze_noirq)(struct device *dev ) ;
249 int (*thaw_noirq)(struct device *dev ) ;
250 int (*poweroff_noirq)(struct device *dev ) ;
251 int (*restore_noirq)(struct device *dev ) ;
252 int (*runtime_suspend)(struct device *dev ) ;
253 int (*runtime_resume)(struct device *dev ) ;
254 int (*runtime_idle)(struct device *dev ) ;
255};
256#line 458
257enum rpm_status {
258 RPM_ACTIVE = 0,
259 RPM_RESUMING = 1,
260 RPM_SUSPENDED = 2,
261 RPM_SUSPENDING = 3
262} ;
263#line 480
264enum rpm_request {
265 RPM_REQ_NONE = 0,
266 RPM_REQ_IDLE = 1,
267 RPM_REQ_SUSPEND = 2,
268 RPM_REQ_AUTOSUSPEND = 3,
269 RPM_REQ_RESUME = 4
270} ;
271#line 488
272struct wakeup_source;
273#line 488
274struct wakeup_source;
275#line 495 "include/linux/pm.h"
276struct pm_subsys_data {
277 spinlock_t lock ;
278 unsigned int refcount ;
279};
280#line 506
281struct dev_pm_qos_request;
282#line 506
283struct pm_qos_constraints;
284#line 506 "include/linux/pm.h"
285struct dev_pm_info {
286 pm_message_t power_state ;
287 unsigned int can_wakeup : 1 ;
288 unsigned int async_suspend : 1 ;
289 bool is_prepared : 1 ;
290 bool is_suspended : 1 ;
291 bool ignore_children : 1 ;
292 spinlock_t lock ;
293 struct list_head entry ;
294 struct completion completion ;
295 struct wakeup_source *wakeup ;
296 bool wakeup_path : 1 ;
297 struct timer_list suspend_timer ;
298 unsigned long timer_expires ;
299 struct work_struct work ;
300 wait_queue_head_t wait_queue ;
301 atomic_t usage_count ;
302 atomic_t child_count ;
303 unsigned int disable_depth : 3 ;
304 unsigned int idle_notification : 1 ;
305 unsigned int request_pending : 1 ;
306 unsigned int deferred_resume : 1 ;
307 unsigned int run_wake : 1 ;
308 unsigned int runtime_auto : 1 ;
309 unsigned int no_callbacks : 1 ;
310 unsigned int irq_safe : 1 ;
311 unsigned int use_autosuspend : 1 ;
312 unsigned int timer_autosuspends : 1 ;
313 enum rpm_request request ;
314 enum rpm_status runtime_status ;
315 int runtime_error ;
316 int autosuspend_delay ;
317 unsigned long last_busy ;
318 unsigned long active_jiffies ;
319 unsigned long suspended_jiffies ;
320 unsigned long accounting_timestamp ;
321 ktime_t suspend_time ;
322 s64 max_time_suspended_ns ;
323 struct dev_pm_qos_request *pq_req ;
324 struct pm_subsys_data *subsys_data ;
325 struct pm_qos_constraints *constraints ;
326};
327#line 564 "include/linux/pm.h"
328struct dev_pm_domain {
329 struct dev_pm_ops ops ;
330};
331#line 8 "include/linux/vmalloc.h"
332struct vm_area_struct;
333#line 8
334struct vm_area_struct;
335#line 994 "include/linux/mmzone.h"
336struct page;
337#line 10 "include/linux/gfp.h"
338struct vm_area_struct;
339#line 29 "include/linux/sysctl.h"
340struct completion;
341#line 49 "include/linux/kmod.h"
342struct file;
343#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
344struct task_struct;
345#line 18 "include/linux/elf.h"
346typedef __u64 Elf64_Addr;
347#line 19 "include/linux/elf.h"
348typedef __u16 Elf64_Half;
349#line 23 "include/linux/elf.h"
350typedef __u32 Elf64_Word;
351#line 24 "include/linux/elf.h"
352typedef __u64 Elf64_Xword;
353#line 194 "include/linux/elf.h"
354struct elf64_sym {
355 Elf64_Word st_name ;
356 unsigned char st_info ;
357 unsigned char st_other ;
358 Elf64_Half st_shndx ;
359 Elf64_Addr st_value ;
360 Elf64_Xword st_size ;
361};
362#line 194 "include/linux/elf.h"
363typedef struct elf64_sym Elf64_Sym;
364#line 438
365struct file;
366#line 20 "include/linux/kobject_ns.h"
367struct sock;
368#line 20
369struct sock;
370#line 21
371struct kobject;
372#line 21
373struct kobject;
374#line 27
375enum kobj_ns_type {
376 KOBJ_NS_TYPE_NONE = 0,
377 KOBJ_NS_TYPE_NET = 1,
378 KOBJ_NS_TYPES = 2
379} ;
380#line 40 "include/linux/kobject_ns.h"
381struct kobj_ns_type_operations {
382 enum kobj_ns_type type ;
383 void *(*grab_current_ns)(void) ;
384 void const *(*netlink_ns)(struct sock *sk ) ;
385 void const *(*initial_ns)(void) ;
386 void (*drop_ns)(void * ) ;
387};
388#line 22 "include/linux/sysfs.h"
389struct kobject;
390#line 23
391struct module;
392#line 24
393enum kobj_ns_type;
394#line 26 "include/linux/sysfs.h"
395struct attribute {
396 char const *name ;
397 umode_t mode ;
398};
399#line 56 "include/linux/sysfs.h"
400struct attribute_group {
401 char const *name ;
402 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
403 struct attribute **attrs ;
404};
405#line 85
406struct file;
407#line 86
408struct vm_area_struct;
409#line 88 "include/linux/sysfs.h"
410struct bin_attribute {
411 struct attribute attr ;
412 size_t size ;
413 void *private ;
414 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
415 loff_t , size_t ) ;
416 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
417 loff_t , size_t ) ;
418 int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
419};
420#line 112 "include/linux/sysfs.h"
421struct sysfs_ops {
422 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
423 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
424 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
425};
426#line 118
427struct sysfs_dirent;
428#line 118
429struct sysfs_dirent;
430#line 22 "include/linux/kref.h"
431struct kref {
432 atomic_t refcount ;
433};
434#line 60 "include/linux/kobject.h"
435struct kset;
436#line 60
437struct kobj_type;
438#line 60 "include/linux/kobject.h"
439struct kobject {
440 char const *name ;
441 struct list_head entry ;
442 struct kobject *parent ;
443 struct kset *kset ;
444 struct kobj_type *ktype ;
445 struct sysfs_dirent *sd ;
446 struct kref kref ;
447 unsigned int state_initialized : 1 ;
448 unsigned int state_in_sysfs : 1 ;
449 unsigned int state_add_uevent_sent : 1 ;
450 unsigned int state_remove_uevent_sent : 1 ;
451 unsigned int uevent_suppress : 1 ;
452};
453#line 108 "include/linux/kobject.h"
454struct kobj_type {
455 void (*release)(struct kobject *kobj ) ;
456 struct sysfs_ops const *sysfs_ops ;
457 struct attribute **default_attrs ;
458 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject *kobj ) ;
459 void const *(*namespace)(struct kobject *kobj ) ;
460};
461#line 116 "include/linux/kobject.h"
462struct kobj_uevent_env {
463 char *envp[32] ;
464 int envp_idx ;
465 char buf[2048] ;
466 int buflen ;
467};
468#line 123 "include/linux/kobject.h"
469struct kset_uevent_ops {
470 int (* const filter)(struct kset *kset , struct kobject *kobj ) ;
471 char const *(* const name)(struct kset *kset , struct kobject *kobj ) ;
472 int (* const uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
473};
474#line 140
475struct sock;
476#line 159 "include/linux/kobject.h"
477struct kset {
478 struct list_head list ;
479 spinlock_t list_lock ;
480 struct kobject kobj ;
481 struct kset_uevent_ops const *uevent_ops ;
482};
483#line 39 "include/linux/moduleparam.h"
484struct kernel_param;
485#line 39
486struct kernel_param;
487#line 41 "include/linux/moduleparam.h"
488struct kernel_param_ops {
489 int (*set)(char const *val , struct kernel_param const *kp ) ;
490 int (*get)(char *buffer , struct kernel_param const *kp ) ;
491 void (*free)(void *arg ) ;
492};
493#line 50
494struct kparam_string;
495#line 50
496struct kparam_array;
497#line 50 "include/linux/moduleparam.h"
498union __anonunion____missing_field_name_199 {
499 void *arg ;
500 struct kparam_string const *str ;
501 struct kparam_array const *arr ;
502};
503#line 50 "include/linux/moduleparam.h"
504struct kernel_param {
505 char const *name ;
506 struct kernel_param_ops const *ops ;
507 u16 perm ;
508 s16 level ;
509 union __anonunion____missing_field_name_199 __annonCompField32 ;
510};
511#line 63 "include/linux/moduleparam.h"
512struct kparam_string {
513 unsigned int maxlen ;
514 char *string ;
515};
516#line 69 "include/linux/moduleparam.h"
517struct kparam_array {
518 unsigned int max ;
519 unsigned int elemsize ;
520 unsigned int *num ;
521 struct kernel_param_ops const *ops ;
522 void *elem ;
523};
524#line 445
525struct module;
526#line 80 "include/linux/jump_label.h"
527struct module;
528#line 143 "include/linux/jump_label.h"
529struct static_key {
530 atomic_t enabled ;
531};
532#line 22 "include/linux/tracepoint.h"
533struct module;
534#line 23
535struct tracepoint;
536#line 23
537struct tracepoint;
538#line 25 "include/linux/tracepoint.h"
539struct tracepoint_func {
540 void *func ;
541 void *data ;
542};
543#line 30 "include/linux/tracepoint.h"
544struct tracepoint {
545 char const *name ;
546 struct static_key key ;
547 void (*regfunc)(void) ;
548 void (*unregfunc)(void) ;
549 struct tracepoint_func *funcs ;
550};
551#line 19 "include/linux/export.h"
552struct kernel_symbol {
553 unsigned long value ;
554 char const *name ;
555};
556#line 8 "include/asm-generic/module.h"
557struct mod_arch_specific {
558
559};
560#line 35 "include/linux/module.h"
561struct module;
562#line 37
563struct module_param_attrs;
564#line 37 "include/linux/module.h"
565struct module_kobject {
566 struct kobject kobj ;
567 struct module *mod ;
568 struct kobject *drivers_dir ;
569 struct module_param_attrs *mp ;
570};
571#line 44 "include/linux/module.h"
572struct module_attribute {
573 struct attribute attr ;
574 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
575 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
576 size_t count ) ;
577 void (*setup)(struct module * , char const * ) ;
578 int (*test)(struct module * ) ;
579 void (*free)(struct module * ) ;
580};
581#line 71
582struct exception_table_entry;
583#line 71
584struct exception_table_entry;
585#line 199
586enum module_state {
587 MODULE_STATE_LIVE = 0,
588 MODULE_STATE_COMING = 1,
589 MODULE_STATE_GOING = 2
590} ;
591#line 215 "include/linux/module.h"
592struct module_ref {
593 unsigned long incs ;
594 unsigned long decs ;
595} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
596#line 220
597struct module_sect_attrs;
598#line 220
599struct module_notes_attrs;
600#line 220
601struct ftrace_event_call;
602#line 220 "include/linux/module.h"
603struct module {
604 enum module_state state ;
605 struct list_head list ;
606 char name[64UL - sizeof(unsigned long )] ;
607 struct module_kobject mkobj ;
608 struct module_attribute *modinfo_attrs ;
609 char const *version ;
610 char const *srcversion ;
611 struct kobject *holders_dir ;
612 struct kernel_symbol const *syms ;
613 unsigned long const *crcs ;
614 unsigned int num_syms ;
615 struct kernel_param *kp ;
616 unsigned int num_kp ;
617 unsigned int num_gpl_syms ;
618 struct kernel_symbol const *gpl_syms ;
619 unsigned long const *gpl_crcs ;
620 struct kernel_symbol const *unused_syms ;
621 unsigned long const *unused_crcs ;
622 unsigned int num_unused_syms ;
623 unsigned int num_unused_gpl_syms ;
624 struct kernel_symbol const *unused_gpl_syms ;
625 unsigned long const *unused_gpl_crcs ;
626 struct kernel_symbol const *gpl_future_syms ;
627 unsigned long const *gpl_future_crcs ;
628 unsigned int num_gpl_future_syms ;
629 unsigned int num_exentries ;
630 struct exception_table_entry *extable ;
631 int (*init)(void) ;
632 void *module_init ;
633 void *module_core ;
634 unsigned int init_size ;
635 unsigned int core_size ;
636 unsigned int init_text_size ;
637 unsigned int core_text_size ;
638 unsigned int init_ro_size ;
639 unsigned int core_ro_size ;
640 struct mod_arch_specific arch ;
641 unsigned int taints ;
642 unsigned int num_bugs ;
643 struct list_head bug_list ;
644 struct bug_entry *bug_table ;
645 Elf64_Sym *symtab ;
646 Elf64_Sym *core_symtab ;
647 unsigned int num_symtab ;
648 unsigned int core_num_syms ;
649 char *strtab ;
650 char *core_strtab ;
651 struct module_sect_attrs *sect_attrs ;
652 struct module_notes_attrs *notes_attrs ;
653 char *args ;
654 void *percpu ;
655 unsigned int percpu_size ;
656 unsigned int num_tracepoints ;
657 struct tracepoint * const *tracepoints_ptrs ;
658 unsigned int num_trace_bprintk_fmt ;
659 char const **trace_bprintk_fmt_start ;
660 struct ftrace_event_call **trace_events ;
661 unsigned int num_trace_events ;
662 struct list_head source_list ;
663 struct list_head target_list ;
664 struct task_struct *waiter ;
665 void (*exit)(void) ;
666 struct module_ref *refptr ;
667 ctor_fn_t *ctors ;
668 unsigned int num_ctors ;
669};
670#line 19 "include/linux/klist.h"
671struct klist_node;
672#line 19
673struct klist_node;
674#line 39 "include/linux/klist.h"
675struct klist_node {
676 void *n_klist ;
677 struct list_head n_node ;
678 struct kref n_ref ;
679};
680#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
681struct dma_map_ops;
682#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
683struct dev_archdata {
684 void *acpi_handle ;
685 struct dma_map_ops *dma_ops ;
686 void *iommu ;
687};
688#line 28 "include/linux/device.h"
689struct device;
690#line 29
691struct device_private;
692#line 29
693struct device_private;
694#line 30
695struct device_driver;
696#line 30
697struct device_driver;
698#line 31
699struct driver_private;
700#line 31
701struct driver_private;
702#line 32
703struct module;
704#line 33
705struct class;
706#line 33
707struct class;
708#line 34
709struct subsys_private;
710#line 34
711struct subsys_private;
712#line 35
713struct bus_type;
714#line 35
715struct bus_type;
716#line 36
717struct device_node;
718#line 36
719struct device_node;
720#line 37
721struct iommu_ops;
722#line 37
723struct iommu_ops;
724#line 39 "include/linux/device.h"
725struct bus_attribute {
726 struct attribute attr ;
727 ssize_t (*show)(struct bus_type *bus , char *buf ) ;
728 ssize_t (*store)(struct bus_type *bus , char const *buf , size_t count ) ;
729};
730#line 89
731struct device_attribute;
732#line 89
733struct driver_attribute;
734#line 89 "include/linux/device.h"
735struct bus_type {
736 char const *name ;
737 char const *dev_name ;
738 struct device *dev_root ;
739 struct bus_attribute *bus_attrs ;
740 struct device_attribute *dev_attrs ;
741 struct driver_attribute *drv_attrs ;
742 int (*match)(struct device *dev , struct device_driver *drv ) ;
743 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
744 int (*probe)(struct device *dev ) ;
745 int (*remove)(struct device *dev ) ;
746 void (*shutdown)(struct device *dev ) ;
747 int (*suspend)(struct device *dev , pm_message_t state ) ;
748 int (*resume)(struct device *dev ) ;
749 struct dev_pm_ops const *pm ;
750 struct iommu_ops *iommu_ops ;
751 struct subsys_private *p ;
752};
753#line 127
754struct device_type;
755#line 214
756struct of_device_id;
757#line 214 "include/linux/device.h"
758struct device_driver {
759 char const *name ;
760 struct bus_type *bus ;
761 struct module *owner ;
762 char const *mod_name ;
763 bool suppress_bind_attrs ;
764 struct of_device_id const *of_match_table ;
765 int (*probe)(struct device *dev ) ;
766 int (*remove)(struct device *dev ) ;
767 void (*shutdown)(struct device *dev ) ;
768 int (*suspend)(struct device *dev , pm_message_t state ) ;
769 int (*resume)(struct device *dev ) ;
770 struct attribute_group const **groups ;
771 struct dev_pm_ops const *pm ;
772 struct driver_private *p ;
773};
774#line 249 "include/linux/device.h"
775struct driver_attribute {
776 struct attribute attr ;
777 ssize_t (*show)(struct device_driver *driver , char *buf ) ;
778 ssize_t (*store)(struct device_driver *driver , char const *buf , size_t count ) ;
779};
780#line 330
781struct class_attribute;
782#line 330 "include/linux/device.h"
783struct class {
784 char const *name ;
785 struct module *owner ;
786 struct class_attribute *class_attrs ;
787 struct device_attribute *dev_attrs ;
788 struct bin_attribute *dev_bin_attrs ;
789 struct kobject *dev_kobj ;
790 int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
791 char *(*devnode)(struct device *dev , umode_t *mode ) ;
792 void (*class_release)(struct class *class ) ;
793 void (*dev_release)(struct device *dev ) ;
794 int (*suspend)(struct device *dev , pm_message_t state ) ;
795 int (*resume)(struct device *dev ) ;
796 struct kobj_ns_type_operations const *ns_type ;
797 void const *(*namespace)(struct device *dev ) ;
798 struct dev_pm_ops const *pm ;
799 struct subsys_private *p ;
800};
801#line 397 "include/linux/device.h"
802struct class_attribute {
803 struct attribute attr ;
804 ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
805 ssize_t (*store)(struct class *class , struct class_attribute *attr , char const *buf ,
806 size_t count ) ;
807 void const *(*namespace)(struct class *class , struct class_attribute const *attr ) ;
808};
809#line 465 "include/linux/device.h"
810struct device_type {
811 char const *name ;
812 struct attribute_group const **groups ;
813 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
814 char *(*devnode)(struct device *dev , umode_t *mode ) ;
815 void (*release)(struct device *dev ) ;
816 struct dev_pm_ops const *pm ;
817};
818#line 476 "include/linux/device.h"
819struct device_attribute {
820 struct attribute attr ;
821 ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
822 ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const *buf ,
823 size_t count ) ;
824};
825#line 559 "include/linux/device.h"
826struct device_dma_parameters {
827 unsigned int max_segment_size ;
828 unsigned long segment_boundary_mask ;
829};
830#line 627
831struct dma_coherent_mem;
832#line 627 "include/linux/device.h"
833struct device {
834 struct device *parent ;
835 struct device_private *p ;
836 struct kobject kobj ;
837 char const *init_name ;
838 struct device_type const *type ;
839 struct mutex mutex ;
840 struct bus_type *bus ;
841 struct device_driver *driver ;
842 void *platform_data ;
843 struct dev_pm_info power ;
844 struct dev_pm_domain *pm_domain ;
845 int numa_node ;
846 u64 *dma_mask ;
847 u64 coherent_dma_mask ;
848 struct device_dma_parameters *dma_parms ;
849 struct list_head dma_pools ;
850 struct dma_coherent_mem *dma_mem ;
851 struct dev_archdata archdata ;
852 struct device_node *of_node ;
853 dev_t devt ;
854 u32 id ;
855 spinlock_t devres_lock ;
856 struct list_head devres_head ;
857 struct klist_node knode_class ;
858 struct class *class ;
859 struct attribute_group const **groups ;
860 void (*release)(struct device *dev ) ;
861};
862#line 43 "include/linux/pm_wakeup.h"
863struct wakeup_source {
864 char const *name ;
865 struct list_head entry ;
866 spinlock_t lock ;
867 struct timer_list timer ;
868 unsigned long timer_expires ;
869 ktime_t total_time ;
870 ktime_t max_time ;
871 ktime_t last_time ;
872 unsigned long event_count ;
873 unsigned long active_count ;
874 unsigned long relax_count ;
875 unsigned long hit_count ;
876 unsigned int active : 1 ;
877};
878#line 46 "include/linux/slub_def.h"
879struct kmem_cache_cpu {
880 void **freelist ;
881 unsigned long tid ;
882 struct page *page ;
883 struct page *partial ;
884 int node ;
885 unsigned int stat[26] ;
886};
887#line 57 "include/linux/slub_def.h"
888struct kmem_cache_node {
889 spinlock_t list_lock ;
890 unsigned long nr_partial ;
891 struct list_head partial ;
892 atomic_long_t nr_slabs ;
893 atomic_long_t total_objects ;
894 struct list_head full ;
895};
896#line 73 "include/linux/slub_def.h"
897struct kmem_cache_order_objects {
898 unsigned long x ;
899};
900#line 80 "include/linux/slub_def.h"
901struct kmem_cache {
902 struct kmem_cache_cpu *cpu_slab ;
903 unsigned long flags ;
904 unsigned long min_partial ;
905 int size ;
906 int objsize ;
907 int offset ;
908 int cpu_partial ;
909 struct kmem_cache_order_objects oo ;
910 struct kmem_cache_order_objects max ;
911 struct kmem_cache_order_objects min ;
912 gfp_t allocflags ;
913 int refcount ;
914 void (*ctor)(void * ) ;
915 int inuse ;
916 int align ;
917 int reserved ;
918 char const *name ;
919 struct list_head list ;
920 struct kobject kobj ;
921 int remote_node_defrag_ratio ;
922 struct kmem_cache_node *node[1 << 10] ;
923};
924#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
925struct w1_reg_num {
926 __u64 family : 8 ;
927 __u64 id : 48 ;
928 __u64 crc : 8 ;
929};
930#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1_family.h"
931struct w1_slave;
932#line 46
933struct w1_slave;
934#line 48 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1_family.h"
935struct w1_family_ops {
936 int (*add_slave)(struct w1_slave * ) ;
937 void (*remove_slave)(struct w1_slave * ) ;
938};
939#line 54 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1_family.h"
940struct w1_family {
941 struct list_head family_entry ;
942 u8 fid ;
943 struct w1_family_ops *fops ;
944 atomic_t refcnt ;
945};
946#line 62 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
947struct w1_master;
948#line 62 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
949struct w1_slave {
950 struct module *owner ;
951 unsigned char name[32] ;
952 struct list_head w1_slave_entry ;
953 struct w1_reg_num reg_num ;
954 atomic_t refcnt ;
955 u8 rom[9] ;
956 u32 flags ;
957 int ttl ;
958 struct w1_master *master ;
959 struct w1_family *family ;
960 void *family_data ;
961 struct device dev ;
962 struct completion released ;
963};
964#line 90 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
965struct w1_bus_master {
966 void *data ;
967 u8 (*read_bit)(void * ) ;
968 void (*write_bit)(void * , u8 ) ;
969 u8 (*touch_bit)(void * , u8 ) ;
970 u8 (*read_byte)(void * ) ;
971 void (*write_byte)(void * , u8 ) ;
972 u8 (*read_block)(void * , u8 * , int ) ;
973 void (*write_block)(void * , u8 const * , int ) ;
974 u8 (*triplet)(void * , u8 ) ;
975 u8 (*reset_bus)(void * ) ;
976 u8 (*set_pullup)(void * , int ) ;
977 void (*search)(void * , struct w1_master * , u8 , void (*)(struct w1_master * ,
978 u64 ) ) ;
979};
980#line 158 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
981struct w1_master {
982 struct list_head w1_master_entry ;
983 struct module *owner ;
984 unsigned char name[32] ;
985 struct list_head slist ;
986 int max_slave_count ;
987 int slave_count ;
988 unsigned long attempts ;
989 int slave_ttl ;
990 int initialized ;
991 u32 id ;
992 int search_count ;
993 atomic_t refcnt ;
994 void *priv ;
995 int priv_size ;
996 int enable_pullup ;
997 int pullup_duration ;
998 struct task_struct *thread ;
999 struct mutex mutex ;
1000 struct device_driver *driver ;
1001 struct device dev ;
1002 struct w1_bus_master *bus_master ;
1003 u32 seq ;
1004};
1005#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1006struct w1_f23_data {
1007 u8 memory[512] ;
1008 u32 validcrc ;
1009};
1010#line 1 "<compiler builtins>"
1011
1012#line 1
1013long __builtin_expect(long val , long res ) ;
1014#line 60 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
1015extern int memcmp(void const *cs , void const *ct , unsigned long count ) ;
1016#line 152 "include/linux/mutex.h"
1017void mutex_lock(struct mutex *lock ) ;
1018#line 153
1019int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock ) ;
1020#line 154
1021int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock ) ;
1022#line 168
1023int mutex_trylock(struct mutex *lock ) ;
1024#line 169
1025void mutex_unlock(struct mutex *lock ) ;
1026#line 170
1027int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
1028#line 140 "include/linux/sysfs.h"
1029extern int __attribute__((__warn_unused_result__)) sysfs_create_bin_file(struct kobject *kobj ,
1030 struct bin_attribute const *attr ) ;
1031#line 142
1032extern void sysfs_remove_bin_file(struct kobject *kobj , struct bin_attribute const *attr ) ;
1033#line 67 "include/linux/module.h"
1034int init_module(void) ;
1035#line 68
1036void cleanup_module(void) ;
1037#line 891 "include/linux/device.h"
1038extern int ( dev_err)(struct device const *dev , char const *fmt
1039 , ...) ;
1040#line 46 "include/linux/delay.h"
1041extern void msleep(unsigned int msecs ) ;
1042#line 161 "include/linux/slab.h"
1043extern void kfree(void const * ) ;
1044#line 221 "include/linux/slub_def.h"
1045extern void *__kmalloc(size_t size , gfp_t flags ) ;
1046#line 268
1047__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
1048 gfp_t flags ) __attribute__((__no_instrument_function__)) ;
1049#line 268 "include/linux/slub_def.h"
1050__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
1051 gfp_t flags )
1052{ void *tmp___2 ;
1053
1054 {
1055 {
1056#line 283
1057 tmp___2 = __kmalloc(size, flags);
1058 }
1059#line 283
1060 return (tmp___2);
1061}
1062}
1063#line 349 "include/linux/slab.h"
1064__inline static void *kzalloc(size_t size , gfp_t flags ) __attribute__((__no_instrument_function__)) ;
1065#line 349 "include/linux/slab.h"
1066__inline static void *kzalloc(size_t size , gfp_t flags )
1067{ void *tmp ;
1068 unsigned int __cil_tmp4 ;
1069
1070 {
1071 {
1072#line 351
1073 __cil_tmp4 = flags | 32768U;
1074#line 351
1075 tmp = kmalloc(size, __cil_tmp4);
1076 }
1077#line 351
1078 return (tmp);
1079}
1080}
1081#line 22 "include/linux/crc16.h"
1082extern u16 crc16(u16 crc , u8 const *buffer , size_t len ) ;
1083#line 69 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1_family.h"
1084extern void w1_unregister_family(struct w1_family * ) ;
1085#line 70
1086extern int w1_register_family(struct w1_family * ) ;
1087#line 211 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
1088extern void w1_write_8(struct w1_master * , u8 ) ;
1089#line 213
1090extern int w1_reset_bus(struct w1_master * ) ;
1091#line 215
1092extern void w1_write_block(struct w1_master * , u8 const * , int ) ;
1093#line 217
1094extern u8 w1_read_block(struct w1_master * , u8 * , int ) ;
1095#line 218
1096extern int w1_reset_select_slave(struct w1_slave *sl ) ;
1097#line 222
1098__inline static struct w1_slave *dev_to_w1_slave(struct device *dev ) __attribute__((__no_instrument_function__)) ;
1099#line 222 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
1100__inline static struct w1_slave *dev_to_w1_slave(struct device *dev )
1101{ struct device const *__mptr ;
1102 struct w1_slave *__cil_tmp3 ;
1103 unsigned long __cil_tmp4 ;
1104 unsigned long __cil_tmp5 ;
1105 struct device *__cil_tmp6 ;
1106 unsigned int __cil_tmp7 ;
1107 char *__cil_tmp8 ;
1108 char *__cil_tmp9 ;
1109
1110 {
1111#line 224
1112 __mptr = (struct device const *)dev;
1113 {
1114#line 224
1115 __cil_tmp3 = (struct w1_slave *)0;
1116#line 224
1117 __cil_tmp4 = (unsigned long )__cil_tmp3;
1118#line 224
1119 __cil_tmp5 = __cil_tmp4 + 112;
1120#line 224
1121 __cil_tmp6 = (struct device *)__cil_tmp5;
1122#line 224
1123 __cil_tmp7 = (unsigned int )__cil_tmp6;
1124#line 224
1125 __cil_tmp8 = (char *)__mptr;
1126#line 224
1127 __cil_tmp9 = __cil_tmp8 - __cil_tmp7;
1128#line 224
1129 return ((struct w1_slave *)__cil_tmp9);
1130 }
1131}
1132}
1133#line 227
1134__inline static struct w1_slave *kobj_to_w1_slave(struct kobject *kobj ) __attribute__((__no_instrument_function__)) ;
1135#line 227 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/w1/slaves/../w1.h"
1136__inline static struct w1_slave *kobj_to_w1_slave(struct kobject *kobj )
1137{ struct kobject const *__mptr ;
1138 struct w1_slave *tmp ;
1139 struct device *__cil_tmp4 ;
1140 unsigned long __cil_tmp5 ;
1141 unsigned long __cil_tmp6 ;
1142 struct kobject *__cil_tmp7 ;
1143 unsigned int __cil_tmp8 ;
1144 char *__cil_tmp9 ;
1145 char *__cil_tmp10 ;
1146 struct device *__cil_tmp11 ;
1147
1148 {
1149 {
1150#line 229
1151 __mptr = (struct kobject const *)kobj;
1152#line 229
1153 __cil_tmp4 = (struct device *)0;
1154#line 229
1155 __cil_tmp5 = (unsigned long )__cil_tmp4;
1156#line 229
1157 __cil_tmp6 = __cil_tmp5 + 16;
1158#line 229
1159 __cil_tmp7 = (struct kobject *)__cil_tmp6;
1160#line 229
1161 __cil_tmp8 = (unsigned int )__cil_tmp7;
1162#line 229
1163 __cil_tmp9 = (char *)__mptr;
1164#line 229
1165 __cil_tmp10 = __cil_tmp9 - __cil_tmp8;
1166#line 229
1167 __cil_tmp11 = (struct device *)__cil_tmp10;
1168#line 229
1169 tmp = dev_to_w1_slave(__cil_tmp11);
1170 }
1171#line 229
1172 return (tmp);
1173}
1174}
1175#line 30 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1176static char const __mod_license30[12] __attribute__((__used__, __unused__, __section__(".modinfo"),
1177__aligned__(1))) =
1178#line 30 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1179 { (char const )'l', (char const )'i', (char const )'c', (char const )'e',
1180 (char const )'n', (char const )'s', (char const )'e', (char const )'=',
1181 (char const )'G', (char const )'P', (char const )'L', (char const )'\000'};
1182#line 31 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1183static char const __mod_author31[41] __attribute__((__used__, __unused__, __section__(".modinfo"),
1184__aligned__(1))) =
1185#line 31
1186 { (char const )'a', (char const )'u', (char const )'t', (char const )'h',
1187 (char const )'o', (char const )'r', (char const )'=', (char const )'B',
1188 (char const )'e', (char const )'n', (char const )' ', (char const )'G',
1189 (char const )'a', (char const )'r', (char const )'d', (char const )'n',
1190 (char const )'e', (char const )'r', (char const )' ', (char const )'<',
1191 (char const )'b', (char const )'g', (char const )'a', (char const )'r',
1192 (char const )'d', (char const )'n', (char const )'e', (char const )'r',
1193 (char const )'@', (char const )'w', (char const )'a', (char const )'b',
1194 (char const )'t', (char const )'e', (char const )'c', (char const )'.',
1195 (char const )'c', (char const )'o', (char const )'m', (char const )'>',
1196 (char const )'\000'};
1197#line 32 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1198static char const __mod_description32[55] __attribute__((__used__, __unused__,
1199__section__(".modinfo"), __aligned__(1))) =
1200#line 32
1201 { (char const )'d', (char const )'e', (char const )'s', (char const )'c',
1202 (char const )'r', (char const )'i', (char const )'p', (char const )'t',
1203 (char const )'i', (char const )'o', (char const )'n', (char const )'=',
1204 (char const )'w', (char const )'1', (char const )' ', (char const )'f',
1205 (char const )'a', (char const )'m', (char const )'i', (char const )'l',
1206 (char const )'y', (char const )' ', (char const )'2', (char const )'3',
1207 (char const )' ', (char const )'d', (char const )'r', (char const )'i',
1208 (char const )'v', (char const )'e', (char const )'r', (char const )' ',
1209 (char const )'f', (char const )'o', (char const )'r', (char const )' ',
1210 (char const )'D', (char const )'S', (char const )'2', (char const )'4',
1211 (char const )'3', (char const )'3', (char const )',', (char const )' ',
1212 (char const )'4', (char const )'k', (char const )'b', (char const )' ',
1213 (char const )'E', (char const )'E', (char const )'P', (char const )'R',
1214 (char const )'O', (char const )'M', (char const )'\000'};
1215#line 56
1216__inline static size_t w1_f23_fix_count(loff_t off , size_t count , size_t size ) __attribute__((__no_instrument_function__)) ;
1217#line 56 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1218__inline static size_t w1_f23_fix_count(loff_t off , size_t count , size_t size )
1219{ loff_t __cil_tmp4 ;
1220 loff_t __cil_tmp5 ;
1221 loff_t __cil_tmp6 ;
1222 loff_t __cil_tmp7 ;
1223 loff_t __cil_tmp8 ;
1224 loff_t __cil_tmp9 ;
1225
1226 {
1227 {
1228#line 58
1229 __cil_tmp4 = (loff_t )size;
1230#line 58
1231 if (off > __cil_tmp4) {
1232#line 59
1233 return ((size_t )0);
1234 } else {
1235
1236 }
1237 }
1238 {
1239#line 61
1240 __cil_tmp5 = (loff_t )size;
1241#line 61
1242 __cil_tmp6 = (loff_t )count;
1243#line 61
1244 __cil_tmp7 = off + __cil_tmp6;
1245#line 61
1246 if (__cil_tmp7 > __cil_tmp5) {
1247 {
1248#line 62
1249 __cil_tmp8 = (loff_t )size;
1250#line 62
1251 __cil_tmp9 = __cil_tmp8 - off;
1252#line 62
1253 return ((size_t )__cil_tmp9);
1254 }
1255 } else {
1256
1257 }
1258 }
1259#line 64
1260 return (count);
1261}
1262}
1263#line 68 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1264static int w1_f23_refresh_block(struct w1_slave *sl , struct w1_f23_data *data , int block )
1265{ u8 wrbuf[3] ;
1266 int off ;
1267 int tmp ;
1268 u16 tmp___0 ;
1269 int __cil_tmp8 ;
1270 unsigned int __cil_tmp9 ;
1271 unsigned long __cil_tmp10 ;
1272 unsigned long __cil_tmp11 ;
1273 u32 __cil_tmp12 ;
1274 unsigned long __cil_tmp13 ;
1275 unsigned long __cil_tmp14 ;
1276 unsigned long __cil_tmp15 ;
1277 unsigned long __cil_tmp16 ;
1278 unsigned long __cil_tmp17 ;
1279 unsigned long __cil_tmp18 ;
1280 int __cil_tmp19 ;
1281 unsigned long __cil_tmp20 ;
1282 unsigned long __cil_tmp21 ;
1283 int __cil_tmp22 ;
1284 unsigned long __cil_tmp23 ;
1285 unsigned long __cil_tmp24 ;
1286 struct w1_master *__cil_tmp25 ;
1287 unsigned long __cil_tmp26 ;
1288 unsigned long __cil_tmp27 ;
1289 u8 *__cil_tmp28 ;
1290 u8 const *__cil_tmp29 ;
1291 unsigned long __cil_tmp30 ;
1292 unsigned long __cil_tmp31 ;
1293 struct w1_master *__cil_tmp32 ;
1294 unsigned long __cil_tmp33 ;
1295 unsigned long __cil_tmp34 ;
1296 unsigned long __cil_tmp35 ;
1297 unsigned long __cil_tmp36 ;
1298 u8 *__cil_tmp37 ;
1299 u16 __cil_tmp38 ;
1300 unsigned long __cil_tmp39 ;
1301 unsigned long __cil_tmp40 ;
1302 unsigned long __cil_tmp41 ;
1303 unsigned long __cil_tmp42 ;
1304 u8 *__cil_tmp43 ;
1305 u8 const *__cil_tmp44 ;
1306 size_t __cil_tmp45 ;
1307 int __cil_tmp46 ;
1308 unsigned long __cil_tmp47 ;
1309 unsigned long __cil_tmp48 ;
1310 int __cil_tmp49 ;
1311 unsigned int __cil_tmp50 ;
1312 unsigned long __cil_tmp51 ;
1313 unsigned long __cil_tmp52 ;
1314 u32 __cil_tmp53 ;
1315
1316 {
1317#line 72
1318 off = block * 32;
1319 {
1320#line 74
1321 __cil_tmp8 = 1 << block;
1322#line 74
1323 __cil_tmp9 = (unsigned int )__cil_tmp8;
1324#line 74
1325 __cil_tmp10 = (unsigned long )data;
1326#line 74
1327 __cil_tmp11 = __cil_tmp10 + 512;
1328#line 74
1329 __cil_tmp12 = *((u32 *)__cil_tmp11);
1330#line 74
1331 if (__cil_tmp12 & __cil_tmp9) {
1332#line 75
1333 return (0);
1334 } else {
1335
1336 }
1337 }
1338 {
1339#line 77
1340 tmp = w1_reset_select_slave(sl);
1341 }
1342#line 77
1343 if (tmp) {
1344#line 78
1345 __cil_tmp13 = (unsigned long )data;
1346#line 78
1347 __cil_tmp14 = __cil_tmp13 + 512;
1348#line 78
1349 *((u32 *)__cil_tmp14) = (u32 )0;
1350#line 79
1351 return (-5);
1352 } else {
1353
1354 }
1355 {
1356#line 82
1357 __cil_tmp15 = 0 * 1UL;
1358#line 82
1359 __cil_tmp16 = (unsigned long )(wrbuf) + __cil_tmp15;
1360#line 82
1361 *((u8 *)__cil_tmp16) = (u8 )240;
1362#line 83
1363 __cil_tmp17 = 1 * 1UL;
1364#line 83
1365 __cil_tmp18 = (unsigned long )(wrbuf) + __cil_tmp17;
1366#line 83
1367 __cil_tmp19 = off & 255;
1368#line 83
1369 *((u8 *)__cil_tmp18) = (u8 )__cil_tmp19;
1370#line 84
1371 __cil_tmp20 = 2 * 1UL;
1372#line 84
1373 __cil_tmp21 = (unsigned long )(wrbuf) + __cil_tmp20;
1374#line 84
1375 __cil_tmp22 = off >> 8;
1376#line 84
1377 *((u8 *)__cil_tmp21) = (u8 )__cil_tmp22;
1378#line 85
1379 __cil_tmp23 = (unsigned long )sl;
1380#line 85
1381 __cil_tmp24 = __cil_tmp23 + 88;
1382#line 85
1383 __cil_tmp25 = *((struct w1_master **)__cil_tmp24);
1384#line 85
1385 __cil_tmp26 = 0 * 1UL;
1386#line 85
1387 __cil_tmp27 = (unsigned long )(wrbuf) + __cil_tmp26;
1388#line 85
1389 __cil_tmp28 = (u8 *)__cil_tmp27;
1390#line 85
1391 __cil_tmp29 = (u8 const *)__cil_tmp28;
1392#line 85
1393 w1_write_block(__cil_tmp25, __cil_tmp29, 3);
1394#line 86
1395 __cil_tmp30 = (unsigned long )sl;
1396#line 86
1397 __cil_tmp31 = __cil_tmp30 + 88;
1398#line 86
1399 __cil_tmp32 = *((struct w1_master **)__cil_tmp31);
1400#line 86
1401 __cil_tmp33 = off * 1UL;
1402#line 86
1403 __cil_tmp34 = 0 + __cil_tmp33;
1404#line 86
1405 __cil_tmp35 = (unsigned long )data;
1406#line 86
1407 __cil_tmp36 = __cil_tmp35 + __cil_tmp34;
1408#line 86
1409 __cil_tmp37 = (u8 *)__cil_tmp36;
1410#line 86
1411 w1_read_block(__cil_tmp32, __cil_tmp37, 32);
1412#line 89
1413 __cil_tmp38 = (u16 )0;
1414#line 89
1415 __cil_tmp39 = off * 1UL;
1416#line 89
1417 __cil_tmp40 = 0 + __cil_tmp39;
1418#line 89
1419 __cil_tmp41 = (unsigned long )data;
1420#line 89
1421 __cil_tmp42 = __cil_tmp41 + __cil_tmp40;
1422#line 89
1423 __cil_tmp43 = (u8 *)__cil_tmp42;
1424#line 89
1425 __cil_tmp44 = (u8 const *)__cil_tmp43;
1426#line 89
1427 __cil_tmp45 = (size_t )32;
1428#line 89
1429 tmp___0 = crc16(__cil_tmp38, __cil_tmp44, __cil_tmp45);
1430 }
1431 {
1432#line 89
1433 __cil_tmp46 = (int )tmp___0;
1434#line 89
1435 if (__cil_tmp46 == 45057) {
1436#line 90
1437 __cil_tmp47 = (unsigned long )data;
1438#line 90
1439 __cil_tmp48 = __cil_tmp47 + 512;
1440#line 90
1441 __cil_tmp49 = 1 << block;
1442#line 90
1443 __cil_tmp50 = (unsigned int )__cil_tmp49;
1444#line 90
1445 __cil_tmp51 = (unsigned long )data;
1446#line 90
1447 __cil_tmp52 = __cil_tmp51 + 512;
1448#line 90
1449 __cil_tmp53 = *((u32 *)__cil_tmp52);
1450#line 90
1451 *((u32 *)__cil_tmp48) = __cil_tmp53 | __cil_tmp50;
1452 } else {
1453
1454 }
1455 }
1456#line 92
1457 return (0);
1458}
1459}
1460#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1461static ssize_t w1_f23_read_bin(struct file *filp , struct kobject *kobj , struct bin_attribute *bin_attr ,
1462 char *buf , loff_t off , size_t count )
1463{ struct w1_slave *sl ;
1464 struct w1_slave *tmp ;
1465 struct w1_f23_data *data ;
1466 int i ;
1467 int min_page ;
1468 int max_page ;
1469 int tmp___0 ;
1470 size_t __len ;
1471 void *__ret ;
1472 unsigned long __cil_tmp16 ;
1473 unsigned long __cil_tmp17 ;
1474 void *__cil_tmp18 ;
1475 size_t __cil_tmp19 ;
1476 unsigned long __cil_tmp20 ;
1477 unsigned long __cil_tmp21 ;
1478 struct w1_master *__cil_tmp22 ;
1479 unsigned long __cil_tmp23 ;
1480 unsigned long __cil_tmp24 ;
1481 struct mutex *__cil_tmp25 ;
1482 loff_t __cil_tmp26 ;
1483 loff_t __cil_tmp27 ;
1484 loff_t __cil_tmp28 ;
1485 loff_t __cil_tmp29 ;
1486 loff_t __cil_tmp30 ;
1487 void *__cil_tmp31 ;
1488 unsigned long __cil_tmp32 ;
1489 unsigned long __cil_tmp33 ;
1490 unsigned long __cil_tmp34 ;
1491 unsigned long __cil_tmp35 ;
1492 u8 *__cil_tmp36 ;
1493 void const *__cil_tmp37 ;
1494 unsigned long __cil_tmp38 ;
1495 unsigned long __cil_tmp39 ;
1496 struct w1_master *__cil_tmp40 ;
1497 unsigned long __cil_tmp41 ;
1498 unsigned long __cil_tmp42 ;
1499 struct mutex *__cil_tmp43 ;
1500
1501 {
1502 {
1503#line 100
1504 tmp = kobj_to_w1_slave(kobj);
1505#line 100
1506 sl = tmp;
1507#line 102
1508 __cil_tmp16 = (unsigned long )sl;
1509#line 102
1510 __cil_tmp17 = __cil_tmp16 + 104;
1511#line 102
1512 __cil_tmp18 = *((void **)__cil_tmp17);
1513#line 102
1514 data = (struct w1_f23_data *)__cil_tmp18;
1515#line 108
1516 __cil_tmp19 = (size_t )512;
1517#line 108
1518 count = w1_f23_fix_count(off, count, __cil_tmp19);
1519 }
1520#line 108
1521 if (count == 0UL) {
1522#line 109
1523 return ((ssize_t )0);
1524 } else {
1525
1526 }
1527 {
1528#line 111
1529 __cil_tmp20 = (unsigned long )sl;
1530#line 111
1531 __cil_tmp21 = __cil_tmp20 + 88;
1532#line 111
1533 __cil_tmp22 = *((struct w1_master **)__cil_tmp21);
1534#line 111
1535 __cil_tmp23 = (unsigned long )__cil_tmp22;
1536#line 111
1537 __cil_tmp24 = __cil_tmp23 + 144;
1538#line 111
1539 __cil_tmp25 = (struct mutex *)__cil_tmp24;
1540#line 111
1541 mutex_lock(__cil_tmp25);
1542#line 115
1543 __cil_tmp26 = off >> 5;
1544#line 115
1545 min_page = (int )__cil_tmp26;
1546#line 116
1547 __cil_tmp27 = (loff_t )count;
1548#line 116
1549 __cil_tmp28 = off + __cil_tmp27;
1550#line 116
1551 __cil_tmp29 = __cil_tmp28 - 1LL;
1552#line 116
1553 __cil_tmp30 = __cil_tmp29 >> 5;
1554#line 116
1555 max_page = (int )__cil_tmp30;
1556#line 117
1557 i = min_page;
1558 }
1559 {
1560#line 117
1561 while (1) {
1562 while_continue: ;
1563#line 117
1564 if (i <= max_page) {
1565
1566 } else {
1567#line 117
1568 goto while_break;
1569 }
1570 {
1571#line 118
1572 tmp___0 = w1_f23_refresh_block(sl, data, i);
1573 }
1574#line 118
1575 if (tmp___0) {
1576#line 119
1577 count = (size_t )-5;
1578#line 120
1579 goto out_up;
1580 } else {
1581
1582 }
1583#line 117
1584 i = i + 1;
1585 }
1586 while_break: ;
1587 }
1588 {
1589#line 123
1590 __len = count;
1591#line 123
1592 __cil_tmp31 = (void *)buf;
1593#line 123
1594 __cil_tmp32 = off * 1UL;
1595#line 123
1596 __cil_tmp33 = 0 + __cil_tmp32;
1597#line 123
1598 __cil_tmp34 = (unsigned long )data;
1599#line 123
1600 __cil_tmp35 = __cil_tmp34 + __cil_tmp33;
1601#line 123
1602 __cil_tmp36 = (u8 *)__cil_tmp35;
1603#line 123
1604 __cil_tmp37 = (void const *)__cil_tmp36;
1605#line 123
1606 __ret = __builtin_memcpy(__cil_tmp31, __cil_tmp37, __len);
1607 }
1608 out_up:
1609 {
1610#line 142
1611 __cil_tmp38 = (unsigned long )sl;
1612#line 142
1613 __cil_tmp39 = __cil_tmp38 + 88;
1614#line 142
1615 __cil_tmp40 = *((struct w1_master **)__cil_tmp39);
1616#line 142
1617 __cil_tmp41 = (unsigned long )__cil_tmp40;
1618#line 142
1619 __cil_tmp42 = __cil_tmp41 + 144;
1620#line 142
1621 __cil_tmp43 = (struct mutex *)__cil_tmp42;
1622#line 142
1623 mutex_unlock(__cil_tmp43);
1624 }
1625#line 144
1626 return ((ssize_t )count);
1627}
1628}
1629#line 159 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
1630static int w1_f23_write(struct w1_slave *sl , int addr , int len , u8 const *data )
1631{ struct w1_f23_data *f23 ;
1632 u8 wrbuf[4] ;
1633 u8 rdbuf[35] ;
1634 u8 es ;
1635 int tmp ;
1636 int tmp___0 ;
1637 int tmp___1 ;
1638 int tmp___2 ;
1639 unsigned long __cil_tmp13 ;
1640 unsigned long __cil_tmp14 ;
1641 void *__cil_tmp15 ;
1642 int __cil_tmp16 ;
1643 int __cil_tmp17 ;
1644 int __cil_tmp18 ;
1645 unsigned long __cil_tmp19 ;
1646 unsigned long __cil_tmp20 ;
1647 unsigned long __cil_tmp21 ;
1648 unsigned long __cil_tmp22 ;
1649 int __cil_tmp23 ;
1650 unsigned long __cil_tmp24 ;
1651 unsigned long __cil_tmp25 ;
1652 int __cil_tmp26 ;
1653 unsigned long __cil_tmp27 ;
1654 unsigned long __cil_tmp28 ;
1655 struct w1_master *__cil_tmp29 ;
1656 unsigned long __cil_tmp30 ;
1657 unsigned long __cil_tmp31 ;
1658 u8 *__cil_tmp32 ;
1659 u8 const *__cil_tmp33 ;
1660 unsigned long __cil_tmp34 ;
1661 unsigned long __cil_tmp35 ;
1662 struct w1_master *__cil_tmp36 ;
1663 unsigned long __cil_tmp37 ;
1664 unsigned long __cil_tmp38 ;
1665 struct w1_master *__cil_tmp39 ;
1666 u8 __cil_tmp40 ;
1667 unsigned long __cil_tmp41 ;
1668 unsigned long __cil_tmp42 ;
1669 struct w1_master *__cil_tmp43 ;
1670 unsigned long __cil_tmp44 ;
1671 unsigned long __cil_tmp45 ;
1672 u8 *__cil_tmp46 ;
1673 int __cil_tmp47 ;
1674 unsigned long __cil_tmp48 ;
1675 unsigned long __cil_tmp49 ;
1676 u8 __cil_tmp50 ;
1677 int __cil_tmp51 ;
1678 unsigned long __cil_tmp52 ;
1679 unsigned long __cil_tmp53 ;
1680 u8 __cil_tmp54 ;
1681 int __cil_tmp55 ;
1682 unsigned long __cil_tmp56 ;
1683 unsigned long __cil_tmp57 ;
1684 u8 __cil_tmp58 ;
1685 int __cil_tmp59 ;
1686 unsigned long __cil_tmp60 ;
1687 unsigned long __cil_tmp61 ;
1688 u8 __cil_tmp62 ;
1689 int __cil_tmp63 ;
1690 int __cil_tmp64 ;
1691 unsigned long __cil_tmp65 ;
1692 unsigned long __cil_tmp66 ;
1693 u8 __cil_tmp67 ;
1694 int __cil_tmp68 ;
1695 void const *__cil_tmp69 ;
1696 unsigned long __cil_tmp70 ;
1697 unsigned long __cil_tmp71 ;
1698 u8 *__cil_tmp72 ;
1699 void const *__cil_tmp73 ;
1700 unsigned long __cil_tmp74 ;
1701 unsigned long __cil_tmp75 ;
1702 unsigned long __cil_tmp76 ;
1703 unsigned long __cil_tmp77 ;
1704 unsigned long __cil_tmp78 ;
1705 unsigned long __cil_tmp79 ;
1706 unsigned long __cil_tmp80 ;
1707 struct w1_master *__cil_tmp81 ;
1708 unsigned long __cil_tmp82 ;
1709 unsigned long __cil_tmp83 ;
1710 u8 *__cil_tmp84 ;
1711 u8 const *__cil_tmp85 ;
1712 unsigned long __cil_tmp86 ;
1713 unsigned long __cil_tmp87 ;
1714 struct w1_master *__cil_tmp88 ;
1715 unsigned long __cil_tmp89 ;
1716 unsigned long __cil_tmp90 ;
1717 int __cil_tmp91 ;
1718 int __cil_tmp92 ;
1719 int __cil_tmp93 ;
1720 unsigned int __cil_tmp94 ;
1721 unsigned long __cil_tmp95 ;
1722 unsigned long __cil_tmp96 ;
1723 u32 __cil_tmp97 ;
1724
1725 {
1726 {
1727#line 162
1728 __cil_tmp13 = (unsigned long )sl;
1729#line 162
1730 __cil_tmp14 = __cil_tmp13 + 104;
1731#line 162
1732 __cil_tmp15 = *((void **)__cil_tmp14);
1733#line 162
1734 f23 = (struct w1_f23_data *)__cil_tmp15;
1735#line 166
1736 __cil_tmp16 = addr + len;
1737#line 166
1738 __cil_tmp17 = __cil_tmp16 - 1;
1739#line 166
1740 __cil_tmp18 = __cil_tmp17 & 31;
1741#line 166
1742 es = (u8 )__cil_tmp18;
1743#line 169
1744 tmp = w1_reset_select_slave(sl);
1745 }
1746#line 169
1747 if (tmp) {
1748#line 170
1749 return (-1);
1750 } else {
1751
1752 }
1753 {
1754#line 172
1755 __cil_tmp19 = 0 * 1UL;
1756#line 172
1757 __cil_tmp20 = (unsigned long )(wrbuf) + __cil_tmp19;
1758#line 172
1759 *((u8 *)__cil_tmp20) = (u8 )15;
1760#line 173
1761 __cil_tmp21 = 1 * 1UL;
1762#line 173
1763 __cil_tmp22 = (unsigned long )(wrbuf) + __cil_tmp21;
1764#line 173
1765 __cil_tmp23 = addr & 255;
1766#line 173
1767 *((u8 *)__cil_tmp22) = (u8 )__cil_tmp23;
1768#line 174
1769 __cil_tmp24 = 2 * 1UL;
1770#line 174
1771 __cil_tmp25 = (unsigned long )(wrbuf) + __cil_tmp24;
1772#line 174
1773 __cil_tmp26 = addr >> 8;
1774#line 174
1775 *((u8 *)__cil_tmp25) = (u8 )__cil_tmp26;
1776#line 176
1777 __cil_tmp27 = (unsigned long )sl;
1778#line 176
1779 __cil_tmp28 = __cil_tmp27 + 88;
1780#line 176
1781 __cil_tmp29 = *((struct w1_master **)__cil_tmp28);
1782#line 176
1783 __cil_tmp30 = 0 * 1UL;
1784#line 176
1785 __cil_tmp31 = (unsigned long )(wrbuf) + __cil_tmp30;
1786#line 176
1787 __cil_tmp32 = (u8 *)__cil_tmp31;
1788#line 176
1789 __cil_tmp33 = (u8 const *)__cil_tmp32;
1790#line 176
1791 w1_write_block(__cil_tmp29, __cil_tmp33, 3);
1792#line 177
1793 __cil_tmp34 = (unsigned long )sl;
1794#line 177
1795 __cil_tmp35 = __cil_tmp34 + 88;
1796#line 177
1797 __cil_tmp36 = *((struct w1_master **)__cil_tmp35);
1798#line 177
1799 w1_write_block(__cil_tmp36, data, len);
1800#line 180
1801 tmp___0 = w1_reset_select_slave(sl);
1802 }
1803#line 180
1804 if (tmp___0) {
1805#line 181
1806 return (-1);
1807 } else {
1808
1809 }
1810 {
1811#line 183
1812 __cil_tmp37 = (unsigned long )sl;
1813#line 183
1814 __cil_tmp38 = __cil_tmp37 + 88;
1815#line 183
1816 __cil_tmp39 = *((struct w1_master **)__cil_tmp38);
1817#line 183
1818 __cil_tmp40 = (u8 )170;
1819#line 183
1820 w1_write_8(__cil_tmp39, __cil_tmp40);
1821#line 184
1822 __cil_tmp41 = (unsigned long )sl;
1823#line 184
1824 __cil_tmp42 = __cil_tmp41 + 88;
1825#line 184
1826 __cil_tmp43 = *((struct w1_master **)__cil_tmp42);
1827#line 184
1828 __cil_tmp44 = 0 * 1UL;
1829#line 184
1830 __cil_tmp45 = (unsigned long )(rdbuf) + __cil_tmp44;
1831#line 184
1832 __cil_tmp46 = (u8 *)__cil_tmp45;
1833#line 184
1834 __cil_tmp47 = len + 3;
1835#line 184
1836 w1_read_block(__cil_tmp43, __cil_tmp46, __cil_tmp47);
1837 }
1838 {
1839#line 187
1840 __cil_tmp48 = 1 * 1UL;
1841#line 187
1842 __cil_tmp49 = (unsigned long )(wrbuf) + __cil_tmp48;
1843#line 187
1844 __cil_tmp50 = *((u8 *)__cil_tmp49);
1845#line 187
1846 __cil_tmp51 = (int )__cil_tmp50;
1847#line 187
1848 __cil_tmp52 = 0 * 1UL;
1849#line 187
1850 __cil_tmp53 = (unsigned long )(rdbuf) + __cil_tmp52;
1851#line 187
1852 __cil_tmp54 = *((u8 *)__cil_tmp53);
1853#line 187
1854 __cil_tmp55 = (int )__cil_tmp54;
1855#line 187
1856 if (__cil_tmp55 != __cil_tmp51) {
1857#line 189
1858 return (-1);
1859 } else {
1860 {
1861#line 187
1862 __cil_tmp56 = 2 * 1UL;
1863#line 187
1864 __cil_tmp57 = (unsigned long )(wrbuf) + __cil_tmp56;
1865#line 187
1866 __cil_tmp58 = *((u8 *)__cil_tmp57);
1867#line 187
1868 __cil_tmp59 = (int )__cil_tmp58;
1869#line 187
1870 __cil_tmp60 = 1 * 1UL;
1871#line 187
1872 __cil_tmp61 = (unsigned long )(rdbuf) + __cil_tmp60;
1873#line 187
1874 __cil_tmp62 = *((u8 *)__cil_tmp61);
1875#line 187
1876 __cil_tmp63 = (int )__cil_tmp62;
1877#line 187
1878 if (__cil_tmp63 != __cil_tmp59) {
1879#line 189
1880 return (-1);
1881 } else {
1882 {
1883#line 187
1884 __cil_tmp64 = (int )es;
1885#line 187
1886 __cil_tmp65 = 2 * 1UL;
1887#line 187
1888 __cil_tmp66 = (unsigned long )(rdbuf) + __cil_tmp65;
1889#line 187
1890 __cil_tmp67 = *((u8 *)__cil_tmp66);
1891#line 187
1892 __cil_tmp68 = (int )__cil_tmp67;
1893#line 187
1894 if (__cil_tmp68 != __cil_tmp64) {
1895#line 189
1896 return (-1);
1897 } else {
1898 {
1899#line 187
1900 __cil_tmp69 = (void const *)data;
1901#line 187
1902 __cil_tmp70 = 3 * 1UL;
1903#line 187
1904 __cil_tmp71 = (unsigned long )(rdbuf) + __cil_tmp70;
1905#line 187
1906 __cil_tmp72 = (u8 *)__cil_tmp71;
1907#line 187
1908 __cil_tmp73 = (void const *)__cil_tmp72;
1909#line 187
1910 __cil_tmp74 = (unsigned long )len;
1911#line 187
1912 tmp___1 = memcmp(__cil_tmp69, __cil_tmp73, __cil_tmp74);
1913 }
1914#line 187
1915 if (tmp___1 != 0) {
1916#line 189
1917 return (-1);
1918 } else {
1919
1920 }
1921 }
1922 }
1923 }
1924 }
1925 }
1926 }
1927 {
1928#line 192
1929 tmp___2 = w1_reset_select_slave(sl);
1930 }
1931#line 192
1932 if (tmp___2) {
1933#line 193
1934 return (-1);
1935 } else {
1936
1937 }
1938 {
1939#line 195
1940 __cil_tmp75 = 0 * 1UL;
1941#line 195
1942 __cil_tmp76 = (unsigned long )(wrbuf) + __cil_tmp75;
1943#line 195
1944 *((u8 *)__cil_tmp76) = (u8 )85;
1945#line 196
1946 __cil_tmp77 = 3 * 1UL;
1947#line 196
1948 __cil_tmp78 = (unsigned long )(wrbuf) + __cil_tmp77;
1949#line 196
1950 *((u8 *)__cil_tmp78) = es;
1951#line 197
1952 __cil_tmp79 = (unsigned long )sl;
1953#line 197
1954 __cil_tmp80 = __cil_tmp79 + 88;
1955#line 197
1956 __cil_tmp81 = *((struct w1_master **)__cil_tmp80);
1957#line 197
1958 __cil_tmp82 = 0 * 1UL;
1959#line 197
1960 __cil_tmp83 = (unsigned long )(wrbuf) + __cil_tmp82;
1961#line 197
1962 __cil_tmp84 = (u8 *)__cil_tmp83;
1963#line 197
1964 __cil_tmp85 = (u8 const *)__cil_tmp84;
1965#line 197
1966 w1_write_block(__cil_tmp81, __cil_tmp85, 4);
1967#line 200
1968 msleep(5U);
1969#line 203
1970 __cil_tmp86 = (unsigned long )sl;
1971#line 203
1972 __cil_tmp87 = __cil_tmp86 + 88;
1973#line 203
1974 __cil_tmp88 = *((struct w1_master **)__cil_tmp87);
1975#line 203
1976 w1_reset_bus(__cil_tmp88);
1977#line 205
1978 __cil_tmp89 = (unsigned long )f23;
1979#line 205
1980 __cil_tmp90 = __cil_tmp89 + 512;
1981#line 205
1982 __cil_tmp91 = addr >> 5;
1983#line 205
1984 __cil_tmp92 = 1 << __cil_tmp91;
1985#line 205
1986 __cil_tmp93 = ~ __cil_tmp92;
1987#line 205
1988 __cil_tmp94 = (unsigned int )__cil_tmp93;
1989#line 205
1990 __cil_tmp95 = (unsigned long )f23;
1991#line 205
1992 __cil_tmp96 = __cil_tmp95 + 512;
1993#line 205
1994 __cil_tmp97 = *((u32 *)__cil_tmp96);
1995#line 205
1996 *((u32 *)__cil_tmp90) = __cil_tmp97 & __cil_tmp94;
1997 }
1998#line 207
1999 return (0);
2000}
2001}
2002#line 210 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2003static ssize_t w1_f23_write_bin(struct file *filp , struct kobject *kobj , struct bin_attribute *bin_attr ,
2004 char *buf , loff_t off , size_t count )
2005{ struct w1_slave *sl ;
2006 struct w1_slave *tmp ;
2007 int addr ;
2008 int len ;
2009 int idx ;
2010 u16 tmp___0 ;
2011 int tmp___1 ;
2012 size_t __cil_tmp14 ;
2013 unsigned long __cil_tmp15 ;
2014 unsigned long __cil_tmp16 ;
2015 struct device *__cil_tmp17 ;
2016 struct device const *__cil_tmp18 ;
2017 int __cil_tmp19 ;
2018 unsigned long __cil_tmp20 ;
2019 unsigned long __cil_tmp21 ;
2020 struct device *__cil_tmp22 ;
2021 struct device const *__cil_tmp23 ;
2022 int __cil_tmp24 ;
2023 size_t __cil_tmp25 ;
2024 u16 __cil_tmp26 ;
2025 char *__cil_tmp27 ;
2026 u8 const *__cil_tmp28 ;
2027 size_t __cil_tmp29 ;
2028 int __cil_tmp30 ;
2029 unsigned long __cil_tmp31 ;
2030 unsigned long __cil_tmp32 ;
2031 struct device *__cil_tmp33 ;
2032 struct device const *__cil_tmp34 ;
2033 int __cil_tmp35 ;
2034 unsigned long __cil_tmp36 ;
2035 unsigned long __cil_tmp37 ;
2036 struct w1_master *__cil_tmp38 ;
2037 unsigned long __cil_tmp39 ;
2038 unsigned long __cil_tmp40 ;
2039 struct mutex *__cil_tmp41 ;
2040 size_t __cil_tmp42 ;
2041 loff_t __cil_tmp43 ;
2042 loff_t __cil_tmp44 ;
2043 int __cil_tmp45 ;
2044 size_t __cil_tmp46 ;
2045 size_t __cil_tmp47 ;
2046 size_t __cil_tmp48 ;
2047 size_t __cil_tmp49 ;
2048 size_t __cil_tmp50 ;
2049 char *__cil_tmp51 ;
2050 u8 const *__cil_tmp52 ;
2051 unsigned long __cil_tmp53 ;
2052 unsigned long __cil_tmp54 ;
2053 struct w1_master *__cil_tmp55 ;
2054 unsigned long __cil_tmp56 ;
2055 unsigned long __cil_tmp57 ;
2056 struct mutex *__cil_tmp58 ;
2057
2058 {
2059 {
2060#line 214
2061 tmp = kobj_to_w1_slave(kobj);
2062#line 214
2063 sl = tmp;
2064#line 217
2065 __cil_tmp14 = (size_t )512;
2066#line 217
2067 count = w1_f23_fix_count(off, count, __cil_tmp14);
2068 }
2069#line 217
2070 if (count == 0UL) {
2071#line 218
2072 return ((ssize_t )0);
2073 } else {
2074
2075 }
2076#line 222
2077 if (off & 31LL) {
2078 {
2079#line 223
2080 __cil_tmp15 = (unsigned long )sl;
2081#line 223
2082 __cil_tmp16 = __cil_tmp15 + 112;
2083#line 223
2084 __cil_tmp17 = (struct device *)__cil_tmp16;
2085#line 223
2086 __cil_tmp18 = (struct device const *)__cil_tmp17;
2087#line 223
2088 __cil_tmp19 = (int )off;
2089#line 223
2090 dev_err(__cil_tmp18, "invalid offset/count off=%d cnt=%zd\n", __cil_tmp19, count);
2091 }
2092#line 225
2093 return ((ssize_t )-22);
2094 } else
2095#line 222
2096 if (count & 31UL) {
2097 {
2098#line 223
2099 __cil_tmp20 = (unsigned long )sl;
2100#line 223
2101 __cil_tmp21 = __cil_tmp20 + 112;
2102#line 223
2103 __cil_tmp22 = (struct device *)__cil_tmp21;
2104#line 223
2105 __cil_tmp23 = (struct device const *)__cil_tmp22;
2106#line 223
2107 __cil_tmp24 = (int )off;
2108#line 223
2109 dev_err(__cil_tmp23, "invalid offset/count off=%d cnt=%zd\n", __cil_tmp24, count);
2110 }
2111#line 225
2112 return ((ssize_t )-22);
2113 } else {
2114
2115 }
2116#line 229
2117 idx = 0;
2118 {
2119#line 229
2120 while (1) {
2121 while_continue: ;
2122 {
2123#line 229
2124 __cil_tmp25 = (size_t )idx;
2125#line 229
2126 if (__cil_tmp25 < count) {
2127
2128 } else {
2129#line 229
2130 goto while_break;
2131 }
2132 }
2133 {
2134#line 230
2135 __cil_tmp26 = (u16 )0;
2136#line 230
2137 __cil_tmp27 = buf + idx;
2138#line 230
2139 __cil_tmp28 = (u8 const *)__cil_tmp27;
2140#line 230
2141 __cil_tmp29 = (size_t )32;
2142#line 230
2143 tmp___0 = crc16(__cil_tmp26, __cil_tmp28, __cil_tmp29);
2144 }
2145 {
2146#line 230
2147 __cil_tmp30 = (int )tmp___0;
2148#line 230
2149 if (__cil_tmp30 != 45057) {
2150 {
2151#line 231
2152 __cil_tmp31 = (unsigned long )sl;
2153#line 231
2154 __cil_tmp32 = __cil_tmp31 + 112;
2155#line 231
2156 __cil_tmp33 = (struct device *)__cil_tmp32;
2157#line 231
2158 __cil_tmp34 = (struct device const *)__cil_tmp33;
2159#line 231
2160 __cil_tmp35 = (int )off;
2161#line 231
2162 dev_err(__cil_tmp34, "bad CRC at offset %d\n", __cil_tmp35);
2163 }
2164#line 232
2165 return ((ssize_t )-22);
2166 } else {
2167
2168 }
2169 }
2170#line 229
2171 idx = idx + 32;
2172 }
2173 while_break: ;
2174 }
2175 {
2176#line 237
2177 __cil_tmp36 = (unsigned long )sl;
2178#line 237
2179 __cil_tmp37 = __cil_tmp36 + 88;
2180#line 237
2181 __cil_tmp38 = *((struct w1_master **)__cil_tmp37);
2182#line 237
2183 __cil_tmp39 = (unsigned long )__cil_tmp38;
2184#line 237
2185 __cil_tmp40 = __cil_tmp39 + 144;
2186#line 237
2187 __cil_tmp41 = (struct mutex *)__cil_tmp40;
2188#line 237
2189 mutex_lock(__cil_tmp41);
2190#line 240
2191 idx = 0;
2192 }
2193 {
2194#line 241
2195 while (1) {
2196 while_continue___0: ;
2197 {
2198#line 241
2199 __cil_tmp42 = (size_t )idx;
2200#line 241
2201 if (__cil_tmp42 < count) {
2202
2203 } else {
2204#line 241
2205 goto while_break___0;
2206 }
2207 }
2208#line 242
2209 __cil_tmp43 = (loff_t )idx;
2210#line 242
2211 __cil_tmp44 = off + __cil_tmp43;
2212#line 242
2213 addr = (int )__cil_tmp44;
2214#line 243
2215 __cil_tmp45 = addr & 31;
2216#line 243
2217 len = 32 - __cil_tmp45;
2218 {
2219#line 244
2220 __cil_tmp46 = (size_t )idx;
2221#line 244
2222 __cil_tmp47 = count - __cil_tmp46;
2223#line 244
2224 __cil_tmp48 = (size_t )len;
2225#line 244
2226 if (__cil_tmp48 > __cil_tmp47) {
2227#line 245
2228 __cil_tmp49 = (size_t )idx;
2229#line 245
2230 __cil_tmp50 = count - __cil_tmp49;
2231#line 245
2232 len = (int )__cil_tmp50;
2233 } else {
2234
2235 }
2236 }
2237 {
2238#line 247
2239 __cil_tmp51 = buf + idx;
2240#line 247
2241 __cil_tmp52 = (u8 const *)__cil_tmp51;
2242#line 247
2243 tmp___1 = w1_f23_write(sl, addr, len, __cil_tmp52);
2244 }
2245#line 247
2246 if (tmp___1 < 0) {
2247#line 248
2248 count = (size_t )-5;
2249#line 249
2250 goto out_up;
2251 } else {
2252
2253 }
2254#line 251
2255 idx = idx + len;
2256 }
2257 while_break___0: ;
2258 }
2259 out_up:
2260 {
2261#line 255
2262 __cil_tmp53 = (unsigned long )sl;
2263#line 255
2264 __cil_tmp54 = __cil_tmp53 + 88;
2265#line 255
2266 __cil_tmp55 = *((struct w1_master **)__cil_tmp54);
2267#line 255
2268 __cil_tmp56 = (unsigned long )__cil_tmp55;
2269#line 255
2270 __cil_tmp57 = __cil_tmp56 + 144;
2271#line 255
2272 __cil_tmp58 = (struct mutex *)__cil_tmp57;
2273#line 255
2274 mutex_unlock(__cil_tmp58);
2275 }
2276#line 257
2277 return ((ssize_t )count);
2278}
2279}
2280#line 260 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2281static struct bin_attribute w1_f23_bin_attr = {{"eeprom", (umode_t )420}, (size_t )512, (void *)0, & w1_f23_read_bin, & w1_f23_write_bin,
2282 (int (*)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ))0};
2283#line 270 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2284static int w1_f23_add_slave(struct w1_slave *sl )
2285{ int err ;
2286 struct w1_f23_data *data ;
2287 void *tmp ;
2288 unsigned long __cil_tmp5 ;
2289 unsigned long __cil_tmp6 ;
2290 unsigned long __cil_tmp7 ;
2291 unsigned long __cil_tmp8 ;
2292 unsigned long __cil_tmp9 ;
2293 struct kobject *__cil_tmp10 ;
2294 struct bin_attribute const *__cil_tmp11 ;
2295 void const *__cil_tmp12 ;
2296
2297 {
2298 {
2299#line 276
2300 tmp = kzalloc(516UL, 208U);
2301#line 276
2302 data = (struct w1_f23_data *)tmp;
2303 }
2304#line 277
2305 if (! data) {
2306#line 278
2307 return (-12);
2308 } else {
2309
2310 }
2311 {
2312#line 279
2313 __cil_tmp5 = (unsigned long )sl;
2314#line 279
2315 __cil_tmp6 = __cil_tmp5 + 104;
2316#line 279
2317 *((void **)__cil_tmp6) = (void *)data;
2318#line 283
2319 __cil_tmp7 = 112 + 16;
2320#line 283
2321 __cil_tmp8 = (unsigned long )sl;
2322#line 283
2323 __cil_tmp9 = __cil_tmp8 + __cil_tmp7;
2324#line 283
2325 __cil_tmp10 = (struct kobject *)__cil_tmp9;
2326#line 283
2327 __cil_tmp11 = (struct bin_attribute const *)(& w1_f23_bin_attr);
2328#line 283
2329 err = (int )sysfs_create_bin_file(__cil_tmp10, __cil_tmp11);
2330 }
2331#line 286
2332 if (err) {
2333 {
2334#line 287
2335 __cil_tmp12 = (void const *)data;
2336#line 287
2337 kfree(__cil_tmp12);
2338 }
2339 } else {
2340
2341 }
2342#line 290
2343 return (err);
2344}
2345}
2346#line 293 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2347static void w1_f23_remove_slave(struct w1_slave *sl )
2348{ unsigned long __cil_tmp2 ;
2349 unsigned long __cil_tmp3 ;
2350 void *__cil_tmp4 ;
2351 void const *__cil_tmp5 ;
2352 unsigned long __cil_tmp6 ;
2353 unsigned long __cil_tmp7 ;
2354 unsigned long __cil_tmp8 ;
2355 unsigned long __cil_tmp9 ;
2356 unsigned long __cil_tmp10 ;
2357 struct kobject *__cil_tmp11 ;
2358 struct bin_attribute const *__cil_tmp12 ;
2359
2360 {
2361 {
2362#line 296
2363 __cil_tmp2 = (unsigned long )sl;
2364#line 296
2365 __cil_tmp3 = __cil_tmp2 + 104;
2366#line 296
2367 __cil_tmp4 = *((void **)__cil_tmp3);
2368#line 296
2369 __cil_tmp5 = (void const *)__cil_tmp4;
2370#line 296
2371 kfree(__cil_tmp5);
2372#line 297
2373 __cil_tmp6 = (unsigned long )sl;
2374#line 297
2375 __cil_tmp7 = __cil_tmp6 + 104;
2376#line 297
2377 *((void **)__cil_tmp7) = (void *)0;
2378#line 299
2379 __cil_tmp8 = 112 + 16;
2380#line 299
2381 __cil_tmp9 = (unsigned long )sl;
2382#line 299
2383 __cil_tmp10 = __cil_tmp9 + __cil_tmp8;
2384#line 299
2385 __cil_tmp11 = (struct kobject *)__cil_tmp10;
2386#line 299
2387 __cil_tmp12 = (struct bin_attribute const *)(& w1_f23_bin_attr);
2388#line 299
2389 sysfs_remove_bin_file(__cil_tmp11, __cil_tmp12);
2390 }
2391#line 300
2392 return;
2393}
2394}
2395#line 302 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2396static struct w1_family_ops w1_f23_fops = {& w1_f23_add_slave, & w1_f23_remove_slave};
2397#line 307 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2398static struct w1_family w1_family_23 = {{(struct list_head *)0, (struct list_head *)0}, (u8 )35, & w1_f23_fops, {0}};
2399#line 312
2400static int w1_f23_init(void) __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
2401#line 312 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2402static int w1_f23_init(void)
2403{ int tmp ;
2404
2405 {
2406 {
2407#line 314
2408 tmp = w1_register_family(& w1_family_23);
2409 }
2410#line 314
2411 return (tmp);
2412}
2413}
2414#line 317
2415static void w1_f23_fini(void) __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
2416#line 317 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2417static void w1_f23_fini(void)
2418{
2419
2420 {
2421 {
2422#line 319
2423 w1_unregister_family(& w1_family_23);
2424 }
2425#line 320
2426 return;
2427}
2428}
2429#line 322 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2430int init_module(void)
2431{ int tmp ;
2432
2433 {
2434 {
2435#line 322
2436 tmp = w1_f23_init();
2437 }
2438#line 322
2439 return (tmp);
2440}
2441}
2442#line 323 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2443void cleanup_module(void)
2444{
2445
2446 {
2447 {
2448#line 323
2449 w1_f23_fini();
2450 }
2451#line 323
2452 return;
2453}
2454}
2455#line 341
2456void ldv_check_final_state(void) ;
2457#line 347
2458extern void ldv_initialize(void) ;
2459#line 350
2460extern int __VERIFIER_nondet_int(void) ;
2461#line 353 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2462int LDV_IN_INTERRUPT ;
2463#line 356 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2464void main(void)
2465{ struct file *var_group1 ;
2466 struct kobject *var_group2 ;
2467 struct bin_attribute *var_w1_f23_read_bin_2_p2 ;
2468 char *var_w1_f23_read_bin_2_p3 ;
2469 loff_t var_w1_f23_read_bin_2_p4 ;
2470 size_t var_w1_f23_read_bin_2_p5 ;
2471 struct bin_attribute *var_w1_f23_write_bin_4_p2 ;
2472 char *var_w1_f23_write_bin_4_p3 ;
2473 loff_t var_w1_f23_write_bin_4_p4 ;
2474 size_t var_w1_f23_write_bin_4_p5 ;
2475 struct w1_slave *var_group3 ;
2476 int tmp ;
2477 int tmp___0 ;
2478 int tmp___1 ;
2479
2480 {
2481 {
2482#line 534
2483 LDV_IN_INTERRUPT = 1;
2484#line 543
2485 ldv_initialize();
2486#line 584
2487 tmp = w1_f23_init();
2488 }
2489#line 584
2490 if (tmp) {
2491#line 585
2492 goto ldv_final;
2493 } else {
2494
2495 }
2496 {
2497#line 591
2498 while (1) {
2499 while_continue: ;
2500 {
2501#line 591
2502 tmp___1 = __VERIFIER_nondet_int();
2503 }
2504#line 591
2505 if (tmp___1) {
2506
2507 } else {
2508#line 591
2509 goto while_break;
2510 }
2511 {
2512#line 594
2513 tmp___0 = __VERIFIER_nondet_int();
2514 }
2515#line 596
2516 if (tmp___0 == 0) {
2517#line 596
2518 goto case_0;
2519 } else
2520#line 643
2521 if (tmp___0 == 1) {
2522#line 643
2523 goto case_1;
2524 } else
2525#line 694
2526 if (tmp___0 == 2) {
2527#line 694
2528 goto case_2;
2529 } else
2530#line 743
2531 if (tmp___0 == 3) {
2532#line 743
2533 goto case_3;
2534 } else {
2535 {
2536#line 792
2537 goto switch_default;
2538#line 594
2539 if (0) {
2540 case_0:
2541 {
2542#line 621
2543 w1_f23_read_bin(var_group1, var_group2, var_w1_f23_read_bin_2_p2, var_w1_f23_read_bin_2_p3,
2544 var_w1_f23_read_bin_2_p4, var_w1_f23_read_bin_2_p5);
2545 }
2546#line 642
2547 goto switch_break;
2548 case_1:
2549 {
2550#line 678
2551 w1_f23_write_bin(var_group1, var_group2, var_w1_f23_write_bin_4_p2, var_w1_f23_write_bin_4_p3,
2552 var_w1_f23_write_bin_4_p4, var_w1_f23_write_bin_4_p5);
2553 }
2554#line 693
2555 goto switch_break;
2556 case_2:
2557 {
2558#line 731
2559 w1_f23_add_slave(var_group3);
2560 }
2561#line 742
2562 goto switch_break;
2563 case_3:
2564 {
2565#line 784
2566 w1_f23_remove_slave(var_group3);
2567 }
2568#line 791
2569 goto switch_break;
2570 switch_default:
2571#line 792
2572 goto switch_break;
2573 } else {
2574 switch_break: ;
2575 }
2576 }
2577 }
2578 }
2579 while_break: ;
2580 }
2581 {
2582#line 839
2583 w1_f23_fini();
2584 }
2585 ldv_final:
2586 {
2587#line 842
2588 ldv_check_final_state();
2589 }
2590#line 845
2591 return;
2592}
2593}
2594#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
2595void ldv_blast_assert(void)
2596{
2597
2598 {
2599 ERROR:
2600#line 6
2601 goto ERROR;
2602}
2603}
2604#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
2605extern int __VERIFIER_nondet_int(void) ;
2606#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2607int ldv_mutex = 1;
2608#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2609int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock )
2610{ int nondetermined ;
2611
2612 {
2613#line 29
2614 if (ldv_mutex == 1) {
2615
2616 } else {
2617 {
2618#line 29
2619 ldv_blast_assert();
2620 }
2621 }
2622 {
2623#line 32
2624 nondetermined = __VERIFIER_nondet_int();
2625 }
2626#line 35
2627 if (nondetermined) {
2628#line 38
2629 ldv_mutex = 2;
2630#line 40
2631 return (0);
2632 } else {
2633#line 45
2634 return (-4);
2635 }
2636}
2637}
2638#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2639int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock )
2640{ int nondetermined ;
2641
2642 {
2643#line 57
2644 if (ldv_mutex == 1) {
2645
2646 } else {
2647 {
2648#line 57
2649 ldv_blast_assert();
2650 }
2651 }
2652 {
2653#line 60
2654 nondetermined = __VERIFIER_nondet_int();
2655 }
2656#line 63
2657 if (nondetermined) {
2658#line 66
2659 ldv_mutex = 2;
2660#line 68
2661 return (0);
2662 } else {
2663#line 73
2664 return (-4);
2665 }
2666}
2667}
2668#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2669int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock )
2670{ int atomic_value_after_dec ;
2671
2672 {
2673#line 83
2674 if (ldv_mutex == 1) {
2675
2676 } else {
2677 {
2678#line 83
2679 ldv_blast_assert();
2680 }
2681 }
2682 {
2683#line 86
2684 atomic_value_after_dec = __VERIFIER_nondet_int();
2685 }
2686#line 89
2687 if (atomic_value_after_dec == 0) {
2688#line 92
2689 ldv_mutex = 2;
2690#line 94
2691 return (1);
2692 } else {
2693
2694 }
2695#line 98
2696 return (0);
2697}
2698}
2699#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2700void mutex_lock(struct mutex *lock )
2701{
2702
2703 {
2704#line 108
2705 if (ldv_mutex == 1) {
2706
2707 } else {
2708 {
2709#line 108
2710 ldv_blast_assert();
2711 }
2712 }
2713#line 110
2714 ldv_mutex = 2;
2715#line 111
2716 return;
2717}
2718}
2719#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2720int mutex_trylock(struct mutex *lock )
2721{ int nondetermined ;
2722
2723 {
2724#line 121
2725 if (ldv_mutex == 1) {
2726
2727 } else {
2728 {
2729#line 121
2730 ldv_blast_assert();
2731 }
2732 }
2733 {
2734#line 124
2735 nondetermined = __VERIFIER_nondet_int();
2736 }
2737#line 127
2738 if (nondetermined) {
2739#line 130
2740 ldv_mutex = 2;
2741#line 132
2742 return (1);
2743 } else {
2744#line 137
2745 return (0);
2746 }
2747}
2748}
2749#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2750void mutex_unlock(struct mutex *lock )
2751{
2752
2753 {
2754#line 147
2755 if (ldv_mutex == 2) {
2756
2757 } else {
2758 {
2759#line 147
2760 ldv_blast_assert();
2761 }
2762 }
2763#line 149
2764 ldv_mutex = 1;
2765#line 150
2766 return;
2767}
2768}
2769#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2770void ldv_check_final_state(void)
2771{
2772
2773 {
2774#line 156
2775 if (ldv_mutex == 1) {
2776
2777 } else {
2778 {
2779#line 156
2780 ldv_blast_assert();
2781 }
2782 }
2783#line 157
2784 return;
2785}
2786}
2787#line 854 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/12357/dscv_tempdir/dscv/ri/32_1/drivers/w1/slaves/w1_ds2433.c.common.c"
2788long s__builtin_expect(long val , long res )
2789{
2790
2791 {
2792#line 855
2793 return (val);
2794}
2795}