1
2
3
4#line 20 "include/asm-generic/int-ll64.h"
5typedef unsigned char __u8;
6#line 23 "include/asm-generic/int-ll64.h"
7typedef unsigned short __u16;
8#line 26 "include/asm-generic/int-ll64.h"
9typedef unsigned int __u32;
10#line 30 "include/asm-generic/int-ll64.h"
11typedef unsigned long long __u64;
12#line 43 "include/asm-generic/int-ll64.h"
13typedef unsigned char u8;
14#line 45 "include/asm-generic/int-ll64.h"
15typedef short s16;
16#line 46 "include/asm-generic/int-ll64.h"
17typedef unsigned short u16;
18#line 49 "include/asm-generic/int-ll64.h"
19typedef unsigned int u32;
20#line 51 "include/asm-generic/int-ll64.h"
21typedef long long s64;
22#line 52 "include/asm-generic/int-ll64.h"
23typedef unsigned long long u64;
24#line 14 "include/asm-generic/posix_types.h"
25typedef long __kernel_long_t;
26#line 15 "include/asm-generic/posix_types.h"
27typedef unsigned long __kernel_ulong_t;
28#line 75 "include/asm-generic/posix_types.h"
29typedef __kernel_ulong_t __kernel_size_t;
30#line 76 "include/asm-generic/posix_types.h"
31typedef __kernel_long_t __kernel_ssize_t;
32#line 91 "include/asm-generic/posix_types.h"
33typedef long long __kernel_loff_t;
34#line 21 "include/linux/types.h"
35typedef __u32 __kernel_dev_t;
36#line 24 "include/linux/types.h"
37typedef __kernel_dev_t dev_t;
38#line 27 "include/linux/types.h"
39typedef unsigned short umode_t;
40#line 38 "include/linux/types.h"
41typedef _Bool bool;
42#line 54 "include/linux/types.h"
43typedef __kernel_loff_t loff_t;
44#line 63 "include/linux/types.h"
45typedef __kernel_size_t size_t;
46#line 68 "include/linux/types.h"
47typedef __kernel_ssize_t ssize_t;
48#line 92 "include/linux/types.h"
49typedef unsigned char u_char;
50#line 95 "include/linux/types.h"
51typedef unsigned long u_long;
52#line 115 "include/linux/types.h"
53typedef __u8 uint8_t;
54#line 117 "include/linux/types.h"
55typedef __u32 uint32_t;
56#line 120 "include/linux/types.h"
57typedef __u64 uint64_t;
58#line 202 "include/linux/types.h"
59typedef unsigned int gfp_t;
60#line 206 "include/linux/types.h"
61typedef u64 phys_addr_t;
62#line 211 "include/linux/types.h"
63typedef phys_addr_t resource_size_t;
64#line 221 "include/linux/types.h"
65struct __anonstruct_atomic_t_6 {
66 int counter ;
67};
68#line 221 "include/linux/types.h"
69typedef struct __anonstruct_atomic_t_6 atomic_t;
70#line 226 "include/linux/types.h"
71struct __anonstruct_atomic64_t_7 {
72 long counter ;
73};
74#line 226 "include/linux/types.h"
75typedef struct __anonstruct_atomic64_t_7 atomic64_t;
76#line 227 "include/linux/types.h"
77struct list_head {
78 struct list_head *next ;
79 struct list_head *prev ;
80};
81#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
82struct module;
83#line 55
84struct module;
85#line 146 "include/linux/init.h"
86typedef void (*ctor_fn_t)(void);
87#line 46 "include/linux/dynamic_debug.h"
88struct device;
89#line 46
90struct device;
91#line 57
92struct completion;
93#line 57
94struct completion;
95#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
96struct page;
97#line 58
98struct page;
99#line 26 "include/asm-generic/getorder.h"
100struct task_struct;
101#line 26
102struct task_struct;
103#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
104struct file;
105#line 290
106struct file;
107#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
108struct arch_spinlock;
109#line 327
110struct arch_spinlock;
111#line 306 "include/linux/bitmap.h"
112struct bug_entry {
113 int bug_addr_disp ;
114 int file_disp ;
115 unsigned short line ;
116 unsigned short flags ;
117};
118#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
119struct static_key;
120#line 234
121struct static_key;
122#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
123struct kmem_cache;
124#line 23 "include/asm-generic/atomic-long.h"
125typedef atomic64_t atomic_long_t;
126#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
127typedef u16 __ticket_t;
128#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
129typedef u32 __ticketpair_t;
130#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
131struct __raw_tickets {
132 __ticket_t head ;
133 __ticket_t tail ;
134};
135#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
136union __anonunion_ldv_5907_29 {
137 __ticketpair_t head_tail ;
138 struct __raw_tickets tickets ;
139};
140#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
141struct arch_spinlock {
142 union __anonunion_ldv_5907_29 ldv_5907 ;
143};
144#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
145typedef struct arch_spinlock arch_spinlock_t;
146#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
147struct lockdep_map;
148#line 34
149struct lockdep_map;
150#line 55 "include/linux/debug_locks.h"
151struct stack_trace {
152 unsigned int nr_entries ;
153 unsigned int max_entries ;
154 unsigned long *entries ;
155 int skip ;
156};
157#line 26 "include/linux/stacktrace.h"
158struct lockdep_subclass_key {
159 char __one_byte ;
160};
161#line 53 "include/linux/lockdep.h"
162struct lock_class_key {
163 struct lockdep_subclass_key subkeys[8U] ;
164};
165#line 59 "include/linux/lockdep.h"
166struct lock_class {
167 struct list_head hash_entry ;
168 struct list_head lock_entry ;
169 struct lockdep_subclass_key *key ;
170 unsigned int subclass ;
171 unsigned int dep_gen_id ;
172 unsigned long usage_mask ;
173 struct stack_trace usage_traces[13U] ;
174 struct list_head locks_after ;
175 struct list_head locks_before ;
176 unsigned int version ;
177 unsigned long ops ;
178 char const *name ;
179 int name_version ;
180 unsigned long contention_point[4U] ;
181 unsigned long contending_point[4U] ;
182};
183#line 144 "include/linux/lockdep.h"
184struct lockdep_map {
185 struct lock_class_key *key ;
186 struct lock_class *class_cache[2U] ;
187 char const *name ;
188 int cpu ;
189 unsigned long ip ;
190};
191#line 556 "include/linux/lockdep.h"
192struct raw_spinlock {
193 arch_spinlock_t raw_lock ;
194 unsigned int magic ;
195 unsigned int owner_cpu ;
196 void *owner ;
197 struct lockdep_map dep_map ;
198};
199#line 33 "include/linux/spinlock_types.h"
200struct __anonstruct_ldv_6122_33 {
201 u8 __padding[24U] ;
202 struct lockdep_map dep_map ;
203};
204#line 33 "include/linux/spinlock_types.h"
205union __anonunion_ldv_6123_32 {
206 struct raw_spinlock rlock ;
207 struct __anonstruct_ldv_6122_33 ldv_6122 ;
208};
209#line 33 "include/linux/spinlock_types.h"
210struct spinlock {
211 union __anonunion_ldv_6123_32 ldv_6123 ;
212};
213#line 76 "include/linux/spinlock_types.h"
214typedef struct spinlock spinlock_t;
215#line 48 "include/linux/wait.h"
216struct __wait_queue_head {
217 spinlock_t lock ;
218 struct list_head task_list ;
219};
220#line 53 "include/linux/wait.h"
221typedef struct __wait_queue_head wait_queue_head_t;
222#line 670 "include/linux/mmzone.h"
223struct mutex {
224 atomic_t count ;
225 spinlock_t wait_lock ;
226 struct list_head wait_list ;
227 struct task_struct *owner ;
228 char const *name ;
229 void *magic ;
230 struct lockdep_map dep_map ;
231};
232#line 128 "include/linux/rwsem.h"
233struct completion {
234 unsigned int done ;
235 wait_queue_head_t wait ;
236};
237#line 188 "include/linux/rcupdate.h"
238struct notifier_block;
239#line 188
240struct notifier_block;
241#line 239 "include/linux/srcu.h"
242struct notifier_block {
243 int (*notifier_call)(struct notifier_block * , unsigned long , void * ) ;
244 struct notifier_block *next ;
245 int priority ;
246};
247#line 312 "include/linux/jiffies.h"
248union ktime {
249 s64 tv64 ;
250};
251#line 59 "include/linux/ktime.h"
252typedef union ktime ktime_t;
253#line 341
254struct tvec_base;
255#line 341
256struct tvec_base;
257#line 342 "include/linux/ktime.h"
258struct timer_list {
259 struct list_head entry ;
260 unsigned long expires ;
261 struct tvec_base *base ;
262 void (*function)(unsigned long ) ;
263 unsigned long data ;
264 int slack ;
265 int start_pid ;
266 void *start_site ;
267 char start_comm[16U] ;
268 struct lockdep_map lockdep_map ;
269};
270#line 302 "include/linux/timer.h"
271struct work_struct;
272#line 302
273struct work_struct;
274#line 45 "include/linux/workqueue.h"
275struct work_struct {
276 atomic_long_t data ;
277 struct list_head entry ;
278 void (*func)(struct work_struct * ) ;
279 struct lockdep_map lockdep_map ;
280};
281#line 46 "include/linux/pm.h"
282struct pm_message {
283 int event ;
284};
285#line 52 "include/linux/pm.h"
286typedef struct pm_message pm_message_t;
287#line 53 "include/linux/pm.h"
288struct dev_pm_ops {
289 int (*prepare)(struct device * ) ;
290 void (*complete)(struct device * ) ;
291 int (*suspend)(struct device * ) ;
292 int (*resume)(struct device * ) ;
293 int (*freeze)(struct device * ) ;
294 int (*thaw)(struct device * ) ;
295 int (*poweroff)(struct device * ) ;
296 int (*restore)(struct device * ) ;
297 int (*suspend_late)(struct device * ) ;
298 int (*resume_early)(struct device * ) ;
299 int (*freeze_late)(struct device * ) ;
300 int (*thaw_early)(struct device * ) ;
301 int (*poweroff_late)(struct device * ) ;
302 int (*restore_early)(struct device * ) ;
303 int (*suspend_noirq)(struct device * ) ;
304 int (*resume_noirq)(struct device * ) ;
305 int (*freeze_noirq)(struct device * ) ;
306 int (*thaw_noirq)(struct device * ) ;
307 int (*poweroff_noirq)(struct device * ) ;
308 int (*restore_noirq)(struct device * ) ;
309 int (*runtime_suspend)(struct device * ) ;
310 int (*runtime_resume)(struct device * ) ;
311 int (*runtime_idle)(struct device * ) ;
312};
313#line 289
314enum rpm_status {
315 RPM_ACTIVE = 0,
316 RPM_RESUMING = 1,
317 RPM_SUSPENDED = 2,
318 RPM_SUSPENDING = 3
319} ;
320#line 296
321enum rpm_request {
322 RPM_REQ_NONE = 0,
323 RPM_REQ_IDLE = 1,
324 RPM_REQ_SUSPEND = 2,
325 RPM_REQ_AUTOSUSPEND = 3,
326 RPM_REQ_RESUME = 4
327} ;
328#line 304
329struct wakeup_source;
330#line 304
331struct wakeup_source;
332#line 494 "include/linux/pm.h"
333struct pm_subsys_data {
334 spinlock_t lock ;
335 unsigned int refcount ;
336};
337#line 499
338struct dev_pm_qos_request;
339#line 499
340struct pm_qos_constraints;
341#line 499 "include/linux/pm.h"
342struct dev_pm_info {
343 pm_message_t power_state ;
344 unsigned char can_wakeup : 1 ;
345 unsigned char async_suspend : 1 ;
346 bool is_prepared ;
347 bool is_suspended ;
348 bool ignore_children ;
349 spinlock_t lock ;
350 struct list_head entry ;
351 struct completion completion ;
352 struct wakeup_source *wakeup ;
353 bool wakeup_path ;
354 struct timer_list suspend_timer ;
355 unsigned long timer_expires ;
356 struct work_struct work ;
357 wait_queue_head_t wait_queue ;
358 atomic_t usage_count ;
359 atomic_t child_count ;
360 unsigned char disable_depth : 3 ;
361 unsigned char idle_notification : 1 ;
362 unsigned char request_pending : 1 ;
363 unsigned char deferred_resume : 1 ;
364 unsigned char run_wake : 1 ;
365 unsigned char runtime_auto : 1 ;
366 unsigned char no_callbacks : 1 ;
367 unsigned char irq_safe : 1 ;
368 unsigned char use_autosuspend : 1 ;
369 unsigned char timer_autosuspends : 1 ;
370 enum rpm_request request ;
371 enum rpm_status runtime_status ;
372 int runtime_error ;
373 int autosuspend_delay ;
374 unsigned long last_busy ;
375 unsigned long active_jiffies ;
376 unsigned long suspended_jiffies ;
377 unsigned long accounting_timestamp ;
378 ktime_t suspend_time ;
379 s64 max_time_suspended_ns ;
380 struct dev_pm_qos_request *pq_req ;
381 struct pm_subsys_data *subsys_data ;
382 struct pm_qos_constraints *constraints ;
383};
384#line 558 "include/linux/pm.h"
385struct dev_pm_domain {
386 struct dev_pm_ops ops ;
387};
388#line 18 "include/asm-generic/pci_iomap.h"
389struct vm_area_struct;
390#line 18
391struct vm_area_struct;
392#line 18 "include/linux/elf.h"
393typedef __u64 Elf64_Addr;
394#line 19 "include/linux/elf.h"
395typedef __u16 Elf64_Half;
396#line 23 "include/linux/elf.h"
397typedef __u32 Elf64_Word;
398#line 24 "include/linux/elf.h"
399typedef __u64 Elf64_Xword;
400#line 193 "include/linux/elf.h"
401struct elf64_sym {
402 Elf64_Word st_name ;
403 unsigned char st_info ;
404 unsigned char st_other ;
405 Elf64_Half st_shndx ;
406 Elf64_Addr st_value ;
407 Elf64_Xword st_size ;
408};
409#line 201 "include/linux/elf.h"
410typedef struct elf64_sym Elf64_Sym;
411#line 445
412struct sock;
413#line 445
414struct sock;
415#line 446
416struct kobject;
417#line 446
418struct kobject;
419#line 447
420enum kobj_ns_type {
421 KOBJ_NS_TYPE_NONE = 0,
422 KOBJ_NS_TYPE_NET = 1,
423 KOBJ_NS_TYPES = 2
424} ;
425#line 453 "include/linux/elf.h"
426struct kobj_ns_type_operations {
427 enum kobj_ns_type type ;
428 void *(*grab_current_ns)(void) ;
429 void const *(*netlink_ns)(struct sock * ) ;
430 void const *(*initial_ns)(void) ;
431 void (*drop_ns)(void * ) ;
432};
433#line 57 "include/linux/kobject_ns.h"
434struct attribute {
435 char const *name ;
436 umode_t mode ;
437 struct lock_class_key *key ;
438 struct lock_class_key skey ;
439};
440#line 33 "include/linux/sysfs.h"
441struct attribute_group {
442 char const *name ;
443 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
444 struct attribute **attrs ;
445};
446#line 62 "include/linux/sysfs.h"
447struct bin_attribute {
448 struct attribute attr ;
449 size_t size ;
450 void *private ;
451 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
452 loff_t , size_t ) ;
453 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
454 loff_t , size_t ) ;
455 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
456};
457#line 98 "include/linux/sysfs.h"
458struct sysfs_ops {
459 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
460 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
461 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
462};
463#line 117
464struct sysfs_dirent;
465#line 117
466struct sysfs_dirent;
467#line 182 "include/linux/sysfs.h"
468struct kref {
469 atomic_t refcount ;
470};
471#line 49 "include/linux/kobject.h"
472struct kset;
473#line 49
474struct kobj_type;
475#line 49 "include/linux/kobject.h"
476struct kobject {
477 char const *name ;
478 struct list_head entry ;
479 struct kobject *parent ;
480 struct kset *kset ;
481 struct kobj_type *ktype ;
482 struct sysfs_dirent *sd ;
483 struct kref kref ;
484 unsigned char state_initialized : 1 ;
485 unsigned char state_in_sysfs : 1 ;
486 unsigned char state_add_uevent_sent : 1 ;
487 unsigned char state_remove_uevent_sent : 1 ;
488 unsigned char uevent_suppress : 1 ;
489};
490#line 107 "include/linux/kobject.h"
491struct kobj_type {
492 void (*release)(struct kobject * ) ;
493 struct sysfs_ops const *sysfs_ops ;
494 struct attribute **default_attrs ;
495 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
496 void const *(*namespace)(struct kobject * ) ;
497};
498#line 115 "include/linux/kobject.h"
499struct kobj_uevent_env {
500 char *envp[32U] ;
501 int envp_idx ;
502 char buf[2048U] ;
503 int buflen ;
504};
505#line 122 "include/linux/kobject.h"
506struct kset_uevent_ops {
507 int (* const filter)(struct kset * , struct kobject * ) ;
508 char const *(* const name)(struct kset * , struct kobject * ) ;
509 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
510};
511#line 139 "include/linux/kobject.h"
512struct kset {
513 struct list_head list ;
514 spinlock_t list_lock ;
515 struct kobject kobj ;
516 struct kset_uevent_ops const *uevent_ops ;
517};
518#line 215
519struct kernel_param;
520#line 215
521struct kernel_param;
522#line 216 "include/linux/kobject.h"
523struct kernel_param_ops {
524 int (*set)(char const * , struct kernel_param const * ) ;
525 int (*get)(char * , struct kernel_param const * ) ;
526 void (*free)(void * ) ;
527};
528#line 49 "include/linux/moduleparam.h"
529struct kparam_string;
530#line 49
531struct kparam_array;
532#line 49 "include/linux/moduleparam.h"
533union __anonunion_ldv_13363_134 {
534 void *arg ;
535 struct kparam_string const *str ;
536 struct kparam_array const *arr ;
537};
538#line 49 "include/linux/moduleparam.h"
539struct kernel_param {
540 char const *name ;
541 struct kernel_param_ops const *ops ;
542 u16 perm ;
543 s16 level ;
544 union __anonunion_ldv_13363_134 ldv_13363 ;
545};
546#line 61 "include/linux/moduleparam.h"
547struct kparam_string {
548 unsigned int maxlen ;
549 char *string ;
550};
551#line 67 "include/linux/moduleparam.h"
552struct kparam_array {
553 unsigned int max ;
554 unsigned int elemsize ;
555 unsigned int *num ;
556 struct kernel_param_ops const *ops ;
557 void *elem ;
558};
559#line 458 "include/linux/moduleparam.h"
560struct static_key {
561 atomic_t enabled ;
562};
563#line 225 "include/linux/jump_label.h"
564struct tracepoint;
565#line 225
566struct tracepoint;
567#line 226 "include/linux/jump_label.h"
568struct tracepoint_func {
569 void *func ;
570 void *data ;
571};
572#line 29 "include/linux/tracepoint.h"
573struct tracepoint {
574 char const *name ;
575 struct static_key key ;
576 void (*regfunc)(void) ;
577 void (*unregfunc)(void) ;
578 struct tracepoint_func *funcs ;
579};
580#line 86 "include/linux/tracepoint.h"
581struct kernel_symbol {
582 unsigned long value ;
583 char const *name ;
584};
585#line 27 "include/linux/export.h"
586struct mod_arch_specific {
587
588};
589#line 34 "include/linux/module.h"
590struct module_param_attrs;
591#line 34 "include/linux/module.h"
592struct module_kobject {
593 struct kobject kobj ;
594 struct module *mod ;
595 struct kobject *drivers_dir ;
596 struct module_param_attrs *mp ;
597};
598#line 43 "include/linux/module.h"
599struct module_attribute {
600 struct attribute attr ;
601 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
602 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
603 size_t ) ;
604 void (*setup)(struct module * , char const * ) ;
605 int (*test)(struct module * ) ;
606 void (*free)(struct module * ) ;
607};
608#line 69
609struct exception_table_entry;
610#line 69
611struct exception_table_entry;
612#line 198
613enum module_state {
614 MODULE_STATE_LIVE = 0,
615 MODULE_STATE_COMING = 1,
616 MODULE_STATE_GOING = 2
617} ;
618#line 204 "include/linux/module.h"
619struct module_ref {
620 unsigned long incs ;
621 unsigned long decs ;
622};
623#line 219
624struct module_sect_attrs;
625#line 219
626struct module_notes_attrs;
627#line 219
628struct ftrace_event_call;
629#line 219 "include/linux/module.h"
630struct module {
631 enum module_state state ;
632 struct list_head list ;
633 char name[56U] ;
634 struct module_kobject mkobj ;
635 struct module_attribute *modinfo_attrs ;
636 char const *version ;
637 char const *srcversion ;
638 struct kobject *holders_dir ;
639 struct kernel_symbol const *syms ;
640 unsigned long const *crcs ;
641 unsigned int num_syms ;
642 struct kernel_param *kp ;
643 unsigned int num_kp ;
644 unsigned int num_gpl_syms ;
645 struct kernel_symbol const *gpl_syms ;
646 unsigned long const *gpl_crcs ;
647 struct kernel_symbol const *unused_syms ;
648 unsigned long const *unused_crcs ;
649 unsigned int num_unused_syms ;
650 unsigned int num_unused_gpl_syms ;
651 struct kernel_symbol const *unused_gpl_syms ;
652 unsigned long const *unused_gpl_crcs ;
653 struct kernel_symbol const *gpl_future_syms ;
654 unsigned long const *gpl_future_crcs ;
655 unsigned int num_gpl_future_syms ;
656 unsigned int num_exentries ;
657 struct exception_table_entry *extable ;
658 int (*init)(void) ;
659 void *module_init ;
660 void *module_core ;
661 unsigned int init_size ;
662 unsigned int core_size ;
663 unsigned int init_text_size ;
664 unsigned int core_text_size ;
665 unsigned int init_ro_size ;
666 unsigned int core_ro_size ;
667 struct mod_arch_specific arch ;
668 unsigned int taints ;
669 unsigned int num_bugs ;
670 struct list_head bug_list ;
671 struct bug_entry *bug_table ;
672 Elf64_Sym *symtab ;
673 Elf64_Sym *core_symtab ;
674 unsigned int num_symtab ;
675 unsigned int core_num_syms ;
676 char *strtab ;
677 char *core_strtab ;
678 struct module_sect_attrs *sect_attrs ;
679 struct module_notes_attrs *notes_attrs ;
680 char *args ;
681 void *percpu ;
682 unsigned int percpu_size ;
683 unsigned int num_tracepoints ;
684 struct tracepoint * const *tracepoints_ptrs ;
685 unsigned int num_trace_bprintk_fmt ;
686 char const **trace_bprintk_fmt_start ;
687 struct ftrace_event_call **trace_events ;
688 unsigned int num_trace_events ;
689 struct list_head source_list ;
690 struct list_head target_list ;
691 struct task_struct *waiter ;
692 void (*exit)(void) ;
693 struct module_ref *refptr ;
694 ctor_fn_t (**ctors)(void) ;
695 unsigned int num_ctors ;
696};
697#line 88 "include/linux/kmemleak.h"
698struct kmem_cache_cpu {
699 void **freelist ;
700 unsigned long tid ;
701 struct page *page ;
702 struct page *partial ;
703 int node ;
704 unsigned int stat[26U] ;
705};
706#line 55 "include/linux/slub_def.h"
707struct kmem_cache_node {
708 spinlock_t list_lock ;
709 unsigned long nr_partial ;
710 struct list_head partial ;
711 atomic_long_t nr_slabs ;
712 atomic_long_t total_objects ;
713 struct list_head full ;
714};
715#line 66 "include/linux/slub_def.h"
716struct kmem_cache_order_objects {
717 unsigned long x ;
718};
719#line 76 "include/linux/slub_def.h"
720struct kmem_cache {
721 struct kmem_cache_cpu *cpu_slab ;
722 unsigned long flags ;
723 unsigned long min_partial ;
724 int size ;
725 int objsize ;
726 int offset ;
727 int cpu_partial ;
728 struct kmem_cache_order_objects oo ;
729 struct kmem_cache_order_objects max ;
730 struct kmem_cache_order_objects min ;
731 gfp_t allocflags ;
732 int refcount ;
733 void (*ctor)(void * ) ;
734 int inuse ;
735 int align ;
736 int reserved ;
737 char const *name ;
738 struct list_head list ;
739 struct kobject kobj ;
740 int remote_node_defrag_ratio ;
741 struct kmem_cache_node *node[1024U] ;
742};
743#line 21 "include/linux/uio.h"
744struct kvec {
745 void *iov_base ;
746 size_t iov_len ;
747};
748#line 54
749struct klist_node;
750#line 54
751struct klist_node;
752#line 37 "include/linux/klist.h"
753struct klist_node {
754 void *n_klist ;
755 struct list_head n_node ;
756 struct kref n_ref ;
757};
758#line 67
759struct dma_map_ops;
760#line 67 "include/linux/klist.h"
761struct dev_archdata {
762 void *acpi_handle ;
763 struct dma_map_ops *dma_ops ;
764 void *iommu ;
765};
766#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
767struct device_private;
768#line 17
769struct device_private;
770#line 18
771struct device_driver;
772#line 18
773struct device_driver;
774#line 19
775struct driver_private;
776#line 19
777struct driver_private;
778#line 20
779struct class;
780#line 20
781struct class;
782#line 21
783struct subsys_private;
784#line 21
785struct subsys_private;
786#line 22
787struct bus_type;
788#line 22
789struct bus_type;
790#line 23
791struct device_node;
792#line 23
793struct device_node;
794#line 24
795struct iommu_ops;
796#line 24
797struct iommu_ops;
798#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
799struct bus_attribute {
800 struct attribute attr ;
801 ssize_t (*show)(struct bus_type * , char * ) ;
802 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
803};
804#line 51 "include/linux/device.h"
805struct device_attribute;
806#line 51
807struct driver_attribute;
808#line 51 "include/linux/device.h"
809struct bus_type {
810 char const *name ;
811 char const *dev_name ;
812 struct device *dev_root ;
813 struct bus_attribute *bus_attrs ;
814 struct device_attribute *dev_attrs ;
815 struct driver_attribute *drv_attrs ;
816 int (*match)(struct device * , struct device_driver * ) ;
817 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
818 int (*probe)(struct device * ) ;
819 int (*remove)(struct device * ) ;
820 void (*shutdown)(struct device * ) ;
821 int (*suspend)(struct device * , pm_message_t ) ;
822 int (*resume)(struct device * ) ;
823 struct dev_pm_ops const *pm ;
824 struct iommu_ops *iommu_ops ;
825 struct subsys_private *p ;
826};
827#line 125
828struct device_type;
829#line 182
830struct of_device_id;
831#line 182 "include/linux/device.h"
832struct device_driver {
833 char const *name ;
834 struct bus_type *bus ;
835 struct module *owner ;
836 char const *mod_name ;
837 bool suppress_bind_attrs ;
838 struct of_device_id const *of_match_table ;
839 int (*probe)(struct device * ) ;
840 int (*remove)(struct device * ) ;
841 void (*shutdown)(struct device * ) ;
842 int (*suspend)(struct device * , pm_message_t ) ;
843 int (*resume)(struct device * ) ;
844 struct attribute_group const **groups ;
845 struct dev_pm_ops const *pm ;
846 struct driver_private *p ;
847};
848#line 245 "include/linux/device.h"
849struct driver_attribute {
850 struct attribute attr ;
851 ssize_t (*show)(struct device_driver * , char * ) ;
852 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
853};
854#line 299
855struct class_attribute;
856#line 299 "include/linux/device.h"
857struct class {
858 char const *name ;
859 struct module *owner ;
860 struct class_attribute *class_attrs ;
861 struct device_attribute *dev_attrs ;
862 struct bin_attribute *dev_bin_attrs ;
863 struct kobject *dev_kobj ;
864 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
865 char *(*devnode)(struct device * , umode_t * ) ;
866 void (*class_release)(struct class * ) ;
867 void (*dev_release)(struct device * ) ;
868 int (*suspend)(struct device * , pm_message_t ) ;
869 int (*resume)(struct device * ) ;
870 struct kobj_ns_type_operations const *ns_type ;
871 void const *(*namespace)(struct device * ) ;
872 struct dev_pm_ops const *pm ;
873 struct subsys_private *p ;
874};
875#line 394 "include/linux/device.h"
876struct class_attribute {
877 struct attribute attr ;
878 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
879 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
880 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
881};
882#line 447 "include/linux/device.h"
883struct device_type {
884 char const *name ;
885 struct attribute_group const **groups ;
886 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
887 char *(*devnode)(struct device * , umode_t * ) ;
888 void (*release)(struct device * ) ;
889 struct dev_pm_ops const *pm ;
890};
891#line 474 "include/linux/device.h"
892struct device_attribute {
893 struct attribute attr ;
894 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
895 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
896 size_t ) ;
897};
898#line 557 "include/linux/device.h"
899struct device_dma_parameters {
900 unsigned int max_segment_size ;
901 unsigned long segment_boundary_mask ;
902};
903#line 567
904struct dma_coherent_mem;
905#line 567 "include/linux/device.h"
906struct device {
907 struct device *parent ;
908 struct device_private *p ;
909 struct kobject kobj ;
910 char const *init_name ;
911 struct device_type const *type ;
912 struct mutex mutex ;
913 struct bus_type *bus ;
914 struct device_driver *driver ;
915 void *platform_data ;
916 struct dev_pm_info power ;
917 struct dev_pm_domain *pm_domain ;
918 int numa_node ;
919 u64 *dma_mask ;
920 u64 coherent_dma_mask ;
921 struct device_dma_parameters *dma_parms ;
922 struct list_head dma_pools ;
923 struct dma_coherent_mem *dma_mem ;
924 struct dev_archdata archdata ;
925 struct device_node *of_node ;
926 dev_t devt ;
927 u32 id ;
928 spinlock_t devres_lock ;
929 struct list_head devres_head ;
930 struct klist_node knode_class ;
931 struct class *class ;
932 struct attribute_group const **groups ;
933 void (*release)(struct device * ) ;
934};
935#line 681 "include/linux/device.h"
936struct wakeup_source {
937 char const *name ;
938 struct list_head entry ;
939 spinlock_t lock ;
940 struct timer_list timer ;
941 unsigned long timer_expires ;
942 ktime_t total_time ;
943 ktime_t max_time ;
944 ktime_t last_time ;
945 unsigned long event_count ;
946 unsigned long active_count ;
947 unsigned long relax_count ;
948 unsigned long hit_count ;
949 unsigned char active : 1 ;
950};
951#line 142 "include/mtd/mtd-abi.h"
952struct otp_info {
953 __u32 start ;
954 __u32 length ;
955 __u32 locked ;
956};
957#line 216 "include/mtd/mtd-abi.h"
958struct nand_oobfree {
959 __u32 offset ;
960 __u32 length ;
961};
962#line 238 "include/mtd/mtd-abi.h"
963struct mtd_ecc_stats {
964 __u32 corrected ;
965 __u32 failed ;
966 __u32 badblocks ;
967 __u32 bbtblocks ;
968};
969#line 260
970struct mtd_info;
971#line 260 "include/mtd/mtd-abi.h"
972struct erase_info {
973 struct mtd_info *mtd ;
974 uint64_t addr ;
975 uint64_t len ;
976 uint64_t fail_addr ;
977 u_long time ;
978 u_long retries ;
979 unsigned int dev ;
980 unsigned int cell ;
981 void (*callback)(struct erase_info * ) ;
982 u_long priv ;
983 u_char state ;
984 struct erase_info *next ;
985};
986#line 62 "include/linux/mtd/mtd.h"
987struct mtd_erase_region_info {
988 uint64_t offset ;
989 uint32_t erasesize ;
990 uint32_t numblocks ;
991 unsigned long *lockmap ;
992};
993#line 69 "include/linux/mtd/mtd.h"
994struct mtd_oob_ops {
995 unsigned int mode ;
996 size_t len ;
997 size_t retlen ;
998 size_t ooblen ;
999 size_t oobretlen ;
1000 uint32_t ooboffs ;
1001 uint8_t *datbuf ;
1002 uint8_t *oobbuf ;
1003};
1004#line 99 "include/linux/mtd/mtd.h"
1005struct nand_ecclayout {
1006 __u32 eccbytes ;
1007 __u32 eccpos[448U] ;
1008 __u32 oobavail ;
1009 struct nand_oobfree oobfree[32U] ;
1010};
1011#line 114
1012struct backing_dev_info;
1013#line 114 "include/linux/mtd/mtd.h"
1014struct mtd_info {
1015 u_char type ;
1016 uint32_t flags ;
1017 uint64_t size ;
1018 uint32_t erasesize ;
1019 uint32_t writesize ;
1020 uint32_t writebufsize ;
1021 uint32_t oobsize ;
1022 uint32_t oobavail ;
1023 unsigned int erasesize_shift ;
1024 unsigned int writesize_shift ;
1025 unsigned int erasesize_mask ;
1026 unsigned int writesize_mask ;
1027 char const *name ;
1028 int index ;
1029 struct nand_ecclayout *ecclayout ;
1030 unsigned int ecc_strength ;
1031 int numeraseregions ;
1032 struct mtd_erase_region_info *eraseregions ;
1033 int (*_erase)(struct mtd_info * , struct erase_info * ) ;
1034 int (*_point)(struct mtd_info * , loff_t , size_t , size_t * , void ** , resource_size_t * ) ;
1035 int (*_unpoint)(struct mtd_info * , loff_t , size_t ) ;
1036 unsigned long (*_get_unmapped_area)(struct mtd_info * , unsigned long , unsigned long ,
1037 unsigned long ) ;
1038 int (*_read)(struct mtd_info * , loff_t , size_t , size_t * , u_char * ) ;
1039 int (*_write)(struct mtd_info * , loff_t , size_t , size_t * , u_char const * ) ;
1040 int (*_panic_write)(struct mtd_info * , loff_t , size_t , size_t * , u_char const * ) ;
1041 int (*_read_oob)(struct mtd_info * , loff_t , struct mtd_oob_ops * ) ;
1042 int (*_write_oob)(struct mtd_info * , loff_t , struct mtd_oob_ops * ) ;
1043 int (*_get_fact_prot_info)(struct mtd_info * , struct otp_info * , size_t ) ;
1044 int (*_read_fact_prot_reg)(struct mtd_info * , loff_t , size_t , size_t * , u_char * ) ;
1045 int (*_get_user_prot_info)(struct mtd_info * , struct otp_info * , size_t ) ;
1046 int (*_read_user_prot_reg)(struct mtd_info * , loff_t , size_t , size_t * , u_char * ) ;
1047 int (*_write_user_prot_reg)(struct mtd_info * , loff_t , size_t , size_t * ,
1048 u_char * ) ;
1049 int (*_lock_user_prot_reg)(struct mtd_info * , loff_t , size_t ) ;
1050 int (*_writev)(struct mtd_info * , struct kvec const * , unsigned long , loff_t ,
1051 size_t * ) ;
1052 void (*_sync)(struct mtd_info * ) ;
1053 int (*_lock)(struct mtd_info * , loff_t , uint64_t ) ;
1054 int (*_unlock)(struct mtd_info * , loff_t , uint64_t ) ;
1055 int (*_is_locked)(struct mtd_info * , loff_t , uint64_t ) ;
1056 int (*_block_isbad)(struct mtd_info * , loff_t ) ;
1057 int (*_block_markbad)(struct mtd_info * , loff_t ) ;
1058 int (*_suspend)(struct mtd_info * ) ;
1059 void (*_resume)(struct mtd_info * ) ;
1060 int (*_get_device)(struct mtd_info * ) ;
1061 void (*_put_device)(struct mtd_info * ) ;
1062 struct backing_dev_info *backing_dev_info ;
1063 struct notifier_block reboot_notifier ;
1064 struct mtd_ecc_stats ecc_stats ;
1065 int subpage_sft ;
1066 void *priv ;
1067 struct module *owner ;
1068 struct device dev ;
1069 int usecount ;
1070};
1071#line 356
1072struct mtd_partition;
1073#line 356
1074struct mtd_partition;
1075#line 357
1076struct mtd_part_parser_data;
1077#line 357
1078struct mtd_part_parser_data;
1079#line 188 "include/linux/mtd/map.h"
1080union __anonunion_map_word_135 {
1081 unsigned long x[4U] ;
1082};
1083#line 188 "include/linux/mtd/map.h"
1084typedef union __anonunion_map_word_135 map_word;
1085#line 189
1086struct mtd_chip_driver;
1087#line 189 "include/linux/mtd/map.h"
1088struct map_info {
1089 char const *name ;
1090 unsigned long size ;
1091 resource_size_t phys ;
1092 void *virt ;
1093 void *cached ;
1094 int swap ;
1095 int bankwidth ;
1096 map_word (*read)(struct map_info * , unsigned long ) ;
1097 void (*copy_from)(struct map_info * , void * , unsigned long , ssize_t ) ;
1098 void (*write)(struct map_info * , map_word const , unsigned long ) ;
1099 void (*copy_to)(struct map_info * , unsigned long , void const * , ssize_t ) ;
1100 void (*inval_cache)(struct map_info * , unsigned long , ssize_t ) ;
1101 void (*set_vpp)(struct map_info * , int ) ;
1102 unsigned long pfow_base ;
1103 unsigned long map_priv_1 ;
1104 unsigned long map_priv_2 ;
1105 void *fldrv_priv ;
1106 struct mtd_chip_driver *fldrv ;
1107};
1108#line 251 "include/linux/mtd/map.h"
1109struct mtd_chip_driver {
1110 struct mtd_info *(*probe)(struct map_info * ) ;
1111 void (*destroy)(struct mtd_info * ) ;
1112 struct module *module ;
1113 char *name ;
1114 struct list_head list ;
1115};
1116#line 451 "include/linux/mtd/map.h"
1117struct mtd_partition {
1118 char *name ;
1119 uint64_t size ;
1120 uint64_t offset ;
1121 uint32_t mask_flags ;
1122 struct nand_ecclayout *ecclayout ;
1123};
1124#line 46 "include/linux/mtd/partitions.h"
1125struct mtd_part_parser_data {
1126 unsigned long origin ;
1127 struct device_node *of_node ;
1128};
1129#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1130void ldv_spin_lock(void) ;
1131#line 3
1132void ldv_spin_unlock(void) ;
1133#line 4
1134int ldv_spin_trylock(void) ;
1135#line 101 "include/linux/printk.h"
1136extern int printk(char const * , ...) ;
1137#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
1138extern void *ioremap_nocache(resource_size_t , unsigned long ) ;
1139#line 187
1140extern void iounmap(void volatile * ) ;
1141#line 26 "include/linux/export.h"
1142extern struct module __this_module ;
1143#line 220 "include/linux/slub_def.h"
1144extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
1145#line 223
1146void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
1147#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1148void ldv_check_alloc_flags(gfp_t flags ) ;
1149#line 12
1150void ldv_check_alloc_nonatomic(void) ;
1151#line 14
1152struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
1153#line 362 "include/linux/mtd/mtd.h"
1154extern int mtd_device_parse_register(struct mtd_info * , char const ** , struct mtd_part_parser_data * ,
1155 struct mtd_partition const * , int ) ;
1156#line 369
1157extern int mtd_device_unregister(struct mtd_info * ) ;
1158#line 263 "include/linux/mtd/map.h"
1159extern struct mtd_info *do_map_probe(char const * , struct map_info * ) ;
1160#line 264
1161extern void map_destroy(struct mtd_info * ) ;
1162#line 450
1163extern void simple_map_init(struct map_info * ) ;
1164#line 70 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1165static struct mtd_partition partition_info[4U] = { {(char *)"NetSc520 boot kernel", 786432ULL, 0ULL, 0U, (struct nand_ecclayout *)0},
1166 {(char *)"NetSc520 Low BIOS",
1167 262144ULL, 786432ULL, 0U, (struct nand_ecclayout *)0},
1168 {(char *)"NetSc520 file system", 15204352ULL, 1048576ULL, 0U, (struct nand_ecclayout *)0},
1169 {(char *)"NetSc520 High BIOS",
1170 524288ULL, 16252928ULL, 0U, (struct nand_ecclayout *)0}};
1171#line 97 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1172static struct map_info netsc520_map =
1173#line 97
1174 {"netsc520 Flash Bank", 1048576UL, 2097152ULL, (void *)0, (void *)0, 0, 4, (map_word (*)(struct map_info * ,
1175 unsigned long ))0,
1176 (void (*)(struct map_info * , void * , unsigned long , ssize_t ))0, (void (*)(struct map_info * ,
1177 map_word const ,
1178 unsigned long ))0,
1179 (void (*)(struct map_info * , unsigned long , void const * , ssize_t ))0,
1180 (void (*)(struct map_info * , unsigned long , ssize_t ))0, (void (*)(struct map_info * ,
1181 int ))0,
1182 0UL, 0UL, 0UL, (void *)0, (struct mtd_chip_driver *)0};
1183#line 106 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1184static struct mtd_info *mymtd ;
1185#line 108 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1186static int init_netsc520(void)
1187{ unsigned long __cil_tmp1 ;
1188 unsigned long __cil_tmp2 ;
1189 unsigned long long __cil_tmp3 ;
1190 unsigned long __cil_tmp4 ;
1191 resource_size_t __cil_tmp5 ;
1192 unsigned long __cil_tmp6 ;
1193 unsigned long __cil_tmp7 ;
1194 resource_size_t __cil_tmp8 ;
1195 unsigned long __cil_tmp9 ;
1196 unsigned long __cil_tmp10 ;
1197 void *__cil_tmp11 ;
1198 unsigned long __cil_tmp12 ;
1199 unsigned long __cil_tmp13 ;
1200 void *__cil_tmp14 ;
1201 unsigned long __cil_tmp15 ;
1202 struct mtd_info *__cil_tmp16 ;
1203 unsigned long __cil_tmp17 ;
1204 unsigned long __cil_tmp18 ;
1205 struct mtd_info *__cil_tmp19 ;
1206 unsigned long __cil_tmp20 ;
1207 unsigned long __cil_tmp21 ;
1208 struct mtd_info *__cil_tmp22 ;
1209 unsigned long __cil_tmp23 ;
1210 unsigned long __cil_tmp24 ;
1211 unsigned long __cil_tmp25 ;
1212 void *__cil_tmp26 ;
1213 void volatile *__cil_tmp27 ;
1214 unsigned long __cil_tmp28 ;
1215 unsigned long __cil_tmp29 ;
1216 char const **__cil_tmp30 ;
1217 struct mtd_part_parser_data *__cil_tmp31 ;
1218 struct mtd_partition const *__cil_tmp32 ;
1219
1220 {
1221 {
1222#line 110
1223 __cil_tmp1 = (unsigned long )(& netsc520_map) + 8;
1224#line 110
1225 __cil_tmp2 = *((unsigned long *)__cil_tmp1);
1226#line 110
1227 __cil_tmp3 = (unsigned long long )__cil_tmp2;
1228#line 110
1229 __cil_tmp4 = (unsigned long )(& netsc520_map) + 16;
1230#line 110
1231 __cil_tmp5 = *((resource_size_t *)__cil_tmp4);
1232#line 110
1233 printk("<5>NetSc520 flash device: 0x%Lx at 0x%Lx\n", __cil_tmp3, __cil_tmp5);
1234#line 113
1235 __cil_tmp6 = (unsigned long )(& netsc520_map) + 24;
1236#line 113
1237 __cil_tmp7 = (unsigned long )(& netsc520_map) + 16;
1238#line 113
1239 __cil_tmp8 = *((resource_size_t *)__cil_tmp7);
1240#line 113
1241 __cil_tmp9 = (unsigned long )(& netsc520_map) + 8;
1242#line 113
1243 __cil_tmp10 = *((unsigned long *)__cil_tmp9);
1244#line 113
1245 *((void **)__cil_tmp6) = ioremap_nocache(__cil_tmp8, __cil_tmp10);
1246 }
1247 {
1248#line 115
1249 __cil_tmp11 = (void *)0;
1250#line 115
1251 __cil_tmp12 = (unsigned long )__cil_tmp11;
1252#line 115
1253 __cil_tmp13 = (unsigned long )(& netsc520_map) + 24;
1254#line 115
1255 __cil_tmp14 = *((void **)__cil_tmp13);
1256#line 115
1257 __cil_tmp15 = (unsigned long )__cil_tmp14;
1258#line 115
1259 if (__cil_tmp15 == __cil_tmp12) {
1260 {
1261#line 116
1262 printk("Failed to ioremap_nocache\n");
1263 }
1264#line 117
1265 return (-5);
1266 } else {
1267
1268 }
1269 }
1270 {
1271#line 120
1272 simple_map_init(& netsc520_map);
1273#line 122
1274 mymtd = do_map_probe("cfi_probe", & netsc520_map);
1275 }
1276 {
1277#line 123
1278 __cil_tmp16 = (struct mtd_info *)0;
1279#line 123
1280 __cil_tmp17 = (unsigned long )__cil_tmp16;
1281#line 123
1282 __cil_tmp18 = (unsigned long )mymtd;
1283#line 123
1284 if (__cil_tmp18 == __cil_tmp17) {
1285 {
1286#line 124
1287 mymtd = do_map_probe("map_ram", & netsc520_map);
1288 }
1289 } else {
1290
1291 }
1292 }
1293 {
1294#line 125
1295 __cil_tmp19 = (struct mtd_info *)0;
1296#line 125
1297 __cil_tmp20 = (unsigned long )__cil_tmp19;
1298#line 125
1299 __cil_tmp21 = (unsigned long )mymtd;
1300#line 125
1301 if (__cil_tmp21 == __cil_tmp20) {
1302 {
1303#line 126
1304 mymtd = do_map_probe("map_rom", & netsc520_map);
1305 }
1306 } else {
1307
1308 }
1309 }
1310 {
1311#line 128
1312 __cil_tmp22 = (struct mtd_info *)0;
1313#line 128
1314 __cil_tmp23 = (unsigned long )__cil_tmp22;
1315#line 128
1316 __cil_tmp24 = (unsigned long )mymtd;
1317#line 128
1318 if (__cil_tmp24 == __cil_tmp23) {
1319 {
1320#line 129
1321 __cil_tmp25 = (unsigned long )(& netsc520_map) + 24;
1322#line 129
1323 __cil_tmp26 = *((void **)__cil_tmp25);
1324#line 129
1325 __cil_tmp27 = (void volatile *)__cil_tmp26;
1326#line 129
1327 iounmap(__cil_tmp27);
1328 }
1329#line 130
1330 return (-6);
1331 } else {
1332
1333 }
1334 }
1335 {
1336#line 133
1337 __cil_tmp28 = (unsigned long )mymtd;
1338#line 133
1339 __cil_tmp29 = __cil_tmp28 + 368;
1340#line 133
1341 *((struct module **)__cil_tmp29) = & __this_module;
1342#line 134
1343 __cil_tmp30 = (char const **)0;
1344#line 134
1345 __cil_tmp31 = (struct mtd_part_parser_data *)0;
1346#line 134
1347 __cil_tmp32 = (struct mtd_partition const *)(& partition_info);
1348#line 134
1349 mtd_device_parse_register(mymtd, __cil_tmp30, __cil_tmp31, __cil_tmp32, 4);
1350 }
1351#line 135
1352 return (0);
1353}
1354}
1355#line 138 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1356static void cleanup_netsc520(void)
1357{ struct mtd_info *__cil_tmp1 ;
1358 unsigned long __cil_tmp2 ;
1359 unsigned long __cil_tmp3 ;
1360 void *__cil_tmp4 ;
1361 unsigned long __cil_tmp5 ;
1362 unsigned long __cil_tmp6 ;
1363 void *__cil_tmp7 ;
1364 unsigned long __cil_tmp8 ;
1365 unsigned long __cil_tmp9 ;
1366 void *__cil_tmp10 ;
1367 void volatile *__cil_tmp11 ;
1368 unsigned long __cil_tmp12 ;
1369
1370 {
1371 {
1372#line 140
1373 __cil_tmp1 = (struct mtd_info *)0;
1374#line 140
1375 __cil_tmp2 = (unsigned long )__cil_tmp1;
1376#line 140
1377 __cil_tmp3 = (unsigned long )mymtd;
1378#line 140
1379 if (__cil_tmp3 != __cil_tmp2) {
1380 {
1381#line 141
1382 mtd_device_unregister(mymtd);
1383#line 142
1384 map_destroy(mymtd);
1385 }
1386 } else {
1387
1388 }
1389 }
1390 {
1391#line 144
1392 __cil_tmp4 = (void *)0;
1393#line 144
1394 __cil_tmp5 = (unsigned long )__cil_tmp4;
1395#line 144
1396 __cil_tmp6 = (unsigned long )(& netsc520_map) + 24;
1397#line 144
1398 __cil_tmp7 = *((void **)__cil_tmp6);
1399#line 144
1400 __cil_tmp8 = (unsigned long )__cil_tmp7;
1401#line 144
1402 if (__cil_tmp8 != __cil_tmp5) {
1403 {
1404#line 145
1405 __cil_tmp9 = (unsigned long )(& netsc520_map) + 24;
1406#line 145
1407 __cil_tmp10 = *((void **)__cil_tmp9);
1408#line 145
1409 __cil_tmp11 = (void volatile *)__cil_tmp10;
1410#line 145
1411 iounmap(__cil_tmp11);
1412#line 146
1413 __cil_tmp12 = (unsigned long )(& netsc520_map) + 24;
1414#line 146
1415 *((void **)__cil_tmp12) = (void *)0;
1416 }
1417 } else {
1418
1419 }
1420 }
1421#line 148
1422 return;
1423}
1424}
1425#line 173
1426extern void ldv_check_final_state(void) ;
1427#line 179
1428extern void ldv_initialize(void) ;
1429#line 182
1430extern int __VERIFIER_nondet_int(void) ;
1431#line 185 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1432int LDV_IN_INTERRUPT ;
1433#line 188 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1434void main(void)
1435{ int tmp ;
1436 int tmp___0 ;
1437 int tmp___1 ;
1438
1439 {
1440 {
1441#line 200
1442 LDV_IN_INTERRUPT = 1;
1443#line 209
1444 ldv_initialize();
1445#line 220
1446 tmp = init_netsc520();
1447 }
1448#line 220
1449 if (tmp != 0) {
1450#line 221
1451 goto ldv_final;
1452 } else {
1453
1454 }
1455#line 223
1456 goto ldv_15646;
1457 ldv_15645:
1458 {
1459#line 226
1460 tmp___0 = __VERIFIER_nondet_int();
1461 }
1462 {
1463#line 228
1464 goto switch_default;
1465#line 226
1466 if (0) {
1467 switch_default: ;
1468#line 228
1469 goto ldv_15644;
1470 } else {
1471 switch_break: ;
1472 }
1473 }
1474 ldv_15644: ;
1475 ldv_15646:
1476 {
1477#line 223
1478 tmp___1 = __VERIFIER_nondet_int();
1479 }
1480#line 223
1481 if (tmp___1 != 0) {
1482#line 224
1483 goto ldv_15645;
1484 } else {
1485#line 226
1486 goto ldv_15647;
1487 }
1488 ldv_15647: ;
1489 {
1490#line 245
1491 cleanup_netsc520();
1492 }
1493 ldv_final:
1494 {
1495#line 248
1496 ldv_check_final_state();
1497 }
1498#line 251
1499 return;
1500}
1501}
1502#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
1503void ldv_blast_assert(void)
1504{
1505
1506 {
1507 ERROR: ;
1508#line 6
1509 goto ERROR;
1510}
1511}
1512#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
1513extern int __VERIFIER_nondet_int(void) ;
1514#line 272 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1515int ldv_spin = 0;
1516#line 276 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1517void ldv_check_alloc_flags(gfp_t flags )
1518{
1519
1520 {
1521#line 279
1522 if (ldv_spin != 0) {
1523#line 279
1524 if (flags != 32U) {
1525 {
1526#line 279
1527 ldv_blast_assert();
1528 }
1529 } else {
1530
1531 }
1532 } else {
1533
1534 }
1535#line 282
1536 return;
1537}
1538}
1539#line 282
1540extern struct page *ldv_some_page(void) ;
1541#line 285 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1542struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
1543{ struct page *tmp ;
1544
1545 {
1546#line 288
1547 if (ldv_spin != 0) {
1548#line 288
1549 if (flags != 32U) {
1550 {
1551#line 288
1552 ldv_blast_assert();
1553 }
1554 } else {
1555
1556 }
1557 } else {
1558
1559 }
1560 {
1561#line 290
1562 tmp = ldv_some_page();
1563 }
1564#line 290
1565 return (tmp);
1566}
1567}
1568#line 294 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1569void ldv_check_alloc_nonatomic(void)
1570{
1571
1572 {
1573#line 297
1574 if (ldv_spin != 0) {
1575 {
1576#line 297
1577 ldv_blast_assert();
1578 }
1579 } else {
1580
1581 }
1582#line 300
1583 return;
1584}
1585}
1586#line 301 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1587void ldv_spin_lock(void)
1588{
1589
1590 {
1591#line 304
1592 ldv_spin = 1;
1593#line 305
1594 return;
1595}
1596}
1597#line 308 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1598void ldv_spin_unlock(void)
1599{
1600
1601 {
1602#line 311
1603 ldv_spin = 0;
1604#line 312
1605 return;
1606}
1607}
1608#line 315 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1609int ldv_spin_trylock(void)
1610{ int is_lock ;
1611
1612 {
1613 {
1614#line 320
1615 is_lock = __VERIFIER_nondet_int();
1616 }
1617#line 322
1618 if (is_lock != 0) {
1619#line 325
1620 return (0);
1621 } else {
1622#line 330
1623 ldv_spin = 1;
1624#line 332
1625 return (1);
1626 }
1627}
1628}
1629#line 499 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11638/dscv_tempdir/dscv/ri/43_1a/drivers/mtd/maps/netsc520.c.p"
1630void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
1631{
1632
1633 {
1634 {
1635#line 505
1636 ldv_check_alloc_flags(ldv_func_arg2);
1637#line 507
1638 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
1639 }
1640#line 508
1641 return ((void *)0);
1642}
1643}