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