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 155 "include/linux/types.h"
47typedef u64 dma_addr_t;
48#line 202 "include/linux/types.h"
49typedef unsigned int gfp_t;
50#line 206 "include/linux/types.h"
51typedef u64 phys_addr_t;
52#line 211 "include/linux/types.h"
53typedef phys_addr_t resource_size_t;
54#line 221 "include/linux/types.h"
55struct __anonstruct_atomic_t_6 {
56 int counter ;
57};
58#line 221 "include/linux/types.h"
59typedef struct __anonstruct_atomic_t_6 atomic_t;
60#line 226 "include/linux/types.h"
61struct __anonstruct_atomic64_t_7 {
62 long counter ;
63};
64#line 226 "include/linux/types.h"
65typedef struct __anonstruct_atomic64_t_7 atomic64_t;
66#line 227 "include/linux/types.h"
67struct list_head {
68 struct list_head *next ;
69 struct list_head *prev ;
70};
71#line 232
72struct hlist_node;
73#line 232 "include/linux/types.h"
74struct hlist_head {
75 struct hlist_node *first ;
76};
77#line 236 "include/linux/types.h"
78struct hlist_node {
79 struct hlist_node *next ;
80 struct hlist_node **pprev ;
81};
82#line 247 "include/linux/types.h"
83struct rcu_head {
84 struct rcu_head *next ;
85 void (*func)(struct rcu_head * ) ;
86};
87#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
88struct module;
89#line 55
90struct module;
91#line 146 "include/linux/init.h"
92typedef void (*ctor_fn_t)(void);
93#line 46 "include/linux/dynamic_debug.h"
94struct device;
95#line 46
96struct device;
97#line 57
98struct completion;
99#line 57
100struct completion;
101#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
102struct page;
103#line 58
104struct page;
105#line 26 "include/asm-generic/getorder.h"
106struct task_struct;
107#line 26
108struct task_struct;
109#line 28
110struct mm_struct;
111#line 28
112struct mm_struct;
113#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
114typedef unsigned long pgdval_t;
115#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
116typedef unsigned long pgprotval_t;
117#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
118struct pgprot {
119 pgprotval_t pgprot ;
120};
121#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
122typedef struct pgprot pgprot_t;
123#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
124struct __anonstruct_pgd_t_16 {
125 pgdval_t pgd ;
126};
127#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
128typedef struct __anonstruct_pgd_t_16 pgd_t;
129#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
130typedef struct page *pgtable_t;
131#line 290
132struct file;
133#line 290
134struct file;
135#line 339
136struct cpumask;
137#line 339
138struct cpumask;
139#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
140struct arch_spinlock;
141#line 327
142struct arch_spinlock;
143#line 306 "include/linux/bitmap.h"
144struct bug_entry {
145 int bug_addr_disp ;
146 int file_disp ;
147 unsigned short line ;
148 unsigned short flags ;
149};
150#line 89 "include/linux/bug.h"
151struct cpumask {
152 unsigned long bits[64U] ;
153};
154#line 637 "include/linux/cpumask.h"
155typedef struct cpumask *cpumask_var_t;
156#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
157struct static_key;
158#line 234
159struct static_key;
160#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
161struct kmem_cache;
162#line 23 "include/asm-generic/atomic-long.h"
163typedef atomic64_t atomic_long_t;
164#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
165typedef u16 __ticket_t;
166#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
167typedef u32 __ticketpair_t;
168#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
169struct __raw_tickets {
170 __ticket_t head ;
171 __ticket_t tail ;
172};
173#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
174union __anonunion_ldv_5907_29 {
175 __ticketpair_t head_tail ;
176 struct __raw_tickets tickets ;
177};
178#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
179struct arch_spinlock {
180 union __anonunion_ldv_5907_29 ldv_5907 ;
181};
182#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
183typedef struct arch_spinlock arch_spinlock_t;
184#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
185struct lockdep_map;
186#line 34
187struct lockdep_map;
188#line 55 "include/linux/debug_locks.h"
189struct stack_trace {
190 unsigned int nr_entries ;
191 unsigned int max_entries ;
192 unsigned long *entries ;
193 int skip ;
194};
195#line 26 "include/linux/stacktrace.h"
196struct lockdep_subclass_key {
197 char __one_byte ;
198};
199#line 53 "include/linux/lockdep.h"
200struct lock_class_key {
201 struct lockdep_subclass_key subkeys[8U] ;
202};
203#line 59 "include/linux/lockdep.h"
204struct lock_class {
205 struct list_head hash_entry ;
206 struct list_head lock_entry ;
207 struct lockdep_subclass_key *key ;
208 unsigned int subclass ;
209 unsigned int dep_gen_id ;
210 unsigned long usage_mask ;
211 struct stack_trace usage_traces[13U] ;
212 struct list_head locks_after ;
213 struct list_head locks_before ;
214 unsigned int version ;
215 unsigned long ops ;
216 char const *name ;
217 int name_version ;
218 unsigned long contention_point[4U] ;
219 unsigned long contending_point[4U] ;
220};
221#line 144 "include/linux/lockdep.h"
222struct lockdep_map {
223 struct lock_class_key *key ;
224 struct lock_class *class_cache[2U] ;
225 char const *name ;
226 int cpu ;
227 unsigned long ip ;
228};
229#line 556 "include/linux/lockdep.h"
230struct raw_spinlock {
231 arch_spinlock_t raw_lock ;
232 unsigned int magic ;
233 unsigned int owner_cpu ;
234 void *owner ;
235 struct lockdep_map dep_map ;
236};
237#line 32 "include/linux/spinlock_types.h"
238typedef struct raw_spinlock raw_spinlock_t;
239#line 33 "include/linux/spinlock_types.h"
240struct __anonstruct_ldv_6122_33 {
241 u8 __padding[24U] ;
242 struct lockdep_map dep_map ;
243};
244#line 33 "include/linux/spinlock_types.h"
245union __anonunion_ldv_6123_32 {
246 struct raw_spinlock rlock ;
247 struct __anonstruct_ldv_6122_33 ldv_6122 ;
248};
249#line 33 "include/linux/spinlock_types.h"
250struct spinlock {
251 union __anonunion_ldv_6123_32 ldv_6123 ;
252};
253#line 76 "include/linux/spinlock_types.h"
254typedef struct spinlock spinlock_t;
255#line 48 "include/linux/wait.h"
256struct __wait_queue_head {
257 spinlock_t lock ;
258 struct list_head task_list ;
259};
260#line 53 "include/linux/wait.h"
261typedef struct __wait_queue_head wait_queue_head_t;
262#line 98 "include/linux/nodemask.h"
263struct __anonstruct_nodemask_t_36 {
264 unsigned long bits[16U] ;
265};
266#line 98 "include/linux/nodemask.h"
267typedef struct __anonstruct_nodemask_t_36 nodemask_t;
268#line 670 "include/linux/mmzone.h"
269struct mutex {
270 atomic_t count ;
271 spinlock_t wait_lock ;
272 struct list_head wait_list ;
273 struct task_struct *owner ;
274 char const *name ;
275 void *magic ;
276 struct lockdep_map dep_map ;
277};
278#line 171 "include/linux/mutex.h"
279struct rw_semaphore;
280#line 171
281struct rw_semaphore;
282#line 172 "include/linux/mutex.h"
283struct rw_semaphore {
284 long count ;
285 raw_spinlock_t wait_lock ;
286 struct list_head wait_list ;
287 struct lockdep_map dep_map ;
288};
289#line 128 "include/linux/rwsem.h"
290struct completion {
291 unsigned int done ;
292 wait_queue_head_t wait ;
293};
294#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/e820.h"
295struct resource {
296 resource_size_t start ;
297 resource_size_t end ;
298 char const *name ;
299 unsigned long flags ;
300 struct resource *parent ;
301 struct resource *sibling ;
302 struct resource *child ;
303};
304#line 181 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/x86_init.h"
305struct pci_dev;
306#line 181
307struct pci_dev;
308#line 312 "include/linux/jiffies.h"
309union ktime {
310 s64 tv64 ;
311};
312#line 59 "include/linux/ktime.h"
313typedef union ktime ktime_t;
314#line 341
315struct tvec_base;
316#line 341
317struct tvec_base;
318#line 342 "include/linux/ktime.h"
319struct timer_list {
320 struct list_head entry ;
321 unsigned long expires ;
322 struct tvec_base *base ;
323 void (*function)(unsigned long ) ;
324 unsigned long data ;
325 int slack ;
326 int start_pid ;
327 void *start_site ;
328 char start_comm[16U] ;
329 struct lockdep_map lockdep_map ;
330};
331#line 301 "include/linux/timer.h"
332struct workqueue_struct;
333#line 301
334struct workqueue_struct;
335#line 302
336struct work_struct;
337#line 302
338struct work_struct;
339#line 45 "include/linux/workqueue.h"
340struct work_struct {
341 atomic_long_t data ;
342 struct list_head entry ;
343 void (*func)(struct work_struct * ) ;
344 struct lockdep_map lockdep_map ;
345};
346#line 46 "include/linux/pm.h"
347struct pm_message {
348 int event ;
349};
350#line 52 "include/linux/pm.h"
351typedef struct pm_message pm_message_t;
352#line 53 "include/linux/pm.h"
353struct dev_pm_ops {
354 int (*prepare)(struct device * ) ;
355 void (*complete)(struct device * ) ;
356 int (*suspend)(struct device * ) ;
357 int (*resume)(struct device * ) ;
358 int (*freeze)(struct device * ) ;
359 int (*thaw)(struct device * ) ;
360 int (*poweroff)(struct device * ) ;
361 int (*restore)(struct device * ) ;
362 int (*suspend_late)(struct device * ) ;
363 int (*resume_early)(struct device * ) ;
364 int (*freeze_late)(struct device * ) ;
365 int (*thaw_early)(struct device * ) ;
366 int (*poweroff_late)(struct device * ) ;
367 int (*restore_early)(struct device * ) ;
368 int (*suspend_noirq)(struct device * ) ;
369 int (*resume_noirq)(struct device * ) ;
370 int (*freeze_noirq)(struct device * ) ;
371 int (*thaw_noirq)(struct device * ) ;
372 int (*poweroff_noirq)(struct device * ) ;
373 int (*restore_noirq)(struct device * ) ;
374 int (*runtime_suspend)(struct device * ) ;
375 int (*runtime_resume)(struct device * ) ;
376 int (*runtime_idle)(struct device * ) ;
377};
378#line 289
379enum rpm_status {
380 RPM_ACTIVE = 0,
381 RPM_RESUMING = 1,
382 RPM_SUSPENDED = 2,
383 RPM_SUSPENDING = 3
384} ;
385#line 296
386enum rpm_request {
387 RPM_REQ_NONE = 0,
388 RPM_REQ_IDLE = 1,
389 RPM_REQ_SUSPEND = 2,
390 RPM_REQ_AUTOSUSPEND = 3,
391 RPM_REQ_RESUME = 4
392} ;
393#line 304
394struct wakeup_source;
395#line 304
396struct wakeup_source;
397#line 494 "include/linux/pm.h"
398struct pm_subsys_data {
399 spinlock_t lock ;
400 unsigned int refcount ;
401};
402#line 499
403struct dev_pm_qos_request;
404#line 499
405struct pm_qos_constraints;
406#line 499 "include/linux/pm.h"
407struct dev_pm_info {
408 pm_message_t power_state ;
409 unsigned char can_wakeup : 1 ;
410 unsigned char async_suspend : 1 ;
411 bool is_prepared ;
412 bool is_suspended ;
413 bool ignore_children ;
414 spinlock_t lock ;
415 struct list_head entry ;
416 struct completion completion ;
417 struct wakeup_source *wakeup ;
418 bool wakeup_path ;
419 struct timer_list suspend_timer ;
420 unsigned long timer_expires ;
421 struct work_struct work ;
422 wait_queue_head_t wait_queue ;
423 atomic_t usage_count ;
424 atomic_t child_count ;
425 unsigned char disable_depth : 3 ;
426 unsigned char idle_notification : 1 ;
427 unsigned char request_pending : 1 ;
428 unsigned char deferred_resume : 1 ;
429 unsigned char run_wake : 1 ;
430 unsigned char runtime_auto : 1 ;
431 unsigned char no_callbacks : 1 ;
432 unsigned char irq_safe : 1 ;
433 unsigned char use_autosuspend : 1 ;
434 unsigned char timer_autosuspends : 1 ;
435 enum rpm_request request ;
436 enum rpm_status runtime_status ;
437 int runtime_error ;
438 int autosuspend_delay ;
439 unsigned long last_busy ;
440 unsigned long active_jiffies ;
441 unsigned long suspended_jiffies ;
442 unsigned long accounting_timestamp ;
443 ktime_t suspend_time ;
444 s64 max_time_suspended_ns ;
445 struct dev_pm_qos_request *pq_req ;
446 struct pm_subsys_data *subsys_data ;
447 struct pm_qos_constraints *constraints ;
448};
449#line 558 "include/linux/pm.h"
450struct dev_pm_domain {
451 struct dev_pm_ops ops ;
452};
453#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/topology.h"
454struct pci_bus;
455#line 173
456struct pci_bus;
457#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
458struct __anonstruct_mm_context_t_101 {
459 void *ldt ;
460 int size ;
461 unsigned short ia32_compat ;
462 struct mutex lock ;
463 void *vdso ;
464};
465#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
466typedef struct __anonstruct_mm_context_t_101 mm_context_t;
467#line 18 "include/asm-generic/pci_iomap.h"
468struct vm_area_struct;
469#line 18
470struct vm_area_struct;
471#line 835 "include/linux/sysctl.h"
472struct rb_node {
473 unsigned long rb_parent_color ;
474 struct rb_node *rb_right ;
475 struct rb_node *rb_left ;
476};
477#line 108 "include/linux/rbtree.h"
478struct rb_root {
479 struct rb_node *rb_node ;
480};
481#line 18 "include/linux/elf.h"
482typedef __u64 Elf64_Addr;
483#line 19 "include/linux/elf.h"
484typedef __u16 Elf64_Half;
485#line 23 "include/linux/elf.h"
486typedef __u32 Elf64_Word;
487#line 24 "include/linux/elf.h"
488typedef __u64 Elf64_Xword;
489#line 193 "include/linux/elf.h"
490struct elf64_sym {
491 Elf64_Word st_name ;
492 unsigned char st_info ;
493 unsigned char st_other ;
494 Elf64_Half st_shndx ;
495 Elf64_Addr st_value ;
496 Elf64_Xword st_size ;
497};
498#line 201 "include/linux/elf.h"
499typedef struct elf64_sym Elf64_Sym;
500#line 445
501struct sock;
502#line 445
503struct sock;
504#line 446
505struct kobject;
506#line 446
507struct kobject;
508#line 447
509enum kobj_ns_type {
510 KOBJ_NS_TYPE_NONE = 0,
511 KOBJ_NS_TYPE_NET = 1,
512 KOBJ_NS_TYPES = 2
513} ;
514#line 453 "include/linux/elf.h"
515struct kobj_ns_type_operations {
516 enum kobj_ns_type type ;
517 void *(*grab_current_ns)(void) ;
518 void const *(*netlink_ns)(struct sock * ) ;
519 void const *(*initial_ns)(void) ;
520 void (*drop_ns)(void * ) ;
521};
522#line 57 "include/linux/kobject_ns.h"
523struct attribute {
524 char const *name ;
525 umode_t mode ;
526 struct lock_class_key *key ;
527 struct lock_class_key skey ;
528};
529#line 33 "include/linux/sysfs.h"
530struct attribute_group {
531 char const *name ;
532 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
533 struct attribute **attrs ;
534};
535#line 62 "include/linux/sysfs.h"
536struct bin_attribute {
537 struct attribute attr ;
538 size_t size ;
539 void *private ;
540 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
541 loff_t , size_t ) ;
542 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
543 loff_t , size_t ) ;
544 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
545};
546#line 98 "include/linux/sysfs.h"
547struct sysfs_ops {
548 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
549 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
550 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
551};
552#line 117
553struct sysfs_dirent;
554#line 117
555struct sysfs_dirent;
556#line 182 "include/linux/sysfs.h"
557struct kref {
558 atomic_t refcount ;
559};
560#line 49 "include/linux/kobject.h"
561struct kset;
562#line 49
563struct kobj_type;
564#line 49 "include/linux/kobject.h"
565struct kobject {
566 char const *name ;
567 struct list_head entry ;
568 struct kobject *parent ;
569 struct kset *kset ;
570 struct kobj_type *ktype ;
571 struct sysfs_dirent *sd ;
572 struct kref kref ;
573 unsigned char state_initialized : 1 ;
574 unsigned char state_in_sysfs : 1 ;
575 unsigned char state_add_uevent_sent : 1 ;
576 unsigned char state_remove_uevent_sent : 1 ;
577 unsigned char uevent_suppress : 1 ;
578};
579#line 107 "include/linux/kobject.h"
580struct kobj_type {
581 void (*release)(struct kobject * ) ;
582 struct sysfs_ops const *sysfs_ops ;
583 struct attribute **default_attrs ;
584 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
585 void const *(*namespace)(struct kobject * ) ;
586};
587#line 115 "include/linux/kobject.h"
588struct kobj_uevent_env {
589 char *envp[32U] ;
590 int envp_idx ;
591 char buf[2048U] ;
592 int buflen ;
593};
594#line 122 "include/linux/kobject.h"
595struct kset_uevent_ops {
596 int (* const filter)(struct kset * , struct kobject * ) ;
597 char const *(* const name)(struct kset * , struct kobject * ) ;
598 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
599};
600#line 139 "include/linux/kobject.h"
601struct kset {
602 struct list_head list ;
603 spinlock_t list_lock ;
604 struct kobject kobj ;
605 struct kset_uevent_ops const *uevent_ops ;
606};
607#line 215
608struct kernel_param;
609#line 215
610struct kernel_param;
611#line 216 "include/linux/kobject.h"
612struct kernel_param_ops {
613 int (*set)(char const * , struct kernel_param const * ) ;
614 int (*get)(char * , struct kernel_param const * ) ;
615 void (*free)(void * ) ;
616};
617#line 49 "include/linux/moduleparam.h"
618struct kparam_string;
619#line 49
620struct kparam_array;
621#line 49 "include/linux/moduleparam.h"
622union __anonunion_ldv_13363_134 {
623 void *arg ;
624 struct kparam_string const *str ;
625 struct kparam_array const *arr ;
626};
627#line 49 "include/linux/moduleparam.h"
628struct kernel_param {
629 char const *name ;
630 struct kernel_param_ops const *ops ;
631 u16 perm ;
632 s16 level ;
633 union __anonunion_ldv_13363_134 ldv_13363 ;
634};
635#line 61 "include/linux/moduleparam.h"
636struct kparam_string {
637 unsigned int maxlen ;
638 char *string ;
639};
640#line 67 "include/linux/moduleparam.h"
641struct kparam_array {
642 unsigned int max ;
643 unsigned int elemsize ;
644 unsigned int *num ;
645 struct kernel_param_ops const *ops ;
646 void *elem ;
647};
648#line 458 "include/linux/moduleparam.h"
649struct static_key {
650 atomic_t enabled ;
651};
652#line 225 "include/linux/jump_label.h"
653struct tracepoint;
654#line 225
655struct tracepoint;
656#line 226 "include/linux/jump_label.h"
657struct tracepoint_func {
658 void *func ;
659 void *data ;
660};
661#line 29 "include/linux/tracepoint.h"
662struct tracepoint {
663 char const *name ;
664 struct static_key key ;
665 void (*regfunc)(void) ;
666 void (*unregfunc)(void) ;
667 struct tracepoint_func *funcs ;
668};
669#line 86 "include/linux/tracepoint.h"
670struct kernel_symbol {
671 unsigned long value ;
672 char const *name ;
673};
674#line 27 "include/linux/export.h"
675struct mod_arch_specific {
676
677};
678#line 34 "include/linux/module.h"
679struct module_param_attrs;
680#line 34 "include/linux/module.h"
681struct module_kobject {
682 struct kobject kobj ;
683 struct module *mod ;
684 struct kobject *drivers_dir ;
685 struct module_param_attrs *mp ;
686};
687#line 43 "include/linux/module.h"
688struct module_attribute {
689 struct attribute attr ;
690 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
691 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
692 size_t ) ;
693 void (*setup)(struct module * , char const * ) ;
694 int (*test)(struct module * ) ;
695 void (*free)(struct module * ) ;
696};
697#line 69
698struct exception_table_entry;
699#line 69
700struct exception_table_entry;
701#line 198
702enum module_state {
703 MODULE_STATE_LIVE = 0,
704 MODULE_STATE_COMING = 1,
705 MODULE_STATE_GOING = 2
706} ;
707#line 204 "include/linux/module.h"
708struct module_ref {
709 unsigned long incs ;
710 unsigned long decs ;
711};
712#line 219
713struct module_sect_attrs;
714#line 219
715struct module_notes_attrs;
716#line 219
717struct ftrace_event_call;
718#line 219 "include/linux/module.h"
719struct module {
720 enum module_state state ;
721 struct list_head list ;
722 char name[56U] ;
723 struct module_kobject mkobj ;
724 struct module_attribute *modinfo_attrs ;
725 char const *version ;
726 char const *srcversion ;
727 struct kobject *holders_dir ;
728 struct kernel_symbol const *syms ;
729 unsigned long const *crcs ;
730 unsigned int num_syms ;
731 struct kernel_param *kp ;
732 unsigned int num_kp ;
733 unsigned int num_gpl_syms ;
734 struct kernel_symbol const *gpl_syms ;
735 unsigned long const *gpl_crcs ;
736 struct kernel_symbol const *unused_syms ;
737 unsigned long const *unused_crcs ;
738 unsigned int num_unused_syms ;
739 unsigned int num_unused_gpl_syms ;
740 struct kernel_symbol const *unused_gpl_syms ;
741 unsigned long const *unused_gpl_crcs ;
742 struct kernel_symbol const *gpl_future_syms ;
743 unsigned long const *gpl_future_crcs ;
744 unsigned int num_gpl_future_syms ;
745 unsigned int num_exentries ;
746 struct exception_table_entry *extable ;
747 int (*init)(void) ;
748 void *module_init ;
749 void *module_core ;
750 unsigned int init_size ;
751 unsigned int core_size ;
752 unsigned int init_text_size ;
753 unsigned int core_text_size ;
754 unsigned int init_ro_size ;
755 unsigned int core_ro_size ;
756 struct mod_arch_specific arch ;
757 unsigned int taints ;
758 unsigned int num_bugs ;
759 struct list_head bug_list ;
760 struct bug_entry *bug_table ;
761 Elf64_Sym *symtab ;
762 Elf64_Sym *core_symtab ;
763 unsigned int num_symtab ;
764 unsigned int core_num_syms ;
765 char *strtab ;
766 char *core_strtab ;
767 struct module_sect_attrs *sect_attrs ;
768 struct module_notes_attrs *notes_attrs ;
769 char *args ;
770 void *percpu ;
771 unsigned int percpu_size ;
772 unsigned int num_tracepoints ;
773 struct tracepoint * const *tracepoints_ptrs ;
774 unsigned int num_trace_bprintk_fmt ;
775 char const **trace_bprintk_fmt_start ;
776 struct ftrace_event_call **trace_events ;
777 unsigned int num_trace_events ;
778 struct list_head source_list ;
779 struct list_head target_list ;
780 struct task_struct *waiter ;
781 void (*exit)(void) ;
782 struct module_ref *refptr ;
783 ctor_fn_t (**ctors)(void) ;
784 unsigned int num_ctors ;
785};
786#line 88 "include/linux/kmemleak.h"
787struct kmem_cache_cpu {
788 void **freelist ;
789 unsigned long tid ;
790 struct page *page ;
791 struct page *partial ;
792 int node ;
793 unsigned int stat[26U] ;
794};
795#line 55 "include/linux/slub_def.h"
796struct kmem_cache_node {
797 spinlock_t list_lock ;
798 unsigned long nr_partial ;
799 struct list_head partial ;
800 atomic_long_t nr_slabs ;
801 atomic_long_t total_objects ;
802 struct list_head full ;
803};
804#line 66 "include/linux/slub_def.h"
805struct kmem_cache_order_objects {
806 unsigned long x ;
807};
808#line 76 "include/linux/slub_def.h"
809struct kmem_cache {
810 struct kmem_cache_cpu *cpu_slab ;
811 unsigned long flags ;
812 unsigned long min_partial ;
813 int size ;
814 int objsize ;
815 int offset ;
816 int cpu_partial ;
817 struct kmem_cache_order_objects oo ;
818 struct kmem_cache_order_objects max ;
819 struct kmem_cache_order_objects min ;
820 gfp_t allocflags ;
821 int refcount ;
822 void (*ctor)(void * ) ;
823 int inuse ;
824 int align ;
825 int reserved ;
826 char const *name ;
827 struct list_head list ;
828 struct kobject kobj ;
829 int remote_node_defrag_ratio ;
830 struct kmem_cache_node *node[1024U] ;
831};
832#line 348 "include/linux/irq.h"
833struct proc_dir_entry;
834#line 348
835struct proc_dir_entry;
836#line 41 "include/asm-generic/sections.h"
837struct exception_table_entry {
838 unsigned long insn ;
839 unsigned long fixup ;
840};
841#line 12 "include/linux/mod_devicetable.h"
842typedef unsigned long kernel_ulong_t;
843#line 13 "include/linux/mod_devicetable.h"
844struct pci_device_id {
845 __u32 vendor ;
846 __u32 device ;
847 __u32 subvendor ;
848 __u32 subdevice ;
849 __u32 class ;
850 __u32 class_mask ;
851 kernel_ulong_t driver_data ;
852};
853#line 215 "include/linux/mod_devicetable.h"
854struct of_device_id {
855 char name[32U] ;
856 char type[32U] ;
857 char compatible[128U] ;
858 void *data ;
859};
860#line 584
861struct klist_node;
862#line 584
863struct klist_node;
864#line 37 "include/linux/klist.h"
865struct klist_node {
866 void *n_klist ;
867 struct list_head n_node ;
868 struct kref n_ref ;
869};
870#line 67
871struct dma_map_ops;
872#line 67 "include/linux/klist.h"
873struct dev_archdata {
874 void *acpi_handle ;
875 struct dma_map_ops *dma_ops ;
876 void *iommu ;
877};
878#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
879struct device_private;
880#line 17
881struct device_private;
882#line 18
883struct device_driver;
884#line 18
885struct device_driver;
886#line 19
887struct driver_private;
888#line 19
889struct driver_private;
890#line 20
891struct class;
892#line 20
893struct class;
894#line 21
895struct subsys_private;
896#line 21
897struct subsys_private;
898#line 22
899struct bus_type;
900#line 22
901struct bus_type;
902#line 23
903struct device_node;
904#line 23
905struct device_node;
906#line 24
907struct iommu_ops;
908#line 24
909struct iommu_ops;
910#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
911struct bus_attribute {
912 struct attribute attr ;
913 ssize_t (*show)(struct bus_type * , char * ) ;
914 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
915};
916#line 51 "include/linux/device.h"
917struct device_attribute;
918#line 51
919struct driver_attribute;
920#line 51 "include/linux/device.h"
921struct bus_type {
922 char const *name ;
923 char const *dev_name ;
924 struct device *dev_root ;
925 struct bus_attribute *bus_attrs ;
926 struct device_attribute *dev_attrs ;
927 struct driver_attribute *drv_attrs ;
928 int (*match)(struct device * , struct device_driver * ) ;
929 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
930 int (*probe)(struct device * ) ;
931 int (*remove)(struct device * ) ;
932 void (*shutdown)(struct device * ) ;
933 int (*suspend)(struct device * , pm_message_t ) ;
934 int (*resume)(struct device * ) ;
935 struct dev_pm_ops const *pm ;
936 struct iommu_ops *iommu_ops ;
937 struct subsys_private *p ;
938};
939#line 125
940struct device_type;
941#line 182 "include/linux/device.h"
942struct device_driver {
943 char const *name ;
944 struct bus_type *bus ;
945 struct module *owner ;
946 char const *mod_name ;
947 bool suppress_bind_attrs ;
948 struct of_device_id const *of_match_table ;
949 int (*probe)(struct device * ) ;
950 int (*remove)(struct device * ) ;
951 void (*shutdown)(struct device * ) ;
952 int (*suspend)(struct device * , pm_message_t ) ;
953 int (*resume)(struct device * ) ;
954 struct attribute_group const **groups ;
955 struct dev_pm_ops const *pm ;
956 struct driver_private *p ;
957};
958#line 245 "include/linux/device.h"
959struct driver_attribute {
960 struct attribute attr ;
961 ssize_t (*show)(struct device_driver * , char * ) ;
962 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
963};
964#line 299
965struct class_attribute;
966#line 299 "include/linux/device.h"
967struct class {
968 char const *name ;
969 struct module *owner ;
970 struct class_attribute *class_attrs ;
971 struct device_attribute *dev_attrs ;
972 struct bin_attribute *dev_bin_attrs ;
973 struct kobject *dev_kobj ;
974 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
975 char *(*devnode)(struct device * , umode_t * ) ;
976 void (*class_release)(struct class * ) ;
977 void (*dev_release)(struct device * ) ;
978 int (*suspend)(struct device * , pm_message_t ) ;
979 int (*resume)(struct device * ) ;
980 struct kobj_ns_type_operations const *ns_type ;
981 void const *(*namespace)(struct device * ) ;
982 struct dev_pm_ops const *pm ;
983 struct subsys_private *p ;
984};
985#line 394 "include/linux/device.h"
986struct class_attribute {
987 struct attribute attr ;
988 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
989 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
990 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
991};
992#line 447 "include/linux/device.h"
993struct device_type {
994 char const *name ;
995 struct attribute_group const **groups ;
996 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
997 char *(*devnode)(struct device * , umode_t * ) ;
998 void (*release)(struct device * ) ;
999 struct dev_pm_ops const *pm ;
1000};
1001#line 474 "include/linux/device.h"
1002struct device_attribute {
1003 struct attribute attr ;
1004 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1005 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1006 size_t ) ;
1007};
1008#line 557 "include/linux/device.h"
1009struct device_dma_parameters {
1010 unsigned int max_segment_size ;
1011 unsigned long segment_boundary_mask ;
1012};
1013#line 567
1014struct dma_coherent_mem;
1015#line 567 "include/linux/device.h"
1016struct device {
1017 struct device *parent ;
1018 struct device_private *p ;
1019 struct kobject kobj ;
1020 char const *init_name ;
1021 struct device_type const *type ;
1022 struct mutex mutex ;
1023 struct bus_type *bus ;
1024 struct device_driver *driver ;
1025 void *platform_data ;
1026 struct dev_pm_info power ;
1027 struct dev_pm_domain *pm_domain ;
1028 int numa_node ;
1029 u64 *dma_mask ;
1030 u64 coherent_dma_mask ;
1031 struct device_dma_parameters *dma_parms ;
1032 struct list_head dma_pools ;
1033 struct dma_coherent_mem *dma_mem ;
1034 struct dev_archdata archdata ;
1035 struct device_node *of_node ;
1036 dev_t devt ;
1037 u32 id ;
1038 spinlock_t devres_lock ;
1039 struct list_head devres_head ;
1040 struct klist_node knode_class ;
1041 struct class *class ;
1042 struct attribute_group const **groups ;
1043 void (*release)(struct device * ) ;
1044};
1045#line 681 "include/linux/device.h"
1046struct wakeup_source {
1047 char const *name ;
1048 struct list_head entry ;
1049 spinlock_t lock ;
1050 struct timer_list timer ;
1051 unsigned long timer_expires ;
1052 ktime_t total_time ;
1053 ktime_t max_time ;
1054 ktime_t last_time ;
1055 unsigned long event_count ;
1056 unsigned long active_count ;
1057 unsigned long relax_count ;
1058 unsigned long hit_count ;
1059 unsigned char active : 1 ;
1060};
1061#line 69 "include/linux/io.h"
1062struct hotplug_slot;
1063#line 69 "include/linux/io.h"
1064struct pci_slot {
1065 struct pci_bus *bus ;
1066 struct list_head list ;
1067 struct hotplug_slot *hotplug ;
1068 unsigned char number ;
1069 struct kobject kobj ;
1070};
1071#line 117 "include/linux/pci.h"
1072typedef int pci_power_t;
1073#line 143 "include/linux/pci.h"
1074typedef unsigned int pci_channel_state_t;
1075#line 144
1076enum pci_channel_state {
1077 pci_channel_io_normal = 1,
1078 pci_channel_io_frozen = 2,
1079 pci_channel_io_perm_failure = 3
1080} ;
1081#line 169 "include/linux/pci.h"
1082typedef unsigned short pci_dev_flags_t;
1083#line 186 "include/linux/pci.h"
1084typedef unsigned short pci_bus_flags_t;
1085#line 229
1086struct pcie_link_state;
1087#line 229
1088struct pcie_link_state;
1089#line 230
1090struct pci_vpd;
1091#line 230
1092struct pci_vpd;
1093#line 231
1094struct pci_sriov;
1095#line 231
1096struct pci_sriov;
1097#line 232
1098struct pci_ats;
1099#line 232
1100struct pci_ats;
1101#line 233
1102struct pci_driver;
1103#line 233 "include/linux/pci.h"
1104union __anonunion_ldv_16934_137 {
1105 struct pci_sriov *sriov ;
1106 struct pci_dev *physfn ;
1107};
1108#line 233 "include/linux/pci.h"
1109struct pci_dev {
1110 struct list_head bus_list ;
1111 struct pci_bus *bus ;
1112 struct pci_bus *subordinate ;
1113 void *sysdata ;
1114 struct proc_dir_entry *procent ;
1115 struct pci_slot *slot ;
1116 unsigned int devfn ;
1117 unsigned short vendor ;
1118 unsigned short device ;
1119 unsigned short subsystem_vendor ;
1120 unsigned short subsystem_device ;
1121 unsigned int class ;
1122 u8 revision ;
1123 u8 hdr_type ;
1124 u8 pcie_cap ;
1125 unsigned char pcie_type : 4 ;
1126 unsigned char pcie_mpss : 3 ;
1127 u8 rom_base_reg ;
1128 u8 pin ;
1129 struct pci_driver *driver ;
1130 u64 dma_mask ;
1131 struct device_dma_parameters dma_parms ;
1132 pci_power_t current_state ;
1133 int pm_cap ;
1134 unsigned char pme_support : 5 ;
1135 unsigned char pme_interrupt : 1 ;
1136 unsigned char pme_poll : 1 ;
1137 unsigned char d1_support : 1 ;
1138 unsigned char d2_support : 1 ;
1139 unsigned char no_d1d2 : 1 ;
1140 unsigned char mmio_always_on : 1 ;
1141 unsigned char wakeup_prepared : 1 ;
1142 unsigned int d3_delay ;
1143 struct pcie_link_state *link_state ;
1144 pci_channel_state_t error_state ;
1145 struct device dev ;
1146 int cfg_size ;
1147 unsigned int irq ;
1148 struct resource resource[17U] ;
1149 unsigned char transparent : 1 ;
1150 unsigned char multifunction : 1 ;
1151 unsigned char is_added : 1 ;
1152 unsigned char is_busmaster : 1 ;
1153 unsigned char no_msi : 1 ;
1154 unsigned char block_cfg_access : 1 ;
1155 unsigned char broken_parity_status : 1 ;
1156 unsigned char irq_reroute_variant : 2 ;
1157 unsigned char msi_enabled : 1 ;
1158 unsigned char msix_enabled : 1 ;
1159 unsigned char ari_enabled : 1 ;
1160 unsigned char is_managed : 1 ;
1161 unsigned char is_pcie : 1 ;
1162 unsigned char needs_freset : 1 ;
1163 unsigned char state_saved : 1 ;
1164 unsigned char is_physfn : 1 ;
1165 unsigned char is_virtfn : 1 ;
1166 unsigned char reset_fn : 1 ;
1167 unsigned char is_hotplug_bridge : 1 ;
1168 unsigned char __aer_firmware_first_valid : 1 ;
1169 unsigned char __aer_firmware_first : 1 ;
1170 pci_dev_flags_t dev_flags ;
1171 atomic_t enable_cnt ;
1172 u32 saved_config_space[16U] ;
1173 struct hlist_head saved_cap_space ;
1174 struct bin_attribute *rom_attr ;
1175 int rom_attr_enabled ;
1176 struct bin_attribute *res_attr[17U] ;
1177 struct bin_attribute *res_attr_wc[17U] ;
1178 struct list_head msi_list ;
1179 struct kset *msi_kset ;
1180 struct pci_vpd *vpd ;
1181 union __anonunion_ldv_16934_137 ldv_16934 ;
1182 struct pci_ats *ats ;
1183};
1184#line 403
1185struct pci_ops;
1186#line 403 "include/linux/pci.h"
1187struct pci_bus {
1188 struct list_head node ;
1189 struct pci_bus *parent ;
1190 struct list_head children ;
1191 struct list_head devices ;
1192 struct pci_dev *self ;
1193 struct list_head slots ;
1194 struct resource *resource[4U] ;
1195 struct list_head resources ;
1196 struct pci_ops *ops ;
1197 void *sysdata ;
1198 struct proc_dir_entry *procdir ;
1199 unsigned char number ;
1200 unsigned char primary ;
1201 unsigned char secondary ;
1202 unsigned char subordinate ;
1203 unsigned char max_bus_speed ;
1204 unsigned char cur_bus_speed ;
1205 char name[48U] ;
1206 unsigned short bridge_ctl ;
1207 pci_bus_flags_t bus_flags ;
1208 struct device *bridge ;
1209 struct device dev ;
1210 struct bin_attribute *legacy_io ;
1211 struct bin_attribute *legacy_mem ;
1212 unsigned char is_added : 1 ;
1213};
1214#line 455 "include/linux/pci.h"
1215struct pci_ops {
1216 int (*read)(struct pci_bus * , unsigned int , int , int , u32 * ) ;
1217 int (*write)(struct pci_bus * , unsigned int , int , int , u32 ) ;
1218};
1219#line 490 "include/linux/pci.h"
1220struct pci_dynids {
1221 spinlock_t lock ;
1222 struct list_head list ;
1223};
1224#line 503 "include/linux/pci.h"
1225typedef unsigned int pci_ers_result_t;
1226#line 512 "include/linux/pci.h"
1227struct pci_error_handlers {
1228 pci_ers_result_t (*error_detected)(struct pci_dev * , enum pci_channel_state ) ;
1229 pci_ers_result_t (*mmio_enabled)(struct pci_dev * ) ;
1230 pci_ers_result_t (*link_reset)(struct pci_dev * ) ;
1231 pci_ers_result_t (*slot_reset)(struct pci_dev * ) ;
1232 void (*resume)(struct pci_dev * ) ;
1233};
1234#line 540 "include/linux/pci.h"
1235struct pci_driver {
1236 struct list_head node ;
1237 char const *name ;
1238 struct pci_device_id const *id_table ;
1239 int (*probe)(struct pci_dev * , struct pci_device_id const * ) ;
1240 void (*remove)(struct pci_dev * ) ;
1241 int (*suspend)(struct pci_dev * , pm_message_t ) ;
1242 int (*suspend_late)(struct pci_dev * , pm_message_t ) ;
1243 int (*resume_early)(struct pci_dev * ) ;
1244 int (*resume)(struct pci_dev * ) ;
1245 void (*shutdown)(struct pci_dev * ) ;
1246 struct pci_error_handlers *err_handler ;
1247 struct device_driver driver ;
1248 struct pci_dynids dynids ;
1249};
1250#line 986 "include/linux/pci.h"
1251struct scatterlist {
1252 unsigned long sg_magic ;
1253 unsigned long page_link ;
1254 unsigned int offset ;
1255 unsigned int length ;
1256 dma_addr_t dma_address ;
1257 unsigned int dma_length ;
1258};
1259#line 1134
1260struct prio_tree_node;
1261#line 1134 "include/linux/pci.h"
1262struct raw_prio_tree_node {
1263 struct prio_tree_node *left ;
1264 struct prio_tree_node *right ;
1265 struct prio_tree_node *parent ;
1266};
1267#line 19 "include/linux/prio_tree.h"
1268struct prio_tree_node {
1269 struct prio_tree_node *left ;
1270 struct prio_tree_node *right ;
1271 struct prio_tree_node *parent ;
1272 unsigned long start ;
1273 unsigned long last ;
1274};
1275#line 116
1276struct address_space;
1277#line 116
1278struct address_space;
1279#line 117 "include/linux/prio_tree.h"
1280union __anonunion_ldv_17806_139 {
1281 unsigned long index ;
1282 void *freelist ;
1283};
1284#line 117 "include/linux/prio_tree.h"
1285struct __anonstruct_ldv_17816_143 {
1286 unsigned short inuse ;
1287 unsigned short objects : 15 ;
1288 unsigned char frozen : 1 ;
1289};
1290#line 117 "include/linux/prio_tree.h"
1291union __anonunion_ldv_17817_142 {
1292 atomic_t _mapcount ;
1293 struct __anonstruct_ldv_17816_143 ldv_17816 ;
1294};
1295#line 117 "include/linux/prio_tree.h"
1296struct __anonstruct_ldv_17819_141 {
1297 union __anonunion_ldv_17817_142 ldv_17817 ;
1298 atomic_t _count ;
1299};
1300#line 117 "include/linux/prio_tree.h"
1301union __anonunion_ldv_17820_140 {
1302 unsigned long counters ;
1303 struct __anonstruct_ldv_17819_141 ldv_17819 ;
1304};
1305#line 117 "include/linux/prio_tree.h"
1306struct __anonstruct_ldv_17821_138 {
1307 union __anonunion_ldv_17806_139 ldv_17806 ;
1308 union __anonunion_ldv_17820_140 ldv_17820 ;
1309};
1310#line 117 "include/linux/prio_tree.h"
1311struct __anonstruct_ldv_17828_145 {
1312 struct page *next ;
1313 int pages ;
1314 int pobjects ;
1315};
1316#line 117 "include/linux/prio_tree.h"
1317union __anonunion_ldv_17829_144 {
1318 struct list_head lru ;
1319 struct __anonstruct_ldv_17828_145 ldv_17828 ;
1320};
1321#line 117 "include/linux/prio_tree.h"
1322union __anonunion_ldv_17834_146 {
1323 unsigned long private ;
1324 struct kmem_cache *slab ;
1325 struct page *first_page ;
1326};
1327#line 117 "include/linux/prio_tree.h"
1328struct page {
1329 unsigned long flags ;
1330 struct address_space *mapping ;
1331 struct __anonstruct_ldv_17821_138 ldv_17821 ;
1332 union __anonunion_ldv_17829_144 ldv_17829 ;
1333 union __anonunion_ldv_17834_146 ldv_17834 ;
1334 unsigned long debug_flags ;
1335};
1336#line 192 "include/linux/mm_types.h"
1337struct __anonstruct_vm_set_148 {
1338 struct list_head list ;
1339 void *parent ;
1340 struct vm_area_struct *head ;
1341};
1342#line 192 "include/linux/mm_types.h"
1343union __anonunion_shared_147 {
1344 struct __anonstruct_vm_set_148 vm_set ;
1345 struct raw_prio_tree_node prio_tree_node ;
1346};
1347#line 192
1348struct anon_vma;
1349#line 192
1350struct vm_operations_struct;
1351#line 192
1352struct mempolicy;
1353#line 192 "include/linux/mm_types.h"
1354struct vm_area_struct {
1355 struct mm_struct *vm_mm ;
1356 unsigned long vm_start ;
1357 unsigned long vm_end ;
1358 struct vm_area_struct *vm_next ;
1359 struct vm_area_struct *vm_prev ;
1360 pgprot_t vm_page_prot ;
1361 unsigned long vm_flags ;
1362 struct rb_node vm_rb ;
1363 union __anonunion_shared_147 shared ;
1364 struct list_head anon_vma_chain ;
1365 struct anon_vma *anon_vma ;
1366 struct vm_operations_struct const *vm_ops ;
1367 unsigned long vm_pgoff ;
1368 struct file *vm_file ;
1369 void *vm_private_data ;
1370 struct mempolicy *vm_policy ;
1371};
1372#line 255 "include/linux/mm_types.h"
1373struct core_thread {
1374 struct task_struct *task ;
1375 struct core_thread *next ;
1376};
1377#line 261 "include/linux/mm_types.h"
1378struct core_state {
1379 atomic_t nr_threads ;
1380 struct core_thread dumper ;
1381 struct completion startup ;
1382};
1383#line 274 "include/linux/mm_types.h"
1384struct mm_rss_stat {
1385 atomic_long_t count[3U] ;
1386};
1387#line 287
1388struct linux_binfmt;
1389#line 287
1390struct mmu_notifier_mm;
1391#line 287 "include/linux/mm_types.h"
1392struct mm_struct {
1393 struct vm_area_struct *mmap ;
1394 struct rb_root mm_rb ;
1395 struct vm_area_struct *mmap_cache ;
1396 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1397 unsigned long , unsigned long ) ;
1398 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1399 unsigned long mmap_base ;
1400 unsigned long task_size ;
1401 unsigned long cached_hole_size ;
1402 unsigned long free_area_cache ;
1403 pgd_t *pgd ;
1404 atomic_t mm_users ;
1405 atomic_t mm_count ;
1406 int map_count ;
1407 spinlock_t page_table_lock ;
1408 struct rw_semaphore mmap_sem ;
1409 struct list_head mmlist ;
1410 unsigned long hiwater_rss ;
1411 unsigned long hiwater_vm ;
1412 unsigned long total_vm ;
1413 unsigned long locked_vm ;
1414 unsigned long pinned_vm ;
1415 unsigned long shared_vm ;
1416 unsigned long exec_vm ;
1417 unsigned long stack_vm ;
1418 unsigned long reserved_vm ;
1419 unsigned long def_flags ;
1420 unsigned long nr_ptes ;
1421 unsigned long start_code ;
1422 unsigned long end_code ;
1423 unsigned long start_data ;
1424 unsigned long end_data ;
1425 unsigned long start_brk ;
1426 unsigned long brk ;
1427 unsigned long start_stack ;
1428 unsigned long arg_start ;
1429 unsigned long arg_end ;
1430 unsigned long env_start ;
1431 unsigned long env_end ;
1432 unsigned long saved_auxv[44U] ;
1433 struct mm_rss_stat rss_stat ;
1434 struct linux_binfmt *binfmt ;
1435 cpumask_var_t cpu_vm_mask_var ;
1436 mm_context_t context ;
1437 unsigned int faultstamp ;
1438 unsigned int token_priority ;
1439 unsigned int last_interval ;
1440 unsigned long flags ;
1441 struct core_state *core_state ;
1442 spinlock_t ioctx_lock ;
1443 struct hlist_head ioctx_list ;
1444 struct task_struct *owner ;
1445 struct file *exe_file ;
1446 unsigned long num_exe_file_vmas ;
1447 struct mmu_notifier_mm *mmu_notifier_mm ;
1448 pgtable_t pmd_huge_pte ;
1449 struct cpumask cpumask_allocation ;
1450};
1451#line 178 "include/linux/mm.h"
1452struct vm_fault {
1453 unsigned int flags ;
1454 unsigned long pgoff ;
1455 void *virtual_address ;
1456 struct page *page ;
1457};
1458#line 195 "include/linux/mm.h"
1459struct vm_operations_struct {
1460 void (*open)(struct vm_area_struct * ) ;
1461 void (*close)(struct vm_area_struct * ) ;
1462 int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
1463 int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
1464 int (*access)(struct vm_area_struct * , unsigned long , void * , int , int ) ;
1465 int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
1466 struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long ) ;
1467 int (*migrate)(struct vm_area_struct * , nodemask_t const * , nodemask_t const * ,
1468 unsigned long ) ;
1469};
1470#line 31 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pci_64.h"
1471struct dma_attrs {
1472 unsigned long flags[1U] ;
1473};
1474#line 67 "include/linux/dma-attrs.h"
1475enum dma_data_direction {
1476 DMA_BIDIRECTIONAL = 0,
1477 DMA_TO_DEVICE = 1,
1478 DMA_FROM_DEVICE = 2,
1479 DMA_NONE = 3
1480} ;
1481#line 268 "include/linux/scatterlist.h"
1482struct dma_map_ops {
1483 void *(*alloc)(struct device * , size_t , dma_addr_t * , gfp_t , struct dma_attrs * ) ;
1484 void (*free)(struct device * , size_t , void * , dma_addr_t , struct dma_attrs * ) ;
1485 int (*mmap)(struct device * , struct vm_area_struct * , void * , dma_addr_t ,
1486 size_t , struct dma_attrs * ) ;
1487 dma_addr_t (*map_page)(struct device * , struct page * , unsigned long , size_t ,
1488 enum dma_data_direction , struct dma_attrs * ) ;
1489 void (*unmap_page)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
1490 struct dma_attrs * ) ;
1491 int (*map_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
1492 struct dma_attrs * ) ;
1493 void (*unmap_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
1494 struct dma_attrs * ) ;
1495 void (*sync_single_for_cpu)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
1496 void (*sync_single_for_device)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
1497 void (*sync_sg_for_cpu)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
1498 void (*sync_sg_for_device)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
1499 int (*mapping_error)(struct device * , dma_addr_t ) ;
1500 int (*dma_supported)(struct device * , u64 ) ;
1501 int (*set_dma_mask)(struct device * , u64 ) ;
1502 int is_phys ;
1503};
1504#line 1763 "include/linux/pci.h"
1505struct tifm_device_id {
1506 unsigned char type ;
1507};
1508#line 89 "include/linux/tifm.h"
1509struct tifm_driver;
1510#line 89
1511struct tifm_driver;
1512#line 90 "include/linux/tifm.h"
1513struct tifm_dev {
1514 char *addr ;
1515 spinlock_t lock ;
1516 unsigned char type ;
1517 unsigned int socket_id ;
1518 void (*card_event)(struct tifm_dev * ) ;
1519 void (*data_event)(struct tifm_dev * ) ;
1520 struct device dev ;
1521};
1522#line 102 "include/linux/tifm.h"
1523struct tifm_driver {
1524 struct tifm_device_id *id_table ;
1525 int (*probe)(struct tifm_dev * ) ;
1526 void (*remove)(struct tifm_dev * ) ;
1527 int (*suspend)(struct tifm_dev * , pm_message_t ) ;
1528 int (*resume)(struct tifm_dev * ) ;
1529 struct device_driver driver ;
1530};
1531#line 113 "include/linux/tifm.h"
1532struct tifm_adapter {
1533 char *addr ;
1534 spinlock_t lock ;
1535 unsigned int irq_status ;
1536 unsigned int socket_change_set ;
1537 unsigned int id ;
1538 unsigned int num_sockets ;
1539 struct completion *finish_me ;
1540 struct work_struct media_switcher ;
1541 struct device dev ;
1542 void (*eject)(struct tifm_adapter * , struct tifm_dev * ) ;
1543 int (*has_ms_pif)(struct tifm_adapter * , struct tifm_dev * ) ;
1544 struct tifm_dev *sockets[0U] ;
1545};
1546#line 163 "include/linux/tifm.h"
1547struct idr_layer {
1548 unsigned long bitmap ;
1549 struct idr_layer *ary[64U] ;
1550 int count ;
1551 int layer ;
1552 struct rcu_head rcu_head ;
1553};
1554#line 58 "include/linux/idr.h"
1555struct idr {
1556 struct idr_layer *top ;
1557 struct idr_layer *id_free ;
1558 int layers ;
1559 int id_free_cnt ;
1560 spinlock_t lock ;
1561};
1562#line 1 "<compiler builtins>"
1563long __builtin_expect(long , long ) ;
1564#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
1565void ldv_spin_lock(void) ;
1566#line 3
1567void ldv_spin_unlock(void) ;
1568#line 4
1569int ldv_spin_trylock(void) ;
1570#line 101 "include/linux/printk.h"
1571extern int printk(char const * , ...) ;
1572#line 320 "include/linux/kernel.h"
1573extern int sprintf(char * , char const * , ...) ;
1574#line 93 "include/linux/spinlock.h"
1575extern void __raw_spin_lock_init(raw_spinlock_t * , char const * , struct lock_class_key * ) ;
1576#line 22 "include/linux/spinlock_api_smp.h"
1577extern void _raw_spin_lock(raw_spinlock_t * ) ;
1578#line 39
1579extern void _raw_spin_unlock(raw_spinlock_t * ) ;
1580#line 272 "include/linux/spinlock.h"
1581__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
1582{
1583
1584 {
1585#line 274
1586 return ((struct raw_spinlock *)lock);
1587}
1588}
1589#line 283 "include/linux/spinlock.h"
1590__inline static void ldv_spin_lock_1(spinlock_t *lock )
1591{ struct raw_spinlock *__cil_tmp2 ;
1592
1593 {
1594 {
1595#line 285
1596 __cil_tmp2 = (struct raw_spinlock *)lock;
1597#line 285
1598 _raw_spin_lock(__cil_tmp2);
1599 }
1600#line 286
1601 return;
1602}
1603}
1604#line 283
1605__inline static void spin_lock(spinlock_t *lock ) ;
1606#line 323 "include/linux/spinlock.h"
1607__inline static void ldv_spin_unlock_5(spinlock_t *lock )
1608{ struct raw_spinlock *__cil_tmp2 ;
1609
1610 {
1611 {
1612#line 325
1613 __cil_tmp2 = (struct raw_spinlock *)lock;
1614#line 325
1615 _raw_spin_unlock(__cil_tmp2);
1616 }
1617#line 326
1618 return;
1619}
1620}
1621#line 323
1622__inline static void spin_unlock(spinlock_t *lock ) ;
1623#line 304 "include/linux/workqueue.h"
1624extern struct workqueue_struct *__alloc_workqueue_key(char const * , unsigned int ,
1625 int , struct lock_class_key * ,
1626 char const * , ...) ;
1627#line 366
1628extern void destroy_workqueue(struct workqueue_struct * ) ;
1629#line 368
1630extern int queue_work(struct workqueue_struct * , struct work_struct * ) ;
1631#line 376
1632extern void flush_workqueue(struct workqueue_struct * ) ;
1633#line 212 "include/linux/kobject.h"
1634extern int add_uevent_var(struct kobj_uevent_env * , char const * , ...) ;
1635#line 161 "include/linux/slab.h"
1636extern void kfree(void const * ) ;
1637#line 220 "include/linux/slub_def.h"
1638extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
1639#line 223
1640void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
1641#line 353 "include/linux/slab.h"
1642__inline static void *kzalloc(size_t size , gfp_t flags ) ;
1643#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
1644extern void *__VERIFIER_nondet_pointer(void) ;
1645#line 11
1646void ldv_check_alloc_flags(gfp_t flags ) ;
1647#line 12
1648void ldv_check_alloc_nonatomic(void) ;
1649#line 14
1650struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
1651#line 120 "include/linux/device.h"
1652extern int __bus_register(struct bus_type * , struct lock_class_key * ) ;
1653#line 122
1654extern void bus_unregister(struct bus_type * ) ;
1655#line 238
1656extern int driver_register(struct device_driver * ) ;
1657#line 239
1658extern void driver_unregister(struct device_driver * ) ;
1659#line 363
1660extern int __class_register(struct class * , struct lock_class_key * ) ;
1661#line 365
1662extern void class_unregister(struct class * ) ;
1663#line 695
1664extern int dev_set_name(struct device * , char const * , ...) ;
1665#line 779
1666extern void device_unregister(struct device * ) ;
1667#line 780
1668extern void device_initialize(struct device * ) ;
1669#line 781
1670extern int device_add(struct device * ) ;
1671#line 782
1672extern void device_del(struct device * ) ;
1673#line 792
1674extern void *dev_get_drvdata(struct device const * ) ;
1675#line 855
1676extern struct device *get_device(struct device * ) ;
1677#line 856
1678extern void put_device(struct device * ) ;
1679#line 737 "include/linux/mm.h"
1680__inline static void *lowmem_page_address(struct page const *page )
1681{ long __cil_tmp2 ;
1682 long __cil_tmp3 ;
1683 long __cil_tmp4 ;
1684 unsigned long long __cil_tmp5 ;
1685 unsigned long long __cil_tmp6 ;
1686 unsigned long __cil_tmp7 ;
1687 unsigned long __cil_tmp8 ;
1688
1689 {
1690 {
1691#line 739
1692 __cil_tmp2 = (long )page;
1693#line 739
1694 __cil_tmp3 = __cil_tmp2 + 24189255811072L;
1695#line 739
1696 __cil_tmp4 = __cil_tmp3 / 64L;
1697#line 739
1698 __cil_tmp5 = (unsigned long long )__cil_tmp4;
1699#line 739
1700 __cil_tmp6 = __cil_tmp5 << 12;
1701#line 739
1702 __cil_tmp7 = (unsigned long )__cil_tmp6;
1703#line 739
1704 __cil_tmp8 = __cil_tmp7 + 0xffff880000000000UL;
1705#line 739
1706 return ((void *)__cil_tmp8);
1707 }
1708}
1709}
1710#line 95 "include/linux/scatterlist.h"
1711__inline static struct page *sg_page(struct scatterlist *sg )
1712{ long tmp ;
1713 long tmp___0 ;
1714 unsigned long __cil_tmp4 ;
1715 int __cil_tmp5 ;
1716 long __cil_tmp6 ;
1717 unsigned long __cil_tmp7 ;
1718 unsigned long __cil_tmp8 ;
1719 unsigned long __cil_tmp9 ;
1720 int __cil_tmp10 ;
1721 long __cil_tmp11 ;
1722 long __cil_tmp12 ;
1723 unsigned long __cil_tmp13 ;
1724 unsigned long __cil_tmp14 ;
1725 unsigned long __cil_tmp15 ;
1726 unsigned long __cil_tmp16 ;
1727
1728 {
1729 {
1730#line 98
1731 __cil_tmp4 = *((unsigned long *)sg);
1732#line 98
1733 __cil_tmp5 = __cil_tmp4 != 2271560481UL;
1734#line 98
1735 __cil_tmp6 = (long )__cil_tmp5;
1736#line 98
1737 tmp = __builtin_expect(__cil_tmp6, 0L);
1738 }
1739#line 98
1740 if (tmp != 0L) {
1741#line 98
1742 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"include/linux/scatterlist.h"),
1743 "i" (98), "i" (12UL));
1744 ldv_20527: ;
1745#line 98
1746 goto ldv_20527;
1747 } else {
1748
1749 }
1750 {
1751#line 99
1752 __cil_tmp7 = (unsigned long )sg;
1753#line 99
1754 __cil_tmp8 = __cil_tmp7 + 8;
1755#line 99
1756 __cil_tmp9 = *((unsigned long *)__cil_tmp8);
1757#line 99
1758 __cil_tmp10 = (int )__cil_tmp9;
1759#line 99
1760 __cil_tmp11 = (long )__cil_tmp10;
1761#line 99
1762 __cil_tmp12 = __cil_tmp11 & 1L;
1763#line 99
1764 tmp___0 = __builtin_expect(__cil_tmp12, 0L);
1765 }
1766#line 99
1767 if (tmp___0 != 0L) {
1768#line 99
1769 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"include/linux/scatterlist.h"),
1770 "i" (99), "i" (12UL));
1771 ldv_20528: ;
1772#line 99
1773 goto ldv_20528;
1774 } else {
1775
1776 }
1777 {
1778#line 101
1779 __cil_tmp13 = (unsigned long )sg;
1780#line 101
1781 __cil_tmp14 = __cil_tmp13 + 8;
1782#line 101
1783 __cil_tmp15 = *((unsigned long *)__cil_tmp14);
1784#line 101
1785 __cil_tmp16 = __cil_tmp15 & 0xfffffffffffffffcUL;
1786#line 101
1787 return ((struct page *)__cil_tmp16);
1788 }
1789}
1790}
1791#line 199 "include/linux/scatterlist.h"
1792__inline static void *sg_virt(struct scatterlist *sg )
1793{ struct page *tmp ;
1794 void *tmp___0 ;
1795 struct page const *__cil_tmp4 ;
1796 unsigned long __cil_tmp5 ;
1797 unsigned long __cil_tmp6 ;
1798 unsigned int __cil_tmp7 ;
1799 unsigned long __cil_tmp8 ;
1800
1801 {
1802 {
1803#line 201
1804 tmp = sg_page(sg);
1805#line 201
1806 __cil_tmp4 = (struct page const *)tmp;
1807#line 201
1808 tmp___0 = lowmem_page_address(__cil_tmp4);
1809 }
1810 {
1811#line 201
1812 __cil_tmp5 = (unsigned long )sg;
1813#line 201
1814 __cil_tmp6 = __cil_tmp5 + 16;
1815#line 201
1816 __cil_tmp7 = *((unsigned int *)__cil_tmp6);
1817#line 201
1818 __cil_tmp8 = (unsigned long )__cil_tmp7;
1819#line 201
1820 return (tmp___0 + __cil_tmp8);
1821 }
1822}
1823}
1824#line 204
1825extern struct scatterlist *sg_next(struct scatterlist * ) ;
1826#line 60 "include/linux/dma-mapping.h"
1827__inline static int valid_dma_direction(int dma_direction )
1828{ int tmp ;
1829
1830 {
1831#line 62
1832 if (dma_direction == 0) {
1833#line 62
1834 tmp = 1;
1835 } else
1836#line 62
1837 if (dma_direction == 1) {
1838#line 62
1839 tmp = 1;
1840 } else
1841#line 62
1842 if (dma_direction == 2) {
1843#line 62
1844 tmp = 1;
1845 } else {
1846#line 62
1847 tmp = 0;
1848 }
1849#line 62
1850 return (tmp);
1851}
1852}
1853#line 131 "include/linux/kmemcheck.h"
1854__inline static void kmemcheck_mark_initialized(void *address , unsigned int n )
1855{
1856
1857 {
1858#line 133
1859 return;
1860}
1861}
1862#line 45 "include/linux/dma-debug.h"
1863extern void debug_dma_map_sg(struct device * , struct scatterlist * , int , int ,
1864 int ) ;
1865#line 48
1866extern void debug_dma_unmap_sg(struct device * , struct scatterlist * , int , int ) ;
1867#line 29 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/dma-mapping.h"
1868extern struct dma_map_ops *dma_ops ;
1869#line 31 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/dma-mapping.h"
1870__inline static struct dma_map_ops *get_dma_ops(struct device *dev )
1871{ long tmp ;
1872 struct device *__cil_tmp3 ;
1873 unsigned long __cil_tmp4 ;
1874 unsigned long __cil_tmp5 ;
1875 int __cil_tmp6 ;
1876 long __cil_tmp7 ;
1877 struct dma_map_ops *__cil_tmp8 ;
1878 unsigned long __cil_tmp9 ;
1879 unsigned long __cil_tmp10 ;
1880 unsigned long __cil_tmp11 ;
1881 unsigned long __cil_tmp12 ;
1882 struct dma_map_ops *__cil_tmp13 ;
1883 unsigned long __cil_tmp14 ;
1884 unsigned long __cil_tmp15 ;
1885 unsigned long __cil_tmp16 ;
1886 unsigned long __cil_tmp17 ;
1887
1888 {
1889 {
1890#line 36
1891 __cil_tmp3 = (struct device *)0;
1892#line 36
1893 __cil_tmp4 = (unsigned long )__cil_tmp3;
1894#line 36
1895 __cil_tmp5 = (unsigned long )dev;
1896#line 36
1897 __cil_tmp6 = __cil_tmp5 == __cil_tmp4;
1898#line 36
1899 __cil_tmp7 = (long )__cil_tmp6;
1900#line 36
1901 tmp = __builtin_expect(__cil_tmp7, 0L);
1902 }
1903#line 36
1904 if (tmp != 0L) {
1905#line 37
1906 return (dma_ops);
1907 } else {
1908 {
1909#line 36
1910 __cil_tmp8 = (struct dma_map_ops *)0;
1911#line 36
1912 __cil_tmp9 = (unsigned long )__cil_tmp8;
1913#line 36
1914 __cil_tmp10 = 968 + 8;
1915#line 36
1916 __cil_tmp11 = (unsigned long )dev;
1917#line 36
1918 __cil_tmp12 = __cil_tmp11 + __cil_tmp10;
1919#line 36
1920 __cil_tmp13 = *((struct dma_map_ops **)__cil_tmp12);
1921#line 36
1922 __cil_tmp14 = (unsigned long )__cil_tmp13;
1923#line 36
1924 if (__cil_tmp14 == __cil_tmp9) {
1925#line 37
1926 return (dma_ops);
1927 } else {
1928 {
1929#line 39
1930 __cil_tmp15 = 968 + 8;
1931#line 39
1932 __cil_tmp16 = (unsigned long )dev;
1933#line 39
1934 __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
1935#line 39
1936 return (*((struct dma_map_ops **)__cil_tmp17));
1937 }
1938 }
1939 }
1940 }
1941}
1942}
1943#line 42 "include/asm-generic/dma-mapping-common.h"
1944__inline static int dma_map_sg_attrs(struct device *dev , struct scatterlist *sg ,
1945 int nents , enum dma_data_direction dir , struct dma_attrs *attrs )
1946{ struct dma_map_ops *ops ;
1947 struct dma_map_ops *tmp ;
1948 int i ;
1949 int ents ;
1950 struct scatterlist *s ;
1951 void *tmp___0 ;
1952 int tmp___1 ;
1953 long tmp___2 ;
1954 unsigned long __cil_tmp14 ;
1955 unsigned long __cil_tmp15 ;
1956 unsigned int __cil_tmp16 ;
1957 int __cil_tmp17 ;
1958 int __cil_tmp18 ;
1959 long __cil_tmp19 ;
1960 unsigned long __cil_tmp20 ;
1961 unsigned long __cil_tmp21 ;
1962 int (*__cil_tmp22)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
1963 struct dma_attrs * ) ;
1964 int __cil_tmp23 ;
1965
1966 {
1967 {
1968#line 46
1969 tmp = get_dma_ops(dev);
1970#line 46
1971 ops = tmp;
1972#line 50
1973 i = 0;
1974#line 50
1975 s = sg;
1976 }
1977#line 50
1978 goto ldv_20987;
1979 ldv_20986:
1980 {
1981#line 51
1982 tmp___0 = sg_virt(s);
1983#line 51
1984 __cil_tmp14 = (unsigned long )s;
1985#line 51
1986 __cil_tmp15 = __cil_tmp14 + 20;
1987#line 51
1988 __cil_tmp16 = *((unsigned int *)__cil_tmp15);
1989#line 51
1990 kmemcheck_mark_initialized(tmp___0, __cil_tmp16);
1991#line 50
1992 i = i + 1;
1993#line 50
1994 s = sg_next(s);
1995 }
1996 ldv_20987: ;
1997#line 50
1998 if (i < nents) {
1999#line 51
2000 goto ldv_20986;
2001 } else {
2002#line 53
2003 goto ldv_20988;
2004 }
2005 ldv_20988:
2006 {
2007#line 52
2008 __cil_tmp17 = (int )dir;
2009#line 52
2010 tmp___1 = valid_dma_direction(__cil_tmp17);
2011#line 52
2012 __cil_tmp18 = tmp___1 == 0;
2013#line 52
2014 __cil_tmp19 = (long )__cil_tmp18;
2015#line 52
2016 tmp___2 = __builtin_expect(__cil_tmp19, 0L);
2017 }
2018#line 52
2019 if (tmp___2 != 0L) {
2020#line 52
2021 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"include/asm-generic/dma-mapping-common.h"),
2022 "i" (52), "i" (12UL));
2023 ldv_20989: ;
2024#line 52
2025 goto ldv_20989;
2026 } else {
2027
2028 }
2029 {
2030#line 53
2031 __cil_tmp20 = (unsigned long )ops;
2032#line 53
2033 __cil_tmp21 = __cil_tmp20 + 40;
2034#line 53
2035 __cil_tmp22 = *((int (**)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
2036 struct dma_attrs * ))__cil_tmp21);
2037#line 53
2038 ents = (*__cil_tmp22)(dev, sg, nents, dir, attrs);
2039#line 54
2040 __cil_tmp23 = (int )dir;
2041#line 54
2042 debug_dma_map_sg(dev, sg, nents, ents, __cil_tmp23);
2043 }
2044#line 56
2045 return (ents);
2046}
2047}
2048#line 59 "include/asm-generic/dma-mapping-common.h"
2049__inline static void dma_unmap_sg_attrs(struct device *dev , struct scatterlist *sg ,
2050 int nents , enum dma_data_direction dir ,
2051 struct dma_attrs *attrs )
2052{ struct dma_map_ops *ops ;
2053 struct dma_map_ops *tmp ;
2054 int tmp___0 ;
2055 long tmp___1 ;
2056 int __cil_tmp10 ;
2057 int __cil_tmp11 ;
2058 long __cil_tmp12 ;
2059 int __cil_tmp13 ;
2060 void (*__cil_tmp14)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
2061 struct dma_attrs * ) ;
2062 unsigned long __cil_tmp15 ;
2063 unsigned long __cil_tmp16 ;
2064 unsigned long __cil_tmp17 ;
2065 void (*__cil_tmp18)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
2066 struct dma_attrs * ) ;
2067 unsigned long __cil_tmp19 ;
2068 unsigned long __cil_tmp20 ;
2069 unsigned long __cil_tmp21 ;
2070 void (*__cil_tmp22)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
2071 struct dma_attrs * ) ;
2072
2073 {
2074 {
2075#line 63
2076 tmp = get_dma_ops(dev);
2077#line 63
2078 ops = tmp;
2079#line 65
2080 __cil_tmp10 = (int )dir;
2081#line 65
2082 tmp___0 = valid_dma_direction(__cil_tmp10);
2083#line 65
2084 __cil_tmp11 = tmp___0 == 0;
2085#line 65
2086 __cil_tmp12 = (long )__cil_tmp11;
2087#line 65
2088 tmp___1 = __builtin_expect(__cil_tmp12, 0L);
2089 }
2090#line 65
2091 if (tmp___1 != 0L) {
2092#line 65
2093 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"include/asm-generic/dma-mapping-common.h"),
2094 "i" (65), "i" (12UL));
2095 ldv_20998: ;
2096#line 65
2097 goto ldv_20998;
2098 } else {
2099
2100 }
2101 {
2102#line 66
2103 __cil_tmp13 = (int )dir;
2104#line 66
2105 debug_dma_unmap_sg(dev, sg, nents, __cil_tmp13);
2106 }
2107 {
2108#line 67
2109 __cil_tmp14 = (void (*)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
2110 struct dma_attrs * ))0;
2111#line 67
2112 __cil_tmp15 = (unsigned long )__cil_tmp14;
2113#line 67
2114 __cil_tmp16 = (unsigned long )ops;
2115#line 67
2116 __cil_tmp17 = __cil_tmp16 + 48;
2117#line 67
2118 __cil_tmp18 = *((void (**)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
2119 struct dma_attrs * ))__cil_tmp17);
2120#line 67
2121 __cil_tmp19 = (unsigned long )__cil_tmp18;
2122#line 67
2123 if (__cil_tmp19 != __cil_tmp15) {
2124 {
2125#line 68
2126 __cil_tmp20 = (unsigned long )ops;
2127#line 68
2128 __cil_tmp21 = __cil_tmp20 + 48;
2129#line 68
2130 __cil_tmp22 = *((void (**)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
2131 struct dma_attrs * ))__cil_tmp21);
2132#line 68
2133 (*__cil_tmp22)(dev, sg, nents, dir, attrs);
2134 }
2135 } else {
2136
2137 }
2138 }
2139#line 69
2140 return;
2141}
2142}
2143#line 57 "include/asm-generic/pci-dma-compat.h"
2144__inline static int pci_map_sg(struct pci_dev *hwdev , struct scatterlist *sg , int nents ,
2145 int direction )
2146{ struct device *tmp ;
2147 int tmp___0 ;
2148 struct pci_dev *__cil_tmp7 ;
2149 unsigned long __cil_tmp8 ;
2150 unsigned long __cil_tmp9 ;
2151 unsigned long __cil_tmp10 ;
2152 unsigned long __cil_tmp11 ;
2153 enum dma_data_direction __cil_tmp12 ;
2154 struct dma_attrs *__cil_tmp13 ;
2155
2156 {
2157 {
2158#line 60
2159 __cil_tmp7 = (struct pci_dev *)0;
2160#line 60
2161 __cil_tmp8 = (unsigned long )__cil_tmp7;
2162#line 60
2163 __cil_tmp9 = (unsigned long )hwdev;
2164#line 60
2165 if (__cil_tmp9 != __cil_tmp8) {
2166#line 60
2167 __cil_tmp10 = (unsigned long )hwdev;
2168#line 60
2169 __cil_tmp11 = __cil_tmp10 + 144;
2170#line 60
2171 tmp = (struct device *)__cil_tmp11;
2172 } else {
2173#line 60
2174 tmp = (struct device *)0;
2175 }
2176 }
2177 {
2178#line 60
2179 __cil_tmp12 = (enum dma_data_direction )direction;
2180#line 60
2181 __cil_tmp13 = (struct dma_attrs *)0;
2182#line 60
2183 tmp___0 = dma_map_sg_attrs(tmp, sg, nents, __cil_tmp12, __cil_tmp13);
2184 }
2185#line 60
2186 return (tmp___0);
2187}
2188}
2189#line 64 "include/asm-generic/pci-dma-compat.h"
2190__inline static void pci_unmap_sg(struct pci_dev *hwdev , struct scatterlist *sg ,
2191 int nents , int direction )
2192{ struct device *tmp ;
2193 struct pci_dev *__cil_tmp6 ;
2194 unsigned long __cil_tmp7 ;
2195 unsigned long __cil_tmp8 ;
2196 unsigned long __cil_tmp9 ;
2197 unsigned long __cil_tmp10 ;
2198 enum dma_data_direction __cil_tmp11 ;
2199 struct dma_attrs *__cil_tmp12 ;
2200
2201 {
2202 {
2203#line 67
2204 __cil_tmp6 = (struct pci_dev *)0;
2205#line 67
2206 __cil_tmp7 = (unsigned long )__cil_tmp6;
2207#line 67
2208 __cil_tmp8 = (unsigned long )hwdev;
2209#line 67
2210 if (__cil_tmp8 != __cil_tmp7) {
2211#line 67
2212 __cil_tmp9 = (unsigned long )hwdev;
2213#line 67
2214 __cil_tmp10 = __cil_tmp9 + 144;
2215#line 67
2216 tmp = (struct device *)__cil_tmp10;
2217 } else {
2218#line 67
2219 tmp = (struct device *)0;
2220 }
2221 }
2222 {
2223#line 67
2224 __cil_tmp11 = (enum dma_data_direction )direction;
2225#line 67
2226 __cil_tmp12 = (struct dma_attrs *)0;
2227#line 67
2228 dma_unmap_sg_attrs(tmp, sg, nents, __cil_tmp11, __cil_tmp12);
2229 }
2230#line 68
2231 return;
2232}
2233}
2234#line 134 "include/linux/tifm.h"
2235struct tifm_adapter *tifm_alloc_adapter(unsigned int num_sockets , struct device *dev ) ;
2236#line 136
2237int tifm_add_adapter(struct tifm_adapter *fm ) ;
2238#line 137
2239void tifm_remove_adapter(struct tifm_adapter *fm ) ;
2240#line 138
2241void tifm_free_adapter(struct tifm_adapter *fm ) ;
2242#line 140
2243void tifm_free_device(struct device *dev ) ;
2244#line 141
2245struct tifm_dev *tifm_alloc_device(struct tifm_adapter *fm , unsigned int id , unsigned char type ) ;
2246#line 144
2247int tifm_register_driver(struct tifm_driver *drv ) ;
2248#line 145
2249void tifm_unregister_driver(struct tifm_driver *drv ) ;
2250#line 146
2251void tifm_eject(struct tifm_dev *sock ) ;
2252#line 147
2253int tifm_has_ms_pif(struct tifm_dev *sock ) ;
2254#line 148
2255int tifm_map_sg(struct tifm_dev *sock , struct scatterlist *sg , int nents , int direction ) ;
2256#line 150
2257void tifm_unmap_sg(struct tifm_dev *sock , struct scatterlist *sg , int nents , int direction ) ;
2258#line 152
2259void tifm_queue_work(struct work_struct *work ) ;
2260#line 105 "include/linux/idr.h"
2261extern int idr_pre_get(struct idr * , gfp_t ) ;
2262#line 106
2263extern int idr_get_new(struct idr * , void * , int * ) ;
2264#line 112
2265extern void idr_remove(struct idr * , int ) ;
2266#line 36 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2267static struct workqueue_struct *workqueue ;
2268#line 37 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2269static struct idr tifm_adapter_idr = {(struct idr_layer *)0, (struct idr_layer *)0, 0, 0, {{{{{0U}}, 3735899821U, 4294967295U,
2270 (void *)0xffffffffffffffffUL,
2271 {(struct lock_class_key *)0,
2272 {(struct lock_class *)0,
2273 (struct lock_class *)0},
2274 "tifm_adapter_idr.lock",
2275 0, 0UL}}}}};
2276#line 38 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2277static spinlock_t tifm_adapter_lock = {{{{{0U}}, 3735899821U, 4294967295U, (void *)0xffffffffffffffffUL, {(struct lock_class_key *)0,
2278 {(struct lock_class *)0,
2279 (struct lock_class *)0},
2280 "tifm_adapter_lock",
2281 0, 0UL}}}};
2282#line 40 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2283static char const *tifm_media_type_name(unsigned char type , unsigned char nt )
2284{ char const *card_type_name[3U][3U] ;
2285 unsigned long __cil_tmp4 ;
2286 unsigned long __cil_tmp5 ;
2287 unsigned long __cil_tmp6 ;
2288 unsigned long __cil_tmp7 ;
2289 unsigned long __cil_tmp8 ;
2290 unsigned long __cil_tmp9 ;
2291 unsigned long __cil_tmp10 ;
2292 unsigned long __cil_tmp11 ;
2293 unsigned long __cil_tmp12 ;
2294 unsigned long __cil_tmp13 ;
2295 unsigned long __cil_tmp14 ;
2296 unsigned long __cil_tmp15 ;
2297 unsigned long __cil_tmp16 ;
2298 unsigned long __cil_tmp17 ;
2299 unsigned long __cil_tmp18 ;
2300 unsigned long __cil_tmp19 ;
2301 unsigned long __cil_tmp20 ;
2302 unsigned long __cil_tmp21 ;
2303 unsigned long __cil_tmp22 ;
2304 unsigned long __cil_tmp23 ;
2305 unsigned long __cil_tmp24 ;
2306 unsigned long __cil_tmp25 ;
2307 unsigned long __cil_tmp26 ;
2308 unsigned long __cil_tmp27 ;
2309 unsigned long __cil_tmp28 ;
2310 unsigned long __cil_tmp29 ;
2311 unsigned long __cil_tmp30 ;
2312 unsigned long __cil_tmp31 ;
2313 unsigned long __cil_tmp32 ;
2314 unsigned long __cil_tmp33 ;
2315 unsigned long __cil_tmp34 ;
2316 unsigned long __cil_tmp35 ;
2317 unsigned long __cil_tmp36 ;
2318 unsigned long __cil_tmp37 ;
2319 unsigned long __cil_tmp38 ;
2320 unsigned long __cil_tmp39 ;
2321 unsigned int __cil_tmp40 ;
2322 unsigned int __cil_tmp41 ;
2323 unsigned int __cil_tmp42 ;
2324 int __cil_tmp43 ;
2325 int __cil_tmp44 ;
2326 unsigned long __cil_tmp45 ;
2327 int __cil_tmp46 ;
2328 unsigned long __cil_tmp47 ;
2329 unsigned long __cil_tmp48 ;
2330 unsigned long __cil_tmp49 ;
2331
2332 {
2333#line 42
2334 __cil_tmp4 = 0 * 8UL;
2335#line 42
2336 __cil_tmp5 = 0 * 24UL;
2337#line 42
2338 __cil_tmp6 = __cil_tmp5 + __cil_tmp4;
2339#line 42
2340 __cil_tmp7 = (unsigned long )(card_type_name) + __cil_tmp6;
2341#line 42
2342 *((char const **)__cil_tmp7) = "SmartMedia/xD";
2343#line 42
2344 __cil_tmp8 = 1 * 8UL;
2345#line 42
2346 __cil_tmp9 = 0 * 24UL;
2347#line 42
2348 __cil_tmp10 = __cil_tmp9 + __cil_tmp8;
2349#line 42
2350 __cil_tmp11 = (unsigned long )(card_type_name) + __cil_tmp10;
2351#line 42
2352 *((char const **)__cil_tmp11) = "MemoryStick";
2353#line 42
2354 __cil_tmp12 = 2 * 8UL;
2355#line 42
2356 __cil_tmp13 = 0 * 24UL;
2357#line 42
2358 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
2359#line 42
2360 __cil_tmp15 = (unsigned long )(card_type_name) + __cil_tmp14;
2361#line 42
2362 *((char const **)__cil_tmp15) = "MMC/SD";
2363#line 42
2364 __cil_tmp16 = 0 * 8UL;
2365#line 42
2366 __cil_tmp17 = 1 * 24UL;
2367#line 42
2368 __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
2369#line 42
2370 __cil_tmp19 = (unsigned long )(card_type_name) + __cil_tmp18;
2371#line 42
2372 *((char const **)__cil_tmp19) = "XD";
2373#line 42
2374 __cil_tmp20 = 1 * 8UL;
2375#line 42
2376 __cil_tmp21 = 1 * 24UL;
2377#line 42
2378 __cil_tmp22 = __cil_tmp21 + __cil_tmp20;
2379#line 42
2380 __cil_tmp23 = (unsigned long )(card_type_name) + __cil_tmp22;
2381#line 42
2382 *((char const **)__cil_tmp23) = "MS";
2383#line 42
2384 __cil_tmp24 = 2 * 8UL;
2385#line 42
2386 __cil_tmp25 = 1 * 24UL;
2387#line 42
2388 __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
2389#line 42
2390 __cil_tmp27 = (unsigned long )(card_type_name) + __cil_tmp26;
2391#line 42
2392 *((char const **)__cil_tmp27) = "SD";
2393#line 42
2394 __cil_tmp28 = 0 * 8UL;
2395#line 42
2396 __cil_tmp29 = 2 * 24UL;
2397#line 42
2398 __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
2399#line 42
2400 __cil_tmp31 = (unsigned long )(card_type_name) + __cil_tmp30;
2401#line 42
2402 *((char const **)__cil_tmp31) = "xd";
2403#line 42
2404 __cil_tmp32 = 1 * 8UL;
2405#line 42
2406 __cil_tmp33 = 2 * 24UL;
2407#line 42
2408 __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
2409#line 42
2410 __cil_tmp35 = (unsigned long )(card_type_name) + __cil_tmp34;
2411#line 42
2412 *((char const **)__cil_tmp35) = "ms";
2413#line 42
2414 __cil_tmp36 = 2 * 8UL;
2415#line 42
2416 __cil_tmp37 = 2 * 24UL;
2417#line 42
2418 __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
2419#line 42
2420 __cil_tmp39 = (unsigned long )(card_type_name) + __cil_tmp38;
2421#line 42
2422 *((char const **)__cil_tmp39) = "sd";
2423 {
2424#line 48
2425 __cil_tmp40 = (unsigned int )nt;
2426#line 48
2427 if (__cil_tmp40 > 2U) {
2428#line 49
2429 return ((char const *)0);
2430 } else {
2431 {
2432#line 48
2433 __cil_tmp41 = (unsigned int )type;
2434#line 48
2435 if (__cil_tmp41 == 0U) {
2436#line 49
2437 return ((char const *)0);
2438 } else {
2439 {
2440#line 48
2441 __cil_tmp42 = (unsigned int )type;
2442#line 48
2443 if (__cil_tmp42 > 3U) {
2444#line 49
2445 return ((char const *)0);
2446 } else {
2447
2448 }
2449 }
2450 }
2451 }
2452 }
2453 }
2454 {
2455#line 50
2456 __cil_tmp43 = (int )type;
2457#line 50
2458 __cil_tmp44 = __cil_tmp43 + -1;
2459#line 50
2460 __cil_tmp45 = __cil_tmp44 * 8UL;
2461#line 50
2462 __cil_tmp46 = (int )nt;
2463#line 50
2464 __cil_tmp47 = __cil_tmp46 * 24UL;
2465#line 50
2466 __cil_tmp48 = __cil_tmp47 + __cil_tmp45;
2467#line 50
2468 __cil_tmp49 = (unsigned long )(card_type_name) + __cil_tmp48;
2469#line 50
2470 return (*((char const **)__cil_tmp49));
2471 }
2472}
2473}
2474#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2475static int tifm_dev_match(struct tifm_dev *sock , struct tifm_device_id *id )
2476{ unsigned char __cil_tmp3 ;
2477 int __cil_tmp4 ;
2478 unsigned long __cil_tmp5 ;
2479 unsigned long __cil_tmp6 ;
2480 unsigned char __cil_tmp7 ;
2481 int __cil_tmp8 ;
2482
2483 {
2484 {
2485#line 55
2486 __cil_tmp3 = *((unsigned char *)id);
2487#line 55
2488 __cil_tmp4 = (int )__cil_tmp3;
2489#line 55
2490 __cil_tmp5 = (unsigned long )sock;
2491#line 55
2492 __cil_tmp6 = __cil_tmp5 + 80;
2493#line 55
2494 __cil_tmp7 = *((unsigned char *)__cil_tmp6);
2495#line 55
2496 __cil_tmp8 = (int )__cil_tmp7;
2497#line 55
2498 if (__cil_tmp8 == __cil_tmp4) {
2499#line 56
2500 return (1);
2501 } else {
2502
2503 }
2504 }
2505#line 57
2506 return (0);
2507}
2508}
2509#line 60 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2510static int tifm_bus_match(struct device *dev , struct device_driver *drv )
2511{ struct tifm_dev *sock ;
2512 struct device const *__mptr ;
2513 struct tifm_driver *fm_drv ;
2514 struct device_driver const *__mptr___0 ;
2515 struct tifm_device_id *ids ;
2516 int tmp ;
2517 struct tifm_dev *__cil_tmp9 ;
2518 struct tifm_driver *__cil_tmp10 ;
2519 struct tifm_device_id *__cil_tmp11 ;
2520 unsigned long __cil_tmp12 ;
2521 unsigned long __cil_tmp13 ;
2522 unsigned char __cil_tmp14 ;
2523 unsigned int __cil_tmp15 ;
2524
2525 {
2526#line 62
2527 __mptr = (struct device const *)dev;
2528#line 62
2529 __cil_tmp9 = (struct tifm_dev *)__mptr;
2530#line 62
2531 sock = __cil_tmp9 + 0xffffffffffffff98UL;
2532#line 63
2533 __mptr___0 = (struct device_driver const *)drv;
2534#line 63
2535 __cil_tmp10 = (struct tifm_driver *)__mptr___0;
2536#line 63
2537 fm_drv = __cil_tmp10 + 0xffffffffffffffd8UL;
2538#line 65
2539 ids = *((struct tifm_device_id **)fm_drv);
2540 {
2541#line 67
2542 __cil_tmp11 = (struct tifm_device_id *)0;
2543#line 67
2544 __cil_tmp12 = (unsigned long )__cil_tmp11;
2545#line 67
2546 __cil_tmp13 = (unsigned long )ids;
2547#line 67
2548 if (__cil_tmp13 != __cil_tmp12) {
2549#line 68
2550 goto ldv_21687;
2551 ldv_21686:
2552 {
2553#line 69
2554 tmp = tifm_dev_match(sock, ids);
2555 }
2556#line 69
2557 if (tmp != 0) {
2558#line 70
2559 return (1);
2560 } else {
2561
2562 }
2563#line 71
2564 ids = ids + 1;
2565 ldv_21687: ;
2566 {
2567#line 68
2568 __cil_tmp14 = *((unsigned char *)ids);
2569#line 68
2570 __cil_tmp15 = (unsigned int )__cil_tmp14;
2571#line 68
2572 if (__cil_tmp15 != 0U) {
2573#line 69
2574 goto ldv_21686;
2575 } else {
2576#line 71
2577 goto ldv_21688;
2578 }
2579 }
2580 ldv_21688: ;
2581 } else {
2582
2583 }
2584 }
2585#line 74
2586 return (0);
2587}
2588}
2589#line 77 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2590static int tifm_uevent(struct device *dev , struct kobj_uevent_env *env )
2591{ struct tifm_dev *sock ;
2592 struct device const *__mptr ;
2593 char const *tmp ;
2594 int tmp___0 ;
2595 struct tifm_dev *__cil_tmp7 ;
2596 unsigned long __cil_tmp8 ;
2597 unsigned long __cil_tmp9 ;
2598 unsigned char __cil_tmp10 ;
2599 int __cil_tmp11 ;
2600 unsigned char __cil_tmp12 ;
2601
2602 {
2603 {
2604#line 79
2605 __mptr = (struct device const *)dev;
2606#line 79
2607 __cil_tmp7 = (struct tifm_dev *)__mptr;
2608#line 79
2609 sock = __cil_tmp7 + 0xffffffffffffff98UL;
2610#line 81
2611 __cil_tmp8 = (unsigned long )sock;
2612#line 81
2613 __cil_tmp9 = __cil_tmp8 + 80;
2614#line 81
2615 __cil_tmp10 = *((unsigned char *)__cil_tmp9);
2616#line 81
2617 __cil_tmp11 = (int )__cil_tmp10;
2618#line 81
2619 __cil_tmp12 = (unsigned char )__cil_tmp11;
2620#line 81
2621 tmp = tifm_media_type_name(__cil_tmp12, (unsigned char)1);
2622#line 81
2623 tmp___0 = add_uevent_var(env, "TIFM_CARD_TYPE=%s", tmp);
2624 }
2625#line 81
2626 if (tmp___0 != 0) {
2627#line 82
2628 return (-12);
2629 } else {
2630
2631 }
2632#line 84
2633 return (0);
2634}
2635}
2636#line 87 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2637static int tifm_device_probe(struct device *dev )
2638{ struct tifm_dev *sock ;
2639 struct device const *__mptr ;
2640 struct tifm_driver *drv ;
2641 struct device_driver const *__mptr___0 ;
2642 int rc ;
2643 struct tifm_dev *__cil_tmp7 ;
2644 unsigned long __cil_tmp8 ;
2645 unsigned long __cil_tmp9 ;
2646 struct device_driver *__cil_tmp10 ;
2647 struct tifm_driver *__cil_tmp11 ;
2648 struct device_driver *__cil_tmp12 ;
2649 unsigned long __cil_tmp13 ;
2650 unsigned long __cil_tmp14 ;
2651 unsigned long __cil_tmp15 ;
2652 struct device_driver *__cil_tmp16 ;
2653 unsigned long __cil_tmp17 ;
2654 int (*__cil_tmp18)(struct tifm_dev * ) ;
2655 unsigned long __cil_tmp19 ;
2656 unsigned long __cil_tmp20 ;
2657 unsigned long __cil_tmp21 ;
2658 int (*__cil_tmp22)(struct tifm_dev * ) ;
2659 unsigned long __cil_tmp23 ;
2660 unsigned long __cil_tmp24 ;
2661 unsigned long __cil_tmp25 ;
2662 int (*__cil_tmp26)(struct tifm_dev * ) ;
2663
2664 {
2665 {
2666#line 89
2667 __mptr = (struct device const *)dev;
2668#line 89
2669 __cil_tmp7 = (struct tifm_dev *)__mptr;
2670#line 89
2671 sock = __cil_tmp7 + 0xffffffffffffff98UL;
2672#line 90
2673 __cil_tmp8 = (unsigned long )dev;
2674#line 90
2675 __cil_tmp9 = __cil_tmp8 + 272;
2676#line 90
2677 __cil_tmp10 = *((struct device_driver **)__cil_tmp9);
2678#line 90
2679 __mptr___0 = (struct device_driver const *)__cil_tmp10;
2680#line 90
2681 __cil_tmp11 = (struct tifm_driver *)__mptr___0;
2682#line 90
2683 drv = __cil_tmp11 + 0xffffffffffffffd8UL;
2684#line 92
2685 rc = -19;
2686#line 94
2687 get_device(dev);
2688 }
2689 {
2690#line 95
2691 __cil_tmp12 = (struct device_driver *)0;
2692#line 95
2693 __cil_tmp13 = (unsigned long )__cil_tmp12;
2694#line 95
2695 __cil_tmp14 = (unsigned long )dev;
2696#line 95
2697 __cil_tmp15 = __cil_tmp14 + 272;
2698#line 95
2699 __cil_tmp16 = *((struct device_driver **)__cil_tmp15);
2700#line 95
2701 __cil_tmp17 = (unsigned long )__cil_tmp16;
2702#line 95
2703 if (__cil_tmp17 != __cil_tmp13) {
2704 {
2705#line 95
2706 __cil_tmp18 = (int (*)(struct tifm_dev * ))0;
2707#line 95
2708 __cil_tmp19 = (unsigned long )__cil_tmp18;
2709#line 95
2710 __cil_tmp20 = (unsigned long )drv;
2711#line 95
2712 __cil_tmp21 = __cil_tmp20 + 8;
2713#line 95
2714 __cil_tmp22 = *((int (**)(struct tifm_dev * ))__cil_tmp21);
2715#line 95
2716 __cil_tmp23 = (unsigned long )__cil_tmp22;
2717#line 95
2718 if (__cil_tmp23 != __cil_tmp19) {
2719 {
2720#line 96
2721 __cil_tmp24 = (unsigned long )drv;
2722#line 96
2723 __cil_tmp25 = __cil_tmp24 + 8;
2724#line 96
2725 __cil_tmp26 = *((int (**)(struct tifm_dev * ))__cil_tmp25);
2726#line 96
2727 rc = (*__cil_tmp26)(sock);
2728 }
2729#line 97
2730 if (rc == 0) {
2731#line 98
2732 return (0);
2733 } else {
2734
2735 }
2736 } else {
2737
2738 }
2739 }
2740 } else {
2741
2742 }
2743 }
2744 {
2745#line 100
2746 put_device(dev);
2747 }
2748#line 101
2749 return (rc);
2750}
2751}
2752#line 104 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2753static void tifm_dummy_event(struct tifm_dev *sock )
2754{
2755
2756 {
2757#line 106
2758 return;
2759}
2760}
2761#line 109 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2762static int tifm_device_remove(struct device *dev )
2763{ struct tifm_dev *sock ;
2764 struct device const *__mptr ;
2765 struct tifm_driver *drv ;
2766 struct device_driver const *__mptr___0 ;
2767 struct tifm_dev *__cil_tmp6 ;
2768 unsigned long __cil_tmp7 ;
2769 unsigned long __cil_tmp8 ;
2770 struct device_driver *__cil_tmp9 ;
2771 struct tifm_driver *__cil_tmp10 ;
2772 struct device_driver *__cil_tmp11 ;
2773 unsigned long __cil_tmp12 ;
2774 unsigned long __cil_tmp13 ;
2775 unsigned long __cil_tmp14 ;
2776 struct device_driver *__cil_tmp15 ;
2777 unsigned long __cil_tmp16 ;
2778 void (*__cil_tmp17)(struct tifm_dev * ) ;
2779 unsigned long __cil_tmp18 ;
2780 unsigned long __cil_tmp19 ;
2781 unsigned long __cil_tmp20 ;
2782 void (*__cil_tmp21)(struct tifm_dev * ) ;
2783 unsigned long __cil_tmp22 ;
2784 unsigned long __cil_tmp23 ;
2785 unsigned long __cil_tmp24 ;
2786 unsigned long __cil_tmp25 ;
2787 unsigned long __cil_tmp26 ;
2788 unsigned long __cil_tmp27 ;
2789 unsigned long __cil_tmp28 ;
2790 void (*__cil_tmp29)(struct tifm_dev * ) ;
2791 unsigned long __cil_tmp30 ;
2792 unsigned long __cil_tmp31 ;
2793 unsigned long __cil_tmp32 ;
2794
2795 {
2796#line 111
2797 __mptr = (struct device const *)dev;
2798#line 111
2799 __cil_tmp6 = (struct tifm_dev *)__mptr;
2800#line 111
2801 sock = __cil_tmp6 + 0xffffffffffffff98UL;
2802#line 112
2803 __cil_tmp7 = (unsigned long )dev;
2804#line 112
2805 __cil_tmp8 = __cil_tmp7 + 272;
2806#line 112
2807 __cil_tmp9 = *((struct device_driver **)__cil_tmp8);
2808#line 112
2809 __mptr___0 = (struct device_driver const *)__cil_tmp9;
2810#line 112
2811 __cil_tmp10 = (struct tifm_driver *)__mptr___0;
2812#line 112
2813 drv = __cil_tmp10 + 0xffffffffffffffd8UL;
2814 {
2815#line 115
2816 __cil_tmp11 = (struct device_driver *)0;
2817#line 115
2818 __cil_tmp12 = (unsigned long )__cil_tmp11;
2819#line 115
2820 __cil_tmp13 = (unsigned long )dev;
2821#line 115
2822 __cil_tmp14 = __cil_tmp13 + 272;
2823#line 115
2824 __cil_tmp15 = *((struct device_driver **)__cil_tmp14);
2825#line 115
2826 __cil_tmp16 = (unsigned long )__cil_tmp15;
2827#line 115
2828 if (__cil_tmp16 != __cil_tmp12) {
2829 {
2830#line 115
2831 __cil_tmp17 = (void (*)(struct tifm_dev * ))0;
2832#line 115
2833 __cil_tmp18 = (unsigned long )__cil_tmp17;
2834#line 115
2835 __cil_tmp19 = (unsigned long )drv;
2836#line 115
2837 __cil_tmp20 = __cil_tmp19 + 16;
2838#line 115
2839 __cil_tmp21 = *((void (**)(struct tifm_dev * ))__cil_tmp20);
2840#line 115
2841 __cil_tmp22 = (unsigned long )__cil_tmp21;
2842#line 115
2843 if (__cil_tmp22 != __cil_tmp18) {
2844 {
2845#line 116
2846 __cil_tmp23 = (unsigned long )sock;
2847#line 116
2848 __cil_tmp24 = __cil_tmp23 + 88;
2849#line 116
2850 *((void (**)(struct tifm_dev * ))__cil_tmp24) = & tifm_dummy_event;
2851#line 117
2852 __cil_tmp25 = (unsigned long )sock;
2853#line 117
2854 __cil_tmp26 = __cil_tmp25 + 96;
2855#line 117
2856 *((void (**)(struct tifm_dev * ))__cil_tmp26) = & tifm_dummy_event;
2857#line 118
2858 __cil_tmp27 = (unsigned long )drv;
2859#line 118
2860 __cil_tmp28 = __cil_tmp27 + 16;
2861#line 118
2862 __cil_tmp29 = *((void (**)(struct tifm_dev * ))__cil_tmp28);
2863#line 118
2864 (*__cil_tmp29)(sock);
2865#line 119
2866 __cil_tmp30 = 104 + 272;
2867#line 119
2868 __cil_tmp31 = (unsigned long )sock;
2869#line 119
2870 __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
2871#line 119
2872 *((struct device_driver **)__cil_tmp32) = (struct device_driver *)0;
2873 }
2874 } else {
2875
2876 }
2877 }
2878 } else {
2879
2880 }
2881 }
2882 {
2883#line 122
2884 put_device(dev);
2885 }
2886#line 123
2887 return (0);
2888}
2889}
2890#line 128 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2891static int tifm_device_suspend(struct device *dev , int state_event28 )
2892{ struct tifm_dev *sock ;
2893 struct device const *__mptr ;
2894 struct tifm_driver *drv ;
2895 struct device_driver const *__mptr___0 ;
2896 int tmp ;
2897 struct tifm_dev *__cil_tmp8 ;
2898 unsigned long __cil_tmp9 ;
2899 unsigned long __cil_tmp10 ;
2900 struct device_driver *__cil_tmp11 ;
2901 struct tifm_driver *__cil_tmp12 ;
2902 struct device_driver *__cil_tmp13 ;
2903 unsigned long __cil_tmp14 ;
2904 unsigned long __cil_tmp15 ;
2905 unsigned long __cil_tmp16 ;
2906 struct device_driver *__cil_tmp17 ;
2907 unsigned long __cil_tmp18 ;
2908 int (*__cil_tmp19)(struct tifm_dev * , int ) ;
2909 unsigned long __cil_tmp20 ;
2910 unsigned long __cil_tmp21 ;
2911 unsigned long __cil_tmp22 ;
2912 int (*__cil_tmp23)(struct tifm_dev * , int ) ;
2913 unsigned long __cil_tmp24 ;
2914 unsigned long __cil_tmp25 ;
2915 unsigned long __cil_tmp26 ;
2916 int (*__cil_tmp27)(struct tifm_dev * , int ) ;
2917
2918 {
2919#line 130
2920 __mptr = (struct device const *)dev;
2921#line 130
2922 __cil_tmp8 = (struct tifm_dev *)__mptr;
2923#line 130
2924 sock = __cil_tmp8 + 0xffffffffffffff98UL;
2925#line 131
2926 __cil_tmp9 = (unsigned long )dev;
2927#line 131
2928 __cil_tmp10 = __cil_tmp9 + 272;
2929#line 131
2930 __cil_tmp11 = *((struct device_driver **)__cil_tmp10);
2931#line 131
2932 __mptr___0 = (struct device_driver const *)__cil_tmp11;
2933#line 131
2934 __cil_tmp12 = (struct tifm_driver *)__mptr___0;
2935#line 131
2936 drv = __cil_tmp12 + 0xffffffffffffffd8UL;
2937 {
2938#line 134
2939 __cil_tmp13 = (struct device_driver *)0;
2940#line 134
2941 __cil_tmp14 = (unsigned long )__cil_tmp13;
2942#line 134
2943 __cil_tmp15 = (unsigned long )dev;
2944#line 134
2945 __cil_tmp16 = __cil_tmp15 + 272;
2946#line 134
2947 __cil_tmp17 = *((struct device_driver **)__cil_tmp16);
2948#line 134
2949 __cil_tmp18 = (unsigned long )__cil_tmp17;
2950#line 134
2951 if (__cil_tmp18 != __cil_tmp14) {
2952 {
2953#line 134
2954 __cil_tmp19 = (int (*)(struct tifm_dev * , int ))0;
2955#line 134
2956 __cil_tmp20 = (unsigned long )__cil_tmp19;
2957#line 134
2958 __cil_tmp21 = (unsigned long )drv;
2959#line 134
2960 __cil_tmp22 = __cil_tmp21 + 24;
2961#line 134
2962 __cil_tmp23 = *((int (**)(struct tifm_dev * , int ))__cil_tmp22);
2963#line 134
2964 __cil_tmp24 = (unsigned long )__cil_tmp23;
2965#line 134
2966 if (__cil_tmp24 != __cil_tmp20) {
2967 {
2968#line 135
2969 __cil_tmp25 = (unsigned long )drv;
2970#line 135
2971 __cil_tmp26 = __cil_tmp25 + 24;
2972#line 135
2973 __cil_tmp27 = *((int (**)(struct tifm_dev * , int ))__cil_tmp26);
2974#line 135
2975 tmp = (*__cil_tmp27)(sock, state_event28);
2976 }
2977#line 135
2978 return (tmp);
2979 } else {
2980
2981 }
2982 }
2983 } else {
2984
2985 }
2986 }
2987#line 136
2988 return (0);
2989}
2990}
2991#line 139 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
2992static int tifm_device_resume(struct device *dev )
2993{ struct tifm_dev *sock ;
2994 struct device const *__mptr ;
2995 struct tifm_driver *drv ;
2996 struct device_driver const *__mptr___0 ;
2997 int tmp ;
2998 struct tifm_dev *__cil_tmp7 ;
2999 unsigned long __cil_tmp8 ;
3000 unsigned long __cil_tmp9 ;
3001 struct device_driver *__cil_tmp10 ;
3002 struct tifm_driver *__cil_tmp11 ;
3003 struct device_driver *__cil_tmp12 ;
3004 unsigned long __cil_tmp13 ;
3005 unsigned long __cil_tmp14 ;
3006 unsigned long __cil_tmp15 ;
3007 struct device_driver *__cil_tmp16 ;
3008 unsigned long __cil_tmp17 ;
3009 int (*__cil_tmp18)(struct tifm_dev * ) ;
3010 unsigned long __cil_tmp19 ;
3011 unsigned long __cil_tmp20 ;
3012 unsigned long __cil_tmp21 ;
3013 int (*__cil_tmp22)(struct tifm_dev * ) ;
3014 unsigned long __cil_tmp23 ;
3015 unsigned long __cil_tmp24 ;
3016 unsigned long __cil_tmp25 ;
3017 int (*__cil_tmp26)(struct tifm_dev * ) ;
3018
3019 {
3020#line 141
3021 __mptr = (struct device const *)dev;
3022#line 141
3023 __cil_tmp7 = (struct tifm_dev *)__mptr;
3024#line 141
3025 sock = __cil_tmp7 + 0xffffffffffffff98UL;
3026#line 142
3027 __cil_tmp8 = (unsigned long )dev;
3028#line 142
3029 __cil_tmp9 = __cil_tmp8 + 272;
3030#line 142
3031 __cil_tmp10 = *((struct device_driver **)__cil_tmp9);
3032#line 142
3033 __mptr___0 = (struct device_driver const *)__cil_tmp10;
3034#line 142
3035 __cil_tmp11 = (struct tifm_driver *)__mptr___0;
3036#line 142
3037 drv = __cil_tmp11 + 0xffffffffffffffd8UL;
3038 {
3039#line 145
3040 __cil_tmp12 = (struct device_driver *)0;
3041#line 145
3042 __cil_tmp13 = (unsigned long )__cil_tmp12;
3043#line 145
3044 __cil_tmp14 = (unsigned long )dev;
3045#line 145
3046 __cil_tmp15 = __cil_tmp14 + 272;
3047#line 145
3048 __cil_tmp16 = *((struct device_driver **)__cil_tmp15);
3049#line 145
3050 __cil_tmp17 = (unsigned long )__cil_tmp16;
3051#line 145
3052 if (__cil_tmp17 != __cil_tmp13) {
3053 {
3054#line 145
3055 __cil_tmp18 = (int (*)(struct tifm_dev * ))0;
3056#line 145
3057 __cil_tmp19 = (unsigned long )__cil_tmp18;
3058#line 145
3059 __cil_tmp20 = (unsigned long )drv;
3060#line 145
3061 __cil_tmp21 = __cil_tmp20 + 32;
3062#line 145
3063 __cil_tmp22 = *((int (**)(struct tifm_dev * ))__cil_tmp21);
3064#line 145
3065 __cil_tmp23 = (unsigned long )__cil_tmp22;
3066#line 145
3067 if (__cil_tmp23 != __cil_tmp19) {
3068 {
3069#line 146
3070 __cil_tmp24 = (unsigned long )drv;
3071#line 146
3072 __cil_tmp25 = __cil_tmp24 + 32;
3073#line 146
3074 __cil_tmp26 = *((int (**)(struct tifm_dev * ))__cil_tmp25);
3075#line 146
3076 tmp = (*__cil_tmp26)(sock);
3077 }
3078#line 146
3079 return (tmp);
3080 } else {
3081
3082 }
3083 }
3084 } else {
3085
3086 }
3087 }
3088#line 147
3089 return (0);
3090}
3091}
3092#line 157 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3093static ssize_t type_show(struct device *dev , struct device_attribute *attr , char *buf )
3094{ struct tifm_dev *sock ;
3095 struct device const *__mptr ;
3096 int tmp ;
3097 struct tifm_dev *__cil_tmp7 ;
3098 unsigned long __cil_tmp8 ;
3099 unsigned long __cil_tmp9 ;
3100 unsigned char __cil_tmp10 ;
3101 int __cil_tmp11 ;
3102
3103 {
3104 {
3105#line 160
3106 __mptr = (struct device const *)dev;
3107#line 160
3108 __cil_tmp7 = (struct tifm_dev *)__mptr;
3109#line 160
3110 sock = __cil_tmp7 + 0xffffffffffffff98UL;
3111#line 161
3112 __cil_tmp8 = (unsigned long )sock;
3113#line 161
3114 __cil_tmp9 = __cil_tmp8 + 80;
3115#line 161
3116 __cil_tmp10 = *((unsigned char *)__cil_tmp9);
3117#line 161
3118 __cil_tmp11 = (int )__cil_tmp10;
3119#line 161
3120 tmp = sprintf(buf, "%x", __cil_tmp11);
3121 }
3122#line 161
3123 return ((ssize_t )tmp);
3124}
3125}
3126#line 164 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3127static struct device_attribute tifm_dev_attrs[2U] = { {{"type", (umode_t )292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
3128 {(char)0}, {(char)0},
3129 {(char)0}, {(char)0},
3130 {(char)0}, {(char)0}}}},
3131 & type_show, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
3132 size_t ))0},
3133 {{(char const *)0, (unsigned short)0, (struct lock_class_key *)0, {{{(char)0},
3134 {(char)0},
3135 {(char)0},
3136 {(char)0},
3137 {(char)0},
3138 {(char)0},
3139 {(char)0},
3140 {(char)0}}}},
3141 (ssize_t (*)(struct device * , struct device_attribute * , char * ))0, (ssize_t (*)(struct device * ,
3142 struct device_attribute * ,
3143 char const * ,
3144 size_t ))0}};
3145#line 169 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3146static struct bus_type tifm_bus_type =
3147#line 169
3148 {"tifm", (char const *)0, (struct device *)0, (struct bus_attribute *)0, (struct device_attribute *)(& tifm_dev_attrs),
3149 (struct driver_attribute *)0, & tifm_bus_match, & tifm_uevent, & tifm_device_probe,
3150 & tifm_device_remove, (void (*)(struct device * ))0, & tifm_device_suspend, & tifm_device_resume,
3151 (struct dev_pm_ops const *)0, (struct iommu_ops *)0, (struct subsys_private *)0};
3152#line 180 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3153static void tifm_free(struct device *dev )
3154{ struct tifm_adapter *fm ;
3155 struct device const *__mptr ;
3156 struct tifm_adapter *__cil_tmp4 ;
3157 void const *__cil_tmp5 ;
3158
3159 {
3160 {
3161#line 182
3162 __mptr = (struct device const *)dev;
3163#line 182
3164 __cil_tmp4 = (struct tifm_adapter *)__mptr;
3165#line 182
3166 fm = __cil_tmp4 + 0xffffffffffffff48UL;
3167#line 184
3168 __cil_tmp5 = (void const *)fm;
3169#line 184
3170 kfree(__cil_tmp5);
3171 }
3172#line 185
3173 return;
3174}
3175}
3176#line 187 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3177static struct class tifm_adapter_class =
3178#line 187
3179 {"tifm_adapter", (struct module *)0, (struct class_attribute *)0, (struct device_attribute *)0,
3180 (struct bin_attribute *)0, (struct kobject *)0, (int (*)(struct device * , struct kobj_uevent_env * ))0,
3181 (char *(*)(struct device * , umode_t * ))0, (void (*)(struct class * ))0, & tifm_free,
3182 (int (*)(struct device * , pm_message_t ))0, (int (*)(struct device * ))0, (struct kobj_ns_type_operations const *)0,
3183 (void const *(*)(struct device * ))0, (struct dev_pm_ops const *)0, (struct subsys_private *)0};
3184#line 192 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3185struct tifm_adapter *tifm_alloc_adapter(unsigned int num_sockets , struct device *dev )
3186{ struct tifm_adapter *fm ;
3187 void *tmp ;
3188 struct lock_class_key __key ;
3189 unsigned long __cil_tmp6 ;
3190 unsigned long __cil_tmp7 ;
3191 unsigned long __cil_tmp8 ;
3192 struct tifm_adapter *__cil_tmp9 ;
3193 unsigned long __cil_tmp10 ;
3194 unsigned long __cil_tmp11 ;
3195 unsigned long __cil_tmp12 ;
3196 unsigned long __cil_tmp13 ;
3197 unsigned long __cil_tmp14 ;
3198 unsigned long __cil_tmp15 ;
3199 unsigned long __cil_tmp16 ;
3200 unsigned long __cil_tmp17 ;
3201 unsigned long __cil_tmp18 ;
3202 struct device *__cil_tmp19 ;
3203 unsigned long __cil_tmp20 ;
3204 unsigned long __cil_tmp21 ;
3205 spinlock_t *__cil_tmp22 ;
3206 unsigned long __cil_tmp23 ;
3207 unsigned long __cil_tmp24 ;
3208 struct raw_spinlock *__cil_tmp25 ;
3209 unsigned long __cil_tmp26 ;
3210 unsigned long __cil_tmp27 ;
3211
3212 {
3213 {
3214#line 197
3215 __cil_tmp6 = (unsigned long )num_sockets;
3216#line 197
3217 __cil_tmp7 = __cil_tmp6 + 169UL;
3218#line 197
3219 __cil_tmp8 = __cil_tmp7 * 8UL;
3220#line 197
3221 tmp = kzalloc(__cil_tmp8, 208U);
3222#line 197
3223 fm = (struct tifm_adapter *)tmp;
3224 }
3225 {
3226#line 199
3227 __cil_tmp9 = (struct tifm_adapter *)0;
3228#line 199
3229 __cil_tmp10 = (unsigned long )__cil_tmp9;
3230#line 199
3231 __cil_tmp11 = (unsigned long )fm;
3232#line 199
3233 if (__cil_tmp11 != __cil_tmp10) {
3234 {
3235#line 200
3236 __cil_tmp12 = 184 + 1128;
3237#line 200
3238 __cil_tmp13 = (unsigned long )fm;
3239#line 200
3240 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
3241#line 200
3242 *((struct class **)__cil_tmp14) = & tifm_adapter_class;
3243#line 201
3244 __cil_tmp15 = (unsigned long )fm;
3245#line 201
3246 __cil_tmp16 = __cil_tmp15 + 184;
3247#line 201
3248 *((struct device **)__cil_tmp16) = dev;
3249#line 202
3250 __cil_tmp17 = (unsigned long )fm;
3251#line 202
3252 __cil_tmp18 = __cil_tmp17 + 184;
3253#line 202
3254 __cil_tmp19 = (struct device *)__cil_tmp18;
3255#line 202
3256 device_initialize(__cil_tmp19);
3257#line 203
3258 __cil_tmp20 = (unsigned long )fm;
3259#line 203
3260 __cil_tmp21 = __cil_tmp20 + 8;
3261#line 203
3262 __cil_tmp22 = (spinlock_t *)__cil_tmp21;
3263#line 203
3264 spinlock_check(__cil_tmp22);
3265#line 203
3266 __cil_tmp23 = (unsigned long )fm;
3267#line 203
3268 __cil_tmp24 = __cil_tmp23 + 8;
3269#line 203
3270 __cil_tmp25 = (struct raw_spinlock *)__cil_tmp24;
3271#line 203
3272 __raw_spin_lock_init(__cil_tmp25, "&(&fm->lock)->rlock", & __key);
3273#line 204
3274 __cil_tmp26 = (unsigned long )fm;
3275#line 204
3276 __cil_tmp27 = __cil_tmp26 + 92;
3277#line 204
3278 *((unsigned int *)__cil_tmp27) = num_sockets;
3279 }
3280 } else {
3281
3282 }
3283 }
3284#line 206
3285 return (fm);
3286}
3287}
3288#line 210 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3289int tifm_add_adapter(struct tifm_adapter *fm )
3290{ int rc ;
3291 int tmp ;
3292 void *__cil_tmp4 ;
3293 unsigned long __cil_tmp5 ;
3294 unsigned long __cil_tmp6 ;
3295 unsigned int *__cil_tmp7 ;
3296 int *__cil_tmp8 ;
3297 unsigned long __cil_tmp9 ;
3298 unsigned long __cil_tmp10 ;
3299 struct device *__cil_tmp11 ;
3300 unsigned long __cil_tmp12 ;
3301 unsigned long __cil_tmp13 ;
3302 unsigned int __cil_tmp14 ;
3303 unsigned long __cil_tmp15 ;
3304 unsigned long __cil_tmp16 ;
3305 struct device *__cil_tmp17 ;
3306 unsigned long __cil_tmp18 ;
3307 unsigned long __cil_tmp19 ;
3308 unsigned int __cil_tmp20 ;
3309 int __cil_tmp21 ;
3310
3311 {
3312 {
3313#line 214
3314 tmp = idr_pre_get(& tifm_adapter_idr, 208U);
3315 }
3316#line 214
3317 if (tmp == 0) {
3318#line 215
3319 return (-12);
3320 } else {
3321
3322 }
3323 {
3324#line 217
3325 spin_lock(& tifm_adapter_lock);
3326#line 218
3327 __cil_tmp4 = (void *)fm;
3328#line 218
3329 __cil_tmp5 = (unsigned long )fm;
3330#line 218
3331 __cil_tmp6 = __cil_tmp5 + 88;
3332#line 218
3333 __cil_tmp7 = (unsigned int *)__cil_tmp6;
3334#line 218
3335 __cil_tmp8 = (int *)__cil_tmp7;
3336#line 218
3337 rc = idr_get_new(& tifm_adapter_idr, __cil_tmp4, __cil_tmp8);
3338#line 219
3339 spin_unlock(& tifm_adapter_lock);
3340 }
3341#line 220
3342 if (rc != 0) {
3343#line 221
3344 return (rc);
3345 } else {
3346
3347 }
3348 {
3349#line 223
3350 __cil_tmp9 = (unsigned long )fm;
3351#line 223
3352 __cil_tmp10 = __cil_tmp9 + 184;
3353#line 223
3354 __cil_tmp11 = (struct device *)__cil_tmp10;
3355#line 223
3356 __cil_tmp12 = (unsigned long )fm;
3357#line 223
3358 __cil_tmp13 = __cil_tmp12 + 88;
3359#line 223
3360 __cil_tmp14 = *((unsigned int *)__cil_tmp13);
3361#line 223
3362 dev_set_name(__cil_tmp11, "tifm%u", __cil_tmp14);
3363#line 224
3364 __cil_tmp15 = (unsigned long )fm;
3365#line 224
3366 __cil_tmp16 = __cil_tmp15 + 184;
3367#line 224
3368 __cil_tmp17 = (struct device *)__cil_tmp16;
3369#line 224
3370 rc = device_add(__cil_tmp17);
3371 }
3372#line 225
3373 if (rc != 0) {
3374 {
3375#line 226
3376 spin_lock(& tifm_adapter_lock);
3377#line 227
3378 __cil_tmp18 = (unsigned long )fm;
3379#line 227
3380 __cil_tmp19 = __cil_tmp18 + 88;
3381#line 227
3382 __cil_tmp20 = *((unsigned int *)__cil_tmp19);
3383#line 227
3384 __cil_tmp21 = (int )__cil_tmp20;
3385#line 227
3386 idr_remove(& tifm_adapter_idr, __cil_tmp21);
3387#line 228
3388 spin_unlock(& tifm_adapter_lock);
3389 }
3390 } else {
3391
3392 }
3393#line 231
3394 return (rc);
3395}
3396}
3397#line 235 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3398void tifm_remove_adapter(struct tifm_adapter *fm )
3399{ unsigned int cnt ;
3400 struct tifm_dev *__cil_tmp3 ;
3401 unsigned long __cil_tmp4 ;
3402 unsigned long __cil_tmp5 ;
3403 unsigned long __cil_tmp6 ;
3404 unsigned long __cil_tmp7 ;
3405 unsigned long __cil_tmp8 ;
3406 struct tifm_dev *__cil_tmp9 ;
3407 unsigned long __cil_tmp10 ;
3408 unsigned long __cil_tmp11 ;
3409 unsigned long __cil_tmp12 ;
3410 unsigned long __cil_tmp13 ;
3411 unsigned long __cil_tmp14 ;
3412 struct tifm_dev *__cil_tmp15 ;
3413 unsigned long __cil_tmp16 ;
3414 unsigned long __cil_tmp17 ;
3415 struct device *__cil_tmp18 ;
3416 unsigned long __cil_tmp19 ;
3417 unsigned long __cil_tmp20 ;
3418 unsigned int __cil_tmp21 ;
3419 unsigned long __cil_tmp22 ;
3420 unsigned long __cil_tmp23 ;
3421 unsigned int __cil_tmp24 ;
3422 int __cil_tmp25 ;
3423 unsigned long __cil_tmp26 ;
3424 unsigned long __cil_tmp27 ;
3425 struct device *__cil_tmp28 ;
3426
3427 {
3428 {
3429#line 239
3430 flush_workqueue(workqueue);
3431#line 240
3432 cnt = 0U;
3433 }
3434#line 240
3435 goto ldv_21782;
3436 ldv_21781: ;
3437 {
3438#line 241
3439 __cil_tmp3 = (struct tifm_dev *)0;
3440#line 241
3441 __cil_tmp4 = (unsigned long )__cil_tmp3;
3442#line 241
3443 __cil_tmp5 = cnt * 8UL;
3444#line 241
3445 __cil_tmp6 = 1352 + __cil_tmp5;
3446#line 241
3447 __cil_tmp7 = (unsigned long )fm;
3448#line 241
3449 __cil_tmp8 = __cil_tmp7 + __cil_tmp6;
3450#line 241
3451 __cil_tmp9 = *((struct tifm_dev **)__cil_tmp8);
3452#line 241
3453 __cil_tmp10 = (unsigned long )__cil_tmp9;
3454#line 241
3455 if (__cil_tmp10 != __cil_tmp4) {
3456 {
3457#line 242
3458 __cil_tmp11 = cnt * 8UL;
3459#line 242
3460 __cil_tmp12 = 1352 + __cil_tmp11;
3461#line 242
3462 __cil_tmp13 = (unsigned long )fm;
3463#line 242
3464 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
3465#line 242
3466 __cil_tmp15 = *((struct tifm_dev **)__cil_tmp14);
3467#line 242
3468 __cil_tmp16 = (unsigned long )__cil_tmp15;
3469#line 242
3470 __cil_tmp17 = __cil_tmp16 + 104;
3471#line 242
3472 __cil_tmp18 = (struct device *)__cil_tmp17;
3473#line 242
3474 device_unregister(__cil_tmp18);
3475 }
3476 } else {
3477
3478 }
3479 }
3480#line 240
3481 cnt = cnt + 1U;
3482 ldv_21782: ;
3483 {
3484#line 240
3485 __cil_tmp19 = (unsigned long )fm;
3486#line 240
3487 __cil_tmp20 = __cil_tmp19 + 92;
3488#line 240
3489 __cil_tmp21 = *((unsigned int *)__cil_tmp20);
3490#line 240
3491 if (__cil_tmp21 > cnt) {
3492#line 241
3493 goto ldv_21781;
3494 } else {
3495#line 243
3496 goto ldv_21783;
3497 }
3498 }
3499 ldv_21783:
3500 {
3501#line 245
3502 spin_lock(& tifm_adapter_lock);
3503#line 246
3504 __cil_tmp22 = (unsigned long )fm;
3505#line 246
3506 __cil_tmp23 = __cil_tmp22 + 88;
3507#line 246
3508 __cil_tmp24 = *((unsigned int *)__cil_tmp23);
3509#line 246
3510 __cil_tmp25 = (int )__cil_tmp24;
3511#line 246
3512 idr_remove(& tifm_adapter_idr, __cil_tmp25);
3513#line 247
3514 spin_unlock(& tifm_adapter_lock);
3515#line 248
3516 __cil_tmp26 = (unsigned long )fm;
3517#line 248
3518 __cil_tmp27 = __cil_tmp26 + 184;
3519#line 248
3520 __cil_tmp28 = (struct device *)__cil_tmp27;
3521#line 248
3522 device_del(__cil_tmp28);
3523 }
3524#line 249
3525 return;
3526}
3527}
3528#line 252 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3529void tifm_free_adapter(struct tifm_adapter *fm )
3530{ unsigned long __cil_tmp2 ;
3531 unsigned long __cil_tmp3 ;
3532 struct device *__cil_tmp4 ;
3533
3534 {
3535 {
3536#line 254
3537 __cil_tmp2 = (unsigned long )fm;
3538#line 254
3539 __cil_tmp3 = __cil_tmp2 + 184;
3540#line 254
3541 __cil_tmp4 = (struct device *)__cil_tmp3;
3542#line 254
3543 put_device(__cil_tmp4);
3544 }
3545#line 255
3546 return;
3547}
3548}
3549#line 258 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3550void tifm_free_device(struct device *dev )
3551{ struct tifm_dev *sock ;
3552 struct device const *__mptr ;
3553 struct tifm_dev *__cil_tmp4 ;
3554 void const *__cil_tmp5 ;
3555
3556 {
3557 {
3558#line 260
3559 __mptr = (struct device const *)dev;
3560#line 260
3561 __cil_tmp4 = (struct tifm_dev *)__mptr;
3562#line 260
3563 sock = __cil_tmp4 + 0xffffffffffffff98UL;
3564#line 261
3565 __cil_tmp5 = (void const *)sock;
3566#line 261
3567 kfree(__cil_tmp5);
3568 }
3569#line 262
3570 return;
3571}
3572}
3573#line 265 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3574struct tifm_dev *tifm_alloc_device(struct tifm_adapter *fm , unsigned int id , unsigned char type )
3575{ struct tifm_dev *sock ;
3576 char const *tmp ;
3577 void *tmp___0 ;
3578 struct lock_class_key __key ;
3579 char const *tmp___1 ;
3580 char const *tmp___2 ;
3581 int __cil_tmp10 ;
3582 unsigned char __cil_tmp11 ;
3583 char const *__cil_tmp12 ;
3584 unsigned long __cil_tmp13 ;
3585 unsigned long __cil_tmp14 ;
3586 struct tifm_dev *__cil_tmp15 ;
3587 unsigned long __cil_tmp16 ;
3588 unsigned long __cil_tmp17 ;
3589 unsigned long __cil_tmp18 ;
3590 unsigned long __cil_tmp19 ;
3591 spinlock_t *__cil_tmp20 ;
3592 unsigned long __cil_tmp21 ;
3593 unsigned long __cil_tmp22 ;
3594 struct raw_spinlock *__cil_tmp23 ;
3595 unsigned long __cil_tmp24 ;
3596 unsigned long __cil_tmp25 ;
3597 unsigned long __cil_tmp26 ;
3598 unsigned long __cil_tmp27 ;
3599 unsigned long __cil_tmp28 ;
3600 unsigned long __cil_tmp29 ;
3601 unsigned long __cil_tmp30 ;
3602 unsigned long __cil_tmp31 ;
3603 unsigned long __cil_tmp32 ;
3604 unsigned long __cil_tmp33 ;
3605 unsigned long __cil_tmp34 ;
3606 unsigned long __cil_tmp35 ;
3607 unsigned long __cil_tmp36 ;
3608 unsigned long __cil_tmp37 ;
3609 unsigned long __cil_tmp38 ;
3610 unsigned long __cil_tmp39 ;
3611 unsigned long __cil_tmp40 ;
3612 unsigned long __cil_tmp41 ;
3613 unsigned long __cil_tmp42 ;
3614 unsigned long __cil_tmp43 ;
3615 struct device *__cil_tmp44 ;
3616 unsigned long __cil_tmp45 ;
3617 unsigned long __cil_tmp46 ;
3618 unsigned long __cil_tmp47 ;
3619 unsigned long __cil_tmp48 ;
3620 unsigned long __cil_tmp49 ;
3621 int __cil_tmp50 ;
3622 unsigned char __cil_tmp51 ;
3623 unsigned long __cil_tmp52 ;
3624 unsigned long __cil_tmp53 ;
3625 struct device *__cil_tmp54 ;
3626 unsigned long __cil_tmp55 ;
3627 unsigned long __cil_tmp56 ;
3628 unsigned int __cil_tmp57 ;
3629 int __cil_tmp58 ;
3630 unsigned char __cil_tmp59 ;
3631 unsigned long __cil_tmp60 ;
3632 unsigned long __cil_tmp61 ;
3633 unsigned int __cil_tmp62 ;
3634
3635 {
3636 {
3637#line 268
3638 sock = (struct tifm_dev *)0;
3639#line 270
3640 __cil_tmp10 = (int )type;
3641#line 270
3642 __cil_tmp11 = (unsigned char )__cil_tmp10;
3643#line 270
3644 tmp = tifm_media_type_name(__cil_tmp11, (unsigned char)0);
3645 }
3646 {
3647#line 270
3648 __cil_tmp12 = (char const *)0;
3649#line 270
3650 __cil_tmp13 = (unsigned long )__cil_tmp12;
3651#line 270
3652 __cil_tmp14 = (unsigned long )tmp;
3653#line 270
3654 if (__cil_tmp14 == __cil_tmp13) {
3655#line 271
3656 return (sock);
3657 } else {
3658
3659 }
3660 }
3661 {
3662#line 273
3663 tmp___0 = kzalloc(1256UL, 208U);
3664#line 273
3665 sock = (struct tifm_dev *)tmp___0;
3666 }
3667 {
3668#line 274
3669 __cil_tmp15 = (struct tifm_dev *)0;
3670#line 274
3671 __cil_tmp16 = (unsigned long )__cil_tmp15;
3672#line 274
3673 __cil_tmp17 = (unsigned long )sock;
3674#line 274
3675 if (__cil_tmp17 != __cil_tmp16) {
3676 {
3677#line 275
3678 __cil_tmp18 = (unsigned long )sock;
3679#line 275
3680 __cil_tmp19 = __cil_tmp18 + 8;
3681#line 275
3682 __cil_tmp20 = (spinlock_t *)__cil_tmp19;
3683#line 275
3684 spinlock_check(__cil_tmp20);
3685#line 275
3686 __cil_tmp21 = (unsigned long )sock;
3687#line 275
3688 __cil_tmp22 = __cil_tmp21 + 8;
3689#line 275
3690 __cil_tmp23 = (struct raw_spinlock *)__cil_tmp22;
3691#line 275
3692 __raw_spin_lock_init(__cil_tmp23, "&(&sock->lock)->rlock", & __key);
3693#line 276
3694 __cil_tmp24 = (unsigned long )sock;
3695#line 276
3696 __cil_tmp25 = __cil_tmp24 + 80;
3697#line 276
3698 *((unsigned char *)__cil_tmp25) = type;
3699#line 277
3700 __cil_tmp26 = (unsigned long )sock;
3701#line 277
3702 __cil_tmp27 = __cil_tmp26 + 84;
3703#line 277
3704 *((unsigned int *)__cil_tmp27) = id;
3705#line 278
3706 __cil_tmp28 = (unsigned long )sock;
3707#line 278
3708 __cil_tmp29 = __cil_tmp28 + 88;
3709#line 278
3710 *((void (**)(struct tifm_dev * ))__cil_tmp29) = & tifm_dummy_event;
3711#line 279
3712 __cil_tmp30 = (unsigned long )sock;
3713#line 279
3714 __cil_tmp31 = __cil_tmp30 + 96;
3715#line 279
3716 *((void (**)(struct tifm_dev * ))__cil_tmp31) = & tifm_dummy_event;
3717#line 281
3718 __cil_tmp32 = (unsigned long )sock;
3719#line 281
3720 __cil_tmp33 = __cil_tmp32 + 104;
3721#line 281
3722 __cil_tmp34 = (unsigned long )fm;
3723#line 281
3724 __cil_tmp35 = __cil_tmp34 + 184;
3725#line 281
3726 *((struct device **)__cil_tmp33) = *((struct device **)__cil_tmp35);
3727#line 282
3728 __cil_tmp36 = 104 + 264;
3729#line 282
3730 __cil_tmp37 = (unsigned long )sock;
3731#line 282
3732 __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
3733#line 282
3734 *((struct bus_type **)__cil_tmp38) = & tifm_bus_type;
3735#line 283
3736 __cil_tmp39 = 104 + 920;
3737#line 283
3738 __cil_tmp40 = (unsigned long )sock;
3739#line 283
3740 __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
3741#line 283
3742 __cil_tmp42 = (unsigned long )fm;
3743#line 283
3744 __cil_tmp43 = __cil_tmp42 + 184;
3745#line 283
3746 __cil_tmp44 = *((struct device **)__cil_tmp43);
3747#line 283
3748 __cil_tmp45 = (unsigned long )__cil_tmp44;
3749#line 283
3750 __cil_tmp46 = __cil_tmp45 + 920;
3751#line 283
3752 *((u64 **)__cil_tmp41) = *((u64 **)__cil_tmp46);
3753#line 284
3754 __cil_tmp47 = 104 + 1144;
3755#line 284
3756 __cil_tmp48 = (unsigned long )sock;
3757#line 284
3758 __cil_tmp49 = __cil_tmp48 + __cil_tmp47;
3759#line 284
3760 *((void (**)(struct device * ))__cil_tmp49) = & tifm_free_device;
3761#line 286
3762 __cil_tmp50 = (int )type;
3763#line 286
3764 __cil_tmp51 = (unsigned char )__cil_tmp50;
3765#line 286
3766 tmp___1 = tifm_media_type_name(__cil_tmp51, (unsigned char)2);
3767#line 286
3768 __cil_tmp52 = (unsigned long )sock;
3769#line 286
3770 __cil_tmp53 = __cil_tmp52 + 104;
3771#line 286
3772 __cil_tmp54 = (struct device *)__cil_tmp53;
3773#line 286
3774 __cil_tmp55 = (unsigned long )fm;
3775#line 286
3776 __cil_tmp56 = __cil_tmp55 + 88;
3777#line 286
3778 __cil_tmp57 = *((unsigned int *)__cil_tmp56);
3779#line 286
3780 dev_set_name(__cil_tmp54, "tifm_%s%u:%u", tmp___1, __cil_tmp57, id);
3781#line 288
3782 __cil_tmp58 = (int )type;
3783#line 288
3784 __cil_tmp59 = (unsigned char )__cil_tmp58;
3785#line 288
3786 tmp___2 = tifm_media_type_name(__cil_tmp59, (unsigned char)0);
3787#line 288
3788 __cil_tmp60 = (unsigned long )fm;
3789#line 288
3790 __cil_tmp61 = __cil_tmp60 + 88;
3791#line 288
3792 __cil_tmp62 = *((unsigned int *)__cil_tmp61);
3793#line 288
3794 printk("<6>tifm_core: %s card detected in socket %u:%u\n", tmp___2, __cil_tmp62,
3795 id);
3796 }
3797 } else {
3798
3799 }
3800 }
3801#line 292
3802 return (sock);
3803}
3804}
3805#line 296 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3806void tifm_eject(struct tifm_dev *sock )
3807{ struct tifm_adapter *fm ;
3808 void *tmp ;
3809 unsigned long __cil_tmp4 ;
3810 unsigned long __cil_tmp5 ;
3811 struct device *__cil_tmp6 ;
3812 struct device const *__cil_tmp7 ;
3813 unsigned long __cil_tmp8 ;
3814 unsigned long __cil_tmp9 ;
3815 void (*__cil_tmp10)(struct tifm_adapter * , struct tifm_dev * ) ;
3816
3817 {
3818 {
3819#line 298
3820 __cil_tmp4 = (unsigned long )sock;
3821#line 298
3822 __cil_tmp5 = __cil_tmp4 + 104;
3823#line 298
3824 __cil_tmp6 = *((struct device **)__cil_tmp5);
3825#line 298
3826 __cil_tmp7 = (struct device const *)__cil_tmp6;
3827#line 298
3828 tmp = dev_get_drvdata(__cil_tmp7);
3829#line 298
3830 fm = (struct tifm_adapter *)tmp;
3831#line 299
3832 __cil_tmp8 = (unsigned long )fm;
3833#line 299
3834 __cil_tmp9 = __cil_tmp8 + 1336;
3835#line 299
3836 __cil_tmp10 = *((void (**)(struct tifm_adapter * , struct tifm_dev * ))__cil_tmp9);
3837#line 299
3838 (*__cil_tmp10)(fm, sock);
3839 }
3840#line 300
3841 return;
3842}
3843}
3844#line 303 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3845int tifm_has_ms_pif(struct tifm_dev *sock )
3846{ struct tifm_adapter *fm ;
3847 void *tmp ;
3848 int tmp___0 ;
3849 unsigned long __cil_tmp5 ;
3850 unsigned long __cil_tmp6 ;
3851 struct device *__cil_tmp7 ;
3852 struct device const *__cil_tmp8 ;
3853 unsigned long __cil_tmp9 ;
3854 unsigned long __cil_tmp10 ;
3855 int (*__cil_tmp11)(struct tifm_adapter * , struct tifm_dev * ) ;
3856
3857 {
3858 {
3859#line 305
3860 __cil_tmp5 = (unsigned long )sock;
3861#line 305
3862 __cil_tmp6 = __cil_tmp5 + 104;
3863#line 305
3864 __cil_tmp7 = *((struct device **)__cil_tmp6);
3865#line 305
3866 __cil_tmp8 = (struct device const *)__cil_tmp7;
3867#line 305
3868 tmp = dev_get_drvdata(__cil_tmp8);
3869#line 305
3870 fm = (struct tifm_adapter *)tmp;
3871#line 306
3872 __cil_tmp9 = (unsigned long )fm;
3873#line 306
3874 __cil_tmp10 = __cil_tmp9 + 1344;
3875#line 306
3876 __cil_tmp11 = *((int (**)(struct tifm_adapter * , struct tifm_dev * ))__cil_tmp10);
3877#line 306
3878 tmp___0 = (*__cil_tmp11)(fm, sock);
3879 }
3880#line 306
3881 return (tmp___0);
3882}
3883}
3884#line 310 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3885int tifm_map_sg(struct tifm_dev *sock , struct scatterlist *sg , int nents , int direction )
3886{ struct device const *__mptr ;
3887 int tmp ;
3888 unsigned long __cil_tmp7 ;
3889 unsigned long __cil_tmp8 ;
3890 struct device *__cil_tmp9 ;
3891 struct pci_dev *__cil_tmp10 ;
3892 struct pci_dev *__cil_tmp11 ;
3893
3894 {
3895 {
3896#line 313
3897 __cil_tmp7 = (unsigned long )sock;
3898#line 313
3899 __cil_tmp8 = __cil_tmp7 + 104;
3900#line 313
3901 __cil_tmp9 = *((struct device **)__cil_tmp8);
3902#line 313
3903 __mptr = (struct device const *)__cil_tmp9;
3904#line 313
3905 __cil_tmp10 = (struct pci_dev *)__mptr;
3906#line 313
3907 __cil_tmp11 = __cil_tmp10 + 0xffffffffffffff70UL;
3908#line 313
3909 tmp = pci_map_sg(__cil_tmp11, sg, nents, direction);
3910 }
3911#line 313
3912 return (tmp);
3913}
3914}
3915#line 317 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3916void tifm_unmap_sg(struct tifm_dev *sock , struct scatterlist *sg , int nents , int direction )
3917{ struct device const *__mptr ;
3918 unsigned long __cil_tmp6 ;
3919 unsigned long __cil_tmp7 ;
3920 struct device *__cil_tmp8 ;
3921 struct pci_dev *__cil_tmp9 ;
3922 struct pci_dev *__cil_tmp10 ;
3923
3924 {
3925 {
3926#line 320
3927 __cil_tmp6 = (unsigned long )sock;
3928#line 320
3929 __cil_tmp7 = __cil_tmp6 + 104;
3930#line 320
3931 __cil_tmp8 = *((struct device **)__cil_tmp7);
3932#line 320
3933 __mptr = (struct device const *)__cil_tmp8;
3934#line 320
3935 __cil_tmp9 = (struct pci_dev *)__mptr;
3936#line 320
3937 __cil_tmp10 = __cil_tmp9 + 0xffffffffffffff70UL;
3938#line 320
3939 pci_unmap_sg(__cil_tmp10, sg, nents, direction);
3940 }
3941#line 322
3942 return;
3943}
3944}
3945#line 324 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3946void tifm_queue_work(struct work_struct *work )
3947{
3948
3949 {
3950 {
3951#line 326
3952 queue_work(workqueue, work);
3953 }
3954#line 327
3955 return;
3956}
3957}
3958#line 330 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3959int tifm_register_driver(struct tifm_driver *drv )
3960{ int tmp ;
3961 unsigned long __cil_tmp3 ;
3962 unsigned long __cil_tmp4 ;
3963 unsigned long __cil_tmp5 ;
3964 unsigned long __cil_tmp6 ;
3965 unsigned long __cil_tmp7 ;
3966 struct device_driver *__cil_tmp8 ;
3967
3968 {
3969 {
3970#line 332
3971 __cil_tmp3 = 40 + 8;
3972#line 332
3973 __cil_tmp4 = (unsigned long )drv;
3974#line 332
3975 __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
3976#line 332
3977 *((struct bus_type **)__cil_tmp5) = & tifm_bus_type;
3978#line 334
3979 __cil_tmp6 = (unsigned long )drv;
3980#line 334
3981 __cil_tmp7 = __cil_tmp6 + 40;
3982#line 334
3983 __cil_tmp8 = (struct device_driver *)__cil_tmp7;
3984#line 334
3985 tmp = driver_register(__cil_tmp8);
3986 }
3987#line 334
3988 return (tmp);
3989}
3990}
3991#line 338 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
3992void tifm_unregister_driver(struct tifm_driver *drv )
3993{ unsigned long __cil_tmp2 ;
3994 unsigned long __cil_tmp3 ;
3995 struct device_driver *__cil_tmp4 ;
3996
3997 {
3998 {
3999#line 340
4000 __cil_tmp2 = (unsigned long )drv;
4001#line 340
4002 __cil_tmp3 = __cil_tmp2 + 40;
4003#line 340
4004 __cil_tmp4 = (struct device_driver *)__cil_tmp3;
4005#line 340
4006 driver_unregister(__cil_tmp4);
4007 }
4008#line 341
4009 return;
4010}
4011}
4012#line 344 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4013static int tifm_init(void)
4014{ int rc ;
4015 struct lock_class_key __key ;
4016 char const *__lock_name ;
4017 struct workqueue_struct *tmp ;
4018 struct lock_class_key __key___0 ;
4019 int tmp___0 ;
4020 struct lock_class_key __key___1 ;
4021 int tmp___1 ;
4022 struct workqueue_struct *__cil_tmp9 ;
4023 unsigned long __cil_tmp10 ;
4024 unsigned long __cil_tmp11 ;
4025
4026 {
4027 {
4028#line 348
4029 __lock_name = "tifm";
4030#line 348
4031 tmp = __alloc_workqueue_key("tifm", 14U, 1, & __key, __lock_name);
4032#line 348
4033 workqueue = tmp;
4034 }
4035 {
4036#line 349
4037 __cil_tmp9 = (struct workqueue_struct *)0;
4038#line 349
4039 __cil_tmp10 = (unsigned long )__cil_tmp9;
4040#line 349
4041 __cil_tmp11 = (unsigned long )workqueue;
4042#line 349
4043 if (__cil_tmp11 == __cil_tmp10) {
4044#line 350
4045 return (-12);
4046 } else {
4047
4048 }
4049 }
4050 {
4051#line 352
4052 tmp___0 = __bus_register(& tifm_bus_type, & __key___0);
4053#line 352
4054 rc = tmp___0;
4055 }
4056#line 354
4057 if (rc != 0) {
4058#line 355
4059 goto err_out_wq;
4060 } else {
4061
4062 }
4063 {
4064#line 357
4065 tmp___1 = __class_register(& tifm_adapter_class, & __key___1);
4066#line 357
4067 rc = tmp___1;
4068 }
4069#line 358
4070 if (rc == 0) {
4071#line 359
4072 return (0);
4073 } else {
4074
4075 }
4076 {
4077#line 361
4078 bus_unregister(& tifm_bus_type);
4079 }
4080 err_out_wq:
4081 {
4082#line 364
4083 destroy_workqueue(workqueue);
4084 }
4085#line 366
4086 return (rc);
4087}
4088}
4089#line 369 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4090static void tifm_exit(void)
4091{
4092
4093 {
4094 {
4095#line 371
4096 class_unregister(& tifm_adapter_class);
4097#line 372
4098 bus_unregister(& tifm_bus_type);
4099#line 373
4100 destroy_workqueue(workqueue);
4101 }
4102#line 374
4103 return;
4104}
4105}
4106#line 401
4107extern void ldv_check_final_state(void) ;
4108#line 404
4109extern void ldv_check_return_value(int ) ;
4110#line 407
4111extern void ldv_initialize(void) ;
4112#line 410
4113extern int __VERIFIER_nondet_int(void) ;
4114#line 413 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4115int LDV_IN_INTERRUPT ;
4116#line 416 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4117void main(void)
4118{ struct device *var_group1 ;
4119 struct device_driver *var_group2 ;
4120 struct kobj_uevent_env *var_group3 ;
4121 int res_tifm_device_probe_4 ;
4122 pm_message_t var_tifm_device_suspend_7_p1 ;
4123 int ldv_s_tifm_bus_type_bus_type ;
4124 int tmp ;
4125 int tmp___0 ;
4126 int tmp___1 ;
4127 int var_tifm_device_suspend_7_p1_event10 ;
4128
4129 {
4130 {
4131#line 549
4132 ldv_s_tifm_bus_type_bus_type = 0;
4133#line 524
4134 LDV_IN_INTERRUPT = 1;
4135#line 533
4136 ldv_initialize();
4137#line 547
4138 tmp = tifm_init();
4139 }
4140#line 547
4141 if (tmp != 0) {
4142#line 548
4143 goto ldv_final;
4144 } else {
4145
4146 }
4147#line 555
4148 goto ldv_21967;
4149 ldv_21966:
4150 {
4151#line 559
4152 tmp___0 = __VERIFIER_nondet_int();
4153 }
4154#line 561
4155 if (tmp___0 == 0) {
4156#line 561
4157 goto case_0;
4158 } else
4159#line 590
4160 if (tmp___0 == 1) {
4161#line 590
4162 goto case_1;
4163 } else
4164#line 616
4165 if (tmp___0 == 2) {
4166#line 616
4167 goto case_2;
4168 } else
4169#line 642
4170 if (tmp___0 == 3) {
4171#line 642
4172 goto case_3;
4173 } else
4174#line 668
4175 if (tmp___0 == 4) {
4176#line 668
4177 goto case_4;
4178 } else
4179#line 694
4180 if (tmp___0 == 5) {
4181#line 694
4182 goto case_5;
4183 } else
4184#line 720
4185 if (tmp___0 == 6) {
4186#line 720
4187 goto case_6;
4188 } else {
4189 {
4190#line 744
4191 goto switch_default;
4192#line 559
4193 if (0) {
4194 case_0: ;
4195#line 564
4196 if (ldv_s_tifm_bus_type_bus_type == 0) {
4197 {
4198#line 572
4199 res_tifm_device_probe_4 = tifm_device_probe(var_group1);
4200#line 573
4201 ldv_check_return_value(res_tifm_device_probe_4);
4202 }
4203#line 574
4204 if (res_tifm_device_probe_4 != 0) {
4205#line 575
4206 goto ldv_module_exit;
4207 } else {
4208
4209 }
4210#line 583
4211 ldv_s_tifm_bus_type_bus_type = 0;
4212 } else {
4213
4214 }
4215#line 589
4216 goto ldv_21958;
4217 case_1:
4218 {
4219#line 601
4220 tifm_bus_match(var_group1, var_group2);
4221 }
4222#line 615
4223 goto ldv_21958;
4224 case_2:
4225 {
4226#line 627
4227 tifm_uevent(var_group1, var_group3);
4228 }
4229#line 641
4230 goto ldv_21958;
4231 case_3:
4232 {
4233#line 653
4234 tifm_device_remove(var_group1);
4235 }
4236#line 667
4237 goto ldv_21958;
4238 case_4:
4239 {
4240#line 680
4241 tifm_device_suspend(var_group1, var_tifm_device_suspend_7_p1_event10);
4242 }
4243#line 693
4244 goto ldv_21958;
4245 case_5:
4246 {
4247#line 706
4248 tifm_device_resume(var_group1);
4249 }
4250#line 719
4251 goto ldv_21958;
4252 case_6:
4253 {
4254#line 736
4255 tifm_free(var_group1);
4256 }
4257#line 743
4258 goto ldv_21958;
4259 switch_default: ;
4260#line 744
4261 goto ldv_21958;
4262 } else {
4263 switch_break: ;
4264 }
4265 }
4266 }
4267 ldv_21958: ;
4268 ldv_21967:
4269 {
4270#line 555
4271 tmp___1 = __VERIFIER_nondet_int();
4272 }
4273#line 555
4274 if (tmp___1 != 0) {
4275#line 557
4276 goto ldv_21966;
4277 } else
4278#line 555
4279 if (ldv_s_tifm_bus_type_bus_type != 0) {
4280#line 557
4281 goto ldv_21966;
4282 } else {
4283#line 559
4284 goto ldv_21968;
4285 }
4286 ldv_21968: ;
4287 ldv_module_exit:
4288 {
4289#line 764
4290 tifm_exit();
4291 }
4292 ldv_final:
4293 {
4294#line 767
4295 ldv_check_final_state();
4296 }
4297#line 770
4298 return;
4299}
4300}
4301#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
4302void ldv_blast_assert(void)
4303{
4304
4305 {
4306 ERROR: ;
4307#line 6
4308 goto ERROR;
4309}
4310}
4311#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
4312extern int __VERIFIER_nondet_int(void) ;
4313#line 791 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4314int ldv_spin = 0;
4315#line 795 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4316void ldv_check_alloc_flags(gfp_t flags )
4317{
4318
4319 {
4320#line 798
4321 if (ldv_spin != 0) {
4322#line 798
4323 if (flags != 32U) {
4324 {
4325#line 798
4326 ldv_blast_assert();
4327 }
4328 } else {
4329
4330 }
4331 } else {
4332
4333 }
4334#line 801
4335 return;
4336}
4337}
4338#line 801
4339extern struct page *ldv_some_page(void) ;
4340#line 804 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4341struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
4342{ struct page *tmp ;
4343
4344 {
4345#line 807
4346 if (ldv_spin != 0) {
4347#line 807
4348 if (flags != 32U) {
4349 {
4350#line 807
4351 ldv_blast_assert();
4352 }
4353 } else {
4354
4355 }
4356 } else {
4357
4358 }
4359 {
4360#line 809
4361 tmp = ldv_some_page();
4362 }
4363#line 809
4364 return (tmp);
4365}
4366}
4367#line 813 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4368void ldv_check_alloc_nonatomic(void)
4369{
4370
4371 {
4372#line 816
4373 if (ldv_spin != 0) {
4374 {
4375#line 816
4376 ldv_blast_assert();
4377 }
4378 } else {
4379
4380 }
4381#line 819
4382 return;
4383}
4384}
4385#line 820 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4386void ldv_spin_lock(void)
4387{
4388
4389 {
4390#line 823
4391 ldv_spin = 1;
4392#line 824
4393 return;
4394}
4395}
4396#line 827 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4397void ldv_spin_unlock(void)
4398{
4399
4400 {
4401#line 830
4402 ldv_spin = 0;
4403#line 831
4404 return;
4405}
4406}
4407#line 834 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4408int ldv_spin_trylock(void)
4409{ int is_lock ;
4410
4411 {
4412 {
4413#line 839
4414 is_lock = __VERIFIER_nondet_int();
4415 }
4416#line 841
4417 if (is_lock != 0) {
4418#line 844
4419 return (0);
4420 } else {
4421#line 849
4422 ldv_spin = 1;
4423#line 851
4424 return (1);
4425 }
4426}
4427}
4428#line 855 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4429__inline static void spin_lock(spinlock_t *lock )
4430{
4431
4432 {
4433 {
4434#line 860
4435 ldv_spin_lock();
4436#line 862
4437 ldv_spin_lock_1(lock);
4438 }
4439#line 863
4440 return;
4441}
4442}
4443#line 897 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4444__inline static void spin_unlock(spinlock_t *lock )
4445{
4446
4447 {
4448 {
4449#line 902
4450 ldv_spin_unlock();
4451#line 904
4452 ldv_spin_unlock_5(lock);
4453 }
4454#line 905
4455 return;
4456}
4457}
4458#line 1018 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4459void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
4460{
4461
4462 {
4463 {
4464#line 1024
4465 ldv_check_alloc_flags(ldv_func_arg2);
4466#line 1026
4467 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
4468 }
4469#line 1027
4470 return ((void *)0);
4471}
4472}
4473#line 1029 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12648/dscv_tempdir/dscv/ri/43_1a/drivers/misc/tifm_core.c.p"
4474__inline static void *kzalloc(size_t size , gfp_t flags )
4475{ void *tmp ;
4476
4477 {
4478 {
4479#line 1035
4480 ldv_check_alloc_flags(flags);
4481#line 1036
4482 tmp = __VERIFIER_nondet_pointer();
4483 }
4484#line 1036
4485 return (tmp);
4486}
4487}