1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 20 "include/asm-generic/int-ll64.h"
7typedef unsigned char __u8;
8#line 22 "include/asm-generic/int-ll64.h"
9typedef short __s16;
10#line 23 "include/asm-generic/int-ll64.h"
11typedef unsigned short __u16;
12#line 25 "include/asm-generic/int-ll64.h"
13typedef int __s32;
14#line 26 "include/asm-generic/int-ll64.h"
15typedef unsigned int __u32;
16#line 30 "include/asm-generic/int-ll64.h"
17typedef unsigned long long __u64;
18#line 43 "include/asm-generic/int-ll64.h"
19typedef unsigned char u8;
20#line 45 "include/asm-generic/int-ll64.h"
21typedef short s16;
22#line 46 "include/asm-generic/int-ll64.h"
23typedef unsigned short u16;
24#line 48 "include/asm-generic/int-ll64.h"
25typedef int s32;
26#line 49 "include/asm-generic/int-ll64.h"
27typedef unsigned int u32;
28#line 51 "include/asm-generic/int-ll64.h"
29typedef long long s64;
30#line 52 "include/asm-generic/int-ll64.h"
31typedef unsigned long long u64;
32#line 14 "include/asm-generic/posix_types.h"
33typedef long __kernel_long_t;
34#line 15 "include/asm-generic/posix_types.h"
35typedef unsigned long __kernel_ulong_t;
36#line 52 "include/asm-generic/posix_types.h"
37typedef unsigned int __kernel_uid32_t;
38#line 53 "include/asm-generic/posix_types.h"
39typedef unsigned int __kernel_gid32_t;
40#line 75 "include/asm-generic/posix_types.h"
41typedef __kernel_ulong_t __kernel_size_t;
42#line 76 "include/asm-generic/posix_types.h"
43typedef __kernel_long_t __kernel_ssize_t;
44#line 91 "include/asm-generic/posix_types.h"
45typedef long long __kernel_loff_t;
46#line 92 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_time_t;
48#line 21 "include/linux/types.h"
49typedef __u32 __kernel_dev_t;
50#line 24 "include/linux/types.h"
51typedef __kernel_dev_t dev_t;
52#line 27 "include/linux/types.h"
53typedef unsigned short umode_t;
54#line 38 "include/linux/types.h"
55typedef _Bool bool;
56#line 40 "include/linux/types.h"
57typedef __kernel_uid32_t uid_t;
58#line 41 "include/linux/types.h"
59typedef __kernel_gid32_t gid_t;
60#line 54 "include/linux/types.h"
61typedef __kernel_loff_t loff_t;
62#line 63 "include/linux/types.h"
63typedef __kernel_size_t size_t;
64#line 68 "include/linux/types.h"
65typedef __kernel_ssize_t ssize_t;
66#line 78 "include/linux/types.h"
67typedef __kernel_time_t time_t;
68#line 142 "include/linux/types.h"
69typedef unsigned long sector_t;
70#line 143 "include/linux/types.h"
71typedef unsigned long blkcnt_t;
72#line 202 "include/linux/types.h"
73typedef unsigned int gfp_t;
74#line 203 "include/linux/types.h"
75typedef unsigned int fmode_t;
76#line 206 "include/linux/types.h"
77typedef u64 phys_addr_t;
78#line 211 "include/linux/types.h"
79typedef phys_addr_t resource_size_t;
80#line 219 "include/linux/types.h"
81struct __anonstruct_atomic_t_7 {
82 int counter ;
83};
84#line 219 "include/linux/types.h"
85typedef struct __anonstruct_atomic_t_7 atomic_t;
86#line 224 "include/linux/types.h"
87struct __anonstruct_atomic64_t_8 {
88 long counter ;
89};
90#line 224 "include/linux/types.h"
91typedef struct __anonstruct_atomic64_t_8 atomic64_t;
92#line 229 "include/linux/types.h"
93struct list_head {
94 struct list_head *next ;
95 struct list_head *prev ;
96};
97#line 233
98struct hlist_node;
99#line 233 "include/linux/types.h"
100struct hlist_head {
101 struct hlist_node *first ;
102};
103#line 237 "include/linux/types.h"
104struct hlist_node {
105 struct hlist_node *next ;
106 struct hlist_node **pprev ;
107};
108#line 253 "include/linux/types.h"
109struct rcu_head {
110 struct rcu_head *next ;
111 void (*func)(struct rcu_head *head ) ;
112};
113#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
114struct module;
115#line 56
116struct module;
117#line 146 "include/linux/init.h"
118typedef void (*ctor_fn_t)(void);
119#line 47 "include/linux/dynamic_debug.h"
120struct device;
121#line 47
122struct device;
123#line 135 "include/linux/kernel.h"
124struct completion;
125#line 135
126struct completion;
127#line 349
128struct pid;
129#line 349
130struct pid;
131#line 12 "include/linux/thread_info.h"
132struct timespec;
133#line 12
134struct timespec;
135#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
136struct page;
137#line 18
138struct page;
139#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
140struct task_struct;
141#line 20
142struct task_struct;
143#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
144struct task_struct;
145#line 8
146struct mm_struct;
147#line 8
148struct mm_struct;
149#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
150typedef unsigned long pgdval_t;
151#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
152typedef unsigned long pgprotval_t;
153#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
154struct pgprot {
155 pgprotval_t pgprot ;
156};
157#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
158typedef struct pgprot pgprot_t;
159#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
160struct __anonstruct_pgd_t_20 {
161 pgdval_t pgd ;
162};
163#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
164typedef struct __anonstruct_pgd_t_20 pgd_t;
165#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
166typedef struct page *pgtable_t;
167#line 295
168struct file;
169#line 295
170struct file;
171#line 313
172struct seq_file;
173#line 313
174struct seq_file;
175#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
176struct page;
177#line 50
178struct mm_struct;
179#line 52
180struct task_struct;
181#line 53
182struct cpumask;
183#line 53
184struct cpumask;
185#line 329
186struct arch_spinlock;
187#line 329
188struct arch_spinlock;
189#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
190struct task_struct;
191#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
192struct task_struct;
193#line 10 "include/asm-generic/bug.h"
194struct bug_entry {
195 int bug_addr_disp ;
196 int file_disp ;
197 unsigned short line ;
198 unsigned short flags ;
199};
200#line 14 "include/linux/cpumask.h"
201struct cpumask {
202 unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
203};
204#line 637 "include/linux/cpumask.h"
205typedef struct cpumask *cpumask_var_t;
206#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
207struct static_key;
208#line 234
209struct static_key;
210#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
211struct kmem_cache;
212#line 23 "include/asm-generic/atomic-long.h"
213typedef atomic64_t atomic_long_t;
214#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
215typedef u16 __ticket_t;
216#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
217typedef u32 __ticketpair_t;
218#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
219struct __raw_tickets {
220 __ticket_t head ;
221 __ticket_t tail ;
222};
223#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
224union __anonunion____missing_field_name_36 {
225 __ticketpair_t head_tail ;
226 struct __raw_tickets tickets ;
227};
228#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
229struct arch_spinlock {
230 union __anonunion____missing_field_name_36 __annonCompField17 ;
231};
232#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
233typedef struct arch_spinlock arch_spinlock_t;
234#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
235struct __anonstruct____missing_field_name_38 {
236 u32 read ;
237 s32 write ;
238};
239#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
240union __anonunion_arch_rwlock_t_37 {
241 s64 lock ;
242 struct __anonstruct____missing_field_name_38 __annonCompField18 ;
243};
244#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
245typedef union __anonunion_arch_rwlock_t_37 arch_rwlock_t;
246#line 12 "include/linux/lockdep.h"
247struct task_struct;
248#line 391 "include/linux/lockdep.h"
249struct lock_class_key {
250
251};
252#line 20 "include/linux/spinlock_types.h"
253struct raw_spinlock {
254 arch_spinlock_t raw_lock ;
255 unsigned int magic ;
256 unsigned int owner_cpu ;
257 void *owner ;
258};
259#line 20 "include/linux/spinlock_types.h"
260typedef struct raw_spinlock raw_spinlock_t;
261#line 64 "include/linux/spinlock_types.h"
262union __anonunion____missing_field_name_39 {
263 struct raw_spinlock rlock ;
264};
265#line 64 "include/linux/spinlock_types.h"
266struct spinlock {
267 union __anonunion____missing_field_name_39 __annonCompField19 ;
268};
269#line 64 "include/linux/spinlock_types.h"
270typedef struct spinlock spinlock_t;
271#line 11 "include/linux/rwlock_types.h"
272struct __anonstruct_rwlock_t_40 {
273 arch_rwlock_t raw_lock ;
274 unsigned int magic ;
275 unsigned int owner_cpu ;
276 void *owner ;
277};
278#line 11 "include/linux/rwlock_types.h"
279typedef struct __anonstruct_rwlock_t_40 rwlock_t;
280#line 119 "include/linux/seqlock.h"
281struct seqcount {
282 unsigned int sequence ;
283};
284#line 119 "include/linux/seqlock.h"
285typedef struct seqcount seqcount_t;
286#line 14 "include/linux/time.h"
287struct timespec {
288 __kernel_time_t tv_sec ;
289 long tv_nsec ;
290};
291#line 62 "include/linux/stat.h"
292struct kstat {
293 u64 ino ;
294 dev_t dev ;
295 umode_t mode ;
296 unsigned int nlink ;
297 uid_t uid ;
298 gid_t gid ;
299 dev_t rdev ;
300 loff_t size ;
301 struct timespec atime ;
302 struct timespec mtime ;
303 struct timespec ctime ;
304 unsigned long blksize ;
305 unsigned long long blocks ;
306};
307#line 49 "include/linux/wait.h"
308struct __wait_queue_head {
309 spinlock_t lock ;
310 struct list_head task_list ;
311};
312#line 53 "include/linux/wait.h"
313typedef struct __wait_queue_head wait_queue_head_t;
314#line 55
315struct task_struct;
316#line 98 "include/linux/nodemask.h"
317struct __anonstruct_nodemask_t_42 {
318 unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
319};
320#line 98 "include/linux/nodemask.h"
321typedef struct __anonstruct_nodemask_t_42 nodemask_t;
322#line 60 "include/linux/pageblock-flags.h"
323struct page;
324#line 48 "include/linux/mutex.h"
325struct mutex {
326 atomic_t count ;
327 spinlock_t wait_lock ;
328 struct list_head wait_list ;
329 struct task_struct *owner ;
330 char const *name ;
331 void *magic ;
332};
333#line 19 "include/linux/rwsem.h"
334struct rw_semaphore;
335#line 19
336struct rw_semaphore;
337#line 25 "include/linux/rwsem.h"
338struct rw_semaphore {
339 long count ;
340 raw_spinlock_t wait_lock ;
341 struct list_head wait_list ;
342};
343#line 25 "include/linux/completion.h"
344struct completion {
345 unsigned int done ;
346 wait_queue_head_t wait ;
347};
348#line 188 "include/linux/rcupdate.h"
349struct notifier_block;
350#line 188
351struct notifier_block;
352#line 50 "include/linux/notifier.h"
353struct notifier_block {
354 int (*notifier_call)(struct notifier_block * , unsigned long , void * ) ;
355 struct notifier_block *next ;
356 int priority ;
357};
358#line 9 "include/linux/memory_hotplug.h"
359struct page;
360#line 18 "include/linux/ioport.h"
361struct resource {
362 resource_size_t start ;
363 resource_size_t end ;
364 char const *name ;
365 unsigned long flags ;
366 struct resource *parent ;
367 struct resource *sibling ;
368 struct resource *child ;
369};
370#line 202
371struct device;
372#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
373struct device;
374#line 42 "include/linux/pm.h"
375struct device;
376#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
377struct __anonstruct_mm_context_t_112 {
378 void *ldt ;
379 int size ;
380 unsigned short ia32_compat ;
381 struct mutex lock ;
382 void *vdso ;
383};
384#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
385typedef struct __anonstruct_mm_context_t_112 mm_context_t;
386#line 8 "include/linux/vmalloc.h"
387struct vm_area_struct;
388#line 8
389struct vm_area_struct;
390#line 994 "include/linux/mmzone.h"
391struct page;
392#line 10 "include/linux/gfp.h"
393struct vm_area_struct;
394#line 29 "include/linux/sysctl.h"
395struct completion;
396#line 100 "include/linux/rbtree.h"
397struct rb_node {
398 unsigned long rb_parent_color ;
399 struct rb_node *rb_right ;
400 struct rb_node *rb_left ;
401} __attribute__((__aligned__(sizeof(long )))) ;
402#line 110 "include/linux/rbtree.h"
403struct rb_root {
404 struct rb_node *rb_node ;
405};
406#line 48 "include/linux/kmod.h"
407struct cred;
408#line 48
409struct cred;
410#line 49
411struct file;
412#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
413struct task_struct;
414#line 18 "include/linux/elf.h"
415typedef __u64 Elf64_Addr;
416#line 19 "include/linux/elf.h"
417typedef __u16 Elf64_Half;
418#line 23 "include/linux/elf.h"
419typedef __u32 Elf64_Word;
420#line 24 "include/linux/elf.h"
421typedef __u64 Elf64_Xword;
422#line 194 "include/linux/elf.h"
423struct elf64_sym {
424 Elf64_Word st_name ;
425 unsigned char st_info ;
426 unsigned char st_other ;
427 Elf64_Half st_shndx ;
428 Elf64_Addr st_value ;
429 Elf64_Xword st_size ;
430};
431#line 194 "include/linux/elf.h"
432typedef struct elf64_sym Elf64_Sym;
433#line 438
434struct file;
435#line 20 "include/linux/kobject_ns.h"
436struct sock;
437#line 20
438struct sock;
439#line 21
440struct kobject;
441#line 21
442struct kobject;
443#line 27
444enum kobj_ns_type {
445 KOBJ_NS_TYPE_NONE = 0,
446 KOBJ_NS_TYPE_NET = 1,
447 KOBJ_NS_TYPES = 2
448} ;
449#line 40 "include/linux/kobject_ns.h"
450struct kobj_ns_type_operations {
451 enum kobj_ns_type type ;
452 void *(*grab_current_ns)(void) ;
453 void const *(*netlink_ns)(struct sock *sk ) ;
454 void const *(*initial_ns)(void) ;
455 void (*drop_ns)(void * ) ;
456};
457#line 22 "include/linux/sysfs.h"
458struct kobject;
459#line 23
460struct module;
461#line 24
462enum kobj_ns_type;
463#line 26 "include/linux/sysfs.h"
464struct attribute {
465 char const *name ;
466 umode_t mode ;
467};
468#line 85
469struct file;
470#line 86
471struct vm_area_struct;
472#line 112 "include/linux/sysfs.h"
473struct sysfs_ops {
474 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
475 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
476 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
477};
478#line 118
479struct sysfs_dirent;
480#line 118
481struct sysfs_dirent;
482#line 22 "include/linux/kref.h"
483struct kref {
484 atomic_t refcount ;
485};
486#line 60 "include/linux/kobject.h"
487struct kset;
488#line 60
489struct kobj_type;
490#line 60 "include/linux/kobject.h"
491struct kobject {
492 char const *name ;
493 struct list_head entry ;
494 struct kobject *parent ;
495 struct kset *kset ;
496 struct kobj_type *ktype ;
497 struct sysfs_dirent *sd ;
498 struct kref kref ;
499 unsigned int state_initialized : 1 ;
500 unsigned int state_in_sysfs : 1 ;
501 unsigned int state_add_uevent_sent : 1 ;
502 unsigned int state_remove_uevent_sent : 1 ;
503 unsigned int uevent_suppress : 1 ;
504};
505#line 108 "include/linux/kobject.h"
506struct kobj_type {
507 void (*release)(struct kobject *kobj ) ;
508 struct sysfs_ops const *sysfs_ops ;
509 struct attribute **default_attrs ;
510 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject *kobj ) ;
511 void const *(*namespace)(struct kobject *kobj ) ;
512};
513#line 116 "include/linux/kobject.h"
514struct kobj_uevent_env {
515 char *envp[32] ;
516 int envp_idx ;
517 char buf[2048] ;
518 int buflen ;
519};
520#line 123 "include/linux/kobject.h"
521struct kset_uevent_ops {
522 int (* const filter)(struct kset *kset , struct kobject *kobj ) ;
523 char const *(* const name)(struct kset *kset , struct kobject *kobj ) ;
524 int (* const uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
525};
526#line 140
527struct sock;
528#line 159 "include/linux/kobject.h"
529struct kset {
530 struct list_head list ;
531 spinlock_t list_lock ;
532 struct kobject kobj ;
533 struct kset_uevent_ops const *uevent_ops ;
534};
535#line 39 "include/linux/moduleparam.h"
536struct kernel_param;
537#line 39
538struct kernel_param;
539#line 41 "include/linux/moduleparam.h"
540struct kernel_param_ops {
541 int (*set)(char const *val , struct kernel_param const *kp ) ;
542 int (*get)(char *buffer , struct kernel_param const *kp ) ;
543 void (*free)(void *arg ) ;
544};
545#line 50
546struct kparam_string;
547#line 50
548struct kparam_array;
549#line 50 "include/linux/moduleparam.h"
550union __anonunion____missing_field_name_199 {
551 void *arg ;
552 struct kparam_string const *str ;
553 struct kparam_array const *arr ;
554};
555#line 50 "include/linux/moduleparam.h"
556struct kernel_param {
557 char const *name ;
558 struct kernel_param_ops const *ops ;
559 u16 perm ;
560 s16 level ;
561 union __anonunion____missing_field_name_199 __annonCompField32 ;
562};
563#line 63 "include/linux/moduleparam.h"
564struct kparam_string {
565 unsigned int maxlen ;
566 char *string ;
567};
568#line 69 "include/linux/moduleparam.h"
569struct kparam_array {
570 unsigned int max ;
571 unsigned int elemsize ;
572 unsigned int *num ;
573 struct kernel_param_ops const *ops ;
574 void *elem ;
575};
576#line 445
577struct module;
578#line 80 "include/linux/jump_label.h"
579struct module;
580#line 143 "include/linux/jump_label.h"
581struct static_key {
582 atomic_t enabled ;
583};
584#line 22 "include/linux/tracepoint.h"
585struct module;
586#line 23
587struct tracepoint;
588#line 23
589struct tracepoint;
590#line 25 "include/linux/tracepoint.h"
591struct tracepoint_func {
592 void *func ;
593 void *data ;
594};
595#line 30 "include/linux/tracepoint.h"
596struct tracepoint {
597 char const *name ;
598 struct static_key key ;
599 void (*regfunc)(void) ;
600 void (*unregfunc)(void) ;
601 struct tracepoint_func *funcs ;
602};
603#line 19 "include/linux/export.h"
604struct kernel_symbol {
605 unsigned long value ;
606 char const *name ;
607};
608#line 8 "include/asm-generic/module.h"
609struct mod_arch_specific {
610
611};
612#line 35 "include/linux/module.h"
613struct module;
614#line 37
615struct module_param_attrs;
616#line 37 "include/linux/module.h"
617struct module_kobject {
618 struct kobject kobj ;
619 struct module *mod ;
620 struct kobject *drivers_dir ;
621 struct module_param_attrs *mp ;
622};
623#line 44 "include/linux/module.h"
624struct module_attribute {
625 struct attribute attr ;
626 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
627 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
628 size_t count ) ;
629 void (*setup)(struct module * , char const * ) ;
630 int (*test)(struct module * ) ;
631 void (*free)(struct module * ) ;
632};
633#line 71
634struct exception_table_entry;
635#line 71
636struct exception_table_entry;
637#line 182
638struct notifier_block;
639#line 199
640enum module_state {
641 MODULE_STATE_LIVE = 0,
642 MODULE_STATE_COMING = 1,
643 MODULE_STATE_GOING = 2
644} ;
645#line 215 "include/linux/module.h"
646struct module_ref {
647 unsigned long incs ;
648 unsigned long decs ;
649} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
650#line 220
651struct module_sect_attrs;
652#line 220
653struct module_notes_attrs;
654#line 220
655struct ftrace_event_call;
656#line 220 "include/linux/module.h"
657struct module {
658 enum module_state state ;
659 struct list_head list ;
660 char name[64UL - sizeof(unsigned long )] ;
661 struct module_kobject mkobj ;
662 struct module_attribute *modinfo_attrs ;
663 char const *version ;
664 char const *srcversion ;
665 struct kobject *holders_dir ;
666 struct kernel_symbol const *syms ;
667 unsigned long const *crcs ;
668 unsigned int num_syms ;
669 struct kernel_param *kp ;
670 unsigned int num_kp ;
671 unsigned int num_gpl_syms ;
672 struct kernel_symbol const *gpl_syms ;
673 unsigned long const *gpl_crcs ;
674 struct kernel_symbol const *unused_syms ;
675 unsigned long const *unused_crcs ;
676 unsigned int num_unused_syms ;
677 unsigned int num_unused_gpl_syms ;
678 struct kernel_symbol const *unused_gpl_syms ;
679 unsigned long const *unused_gpl_crcs ;
680 struct kernel_symbol const *gpl_future_syms ;
681 unsigned long const *gpl_future_crcs ;
682 unsigned int num_gpl_future_syms ;
683 unsigned int num_exentries ;
684 struct exception_table_entry *extable ;
685 int (*init)(void) ;
686 void *module_init ;
687 void *module_core ;
688 unsigned int init_size ;
689 unsigned int core_size ;
690 unsigned int init_text_size ;
691 unsigned int core_text_size ;
692 unsigned int init_ro_size ;
693 unsigned int core_ro_size ;
694 struct mod_arch_specific arch ;
695 unsigned int taints ;
696 unsigned int num_bugs ;
697 struct list_head bug_list ;
698 struct bug_entry *bug_table ;
699 Elf64_Sym *symtab ;
700 Elf64_Sym *core_symtab ;
701 unsigned int num_symtab ;
702 unsigned int core_num_syms ;
703 char *strtab ;
704 char *core_strtab ;
705 struct module_sect_attrs *sect_attrs ;
706 struct module_notes_attrs *notes_attrs ;
707 char *args ;
708 void *percpu ;
709 unsigned int percpu_size ;
710 unsigned int num_tracepoints ;
711 struct tracepoint * const *tracepoints_ptrs ;
712 unsigned int num_trace_bprintk_fmt ;
713 char const **trace_bprintk_fmt_start ;
714 struct ftrace_event_call **trace_events ;
715 unsigned int num_trace_events ;
716 struct list_head source_list ;
717 struct list_head target_list ;
718 struct task_struct *waiter ;
719 void (*exit)(void) ;
720 struct module_ref *refptr ;
721 ctor_fn_t *ctors ;
722 unsigned int num_ctors ;
723};
724#line 15 "include/linux/blk_types.h"
725struct page;
726#line 16
727struct block_device;
728#line 16
729struct block_device;
730#line 33 "include/linux/list_bl.h"
731struct hlist_bl_node;
732#line 33 "include/linux/list_bl.h"
733struct hlist_bl_head {
734 struct hlist_bl_node *first ;
735};
736#line 37 "include/linux/list_bl.h"
737struct hlist_bl_node {
738 struct hlist_bl_node *next ;
739 struct hlist_bl_node **pprev ;
740};
741#line 13 "include/linux/dcache.h"
742struct nameidata;
743#line 13
744struct nameidata;
745#line 14
746struct path;
747#line 14
748struct path;
749#line 15
750struct vfsmount;
751#line 15
752struct vfsmount;
753#line 35 "include/linux/dcache.h"
754struct qstr {
755 unsigned int hash ;
756 unsigned int len ;
757 unsigned char const *name ;
758};
759#line 88
760struct inode;
761#line 88
762struct dentry_operations;
763#line 88
764struct super_block;
765#line 88 "include/linux/dcache.h"
766union __anonunion_d_u_201 {
767 struct list_head d_child ;
768 struct rcu_head d_rcu ;
769};
770#line 88 "include/linux/dcache.h"
771struct dentry {
772 unsigned int d_flags ;
773 seqcount_t d_seq ;
774 struct hlist_bl_node d_hash ;
775 struct dentry *d_parent ;
776 struct qstr d_name ;
777 struct inode *d_inode ;
778 unsigned char d_iname[32] ;
779 unsigned int d_count ;
780 spinlock_t d_lock ;
781 struct dentry_operations const *d_op ;
782 struct super_block *d_sb ;
783 unsigned long d_time ;
784 void *d_fsdata ;
785 struct list_head d_lru ;
786 union __anonunion_d_u_201 d_u ;
787 struct list_head d_subdirs ;
788 struct list_head d_alias ;
789};
790#line 131 "include/linux/dcache.h"
791struct dentry_operations {
792 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
793 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
794 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
795 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
796 int (*d_delete)(struct dentry const * ) ;
797 void (*d_release)(struct dentry * ) ;
798 void (*d_prune)(struct dentry * ) ;
799 void (*d_iput)(struct dentry * , struct inode * ) ;
800 char *(*d_dname)(struct dentry * , char * , int ) ;
801 struct vfsmount *(*d_automount)(struct path * ) ;
802 int (*d_manage)(struct dentry * , bool ) ;
803} __attribute__((__aligned__((1) << (6) ))) ;
804#line 4 "include/linux/path.h"
805struct dentry;
806#line 5
807struct vfsmount;
808#line 7 "include/linux/path.h"
809struct path {
810 struct vfsmount *mnt ;
811 struct dentry *dentry ;
812};
813#line 64 "include/linux/radix-tree.h"
814struct radix_tree_node;
815#line 64 "include/linux/radix-tree.h"
816struct radix_tree_root {
817 unsigned int height ;
818 gfp_t gfp_mask ;
819 struct radix_tree_node *rnode ;
820};
821#line 14 "include/linux/prio_tree.h"
822struct prio_tree_node;
823#line 14 "include/linux/prio_tree.h"
824struct raw_prio_tree_node {
825 struct prio_tree_node *left ;
826 struct prio_tree_node *right ;
827 struct prio_tree_node *parent ;
828};
829#line 20 "include/linux/prio_tree.h"
830struct prio_tree_node {
831 struct prio_tree_node *left ;
832 struct prio_tree_node *right ;
833 struct prio_tree_node *parent ;
834 unsigned long start ;
835 unsigned long last ;
836};
837#line 28 "include/linux/prio_tree.h"
838struct prio_tree_root {
839 struct prio_tree_node *prio_tree_node ;
840 unsigned short index_bits ;
841 unsigned short raw ;
842};
843#line 6 "include/linux/pid.h"
844enum pid_type {
845 PIDTYPE_PID = 0,
846 PIDTYPE_PGID = 1,
847 PIDTYPE_SID = 2,
848 PIDTYPE_MAX = 3
849} ;
850#line 50
851struct pid_namespace;
852#line 50 "include/linux/pid.h"
853struct upid {
854 int nr ;
855 struct pid_namespace *ns ;
856 struct hlist_node pid_chain ;
857};
858#line 57 "include/linux/pid.h"
859struct pid {
860 atomic_t count ;
861 unsigned int level ;
862 struct hlist_head tasks[3] ;
863 struct rcu_head rcu ;
864 struct upid numbers[1] ;
865};
866#line 100
867struct pid_namespace;
868#line 18 "include/linux/capability.h"
869struct task_struct;
870#line 377
871struct dentry;
872#line 16 "include/linux/fiemap.h"
873struct fiemap_extent {
874 __u64 fe_logical ;
875 __u64 fe_physical ;
876 __u64 fe_length ;
877 __u64 fe_reserved64[2] ;
878 __u32 fe_flags ;
879 __u32 fe_reserved[3] ;
880};
881#line 8 "include/linux/shrinker.h"
882struct shrink_control {
883 gfp_t gfp_mask ;
884 unsigned long nr_to_scan ;
885};
886#line 31 "include/linux/shrinker.h"
887struct shrinker {
888 int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
889 int seeks ;
890 long batch ;
891 struct list_head list ;
892 atomic_long_t nr_in_batch ;
893};
894#line 10 "include/linux/migrate_mode.h"
895enum migrate_mode {
896 MIGRATE_ASYNC = 0,
897 MIGRATE_SYNC_LIGHT = 1,
898 MIGRATE_SYNC = 2
899} ;
900#line 408 "include/linux/fs.h"
901struct export_operations;
902#line 408
903struct export_operations;
904#line 410
905struct iovec;
906#line 410
907struct iovec;
908#line 411
909struct nameidata;
910#line 412
911struct kiocb;
912#line 412
913struct kiocb;
914#line 413
915struct kobject;
916#line 414
917struct pipe_inode_info;
918#line 414
919struct pipe_inode_info;
920#line 415
921struct poll_table_struct;
922#line 415
923struct poll_table_struct;
924#line 416
925struct kstatfs;
926#line 416
927struct kstatfs;
928#line 417
929struct vm_area_struct;
930#line 418
931struct vfsmount;
932#line 419
933struct cred;
934#line 469 "include/linux/fs.h"
935struct iattr {
936 unsigned int ia_valid ;
937 umode_t ia_mode ;
938 uid_t ia_uid ;
939 gid_t ia_gid ;
940 loff_t ia_size ;
941 struct timespec ia_atime ;
942 struct timespec ia_mtime ;
943 struct timespec ia_ctime ;
944 struct file *ia_file ;
945};
946#line 129 "include/linux/quota.h"
947struct if_dqinfo {
948 __u64 dqi_bgrace ;
949 __u64 dqi_igrace ;
950 __u32 dqi_flags ;
951 __u32 dqi_valid ;
952};
953#line 50 "include/linux/dqblk_xfs.h"
954struct fs_disk_quota {
955 __s8 d_version ;
956 __s8 d_flags ;
957 __u16 d_fieldmask ;
958 __u32 d_id ;
959 __u64 d_blk_hardlimit ;
960 __u64 d_blk_softlimit ;
961 __u64 d_ino_hardlimit ;
962 __u64 d_ino_softlimit ;
963 __u64 d_bcount ;
964 __u64 d_icount ;
965 __s32 d_itimer ;
966 __s32 d_btimer ;
967 __u16 d_iwarns ;
968 __u16 d_bwarns ;
969 __s32 d_padding2 ;
970 __u64 d_rtb_hardlimit ;
971 __u64 d_rtb_softlimit ;
972 __u64 d_rtbcount ;
973 __s32 d_rtbtimer ;
974 __u16 d_rtbwarns ;
975 __s16 d_padding3 ;
976 char d_padding4[8] ;
977};
978#line 146 "include/linux/dqblk_xfs.h"
979struct fs_qfilestat {
980 __u64 qfs_ino ;
981 __u64 qfs_nblks ;
982 __u32 qfs_nextents ;
983};
984#line 146 "include/linux/dqblk_xfs.h"
985typedef struct fs_qfilestat fs_qfilestat_t;
986#line 152 "include/linux/dqblk_xfs.h"
987struct fs_quota_stat {
988 __s8 qs_version ;
989 __u16 qs_flags ;
990 __s8 qs_pad ;
991 fs_qfilestat_t qs_uquota ;
992 fs_qfilestat_t qs_gquota ;
993 __u32 qs_incoredqs ;
994 __s32 qs_btimelimit ;
995 __s32 qs_itimelimit ;
996 __s32 qs_rtbtimelimit ;
997 __u16 qs_bwarnlimit ;
998 __u16 qs_iwarnlimit ;
999};
1000#line 17 "include/linux/dqblk_qtree.h"
1001struct dquot;
1002#line 17
1003struct dquot;
1004#line 185 "include/linux/quota.h"
1005typedef __kernel_uid32_t qid_t;
1006#line 186 "include/linux/quota.h"
1007typedef long long qsize_t;
1008#line 200 "include/linux/quota.h"
1009struct mem_dqblk {
1010 qsize_t dqb_bhardlimit ;
1011 qsize_t dqb_bsoftlimit ;
1012 qsize_t dqb_curspace ;
1013 qsize_t dqb_rsvspace ;
1014 qsize_t dqb_ihardlimit ;
1015 qsize_t dqb_isoftlimit ;
1016 qsize_t dqb_curinodes ;
1017 time_t dqb_btime ;
1018 time_t dqb_itime ;
1019};
1020#line 215
1021struct quota_format_type;
1022#line 215
1023struct quota_format_type;
1024#line 217 "include/linux/quota.h"
1025struct mem_dqinfo {
1026 struct quota_format_type *dqi_format ;
1027 int dqi_fmt_id ;
1028 struct list_head dqi_dirty_list ;
1029 unsigned long dqi_flags ;
1030 unsigned int dqi_bgrace ;
1031 unsigned int dqi_igrace ;
1032 qsize_t dqi_maxblimit ;
1033 qsize_t dqi_maxilimit ;
1034 void *dqi_priv ;
1035};
1036#line 230
1037struct super_block;
1038#line 288 "include/linux/quota.h"
1039struct dquot {
1040 struct hlist_node dq_hash ;
1041 struct list_head dq_inuse ;
1042 struct list_head dq_free ;
1043 struct list_head dq_dirty ;
1044 struct mutex dq_lock ;
1045 atomic_t dq_count ;
1046 wait_queue_head_t dq_wait_unused ;
1047 struct super_block *dq_sb ;
1048 unsigned int dq_id ;
1049 loff_t dq_off ;
1050 unsigned long dq_flags ;
1051 short dq_type ;
1052 struct mem_dqblk dq_dqb ;
1053};
1054#line 305 "include/linux/quota.h"
1055struct quota_format_ops {
1056 int (*check_quota_file)(struct super_block *sb , int type ) ;
1057 int (*read_file_info)(struct super_block *sb , int type ) ;
1058 int (*write_file_info)(struct super_block *sb , int type ) ;
1059 int (*free_file_info)(struct super_block *sb , int type ) ;
1060 int (*read_dqblk)(struct dquot *dquot ) ;
1061 int (*commit_dqblk)(struct dquot *dquot ) ;
1062 int (*release_dqblk)(struct dquot *dquot ) ;
1063};
1064#line 316 "include/linux/quota.h"
1065struct dquot_operations {
1066 int (*write_dquot)(struct dquot * ) ;
1067 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1068 void (*destroy_dquot)(struct dquot * ) ;
1069 int (*acquire_dquot)(struct dquot * ) ;
1070 int (*release_dquot)(struct dquot * ) ;
1071 int (*mark_dirty)(struct dquot * ) ;
1072 int (*write_info)(struct super_block * , int ) ;
1073 qsize_t *(*get_reserved_space)(struct inode * ) ;
1074};
1075#line 329
1076struct path;
1077#line 332 "include/linux/quota.h"
1078struct quotactl_ops {
1079 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1080 int (*quota_on_meta)(struct super_block * , int , int ) ;
1081 int (*quota_off)(struct super_block * , int ) ;
1082 int (*quota_sync)(struct super_block * , int , int ) ;
1083 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1084 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1085 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1086 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1087 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1088 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1089};
1090#line 345 "include/linux/quota.h"
1091struct quota_format_type {
1092 int qf_fmt_id ;
1093 struct quota_format_ops const *qf_ops ;
1094 struct module *qf_owner ;
1095 struct quota_format_type *qf_next ;
1096};
1097#line 399 "include/linux/quota.h"
1098struct quota_info {
1099 unsigned int flags ;
1100 struct mutex dqio_mutex ;
1101 struct mutex dqonoff_mutex ;
1102 struct rw_semaphore dqptr_sem ;
1103 struct inode *files[2] ;
1104 struct mem_dqinfo info[2] ;
1105 struct quota_format_ops const *ops[2] ;
1106};
1107#line 532 "include/linux/fs.h"
1108struct page;
1109#line 533
1110struct address_space;
1111#line 533
1112struct address_space;
1113#line 534
1114struct writeback_control;
1115#line 534
1116struct writeback_control;
1117#line 577 "include/linux/fs.h"
1118union __anonunion_arg_209 {
1119 char *buf ;
1120 void *data ;
1121};
1122#line 577 "include/linux/fs.h"
1123struct __anonstruct_read_descriptor_t_208 {
1124 size_t written ;
1125 size_t count ;
1126 union __anonunion_arg_209 arg ;
1127 int error ;
1128};
1129#line 577 "include/linux/fs.h"
1130typedef struct __anonstruct_read_descriptor_t_208 read_descriptor_t;
1131#line 590 "include/linux/fs.h"
1132struct address_space_operations {
1133 int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
1134 int (*readpage)(struct file * , struct page * ) ;
1135 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1136 int (*set_page_dirty)(struct page *page ) ;
1137 int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
1138 unsigned int nr_pages ) ;
1139 int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
1140 unsigned int len , unsigned int flags , struct page **pagep ,
1141 void **fsdata ) ;
1142 int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
1143 unsigned int copied , struct page *page , void *fsdata ) ;
1144 sector_t (*bmap)(struct address_space * , sector_t ) ;
1145 void (*invalidatepage)(struct page * , unsigned long ) ;
1146 int (*releasepage)(struct page * , gfp_t ) ;
1147 void (*freepage)(struct page * ) ;
1148 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const *iov , loff_t offset ,
1149 unsigned long nr_segs ) ;
1150 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1151 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1152 int (*launder_page)(struct page * ) ;
1153 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1154 int (*error_remove_page)(struct address_space * , struct page * ) ;
1155};
1156#line 645
1157struct backing_dev_info;
1158#line 645
1159struct backing_dev_info;
1160#line 646 "include/linux/fs.h"
1161struct address_space {
1162 struct inode *host ;
1163 struct radix_tree_root page_tree ;
1164 spinlock_t tree_lock ;
1165 unsigned int i_mmap_writable ;
1166 struct prio_tree_root i_mmap ;
1167 struct list_head i_mmap_nonlinear ;
1168 struct mutex i_mmap_mutex ;
1169 unsigned long nrpages ;
1170 unsigned long writeback_index ;
1171 struct address_space_operations const *a_ops ;
1172 unsigned long flags ;
1173 struct backing_dev_info *backing_dev_info ;
1174 spinlock_t private_lock ;
1175 struct list_head private_list ;
1176 struct address_space *assoc_mapping ;
1177} __attribute__((__aligned__(sizeof(long )))) ;
1178#line 669
1179struct request_queue;
1180#line 669
1181struct request_queue;
1182#line 671
1183struct hd_struct;
1184#line 671
1185struct gendisk;
1186#line 671 "include/linux/fs.h"
1187struct block_device {
1188 dev_t bd_dev ;
1189 int bd_openers ;
1190 struct inode *bd_inode ;
1191 struct super_block *bd_super ;
1192 struct mutex bd_mutex ;
1193 struct list_head bd_inodes ;
1194 void *bd_claiming ;
1195 void *bd_holder ;
1196 int bd_holders ;
1197 bool bd_write_holder ;
1198 struct list_head bd_holder_disks ;
1199 struct block_device *bd_contains ;
1200 unsigned int bd_block_size ;
1201 struct hd_struct *bd_part ;
1202 unsigned int bd_part_count ;
1203 int bd_invalidated ;
1204 struct gendisk *bd_disk ;
1205 struct request_queue *bd_queue ;
1206 struct list_head bd_list ;
1207 unsigned long bd_private ;
1208 int bd_fsfreeze_count ;
1209 struct mutex bd_fsfreeze_mutex ;
1210};
1211#line 749
1212struct posix_acl;
1213#line 749
1214struct posix_acl;
1215#line 761
1216struct inode_operations;
1217#line 761 "include/linux/fs.h"
1218union __anonunion____missing_field_name_210 {
1219 unsigned int const i_nlink ;
1220 unsigned int __i_nlink ;
1221};
1222#line 761 "include/linux/fs.h"
1223union __anonunion____missing_field_name_211 {
1224 struct list_head i_dentry ;
1225 struct rcu_head i_rcu ;
1226};
1227#line 761
1228struct file_operations;
1229#line 761
1230struct file_lock;
1231#line 761
1232struct cdev;
1233#line 761 "include/linux/fs.h"
1234union __anonunion____missing_field_name_212 {
1235 struct pipe_inode_info *i_pipe ;
1236 struct block_device *i_bdev ;
1237 struct cdev *i_cdev ;
1238};
1239#line 761 "include/linux/fs.h"
1240struct inode {
1241 umode_t i_mode ;
1242 unsigned short i_opflags ;
1243 uid_t i_uid ;
1244 gid_t i_gid ;
1245 unsigned int i_flags ;
1246 struct posix_acl *i_acl ;
1247 struct posix_acl *i_default_acl ;
1248 struct inode_operations const *i_op ;
1249 struct super_block *i_sb ;
1250 struct address_space *i_mapping ;
1251 void *i_security ;
1252 unsigned long i_ino ;
1253 union __anonunion____missing_field_name_210 __annonCompField33 ;
1254 dev_t i_rdev ;
1255 struct timespec i_atime ;
1256 struct timespec i_mtime ;
1257 struct timespec i_ctime ;
1258 spinlock_t i_lock ;
1259 unsigned short i_bytes ;
1260 blkcnt_t i_blocks ;
1261 loff_t i_size ;
1262 unsigned long i_state ;
1263 struct mutex i_mutex ;
1264 unsigned long dirtied_when ;
1265 struct hlist_node i_hash ;
1266 struct list_head i_wb_list ;
1267 struct list_head i_lru ;
1268 struct list_head i_sb_list ;
1269 union __anonunion____missing_field_name_211 __annonCompField34 ;
1270 atomic_t i_count ;
1271 unsigned int i_blkbits ;
1272 u64 i_version ;
1273 atomic_t i_dio_count ;
1274 atomic_t i_writecount ;
1275 struct file_operations const *i_fop ;
1276 struct file_lock *i_flock ;
1277 struct address_space i_data ;
1278 struct dquot *i_dquot[2] ;
1279 struct list_head i_devices ;
1280 union __anonunion____missing_field_name_212 __annonCompField35 ;
1281 __u32 i_generation ;
1282 __u32 i_fsnotify_mask ;
1283 struct hlist_head i_fsnotify_marks ;
1284 atomic_t i_readcount ;
1285 void *i_private ;
1286};
1287#line 942 "include/linux/fs.h"
1288struct fown_struct {
1289 rwlock_t lock ;
1290 struct pid *pid ;
1291 enum pid_type pid_type ;
1292 uid_t uid ;
1293 uid_t euid ;
1294 int signum ;
1295};
1296#line 953 "include/linux/fs.h"
1297struct file_ra_state {
1298 unsigned long start ;
1299 unsigned int size ;
1300 unsigned int async_size ;
1301 unsigned int ra_pages ;
1302 unsigned int mmap_miss ;
1303 loff_t prev_pos ;
1304};
1305#line 976 "include/linux/fs.h"
1306union __anonunion_f_u_213 {
1307 struct list_head fu_list ;
1308 struct rcu_head fu_rcuhead ;
1309};
1310#line 976 "include/linux/fs.h"
1311struct file {
1312 union __anonunion_f_u_213 f_u ;
1313 struct path f_path ;
1314 struct file_operations const *f_op ;
1315 spinlock_t f_lock ;
1316 int f_sb_list_cpu ;
1317 atomic_long_t f_count ;
1318 unsigned int f_flags ;
1319 fmode_t f_mode ;
1320 loff_t f_pos ;
1321 struct fown_struct f_owner ;
1322 struct cred const *f_cred ;
1323 struct file_ra_state f_ra ;
1324 u64 f_version ;
1325 void *f_security ;
1326 void *private_data ;
1327 struct list_head f_ep_links ;
1328 struct list_head f_tfile_llink ;
1329 struct address_space *f_mapping ;
1330 unsigned long f_mnt_write_state ;
1331};
1332#line 1111
1333struct files_struct;
1334#line 1111 "include/linux/fs.h"
1335typedef struct files_struct *fl_owner_t;
1336#line 1113 "include/linux/fs.h"
1337struct file_lock_operations {
1338 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1339 void (*fl_release_private)(struct file_lock * ) ;
1340};
1341#line 1118 "include/linux/fs.h"
1342struct lock_manager_operations {
1343 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1344 void (*lm_notify)(struct file_lock * ) ;
1345 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1346 void (*lm_release_private)(struct file_lock * ) ;
1347 void (*lm_break)(struct file_lock * ) ;
1348 int (*lm_change)(struct file_lock ** , int ) ;
1349};
1350#line 4 "include/linux/nfs_fs_i.h"
1351struct nlm_lockowner;
1352#line 4
1353struct nlm_lockowner;
1354#line 9 "include/linux/nfs_fs_i.h"
1355struct nfs_lock_info {
1356 u32 state ;
1357 struct nlm_lockowner *owner ;
1358 struct list_head list ;
1359};
1360#line 15
1361struct nfs4_lock_state;
1362#line 15
1363struct nfs4_lock_state;
1364#line 16 "include/linux/nfs_fs_i.h"
1365struct nfs4_lock_info {
1366 struct nfs4_lock_state *owner ;
1367};
1368#line 1138 "include/linux/fs.h"
1369struct fasync_struct;
1370#line 1138 "include/linux/fs.h"
1371struct __anonstruct_afs_215 {
1372 struct list_head link ;
1373 int state ;
1374};
1375#line 1138 "include/linux/fs.h"
1376union __anonunion_fl_u_214 {
1377 struct nfs_lock_info nfs_fl ;
1378 struct nfs4_lock_info nfs4_fl ;
1379 struct __anonstruct_afs_215 afs ;
1380};
1381#line 1138 "include/linux/fs.h"
1382struct file_lock {
1383 struct file_lock *fl_next ;
1384 struct list_head fl_link ;
1385 struct list_head fl_block ;
1386 fl_owner_t fl_owner ;
1387 unsigned int fl_flags ;
1388 unsigned char fl_type ;
1389 unsigned int fl_pid ;
1390 struct pid *fl_nspid ;
1391 wait_queue_head_t fl_wait ;
1392 struct file *fl_file ;
1393 loff_t fl_start ;
1394 loff_t fl_end ;
1395 struct fasync_struct *fl_fasync ;
1396 unsigned long fl_break_time ;
1397 unsigned long fl_downgrade_time ;
1398 struct file_lock_operations const *fl_ops ;
1399 struct lock_manager_operations const *fl_lmops ;
1400 union __anonunion_fl_u_214 fl_u ;
1401};
1402#line 1378 "include/linux/fs.h"
1403struct fasync_struct {
1404 spinlock_t fa_lock ;
1405 int magic ;
1406 int fa_fd ;
1407 struct fasync_struct *fa_next ;
1408 struct file *fa_file ;
1409 struct rcu_head fa_rcu ;
1410};
1411#line 1418
1412struct file_system_type;
1413#line 1418
1414struct super_operations;
1415#line 1418
1416struct xattr_handler;
1417#line 1418
1418struct mtd_info;
1419#line 1418 "include/linux/fs.h"
1420struct super_block {
1421 struct list_head s_list ;
1422 dev_t s_dev ;
1423 unsigned char s_dirt ;
1424 unsigned char s_blocksize_bits ;
1425 unsigned long s_blocksize ;
1426 loff_t s_maxbytes ;
1427 struct file_system_type *s_type ;
1428 struct super_operations const *s_op ;
1429 struct dquot_operations const *dq_op ;
1430 struct quotactl_ops const *s_qcop ;
1431 struct export_operations const *s_export_op ;
1432 unsigned long s_flags ;
1433 unsigned long s_magic ;
1434 struct dentry *s_root ;
1435 struct rw_semaphore s_umount ;
1436 struct mutex s_lock ;
1437 int s_count ;
1438 atomic_t s_active ;
1439 void *s_security ;
1440 struct xattr_handler const **s_xattr ;
1441 struct list_head s_inodes ;
1442 struct hlist_bl_head s_anon ;
1443 struct list_head *s_files ;
1444 struct list_head s_mounts ;
1445 struct list_head s_dentry_lru ;
1446 int s_nr_dentry_unused ;
1447 spinlock_t s_inode_lru_lock __attribute__((__aligned__((1) << (6) ))) ;
1448 struct list_head s_inode_lru ;
1449 int s_nr_inodes_unused ;
1450 struct block_device *s_bdev ;
1451 struct backing_dev_info *s_bdi ;
1452 struct mtd_info *s_mtd ;
1453 struct hlist_node s_instances ;
1454 struct quota_info s_dquot ;
1455 int s_frozen ;
1456 wait_queue_head_t s_wait_unfrozen ;
1457 char s_id[32] ;
1458 u8 s_uuid[16] ;
1459 void *s_fs_info ;
1460 unsigned int s_max_links ;
1461 fmode_t s_mode ;
1462 u32 s_time_gran ;
1463 struct mutex s_vfs_rename_mutex ;
1464 char *s_subtype ;
1465 char *s_options ;
1466 struct dentry_operations const *s_d_op ;
1467 int cleancache_poolid ;
1468 struct shrinker s_shrink ;
1469 atomic_long_t s_remove_count ;
1470 int s_readonly_remount ;
1471};
1472#line 1567 "include/linux/fs.h"
1473struct fiemap_extent_info {
1474 unsigned int fi_flags ;
1475 unsigned int fi_extents_mapped ;
1476 unsigned int fi_extents_max ;
1477 struct fiemap_extent *fi_extents_start ;
1478};
1479#line 1609 "include/linux/fs.h"
1480struct file_operations {
1481 struct module *owner ;
1482 loff_t (*llseek)(struct file * , loff_t , int ) ;
1483 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1484 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1485 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1486 loff_t ) ;
1487 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1488 loff_t ) ;
1489 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1490 loff_t , u64 , unsigned int ) ) ;
1491 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1492 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1493 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1494 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1495 int (*open)(struct inode * , struct file * ) ;
1496 int (*flush)(struct file * , fl_owner_t id ) ;
1497 int (*release)(struct inode * , struct file * ) ;
1498 int (*fsync)(struct file * , loff_t , loff_t , int datasync ) ;
1499 int (*aio_fsync)(struct kiocb * , int datasync ) ;
1500 int (*fasync)(int , struct file * , int ) ;
1501 int (*lock)(struct file * , int , struct file_lock * ) ;
1502 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1503 int ) ;
1504 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1505 unsigned long , unsigned long ) ;
1506 int (*check_flags)(int ) ;
1507 int (*flock)(struct file * , int , struct file_lock * ) ;
1508 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1509 unsigned int ) ;
1510 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1511 unsigned int ) ;
1512 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1513 long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
1514};
1515#line 1639 "include/linux/fs.h"
1516struct inode_operations {
1517 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1518 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1519 int (*permission)(struct inode * , int ) ;
1520 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1521 int (*readlink)(struct dentry * , char * , int ) ;
1522 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1523 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
1524 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1525 int (*unlink)(struct inode * , struct dentry * ) ;
1526 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
1527 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
1528 int (*rmdir)(struct inode * , struct dentry * ) ;
1529 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
1530 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1531 void (*truncate)(struct inode * ) ;
1532 int (*setattr)(struct dentry * , struct iattr * ) ;
1533 int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
1534 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
1535 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
1536 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
1537 int (*removexattr)(struct dentry * , char const * ) ;
1538 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
1539 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
1540} __attribute__((__aligned__((1) << (6) ))) ;
1541#line 1669
1542struct seq_file;
1543#line 1684 "include/linux/fs.h"
1544struct super_operations {
1545 struct inode *(*alloc_inode)(struct super_block *sb ) ;
1546 void (*destroy_inode)(struct inode * ) ;
1547 void (*dirty_inode)(struct inode * , int flags ) ;
1548 int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
1549 int (*drop_inode)(struct inode * ) ;
1550 void (*evict_inode)(struct inode * ) ;
1551 void (*put_super)(struct super_block * ) ;
1552 void (*write_super)(struct super_block * ) ;
1553 int (*sync_fs)(struct super_block *sb , int wait ) ;
1554 int (*freeze_fs)(struct super_block * ) ;
1555 int (*unfreeze_fs)(struct super_block * ) ;
1556 int (*statfs)(struct dentry * , struct kstatfs * ) ;
1557 int (*remount_fs)(struct super_block * , int * , char * ) ;
1558 void (*umount_begin)(struct super_block * ) ;
1559 int (*show_options)(struct seq_file * , struct dentry * ) ;
1560 int (*show_devname)(struct seq_file * , struct dentry * ) ;
1561 int (*show_path)(struct seq_file * , struct dentry * ) ;
1562 int (*show_stats)(struct seq_file * , struct dentry * ) ;
1563 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
1564 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
1565 loff_t ) ;
1566 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
1567 int (*nr_cached_objects)(struct super_block * ) ;
1568 void (*free_cached_objects)(struct super_block * , int ) ;
1569};
1570#line 1835 "include/linux/fs.h"
1571struct file_system_type {
1572 char const *name ;
1573 int fs_flags ;
1574 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
1575 void (*kill_sb)(struct super_block * ) ;
1576 struct module *owner ;
1577 struct file_system_type *next ;
1578 struct hlist_head fs_supers ;
1579 struct lock_class_key s_lock_key ;
1580 struct lock_class_key s_umount_key ;
1581 struct lock_class_key s_vfs_rename_key ;
1582 struct lock_class_key i_lock_key ;
1583 struct lock_class_key i_mutex_key ;
1584 struct lock_class_key i_mutex_dir_key ;
1585};
1586#line 8 "include/linux/debug_locks.h"
1587struct task_struct;
1588#line 48
1589struct task_struct;
1590#line 23 "include/linux/mm_types.h"
1591struct address_space;
1592#line 40 "include/linux/mm_types.h"
1593union __anonunion____missing_field_name_219 {
1594 unsigned long index ;
1595 void *freelist ;
1596};
1597#line 40 "include/linux/mm_types.h"
1598struct __anonstruct____missing_field_name_223 {
1599 unsigned int inuse : 16 ;
1600 unsigned int objects : 15 ;
1601 unsigned int frozen : 1 ;
1602};
1603#line 40 "include/linux/mm_types.h"
1604union __anonunion____missing_field_name_222 {
1605 atomic_t _mapcount ;
1606 struct __anonstruct____missing_field_name_223 __annonCompField37 ;
1607};
1608#line 40 "include/linux/mm_types.h"
1609struct __anonstruct____missing_field_name_221 {
1610 union __anonunion____missing_field_name_222 __annonCompField38 ;
1611 atomic_t _count ;
1612};
1613#line 40 "include/linux/mm_types.h"
1614union __anonunion____missing_field_name_220 {
1615 unsigned long counters ;
1616 struct __anonstruct____missing_field_name_221 __annonCompField39 ;
1617};
1618#line 40 "include/linux/mm_types.h"
1619struct __anonstruct____missing_field_name_218 {
1620 union __anonunion____missing_field_name_219 __annonCompField36 ;
1621 union __anonunion____missing_field_name_220 __annonCompField40 ;
1622};
1623#line 40 "include/linux/mm_types.h"
1624struct __anonstruct____missing_field_name_225 {
1625 struct page *next ;
1626 int pages ;
1627 int pobjects ;
1628};
1629#line 40 "include/linux/mm_types.h"
1630union __anonunion____missing_field_name_224 {
1631 struct list_head lru ;
1632 struct __anonstruct____missing_field_name_225 __annonCompField42 ;
1633};
1634#line 40 "include/linux/mm_types.h"
1635union __anonunion____missing_field_name_226 {
1636 unsigned long private ;
1637 struct kmem_cache *slab ;
1638 struct page *first_page ;
1639};
1640#line 40 "include/linux/mm_types.h"
1641struct page {
1642 unsigned long flags ;
1643 struct address_space *mapping ;
1644 struct __anonstruct____missing_field_name_218 __annonCompField41 ;
1645 union __anonunion____missing_field_name_224 __annonCompField43 ;
1646 union __anonunion____missing_field_name_226 __annonCompField44 ;
1647 unsigned long debug_flags ;
1648} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
1649#line 200 "include/linux/mm_types.h"
1650struct __anonstruct_vm_set_228 {
1651 struct list_head list ;
1652 void *parent ;
1653 struct vm_area_struct *head ;
1654};
1655#line 200 "include/linux/mm_types.h"
1656union __anonunion_shared_227 {
1657 struct __anonstruct_vm_set_228 vm_set ;
1658 struct raw_prio_tree_node prio_tree_node ;
1659};
1660#line 200
1661struct anon_vma;
1662#line 200
1663struct vm_operations_struct;
1664#line 200
1665struct mempolicy;
1666#line 200 "include/linux/mm_types.h"
1667struct vm_area_struct {
1668 struct mm_struct *vm_mm ;
1669 unsigned long vm_start ;
1670 unsigned long vm_end ;
1671 struct vm_area_struct *vm_next ;
1672 struct vm_area_struct *vm_prev ;
1673 pgprot_t vm_page_prot ;
1674 unsigned long vm_flags ;
1675 struct rb_node vm_rb ;
1676 union __anonunion_shared_227 shared ;
1677 struct list_head anon_vma_chain ;
1678 struct anon_vma *anon_vma ;
1679 struct vm_operations_struct const *vm_ops ;
1680 unsigned long vm_pgoff ;
1681 struct file *vm_file ;
1682 void *vm_private_data ;
1683 struct mempolicy *vm_policy ;
1684};
1685#line 257 "include/linux/mm_types.h"
1686struct core_thread {
1687 struct task_struct *task ;
1688 struct core_thread *next ;
1689};
1690#line 262 "include/linux/mm_types.h"
1691struct core_state {
1692 atomic_t nr_threads ;
1693 struct core_thread dumper ;
1694 struct completion startup ;
1695};
1696#line 284 "include/linux/mm_types.h"
1697struct mm_rss_stat {
1698 atomic_long_t count[3] ;
1699};
1700#line 288
1701struct linux_binfmt;
1702#line 288
1703struct mmu_notifier_mm;
1704#line 288 "include/linux/mm_types.h"
1705struct mm_struct {
1706 struct vm_area_struct *mmap ;
1707 struct rb_root mm_rb ;
1708 struct vm_area_struct *mmap_cache ;
1709 unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
1710 unsigned long pgoff , unsigned long flags ) ;
1711 void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
1712 unsigned long mmap_base ;
1713 unsigned long task_size ;
1714 unsigned long cached_hole_size ;
1715 unsigned long free_area_cache ;
1716 pgd_t *pgd ;
1717 atomic_t mm_users ;
1718 atomic_t mm_count ;
1719 int map_count ;
1720 spinlock_t page_table_lock ;
1721 struct rw_semaphore mmap_sem ;
1722 struct list_head mmlist ;
1723 unsigned long hiwater_rss ;
1724 unsigned long hiwater_vm ;
1725 unsigned long total_vm ;
1726 unsigned long locked_vm ;
1727 unsigned long pinned_vm ;
1728 unsigned long shared_vm ;
1729 unsigned long exec_vm ;
1730 unsigned long stack_vm ;
1731 unsigned long reserved_vm ;
1732 unsigned long def_flags ;
1733 unsigned long nr_ptes ;
1734 unsigned long start_code ;
1735 unsigned long end_code ;
1736 unsigned long start_data ;
1737 unsigned long end_data ;
1738 unsigned long start_brk ;
1739 unsigned long brk ;
1740 unsigned long start_stack ;
1741 unsigned long arg_start ;
1742 unsigned long arg_end ;
1743 unsigned long env_start ;
1744 unsigned long env_end ;
1745 unsigned long saved_auxv[44] ;
1746 struct mm_rss_stat rss_stat ;
1747 struct linux_binfmt *binfmt ;
1748 cpumask_var_t cpu_vm_mask_var ;
1749 mm_context_t context ;
1750 unsigned int faultstamp ;
1751 unsigned int token_priority ;
1752 unsigned int last_interval ;
1753 unsigned long flags ;
1754 struct core_state *core_state ;
1755 spinlock_t ioctx_lock ;
1756 struct hlist_head ioctx_list ;
1757 struct task_struct *owner ;
1758 struct file *exe_file ;
1759 unsigned long num_exe_file_vmas ;
1760 struct mmu_notifier_mm *mmu_notifier_mm ;
1761 pgtable_t pmd_huge_pte ;
1762 struct cpumask cpumask_allocation ;
1763};
1764#line 22 "include/linux/mm.h"
1765struct mempolicy;
1766#line 23
1767struct anon_vma;
1768#line 24
1769struct file_ra_state;
1770#line 26
1771struct writeback_control;
1772#line 41 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64.h"
1773struct mm_struct;
1774#line 656 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable.h"
1775struct vm_area_struct;
1776#line 188 "include/linux/mm.h"
1777struct vm_fault {
1778 unsigned int flags ;
1779 unsigned long pgoff ;
1780 void *virtual_address ;
1781 struct page *page ;
1782};
1783#line 205 "include/linux/mm.h"
1784struct vm_operations_struct {
1785 void (*open)(struct vm_area_struct *area ) ;
1786 void (*close)(struct vm_area_struct *area ) ;
1787 int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1788 int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1789 int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
1790 int write ) ;
1791 int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
1792 struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
1793 int (*migrate)(struct vm_area_struct *vma , nodemask_t const *from , nodemask_t const *to ,
1794 unsigned long flags ) ;
1795};
1796#line 247
1797struct inode;
1798#line 195 "include/linux/page-flags.h"
1799struct page;
1800#line 48 "include/linux/miscdevice.h"
1801struct device;
1802#line 50 "include/linux/miscdevice.h"
1803struct miscdevice {
1804 int minor ;
1805 char const *name ;
1806 struct file_operations const *fops ;
1807 struct list_head list ;
1808 struct device *parent ;
1809 struct device *this_device ;
1810 char const *nodename ;
1811 umode_t mode ;
1812};
1813#line 17 "include/linux/watchdog.h"
1814struct watchdog_info {
1815 __u32 options ;
1816 __u32 firmware_version ;
1817 __u8 identity[32] ;
1818};
1819#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
1820struct exception_table_entry {
1821 unsigned long insn ;
1822 unsigned long fixup ;
1823};
1824#line 25 "include/linux/io.h"
1825struct device;
1826#line 1 "<compiler builtins>"
1827long __builtin_expect(long val , long res ) ;
1828#line 100 "include/linux/printk.h"
1829extern int ( printk)(char const *fmt , ...) ;
1830#line 147 "include/linux/kernel.h"
1831extern void __might_sleep(char const *file , int line , int preempt_offset ) ;
1832#line 194
1833__inline static void might_fault(void) __attribute__((__no_instrument_function__)) ;
1834#line 194 "include/linux/kernel.h"
1835__inline static void might_fault(void)
1836{
1837
1838 {
1839 {
1840#line 196
1841 while (1) {
1842 while_continue: ;
1843 {
1844#line 196
1845 __might_sleep("include/linux/kernel.h", 196, 0);
1846 }
1847 {
1848#line 196
1849 while (1) {
1850 while_continue___0: ;
1851#line 196
1852 goto while_break___0;
1853 }
1854 while_break___0: ;
1855 }
1856#line 196
1857 goto while_break;
1858 }
1859 while_break: ;
1860 }
1861#line 197
1862 return;
1863}
1864}
1865#line 152 "include/linux/mutex.h"
1866void mutex_lock(struct mutex *lock ) ;
1867#line 153
1868int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock ) ;
1869#line 154
1870int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock ) ;
1871#line 168
1872int mutex_trylock(struct mutex *lock ) ;
1873#line 169
1874void mutex_unlock(struct mutex *lock ) ;
1875#line 170
1876int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
1877#line 137 "include/linux/ioport.h"
1878extern struct resource ioport_resource ;
1879#line 181
1880extern struct resource *__request_region(struct resource * , resource_size_t start ,
1881 resource_size_t n , char const *name ,
1882 int flags ) ;
1883#line 192
1884extern void __release_region(struct resource * , resource_size_t , resource_size_t ) ;
1885#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
1886__inline static void outb(unsigned char value , int port ) __attribute__((__no_instrument_function__)) ;
1887#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
1888__inline static void outb(unsigned char value , int port )
1889{
1890
1891 {
1892#line 308
1893 __asm__ volatile ("out"
1894 "b"
1895 " %"
1896 "b"
1897 "0, %w1": : "a" (value), "Nd" (port));
1898#line 308
1899 return;
1900}
1901}
1902#line 382 "include/linux/moduleparam.h"
1903extern struct kernel_param_ops param_ops_bool ;
1904#line 26 "include/linux/export.h"
1905extern struct module __this_module ;
1906#line 67 "include/linux/module.h"
1907int init_module(void) ;
1908#line 68
1909void cleanup_module(void) ;
1910#line 453
1911extern void __module_get(struct module *module ) ;
1912#line 2402 "include/linux/fs.h"
1913extern loff_t no_llseek(struct file *file , loff_t offset , int origin ) ;
1914#line 2407
1915extern int nonseekable_open(struct inode *inode , struct file *filp ) ;
1916#line 61 "include/linux/miscdevice.h"
1917extern int misc_register(struct miscdevice *misc ) ;
1918#line 62
1919extern int misc_deregister(struct miscdevice *misc ) ;
1920#line 47 "include/linux/reboot.h"
1921extern int register_reboot_notifier(struct notifier_block * ) ;
1922#line 48
1923extern int unregister_reboot_notifier(struct notifier_block * ) ;
1924#line 39 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
1925extern unsigned long __attribute__((__warn_unused_result__)) _copy_to_user(void *to ,
1926 void const *from ,
1927 unsigned int len ) ;
1928#line 62
1929__inline static int __attribute__((__warn_unused_result__)) ( __attribute__((__always_inline__)) copy_to_user)(void *dst ,
1930 void const *src ,
1931 unsigned int size ) __attribute__((__no_instrument_function__)) ;
1932#line 62 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
1933__inline static int __attribute__((__warn_unused_result__)) ( __attribute__((__always_inline__)) copy_to_user)(void *dst ,
1934 void const *src ,
1935 unsigned int size )
1936{ unsigned long tmp ;
1937
1938 {
1939 {
1940#line 65
1941 might_fault();
1942#line 67
1943 tmp = (unsigned long )_copy_to_user(dst, src, size);
1944 }
1945#line 67
1946 return ((int )tmp);
1947}
1948}
1949#line 34 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
1950static int epx_c3_alive ;
1951#line 38 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
1952static bool nowayout = (bool )1;
1953#line 39 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
1954static char const __param_str_nowayout[9] =
1955#line 39
1956 { (char const )'n', (char const )'o', (char const )'w', (char const )'a',
1957 (char const )'y', (char const )'o', (char const )'u', (char const )'t',
1958 (char const )'\000'};
1959#line 39 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
1960static struct kernel_param const __param_nowayout __attribute__((__used__, __unused__,
1961__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_nowayout, (struct kernel_param_ops const *)(& param_ops_bool), (u16 )0,
1962 (s16 )0, {(void *)(& nowayout)}};
1963#line 39 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
1964static char const __mod_nowayouttype39[23] __attribute__((__used__, __unused__,
1965__section__(".modinfo"), __aligned__(1))) =
1966#line 39
1967 { (char const )'p', (char const )'a', (char const )'r', (char const )'m',
1968 (char const )'t', (char const )'y', (char const )'p', (char const )'e',
1969 (char const )'=', (char const )'n', (char const )'o', (char const )'w',
1970 (char const )'a', (char const )'y', (char const )'o', (char const )'u',
1971 (char const )'t', (char const )':', (char const )'b', (char const )'o',
1972 (char const )'o', (char const )'l', (char const )'\000'};
1973#line 40 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
1974static char const __mod_nowayout41[66] __attribute__((__used__, __unused__, __section__(".modinfo"),
1975__aligned__(1))) =
1976#line 40
1977 { (char const )'p', (char const )'a', (char const )'r', (char const )'m',
1978 (char const )'=', (char const )'n', (char const )'o', (char const )'w',
1979 (char const )'a', (char const )'y', (char const )'o', (char const )'u',
1980 (char const )'t', (char const )':', (char const )'W', (char const )'a',
1981 (char const )'t', (char const )'c', (char const )'h', (char const )'d',
1982 (char const )'o', (char const )'g', (char const )' ', (char const )'c',
1983 (char const )'a', (char const )'n', (char const )'n', (char const )'o',
1984 (char const )'t', (char const )' ', (char const )'b', (char const )'e',
1985 (char const )' ', (char const )'s', (char const )'t', (char const )'o',
1986 (char const )'p', (char const )'p', (char const )'e', (char const )'d',
1987 (char const )' ', (char const )'o', (char const )'n', (char const )'c',
1988 (char const )'e', (char const )' ', (char const )'s', (char const )'t',
1989 (char const )'a', (char const )'r', (char const )'t', (char const )'e',
1990 (char const )'d', (char const )' ', (char const )'(', (char const )'d',
1991 (char const )'e', (char const )'f', (char const )'a', (char const )'u',
1992 (char const )'l', (char const )'t', (char const )'=', (char const )'1',
1993 (char const )')', (char const )'\000'};
1994#line 46 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
1995static void epx_c3_start(void)
1996{
1997
1998 {
1999 {
2000#line 48
2001 outb((unsigned char)1, 494);
2002 }
2003#line 49
2004 return;
2005}
2006}
2007#line 51 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2008static void epx_c3_stop(void)
2009{
2010
2011 {
2012 {
2013#line 54
2014 outb((unsigned char)0, 494);
2015#line 56
2016 printk("<6>sbc_epx_c3: Stopped watchdog timer\n");
2017 }
2018#line 57
2019 return;
2020}
2021}
2022#line 59 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2023static void epx_c3_pet(void)
2024{
2025
2026 {
2027 {
2028#line 61
2029 outb((unsigned char)1, 495);
2030 }
2031#line 62
2032 return;
2033}
2034}
2035#line 67 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2036static int epx_c3_open(struct inode *inode , struct file *file )
2037{ int tmp ;
2038 bool *__cil_tmp4 ;
2039
2040 {
2041#line 69
2042 if (epx_c3_alive) {
2043#line 70
2044 return (-16);
2045 } else {
2046
2047 }
2048 {
2049#line 72
2050 __cil_tmp4 = & nowayout;
2051#line 72
2052 if (*__cil_tmp4) {
2053 {
2054#line 73
2055 __module_get(& __this_module);
2056 }
2057 } else {
2058
2059 }
2060 }
2061 {
2062#line 76
2063 epx_c3_start();
2064#line 77
2065 epx_c3_pet();
2066#line 79
2067 epx_c3_alive = 1;
2068#line 80
2069 printk("<6>sbc_epx_c3: Started watchdog timer\n");
2070#line 82
2071 tmp = nonseekable_open(inode, file);
2072 }
2073#line 82
2074 return (tmp);
2075}
2076}
2077#line 85 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2078static int epx_c3_release(struct inode *inode , struct file *file )
2079{ bool *__cil_tmp3 ;
2080 bool __cil_tmp4 ;
2081
2082 {
2083 {
2084#line 89
2085 __cil_tmp3 = & nowayout;
2086#line 89
2087 __cil_tmp4 = *__cil_tmp3;
2088#line 89
2089 if (! __cil_tmp4) {
2090 {
2091#line 90
2092 epx_c3_stop();
2093 }
2094 } else {
2095
2096 }
2097 }
2098#line 92
2099 epx_c3_alive = 0;
2100#line 94
2101 return (0);
2102}
2103}
2104#line 97 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2105static ssize_t epx_c3_write(struct file *file , char const *data , size_t len ,
2106 loff_t *ppos )
2107{
2108
2109 {
2110#line 101
2111 if (len) {
2112 {
2113#line 102
2114 epx_c3_pet();
2115 }
2116 } else {
2117
2118 }
2119#line 103
2120 return ((ssize_t )len);
2121}
2122}
2123#line 111
2124static long epx_c3_ioctl(struct file *file , unsigned int cmd , unsigned long arg ) ;
2125#line 111 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2126static struct watchdog_info const ident = {(__u32 )32768, (__u32 )0, {(__u8 )'W', (__u8 )'i', (__u8 )'n', (__u8 )'s', (__u8 )'y',
2127 (__u8 )'s', (__u8 )'t', (__u8 )'e', (__u8 )'m', (__u8 )'s',
2128 (__u8 )' ', (__u8 )'E', (__u8 )'P', (__u8 )'X', (__u8 )'-',
2129 (__u8 )'C', (__u8 )'3', (__u8 )' ', (__u8 )'H', (__u8 )'/',
2130 (__u8 )'W', (__u8 )' ', (__u8 )'W', (__u8 )'a', (__u8 )'t',
2131 (__u8 )'c', (__u8 )'h', (__u8 )'d', (__u8 )'o', (__u8 )'g',
2132 (__u8 )'\000', (unsigned char)0}};
2133#line 106 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2134static long epx_c3_ioctl(struct file *file , unsigned int cmd , unsigned long arg )
2135{ int options ;
2136 int retval ;
2137 int *argp ;
2138 int tmp ;
2139 int __ret_pu ;
2140 int __pu_val ;
2141 int __ret_gu ;
2142 unsigned long __val_gu ;
2143 int __ret_pu___0 ;
2144 int __pu_val___0 ;
2145 void *__cil_tmp14 ;
2146 void *__cil_tmp15 ;
2147 void const *__cil_tmp16 ;
2148 unsigned int __cil_tmp17 ;
2149 unsigned long __cil_tmp18 ;
2150 int __cil_tmp19 ;
2151 unsigned int __cil_tmp20 ;
2152 unsigned int __cil_tmp21 ;
2153 unsigned int __cil_tmp22 ;
2154 unsigned long __cil_tmp23 ;
2155 unsigned long __cil_tmp24 ;
2156 int __cil_tmp25 ;
2157 unsigned int __cil_tmp26 ;
2158 unsigned int __cil_tmp27 ;
2159 unsigned int __cil_tmp28 ;
2160 unsigned int __cil_tmp29 ;
2161 unsigned long __cil_tmp30 ;
2162 unsigned long __cil_tmp31 ;
2163 int __cil_tmp32 ;
2164 unsigned int __cil_tmp33 ;
2165 unsigned int __cil_tmp34 ;
2166 unsigned int __cil_tmp35 ;
2167 unsigned int __cil_tmp36 ;
2168 unsigned long __cil_tmp37 ;
2169 unsigned long __cil_tmp38 ;
2170 int __cil_tmp39 ;
2171 unsigned int __cil_tmp40 ;
2172 unsigned int __cil_tmp41 ;
2173 unsigned int __cil_tmp42 ;
2174 unsigned int __cil_tmp43 ;
2175 unsigned long __cil_tmp44 ;
2176 unsigned long __cil_tmp45 ;
2177 int __cil_tmp46 ;
2178 unsigned int __cil_tmp47 ;
2179 unsigned int __cil_tmp48 ;
2180 unsigned int __cil_tmp49 ;
2181 unsigned int __cil_tmp50 ;
2182 unsigned long __cil_tmp51 ;
2183 unsigned long __cil_tmp52 ;
2184 int __cil_tmp53 ;
2185 unsigned int __cil_tmp54 ;
2186 unsigned int __cil_tmp55 ;
2187 unsigned int __cil_tmp56 ;
2188 unsigned int __cil_tmp57 ;
2189 unsigned long __cil_tmp58 ;
2190
2191 {
2192#line 109
2193 retval = -22;
2194#line 110
2195 __cil_tmp14 = (void *)arg;
2196#line 110
2197 argp = (int *)__cil_tmp14;
2198#line 118
2199 if ((int )cmd == (__cil_tmp23 | __cil_tmp18)) {
2200#line 118
2201 goto case_exp;
2202 } else
2203#line 122
2204 if ((int )cmd == (__cil_tmp30 | __cil_tmp24)) {
2205#line 122
2206 goto case_exp___0;
2207 } else
2208#line 123
2209 if ((int )cmd == (__cil_tmp37 | __cil_tmp31)) {
2210#line 123
2211 goto case_exp___0;
2212 } else
2213#line 125
2214 if ((int )cmd == (__cil_tmp44 | __cil_tmp38)) {
2215#line 125
2216 goto case_exp___2;
2217 } else
2218#line 140
2219 if ((int )cmd == (__cil_tmp51 | __cil_tmp45)) {
2220#line 140
2221 goto case_exp___3;
2222 } else
2223#line 143
2224 if ((int )cmd == (__cil_tmp58 | __cil_tmp52)) {
2225#line 143
2226 goto case_exp___4;
2227 } else {
2228 {
2229#line 145
2230 goto switch_default___2;
2231#line 117
2232 if (0) {
2233 case_exp:
2234 {
2235#line 119
2236 __cil_tmp18 = 40UL << 16;
2237#line 119
2238 __cil_tmp19 = 87 << 8;
2239#line 119
2240 __cil_tmp20 = (unsigned int )__cil_tmp19;
2241#line 119
2242 __cil_tmp21 = 2U << 30;
2243#line 119
2244 __cil_tmp22 = __cil_tmp21 | __cil_tmp20;
2245#line 119
2246 __cil_tmp23 = (unsigned long )__cil_tmp22;
2247 {
2248#line 119
2249 __cil_tmp15 = (void *)argp;
2250#line 119
2251 __cil_tmp16 = (void const *)(& ident);
2252#line 119
2253 __cil_tmp17 = (unsigned int )40UL;
2254#line 119
2255 tmp = (int )copy_to_user(__cil_tmp15, __cil_tmp16, __cil_tmp17);
2256 }
2257 }
2258#line 119
2259 if (tmp) {
2260#line 120
2261 return (-14L);
2262 } else {
2263
2264 }
2265#line 121
2266 return (0L);
2267 case_exp___0:
2268 case_exp___1:
2269 {
2270#line 124
2271 __cil_tmp24 = 4UL << 16;
2272#line 124
2273 __cil_tmp25 = 87 << 8;
2274#line 124
2275 __cil_tmp26 = (unsigned int )__cil_tmp25;
2276#line 124
2277 __cil_tmp27 = 2U << 30;
2278#line 124
2279 __cil_tmp28 = __cil_tmp27 | __cil_tmp26;
2280#line 124
2281 __cil_tmp29 = __cil_tmp28 | 1U;
2282#line 124
2283 __cil_tmp30 = (unsigned long )__cil_tmp29;
2284#line 124
2285 __cil_tmp31 = 4UL << 16;
2286#line 124
2287 __cil_tmp32 = 87 << 8;
2288#line 124
2289 __cil_tmp33 = (unsigned int )__cil_tmp32;
2290#line 124
2291 __cil_tmp34 = 2U << 30;
2292#line 124
2293 __cil_tmp35 = __cil_tmp34 | __cil_tmp33;
2294#line 124
2295 __cil_tmp36 = __cil_tmp35 | 2U;
2296#line 124
2297 __cil_tmp37 = (unsigned long )__cil_tmp36;
2298 {
2299#line 124
2300 might_fault();
2301#line 124
2302 __pu_val = 0;
2303 }
2304 }
2305#line 124
2306 if ((int )4UL == 1) {
2307#line 124
2308 goto case_1;
2309 } else
2310#line 124
2311 if ((int )4UL == 2) {
2312#line 124
2313 goto case_2;
2314 } else
2315#line 124
2316 if ((int )4UL == 4) {
2317#line 124
2318 goto case_4;
2319 } else
2320#line 124
2321 if ((int )4UL == 8) {
2322#line 124
2323 goto case_8;
2324 } else {
2325 {
2326#line 124
2327 goto switch_default;
2328#line 124
2329 if (0) {
2330 case_1:
2331#line 124
2332 __asm__ volatile ("call __put_user_"
2333 "1": "=a" (__ret_pu): "0" (__pu_val), "c" (argp): "ebx");
2334#line 124
2335 goto switch_break___0;
2336 case_2:
2337#line 124
2338 __asm__ volatile ("call __put_user_"
2339 "2": "=a" (__ret_pu): "0" (__pu_val), "c" (argp): "ebx");
2340#line 124
2341 goto switch_break___0;
2342 case_4:
2343#line 124
2344 __asm__ volatile ("call __put_user_"
2345 "4": "=a" (__ret_pu): "0" (__pu_val), "c" (argp): "ebx");
2346#line 124
2347 goto switch_break___0;
2348 case_8:
2349#line 124
2350 __asm__ volatile ("call __put_user_"
2351 "8": "=a" (__ret_pu): "0" (__pu_val), "c" (argp): "ebx");
2352#line 124
2353 goto switch_break___0;
2354 switch_default:
2355#line 124
2356 __asm__ volatile ("call __put_user_"
2357 "X": "=a" (__ret_pu): "0" (__pu_val), "c" (argp): "ebx");
2358#line 124
2359 goto switch_break___0;
2360 } else {
2361 switch_break___0: ;
2362 }
2363 }
2364 }
2365#line 124
2366 return ((long )__ret_pu);
2367 case_exp___2:
2368 {
2369#line 126
2370 __cil_tmp38 = 4UL << 16;
2371#line 126
2372 __cil_tmp39 = 87 << 8;
2373#line 126
2374 __cil_tmp40 = (unsigned int )__cil_tmp39;
2375#line 126
2376 __cil_tmp41 = 2U << 30;
2377#line 126
2378 __cil_tmp42 = __cil_tmp41 | __cil_tmp40;
2379#line 126
2380 __cil_tmp43 = __cil_tmp42 | 4U;
2381#line 126
2382 __cil_tmp44 = (unsigned long )__cil_tmp43;
2383 {
2384#line 126
2385 might_fault();
2386 }
2387 }
2388#line 126
2389 if ((int )4UL == 1) {
2390#line 126
2391 goto case_1___0;
2392 } else
2393#line 126
2394 if ((int )4UL == 2) {
2395#line 126
2396 goto case_2___0;
2397 } else
2398#line 126
2399 if ((int )4UL == 4) {
2400#line 126
2401 goto case_4___0;
2402 } else
2403#line 126
2404 if ((int )4UL == 8) {
2405#line 126
2406 goto case_8___0;
2407 } else {
2408 {
2409#line 126
2410 goto switch_default___0;
2411#line 126
2412 if (0) {
2413 case_1___0:
2414#line 126
2415 __asm__ volatile ("call __get_user_"
2416 "1": "=a" (__ret_gu), "=d" (__val_gu): "0" (argp));
2417#line 126
2418 goto switch_break___1;
2419 case_2___0:
2420#line 126
2421 __asm__ volatile ("call __get_user_"
2422 "2": "=a" (__ret_gu), "=d" (__val_gu): "0" (argp));
2423#line 126
2424 goto switch_break___1;
2425 case_4___0:
2426#line 126
2427 __asm__ volatile ("call __get_user_"
2428 "4": "=a" (__ret_gu), "=d" (__val_gu): "0" (argp));
2429#line 126
2430 goto switch_break___1;
2431 case_8___0:
2432#line 126
2433 __asm__ volatile ("call __get_user_"
2434 "8": "=a" (__ret_gu), "=d" (__val_gu): "0" (argp));
2435#line 126
2436 goto switch_break___1;
2437 switch_default___0:
2438#line 126
2439 __asm__ volatile ("call __get_user_"
2440 "X": "=a" (__ret_gu), "=d" (__val_gu): "0" (argp));
2441#line 126
2442 goto switch_break___1;
2443 } else {
2444 switch_break___1: ;
2445 }
2446 }
2447 }
2448#line 126
2449 options = (int )__val_gu;
2450#line 126
2451 if (__ret_gu) {
2452#line 127
2453 return (-14L);
2454 } else {
2455
2456 }
2457#line 129
2458 if (options & 1) {
2459 {
2460#line 130
2461 epx_c3_stop();
2462#line 131
2463 retval = 0;
2464 }
2465 } else {
2466
2467 }
2468#line 134
2469 if (options & 2) {
2470 {
2471#line 135
2472 epx_c3_start();
2473#line 136
2474 retval = 0;
2475 }
2476 } else {
2477
2478 }
2479#line 139
2480 return ((long )retval);
2481 case_exp___3:
2482 {
2483#line 141
2484 __cil_tmp45 = 4UL << 16;
2485#line 141
2486 __cil_tmp46 = 87 << 8;
2487#line 141
2488 __cil_tmp47 = (unsigned int )__cil_tmp46;
2489#line 141
2490 __cil_tmp48 = 2U << 30;
2491#line 141
2492 __cil_tmp49 = __cil_tmp48 | __cil_tmp47;
2493#line 141
2494 __cil_tmp50 = __cil_tmp49 | 5U;
2495#line 141
2496 __cil_tmp51 = (unsigned long )__cil_tmp50;
2497 {
2498#line 141
2499 epx_c3_pet();
2500 }
2501 }
2502#line 142
2503 return (0L);
2504 case_exp___4:
2505 {
2506#line 144
2507 __cil_tmp52 = 4UL << 16;
2508#line 144
2509 __cil_tmp53 = 87 << 8;
2510#line 144
2511 __cil_tmp54 = (unsigned int )__cil_tmp53;
2512#line 144
2513 __cil_tmp55 = 2U << 30;
2514#line 144
2515 __cil_tmp56 = __cil_tmp55 | __cil_tmp54;
2516#line 144
2517 __cil_tmp57 = __cil_tmp56 | 7U;
2518#line 144
2519 __cil_tmp58 = (unsigned long )__cil_tmp57;
2520 {
2521#line 144
2522 might_fault();
2523#line 144
2524 __pu_val___0 = 1;
2525 }
2526 }
2527#line 144
2528 if ((int )4UL == 1) {
2529#line 144
2530 goto case_1___1;
2531 } else
2532#line 144
2533 if ((int )4UL == 2) {
2534#line 144
2535 goto case_2___1;
2536 } else
2537#line 144
2538 if ((int )4UL == 4) {
2539#line 144
2540 goto case_4___1;
2541 } else
2542#line 144
2543 if ((int )4UL == 8) {
2544#line 144
2545 goto case_8___1;
2546 } else {
2547 {
2548#line 144
2549 goto switch_default___1;
2550#line 144
2551 if (0) {
2552 case_1___1:
2553#line 144
2554 __asm__ volatile ("call __put_user_"
2555 "1": "=a" (__ret_pu___0): "0" (__pu_val___0), "c" (argp): "ebx");
2556#line 144
2557 goto switch_break___2;
2558 case_2___1:
2559#line 144
2560 __asm__ volatile ("call __put_user_"
2561 "2": "=a" (__ret_pu___0): "0" (__pu_val___0), "c" (argp): "ebx");
2562#line 144
2563 goto switch_break___2;
2564 case_4___1:
2565#line 144
2566 __asm__ volatile ("call __put_user_"
2567 "4": "=a" (__ret_pu___0): "0" (__pu_val___0), "c" (argp): "ebx");
2568#line 144
2569 goto switch_break___2;
2570 case_8___1:
2571#line 144
2572 __asm__ volatile ("call __put_user_"
2573 "8": "=a" (__ret_pu___0): "0" (__pu_val___0), "c" (argp): "ebx");
2574#line 144
2575 goto switch_break___2;
2576 switch_default___1:
2577#line 144
2578 __asm__ volatile ("call __put_user_"
2579 "X": "=a" (__ret_pu___0): "0" (__pu_val___0), "c" (argp): "ebx");
2580#line 144
2581 goto switch_break___2;
2582 } else {
2583 switch_break___2: ;
2584 }
2585 }
2586 }
2587#line 144
2588 return ((long )__ret_pu___0);
2589 switch_default___2:
2590#line 146
2591 return (-25L);
2592 } else {
2593 switch_break: ;
2594 }
2595 }
2596 }
2597}
2598}
2599#line 150 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2600static int epx_c3_notify_sys(struct notifier_block *this , unsigned long code , void *unused )
2601{
2602
2603 {
2604#line 153
2605 if (code == 1UL) {
2606 {
2607#line 154
2608 epx_c3_stop();
2609 }
2610 } else
2611#line 153
2612 if (code == 2UL) {
2613 {
2614#line 154
2615 epx_c3_stop();
2616 }
2617 } else {
2618
2619 }
2620#line 156
2621 return (0);
2622}
2623}
2624#line 159 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2625static struct file_operations const epx_c3_fops =
2626#line 159
2627 {& __this_module, & no_llseek, (ssize_t (*)(struct file * , char * , size_t ,
2628 loff_t * ))0, & epx_c3_write, (ssize_t (*)(struct kiocb * ,
2629 struct iovec const * ,
2630 unsigned long ,
2631 loff_t ))0,
2632 (ssize_t (*)(struct kiocb * , struct iovec const * , unsigned long , loff_t ))0,
2633 (int (*)(struct file * , void * , int (*)(void * , char const * , int , loff_t ,
2634 u64 , unsigned int ) ))0, (unsigned int (*)(struct file * ,
2635 struct poll_table_struct * ))0,
2636 & epx_c3_ioctl, (long (*)(struct file * , unsigned int , unsigned long ))0,
2637 (int (*)(struct file * , struct vm_area_struct * ))0, & epx_c3_open, (int (*)(struct file * ,
2638 fl_owner_t id ))0,
2639 & epx_c3_release, (int (*)(struct file * , loff_t , loff_t , int datasync ))0,
2640 (int (*)(struct kiocb * , int datasync ))0, (int (*)(int , struct file * , int ))0,
2641 (int (*)(struct file * , int , struct file_lock * ))0, (ssize_t (*)(struct file * ,
2642 struct page * ,
2643 int , size_t ,
2644 loff_t * ,
2645 int ))0,
2646 (unsigned long (*)(struct file * , unsigned long , unsigned long , unsigned long ,
2647 unsigned long ))0, (int (*)(int ))0, (int (*)(struct file * ,
2648 int , struct file_lock * ))0,
2649 (ssize_t (*)(struct pipe_inode_info * , struct file * , loff_t * , size_t , unsigned int ))0,
2650 (ssize_t (*)(struct file * , loff_t * , struct pipe_inode_info * , size_t , unsigned int ))0,
2651 (int (*)(struct file * , long , struct file_lock ** ))0, (long (*)(struct file *file ,
2652 int mode ,
2653 loff_t offset ,
2654 loff_t len ))0};
2655#line 168 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2656static struct miscdevice epx_c3_miscdev =
2657#line 168
2658 {130, "watchdog", & epx_c3_fops, {(struct list_head *)0, (struct list_head *)0},
2659 (struct device *)0, (struct device *)0, (char const *)0, (unsigned short)0};
2660#line 174 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2661static struct notifier_block epx_c3_notifier = {& epx_c3_notify_sys, (struct notifier_block *)0, 0};
2662#line 178
2663static int watchdog_init(void) __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
2664#line 178 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2665static int watchdog_init(void)
2666{ int ret ;
2667 struct resource *tmp ;
2668 resource_size_t __cil_tmp3 ;
2669 resource_size_t __cil_tmp4 ;
2670 resource_size_t __cil_tmp5 ;
2671 resource_size_t __cil_tmp6 ;
2672
2673 {
2674 {
2675#line 182
2676 __cil_tmp3 = (resource_size_t )494;
2677#line 182
2678 __cil_tmp4 = (resource_size_t )2;
2679#line 182
2680 tmp = __request_region(& ioport_resource, __cil_tmp3, __cil_tmp4, "epxc3_watchdog",
2681 0);
2682 }
2683#line 182
2684 if (tmp) {
2685
2686 } else {
2687#line 183
2688 return (-16);
2689 }
2690 {
2691#line 185
2692 ret = register_reboot_notifier(& epx_c3_notifier);
2693 }
2694#line 186
2695 if (ret) {
2696 {
2697#line 187
2698 printk("<3>sbc_epx_c3: cannot register reboot notifier (err=%d)\n", ret);
2699 }
2700#line 188
2701 goto out;
2702 } else {
2703
2704 }
2705 {
2706#line 191
2707 ret = misc_register(& epx_c3_miscdev);
2708 }
2709#line 192
2710 if (ret) {
2711 {
2712#line 193
2713 printk("<3>sbc_epx_c3: cannot register miscdev on minor=%d (err=%d)\n", 130, ret);
2714#line 195
2715 unregister_reboot_notifier(& epx_c3_notifier);
2716 }
2717#line 196
2718 goto out;
2719 } else {
2720
2721 }
2722 {
2723#line 199
2724 printk("<6>sbc_epx_c3: Hardware Watchdog Timer for Winsystems EPX-C3 SBC: 0.1\n");
2725 }
2726#line 201
2727 return (0);
2728 out:
2729 {
2730#line 204
2731 __cil_tmp5 = (resource_size_t )494;
2732#line 204
2733 __cil_tmp6 = (resource_size_t )2;
2734#line 204
2735 __release_region(& ioport_resource, __cil_tmp5, __cil_tmp6);
2736 }
2737#line 205
2738 return (ret);
2739}
2740}
2741#line 208
2742static void watchdog_exit(void) __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
2743#line 208 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2744static void watchdog_exit(void)
2745{ resource_size_t __cil_tmp1 ;
2746 resource_size_t __cil_tmp2 ;
2747
2748 {
2749 {
2750#line 210
2751 misc_deregister(& epx_c3_miscdev);
2752#line 211
2753 unregister_reboot_notifier(& epx_c3_notifier);
2754#line 212
2755 __cil_tmp1 = (resource_size_t )494;
2756#line 212
2757 __cil_tmp2 = (resource_size_t )2;
2758#line 212
2759 __release_region(& ioport_resource, __cil_tmp1, __cil_tmp2);
2760 }
2761#line 213
2762 return;
2763}
2764}
2765#line 215 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2766int init_module(void)
2767{ int tmp ;
2768
2769 {
2770 {
2771#line 215
2772 tmp = watchdog_init();
2773 }
2774#line 215
2775 return (tmp);
2776}
2777}
2778#line 216 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2779void cleanup_module(void)
2780{
2781
2782 {
2783 {
2784#line 216
2785 watchdog_exit();
2786 }
2787#line 216
2788 return;
2789}
2790}
2791#line 218 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2792static char const __mod_author218[42] __attribute__((__used__, __unused__, __section__(".modinfo"),
2793__aligned__(1))) =
2794#line 218
2795 { (char const )'a', (char const )'u', (char const )'t', (char const )'h',
2796 (char const )'o', (char const )'r', (char const )'=', (char const )'C',
2797 (char const )'a', (char const )'l', (char const )'i', (char const )'n',
2798 (char const )' ', (char const )'A', (char const )'.', (char const )' ',
2799 (char const )'C', (char const )'u', (char const )'l', (char const )'i',
2800 (char const )'a', (char const )'n', (char const )'u', (char const )' ',
2801 (char const )'<', (char const )'c', (char const )'a', (char const )'l',
2802 (char const )'i', (char const )'n', (char const )'@', (char const )'a',
2803 (char const )'j', (char const )'v', (char const )'a', (char const )'r',
2804 (char const )'.', (char const )'o', (char const )'r', (char const )'g',
2805 (char const )'>', (char const )'\000'};
2806#line 219 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2807static char const __mod_description222[253] __attribute__((__used__, __unused__,
2808__section__(".modinfo"), __aligned__(1))) =
2809#line 219
2810 { (char const )'d', (char const )'e', (char const )'s', (char const )'c',
2811 (char const )'r', (char const )'i', (char const )'p', (char const )'t',
2812 (char const )'i', (char const )'o', (char const )'n', (char const )'=',
2813 (char const )'H', (char const )'a', (char const )'r', (char const )'d',
2814 (char const )'w', (char const )'a', (char const )'r', (char const )'e',
2815 (char const )' ', (char const )'W', (char const )'a', (char const )'t',
2816 (char const )'c', (char const )'h', (char const )'d', (char const )'o',
2817 (char const )'g', (char const )' ', (char const )'D', (char const )'e',
2818 (char const )'v', (char const )'i', (char const )'c', (char const )'e',
2819 (char const )' ', (char const )'f', (char const )'o', (char const )'r',
2820 (char const )' ', (char const )'W', (char const )'i', (char const )'n',
2821 (char const )'s', (char const )'y', (char const )'s', (char const )'t',
2822 (char const )'e', (char const )'m', (char const )'s', (char const )' ',
2823 (char const )'E', (char const )'P', (char const )'X', (char const )'-',
2824 (char const )'C', (char const )'3', (char const )' ', (char const )'S',
2825 (char const )'B', (char const )'C', (char const )'.', (char const )' ',
2826 (char const )' ', (char const )'N', (char const )'o', (char const )'t',
2827 (char const )'e', (char const )' ', (char const )'t', (char const )'h',
2828 (char const )'a', (char const )'t', (char const )' ', (char const )'t',
2829 (char const )'h', (char const )'e', (char const )'r', (char const )'e',
2830 (char const )' ', (char const )'i', (char const )'s', (char const )' ',
2831 (char const )'n', (char const )'o', (char const )' ', (char const )'w',
2832 (char const )'a', (char const )'y', (char const )' ', (char const )'t',
2833 (char const )'o', (char const )' ', (char const )'p', (char const )'r',
2834 (char const )'o', (char const )'b', (char const )'e', (char const )' ',
2835 (char const )'f', (char const )'o', (char const )'r', (char const )' ',
2836 (char const )'t', (char const )'h', (char const )'i', (char const )'s',
2837 (char const )' ', (char const )'d', (char const )'e', (char const )'v',
2838 (char const )'i', (char const )'c', (char const )'e', (char const )' ',
2839 (char const )'-', (char const )'-', (char const )' ', (char const )'s',
2840 (char const )'o', (char const )' ', (char const )'o', (char const )'n',
2841 (char const )'l', (char const )'y', (char const )' ', (char const )'u',
2842 (char const )'s', (char const )'e', (char const )' ', (char const )'i',
2843 (char const )'t', (char const )' ', (char const )'i', (char const )'f',
2844 (char const )' ', (char const )'y', (char const )'o', (char const )'u',
2845 (char const )' ', (char const )'a', (char const )'r', (char const )'e',
2846 (char const )' ', (char const )'*', (char const )'s', (char const )'u',
2847 (char const )'r', (char const )'e', (char const )'*', (char const )' ',
2848 (char const )'y', (char const )'o', (char const )'u', (char const )' ',
2849 (char const )'a', (char const )'r', (char const )'e', (char const )' ',
2850 (char const )'r', (char const )'u', (char const )'n', (char const )'n',
2851 (char const )'i', (char const )'n', (char const )'g', (char const )' ',
2852 (char const )'o', (char const )'n', (char const )' ', (char const )'t',
2853 (char const )'h', (char const )'i', (char const )'s', (char const )' ',
2854 (char const )'s', (char const )'p', (char const )'e', (char const )'c',
2855 (char const )'i', (char const )'f', (char const )'i', (char const )'c',
2856 (char const )' ', (char const )'S', (char const )'B', (char const )'C',
2857 (char const )' ', (char const )'s', (char const )'y', (char const )'s',
2858 (char const )'t', (char const )'e', (char const )'m', (char const )' ',
2859 (char const )'f', (char const )'r', (char const )'o', (char const )'m',
2860 (char const )' ', (char const )'W', (char const )'i', (char const )'n',
2861 (char const )'s', (char const )'y', (char const )'s', (char const )'t',
2862 (char const )'e', (char const )'m', (char const )'s', (char const )'!',
2863 (char const )' ', (char const )' ', (char const )'I', (char const )'t',
2864 (char const )' ', (char const )'w', (char const )'r', (char const )'i',
2865 (char const )'t', (char const )'e', (char const )'s', (char const )' ',
2866 (char const )'t', (char const )'o', (char const )' ', (char const )'I',
2867 (char const )'O', (char const )' ', (char const )'p', (char const )'o',
2868 (char const )'r', (char const )'t', (char const )'s', (char const )' ',
2869 (char const )'0', (char const )'x', (char const )'1', (char const )'e',
2870 (char const )'e', (char const )' ', (char const )'a', (char const )'n',
2871 (char const )'d', (char const )' ', (char const )'0', (char const )'x',
2872 (char const )'1', (char const )'e', (char const )'f', (char const )'!',
2873 (char const )'\000'};
2874#line 223 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2875static char const __mod_license223[12] __attribute__((__used__, __unused__, __section__(".modinfo"),
2876__aligned__(1))) =
2877#line 223
2878 { (char const )'l', (char const )'i', (char const )'c', (char const )'e',
2879 (char const )'n', (char const )'s', (char const )'e', (char const )'=',
2880 (char const )'G', (char const )'P', (char const )'L', (char const )'\000'};
2881#line 224 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2882static char const __mod_alias224[24] __attribute__((__used__, __unused__, __section__(".modinfo"),
2883__aligned__(1))) =
2884#line 224
2885 { (char const )'a', (char const )'l', (char const )'i', (char const )'a',
2886 (char const )'s', (char const )'=', (char const )'c', (char const )'h',
2887 (char const )'a', (char const )'r', (char const )'-', (char const )'m',
2888 (char const )'a', (char const )'j', (char const )'o', (char const )'r',
2889 (char const )'-', (char const )'1', (char const )'0', (char const )'-',
2890 (char const )'1', (char const )'3', (char const )'0', (char const )'\000'};
2891#line 242
2892void ldv_check_final_state(void) ;
2893#line 245
2894extern void ldv_check_return_value(int res ) ;
2895#line 248
2896extern void ldv_initialize(void) ;
2897#line 251
2898extern int __VERIFIER_nondet_int(void) ;
2899#line 254 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2900int LDV_IN_INTERRUPT ;
2901#line 280 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2902static ssize_t res_epx_c3_write_5 ;
2903#line 302 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2904static int res_epx_c3_open_3 ;
2905#line 257 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
2906void main(void)
2907{ struct file *var_group1 ;
2908 char const *var_epx_c3_write_5_p1 ;
2909 size_t var_epx_c3_write_5_p2 ;
2910 loff_t *var_epx_c3_write_5_p3 ;
2911 unsigned int var_epx_c3_ioctl_6_p1 ;
2912 unsigned long var_epx_c3_ioctl_6_p2 ;
2913 struct inode *var_group2 ;
2914 struct notifier_block *var_group3 ;
2915 unsigned long var_epx_c3_notify_sys_7_p1 ;
2916 void *var_epx_c3_notify_sys_7_p2 ;
2917 int tmp ;
2918 int ldv_s_epx_c3_fops_file_operations ;
2919 int tmp___0 ;
2920 int tmp___1 ;
2921 int __cil_tmp15 ;
2922 int __cil_tmp16 ;
2923
2924 {
2925 {
2926#line 332
2927 LDV_IN_INTERRUPT = 1;
2928#line 341
2929 ldv_initialize();
2930#line 352
2931 tmp = watchdog_init();
2932 }
2933#line 352
2934 if (tmp) {
2935#line 353
2936 goto ldv_final;
2937 } else {
2938
2939 }
2940#line 354
2941 ldv_s_epx_c3_fops_file_operations = 0;
2942 {
2943#line 360
2944 while (1) {
2945 while_continue: ;
2946 {
2947#line 360
2948 tmp___1 = __VERIFIER_nondet_int();
2949 }
2950#line 360
2951 if (tmp___1) {
2952
2953 } else {
2954 {
2955#line 360
2956 __cil_tmp15 = ldv_s_epx_c3_fops_file_operations == 0;
2957#line 360
2958 if (! __cil_tmp15) {
2959
2960 } else {
2961#line 360
2962 goto while_break;
2963 }
2964 }
2965 }
2966 {
2967#line 364
2968 tmp___0 = __VERIFIER_nondet_int();
2969 }
2970#line 366
2971 if (tmp___0 == 0) {
2972#line 366
2973 goto case_0;
2974 } else
2975#line 390
2976 if (tmp___0 == 1) {
2977#line 390
2978 goto case_1;
2979 } else
2980#line 414
2981 if (tmp___0 == 2) {
2982#line 414
2983 goto case_2;
2984 } else
2985#line 435
2986 if (tmp___0 == 3) {
2987#line 435
2988 goto case_3;
2989 } else
2990#line 456
2991 if (tmp___0 == 4) {
2992#line 456
2993 goto case_4;
2994 } else {
2995 {
2996#line 477
2997 goto switch_default;
2998#line 364
2999 if (0) {
3000 case_0:
3001#line 369
3002 if (ldv_s_epx_c3_fops_file_operations == 0) {
3003 {
3004#line 379
3005 res_epx_c3_open_3 = epx_c3_open(var_group2, var_group1);
3006#line 380
3007 ldv_check_return_value(res_epx_c3_open_3);
3008 }
3009#line 381
3010 if (res_epx_c3_open_3) {
3011#line 382
3012 goto ldv_module_exit;
3013 } else {
3014
3015 }
3016#line 383
3017 ldv_s_epx_c3_fops_file_operations = ldv_s_epx_c3_fops_file_operations + 1;
3018 } else {
3019
3020 }
3021#line 389
3022 goto switch_break;
3023 case_1:
3024#line 393
3025 if (ldv_s_epx_c3_fops_file_operations == 1) {
3026 {
3027#line 403
3028 res_epx_c3_write_5 = epx_c3_write(var_group1, var_epx_c3_write_5_p1, var_epx_c3_write_5_p2,
3029 var_epx_c3_write_5_p3);
3030#line 404
3031 __cil_tmp16 = (int )res_epx_c3_write_5;
3032#line 404
3033 ldv_check_return_value(__cil_tmp16);
3034 }
3035#line 405
3036 if (res_epx_c3_write_5 < 0L) {
3037#line 406
3038 goto ldv_module_exit;
3039 } else {
3040
3041 }
3042#line 407
3043 ldv_s_epx_c3_fops_file_operations = ldv_s_epx_c3_fops_file_operations + 1;
3044 } else {
3045
3046 }
3047#line 413
3048 goto switch_break;
3049 case_2:
3050#line 417
3051 if (ldv_s_epx_c3_fops_file_operations == 2) {
3052 {
3053#line 427
3054 epx_c3_release(var_group2, var_group1);
3055#line 428
3056 ldv_s_epx_c3_fops_file_operations = 0;
3057 }
3058 } else {
3059
3060 }
3061#line 434
3062 goto switch_break;
3063 case_3:
3064 {
3065#line 448
3066 epx_c3_ioctl(var_group1, var_epx_c3_ioctl_6_p1, var_epx_c3_ioctl_6_p2);
3067 }
3068#line 455
3069 goto switch_break;
3070 case_4:
3071 {
3072#line 469
3073 epx_c3_notify_sys(var_group3, var_epx_c3_notify_sys_7_p1, var_epx_c3_notify_sys_7_p2);
3074 }
3075#line 476
3076 goto switch_break;
3077 switch_default:
3078#line 477
3079 goto switch_break;
3080 } else {
3081 switch_break: ;
3082 }
3083 }
3084 }
3085 }
3086 while_break: ;
3087 }
3088 ldv_module_exit:
3089 {
3090#line 494
3091 watchdog_exit();
3092 }
3093 ldv_final:
3094 {
3095#line 497
3096 ldv_check_final_state();
3097 }
3098#line 500
3099 return;
3100}
3101}
3102#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
3103void ldv_blast_assert(void)
3104{
3105
3106 {
3107 ERROR:
3108#line 6
3109 goto ERROR;
3110}
3111}
3112#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
3113extern int __VERIFIER_nondet_int(void) ;
3114#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3115int ldv_mutex = 1;
3116#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3117int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock )
3118{ int nondetermined ;
3119
3120 {
3121#line 29
3122 if (ldv_mutex == 1) {
3123
3124 } else {
3125 {
3126#line 29
3127 ldv_blast_assert();
3128 }
3129 }
3130 {
3131#line 32
3132 nondetermined = __VERIFIER_nondet_int();
3133 }
3134#line 35
3135 if (nondetermined) {
3136#line 38
3137 ldv_mutex = 2;
3138#line 40
3139 return (0);
3140 } else {
3141#line 45
3142 return (-4);
3143 }
3144}
3145}
3146#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3147int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock )
3148{ int nondetermined ;
3149
3150 {
3151#line 57
3152 if (ldv_mutex == 1) {
3153
3154 } else {
3155 {
3156#line 57
3157 ldv_blast_assert();
3158 }
3159 }
3160 {
3161#line 60
3162 nondetermined = __VERIFIER_nondet_int();
3163 }
3164#line 63
3165 if (nondetermined) {
3166#line 66
3167 ldv_mutex = 2;
3168#line 68
3169 return (0);
3170 } else {
3171#line 73
3172 return (-4);
3173 }
3174}
3175}
3176#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3177int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock )
3178{ int atomic_value_after_dec ;
3179
3180 {
3181#line 83
3182 if (ldv_mutex == 1) {
3183
3184 } else {
3185 {
3186#line 83
3187 ldv_blast_assert();
3188 }
3189 }
3190 {
3191#line 86
3192 atomic_value_after_dec = __VERIFIER_nondet_int();
3193 }
3194#line 89
3195 if (atomic_value_after_dec == 0) {
3196#line 92
3197 ldv_mutex = 2;
3198#line 94
3199 return (1);
3200 } else {
3201
3202 }
3203#line 98
3204 return (0);
3205}
3206}
3207#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3208void mutex_lock(struct mutex *lock )
3209{
3210
3211 {
3212#line 108
3213 if (ldv_mutex == 1) {
3214
3215 } else {
3216 {
3217#line 108
3218 ldv_blast_assert();
3219 }
3220 }
3221#line 110
3222 ldv_mutex = 2;
3223#line 111
3224 return;
3225}
3226}
3227#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3228int mutex_trylock(struct mutex *lock )
3229{ int nondetermined ;
3230
3231 {
3232#line 121
3233 if (ldv_mutex == 1) {
3234
3235 } else {
3236 {
3237#line 121
3238 ldv_blast_assert();
3239 }
3240 }
3241 {
3242#line 124
3243 nondetermined = __VERIFIER_nondet_int();
3244 }
3245#line 127
3246 if (nondetermined) {
3247#line 130
3248 ldv_mutex = 2;
3249#line 132
3250 return (1);
3251 } else {
3252#line 137
3253 return (0);
3254 }
3255}
3256}
3257#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3258void mutex_unlock(struct mutex *lock )
3259{
3260
3261 {
3262#line 147
3263 if (ldv_mutex == 2) {
3264
3265 } else {
3266 {
3267#line 147
3268 ldv_blast_assert();
3269 }
3270 }
3271#line 149
3272 ldv_mutex = 1;
3273#line 150
3274 return;
3275}
3276}
3277#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3278void ldv_check_final_state(void)
3279{
3280
3281 {
3282#line 156
3283 if (ldv_mutex == 1) {
3284
3285 } else {
3286 {
3287#line 156
3288 ldv_blast_assert();
3289 }
3290 }
3291#line 157
3292 return;
3293}
3294}
3295#line 509 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16416/dscv_tempdir/dscv/ri/32_1/drivers/watchdog/sbc_epx_c3.c.common.c"
3296long s__builtin_expect(long val , long res )
3297{
3298
3299 {
3300#line 510
3301 return (val);
3302}
3303}