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