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