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