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