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