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