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 221 "include/linux/types.h"
77struct __anonstruct_atomic_t_6 {
78 int counter ;
79};
80#line 221 "include/linux/types.h"
81typedef struct __anonstruct_atomic_t_6 atomic_t;
82#line 226 "include/linux/types.h"
83struct __anonstruct_atomic64_t_7 {
84 long counter ;
85};
86#line 226 "include/linux/types.h"
87typedef struct __anonstruct_atomic64_t_7 atomic64_t;
88#line 227 "include/linux/types.h"
89struct list_head {
90 struct list_head *next ;
91 struct list_head *prev ;
92};
93#line 232
94struct hlist_node;
95#line 232 "include/linux/types.h"
96struct hlist_head {
97 struct hlist_node *first ;
98};
99#line 236 "include/linux/types.h"
100struct hlist_node {
101 struct hlist_node *next ;
102 struct hlist_node **pprev ;
103};
104#line 247 "include/linux/types.h"
105struct rcu_head {
106 struct rcu_head *next ;
107 void (*func)(struct rcu_head * ) ;
108};
109#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
110struct module;
111#line 55
112struct module;
113#line 146 "include/linux/init.h"
114typedef void (*ctor_fn_t)(void);
115#line 46 "include/linux/dynamic_debug.h"
116struct device;
117#line 46
118struct device;
119#line 57
120struct completion;
121#line 57
122struct completion;
123#line 348 "include/linux/kernel.h"
124struct pid;
125#line 348
126struct pid;
127#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
128struct timespec;
129#line 112
130struct timespec;
131#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
132struct page;
133#line 58
134struct page;
135#line 26 "include/asm-generic/getorder.h"
136struct task_struct;
137#line 26
138struct task_struct;
139#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
140struct file;
141#line 290
142struct file;
143#line 305
144struct seq_file;
145#line 305
146struct seq_file;
147#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
148struct arch_spinlock;
149#line 327
150struct arch_spinlock;
151#line 306 "include/linux/bitmap.h"
152struct bug_entry {
153 int bug_addr_disp ;
154 int file_disp ;
155 unsigned short line ;
156 unsigned short flags ;
157};
158#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
159struct static_key;
160#line 234
161struct static_key;
162#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
163struct kmem_cache;
164#line 23 "include/asm-generic/atomic-long.h"
165typedef atomic64_t atomic_long_t;
166#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
167typedef u16 __ticket_t;
168#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
169typedef u32 __ticketpair_t;
170#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
171struct __raw_tickets {
172 __ticket_t head ;
173 __ticket_t tail ;
174};
175#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
176union __anonunion_ldv_5907_29 {
177 __ticketpair_t head_tail ;
178 struct __raw_tickets tickets ;
179};
180#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
181struct arch_spinlock {
182 union __anonunion_ldv_5907_29 ldv_5907 ;
183};
184#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
185typedef struct arch_spinlock arch_spinlock_t;
186#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
187struct __anonstruct_ldv_5914_31 {
188 u32 read ;
189 s32 write ;
190};
191#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
192union __anonunion_arch_rwlock_t_30 {
193 s64 lock ;
194 struct __anonstruct_ldv_5914_31 ldv_5914 ;
195};
196#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
197typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
198#line 34
199struct lockdep_map;
200#line 34
201struct lockdep_map;
202#line 55 "include/linux/debug_locks.h"
203struct stack_trace {
204 unsigned int nr_entries ;
205 unsigned int max_entries ;
206 unsigned long *entries ;
207 int skip ;
208};
209#line 26 "include/linux/stacktrace.h"
210struct lockdep_subclass_key {
211 char __one_byte ;
212};
213#line 53 "include/linux/lockdep.h"
214struct lock_class_key {
215 struct lockdep_subclass_key subkeys[8U] ;
216};
217#line 59 "include/linux/lockdep.h"
218struct lock_class {
219 struct list_head hash_entry ;
220 struct list_head lock_entry ;
221 struct lockdep_subclass_key *key ;
222 unsigned int subclass ;
223 unsigned int dep_gen_id ;
224 unsigned long usage_mask ;
225 struct stack_trace usage_traces[13U] ;
226 struct list_head locks_after ;
227 struct list_head locks_before ;
228 unsigned int version ;
229 unsigned long ops ;
230 char const *name ;
231 int name_version ;
232 unsigned long contention_point[4U] ;
233 unsigned long contending_point[4U] ;
234};
235#line 144 "include/linux/lockdep.h"
236struct lockdep_map {
237 struct lock_class_key *key ;
238 struct lock_class *class_cache[2U] ;
239 char const *name ;
240 int cpu ;
241 unsigned long ip ;
242};
243#line 556 "include/linux/lockdep.h"
244struct raw_spinlock {
245 arch_spinlock_t raw_lock ;
246 unsigned int magic ;
247 unsigned int owner_cpu ;
248 void *owner ;
249 struct lockdep_map dep_map ;
250};
251#line 32 "include/linux/spinlock_types.h"
252typedef struct raw_spinlock raw_spinlock_t;
253#line 33 "include/linux/spinlock_types.h"
254struct __anonstruct_ldv_6122_33 {
255 u8 __padding[24U] ;
256 struct lockdep_map dep_map ;
257};
258#line 33 "include/linux/spinlock_types.h"
259union __anonunion_ldv_6123_32 {
260 struct raw_spinlock rlock ;
261 struct __anonstruct_ldv_6122_33 ldv_6122 ;
262};
263#line 33 "include/linux/spinlock_types.h"
264struct spinlock {
265 union __anonunion_ldv_6123_32 ldv_6123 ;
266};
267#line 76 "include/linux/spinlock_types.h"
268typedef struct spinlock spinlock_t;
269#line 23 "include/linux/rwlock_types.h"
270struct __anonstruct_rwlock_t_34 {
271 arch_rwlock_t raw_lock ;
272 unsigned int magic ;
273 unsigned int owner_cpu ;
274 void *owner ;
275 struct lockdep_map dep_map ;
276};
277#line 23 "include/linux/rwlock_types.h"
278typedef struct __anonstruct_rwlock_t_34 rwlock_t;
279#line 110 "include/linux/seqlock.h"
280struct seqcount {
281 unsigned int sequence ;
282};
283#line 121 "include/linux/seqlock.h"
284typedef struct seqcount seqcount_t;
285#line 254 "include/linux/seqlock.h"
286struct timespec {
287 __kernel_time_t tv_sec ;
288 long tv_nsec ;
289};
290#line 286 "include/linux/time.h"
291struct kstat {
292 u64 ino ;
293 dev_t dev ;
294 umode_t mode ;
295 unsigned int nlink ;
296 uid_t uid ;
297 gid_t gid ;
298 dev_t rdev ;
299 loff_t size ;
300 struct timespec atime ;
301 struct timespec mtime ;
302 struct timespec ctime ;
303 unsigned long blksize ;
304 unsigned long long blocks ;
305};
306#line 48 "include/linux/wait.h"
307struct __wait_queue_head {
308 spinlock_t lock ;
309 struct list_head task_list ;
310};
311#line 53 "include/linux/wait.h"
312typedef struct __wait_queue_head wait_queue_head_t;
313#line 670 "include/linux/mmzone.h"
314struct mutex {
315 atomic_t count ;
316 spinlock_t wait_lock ;
317 struct list_head wait_list ;
318 struct task_struct *owner ;
319 char const *name ;
320 void *magic ;
321 struct lockdep_map dep_map ;
322};
323#line 171 "include/linux/mutex.h"
324struct rw_semaphore;
325#line 171
326struct rw_semaphore;
327#line 172 "include/linux/mutex.h"
328struct rw_semaphore {
329 long count ;
330 raw_spinlock_t wait_lock ;
331 struct list_head wait_list ;
332 struct lockdep_map dep_map ;
333};
334#line 128 "include/linux/rwsem.h"
335struct completion {
336 unsigned int done ;
337 wait_queue_head_t wait ;
338};
339#line 312 "include/linux/jiffies.h"
340union ktime {
341 s64 tv64 ;
342};
343#line 59 "include/linux/ktime.h"
344typedef union ktime ktime_t;
345#line 341
346struct tvec_base;
347#line 341
348struct tvec_base;
349#line 342 "include/linux/ktime.h"
350struct timer_list {
351 struct list_head entry ;
352 unsigned long expires ;
353 struct tvec_base *base ;
354 void (*function)(unsigned long ) ;
355 unsigned long data ;
356 int slack ;
357 int start_pid ;
358 void *start_site ;
359 char start_comm[16U] ;
360 struct lockdep_map lockdep_map ;
361};
362#line 302 "include/linux/timer.h"
363struct work_struct;
364#line 302
365struct work_struct;
366#line 45 "include/linux/workqueue.h"
367struct work_struct {
368 atomic_long_t data ;
369 struct list_head entry ;
370 void (*func)(struct work_struct * ) ;
371 struct lockdep_map lockdep_map ;
372};
373#line 46 "include/linux/pm.h"
374struct pm_message {
375 int event ;
376};
377#line 52 "include/linux/pm.h"
378typedef struct pm_message pm_message_t;
379#line 53 "include/linux/pm.h"
380struct dev_pm_ops {
381 int (*prepare)(struct device * ) ;
382 void (*complete)(struct device * ) ;
383 int (*suspend)(struct device * ) ;
384 int (*resume)(struct device * ) ;
385 int (*freeze)(struct device * ) ;
386 int (*thaw)(struct device * ) ;
387 int (*poweroff)(struct device * ) ;
388 int (*restore)(struct device * ) ;
389 int (*suspend_late)(struct device * ) ;
390 int (*resume_early)(struct device * ) ;
391 int (*freeze_late)(struct device * ) ;
392 int (*thaw_early)(struct device * ) ;
393 int (*poweroff_late)(struct device * ) ;
394 int (*restore_early)(struct device * ) ;
395 int (*suspend_noirq)(struct device * ) ;
396 int (*resume_noirq)(struct device * ) ;
397 int (*freeze_noirq)(struct device * ) ;
398 int (*thaw_noirq)(struct device * ) ;
399 int (*poweroff_noirq)(struct device * ) ;
400 int (*restore_noirq)(struct device * ) ;
401 int (*runtime_suspend)(struct device * ) ;
402 int (*runtime_resume)(struct device * ) ;
403 int (*runtime_idle)(struct device * ) ;
404};
405#line 289
406enum rpm_status {
407 RPM_ACTIVE = 0,
408 RPM_RESUMING = 1,
409 RPM_SUSPENDED = 2,
410 RPM_SUSPENDING = 3
411} ;
412#line 296
413enum rpm_request {
414 RPM_REQ_NONE = 0,
415 RPM_REQ_IDLE = 1,
416 RPM_REQ_SUSPEND = 2,
417 RPM_REQ_AUTOSUSPEND = 3,
418 RPM_REQ_RESUME = 4
419} ;
420#line 304
421struct wakeup_source;
422#line 304
423struct wakeup_source;
424#line 494 "include/linux/pm.h"
425struct pm_subsys_data {
426 spinlock_t lock ;
427 unsigned int refcount ;
428};
429#line 499
430struct dev_pm_qos_request;
431#line 499
432struct pm_qos_constraints;
433#line 499 "include/linux/pm.h"
434struct dev_pm_info {
435 pm_message_t power_state ;
436 unsigned char can_wakeup : 1 ;
437 unsigned char async_suspend : 1 ;
438 bool is_prepared ;
439 bool is_suspended ;
440 bool ignore_children ;
441 spinlock_t lock ;
442 struct list_head entry ;
443 struct completion completion ;
444 struct wakeup_source *wakeup ;
445 bool wakeup_path ;
446 struct timer_list suspend_timer ;
447 unsigned long timer_expires ;
448 struct work_struct work ;
449 wait_queue_head_t wait_queue ;
450 atomic_t usage_count ;
451 atomic_t child_count ;
452 unsigned char disable_depth : 3 ;
453 unsigned char idle_notification : 1 ;
454 unsigned char request_pending : 1 ;
455 unsigned char deferred_resume : 1 ;
456 unsigned char run_wake : 1 ;
457 unsigned char runtime_auto : 1 ;
458 unsigned char no_callbacks : 1 ;
459 unsigned char irq_safe : 1 ;
460 unsigned char use_autosuspend : 1 ;
461 unsigned char timer_autosuspends : 1 ;
462 enum rpm_request request ;
463 enum rpm_status runtime_status ;
464 int runtime_error ;
465 int autosuspend_delay ;
466 unsigned long last_busy ;
467 unsigned long active_jiffies ;
468 unsigned long suspended_jiffies ;
469 unsigned long accounting_timestamp ;
470 ktime_t suspend_time ;
471 s64 max_time_suspended_ns ;
472 struct dev_pm_qos_request *pq_req ;
473 struct pm_subsys_data *subsys_data ;
474 struct pm_qos_constraints *constraints ;
475};
476#line 558 "include/linux/pm.h"
477struct dev_pm_domain {
478 struct dev_pm_ops ops ;
479};
480#line 18 "include/asm-generic/pci_iomap.h"
481struct vm_area_struct;
482#line 18
483struct vm_area_struct;
484#line 37 "include/linux/kmod.h"
485struct cred;
486#line 37
487struct cred;
488#line 18 "include/linux/elf.h"
489typedef __u64 Elf64_Addr;
490#line 19 "include/linux/elf.h"
491typedef __u16 Elf64_Half;
492#line 23 "include/linux/elf.h"
493typedef __u32 Elf64_Word;
494#line 24 "include/linux/elf.h"
495typedef __u64 Elf64_Xword;
496#line 193 "include/linux/elf.h"
497struct elf64_sym {
498 Elf64_Word st_name ;
499 unsigned char st_info ;
500 unsigned char st_other ;
501 Elf64_Half st_shndx ;
502 Elf64_Addr st_value ;
503 Elf64_Xword st_size ;
504};
505#line 201 "include/linux/elf.h"
506typedef struct elf64_sym Elf64_Sym;
507#line 445
508struct sock;
509#line 445
510struct sock;
511#line 446
512struct kobject;
513#line 446
514struct kobject;
515#line 447
516enum kobj_ns_type {
517 KOBJ_NS_TYPE_NONE = 0,
518 KOBJ_NS_TYPE_NET = 1,
519 KOBJ_NS_TYPES = 2
520} ;
521#line 453 "include/linux/elf.h"
522struct kobj_ns_type_operations {
523 enum kobj_ns_type type ;
524 void *(*grab_current_ns)(void) ;
525 void const *(*netlink_ns)(struct sock * ) ;
526 void const *(*initial_ns)(void) ;
527 void (*drop_ns)(void * ) ;
528};
529#line 57 "include/linux/kobject_ns.h"
530struct attribute {
531 char const *name ;
532 umode_t mode ;
533 struct lock_class_key *key ;
534 struct lock_class_key skey ;
535};
536#line 33 "include/linux/sysfs.h"
537struct attribute_group {
538 char const *name ;
539 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
540 struct attribute **attrs ;
541};
542#line 62 "include/linux/sysfs.h"
543struct bin_attribute {
544 struct attribute attr ;
545 size_t size ;
546 void *private ;
547 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
548 loff_t , size_t ) ;
549 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
550 loff_t , size_t ) ;
551 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
552};
553#line 98 "include/linux/sysfs.h"
554struct sysfs_ops {
555 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
556 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
557 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
558};
559#line 117
560struct sysfs_dirent;
561#line 117
562struct sysfs_dirent;
563#line 182 "include/linux/sysfs.h"
564struct kref {
565 atomic_t refcount ;
566};
567#line 49 "include/linux/kobject.h"
568struct kset;
569#line 49
570struct kobj_type;
571#line 49 "include/linux/kobject.h"
572struct kobject {
573 char const *name ;
574 struct list_head entry ;
575 struct kobject *parent ;
576 struct kset *kset ;
577 struct kobj_type *ktype ;
578 struct sysfs_dirent *sd ;
579 struct kref kref ;
580 unsigned char state_initialized : 1 ;
581 unsigned char state_in_sysfs : 1 ;
582 unsigned char state_add_uevent_sent : 1 ;
583 unsigned char state_remove_uevent_sent : 1 ;
584 unsigned char uevent_suppress : 1 ;
585};
586#line 107 "include/linux/kobject.h"
587struct kobj_type {
588 void (*release)(struct kobject * ) ;
589 struct sysfs_ops const *sysfs_ops ;
590 struct attribute **default_attrs ;
591 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
592 void const *(*namespace)(struct kobject * ) ;
593};
594#line 115 "include/linux/kobject.h"
595struct kobj_uevent_env {
596 char *envp[32U] ;
597 int envp_idx ;
598 char buf[2048U] ;
599 int buflen ;
600};
601#line 122 "include/linux/kobject.h"
602struct kset_uevent_ops {
603 int (* const filter)(struct kset * , struct kobject * ) ;
604 char const *(* const name)(struct kset * , struct kobject * ) ;
605 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
606};
607#line 139 "include/linux/kobject.h"
608struct kset {
609 struct list_head list ;
610 spinlock_t list_lock ;
611 struct kobject kobj ;
612 struct kset_uevent_ops const *uevent_ops ;
613};
614#line 215
615struct kernel_param;
616#line 215
617struct kernel_param;
618#line 216 "include/linux/kobject.h"
619struct kernel_param_ops {
620 int (*set)(char const * , struct kernel_param const * ) ;
621 int (*get)(char * , struct kernel_param const * ) ;
622 void (*free)(void * ) ;
623};
624#line 49 "include/linux/moduleparam.h"
625struct kparam_string;
626#line 49
627struct kparam_array;
628#line 49 "include/linux/moduleparam.h"
629union __anonunion_ldv_13363_134 {
630 void *arg ;
631 struct kparam_string const *str ;
632 struct kparam_array const *arr ;
633};
634#line 49 "include/linux/moduleparam.h"
635struct kernel_param {
636 char const *name ;
637 struct kernel_param_ops const *ops ;
638 u16 perm ;
639 s16 level ;
640 union __anonunion_ldv_13363_134 ldv_13363 ;
641};
642#line 61 "include/linux/moduleparam.h"
643struct kparam_string {
644 unsigned int maxlen ;
645 char *string ;
646};
647#line 67 "include/linux/moduleparam.h"
648struct kparam_array {
649 unsigned int max ;
650 unsigned int elemsize ;
651 unsigned int *num ;
652 struct kernel_param_ops const *ops ;
653 void *elem ;
654};
655#line 458 "include/linux/moduleparam.h"
656struct static_key {
657 atomic_t enabled ;
658};
659#line 225 "include/linux/jump_label.h"
660struct tracepoint;
661#line 225
662struct tracepoint;
663#line 226 "include/linux/jump_label.h"
664struct tracepoint_func {
665 void *func ;
666 void *data ;
667};
668#line 29 "include/linux/tracepoint.h"
669struct tracepoint {
670 char const *name ;
671 struct static_key key ;
672 void (*regfunc)(void) ;
673 void (*unregfunc)(void) ;
674 struct tracepoint_func *funcs ;
675};
676#line 86 "include/linux/tracepoint.h"
677struct kernel_symbol {
678 unsigned long value ;
679 char const *name ;
680};
681#line 27 "include/linux/export.h"
682struct mod_arch_specific {
683
684};
685#line 34 "include/linux/module.h"
686struct module_param_attrs;
687#line 34 "include/linux/module.h"
688struct module_kobject {
689 struct kobject kobj ;
690 struct module *mod ;
691 struct kobject *drivers_dir ;
692 struct module_param_attrs *mp ;
693};
694#line 43 "include/linux/module.h"
695struct module_attribute {
696 struct attribute attr ;
697 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
698 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
699 size_t ) ;
700 void (*setup)(struct module * , char const * ) ;
701 int (*test)(struct module * ) ;
702 void (*free)(struct module * ) ;
703};
704#line 69
705struct exception_table_entry;
706#line 69
707struct exception_table_entry;
708#line 198
709enum module_state {
710 MODULE_STATE_LIVE = 0,
711 MODULE_STATE_COMING = 1,
712 MODULE_STATE_GOING = 2
713} ;
714#line 204 "include/linux/module.h"
715struct module_ref {
716 unsigned long incs ;
717 unsigned long decs ;
718};
719#line 219
720struct module_sect_attrs;
721#line 219
722struct module_notes_attrs;
723#line 219
724struct ftrace_event_call;
725#line 219 "include/linux/module.h"
726struct module {
727 enum module_state state ;
728 struct list_head list ;
729 char name[56U] ;
730 struct module_kobject mkobj ;
731 struct module_attribute *modinfo_attrs ;
732 char const *version ;
733 char const *srcversion ;
734 struct kobject *holders_dir ;
735 struct kernel_symbol const *syms ;
736 unsigned long const *crcs ;
737 unsigned int num_syms ;
738 struct kernel_param *kp ;
739 unsigned int num_kp ;
740 unsigned int num_gpl_syms ;
741 struct kernel_symbol const *gpl_syms ;
742 unsigned long const *gpl_crcs ;
743 struct kernel_symbol const *unused_syms ;
744 unsigned long const *unused_crcs ;
745 unsigned int num_unused_syms ;
746 unsigned int num_unused_gpl_syms ;
747 struct kernel_symbol const *unused_gpl_syms ;
748 unsigned long const *unused_gpl_crcs ;
749 struct kernel_symbol const *gpl_future_syms ;
750 unsigned long const *gpl_future_crcs ;
751 unsigned int num_gpl_future_syms ;
752 unsigned int num_exentries ;
753 struct exception_table_entry *extable ;
754 int (*init)(void) ;
755 void *module_init ;
756 void *module_core ;
757 unsigned int init_size ;
758 unsigned int core_size ;
759 unsigned int init_text_size ;
760 unsigned int core_text_size ;
761 unsigned int init_ro_size ;
762 unsigned int core_ro_size ;
763 struct mod_arch_specific arch ;
764 unsigned int taints ;
765 unsigned int num_bugs ;
766 struct list_head bug_list ;
767 struct bug_entry *bug_table ;
768 Elf64_Sym *symtab ;
769 Elf64_Sym *core_symtab ;
770 unsigned int num_symtab ;
771 unsigned int core_num_syms ;
772 char *strtab ;
773 char *core_strtab ;
774 struct module_sect_attrs *sect_attrs ;
775 struct module_notes_attrs *notes_attrs ;
776 char *args ;
777 void *percpu ;
778 unsigned int percpu_size ;
779 unsigned int num_tracepoints ;
780 struct tracepoint * const *tracepoints_ptrs ;
781 unsigned int num_trace_bprintk_fmt ;
782 char const **trace_bprintk_fmt_start ;
783 struct ftrace_event_call **trace_events ;
784 unsigned int num_trace_events ;
785 struct list_head source_list ;
786 struct list_head target_list ;
787 struct task_struct *waiter ;
788 void (*exit)(void) ;
789 struct module_ref *refptr ;
790 ctor_fn_t (**ctors)(void) ;
791 unsigned int num_ctors ;
792};
793#line 88 "include/linux/kmemleak.h"
794struct kmem_cache_cpu {
795 void **freelist ;
796 unsigned long tid ;
797 struct page *page ;
798 struct page *partial ;
799 int node ;
800 unsigned int stat[26U] ;
801};
802#line 55 "include/linux/slub_def.h"
803struct kmem_cache_node {
804 spinlock_t list_lock ;
805 unsigned long nr_partial ;
806 struct list_head partial ;
807 atomic_long_t nr_slabs ;
808 atomic_long_t total_objects ;
809 struct list_head full ;
810};
811#line 66 "include/linux/slub_def.h"
812struct kmem_cache_order_objects {
813 unsigned long x ;
814};
815#line 76 "include/linux/slub_def.h"
816struct kmem_cache {
817 struct kmem_cache_cpu *cpu_slab ;
818 unsigned long flags ;
819 unsigned long min_partial ;
820 int size ;
821 int objsize ;
822 int offset ;
823 int cpu_partial ;
824 struct kmem_cache_order_objects oo ;
825 struct kmem_cache_order_objects max ;
826 struct kmem_cache_order_objects min ;
827 gfp_t allocflags ;
828 int refcount ;
829 void (*ctor)(void * ) ;
830 int inuse ;
831 int align ;
832 int reserved ;
833 char const *name ;
834 struct list_head list ;
835 struct kobject kobj ;
836 int remote_node_defrag_ratio ;
837 struct kmem_cache_node *node[1024U] ;
838};
839#line 32 "include/linux/input.h"
840struct input_id {
841 __u16 bustype ;
842 __u16 vendor ;
843 __u16 product ;
844 __u16 version ;
845};
846#line 49 "include/linux/input.h"
847struct input_absinfo {
848 __s32 value ;
849 __s32 minimum ;
850 __s32 maximum ;
851 __s32 fuzz ;
852 __s32 flat ;
853 __s32 resolution ;
854};
855#line 77 "include/linux/input.h"
856struct input_keymap_entry {
857 __u8 flags ;
858 __u8 len ;
859 __u16 index ;
860 __u32 keycode ;
861 __u8 scancode[32U] ;
862};
863#line 101 "include/linux/input.h"
864struct ff_replay {
865 __u16 length ;
866 __u16 delay ;
867};
868#line 961 "include/linux/input.h"
869struct ff_trigger {
870 __u16 button ;
871 __u16 interval ;
872};
873#line 971 "include/linux/input.h"
874struct ff_envelope {
875 __u16 attack_length ;
876 __u16 attack_level ;
877 __u16 fade_length ;
878 __u16 fade_level ;
879};
880#line 990 "include/linux/input.h"
881struct ff_constant_effect {
882 __s16 level ;
883 struct ff_envelope envelope ;
884};
885#line 1000 "include/linux/input.h"
886struct ff_ramp_effect {
887 __s16 start_level ;
888 __s16 end_level ;
889 struct ff_envelope envelope ;
890};
891#line 1012 "include/linux/input.h"
892struct ff_condition_effect {
893 __u16 right_saturation ;
894 __u16 left_saturation ;
895 __s16 right_coeff ;
896 __s16 left_coeff ;
897 __u16 deadband ;
898 __s16 center ;
899};
900#line 1033 "include/linux/input.h"
901struct ff_periodic_effect {
902 __u16 waveform ;
903 __u16 period ;
904 __s16 magnitude ;
905 __s16 offset ;
906 __u16 phase ;
907 struct ff_envelope envelope ;
908 __u32 custom_len ;
909 __s16 *custom_data ;
910};
911#line 1064 "include/linux/input.h"
912struct ff_rumble_effect {
913 __u16 strong_magnitude ;
914 __u16 weak_magnitude ;
915};
916#line 1077 "include/linux/input.h"
917union __anonunion_u_135 {
918 struct ff_constant_effect constant ;
919 struct ff_ramp_effect ramp ;
920 struct ff_periodic_effect periodic ;
921 struct ff_condition_effect condition[2U] ;
922 struct ff_rumble_effect rumble ;
923};
924#line 1077 "include/linux/input.h"
925struct ff_effect {
926 __u16 type ;
927 __s16 id ;
928 __u16 direction ;
929 struct ff_trigger trigger ;
930 struct ff_replay replay ;
931 union __anonunion_u_135 u ;
932};
933#line 1116
934struct klist_node;
935#line 1116
936struct klist_node;
937#line 37 "include/linux/klist.h"
938struct klist_node {
939 void *n_klist ;
940 struct list_head n_node ;
941 struct kref n_ref ;
942};
943#line 67
944struct dma_map_ops;
945#line 67 "include/linux/klist.h"
946struct dev_archdata {
947 void *acpi_handle ;
948 struct dma_map_ops *dma_ops ;
949 void *iommu ;
950};
951#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
952struct device_private;
953#line 17
954struct device_private;
955#line 18
956struct device_driver;
957#line 18
958struct device_driver;
959#line 19
960struct driver_private;
961#line 19
962struct driver_private;
963#line 20
964struct class;
965#line 20
966struct class;
967#line 21
968struct subsys_private;
969#line 21
970struct subsys_private;
971#line 22
972struct bus_type;
973#line 22
974struct bus_type;
975#line 23
976struct device_node;
977#line 23
978struct device_node;
979#line 24
980struct iommu_ops;
981#line 24
982struct iommu_ops;
983#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
984struct bus_attribute {
985 struct attribute attr ;
986 ssize_t (*show)(struct bus_type * , char * ) ;
987 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
988};
989#line 51 "include/linux/device.h"
990struct device_attribute;
991#line 51
992struct driver_attribute;
993#line 51 "include/linux/device.h"
994struct bus_type {
995 char const *name ;
996 char const *dev_name ;
997 struct device *dev_root ;
998 struct bus_attribute *bus_attrs ;
999 struct device_attribute *dev_attrs ;
1000 struct driver_attribute *drv_attrs ;
1001 int (*match)(struct device * , struct device_driver * ) ;
1002 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1003 int (*probe)(struct device * ) ;
1004 int (*remove)(struct device * ) ;
1005 void (*shutdown)(struct device * ) ;
1006 int (*suspend)(struct device * , pm_message_t ) ;
1007 int (*resume)(struct device * ) ;
1008 struct dev_pm_ops const *pm ;
1009 struct iommu_ops *iommu_ops ;
1010 struct subsys_private *p ;
1011};
1012#line 125
1013struct device_type;
1014#line 182
1015struct of_device_id;
1016#line 182 "include/linux/device.h"
1017struct device_driver {
1018 char const *name ;
1019 struct bus_type *bus ;
1020 struct module *owner ;
1021 char const *mod_name ;
1022 bool suppress_bind_attrs ;
1023 struct of_device_id const *of_match_table ;
1024 int (*probe)(struct device * ) ;
1025 int (*remove)(struct device * ) ;
1026 void (*shutdown)(struct device * ) ;
1027 int (*suspend)(struct device * , pm_message_t ) ;
1028 int (*resume)(struct device * ) ;
1029 struct attribute_group const **groups ;
1030 struct dev_pm_ops const *pm ;
1031 struct driver_private *p ;
1032};
1033#line 245 "include/linux/device.h"
1034struct driver_attribute {
1035 struct attribute attr ;
1036 ssize_t (*show)(struct device_driver * , char * ) ;
1037 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
1038};
1039#line 299
1040struct class_attribute;
1041#line 299 "include/linux/device.h"
1042struct class {
1043 char const *name ;
1044 struct module *owner ;
1045 struct class_attribute *class_attrs ;
1046 struct device_attribute *dev_attrs ;
1047 struct bin_attribute *dev_bin_attrs ;
1048 struct kobject *dev_kobj ;
1049 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1050 char *(*devnode)(struct device * , umode_t * ) ;
1051 void (*class_release)(struct class * ) ;
1052 void (*dev_release)(struct device * ) ;
1053 int (*suspend)(struct device * , pm_message_t ) ;
1054 int (*resume)(struct device * ) ;
1055 struct kobj_ns_type_operations const *ns_type ;
1056 void const *(*namespace)(struct device * ) ;
1057 struct dev_pm_ops const *pm ;
1058 struct subsys_private *p ;
1059};
1060#line 394 "include/linux/device.h"
1061struct class_attribute {
1062 struct attribute attr ;
1063 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1064 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1065 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
1066};
1067#line 447 "include/linux/device.h"
1068struct device_type {
1069 char const *name ;
1070 struct attribute_group const **groups ;
1071 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1072 char *(*devnode)(struct device * , umode_t * ) ;
1073 void (*release)(struct device * ) ;
1074 struct dev_pm_ops const *pm ;
1075};
1076#line 474 "include/linux/device.h"
1077struct device_attribute {
1078 struct attribute attr ;
1079 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1080 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1081 size_t ) ;
1082};
1083#line 557 "include/linux/device.h"
1084struct device_dma_parameters {
1085 unsigned int max_segment_size ;
1086 unsigned long segment_boundary_mask ;
1087};
1088#line 567
1089struct dma_coherent_mem;
1090#line 567 "include/linux/device.h"
1091struct device {
1092 struct device *parent ;
1093 struct device_private *p ;
1094 struct kobject kobj ;
1095 char const *init_name ;
1096 struct device_type const *type ;
1097 struct mutex mutex ;
1098 struct bus_type *bus ;
1099 struct device_driver *driver ;
1100 void *platform_data ;
1101 struct dev_pm_info power ;
1102 struct dev_pm_domain *pm_domain ;
1103 int numa_node ;
1104 u64 *dma_mask ;
1105 u64 coherent_dma_mask ;
1106 struct device_dma_parameters *dma_parms ;
1107 struct list_head dma_pools ;
1108 struct dma_coherent_mem *dma_mem ;
1109 struct dev_archdata archdata ;
1110 struct device_node *of_node ;
1111 dev_t devt ;
1112 u32 id ;
1113 spinlock_t devres_lock ;
1114 struct list_head devres_head ;
1115 struct klist_node knode_class ;
1116 struct class *class ;
1117 struct attribute_group const **groups ;
1118 void (*release)(struct device * ) ;
1119};
1120#line 681 "include/linux/device.h"
1121struct wakeup_source {
1122 char const *name ;
1123 struct list_head entry ;
1124 spinlock_t lock ;
1125 struct timer_list timer ;
1126 unsigned long timer_expires ;
1127 ktime_t total_time ;
1128 ktime_t max_time ;
1129 ktime_t last_time ;
1130 unsigned long event_count ;
1131 unsigned long active_count ;
1132 unsigned long relax_count ;
1133 unsigned long hit_count ;
1134 unsigned char active : 1 ;
1135};
1136#line 994
1137struct block_device;
1138#line 994
1139struct block_device;
1140#line 93 "include/linux/bit_spinlock.h"
1141struct hlist_bl_node;
1142#line 93 "include/linux/bit_spinlock.h"
1143struct hlist_bl_head {
1144 struct hlist_bl_node *first ;
1145};
1146#line 36 "include/linux/list_bl.h"
1147struct hlist_bl_node {
1148 struct hlist_bl_node *next ;
1149 struct hlist_bl_node **pprev ;
1150};
1151#line 114 "include/linux/rculist_bl.h"
1152struct nameidata;
1153#line 114
1154struct nameidata;
1155#line 115
1156struct path;
1157#line 115
1158struct path;
1159#line 116
1160struct vfsmount;
1161#line 116
1162struct vfsmount;
1163#line 117 "include/linux/rculist_bl.h"
1164struct qstr {
1165 unsigned int hash ;
1166 unsigned int len ;
1167 unsigned char const *name ;
1168};
1169#line 72 "include/linux/dcache.h"
1170struct inode;
1171#line 72
1172struct dentry_operations;
1173#line 72
1174struct super_block;
1175#line 72 "include/linux/dcache.h"
1176union __anonunion_d_u_136 {
1177 struct list_head d_child ;
1178 struct rcu_head d_rcu ;
1179};
1180#line 72 "include/linux/dcache.h"
1181struct dentry {
1182 unsigned int d_flags ;
1183 seqcount_t d_seq ;
1184 struct hlist_bl_node d_hash ;
1185 struct dentry *d_parent ;
1186 struct qstr d_name ;
1187 struct inode *d_inode ;
1188 unsigned char d_iname[32U] ;
1189 unsigned int d_count ;
1190 spinlock_t d_lock ;
1191 struct dentry_operations const *d_op ;
1192 struct super_block *d_sb ;
1193 unsigned long d_time ;
1194 void *d_fsdata ;
1195 struct list_head d_lru ;
1196 union __anonunion_d_u_136 d_u ;
1197 struct list_head d_subdirs ;
1198 struct list_head d_alias ;
1199};
1200#line 123 "include/linux/dcache.h"
1201struct dentry_operations {
1202 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1203 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1204 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1205 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1206 int (*d_delete)(struct dentry const * ) ;
1207 void (*d_release)(struct dentry * ) ;
1208 void (*d_prune)(struct dentry * ) ;
1209 void (*d_iput)(struct dentry * , struct inode * ) ;
1210 char *(*d_dname)(struct dentry * , char * , int ) ;
1211 struct vfsmount *(*d_automount)(struct path * ) ;
1212 int (*d_manage)(struct dentry * , bool ) ;
1213};
1214#line 402 "include/linux/dcache.h"
1215struct path {
1216 struct vfsmount *mnt ;
1217 struct dentry *dentry ;
1218};
1219#line 58 "include/linux/radix-tree.h"
1220struct radix_tree_node;
1221#line 58 "include/linux/radix-tree.h"
1222struct radix_tree_root {
1223 unsigned int height ;
1224 gfp_t gfp_mask ;
1225 struct radix_tree_node *rnode ;
1226};
1227#line 377
1228struct prio_tree_node;
1229#line 19 "include/linux/prio_tree.h"
1230struct prio_tree_node {
1231 struct prio_tree_node *left ;
1232 struct prio_tree_node *right ;
1233 struct prio_tree_node *parent ;
1234 unsigned long start ;
1235 unsigned long last ;
1236};
1237#line 27 "include/linux/prio_tree.h"
1238struct prio_tree_root {
1239 struct prio_tree_node *prio_tree_node ;
1240 unsigned short index_bits ;
1241 unsigned short raw ;
1242};
1243#line 111
1244enum pid_type {
1245 PIDTYPE_PID = 0,
1246 PIDTYPE_PGID = 1,
1247 PIDTYPE_SID = 2,
1248 PIDTYPE_MAX = 3
1249} ;
1250#line 118
1251struct pid_namespace;
1252#line 118 "include/linux/prio_tree.h"
1253struct upid {
1254 int nr ;
1255 struct pid_namespace *ns ;
1256 struct hlist_node pid_chain ;
1257};
1258#line 56 "include/linux/pid.h"
1259struct pid {
1260 atomic_t count ;
1261 unsigned int level ;
1262 struct hlist_head tasks[3U] ;
1263 struct rcu_head rcu ;
1264 struct upid numbers[1U] ;
1265};
1266#line 45 "include/linux/semaphore.h"
1267struct fiemap_extent {
1268 __u64 fe_logical ;
1269 __u64 fe_physical ;
1270 __u64 fe_length ;
1271 __u64 fe_reserved64[2U] ;
1272 __u32 fe_flags ;
1273 __u32 fe_reserved[3U] ;
1274};
1275#line 38 "include/linux/fiemap.h"
1276struct shrink_control {
1277 gfp_t gfp_mask ;
1278 unsigned long nr_to_scan ;
1279};
1280#line 14 "include/linux/shrinker.h"
1281struct shrinker {
1282 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1283 int seeks ;
1284 long batch ;
1285 struct list_head list ;
1286 atomic_long_t nr_in_batch ;
1287};
1288#line 43
1289enum migrate_mode {
1290 MIGRATE_ASYNC = 0,
1291 MIGRATE_SYNC_LIGHT = 1,
1292 MIGRATE_SYNC = 2
1293} ;
1294#line 49
1295struct export_operations;
1296#line 49
1297struct export_operations;
1298#line 51
1299struct iovec;
1300#line 51
1301struct iovec;
1302#line 52
1303struct kiocb;
1304#line 52
1305struct kiocb;
1306#line 53
1307struct pipe_inode_info;
1308#line 53
1309struct pipe_inode_info;
1310#line 54
1311struct poll_table_struct;
1312#line 54
1313struct poll_table_struct;
1314#line 55
1315struct kstatfs;
1316#line 55
1317struct kstatfs;
1318#line 435 "include/linux/fs.h"
1319struct iattr {
1320 unsigned int ia_valid ;
1321 umode_t ia_mode ;
1322 uid_t ia_uid ;
1323 gid_t ia_gid ;
1324 loff_t ia_size ;
1325 struct timespec ia_atime ;
1326 struct timespec ia_mtime ;
1327 struct timespec ia_ctime ;
1328 struct file *ia_file ;
1329};
1330#line 119 "include/linux/quota.h"
1331struct if_dqinfo {
1332 __u64 dqi_bgrace ;
1333 __u64 dqi_igrace ;
1334 __u32 dqi_flags ;
1335 __u32 dqi_valid ;
1336};
1337#line 176 "include/linux/percpu_counter.h"
1338struct fs_disk_quota {
1339 __s8 d_version ;
1340 __s8 d_flags ;
1341 __u16 d_fieldmask ;
1342 __u32 d_id ;
1343 __u64 d_blk_hardlimit ;
1344 __u64 d_blk_softlimit ;
1345 __u64 d_ino_hardlimit ;
1346 __u64 d_ino_softlimit ;
1347 __u64 d_bcount ;
1348 __u64 d_icount ;
1349 __s32 d_itimer ;
1350 __s32 d_btimer ;
1351 __u16 d_iwarns ;
1352 __u16 d_bwarns ;
1353 __s32 d_padding2 ;
1354 __u64 d_rtb_hardlimit ;
1355 __u64 d_rtb_softlimit ;
1356 __u64 d_rtbcount ;
1357 __s32 d_rtbtimer ;
1358 __u16 d_rtbwarns ;
1359 __s16 d_padding3 ;
1360 char d_padding4[8U] ;
1361};
1362#line 75 "include/linux/dqblk_xfs.h"
1363struct fs_qfilestat {
1364 __u64 qfs_ino ;
1365 __u64 qfs_nblks ;
1366 __u32 qfs_nextents ;
1367};
1368#line 150 "include/linux/dqblk_xfs.h"
1369typedef struct fs_qfilestat fs_qfilestat_t;
1370#line 151 "include/linux/dqblk_xfs.h"
1371struct fs_quota_stat {
1372 __s8 qs_version ;
1373 __u16 qs_flags ;
1374 __s8 qs_pad ;
1375 fs_qfilestat_t qs_uquota ;
1376 fs_qfilestat_t qs_gquota ;
1377 __u32 qs_incoredqs ;
1378 __s32 qs_btimelimit ;
1379 __s32 qs_itimelimit ;
1380 __s32 qs_rtbtimelimit ;
1381 __u16 qs_bwarnlimit ;
1382 __u16 qs_iwarnlimit ;
1383};
1384#line 165
1385struct dquot;
1386#line 165
1387struct dquot;
1388#line 185 "include/linux/quota.h"
1389typedef __kernel_uid32_t qid_t;
1390#line 186 "include/linux/quota.h"
1391typedef long long qsize_t;
1392#line 189 "include/linux/quota.h"
1393struct mem_dqblk {
1394 qsize_t dqb_bhardlimit ;
1395 qsize_t dqb_bsoftlimit ;
1396 qsize_t dqb_curspace ;
1397 qsize_t dqb_rsvspace ;
1398 qsize_t dqb_ihardlimit ;
1399 qsize_t dqb_isoftlimit ;
1400 qsize_t dqb_curinodes ;
1401 time_t dqb_btime ;
1402 time_t dqb_itime ;
1403};
1404#line 211
1405struct quota_format_type;
1406#line 211
1407struct quota_format_type;
1408#line 212 "include/linux/quota.h"
1409struct mem_dqinfo {
1410 struct quota_format_type *dqi_format ;
1411 int dqi_fmt_id ;
1412 struct list_head dqi_dirty_list ;
1413 unsigned long dqi_flags ;
1414 unsigned int dqi_bgrace ;
1415 unsigned int dqi_igrace ;
1416 qsize_t dqi_maxblimit ;
1417 qsize_t dqi_maxilimit ;
1418 void *dqi_priv ;
1419};
1420#line 275 "include/linux/quota.h"
1421struct dquot {
1422 struct hlist_node dq_hash ;
1423 struct list_head dq_inuse ;
1424 struct list_head dq_free ;
1425 struct list_head dq_dirty ;
1426 struct mutex dq_lock ;
1427 atomic_t dq_count ;
1428 wait_queue_head_t dq_wait_unused ;
1429 struct super_block *dq_sb ;
1430 unsigned int dq_id ;
1431 loff_t dq_off ;
1432 unsigned long dq_flags ;
1433 short dq_type ;
1434 struct mem_dqblk dq_dqb ;
1435};
1436#line 303 "include/linux/quota.h"
1437struct quota_format_ops {
1438 int (*check_quota_file)(struct super_block * , int ) ;
1439 int (*read_file_info)(struct super_block * , int ) ;
1440 int (*write_file_info)(struct super_block * , int ) ;
1441 int (*free_file_info)(struct super_block * , int ) ;
1442 int (*read_dqblk)(struct dquot * ) ;
1443 int (*commit_dqblk)(struct dquot * ) ;
1444 int (*release_dqblk)(struct dquot * ) ;
1445};
1446#line 314 "include/linux/quota.h"
1447struct dquot_operations {
1448 int (*write_dquot)(struct dquot * ) ;
1449 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1450 void (*destroy_dquot)(struct dquot * ) ;
1451 int (*acquire_dquot)(struct dquot * ) ;
1452 int (*release_dquot)(struct dquot * ) ;
1453 int (*mark_dirty)(struct dquot * ) ;
1454 int (*write_info)(struct super_block * , int ) ;
1455 qsize_t *(*get_reserved_space)(struct inode * ) ;
1456};
1457#line 328 "include/linux/quota.h"
1458struct quotactl_ops {
1459 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1460 int (*quota_on_meta)(struct super_block * , int , int ) ;
1461 int (*quota_off)(struct super_block * , int ) ;
1462 int (*quota_sync)(struct super_block * , int , int ) ;
1463 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1464 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1465 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1466 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1467 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1468 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1469};
1470#line 344 "include/linux/quota.h"
1471struct quota_format_type {
1472 int qf_fmt_id ;
1473 struct quota_format_ops const *qf_ops ;
1474 struct module *qf_owner ;
1475 struct quota_format_type *qf_next ;
1476};
1477#line 390 "include/linux/quota.h"
1478struct quota_info {
1479 unsigned int flags ;
1480 struct mutex dqio_mutex ;
1481 struct mutex dqonoff_mutex ;
1482 struct rw_semaphore dqptr_sem ;
1483 struct inode *files[2U] ;
1484 struct mem_dqinfo info[2U] ;
1485 struct quota_format_ops const *ops[2U] ;
1486};
1487#line 421
1488struct address_space;
1489#line 421
1490struct address_space;
1491#line 422
1492struct writeback_control;
1493#line 422
1494struct writeback_control;
1495#line 585 "include/linux/fs.h"
1496union __anonunion_arg_139 {
1497 char *buf ;
1498 void *data ;
1499};
1500#line 585 "include/linux/fs.h"
1501struct __anonstruct_read_descriptor_t_138 {
1502 size_t written ;
1503 size_t count ;
1504 union __anonunion_arg_139 arg ;
1505 int error ;
1506};
1507#line 585 "include/linux/fs.h"
1508typedef struct __anonstruct_read_descriptor_t_138 read_descriptor_t;
1509#line 588 "include/linux/fs.h"
1510struct address_space_operations {
1511 int (*writepage)(struct page * , struct writeback_control * ) ;
1512 int (*readpage)(struct file * , struct page * ) ;
1513 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1514 int (*set_page_dirty)(struct page * ) ;
1515 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1516 unsigned int ) ;
1517 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
1518 unsigned int , struct page ** , void ** ) ;
1519 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
1520 unsigned int , struct page * , void * ) ;
1521 sector_t (*bmap)(struct address_space * , sector_t ) ;
1522 void (*invalidatepage)(struct page * , unsigned long ) ;
1523 int (*releasepage)(struct page * , gfp_t ) ;
1524 void (*freepage)(struct page * ) ;
1525 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
1526 unsigned long ) ;
1527 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1528 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1529 int (*launder_page)(struct page * ) ;
1530 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1531 int (*error_remove_page)(struct address_space * , struct page * ) ;
1532};
1533#line 642
1534struct backing_dev_info;
1535#line 642
1536struct backing_dev_info;
1537#line 643 "include/linux/fs.h"
1538struct address_space {
1539 struct inode *host ;
1540 struct radix_tree_root page_tree ;
1541 spinlock_t tree_lock ;
1542 unsigned int i_mmap_writable ;
1543 struct prio_tree_root i_mmap ;
1544 struct list_head i_mmap_nonlinear ;
1545 struct mutex i_mmap_mutex ;
1546 unsigned long nrpages ;
1547 unsigned long writeback_index ;
1548 struct address_space_operations const *a_ops ;
1549 unsigned long flags ;
1550 struct backing_dev_info *backing_dev_info ;
1551 spinlock_t private_lock ;
1552 struct list_head private_list ;
1553 struct address_space *assoc_mapping ;
1554};
1555#line 664
1556struct request_queue;
1557#line 664
1558struct request_queue;
1559#line 665
1560struct hd_struct;
1561#line 665
1562struct gendisk;
1563#line 665 "include/linux/fs.h"
1564struct block_device {
1565 dev_t bd_dev ;
1566 int bd_openers ;
1567 struct inode *bd_inode ;
1568 struct super_block *bd_super ;
1569 struct mutex bd_mutex ;
1570 struct list_head bd_inodes ;
1571 void *bd_claiming ;
1572 void *bd_holder ;
1573 int bd_holders ;
1574 bool bd_write_holder ;
1575 struct list_head bd_holder_disks ;
1576 struct block_device *bd_contains ;
1577 unsigned int bd_block_size ;
1578 struct hd_struct *bd_part ;
1579 unsigned int bd_part_count ;
1580 int bd_invalidated ;
1581 struct gendisk *bd_disk ;
1582 struct request_queue *bd_queue ;
1583 struct list_head bd_list ;
1584 unsigned long bd_private ;
1585 int bd_fsfreeze_count ;
1586 struct mutex bd_fsfreeze_mutex ;
1587};
1588#line 737
1589struct posix_acl;
1590#line 737
1591struct posix_acl;
1592#line 738
1593struct inode_operations;
1594#line 738 "include/linux/fs.h"
1595union __anonunion_ldv_16579_140 {
1596 unsigned int const i_nlink ;
1597 unsigned int __i_nlink ;
1598};
1599#line 738 "include/linux/fs.h"
1600union __anonunion_ldv_16598_141 {
1601 struct list_head i_dentry ;
1602 struct rcu_head i_rcu ;
1603};
1604#line 738
1605struct file_operations;
1606#line 738
1607struct file_lock;
1608#line 738
1609struct cdev;
1610#line 738 "include/linux/fs.h"
1611union __anonunion_ldv_16616_142 {
1612 struct pipe_inode_info *i_pipe ;
1613 struct block_device *i_bdev ;
1614 struct cdev *i_cdev ;
1615};
1616#line 738 "include/linux/fs.h"
1617struct inode {
1618 umode_t i_mode ;
1619 unsigned short i_opflags ;
1620 uid_t i_uid ;
1621 gid_t i_gid ;
1622 unsigned int i_flags ;
1623 struct posix_acl *i_acl ;
1624 struct posix_acl *i_default_acl ;
1625 struct inode_operations const *i_op ;
1626 struct super_block *i_sb ;
1627 struct address_space *i_mapping ;
1628 void *i_security ;
1629 unsigned long i_ino ;
1630 union __anonunion_ldv_16579_140 ldv_16579 ;
1631 dev_t i_rdev ;
1632 struct timespec i_atime ;
1633 struct timespec i_mtime ;
1634 struct timespec i_ctime ;
1635 spinlock_t i_lock ;
1636 unsigned short i_bytes ;
1637 blkcnt_t i_blocks ;
1638 loff_t i_size ;
1639 unsigned long i_state ;
1640 struct mutex i_mutex ;
1641 unsigned long dirtied_when ;
1642 struct hlist_node i_hash ;
1643 struct list_head i_wb_list ;
1644 struct list_head i_lru ;
1645 struct list_head i_sb_list ;
1646 union __anonunion_ldv_16598_141 ldv_16598 ;
1647 atomic_t i_count ;
1648 unsigned int i_blkbits ;
1649 u64 i_version ;
1650 atomic_t i_dio_count ;
1651 atomic_t i_writecount ;
1652 struct file_operations const *i_fop ;
1653 struct file_lock *i_flock ;
1654 struct address_space i_data ;
1655 struct dquot *i_dquot[2U] ;
1656 struct list_head i_devices ;
1657 union __anonunion_ldv_16616_142 ldv_16616 ;
1658 __u32 i_generation ;
1659 __u32 i_fsnotify_mask ;
1660 struct hlist_head i_fsnotify_marks ;
1661 atomic_t i_readcount ;
1662 void *i_private ;
1663};
1664#line 941 "include/linux/fs.h"
1665struct fown_struct {
1666 rwlock_t lock ;
1667 struct pid *pid ;
1668 enum pid_type pid_type ;
1669 uid_t uid ;
1670 uid_t euid ;
1671 int signum ;
1672};
1673#line 949 "include/linux/fs.h"
1674struct file_ra_state {
1675 unsigned long start ;
1676 unsigned int size ;
1677 unsigned int async_size ;
1678 unsigned int ra_pages ;
1679 unsigned int mmap_miss ;
1680 loff_t prev_pos ;
1681};
1682#line 972 "include/linux/fs.h"
1683union __anonunion_f_u_143 {
1684 struct list_head fu_list ;
1685 struct rcu_head fu_rcuhead ;
1686};
1687#line 972 "include/linux/fs.h"
1688struct file {
1689 union __anonunion_f_u_143 f_u ;
1690 struct path f_path ;
1691 struct file_operations const *f_op ;
1692 spinlock_t f_lock ;
1693 int f_sb_list_cpu ;
1694 atomic_long_t f_count ;
1695 unsigned int f_flags ;
1696 fmode_t f_mode ;
1697 loff_t f_pos ;
1698 struct fown_struct f_owner ;
1699 struct cred const *f_cred ;
1700 struct file_ra_state f_ra ;
1701 u64 f_version ;
1702 void *f_security ;
1703 void *private_data ;
1704 struct list_head f_ep_links ;
1705 struct list_head f_tfile_llink ;
1706 struct address_space *f_mapping ;
1707 unsigned long f_mnt_write_state ;
1708};
1709#line 1111
1710struct files_struct;
1711#line 1111 "include/linux/fs.h"
1712typedef struct files_struct *fl_owner_t;
1713#line 1112 "include/linux/fs.h"
1714struct file_lock_operations {
1715 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1716 void (*fl_release_private)(struct file_lock * ) ;
1717};
1718#line 1117 "include/linux/fs.h"
1719struct lock_manager_operations {
1720 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1721 void (*lm_notify)(struct file_lock * ) ;
1722 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1723 void (*lm_release_private)(struct file_lock * ) ;
1724 void (*lm_break)(struct file_lock * ) ;
1725 int (*lm_change)(struct file_lock ** , int ) ;
1726};
1727#line 1134
1728struct nlm_lockowner;
1729#line 1134
1730struct nlm_lockowner;
1731#line 1135 "include/linux/fs.h"
1732struct nfs_lock_info {
1733 u32 state ;
1734 struct nlm_lockowner *owner ;
1735 struct list_head list ;
1736};
1737#line 14 "include/linux/nfs_fs_i.h"
1738struct nfs4_lock_state;
1739#line 14
1740struct nfs4_lock_state;
1741#line 15 "include/linux/nfs_fs_i.h"
1742struct nfs4_lock_info {
1743 struct nfs4_lock_state *owner ;
1744};
1745#line 19
1746struct fasync_struct;
1747#line 19 "include/linux/nfs_fs_i.h"
1748struct __anonstruct_afs_145 {
1749 struct list_head link ;
1750 int state ;
1751};
1752#line 19 "include/linux/nfs_fs_i.h"
1753union __anonunion_fl_u_144 {
1754 struct nfs_lock_info nfs_fl ;
1755 struct nfs4_lock_info nfs4_fl ;
1756 struct __anonstruct_afs_145 afs ;
1757};
1758#line 19 "include/linux/nfs_fs_i.h"
1759struct file_lock {
1760 struct file_lock *fl_next ;
1761 struct list_head fl_link ;
1762 struct list_head fl_block ;
1763 fl_owner_t fl_owner ;
1764 unsigned int fl_flags ;
1765 unsigned char fl_type ;
1766 unsigned int fl_pid ;
1767 struct pid *fl_nspid ;
1768 wait_queue_head_t fl_wait ;
1769 struct file *fl_file ;
1770 loff_t fl_start ;
1771 loff_t fl_end ;
1772 struct fasync_struct *fl_fasync ;
1773 unsigned long fl_break_time ;
1774 unsigned long fl_downgrade_time ;
1775 struct file_lock_operations const *fl_ops ;
1776 struct lock_manager_operations const *fl_lmops ;
1777 union __anonunion_fl_u_144 fl_u ;
1778};
1779#line 1221 "include/linux/fs.h"
1780struct fasync_struct {
1781 spinlock_t fa_lock ;
1782 int magic ;
1783 int fa_fd ;
1784 struct fasync_struct *fa_next ;
1785 struct file *fa_file ;
1786 struct rcu_head fa_rcu ;
1787};
1788#line 1417
1789struct file_system_type;
1790#line 1417
1791struct super_operations;
1792#line 1417
1793struct xattr_handler;
1794#line 1417
1795struct mtd_info;
1796#line 1417 "include/linux/fs.h"
1797struct super_block {
1798 struct list_head s_list ;
1799 dev_t s_dev ;
1800 unsigned char s_dirt ;
1801 unsigned char s_blocksize_bits ;
1802 unsigned long s_blocksize ;
1803 loff_t s_maxbytes ;
1804 struct file_system_type *s_type ;
1805 struct super_operations const *s_op ;
1806 struct dquot_operations const *dq_op ;
1807 struct quotactl_ops const *s_qcop ;
1808 struct export_operations const *s_export_op ;
1809 unsigned long s_flags ;
1810 unsigned long s_magic ;
1811 struct dentry *s_root ;
1812 struct rw_semaphore s_umount ;
1813 struct mutex s_lock ;
1814 int s_count ;
1815 atomic_t s_active ;
1816 void *s_security ;
1817 struct xattr_handler const **s_xattr ;
1818 struct list_head s_inodes ;
1819 struct hlist_bl_head s_anon ;
1820 struct list_head *s_files ;
1821 struct list_head s_mounts ;
1822 struct list_head s_dentry_lru ;
1823 int s_nr_dentry_unused ;
1824 spinlock_t s_inode_lru_lock ;
1825 struct list_head s_inode_lru ;
1826 int s_nr_inodes_unused ;
1827 struct block_device *s_bdev ;
1828 struct backing_dev_info *s_bdi ;
1829 struct mtd_info *s_mtd ;
1830 struct hlist_node s_instances ;
1831 struct quota_info s_dquot ;
1832 int s_frozen ;
1833 wait_queue_head_t s_wait_unfrozen ;
1834 char s_id[32U] ;
1835 u8 s_uuid[16U] ;
1836 void *s_fs_info ;
1837 unsigned int s_max_links ;
1838 fmode_t s_mode ;
1839 u32 s_time_gran ;
1840 struct mutex s_vfs_rename_mutex ;
1841 char *s_subtype ;
1842 char *s_options ;
1843 struct dentry_operations const *s_d_op ;
1844 int cleancache_poolid ;
1845 struct shrinker s_shrink ;
1846 atomic_long_t s_remove_count ;
1847 int s_readonly_remount ;
1848};
1849#line 1563 "include/linux/fs.h"
1850struct fiemap_extent_info {
1851 unsigned int fi_flags ;
1852 unsigned int fi_extents_mapped ;
1853 unsigned int fi_extents_max ;
1854 struct fiemap_extent *fi_extents_start ;
1855};
1856#line 1602 "include/linux/fs.h"
1857struct file_operations {
1858 struct module *owner ;
1859 loff_t (*llseek)(struct file * , loff_t , int ) ;
1860 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1861 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1862 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1863 loff_t ) ;
1864 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1865 loff_t ) ;
1866 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1867 loff_t , u64 , unsigned int ) ) ;
1868 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1869 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1870 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1871 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1872 int (*open)(struct inode * , struct file * ) ;
1873 int (*flush)(struct file * , fl_owner_t ) ;
1874 int (*release)(struct inode * , struct file * ) ;
1875 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
1876 int (*aio_fsync)(struct kiocb * , int ) ;
1877 int (*fasync)(int , struct file * , int ) ;
1878 int (*lock)(struct file * , int , struct file_lock * ) ;
1879 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1880 int ) ;
1881 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1882 unsigned long , unsigned long ) ;
1883 int (*check_flags)(int ) ;
1884 int (*flock)(struct file * , int , struct file_lock * ) ;
1885 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1886 unsigned int ) ;
1887 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1888 unsigned int ) ;
1889 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1890 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
1891};
1892#line 1637 "include/linux/fs.h"
1893struct inode_operations {
1894 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1895 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1896 int (*permission)(struct inode * , int ) ;
1897 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1898 int (*readlink)(struct dentry * , char * , int ) ;
1899 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1900 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
1901 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1902 int (*unlink)(struct inode * , struct dentry * ) ;
1903 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
1904 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
1905 int (*rmdir)(struct inode * , struct dentry * ) ;
1906 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
1907 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1908 void (*truncate)(struct inode * ) ;
1909 int (*setattr)(struct dentry * , struct iattr * ) ;
1910 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
1911 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
1912 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
1913 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
1914 int (*removexattr)(struct dentry * , char const * ) ;
1915 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
1916 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
1917};
1918#line 1682 "include/linux/fs.h"
1919struct super_operations {
1920 struct inode *(*alloc_inode)(struct super_block * ) ;
1921 void (*destroy_inode)(struct inode * ) ;
1922 void (*dirty_inode)(struct inode * , int ) ;
1923 int (*write_inode)(struct inode * , struct writeback_control * ) ;
1924 int (*drop_inode)(struct inode * ) ;
1925 void (*evict_inode)(struct inode * ) ;
1926 void (*put_super)(struct super_block * ) ;
1927 void (*write_super)(struct super_block * ) ;
1928 int (*sync_fs)(struct super_block * , int ) ;
1929 int (*freeze_fs)(struct super_block * ) ;
1930 int (*unfreeze_fs)(struct super_block * ) ;
1931 int (*statfs)(struct dentry * , struct kstatfs * ) ;
1932 int (*remount_fs)(struct super_block * , int * , char * ) ;
1933 void (*umount_begin)(struct super_block * ) ;
1934 int (*show_options)(struct seq_file * , struct dentry * ) ;
1935 int (*show_devname)(struct seq_file * , struct dentry * ) ;
1936 int (*show_path)(struct seq_file * , struct dentry * ) ;
1937 int (*show_stats)(struct seq_file * , struct dentry * ) ;
1938 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
1939 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
1940 loff_t ) ;
1941 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
1942 int (*nr_cached_objects)(struct super_block * ) ;
1943 void (*free_cached_objects)(struct super_block * , int ) ;
1944};
1945#line 1834 "include/linux/fs.h"
1946struct file_system_type {
1947 char const *name ;
1948 int fs_flags ;
1949 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
1950 void (*kill_sb)(struct super_block * ) ;
1951 struct module *owner ;
1952 struct file_system_type *next ;
1953 struct hlist_head fs_supers ;
1954 struct lock_class_key s_lock_key ;
1955 struct lock_class_key s_umount_key ;
1956 struct lock_class_key s_vfs_rename_key ;
1957 struct lock_class_key i_lock_key ;
1958 struct lock_class_key i_mutex_key ;
1959 struct lock_class_key i_mutex_dir_key ;
1960};
1961#line 12 "include/linux/mod_devicetable.h"
1962typedef unsigned long kernel_ulong_t;
1963#line 205 "include/linux/mod_devicetable.h"
1964struct serio_device_id {
1965 __u8 type ;
1966 __u8 extra ;
1967 __u8 id ;
1968 __u8 proto ;
1969};
1970#line 215 "include/linux/mod_devicetable.h"
1971struct of_device_id {
1972 char name[32U] ;
1973 char type[32U] ;
1974 char compatible[128U] ;
1975 void *data ;
1976};
1977#line 269 "include/linux/mod_devicetable.h"
1978struct input_device_id {
1979 kernel_ulong_t flags ;
1980 __u16 bustype ;
1981 __u16 vendor ;
1982 __u16 product ;
1983 __u16 version ;
1984 kernel_ulong_t evbit[1U] ;
1985 kernel_ulong_t keybit[12U] ;
1986 kernel_ulong_t relbit[1U] ;
1987 kernel_ulong_t absbit[1U] ;
1988 kernel_ulong_t mscbit[1U] ;
1989 kernel_ulong_t ledbit[1U] ;
1990 kernel_ulong_t sndbit[1U] ;
1991 kernel_ulong_t ffbit[2U] ;
1992 kernel_ulong_t swbit[1U] ;
1993 kernel_ulong_t driver_info ;
1994};
1995#line 584
1996struct ff_device;
1997#line 584
1998struct input_mt_slot;
1999#line 584
2000struct input_handle;
2001#line 584 "include/linux/mod_devicetable.h"
2002struct input_dev {
2003 char const *name ;
2004 char const *phys ;
2005 char const *uniq ;
2006 struct input_id id ;
2007 unsigned long propbit[1U] ;
2008 unsigned long evbit[1U] ;
2009 unsigned long keybit[12U] ;
2010 unsigned long relbit[1U] ;
2011 unsigned long absbit[1U] ;
2012 unsigned long mscbit[1U] ;
2013 unsigned long ledbit[1U] ;
2014 unsigned long sndbit[1U] ;
2015 unsigned long ffbit[2U] ;
2016 unsigned long swbit[1U] ;
2017 unsigned int hint_events_per_packet ;
2018 unsigned int keycodemax ;
2019 unsigned int keycodesize ;
2020 void *keycode ;
2021 int (*setkeycode)(struct input_dev * , struct input_keymap_entry const * , unsigned int * ) ;
2022 int (*getkeycode)(struct input_dev * , struct input_keymap_entry * ) ;
2023 struct ff_device *ff ;
2024 unsigned int repeat_key ;
2025 struct timer_list timer ;
2026 int rep[2U] ;
2027 struct input_mt_slot *mt ;
2028 int mtsize ;
2029 int slot ;
2030 int trkid ;
2031 struct input_absinfo *absinfo ;
2032 unsigned long key[12U] ;
2033 unsigned long led[1U] ;
2034 unsigned long snd[1U] ;
2035 unsigned long sw[1U] ;
2036 int (*open)(struct input_dev * ) ;
2037 void (*close)(struct input_dev * ) ;
2038 int (*flush)(struct input_dev * , struct file * ) ;
2039 int (*event)(struct input_dev * , unsigned int , unsigned int , int ) ;
2040 struct input_handle *grab ;
2041 spinlock_t event_lock ;
2042 struct mutex mutex ;
2043 unsigned int users ;
2044 bool going_away ;
2045 bool sync ;
2046 struct device dev ;
2047 struct list_head h_list ;
2048 struct list_head node ;
2049};
2050#line 1319 "include/linux/input.h"
2051struct input_handler {
2052 void *private ;
2053 void (*event)(struct input_handle * , unsigned int , unsigned int , int ) ;
2054 bool (*filter)(struct input_handle * , unsigned int , unsigned int , int ) ;
2055 bool (*match)(struct input_handler * , struct input_dev * ) ;
2056 int (*connect)(struct input_handler * , struct input_dev * , struct input_device_id const * ) ;
2057 void (*disconnect)(struct input_handle * ) ;
2058 void (*start)(struct input_handle * ) ;
2059 struct file_operations const *fops ;
2060 int minor ;
2061 char const *name ;
2062 struct input_device_id const *id_table ;
2063 struct list_head h_list ;
2064 struct list_head node ;
2065};
2066#line 1429 "include/linux/input.h"
2067struct input_handle {
2068 void *private ;
2069 int open ;
2070 char const *name ;
2071 struct input_dev *dev ;
2072 struct input_handler *handler ;
2073 struct list_head d_node ;
2074 struct list_head h_node ;
2075};
2076#line 1591 "include/linux/input.h"
2077struct ff_device {
2078 int (*upload)(struct input_dev * , struct ff_effect * , struct ff_effect * ) ;
2079 int (*erase)(struct input_dev * , int ) ;
2080 int (*playback)(struct input_dev * , int , int ) ;
2081 void (*set_gain)(struct input_dev * , u16 ) ;
2082 void (*set_autocenter)(struct input_dev * , u16 ) ;
2083 void (*destroy)(struct ff_device * ) ;
2084 void *private ;
2085 unsigned long ffbit[2U] ;
2086 struct mutex mutex ;
2087 int max_effects ;
2088 struct ff_effect *effects ;
2089 struct file *effect_owners[0U] ;
2090};
2091#line 1650
2092enum irqreturn {
2093 IRQ_NONE = 0,
2094 IRQ_HANDLED = 1,
2095 IRQ_WAKE_THREAD = 2
2096} ;
2097#line 16 "include/linux/irqreturn.h"
2098typedef enum irqreturn irqreturn_t;
2099#line 41 "include/asm-generic/sections.h"
2100struct exception_table_entry {
2101 unsigned long insn ;
2102 unsigned long fixup ;
2103};
2104#line 702 "include/linux/interrupt.h"
2105struct serio_driver;
2106#line 702 "include/linux/interrupt.h"
2107struct serio {
2108 void *port_data ;
2109 char name[32U] ;
2110 char phys[32U] ;
2111 bool manual_bind ;
2112 struct serio_device_id id ;
2113 spinlock_t lock ;
2114 int (*write)(struct serio * , unsigned char ) ;
2115 int (*open)(struct serio * ) ;
2116 void (*close)(struct serio * ) ;
2117 int (*start)(struct serio * ) ;
2118 void (*stop)(struct serio * ) ;
2119 struct serio *parent ;
2120 struct list_head child_node ;
2121 struct list_head children ;
2122 unsigned int depth ;
2123 struct serio_driver *drv ;
2124 struct mutex drv_mutex ;
2125 struct device dev ;
2126 struct list_head node ;
2127};
2128#line 56 "include/linux/serio.h"
2129struct serio_driver {
2130 char const *description ;
2131 struct serio_device_id const *id_table ;
2132 bool manual_bind ;
2133 void (*write_wakeup)(struct serio * ) ;
2134 irqreturn_t (*interrupt)(struct serio * , unsigned char , unsigned int ) ;
2135 int (*connect)(struct serio * , struct serio_driver * ) ;
2136 int (*reconnect)(struct serio * ) ;
2137 void (*disconnect)(struct serio * ) ;
2138 void (*cleanup)(struct serio * ) ;
2139 struct device_driver driver ;
2140};
2141#line 68 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
2142struct spaceorb {
2143 struct input_dev *dev ;
2144 int idx ;
2145 unsigned char data[64U] ;
2146 char phys[32U] ;
2147};
2148#line 2
2149void ldv_spin_lock(void) ;
2150#line 3
2151void ldv_spin_unlock(void) ;
2152#line 4
2153int ldv_spin_trylock(void) ;
2154#line 60 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
2155__inline static void set_bit(unsigned int nr , unsigned long volatile *addr )
2156{ long volatile *__cil_tmp3 ;
2157
2158 {
2159#line 68
2160 __cil_tmp3 = (long volatile *)addr;
2161#line 68
2162 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
2163#line 70
2164 return;
2165}
2166}
2167#line 101 "include/linux/printk.h"
2168extern int printk(char const * , ...) ;
2169#line 323 "include/linux/kernel.h"
2170extern int snprintf(char * , size_t , char const * , ...) ;
2171#line 26 "include/linux/export.h"
2172extern struct module __this_module ;
2173#line 161 "include/linux/slab.h"
2174extern void kfree(void const * ) ;
2175#line 220 "include/linux/slub_def.h"
2176extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
2177#line 223
2178void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
2179#line 353 "include/linux/slab.h"
2180__inline static void *kzalloc(size_t size , gfp_t flags ) ;
2181#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
2182extern void *__VERIFIER_nondet_pointer(void) ;
2183#line 11
2184void ldv_check_alloc_flags(gfp_t flags ) ;
2185#line 12
2186void ldv_check_alloc_nonatomic(void) ;
2187#line 14
2188struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2189#line 792 "include/linux/device.h"
2190extern void *dev_get_drvdata(struct device const * ) ;
2191#line 793
2192extern int dev_set_drvdata(struct device * , void * ) ;
2193#line 1456 "include/linux/input.h"
2194extern struct input_dev *input_allocate_device(void) ;
2195#line 1457
2196extern void input_free_device(struct input_dev * ) ;
2197#line 1480
2198extern int input_register_device(struct input_dev * ) ;
2199#line 1481
2200extern void input_unregister_device(struct input_dev * ) ;
2201#line 1502
2202extern void input_event(struct input_dev * , unsigned int , unsigned int , int ) ;
2203#line 1505 "include/linux/input.h"
2204__inline static void input_report_key(struct input_dev *dev , unsigned int code ,
2205 int value )
2206{ int __cil_tmp4 ;
2207
2208 {
2209 {
2210#line 1507
2211 __cil_tmp4 = value != 0;
2212#line 1507
2213 input_event(dev, 1U, code, __cil_tmp4);
2214 }
2215#line 1508
2216 return;
2217}
2218}
2219#line 1515 "include/linux/input.h"
2220__inline static void input_report_abs(struct input_dev *dev , unsigned int code ,
2221 int value )
2222{
2223
2224 {
2225 {
2226#line 1517
2227 input_event(dev, 3U, code, value);
2228 }
2229#line 1518
2230 return;
2231}
2232}
2233#line 1530 "include/linux/input.h"
2234__inline static void input_sync(struct input_dev *dev )
2235{
2236
2237 {
2238 {
2239#line 1532
2240 input_event(dev, 0U, 0U, 0);
2241 }
2242#line 1533
2243 return;
2244}
2245}
2246#line 1558
2247extern void input_set_abs_params(struct input_dev * , unsigned int , int , int ,
2248 int , int ) ;
2249#line 75 "include/linux/serio.h"
2250extern int serio_open(struct serio * , struct serio_driver * ) ;
2251#line 76
2252extern void serio_close(struct serio * ) ;
2253#line 90
2254extern int __serio_register_driver(struct serio_driver * , struct module * , char const * ) ;
2255#line 97
2256extern void serio_unregister_driver(struct serio_driver * ) ;
2257#line 117 "include/linux/serio.h"
2258__inline static void *serio_get_drvdata(struct serio *serio )
2259{ void *tmp ;
2260 unsigned long __cil_tmp3 ;
2261 unsigned long __cil_tmp4 ;
2262 struct device *__cil_tmp5 ;
2263 struct device const *__cil_tmp6 ;
2264
2265 {
2266 {
2267#line 119
2268 __cil_tmp3 = (unsigned long )serio;
2269#line 119
2270 __cil_tmp4 = __cil_tmp3 + 416;
2271#line 119
2272 __cil_tmp5 = (struct device *)__cil_tmp4;
2273#line 119
2274 __cil_tmp6 = (struct device const *)__cil_tmp5;
2275#line 119
2276 tmp = dev_get_drvdata(__cil_tmp6);
2277 }
2278#line 119
2279 return (tmp);
2280}
2281}
2282#line 122 "include/linux/serio.h"
2283__inline static void serio_set_drvdata(struct serio *serio , void *data )
2284{ unsigned long __cil_tmp3 ;
2285 unsigned long __cil_tmp4 ;
2286 struct device *__cil_tmp5 ;
2287
2288 {
2289 {
2290#line 124
2291 __cil_tmp3 = (unsigned long )serio;
2292#line 124
2293 __cil_tmp4 = __cil_tmp3 + 416;
2294#line 124
2295 __cil_tmp5 = (struct device *)__cil_tmp4;
2296#line 124
2297 dev_set_drvdata(__cil_tmp5, data);
2298 }
2299#line 125
2300 return;
2301}
2302}
2303#line 66 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
2304static int spaceorb_buttons[6U] = { 310, 311, 308, 307,
2305 305, 304};
2306#line 67 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
2307static int spaceorb_axes[6U] = { 0, 1, 2, 3,
2308 4, 5};
2309#line 80 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
2310static unsigned char spaceorb_xor[10U] =
2311#line 80
2312 { (unsigned char )'S', (unsigned char )'p', (unsigned char )'a', (unsigned char )'c',
2313 (unsigned char )'e', (unsigned char )'W', (unsigned char )'a', (unsigned char )'r',
2314 (unsigned char )'e', (unsigned char )'\000'};
2315#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
2316static unsigned char *spaceorb_errors[7U] = { (unsigned char *)"EEPROM storing 0 failed", (unsigned char *)"Receive queue overflow", (unsigned char *)"Transmit queue timeout", (unsigned char *)"Bad packet",
2317 (unsigned char *)"Power brown-out", (unsigned char *)"EEPROM checksum error", (unsigned char *)"Hardware fault"};
2318#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
2319static void spaceorb_process_packet(struct spaceorb *spaceorb )
2320{ struct input_dev *dev ;
2321 unsigned char *data ;
2322 unsigned char c ;
2323 int axes[6U] ;
2324 int i ;
2325 int tmp ;
2326 unsigned long __cil_tmp8 ;
2327 unsigned long __cil_tmp9 ;
2328 unsigned char (*__cil_tmp10)[64U] ;
2329 unsigned long __cil_tmp11 ;
2330 unsigned long __cil_tmp12 ;
2331 int __cil_tmp13 ;
2332 int __cil_tmp14 ;
2333 unsigned long __cil_tmp15 ;
2334 unsigned char *__cil_tmp16 ;
2335 unsigned char __cil_tmp17 ;
2336 int __cil_tmp18 ;
2337 int __cil_tmp19 ;
2338 unsigned long __cil_tmp20 ;
2339 unsigned long __cil_tmp21 ;
2340 int __cil_tmp22 ;
2341 unsigned int __cil_tmp23 ;
2342 unsigned char __cil_tmp24 ;
2343 unsigned long __cil_tmp25 ;
2344 unsigned long __cil_tmp26 ;
2345 int __cil_tmp27 ;
2346 int __cil_tmp28 ;
2347 unsigned long __cil_tmp29 ;
2348 unsigned long __cil_tmp30 ;
2349 unsigned long __cil_tmp31 ;
2350 unsigned long __cil_tmp32 ;
2351 unsigned long __cil_tmp33 ;
2352 unsigned long __cil_tmp34 ;
2353 int __cil_tmp35 ;
2354 unsigned long __cil_tmp36 ;
2355 unsigned long __cil_tmp37 ;
2356 unsigned long __cil_tmp38 ;
2357 unsigned long __cil_tmp39 ;
2358 unsigned char __cil_tmp40 ;
2359 unsigned int __cil_tmp41 ;
2360 char const *__cil_tmp42 ;
2361 unsigned long __cil_tmp43 ;
2362 unsigned long __cil_tmp44 ;
2363 unsigned long __cil_tmp45 ;
2364 unsigned char (*__cil_tmp46)[64U] ;
2365 unsigned char *__cil_tmp47 ;
2366 unsigned char *__cil_tmp48 ;
2367 unsigned long __cil_tmp49 ;
2368 unsigned long __cil_tmp50 ;
2369 char (*__cil_tmp51)[32U] ;
2370 char *__cil_tmp52 ;
2371 unsigned long __cil_tmp53 ;
2372 unsigned long __cil_tmp54 ;
2373 int __cil_tmp55 ;
2374 int __cil_tmp56 ;
2375 unsigned long __cil_tmp57 ;
2376 unsigned long __cil_tmp58 ;
2377 unsigned long __cil_tmp59 ;
2378 unsigned long __cil_tmp60 ;
2379 unsigned long __cil_tmp61 ;
2380 unsigned long __cil_tmp62 ;
2381 unsigned char __cil_tmp63 ;
2382 int __cil_tmp64 ;
2383 int __cil_tmp65 ;
2384 unsigned long __cil_tmp66 ;
2385 unsigned long __cil_tmp67 ;
2386 unsigned long __cil_tmp68 ;
2387 unsigned long __cil_tmp69 ;
2388 unsigned char __cil_tmp70 ;
2389 int __cil_tmp71 ;
2390 int __cil_tmp72 ;
2391 unsigned long __cil_tmp73 ;
2392 unsigned long __cil_tmp74 ;
2393 unsigned char *__cil_tmp75 ;
2394 unsigned char __cil_tmp76 ;
2395 int __cil_tmp77 ;
2396 int __cil_tmp78 ;
2397 unsigned char *__cil_tmp79 ;
2398 unsigned char __cil_tmp80 ;
2399 int __cil_tmp81 ;
2400 int __cil_tmp82 ;
2401 unsigned long __cil_tmp83 ;
2402 unsigned long __cil_tmp84 ;
2403 unsigned char *__cil_tmp85 ;
2404 unsigned char __cil_tmp86 ;
2405 int __cil_tmp87 ;
2406 int __cil_tmp88 ;
2407 unsigned char *__cil_tmp89 ;
2408 unsigned char __cil_tmp90 ;
2409 int __cil_tmp91 ;
2410 int __cil_tmp92 ;
2411 int __cil_tmp93 ;
2412 unsigned long __cil_tmp94 ;
2413 unsigned long __cil_tmp95 ;
2414 unsigned char *__cil_tmp96 ;
2415 unsigned char __cil_tmp97 ;
2416 int __cil_tmp98 ;
2417 int __cil_tmp99 ;
2418 unsigned char *__cil_tmp100 ;
2419 unsigned char __cil_tmp101 ;
2420 int __cil_tmp102 ;
2421 int __cil_tmp103 ;
2422 unsigned char *__cil_tmp104 ;
2423 unsigned char __cil_tmp105 ;
2424 int __cil_tmp106 ;
2425 int __cil_tmp107 ;
2426 int __cil_tmp108 ;
2427 int __cil_tmp109 ;
2428 unsigned long __cil_tmp110 ;
2429 unsigned long __cil_tmp111 ;
2430 unsigned char *__cil_tmp112 ;
2431 unsigned char __cil_tmp113 ;
2432 int __cil_tmp114 ;
2433 int __cil_tmp115 ;
2434 unsigned char *__cil_tmp116 ;
2435 unsigned char __cil_tmp117 ;
2436 int __cil_tmp118 ;
2437 int __cil_tmp119 ;
2438 int __cil_tmp120 ;
2439 unsigned long __cil_tmp121 ;
2440 unsigned long __cil_tmp122 ;
2441 unsigned char *__cil_tmp123 ;
2442 unsigned char __cil_tmp124 ;
2443 int __cil_tmp125 ;
2444 int __cil_tmp126 ;
2445 unsigned char *__cil_tmp127 ;
2446 unsigned char __cil_tmp128 ;
2447 int __cil_tmp129 ;
2448 int __cil_tmp130 ;
2449 unsigned char *__cil_tmp131 ;
2450 unsigned char __cil_tmp132 ;
2451 int __cil_tmp133 ;
2452 int __cil_tmp134 ;
2453 int __cil_tmp135 ;
2454 int __cil_tmp136 ;
2455 unsigned long __cil_tmp137 ;
2456 unsigned long __cil_tmp138 ;
2457 unsigned char *__cil_tmp139 ;
2458 unsigned char __cil_tmp140 ;
2459 int __cil_tmp141 ;
2460 int __cil_tmp142 ;
2461 unsigned char *__cil_tmp143 ;
2462 unsigned char __cil_tmp144 ;
2463 int __cil_tmp145 ;
2464 int __cil_tmp146 ;
2465 int __cil_tmp147 ;
2466 unsigned long __cil_tmp148 ;
2467 unsigned long __cil_tmp149 ;
2468 int __cil_tmp150 ;
2469 int __cil_tmp151 ;
2470 unsigned long __cil_tmp152 ;
2471 unsigned long __cil_tmp153 ;
2472 int __cil_tmp154 ;
2473 unsigned int __cil_tmp155 ;
2474 unsigned long __cil_tmp156 ;
2475 unsigned long __cil_tmp157 ;
2476 int __cil_tmp158 ;
2477 int __cil_tmp159 ;
2478 unsigned long __cil_tmp160 ;
2479 unsigned long __cil_tmp161 ;
2480 int __cil_tmp162 ;
2481 unsigned int __cil_tmp163 ;
2482 unsigned char *__cil_tmp164 ;
2483 unsigned char __cil_tmp165 ;
2484 int __cil_tmp166 ;
2485 int __cil_tmp167 ;
2486 int __cil_tmp168 ;
2487 unsigned long __cil_tmp169 ;
2488 unsigned long __cil_tmp170 ;
2489 int __cil_tmp171 ;
2490 unsigned long __cil_tmp172 ;
2491 unsigned long __cil_tmp173 ;
2492 int __cil_tmp174 ;
2493 unsigned int __cil_tmp175 ;
2494 unsigned char *__cil_tmp176 ;
2495 unsigned char __cil_tmp177 ;
2496 int __cil_tmp178 ;
2497 int __cil_tmp179 ;
2498 int __cil_tmp180 ;
2499 unsigned long __cil_tmp181 ;
2500 unsigned long __cil_tmp182 ;
2501 int __cil_tmp183 ;
2502 unsigned char *__cil_tmp184 ;
2503 unsigned char __cil_tmp185 ;
2504 int __cil_tmp186 ;
2505 int __cil_tmp187 ;
2506 unsigned long __cil_tmp188 ;
2507 unsigned long __cil_tmp189 ;
2508 unsigned char *__cil_tmp190 ;
2509
2510 {
2511#line 92
2512 dev = *((struct input_dev **)spaceorb);
2513#line 93
2514 __cil_tmp8 = (unsigned long )spaceorb;
2515#line 93
2516 __cil_tmp9 = __cil_tmp8 + 12;
2517#line 93
2518 __cil_tmp10 = (unsigned char (*)[64U])__cil_tmp9;
2519#line 93
2520 data = (unsigned char *)__cil_tmp10;
2521#line 94
2522 c = (unsigned char)0;
2523 {
2524#line 98
2525 __cil_tmp11 = (unsigned long )spaceorb;
2526#line 98
2527 __cil_tmp12 = __cil_tmp11 + 8;
2528#line 98
2529 __cil_tmp13 = *((int *)__cil_tmp12);
2530#line 98
2531 if (__cil_tmp13 <= 1) {
2532#line 98
2533 return;
2534 } else {
2535
2536 }
2537 }
2538#line 99
2539 i = 0;
2540#line 99
2541 goto ldv_20734;
2542 ldv_20733:
2543#line 99
2544 __cil_tmp14 = (int )c;
2545#line 99
2546 __cil_tmp15 = (unsigned long )i;
2547#line 99
2548 __cil_tmp16 = data + __cil_tmp15;
2549#line 99
2550 __cil_tmp17 = *__cil_tmp16;
2551#line 99
2552 __cil_tmp18 = (int )__cil_tmp17;
2553#line 99
2554 __cil_tmp19 = __cil_tmp18 ^ __cil_tmp14;
2555#line 99
2556 c = (unsigned char )__cil_tmp19;
2557#line 99
2558 i = i + 1;
2559 ldv_20734: ;
2560 {
2561#line 99
2562 __cil_tmp20 = (unsigned long )spaceorb;
2563#line 99
2564 __cil_tmp21 = __cil_tmp20 + 8;
2565#line 99
2566 __cil_tmp22 = *((int *)__cil_tmp21);
2567#line 99
2568 if (__cil_tmp22 > i) {
2569#line 100
2570 goto ldv_20733;
2571 } else {
2572#line 102
2573 goto ldv_20735;
2574 }
2575 }
2576 ldv_20735: ;
2577 {
2578#line 100
2579 __cil_tmp23 = (unsigned int )c;
2580#line 100
2581 if (__cil_tmp23 != 0U) {
2582#line 100
2583 return;
2584 } else {
2585
2586 }
2587 }
2588 {
2589#line 102
2590 __cil_tmp24 = *data;
2591#line 104
2592 if ((int )__cil_tmp24 == 82) {
2593#line 104
2594 goto case_82;
2595 } else
2596#line 111
2597 if ((int )__cil_tmp24 == 68) {
2598#line 111
2599 goto case_68;
2600 } else
2601#line 126
2602 if ((int )__cil_tmp24 == 75) {
2603#line 126
2604 goto case_75;
2605 } else
2606#line 133
2607 if ((int )__cil_tmp24 == 69) {
2608#line 133
2609 goto case_69;
2610 } else
2611#line 102
2612 if (0) {
2613 case_82:
2614#line 105
2615 __cil_tmp25 = (unsigned long )spaceorb;
2616#line 105
2617 __cil_tmp26 = __cil_tmp25 + 8;
2618#line 105
2619 __cil_tmp27 = *((int *)__cil_tmp26);
2620#line 105
2621 __cil_tmp28 = __cil_tmp27 + -1;
2622#line 105
2623 __cil_tmp29 = __cil_tmp28 * 1UL;
2624#line 105
2625 __cil_tmp30 = 12 + __cil_tmp29;
2626#line 105
2627 __cil_tmp31 = (unsigned long )spaceorb;
2628#line 105
2629 __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
2630#line 105
2631 *((unsigned char *)__cil_tmp32) = (unsigned char)0;
2632#line 106
2633 i = 1;
2634#line 106
2635 goto ldv_20738;
2636 ldv_20737:
2637#line 106
2638 i = i + 1;
2639 ldv_20738: ;
2640 {
2641#line 106
2642 __cil_tmp33 = (unsigned long )spaceorb;
2643#line 106
2644 __cil_tmp34 = __cil_tmp33 + 8;
2645#line 106
2646 __cil_tmp35 = *((int *)__cil_tmp34);
2647#line 106
2648 if (__cil_tmp35 > i) {
2649 {
2650#line 106
2651 __cil_tmp36 = i * 1UL;
2652#line 106
2653 __cil_tmp37 = 12 + __cil_tmp36;
2654#line 106
2655 __cil_tmp38 = (unsigned long )spaceorb;
2656#line 106
2657 __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
2658#line 106
2659 __cil_tmp40 = *((unsigned char *)__cil_tmp39);
2660#line 106
2661 __cil_tmp41 = (unsigned int )__cil_tmp40;
2662#line 106
2663 if (__cil_tmp41 == 32U) {
2664#line 107
2665 goto ldv_20737;
2666 } else {
2667#line 109
2668 goto ldv_20739;
2669 }
2670 }
2671 } else {
2672#line 109
2673 goto ldv_20739;
2674 }
2675 }
2676 ldv_20739:
2677 {
2678#line 107
2679 __cil_tmp42 = *((char const **)dev);
2680#line 107
2681 __cil_tmp43 = (unsigned long )i;
2682#line 107
2683 __cil_tmp44 = (unsigned long )spaceorb;
2684#line 107
2685 __cil_tmp45 = __cil_tmp44 + 12;
2686#line 107
2687 __cil_tmp46 = (unsigned char (*)[64U])__cil_tmp45;
2688#line 107
2689 __cil_tmp47 = (unsigned char *)__cil_tmp46;
2690#line 107
2691 __cil_tmp48 = __cil_tmp47 + __cil_tmp43;
2692#line 107
2693 __cil_tmp49 = (unsigned long )spaceorb;
2694#line 107
2695 __cil_tmp50 = __cil_tmp49 + 76;
2696#line 107
2697 __cil_tmp51 = (char (*)[32U])__cil_tmp50;
2698#line 107
2699 __cil_tmp52 = (char *)__cil_tmp51;
2700#line 107
2701 printk("<6>input: %s [%s] is %s\n", __cil_tmp42, __cil_tmp48, __cil_tmp52);
2702 }
2703#line 109
2704 goto ldv_20740;
2705 case_68: ;
2706 {
2707#line 112
2708 __cil_tmp53 = (unsigned long )spaceorb;
2709#line 112
2710 __cil_tmp54 = __cil_tmp53 + 8;
2711#line 112
2712 __cil_tmp55 = *((int *)__cil_tmp54);
2713#line 112
2714 if (__cil_tmp55 != 12) {
2715#line 112
2716 return;
2717 } else {
2718
2719 }
2720 }
2721#line 113
2722 i = 0;
2723#line 113
2724 goto ldv_20743;
2725 ldv_20742:
2726#line 113
2727 __cil_tmp56 = i + 2;
2728#line 113
2729 __cil_tmp57 = __cil_tmp56 * 1UL;
2730#line 113
2731 __cil_tmp58 = 12 + __cil_tmp57;
2732#line 113
2733 __cil_tmp59 = (unsigned long )spaceorb;
2734#line 113
2735 __cil_tmp60 = __cil_tmp59 + __cil_tmp58;
2736#line 113
2737 __cil_tmp61 = i * 1UL;
2738#line 113
2739 __cil_tmp62 = (unsigned long )(spaceorb_xor) + __cil_tmp61;
2740#line 113
2741 __cil_tmp63 = *((unsigned char *)__cil_tmp62);
2742#line 113
2743 __cil_tmp64 = (int )__cil_tmp63;
2744#line 113
2745 __cil_tmp65 = i + 2;
2746#line 113
2747 __cil_tmp66 = __cil_tmp65 * 1UL;
2748#line 113
2749 __cil_tmp67 = 12 + __cil_tmp66;
2750#line 113
2751 __cil_tmp68 = (unsigned long )spaceorb;
2752#line 113
2753 __cil_tmp69 = __cil_tmp68 + __cil_tmp67;
2754#line 113
2755 __cil_tmp70 = *((unsigned char *)__cil_tmp69);
2756#line 113
2757 __cil_tmp71 = (int )__cil_tmp70;
2758#line 113
2759 __cil_tmp72 = __cil_tmp71 ^ __cil_tmp64;
2760#line 113
2761 *((unsigned char *)__cil_tmp60) = (unsigned char )__cil_tmp72;
2762#line 113
2763 i = i + 1;
2764 ldv_20743: ;
2765#line 113
2766 if (i <= 8) {
2767#line 114
2768 goto ldv_20742;
2769 } else {
2770#line 116
2771 goto ldv_20744;
2772 }
2773 ldv_20744:
2774#line 114
2775 __cil_tmp73 = 0 * 4UL;
2776#line 114
2777 __cil_tmp74 = (unsigned long )(axes) + __cil_tmp73;
2778#line 114
2779 __cil_tmp75 = data + 3UL;
2780#line 114
2781 __cil_tmp76 = *__cil_tmp75;
2782#line 114
2783 __cil_tmp77 = (int )__cil_tmp76;
2784#line 114
2785 __cil_tmp78 = __cil_tmp77 >> 4;
2786#line 114
2787 __cil_tmp79 = data + 2UL;
2788#line 114
2789 __cil_tmp80 = *__cil_tmp79;
2790#line 114
2791 __cil_tmp81 = (int )__cil_tmp80;
2792#line 114
2793 __cil_tmp82 = __cil_tmp81 << 3;
2794#line 114
2795 *((int *)__cil_tmp74) = __cil_tmp82 | __cil_tmp78;
2796#line 115
2797 __cil_tmp83 = 1 * 4UL;
2798#line 115
2799 __cil_tmp84 = (unsigned long )(axes) + __cil_tmp83;
2800#line 115
2801 __cil_tmp85 = data + 4UL;
2802#line 115
2803 __cil_tmp86 = *__cil_tmp85;
2804#line 115
2805 __cil_tmp87 = (int )__cil_tmp86;
2806#line 115
2807 __cil_tmp88 = __cil_tmp87 >> 1;
2808#line 115
2809 __cil_tmp89 = data + 3UL;
2810#line 115
2811 __cil_tmp90 = *__cil_tmp89;
2812#line 115
2813 __cil_tmp91 = (int )__cil_tmp90;
2814#line 115
2815 __cil_tmp92 = __cil_tmp91 & 15;
2816#line 115
2817 __cil_tmp93 = __cil_tmp92 << 6;
2818#line 115
2819 *((int *)__cil_tmp84) = __cil_tmp93 | __cil_tmp88;
2820#line 116
2821 __cil_tmp94 = 2 * 4UL;
2822#line 116
2823 __cil_tmp95 = (unsigned long )(axes) + __cil_tmp94;
2824#line 116
2825 __cil_tmp96 = data + 4UL;
2826#line 116
2827 __cil_tmp97 = *__cil_tmp96;
2828#line 116
2829 __cil_tmp98 = (int )__cil_tmp97;
2830#line 116
2831 __cil_tmp99 = __cil_tmp98 >> 5;
2832#line 116
2833 __cil_tmp100 = data + 5UL;
2834#line 116
2835 __cil_tmp101 = *__cil_tmp100;
2836#line 116
2837 __cil_tmp102 = (int )__cil_tmp101;
2838#line 116
2839 __cil_tmp103 = __cil_tmp102 << 2;
2840#line 116
2841 __cil_tmp104 = data + 4UL;
2842#line 116
2843 __cil_tmp105 = *__cil_tmp104;
2844#line 116
2845 __cil_tmp106 = (int )__cil_tmp105;
2846#line 116
2847 __cil_tmp107 = __cil_tmp106 & 1;
2848#line 116
2849 __cil_tmp108 = __cil_tmp107 << 9;
2850#line 116
2851 __cil_tmp109 = __cil_tmp108 | __cil_tmp103;
2852#line 116
2853 *((int *)__cil_tmp95) = __cil_tmp109 | __cil_tmp99;
2854#line 117
2855 __cil_tmp110 = 3 * 4UL;
2856#line 117
2857 __cil_tmp111 = (unsigned long )(axes) + __cil_tmp110;
2858#line 117
2859 __cil_tmp112 = data + 7UL;
2860#line 117
2861 __cil_tmp113 = *__cil_tmp112;
2862#line 117
2863 __cil_tmp114 = (int )__cil_tmp113;
2864#line 117
2865 __cil_tmp115 = __cil_tmp114 >> 2;
2866#line 117
2867 __cil_tmp116 = data + 6UL;
2868#line 117
2869 __cil_tmp117 = *__cil_tmp116;
2870#line 117
2871 __cil_tmp118 = (int )__cil_tmp117;
2872#line 117
2873 __cil_tmp119 = __cil_tmp118 & 31;
2874#line 117
2875 __cil_tmp120 = __cil_tmp119 << 5;
2876#line 117
2877 *((int *)__cil_tmp111) = __cil_tmp120 | __cil_tmp115;
2878#line 118
2879 __cil_tmp121 = 4 * 4UL;
2880#line 118
2881 __cil_tmp122 = (unsigned long )(axes) + __cil_tmp121;
2882#line 118
2883 __cil_tmp123 = data + 7UL;
2884#line 118
2885 __cil_tmp124 = *__cil_tmp123;
2886#line 118
2887 __cil_tmp125 = (int )__cil_tmp124;
2888#line 118
2889 __cil_tmp126 = __cil_tmp125 >> 6;
2890#line 118
2891 __cil_tmp127 = data + 8UL;
2892#line 118
2893 __cil_tmp128 = *__cil_tmp127;
2894#line 118
2895 __cil_tmp129 = (int )__cil_tmp128;
2896#line 118
2897 __cil_tmp130 = __cil_tmp129 << 1;
2898#line 118
2899 __cil_tmp131 = data + 7UL;
2900#line 118
2901 __cil_tmp132 = *__cil_tmp131;
2902#line 118
2903 __cil_tmp133 = (int )__cil_tmp132;
2904#line 118
2905 __cil_tmp134 = __cil_tmp133 & 3;
2906#line 118
2907 __cil_tmp135 = __cil_tmp134 << 8;
2908#line 118
2909 __cil_tmp136 = __cil_tmp135 | __cil_tmp130;
2910#line 118
2911 *((int *)__cil_tmp122) = __cil_tmp136 | __cil_tmp126;
2912#line 119
2913 __cil_tmp137 = 5 * 4UL;
2914#line 119
2915 __cil_tmp138 = (unsigned long )(axes) + __cil_tmp137;
2916#line 119
2917 __cil_tmp139 = data + 10UL;
2918#line 119
2919 __cil_tmp140 = *__cil_tmp139;
2920#line 119
2921 __cil_tmp141 = (int )__cil_tmp140;
2922#line 119
2923 __cil_tmp142 = __cil_tmp141 >> 3;
2924#line 119
2925 __cil_tmp143 = data + 9UL;
2926#line 119
2927 __cil_tmp144 = *__cil_tmp143;
2928#line 119
2929 __cil_tmp145 = (int )__cil_tmp144;
2930#line 119
2931 __cil_tmp146 = __cil_tmp145 & 63;
2932#line 119
2933 __cil_tmp147 = __cil_tmp146 << 4;
2934#line 119
2935 *((int *)__cil_tmp138) = __cil_tmp147 | __cil_tmp142;
2936#line 120
2937 i = 0;
2938#line 120
2939 goto ldv_20746;
2940 ldv_20745: ;
2941 {
2942#line 121
2943 __cil_tmp148 = i * 4UL;
2944#line 121
2945 __cil_tmp149 = (unsigned long )(axes) + __cil_tmp148;
2946#line 121
2947 __cil_tmp150 = *((int *)__cil_tmp149);
2948#line 121
2949 __cil_tmp151 = __cil_tmp150 & 512;
2950#line 121
2951 if (__cil_tmp151 != 0) {
2952#line 121
2953 tmp = 1024;
2954 } else {
2955#line 121
2956 tmp = 0;
2957 }
2958 }
2959 {
2960#line 121
2961 __cil_tmp152 = i * 4UL;
2962#line 121
2963 __cil_tmp153 = (unsigned long )(spaceorb_axes) + __cil_tmp152;
2964#line 121
2965 __cil_tmp154 = *((int *)__cil_tmp153);
2966#line 121
2967 __cil_tmp155 = (unsigned int )__cil_tmp154;
2968#line 121
2969 __cil_tmp156 = i * 4UL;
2970#line 121
2971 __cil_tmp157 = (unsigned long )(axes) + __cil_tmp156;
2972#line 121
2973 __cil_tmp158 = *((int *)__cil_tmp157);
2974#line 121
2975 __cil_tmp159 = __cil_tmp158 - tmp;
2976#line 121
2977 input_report_abs(dev, __cil_tmp155, __cil_tmp159);
2978#line 120
2979 i = i + 1;
2980 }
2981 ldv_20746: ;
2982#line 120
2983 if (i <= 5) {
2984#line 121
2985 goto ldv_20745;
2986 } else {
2987#line 123
2988 goto ldv_20747;
2989 }
2990 ldv_20747:
2991#line 122
2992 i = 0;
2993#line 122
2994 goto ldv_20749;
2995 ldv_20748:
2996 {
2997#line 123
2998 __cil_tmp160 = i * 4UL;
2999#line 123
3000 __cil_tmp161 = (unsigned long )(spaceorb_buttons) + __cil_tmp160;
3001#line 123
3002 __cil_tmp162 = *((int *)__cil_tmp161);
3003#line 123
3004 __cil_tmp163 = (unsigned int )__cil_tmp162;
3005#line 123
3006 __cil_tmp164 = data + 1UL;
3007#line 123
3008 __cil_tmp165 = *__cil_tmp164;
3009#line 123
3010 __cil_tmp166 = (int )__cil_tmp165;
3011#line 123
3012 __cil_tmp167 = __cil_tmp166 >> i;
3013#line 123
3014 __cil_tmp168 = __cil_tmp167 & 1;
3015#line 123
3016 input_report_key(dev, __cil_tmp163, __cil_tmp168);
3017#line 122
3018 i = i + 1;
3019 }
3020 ldv_20749: ;
3021#line 122
3022 if (i <= 5) {
3023#line 123
3024 goto ldv_20748;
3025 } else {
3026#line 125
3027 goto ldv_20750;
3028 }
3029 ldv_20750: ;
3030#line 124
3031 goto ldv_20740;
3032 case_75: ;
3033 {
3034#line 127
3035 __cil_tmp169 = (unsigned long )spaceorb;
3036#line 127
3037 __cil_tmp170 = __cil_tmp169 + 8;
3038#line 127
3039 __cil_tmp171 = *((int *)__cil_tmp170);
3040#line 127
3041 if (__cil_tmp171 != 5) {
3042#line 127
3043 return;
3044 } else {
3045
3046 }
3047 }
3048#line 128
3049 i = 0;
3050#line 128
3051 goto ldv_20753;
3052 ldv_20752:
3053 {
3054#line 129
3055 __cil_tmp172 = i * 4UL;
3056#line 129
3057 __cil_tmp173 = (unsigned long )(spaceorb_buttons) + __cil_tmp172;
3058#line 129
3059 __cil_tmp174 = *((int *)__cil_tmp173);
3060#line 129
3061 __cil_tmp175 = (unsigned int )__cil_tmp174;
3062#line 129
3063 __cil_tmp176 = data + 2UL;
3064#line 129
3065 __cil_tmp177 = *__cil_tmp176;
3066#line 129
3067 __cil_tmp178 = (int )__cil_tmp177;
3068#line 129
3069 __cil_tmp179 = __cil_tmp178 >> i;
3070#line 129
3071 __cil_tmp180 = __cil_tmp179 & 1;
3072#line 129
3073 input_report_key(dev, __cil_tmp175, __cil_tmp180);
3074#line 128
3075 i = i + 1;
3076 }
3077 ldv_20753: ;
3078#line 128
3079 if (i <= 5) {
3080#line 129
3081 goto ldv_20752;
3082 } else {
3083#line 131
3084 goto ldv_20754;
3085 }
3086 ldv_20754: ;
3087#line 131
3088 goto ldv_20740;
3089 case_69: ;
3090 {
3091#line 134
3092 __cil_tmp181 = (unsigned long )spaceorb;
3093#line 134
3094 __cil_tmp182 = __cil_tmp181 + 8;
3095#line 134
3096 __cil_tmp183 = *((int *)__cil_tmp182);
3097#line 134
3098 if (__cil_tmp183 != 4) {
3099#line 134
3100 return;
3101 } else {
3102
3103 }
3104 }
3105 {
3106#line 135
3107 printk("<3>spaceorb: Device error. [ ");
3108#line 136
3109 i = 0;
3110 }
3111#line 136
3112 goto ldv_20757;
3113 ldv_20756: ;
3114 {
3115#line 136
3116 __cil_tmp184 = data + 1UL;
3117#line 136
3118 __cil_tmp185 = *__cil_tmp184;
3119#line 136
3120 __cil_tmp186 = (int )__cil_tmp185;
3121#line 136
3122 __cil_tmp187 = __cil_tmp186 >> i;
3123#line 136
3124 if (__cil_tmp187 & 1) {
3125 {
3126#line 136
3127 __cil_tmp188 = i * 8UL;
3128#line 136
3129 __cil_tmp189 = (unsigned long )(spaceorb_errors) + __cil_tmp188;
3130#line 136
3131 __cil_tmp190 = *((unsigned char **)__cil_tmp189);
3132#line 136
3133 printk("%s ", __cil_tmp190);
3134 }
3135 } else {
3136
3137 }
3138 }
3139#line 136
3140 i = i + 1;
3141 ldv_20757: ;
3142#line 136
3143 if (i <= 6) {
3144#line 137
3145 goto ldv_20756;
3146 } else {
3147#line 139
3148 goto ldv_20758;
3149 }
3150 ldv_20758:
3151 {
3152#line 137
3153 printk("]\n");
3154 }
3155#line 138
3156 goto ldv_20740;
3157 } else {
3158 switch_break: ;
3159 }
3160 }
3161 ldv_20740:
3162 {
3163#line 141
3164 input_sync(dev);
3165 }
3166#line 142
3167 return;
3168}
3169}
3170#line 144 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3171static irqreturn_t spaceorb_interrupt(struct serio *serio , unsigned char data , unsigned int flags )
3172{ struct spaceorb *spaceorb ;
3173 void *tmp ;
3174 int tmp___0 ;
3175 signed char __cil_tmp7 ;
3176 int __cil_tmp8 ;
3177 unsigned long __cil_tmp9 ;
3178 unsigned long __cil_tmp10 ;
3179 int __cil_tmp11 ;
3180 unsigned long __cil_tmp12 ;
3181 unsigned long __cil_tmp13 ;
3182 unsigned long __cil_tmp14 ;
3183 unsigned long __cil_tmp15 ;
3184 int __cil_tmp16 ;
3185 unsigned long __cil_tmp17 ;
3186 unsigned long __cil_tmp18 ;
3187 unsigned long __cil_tmp19 ;
3188 unsigned long __cil_tmp20 ;
3189 unsigned long __cil_tmp21 ;
3190 unsigned long __cil_tmp22 ;
3191 int __cil_tmp23 ;
3192 unsigned long __cil_tmp24 ;
3193 unsigned long __cil_tmp25 ;
3194 unsigned long __cil_tmp26 ;
3195 unsigned long __cil_tmp27 ;
3196 unsigned int __cil_tmp28 ;
3197 unsigned int __cil_tmp29 ;
3198
3199 {
3200 {
3201#line 147
3202 tmp = serio_get_drvdata(serio);
3203#line 147
3204 spaceorb = (struct spaceorb *)tmp;
3205 }
3206 {
3207#line 149
3208 __cil_tmp7 = (signed char )data;
3209#line 149
3210 __cil_tmp8 = (int )__cil_tmp7;
3211#line 149
3212 if (__cil_tmp8 >= 0) {
3213 {
3214#line 150
3215 __cil_tmp9 = (unsigned long )spaceorb;
3216#line 150
3217 __cil_tmp10 = __cil_tmp9 + 8;
3218#line 150
3219 __cil_tmp11 = *((int *)__cil_tmp10);
3220#line 150
3221 if (__cil_tmp11 != 0) {
3222 {
3223#line 150
3224 spaceorb_process_packet(spaceorb);
3225 }
3226 } else {
3227
3228 }
3229 }
3230#line 151
3231 __cil_tmp12 = (unsigned long )spaceorb;
3232#line 151
3233 __cil_tmp13 = __cil_tmp12 + 8;
3234#line 151
3235 *((int *)__cil_tmp13) = 0;
3236 } else {
3237
3238 }
3239 }
3240 {
3241#line 153
3242 __cil_tmp14 = (unsigned long )spaceorb;
3243#line 153
3244 __cil_tmp15 = __cil_tmp14 + 8;
3245#line 153
3246 __cil_tmp16 = *((int *)__cil_tmp15);
3247#line 153
3248 if (__cil_tmp16 <= 63) {
3249#line 154
3250 __cil_tmp17 = (unsigned long )spaceorb;
3251#line 154
3252 __cil_tmp18 = __cil_tmp17 + 8;
3253#line 154
3254 tmp___0 = *((int *)__cil_tmp18);
3255#line 154
3256 __cil_tmp19 = (unsigned long )spaceorb;
3257#line 154
3258 __cil_tmp20 = __cil_tmp19 + 8;
3259#line 154
3260 __cil_tmp21 = (unsigned long )spaceorb;
3261#line 154
3262 __cil_tmp22 = __cil_tmp21 + 8;
3263#line 154
3264 __cil_tmp23 = *((int *)__cil_tmp22);
3265#line 154
3266 *((int *)__cil_tmp20) = __cil_tmp23 + 1;
3267#line 154
3268 __cil_tmp24 = tmp___0 * 1UL;
3269#line 154
3270 __cil_tmp25 = 12 + __cil_tmp24;
3271#line 154
3272 __cil_tmp26 = (unsigned long )spaceorb;
3273#line 154
3274 __cil_tmp27 = __cil_tmp26 + __cil_tmp25;
3275#line 154
3276 __cil_tmp28 = (unsigned int )data;
3277#line 154
3278 __cil_tmp29 = __cil_tmp28 & 127U;
3279#line 154
3280 *((unsigned char *)__cil_tmp27) = (unsigned char )__cil_tmp29;
3281 } else {
3282
3283 }
3284 }
3285#line 155
3286 return ((irqreturn_t )1);
3287}
3288}
3289#line 162 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3290static void spaceorb_disconnect(struct serio *serio )
3291{ struct spaceorb *spaceorb ;
3292 void *tmp ;
3293 void *__cil_tmp4 ;
3294 struct input_dev *__cil_tmp5 ;
3295 void const *__cil_tmp6 ;
3296
3297 {
3298 {
3299#line 164
3300 tmp = serio_get_drvdata(serio);
3301#line 164
3302 spaceorb = (struct spaceorb *)tmp;
3303#line 166
3304 serio_close(serio);
3305#line 167
3306 __cil_tmp4 = (void *)0;
3307#line 167
3308 serio_set_drvdata(serio, __cil_tmp4);
3309#line 168
3310 __cil_tmp5 = *((struct input_dev **)spaceorb);
3311#line 168
3312 input_unregister_device(__cil_tmp5);
3313#line 169
3314 __cil_tmp6 = (void const *)spaceorb;
3315#line 169
3316 kfree(__cil_tmp6);
3317 }
3318#line 170
3319 return;
3320}
3321}
3322#line 178 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3323static int spaceorb_connect(struct serio *serio , struct serio_driver *drv )
3324{ struct spaceorb *spaceorb ;
3325 struct input_dev *input_dev ;
3326 int err ;
3327 int i ;
3328 void *tmp ;
3329 struct spaceorb *__cil_tmp8 ;
3330 unsigned long __cil_tmp9 ;
3331 unsigned long __cil_tmp10 ;
3332 struct input_dev *__cil_tmp11 ;
3333 unsigned long __cil_tmp12 ;
3334 unsigned long __cil_tmp13 ;
3335 unsigned long __cil_tmp14 ;
3336 unsigned long __cil_tmp15 ;
3337 char (*__cil_tmp16)[32U] ;
3338 char *__cil_tmp17 ;
3339 unsigned long __cil_tmp18 ;
3340 unsigned long __cil_tmp19 ;
3341 char (*__cil_tmp20)[32U] ;
3342 char *__cil_tmp21 ;
3343 unsigned long __cil_tmp22 ;
3344 unsigned long __cil_tmp23 ;
3345 unsigned long __cil_tmp24 ;
3346 unsigned long __cil_tmp25 ;
3347 char (*__cil_tmp26)[32U] ;
3348 unsigned long __cil_tmp27 ;
3349 unsigned long __cil_tmp28 ;
3350 unsigned long __cil_tmp29 ;
3351 unsigned long __cil_tmp30 ;
3352 unsigned long __cil_tmp31 ;
3353 unsigned long __cil_tmp32 ;
3354 unsigned long __cil_tmp33 ;
3355 unsigned long __cil_tmp34 ;
3356 unsigned long __cil_tmp35 ;
3357 unsigned long __cil_tmp36 ;
3358 unsigned long __cil_tmp37 ;
3359 unsigned long __cil_tmp38 ;
3360 unsigned long __cil_tmp39 ;
3361 unsigned long __cil_tmp40 ;
3362 unsigned long __cil_tmp41 ;
3363 unsigned long __cil_tmp42 ;
3364 unsigned long __cil_tmp43 ;
3365 unsigned long __cil_tmp44 ;
3366 unsigned long __cil_tmp45 ;
3367 unsigned long __cil_tmp46 ;
3368 unsigned long __cil_tmp47 ;
3369 int __cil_tmp48 ;
3370 unsigned int __cil_tmp49 ;
3371 unsigned long __cil_tmp50 ;
3372 unsigned long __cil_tmp51 ;
3373 unsigned long (*__cil_tmp52)[12U] ;
3374 unsigned long volatile *__cil_tmp53 ;
3375 unsigned long __cil_tmp54 ;
3376 unsigned long __cil_tmp55 ;
3377 int __cil_tmp56 ;
3378 unsigned int __cil_tmp57 ;
3379 void *__cil_tmp58 ;
3380 struct input_dev *__cil_tmp59 ;
3381 void *__cil_tmp60 ;
3382 void const *__cil_tmp61 ;
3383
3384 {
3385 {
3386#line 182
3387 err = -12;
3388#line 185
3389 tmp = kzalloc(112UL, 208U);
3390#line 185
3391 spaceorb = (struct spaceorb *)tmp;
3392#line 186
3393 input_dev = input_allocate_device();
3394 }
3395 {
3396#line 187
3397 __cil_tmp8 = (struct spaceorb *)0;
3398#line 187
3399 __cil_tmp9 = (unsigned long )__cil_tmp8;
3400#line 187
3401 __cil_tmp10 = (unsigned long )spaceorb;
3402#line 187
3403 if (__cil_tmp10 == __cil_tmp9) {
3404#line 188
3405 goto fail1;
3406 } else {
3407 {
3408#line 187
3409 __cil_tmp11 = (struct input_dev *)0;
3410#line 187
3411 __cil_tmp12 = (unsigned long )__cil_tmp11;
3412#line 187
3413 __cil_tmp13 = (unsigned long )input_dev;
3414#line 187
3415 if (__cil_tmp13 == __cil_tmp12) {
3416#line 188
3417 goto fail1;
3418 } else {
3419
3420 }
3421 }
3422 }
3423 }
3424 {
3425#line 190
3426 *((struct input_dev **)spaceorb) = input_dev;
3427#line 191
3428 __cil_tmp14 = (unsigned long )spaceorb;
3429#line 191
3430 __cil_tmp15 = __cil_tmp14 + 76;
3431#line 191
3432 __cil_tmp16 = (char (*)[32U])__cil_tmp15;
3433#line 191
3434 __cil_tmp17 = (char *)__cil_tmp16;
3435#line 191
3436 __cil_tmp18 = (unsigned long )serio;
3437#line 191
3438 __cil_tmp19 = __cil_tmp18 + 40;
3439#line 191
3440 __cil_tmp20 = (char (*)[32U])__cil_tmp19;
3441#line 191
3442 __cil_tmp21 = (char *)__cil_tmp20;
3443#line 191
3444 snprintf(__cil_tmp17, 32UL, "%s/input0", __cil_tmp21);
3445#line 193
3446 *((char const **)input_dev) = "SpaceTec SpaceOrb 360 / Avenger";
3447#line 194
3448 __cil_tmp22 = (unsigned long )input_dev;
3449#line 194
3450 __cil_tmp23 = __cil_tmp22 + 8;
3451#line 194
3452 __cil_tmp24 = (unsigned long )spaceorb;
3453#line 194
3454 __cil_tmp25 = __cil_tmp24 + 76;
3455#line 194
3456 __cil_tmp26 = (char (*)[32U])__cil_tmp25;
3457#line 194
3458 *((char const **)__cil_tmp23) = (char const *)__cil_tmp26;
3459#line 195
3460 __cil_tmp27 = (unsigned long )input_dev;
3461#line 195
3462 __cil_tmp28 = __cil_tmp27 + 24;
3463#line 195
3464 *((__u16 *)__cil_tmp28) = (__u16 )19U;
3465#line 196
3466 __cil_tmp29 = 24 + 2;
3467#line 196
3468 __cil_tmp30 = (unsigned long )input_dev;
3469#line 196
3470 __cil_tmp31 = __cil_tmp30 + __cil_tmp29;
3471#line 196
3472 *((__u16 *)__cil_tmp31) = (__u16 )25U;
3473#line 197
3474 __cil_tmp32 = 24 + 4;
3475#line 197
3476 __cil_tmp33 = (unsigned long )input_dev;
3477#line 197
3478 __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
3479#line 197
3480 *((__u16 *)__cil_tmp34) = (__u16 )1U;
3481#line 198
3482 __cil_tmp35 = 24 + 6;
3483#line 198
3484 __cil_tmp36 = (unsigned long )input_dev;
3485#line 198
3486 __cil_tmp37 = __cil_tmp36 + __cil_tmp35;
3487#line 198
3488 *((__u16 *)__cil_tmp37) = (__u16 )256U;
3489#line 199
3490 __cil_tmp38 = (unsigned long )input_dev;
3491#line 199
3492 __cil_tmp39 = __cil_tmp38 + 840;
3493#line 199
3494 __cil_tmp40 = (unsigned long )serio;
3495#line 199
3496 __cil_tmp41 = __cil_tmp40 + 416;
3497#line 199
3498 *((struct device **)__cil_tmp39) = (struct device *)__cil_tmp41;
3499#line 201
3500 __cil_tmp42 = 0 * 8UL;
3501#line 201
3502 __cil_tmp43 = 40 + __cil_tmp42;
3503#line 201
3504 __cil_tmp44 = (unsigned long )input_dev;
3505#line 201
3506 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
3507#line 201
3508 *((unsigned long *)__cil_tmp45) = 10UL;
3509#line 203
3510 i = 0;
3511 }
3512#line 203
3513 goto ldv_20779;
3514 ldv_20778:
3515 {
3516#line 204
3517 __cil_tmp46 = i * 4UL;
3518#line 204
3519 __cil_tmp47 = (unsigned long )(spaceorb_buttons) + __cil_tmp46;
3520#line 204
3521 __cil_tmp48 = *((int *)__cil_tmp47);
3522#line 204
3523 __cil_tmp49 = (unsigned int )__cil_tmp48;
3524#line 204
3525 __cil_tmp50 = (unsigned long )input_dev;
3526#line 204
3527 __cil_tmp51 = __cil_tmp50 + 48;
3528#line 204
3529 __cil_tmp52 = (unsigned long (*)[12U])__cil_tmp51;
3530#line 204
3531 __cil_tmp53 = (unsigned long volatile *)__cil_tmp52;
3532#line 204
3533 set_bit(__cil_tmp49, __cil_tmp53);
3534#line 203
3535 i = i + 1;
3536 }
3537 ldv_20779: ;
3538#line 203
3539 if (i <= 5) {
3540#line 204
3541 goto ldv_20778;
3542 } else {
3543#line 206
3544 goto ldv_20780;
3545 }
3546 ldv_20780:
3547#line 206
3548 i = 0;
3549#line 206
3550 goto ldv_20782;
3551 ldv_20781:
3552 {
3553#line 207
3554 __cil_tmp54 = i * 4UL;
3555#line 207
3556 __cil_tmp55 = (unsigned long )(spaceorb_axes) + __cil_tmp54;
3557#line 207
3558 __cil_tmp56 = *((int *)__cil_tmp55);
3559#line 207
3560 __cil_tmp57 = (unsigned int )__cil_tmp56;
3561#line 207
3562 input_set_abs_params(input_dev, __cil_tmp57, -508, 508, 0, 0);
3563#line 206
3564 i = i + 1;
3565 }
3566 ldv_20782: ;
3567#line 206
3568 if (i <= 5) {
3569#line 207
3570 goto ldv_20781;
3571 } else {
3572#line 209
3573 goto ldv_20783;
3574 }
3575 ldv_20783:
3576 {
3577#line 209
3578 __cil_tmp58 = (void *)spaceorb;
3579#line 209
3580 serio_set_drvdata(serio, __cil_tmp58);
3581#line 211
3582 err = serio_open(serio, drv);
3583 }
3584#line 212
3585 if (err != 0) {
3586#line 213
3587 goto fail2;
3588 } else {
3589
3590 }
3591 {
3592#line 215
3593 __cil_tmp59 = *((struct input_dev **)spaceorb);
3594#line 215
3595 err = input_register_device(__cil_tmp59);
3596 }
3597#line 216
3598 if (err != 0) {
3599#line 217
3600 goto fail3;
3601 } else {
3602
3603 }
3604#line 219
3605 return (0);
3606 fail3:
3607 {
3608#line 221
3609 serio_close(serio);
3610 }
3611 fail2:
3612 {
3613#line 222
3614 __cil_tmp60 = (void *)0;
3615#line 222
3616 serio_set_drvdata(serio, __cil_tmp60);
3617 }
3618 fail1:
3619 {
3620#line 223
3621 input_free_device(input_dev);
3622#line 224
3623 __cil_tmp61 = (void const *)spaceorb;
3624#line 224
3625 kfree(__cil_tmp61);
3626 }
3627#line 225
3628 return (err);
3629}
3630}
3631#line 232 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3632static struct serio_device_id spaceorb_serio_ids[2U] = { {(__u8 )2U, (__u8 )255U, (__u8 )255U, (__u8 )25U},
3633 {(__u8 )0U, (unsigned char)0, (unsigned char)0, (unsigned char)0}};
3634#line 242 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3635struct serio_device_id const __mod_serio_device_table ;
3636#line 244 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3637static struct serio_driver spaceorb_drv =
3638#line 244
3639 {"SpaceTec SpaceOrb 360 and Avenger 6dof controller driver", (struct serio_device_id const *)(& spaceorb_serio_ids),
3640 (_Bool)0, (void (*)(struct serio * ))0, & spaceorb_interrupt, & spaceorb_connect,
3641 (int (*)(struct serio * ))0, & spaceorb_disconnect, (void (*)(struct serio * ))0,
3642 {"spaceorb", (struct bus_type *)0, (struct module *)0, (char const *)0, (_Bool)0,
3643 (struct of_device_id const *)0, (int (*)(struct device * ))0, (int (*)(struct device * ))0,
3644 (void (*)(struct device * ))0, (int (*)(struct device * , pm_message_t ))0,
3645 (int (*)(struct device * ))0, (struct attribute_group const **)0, (struct dev_pm_ops const *)0,
3646 (struct driver_private *)0}};
3647#line 259 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3648static int spaceorb_init(void)
3649{ int tmp ;
3650
3651 {
3652 {
3653#line 261
3654 tmp = __serio_register_driver(& spaceorb_drv, & __this_module, "spaceorb");
3655 }
3656#line 261
3657 return (tmp);
3658}
3659}
3660#line 264 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3661static void spaceorb_exit(void)
3662{
3663
3664 {
3665 {
3666#line 266
3667 serio_unregister_driver(& spaceorb_drv);
3668 }
3669#line 267
3670 return;
3671}
3672}
3673#line 288
3674extern void ldv_check_final_state(void) ;
3675#line 291
3676extern void ldv_check_return_value(int ) ;
3677#line 294
3678extern void ldv_initialize(void) ;
3679#line 297
3680extern int __VERIFIER_nondet_int(void) ;
3681#line 300 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3682int LDV_IN_INTERRUPT ;
3683#line 303 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3684void main(void)
3685{ struct serio *var_group1 ;
3686 unsigned char var_spaceorb_interrupt_1_p1 ;
3687 unsigned int var_spaceorb_interrupt_1_p2 ;
3688 struct serio_driver *var_group2 ;
3689 int res_spaceorb_connect_3 ;
3690 int ldv_s_spaceorb_drv_serio_driver ;
3691 int tmp ;
3692 int tmp___0 ;
3693 int tmp___1 ;
3694 int __cil_tmp10 ;
3695 unsigned char __cil_tmp11 ;
3696
3697 {
3698 {
3699#line 362
3700 ldv_s_spaceorb_drv_serio_driver = 0;
3701#line 342
3702 LDV_IN_INTERRUPT = 1;
3703#line 351
3704 ldv_initialize();
3705#line 360
3706 tmp = spaceorb_init();
3707 }
3708#line 360
3709 if (tmp != 0) {
3710#line 361
3711 goto ldv_final;
3712 } else {
3713
3714 }
3715#line 366
3716 goto ldv_20831;
3717 ldv_20830:
3718 {
3719#line 370
3720 tmp___0 = __VERIFIER_nondet_int();
3721 }
3722#line 372
3723 if (tmp___0 == 0) {
3724#line 372
3725 goto case_0;
3726 } else
3727#line 394
3728 if (tmp___0 == 1) {
3729#line 394
3730 goto case_1;
3731 } else
3732#line 413
3733 if (tmp___0 == 2) {
3734#line 413
3735 goto case_2;
3736 } else {
3737 {
3738#line 432
3739 goto switch_default;
3740#line 370
3741 if (0) {
3742 case_0: ;
3743#line 375
3744 if (ldv_s_spaceorb_drv_serio_driver == 0) {
3745 {
3746#line 383
3747 res_spaceorb_connect_3 = spaceorb_connect(var_group1, var_group2);
3748#line 384
3749 ldv_check_return_value(res_spaceorb_connect_3);
3750 }
3751#line 385
3752 if (res_spaceorb_connect_3 != 0) {
3753#line 386
3754 goto ldv_module_exit;
3755 } else {
3756
3757 }
3758#line 387
3759 ldv_s_spaceorb_drv_serio_driver = ldv_s_spaceorb_drv_serio_driver + 1;
3760 } else {
3761
3762 }
3763#line 393
3764 goto ldv_20826;
3765 case_1: ;
3766#line 397
3767 if (ldv_s_spaceorb_drv_serio_driver == 1) {
3768 {
3769#line 405
3770 spaceorb_disconnect(var_group1);
3771#line 406
3772 ldv_s_spaceorb_drv_serio_driver = 0;
3773 }
3774 } else {
3775
3776 }
3777#line 412
3778 goto ldv_20826;
3779 case_2:
3780 {
3781#line 424
3782 __cil_tmp10 = (int )var_spaceorb_interrupt_1_p1;
3783#line 424
3784 __cil_tmp11 = (unsigned char )__cil_tmp10;
3785#line 424
3786 spaceorb_interrupt(var_group1, __cil_tmp11, var_spaceorb_interrupt_1_p2);
3787 }
3788#line 431
3789 goto ldv_20826;
3790 switch_default: ;
3791#line 432
3792 goto ldv_20826;
3793 } else {
3794 switch_break: ;
3795 }
3796 }
3797 }
3798 ldv_20826: ;
3799 ldv_20831:
3800 {
3801#line 366
3802 tmp___1 = __VERIFIER_nondet_int();
3803 }
3804#line 366
3805 if (tmp___1 != 0) {
3806#line 368
3807 goto ldv_20830;
3808 } else
3809#line 366
3810 if (ldv_s_spaceorb_drv_serio_driver != 0) {
3811#line 368
3812 goto ldv_20830;
3813 } else {
3814#line 370
3815 goto ldv_20832;
3816 }
3817 ldv_20832: ;
3818 ldv_module_exit:
3819 {
3820#line 447
3821 spaceorb_exit();
3822 }
3823 ldv_final:
3824 {
3825#line 450
3826 ldv_check_final_state();
3827 }
3828#line 453
3829 return;
3830}
3831}
3832#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
3833void ldv_blast_assert(void)
3834{
3835
3836 {
3837 ERROR: ;
3838#line 6
3839 goto ERROR;
3840}
3841}
3842#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
3843extern int __VERIFIER_nondet_int(void) ;
3844#line 474 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3845int ldv_spin = 0;
3846#line 478 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3847void ldv_check_alloc_flags(gfp_t flags )
3848{
3849
3850 {
3851#line 481
3852 if (ldv_spin != 0) {
3853#line 481
3854 if (flags != 32U) {
3855 {
3856#line 481
3857 ldv_blast_assert();
3858 }
3859 } else {
3860
3861 }
3862 } else {
3863
3864 }
3865#line 484
3866 return;
3867}
3868}
3869#line 484
3870extern struct page *ldv_some_page(void) ;
3871#line 487 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3872struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
3873{ struct page *tmp ;
3874
3875 {
3876#line 490
3877 if (ldv_spin != 0) {
3878#line 490
3879 if (flags != 32U) {
3880 {
3881#line 490
3882 ldv_blast_assert();
3883 }
3884 } else {
3885
3886 }
3887 } else {
3888
3889 }
3890 {
3891#line 492
3892 tmp = ldv_some_page();
3893 }
3894#line 492
3895 return (tmp);
3896}
3897}
3898#line 496 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3899void ldv_check_alloc_nonatomic(void)
3900{
3901
3902 {
3903#line 499
3904 if (ldv_spin != 0) {
3905 {
3906#line 499
3907 ldv_blast_assert();
3908 }
3909 } else {
3910
3911 }
3912#line 502
3913 return;
3914}
3915}
3916#line 503 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3917void ldv_spin_lock(void)
3918{
3919
3920 {
3921#line 506
3922 ldv_spin = 1;
3923#line 507
3924 return;
3925}
3926}
3927#line 510 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3928void ldv_spin_unlock(void)
3929{
3930
3931 {
3932#line 513
3933 ldv_spin = 0;
3934#line 514
3935 return;
3936}
3937}
3938#line 517 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3939int ldv_spin_trylock(void)
3940{ int is_lock ;
3941
3942 {
3943 {
3944#line 522
3945 is_lock = __VERIFIER_nondet_int();
3946 }
3947#line 524
3948 if (is_lock != 0) {
3949#line 527
3950 return (0);
3951 } else {
3952#line 532
3953 ldv_spin = 1;
3954#line 534
3955 return (1);
3956 }
3957}
3958}
3959#line 701 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3960void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
3961{
3962
3963 {
3964 {
3965#line 707
3966 ldv_check_alloc_flags(ldv_func_arg2);
3967#line 709
3968 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
3969 }
3970#line 710
3971 return ((void *)0);
3972}
3973}
3974#line 712 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2871/dscv_tempdir/dscv/ri/43_1a/drivers/input/joystick/spaceorb.c.p"
3975__inline static void *kzalloc(size_t size , gfp_t flags )
3976{ void *tmp ;
3977
3978 {
3979 {
3980#line 718
3981 ldv_check_alloc_flags(flags);
3982#line 719
3983 tmp = __VERIFIER_nondet_pointer();
3984 }
3985#line 719
3986 return (tmp);
3987}
3988}