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