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