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 54 "include/linux/delay.h"
840enum irqreturn {
841 IRQ_NONE = 0,
842 IRQ_HANDLED = 1,
843 IRQ_WAKE_THREAD = 2
844} ;
845#line 16 "include/linux/irqreturn.h"
846typedef enum irqreturn irqreturn_t;
847#line 41 "include/asm-generic/sections.h"
848struct exception_table_entry {
849 unsigned long insn ;
850 unsigned long fixup ;
851};
852#line 32 "include/linux/input.h"
853struct input_id {
854 __u16 bustype ;
855 __u16 vendor ;
856 __u16 product ;
857 __u16 version ;
858};
859#line 49 "include/linux/input.h"
860struct input_absinfo {
861 __s32 value ;
862 __s32 minimum ;
863 __s32 maximum ;
864 __s32 fuzz ;
865 __s32 flat ;
866 __s32 resolution ;
867};
868#line 77 "include/linux/input.h"
869struct input_keymap_entry {
870 __u8 flags ;
871 __u8 len ;
872 __u16 index ;
873 __u32 keycode ;
874 __u8 scancode[32U] ;
875};
876#line 101 "include/linux/input.h"
877struct ff_replay {
878 __u16 length ;
879 __u16 delay ;
880};
881#line 961 "include/linux/input.h"
882struct ff_trigger {
883 __u16 button ;
884 __u16 interval ;
885};
886#line 971 "include/linux/input.h"
887struct ff_envelope {
888 __u16 attack_length ;
889 __u16 attack_level ;
890 __u16 fade_length ;
891 __u16 fade_level ;
892};
893#line 990 "include/linux/input.h"
894struct ff_constant_effect {
895 __s16 level ;
896 struct ff_envelope envelope ;
897};
898#line 1000 "include/linux/input.h"
899struct ff_ramp_effect {
900 __s16 start_level ;
901 __s16 end_level ;
902 struct ff_envelope envelope ;
903};
904#line 1012 "include/linux/input.h"
905struct ff_condition_effect {
906 __u16 right_saturation ;
907 __u16 left_saturation ;
908 __s16 right_coeff ;
909 __s16 left_coeff ;
910 __u16 deadband ;
911 __s16 center ;
912};
913#line 1033 "include/linux/input.h"
914struct ff_periodic_effect {
915 __u16 waveform ;
916 __u16 period ;
917 __s16 magnitude ;
918 __s16 offset ;
919 __u16 phase ;
920 struct ff_envelope envelope ;
921 __u32 custom_len ;
922 __s16 *custom_data ;
923};
924#line 1064 "include/linux/input.h"
925struct ff_rumble_effect {
926 __u16 strong_magnitude ;
927 __u16 weak_magnitude ;
928};
929#line 1077 "include/linux/input.h"
930union __anonunion_u_136 {
931 struct ff_constant_effect constant ;
932 struct ff_ramp_effect ramp ;
933 struct ff_periodic_effect periodic ;
934 struct ff_condition_effect condition[2U] ;
935 struct ff_rumble_effect rumble ;
936};
937#line 1077 "include/linux/input.h"
938struct ff_effect {
939 __u16 type ;
940 __s16 id ;
941 __u16 direction ;
942 struct ff_trigger trigger ;
943 struct ff_replay replay ;
944 union __anonunion_u_136 u ;
945};
946#line 1116
947struct klist_node;
948#line 1116
949struct klist_node;
950#line 37 "include/linux/klist.h"
951struct klist_node {
952 void *n_klist ;
953 struct list_head n_node ;
954 struct kref n_ref ;
955};
956#line 67
957struct dma_map_ops;
958#line 67 "include/linux/klist.h"
959struct dev_archdata {
960 void *acpi_handle ;
961 struct dma_map_ops *dma_ops ;
962 void *iommu ;
963};
964#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
965struct device_private;
966#line 17
967struct device_private;
968#line 18
969struct device_driver;
970#line 18
971struct device_driver;
972#line 19
973struct driver_private;
974#line 19
975struct driver_private;
976#line 20
977struct class;
978#line 20
979struct class;
980#line 21
981struct subsys_private;
982#line 21
983struct subsys_private;
984#line 22
985struct bus_type;
986#line 22
987struct bus_type;
988#line 23
989struct device_node;
990#line 23
991struct device_node;
992#line 24
993struct iommu_ops;
994#line 24
995struct iommu_ops;
996#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
997struct bus_attribute {
998 struct attribute attr ;
999 ssize_t (*show)(struct bus_type * , char * ) ;
1000 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
1001};
1002#line 51 "include/linux/device.h"
1003struct device_attribute;
1004#line 51
1005struct driver_attribute;
1006#line 51 "include/linux/device.h"
1007struct bus_type {
1008 char const *name ;
1009 char const *dev_name ;
1010 struct device *dev_root ;
1011 struct bus_attribute *bus_attrs ;
1012 struct device_attribute *dev_attrs ;
1013 struct driver_attribute *drv_attrs ;
1014 int (*match)(struct device * , struct device_driver * ) ;
1015 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1016 int (*probe)(struct device * ) ;
1017 int (*remove)(struct device * ) ;
1018 void (*shutdown)(struct device * ) ;
1019 int (*suspend)(struct device * , pm_message_t ) ;
1020 int (*resume)(struct device * ) ;
1021 struct dev_pm_ops const *pm ;
1022 struct iommu_ops *iommu_ops ;
1023 struct subsys_private *p ;
1024};
1025#line 125
1026struct device_type;
1027#line 182
1028struct of_device_id;
1029#line 182 "include/linux/device.h"
1030struct device_driver {
1031 char const *name ;
1032 struct bus_type *bus ;
1033 struct module *owner ;
1034 char const *mod_name ;
1035 bool suppress_bind_attrs ;
1036 struct of_device_id const *of_match_table ;
1037 int (*probe)(struct device * ) ;
1038 int (*remove)(struct device * ) ;
1039 void (*shutdown)(struct device * ) ;
1040 int (*suspend)(struct device * , pm_message_t ) ;
1041 int (*resume)(struct device * ) ;
1042 struct attribute_group const **groups ;
1043 struct dev_pm_ops const *pm ;
1044 struct driver_private *p ;
1045};
1046#line 245 "include/linux/device.h"
1047struct driver_attribute {
1048 struct attribute attr ;
1049 ssize_t (*show)(struct device_driver * , char * ) ;
1050 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
1051};
1052#line 299
1053struct class_attribute;
1054#line 299 "include/linux/device.h"
1055struct class {
1056 char const *name ;
1057 struct module *owner ;
1058 struct class_attribute *class_attrs ;
1059 struct device_attribute *dev_attrs ;
1060 struct bin_attribute *dev_bin_attrs ;
1061 struct kobject *dev_kobj ;
1062 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1063 char *(*devnode)(struct device * , umode_t * ) ;
1064 void (*class_release)(struct class * ) ;
1065 void (*dev_release)(struct device * ) ;
1066 int (*suspend)(struct device * , pm_message_t ) ;
1067 int (*resume)(struct device * ) ;
1068 struct kobj_ns_type_operations const *ns_type ;
1069 void const *(*namespace)(struct device * ) ;
1070 struct dev_pm_ops const *pm ;
1071 struct subsys_private *p ;
1072};
1073#line 394 "include/linux/device.h"
1074struct class_attribute {
1075 struct attribute attr ;
1076 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1077 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1078 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
1079};
1080#line 447 "include/linux/device.h"
1081struct device_type {
1082 char const *name ;
1083 struct attribute_group const **groups ;
1084 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1085 char *(*devnode)(struct device * , umode_t * ) ;
1086 void (*release)(struct device * ) ;
1087 struct dev_pm_ops const *pm ;
1088};
1089#line 474 "include/linux/device.h"
1090struct device_attribute {
1091 struct attribute attr ;
1092 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1093 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1094 size_t ) ;
1095};
1096#line 557 "include/linux/device.h"
1097struct device_dma_parameters {
1098 unsigned int max_segment_size ;
1099 unsigned long segment_boundary_mask ;
1100};
1101#line 567
1102struct dma_coherent_mem;
1103#line 567 "include/linux/device.h"
1104struct device {
1105 struct device *parent ;
1106 struct device_private *p ;
1107 struct kobject kobj ;
1108 char const *init_name ;
1109 struct device_type const *type ;
1110 struct mutex mutex ;
1111 struct bus_type *bus ;
1112 struct device_driver *driver ;
1113 void *platform_data ;
1114 struct dev_pm_info power ;
1115 struct dev_pm_domain *pm_domain ;
1116 int numa_node ;
1117 u64 *dma_mask ;
1118 u64 coherent_dma_mask ;
1119 struct device_dma_parameters *dma_parms ;
1120 struct list_head dma_pools ;
1121 struct dma_coherent_mem *dma_mem ;
1122 struct dev_archdata archdata ;
1123 struct device_node *of_node ;
1124 dev_t devt ;
1125 u32 id ;
1126 spinlock_t devres_lock ;
1127 struct list_head devres_head ;
1128 struct klist_node knode_class ;
1129 struct class *class ;
1130 struct attribute_group const **groups ;
1131 void (*release)(struct device * ) ;
1132};
1133#line 681 "include/linux/device.h"
1134struct wakeup_source {
1135 char const *name ;
1136 struct list_head entry ;
1137 spinlock_t lock ;
1138 struct timer_list timer ;
1139 unsigned long timer_expires ;
1140 ktime_t total_time ;
1141 ktime_t max_time ;
1142 ktime_t last_time ;
1143 unsigned long event_count ;
1144 unsigned long active_count ;
1145 unsigned long relax_count ;
1146 unsigned long hit_count ;
1147 unsigned char active : 1 ;
1148};
1149#line 994
1150struct block_device;
1151#line 994
1152struct block_device;
1153#line 93 "include/linux/bit_spinlock.h"
1154struct hlist_bl_node;
1155#line 93 "include/linux/bit_spinlock.h"
1156struct hlist_bl_head {
1157 struct hlist_bl_node *first ;
1158};
1159#line 36 "include/linux/list_bl.h"
1160struct hlist_bl_node {
1161 struct hlist_bl_node *next ;
1162 struct hlist_bl_node **pprev ;
1163};
1164#line 114 "include/linux/rculist_bl.h"
1165struct nameidata;
1166#line 114
1167struct nameidata;
1168#line 115
1169struct path;
1170#line 115
1171struct path;
1172#line 116
1173struct vfsmount;
1174#line 116
1175struct vfsmount;
1176#line 117 "include/linux/rculist_bl.h"
1177struct qstr {
1178 unsigned int hash ;
1179 unsigned int len ;
1180 unsigned char const *name ;
1181};
1182#line 72 "include/linux/dcache.h"
1183struct inode;
1184#line 72
1185struct dentry_operations;
1186#line 72
1187struct super_block;
1188#line 72 "include/linux/dcache.h"
1189union __anonunion_d_u_137 {
1190 struct list_head d_child ;
1191 struct rcu_head d_rcu ;
1192};
1193#line 72 "include/linux/dcache.h"
1194struct dentry {
1195 unsigned int d_flags ;
1196 seqcount_t d_seq ;
1197 struct hlist_bl_node d_hash ;
1198 struct dentry *d_parent ;
1199 struct qstr d_name ;
1200 struct inode *d_inode ;
1201 unsigned char d_iname[32U] ;
1202 unsigned int d_count ;
1203 spinlock_t d_lock ;
1204 struct dentry_operations const *d_op ;
1205 struct super_block *d_sb ;
1206 unsigned long d_time ;
1207 void *d_fsdata ;
1208 struct list_head d_lru ;
1209 union __anonunion_d_u_137 d_u ;
1210 struct list_head d_subdirs ;
1211 struct list_head d_alias ;
1212};
1213#line 123 "include/linux/dcache.h"
1214struct dentry_operations {
1215 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1216 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1217 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1218 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1219 int (*d_delete)(struct dentry const * ) ;
1220 void (*d_release)(struct dentry * ) ;
1221 void (*d_prune)(struct dentry * ) ;
1222 void (*d_iput)(struct dentry * , struct inode * ) ;
1223 char *(*d_dname)(struct dentry * , char * , int ) ;
1224 struct vfsmount *(*d_automount)(struct path * ) ;
1225 int (*d_manage)(struct dentry * , bool ) ;
1226};
1227#line 402 "include/linux/dcache.h"
1228struct path {
1229 struct vfsmount *mnt ;
1230 struct dentry *dentry ;
1231};
1232#line 58 "include/linux/radix-tree.h"
1233struct radix_tree_node;
1234#line 58 "include/linux/radix-tree.h"
1235struct radix_tree_root {
1236 unsigned int height ;
1237 gfp_t gfp_mask ;
1238 struct radix_tree_node *rnode ;
1239};
1240#line 377
1241struct prio_tree_node;
1242#line 19 "include/linux/prio_tree.h"
1243struct prio_tree_node {
1244 struct prio_tree_node *left ;
1245 struct prio_tree_node *right ;
1246 struct prio_tree_node *parent ;
1247 unsigned long start ;
1248 unsigned long last ;
1249};
1250#line 27 "include/linux/prio_tree.h"
1251struct prio_tree_root {
1252 struct prio_tree_node *prio_tree_node ;
1253 unsigned short index_bits ;
1254 unsigned short raw ;
1255};
1256#line 111
1257enum pid_type {
1258 PIDTYPE_PID = 0,
1259 PIDTYPE_PGID = 1,
1260 PIDTYPE_SID = 2,
1261 PIDTYPE_MAX = 3
1262} ;
1263#line 118
1264struct pid_namespace;
1265#line 118 "include/linux/prio_tree.h"
1266struct upid {
1267 int nr ;
1268 struct pid_namespace *ns ;
1269 struct hlist_node pid_chain ;
1270};
1271#line 56 "include/linux/pid.h"
1272struct pid {
1273 atomic_t count ;
1274 unsigned int level ;
1275 struct hlist_head tasks[3U] ;
1276 struct rcu_head rcu ;
1277 struct upid numbers[1U] ;
1278};
1279#line 45 "include/linux/semaphore.h"
1280struct fiemap_extent {
1281 __u64 fe_logical ;
1282 __u64 fe_physical ;
1283 __u64 fe_length ;
1284 __u64 fe_reserved64[2U] ;
1285 __u32 fe_flags ;
1286 __u32 fe_reserved[3U] ;
1287};
1288#line 38 "include/linux/fiemap.h"
1289struct shrink_control {
1290 gfp_t gfp_mask ;
1291 unsigned long nr_to_scan ;
1292};
1293#line 14 "include/linux/shrinker.h"
1294struct shrinker {
1295 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1296 int seeks ;
1297 long batch ;
1298 struct list_head list ;
1299 atomic_long_t nr_in_batch ;
1300};
1301#line 43
1302enum migrate_mode {
1303 MIGRATE_ASYNC = 0,
1304 MIGRATE_SYNC_LIGHT = 1,
1305 MIGRATE_SYNC = 2
1306} ;
1307#line 49
1308struct export_operations;
1309#line 49
1310struct export_operations;
1311#line 51
1312struct iovec;
1313#line 51
1314struct iovec;
1315#line 52
1316struct kiocb;
1317#line 52
1318struct kiocb;
1319#line 53
1320struct pipe_inode_info;
1321#line 53
1322struct pipe_inode_info;
1323#line 54
1324struct poll_table_struct;
1325#line 54
1326struct poll_table_struct;
1327#line 55
1328struct kstatfs;
1329#line 55
1330struct kstatfs;
1331#line 435 "include/linux/fs.h"
1332struct iattr {
1333 unsigned int ia_valid ;
1334 umode_t ia_mode ;
1335 uid_t ia_uid ;
1336 gid_t ia_gid ;
1337 loff_t ia_size ;
1338 struct timespec ia_atime ;
1339 struct timespec ia_mtime ;
1340 struct timespec ia_ctime ;
1341 struct file *ia_file ;
1342};
1343#line 119 "include/linux/quota.h"
1344struct if_dqinfo {
1345 __u64 dqi_bgrace ;
1346 __u64 dqi_igrace ;
1347 __u32 dqi_flags ;
1348 __u32 dqi_valid ;
1349};
1350#line 176 "include/linux/percpu_counter.h"
1351struct fs_disk_quota {
1352 __s8 d_version ;
1353 __s8 d_flags ;
1354 __u16 d_fieldmask ;
1355 __u32 d_id ;
1356 __u64 d_blk_hardlimit ;
1357 __u64 d_blk_softlimit ;
1358 __u64 d_ino_hardlimit ;
1359 __u64 d_ino_softlimit ;
1360 __u64 d_bcount ;
1361 __u64 d_icount ;
1362 __s32 d_itimer ;
1363 __s32 d_btimer ;
1364 __u16 d_iwarns ;
1365 __u16 d_bwarns ;
1366 __s32 d_padding2 ;
1367 __u64 d_rtb_hardlimit ;
1368 __u64 d_rtb_softlimit ;
1369 __u64 d_rtbcount ;
1370 __s32 d_rtbtimer ;
1371 __u16 d_rtbwarns ;
1372 __s16 d_padding3 ;
1373 char d_padding4[8U] ;
1374};
1375#line 75 "include/linux/dqblk_xfs.h"
1376struct fs_qfilestat {
1377 __u64 qfs_ino ;
1378 __u64 qfs_nblks ;
1379 __u32 qfs_nextents ;
1380};
1381#line 150 "include/linux/dqblk_xfs.h"
1382typedef struct fs_qfilestat fs_qfilestat_t;
1383#line 151 "include/linux/dqblk_xfs.h"
1384struct fs_quota_stat {
1385 __s8 qs_version ;
1386 __u16 qs_flags ;
1387 __s8 qs_pad ;
1388 fs_qfilestat_t qs_uquota ;
1389 fs_qfilestat_t qs_gquota ;
1390 __u32 qs_incoredqs ;
1391 __s32 qs_btimelimit ;
1392 __s32 qs_itimelimit ;
1393 __s32 qs_rtbtimelimit ;
1394 __u16 qs_bwarnlimit ;
1395 __u16 qs_iwarnlimit ;
1396};
1397#line 165
1398struct dquot;
1399#line 165
1400struct dquot;
1401#line 185 "include/linux/quota.h"
1402typedef __kernel_uid32_t qid_t;
1403#line 186 "include/linux/quota.h"
1404typedef long long qsize_t;
1405#line 189 "include/linux/quota.h"
1406struct mem_dqblk {
1407 qsize_t dqb_bhardlimit ;
1408 qsize_t dqb_bsoftlimit ;
1409 qsize_t dqb_curspace ;
1410 qsize_t dqb_rsvspace ;
1411 qsize_t dqb_ihardlimit ;
1412 qsize_t dqb_isoftlimit ;
1413 qsize_t dqb_curinodes ;
1414 time_t dqb_btime ;
1415 time_t dqb_itime ;
1416};
1417#line 211
1418struct quota_format_type;
1419#line 211
1420struct quota_format_type;
1421#line 212 "include/linux/quota.h"
1422struct mem_dqinfo {
1423 struct quota_format_type *dqi_format ;
1424 int dqi_fmt_id ;
1425 struct list_head dqi_dirty_list ;
1426 unsigned long dqi_flags ;
1427 unsigned int dqi_bgrace ;
1428 unsigned int dqi_igrace ;
1429 qsize_t dqi_maxblimit ;
1430 qsize_t dqi_maxilimit ;
1431 void *dqi_priv ;
1432};
1433#line 275 "include/linux/quota.h"
1434struct dquot {
1435 struct hlist_node dq_hash ;
1436 struct list_head dq_inuse ;
1437 struct list_head dq_free ;
1438 struct list_head dq_dirty ;
1439 struct mutex dq_lock ;
1440 atomic_t dq_count ;
1441 wait_queue_head_t dq_wait_unused ;
1442 struct super_block *dq_sb ;
1443 unsigned int dq_id ;
1444 loff_t dq_off ;
1445 unsigned long dq_flags ;
1446 short dq_type ;
1447 struct mem_dqblk dq_dqb ;
1448};
1449#line 303 "include/linux/quota.h"
1450struct quota_format_ops {
1451 int (*check_quota_file)(struct super_block * , int ) ;
1452 int (*read_file_info)(struct super_block * , int ) ;
1453 int (*write_file_info)(struct super_block * , int ) ;
1454 int (*free_file_info)(struct super_block * , int ) ;
1455 int (*read_dqblk)(struct dquot * ) ;
1456 int (*commit_dqblk)(struct dquot * ) ;
1457 int (*release_dqblk)(struct dquot * ) ;
1458};
1459#line 314 "include/linux/quota.h"
1460struct dquot_operations {
1461 int (*write_dquot)(struct dquot * ) ;
1462 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1463 void (*destroy_dquot)(struct dquot * ) ;
1464 int (*acquire_dquot)(struct dquot * ) ;
1465 int (*release_dquot)(struct dquot * ) ;
1466 int (*mark_dirty)(struct dquot * ) ;
1467 int (*write_info)(struct super_block * , int ) ;
1468 qsize_t *(*get_reserved_space)(struct inode * ) ;
1469};
1470#line 328 "include/linux/quota.h"
1471struct quotactl_ops {
1472 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1473 int (*quota_on_meta)(struct super_block * , int , int ) ;
1474 int (*quota_off)(struct super_block * , int ) ;
1475 int (*quota_sync)(struct super_block * , int , int ) ;
1476 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1477 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1478 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1479 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1480 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1481 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1482};
1483#line 344 "include/linux/quota.h"
1484struct quota_format_type {
1485 int qf_fmt_id ;
1486 struct quota_format_ops const *qf_ops ;
1487 struct module *qf_owner ;
1488 struct quota_format_type *qf_next ;
1489};
1490#line 390 "include/linux/quota.h"
1491struct quota_info {
1492 unsigned int flags ;
1493 struct mutex dqio_mutex ;
1494 struct mutex dqonoff_mutex ;
1495 struct rw_semaphore dqptr_sem ;
1496 struct inode *files[2U] ;
1497 struct mem_dqinfo info[2U] ;
1498 struct quota_format_ops const *ops[2U] ;
1499};
1500#line 421
1501struct address_space;
1502#line 421
1503struct address_space;
1504#line 422
1505struct writeback_control;
1506#line 422
1507struct writeback_control;
1508#line 585 "include/linux/fs.h"
1509union __anonunion_arg_140 {
1510 char *buf ;
1511 void *data ;
1512};
1513#line 585 "include/linux/fs.h"
1514struct __anonstruct_read_descriptor_t_139 {
1515 size_t written ;
1516 size_t count ;
1517 union __anonunion_arg_140 arg ;
1518 int error ;
1519};
1520#line 585 "include/linux/fs.h"
1521typedef struct __anonstruct_read_descriptor_t_139 read_descriptor_t;
1522#line 588 "include/linux/fs.h"
1523struct address_space_operations {
1524 int (*writepage)(struct page * , struct writeback_control * ) ;
1525 int (*readpage)(struct file * , struct page * ) ;
1526 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1527 int (*set_page_dirty)(struct page * ) ;
1528 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1529 unsigned int ) ;
1530 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
1531 unsigned int , struct page ** , void ** ) ;
1532 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
1533 unsigned int , struct page * , void * ) ;
1534 sector_t (*bmap)(struct address_space * , sector_t ) ;
1535 void (*invalidatepage)(struct page * , unsigned long ) ;
1536 int (*releasepage)(struct page * , gfp_t ) ;
1537 void (*freepage)(struct page * ) ;
1538 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
1539 unsigned long ) ;
1540 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1541 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1542 int (*launder_page)(struct page * ) ;
1543 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1544 int (*error_remove_page)(struct address_space * , struct page * ) ;
1545};
1546#line 642
1547struct backing_dev_info;
1548#line 642
1549struct backing_dev_info;
1550#line 643 "include/linux/fs.h"
1551struct address_space {
1552 struct inode *host ;
1553 struct radix_tree_root page_tree ;
1554 spinlock_t tree_lock ;
1555 unsigned int i_mmap_writable ;
1556 struct prio_tree_root i_mmap ;
1557 struct list_head i_mmap_nonlinear ;
1558 struct mutex i_mmap_mutex ;
1559 unsigned long nrpages ;
1560 unsigned long writeback_index ;
1561 struct address_space_operations const *a_ops ;
1562 unsigned long flags ;
1563 struct backing_dev_info *backing_dev_info ;
1564 spinlock_t private_lock ;
1565 struct list_head private_list ;
1566 struct address_space *assoc_mapping ;
1567};
1568#line 664
1569struct request_queue;
1570#line 664
1571struct request_queue;
1572#line 665
1573struct hd_struct;
1574#line 665
1575struct gendisk;
1576#line 665 "include/linux/fs.h"
1577struct block_device {
1578 dev_t bd_dev ;
1579 int bd_openers ;
1580 struct inode *bd_inode ;
1581 struct super_block *bd_super ;
1582 struct mutex bd_mutex ;
1583 struct list_head bd_inodes ;
1584 void *bd_claiming ;
1585 void *bd_holder ;
1586 int bd_holders ;
1587 bool bd_write_holder ;
1588 struct list_head bd_holder_disks ;
1589 struct block_device *bd_contains ;
1590 unsigned int bd_block_size ;
1591 struct hd_struct *bd_part ;
1592 unsigned int bd_part_count ;
1593 int bd_invalidated ;
1594 struct gendisk *bd_disk ;
1595 struct request_queue *bd_queue ;
1596 struct list_head bd_list ;
1597 unsigned long bd_private ;
1598 int bd_fsfreeze_count ;
1599 struct mutex bd_fsfreeze_mutex ;
1600};
1601#line 737
1602struct posix_acl;
1603#line 737
1604struct posix_acl;
1605#line 738
1606struct inode_operations;
1607#line 738 "include/linux/fs.h"
1608union __anonunion_ldv_18207_141 {
1609 unsigned int const i_nlink ;
1610 unsigned int __i_nlink ;
1611};
1612#line 738 "include/linux/fs.h"
1613union __anonunion_ldv_18226_142 {
1614 struct list_head i_dentry ;
1615 struct rcu_head i_rcu ;
1616};
1617#line 738
1618struct file_operations;
1619#line 738
1620struct file_lock;
1621#line 738
1622struct cdev;
1623#line 738 "include/linux/fs.h"
1624union __anonunion_ldv_18244_143 {
1625 struct pipe_inode_info *i_pipe ;
1626 struct block_device *i_bdev ;
1627 struct cdev *i_cdev ;
1628};
1629#line 738 "include/linux/fs.h"
1630struct inode {
1631 umode_t i_mode ;
1632 unsigned short i_opflags ;
1633 uid_t i_uid ;
1634 gid_t i_gid ;
1635 unsigned int i_flags ;
1636 struct posix_acl *i_acl ;
1637 struct posix_acl *i_default_acl ;
1638 struct inode_operations const *i_op ;
1639 struct super_block *i_sb ;
1640 struct address_space *i_mapping ;
1641 void *i_security ;
1642 unsigned long i_ino ;
1643 union __anonunion_ldv_18207_141 ldv_18207 ;
1644 dev_t i_rdev ;
1645 struct timespec i_atime ;
1646 struct timespec i_mtime ;
1647 struct timespec i_ctime ;
1648 spinlock_t i_lock ;
1649 unsigned short i_bytes ;
1650 blkcnt_t i_blocks ;
1651 loff_t i_size ;
1652 unsigned long i_state ;
1653 struct mutex i_mutex ;
1654 unsigned long dirtied_when ;
1655 struct hlist_node i_hash ;
1656 struct list_head i_wb_list ;
1657 struct list_head i_lru ;
1658 struct list_head i_sb_list ;
1659 union __anonunion_ldv_18226_142 ldv_18226 ;
1660 atomic_t i_count ;
1661 unsigned int i_blkbits ;
1662 u64 i_version ;
1663 atomic_t i_dio_count ;
1664 atomic_t i_writecount ;
1665 struct file_operations const *i_fop ;
1666 struct file_lock *i_flock ;
1667 struct address_space i_data ;
1668 struct dquot *i_dquot[2U] ;
1669 struct list_head i_devices ;
1670 union __anonunion_ldv_18244_143 ldv_18244 ;
1671 __u32 i_generation ;
1672 __u32 i_fsnotify_mask ;
1673 struct hlist_head i_fsnotify_marks ;
1674 atomic_t i_readcount ;
1675 void *i_private ;
1676};
1677#line 941 "include/linux/fs.h"
1678struct fown_struct {
1679 rwlock_t lock ;
1680 struct pid *pid ;
1681 enum pid_type pid_type ;
1682 uid_t uid ;
1683 uid_t euid ;
1684 int signum ;
1685};
1686#line 949 "include/linux/fs.h"
1687struct file_ra_state {
1688 unsigned long start ;
1689 unsigned int size ;
1690 unsigned int async_size ;
1691 unsigned int ra_pages ;
1692 unsigned int mmap_miss ;
1693 loff_t prev_pos ;
1694};
1695#line 972 "include/linux/fs.h"
1696union __anonunion_f_u_144 {
1697 struct list_head fu_list ;
1698 struct rcu_head fu_rcuhead ;
1699};
1700#line 972 "include/linux/fs.h"
1701struct file {
1702 union __anonunion_f_u_144 f_u ;
1703 struct path f_path ;
1704 struct file_operations const *f_op ;
1705 spinlock_t f_lock ;
1706 int f_sb_list_cpu ;
1707 atomic_long_t f_count ;
1708 unsigned int f_flags ;
1709 fmode_t f_mode ;
1710 loff_t f_pos ;
1711 struct fown_struct f_owner ;
1712 struct cred const *f_cred ;
1713 struct file_ra_state f_ra ;
1714 u64 f_version ;
1715 void *f_security ;
1716 void *private_data ;
1717 struct list_head f_ep_links ;
1718 struct list_head f_tfile_llink ;
1719 struct address_space *f_mapping ;
1720 unsigned long f_mnt_write_state ;
1721};
1722#line 1111
1723struct files_struct;
1724#line 1111 "include/linux/fs.h"
1725typedef struct files_struct *fl_owner_t;
1726#line 1112 "include/linux/fs.h"
1727struct file_lock_operations {
1728 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1729 void (*fl_release_private)(struct file_lock * ) ;
1730};
1731#line 1117 "include/linux/fs.h"
1732struct lock_manager_operations {
1733 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1734 void (*lm_notify)(struct file_lock * ) ;
1735 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1736 void (*lm_release_private)(struct file_lock * ) ;
1737 void (*lm_break)(struct file_lock * ) ;
1738 int (*lm_change)(struct file_lock ** , int ) ;
1739};
1740#line 1134
1741struct nlm_lockowner;
1742#line 1134
1743struct nlm_lockowner;
1744#line 1135 "include/linux/fs.h"
1745struct nfs_lock_info {
1746 u32 state ;
1747 struct nlm_lockowner *owner ;
1748 struct list_head list ;
1749};
1750#line 14 "include/linux/nfs_fs_i.h"
1751struct nfs4_lock_state;
1752#line 14
1753struct nfs4_lock_state;
1754#line 15 "include/linux/nfs_fs_i.h"
1755struct nfs4_lock_info {
1756 struct nfs4_lock_state *owner ;
1757};
1758#line 19
1759struct fasync_struct;
1760#line 19 "include/linux/nfs_fs_i.h"
1761struct __anonstruct_afs_146 {
1762 struct list_head link ;
1763 int state ;
1764};
1765#line 19 "include/linux/nfs_fs_i.h"
1766union __anonunion_fl_u_145 {
1767 struct nfs_lock_info nfs_fl ;
1768 struct nfs4_lock_info nfs4_fl ;
1769 struct __anonstruct_afs_146 afs ;
1770};
1771#line 19 "include/linux/nfs_fs_i.h"
1772struct file_lock {
1773 struct file_lock *fl_next ;
1774 struct list_head fl_link ;
1775 struct list_head fl_block ;
1776 fl_owner_t fl_owner ;
1777 unsigned int fl_flags ;
1778 unsigned char fl_type ;
1779 unsigned int fl_pid ;
1780 struct pid *fl_nspid ;
1781 wait_queue_head_t fl_wait ;
1782 struct file *fl_file ;
1783 loff_t fl_start ;
1784 loff_t fl_end ;
1785 struct fasync_struct *fl_fasync ;
1786 unsigned long fl_break_time ;
1787 unsigned long fl_downgrade_time ;
1788 struct file_lock_operations const *fl_ops ;
1789 struct lock_manager_operations const *fl_lmops ;
1790 union __anonunion_fl_u_145 fl_u ;
1791};
1792#line 1221 "include/linux/fs.h"
1793struct fasync_struct {
1794 spinlock_t fa_lock ;
1795 int magic ;
1796 int fa_fd ;
1797 struct fasync_struct *fa_next ;
1798 struct file *fa_file ;
1799 struct rcu_head fa_rcu ;
1800};
1801#line 1417
1802struct file_system_type;
1803#line 1417
1804struct super_operations;
1805#line 1417
1806struct xattr_handler;
1807#line 1417
1808struct mtd_info;
1809#line 1417 "include/linux/fs.h"
1810struct super_block {
1811 struct list_head s_list ;
1812 dev_t s_dev ;
1813 unsigned char s_dirt ;
1814 unsigned char s_blocksize_bits ;
1815 unsigned long s_blocksize ;
1816 loff_t s_maxbytes ;
1817 struct file_system_type *s_type ;
1818 struct super_operations const *s_op ;
1819 struct dquot_operations const *dq_op ;
1820 struct quotactl_ops const *s_qcop ;
1821 struct export_operations const *s_export_op ;
1822 unsigned long s_flags ;
1823 unsigned long s_magic ;
1824 struct dentry *s_root ;
1825 struct rw_semaphore s_umount ;
1826 struct mutex s_lock ;
1827 int s_count ;
1828 atomic_t s_active ;
1829 void *s_security ;
1830 struct xattr_handler const **s_xattr ;
1831 struct list_head s_inodes ;
1832 struct hlist_bl_head s_anon ;
1833 struct list_head *s_files ;
1834 struct list_head s_mounts ;
1835 struct list_head s_dentry_lru ;
1836 int s_nr_dentry_unused ;
1837 spinlock_t s_inode_lru_lock ;
1838 struct list_head s_inode_lru ;
1839 int s_nr_inodes_unused ;
1840 struct block_device *s_bdev ;
1841 struct backing_dev_info *s_bdi ;
1842 struct mtd_info *s_mtd ;
1843 struct hlist_node s_instances ;
1844 struct quota_info s_dquot ;
1845 int s_frozen ;
1846 wait_queue_head_t s_wait_unfrozen ;
1847 char s_id[32U] ;
1848 u8 s_uuid[16U] ;
1849 void *s_fs_info ;
1850 unsigned int s_max_links ;
1851 fmode_t s_mode ;
1852 u32 s_time_gran ;
1853 struct mutex s_vfs_rename_mutex ;
1854 char *s_subtype ;
1855 char *s_options ;
1856 struct dentry_operations const *s_d_op ;
1857 int cleancache_poolid ;
1858 struct shrinker s_shrink ;
1859 atomic_long_t s_remove_count ;
1860 int s_readonly_remount ;
1861};
1862#line 1563 "include/linux/fs.h"
1863struct fiemap_extent_info {
1864 unsigned int fi_flags ;
1865 unsigned int fi_extents_mapped ;
1866 unsigned int fi_extents_max ;
1867 struct fiemap_extent *fi_extents_start ;
1868};
1869#line 1602 "include/linux/fs.h"
1870struct file_operations {
1871 struct module *owner ;
1872 loff_t (*llseek)(struct file * , loff_t , int ) ;
1873 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1874 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1875 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1876 loff_t ) ;
1877 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1878 loff_t ) ;
1879 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1880 loff_t , u64 , unsigned int ) ) ;
1881 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1882 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1883 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1884 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1885 int (*open)(struct inode * , struct file * ) ;
1886 int (*flush)(struct file * , fl_owner_t ) ;
1887 int (*release)(struct inode * , struct file * ) ;
1888 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
1889 int (*aio_fsync)(struct kiocb * , int ) ;
1890 int (*fasync)(int , struct file * , int ) ;
1891 int (*lock)(struct file * , int , struct file_lock * ) ;
1892 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1893 int ) ;
1894 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1895 unsigned long , unsigned long ) ;
1896 int (*check_flags)(int ) ;
1897 int (*flock)(struct file * , int , struct file_lock * ) ;
1898 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1899 unsigned int ) ;
1900 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1901 unsigned int ) ;
1902 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1903 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
1904};
1905#line 1637 "include/linux/fs.h"
1906struct inode_operations {
1907 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1908 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1909 int (*permission)(struct inode * , int ) ;
1910 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1911 int (*readlink)(struct dentry * , char * , int ) ;
1912 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1913 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
1914 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1915 int (*unlink)(struct inode * , struct dentry * ) ;
1916 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
1917 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
1918 int (*rmdir)(struct inode * , struct dentry * ) ;
1919 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
1920 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1921 void (*truncate)(struct inode * ) ;
1922 int (*setattr)(struct dentry * , struct iattr * ) ;
1923 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
1924 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
1925 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
1926 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
1927 int (*removexattr)(struct dentry * , char const * ) ;
1928 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
1929 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
1930};
1931#line 1682 "include/linux/fs.h"
1932struct super_operations {
1933 struct inode *(*alloc_inode)(struct super_block * ) ;
1934 void (*destroy_inode)(struct inode * ) ;
1935 void (*dirty_inode)(struct inode * , int ) ;
1936 int (*write_inode)(struct inode * , struct writeback_control * ) ;
1937 int (*drop_inode)(struct inode * ) ;
1938 void (*evict_inode)(struct inode * ) ;
1939 void (*put_super)(struct super_block * ) ;
1940 void (*write_super)(struct super_block * ) ;
1941 int (*sync_fs)(struct super_block * , int ) ;
1942 int (*freeze_fs)(struct super_block * ) ;
1943 int (*unfreeze_fs)(struct super_block * ) ;
1944 int (*statfs)(struct dentry * , struct kstatfs * ) ;
1945 int (*remount_fs)(struct super_block * , int * , char * ) ;
1946 void (*umount_begin)(struct super_block * ) ;
1947 int (*show_options)(struct seq_file * , struct dentry * ) ;
1948 int (*show_devname)(struct seq_file * , struct dentry * ) ;
1949 int (*show_path)(struct seq_file * , struct dentry * ) ;
1950 int (*show_stats)(struct seq_file * , struct dentry * ) ;
1951 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
1952 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
1953 loff_t ) ;
1954 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
1955 int (*nr_cached_objects)(struct super_block * ) ;
1956 void (*free_cached_objects)(struct super_block * , int ) ;
1957};
1958#line 1834 "include/linux/fs.h"
1959struct file_system_type {
1960 char const *name ;
1961 int fs_flags ;
1962 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
1963 void (*kill_sb)(struct super_block * ) ;
1964 struct module *owner ;
1965 struct file_system_type *next ;
1966 struct hlist_head fs_supers ;
1967 struct lock_class_key s_lock_key ;
1968 struct lock_class_key s_umount_key ;
1969 struct lock_class_key s_vfs_rename_key ;
1970 struct lock_class_key i_lock_key ;
1971 struct lock_class_key i_mutex_key ;
1972 struct lock_class_key i_mutex_dir_key ;
1973};
1974#line 12 "include/linux/mod_devicetable.h"
1975typedef unsigned long kernel_ulong_t;
1976#line 205 "include/linux/mod_devicetable.h"
1977struct serio_device_id {
1978 __u8 type ;
1979 __u8 extra ;
1980 __u8 id ;
1981 __u8 proto ;
1982};
1983#line 215 "include/linux/mod_devicetable.h"
1984struct of_device_id {
1985 char name[32U] ;
1986 char type[32U] ;
1987 char compatible[128U] ;
1988 void *data ;
1989};
1990#line 269 "include/linux/mod_devicetable.h"
1991struct input_device_id {
1992 kernel_ulong_t flags ;
1993 __u16 bustype ;
1994 __u16 vendor ;
1995 __u16 product ;
1996 __u16 version ;
1997 kernel_ulong_t evbit[1U] ;
1998 kernel_ulong_t keybit[12U] ;
1999 kernel_ulong_t relbit[1U] ;
2000 kernel_ulong_t absbit[1U] ;
2001 kernel_ulong_t mscbit[1U] ;
2002 kernel_ulong_t ledbit[1U] ;
2003 kernel_ulong_t sndbit[1U] ;
2004 kernel_ulong_t ffbit[2U] ;
2005 kernel_ulong_t swbit[1U] ;
2006 kernel_ulong_t driver_info ;
2007};
2008#line 584
2009struct ff_device;
2010#line 584
2011struct input_mt_slot;
2012#line 584
2013struct input_handle;
2014#line 584 "include/linux/mod_devicetable.h"
2015struct input_dev {
2016 char const *name ;
2017 char const *phys ;
2018 char const *uniq ;
2019 struct input_id id ;
2020 unsigned long propbit[1U] ;
2021 unsigned long evbit[1U] ;
2022 unsigned long keybit[12U] ;
2023 unsigned long relbit[1U] ;
2024 unsigned long absbit[1U] ;
2025 unsigned long mscbit[1U] ;
2026 unsigned long ledbit[1U] ;
2027 unsigned long sndbit[1U] ;
2028 unsigned long ffbit[2U] ;
2029 unsigned long swbit[1U] ;
2030 unsigned int hint_events_per_packet ;
2031 unsigned int keycodemax ;
2032 unsigned int keycodesize ;
2033 void *keycode ;
2034 int (*setkeycode)(struct input_dev * , struct input_keymap_entry const * , unsigned int * ) ;
2035 int (*getkeycode)(struct input_dev * , struct input_keymap_entry * ) ;
2036 struct ff_device *ff ;
2037 unsigned int repeat_key ;
2038 struct timer_list timer ;
2039 int rep[2U] ;
2040 struct input_mt_slot *mt ;
2041 int mtsize ;
2042 int slot ;
2043 int trkid ;
2044 struct input_absinfo *absinfo ;
2045 unsigned long key[12U] ;
2046 unsigned long led[1U] ;
2047 unsigned long snd[1U] ;
2048 unsigned long sw[1U] ;
2049 int (*open)(struct input_dev * ) ;
2050 void (*close)(struct input_dev * ) ;
2051 int (*flush)(struct input_dev * , struct file * ) ;
2052 int (*event)(struct input_dev * , unsigned int , unsigned int , int ) ;
2053 struct input_handle *grab ;
2054 spinlock_t event_lock ;
2055 struct mutex mutex ;
2056 unsigned int users ;
2057 bool going_away ;
2058 bool sync ;
2059 struct device dev ;
2060 struct list_head h_list ;
2061 struct list_head node ;
2062};
2063#line 1319 "include/linux/input.h"
2064struct input_handler {
2065 void *private ;
2066 void (*event)(struct input_handle * , unsigned int , unsigned int , int ) ;
2067 bool (*filter)(struct input_handle * , unsigned int , unsigned int , int ) ;
2068 bool (*match)(struct input_handler * , struct input_dev * ) ;
2069 int (*connect)(struct input_handler * , struct input_dev * , struct input_device_id const * ) ;
2070 void (*disconnect)(struct input_handle * ) ;
2071 void (*start)(struct input_handle * ) ;
2072 struct file_operations const *fops ;
2073 int minor ;
2074 char const *name ;
2075 struct input_device_id const *id_table ;
2076 struct list_head h_list ;
2077 struct list_head node ;
2078};
2079#line 1429 "include/linux/input.h"
2080struct input_handle {
2081 void *private ;
2082 int open ;
2083 char const *name ;
2084 struct input_dev *dev ;
2085 struct input_handler *handler ;
2086 struct list_head d_node ;
2087 struct list_head h_node ;
2088};
2089#line 1591 "include/linux/input.h"
2090struct ff_device {
2091 int (*upload)(struct input_dev * , struct ff_effect * , struct ff_effect * ) ;
2092 int (*erase)(struct input_dev * , int ) ;
2093 int (*playback)(struct input_dev * , int , int ) ;
2094 void (*set_gain)(struct input_dev * , u16 ) ;
2095 void (*set_autocenter)(struct input_dev * , u16 ) ;
2096 void (*destroy)(struct ff_device * ) ;
2097 void *private ;
2098 unsigned long ffbit[2U] ;
2099 struct mutex mutex ;
2100 int max_effects ;
2101 struct ff_effect *effects ;
2102 struct file *effect_owners[0U] ;
2103};
2104#line 1650
2105struct serio_driver;
2106#line 1650 "include/linux/input.h"
2107struct serio {
2108 void *port_data ;
2109 char name[32U] ;
2110 char phys[32U] ;
2111 bool manual_bind ;
2112 struct serio_device_id id ;
2113 spinlock_t lock ;
2114 int (*write)(struct serio * , unsigned char ) ;
2115 int (*open)(struct serio * ) ;
2116 void (*close)(struct serio * ) ;
2117 int (*start)(struct serio * ) ;
2118 void (*stop)(struct serio * ) ;
2119 struct serio *parent ;
2120 struct list_head child_node ;
2121 struct list_head children ;
2122 unsigned int depth ;
2123 struct serio_driver *drv ;
2124 struct mutex drv_mutex ;
2125 struct device dev ;
2126 struct list_head node ;
2127};
2128#line 56 "include/linux/serio.h"
2129struct serio_driver {
2130 char const *description ;
2131 struct serio_device_id const *id_table ;
2132 bool manual_bind ;
2133 void (*write_wakeup)(struct serio * ) ;
2134 irqreturn_t (*interrupt)(struct serio * , unsigned char , unsigned int ) ;
2135 int (*connect)(struct serio * , struct serio_driver * ) ;
2136 int (*reconnect)(struct serio * ) ;
2137 void (*disconnect)(struct serio * ) ;
2138 void (*cleanup)(struct serio * ) ;
2139 struct device_driver driver ;
2140};
2141#line 107 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2142struct vsxxxaa {
2143 struct input_dev *dev ;
2144 struct serio *serio ;
2145 unsigned char buf[15U] ;
2146 unsigned char count ;
2147 unsigned char version ;
2148 unsigned char country ;
2149 unsigned char type ;
2150 char name[64U] ;
2151 char phys[32U] ;
2152};
2153#line 2
2154void ldv_spin_lock(void) ;
2155#line 3
2156void ldv_spin_unlock(void) ;
2157#line 4
2158int ldv_spin_trylock(void) ;
2159#line 82 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
2160__inline static void __set_bit(int nr , unsigned long volatile *addr )
2161{ long volatile *__cil_tmp3 ;
2162
2163 {
2164#line 84
2165 __cil_tmp3 = (long volatile *)addr;
2166#line 84
2167 __asm__ volatile ("bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
2168#line 85
2169 return;
2170}
2171}
2172#line 101 "include/linux/printk.h"
2173extern int printk(char const * , ...) ;
2174#line 323 "include/linux/kernel.h"
2175extern int snprintf(char * , size_t , char const * , ...) ;
2176#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
2177extern void *memmove(void * , void const * , size_t ) ;
2178#line 30 "include/linux/string.h"
2179extern size_t strlcpy(char * , char const * , size_t ) ;
2180#line 39
2181extern size_t strlcat(char * , char const * , __kernel_size_t ) ;
2182#line 26 "include/linux/export.h"
2183extern struct module __this_module ;
2184#line 161 "include/linux/slab.h"
2185extern void kfree(void const * ) ;
2186#line 220 "include/linux/slub_def.h"
2187extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
2188#line 223
2189void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
2190#line 353 "include/linux/slab.h"
2191__inline static void *kzalloc(size_t size , gfp_t flags ) ;
2192#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2193extern void *__VERIFIER_nondet_pointer(void) ;
2194#line 11
2195void ldv_check_alloc_flags(gfp_t flags ) ;
2196#line 12
2197void ldv_check_alloc_nonatomic(void) ;
2198#line 14
2199struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2200#line 10 "include/asm-generic/delay.h"
2201extern void __const_udelay(unsigned long ) ;
2202#line 792 "include/linux/device.h"
2203extern void *dev_get_drvdata(struct device const * ) ;
2204#line 793
2205extern int dev_set_drvdata(struct device * , void * ) ;
2206#line 1456 "include/linux/input.h"
2207extern struct input_dev *input_allocate_device(void) ;
2208#line 1457
2209extern void input_free_device(struct input_dev * ) ;
2210#line 1480
2211extern int input_register_device(struct input_dev * ) ;
2212#line 1481
2213extern void input_unregister_device(struct input_dev * ) ;
2214#line 1502
2215extern void input_event(struct input_dev * , unsigned int , unsigned int , int ) ;
2216#line 1505 "include/linux/input.h"
2217__inline static void input_report_key(struct input_dev *dev , unsigned int code ,
2218 int value )
2219{ int __cil_tmp4 ;
2220
2221 {
2222 {
2223#line 1507
2224 __cil_tmp4 = value != 0;
2225#line 1507
2226 input_event(dev, 1U, code, __cil_tmp4);
2227 }
2228#line 1508
2229 return;
2230}
2231}
2232#line 1510 "include/linux/input.h"
2233__inline static void input_report_rel(struct input_dev *dev , unsigned int code ,
2234 int value )
2235{
2236
2237 {
2238 {
2239#line 1512
2240 input_event(dev, 2U, code, value);
2241 }
2242#line 1513
2243 return;
2244}
2245}
2246#line 1515 "include/linux/input.h"
2247__inline static void input_report_abs(struct input_dev *dev , unsigned int code ,
2248 int value )
2249{
2250
2251 {
2252 {
2253#line 1517
2254 input_event(dev, 3U, code, value);
2255 }
2256#line 1518
2257 return;
2258}
2259}
2260#line 1530 "include/linux/input.h"
2261__inline static void input_sync(struct input_dev *dev )
2262{
2263
2264 {
2265 {
2266#line 1532
2267 input_event(dev, 0U, 0U, 0);
2268 }
2269#line 1533
2270 return;
2271}
2272}
2273#line 1558
2274extern void input_set_abs_params(struct input_dev * , unsigned int , int , int ,
2275 int , int ) ;
2276#line 75 "include/linux/serio.h"
2277extern int serio_open(struct serio * , struct serio_driver * ) ;
2278#line 76
2279extern void serio_close(struct serio * ) ;
2280#line 90
2281extern int __serio_register_driver(struct serio_driver * , struct module * , char const * ) ;
2282#line 97
2283extern void serio_unregister_driver(struct serio_driver * ) ;
2284#line 99 "include/linux/serio.h"
2285__inline static int serio_write(struct serio *serio , unsigned char data )
2286{ int tmp ;
2287 int (*__cil_tmp4)(struct serio * , unsigned char ) ;
2288 unsigned long __cil_tmp5 ;
2289 unsigned long __cil_tmp6 ;
2290 unsigned long __cil_tmp7 ;
2291 int (*__cil_tmp8)(struct serio * , unsigned char ) ;
2292 unsigned long __cil_tmp9 ;
2293 unsigned long __cil_tmp10 ;
2294 unsigned long __cil_tmp11 ;
2295 int (*__cil_tmp12)(struct serio * , unsigned char ) ;
2296 int __cil_tmp13 ;
2297 unsigned char __cil_tmp14 ;
2298
2299 {
2300 {
2301#line 101
2302 __cil_tmp4 = (int (*)(struct serio * , unsigned char ))0;
2303#line 101
2304 __cil_tmp5 = (unsigned long )__cil_tmp4;
2305#line 101
2306 __cil_tmp6 = (unsigned long )serio;
2307#line 101
2308 __cil_tmp7 = __cil_tmp6 + 152;
2309#line 101
2310 __cil_tmp8 = *((int (**)(struct serio * , unsigned char ))__cil_tmp7);
2311#line 101
2312 __cil_tmp9 = (unsigned long )__cil_tmp8;
2313#line 101
2314 if (__cil_tmp9 != __cil_tmp5) {
2315 {
2316#line 102
2317 __cil_tmp10 = (unsigned long )serio;
2318#line 102
2319 __cil_tmp11 = __cil_tmp10 + 152;
2320#line 102
2321 __cil_tmp12 = *((int (**)(struct serio * , unsigned char ))__cil_tmp11);
2322#line 102
2323 __cil_tmp13 = (int )data;
2324#line 102
2325 __cil_tmp14 = (unsigned char )__cil_tmp13;
2326#line 102
2327 tmp = (*__cil_tmp12)(serio, __cil_tmp14);
2328 }
2329#line 102
2330 return (tmp);
2331 } else {
2332#line 104
2333 return (-1);
2334 }
2335 }
2336}
2337}
2338#line 117 "include/linux/serio.h"
2339__inline static void *serio_get_drvdata(struct serio *serio )
2340{ void *tmp ;
2341 unsigned long __cil_tmp3 ;
2342 unsigned long __cil_tmp4 ;
2343 struct device *__cil_tmp5 ;
2344 struct device const *__cil_tmp6 ;
2345
2346 {
2347 {
2348#line 119
2349 __cil_tmp3 = (unsigned long )serio;
2350#line 119
2351 __cil_tmp4 = __cil_tmp3 + 416;
2352#line 119
2353 __cil_tmp5 = (struct device *)__cil_tmp4;
2354#line 119
2355 __cil_tmp6 = (struct device const *)__cil_tmp5;
2356#line 119
2357 tmp = dev_get_drvdata(__cil_tmp6);
2358 }
2359#line 119
2360 return (tmp);
2361}
2362}
2363#line 122 "include/linux/serio.h"
2364__inline static void serio_set_drvdata(struct serio *serio , void *data )
2365{ unsigned long __cil_tmp3 ;
2366 unsigned long __cil_tmp4 ;
2367 struct device *__cil_tmp5 ;
2368
2369 {
2370 {
2371#line 124
2372 __cil_tmp3 = (unsigned long )serio;
2373#line 124
2374 __cil_tmp4 = __cil_tmp3 + 416;
2375#line 124
2376 __cil_tmp5 = (struct device *)__cil_tmp4;
2377#line 124
2378 dev_set_drvdata(__cil_tmp5, data);
2379 }
2380#line 125
2381 return;
2382}
2383}
2384#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2385static void vsxxxaa_drop_bytes(struct vsxxxaa *mouse , int num )
2386{ unsigned long __cil_tmp3 ;
2387 unsigned long __cil_tmp4 ;
2388 unsigned char __cil_tmp5 ;
2389 int __cil_tmp6 ;
2390 unsigned long __cil_tmp7 ;
2391 unsigned long __cil_tmp8 ;
2392 unsigned long __cil_tmp9 ;
2393 unsigned long __cil_tmp10 ;
2394 unsigned char (*__cil_tmp11)[15U] ;
2395 void *__cil_tmp12 ;
2396 unsigned long __cil_tmp13 ;
2397 unsigned long __cil_tmp14 ;
2398 unsigned long __cil_tmp15 ;
2399 unsigned long __cil_tmp16 ;
2400 unsigned char (*__cil_tmp17)[15U] ;
2401 void const *__cil_tmp18 ;
2402 void const *__cil_tmp19 ;
2403 int __cil_tmp20 ;
2404 size_t __cil_tmp21 ;
2405 unsigned long __cil_tmp22 ;
2406 unsigned long __cil_tmp23 ;
2407 unsigned char __cil_tmp24 ;
2408 int __cil_tmp25 ;
2409 unsigned long __cil_tmp26 ;
2410 unsigned long __cil_tmp27 ;
2411 unsigned char __cil_tmp28 ;
2412 int __cil_tmp29 ;
2413 int __cil_tmp30 ;
2414
2415 {
2416 {
2417#line 144
2418 __cil_tmp3 = (unsigned long )mouse;
2419#line 144
2420 __cil_tmp4 = __cil_tmp3 + 31;
2421#line 144
2422 __cil_tmp5 = *((unsigned char *)__cil_tmp4);
2423#line 144
2424 __cil_tmp6 = (int )__cil_tmp5;
2425#line 144
2426 if (__cil_tmp6 <= num) {
2427#line 145
2428 __cil_tmp7 = (unsigned long )mouse;
2429#line 145
2430 __cil_tmp8 = __cil_tmp7 + 31;
2431#line 145
2432 *((unsigned char *)__cil_tmp8) = (unsigned char)0;
2433 } else {
2434 {
2435#line 147
2436 __cil_tmp9 = (unsigned long )mouse;
2437#line 147
2438 __cil_tmp10 = __cil_tmp9 + 16;
2439#line 147
2440 __cil_tmp11 = (unsigned char (*)[15U])__cil_tmp10;
2441#line 147
2442 __cil_tmp12 = (void *)__cil_tmp11;
2443#line 147
2444 __cil_tmp13 = (unsigned long )num;
2445#line 147
2446 __cil_tmp14 = __cil_tmp13 + 0xffffffffffffffffUL;
2447#line 147
2448 __cil_tmp15 = (unsigned long )mouse;
2449#line 147
2450 __cil_tmp16 = __cil_tmp15 + 16;
2451#line 147
2452 __cil_tmp17 = (unsigned char (*)[15U])__cil_tmp16;
2453#line 147
2454 __cil_tmp18 = (void const *)__cil_tmp17;
2455#line 147
2456 __cil_tmp19 = __cil_tmp18 + __cil_tmp14;
2457#line 147
2458 __cil_tmp20 = 15 - num;
2459#line 147
2460 __cil_tmp21 = (size_t )__cil_tmp20;
2461#line 147
2462 memmove(__cil_tmp12, __cil_tmp19, __cil_tmp21);
2463#line 148
2464 __cil_tmp22 = (unsigned long )mouse;
2465#line 148
2466 __cil_tmp23 = __cil_tmp22 + 31;
2467#line 148
2468 __cil_tmp24 = (unsigned char )num;
2469#line 148
2470 __cil_tmp25 = (int )__cil_tmp24;
2471#line 148
2472 __cil_tmp26 = (unsigned long )mouse;
2473#line 148
2474 __cil_tmp27 = __cil_tmp26 + 31;
2475#line 148
2476 __cil_tmp28 = *((unsigned char *)__cil_tmp27);
2477#line 148
2478 __cil_tmp29 = (int )__cil_tmp28;
2479#line 148
2480 __cil_tmp30 = __cil_tmp29 - __cil_tmp25;
2481#line 148
2482 *((unsigned char *)__cil_tmp23) = (unsigned char )__cil_tmp30;
2483 }
2484 }
2485 }
2486#line 150
2487 return;
2488}
2489}
2490#line 152 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2491static void vsxxxaa_queue_byte(struct vsxxxaa *mouse , unsigned char byte )
2492{ unsigned char tmp ;
2493 unsigned long __cil_tmp4 ;
2494 unsigned long __cil_tmp5 ;
2495 unsigned char __cil_tmp6 ;
2496 unsigned int __cil_tmp7 ;
2497 unsigned long __cil_tmp8 ;
2498 unsigned long __cil_tmp9 ;
2499 char (*__cil_tmp10)[64U] ;
2500 char *__cil_tmp11 ;
2501 unsigned long __cil_tmp12 ;
2502 unsigned long __cil_tmp13 ;
2503 char (*__cil_tmp14)[32U] ;
2504 char *__cil_tmp15 ;
2505 unsigned long __cil_tmp16 ;
2506 unsigned long __cil_tmp17 ;
2507 unsigned long __cil_tmp18 ;
2508 unsigned long __cil_tmp19 ;
2509 unsigned long __cil_tmp20 ;
2510 unsigned long __cil_tmp21 ;
2511 unsigned char __cil_tmp22 ;
2512 int __cil_tmp23 ;
2513 int __cil_tmp24 ;
2514 unsigned long __cil_tmp25 ;
2515 unsigned long __cil_tmp26 ;
2516 unsigned long __cil_tmp27 ;
2517 unsigned long __cil_tmp28 ;
2518
2519 {
2520 {
2521#line 154
2522 __cil_tmp4 = (unsigned long )mouse;
2523#line 154
2524 __cil_tmp5 = __cil_tmp4 + 31;
2525#line 154
2526 __cil_tmp6 = *((unsigned char *)__cil_tmp5);
2527#line 154
2528 __cil_tmp7 = (unsigned int )__cil_tmp6;
2529#line 154
2530 if (__cil_tmp7 == 15U) {
2531 {
2532#line 155
2533 __cil_tmp8 = (unsigned long )mouse;
2534#line 155
2535 __cil_tmp9 = __cil_tmp8 + 35;
2536#line 155
2537 __cil_tmp10 = (char (*)[64U])__cil_tmp9;
2538#line 155
2539 __cil_tmp11 = (char *)__cil_tmp10;
2540#line 155
2541 __cil_tmp12 = (unsigned long )mouse;
2542#line 155
2543 __cil_tmp13 = __cil_tmp12 + 99;
2544#line 155
2545 __cil_tmp14 = (char (*)[32U])__cil_tmp13;
2546#line 155
2547 __cil_tmp15 = (char *)__cil_tmp14;
2548#line 155
2549 printk("<3>%s on %s: Dropping a byte of full buffer.\n", __cil_tmp11, __cil_tmp15);
2550#line 157
2551 vsxxxaa_drop_bytes(mouse, 1);
2552 }
2553 } else {
2554
2555 }
2556 }
2557#line 162
2558 __cil_tmp16 = (unsigned long )mouse;
2559#line 162
2560 __cil_tmp17 = __cil_tmp16 + 31;
2561#line 162
2562 tmp = *((unsigned char *)__cil_tmp17);
2563#line 162
2564 __cil_tmp18 = (unsigned long )mouse;
2565#line 162
2566 __cil_tmp19 = __cil_tmp18 + 31;
2567#line 162
2568 __cil_tmp20 = (unsigned long )mouse;
2569#line 162
2570 __cil_tmp21 = __cil_tmp20 + 31;
2571#line 162
2572 __cil_tmp22 = *((unsigned char *)__cil_tmp21);
2573#line 162
2574 __cil_tmp23 = (int )__cil_tmp22;
2575#line 162
2576 __cil_tmp24 = __cil_tmp23 + 1;
2577#line 162
2578 *((unsigned char *)__cil_tmp19) = (unsigned char )__cil_tmp24;
2579#line 162
2580 __cil_tmp25 = tmp * 1UL;
2581#line 162
2582 __cil_tmp26 = 16 + __cil_tmp25;
2583#line 162
2584 __cil_tmp27 = (unsigned long )mouse;
2585#line 162
2586 __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
2587#line 162
2588 *((unsigned char *)__cil_tmp28) = byte;
2589#line 163
2590 return;
2591}
2592}
2593#line 165 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2594static void vsxxxaa_detection_done(struct vsxxxaa *mouse )
2595{ unsigned long __cil_tmp2 ;
2596 unsigned long __cil_tmp3 ;
2597 unsigned char __cil_tmp4 ;
2598 unsigned long __cil_tmp5 ;
2599 unsigned long __cil_tmp6 ;
2600 char (*__cil_tmp7)[64U] ;
2601 char *__cil_tmp8 ;
2602 unsigned long __cil_tmp9 ;
2603 unsigned long __cil_tmp10 ;
2604 char (*__cil_tmp11)[64U] ;
2605 char *__cil_tmp12 ;
2606 unsigned long __cil_tmp13 ;
2607 unsigned long __cil_tmp14 ;
2608 char (*__cil_tmp15)[64U] ;
2609 char *__cil_tmp16 ;
2610 unsigned long __cil_tmp17 ;
2611 unsigned long __cil_tmp18 ;
2612 unsigned char __cil_tmp19 ;
2613 int __cil_tmp20 ;
2614 unsigned long __cil_tmp21 ;
2615 unsigned long __cil_tmp22 ;
2616 char (*__cil_tmp23)[64U] ;
2617 char *__cil_tmp24 ;
2618 unsigned long __cil_tmp25 ;
2619 unsigned long __cil_tmp26 ;
2620 unsigned char __cil_tmp27 ;
2621 int __cil_tmp28 ;
2622 unsigned long __cil_tmp29 ;
2623 unsigned long __cil_tmp30 ;
2624 unsigned char __cil_tmp31 ;
2625 int __cil_tmp32 ;
2626 unsigned long __cil_tmp33 ;
2627 unsigned long __cil_tmp34 ;
2628 char (*__cil_tmp35)[32U] ;
2629 char *__cil_tmp36 ;
2630
2631 {
2632 {
2633#line 167
2634 __cil_tmp2 = (unsigned long )mouse;
2635#line 167
2636 __cil_tmp3 = __cil_tmp2 + 34;
2637#line 167
2638 __cil_tmp4 = *((unsigned char *)__cil_tmp3);
2639#line 168
2640 if ((int )__cil_tmp4 == 2) {
2641#line 168
2642 goto case_2;
2643 } else
2644#line 173
2645 if ((int )__cil_tmp4 == 4) {
2646#line 173
2647 goto case_4;
2648 } else {
2649 {
2650#line 178
2651 goto switch_default;
2652#line 167
2653 if (0) {
2654 case_2:
2655 {
2656#line 169
2657 __cil_tmp5 = (unsigned long )mouse;
2658#line 169
2659 __cil_tmp6 = __cil_tmp5 + 35;
2660#line 169
2661 __cil_tmp7 = (char (*)[64U])__cil_tmp6;
2662#line 169
2663 __cil_tmp8 = (char *)__cil_tmp7;
2664#line 169
2665 strlcpy(__cil_tmp8, "DEC VSXXX-AA/-GA mouse", 64UL);
2666 }
2667#line 171
2668 goto ldv_20766;
2669 case_4:
2670 {
2671#line 174
2672 __cil_tmp9 = (unsigned long )mouse;
2673#line 174
2674 __cil_tmp10 = __cil_tmp9 + 35;
2675#line 174
2676 __cil_tmp11 = (char (*)[64U])__cil_tmp10;
2677#line 174
2678 __cil_tmp12 = (char *)__cil_tmp11;
2679#line 174
2680 strlcpy(__cil_tmp12, "DEC VSXXX-AB digitizer", 64UL);
2681 }
2682#line 176
2683 goto ldv_20766;
2684 switch_default:
2685 {
2686#line 179
2687 __cil_tmp13 = (unsigned long )mouse;
2688#line 179
2689 __cil_tmp14 = __cil_tmp13 + 35;
2690#line 179
2691 __cil_tmp15 = (char (*)[64U])__cil_tmp14;
2692#line 179
2693 __cil_tmp16 = (char *)__cil_tmp15;
2694#line 179
2695 __cil_tmp17 = (unsigned long )mouse;
2696#line 179
2697 __cil_tmp18 = __cil_tmp17 + 34;
2698#line 179
2699 __cil_tmp19 = *((unsigned char *)__cil_tmp18);
2700#line 179
2701 __cil_tmp20 = (int )__cil_tmp19;
2702#line 179
2703 snprintf(__cil_tmp16, 64UL, "unknown DEC pointer device (type = 0x%02x)", __cil_tmp20);
2704 }
2705#line 182
2706 goto ldv_20766;
2707 } else {
2708 switch_break: ;
2709 }
2710 }
2711 }
2712 }
2713 ldv_20766:
2714 {
2715#line 185
2716 __cil_tmp21 = (unsigned long )mouse;
2717#line 185
2718 __cil_tmp22 = __cil_tmp21 + 35;
2719#line 185
2720 __cil_tmp23 = (char (*)[64U])__cil_tmp22;
2721#line 185
2722 __cil_tmp24 = (char *)__cil_tmp23;
2723#line 185
2724 __cil_tmp25 = (unsigned long )mouse;
2725#line 185
2726 __cil_tmp26 = __cil_tmp25 + 32;
2727#line 185
2728 __cil_tmp27 = *((unsigned char *)__cil_tmp26);
2729#line 185
2730 __cil_tmp28 = (int )__cil_tmp27;
2731#line 185
2732 __cil_tmp29 = (unsigned long )mouse;
2733#line 185
2734 __cil_tmp30 = __cil_tmp29 + 33;
2735#line 185
2736 __cil_tmp31 = *((unsigned char *)__cil_tmp30);
2737#line 185
2738 __cil_tmp32 = (int )__cil_tmp31;
2739#line 185
2740 __cil_tmp33 = (unsigned long )mouse;
2741#line 185
2742 __cil_tmp34 = __cil_tmp33 + 99;
2743#line 185
2744 __cil_tmp35 = (char (*)[32U])__cil_tmp34;
2745#line 185
2746 __cil_tmp36 = (char *)__cil_tmp35;
2747#line 185
2748 printk("<6>Found %s version 0x%02x from country 0x%02x on port %s\n", __cil_tmp24,
2749 __cil_tmp28, __cil_tmp32, __cil_tmp36);
2750 }
2751#line 188
2752 return;
2753}
2754}
2755#line 193 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2756static int vsxxxaa_check_packet(struct vsxxxaa *mouse , int packet_len )
2757{ int i ;
2758 unsigned long __cil_tmp4 ;
2759 unsigned long __cil_tmp5 ;
2760 unsigned long __cil_tmp6 ;
2761 unsigned long __cil_tmp7 ;
2762 unsigned char __cil_tmp8 ;
2763 signed char __cil_tmp9 ;
2764 int __cil_tmp10 ;
2765 unsigned long __cil_tmp11 ;
2766 unsigned long __cil_tmp12 ;
2767 unsigned long __cil_tmp13 ;
2768 unsigned long __cil_tmp14 ;
2769 unsigned char __cil_tmp15 ;
2770 signed char __cil_tmp16 ;
2771 int __cil_tmp17 ;
2772 int __cil_tmp18 ;
2773
2774 {
2775 {
2776#line 198
2777 __cil_tmp4 = 0 * 1UL;
2778#line 198
2779 __cil_tmp5 = 16 + __cil_tmp4;
2780#line 198
2781 __cil_tmp6 = (unsigned long )mouse;
2782#line 198
2783 __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
2784#line 198
2785 __cil_tmp8 = *((unsigned char *)__cil_tmp7);
2786#line 198
2787 __cil_tmp9 = (signed char )__cil_tmp8;
2788#line 198
2789 __cil_tmp10 = (int )__cil_tmp9;
2790#line 198
2791 if (__cil_tmp10 >= 0) {
2792#line 200
2793 return (1);
2794 } else {
2795
2796 }
2797 }
2798#line 204
2799 i = 1;
2800#line 204
2801 goto ldv_20775;
2802 ldv_20774: ;
2803 {
2804#line 205
2805 __cil_tmp11 = i * 1UL;
2806#line 205
2807 __cil_tmp12 = 16 + __cil_tmp11;
2808#line 205
2809 __cil_tmp13 = (unsigned long )mouse;
2810#line 205
2811 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
2812#line 205
2813 __cil_tmp15 = *((unsigned char *)__cil_tmp14);
2814#line 205
2815 __cil_tmp16 = (signed char )__cil_tmp15;
2816#line 205
2817 __cil_tmp17 = (int )__cil_tmp16;
2818#line 205
2819 if (__cil_tmp17 < 0) {
2820 {
2821#line 206
2822 __cil_tmp18 = i + -1;
2823#line 206
2824 printk("<3>Need to drop %d bytes of a broken packet.\n", __cil_tmp18);
2825 }
2826#line 211
2827 return (i + -1);
2828 } else {
2829
2830 }
2831 }
2832#line 204
2833 i = i + 1;
2834 ldv_20775: ;
2835#line 204
2836 if (i < packet_len) {
2837#line 205
2838 goto ldv_20774;
2839 } else {
2840#line 207
2841 goto ldv_20776;
2842 }
2843 ldv_20776: ;
2844#line 215
2845 return (0);
2846}
2847}
2848#line 218 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2849__inline static int vsxxxaa_smells_like_packet(struct vsxxxaa *mouse , unsigned char type ,
2850 size_t len )
2851{ int tmp ;
2852 unsigned long __cil_tmp5 ;
2853 unsigned long __cil_tmp6 ;
2854 unsigned char __cil_tmp7 ;
2855 size_t __cil_tmp8 ;
2856 int __cil_tmp9 ;
2857 unsigned long __cil_tmp10 ;
2858 unsigned long __cil_tmp11 ;
2859 unsigned long __cil_tmp12 ;
2860 unsigned long __cil_tmp13 ;
2861 unsigned char __cil_tmp14 ;
2862 int __cil_tmp15 ;
2863 int __cil_tmp16 ;
2864
2865 {
2866 {
2867#line 221
2868 __cil_tmp5 = (unsigned long )mouse;
2869#line 221
2870 __cil_tmp6 = __cil_tmp5 + 31;
2871#line 221
2872 __cil_tmp7 = *((unsigned char *)__cil_tmp6);
2873#line 221
2874 __cil_tmp8 = (size_t )__cil_tmp7;
2875#line 221
2876 if (__cil_tmp8 >= len) {
2877 {
2878#line 221
2879 __cil_tmp9 = (int )type;
2880#line 221
2881 __cil_tmp10 = 0 * 1UL;
2882#line 221
2883 __cil_tmp11 = 16 + __cil_tmp10;
2884#line 221
2885 __cil_tmp12 = (unsigned long )mouse;
2886#line 221
2887 __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
2888#line 221
2889 __cil_tmp14 = *((unsigned char *)__cil_tmp13);
2890#line 221
2891 __cil_tmp15 = (int )__cil_tmp14;
2892#line 221
2893 __cil_tmp16 = __cil_tmp15 & 224;
2894#line 221
2895 if (__cil_tmp16 == __cil_tmp9) {
2896#line 221
2897 tmp = 1;
2898 } else {
2899#line 221
2900 tmp = 0;
2901 }
2902 }
2903 } else {
2904#line 221
2905 tmp = 0;
2906 }
2907 }
2908#line 221
2909 return (tmp);
2910}
2911}
2912#line 224 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
2913static void vsxxxaa_handle_REL_packet(struct vsxxxaa *mouse )
2914{ struct input_dev *dev ;
2915 unsigned char *buf ;
2916 int left ;
2917 int middle ;
2918 int right ;
2919 int dx ;
2920 int dy ;
2921 int tmp ;
2922 int tmp___0 ;
2923 unsigned long __cil_tmp11 ;
2924 unsigned long __cil_tmp12 ;
2925 unsigned char (*__cil_tmp13)[15U] ;
2926 unsigned char *__cil_tmp14 ;
2927 unsigned char __cil_tmp15 ;
2928 int __cil_tmp16 ;
2929 unsigned char __cil_tmp17 ;
2930 int __cil_tmp18 ;
2931 int __cil_tmp19 ;
2932 unsigned char *__cil_tmp20 ;
2933 unsigned char __cil_tmp21 ;
2934 int __cil_tmp22 ;
2935 unsigned char __cil_tmp23 ;
2936 int __cil_tmp24 ;
2937 int __cil_tmp25 ;
2938 unsigned char __cil_tmp26 ;
2939 int __cil_tmp27 ;
2940 unsigned char __cil_tmp28 ;
2941 int __cil_tmp29 ;
2942 unsigned char __cil_tmp30 ;
2943 int __cil_tmp31 ;
2944
2945 {
2946#line 226
2947 dev = *((struct input_dev **)mouse);
2948#line 227
2949 __cil_tmp11 = (unsigned long )mouse;
2950#line 227
2951 __cil_tmp12 = __cil_tmp11 + 16;
2952#line 227
2953 __cil_tmp13 = (unsigned char (*)[15U])__cil_tmp12;
2954#line 227
2955 buf = (unsigned char *)__cil_tmp13;
2956#line 244
2957 __cil_tmp14 = buf + 1UL;
2958#line 244
2959 __cil_tmp15 = *__cil_tmp14;
2960#line 244
2961 __cil_tmp16 = (int )__cil_tmp15;
2962#line 244
2963 dx = __cil_tmp16 & 127;
2964 {
2965#line 245
2966 __cil_tmp17 = *buf;
2967#line 245
2968 __cil_tmp18 = (int )__cil_tmp17;
2969#line 245
2970 __cil_tmp19 = __cil_tmp18 >> 4;
2971#line 245
2972 if (__cil_tmp19 & 1) {
2973#line 245
2974 tmp = 1;
2975 } else {
2976#line 245
2977 tmp = -1;
2978 }
2979 }
2980#line 245
2981 dx = tmp * dx;
2982#line 251
2983 __cil_tmp20 = buf + 2UL;
2984#line 251
2985 __cil_tmp21 = *__cil_tmp20;
2986#line 251
2987 __cil_tmp22 = (int )__cil_tmp21;
2988#line 251
2989 dy = __cil_tmp22 & 127;
2990 {
2991#line 252
2992 __cil_tmp23 = *buf;
2993#line 252
2994 __cil_tmp24 = (int )__cil_tmp23;
2995#line 252
2996 __cil_tmp25 = __cil_tmp24 >> 3;
2997#line 252
2998 if (__cil_tmp25 & 1) {
2999#line 252
3000 tmp___0 = -1;
3001 } else {
3002#line 252
3003 tmp___0 = 1;
3004 }
3005 }
3006 {
3007#line 252
3008 dy = tmp___0 * dy;
3009#line 258
3010 __cil_tmp26 = *buf;
3011#line 258
3012 __cil_tmp27 = (int )__cil_tmp26;
3013#line 258
3014 left = __cil_tmp27 & 4;
3015#line 259
3016 __cil_tmp28 = *buf;
3017#line 259
3018 __cil_tmp29 = (int )__cil_tmp28;
3019#line 259
3020 middle = __cil_tmp29 & 2;
3021#line 260
3022 __cil_tmp30 = *buf;
3023#line 260
3024 __cil_tmp31 = (int )__cil_tmp30;
3025#line 260
3026 right = __cil_tmp31 & 1;
3027#line 262
3028 vsxxxaa_drop_bytes(mouse, 3);
3029#line 271
3030 input_report_key(dev, 272U, left);
3031#line 272
3032 input_report_key(dev, 274U, middle);
3033#line 273
3034 input_report_key(dev, 273U, right);
3035#line 274
3036 input_report_key(dev, 330U, 0);
3037#line 275
3038 input_report_rel(dev, 0U, dx);
3039#line 276
3040 input_report_rel(dev, 1U, dy);
3041#line 277
3042 input_sync(dev);
3043 }
3044#line 278
3045 return;
3046}
3047}
3048#line 280 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
3049static void vsxxxaa_handle_ABS_packet(struct vsxxxaa *mouse )
3050{ struct input_dev *dev ;
3051 unsigned char *buf ;
3052 int left ;
3053 int middle ;
3054 int right ;
3055 int touch ;
3056 int x ;
3057 int y ;
3058 unsigned long __cil_tmp10 ;
3059 unsigned long __cil_tmp11 ;
3060 unsigned char (*__cil_tmp12)[15U] ;
3061 unsigned char *__cil_tmp13 ;
3062 unsigned char __cil_tmp14 ;
3063 int __cil_tmp15 ;
3064 int __cil_tmp16 ;
3065 unsigned char *__cil_tmp17 ;
3066 unsigned char __cil_tmp18 ;
3067 int __cil_tmp19 ;
3068 int __cil_tmp20 ;
3069 int __cil_tmp21 ;
3070 unsigned char *__cil_tmp22 ;
3071 unsigned char __cil_tmp23 ;
3072 int __cil_tmp24 ;
3073 int __cil_tmp25 ;
3074 unsigned char *__cil_tmp26 ;
3075 unsigned char __cil_tmp27 ;
3076 int __cil_tmp28 ;
3077 int __cil_tmp29 ;
3078 int __cil_tmp30 ;
3079 unsigned char __cil_tmp31 ;
3080 int __cil_tmp32 ;
3081 unsigned char __cil_tmp33 ;
3082 int __cil_tmp34 ;
3083 unsigned char __cil_tmp35 ;
3084 int __cil_tmp36 ;
3085 unsigned char __cil_tmp37 ;
3086 int __cil_tmp38 ;
3087
3088 {
3089 {
3090#line 282
3091 dev = *((struct input_dev **)mouse);
3092#line 283
3093 __cil_tmp10 = (unsigned long )mouse;
3094#line 283
3095 __cil_tmp11 = __cil_tmp10 + 16;
3096#line 283
3097 __cil_tmp12 = (unsigned char (*)[15U])__cil_tmp11;
3098#line 283
3099 buf = (unsigned char *)__cil_tmp12;
3100#line 301
3101 __cil_tmp13 = buf + 1UL;
3102#line 301
3103 __cil_tmp14 = *__cil_tmp13;
3104#line 301
3105 __cil_tmp15 = (int )__cil_tmp14;
3106#line 301
3107 __cil_tmp16 = __cil_tmp15 & 63;
3108#line 301
3109 __cil_tmp17 = buf + 2UL;
3110#line 301
3111 __cil_tmp18 = *__cil_tmp17;
3112#line 301
3113 __cil_tmp19 = (int )__cil_tmp18;
3114#line 301
3115 __cil_tmp20 = __cil_tmp19 & 63;
3116#line 301
3117 __cil_tmp21 = __cil_tmp20 << 6;
3118#line 301
3119 x = __cil_tmp21 | __cil_tmp16;
3120#line 302
3121 __cil_tmp22 = buf + 3UL;
3122#line 302
3123 __cil_tmp23 = *__cil_tmp22;
3124#line 302
3125 __cil_tmp24 = (int )__cil_tmp23;
3126#line 302
3127 __cil_tmp25 = __cil_tmp24 & 63;
3128#line 302
3129 __cil_tmp26 = buf + 4UL;
3130#line 302
3131 __cil_tmp27 = *__cil_tmp26;
3132#line 302
3133 __cil_tmp28 = (int )__cil_tmp27;
3134#line 302
3135 __cil_tmp29 = __cil_tmp28 & 63;
3136#line 302
3137 __cil_tmp30 = __cil_tmp29 << 6;
3138#line 302
3139 y = __cil_tmp30 | __cil_tmp25;
3140#line 303
3141 y = 1023 - y;
3142#line 308
3143 __cil_tmp31 = *buf;
3144#line 308
3145 __cil_tmp32 = (int )__cil_tmp31;
3146#line 308
3147 left = __cil_tmp32 & 2;
3148#line 309
3149 __cil_tmp33 = *buf;
3150#line 309
3151 __cil_tmp34 = (int )__cil_tmp33;
3152#line 309
3153 middle = __cil_tmp34 & 4;
3154#line 310
3155 __cil_tmp35 = *buf;
3156#line 310
3157 __cil_tmp36 = (int )__cil_tmp35;
3158#line 310
3159 right = __cil_tmp36 & 8;
3160#line 311
3161 __cil_tmp37 = *buf;
3162#line 311
3163 __cil_tmp38 = (int )__cil_tmp37;
3164#line 311
3165 touch = __cil_tmp38 & 16;
3166#line 313
3167 vsxxxaa_drop_bytes(mouse, 5);
3168#line 323
3169 input_report_key(dev, 272U, left);
3170#line 324
3171 input_report_key(dev, 274U, middle);
3172#line 325
3173 input_report_key(dev, 273U, right);
3174#line 326
3175 input_report_key(dev, 330U, touch);
3176#line 327
3177 input_report_abs(dev, 0U, x);
3178#line 328
3179 input_report_abs(dev, 1U, y);
3180#line 329
3181 input_sync(dev);
3182 }
3183#line 330
3184 return;
3185}
3186}
3187#line 332 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
3188static void vsxxxaa_handle_POR_packet(struct vsxxxaa *mouse )
3189{ struct input_dev *dev ;
3190 unsigned char *buf ;
3191 int left ;
3192 int middle ;
3193 int right ;
3194 unsigned char error ;
3195 unsigned long __ms ;
3196 unsigned long tmp ;
3197 unsigned long __ms___0 ;
3198 unsigned long tmp___0 ;
3199 unsigned long __cil_tmp12 ;
3200 unsigned long __cil_tmp13 ;
3201 unsigned char (*__cil_tmp14)[15U] ;
3202 unsigned long __cil_tmp15 ;
3203 unsigned long __cil_tmp16 ;
3204 unsigned char __cil_tmp17 ;
3205 unsigned int __cil_tmp18 ;
3206 unsigned int __cil_tmp19 ;
3207 unsigned long __cil_tmp20 ;
3208 unsigned long __cil_tmp21 ;
3209 unsigned char *__cil_tmp22 ;
3210 unsigned char __cil_tmp23 ;
3211 int __cil_tmp24 ;
3212 int __cil_tmp25 ;
3213 unsigned int __cil_tmp26 ;
3214 unsigned int __cil_tmp27 ;
3215 unsigned long __cil_tmp28 ;
3216 unsigned long __cil_tmp29 ;
3217 unsigned char *__cil_tmp30 ;
3218 unsigned char __cil_tmp31 ;
3219 unsigned int __cil_tmp32 ;
3220 unsigned int __cil_tmp33 ;
3221 unsigned char *__cil_tmp34 ;
3222 unsigned char __cil_tmp35 ;
3223 unsigned int __cil_tmp36 ;
3224 unsigned int __cil_tmp37 ;
3225 unsigned char __cil_tmp38 ;
3226 int __cil_tmp39 ;
3227 unsigned char __cil_tmp40 ;
3228 int __cil_tmp41 ;
3229 unsigned char __cil_tmp42 ;
3230 int __cil_tmp43 ;
3231 unsigned int __cil_tmp44 ;
3232 unsigned int __cil_tmp45 ;
3233 unsigned long __cil_tmp46 ;
3234 unsigned long __cil_tmp47 ;
3235 char (*__cil_tmp48)[64U] ;
3236 char *__cil_tmp49 ;
3237 unsigned long __cil_tmp50 ;
3238 unsigned long __cil_tmp51 ;
3239 char (*__cil_tmp52)[32U] ;
3240 char *__cil_tmp53 ;
3241 int __cil_tmp54 ;
3242 unsigned long __cil_tmp55 ;
3243 unsigned long __cil_tmp56 ;
3244 char (*__cil_tmp57)[64U] ;
3245 char *__cil_tmp58 ;
3246 unsigned long __cil_tmp59 ;
3247 unsigned long __cil_tmp60 ;
3248 char (*__cil_tmp61)[32U] ;
3249 char *__cil_tmp62 ;
3250 unsigned long __cil_tmp63 ;
3251 unsigned long __cil_tmp64 ;
3252 struct serio *__cil_tmp65 ;
3253 unsigned long __cil_tmp66 ;
3254 unsigned long __cil_tmp67 ;
3255 struct serio *__cil_tmp68 ;
3256 unsigned long __cil_tmp69 ;
3257 unsigned long __cil_tmp70 ;
3258 struct serio *__cil_tmp71 ;
3259
3260 {
3261 {
3262#line 334
3263 dev = *((struct input_dev **)mouse);
3264#line 335
3265 __cil_tmp12 = (unsigned long )mouse;
3266#line 335
3267 __cil_tmp13 = __cil_tmp12 + 16;
3268#line 335
3269 __cil_tmp14 = (unsigned char (*)[15U])__cil_tmp13;
3270#line 335
3271 buf = (unsigned char *)__cil_tmp14;
3272#line 357
3273 __cil_tmp15 = (unsigned long )mouse;
3274#line 357
3275 __cil_tmp16 = __cil_tmp15 + 32;
3276#line 357
3277 __cil_tmp17 = *buf;
3278#line 357
3279 __cil_tmp18 = (unsigned int )__cil_tmp17;
3280#line 357
3281 __cil_tmp19 = __cil_tmp18 & 15U;
3282#line 357
3283 *((unsigned char *)__cil_tmp16) = (unsigned char )__cil_tmp19;
3284#line 358
3285 __cil_tmp20 = (unsigned long )mouse;
3286#line 358
3287 __cil_tmp21 = __cil_tmp20 + 33;
3288#line 358
3289 __cil_tmp22 = buf + 1UL;
3290#line 358
3291 __cil_tmp23 = *__cil_tmp22;
3292#line 358
3293 __cil_tmp24 = (int )__cil_tmp23;
3294#line 358
3295 __cil_tmp25 = __cil_tmp24 >> 4;
3296#line 358
3297 __cil_tmp26 = (unsigned int )__cil_tmp25;
3298#line 358
3299 __cil_tmp27 = __cil_tmp26 & 7U;
3300#line 358
3301 *((unsigned char *)__cil_tmp21) = (unsigned char )__cil_tmp27;
3302#line 359
3303 __cil_tmp28 = (unsigned long )mouse;
3304#line 359
3305 __cil_tmp29 = __cil_tmp28 + 34;
3306#line 359
3307 __cil_tmp30 = buf + 1UL;
3308#line 359
3309 __cil_tmp31 = *__cil_tmp30;
3310#line 359
3311 __cil_tmp32 = (unsigned int )__cil_tmp31;
3312#line 359
3313 __cil_tmp33 = __cil_tmp32 & 15U;
3314#line 359
3315 *((unsigned char *)__cil_tmp29) = (unsigned char )__cil_tmp33;
3316#line 360
3317 __cil_tmp34 = buf + 2UL;
3318#line 360
3319 __cil_tmp35 = *__cil_tmp34;
3320#line 360
3321 __cil_tmp36 = (unsigned int )__cil_tmp35;
3322#line 360
3323 __cil_tmp37 = __cil_tmp36 & 127U;
3324#line 360
3325 error = (unsigned char )__cil_tmp37;
3326#line 367
3327 __cil_tmp38 = *buf;
3328#line 367
3329 __cil_tmp39 = (int )__cil_tmp38;
3330#line 367
3331 left = __cil_tmp39 & 4;
3332#line 368
3333 __cil_tmp40 = *buf;
3334#line 368
3335 __cil_tmp41 = (int )__cil_tmp40;
3336#line 368
3337 middle = __cil_tmp41 & 2;
3338#line 369
3339 __cil_tmp42 = *buf;
3340#line 369
3341 __cil_tmp43 = (int )__cil_tmp42;
3342#line 369
3343 right = __cil_tmp43 & 1;
3344#line 371
3345 vsxxxaa_drop_bytes(mouse, 4);
3346#line 372
3347 vsxxxaa_detection_done(mouse);
3348 }
3349 {
3350#line 374
3351 __cil_tmp44 = (unsigned int )error;
3352#line 374
3353 if (__cil_tmp44 <= 31U) {
3354 {
3355#line 376
3356 input_report_key(dev, 272U, left);
3357#line 377
3358 input_report_key(dev, 274U, middle);
3359#line 378
3360 input_report_key(dev, 273U, right);
3361#line 379
3362 input_report_key(dev, 330U, 0);
3363#line 380
3364 input_sync(dev);
3365 }
3366 {
3367#line 382
3368 __cil_tmp45 = (unsigned int )error;
3369#line 382
3370 if (__cil_tmp45 != 0U) {
3371 {
3372#line 383
3373 __cil_tmp46 = (unsigned long )mouse;
3374#line 383
3375 __cil_tmp47 = __cil_tmp46 + 35;
3376#line 383
3377 __cil_tmp48 = (char (*)[64U])__cil_tmp47;
3378#line 383
3379 __cil_tmp49 = (char *)__cil_tmp48;
3380#line 383
3381 __cil_tmp50 = (unsigned long )mouse;
3382#line 383
3383 __cil_tmp51 = __cil_tmp50 + 99;
3384#line 383
3385 __cil_tmp52 = (char (*)[32U])__cil_tmp51;
3386#line 383
3387 __cil_tmp53 = (char *)__cil_tmp52;
3388#line 383
3389 __cil_tmp54 = (int )error;
3390#line 383
3391 printk("<6>Your %s on %s reports error=0x%02x\n", __cil_tmp49, __cil_tmp53,
3392 __cil_tmp54);
3393 }
3394 } else {
3395
3396 }
3397 }
3398 } else {
3399
3400 }
3401 }
3402 {
3403#line 392
3404 __cil_tmp55 = (unsigned long )mouse;
3405#line 392
3406 __cil_tmp56 = __cil_tmp55 + 35;
3407#line 392
3408 __cil_tmp57 = (char (*)[64U])__cil_tmp56;
3409#line 392
3410 __cil_tmp58 = (char *)__cil_tmp57;
3411#line 392
3412 __cil_tmp59 = (unsigned long )mouse;
3413#line 392
3414 __cil_tmp60 = __cil_tmp59 + 99;
3415#line 392
3416 __cil_tmp61 = (char (*)[32U])__cil_tmp60;
3417#line 392
3418 __cil_tmp62 = (char *)__cil_tmp61;
3419#line 392
3420 printk("<5>%s on %s: Forcing standard packet format, incremental streaming mode and 72 samples/sec\n",
3421 __cil_tmp58, __cil_tmp62);
3422#line 396
3423 __cil_tmp63 = (unsigned long )mouse;
3424#line 396
3425 __cil_tmp64 = __cil_tmp63 + 8;
3426#line 396
3427 __cil_tmp65 = *((struct serio **)__cil_tmp64);
3428#line 396
3429 serio_write(__cil_tmp65, (unsigned char)83);
3430#line 397
3431 __ms = 50UL;
3432 }
3433#line 397
3434 goto ldv_20814;
3435 ldv_20813:
3436 {
3437#line 397
3438 __const_udelay(4295000UL);
3439 }
3440 ldv_20814:
3441#line 397
3442 tmp = __ms;
3443#line 397
3444 __ms = __ms - 1UL;
3445#line 397
3446 if (tmp != 0UL) {
3447#line 398
3448 goto ldv_20813;
3449 } else {
3450#line 400
3451 goto ldv_20815;
3452 }
3453 ldv_20815:
3454 {
3455#line 398
3456 __cil_tmp66 = (unsigned long )mouse;
3457#line 398
3458 __cil_tmp67 = __cil_tmp66 + 8;
3459#line 398
3460 __cil_tmp68 = *((struct serio **)__cil_tmp67);
3461#line 398
3462 serio_write(__cil_tmp68, (unsigned char)82);
3463#line 399
3464 __ms___0 = 50UL;
3465 }
3466#line 399
3467 goto ldv_20818;
3468 ldv_20817:
3469 {
3470#line 399
3471 __const_udelay(4295000UL);
3472 }
3473 ldv_20818:
3474#line 399
3475 tmp___0 = __ms___0;
3476#line 399
3477 __ms___0 = __ms___0 - 1UL;
3478#line 399
3479 if (tmp___0 != 0UL) {
3480#line 400
3481 goto ldv_20817;
3482 } else {
3483#line 402
3484 goto ldv_20819;
3485 }
3486 ldv_20819:
3487 {
3488#line 400
3489 __cil_tmp69 = (unsigned long )mouse;
3490#line 400
3491 __cil_tmp70 = __cil_tmp69 + 8;
3492#line 400
3493 __cil_tmp71 = *((struct serio **)__cil_tmp70);
3494#line 400
3495 serio_write(__cil_tmp71, (unsigned char)76);
3496 }
3497#line 401
3498 return;
3499}
3500}
3501#line 403 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
3502static void vsxxxaa_parse_buffer(struct vsxxxaa *mouse )
3503{ unsigned char *buf ;
3504 int stray_bytes ;
3505 int tmp ;
3506 int tmp___0 ;
3507 int tmp___1 ;
3508 unsigned long __cil_tmp7 ;
3509 unsigned long __cil_tmp8 ;
3510 unsigned char (*__cil_tmp9)[15U] ;
3511 unsigned long __cil_tmp10 ;
3512 unsigned long __cil_tmp11 ;
3513 char (*__cil_tmp12)[64U] ;
3514 char *__cil_tmp13 ;
3515 unsigned long __cil_tmp14 ;
3516 unsigned long __cil_tmp15 ;
3517 char (*__cil_tmp16)[32U] ;
3518 char *__cil_tmp17 ;
3519 unsigned long __cil_tmp18 ;
3520 unsigned long __cil_tmp19 ;
3521 unsigned char __cil_tmp20 ;
3522 unsigned int __cil_tmp21 ;
3523 unsigned char __cil_tmp22 ;
3524 signed char __cil_tmp23 ;
3525 int __cil_tmp24 ;
3526
3527 {
3528#line 405
3529 __cil_tmp7 = (unsigned long )mouse;
3530#line 405
3531 __cil_tmp8 = __cil_tmp7 + 16;
3532#line 405
3533 __cil_tmp9 = (unsigned char (*)[15U])__cil_tmp8;
3534#line 405
3535 buf = (unsigned char *)__cil_tmp9;
3536 ldv_20829: ;
3537#line 419
3538 goto ldv_20826;
3539 ldv_20825:
3540 {
3541#line 420
3542 __cil_tmp10 = (unsigned long )mouse;
3543#line 420
3544 __cil_tmp11 = __cil_tmp10 + 35;
3545#line 420
3546 __cil_tmp12 = (char (*)[64U])__cil_tmp11;
3547#line 420
3548 __cil_tmp13 = (char *)__cil_tmp12;
3549#line 420
3550 __cil_tmp14 = (unsigned long )mouse;
3551#line 420
3552 __cil_tmp15 = __cil_tmp14 + 99;
3553#line 420
3554 __cil_tmp16 = (char (*)[32U])__cil_tmp15;
3555#line 420
3556 __cil_tmp17 = (char *)__cil_tmp16;
3557#line 420
3558 printk("<3>%s on %s: Dropping a byte to regain sync with mouse data stream...\n",
3559 __cil_tmp13, __cil_tmp17);
3560#line 423
3561 vsxxxaa_drop_bytes(mouse, 1);
3562 }
3563 ldv_20826: ;
3564 {
3565#line 419
3566 __cil_tmp18 = (unsigned long )mouse;
3567#line 419
3568 __cil_tmp19 = __cil_tmp18 + 31;
3569#line 419
3570 __cil_tmp20 = *((unsigned char *)__cil_tmp19);
3571#line 419
3572 __cil_tmp21 = (unsigned int )__cil_tmp20;
3573#line 419
3574 if (__cil_tmp21 != 0U) {
3575 {
3576#line 419
3577 __cil_tmp22 = *buf;
3578#line 419
3579 __cil_tmp23 = (signed char )__cil_tmp22;
3580#line 419
3581 __cil_tmp24 = (int )__cil_tmp23;
3582#line 419
3583 if (__cil_tmp24 >= 0) {
3584#line 420
3585 goto ldv_20825;
3586 } else {
3587#line 422
3588 goto ldv_20827;
3589 }
3590 }
3591 } else {
3592#line 422
3593 goto ldv_20827;
3594 }
3595 }
3596 ldv_20827:
3597 {
3598#line 430
3599 tmp___1 = vsxxxaa_smells_like_packet(mouse, (unsigned char)128, 3UL);
3600 }
3601#line 430
3602 if (tmp___1 != 0) {
3603 {
3604#line 432
3605 stray_bytes = vsxxxaa_check_packet(mouse, 3);
3606 }
3607#line 433
3608 if (stray_bytes == 0) {
3609 {
3610#line 434
3611 vsxxxaa_handle_REL_packet(mouse);
3612 }
3613 } else {
3614
3615 }
3616 } else {
3617 {
3618#line 436
3619 tmp___0 = vsxxxaa_smells_like_packet(mouse, (unsigned char)192, 5UL);
3620 }
3621#line 436
3622 if (tmp___0 != 0) {
3623 {
3624#line 439
3625 stray_bytes = vsxxxaa_check_packet(mouse, 5);
3626 }
3627#line 440
3628 if (stray_bytes == 0) {
3629 {
3630#line 441
3631 vsxxxaa_handle_ABS_packet(mouse);
3632 }
3633 } else {
3634
3635 }
3636 } else {
3637 {
3638#line 443
3639 tmp = vsxxxaa_smells_like_packet(mouse, (unsigned char)160, 4UL);
3640 }
3641#line 443
3642 if (tmp != 0) {
3643 {
3644#line 446
3645 stray_bytes = vsxxxaa_check_packet(mouse, 4);
3646 }
3647#line 447
3648 if (stray_bytes == 0) {
3649 {
3650#line 448
3651 vsxxxaa_handle_POR_packet(mouse);
3652 }
3653 } else {
3654
3655 }
3656 } else {
3657#line 451
3658 goto ldv_20828;
3659 }
3660 }
3661 }
3662#line 454
3663 if (stray_bytes > 0) {
3664 {
3665#line 455
3666 printk("<3>Dropping %d bytes now...\n", stray_bytes);
3667#line 457
3668 vsxxxaa_drop_bytes(mouse, stray_bytes);
3669 }
3670 } else {
3671
3672 }
3673#line 460
3674 goto ldv_20829;
3675 ldv_20828: ;
3676#line 462
3677 return;
3678}
3679}
3680#line 463 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
3681static irqreturn_t vsxxxaa_interrupt(struct serio *serio , unsigned char data , unsigned int flags )
3682{ struct vsxxxaa *mouse ;
3683 void *tmp ;
3684 int __cil_tmp6 ;
3685 unsigned char __cil_tmp7 ;
3686
3687 {
3688 {
3689#line 466
3690 tmp = serio_get_drvdata(serio);
3691#line 466
3692 mouse = (struct vsxxxaa *)tmp;
3693#line 468
3694 __cil_tmp6 = (int )data;
3695#line 468
3696 __cil_tmp7 = (unsigned char )__cil_tmp6;
3697#line 468
3698 vsxxxaa_queue_byte(mouse, __cil_tmp7);
3699#line 469
3700 vsxxxaa_parse_buffer(mouse);
3701 }
3702#line 471
3703 return ((irqreturn_t )1);
3704}
3705}
3706#line 474 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
3707static void vsxxxaa_disconnect(struct serio *serio )
3708{ struct vsxxxaa *mouse ;
3709 void *tmp ;
3710 void *__cil_tmp4 ;
3711 struct input_dev *__cil_tmp5 ;
3712 void const *__cil_tmp6 ;
3713
3714 {
3715 {
3716#line 476
3717 tmp = serio_get_drvdata(serio);
3718#line 476
3719 mouse = (struct vsxxxaa *)tmp;
3720#line 478
3721 serio_close(serio);
3722#line 479
3723 __cil_tmp4 = (void *)0;
3724#line 479
3725 serio_set_drvdata(serio, __cil_tmp4);
3726#line 480
3727 __cil_tmp5 = *((struct input_dev **)mouse);
3728#line 480
3729 input_unregister_device(__cil_tmp5);
3730#line 481
3731 __cil_tmp6 = (void const *)mouse;
3732#line 481
3733 kfree(__cil_tmp6);
3734 }
3735#line 482
3736 return;
3737}
3738}
3739#line 484 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
3740static int vsxxxaa_connect(struct serio *serio , struct serio_driver *drv )
3741{ struct vsxxxaa *mouse ;
3742 struct input_dev *input_dev ;
3743 int err ;
3744 void *tmp ;
3745 struct vsxxxaa *__cil_tmp7 ;
3746 unsigned long __cil_tmp8 ;
3747 unsigned long __cil_tmp9 ;
3748 struct input_dev *__cil_tmp10 ;
3749 unsigned long __cil_tmp11 ;
3750 unsigned long __cil_tmp12 ;
3751 unsigned long __cil_tmp13 ;
3752 unsigned long __cil_tmp14 ;
3753 unsigned long __cil_tmp15 ;
3754 unsigned long __cil_tmp16 ;
3755 char (*__cil_tmp17)[64U] ;
3756 char *__cil_tmp18 ;
3757 unsigned long __cil_tmp19 ;
3758 unsigned long __cil_tmp20 ;
3759 char (*__cil_tmp21)[32U] ;
3760 char *__cil_tmp22 ;
3761 unsigned long __cil_tmp23 ;
3762 unsigned long __cil_tmp24 ;
3763 char (*__cil_tmp25)[32U] ;
3764 char *__cil_tmp26 ;
3765 unsigned long __cil_tmp27 ;
3766 unsigned long __cil_tmp28 ;
3767 char (*__cil_tmp29)[64U] ;
3768 unsigned long __cil_tmp30 ;
3769 unsigned long __cil_tmp31 ;
3770 unsigned long __cil_tmp32 ;
3771 unsigned long __cil_tmp33 ;
3772 char (*__cil_tmp34)[32U] ;
3773 unsigned long __cil_tmp35 ;
3774 unsigned long __cil_tmp36 ;
3775 unsigned long __cil_tmp37 ;
3776 unsigned long __cil_tmp38 ;
3777 unsigned long __cil_tmp39 ;
3778 unsigned long __cil_tmp40 ;
3779 unsigned long __cil_tmp41 ;
3780 unsigned long __cil_tmp42 ;
3781 unsigned long (*__cil_tmp43)[1U] ;
3782 unsigned long volatile *__cil_tmp44 ;
3783 unsigned long __cil_tmp45 ;
3784 unsigned long __cil_tmp46 ;
3785 unsigned long (*__cil_tmp47)[1U] ;
3786 unsigned long volatile *__cil_tmp48 ;
3787 unsigned long __cil_tmp49 ;
3788 unsigned long __cil_tmp50 ;
3789 unsigned long (*__cil_tmp51)[1U] ;
3790 unsigned long volatile *__cil_tmp52 ;
3791 unsigned long __cil_tmp53 ;
3792 unsigned long __cil_tmp54 ;
3793 unsigned long (*__cil_tmp55)[12U] ;
3794 unsigned long volatile *__cil_tmp56 ;
3795 unsigned long __cil_tmp57 ;
3796 unsigned long __cil_tmp58 ;
3797 unsigned long (*__cil_tmp59)[12U] ;
3798 unsigned long volatile *__cil_tmp60 ;
3799 unsigned long __cil_tmp61 ;
3800 unsigned long __cil_tmp62 ;
3801 unsigned long (*__cil_tmp63)[12U] ;
3802 unsigned long volatile *__cil_tmp64 ;
3803 unsigned long __cil_tmp65 ;
3804 unsigned long __cil_tmp66 ;
3805 unsigned long (*__cil_tmp67)[12U] ;
3806 unsigned long volatile *__cil_tmp68 ;
3807 unsigned long __cil_tmp69 ;
3808 unsigned long __cil_tmp70 ;
3809 unsigned long (*__cil_tmp71)[1U] ;
3810 unsigned long volatile *__cil_tmp72 ;
3811 unsigned long __cil_tmp73 ;
3812 unsigned long __cil_tmp74 ;
3813 unsigned long (*__cil_tmp75)[1U] ;
3814 unsigned long volatile *__cil_tmp76 ;
3815 void *__cil_tmp77 ;
3816 void *__cil_tmp78 ;
3817 void const *__cil_tmp79 ;
3818
3819 {
3820 {
3821#line 488
3822 err = -12;
3823#line 490
3824 tmp = kzalloc(136UL, 208U);
3825#line 490
3826 mouse = (struct vsxxxaa *)tmp;
3827#line 491
3828 input_dev = input_allocate_device();
3829 }
3830 {
3831#line 492
3832 __cil_tmp7 = (struct vsxxxaa *)0;
3833#line 492
3834 __cil_tmp8 = (unsigned long )__cil_tmp7;
3835#line 492
3836 __cil_tmp9 = (unsigned long )mouse;
3837#line 492
3838 if (__cil_tmp9 == __cil_tmp8) {
3839#line 493
3840 goto fail1;
3841 } else {
3842 {
3843#line 492
3844 __cil_tmp10 = (struct input_dev *)0;
3845#line 492
3846 __cil_tmp11 = (unsigned long )__cil_tmp10;
3847#line 492
3848 __cil_tmp12 = (unsigned long )input_dev;
3849#line 492
3850 if (__cil_tmp12 == __cil_tmp11) {
3851#line 493
3852 goto fail1;
3853 } else {
3854
3855 }
3856 }
3857 }
3858 }
3859 {
3860#line 495
3861 *((struct input_dev **)mouse) = input_dev;
3862#line 496
3863 __cil_tmp13 = (unsigned long )mouse;
3864#line 496
3865 __cil_tmp14 = __cil_tmp13 + 8;
3866#line 496
3867 *((struct serio **)__cil_tmp14) = serio;
3868#line 497
3869 __cil_tmp15 = (unsigned long )mouse;
3870#line 497
3871 __cil_tmp16 = __cil_tmp15 + 35;
3872#line 497
3873 __cil_tmp17 = (char (*)[64U])__cil_tmp16;
3874#line 497
3875 __cil_tmp18 = (char *)__cil_tmp17;
3876#line 497
3877 strlcat(__cil_tmp18, "DEC VSXXX-AA/-GA mouse or VSXXX-AB digitizer", 64UL);
3878#line 499
3879 __cil_tmp19 = (unsigned long )mouse;
3880#line 499
3881 __cil_tmp20 = __cil_tmp19 + 99;
3882#line 499
3883 __cil_tmp21 = (char (*)[32U])__cil_tmp20;
3884#line 499
3885 __cil_tmp22 = (char *)__cil_tmp21;
3886#line 499
3887 __cil_tmp23 = (unsigned long )serio;
3888#line 499
3889 __cil_tmp24 = __cil_tmp23 + 40;
3890#line 499
3891 __cil_tmp25 = (char (*)[32U])__cil_tmp24;
3892#line 499
3893 __cil_tmp26 = (char *)__cil_tmp25;
3894#line 499
3895 snprintf(__cil_tmp22, 32UL, "%s/input0", __cil_tmp26);
3896#line 501
3897 __cil_tmp27 = (unsigned long )mouse;
3898#line 501
3899 __cil_tmp28 = __cil_tmp27 + 35;
3900#line 501
3901 __cil_tmp29 = (char (*)[64U])__cil_tmp28;
3902#line 501
3903 *((char const **)input_dev) = (char const *)__cil_tmp29;
3904#line 502
3905 __cil_tmp30 = (unsigned long )input_dev;
3906#line 502
3907 __cil_tmp31 = __cil_tmp30 + 8;
3908#line 502
3909 __cil_tmp32 = (unsigned long )mouse;
3910#line 502
3911 __cil_tmp33 = __cil_tmp32 + 99;
3912#line 502
3913 __cil_tmp34 = (char (*)[32U])__cil_tmp33;
3914#line 502
3915 *((char const **)__cil_tmp31) = (char const *)__cil_tmp34;
3916#line 503
3917 __cil_tmp35 = (unsigned long )input_dev;
3918#line 503
3919 __cil_tmp36 = __cil_tmp35 + 24;
3920#line 503
3921 *((__u16 *)__cil_tmp36) = (__u16 )19U;
3922#line 504
3923 __cil_tmp37 = (unsigned long )input_dev;
3924#line 504
3925 __cil_tmp38 = __cil_tmp37 + 840;
3926#line 504
3927 __cil_tmp39 = (unsigned long )serio;
3928#line 504
3929 __cil_tmp40 = __cil_tmp39 + 416;
3930#line 504
3931 *((struct device **)__cil_tmp38) = (struct device *)__cil_tmp40;
3932#line 506
3933 __cil_tmp41 = (unsigned long )input_dev;
3934#line 506
3935 __cil_tmp42 = __cil_tmp41 + 40;
3936#line 506
3937 __cil_tmp43 = (unsigned long (*)[1U])__cil_tmp42;
3938#line 506
3939 __cil_tmp44 = (unsigned long volatile *)__cil_tmp43;
3940#line 506
3941 __set_bit(1, __cil_tmp44);
3942#line 507
3943 __cil_tmp45 = (unsigned long )input_dev;
3944#line 507
3945 __cil_tmp46 = __cil_tmp45 + 40;
3946#line 507
3947 __cil_tmp47 = (unsigned long (*)[1U])__cil_tmp46;
3948#line 507
3949 __cil_tmp48 = (unsigned long volatile *)__cil_tmp47;
3950#line 507
3951 __set_bit(2, __cil_tmp48);
3952#line 508
3953 __cil_tmp49 = (unsigned long )input_dev;
3954#line 508
3955 __cil_tmp50 = __cil_tmp49 + 40;
3956#line 508
3957 __cil_tmp51 = (unsigned long (*)[1U])__cil_tmp50;
3958#line 508
3959 __cil_tmp52 = (unsigned long volatile *)__cil_tmp51;
3960#line 508
3961 __set_bit(3, __cil_tmp52);
3962#line 509
3963 __cil_tmp53 = (unsigned long )input_dev;
3964#line 509
3965 __cil_tmp54 = __cil_tmp53 + 48;
3966#line 509
3967 __cil_tmp55 = (unsigned long (*)[12U])__cil_tmp54;
3968#line 509
3969 __cil_tmp56 = (unsigned long volatile *)__cil_tmp55;
3970#line 509
3971 __set_bit(272, __cil_tmp56);
3972#line 510
3973 __cil_tmp57 = (unsigned long )input_dev;
3974#line 510
3975 __cil_tmp58 = __cil_tmp57 + 48;
3976#line 510
3977 __cil_tmp59 = (unsigned long (*)[12U])__cil_tmp58;
3978#line 510
3979 __cil_tmp60 = (unsigned long volatile *)__cil_tmp59;
3980#line 510
3981 __set_bit(274, __cil_tmp60);
3982#line 511
3983 __cil_tmp61 = (unsigned long )input_dev;
3984#line 511
3985 __cil_tmp62 = __cil_tmp61 + 48;
3986#line 511
3987 __cil_tmp63 = (unsigned long (*)[12U])__cil_tmp62;
3988#line 511
3989 __cil_tmp64 = (unsigned long volatile *)__cil_tmp63;
3990#line 511
3991 __set_bit(273, __cil_tmp64);
3992#line 512
3993 __cil_tmp65 = (unsigned long )input_dev;
3994#line 512
3995 __cil_tmp66 = __cil_tmp65 + 48;
3996#line 512
3997 __cil_tmp67 = (unsigned long (*)[12U])__cil_tmp66;
3998#line 512
3999 __cil_tmp68 = (unsigned long volatile *)__cil_tmp67;
4000#line 512
4001 __set_bit(330, __cil_tmp68);
4002#line 513
4003 __cil_tmp69 = (unsigned long )input_dev;
4004#line 513
4005 __cil_tmp70 = __cil_tmp69 + 144;
4006#line 513
4007 __cil_tmp71 = (unsigned long (*)[1U])__cil_tmp70;
4008#line 513
4009 __cil_tmp72 = (unsigned long volatile *)__cil_tmp71;
4010#line 513
4011 __set_bit(0, __cil_tmp72);
4012#line 514
4013 __cil_tmp73 = (unsigned long )input_dev;
4014#line 514
4015 __cil_tmp74 = __cil_tmp73 + 144;
4016#line 514
4017 __cil_tmp75 = (unsigned long (*)[1U])__cil_tmp74;
4018#line 514
4019 __cil_tmp76 = (unsigned long volatile *)__cil_tmp75;
4020#line 514
4021 __set_bit(1, __cil_tmp76);
4022#line 515
4023 input_set_abs_params(input_dev, 0U, 0, 1023, 0, 0);
4024#line 516
4025 input_set_abs_params(input_dev, 1U, 0, 1023, 0, 0);
4026#line 518
4027 __cil_tmp77 = (void *)mouse;
4028#line 518
4029 serio_set_drvdata(serio, __cil_tmp77);
4030#line 520
4031 err = serio_open(serio, drv);
4032 }
4033#line 521
4034 if (err != 0) {
4035#line 522
4036 goto fail2;
4037 } else {
4038
4039 }
4040 {
4041#line 528
4042 serio_write(serio, (unsigned char)84);
4043#line 530
4044 err = input_register_device(input_dev);
4045 }
4046#line 531
4047 if (err != 0) {
4048#line 532
4049 goto fail3;
4050 } else {
4051
4052 }
4053#line 534
4054 return (0);
4055 fail3:
4056 {
4057#line 536
4058 serio_close(serio);
4059 }
4060 fail2:
4061 {
4062#line 537
4063 __cil_tmp78 = (void *)0;
4064#line 537
4065 serio_set_drvdata(serio, __cil_tmp78);
4066 }
4067 fail1:
4068 {
4069#line 538
4070 input_free_device(input_dev);
4071#line 539
4072 __cil_tmp79 = (void const *)mouse;
4073#line 539
4074 kfree(__cil_tmp79);
4075 }
4076#line 540
4077 return (err);
4078}
4079}
4080#line 543 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4081static struct serio_device_id vsxxaa_serio_ids[2U] = { {(__u8 )2U, (__u8 )255U, (__u8 )255U, (__u8 )8U},
4082 {(__u8 )0U, (unsigned char)0, (unsigned char)0, (unsigned char)0}};
4083#line 553 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4084struct serio_device_id const __mod_serio_device_table ;
4085#line 555 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4086static struct serio_driver vsxxxaa_drv =
4087#line 555
4088 {"Driver for DEC VSXXX-AA and -GA mice and VSXXX-AB tablet", (struct serio_device_id const *)(& vsxxaa_serio_ids),
4089 (_Bool)0, (void (*)(struct serio * ))0, & vsxxxaa_interrupt, & vsxxxaa_connect,
4090 (int (*)(struct serio * ))0, & vsxxxaa_disconnect, (void (*)(struct serio * ))0,
4091 {"vsxxxaa", (struct bus_type *)0, (struct module *)0, (char const *)0, (_Bool)0,
4092 (struct of_device_id const *)0, (int (*)(struct device * ))0, (int (*)(struct device * ))0,
4093 (void (*)(struct device * ))0, (int (*)(struct device * , pm_message_t ))0,
4094 (int (*)(struct device * ))0, (struct attribute_group const **)0, (struct dev_pm_ops const *)0,
4095 (struct driver_private *)0}};
4096#line 566 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4097static int vsxxxaa_init(void)
4098{ int tmp ;
4099
4100 {
4101 {
4102#line 568
4103 tmp = __serio_register_driver(& vsxxxaa_drv, & __this_module, "vsxxxaa");
4104 }
4105#line 568
4106 return (tmp);
4107}
4108}
4109#line 571 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4110static void vsxxxaa_exit(void)
4111{
4112
4113 {
4114 {
4115#line 573
4116 serio_unregister_driver(& vsxxxaa_drv);
4117 }
4118#line 574
4119 return;
4120}
4121}
4122#line 596
4123extern void ldv_check_final_state(void) ;
4124#line 599
4125extern void ldv_check_return_value(int ) ;
4126#line 602
4127extern void ldv_initialize(void) ;
4128#line 605
4129extern int __VERIFIER_nondet_int(void) ;
4130#line 608 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4131int LDV_IN_INTERRUPT ;
4132#line 611 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4133void main(void)
4134{ struct serio *var_group1 ;
4135 struct serio_driver *var_group2 ;
4136 int res_vsxxxaa_connect_11 ;
4137 unsigned char var_vsxxxaa_interrupt_9_p1 ;
4138 unsigned int var_vsxxxaa_interrupt_9_p2 ;
4139 int ldv_s_vsxxxaa_drv_serio_driver ;
4140 int tmp ;
4141 int tmp___0 ;
4142 int tmp___1 ;
4143 int __cil_tmp10 ;
4144 unsigned char __cil_tmp11 ;
4145
4146 {
4147 {
4148#line 734
4149 ldv_s_vsxxxaa_drv_serio_driver = 0;
4150#line 698
4151 LDV_IN_INTERRUPT = 1;
4152#line 707
4153 ldv_initialize();
4154#line 732
4155 tmp = vsxxxaa_init();
4156 }
4157#line 732
4158 if (tmp != 0) {
4159#line 733
4160 goto ldv_final;
4161 } else {
4162
4163 }
4164#line 738
4165 goto ldv_20895;
4166 ldv_20894:
4167 {
4168#line 742
4169 tmp___0 = __VERIFIER_nondet_int();
4170 }
4171#line 744
4172 if (tmp___0 == 0) {
4173#line 744
4174 goto case_0;
4175 } else
4176#line 782
4177 if (tmp___0 == 1) {
4178#line 782
4179 goto case_1;
4180 } else
4181#line 817
4182 if (tmp___0 == 2) {
4183#line 817
4184 goto case_2;
4185 } else {
4186 {
4187#line 852
4188 goto switch_default;
4189#line 742
4190 if (0) {
4191 case_0: ;
4192#line 747
4193 if (ldv_s_vsxxxaa_drv_serio_driver == 0) {
4194 {
4195#line 771
4196 res_vsxxxaa_connect_11 = vsxxxaa_connect(var_group1, var_group2);
4197#line 772
4198 ldv_check_return_value(res_vsxxxaa_connect_11);
4199 }
4200#line 773
4201 if (res_vsxxxaa_connect_11 != 0) {
4202#line 774
4203 goto ldv_module_exit;
4204 } else {
4205
4206 }
4207#line 775
4208 ldv_s_vsxxxaa_drv_serio_driver = ldv_s_vsxxxaa_drv_serio_driver + 1;
4209 } else {
4210
4211 }
4212#line 781
4213 goto ldv_20890;
4214 case_1: ;
4215#line 785
4216 if (ldv_s_vsxxxaa_drv_serio_driver == 1) {
4217 {
4218#line 809
4219 vsxxxaa_disconnect(var_group1);
4220#line 810
4221 ldv_s_vsxxxaa_drv_serio_driver = 0;
4222 }
4223 } else {
4224
4225 }
4226#line 816
4227 goto ldv_20890;
4228 case_2:
4229 {
4230#line 844
4231 __cil_tmp10 = (int )var_vsxxxaa_interrupt_9_p1;
4232#line 844
4233 __cil_tmp11 = (unsigned char )__cil_tmp10;
4234#line 844
4235 vsxxxaa_interrupt(var_group1, __cil_tmp11, var_vsxxxaa_interrupt_9_p2);
4236 }
4237#line 851
4238 goto ldv_20890;
4239 switch_default: ;
4240#line 852
4241 goto ldv_20890;
4242 } else {
4243 switch_break: ;
4244 }
4245 }
4246 }
4247 ldv_20890: ;
4248 ldv_20895:
4249 {
4250#line 738
4251 tmp___1 = __VERIFIER_nondet_int();
4252 }
4253#line 738
4254 if (tmp___1 != 0) {
4255#line 740
4256 goto ldv_20894;
4257 } else
4258#line 738
4259 if (ldv_s_vsxxxaa_drv_serio_driver != 0) {
4260#line 740
4261 goto ldv_20894;
4262 } else {
4263#line 742
4264 goto ldv_20896;
4265 }
4266 ldv_20896: ;
4267 ldv_module_exit:
4268 {
4269#line 883
4270 vsxxxaa_exit();
4271 }
4272 ldv_final:
4273 {
4274#line 886
4275 ldv_check_final_state();
4276 }
4277#line 889
4278 return;
4279}
4280}
4281#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
4282void ldv_blast_assert(void)
4283{
4284
4285 {
4286 ERROR: ;
4287#line 6
4288 goto ERROR;
4289}
4290}
4291#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
4292extern int __VERIFIER_nondet_int(void) ;
4293#line 910 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4294int ldv_spin = 0;
4295#line 914 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4296void ldv_check_alloc_flags(gfp_t flags )
4297{
4298
4299 {
4300#line 917
4301 if (ldv_spin != 0) {
4302#line 917
4303 if (flags != 32U) {
4304 {
4305#line 917
4306 ldv_blast_assert();
4307 }
4308 } else {
4309
4310 }
4311 } else {
4312
4313 }
4314#line 920
4315 return;
4316}
4317}
4318#line 920
4319extern struct page *ldv_some_page(void) ;
4320#line 923 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4321struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
4322{ struct page *tmp ;
4323
4324 {
4325#line 926
4326 if (ldv_spin != 0) {
4327#line 926
4328 if (flags != 32U) {
4329 {
4330#line 926
4331 ldv_blast_assert();
4332 }
4333 } else {
4334
4335 }
4336 } else {
4337
4338 }
4339 {
4340#line 928
4341 tmp = ldv_some_page();
4342 }
4343#line 928
4344 return (tmp);
4345}
4346}
4347#line 932 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4348void ldv_check_alloc_nonatomic(void)
4349{
4350
4351 {
4352#line 935
4353 if (ldv_spin != 0) {
4354 {
4355#line 935
4356 ldv_blast_assert();
4357 }
4358 } else {
4359
4360 }
4361#line 938
4362 return;
4363}
4364}
4365#line 939 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4366void ldv_spin_lock(void)
4367{
4368
4369 {
4370#line 942
4371 ldv_spin = 1;
4372#line 943
4373 return;
4374}
4375}
4376#line 946 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4377void ldv_spin_unlock(void)
4378{
4379
4380 {
4381#line 949
4382 ldv_spin = 0;
4383#line 950
4384 return;
4385}
4386}
4387#line 953 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4388int ldv_spin_trylock(void)
4389{ int is_lock ;
4390
4391 {
4392 {
4393#line 958
4394 is_lock = __VERIFIER_nondet_int();
4395 }
4396#line 960
4397 if (is_lock != 0) {
4398#line 963
4399 return (0);
4400 } else {
4401#line 968
4402 ldv_spin = 1;
4403#line 970
4404 return (1);
4405 }
4406}
4407}
4408#line 1137 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4409void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
4410{
4411
4412 {
4413 {
4414#line 1143
4415 ldv_check_alloc_flags(ldv_func_arg2);
4416#line 1145
4417 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
4418 }
4419#line 1146
4420 return ((void *)0);
4421}
4422}
4423#line 1148 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2957/dscv_tempdir/dscv/ri/43_1a/drivers/input/mouse/vsxxxaa.c.p"
4424__inline static void *kzalloc(size_t size , gfp_t flags )
4425{ void *tmp ;
4426
4427 {
4428 {
4429#line 1154
4430 ldv_check_alloc_flags(flags);
4431#line 1155
4432 tmp = __VERIFIER_nondet_pointer();
4433 }
4434#line 1155
4435 return (tmp);
4436}
4437}