1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 22 "include/asm-generic/int-ll64.h"
7typedef short __s16;
8#line 23 "include/asm-generic/int-ll64.h"
9typedef unsigned short __u16;
10#line 25 "include/asm-generic/int-ll64.h"
11typedef int __s32;
12#line 26 "include/asm-generic/int-ll64.h"
13typedef unsigned int __u32;
14#line 29 "include/asm-generic/int-ll64.h"
15typedef long long __s64;
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 31 "include/asm-generic/posix_types.h"
37typedef int __kernel_pid_t;
38#line 52 "include/asm-generic/posix_types.h"
39typedef unsigned int __kernel_uid32_t;
40#line 53 "include/asm-generic/posix_types.h"
41typedef unsigned int __kernel_gid32_t;
42#line 75 "include/asm-generic/posix_types.h"
43typedef __kernel_ulong_t __kernel_size_t;
44#line 76 "include/asm-generic/posix_types.h"
45typedef __kernel_long_t __kernel_ssize_t;
46#line 91 "include/asm-generic/posix_types.h"
47typedef long long __kernel_loff_t;
48#line 92 "include/asm-generic/posix_types.h"
49typedef __kernel_long_t __kernel_time_t;
50#line 93 "include/asm-generic/posix_types.h"
51typedef __kernel_long_t __kernel_clock_t;
52#line 94 "include/asm-generic/posix_types.h"
53typedef int __kernel_timer_t;
54#line 95 "include/asm-generic/posix_types.h"
55typedef int __kernel_clockid_t;
56#line 21 "include/linux/types.h"
57typedef __u32 __kernel_dev_t;
58#line 24 "include/linux/types.h"
59typedef __kernel_dev_t dev_t;
60#line 27 "include/linux/types.h"
61typedef unsigned short umode_t;
62#line 30 "include/linux/types.h"
63typedef __kernel_pid_t pid_t;
64#line 35 "include/linux/types.h"
65typedef __kernel_clockid_t clockid_t;
66#line 38 "include/linux/types.h"
67typedef _Bool bool;
68#line 40 "include/linux/types.h"
69typedef __kernel_uid32_t uid_t;
70#line 41 "include/linux/types.h"
71typedef __kernel_gid32_t gid_t;
72#line 54 "include/linux/types.h"
73typedef __kernel_loff_t loff_t;
74#line 63 "include/linux/types.h"
75typedef __kernel_size_t size_t;
76#line 68 "include/linux/types.h"
77typedef __kernel_ssize_t ssize_t;
78#line 78 "include/linux/types.h"
79typedef __kernel_time_t time_t;
80#line 111 "include/linux/types.h"
81typedef __s32 int32_t;
82#line 117 "include/linux/types.h"
83typedef __u32 uint32_t;
84#line 142 "include/linux/types.h"
85typedef unsigned long sector_t;
86#line 143 "include/linux/types.h"
87typedef unsigned long blkcnt_t;
88#line 202 "include/linux/types.h"
89typedef unsigned int gfp_t;
90#line 203 "include/linux/types.h"
91typedef unsigned int fmode_t;
92#line 206 "include/linux/types.h"
93typedef u64 phys_addr_t;
94#line 211 "include/linux/types.h"
95typedef phys_addr_t resource_size_t;
96#line 219 "include/linux/types.h"
97struct __anonstruct_atomic_t_7 {
98 int counter ;
99};
100#line 219 "include/linux/types.h"
101typedef struct __anonstruct_atomic_t_7 atomic_t;
102#line 224 "include/linux/types.h"
103struct __anonstruct_atomic64_t_8 {
104 long counter ;
105};
106#line 224 "include/linux/types.h"
107typedef struct __anonstruct_atomic64_t_8 atomic64_t;
108#line 229 "include/linux/types.h"
109struct list_head {
110 struct list_head *next ;
111 struct list_head *prev ;
112};
113#line 233
114struct hlist_node;
115#line 233 "include/linux/types.h"
116struct hlist_head {
117 struct hlist_node *first ;
118};
119#line 237 "include/linux/types.h"
120struct hlist_node {
121 struct hlist_node *next ;
122 struct hlist_node **pprev ;
123};
124#line 253 "include/linux/types.h"
125struct rcu_head {
126 struct rcu_head *next ;
127 void (*func)(struct rcu_head *head ) ;
128};
129#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
130struct module;
131#line 56
132struct module;
133#line 146 "include/linux/init.h"
134typedef void (*ctor_fn_t)(void);
135#line 47 "include/linux/dynamic_debug.h"
136struct device;
137#line 47
138struct device;
139#line 135 "include/linux/kernel.h"
140struct completion;
141#line 135
142struct completion;
143#line 136
144struct pt_regs;
145#line 136
146struct pt_regs;
147#line 349
148struct pid;
149#line 349
150struct pid;
151#line 12 "include/linux/thread_info.h"
152struct timespec;
153#line 12
154struct timespec;
155#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
156struct page;
157#line 18
158struct page;
159#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
160struct task_struct;
161#line 20
162struct task_struct;
163#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
164struct task_struct;
165#line 8
166struct mm_struct;
167#line 8
168struct mm_struct;
169#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
170struct pt_regs {
171 unsigned long r15 ;
172 unsigned long r14 ;
173 unsigned long r13 ;
174 unsigned long r12 ;
175 unsigned long bp ;
176 unsigned long bx ;
177 unsigned long r11 ;
178 unsigned long r10 ;
179 unsigned long r9 ;
180 unsigned long r8 ;
181 unsigned long ax ;
182 unsigned long cx ;
183 unsigned long dx ;
184 unsigned long si ;
185 unsigned long di ;
186 unsigned long orig_ax ;
187 unsigned long ip ;
188 unsigned long cs ;
189 unsigned long flags ;
190 unsigned long sp ;
191 unsigned long ss ;
192};
193#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
194struct __anonstruct____missing_field_name_15 {
195 unsigned int a ;
196 unsigned int b ;
197};
198#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
199struct __anonstruct____missing_field_name_16 {
200 u16 limit0 ;
201 u16 base0 ;
202 unsigned int base1 : 8 ;
203 unsigned int type : 4 ;
204 unsigned int s : 1 ;
205 unsigned int dpl : 2 ;
206 unsigned int p : 1 ;
207 unsigned int limit : 4 ;
208 unsigned int avl : 1 ;
209 unsigned int l : 1 ;
210 unsigned int d : 1 ;
211 unsigned int g : 1 ;
212 unsigned int base2 : 8 ;
213};
214#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
215union __anonunion____missing_field_name_14 {
216 struct __anonstruct____missing_field_name_15 __annonCompField5 ;
217 struct __anonstruct____missing_field_name_16 __annonCompField6 ;
218};
219#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
220struct desc_struct {
221 union __anonunion____missing_field_name_14 __annonCompField7 ;
222} __attribute__((__packed__)) ;
223#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
224typedef unsigned long pgdval_t;
225#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
226typedef unsigned long pgprotval_t;
227#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
228struct pgprot {
229 pgprotval_t pgprot ;
230};
231#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
232typedef struct pgprot pgprot_t;
233#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
234struct __anonstruct_pgd_t_20 {
235 pgdval_t pgd ;
236};
237#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
238typedef struct __anonstruct_pgd_t_20 pgd_t;
239#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
240typedef struct page *pgtable_t;
241#line 295
242struct file;
243#line 295
244struct file;
245#line 313
246struct seq_file;
247#line 313
248struct seq_file;
249#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
250struct page;
251#line 47
252struct thread_struct;
253#line 47
254struct thread_struct;
255#line 50
256struct mm_struct;
257#line 51
258struct desc_struct;
259#line 52
260struct task_struct;
261#line 53
262struct cpumask;
263#line 53
264struct cpumask;
265#line 329
266struct arch_spinlock;
267#line 329
268struct arch_spinlock;
269#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
270struct task_struct;
271#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
272struct kernel_vm86_regs {
273 struct pt_regs pt ;
274 unsigned short es ;
275 unsigned short __esh ;
276 unsigned short ds ;
277 unsigned short __dsh ;
278 unsigned short fs ;
279 unsigned short __fsh ;
280 unsigned short gs ;
281 unsigned short __gsh ;
282};
283#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
284union __anonunion____missing_field_name_24 {
285 struct pt_regs *regs ;
286 struct kernel_vm86_regs *vm86 ;
287};
288#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
289struct math_emu_info {
290 long ___orig_eip ;
291 union __anonunion____missing_field_name_24 __annonCompField8 ;
292};
293#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
294struct task_struct;
295#line 10 "include/asm-generic/bug.h"
296struct bug_entry {
297 int bug_addr_disp ;
298 int file_disp ;
299 unsigned short line ;
300 unsigned short flags ;
301};
302#line 12 "include/linux/bug.h"
303struct pt_regs;
304#line 14 "include/linux/cpumask.h"
305struct cpumask {
306 unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
307};
308#line 14 "include/linux/cpumask.h"
309typedef struct cpumask cpumask_t;
310#line 637 "include/linux/cpumask.h"
311typedef struct cpumask *cpumask_var_t;
312#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
313struct static_key;
314#line 234
315struct static_key;
316#line 11 "include/linux/personality.h"
317struct pt_regs;
318#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
319struct i387_fsave_struct {
320 u32 cwd ;
321 u32 swd ;
322 u32 twd ;
323 u32 fip ;
324 u32 fcs ;
325 u32 foo ;
326 u32 fos ;
327 u32 st_space[20] ;
328 u32 status ;
329};
330#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
331struct __anonstruct____missing_field_name_31 {
332 u64 rip ;
333 u64 rdp ;
334};
335#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
336struct __anonstruct____missing_field_name_32 {
337 u32 fip ;
338 u32 fcs ;
339 u32 foo ;
340 u32 fos ;
341};
342#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
343union __anonunion____missing_field_name_30 {
344 struct __anonstruct____missing_field_name_31 __annonCompField12 ;
345 struct __anonstruct____missing_field_name_32 __annonCompField13 ;
346};
347#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
348union __anonunion____missing_field_name_33 {
349 u32 padding1[12] ;
350 u32 sw_reserved[12] ;
351};
352#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
353struct i387_fxsave_struct {
354 u16 cwd ;
355 u16 swd ;
356 u16 twd ;
357 u16 fop ;
358 union __anonunion____missing_field_name_30 __annonCompField14 ;
359 u32 mxcsr ;
360 u32 mxcsr_mask ;
361 u32 st_space[32] ;
362 u32 xmm_space[64] ;
363 u32 padding[12] ;
364 union __anonunion____missing_field_name_33 __annonCompField15 ;
365} __attribute__((__aligned__(16))) ;
366#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
367struct i387_soft_struct {
368 u32 cwd ;
369 u32 swd ;
370 u32 twd ;
371 u32 fip ;
372 u32 fcs ;
373 u32 foo ;
374 u32 fos ;
375 u32 st_space[20] ;
376 u8 ftop ;
377 u8 changed ;
378 u8 lookahead ;
379 u8 no_update ;
380 u8 rm ;
381 u8 alimit ;
382 struct math_emu_info *info ;
383 u32 entry_eip ;
384};
385#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
386struct ymmh_struct {
387 u32 ymmh_space[64] ;
388};
389#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
390struct xsave_hdr_struct {
391 u64 xstate_bv ;
392 u64 reserved1[2] ;
393 u64 reserved2[5] ;
394} __attribute__((__packed__)) ;
395#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
396struct xsave_struct {
397 struct i387_fxsave_struct i387 ;
398 struct xsave_hdr_struct xsave_hdr ;
399 struct ymmh_struct ymmh ;
400} __attribute__((__packed__, __aligned__(64))) ;
401#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
402union thread_xstate {
403 struct i387_fsave_struct fsave ;
404 struct i387_fxsave_struct fxsave ;
405 struct i387_soft_struct soft ;
406 struct xsave_struct xsave ;
407};
408#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
409struct fpu {
410 unsigned int last_cpu ;
411 unsigned int has_fpu ;
412 union thread_xstate *state ;
413};
414#line 433
415struct kmem_cache;
416#line 435
417struct perf_event;
418#line 435
419struct perf_event;
420#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
421struct thread_struct {
422 struct desc_struct tls_array[3] ;
423 unsigned long sp0 ;
424 unsigned long sp ;
425 unsigned long usersp ;
426 unsigned short es ;
427 unsigned short ds ;
428 unsigned short fsindex ;
429 unsigned short gsindex ;
430 unsigned long fs ;
431 unsigned long gs ;
432 struct perf_event *ptrace_bps[4] ;
433 unsigned long debugreg6 ;
434 unsigned long ptrace_dr7 ;
435 unsigned long cr2 ;
436 unsigned long trap_nr ;
437 unsigned long error_code ;
438 struct fpu fpu ;
439 unsigned long *io_bitmap_ptr ;
440 unsigned long iopl ;
441 unsigned int io_bitmap_max ;
442};
443#line 23 "include/asm-generic/atomic-long.h"
444typedef atomic64_t atomic_long_t;
445#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
446typedef u16 __ticket_t;
447#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
448typedef u32 __ticketpair_t;
449#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
450struct __raw_tickets {
451 __ticket_t head ;
452 __ticket_t tail ;
453};
454#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
455union __anonunion____missing_field_name_36 {
456 __ticketpair_t head_tail ;
457 struct __raw_tickets tickets ;
458};
459#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
460struct arch_spinlock {
461 union __anonunion____missing_field_name_36 __annonCompField17 ;
462};
463#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
464typedef struct arch_spinlock arch_spinlock_t;
465#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
466struct __anonstruct____missing_field_name_38 {
467 u32 read ;
468 s32 write ;
469};
470#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
471union __anonunion_arch_rwlock_t_37 {
472 s64 lock ;
473 struct __anonstruct____missing_field_name_38 __annonCompField18 ;
474};
475#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
476typedef union __anonunion_arch_rwlock_t_37 arch_rwlock_t;
477#line 12 "include/linux/lockdep.h"
478struct task_struct;
479#line 391 "include/linux/lockdep.h"
480struct lock_class_key {
481
482};
483#line 20 "include/linux/spinlock_types.h"
484struct raw_spinlock {
485 arch_spinlock_t raw_lock ;
486 unsigned int magic ;
487 unsigned int owner_cpu ;
488 void *owner ;
489};
490#line 20 "include/linux/spinlock_types.h"
491typedef struct raw_spinlock raw_spinlock_t;
492#line 64 "include/linux/spinlock_types.h"
493union __anonunion____missing_field_name_39 {
494 struct raw_spinlock rlock ;
495};
496#line 64 "include/linux/spinlock_types.h"
497struct spinlock {
498 union __anonunion____missing_field_name_39 __annonCompField19 ;
499};
500#line 64 "include/linux/spinlock_types.h"
501typedef struct spinlock spinlock_t;
502#line 11 "include/linux/rwlock_types.h"
503struct __anonstruct_rwlock_t_40 {
504 arch_rwlock_t raw_lock ;
505 unsigned int magic ;
506 unsigned int owner_cpu ;
507 void *owner ;
508};
509#line 11 "include/linux/rwlock_types.h"
510typedef struct __anonstruct_rwlock_t_40 rwlock_t;
511#line 119 "include/linux/seqlock.h"
512struct seqcount {
513 unsigned int sequence ;
514};
515#line 119 "include/linux/seqlock.h"
516typedef struct seqcount seqcount_t;
517#line 14 "include/linux/time.h"
518struct timespec {
519 __kernel_time_t tv_sec ;
520 long tv_nsec ;
521};
522#line 46 "include/linux/ktime.h"
523union ktime {
524 s64 tv64 ;
525};
526#line 59 "include/linux/ktime.h"
527typedef union ktime ktime_t;
528#line 10 "include/linux/timer.h"
529struct tvec_base;
530#line 10
531struct tvec_base;
532#line 12 "include/linux/timer.h"
533struct timer_list {
534 struct list_head entry ;
535 unsigned long expires ;
536 struct tvec_base *base ;
537 void (*function)(unsigned long ) ;
538 unsigned long data ;
539 int slack ;
540 int start_pid ;
541 void *start_site ;
542 char start_comm[16] ;
543};
544#line 289
545struct hrtimer;
546#line 289
547struct hrtimer;
548#line 290
549enum hrtimer_restart;
550#line 10 "include/linux/irqreturn.h"
551enum irqreturn {
552 IRQ_NONE = 0,
553 IRQ_HANDLED = 1,
554 IRQ_WAKE_THREAD = 2
555} ;
556#line 16 "include/linux/irqreturn.h"
557typedef enum irqreturn irqreturn_t;
558#line 18 "include/linux/ioport.h"
559struct resource {
560 resource_size_t start ;
561 resource_size_t end ;
562 char const *name ;
563 unsigned long flags ;
564 struct resource *parent ;
565 struct resource *sibling ;
566 struct resource *child ;
567};
568#line 202
569struct device;
570#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
571struct device;
572#line 17 "include/linux/workqueue.h"
573struct work_struct;
574#line 17
575struct work_struct;
576#line 79 "include/linux/workqueue.h"
577struct work_struct {
578 atomic_long_t data ;
579 struct list_head entry ;
580 void (*func)(struct work_struct *work ) ;
581};
582#line 92 "include/linux/workqueue.h"
583struct delayed_work {
584 struct work_struct work ;
585 struct timer_list timer ;
586};
587#line 49 "include/linux/wait.h"
588struct __wait_queue_head {
589 spinlock_t lock ;
590 struct list_head task_list ;
591};
592#line 53 "include/linux/wait.h"
593typedef struct __wait_queue_head wait_queue_head_t;
594#line 55
595struct task_struct;
596#line 25 "include/linux/completion.h"
597struct completion {
598 unsigned int done ;
599 wait_queue_head_t wait ;
600};
601#line 42 "include/linux/pm.h"
602struct device;
603#line 50 "include/linux/pm.h"
604struct pm_message {
605 int event ;
606};
607#line 50 "include/linux/pm.h"
608typedef struct pm_message pm_message_t;
609#line 264 "include/linux/pm.h"
610struct dev_pm_ops {
611 int (*prepare)(struct device *dev ) ;
612 void (*complete)(struct device *dev ) ;
613 int (*suspend)(struct device *dev ) ;
614 int (*resume)(struct device *dev ) ;
615 int (*freeze)(struct device *dev ) ;
616 int (*thaw)(struct device *dev ) ;
617 int (*poweroff)(struct device *dev ) ;
618 int (*restore)(struct device *dev ) ;
619 int (*suspend_late)(struct device *dev ) ;
620 int (*resume_early)(struct device *dev ) ;
621 int (*freeze_late)(struct device *dev ) ;
622 int (*thaw_early)(struct device *dev ) ;
623 int (*poweroff_late)(struct device *dev ) ;
624 int (*restore_early)(struct device *dev ) ;
625 int (*suspend_noirq)(struct device *dev ) ;
626 int (*resume_noirq)(struct device *dev ) ;
627 int (*freeze_noirq)(struct device *dev ) ;
628 int (*thaw_noirq)(struct device *dev ) ;
629 int (*poweroff_noirq)(struct device *dev ) ;
630 int (*restore_noirq)(struct device *dev ) ;
631 int (*runtime_suspend)(struct device *dev ) ;
632 int (*runtime_resume)(struct device *dev ) ;
633 int (*runtime_idle)(struct device *dev ) ;
634};
635#line 458
636enum rpm_status {
637 RPM_ACTIVE = 0,
638 RPM_RESUMING = 1,
639 RPM_SUSPENDED = 2,
640 RPM_SUSPENDING = 3
641} ;
642#line 480
643enum rpm_request {
644 RPM_REQ_NONE = 0,
645 RPM_REQ_IDLE = 1,
646 RPM_REQ_SUSPEND = 2,
647 RPM_REQ_AUTOSUSPEND = 3,
648 RPM_REQ_RESUME = 4
649} ;
650#line 488
651struct wakeup_source;
652#line 488
653struct wakeup_source;
654#line 495 "include/linux/pm.h"
655struct pm_subsys_data {
656 spinlock_t lock ;
657 unsigned int refcount ;
658};
659#line 506
660struct dev_pm_qos_request;
661#line 506
662struct pm_qos_constraints;
663#line 506 "include/linux/pm.h"
664struct dev_pm_info {
665 pm_message_t power_state ;
666 unsigned int can_wakeup : 1 ;
667 unsigned int async_suspend : 1 ;
668 bool is_prepared : 1 ;
669 bool is_suspended : 1 ;
670 bool ignore_children : 1 ;
671 spinlock_t lock ;
672 struct list_head entry ;
673 struct completion completion ;
674 struct wakeup_source *wakeup ;
675 bool wakeup_path : 1 ;
676 struct timer_list suspend_timer ;
677 unsigned long timer_expires ;
678 struct work_struct work ;
679 wait_queue_head_t wait_queue ;
680 atomic_t usage_count ;
681 atomic_t child_count ;
682 unsigned int disable_depth : 3 ;
683 unsigned int idle_notification : 1 ;
684 unsigned int request_pending : 1 ;
685 unsigned int deferred_resume : 1 ;
686 unsigned int run_wake : 1 ;
687 unsigned int runtime_auto : 1 ;
688 unsigned int no_callbacks : 1 ;
689 unsigned int irq_safe : 1 ;
690 unsigned int use_autosuspend : 1 ;
691 unsigned int timer_autosuspends : 1 ;
692 enum rpm_request request ;
693 enum rpm_status runtime_status ;
694 int runtime_error ;
695 int autosuspend_delay ;
696 unsigned long last_busy ;
697 unsigned long active_jiffies ;
698 unsigned long suspended_jiffies ;
699 unsigned long accounting_timestamp ;
700 ktime_t suspend_time ;
701 s64 max_time_suspended_ns ;
702 struct dev_pm_qos_request *pq_req ;
703 struct pm_subsys_data *subsys_data ;
704 struct pm_qos_constraints *constraints ;
705};
706#line 564 "include/linux/pm.h"
707struct dev_pm_domain {
708 struct dev_pm_ops ops ;
709};
710#line 98 "include/linux/nodemask.h"
711struct __anonstruct_nodemask_t_109 {
712 unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
713};
714#line 98 "include/linux/nodemask.h"
715typedef struct __anonstruct_nodemask_t_109 nodemask_t;
716#line 48 "include/linux/mutex.h"
717struct mutex {
718 atomic_t count ;
719 spinlock_t wait_lock ;
720 struct list_head wait_list ;
721 struct task_struct *owner ;
722 char const *name ;
723 void *magic ;
724};
725#line 69 "include/linux/mutex.h"
726struct mutex_waiter {
727 struct list_head list ;
728 struct task_struct *task ;
729 void *magic ;
730};
731#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
732struct __anonstruct_mm_context_t_110 {
733 void *ldt ;
734 int size ;
735 unsigned short ia32_compat ;
736 struct mutex lock ;
737 void *vdso ;
738};
739#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
740typedef struct __anonstruct_mm_context_t_110 mm_context_t;
741#line 8 "include/linux/vmalloc.h"
742struct vm_area_struct;
743#line 8
744struct vm_area_struct;
745#line 60 "include/linux/pageblock-flags.h"
746struct page;
747#line 19 "include/linux/rwsem.h"
748struct rw_semaphore;
749#line 19
750struct rw_semaphore;
751#line 25 "include/linux/rwsem.h"
752struct rw_semaphore {
753 long count ;
754 raw_spinlock_t wait_lock ;
755 struct list_head wait_list ;
756};
757#line 9 "include/linux/memory_hotplug.h"
758struct page;
759#line 994 "include/linux/mmzone.h"
760struct page;
761#line 10 "include/linux/gfp.h"
762struct vm_area_struct;
763#line 31 "include/linux/irq.h"
764struct seq_file;
765#line 32
766struct module;
767#line 12 "include/linux/irqdesc.h"
768struct proc_dir_entry;
769#line 12
770struct proc_dir_entry;
771#line 14
772struct module;
773#line 16 "include/linux/profile.h"
774struct proc_dir_entry;
775#line 17
776struct pt_regs;
777#line 65
778struct task_struct;
779#line 66
780struct mm_struct;
781#line 88
782struct pt_regs;
783#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
784struct exception_table_entry {
785 unsigned long insn ;
786 unsigned long fixup ;
787};
788#line 132 "include/linux/hardirq.h"
789struct task_struct;
790#line 100 "include/linux/rbtree.h"
791struct rb_node {
792 unsigned long rb_parent_color ;
793 struct rb_node *rb_right ;
794 struct rb_node *rb_left ;
795} __attribute__((__aligned__(sizeof(long )))) ;
796#line 110 "include/linux/rbtree.h"
797struct rb_root {
798 struct rb_node *rb_node ;
799};
800#line 8 "include/linux/timerqueue.h"
801struct timerqueue_node {
802 struct rb_node node ;
803 ktime_t expires ;
804};
805#line 13 "include/linux/timerqueue.h"
806struct timerqueue_head {
807 struct rb_root head ;
808 struct timerqueue_node *next ;
809};
810#line 27 "include/linux/hrtimer.h"
811struct hrtimer_clock_base;
812#line 27
813struct hrtimer_clock_base;
814#line 28
815struct hrtimer_cpu_base;
816#line 28
817struct hrtimer_cpu_base;
818#line 44
819enum hrtimer_restart {
820 HRTIMER_NORESTART = 0,
821 HRTIMER_RESTART = 1
822} ;
823#line 108 "include/linux/hrtimer.h"
824struct hrtimer {
825 struct timerqueue_node node ;
826 ktime_t _softexpires ;
827 enum hrtimer_restart (*function)(struct hrtimer * ) ;
828 struct hrtimer_clock_base *base ;
829 unsigned long state ;
830 int start_pid ;
831 void *start_site ;
832 char start_comm[16] ;
833};
834#line 145 "include/linux/hrtimer.h"
835struct hrtimer_clock_base {
836 struct hrtimer_cpu_base *cpu_base ;
837 int index ;
838 clockid_t clockid ;
839 struct timerqueue_head active ;
840 ktime_t resolution ;
841 ktime_t (*get_time)(void) ;
842 ktime_t softirq_time ;
843 ktime_t offset ;
844};
845#line 178 "include/linux/hrtimer.h"
846struct hrtimer_cpu_base {
847 raw_spinlock_t lock ;
848 unsigned long active_bases ;
849 ktime_t expires_next ;
850 int hres_active ;
851 int hang_detected ;
852 unsigned long nr_events ;
853 unsigned long nr_retries ;
854 unsigned long nr_hangs ;
855 ktime_t max_hang_time ;
856 struct hrtimer_clock_base clock_base[3] ;
857};
858#line 22 "include/linux/kref.h"
859struct kref {
860 atomic_t refcount ;
861};
862#line 187 "include/linux/interrupt.h"
863struct device;
864#line 695
865struct seq_file;
866#line 62 "include/linux/stat.h"
867struct kstat {
868 u64 ino ;
869 dev_t dev ;
870 umode_t mode ;
871 unsigned int nlink ;
872 uid_t uid ;
873 gid_t gid ;
874 dev_t rdev ;
875 loff_t size ;
876 struct timespec atime ;
877 struct timespec mtime ;
878 struct timespec ctime ;
879 unsigned long blksize ;
880 unsigned long long blocks ;
881};
882#line 29 "include/linux/sysctl.h"
883struct completion;
884#line 939
885struct nsproxy;
886#line 939
887struct nsproxy;
888#line 48 "include/linux/kmod.h"
889struct cred;
890#line 48
891struct cred;
892#line 49
893struct file;
894#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
895struct task_struct;
896#line 18 "include/linux/elf.h"
897typedef __u64 Elf64_Addr;
898#line 19 "include/linux/elf.h"
899typedef __u16 Elf64_Half;
900#line 23 "include/linux/elf.h"
901typedef __u32 Elf64_Word;
902#line 24 "include/linux/elf.h"
903typedef __u64 Elf64_Xword;
904#line 194 "include/linux/elf.h"
905struct elf64_sym {
906 Elf64_Word st_name ;
907 unsigned char st_info ;
908 unsigned char st_other ;
909 Elf64_Half st_shndx ;
910 Elf64_Addr st_value ;
911 Elf64_Xword st_size ;
912};
913#line 194 "include/linux/elf.h"
914typedef struct elf64_sym Elf64_Sym;
915#line 438
916struct file;
917#line 20 "include/linux/kobject_ns.h"
918struct sock;
919#line 20
920struct sock;
921#line 21
922struct kobject;
923#line 21
924struct kobject;
925#line 27
926enum kobj_ns_type {
927 KOBJ_NS_TYPE_NONE = 0,
928 KOBJ_NS_TYPE_NET = 1,
929 KOBJ_NS_TYPES = 2
930} ;
931#line 40 "include/linux/kobject_ns.h"
932struct kobj_ns_type_operations {
933 enum kobj_ns_type type ;
934 void *(*grab_current_ns)(void) ;
935 void const *(*netlink_ns)(struct sock *sk ) ;
936 void const *(*initial_ns)(void) ;
937 void (*drop_ns)(void * ) ;
938};
939#line 22 "include/linux/sysfs.h"
940struct kobject;
941#line 23
942struct module;
943#line 24
944enum kobj_ns_type;
945#line 26 "include/linux/sysfs.h"
946struct attribute {
947 char const *name ;
948 umode_t mode ;
949};
950#line 56 "include/linux/sysfs.h"
951struct attribute_group {
952 char const *name ;
953 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
954 struct attribute **attrs ;
955};
956#line 85
957struct file;
958#line 86
959struct vm_area_struct;
960#line 88 "include/linux/sysfs.h"
961struct bin_attribute {
962 struct attribute attr ;
963 size_t size ;
964 void *private ;
965 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
966 loff_t , size_t ) ;
967 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
968 loff_t , size_t ) ;
969 int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
970};
971#line 112 "include/linux/sysfs.h"
972struct sysfs_ops {
973 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
974 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
975 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
976};
977#line 118
978struct sysfs_dirent;
979#line 118
980struct sysfs_dirent;
981#line 60 "include/linux/kobject.h"
982struct kset;
983#line 60
984struct kobj_type;
985#line 60 "include/linux/kobject.h"
986struct kobject {
987 char const *name ;
988 struct list_head entry ;
989 struct kobject *parent ;
990 struct kset *kset ;
991 struct kobj_type *ktype ;
992 struct sysfs_dirent *sd ;
993 struct kref kref ;
994 unsigned int state_initialized : 1 ;
995 unsigned int state_in_sysfs : 1 ;
996 unsigned int state_add_uevent_sent : 1 ;
997 unsigned int state_remove_uevent_sent : 1 ;
998 unsigned int uevent_suppress : 1 ;
999};
1000#line 108 "include/linux/kobject.h"
1001struct kobj_type {
1002 void (*release)(struct kobject *kobj ) ;
1003 struct sysfs_ops const *sysfs_ops ;
1004 struct attribute **default_attrs ;
1005 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject *kobj ) ;
1006 void const *(*namespace)(struct kobject *kobj ) ;
1007};
1008#line 116 "include/linux/kobject.h"
1009struct kobj_uevent_env {
1010 char *envp[32] ;
1011 int envp_idx ;
1012 char buf[2048] ;
1013 int buflen ;
1014};
1015#line 123 "include/linux/kobject.h"
1016struct kset_uevent_ops {
1017 int (* const filter)(struct kset *kset , struct kobject *kobj ) ;
1018 char const *(* const name)(struct kset *kset , struct kobject *kobj ) ;
1019 int (* const uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
1020};
1021#line 140
1022struct sock;
1023#line 159 "include/linux/kobject.h"
1024struct kset {
1025 struct list_head list ;
1026 spinlock_t list_lock ;
1027 struct kobject kobj ;
1028 struct kset_uevent_ops const *uevent_ops ;
1029};
1030#line 39 "include/linux/moduleparam.h"
1031struct kernel_param;
1032#line 39
1033struct kernel_param;
1034#line 41 "include/linux/moduleparam.h"
1035struct kernel_param_ops {
1036 int (*set)(char const *val , struct kernel_param const *kp ) ;
1037 int (*get)(char *buffer , struct kernel_param const *kp ) ;
1038 void (*free)(void *arg ) ;
1039};
1040#line 50
1041struct kparam_string;
1042#line 50
1043struct kparam_array;
1044#line 50 "include/linux/moduleparam.h"
1045union __anonunion____missing_field_name_207 {
1046 void *arg ;
1047 struct kparam_string const *str ;
1048 struct kparam_array const *arr ;
1049};
1050#line 50 "include/linux/moduleparam.h"
1051struct kernel_param {
1052 char const *name ;
1053 struct kernel_param_ops const *ops ;
1054 u16 perm ;
1055 s16 level ;
1056 union __anonunion____missing_field_name_207 __annonCompField32 ;
1057};
1058#line 63 "include/linux/moduleparam.h"
1059struct kparam_string {
1060 unsigned int maxlen ;
1061 char *string ;
1062};
1063#line 69 "include/linux/moduleparam.h"
1064struct kparam_array {
1065 unsigned int max ;
1066 unsigned int elemsize ;
1067 unsigned int *num ;
1068 struct kernel_param_ops const *ops ;
1069 void *elem ;
1070};
1071#line 445
1072struct module;
1073#line 80 "include/linux/jump_label.h"
1074struct module;
1075#line 143 "include/linux/jump_label.h"
1076struct static_key {
1077 atomic_t enabled ;
1078};
1079#line 22 "include/linux/tracepoint.h"
1080struct module;
1081#line 23
1082struct tracepoint;
1083#line 23
1084struct tracepoint;
1085#line 25 "include/linux/tracepoint.h"
1086struct tracepoint_func {
1087 void *func ;
1088 void *data ;
1089};
1090#line 30 "include/linux/tracepoint.h"
1091struct tracepoint {
1092 char const *name ;
1093 struct static_key key ;
1094 void (*regfunc)(void) ;
1095 void (*unregfunc)(void) ;
1096 struct tracepoint_func *funcs ;
1097};
1098#line 19 "include/linux/export.h"
1099struct kernel_symbol {
1100 unsigned long value ;
1101 char const *name ;
1102};
1103#line 8 "include/asm-generic/module.h"
1104struct mod_arch_specific {
1105
1106};
1107#line 35 "include/linux/module.h"
1108struct module;
1109#line 37
1110struct module_param_attrs;
1111#line 37 "include/linux/module.h"
1112struct module_kobject {
1113 struct kobject kobj ;
1114 struct module *mod ;
1115 struct kobject *drivers_dir ;
1116 struct module_param_attrs *mp ;
1117};
1118#line 44 "include/linux/module.h"
1119struct module_attribute {
1120 struct attribute attr ;
1121 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
1122 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
1123 size_t count ) ;
1124 void (*setup)(struct module * , char const * ) ;
1125 int (*test)(struct module * ) ;
1126 void (*free)(struct module * ) ;
1127};
1128#line 71
1129struct exception_table_entry;
1130#line 199
1131enum module_state {
1132 MODULE_STATE_LIVE = 0,
1133 MODULE_STATE_COMING = 1,
1134 MODULE_STATE_GOING = 2
1135} ;
1136#line 215 "include/linux/module.h"
1137struct module_ref {
1138 unsigned long incs ;
1139 unsigned long decs ;
1140} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
1141#line 220
1142struct module_sect_attrs;
1143#line 220
1144struct module_notes_attrs;
1145#line 220
1146struct ftrace_event_call;
1147#line 220 "include/linux/module.h"
1148struct module {
1149 enum module_state state ;
1150 struct list_head list ;
1151 char name[64UL - sizeof(unsigned long )] ;
1152 struct module_kobject mkobj ;
1153 struct module_attribute *modinfo_attrs ;
1154 char const *version ;
1155 char const *srcversion ;
1156 struct kobject *holders_dir ;
1157 struct kernel_symbol const *syms ;
1158 unsigned long const *crcs ;
1159 unsigned int num_syms ;
1160 struct kernel_param *kp ;
1161 unsigned int num_kp ;
1162 unsigned int num_gpl_syms ;
1163 struct kernel_symbol const *gpl_syms ;
1164 unsigned long const *gpl_crcs ;
1165 struct kernel_symbol const *unused_syms ;
1166 unsigned long const *unused_crcs ;
1167 unsigned int num_unused_syms ;
1168 unsigned int num_unused_gpl_syms ;
1169 struct kernel_symbol const *unused_gpl_syms ;
1170 unsigned long const *unused_gpl_crcs ;
1171 struct kernel_symbol const *gpl_future_syms ;
1172 unsigned long const *gpl_future_crcs ;
1173 unsigned int num_gpl_future_syms ;
1174 unsigned int num_exentries ;
1175 struct exception_table_entry *extable ;
1176 int (*init)(void) ;
1177 void *module_init ;
1178 void *module_core ;
1179 unsigned int init_size ;
1180 unsigned int core_size ;
1181 unsigned int init_text_size ;
1182 unsigned int core_text_size ;
1183 unsigned int init_ro_size ;
1184 unsigned int core_ro_size ;
1185 struct mod_arch_specific arch ;
1186 unsigned int taints ;
1187 unsigned int num_bugs ;
1188 struct list_head bug_list ;
1189 struct bug_entry *bug_table ;
1190 Elf64_Sym *symtab ;
1191 Elf64_Sym *core_symtab ;
1192 unsigned int num_symtab ;
1193 unsigned int core_num_syms ;
1194 char *strtab ;
1195 char *core_strtab ;
1196 struct module_sect_attrs *sect_attrs ;
1197 struct module_notes_attrs *notes_attrs ;
1198 char *args ;
1199 void *percpu ;
1200 unsigned int percpu_size ;
1201 unsigned int num_tracepoints ;
1202 struct tracepoint * const *tracepoints_ptrs ;
1203 unsigned int num_trace_bprintk_fmt ;
1204 char const **trace_bprintk_fmt_start ;
1205 struct ftrace_event_call **trace_events ;
1206 unsigned int num_trace_events ;
1207 struct list_head source_list ;
1208 struct list_head target_list ;
1209 struct task_struct *waiter ;
1210 void (*exit)(void) ;
1211 struct module_ref *refptr ;
1212 ctor_fn_t *ctors ;
1213 unsigned int num_ctors ;
1214};
1215#line 22 "include/linux/console.h"
1216struct module;
1217#line 23
1218struct tty_struct;
1219#line 23
1220struct tty_struct;
1221#line 114
1222struct tty_driver;
1223#line 114 "include/linux/console.h"
1224struct console {
1225 char name[16] ;
1226 void (*write)(struct console * , char const * , unsigned int ) ;
1227 int (*read)(struct console * , char * , unsigned int ) ;
1228 struct tty_driver *(*device)(struct console * , int * ) ;
1229 void (*unblank)(void) ;
1230 int (*setup)(struct console * , char * ) ;
1231 int (*early_setup)(void) ;
1232 short flags ;
1233 short index ;
1234 int cflag ;
1235 void *data ;
1236 struct console *next ;
1237};
1238#line 15 "include/linux/blk_types.h"
1239struct page;
1240#line 16
1241struct block_device;
1242#line 16
1243struct block_device;
1244#line 33 "include/linux/list_bl.h"
1245struct hlist_bl_node;
1246#line 33 "include/linux/list_bl.h"
1247struct hlist_bl_head {
1248 struct hlist_bl_node *first ;
1249};
1250#line 37 "include/linux/list_bl.h"
1251struct hlist_bl_node {
1252 struct hlist_bl_node *next ;
1253 struct hlist_bl_node **pprev ;
1254};
1255#line 13 "include/linux/dcache.h"
1256struct nameidata;
1257#line 13
1258struct nameidata;
1259#line 14
1260struct path;
1261#line 14
1262struct path;
1263#line 15
1264struct vfsmount;
1265#line 15
1266struct vfsmount;
1267#line 35 "include/linux/dcache.h"
1268struct qstr {
1269 unsigned int hash ;
1270 unsigned int len ;
1271 unsigned char const *name ;
1272};
1273#line 88
1274struct inode;
1275#line 88
1276struct dentry_operations;
1277#line 88
1278struct super_block;
1279#line 88 "include/linux/dcache.h"
1280union __anonunion_d_u_209 {
1281 struct list_head d_child ;
1282 struct rcu_head d_rcu ;
1283};
1284#line 88 "include/linux/dcache.h"
1285struct dentry {
1286 unsigned int d_flags ;
1287 seqcount_t d_seq ;
1288 struct hlist_bl_node d_hash ;
1289 struct dentry *d_parent ;
1290 struct qstr d_name ;
1291 struct inode *d_inode ;
1292 unsigned char d_iname[32] ;
1293 unsigned int d_count ;
1294 spinlock_t d_lock ;
1295 struct dentry_operations const *d_op ;
1296 struct super_block *d_sb ;
1297 unsigned long d_time ;
1298 void *d_fsdata ;
1299 struct list_head d_lru ;
1300 union __anonunion_d_u_209 d_u ;
1301 struct list_head d_subdirs ;
1302 struct list_head d_alias ;
1303};
1304#line 131 "include/linux/dcache.h"
1305struct dentry_operations {
1306 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1307 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1308 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1309 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1310 int (*d_delete)(struct dentry const * ) ;
1311 void (*d_release)(struct dentry * ) ;
1312 void (*d_prune)(struct dentry * ) ;
1313 void (*d_iput)(struct dentry * , struct inode * ) ;
1314 char *(*d_dname)(struct dentry * , char * , int ) ;
1315 struct vfsmount *(*d_automount)(struct path * ) ;
1316 int (*d_manage)(struct dentry * , bool ) ;
1317} __attribute__((__aligned__((1) << (6) ))) ;
1318#line 4 "include/linux/path.h"
1319struct dentry;
1320#line 5
1321struct vfsmount;
1322#line 7 "include/linux/path.h"
1323struct path {
1324 struct vfsmount *mnt ;
1325 struct dentry *dentry ;
1326};
1327#line 64 "include/linux/radix-tree.h"
1328struct radix_tree_node;
1329#line 64 "include/linux/radix-tree.h"
1330struct radix_tree_root {
1331 unsigned int height ;
1332 gfp_t gfp_mask ;
1333 struct radix_tree_node *rnode ;
1334};
1335#line 14 "include/linux/prio_tree.h"
1336struct prio_tree_node;
1337#line 14 "include/linux/prio_tree.h"
1338struct raw_prio_tree_node {
1339 struct prio_tree_node *left ;
1340 struct prio_tree_node *right ;
1341 struct prio_tree_node *parent ;
1342};
1343#line 20 "include/linux/prio_tree.h"
1344struct prio_tree_node {
1345 struct prio_tree_node *left ;
1346 struct prio_tree_node *right ;
1347 struct prio_tree_node *parent ;
1348 unsigned long start ;
1349 unsigned long last ;
1350};
1351#line 28 "include/linux/prio_tree.h"
1352struct prio_tree_root {
1353 struct prio_tree_node *prio_tree_node ;
1354 unsigned short index_bits ;
1355 unsigned short raw ;
1356};
1357#line 6 "include/linux/pid.h"
1358enum pid_type {
1359 PIDTYPE_PID = 0,
1360 PIDTYPE_PGID = 1,
1361 PIDTYPE_SID = 2,
1362 PIDTYPE_MAX = 3
1363} ;
1364#line 50
1365struct pid_namespace;
1366#line 50 "include/linux/pid.h"
1367struct upid {
1368 int nr ;
1369 struct pid_namespace *ns ;
1370 struct hlist_node pid_chain ;
1371};
1372#line 57 "include/linux/pid.h"
1373struct pid {
1374 atomic_t count ;
1375 unsigned int level ;
1376 struct hlist_head tasks[3] ;
1377 struct rcu_head rcu ;
1378 struct upid numbers[1] ;
1379};
1380#line 69 "include/linux/pid.h"
1381struct pid_link {
1382 struct hlist_node node ;
1383 struct pid *pid ;
1384};
1385#line 100
1386struct pid_namespace;
1387#line 18 "include/linux/capability.h"
1388struct task_struct;
1389#line 94 "include/linux/capability.h"
1390struct kernel_cap_struct {
1391 __u32 cap[2] ;
1392};
1393#line 94 "include/linux/capability.h"
1394typedef struct kernel_cap_struct kernel_cap_t;
1395#line 377
1396struct dentry;
1397#line 378
1398struct user_namespace;
1399#line 378
1400struct user_namespace;
1401#line 16 "include/linux/fiemap.h"
1402struct fiemap_extent {
1403 __u64 fe_logical ;
1404 __u64 fe_physical ;
1405 __u64 fe_length ;
1406 __u64 fe_reserved64[2] ;
1407 __u32 fe_flags ;
1408 __u32 fe_reserved[3] ;
1409};
1410#line 8 "include/linux/shrinker.h"
1411struct shrink_control {
1412 gfp_t gfp_mask ;
1413 unsigned long nr_to_scan ;
1414};
1415#line 31 "include/linux/shrinker.h"
1416struct shrinker {
1417 int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
1418 int seeks ;
1419 long batch ;
1420 struct list_head list ;
1421 atomic_long_t nr_in_batch ;
1422};
1423#line 10 "include/linux/migrate_mode.h"
1424enum migrate_mode {
1425 MIGRATE_ASYNC = 0,
1426 MIGRATE_SYNC_LIGHT = 1,
1427 MIGRATE_SYNC = 2
1428} ;
1429#line 408 "include/linux/fs.h"
1430struct export_operations;
1431#line 408
1432struct export_operations;
1433#line 410
1434struct iovec;
1435#line 410
1436struct iovec;
1437#line 411
1438struct nameidata;
1439#line 412
1440struct kiocb;
1441#line 412
1442struct kiocb;
1443#line 413
1444struct kobject;
1445#line 414
1446struct pipe_inode_info;
1447#line 414
1448struct pipe_inode_info;
1449#line 415
1450struct poll_table_struct;
1451#line 415
1452struct poll_table_struct;
1453#line 416
1454struct kstatfs;
1455#line 416
1456struct kstatfs;
1457#line 417
1458struct vm_area_struct;
1459#line 418
1460struct vfsmount;
1461#line 419
1462struct cred;
1463#line 469 "include/linux/fs.h"
1464struct iattr {
1465 unsigned int ia_valid ;
1466 umode_t ia_mode ;
1467 uid_t ia_uid ;
1468 gid_t ia_gid ;
1469 loff_t ia_size ;
1470 struct timespec ia_atime ;
1471 struct timespec ia_mtime ;
1472 struct timespec ia_ctime ;
1473 struct file *ia_file ;
1474};
1475#line 129 "include/linux/quota.h"
1476struct if_dqinfo {
1477 __u64 dqi_bgrace ;
1478 __u64 dqi_igrace ;
1479 __u32 dqi_flags ;
1480 __u32 dqi_valid ;
1481};
1482#line 50 "include/linux/dqblk_xfs.h"
1483struct fs_disk_quota {
1484 __s8 d_version ;
1485 __s8 d_flags ;
1486 __u16 d_fieldmask ;
1487 __u32 d_id ;
1488 __u64 d_blk_hardlimit ;
1489 __u64 d_blk_softlimit ;
1490 __u64 d_ino_hardlimit ;
1491 __u64 d_ino_softlimit ;
1492 __u64 d_bcount ;
1493 __u64 d_icount ;
1494 __s32 d_itimer ;
1495 __s32 d_btimer ;
1496 __u16 d_iwarns ;
1497 __u16 d_bwarns ;
1498 __s32 d_padding2 ;
1499 __u64 d_rtb_hardlimit ;
1500 __u64 d_rtb_softlimit ;
1501 __u64 d_rtbcount ;
1502 __s32 d_rtbtimer ;
1503 __u16 d_rtbwarns ;
1504 __s16 d_padding3 ;
1505 char d_padding4[8] ;
1506};
1507#line 146 "include/linux/dqblk_xfs.h"
1508struct fs_qfilestat {
1509 __u64 qfs_ino ;
1510 __u64 qfs_nblks ;
1511 __u32 qfs_nextents ;
1512};
1513#line 146 "include/linux/dqblk_xfs.h"
1514typedef struct fs_qfilestat fs_qfilestat_t;
1515#line 152 "include/linux/dqblk_xfs.h"
1516struct fs_quota_stat {
1517 __s8 qs_version ;
1518 __u16 qs_flags ;
1519 __s8 qs_pad ;
1520 fs_qfilestat_t qs_uquota ;
1521 fs_qfilestat_t qs_gquota ;
1522 __u32 qs_incoredqs ;
1523 __s32 qs_btimelimit ;
1524 __s32 qs_itimelimit ;
1525 __s32 qs_rtbtimelimit ;
1526 __u16 qs_bwarnlimit ;
1527 __u16 qs_iwarnlimit ;
1528};
1529#line 17 "include/linux/dqblk_qtree.h"
1530struct dquot;
1531#line 17
1532struct dquot;
1533#line 185 "include/linux/quota.h"
1534typedef __kernel_uid32_t qid_t;
1535#line 186 "include/linux/quota.h"
1536typedef long long qsize_t;
1537#line 200 "include/linux/quota.h"
1538struct mem_dqblk {
1539 qsize_t dqb_bhardlimit ;
1540 qsize_t dqb_bsoftlimit ;
1541 qsize_t dqb_curspace ;
1542 qsize_t dqb_rsvspace ;
1543 qsize_t dqb_ihardlimit ;
1544 qsize_t dqb_isoftlimit ;
1545 qsize_t dqb_curinodes ;
1546 time_t dqb_btime ;
1547 time_t dqb_itime ;
1548};
1549#line 215
1550struct quota_format_type;
1551#line 215
1552struct quota_format_type;
1553#line 217 "include/linux/quota.h"
1554struct mem_dqinfo {
1555 struct quota_format_type *dqi_format ;
1556 int dqi_fmt_id ;
1557 struct list_head dqi_dirty_list ;
1558 unsigned long dqi_flags ;
1559 unsigned int dqi_bgrace ;
1560 unsigned int dqi_igrace ;
1561 qsize_t dqi_maxblimit ;
1562 qsize_t dqi_maxilimit ;
1563 void *dqi_priv ;
1564};
1565#line 230
1566struct super_block;
1567#line 288 "include/linux/quota.h"
1568struct dquot {
1569 struct hlist_node dq_hash ;
1570 struct list_head dq_inuse ;
1571 struct list_head dq_free ;
1572 struct list_head dq_dirty ;
1573 struct mutex dq_lock ;
1574 atomic_t dq_count ;
1575 wait_queue_head_t dq_wait_unused ;
1576 struct super_block *dq_sb ;
1577 unsigned int dq_id ;
1578 loff_t dq_off ;
1579 unsigned long dq_flags ;
1580 short dq_type ;
1581 struct mem_dqblk dq_dqb ;
1582};
1583#line 305 "include/linux/quota.h"
1584struct quota_format_ops {
1585 int (*check_quota_file)(struct super_block *sb , int type ) ;
1586 int (*read_file_info)(struct super_block *sb , int type ) ;
1587 int (*write_file_info)(struct super_block *sb , int type ) ;
1588 int (*free_file_info)(struct super_block *sb , int type ) ;
1589 int (*read_dqblk)(struct dquot *dquot ) ;
1590 int (*commit_dqblk)(struct dquot *dquot ) ;
1591 int (*release_dqblk)(struct dquot *dquot ) ;
1592};
1593#line 316 "include/linux/quota.h"
1594struct dquot_operations {
1595 int (*write_dquot)(struct dquot * ) ;
1596 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1597 void (*destroy_dquot)(struct dquot * ) ;
1598 int (*acquire_dquot)(struct dquot * ) ;
1599 int (*release_dquot)(struct dquot * ) ;
1600 int (*mark_dirty)(struct dquot * ) ;
1601 int (*write_info)(struct super_block * , int ) ;
1602 qsize_t *(*get_reserved_space)(struct inode * ) ;
1603};
1604#line 329
1605struct path;
1606#line 332 "include/linux/quota.h"
1607struct quotactl_ops {
1608 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1609 int (*quota_on_meta)(struct super_block * , int , int ) ;
1610 int (*quota_off)(struct super_block * , int ) ;
1611 int (*quota_sync)(struct super_block * , int , int ) ;
1612 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1613 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1614 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1615 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1616 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1617 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1618};
1619#line 345 "include/linux/quota.h"
1620struct quota_format_type {
1621 int qf_fmt_id ;
1622 struct quota_format_ops const *qf_ops ;
1623 struct module *qf_owner ;
1624 struct quota_format_type *qf_next ;
1625};
1626#line 399 "include/linux/quota.h"
1627struct quota_info {
1628 unsigned int flags ;
1629 struct mutex dqio_mutex ;
1630 struct mutex dqonoff_mutex ;
1631 struct rw_semaphore dqptr_sem ;
1632 struct inode *files[2] ;
1633 struct mem_dqinfo info[2] ;
1634 struct quota_format_ops const *ops[2] ;
1635};
1636#line 532 "include/linux/fs.h"
1637struct page;
1638#line 533
1639struct address_space;
1640#line 533
1641struct address_space;
1642#line 534
1643struct writeback_control;
1644#line 534
1645struct writeback_control;
1646#line 577 "include/linux/fs.h"
1647union __anonunion_arg_217 {
1648 char *buf ;
1649 void *data ;
1650};
1651#line 577 "include/linux/fs.h"
1652struct __anonstruct_read_descriptor_t_216 {
1653 size_t written ;
1654 size_t count ;
1655 union __anonunion_arg_217 arg ;
1656 int error ;
1657};
1658#line 577 "include/linux/fs.h"
1659typedef struct __anonstruct_read_descriptor_t_216 read_descriptor_t;
1660#line 590 "include/linux/fs.h"
1661struct address_space_operations {
1662 int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
1663 int (*readpage)(struct file * , struct page * ) ;
1664 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1665 int (*set_page_dirty)(struct page *page ) ;
1666 int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
1667 unsigned int nr_pages ) ;
1668 int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
1669 unsigned int len , unsigned int flags , struct page **pagep ,
1670 void **fsdata ) ;
1671 int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
1672 unsigned int copied , struct page *page , void *fsdata ) ;
1673 sector_t (*bmap)(struct address_space * , sector_t ) ;
1674 void (*invalidatepage)(struct page * , unsigned long ) ;
1675 int (*releasepage)(struct page * , gfp_t ) ;
1676 void (*freepage)(struct page * ) ;
1677 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const *iov , loff_t offset ,
1678 unsigned long nr_segs ) ;
1679 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1680 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1681 int (*launder_page)(struct page * ) ;
1682 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1683 int (*error_remove_page)(struct address_space * , struct page * ) ;
1684};
1685#line 645
1686struct backing_dev_info;
1687#line 645
1688struct backing_dev_info;
1689#line 646 "include/linux/fs.h"
1690struct address_space {
1691 struct inode *host ;
1692 struct radix_tree_root page_tree ;
1693 spinlock_t tree_lock ;
1694 unsigned int i_mmap_writable ;
1695 struct prio_tree_root i_mmap ;
1696 struct list_head i_mmap_nonlinear ;
1697 struct mutex i_mmap_mutex ;
1698 unsigned long nrpages ;
1699 unsigned long writeback_index ;
1700 struct address_space_operations const *a_ops ;
1701 unsigned long flags ;
1702 struct backing_dev_info *backing_dev_info ;
1703 spinlock_t private_lock ;
1704 struct list_head private_list ;
1705 struct address_space *assoc_mapping ;
1706} __attribute__((__aligned__(sizeof(long )))) ;
1707#line 669
1708struct request_queue;
1709#line 669
1710struct request_queue;
1711#line 671
1712struct hd_struct;
1713#line 671
1714struct gendisk;
1715#line 671 "include/linux/fs.h"
1716struct block_device {
1717 dev_t bd_dev ;
1718 int bd_openers ;
1719 struct inode *bd_inode ;
1720 struct super_block *bd_super ;
1721 struct mutex bd_mutex ;
1722 struct list_head bd_inodes ;
1723 void *bd_claiming ;
1724 void *bd_holder ;
1725 int bd_holders ;
1726 bool bd_write_holder ;
1727 struct list_head bd_holder_disks ;
1728 struct block_device *bd_contains ;
1729 unsigned int bd_block_size ;
1730 struct hd_struct *bd_part ;
1731 unsigned int bd_part_count ;
1732 int bd_invalidated ;
1733 struct gendisk *bd_disk ;
1734 struct request_queue *bd_queue ;
1735 struct list_head bd_list ;
1736 unsigned long bd_private ;
1737 int bd_fsfreeze_count ;
1738 struct mutex bd_fsfreeze_mutex ;
1739};
1740#line 749
1741struct posix_acl;
1742#line 749
1743struct posix_acl;
1744#line 761
1745struct inode_operations;
1746#line 761 "include/linux/fs.h"
1747union __anonunion____missing_field_name_218 {
1748 unsigned int const i_nlink ;
1749 unsigned int __i_nlink ;
1750};
1751#line 761 "include/linux/fs.h"
1752union __anonunion____missing_field_name_219 {
1753 struct list_head i_dentry ;
1754 struct rcu_head i_rcu ;
1755};
1756#line 761
1757struct file_operations;
1758#line 761
1759struct file_lock;
1760#line 761
1761struct cdev;
1762#line 761 "include/linux/fs.h"
1763union __anonunion____missing_field_name_220 {
1764 struct pipe_inode_info *i_pipe ;
1765 struct block_device *i_bdev ;
1766 struct cdev *i_cdev ;
1767};
1768#line 761 "include/linux/fs.h"
1769struct inode {
1770 umode_t i_mode ;
1771 unsigned short i_opflags ;
1772 uid_t i_uid ;
1773 gid_t i_gid ;
1774 unsigned int i_flags ;
1775 struct posix_acl *i_acl ;
1776 struct posix_acl *i_default_acl ;
1777 struct inode_operations const *i_op ;
1778 struct super_block *i_sb ;
1779 struct address_space *i_mapping ;
1780 void *i_security ;
1781 unsigned long i_ino ;
1782 union __anonunion____missing_field_name_218 __annonCompField33 ;
1783 dev_t i_rdev ;
1784 struct timespec i_atime ;
1785 struct timespec i_mtime ;
1786 struct timespec i_ctime ;
1787 spinlock_t i_lock ;
1788 unsigned short i_bytes ;
1789 blkcnt_t i_blocks ;
1790 loff_t i_size ;
1791 unsigned long i_state ;
1792 struct mutex i_mutex ;
1793 unsigned long dirtied_when ;
1794 struct hlist_node i_hash ;
1795 struct list_head i_wb_list ;
1796 struct list_head i_lru ;
1797 struct list_head i_sb_list ;
1798 union __anonunion____missing_field_name_219 __annonCompField34 ;
1799 atomic_t i_count ;
1800 unsigned int i_blkbits ;
1801 u64 i_version ;
1802 atomic_t i_dio_count ;
1803 atomic_t i_writecount ;
1804 struct file_operations const *i_fop ;
1805 struct file_lock *i_flock ;
1806 struct address_space i_data ;
1807 struct dquot *i_dquot[2] ;
1808 struct list_head i_devices ;
1809 union __anonunion____missing_field_name_220 __annonCompField35 ;
1810 __u32 i_generation ;
1811 __u32 i_fsnotify_mask ;
1812 struct hlist_head i_fsnotify_marks ;
1813 atomic_t i_readcount ;
1814 void *i_private ;
1815};
1816#line 942 "include/linux/fs.h"
1817struct fown_struct {
1818 rwlock_t lock ;
1819 struct pid *pid ;
1820 enum pid_type pid_type ;
1821 uid_t uid ;
1822 uid_t euid ;
1823 int signum ;
1824};
1825#line 953 "include/linux/fs.h"
1826struct file_ra_state {
1827 unsigned long start ;
1828 unsigned int size ;
1829 unsigned int async_size ;
1830 unsigned int ra_pages ;
1831 unsigned int mmap_miss ;
1832 loff_t prev_pos ;
1833};
1834#line 976 "include/linux/fs.h"
1835union __anonunion_f_u_221 {
1836 struct list_head fu_list ;
1837 struct rcu_head fu_rcuhead ;
1838};
1839#line 976 "include/linux/fs.h"
1840struct file {
1841 union __anonunion_f_u_221 f_u ;
1842 struct path f_path ;
1843 struct file_operations const *f_op ;
1844 spinlock_t f_lock ;
1845 int f_sb_list_cpu ;
1846 atomic_long_t f_count ;
1847 unsigned int f_flags ;
1848 fmode_t f_mode ;
1849 loff_t f_pos ;
1850 struct fown_struct f_owner ;
1851 struct cred const *f_cred ;
1852 struct file_ra_state f_ra ;
1853 u64 f_version ;
1854 void *f_security ;
1855 void *private_data ;
1856 struct list_head f_ep_links ;
1857 struct list_head f_tfile_llink ;
1858 struct address_space *f_mapping ;
1859 unsigned long f_mnt_write_state ;
1860};
1861#line 1111
1862struct files_struct;
1863#line 1111 "include/linux/fs.h"
1864typedef struct files_struct *fl_owner_t;
1865#line 1113 "include/linux/fs.h"
1866struct file_lock_operations {
1867 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1868 void (*fl_release_private)(struct file_lock * ) ;
1869};
1870#line 1118 "include/linux/fs.h"
1871struct lock_manager_operations {
1872 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1873 void (*lm_notify)(struct file_lock * ) ;
1874 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1875 void (*lm_release_private)(struct file_lock * ) ;
1876 void (*lm_break)(struct file_lock * ) ;
1877 int (*lm_change)(struct file_lock ** , int ) ;
1878};
1879#line 4 "include/linux/nfs_fs_i.h"
1880struct nlm_lockowner;
1881#line 4
1882struct nlm_lockowner;
1883#line 9 "include/linux/nfs_fs_i.h"
1884struct nfs_lock_info {
1885 u32 state ;
1886 struct nlm_lockowner *owner ;
1887 struct list_head list ;
1888};
1889#line 15
1890struct nfs4_lock_state;
1891#line 15
1892struct nfs4_lock_state;
1893#line 16 "include/linux/nfs_fs_i.h"
1894struct nfs4_lock_info {
1895 struct nfs4_lock_state *owner ;
1896};
1897#line 1138 "include/linux/fs.h"
1898struct fasync_struct;
1899#line 1138 "include/linux/fs.h"
1900struct __anonstruct_afs_223 {
1901 struct list_head link ;
1902 int state ;
1903};
1904#line 1138 "include/linux/fs.h"
1905union __anonunion_fl_u_222 {
1906 struct nfs_lock_info nfs_fl ;
1907 struct nfs4_lock_info nfs4_fl ;
1908 struct __anonstruct_afs_223 afs ;
1909};
1910#line 1138 "include/linux/fs.h"
1911struct file_lock {
1912 struct file_lock *fl_next ;
1913 struct list_head fl_link ;
1914 struct list_head fl_block ;
1915 fl_owner_t fl_owner ;
1916 unsigned int fl_flags ;
1917 unsigned char fl_type ;
1918 unsigned int fl_pid ;
1919 struct pid *fl_nspid ;
1920 wait_queue_head_t fl_wait ;
1921 struct file *fl_file ;
1922 loff_t fl_start ;
1923 loff_t fl_end ;
1924 struct fasync_struct *fl_fasync ;
1925 unsigned long fl_break_time ;
1926 unsigned long fl_downgrade_time ;
1927 struct file_lock_operations const *fl_ops ;
1928 struct lock_manager_operations const *fl_lmops ;
1929 union __anonunion_fl_u_222 fl_u ;
1930};
1931#line 1378 "include/linux/fs.h"
1932struct fasync_struct {
1933 spinlock_t fa_lock ;
1934 int magic ;
1935 int fa_fd ;
1936 struct fasync_struct *fa_next ;
1937 struct file *fa_file ;
1938 struct rcu_head fa_rcu ;
1939};
1940#line 1418
1941struct file_system_type;
1942#line 1418
1943struct super_operations;
1944#line 1418
1945struct xattr_handler;
1946#line 1418
1947struct mtd_info;
1948#line 1418 "include/linux/fs.h"
1949struct super_block {
1950 struct list_head s_list ;
1951 dev_t s_dev ;
1952 unsigned char s_dirt ;
1953 unsigned char s_blocksize_bits ;
1954 unsigned long s_blocksize ;
1955 loff_t s_maxbytes ;
1956 struct file_system_type *s_type ;
1957 struct super_operations const *s_op ;
1958 struct dquot_operations const *dq_op ;
1959 struct quotactl_ops const *s_qcop ;
1960 struct export_operations const *s_export_op ;
1961 unsigned long s_flags ;
1962 unsigned long s_magic ;
1963 struct dentry *s_root ;
1964 struct rw_semaphore s_umount ;
1965 struct mutex s_lock ;
1966 int s_count ;
1967 atomic_t s_active ;
1968 void *s_security ;
1969 struct xattr_handler const **s_xattr ;
1970 struct list_head s_inodes ;
1971 struct hlist_bl_head s_anon ;
1972 struct list_head *s_files ;
1973 struct list_head s_mounts ;
1974 struct list_head s_dentry_lru ;
1975 int s_nr_dentry_unused ;
1976 spinlock_t s_inode_lru_lock __attribute__((__aligned__((1) << (6) ))) ;
1977 struct list_head s_inode_lru ;
1978 int s_nr_inodes_unused ;
1979 struct block_device *s_bdev ;
1980 struct backing_dev_info *s_bdi ;
1981 struct mtd_info *s_mtd ;
1982 struct hlist_node s_instances ;
1983 struct quota_info s_dquot ;
1984 int s_frozen ;
1985 wait_queue_head_t s_wait_unfrozen ;
1986 char s_id[32] ;
1987 u8 s_uuid[16] ;
1988 void *s_fs_info ;
1989 unsigned int s_max_links ;
1990 fmode_t s_mode ;
1991 u32 s_time_gran ;
1992 struct mutex s_vfs_rename_mutex ;
1993 char *s_subtype ;
1994 char *s_options ;
1995 struct dentry_operations const *s_d_op ;
1996 int cleancache_poolid ;
1997 struct shrinker s_shrink ;
1998 atomic_long_t s_remove_count ;
1999 int s_readonly_remount ;
2000};
2001#line 1567 "include/linux/fs.h"
2002struct fiemap_extent_info {
2003 unsigned int fi_flags ;
2004 unsigned int fi_extents_mapped ;
2005 unsigned int fi_extents_max ;
2006 struct fiemap_extent *fi_extents_start ;
2007};
2008#line 1609 "include/linux/fs.h"
2009struct file_operations {
2010 struct module *owner ;
2011 loff_t (*llseek)(struct file * , loff_t , int ) ;
2012 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
2013 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
2014 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
2015 loff_t ) ;
2016 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
2017 loff_t ) ;
2018 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
2019 loff_t , u64 , unsigned int ) ) ;
2020 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
2021 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
2022 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
2023 int (*mmap)(struct file * , struct vm_area_struct * ) ;
2024 int (*open)(struct inode * , struct file * ) ;
2025 int (*flush)(struct file * , fl_owner_t id ) ;
2026 int (*release)(struct inode * , struct file * ) ;
2027 int (*fsync)(struct file * , loff_t , loff_t , int datasync ) ;
2028 int (*aio_fsync)(struct kiocb * , int datasync ) ;
2029 int (*fasync)(int , struct file * , int ) ;
2030 int (*lock)(struct file * , int , struct file_lock * ) ;
2031 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
2032 int ) ;
2033 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
2034 unsigned long , unsigned long ) ;
2035 int (*check_flags)(int ) ;
2036 int (*flock)(struct file * , int , struct file_lock * ) ;
2037 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
2038 unsigned int ) ;
2039 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
2040 unsigned int ) ;
2041 int (*setlease)(struct file * , long , struct file_lock ** ) ;
2042 long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
2043};
2044#line 1639 "include/linux/fs.h"
2045struct inode_operations {
2046 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
2047 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
2048 int (*permission)(struct inode * , int ) ;
2049 struct posix_acl *(*get_acl)(struct inode * , int ) ;
2050 int (*readlink)(struct dentry * , char * , int ) ;
2051 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
2052 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
2053 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
2054 int (*unlink)(struct inode * , struct dentry * ) ;
2055 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
2056 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
2057 int (*rmdir)(struct inode * , struct dentry * ) ;
2058 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
2059 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
2060 void (*truncate)(struct inode * ) ;
2061 int (*setattr)(struct dentry * , struct iattr * ) ;
2062 int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
2063 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
2064 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
2065 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
2066 int (*removexattr)(struct dentry * , char const * ) ;
2067 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
2068 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
2069} __attribute__((__aligned__((1) << (6) ))) ;
2070#line 1669
2071struct seq_file;
2072#line 1684 "include/linux/fs.h"
2073struct super_operations {
2074 struct inode *(*alloc_inode)(struct super_block *sb ) ;
2075 void (*destroy_inode)(struct inode * ) ;
2076 void (*dirty_inode)(struct inode * , int flags ) ;
2077 int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
2078 int (*drop_inode)(struct inode * ) ;
2079 void (*evict_inode)(struct inode * ) ;
2080 void (*put_super)(struct super_block * ) ;
2081 void (*write_super)(struct super_block * ) ;
2082 int (*sync_fs)(struct super_block *sb , int wait ) ;
2083 int (*freeze_fs)(struct super_block * ) ;
2084 int (*unfreeze_fs)(struct super_block * ) ;
2085 int (*statfs)(struct dentry * , struct kstatfs * ) ;
2086 int (*remount_fs)(struct super_block * , int * , char * ) ;
2087 void (*umount_begin)(struct super_block * ) ;
2088 int (*show_options)(struct seq_file * , struct dentry * ) ;
2089 int (*show_devname)(struct seq_file * , struct dentry * ) ;
2090 int (*show_path)(struct seq_file * , struct dentry * ) ;
2091 int (*show_stats)(struct seq_file * , struct dentry * ) ;
2092 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
2093 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
2094 loff_t ) ;
2095 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
2096 int (*nr_cached_objects)(struct super_block * ) ;
2097 void (*free_cached_objects)(struct super_block * , int ) ;
2098};
2099#line 1835 "include/linux/fs.h"
2100struct file_system_type {
2101 char const *name ;
2102 int fs_flags ;
2103 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
2104 void (*kill_sb)(struct super_block * ) ;
2105 struct module *owner ;
2106 struct file_system_type *next ;
2107 struct hlist_head fs_supers ;
2108 struct lock_class_key s_lock_key ;
2109 struct lock_class_key s_umount_key ;
2110 struct lock_class_key s_vfs_rename_key ;
2111 struct lock_class_key i_lock_key ;
2112 struct lock_class_key i_mutex_key ;
2113 struct lock_class_key i_mutex_dir_key ;
2114};
2115#line 6 "include/asm-generic/termbits.h"
2116typedef unsigned char cc_t;
2117#line 7 "include/asm-generic/termbits.h"
2118typedef unsigned int speed_t;
2119#line 8 "include/asm-generic/termbits.h"
2120typedef unsigned int tcflag_t;
2121#line 31 "include/asm-generic/termbits.h"
2122struct ktermios {
2123 tcflag_t c_iflag ;
2124 tcflag_t c_oflag ;
2125 tcflag_t c_cflag ;
2126 tcflag_t c_lflag ;
2127 cc_t c_line ;
2128 cc_t c_cc[19] ;
2129 speed_t c_ispeed ;
2130 speed_t c_ospeed ;
2131};
2132#line 14 "include/asm-generic/termios.h"
2133struct winsize {
2134 unsigned short ws_row ;
2135 unsigned short ws_col ;
2136 unsigned short ws_xpixel ;
2137 unsigned short ws_ypixel ;
2138};
2139#line 9 "include/linux/termios.h"
2140struct termiox {
2141 __u16 x_hflag ;
2142 __u16 x_cflag ;
2143 __u16 x_rflag[5] ;
2144 __u16 x_sflag ;
2145};
2146#line 8 "include/linux/cdev.h"
2147struct file_operations;
2148#line 9
2149struct inode;
2150#line 10
2151struct module;
2152#line 12 "include/linux/cdev.h"
2153struct cdev {
2154 struct kobject kobj ;
2155 struct module *owner ;
2156 struct file_operations const *ops ;
2157 struct list_head list ;
2158 dev_t dev ;
2159 unsigned int count ;
2160};
2161#line 245 "include/linux/tty_driver.h"
2162struct tty_struct;
2163#line 246
2164struct tty_driver;
2165#line 247
2166struct serial_icounter_struct;
2167#line 247
2168struct serial_icounter_struct;
2169#line 249 "include/linux/tty_driver.h"
2170struct tty_operations {
2171 struct tty_struct *(*lookup)(struct tty_driver *driver , struct inode *inode ,
2172 int idx ) ;
2173 int (*install)(struct tty_driver *driver , struct tty_struct *tty ) ;
2174 void (*remove)(struct tty_driver *driver , struct tty_struct *tty ) ;
2175 int (*open)(struct tty_struct *tty , struct file *filp ) ;
2176 void (*close)(struct tty_struct *tty , struct file *filp ) ;
2177 void (*shutdown)(struct tty_struct *tty ) ;
2178 void (*cleanup)(struct tty_struct *tty ) ;
2179 int (*write)(struct tty_struct *tty , unsigned char const *buf , int count ) ;
2180 int (*put_char)(struct tty_struct *tty , unsigned char ch ) ;
2181 void (*flush_chars)(struct tty_struct *tty ) ;
2182 int (*write_room)(struct tty_struct *tty ) ;
2183 int (*chars_in_buffer)(struct tty_struct *tty ) ;
2184 int (*ioctl)(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) ;
2185 long (*compat_ioctl)(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) ;
2186 void (*set_termios)(struct tty_struct *tty , struct ktermios *old ) ;
2187 void (*throttle)(struct tty_struct *tty ) ;
2188 void (*unthrottle)(struct tty_struct *tty ) ;
2189 void (*stop)(struct tty_struct *tty ) ;
2190 void (*start)(struct tty_struct *tty ) ;
2191 void (*hangup)(struct tty_struct *tty ) ;
2192 int (*break_ctl)(struct tty_struct *tty , int state ) ;
2193 void (*flush_buffer)(struct tty_struct *tty ) ;
2194 void (*set_ldisc)(struct tty_struct *tty ) ;
2195 void (*wait_until_sent)(struct tty_struct *tty , int timeout ) ;
2196 void (*send_xchar)(struct tty_struct *tty , char ch ) ;
2197 int (*tiocmget)(struct tty_struct *tty ) ;
2198 int (*tiocmset)(struct tty_struct *tty , unsigned int set , unsigned int clear ) ;
2199 int (*resize)(struct tty_struct *tty , struct winsize *ws ) ;
2200 int (*set_termiox)(struct tty_struct *tty , struct termiox *tnew ) ;
2201 int (*get_icount)(struct tty_struct *tty , struct serial_icounter_struct *icount ) ;
2202 int (*poll_init)(struct tty_driver *driver , int line , char *options ) ;
2203 int (*poll_get_char)(struct tty_driver *driver , int line ) ;
2204 void (*poll_put_char)(struct tty_driver *driver , int line , char ch ) ;
2205 struct file_operations const *proc_fops ;
2206};
2207#line 294 "include/linux/tty_driver.h"
2208struct tty_driver {
2209 int magic ;
2210 struct kref kref ;
2211 struct cdev cdev ;
2212 struct module *owner ;
2213 char const *driver_name ;
2214 char const *name ;
2215 int name_base ;
2216 int major ;
2217 int minor_start ;
2218 int num ;
2219 short type ;
2220 short subtype ;
2221 struct ktermios init_termios ;
2222 int flags ;
2223 struct proc_dir_entry *proc_entry ;
2224 struct tty_driver *other ;
2225 struct tty_struct **ttys ;
2226 struct ktermios **termios ;
2227 void *driver_state ;
2228 struct tty_operations const *ops ;
2229 struct list_head tty_drivers ;
2230};
2231#line 19 "include/linux/klist.h"
2232struct klist_node;
2233#line 19
2234struct klist_node;
2235#line 39 "include/linux/klist.h"
2236struct klist_node {
2237 void *n_klist ;
2238 struct list_head n_node ;
2239 struct kref n_ref ;
2240};
2241#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2242struct dma_map_ops;
2243#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2244struct dev_archdata {
2245 void *acpi_handle ;
2246 struct dma_map_ops *dma_ops ;
2247 void *iommu ;
2248};
2249#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2250struct pdev_archdata {
2251
2252};
2253#line 28 "include/linux/device.h"
2254struct device;
2255#line 29
2256struct device_private;
2257#line 29
2258struct device_private;
2259#line 30
2260struct device_driver;
2261#line 30
2262struct device_driver;
2263#line 31
2264struct driver_private;
2265#line 31
2266struct driver_private;
2267#line 32
2268struct module;
2269#line 33
2270struct class;
2271#line 33
2272struct class;
2273#line 34
2274struct subsys_private;
2275#line 34
2276struct subsys_private;
2277#line 35
2278struct bus_type;
2279#line 35
2280struct bus_type;
2281#line 36
2282struct device_node;
2283#line 36
2284struct device_node;
2285#line 37
2286struct iommu_ops;
2287#line 37
2288struct iommu_ops;
2289#line 39 "include/linux/device.h"
2290struct bus_attribute {
2291 struct attribute attr ;
2292 ssize_t (*show)(struct bus_type *bus , char *buf ) ;
2293 ssize_t (*store)(struct bus_type *bus , char const *buf , size_t count ) ;
2294};
2295#line 89
2296struct device_attribute;
2297#line 89
2298struct driver_attribute;
2299#line 89 "include/linux/device.h"
2300struct bus_type {
2301 char const *name ;
2302 char const *dev_name ;
2303 struct device *dev_root ;
2304 struct bus_attribute *bus_attrs ;
2305 struct device_attribute *dev_attrs ;
2306 struct driver_attribute *drv_attrs ;
2307 int (*match)(struct device *dev , struct device_driver *drv ) ;
2308 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2309 int (*probe)(struct device *dev ) ;
2310 int (*remove)(struct device *dev ) ;
2311 void (*shutdown)(struct device *dev ) ;
2312 int (*suspend)(struct device *dev , pm_message_t state ) ;
2313 int (*resume)(struct device *dev ) ;
2314 struct dev_pm_ops const *pm ;
2315 struct iommu_ops *iommu_ops ;
2316 struct subsys_private *p ;
2317};
2318#line 127
2319struct device_type;
2320#line 214
2321struct of_device_id;
2322#line 214 "include/linux/device.h"
2323struct device_driver {
2324 char const *name ;
2325 struct bus_type *bus ;
2326 struct module *owner ;
2327 char const *mod_name ;
2328 bool suppress_bind_attrs ;
2329 struct of_device_id const *of_match_table ;
2330 int (*probe)(struct device *dev ) ;
2331 int (*remove)(struct device *dev ) ;
2332 void (*shutdown)(struct device *dev ) ;
2333 int (*suspend)(struct device *dev , pm_message_t state ) ;
2334 int (*resume)(struct device *dev ) ;
2335 struct attribute_group const **groups ;
2336 struct dev_pm_ops const *pm ;
2337 struct driver_private *p ;
2338};
2339#line 249 "include/linux/device.h"
2340struct driver_attribute {
2341 struct attribute attr ;
2342 ssize_t (*show)(struct device_driver *driver , char *buf ) ;
2343 ssize_t (*store)(struct device_driver *driver , char const *buf , size_t count ) ;
2344};
2345#line 330
2346struct class_attribute;
2347#line 330 "include/linux/device.h"
2348struct class {
2349 char const *name ;
2350 struct module *owner ;
2351 struct class_attribute *class_attrs ;
2352 struct device_attribute *dev_attrs ;
2353 struct bin_attribute *dev_bin_attrs ;
2354 struct kobject *dev_kobj ;
2355 int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2356 char *(*devnode)(struct device *dev , umode_t *mode ) ;
2357 void (*class_release)(struct class *class ) ;
2358 void (*dev_release)(struct device *dev ) ;
2359 int (*suspend)(struct device *dev , pm_message_t state ) ;
2360 int (*resume)(struct device *dev ) ;
2361 struct kobj_ns_type_operations const *ns_type ;
2362 void const *(*namespace)(struct device *dev ) ;
2363 struct dev_pm_ops const *pm ;
2364 struct subsys_private *p ;
2365};
2366#line 397 "include/linux/device.h"
2367struct class_attribute {
2368 struct attribute attr ;
2369 ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
2370 ssize_t (*store)(struct class *class , struct class_attribute *attr , char const *buf ,
2371 size_t count ) ;
2372 void const *(*namespace)(struct class *class , struct class_attribute const *attr ) ;
2373};
2374#line 465 "include/linux/device.h"
2375struct device_type {
2376 char const *name ;
2377 struct attribute_group const **groups ;
2378 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2379 char *(*devnode)(struct device *dev , umode_t *mode ) ;
2380 void (*release)(struct device *dev ) ;
2381 struct dev_pm_ops const *pm ;
2382};
2383#line 476 "include/linux/device.h"
2384struct device_attribute {
2385 struct attribute attr ;
2386 ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
2387 ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const *buf ,
2388 size_t count ) ;
2389};
2390#line 559 "include/linux/device.h"
2391struct device_dma_parameters {
2392 unsigned int max_segment_size ;
2393 unsigned long segment_boundary_mask ;
2394};
2395#line 627
2396struct dma_coherent_mem;
2397#line 627 "include/linux/device.h"
2398struct device {
2399 struct device *parent ;
2400 struct device_private *p ;
2401 struct kobject kobj ;
2402 char const *init_name ;
2403 struct device_type const *type ;
2404 struct mutex mutex ;
2405 struct bus_type *bus ;
2406 struct device_driver *driver ;
2407 void *platform_data ;
2408 struct dev_pm_info power ;
2409 struct dev_pm_domain *pm_domain ;
2410 int numa_node ;
2411 u64 *dma_mask ;
2412 u64 coherent_dma_mask ;
2413 struct device_dma_parameters *dma_parms ;
2414 struct list_head dma_pools ;
2415 struct dma_coherent_mem *dma_mem ;
2416 struct dev_archdata archdata ;
2417 struct device_node *of_node ;
2418 dev_t devt ;
2419 u32 id ;
2420 spinlock_t devres_lock ;
2421 struct list_head devres_head ;
2422 struct klist_node knode_class ;
2423 struct class *class ;
2424 struct attribute_group const **groups ;
2425 void (*release)(struct device *dev ) ;
2426};
2427#line 43 "include/linux/pm_wakeup.h"
2428struct wakeup_source {
2429 char const *name ;
2430 struct list_head entry ;
2431 spinlock_t lock ;
2432 struct timer_list timer ;
2433 unsigned long timer_expires ;
2434 ktime_t total_time ;
2435 ktime_t max_time ;
2436 ktime_t last_time ;
2437 unsigned long event_count ;
2438 unsigned long active_count ;
2439 unsigned long relax_count ;
2440 unsigned long hit_count ;
2441 unsigned int active : 1 ;
2442};
2443#line 49 "include/linux/pps_kernel.h"
2444struct pps_event_time {
2445 struct timespec ts_real ;
2446};
2447#line 114 "include/linux/tty_ldisc.h"
2448struct tty_ldisc_ops {
2449 int magic ;
2450 char *name ;
2451 int num ;
2452 int flags ;
2453 int (*open)(struct tty_struct * ) ;
2454 void (*close)(struct tty_struct * ) ;
2455 void (*flush_buffer)(struct tty_struct *tty ) ;
2456 ssize_t (*chars_in_buffer)(struct tty_struct *tty ) ;
2457 ssize_t (*read)(struct tty_struct *tty , struct file *file , unsigned char *buf ,
2458 size_t nr ) ;
2459 ssize_t (*write)(struct tty_struct *tty , struct file *file , unsigned char const *buf ,
2460 size_t nr ) ;
2461 int (*ioctl)(struct tty_struct *tty , struct file *file , unsigned int cmd , unsigned long arg ) ;
2462 long (*compat_ioctl)(struct tty_struct *tty , struct file *file , unsigned int cmd ,
2463 unsigned long arg ) ;
2464 void (*set_termios)(struct tty_struct *tty , struct ktermios *old ) ;
2465 unsigned int (*poll)(struct tty_struct * , struct file * , struct poll_table_struct * ) ;
2466 int (*hangup)(struct tty_struct *tty ) ;
2467 void (*receive_buf)(struct tty_struct * , unsigned char const *cp , char *fp ,
2468 int count ) ;
2469 void (*write_wakeup)(struct tty_struct * ) ;
2470 void (*dcd_change)(struct tty_struct * , unsigned int , struct pps_event_time * ) ;
2471 struct module *owner ;
2472 int refcount ;
2473};
2474#line 154 "include/linux/tty_ldisc.h"
2475struct tty_ldisc {
2476 struct tty_ldisc_ops *ops ;
2477 atomic_t users ;
2478};
2479#line 64 "include/linux/tty.h"
2480struct tty_buffer {
2481 struct tty_buffer *next ;
2482 char *char_buf_ptr ;
2483 unsigned char *flag_buf_ptr ;
2484 int used ;
2485 int size ;
2486 int commit ;
2487 int read ;
2488 unsigned long data[0] ;
2489};
2490#line 87 "include/linux/tty.h"
2491struct tty_bufhead {
2492 struct work_struct work ;
2493 spinlock_t lock ;
2494 struct tty_buffer *head ;
2495 struct tty_buffer *tail ;
2496 struct tty_buffer *free ;
2497 int memory_used ;
2498};
2499#line 188
2500struct device;
2501#line 189
2502struct signal_struct;
2503#line 189
2504struct signal_struct;
2505#line 202
2506struct tty_port;
2507#line 202
2508struct tty_port;
2509#line 204 "include/linux/tty.h"
2510struct tty_port_operations {
2511 int (*carrier_raised)(struct tty_port *port ) ;
2512 void (*dtr_rts)(struct tty_port *port , int raise ) ;
2513 void (*shutdown)(struct tty_port *port ) ;
2514 void (*drop)(struct tty_port *port ) ;
2515 int (*activate)(struct tty_port *port , struct tty_struct *tty ) ;
2516 void (*destruct)(struct tty_port *port ) ;
2517};
2518#line 223 "include/linux/tty.h"
2519struct tty_port {
2520 struct tty_struct *tty ;
2521 struct tty_port_operations const *ops ;
2522 spinlock_t lock ;
2523 int blocked_open ;
2524 int count ;
2525 wait_queue_head_t open_wait ;
2526 wait_queue_head_t close_wait ;
2527 wait_queue_head_t delta_msr_wait ;
2528 unsigned long flags ;
2529 unsigned char console : 1 ;
2530 struct mutex mutex ;
2531 struct mutex buf_mutex ;
2532 unsigned char *xmit_buf ;
2533 unsigned int close_delay ;
2534 unsigned int closing_wait ;
2535 int drain_delay ;
2536 struct kref kref ;
2537};
2538#line 257
2539struct tty_operations;
2540#line 259 "include/linux/tty.h"
2541struct tty_struct {
2542 int magic ;
2543 struct kref kref ;
2544 struct device *dev ;
2545 struct tty_driver *driver ;
2546 struct tty_operations const *ops ;
2547 int index ;
2548 struct mutex ldisc_mutex ;
2549 struct tty_ldisc *ldisc ;
2550 struct mutex termios_mutex ;
2551 spinlock_t ctrl_lock ;
2552 struct ktermios *termios ;
2553 struct ktermios *termios_locked ;
2554 struct termiox *termiox ;
2555 char name[64] ;
2556 struct pid *pgrp ;
2557 struct pid *session ;
2558 unsigned long flags ;
2559 int count ;
2560 struct winsize winsize ;
2561 unsigned char stopped : 1 ;
2562 unsigned char hw_stopped : 1 ;
2563 unsigned char flow_stopped : 1 ;
2564 unsigned char packet : 1 ;
2565 unsigned char low_latency : 1 ;
2566 unsigned char warned : 1 ;
2567 unsigned char ctrl_status ;
2568 unsigned int receive_room ;
2569 struct tty_struct *link ;
2570 struct fasync_struct *fasync ;
2571 struct tty_bufhead buf ;
2572 int alt_speed ;
2573 wait_queue_head_t write_wait ;
2574 wait_queue_head_t read_wait ;
2575 struct work_struct hangup_work ;
2576 void *disc_data ;
2577 void *driver_data ;
2578 struct list_head tty_files ;
2579 unsigned int column ;
2580 unsigned char lnext : 1 ;
2581 unsigned char erasing : 1 ;
2582 unsigned char raw : 1 ;
2583 unsigned char real_raw : 1 ;
2584 unsigned char icanon : 1 ;
2585 unsigned char closing : 1 ;
2586 unsigned char echo_overrun : 1 ;
2587 unsigned short minimum_to_wake ;
2588 unsigned long overrun_time ;
2589 int num_overrun ;
2590 unsigned long process_char_map[256UL / (8UL * sizeof(unsigned long ))] ;
2591 char *read_buf ;
2592 int read_head ;
2593 int read_tail ;
2594 int read_cnt ;
2595 unsigned long read_flags[4096UL / (8UL * sizeof(unsigned long ))] ;
2596 unsigned char *echo_buf ;
2597 unsigned int echo_pos ;
2598 unsigned int echo_cnt ;
2599 int canon_data ;
2600 unsigned long canon_head ;
2601 unsigned int canon_column ;
2602 struct mutex atomic_read_lock ;
2603 struct mutex atomic_write_lock ;
2604 struct mutex output_lock ;
2605 struct mutex echo_lock ;
2606 unsigned char *write_buf ;
2607 int write_cnt ;
2608 spinlock_t read_lock ;
2609 struct work_struct SAK_work ;
2610 struct tty_port *port ;
2611};
2612#line 35 "include/linux/serial.h"
2613struct serial_struct {
2614 int type ;
2615 int line ;
2616 unsigned int port ;
2617 int irq ;
2618 int flags ;
2619 int xmit_fifo_size ;
2620 int custom_divisor ;
2621 int baud_base ;
2622 unsigned short close_delay ;
2623 char io_type ;
2624 char reserved_char[1] ;
2625 int hub6 ;
2626 unsigned short closing_wait ;
2627 unsigned short closing_wait2 ;
2628 unsigned char *iomem_base ;
2629 unsigned short iomem_reg_shift ;
2630 unsigned int port_high ;
2631 unsigned long iomap_base ;
2632};
2633#line 193 "include/linux/serial.h"
2634struct serial_icounter_struct {
2635 int cts ;
2636 int dsr ;
2637 int rng ;
2638 int dcd ;
2639 int rx ;
2640 int tx ;
2641 int frame ;
2642 int overrun ;
2643 int parity ;
2644 int brk ;
2645 int buf_overrun ;
2646 int reserved[9] ;
2647};
2648#line 8 "include/linux/circ_buf.h"
2649struct circ_buf {
2650 char *buf ;
2651 int head ;
2652 int tail ;
2653};
2654#line 23 "include/linux/mm_types.h"
2655struct address_space;
2656#line 40 "include/linux/mm_types.h"
2657union __anonunion____missing_field_name_227 {
2658 unsigned long index ;
2659 void *freelist ;
2660};
2661#line 40 "include/linux/mm_types.h"
2662struct __anonstruct____missing_field_name_231 {
2663 unsigned int inuse : 16 ;
2664 unsigned int objects : 15 ;
2665 unsigned int frozen : 1 ;
2666};
2667#line 40 "include/linux/mm_types.h"
2668union __anonunion____missing_field_name_230 {
2669 atomic_t _mapcount ;
2670 struct __anonstruct____missing_field_name_231 __annonCompField37 ;
2671};
2672#line 40 "include/linux/mm_types.h"
2673struct __anonstruct____missing_field_name_229 {
2674 union __anonunion____missing_field_name_230 __annonCompField38 ;
2675 atomic_t _count ;
2676};
2677#line 40 "include/linux/mm_types.h"
2678union __anonunion____missing_field_name_228 {
2679 unsigned long counters ;
2680 struct __anonstruct____missing_field_name_229 __annonCompField39 ;
2681};
2682#line 40 "include/linux/mm_types.h"
2683struct __anonstruct____missing_field_name_226 {
2684 union __anonunion____missing_field_name_227 __annonCompField36 ;
2685 union __anonunion____missing_field_name_228 __annonCompField40 ;
2686};
2687#line 40 "include/linux/mm_types.h"
2688struct __anonstruct____missing_field_name_233 {
2689 struct page *next ;
2690 int pages ;
2691 int pobjects ;
2692};
2693#line 40 "include/linux/mm_types.h"
2694union __anonunion____missing_field_name_232 {
2695 struct list_head lru ;
2696 struct __anonstruct____missing_field_name_233 __annonCompField42 ;
2697};
2698#line 40 "include/linux/mm_types.h"
2699union __anonunion____missing_field_name_234 {
2700 unsigned long private ;
2701 struct kmem_cache *slab ;
2702 struct page *first_page ;
2703};
2704#line 40 "include/linux/mm_types.h"
2705struct page {
2706 unsigned long flags ;
2707 struct address_space *mapping ;
2708 struct __anonstruct____missing_field_name_226 __annonCompField41 ;
2709 union __anonunion____missing_field_name_232 __annonCompField43 ;
2710 union __anonunion____missing_field_name_234 __annonCompField44 ;
2711 unsigned long debug_flags ;
2712} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
2713#line 200 "include/linux/mm_types.h"
2714struct __anonstruct_vm_set_236 {
2715 struct list_head list ;
2716 void *parent ;
2717 struct vm_area_struct *head ;
2718};
2719#line 200 "include/linux/mm_types.h"
2720union __anonunion_shared_235 {
2721 struct __anonstruct_vm_set_236 vm_set ;
2722 struct raw_prio_tree_node prio_tree_node ;
2723};
2724#line 200
2725struct anon_vma;
2726#line 200
2727struct vm_operations_struct;
2728#line 200
2729struct mempolicy;
2730#line 200 "include/linux/mm_types.h"
2731struct vm_area_struct {
2732 struct mm_struct *vm_mm ;
2733 unsigned long vm_start ;
2734 unsigned long vm_end ;
2735 struct vm_area_struct *vm_next ;
2736 struct vm_area_struct *vm_prev ;
2737 pgprot_t vm_page_prot ;
2738 unsigned long vm_flags ;
2739 struct rb_node vm_rb ;
2740 union __anonunion_shared_235 shared ;
2741 struct list_head anon_vma_chain ;
2742 struct anon_vma *anon_vma ;
2743 struct vm_operations_struct const *vm_ops ;
2744 unsigned long vm_pgoff ;
2745 struct file *vm_file ;
2746 void *vm_private_data ;
2747 struct mempolicy *vm_policy ;
2748};
2749#line 257 "include/linux/mm_types.h"
2750struct core_thread {
2751 struct task_struct *task ;
2752 struct core_thread *next ;
2753};
2754#line 262 "include/linux/mm_types.h"
2755struct core_state {
2756 atomic_t nr_threads ;
2757 struct core_thread dumper ;
2758 struct completion startup ;
2759};
2760#line 284 "include/linux/mm_types.h"
2761struct mm_rss_stat {
2762 atomic_long_t count[3] ;
2763};
2764#line 288
2765struct linux_binfmt;
2766#line 288
2767struct mmu_notifier_mm;
2768#line 288 "include/linux/mm_types.h"
2769struct mm_struct {
2770 struct vm_area_struct *mmap ;
2771 struct rb_root mm_rb ;
2772 struct vm_area_struct *mmap_cache ;
2773 unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
2774 unsigned long pgoff , unsigned long flags ) ;
2775 void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
2776 unsigned long mmap_base ;
2777 unsigned long task_size ;
2778 unsigned long cached_hole_size ;
2779 unsigned long free_area_cache ;
2780 pgd_t *pgd ;
2781 atomic_t mm_users ;
2782 atomic_t mm_count ;
2783 int map_count ;
2784 spinlock_t page_table_lock ;
2785 struct rw_semaphore mmap_sem ;
2786 struct list_head mmlist ;
2787 unsigned long hiwater_rss ;
2788 unsigned long hiwater_vm ;
2789 unsigned long total_vm ;
2790 unsigned long locked_vm ;
2791 unsigned long pinned_vm ;
2792 unsigned long shared_vm ;
2793 unsigned long exec_vm ;
2794 unsigned long stack_vm ;
2795 unsigned long reserved_vm ;
2796 unsigned long def_flags ;
2797 unsigned long nr_ptes ;
2798 unsigned long start_code ;
2799 unsigned long end_code ;
2800 unsigned long start_data ;
2801 unsigned long end_data ;
2802 unsigned long start_brk ;
2803 unsigned long brk ;
2804 unsigned long start_stack ;
2805 unsigned long arg_start ;
2806 unsigned long arg_end ;
2807 unsigned long env_start ;
2808 unsigned long env_end ;
2809 unsigned long saved_auxv[44] ;
2810 struct mm_rss_stat rss_stat ;
2811 struct linux_binfmt *binfmt ;
2812 cpumask_var_t cpu_vm_mask_var ;
2813 mm_context_t context ;
2814 unsigned int faultstamp ;
2815 unsigned int token_priority ;
2816 unsigned int last_interval ;
2817 unsigned long flags ;
2818 struct core_state *core_state ;
2819 spinlock_t ioctx_lock ;
2820 struct hlist_head ioctx_list ;
2821 struct task_struct *owner ;
2822 struct file *exe_file ;
2823 unsigned long num_exe_file_vmas ;
2824 struct mmu_notifier_mm *mmu_notifier_mm ;
2825 pgtable_t pmd_huge_pte ;
2826 struct cpumask cpumask_allocation ;
2827};
2828#line 7 "include/asm-generic/cputime.h"
2829typedef unsigned long cputime_t;
2830#line 84 "include/linux/sem.h"
2831struct task_struct;
2832#line 101
2833struct sem_undo_list;
2834#line 101 "include/linux/sem.h"
2835struct sysv_sem {
2836 struct sem_undo_list *undo_list ;
2837};
2838#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2839struct siginfo;
2840#line 10
2841struct siginfo;
2842#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2843struct __anonstruct_sigset_t_238 {
2844 unsigned long sig[1] ;
2845};
2846#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2847typedef struct __anonstruct_sigset_t_238 sigset_t;
2848#line 17 "include/asm-generic/signal-defs.h"
2849typedef void __signalfn_t(int );
2850#line 18 "include/asm-generic/signal-defs.h"
2851typedef __signalfn_t *__sighandler_t;
2852#line 20 "include/asm-generic/signal-defs.h"
2853typedef void __restorefn_t(void);
2854#line 21 "include/asm-generic/signal-defs.h"
2855typedef __restorefn_t *__sigrestore_t;
2856#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2857struct sigaction {
2858 __sighandler_t sa_handler ;
2859 unsigned long sa_flags ;
2860 __sigrestore_t sa_restorer ;
2861 sigset_t sa_mask ;
2862};
2863#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2864struct k_sigaction {
2865 struct sigaction sa ;
2866};
2867#line 7 "include/asm-generic/siginfo.h"
2868union sigval {
2869 int sival_int ;
2870 void *sival_ptr ;
2871};
2872#line 7 "include/asm-generic/siginfo.h"
2873typedef union sigval sigval_t;
2874#line 48 "include/asm-generic/siginfo.h"
2875struct __anonstruct__kill_240 {
2876 __kernel_pid_t _pid ;
2877 __kernel_uid32_t _uid ;
2878};
2879#line 48 "include/asm-generic/siginfo.h"
2880struct __anonstruct__timer_241 {
2881 __kernel_timer_t _tid ;
2882 int _overrun ;
2883 char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
2884 sigval_t _sigval ;
2885 int _sys_private ;
2886};
2887#line 48 "include/asm-generic/siginfo.h"
2888struct __anonstruct__rt_242 {
2889 __kernel_pid_t _pid ;
2890 __kernel_uid32_t _uid ;
2891 sigval_t _sigval ;
2892};
2893#line 48 "include/asm-generic/siginfo.h"
2894struct __anonstruct__sigchld_243 {
2895 __kernel_pid_t _pid ;
2896 __kernel_uid32_t _uid ;
2897 int _status ;
2898 __kernel_clock_t _utime ;
2899 __kernel_clock_t _stime ;
2900};
2901#line 48 "include/asm-generic/siginfo.h"
2902struct __anonstruct__sigfault_244 {
2903 void *_addr ;
2904 short _addr_lsb ;
2905};
2906#line 48 "include/asm-generic/siginfo.h"
2907struct __anonstruct__sigpoll_245 {
2908 long _band ;
2909 int _fd ;
2910};
2911#line 48 "include/asm-generic/siginfo.h"
2912union __anonunion__sifields_239 {
2913 int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
2914 struct __anonstruct__kill_240 _kill ;
2915 struct __anonstruct__timer_241 _timer ;
2916 struct __anonstruct__rt_242 _rt ;
2917 struct __anonstruct__sigchld_243 _sigchld ;
2918 struct __anonstruct__sigfault_244 _sigfault ;
2919 struct __anonstruct__sigpoll_245 _sigpoll ;
2920};
2921#line 48 "include/asm-generic/siginfo.h"
2922struct siginfo {
2923 int si_signo ;
2924 int si_errno ;
2925 int si_code ;
2926 union __anonunion__sifields_239 _sifields ;
2927};
2928#line 48 "include/asm-generic/siginfo.h"
2929typedef struct siginfo siginfo_t;
2930#line 288
2931struct siginfo;
2932#line 10 "include/linux/signal.h"
2933struct task_struct;
2934#line 18
2935struct user_struct;
2936#line 28 "include/linux/signal.h"
2937struct sigpending {
2938 struct list_head list ;
2939 sigset_t signal ;
2940};
2941#line 239
2942struct timespec;
2943#line 240
2944struct pt_regs;
2945#line 10 "include/linux/seccomp.h"
2946struct __anonstruct_seccomp_t_248 {
2947 int mode ;
2948};
2949#line 10 "include/linux/seccomp.h"
2950typedef struct __anonstruct_seccomp_t_248 seccomp_t;
2951#line 81 "include/linux/plist.h"
2952struct plist_head {
2953 struct list_head node_list ;
2954};
2955#line 85 "include/linux/plist.h"
2956struct plist_node {
2957 int prio ;
2958 struct list_head prio_list ;
2959 struct list_head node_list ;
2960};
2961#line 40 "include/linux/rtmutex.h"
2962struct rt_mutex_waiter;
2963#line 40
2964struct rt_mutex_waiter;
2965#line 42 "include/linux/resource.h"
2966struct rlimit {
2967 unsigned long rlim_cur ;
2968 unsigned long rlim_max ;
2969};
2970#line 81
2971struct task_struct;
2972#line 11 "include/linux/task_io_accounting.h"
2973struct task_io_accounting {
2974 u64 rchar ;
2975 u64 wchar ;
2976 u64 syscr ;
2977 u64 syscw ;
2978 u64 read_bytes ;
2979 u64 write_bytes ;
2980 u64 cancelled_write_bytes ;
2981};
2982#line 13 "include/linux/latencytop.h"
2983struct task_struct;
2984#line 20 "include/linux/latencytop.h"
2985struct latency_record {
2986 unsigned long backtrace[12] ;
2987 unsigned int count ;
2988 unsigned long time ;
2989 unsigned long max ;
2990};
2991#line 29 "include/linux/key.h"
2992typedef int32_t key_serial_t;
2993#line 32 "include/linux/key.h"
2994typedef uint32_t key_perm_t;
2995#line 34
2996struct key;
2997#line 34
2998struct key;
2999#line 74
3000struct seq_file;
3001#line 75
3002struct user_struct;
3003#line 76
3004struct signal_struct;
3005#line 77
3006struct cred;
3007#line 79
3008struct key_type;
3009#line 79
3010struct key_type;
3011#line 81
3012struct keyring_list;
3013#line 81
3014struct keyring_list;
3015#line 124
3016struct key_user;
3017#line 124 "include/linux/key.h"
3018union __anonunion____missing_field_name_249 {
3019 time_t expiry ;
3020 time_t revoked_at ;
3021};
3022#line 124 "include/linux/key.h"
3023union __anonunion_type_data_250 {
3024 struct list_head link ;
3025 unsigned long x[2] ;
3026 void *p[2] ;
3027 int reject_error ;
3028};
3029#line 124 "include/linux/key.h"
3030union __anonunion_payload_251 {
3031 unsigned long value ;
3032 void *rcudata ;
3033 void *data ;
3034 struct keyring_list *subscriptions ;
3035};
3036#line 124 "include/linux/key.h"
3037struct key {
3038 atomic_t usage ;
3039 key_serial_t serial ;
3040 struct rb_node serial_node ;
3041 struct key_type *type ;
3042 struct rw_semaphore sem ;
3043 struct key_user *user ;
3044 void *security ;
3045 union __anonunion____missing_field_name_249 __annonCompField45 ;
3046 uid_t uid ;
3047 gid_t gid ;
3048 key_perm_t perm ;
3049 unsigned short quotalen ;
3050 unsigned short datalen ;
3051 unsigned long flags ;
3052 char *description ;
3053 union __anonunion_type_data_250 type_data ;
3054 union __anonunion_payload_251 payload ;
3055};
3056#line 18 "include/linux/selinux.h"
3057struct audit_context;
3058#line 18
3059struct audit_context;
3060#line 21 "include/linux/cred.h"
3061struct user_struct;
3062#line 22
3063struct cred;
3064#line 23
3065struct inode;
3066#line 31 "include/linux/cred.h"
3067struct group_info {
3068 atomic_t usage ;
3069 int ngroups ;
3070 int nblocks ;
3071 gid_t small_block[32] ;
3072 gid_t *blocks[0] ;
3073};
3074#line 83 "include/linux/cred.h"
3075struct thread_group_cred {
3076 atomic_t usage ;
3077 pid_t tgid ;
3078 spinlock_t lock ;
3079 struct key *session_keyring ;
3080 struct key *process_keyring ;
3081 struct rcu_head rcu ;
3082};
3083#line 116 "include/linux/cred.h"
3084struct cred {
3085 atomic_t usage ;
3086 atomic_t subscribers ;
3087 void *put_addr ;
3088 unsigned int magic ;
3089 uid_t uid ;
3090 gid_t gid ;
3091 uid_t suid ;
3092 gid_t sgid ;
3093 uid_t euid ;
3094 gid_t egid ;
3095 uid_t fsuid ;
3096 gid_t fsgid ;
3097 unsigned int securebits ;
3098 kernel_cap_t cap_inheritable ;
3099 kernel_cap_t cap_permitted ;
3100 kernel_cap_t cap_effective ;
3101 kernel_cap_t cap_bset ;
3102 unsigned char jit_keyring ;
3103 struct key *thread_keyring ;
3104 struct key *request_key_auth ;
3105 struct thread_group_cred *tgcred ;
3106 void *security ;
3107 struct user_struct *user ;
3108 struct user_namespace *user_ns ;
3109 struct group_info *group_info ;
3110 struct rcu_head rcu ;
3111};
3112#line 61 "include/linux/llist.h"
3113struct llist_node;
3114#line 65 "include/linux/llist.h"
3115struct llist_node {
3116 struct llist_node *next ;
3117};
3118#line 97 "include/linux/sched.h"
3119struct futex_pi_state;
3120#line 97
3121struct futex_pi_state;
3122#line 98
3123struct robust_list_head;
3124#line 98
3125struct robust_list_head;
3126#line 99
3127struct bio_list;
3128#line 99
3129struct bio_list;
3130#line 100
3131struct fs_struct;
3132#line 100
3133struct fs_struct;
3134#line 101
3135struct perf_event_context;
3136#line 101
3137struct perf_event_context;
3138#line 102
3139struct blk_plug;
3140#line 102
3141struct blk_plug;
3142#line 150
3143struct seq_file;
3144#line 151
3145struct cfs_rq;
3146#line 151
3147struct cfs_rq;
3148#line 259
3149struct task_struct;
3150#line 366
3151struct nsproxy;
3152#line 367
3153struct user_namespace;
3154#line 58 "include/linux/aio_abi.h"
3155struct io_event {
3156 __u64 data ;
3157 __u64 obj ;
3158 __s64 res ;
3159 __s64 res2 ;
3160};
3161#line 16 "include/linux/uio.h"
3162struct iovec {
3163 void *iov_base ;
3164 __kernel_size_t iov_len ;
3165};
3166#line 15 "include/linux/aio.h"
3167struct kioctx;
3168#line 15
3169struct kioctx;
3170#line 87 "include/linux/aio.h"
3171union __anonunion_ki_obj_253 {
3172 void *user ;
3173 struct task_struct *tsk ;
3174};
3175#line 87
3176struct eventfd_ctx;
3177#line 87 "include/linux/aio.h"
3178struct kiocb {
3179 struct list_head ki_run_list ;
3180 unsigned long ki_flags ;
3181 int ki_users ;
3182 unsigned int ki_key ;
3183 struct file *ki_filp ;
3184 struct kioctx *ki_ctx ;
3185 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
3186 ssize_t (*ki_retry)(struct kiocb * ) ;
3187 void (*ki_dtor)(struct kiocb * ) ;
3188 union __anonunion_ki_obj_253 ki_obj ;
3189 __u64 ki_user_data ;
3190 loff_t ki_pos ;
3191 void *private ;
3192 unsigned short ki_opcode ;
3193 size_t ki_nbytes ;
3194 char *ki_buf ;
3195 size_t ki_left ;
3196 struct iovec ki_inline_vec ;
3197 struct iovec *ki_iovec ;
3198 unsigned long ki_nr_segs ;
3199 unsigned long ki_cur_seg ;
3200 struct list_head ki_list ;
3201 struct list_head ki_batch ;
3202 struct eventfd_ctx *ki_eventfd ;
3203};
3204#line 166 "include/linux/aio.h"
3205struct aio_ring_info {
3206 unsigned long mmap_base ;
3207 unsigned long mmap_size ;
3208 struct page **ring_pages ;
3209 spinlock_t ring_lock ;
3210 long nr_pages ;
3211 unsigned int nr ;
3212 unsigned int tail ;
3213 struct page *internal_pages[8] ;
3214};
3215#line 179 "include/linux/aio.h"
3216struct kioctx {
3217 atomic_t users ;
3218 int dead ;
3219 struct mm_struct *mm ;
3220 unsigned long user_id ;
3221 struct hlist_node list ;
3222 wait_queue_head_t wait ;
3223 spinlock_t ctx_lock ;
3224 int reqs_active ;
3225 struct list_head active_reqs ;
3226 struct list_head run_list ;
3227 unsigned int max_reqs ;
3228 struct aio_ring_info ring_info ;
3229 struct delayed_work wq ;
3230 struct rcu_head rcu_head ;
3231};
3232#line 214
3233struct mm_struct;
3234#line 443 "include/linux/sched.h"
3235struct sighand_struct {
3236 atomic_t count ;
3237 struct k_sigaction action[64] ;
3238 spinlock_t siglock ;
3239 wait_queue_head_t signalfd_wqh ;
3240};
3241#line 450 "include/linux/sched.h"
3242struct pacct_struct {
3243 int ac_flag ;
3244 long ac_exitcode ;
3245 unsigned long ac_mem ;
3246 cputime_t ac_utime ;
3247 cputime_t ac_stime ;
3248 unsigned long ac_minflt ;
3249 unsigned long ac_majflt ;
3250};
3251#line 458 "include/linux/sched.h"
3252struct cpu_itimer {
3253 cputime_t expires ;
3254 cputime_t incr ;
3255 u32 error ;
3256 u32 incr_error ;
3257};
3258#line 476 "include/linux/sched.h"
3259struct task_cputime {
3260 cputime_t utime ;
3261 cputime_t stime ;
3262 unsigned long long sum_exec_runtime ;
3263};
3264#line 512 "include/linux/sched.h"
3265struct thread_group_cputimer {
3266 struct task_cputime cputime ;
3267 int running ;
3268 raw_spinlock_t lock ;
3269};
3270#line 519
3271struct autogroup;
3272#line 519
3273struct autogroup;
3274#line 528
3275struct taskstats;
3276#line 528
3277struct tty_audit_buf;
3278#line 528 "include/linux/sched.h"
3279struct signal_struct {
3280 atomic_t sigcnt ;
3281 atomic_t live ;
3282 int nr_threads ;
3283 wait_queue_head_t wait_chldexit ;
3284 struct task_struct *curr_target ;
3285 struct sigpending shared_pending ;
3286 int group_exit_code ;
3287 int notify_count ;
3288 struct task_struct *group_exit_task ;
3289 int group_stop_count ;
3290 unsigned int flags ;
3291 unsigned int is_child_subreaper : 1 ;
3292 unsigned int has_child_subreaper : 1 ;
3293 struct list_head posix_timers ;
3294 struct hrtimer real_timer ;
3295 struct pid *leader_pid ;
3296 ktime_t it_real_incr ;
3297 struct cpu_itimer it[2] ;
3298 struct thread_group_cputimer cputimer ;
3299 struct task_cputime cputime_expires ;
3300 struct list_head cpu_timers[3] ;
3301 struct pid *tty_old_pgrp ;
3302 int leader ;
3303 struct tty_struct *tty ;
3304 struct autogroup *autogroup ;
3305 cputime_t utime ;
3306 cputime_t stime ;
3307 cputime_t cutime ;
3308 cputime_t cstime ;
3309 cputime_t gtime ;
3310 cputime_t cgtime ;
3311 cputime_t prev_utime ;
3312 cputime_t prev_stime ;
3313 unsigned long nvcsw ;
3314 unsigned long nivcsw ;
3315 unsigned long cnvcsw ;
3316 unsigned long cnivcsw ;
3317 unsigned long min_flt ;
3318 unsigned long maj_flt ;
3319 unsigned long cmin_flt ;
3320 unsigned long cmaj_flt ;
3321 unsigned long inblock ;
3322 unsigned long oublock ;
3323 unsigned long cinblock ;
3324 unsigned long coublock ;
3325 unsigned long maxrss ;
3326 unsigned long cmaxrss ;
3327 struct task_io_accounting ioac ;
3328 unsigned long long sum_sched_runtime ;
3329 struct rlimit rlim[16] ;
3330 struct pacct_struct pacct ;
3331 struct taskstats *stats ;
3332 unsigned int audit_tty ;
3333 struct tty_audit_buf *tty_audit_buf ;
3334 struct rw_semaphore group_rwsem ;
3335 int oom_adj ;
3336 int oom_score_adj ;
3337 int oom_score_adj_min ;
3338 struct mutex cred_guard_mutex ;
3339};
3340#line 703 "include/linux/sched.h"
3341struct user_struct {
3342 atomic_t __count ;
3343 atomic_t processes ;
3344 atomic_t files ;
3345 atomic_t sigpending ;
3346 atomic_t inotify_watches ;
3347 atomic_t inotify_devs ;
3348 atomic_t fanotify_listeners ;
3349 atomic_long_t epoll_watches ;
3350 unsigned long mq_bytes ;
3351 unsigned long locked_shm ;
3352 struct key *uid_keyring ;
3353 struct key *session_keyring ;
3354 struct hlist_node uidhash_node ;
3355 uid_t uid ;
3356 struct user_namespace *user_ns ;
3357 atomic_long_t locked_vm ;
3358};
3359#line 747
3360struct backing_dev_info;
3361#line 748
3362struct reclaim_state;
3363#line 748
3364struct reclaim_state;
3365#line 751 "include/linux/sched.h"
3366struct sched_info {
3367 unsigned long pcount ;
3368 unsigned long long run_delay ;
3369 unsigned long long last_arrival ;
3370 unsigned long long last_queued ;
3371};
3372#line 763 "include/linux/sched.h"
3373struct task_delay_info {
3374 spinlock_t lock ;
3375 unsigned int flags ;
3376 struct timespec blkio_start ;
3377 struct timespec blkio_end ;
3378 u64 blkio_delay ;
3379 u64 swapin_delay ;
3380 u32 blkio_count ;
3381 u32 swapin_count ;
3382 struct timespec freepages_start ;
3383 struct timespec freepages_end ;
3384 u64 freepages_delay ;
3385 u32 freepages_count ;
3386};
3387#line 1088
3388struct io_context;
3389#line 1088
3390struct io_context;
3391#line 1097
3392struct audit_context;
3393#line 1098
3394struct mempolicy;
3395#line 1099
3396struct pipe_inode_info;
3397#line 1102
3398struct rq;
3399#line 1102
3400struct rq;
3401#line 1122 "include/linux/sched.h"
3402struct sched_class {
3403 struct sched_class const *next ;
3404 void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3405 void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3406 void (*yield_task)(struct rq *rq ) ;
3407 bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
3408 void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
3409 struct task_struct *(*pick_next_task)(struct rq *rq ) ;
3410 void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
3411 int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
3412 void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
3413 void (*post_schedule)(struct rq *this_rq ) ;
3414 void (*task_waking)(struct task_struct *task ) ;
3415 void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
3416 void (*set_cpus_allowed)(struct task_struct *p , struct cpumask const *newmask ) ;
3417 void (*rq_online)(struct rq *rq ) ;
3418 void (*rq_offline)(struct rq *rq ) ;
3419 void (*set_curr_task)(struct rq *rq ) ;
3420 void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
3421 void (*task_fork)(struct task_struct *p ) ;
3422 void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
3423 void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
3424 void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
3425 unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
3426 void (*task_move_group)(struct task_struct *p , int on_rq ) ;
3427};
3428#line 1167 "include/linux/sched.h"
3429struct load_weight {
3430 unsigned long weight ;
3431 unsigned long inv_weight ;
3432};
3433#line 1172 "include/linux/sched.h"
3434struct sched_statistics {
3435 u64 wait_start ;
3436 u64 wait_max ;
3437 u64 wait_count ;
3438 u64 wait_sum ;
3439 u64 iowait_count ;
3440 u64 iowait_sum ;
3441 u64 sleep_start ;
3442 u64 sleep_max ;
3443 s64 sum_sleep_runtime ;
3444 u64 block_start ;
3445 u64 block_max ;
3446 u64 exec_max ;
3447 u64 slice_max ;
3448 u64 nr_migrations_cold ;
3449 u64 nr_failed_migrations_affine ;
3450 u64 nr_failed_migrations_running ;
3451 u64 nr_failed_migrations_hot ;
3452 u64 nr_forced_migrations ;
3453 u64 nr_wakeups ;
3454 u64 nr_wakeups_sync ;
3455 u64 nr_wakeups_migrate ;
3456 u64 nr_wakeups_local ;
3457 u64 nr_wakeups_remote ;
3458 u64 nr_wakeups_affine ;
3459 u64 nr_wakeups_affine_attempts ;
3460 u64 nr_wakeups_passive ;
3461 u64 nr_wakeups_idle ;
3462};
3463#line 1207 "include/linux/sched.h"
3464struct sched_entity {
3465 struct load_weight load ;
3466 struct rb_node run_node ;
3467 struct list_head group_node ;
3468 unsigned int on_rq ;
3469 u64 exec_start ;
3470 u64 sum_exec_runtime ;
3471 u64 vruntime ;
3472 u64 prev_sum_exec_runtime ;
3473 u64 nr_migrations ;
3474 struct sched_statistics statistics ;
3475 struct sched_entity *parent ;
3476 struct cfs_rq *cfs_rq ;
3477 struct cfs_rq *my_q ;
3478};
3479#line 1233
3480struct rt_rq;
3481#line 1233 "include/linux/sched.h"
3482struct sched_rt_entity {
3483 struct list_head run_list ;
3484 unsigned long timeout ;
3485 unsigned int time_slice ;
3486 int nr_cpus_allowed ;
3487 struct sched_rt_entity *back ;
3488 struct sched_rt_entity *parent ;
3489 struct rt_rq *rt_rq ;
3490 struct rt_rq *my_q ;
3491};
3492#line 1264
3493struct css_set;
3494#line 1264
3495struct compat_robust_list_head;
3496#line 1264
3497struct mem_cgroup;
3498#line 1264 "include/linux/sched.h"
3499struct memcg_batch_info {
3500 int do_batch ;
3501 struct mem_cgroup *memcg ;
3502 unsigned long nr_pages ;
3503 unsigned long memsw_nr_pages ;
3504};
3505#line 1264 "include/linux/sched.h"
3506struct task_struct {
3507 long volatile state ;
3508 void *stack ;
3509 atomic_t usage ;
3510 unsigned int flags ;
3511 unsigned int ptrace ;
3512 struct llist_node wake_entry ;
3513 int on_cpu ;
3514 int on_rq ;
3515 int prio ;
3516 int static_prio ;
3517 int normal_prio ;
3518 unsigned int rt_priority ;
3519 struct sched_class const *sched_class ;
3520 struct sched_entity se ;
3521 struct sched_rt_entity rt ;
3522 struct hlist_head preempt_notifiers ;
3523 unsigned char fpu_counter ;
3524 unsigned int policy ;
3525 cpumask_t cpus_allowed ;
3526 struct sched_info sched_info ;
3527 struct list_head tasks ;
3528 struct plist_node pushable_tasks ;
3529 struct mm_struct *mm ;
3530 struct mm_struct *active_mm ;
3531 unsigned int brk_randomized : 1 ;
3532 int exit_state ;
3533 int exit_code ;
3534 int exit_signal ;
3535 int pdeath_signal ;
3536 unsigned int jobctl ;
3537 unsigned int personality ;
3538 unsigned int did_exec : 1 ;
3539 unsigned int in_execve : 1 ;
3540 unsigned int in_iowait : 1 ;
3541 unsigned int sched_reset_on_fork : 1 ;
3542 unsigned int sched_contributes_to_load : 1 ;
3543 unsigned int irq_thread : 1 ;
3544 pid_t pid ;
3545 pid_t tgid ;
3546 unsigned long stack_canary ;
3547 struct task_struct *real_parent ;
3548 struct task_struct *parent ;
3549 struct list_head children ;
3550 struct list_head sibling ;
3551 struct task_struct *group_leader ;
3552 struct list_head ptraced ;
3553 struct list_head ptrace_entry ;
3554 struct pid_link pids[3] ;
3555 struct list_head thread_group ;
3556 struct completion *vfork_done ;
3557 int *set_child_tid ;
3558 int *clear_child_tid ;
3559 cputime_t utime ;
3560 cputime_t stime ;
3561 cputime_t utimescaled ;
3562 cputime_t stimescaled ;
3563 cputime_t gtime ;
3564 cputime_t prev_utime ;
3565 cputime_t prev_stime ;
3566 unsigned long nvcsw ;
3567 unsigned long nivcsw ;
3568 struct timespec start_time ;
3569 struct timespec real_start_time ;
3570 unsigned long min_flt ;
3571 unsigned long maj_flt ;
3572 struct task_cputime cputime_expires ;
3573 struct list_head cpu_timers[3] ;
3574 struct cred const *real_cred ;
3575 struct cred const *cred ;
3576 struct cred *replacement_session_keyring ;
3577 char comm[16] ;
3578 int link_count ;
3579 int total_link_count ;
3580 struct sysv_sem sysvsem ;
3581 unsigned long last_switch_count ;
3582 struct thread_struct thread ;
3583 struct fs_struct *fs ;
3584 struct files_struct *files ;
3585 struct nsproxy *nsproxy ;
3586 struct signal_struct *signal ;
3587 struct sighand_struct *sighand ;
3588 sigset_t blocked ;
3589 sigset_t real_blocked ;
3590 sigset_t saved_sigmask ;
3591 struct sigpending pending ;
3592 unsigned long sas_ss_sp ;
3593 size_t sas_ss_size ;
3594 int (*notifier)(void *priv ) ;
3595 void *notifier_data ;
3596 sigset_t *notifier_mask ;
3597 struct audit_context *audit_context ;
3598 uid_t loginuid ;
3599 unsigned int sessionid ;
3600 seccomp_t seccomp ;
3601 u32 parent_exec_id ;
3602 u32 self_exec_id ;
3603 spinlock_t alloc_lock ;
3604 raw_spinlock_t pi_lock ;
3605 struct plist_head pi_waiters ;
3606 struct rt_mutex_waiter *pi_blocked_on ;
3607 struct mutex_waiter *blocked_on ;
3608 unsigned int irq_events ;
3609 unsigned long hardirq_enable_ip ;
3610 unsigned long hardirq_disable_ip ;
3611 unsigned int hardirq_enable_event ;
3612 unsigned int hardirq_disable_event ;
3613 int hardirqs_enabled ;
3614 int hardirq_context ;
3615 unsigned long softirq_disable_ip ;
3616 unsigned long softirq_enable_ip ;
3617 unsigned int softirq_disable_event ;
3618 unsigned int softirq_enable_event ;
3619 int softirqs_enabled ;
3620 int softirq_context ;
3621 void *journal_info ;
3622 struct bio_list *bio_list ;
3623 struct blk_plug *plug ;
3624 struct reclaim_state *reclaim_state ;
3625 struct backing_dev_info *backing_dev_info ;
3626 struct io_context *io_context ;
3627 unsigned long ptrace_message ;
3628 siginfo_t *last_siginfo ;
3629 struct task_io_accounting ioac ;
3630 u64 acct_rss_mem1 ;
3631 u64 acct_vm_mem1 ;
3632 cputime_t acct_timexpd ;
3633 nodemask_t mems_allowed ;
3634 seqcount_t mems_allowed_seq ;
3635 int cpuset_mem_spread_rotor ;
3636 int cpuset_slab_spread_rotor ;
3637 struct css_set *cgroups ;
3638 struct list_head cg_list ;
3639 struct robust_list_head *robust_list ;
3640 struct compat_robust_list_head *compat_robust_list ;
3641 struct list_head pi_state_list ;
3642 struct futex_pi_state *pi_state_cache ;
3643 struct perf_event_context *perf_event_ctxp[2] ;
3644 struct mutex perf_event_mutex ;
3645 struct list_head perf_event_list ;
3646 struct mempolicy *mempolicy ;
3647 short il_next ;
3648 short pref_node_fork ;
3649 struct rcu_head rcu ;
3650 struct pipe_inode_info *splice_pipe ;
3651 struct task_delay_info *delays ;
3652 int make_it_fail ;
3653 int nr_dirtied ;
3654 int nr_dirtied_pause ;
3655 unsigned long dirty_paused_when ;
3656 int latency_record_count ;
3657 struct latency_record latency_record[32] ;
3658 unsigned long timer_slack_ns ;
3659 unsigned long default_timer_slack_ns ;
3660 struct list_head *scm_work_list ;
3661 unsigned long trace ;
3662 unsigned long trace_recursion ;
3663 struct memcg_batch_info memcg_batch ;
3664 atomic_t ptrace_bp_refcnt ;
3665};
3666#line 1681
3667struct pid_namespace;
3668#line 228 "include/linux/serial_core.h"
3669struct uart_port;
3670#line 228
3671struct uart_port;
3672#line 229
3673struct serial_struct;
3674#line 230
3675struct device;
3676#line 236 "include/linux/serial_core.h"
3677struct uart_ops {
3678 unsigned int (*tx_empty)(struct uart_port * ) ;
3679 void (*set_mctrl)(struct uart_port * , unsigned int mctrl ) ;
3680 unsigned int (*get_mctrl)(struct uart_port * ) ;
3681 void (*stop_tx)(struct uart_port * ) ;
3682 void (*start_tx)(struct uart_port * ) ;
3683 void (*send_xchar)(struct uart_port * , char ch ) ;
3684 void (*stop_rx)(struct uart_port * ) ;
3685 void (*enable_ms)(struct uart_port * ) ;
3686 void (*break_ctl)(struct uart_port * , int ctl ) ;
3687 int (*startup)(struct uart_port * ) ;
3688 void (*shutdown)(struct uart_port * ) ;
3689 void (*flush_buffer)(struct uart_port * ) ;
3690 void (*set_termios)(struct uart_port * , struct ktermios *new , struct ktermios *old ) ;
3691 void (*set_ldisc)(struct uart_port * , int new ) ;
3692 void (*pm)(struct uart_port * , unsigned int state , unsigned int oldstate ) ;
3693 int (*set_wake)(struct uart_port * , unsigned int state ) ;
3694 char const *(*type)(struct uart_port * ) ;
3695 void (*release_port)(struct uart_port * ) ;
3696 int (*request_port)(struct uart_port * ) ;
3697 void (*config_port)(struct uart_port * , int ) ;
3698 int (*verify_port)(struct uart_port * , struct serial_struct * ) ;
3699 int (*ioctl)(struct uart_port * , unsigned int , unsigned long ) ;
3700 void (*poll_put_char)(struct uart_port * , unsigned char ) ;
3701 int (*poll_get_char)(struct uart_port * ) ;
3702};
3703#line 285 "include/linux/serial_core.h"
3704struct uart_icount {
3705 __u32 cts ;
3706 __u32 dsr ;
3707 __u32 rng ;
3708 __u32 dcd ;
3709 __u32 rx ;
3710 __u32 tx ;
3711 __u32 frame ;
3712 __u32 overrun ;
3713 __u32 parity ;
3714 __u32 brk ;
3715 __u32 buf_overrun ;
3716};
3717#line 299 "include/linux/serial_core.h"
3718typedef unsigned int upf_t;
3719#line 301
3720struct uart_state;
3721#line 301 "include/linux/serial_core.h"
3722struct uart_port {
3723 spinlock_t lock ;
3724 unsigned long iobase ;
3725 unsigned char *membase ;
3726 unsigned int (*serial_in)(struct uart_port * , int ) ;
3727 void (*serial_out)(struct uart_port * , int , int ) ;
3728 void (*set_termios)(struct uart_port * , struct ktermios *new , struct ktermios *old ) ;
3729 int (*handle_irq)(struct uart_port * ) ;
3730 void (*pm)(struct uart_port * , unsigned int state , unsigned int old ) ;
3731 unsigned int irq ;
3732 unsigned long irqflags ;
3733 unsigned int uartclk ;
3734 unsigned int fifosize ;
3735 unsigned char x_char ;
3736 unsigned char regshift ;
3737 unsigned char iotype ;
3738 unsigned char unused1 ;
3739 unsigned int read_status_mask ;
3740 unsigned int ignore_status_mask ;
3741 struct uart_state *state ;
3742 struct uart_icount icount ;
3743 struct console *cons ;
3744 unsigned long sysrq ;
3745 upf_t flags ;
3746 unsigned int mctrl ;
3747 unsigned int timeout ;
3748 unsigned int type ;
3749 struct uart_ops const *ops ;
3750 unsigned int custom_divisor ;
3751 unsigned int line ;
3752 resource_size_t mapbase ;
3753 struct device *dev ;
3754 unsigned char hub6 ;
3755 unsigned char suspended ;
3756 unsigned char irq_wake ;
3757 unsigned char unused[2] ;
3758 void *private_data ;
3759};
3760#line 399 "include/linux/serial_core.h"
3761struct uart_state {
3762 struct tty_port port ;
3763 int pm_state ;
3764 struct circ_buf xmit ;
3765 struct uart_port *uart_port ;
3766};
3767#line 414
3768struct module;
3769#line 415
3770struct tty_driver;
3771#line 417 "include/linux/serial_core.h"
3772struct uart_driver {
3773 struct module *owner ;
3774 char const *driver_name ;
3775 char const *dev_name ;
3776 int major ;
3777 int minor ;
3778 int nr ;
3779 struct console *cons ;
3780 struct uart_state *state ;
3781 struct tty_driver *tty_driver ;
3782};
3783#line 12 "include/linux/mod_devicetable.h"
3784typedef unsigned long kernel_ulong_t;
3785#line 219 "include/linux/mod_devicetable.h"
3786struct of_device_id {
3787 char name[32] ;
3788 char type[32] ;
3789 char compatible[128] ;
3790 void *data ;
3791};
3792#line 506 "include/linux/mod_devicetable.h"
3793struct platform_device_id {
3794 char name[20] ;
3795 kernel_ulong_t driver_data __attribute__((__aligned__(sizeof(kernel_ulong_t )))) ;
3796};
3797#line 17 "include/linux/platform_device.h"
3798struct mfd_cell;
3799#line 17
3800struct mfd_cell;
3801#line 19 "include/linux/platform_device.h"
3802struct platform_device {
3803 char const *name ;
3804 int id ;
3805 struct device dev ;
3806 u32 num_resources ;
3807 struct resource *resource ;
3808 struct platform_device_id const *id_entry ;
3809 struct mfd_cell *mfd_cell ;
3810 struct pdev_archdata archdata ;
3811};
3812#line 164 "include/linux/platform_device.h"
3813struct platform_driver {
3814 int (*probe)(struct platform_device * ) ;
3815 int (*remove)(struct platform_device * ) ;
3816 void (*shutdown)(struct platform_device * ) ;
3817 int (*suspend)(struct platform_device * , pm_message_t state ) ;
3818 int (*resume)(struct platform_device * ) ;
3819 struct device_driver driver ;
3820 struct platform_device_id const *id_table ;
3821};
3822#line 28 "include/linux/of.h"
3823typedef u32 phandle;
3824#line 31 "include/linux/of.h"
3825struct property {
3826 char *name ;
3827 int length ;
3828 void *value ;
3829 struct property *next ;
3830 unsigned long _flags ;
3831 unsigned int unique_id ;
3832};
3833#line 44 "include/linux/of.h"
3834struct device_node {
3835 char const *name ;
3836 char const *type ;
3837 phandle phandle ;
3838 char *full_name ;
3839 struct property *properties ;
3840 struct property *deadprops ;
3841 struct device_node *parent ;
3842 struct device_node *child ;
3843 struct device_node *sibling ;
3844 struct device_node *next ;
3845 struct device_node *allnext ;
3846 struct proc_dir_entry *pde ;
3847 struct kref kref ;
3848 unsigned long _flags ;
3849 void *data ;
3850};
3851#line 25 "include/linux/io.h"
3852struct device;
3853#line 8 "include/linux/altera_uart.h"
3854struct altera_uart_platform_uart {
3855 unsigned long mapbase ;
3856 unsigned int irq ;
3857 unsigned int uartclk ;
3858 unsigned int bus_shift ;
3859};
3860#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
3861struct altera_uart {
3862 struct uart_port port ;
3863 struct timer_list tmr ;
3864 unsigned int sigs ;
3865 unsigned short imr ;
3866};
3867#line 1 "<compiler builtins>"
3868long __builtin_expect(long val , long res ) ;
3869#line 100 "include/linux/printk.h"
3870extern int ( printk)(char const *fmt , ...) ;
3871#line 651 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
3872__inline static void rep_nop(void) __attribute__((__no_instrument_function__)) ;
3873#line 651 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
3874__inline static void rep_nop(void)
3875{
3876
3877 {
3878#line 653
3879 __asm__ volatile ("rep; nop": : : "memory");
3880#line 654
3881 return;
3882}
3883}
3884#line 656
3885__inline static void cpu_relax(void) __attribute__((__no_instrument_function__)) ;
3886#line 656 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
3887__inline static void cpu_relax(void)
3888{
3889
3890 {
3891 {
3892#line 658
3893 rep_nop();
3894 }
3895#line 659
3896 return;
3897}
3898}
3899#line 22 "include/linux/spinlock_api_smp.h"
3900extern void _raw_spin_lock(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
3901#line 32
3902extern unsigned long _raw_spin_lock_irqsave(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
3903#line 39
3904extern void _raw_spin_unlock(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
3905#line 42
3906extern void _raw_spin_unlock_irqrestore(raw_spinlock_t *lock , unsigned long flags ) __attribute__((__section__(".spinlock.text"))) ;
3907#line 272 "include/linux/spinlock.h"
3908__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
3909#line 272 "include/linux/spinlock.h"
3910__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
3911{
3912
3913 {
3914#line 274
3915 return ((struct raw_spinlock *)lock);
3916}
3917}
3918#line 283
3919__inline static void spin_lock(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
3920#line 283 "include/linux/spinlock.h"
3921__inline static void spin_lock(spinlock_t *lock )
3922{ struct raw_spinlock *__cil_tmp2 ;
3923
3924 {
3925 {
3926#line 285
3927 __cil_tmp2 = (struct raw_spinlock *)lock;
3928#line 285
3929 _raw_spin_lock(__cil_tmp2);
3930 }
3931#line 286
3932 return;
3933}
3934}
3935#line 323
3936__inline static void spin_unlock(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
3937#line 323 "include/linux/spinlock.h"
3938__inline static void spin_unlock(spinlock_t *lock )
3939{ struct raw_spinlock *__cil_tmp2 ;
3940
3941 {
3942 {
3943#line 325
3944 __cil_tmp2 = (struct raw_spinlock *)lock;
3945#line 325
3946 _raw_spin_unlock(__cil_tmp2);
3947 }
3948#line 326
3949 return;
3950}
3951}
3952#line 338
3953__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) __attribute__((__no_instrument_function__)) ;
3954#line 338 "include/linux/spinlock.h"
3955__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags )
3956{ struct raw_spinlock *__cil_tmp5 ;
3957
3958 {
3959 {
3960#line 340
3961 while (1) {
3962 while_continue: ;
3963 {
3964#line 340
3965 __cil_tmp5 = (struct raw_spinlock *)lock;
3966#line 340
3967 _raw_spin_unlock_irqrestore(__cil_tmp5, flags);
3968 }
3969#line 340
3970 goto while_break;
3971 }
3972 while_break: ;
3973 }
3974#line 341
3975 return;
3976}
3977}
3978#line 82 "include/linux/jiffies.h"
3979extern unsigned long volatile jiffies __attribute__((__section__(".data"))) ;
3980#line 91 "include/linux/timer.h"
3981extern void init_timer_key(struct timer_list *timer , char const *name , struct lock_class_key *key ) ;
3982#line 166
3983__inline static void setup_timer_key(struct timer_list *timer , char const *name ,
3984 struct lock_class_key *key , void (*function)(unsigned long ) ,
3985 unsigned long data ) __attribute__((__no_instrument_function__)) ;
3986#line 166 "include/linux/timer.h"
3987__inline static void setup_timer_key(struct timer_list *timer , char const *name ,
3988 struct lock_class_key *key , void (*function)(unsigned long ) ,
3989 unsigned long data )
3990{ unsigned long __cil_tmp6 ;
3991 unsigned long __cil_tmp7 ;
3992 unsigned long __cil_tmp8 ;
3993 unsigned long __cil_tmp9 ;
3994
3995 {
3996 {
3997#line 172
3998 __cil_tmp6 = (unsigned long )timer;
3999#line 172
4000 __cil_tmp7 = __cil_tmp6 + 32;
4001#line 172
4002 *((void (**)(unsigned long ))__cil_tmp7) = function;
4003#line 173
4004 __cil_tmp8 = (unsigned long )timer;
4005#line 173
4006 __cil_tmp9 = __cil_tmp8 + 40;
4007#line 173
4008 *((unsigned long *)__cil_tmp9) = data;
4009#line 174
4010 init_timer_key(timer, name, key);
4011 }
4012#line 175
4013 return;
4014}
4015}
4016#line 211
4017extern int mod_timer(struct timer_list *timer , unsigned long expires ) ;
4018#line 280
4019extern int del_timer_sync(struct timer_list *timer ) ;
4020#line 152 "include/linux/mutex.h"
4021void mutex_lock(struct mutex *lock ) ;
4022#line 153
4023int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock ) ;
4024#line 154
4025int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock ) ;
4026#line 168
4027int mutex_trylock(struct mutex *lock ) ;
4028#line 169
4029void mutex_unlock(struct mutex *lock ) ;
4030#line 170
4031int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
4032#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
4033__inline static unsigned int readl(void const volatile *addr ) __attribute__((__no_instrument_function__)) ;
4034#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
4035__inline static unsigned int readl(void const volatile *addr )
4036{ unsigned int ret ;
4037 unsigned int volatile *__cil_tmp3 ;
4038
4039 {
4040#line 55
4041 __cil_tmp3 = (unsigned int volatile *)addr;
4042#line 55
4043 __asm__ volatile ("mov"
4044 "l"
4045 " %1,%0": "=r" (ret): "m" (*__cil_tmp3): "memory");
4046#line 55
4047 return (ret);
4048}
4049}
4050#line 63
4051__inline static void writel(unsigned int val , void volatile *addr ) __attribute__((__no_instrument_function__)) ;
4052#line 63 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
4053__inline static void writel(unsigned int val , void volatile *addr )
4054{ unsigned int volatile *__cil_tmp3 ;
4055
4056 {
4057#line 63
4058 __cil_tmp3 = (unsigned int volatile *)addr;
4059#line 63
4060 __asm__ volatile ("mov"
4061 "l"
4062 " %0,%1": : "r" (val), "m" (*__cil_tmp3): "memory");
4063#line 63
4064 return;
4065}
4066}
4067#line 174
4068extern void *ioremap_nocache(resource_size_t offset , unsigned long size ) ;
4069#line 182
4070__inline static void *ioremap(resource_size_t offset , unsigned long size ) __attribute__((__no_instrument_function__)) ;
4071#line 182 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
4072__inline static void *ioremap(resource_size_t offset , unsigned long size )
4073{ void *tmp ;
4074
4075 {
4076 {
4077#line 184
4078 tmp = ioremap_nocache(offset, size);
4079 }
4080#line 184
4081 return (tmp);
4082}
4083}
4084#line 126 "include/linux/interrupt.h"
4085extern int __attribute__((__warn_unused_result__)) request_threaded_irq(unsigned int irq ,
4086 irqreturn_t (*handler)(int ,
4087 void * ) ,
4088 irqreturn_t (*thread_fn)(int ,
4089 void * ) ,
4090 unsigned long flags ,
4091 char const *name ,
4092 void *dev ) ;
4093#line 131
4094__inline static int __attribute__((__warn_unused_result__)) request_irq(unsigned int irq ,
4095 irqreturn_t (*handler)(int ,
4096 void * ) ,
4097 unsigned long flags ,
4098 char const *name ,
4099 void *dev ) __attribute__((__no_instrument_function__)) ;
4100#line 131 "include/linux/interrupt.h"
4101__inline static int __attribute__((__warn_unused_result__)) request_irq(unsigned int irq ,
4102 irqreturn_t (*handler)(int ,
4103 void * ) ,
4104 unsigned long flags ,
4105 char const *name ,
4106 void *dev )
4107{ int tmp ;
4108 void *__cil_tmp7 ;
4109 irqreturn_t (*__cil_tmp8)(int , void * ) ;
4110
4111 {
4112 {
4113#line 135
4114 __cil_tmp7 = (void *)0;
4115#line 135
4116 __cil_tmp8 = (irqreturn_t (*)(int , void * ))__cil_tmp7;
4117#line 135
4118 tmp = (int )request_threaded_irq(irq, handler, __cil_tmp8, flags, name, dev);
4119 }
4120#line 135
4121 return (tmp);
4122}
4123}
4124#line 184
4125extern void free_irq(unsigned int , void * ) ;
4126#line 26 "include/linux/export.h"
4127extern struct module __this_module ;
4128#line 67 "include/linux/module.h"
4129int init_module(void) ;
4130#line 68
4131void cleanup_module(void) ;
4132#line 792 "include/linux/device.h"
4133extern void *dev_get_drvdata(struct device const *dev ) ;
4134#line 793
4135extern int dev_set_drvdata(struct device *dev , void *data ) ;
4136#line 438 "include/linux/tty.h"
4137extern void do_SAK(struct tty_struct *tty ) ;
4138#line 442
4139extern void tty_flip_buffer_push(struct tty_struct *tty ) ;
4140#line 450
4141extern void tty_termios_encode_baud_rate(struct ktermios *termios , speed_t ibaud ,
4142 speed_t obaud ) ;
4143#line 454
4144extern void tty_termios_copy_hw(struct ktermios *new , struct ktermios *old ) ;
4145#line 434 "include/linux/serial_core.h"
4146extern void uart_write_wakeup(struct uart_port *port ) ;
4147#line 439
4148extern void uart_update_timeout(struct uart_port *port , unsigned int cflag , unsigned int baud ) ;
4149#line 441
4150extern unsigned int uart_get_baud_rate(struct uart_port *port , struct ktermios *termios ,
4151 struct ktermios *old , unsigned int min , unsigned int max ) ;
4152#line 447
4153__inline static int uart_poll_timeout(struct uart_port *port ) __attribute__((__no_instrument_function__)) ;
4154#line 447 "include/linux/serial_core.h"
4155__inline static int uart_poll_timeout(struct uart_port *port )
4156{ int timeout ;
4157 int tmp___7 ;
4158 unsigned long __cil_tmp4 ;
4159 unsigned long __cil_tmp5 ;
4160 unsigned int __cil_tmp6 ;
4161 int __cil_tmp7 ;
4162
4163 {
4164#line 449
4165 __cil_tmp4 = (unsigned long )port;
4166#line 449
4167 __cil_tmp5 = __cil_tmp4 + 200;
4168#line 449
4169 __cil_tmp6 = *((unsigned int *)__cil_tmp5);
4170#line 449
4171 timeout = (int )__cil_tmp6;
4172#line 451
4173 if (timeout > 6) {
4174#line 451
4175 __cil_tmp7 = timeout / 2;
4176#line 451
4177 tmp___7 = __cil_tmp7 - 2;
4178 } else {
4179#line 451
4180 tmp___7 = 1;
4181 }
4182#line 451
4183 return (tmp___7);
4184}
4185}
4186#line 471
4187extern int uart_register_driver(struct uart_driver *uart ) ;
4188#line 472
4189extern void uart_unregister_driver(struct uart_driver *uart ) ;
4190#line 473
4191extern int uart_add_one_port(struct uart_driver *reg , struct uart_port *port ) ;
4192#line 474
4193extern int uart_remove_one_port(struct uart_driver *reg , struct uart_port *port ) ;
4194#line 509
4195extern void uart_insert_char(struct uart_port *port , unsigned int status , unsigned int overrun ,
4196 unsigned int ch , unsigned int flag ) ;
4197#line 533
4198__inline static int uart_handle_break(struct uart_port *port ) __attribute__((__no_instrument_function__)) ;
4199#line 533 "include/linux/serial_core.h"
4200__inline static int uart_handle_break(struct uart_port *port )
4201{ struct uart_state *state ;
4202 unsigned long __cil_tmp3 ;
4203 unsigned long __cil_tmp4 ;
4204 int __cil_tmp5 ;
4205 upf_t __cil_tmp6 ;
4206 unsigned long __cil_tmp7 ;
4207 unsigned long __cil_tmp8 ;
4208 upf_t __cil_tmp9 ;
4209 struct tty_struct *__cil_tmp10 ;
4210
4211 {
4212#line 535
4213 __cil_tmp3 = (unsigned long )port;
4214#line 535
4215 __cil_tmp4 = __cil_tmp3 + 120;
4216#line 535
4217 state = *((struct uart_state **)__cil_tmp4);
4218 {
4219#line 545
4220 __cil_tmp5 = 1 << 2;
4221#line 545
4222 __cil_tmp6 = (upf_t )__cil_tmp5;
4223#line 545
4224 __cil_tmp7 = (unsigned long )port;
4225#line 545
4226 __cil_tmp8 = __cil_tmp7 + 192;
4227#line 545
4228 __cil_tmp9 = *((upf_t *)__cil_tmp8);
4229#line 545
4230 if (__cil_tmp9 & __cil_tmp6) {
4231 {
4232#line 546
4233 __cil_tmp10 = *((struct tty_struct **)state);
4234#line 546
4235 do_SAK(__cil_tmp10);
4236 }
4237 } else {
4238
4239 }
4240 }
4241#line 547
4242 return (0);
4243}
4244}
4245#line 46 "include/linux/platform_device.h"
4246extern struct resource *platform_get_resource(struct platform_device * , unsigned int ,
4247 unsigned int ) ;
4248#line 174
4249extern int platform_driver_register(struct platform_driver * ) ;
4250#line 175
4251extern void platform_driver_unregister(struct platform_driver * ) ;
4252#line 89 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4253static u32 altera_uart_readl(struct uart_port *port , int reg )
4254{ unsigned int tmp___7 ;
4255 unsigned long __cil_tmp4 ;
4256 unsigned long __cil_tmp5 ;
4257 unsigned char __cil_tmp6 ;
4258 int __cil_tmp7 ;
4259 int __cil_tmp8 ;
4260 unsigned long __cil_tmp9 ;
4261 unsigned long __cil_tmp10 ;
4262 unsigned char *__cil_tmp11 ;
4263 unsigned char *__cil_tmp12 ;
4264 void const volatile *__cil_tmp13 ;
4265
4266 {
4267 {
4268#line 91
4269 __cil_tmp4 = (unsigned long )port;
4270#line 91
4271 __cil_tmp5 = __cil_tmp4 + 105;
4272#line 91
4273 __cil_tmp6 = *((unsigned char *)__cil_tmp5);
4274#line 91
4275 __cil_tmp7 = (int )__cil_tmp6;
4276#line 91
4277 __cil_tmp8 = reg << __cil_tmp7;
4278#line 91
4279 __cil_tmp9 = (unsigned long )port;
4280#line 91
4281 __cil_tmp10 = __cil_tmp9 + 32;
4282#line 91
4283 __cil_tmp11 = *((unsigned char **)__cil_tmp10);
4284#line 91
4285 __cil_tmp12 = __cil_tmp11 + __cil_tmp8;
4286#line 91
4287 __cil_tmp13 = (void const volatile *)__cil_tmp12;
4288#line 91
4289 tmp___7 = readl(__cil_tmp13);
4290 }
4291#line 91
4292 return (tmp___7);
4293}
4294}
4295#line 94 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4296static void altera_uart_writel(struct uart_port *port , u32 dat , int reg )
4297{ unsigned long __cil_tmp4 ;
4298 unsigned long __cil_tmp5 ;
4299 unsigned char __cil_tmp6 ;
4300 int __cil_tmp7 ;
4301 int __cil_tmp8 ;
4302 unsigned long __cil_tmp9 ;
4303 unsigned long __cil_tmp10 ;
4304 unsigned char *__cil_tmp11 ;
4305 unsigned char *__cil_tmp12 ;
4306 void volatile *__cil_tmp13 ;
4307
4308 {
4309 {
4310#line 96
4311 __cil_tmp4 = (unsigned long )port;
4312#line 96
4313 __cil_tmp5 = __cil_tmp4 + 105;
4314#line 96
4315 __cil_tmp6 = *((unsigned char *)__cil_tmp5);
4316#line 96
4317 __cil_tmp7 = (int )__cil_tmp6;
4318#line 96
4319 __cil_tmp8 = reg << __cil_tmp7;
4320#line 96
4321 __cil_tmp9 = (unsigned long )port;
4322#line 96
4323 __cil_tmp10 = __cil_tmp9 + 32;
4324#line 96
4325 __cil_tmp11 = *((unsigned char **)__cil_tmp10);
4326#line 96
4327 __cil_tmp12 = __cil_tmp11 + __cil_tmp8;
4328#line 96
4329 __cil_tmp13 = (void volatile *)__cil_tmp12;
4330#line 96
4331 writel(dat, __cil_tmp13);
4332 }
4333#line 97
4334 return;
4335}
4336}
4337#line 99 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4338static unsigned int altera_uart_tx_empty(struct uart_port *port )
4339{ int tmp___8 ;
4340 u32 tmp___9 ;
4341
4342 {
4343 {
4344#line 101
4345 tmp___9 = altera_uart_readl(port, 8);
4346 }
4347#line 101
4348 if (tmp___9 & 32U) {
4349#line 101
4350 tmp___8 = 1;
4351 } else {
4352#line 101
4353 tmp___8 = 0;
4354 }
4355#line 101
4356 return ((unsigned int )tmp___8);
4357}
4358}
4359#line 105 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4360static unsigned int altera_uart_get_mctrl(struct uart_port *port )
4361{ struct altera_uart *pp ;
4362 struct uart_port const *__mptr ;
4363 unsigned int sigs ;
4364 u32 tmp___8 ;
4365 struct altera_uart *__cil_tmp7 ;
4366 struct uart_port *__cil_tmp8 ;
4367 unsigned int __cil_tmp9 ;
4368 char *__cil_tmp10 ;
4369 char *__cil_tmp11 ;
4370 unsigned long __cil_tmp12 ;
4371 unsigned long __cil_tmp13 ;
4372 unsigned int __cil_tmp14 ;
4373 unsigned int __cil_tmp15 ;
4374
4375 {
4376 {
4377#line 107
4378 __mptr = (struct uart_port const *)port;
4379#line 107
4380 __cil_tmp7 = (struct altera_uart *)0;
4381#line 107
4382 __cil_tmp8 = (struct uart_port *)__cil_tmp7;
4383#line 107
4384 __cil_tmp9 = (unsigned int )__cil_tmp8;
4385#line 107
4386 __cil_tmp10 = (char *)__mptr;
4387#line 107
4388 __cil_tmp11 = __cil_tmp10 - __cil_tmp9;
4389#line 107
4390 pp = (struct altera_uart *)__cil_tmp11;
4391#line 110
4392 tmp___8 = altera_uart_readl(port, 8);
4393 }
4394#line 110
4395 if (tmp___8 & 2048U) {
4396#line 110
4397 sigs = 32U;
4398 } else {
4399#line 110
4400 sigs = 0U;
4401 }
4402#line 112
4403 __cil_tmp12 = (unsigned long )pp;
4404#line 112
4405 __cil_tmp13 = __cil_tmp12 + 336;
4406#line 112
4407 __cil_tmp14 = *((unsigned int *)__cil_tmp13);
4408#line 112
4409 __cil_tmp15 = __cil_tmp14 & 4U;
4410#line 112
4411 sigs = sigs | __cil_tmp15;
4412#line 114
4413 return (sigs);
4414}
4415}
4416#line 117 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4417static void altera_uart_set_mctrl(struct uart_port *port , unsigned int sigs )
4418{ struct altera_uart *pp ;
4419 struct uart_port const *__mptr ;
4420 struct altera_uart *__cil_tmp5 ;
4421 struct uart_port *__cil_tmp6 ;
4422 unsigned int __cil_tmp7 ;
4423 char *__cil_tmp8 ;
4424 char *__cil_tmp9 ;
4425 unsigned long __cil_tmp10 ;
4426 unsigned long __cil_tmp11 ;
4427 unsigned long __cil_tmp12 ;
4428 unsigned long __cil_tmp13 ;
4429 unsigned long __cil_tmp14 ;
4430 unsigned long __cil_tmp15 ;
4431 unsigned short __cil_tmp16 ;
4432 int __cil_tmp17 ;
4433 int __cil_tmp18 ;
4434 unsigned long __cil_tmp19 ;
4435 unsigned long __cil_tmp20 ;
4436 unsigned long __cil_tmp21 ;
4437 unsigned long __cil_tmp22 ;
4438 unsigned short __cil_tmp23 ;
4439 int __cil_tmp24 ;
4440 int __cil_tmp25 ;
4441 unsigned long __cil_tmp26 ;
4442 unsigned long __cil_tmp27 ;
4443 unsigned short __cil_tmp28 ;
4444 u32 __cil_tmp29 ;
4445
4446 {
4447#line 119
4448 __mptr = (struct uart_port const *)port;
4449#line 119
4450 __cil_tmp5 = (struct altera_uart *)0;
4451#line 119
4452 __cil_tmp6 = (struct uart_port *)__cil_tmp5;
4453#line 119
4454 __cil_tmp7 = (unsigned int )__cil_tmp6;
4455#line 119
4456 __cil_tmp8 = (char *)__mptr;
4457#line 119
4458 __cil_tmp9 = __cil_tmp8 - __cil_tmp7;
4459#line 119
4460 pp = (struct altera_uart *)__cil_tmp9;
4461#line 121
4462 __cil_tmp10 = (unsigned long )pp;
4463#line 121
4464 __cil_tmp11 = __cil_tmp10 + 336;
4465#line 121
4466 *((unsigned int *)__cil_tmp11) = sigs;
4467#line 122
4468 if (sigs & 4U) {
4469#line 123
4470 __cil_tmp12 = (unsigned long )pp;
4471#line 123
4472 __cil_tmp13 = __cil_tmp12 + 340;
4473#line 123
4474 __cil_tmp14 = (unsigned long )pp;
4475#line 123
4476 __cil_tmp15 = __cil_tmp14 + 340;
4477#line 123
4478 __cil_tmp16 = *((unsigned short *)__cil_tmp15);
4479#line 123
4480 __cil_tmp17 = (int )__cil_tmp16;
4481#line 123
4482 __cil_tmp18 = __cil_tmp17 | 2048;
4483#line 123
4484 *((unsigned short *)__cil_tmp13) = (unsigned short )__cil_tmp18;
4485 } else {
4486#line 125
4487 __cil_tmp19 = (unsigned long )pp;
4488#line 125
4489 __cil_tmp20 = __cil_tmp19 + 340;
4490#line 125
4491 __cil_tmp21 = (unsigned long )pp;
4492#line 125
4493 __cil_tmp22 = __cil_tmp21 + 340;
4494#line 125
4495 __cil_tmp23 = *((unsigned short *)__cil_tmp22);
4496#line 125
4497 __cil_tmp24 = (int )__cil_tmp23;
4498#line 125
4499 __cil_tmp25 = __cil_tmp24 & -2049;
4500#line 125
4501 *((unsigned short *)__cil_tmp20) = (unsigned short )__cil_tmp25;
4502 }
4503 {
4504#line 126
4505 __cil_tmp26 = (unsigned long )pp;
4506#line 126
4507 __cil_tmp27 = __cil_tmp26 + 340;
4508#line 126
4509 __cil_tmp28 = *((unsigned short *)__cil_tmp27);
4510#line 126
4511 __cil_tmp29 = (u32 )__cil_tmp28;
4512#line 126
4513 altera_uart_writel(port, __cil_tmp29, 12);
4514 }
4515#line 127
4516 return;
4517}
4518}
4519#line 129 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4520static void altera_uart_start_tx(struct uart_port *port )
4521{ struct altera_uart *pp ;
4522 struct uart_port const *__mptr ;
4523 struct altera_uart *__cil_tmp4 ;
4524 struct uart_port *__cil_tmp5 ;
4525 unsigned int __cil_tmp6 ;
4526 char *__cil_tmp7 ;
4527 char *__cil_tmp8 ;
4528 unsigned long __cil_tmp9 ;
4529 unsigned long __cil_tmp10 ;
4530 unsigned long __cil_tmp11 ;
4531 unsigned long __cil_tmp12 ;
4532 unsigned short __cil_tmp13 ;
4533 int __cil_tmp14 ;
4534 int __cil_tmp15 ;
4535 unsigned long __cil_tmp16 ;
4536 unsigned long __cil_tmp17 ;
4537 unsigned short __cil_tmp18 ;
4538 u32 __cil_tmp19 ;
4539
4540 {
4541 {
4542#line 131
4543 __mptr = (struct uart_port const *)port;
4544#line 131
4545 __cil_tmp4 = (struct altera_uart *)0;
4546#line 131
4547 __cil_tmp5 = (struct uart_port *)__cil_tmp4;
4548#line 131
4549 __cil_tmp6 = (unsigned int )__cil_tmp5;
4550#line 131
4551 __cil_tmp7 = (char *)__mptr;
4552#line 131
4553 __cil_tmp8 = __cil_tmp7 - __cil_tmp6;
4554#line 131
4555 pp = (struct altera_uart *)__cil_tmp8;
4556#line 133
4557 __cil_tmp9 = (unsigned long )pp;
4558#line 133
4559 __cil_tmp10 = __cil_tmp9 + 340;
4560#line 133
4561 __cil_tmp11 = (unsigned long )pp;
4562#line 133
4563 __cil_tmp12 = __cil_tmp11 + 340;
4564#line 133
4565 __cil_tmp13 = *((unsigned short *)__cil_tmp12);
4566#line 133
4567 __cil_tmp14 = (int )__cil_tmp13;
4568#line 133
4569 __cil_tmp15 = __cil_tmp14 | 64;
4570#line 133
4571 *((unsigned short *)__cil_tmp10) = (unsigned short )__cil_tmp15;
4572#line 134
4573 __cil_tmp16 = (unsigned long )pp;
4574#line 134
4575 __cil_tmp17 = __cil_tmp16 + 340;
4576#line 134
4577 __cil_tmp18 = *((unsigned short *)__cil_tmp17);
4578#line 134
4579 __cil_tmp19 = (u32 )__cil_tmp18;
4580#line 134
4581 altera_uart_writel(port, __cil_tmp19, 12);
4582 }
4583#line 135
4584 return;
4585}
4586}
4587#line 137 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4588static void altera_uart_stop_tx(struct uart_port *port )
4589{ struct altera_uart *pp ;
4590 struct uart_port const *__mptr ;
4591 struct altera_uart *__cil_tmp4 ;
4592 struct uart_port *__cil_tmp5 ;
4593 unsigned int __cil_tmp6 ;
4594 char *__cil_tmp7 ;
4595 char *__cil_tmp8 ;
4596 unsigned long __cil_tmp9 ;
4597 unsigned long __cil_tmp10 ;
4598 unsigned long __cil_tmp11 ;
4599 unsigned long __cil_tmp12 ;
4600 unsigned short __cil_tmp13 ;
4601 int __cil_tmp14 ;
4602 int __cil_tmp15 ;
4603 unsigned long __cil_tmp16 ;
4604 unsigned long __cil_tmp17 ;
4605 unsigned short __cil_tmp18 ;
4606 u32 __cil_tmp19 ;
4607
4608 {
4609 {
4610#line 139
4611 __mptr = (struct uart_port const *)port;
4612#line 139
4613 __cil_tmp4 = (struct altera_uart *)0;
4614#line 139
4615 __cil_tmp5 = (struct uart_port *)__cil_tmp4;
4616#line 139
4617 __cil_tmp6 = (unsigned int )__cil_tmp5;
4618#line 139
4619 __cil_tmp7 = (char *)__mptr;
4620#line 139
4621 __cil_tmp8 = __cil_tmp7 - __cil_tmp6;
4622#line 139
4623 pp = (struct altera_uart *)__cil_tmp8;
4624#line 141
4625 __cil_tmp9 = (unsigned long )pp;
4626#line 141
4627 __cil_tmp10 = __cil_tmp9 + 340;
4628#line 141
4629 __cil_tmp11 = (unsigned long )pp;
4630#line 141
4631 __cil_tmp12 = __cil_tmp11 + 340;
4632#line 141
4633 __cil_tmp13 = *((unsigned short *)__cil_tmp12);
4634#line 141
4635 __cil_tmp14 = (int )__cil_tmp13;
4636#line 141
4637 __cil_tmp15 = __cil_tmp14 & -65;
4638#line 141
4639 *((unsigned short *)__cil_tmp10) = (unsigned short )__cil_tmp15;
4640#line 142
4641 __cil_tmp16 = (unsigned long )pp;
4642#line 142
4643 __cil_tmp17 = __cil_tmp16 + 340;
4644#line 142
4645 __cil_tmp18 = *((unsigned short *)__cil_tmp17);
4646#line 142
4647 __cil_tmp19 = (u32 )__cil_tmp18;
4648#line 142
4649 altera_uart_writel(port, __cil_tmp19, 12);
4650 }
4651#line 143
4652 return;
4653}
4654}
4655#line 145 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4656static void altera_uart_stop_rx(struct uart_port *port )
4657{ struct altera_uart *pp ;
4658 struct uart_port const *__mptr ;
4659 struct altera_uart *__cil_tmp4 ;
4660 struct uart_port *__cil_tmp5 ;
4661 unsigned int __cil_tmp6 ;
4662 char *__cil_tmp7 ;
4663 char *__cil_tmp8 ;
4664 unsigned long __cil_tmp9 ;
4665 unsigned long __cil_tmp10 ;
4666 unsigned long __cil_tmp11 ;
4667 unsigned long __cil_tmp12 ;
4668 unsigned short __cil_tmp13 ;
4669 int __cil_tmp14 ;
4670 int __cil_tmp15 ;
4671 unsigned long __cil_tmp16 ;
4672 unsigned long __cil_tmp17 ;
4673 unsigned short __cil_tmp18 ;
4674 u32 __cil_tmp19 ;
4675
4676 {
4677 {
4678#line 147
4679 __mptr = (struct uart_port const *)port;
4680#line 147
4681 __cil_tmp4 = (struct altera_uart *)0;
4682#line 147
4683 __cil_tmp5 = (struct uart_port *)__cil_tmp4;
4684#line 147
4685 __cil_tmp6 = (unsigned int )__cil_tmp5;
4686#line 147
4687 __cil_tmp7 = (char *)__mptr;
4688#line 147
4689 __cil_tmp8 = __cil_tmp7 - __cil_tmp6;
4690#line 147
4691 pp = (struct altera_uart *)__cil_tmp8;
4692#line 149
4693 __cil_tmp9 = (unsigned long )pp;
4694#line 149
4695 __cil_tmp10 = __cil_tmp9 + 340;
4696#line 149
4697 __cil_tmp11 = (unsigned long )pp;
4698#line 149
4699 __cil_tmp12 = __cil_tmp11 + 340;
4700#line 149
4701 __cil_tmp13 = *((unsigned short *)__cil_tmp12);
4702#line 149
4703 __cil_tmp14 = (int )__cil_tmp13;
4704#line 149
4705 __cil_tmp15 = __cil_tmp14 & -129;
4706#line 149
4707 *((unsigned short *)__cil_tmp10) = (unsigned short )__cil_tmp15;
4708#line 150
4709 __cil_tmp16 = (unsigned long )pp;
4710#line 150
4711 __cil_tmp17 = __cil_tmp16 + 340;
4712#line 150
4713 __cil_tmp18 = *((unsigned short *)__cil_tmp17);
4714#line 150
4715 __cil_tmp19 = (u32 )__cil_tmp18;
4716#line 150
4717 altera_uart_writel(port, __cil_tmp19, 12);
4718 }
4719#line 151
4720 return;
4721}
4722}
4723#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4724static void altera_uart_break_ctl(struct uart_port *port , int break_state )
4725{ struct altera_uart *pp ;
4726 struct uart_port const *__mptr ;
4727 unsigned long flags ;
4728 raw_spinlock_t *tmp___7 ;
4729 struct altera_uart *__cil_tmp9 ;
4730 struct uart_port *__cil_tmp10 ;
4731 unsigned int __cil_tmp11 ;
4732 char *__cil_tmp12 ;
4733 char *__cil_tmp13 ;
4734 spinlock_t *__cil_tmp14 ;
4735 unsigned long __cil_tmp15 ;
4736 unsigned long __cil_tmp16 ;
4737 unsigned long __cil_tmp17 ;
4738 unsigned long __cil_tmp18 ;
4739 unsigned short __cil_tmp19 ;
4740 int __cil_tmp20 ;
4741 int __cil_tmp21 ;
4742 unsigned long __cil_tmp22 ;
4743 unsigned long __cil_tmp23 ;
4744 unsigned long __cil_tmp24 ;
4745 unsigned long __cil_tmp25 ;
4746 unsigned short __cil_tmp26 ;
4747 int __cil_tmp27 ;
4748 int __cil_tmp28 ;
4749 unsigned long __cil_tmp29 ;
4750 unsigned long __cil_tmp30 ;
4751 unsigned short __cil_tmp31 ;
4752 u32 __cil_tmp32 ;
4753 spinlock_t *__cil_tmp33 ;
4754
4755 {
4756#line 155
4757 __mptr = (struct uart_port const *)port;
4758#line 155
4759 __cil_tmp9 = (struct altera_uart *)0;
4760#line 155
4761 __cil_tmp10 = (struct uart_port *)__cil_tmp9;
4762#line 155
4763 __cil_tmp11 = (unsigned int )__cil_tmp10;
4764#line 155
4765 __cil_tmp12 = (char *)__mptr;
4766#line 155
4767 __cil_tmp13 = __cil_tmp12 - __cil_tmp11;
4768#line 155
4769 pp = (struct altera_uart *)__cil_tmp13;
4770 {
4771#line 158
4772 while (1) {
4773 while_continue: ;
4774 {
4775#line 158
4776 while (1) {
4777 while_continue___0: ;
4778 {
4779#line 158
4780 __cil_tmp14 = (spinlock_t *)port;
4781#line 158
4782 tmp___7 = spinlock_check(__cil_tmp14);
4783#line 158
4784 flags = _raw_spin_lock_irqsave(tmp___7);
4785 }
4786#line 158
4787 goto while_break___0;
4788 }
4789 while_break___0: ;
4790 }
4791#line 158
4792 goto while_break;
4793 }
4794 while_break: ;
4795 }
4796#line 159
4797 if (break_state == -1) {
4798#line 160
4799 __cil_tmp15 = (unsigned long )pp;
4800#line 160
4801 __cil_tmp16 = __cil_tmp15 + 340;
4802#line 160
4803 __cil_tmp17 = (unsigned long )pp;
4804#line 160
4805 __cil_tmp18 = __cil_tmp17 + 340;
4806#line 160
4807 __cil_tmp19 = *((unsigned short *)__cil_tmp18);
4808#line 160
4809 __cil_tmp20 = (int )__cil_tmp19;
4810#line 160
4811 __cil_tmp21 = __cil_tmp20 | 512;
4812#line 160
4813 *((unsigned short *)__cil_tmp16) = (unsigned short )__cil_tmp21;
4814 } else {
4815#line 162
4816 __cil_tmp22 = (unsigned long )pp;
4817#line 162
4818 __cil_tmp23 = __cil_tmp22 + 340;
4819#line 162
4820 __cil_tmp24 = (unsigned long )pp;
4821#line 162
4822 __cil_tmp25 = __cil_tmp24 + 340;
4823#line 162
4824 __cil_tmp26 = *((unsigned short *)__cil_tmp25);
4825#line 162
4826 __cil_tmp27 = (int )__cil_tmp26;
4827#line 162
4828 __cil_tmp28 = __cil_tmp27 & -513;
4829#line 162
4830 *((unsigned short *)__cil_tmp23) = (unsigned short )__cil_tmp28;
4831 }
4832 {
4833#line 163
4834 __cil_tmp29 = (unsigned long )pp;
4835#line 163
4836 __cil_tmp30 = __cil_tmp29 + 340;
4837#line 163
4838 __cil_tmp31 = *((unsigned short *)__cil_tmp30);
4839#line 163
4840 __cil_tmp32 = (u32 )__cil_tmp31;
4841#line 163
4842 altera_uart_writel(port, __cil_tmp32, 12);
4843#line 164
4844 __cil_tmp33 = (spinlock_t *)port;
4845#line 164
4846 spin_unlock_irqrestore(__cil_tmp33, flags);
4847 }
4848#line 165
4849 return;
4850}
4851}
4852#line 167 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4853static void altera_uart_enable_ms(struct uart_port *port )
4854{
4855
4856 {
4857#line 169
4858 return;
4859}
4860}
4861#line 171 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4862static void altera_uart_set_termios(struct uart_port *port , struct ktermios *termios ,
4863 struct ktermios *old )
4864{ unsigned long flags ;
4865 unsigned int baud ;
4866 unsigned int baudclk ;
4867 raw_spinlock_t *tmp___7 ;
4868 unsigned long __cil_tmp10 ;
4869 unsigned long __cil_tmp11 ;
4870 unsigned int __cil_tmp12 ;
4871 spinlock_t *__cil_tmp13 ;
4872 unsigned long __cil_tmp14 ;
4873 unsigned long __cil_tmp15 ;
4874 tcflag_t __cil_tmp16 ;
4875 spinlock_t *__cil_tmp17 ;
4876
4877 {
4878 {
4879#line 178
4880 baud = uart_get_baud_rate(port, termios, old, 0U, 4000000U);
4881#line 179
4882 __cil_tmp10 = (unsigned long )port;
4883#line 179
4884 __cil_tmp11 = __cil_tmp10 + 96;
4885#line 179
4886 __cil_tmp12 = *((unsigned int *)__cil_tmp11);
4887#line 179
4888 baudclk = __cil_tmp12 / baud;
4889 }
4890#line 181
4891 if (old) {
4892 {
4893#line 182
4894 tty_termios_copy_hw(termios, old);
4895 }
4896 } else {
4897
4898 }
4899 {
4900#line 183
4901 tty_termios_encode_baud_rate(termios, baud, baud);
4902 }
4903 {
4904#line 185
4905 while (1) {
4906 while_continue: ;
4907 {
4908#line 185
4909 while (1) {
4910 while_continue___0: ;
4911 {
4912#line 185
4913 __cil_tmp13 = (spinlock_t *)port;
4914#line 185
4915 tmp___7 = spinlock_check(__cil_tmp13);
4916#line 185
4917 flags = _raw_spin_lock_irqsave(tmp___7);
4918 }
4919#line 185
4920 goto while_break___0;
4921 }
4922 while_break___0: ;
4923 }
4924#line 185
4925 goto while_break;
4926 }
4927 while_break: ;
4928 }
4929 {
4930#line 186
4931 __cil_tmp14 = (unsigned long )termios;
4932#line 186
4933 __cil_tmp15 = __cil_tmp14 + 8;
4934#line 186
4935 __cil_tmp16 = *((tcflag_t *)__cil_tmp15);
4936#line 186
4937 uart_update_timeout(port, __cil_tmp16, baud);
4938#line 187
4939 altera_uart_writel(port, baudclk, 16);
4940#line 188
4941 __cil_tmp17 = (spinlock_t *)port;
4942#line 188
4943 spin_unlock_irqrestore(__cil_tmp17, flags);
4944 }
4945#line 189
4946 return;
4947}
4948}
4949#line 191 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
4950static void altera_uart_rx_chars(struct altera_uart *pp )
4951{ struct uart_port *port ;
4952 unsigned char ch ;
4953 unsigned char flag ;
4954 unsigned short status ;
4955 u32 tmp___7 ;
4956 int tmp___8 ;
4957 u32 tmp___9 ;
4958 int __cil_tmp9 ;
4959 unsigned long __cil_tmp10 ;
4960 unsigned long __cil_tmp11 ;
4961 unsigned long __cil_tmp12 ;
4962 unsigned long __cil_tmp13 ;
4963 unsigned long __cil_tmp14 ;
4964 unsigned long __cil_tmp15 ;
4965 __u32 __cil_tmp16 ;
4966 int __cil_tmp17 ;
4967 u32 __cil_tmp18 ;
4968 int __cil_tmp19 ;
4969 unsigned long __cil_tmp20 ;
4970 unsigned long __cil_tmp21 ;
4971 unsigned long __cil_tmp22 ;
4972 unsigned long __cil_tmp23 ;
4973 unsigned long __cil_tmp24 ;
4974 unsigned long __cil_tmp25 ;
4975 __u32 __cil_tmp26 ;
4976 int __cil_tmp27 ;
4977 unsigned long __cil_tmp28 ;
4978 unsigned long __cil_tmp29 ;
4979 unsigned long __cil_tmp30 ;
4980 unsigned long __cil_tmp31 ;
4981 unsigned long __cil_tmp32 ;
4982 unsigned long __cil_tmp33 ;
4983 __u32 __cil_tmp34 ;
4984 int __cil_tmp35 ;
4985 unsigned long __cil_tmp36 ;
4986 unsigned long __cil_tmp37 ;
4987 unsigned long __cil_tmp38 ;
4988 unsigned long __cil_tmp39 ;
4989 unsigned long __cil_tmp40 ;
4990 unsigned long __cil_tmp41 ;
4991 __u32 __cil_tmp42 ;
4992 int __cil_tmp43 ;
4993 unsigned long __cil_tmp44 ;
4994 unsigned long __cil_tmp45 ;
4995 unsigned long __cil_tmp46 ;
4996 unsigned long __cil_tmp47 ;
4997 unsigned long __cil_tmp48 ;
4998 unsigned long __cil_tmp49 ;
4999 __u32 __cil_tmp50 ;
5000 unsigned long __cil_tmp51 ;
5001 unsigned long __cil_tmp52 ;
5002 unsigned int __cil_tmp53 ;
5003 unsigned int __cil_tmp54 ;
5004 unsigned int __cil_tmp55 ;
5005 int __cil_tmp56 ;
5006 int __cil_tmp57 ;
5007 int __cil_tmp58 ;
5008 unsigned int __cil_tmp59 ;
5009 unsigned int __cil_tmp60 ;
5010 unsigned int __cil_tmp61 ;
5011 unsigned long __cil_tmp62 ;
5012 unsigned long __cil_tmp63 ;
5013 struct uart_state *__cil_tmp64 ;
5014 struct tty_struct *__cil_tmp65 ;
5015
5016 {
5017#line 193
5018 port = (struct uart_port *)pp;
5019 {
5020#line 197
5021 while (1) {
5022 while_continue: ;
5023 {
5024#line 197
5025 tmp___9 = altera_uart_readl(port, 8);
5026#line 197
5027 status = (unsigned short )tmp___9;
5028 }
5029 {
5030#line 197
5031 __cil_tmp9 = (int )status;
5032#line 197
5033 if (__cil_tmp9 & 128) {
5034
5035 } else {
5036#line 197
5037 goto while_break;
5038 }
5039 }
5040 {
5041#line 199
5042 tmp___7 = altera_uart_readl(port, 0);
5043#line 199
5044 ch = (unsigned char )tmp___7;
5045#line 200
5046 flag = (unsigned char)0;
5047#line 201
5048 __cil_tmp10 = 128 + 16;
5049#line 201
5050 __cil_tmp11 = (unsigned long )port;
5051#line 201
5052 __cil_tmp12 = __cil_tmp11 + __cil_tmp10;
5053#line 201
5054 __cil_tmp13 = 128 + 16;
5055#line 201
5056 __cil_tmp14 = (unsigned long )port;
5057#line 201
5058 __cil_tmp15 = __cil_tmp14 + __cil_tmp13;
5059#line 201
5060 __cil_tmp16 = *((__u32 *)__cil_tmp15);
5061#line 201
5062 *((__u32 *)__cil_tmp12) = __cil_tmp16 + 1U;
5063 }
5064 {
5065#line 203
5066 __cil_tmp17 = (int )status;
5067#line 203
5068 if (__cil_tmp17 & 256) {
5069 {
5070#line 204
5071 __cil_tmp18 = (u32 )status;
5072#line 204
5073 altera_uart_writel(port, __cil_tmp18, 8);
5074 }
5075 {
5076#line 207
5077 __cil_tmp19 = (int )status;
5078#line 207
5079 if (__cil_tmp19 & 4) {
5080 {
5081#line 208
5082 __cil_tmp20 = 128 + 36;
5083#line 208
5084 __cil_tmp21 = (unsigned long )port;
5085#line 208
5086 __cil_tmp22 = __cil_tmp21 + __cil_tmp20;
5087#line 208
5088 __cil_tmp23 = 128 + 36;
5089#line 208
5090 __cil_tmp24 = (unsigned long )port;
5091#line 208
5092 __cil_tmp25 = __cil_tmp24 + __cil_tmp23;
5093#line 208
5094 __cil_tmp26 = *((__u32 *)__cil_tmp25);
5095#line 208
5096 *((__u32 *)__cil_tmp22) = __cil_tmp26 + 1U;
5097#line 209
5098 tmp___8 = uart_handle_break(port);
5099 }
5100#line 209
5101 if (tmp___8) {
5102#line 210
5103 goto while_continue;
5104 } else {
5105
5106 }
5107 } else {
5108 {
5109#line 211
5110 __cil_tmp27 = (int )status;
5111#line 211
5112 if (__cil_tmp27 & 1) {
5113#line 212
5114 __cil_tmp28 = 128 + 32;
5115#line 212
5116 __cil_tmp29 = (unsigned long )port;
5117#line 212
5118 __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
5119#line 212
5120 __cil_tmp31 = 128 + 32;
5121#line 212
5122 __cil_tmp32 = (unsigned long )port;
5123#line 212
5124 __cil_tmp33 = __cil_tmp32 + __cil_tmp31;
5125#line 212
5126 __cil_tmp34 = *((__u32 *)__cil_tmp33);
5127#line 212
5128 *((__u32 *)__cil_tmp30) = __cil_tmp34 + 1U;
5129 } else {
5130 {
5131#line 213
5132 __cil_tmp35 = (int )status;
5133#line 213
5134 if (__cil_tmp35 & 8) {
5135#line 214
5136 __cil_tmp36 = 128 + 28;
5137#line 214
5138 __cil_tmp37 = (unsigned long )port;
5139#line 214
5140 __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
5141#line 214
5142 __cil_tmp39 = 128 + 28;
5143#line 214
5144 __cil_tmp40 = (unsigned long )port;
5145#line 214
5146 __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
5147#line 214
5148 __cil_tmp42 = *((__u32 *)__cil_tmp41);
5149#line 214
5150 *((__u32 *)__cil_tmp38) = __cil_tmp42 + 1U;
5151 } else {
5152 {
5153#line 215
5154 __cil_tmp43 = (int )status;
5155#line 215
5156 if (__cil_tmp43 & 2) {
5157#line 216
5158 __cil_tmp44 = 128 + 24;
5159#line 216
5160 __cil_tmp45 = (unsigned long )port;
5161#line 216
5162 __cil_tmp46 = __cil_tmp45 + __cil_tmp44;
5163#line 216
5164 __cil_tmp47 = 128 + 24;
5165#line 216
5166 __cil_tmp48 = (unsigned long )port;
5167#line 216
5168 __cil_tmp49 = __cil_tmp48 + __cil_tmp47;
5169#line 216
5170 __cil_tmp50 = *((__u32 *)__cil_tmp49);
5171#line 216
5172 *((__u32 *)__cil_tmp46) = __cil_tmp50 + 1U;
5173 } else {
5174
5175 }
5176 }
5177 }
5178 }
5179 }
5180 }
5181 }
5182 }
5183#line 219
5184 __cil_tmp51 = (unsigned long )port;
5185#line 219
5186 __cil_tmp52 = __cil_tmp51 + 108;
5187#line 219
5188 __cil_tmp53 = *((unsigned int *)__cil_tmp52);
5189#line 219
5190 __cil_tmp54 = (unsigned int )status;
5191#line 219
5192 __cil_tmp55 = __cil_tmp54 & __cil_tmp53;
5193#line 219
5194 status = (unsigned short )__cil_tmp55;
5195 {
5196#line 221
5197 __cil_tmp56 = (int )status;
5198#line 221
5199 if (__cil_tmp56 & 4) {
5200#line 222
5201 flag = (unsigned char)1;
5202 } else {
5203 {
5204#line 223
5205 __cil_tmp57 = (int )status;
5206#line 223
5207 if (__cil_tmp57 & 1) {
5208#line 224
5209 flag = (unsigned char)3;
5210 } else {
5211 {
5212#line 225
5213 __cil_tmp58 = (int )status;
5214#line 225
5215 if (__cil_tmp58 & 2) {
5216#line 226
5217 flag = (unsigned char)2;
5218 } else {
5219
5220 }
5221 }
5222 }
5223 }
5224 }
5225 }
5226 } else {
5227
5228 }
5229 }
5230 {
5231#line 231
5232 __cil_tmp59 = (unsigned int )status;
5233#line 231
5234 __cil_tmp60 = (unsigned int )ch;
5235#line 231
5236 __cil_tmp61 = (unsigned int )flag;
5237#line 231
5238 uart_insert_char(port, __cil_tmp59, 8U, __cil_tmp60, __cil_tmp61);
5239 }
5240 }
5241 while_break: ;
5242 }
5243 {
5244#line 235
5245 __cil_tmp62 = (unsigned long )port;
5246#line 235
5247 __cil_tmp63 = __cil_tmp62 + 120;
5248#line 235
5249 __cil_tmp64 = *((struct uart_state **)__cil_tmp63);
5250#line 235
5251 __cil_tmp65 = *((struct tty_struct **)__cil_tmp64);
5252#line 235
5253 tty_flip_buffer_push(__cil_tmp65);
5254 }
5255#line 236
5256 return;
5257}
5258}
5259#line 238 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
5260static void altera_uart_tx_chars(struct altera_uart *pp )
5261{ struct uart_port *port ;
5262 struct circ_buf *xmit ;
5263 u32 tmp___7 ;
5264 unsigned long __cil_tmp5 ;
5265 unsigned long __cil_tmp6 ;
5266 struct uart_state *__cil_tmp7 ;
5267 unsigned long __cil_tmp8 ;
5268 unsigned long __cil_tmp9 ;
5269 unsigned long __cil_tmp10 ;
5270 unsigned long __cil_tmp11 ;
5271 unsigned long __cil_tmp12 ;
5272 unsigned long __cil_tmp13 ;
5273 unsigned char __cil_tmp14 ;
5274 u32 __cil_tmp15 ;
5275 unsigned long __cil_tmp16 ;
5276 unsigned long __cil_tmp17 ;
5277 unsigned long __cil_tmp18 ;
5278 unsigned long __cil_tmp19 ;
5279 unsigned long __cil_tmp20 ;
5280 unsigned long __cil_tmp21 ;
5281 unsigned long __cil_tmp22 ;
5282 unsigned long __cil_tmp23 ;
5283 __u32 __cil_tmp24 ;
5284 unsigned long __cil_tmp25 ;
5285 unsigned long __cil_tmp26 ;
5286 int __cil_tmp27 ;
5287 unsigned long __cil_tmp28 ;
5288 unsigned long __cil_tmp29 ;
5289 int __cil_tmp30 ;
5290 unsigned long __cil_tmp31 ;
5291 unsigned long __cil_tmp32 ;
5292 int __cil_tmp33 ;
5293 char *__cil_tmp34 ;
5294 char *__cil_tmp35 ;
5295 char __cil_tmp36 ;
5296 u32 __cil_tmp37 ;
5297 unsigned long __cil_tmp38 ;
5298 unsigned long __cil_tmp39 ;
5299 unsigned long __cil_tmp40 ;
5300 unsigned long __cil_tmp41 ;
5301 unsigned long __cil_tmp42 ;
5302 unsigned long __cil_tmp43 ;
5303 int __cil_tmp44 ;
5304 int __cil_tmp45 ;
5305 unsigned long __cil_tmp46 ;
5306 unsigned long __cil_tmp47 ;
5307 unsigned long __cil_tmp48 ;
5308 unsigned long __cil_tmp49 ;
5309 unsigned long __cil_tmp50 ;
5310 unsigned long __cil_tmp51 ;
5311 unsigned long __cil_tmp52 ;
5312 unsigned long __cil_tmp53 ;
5313 __u32 __cil_tmp54 ;
5314 unsigned long __cil_tmp55 ;
5315 unsigned long __cil_tmp56 ;
5316 unsigned long __cil_tmp57 ;
5317 unsigned long __cil_tmp58 ;
5318 int __cil_tmp59 ;
5319 unsigned long __cil_tmp60 ;
5320 unsigned long __cil_tmp61 ;
5321 int __cil_tmp62 ;
5322 int __cil_tmp63 ;
5323 unsigned long __cil_tmp64 ;
5324 unsigned long __cil_tmp65 ;
5325 unsigned long __cil_tmp66 ;
5326 unsigned long __cil_tmp67 ;
5327 int __cil_tmp68 ;
5328 unsigned long __cil_tmp69 ;
5329 unsigned long __cil_tmp70 ;
5330 int __cil_tmp71 ;
5331 unsigned long __cil_tmp72 ;
5332 unsigned long __cil_tmp73 ;
5333 unsigned long __cil_tmp74 ;
5334 unsigned long __cil_tmp75 ;
5335 unsigned short __cil_tmp76 ;
5336 int __cil_tmp77 ;
5337 int __cil_tmp78 ;
5338 unsigned long __cil_tmp79 ;
5339 unsigned long __cil_tmp80 ;
5340 unsigned short __cil_tmp81 ;
5341 u32 __cil_tmp82 ;
5342
5343 {
5344#line 240
5345 port = (struct uart_port *)pp;
5346#line 241
5347 __cil_tmp5 = (unsigned long )port;
5348#line 241
5349 __cil_tmp6 = __cil_tmp5 + 120;
5350#line 241
5351 __cil_tmp7 = *((struct uart_state **)__cil_tmp6);
5352#line 241
5353 __cil_tmp8 = (unsigned long )__cil_tmp7;
5354#line 241
5355 __cil_tmp9 = __cil_tmp8 + 360;
5356#line 241
5357 xmit = (struct circ_buf *)__cil_tmp9;
5358 {
5359#line 243
5360 __cil_tmp10 = (unsigned long )port;
5361#line 243
5362 __cil_tmp11 = __cil_tmp10 + 104;
5363#line 243
5364 if (*((unsigned char *)__cil_tmp11)) {
5365 {
5366#line 245
5367 __cil_tmp12 = (unsigned long )port;
5368#line 245
5369 __cil_tmp13 = __cil_tmp12 + 104;
5370#line 245
5371 __cil_tmp14 = *((unsigned char *)__cil_tmp13);
5372#line 245
5373 __cil_tmp15 = (u32 )__cil_tmp14;
5374#line 245
5375 altera_uart_writel(port, __cil_tmp15, 4);
5376#line 246
5377 __cil_tmp16 = (unsigned long )port;
5378#line 246
5379 __cil_tmp17 = __cil_tmp16 + 104;
5380#line 246
5381 *((unsigned char *)__cil_tmp17) = (unsigned char)0;
5382#line 247
5383 __cil_tmp18 = 128 + 20;
5384#line 247
5385 __cil_tmp19 = (unsigned long )port;
5386#line 247
5387 __cil_tmp20 = __cil_tmp19 + __cil_tmp18;
5388#line 247
5389 __cil_tmp21 = 128 + 20;
5390#line 247
5391 __cil_tmp22 = (unsigned long )port;
5392#line 247
5393 __cil_tmp23 = __cil_tmp22 + __cil_tmp21;
5394#line 247
5395 __cil_tmp24 = *((__u32 *)__cil_tmp23);
5396#line 247
5397 *((__u32 *)__cil_tmp20) = __cil_tmp24 + 1U;
5398 }
5399#line 248
5400 return;
5401 } else {
5402
5403 }
5404 }
5405 {
5406#line 251
5407 while (1) {
5408 while_continue: ;
5409 {
5410#line 251
5411 tmp___7 = altera_uart_readl(port, 8);
5412 }
5413#line 251
5414 if (tmp___7 & 64U) {
5415
5416 } else {
5417#line 251
5418 goto while_break;
5419 }
5420 {
5421#line 253
5422 __cil_tmp25 = (unsigned long )xmit;
5423#line 253
5424 __cil_tmp26 = __cil_tmp25 + 12;
5425#line 253
5426 __cil_tmp27 = *((int *)__cil_tmp26);
5427#line 253
5428 __cil_tmp28 = (unsigned long )xmit;
5429#line 253
5430 __cil_tmp29 = __cil_tmp28 + 8;
5431#line 253
5432 __cil_tmp30 = *((int *)__cil_tmp29);
5433#line 253
5434 if (__cil_tmp30 == __cil_tmp27) {
5435#line 254
5436 goto while_break;
5437 } else {
5438
5439 }
5440 }
5441 {
5442#line 255
5443 __cil_tmp31 = (unsigned long )xmit;
5444#line 255
5445 __cil_tmp32 = __cil_tmp31 + 12;
5446#line 255
5447 __cil_tmp33 = *((int *)__cil_tmp32);
5448#line 255
5449 __cil_tmp34 = *((char **)xmit);
5450#line 255
5451 __cil_tmp35 = __cil_tmp34 + __cil_tmp33;
5452#line 255
5453 __cil_tmp36 = *__cil_tmp35;
5454#line 255
5455 __cil_tmp37 = (u32 )__cil_tmp36;
5456#line 255
5457 altera_uart_writel(port, __cil_tmp37, 4);
5458#line 257
5459 __cil_tmp38 = (unsigned long )xmit;
5460#line 257
5461 __cil_tmp39 = __cil_tmp38 + 12;
5462#line 257
5463 __cil_tmp40 = 1UL << 12;
5464#line 257
5465 __cil_tmp41 = __cil_tmp40 - 1UL;
5466#line 257
5467 __cil_tmp42 = (unsigned long )xmit;
5468#line 257
5469 __cil_tmp43 = __cil_tmp42 + 12;
5470#line 257
5471 __cil_tmp44 = *((int *)__cil_tmp43);
5472#line 257
5473 __cil_tmp45 = __cil_tmp44 + 1;
5474#line 257
5475 __cil_tmp46 = (unsigned long )__cil_tmp45;
5476#line 257
5477 __cil_tmp47 = __cil_tmp46 & __cil_tmp41;
5478#line 257
5479 *((int *)__cil_tmp39) = (int )__cil_tmp47;
5480#line 258
5481 __cil_tmp48 = 128 + 20;
5482#line 258
5483 __cil_tmp49 = (unsigned long )port;
5484#line 258
5485 __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
5486#line 258
5487 __cil_tmp51 = 128 + 20;
5488#line 258
5489 __cil_tmp52 = (unsigned long )port;
5490#line 258
5491 __cil_tmp53 = __cil_tmp52 + __cil_tmp51;
5492#line 258
5493 __cil_tmp54 = *((__u32 *)__cil_tmp53);
5494#line 258
5495 *((__u32 *)__cil_tmp50) = __cil_tmp54 + 1U;
5496 }
5497 }
5498 while_break: ;
5499 }
5500 {
5501#line 261
5502 __cil_tmp55 = 1UL << 12;
5503#line 261
5504 __cil_tmp56 = __cil_tmp55 - 1UL;
5505#line 261
5506 __cil_tmp57 = (unsigned long )xmit;
5507#line 261
5508 __cil_tmp58 = __cil_tmp57 + 12;
5509#line 261
5510 __cil_tmp59 = *((int *)__cil_tmp58);
5511#line 261
5512 __cil_tmp60 = (unsigned long )xmit;
5513#line 261
5514 __cil_tmp61 = __cil_tmp60 + 8;
5515#line 261
5516 __cil_tmp62 = *((int *)__cil_tmp61);
5517#line 261
5518 __cil_tmp63 = __cil_tmp62 - __cil_tmp59;
5519#line 261
5520 __cil_tmp64 = (unsigned long )__cil_tmp63;
5521#line 261
5522 __cil_tmp65 = __cil_tmp64 & __cil_tmp56;
5523#line 261
5524 if (__cil_tmp65 < 256UL) {
5525 {
5526#line 262
5527 uart_write_wakeup(port);
5528 }
5529 } else {
5530
5531 }
5532 }
5533 {
5534#line 264
5535 __cil_tmp66 = (unsigned long )xmit;
5536#line 264
5537 __cil_tmp67 = __cil_tmp66 + 12;
5538#line 264
5539 __cil_tmp68 = *((int *)__cil_tmp67);
5540#line 264
5541 __cil_tmp69 = (unsigned long )xmit;
5542#line 264
5543 __cil_tmp70 = __cil_tmp69 + 8;
5544#line 264
5545 __cil_tmp71 = *((int *)__cil_tmp70);
5546#line 264
5547 if (__cil_tmp71 == __cil_tmp68) {
5548 {
5549#line 265
5550 __cil_tmp72 = (unsigned long )pp;
5551#line 265
5552 __cil_tmp73 = __cil_tmp72 + 340;
5553#line 265
5554 __cil_tmp74 = (unsigned long )pp;
5555#line 265
5556 __cil_tmp75 = __cil_tmp74 + 340;
5557#line 265
5558 __cil_tmp76 = *((unsigned short *)__cil_tmp75);
5559#line 265
5560 __cil_tmp77 = (int )__cil_tmp76;
5561#line 265
5562 __cil_tmp78 = __cil_tmp77 & -65;
5563#line 265
5564 *((unsigned short *)__cil_tmp73) = (unsigned short )__cil_tmp78;
5565#line 266
5566 __cil_tmp79 = (unsigned long )pp;
5567#line 266
5568 __cil_tmp80 = __cil_tmp79 + 340;
5569#line 266
5570 __cil_tmp81 = *((unsigned short *)__cil_tmp80);
5571#line 266
5572 __cil_tmp82 = (u32 )__cil_tmp81;
5573#line 266
5574 altera_uart_writel(port, __cil_tmp82, 12);
5575 }
5576 } else {
5577
5578 }
5579 }
5580#line 268
5581 return;
5582}
5583}
5584#line 270 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
5585static irqreturn_t altera_uart_interrupt(int irq , void *data )
5586{ struct uart_port *port ;
5587 struct altera_uart *pp ;
5588 struct uart_port const *__mptr ;
5589 unsigned int isr ;
5590 u32 tmp___7 ;
5591 struct altera_uart *__cil_tmp8 ;
5592 struct uart_port *__cil_tmp9 ;
5593 unsigned int __cil_tmp10 ;
5594 char *__cil_tmp11 ;
5595 char *__cil_tmp12 ;
5596 unsigned long __cil_tmp13 ;
5597 unsigned long __cil_tmp14 ;
5598 unsigned short __cil_tmp15 ;
5599 unsigned int __cil_tmp16 ;
5600 spinlock_t *__cil_tmp17 ;
5601 spinlock_t *__cil_tmp18 ;
5602 int __cil_tmp19 ;
5603
5604 {
5605 {
5606#line 272
5607 port = (struct uart_port *)data;
5608#line 273
5609 __mptr = (struct uart_port const *)port;
5610#line 273
5611 __cil_tmp8 = (struct altera_uart *)0;
5612#line 273
5613 __cil_tmp9 = (struct uart_port *)__cil_tmp8;
5614#line 273
5615 __cil_tmp10 = (unsigned int )__cil_tmp9;
5616#line 273
5617 __cil_tmp11 = (char *)__mptr;
5618#line 273
5619 __cil_tmp12 = __cil_tmp11 - __cil_tmp10;
5620#line 273
5621 pp = (struct altera_uart *)__cil_tmp12;
5622#line 276
5623 tmp___7 = altera_uart_readl(port, 8);
5624#line 276
5625 __cil_tmp13 = (unsigned long )pp;
5626#line 276
5627 __cil_tmp14 = __cil_tmp13 + 340;
5628#line 276
5629 __cil_tmp15 = *((unsigned short *)__cil_tmp14);
5630#line 276
5631 __cil_tmp16 = (unsigned int )__cil_tmp15;
5632#line 276
5633 isr = tmp___7 & __cil_tmp16;
5634#line 278
5635 __cil_tmp17 = (spinlock_t *)port;
5636#line 278
5637 spin_lock(__cil_tmp17);
5638 }
5639#line 279
5640 if (isr & 128U) {
5641 {
5642#line 280
5643 altera_uart_rx_chars(pp);
5644 }
5645 } else {
5646
5647 }
5648#line 281
5649 if (isr & 64U) {
5650 {
5651#line 282
5652 altera_uart_tx_chars(pp);
5653 }
5654 } else {
5655
5656 }
5657 {
5658#line 283
5659 __cil_tmp18 = (spinlock_t *)port;
5660#line 283
5661 spin_unlock(__cil_tmp18);
5662 }
5663 {
5664#line 285
5665 __cil_tmp19 = isr != 0U;
5666#line 285
5667 return ((irqreturn_t )__cil_tmp19);
5668 }
5669}
5670}
5671#line 288 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
5672static void altera_uart_timer(unsigned long data )
5673{ struct uart_port *port ;
5674 struct altera_uart *pp ;
5675 struct uart_port const *__mptr ;
5676 int tmp___7 ;
5677 void *__cil_tmp6 ;
5678 struct altera_uart *__cil_tmp7 ;
5679 struct uart_port *__cil_tmp8 ;
5680 unsigned int __cil_tmp9 ;
5681 char *__cil_tmp10 ;
5682 char *__cil_tmp11 ;
5683 void *__cil_tmp12 ;
5684 unsigned long __cil_tmp13 ;
5685 unsigned long __cil_tmp14 ;
5686 struct timer_list *__cil_tmp15 ;
5687 unsigned long volatile __cil_tmp16 ;
5688 unsigned long volatile __cil_tmp17 ;
5689 unsigned long __cil_tmp18 ;
5690
5691 {
5692 {
5693#line 290
5694 __cil_tmp6 = (void *)data;
5695#line 290
5696 port = (struct uart_port *)__cil_tmp6;
5697#line 291
5698 __mptr = (struct uart_port const *)port;
5699#line 291
5700 __cil_tmp7 = (struct altera_uart *)0;
5701#line 291
5702 __cil_tmp8 = (struct uart_port *)__cil_tmp7;
5703#line 291
5704 __cil_tmp9 = (unsigned int )__cil_tmp8;
5705#line 291
5706 __cil_tmp10 = (char *)__mptr;
5707#line 291
5708 __cil_tmp11 = __cil_tmp10 - __cil_tmp9;
5709#line 291
5710 pp = (struct altera_uart *)__cil_tmp11;
5711#line 293
5712 __cil_tmp12 = (void *)port;
5713#line 293
5714 altera_uart_interrupt(0, __cil_tmp12);
5715#line 294
5716 tmp___7 = uart_poll_timeout(port);
5717#line 294
5718 __cil_tmp13 = (unsigned long )pp;
5719#line 294
5720 __cil_tmp14 = __cil_tmp13 + 256;
5721#line 294
5722 __cil_tmp15 = (struct timer_list *)__cil_tmp14;
5723#line 294
5724 __cil_tmp16 = (unsigned long volatile )tmp___7;
5725#line 294
5726 __cil_tmp17 = jiffies + __cil_tmp16;
5727#line 294
5728 __cil_tmp18 = (unsigned long )__cil_tmp17;
5729#line 294
5730 mod_timer(__cil_tmp15, __cil_tmp18);
5731 }
5732#line 295
5733 return;
5734}
5735}
5736#line 297 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
5737static void altera_uart_config_port(struct uart_port *port , int flags )
5738{ unsigned long __cil_tmp3 ;
5739 unsigned long __cil_tmp4 ;
5740 u32 __cil_tmp5 ;
5741 u32 __cil_tmp6 ;
5742
5743 {
5744 {
5745#line 299
5746 __cil_tmp3 = (unsigned long )port;
5747#line 299
5748 __cil_tmp4 = __cil_tmp3 + 204;
5749#line 299
5750 *((unsigned int *)__cil_tmp4) = 92U;
5751#line 302
5752 __cil_tmp5 = (u32 )0;
5753#line 302
5754 altera_uart_writel(port, __cil_tmp5, 12);
5755#line 304
5756 __cil_tmp6 = (u32 )0;
5757#line 304
5758 altera_uart_writel(port, __cil_tmp6, 8);
5759 }
5760#line 305
5761 return;
5762}
5763}
5764#line 307 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
5765static int altera_uart_startup(struct uart_port *port )
5766{ struct altera_uart *pp ;
5767 struct uart_port const *__mptr ;
5768 unsigned long flags ;
5769 int ret ;
5770 int tmp___7 ;
5771 raw_spinlock_t *tmp___8 ;
5772 struct altera_uart *__cil_tmp10 ;
5773 struct uart_port *__cil_tmp11 ;
5774 unsigned int __cil_tmp12 ;
5775 char *__cil_tmp13 ;
5776 char *__cil_tmp14 ;
5777 unsigned long __cil_tmp15 ;
5778 unsigned long __cil_tmp16 ;
5779 unsigned int __cil_tmp17 ;
5780 unsigned long __cil_tmp18 ;
5781 unsigned long __cil_tmp19 ;
5782 struct timer_list *__cil_tmp20 ;
5783 void *__cil_tmp21 ;
5784 char const *__cil_tmp22 ;
5785 void *__cil_tmp23 ;
5786 struct lock_class_key *__cil_tmp24 ;
5787 unsigned long __cil_tmp25 ;
5788 unsigned long __cil_tmp26 ;
5789 unsigned long __cil_tmp27 ;
5790 struct timer_list *__cil_tmp28 ;
5791 unsigned long volatile __cil_tmp29 ;
5792 unsigned long volatile __cil_tmp30 ;
5793 unsigned long __cil_tmp31 ;
5794 unsigned long __cil_tmp32 ;
5795 unsigned long __cil_tmp33 ;
5796 unsigned int __cil_tmp34 ;
5797 void *__cil_tmp35 ;
5798 unsigned long __cil_tmp36 ;
5799 unsigned long __cil_tmp37 ;
5800 unsigned int __cil_tmp38 ;
5801 unsigned long __cil_tmp39 ;
5802 unsigned long __cil_tmp40 ;
5803 unsigned int __cil_tmp41 ;
5804 spinlock_t *__cil_tmp42 ;
5805 unsigned long __cil_tmp43 ;
5806 unsigned long __cil_tmp44 ;
5807 unsigned long __cil_tmp45 ;
5808 unsigned long __cil_tmp46 ;
5809 unsigned short __cil_tmp47 ;
5810 unsigned int __cil_tmp48 ;
5811 unsigned long __cil_tmp49 ;
5812 unsigned long __cil_tmp50 ;
5813 unsigned char *__cil_tmp51 ;
5814 unsigned char *__cil_tmp52 ;
5815 void volatile *__cil_tmp53 ;
5816 spinlock_t *__cil_tmp54 ;
5817
5818 {
5819#line 309
5820 __mptr = (struct uart_port const *)port;
5821#line 309
5822 __cil_tmp10 = (struct altera_uart *)0;
5823#line 309
5824 __cil_tmp11 = (struct uart_port *)__cil_tmp10;
5825#line 309
5826 __cil_tmp12 = (unsigned int )__cil_tmp11;
5827#line 309
5828 __cil_tmp13 = (char *)__mptr;
5829#line 309
5830 __cil_tmp14 = __cil_tmp13 - __cil_tmp12;
5831#line 309
5832 pp = (struct altera_uart *)__cil_tmp14;
5833 {
5834#line 313
5835 __cil_tmp15 = (unsigned long )port;
5836#line 313
5837 __cil_tmp16 = __cil_tmp15 + 80;
5838#line 313
5839 __cil_tmp17 = *((unsigned int *)__cil_tmp16);
5840#line 313
5841 if (! __cil_tmp17) {
5842 {
5843#line 314
5844 __cil_tmp18 = (unsigned long )pp;
5845#line 314
5846 __cil_tmp19 = __cil_tmp18 + 256;
5847#line 314
5848 __cil_tmp20 = (struct timer_list *)__cil_tmp19;
5849#line 314
5850 __cil_tmp21 = (void *)0;
5851#line 314
5852 __cil_tmp22 = (char const *)__cil_tmp21;
5853#line 314
5854 __cil_tmp23 = (void *)0;
5855#line 314
5856 __cil_tmp24 = (struct lock_class_key *)__cil_tmp23;
5857#line 314
5858 __cil_tmp25 = (unsigned long )port;
5859#line 314
5860 setup_timer_key(__cil_tmp20, __cil_tmp22, __cil_tmp24, & altera_uart_timer, __cil_tmp25);
5861#line 315
5862 tmp___7 = uart_poll_timeout(port);
5863#line 315
5864 __cil_tmp26 = (unsigned long )pp;
5865#line 315
5866 __cil_tmp27 = __cil_tmp26 + 256;
5867#line 315
5868 __cil_tmp28 = (struct timer_list *)__cil_tmp27;
5869#line 315
5870 __cil_tmp29 = (unsigned long volatile )tmp___7;
5871#line 315
5872 __cil_tmp30 = jiffies + __cil_tmp29;
5873#line 315
5874 __cil_tmp31 = (unsigned long )__cil_tmp30;
5875#line 315
5876 mod_timer(__cil_tmp28, __cil_tmp31);
5877 }
5878#line 316
5879 return (0);
5880 } else {
5881
5882 }
5883 }
5884 {
5885#line 319
5886 __cil_tmp32 = (unsigned long )port;
5887#line 319
5888 __cil_tmp33 = __cil_tmp32 + 80;
5889#line 319
5890 __cil_tmp34 = *((unsigned int *)__cil_tmp33);
5891#line 319
5892 __cil_tmp35 = (void *)port;
5893#line 319
5894 ret = (int )request_irq(__cil_tmp34, & altera_uart_interrupt, 0UL, "altera_uart",
5895 __cil_tmp35);
5896 }
5897#line 321
5898 if (ret) {
5899 {
5900#line 322
5901 __cil_tmp36 = (unsigned long )port;
5902#line 322
5903 __cil_tmp37 = __cil_tmp36 + 220;
5904#line 322
5905 __cil_tmp38 = *((unsigned int *)__cil_tmp37);
5906#line 322
5907 __cil_tmp39 = (unsigned long )port;
5908#line 322
5909 __cil_tmp40 = __cil_tmp39 + 80;
5910#line 322
5911 __cil_tmp41 = *((unsigned int *)__cil_tmp40);
5912#line 322
5913 printk("<3>altera_uart: unable to attach Altera UART %d interrupt vector=%d\n",
5914 __cil_tmp38, __cil_tmp41);
5915 }
5916#line 324
5917 return (ret);
5918 } else {
5919
5920 }
5921 {
5922#line 327
5923 while (1) {
5924 while_continue: ;
5925 {
5926#line 327
5927 while (1) {
5928 while_continue___0: ;
5929 {
5930#line 327
5931 __cil_tmp42 = (spinlock_t *)port;
5932#line 327
5933 tmp___8 = spinlock_check(__cil_tmp42);
5934#line 327
5935 flags = _raw_spin_lock_irqsave(tmp___8);
5936 }
5937#line 327
5938 goto while_break___0;
5939 }
5940 while_break___0: ;
5941 }
5942#line 327
5943 goto while_break;
5944 }
5945 while_break: ;
5946 }
5947 {
5948#line 330
5949 __cil_tmp43 = (unsigned long )pp;
5950#line 330
5951 __cil_tmp44 = __cil_tmp43 + 340;
5952#line 330
5953 *((unsigned short *)__cil_tmp44) = (unsigned short)128;
5954#line 331
5955 __cil_tmp45 = (unsigned long )pp;
5956#line 331
5957 __cil_tmp46 = __cil_tmp45 + 340;
5958#line 331
5959 __cil_tmp47 = *((unsigned short *)__cil_tmp46);
5960#line 331
5961 __cil_tmp48 = (unsigned int )__cil_tmp47;
5962#line 331
5963 __cil_tmp49 = (unsigned long )port;
5964#line 331
5965 __cil_tmp50 = __cil_tmp49 + 32;
5966#line 331
5967 __cil_tmp51 = *((unsigned char **)__cil_tmp50);
5968#line 331
5969 __cil_tmp52 = __cil_tmp51 + 12;
5970#line 331
5971 __cil_tmp53 = (void volatile *)__cil_tmp52;
5972#line 331
5973 writel(__cil_tmp48, __cil_tmp53);
5974#line 333
5975 __cil_tmp54 = (spinlock_t *)port;
5976#line 333
5977 spin_unlock_irqrestore(__cil_tmp54, flags);
5978 }
5979#line 335
5980 return (0);
5981}
5982}
5983#line 338 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
5984static void altera_uart_shutdown(struct uart_port *port )
5985{ struct altera_uart *pp ;
5986 struct uart_port const *__mptr ;
5987 unsigned long flags ;
5988 raw_spinlock_t *tmp___7 ;
5989 struct altera_uart *__cil_tmp8 ;
5990 struct uart_port *__cil_tmp9 ;
5991 unsigned int __cil_tmp10 ;
5992 char *__cil_tmp11 ;
5993 char *__cil_tmp12 ;
5994 spinlock_t *__cil_tmp13 ;
5995 unsigned long __cil_tmp14 ;
5996 unsigned long __cil_tmp15 ;
5997 unsigned long __cil_tmp16 ;
5998 unsigned long __cil_tmp17 ;
5999 unsigned short __cil_tmp18 ;
6000 unsigned int __cil_tmp19 ;
6001 unsigned long __cil_tmp20 ;
6002 unsigned long __cil_tmp21 ;
6003 unsigned char *__cil_tmp22 ;
6004 unsigned char *__cil_tmp23 ;
6005 void volatile *__cil_tmp24 ;
6006 spinlock_t *__cil_tmp25 ;
6007 unsigned long __cil_tmp26 ;
6008 unsigned long __cil_tmp27 ;
6009 unsigned long __cil_tmp28 ;
6010 unsigned long __cil_tmp29 ;
6011 unsigned int __cil_tmp30 ;
6012 void *__cil_tmp31 ;
6013 unsigned long __cil_tmp32 ;
6014 unsigned long __cil_tmp33 ;
6015 struct timer_list *__cil_tmp34 ;
6016
6017 {
6018#line 340
6019 __mptr = (struct uart_port const *)port;
6020#line 340
6021 __cil_tmp8 = (struct altera_uart *)0;
6022#line 340
6023 __cil_tmp9 = (struct uart_port *)__cil_tmp8;
6024#line 340
6025 __cil_tmp10 = (unsigned int )__cil_tmp9;
6026#line 340
6027 __cil_tmp11 = (char *)__mptr;
6028#line 340
6029 __cil_tmp12 = __cil_tmp11 - __cil_tmp10;
6030#line 340
6031 pp = (struct altera_uart *)__cil_tmp12;
6032 {
6033#line 343
6034 while (1) {
6035 while_continue: ;
6036 {
6037#line 343
6038 while (1) {
6039 while_continue___0: ;
6040 {
6041#line 343
6042 __cil_tmp13 = (spinlock_t *)port;
6043#line 343
6044 tmp___7 = spinlock_check(__cil_tmp13);
6045#line 343
6046 flags = _raw_spin_lock_irqsave(tmp___7);
6047 }
6048#line 343
6049 goto while_break___0;
6050 }
6051 while_break___0: ;
6052 }
6053#line 343
6054 goto while_break;
6055 }
6056 while_break: ;
6057 }
6058 {
6059#line 346
6060 __cil_tmp14 = (unsigned long )pp;
6061#line 346
6062 __cil_tmp15 = __cil_tmp14 + 340;
6063#line 346
6064 *((unsigned short *)__cil_tmp15) = (unsigned short)0;
6065#line 347
6066 __cil_tmp16 = (unsigned long )pp;
6067#line 347
6068 __cil_tmp17 = __cil_tmp16 + 340;
6069#line 347
6070 __cil_tmp18 = *((unsigned short *)__cil_tmp17);
6071#line 347
6072 __cil_tmp19 = (unsigned int )__cil_tmp18;
6073#line 347
6074 __cil_tmp20 = (unsigned long )port;
6075#line 347
6076 __cil_tmp21 = __cil_tmp20 + 32;
6077#line 347
6078 __cil_tmp22 = *((unsigned char **)__cil_tmp21);
6079#line 347
6080 __cil_tmp23 = __cil_tmp22 + 12;
6081#line 347
6082 __cil_tmp24 = (void volatile *)__cil_tmp23;
6083#line 347
6084 writel(__cil_tmp19, __cil_tmp24);
6085#line 349
6086 __cil_tmp25 = (spinlock_t *)port;
6087#line 349
6088 spin_unlock_irqrestore(__cil_tmp25, flags);
6089 }
6090 {
6091#line 351
6092 __cil_tmp26 = (unsigned long )port;
6093#line 351
6094 __cil_tmp27 = __cil_tmp26 + 80;
6095#line 351
6096 if (*((unsigned int *)__cil_tmp27)) {
6097 {
6098#line 352
6099 __cil_tmp28 = (unsigned long )port;
6100#line 352
6101 __cil_tmp29 = __cil_tmp28 + 80;
6102#line 352
6103 __cil_tmp30 = *((unsigned int *)__cil_tmp29);
6104#line 352
6105 __cil_tmp31 = (void *)port;
6106#line 352
6107 free_irq(__cil_tmp30, __cil_tmp31);
6108 }
6109 } else {
6110 {
6111#line 354
6112 __cil_tmp32 = (unsigned long )pp;
6113#line 354
6114 __cil_tmp33 = __cil_tmp32 + 256;
6115#line 354
6116 __cil_tmp34 = (struct timer_list *)__cil_tmp33;
6117#line 354
6118 del_timer_sync(__cil_tmp34);
6119 }
6120 }
6121 }
6122#line 355
6123 return;
6124}
6125}
6126#line 357 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6127static char const *altera_uart_type(struct uart_port *port )
6128{ char const *tmp___7 ;
6129 unsigned long __cil_tmp3 ;
6130 unsigned long __cil_tmp4 ;
6131 unsigned int __cil_tmp5 ;
6132 void *__cil_tmp6 ;
6133
6134 {
6135 {
6136#line 359
6137 __cil_tmp3 = (unsigned long )port;
6138#line 359
6139 __cil_tmp4 = __cil_tmp3 + 204;
6140#line 359
6141 __cil_tmp5 = *((unsigned int *)__cil_tmp4);
6142#line 359
6143 if (__cil_tmp5 == 92U) {
6144#line 359
6145 tmp___7 = "Altera UART";
6146 } else {
6147#line 359
6148 __cil_tmp6 = (void *)0;
6149#line 359
6150 tmp___7 = (char const *)__cil_tmp6;
6151 }
6152 }
6153#line 359
6154 return (tmp___7);
6155}
6156}
6157#line 362 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6158static int altera_uart_request_port(struct uart_port *port )
6159{
6160
6161 {
6162#line 365
6163 return (0);
6164}
6165}
6166#line 368 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6167static void altera_uart_release_port(struct uart_port *port )
6168{
6169
6170 {
6171#line 371
6172 return;
6173}
6174}
6175#line 373 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6176static int altera_uart_verify_port(struct uart_port *port , struct serial_struct *ser )
6177{ int __cil_tmp3 ;
6178 int __cil_tmp4 ;
6179
6180 {
6181 {
6182#line 376
6183 __cil_tmp3 = *((int *)ser);
6184#line 376
6185 if (__cil_tmp3 != 0) {
6186 {
6187#line 376
6188 __cil_tmp4 = *((int *)ser);
6189#line 376
6190 if (__cil_tmp4 != 92) {
6191#line 377
6192 return (-22);
6193 } else {
6194
6195 }
6196 }
6197 } else {
6198
6199 }
6200 }
6201#line 378
6202 return (0);
6203}
6204}
6205#line 382 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6206static int altera_uart_poll_get_char(struct uart_port *port )
6207{ u32 tmp___7 ;
6208 u32 tmp___8 ;
6209
6210 {
6211 {
6212#line 384
6213 while (1) {
6214 while_continue: ;
6215 {
6216#line 384
6217 tmp___7 = altera_uart_readl(port, 8);
6218 }
6219#line 384
6220 if (tmp___7 & 128U) {
6221#line 384
6222 goto while_break;
6223 } else {
6224
6225 }
6226 {
6227#line 386
6228 cpu_relax();
6229 }
6230 }
6231 while_break: ;
6232 }
6233 {
6234#line 388
6235 tmp___8 = altera_uart_readl(port, 0);
6236 }
6237#line 388
6238 return ((int )tmp___8);
6239}
6240}
6241#line 391 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6242static void altera_uart_poll_put_char(struct uart_port *port , unsigned char c )
6243{ u32 tmp___7 ;
6244 u32 __cil_tmp4 ;
6245
6246 {
6247 {
6248#line 393
6249 while (1) {
6250 while_continue: ;
6251 {
6252#line 393
6253 tmp___7 = altera_uart_readl(port, 8);
6254 }
6255#line 393
6256 if (tmp___7 & 64U) {
6257#line 393
6258 goto while_break;
6259 } else {
6260
6261 }
6262 {
6263#line 395
6264 cpu_relax();
6265 }
6266 }
6267 while_break: ;
6268 }
6269 {
6270#line 397
6271 __cil_tmp4 = (u32 )c;
6272#line 397
6273 altera_uart_writel(port, __cil_tmp4, 4);
6274 }
6275#line 398
6276 return;
6277}
6278}
6279#line 404 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6280static struct uart_ops altera_uart_ops =
6281#line 404
6282 {& altera_uart_tx_empty, & altera_uart_set_mctrl, & altera_uart_get_mctrl, & altera_uart_stop_tx,
6283 & altera_uart_start_tx, (void (*)(struct uart_port * , char ch ))0, & altera_uart_stop_rx,
6284 & altera_uart_enable_ms, & altera_uart_break_ctl, & altera_uart_startup, & altera_uart_shutdown,
6285 (void (*)(struct uart_port * ))0, & altera_uart_set_termios, (void (*)(struct uart_port * ,
6286 int new ))0,
6287 (void (*)(struct uart_port * , unsigned int state , unsigned int oldstate ))0,
6288 (int (*)(struct uart_port * , unsigned int state ))0, & altera_uart_type, & altera_uart_release_port,
6289 & altera_uart_request_port, & altera_uart_config_port, & altera_uart_verify_port,
6290 (int (*)(struct uart_port * , unsigned int , unsigned long ))0, & altera_uart_poll_put_char,
6291 & altera_uart_poll_get_char};
6292#line 427 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6293static struct altera_uart altera_uart_ports[4] ;
6294#line 503 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6295static struct uart_driver altera_uart_driver =
6296#line 503
6297 {& __this_module, "altera_uart", "ttyAL", 204, 213, 4, (struct console *)((void *)0),
6298 (struct uart_state *)0, (struct tty_driver *)0};
6299#line 529 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6300static int altera_uart_get_of_uartclk(struct platform_device *pdev , struct uart_port *port )
6301{
6302
6303 {
6304#line 532
6305 return (-19);
6306}
6307}
6308#line 536
6309static int altera_uart_probe(struct platform_device *pdev ) __attribute__((__section__(".devinit.text"),
6310__no_instrument_function__)) ;
6311#line 536 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6312static int altera_uart_probe(struct platform_device *pdev )
6313{ struct altera_uart_platform_uart *platp ;
6314 struct uart_port *port ;
6315 struct resource *res_mem ;
6316 struct resource *res_irq ;
6317 int i ;
6318 int ret ;
6319 void *tmp___7 ;
6320 unsigned long __cil_tmp9 ;
6321 unsigned long __cil_tmp10 ;
6322 unsigned long __cil_tmp11 ;
6323 void *__cil_tmp12 ;
6324 unsigned long __cil_tmp13 ;
6325 unsigned long __cil_tmp14 ;
6326 unsigned long __cil_tmp15 ;
6327 unsigned long __cil_tmp16 ;
6328 unsigned long __cil_tmp17 ;
6329 unsigned long __cil_tmp18 ;
6330 resource_size_t __cil_tmp19 ;
6331 unsigned long __cil_tmp20 ;
6332 unsigned long __cil_tmp21 ;
6333 unsigned long __cil_tmp22 ;
6334 unsigned long __cil_tmp23 ;
6335 unsigned long __cil_tmp24 ;
6336 unsigned long __cil_tmp25 ;
6337 unsigned long __cil_tmp26 ;
6338 unsigned long __cil_tmp27 ;
6339 unsigned long __cil_tmp28 ;
6340 resource_size_t __cil_tmp29 ;
6341 unsigned long __cil_tmp30 ;
6342 unsigned long __cil_tmp31 ;
6343 unsigned long __cil_tmp32 ;
6344 unsigned long __cil_tmp33 ;
6345 unsigned long __cil_tmp34 ;
6346 unsigned long __cil_tmp35 ;
6347 unsigned long __cil_tmp36 ;
6348 unsigned long __cil_tmp37 ;
6349 unsigned long __cil_tmp38 ;
6350 unsigned long __cil_tmp39 ;
6351 resource_size_t __cil_tmp40 ;
6352 unsigned long __cil_tmp41 ;
6353 unsigned long __cil_tmp42 ;
6354 unsigned long __cil_tmp43 ;
6355 unsigned long __cil_tmp44 ;
6356 unsigned char *__cil_tmp45 ;
6357 unsigned long __cil_tmp46 ;
6358 unsigned long __cil_tmp47 ;
6359 unsigned long __cil_tmp48 ;
6360 unsigned long __cil_tmp49 ;
6361 unsigned int __cil_tmp50 ;
6362 unsigned long __cil_tmp51 ;
6363 unsigned long __cil_tmp52 ;
6364 unsigned long __cil_tmp53 ;
6365 unsigned long __cil_tmp54 ;
6366 unsigned long __cil_tmp55 ;
6367 unsigned long __cil_tmp56 ;
6368 unsigned long __cil_tmp57 ;
6369 unsigned long __cil_tmp58 ;
6370 unsigned long __cil_tmp59 ;
6371 unsigned long __cil_tmp60 ;
6372 unsigned long __cil_tmp61 ;
6373 unsigned long __cil_tmp62 ;
6374 int __cil_tmp63 ;
6375 unsigned long __cil_tmp64 ;
6376 unsigned long __cil_tmp65 ;
6377 struct device *__cil_tmp66 ;
6378 void *__cil_tmp67 ;
6379
6380 {
6381#line 538
6382 __cil_tmp9 = 16 + 184;
6383#line 538
6384 __cil_tmp10 = (unsigned long )pdev;
6385#line 538
6386 __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
6387#line 538
6388 __cil_tmp12 = *((void **)__cil_tmp11);
6389#line 538
6390 platp = (struct altera_uart_platform_uart *)__cil_tmp12;
6391#line 542
6392 __cil_tmp13 = (unsigned long )pdev;
6393#line 542
6394 __cil_tmp14 = __cil_tmp13 + 8;
6395#line 542
6396 i = *((int *)__cil_tmp14);
6397#line 546
6398 if (i == -1) {
6399#line 547
6400 i = 0;
6401 {
6402#line 547
6403 while (1) {
6404 while_continue: ;
6405#line 547
6406 if (i < 4) {
6407
6408 } else {
6409#line 547
6410 goto while_break;
6411 }
6412 {
6413#line 548
6414 __cil_tmp15 = 0 + 224;
6415#line 548
6416 __cil_tmp16 = i * 344UL;
6417#line 548
6418 __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
6419#line 548
6420 __cil_tmp18 = (unsigned long )(altera_uart_ports) + __cil_tmp17;
6421#line 548
6422 __cil_tmp19 = *((resource_size_t *)__cil_tmp18);
6423#line 548
6424 if (__cil_tmp19 == 0ULL) {
6425#line 549
6426 goto while_break;
6427 } else {
6428
6429 }
6430 }
6431#line 547
6432 i = i + 1;
6433 }
6434 while_break: ;
6435 }
6436 } else {
6437
6438 }
6439#line 552
6440 if (i < 0) {
6441#line 553
6442 return (-22);
6443 } else
6444#line 552
6445 if (i >= 4) {
6446#line 553
6447 return (-22);
6448 } else {
6449
6450 }
6451 {
6452#line 555
6453 __cil_tmp20 = i * 344UL;
6454#line 555
6455 __cil_tmp21 = (unsigned long )(altera_uart_ports) + __cil_tmp20;
6456#line 555
6457 port = (struct uart_port *)__cil_tmp21;
6458#line 557
6459 res_mem = platform_get_resource(pdev, 512U, 0U);
6460 }
6461#line 558
6462 if (res_mem) {
6463#line 559
6464 __cil_tmp22 = (unsigned long )port;
6465#line 559
6466 __cil_tmp23 = __cil_tmp22 + 224;
6467#line 559
6468 *((resource_size_t *)__cil_tmp23) = *((resource_size_t *)res_mem);
6469 } else
6470#line 560
6471 if (platp) {
6472#line 561
6473 __cil_tmp24 = (unsigned long )port;
6474#line 561
6475 __cil_tmp25 = __cil_tmp24 + 224;
6476#line 561
6477 __cil_tmp26 = *((unsigned long *)platp);
6478#line 561
6479 *((resource_size_t *)__cil_tmp25) = (resource_size_t )__cil_tmp26;
6480 } else {
6481#line 563
6482 return (-22);
6483 }
6484 {
6485#line 565
6486 res_irq = platform_get_resource(pdev, 1024U, 0U);
6487 }
6488#line 566
6489 if (res_irq) {
6490#line 567
6491 __cil_tmp27 = (unsigned long )port;
6492#line 567
6493 __cil_tmp28 = __cil_tmp27 + 80;
6494#line 567
6495 __cil_tmp29 = *((resource_size_t *)res_irq);
6496#line 567
6497 *((unsigned int *)__cil_tmp28) = (unsigned int )__cil_tmp29;
6498 } else
6499#line 568
6500 if (platp) {
6501#line 569
6502 __cil_tmp30 = (unsigned long )port;
6503#line 569
6504 __cil_tmp31 = __cil_tmp30 + 80;
6505#line 569
6506 __cil_tmp32 = (unsigned long )platp;
6507#line 569
6508 __cil_tmp33 = __cil_tmp32 + 8;
6509#line 569
6510 *((unsigned int *)__cil_tmp31) = *((unsigned int *)__cil_tmp33);
6511 } else {
6512
6513 }
6514#line 572
6515 if (platp) {
6516#line 573
6517 __cil_tmp34 = (unsigned long )port;
6518#line 573
6519 __cil_tmp35 = __cil_tmp34 + 96;
6520#line 573
6521 __cil_tmp36 = (unsigned long )platp;
6522#line 573
6523 __cil_tmp37 = __cil_tmp36 + 12;
6524#line 573
6525 *((unsigned int *)__cil_tmp35) = *((unsigned int *)__cil_tmp37);
6526 } else {
6527 {
6528#line 575
6529 ret = altera_uart_get_of_uartclk(pdev, port);
6530 }
6531#line 576
6532 if (ret) {
6533#line 577
6534 return (ret);
6535 } else {
6536
6537 }
6538 }
6539 {
6540#line 580
6541 __cil_tmp38 = (unsigned long )port;
6542#line 580
6543 __cil_tmp39 = __cil_tmp38 + 224;
6544#line 580
6545 __cil_tmp40 = *((resource_size_t *)__cil_tmp39);
6546#line 580
6547 tmp___7 = ioremap(__cil_tmp40, 32UL);
6548#line 580
6549 __cil_tmp41 = (unsigned long )port;
6550#line 580
6551 __cil_tmp42 = __cil_tmp41 + 32;
6552#line 580
6553 *((unsigned char **)__cil_tmp42) = (unsigned char *)tmp___7;
6554 }
6555 {
6556#line 581
6557 __cil_tmp43 = (unsigned long )port;
6558#line 581
6559 __cil_tmp44 = __cil_tmp43 + 32;
6560#line 581
6561 __cil_tmp45 = *((unsigned char **)__cil_tmp44);
6562#line 581
6563 if (! __cil_tmp45) {
6564#line 582
6565 return (-12);
6566 } else {
6567
6568 }
6569 }
6570#line 584
6571 if (platp) {
6572#line 585
6573 __cil_tmp46 = (unsigned long )port;
6574#line 585
6575 __cil_tmp47 = __cil_tmp46 + 105;
6576#line 585
6577 __cil_tmp48 = (unsigned long )platp;
6578#line 585
6579 __cil_tmp49 = __cil_tmp48 + 16;
6580#line 585
6581 __cil_tmp50 = *((unsigned int *)__cil_tmp49);
6582#line 585
6583 *((unsigned char *)__cil_tmp47) = (unsigned char )__cil_tmp50;
6584 } else {
6585#line 587
6586 __cil_tmp51 = (unsigned long )port;
6587#line 587
6588 __cil_tmp52 = __cil_tmp51 + 105;
6589#line 587
6590 *((unsigned char *)__cil_tmp52) = (unsigned char)0;
6591 }
6592 {
6593#line 589
6594 __cil_tmp53 = (unsigned long )port;
6595#line 589
6596 __cil_tmp54 = __cil_tmp53 + 220;
6597#line 589
6598 *((unsigned int *)__cil_tmp54) = (unsigned int )i;
6599#line 590
6600 __cil_tmp55 = (unsigned long )port;
6601#line 590
6602 __cil_tmp56 = __cil_tmp55 + 204;
6603#line 590
6604 *((unsigned int *)__cil_tmp56) = 92U;
6605#line 591
6606 __cil_tmp57 = (unsigned long )port;
6607#line 591
6608 __cil_tmp58 = __cil_tmp57 + 106;
6609#line 591
6610 *((unsigned char *)__cil_tmp58) = (unsigned char)2;
6611#line 592
6612 __cil_tmp59 = (unsigned long )port;
6613#line 592
6614 __cil_tmp60 = __cil_tmp59 + 208;
6615#line 592
6616 *((struct uart_ops const **)__cil_tmp60) = (struct uart_ops const *)(& altera_uart_ops);
6617#line 593
6618 __cil_tmp61 = (unsigned long )port;
6619#line 593
6620 __cil_tmp62 = __cil_tmp61 + 192;
6621#line 593
6622 __cil_tmp63 = 1 << 28;
6623#line 593
6624 *((upf_t *)__cil_tmp62) = (upf_t )__cil_tmp63;
6625#line 595
6626 __cil_tmp64 = (unsigned long )pdev;
6627#line 595
6628 __cil_tmp65 = __cil_tmp64 + 16;
6629#line 595
6630 __cil_tmp66 = (struct device *)__cil_tmp65;
6631#line 595
6632 __cil_tmp67 = (void *)port;
6633#line 595
6634 dev_set_drvdata(__cil_tmp66, __cil_tmp67);
6635#line 597
6636 uart_add_one_port(& altera_uart_driver, port);
6637 }
6638#line 599
6639 return (0);
6640}
6641}
6642#line 602
6643static int altera_uart_remove(struct platform_device *pdev ) __attribute__((__section__(".devexit.text"),
6644__no_instrument_function__)) ;
6645#line 602 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6646static int altera_uart_remove(struct platform_device *pdev )
6647{ struct uart_port *port ;
6648 void *tmp___7 ;
6649 unsigned long __cil_tmp4 ;
6650 unsigned long __cil_tmp5 ;
6651 struct device *__cil_tmp6 ;
6652 struct device const *__cil_tmp7 ;
6653 unsigned long __cil_tmp8 ;
6654 unsigned long __cil_tmp9 ;
6655 struct device *__cil_tmp10 ;
6656 void *__cil_tmp11 ;
6657 unsigned long __cil_tmp12 ;
6658 unsigned long __cil_tmp13 ;
6659
6660 {
6661 {
6662#line 604
6663 __cil_tmp4 = (unsigned long )pdev;
6664#line 604
6665 __cil_tmp5 = __cil_tmp4 + 16;
6666#line 604
6667 __cil_tmp6 = (struct device *)__cil_tmp5;
6668#line 604
6669 __cil_tmp7 = (struct device const *)__cil_tmp6;
6670#line 604
6671 tmp___7 = dev_get_drvdata(__cil_tmp7);
6672#line 604
6673 port = (struct uart_port *)tmp___7;
6674 }
6675#line 606
6676 if (port) {
6677 {
6678#line 607
6679 uart_remove_one_port(& altera_uart_driver, port);
6680#line 608
6681 __cil_tmp8 = (unsigned long )pdev;
6682#line 608
6683 __cil_tmp9 = __cil_tmp8 + 16;
6684#line 608
6685 __cil_tmp10 = (struct device *)__cil_tmp9;
6686#line 608
6687 __cil_tmp11 = (void *)0;
6688#line 608
6689 dev_set_drvdata(__cil_tmp10, __cil_tmp11);
6690#line 609
6691 __cil_tmp12 = (unsigned long )port;
6692#line 609
6693 __cil_tmp13 = __cil_tmp12 + 224;
6694#line 609
6695 *((resource_size_t *)__cil_tmp13) = (resource_size_t )0;
6696 }
6697 } else {
6698
6699 }
6700#line 612
6701 return (0);
6702}
6703}
6704#line 623 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6705static struct platform_driver altera_uart_platform_driver = {& altera_uart_probe, & altera_uart_remove, (void (*)(struct platform_device * ))0,
6706 (int (*)(struct platform_device * , pm_message_t state ))0, (int (*)(struct platform_device * ))0,
6707 {"altera_uart", (struct bus_type *)0, & __this_module, (char const *)0, (_Bool)0,
6708 (struct of_device_id const *)((void *)0), (int (*)(struct device *dev ))0,
6709 (int (*)(struct device *dev ))0, (void (*)(struct device *dev ))0, (int (*)(struct device *dev ,
6710 pm_message_t state ))0,
6711 (int (*)(struct device *dev ))0, (struct attribute_group const **)0, (struct dev_pm_ops const *)0,
6712 (struct driver_private *)0}, (struct platform_device_id const *)0};
6713#line 633
6714static int altera_uart_init(void) __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
6715#line 633 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6716static int altera_uart_init(void)
6717{ int rc ;
6718
6719 {
6720 {
6721#line 637
6722 rc = uart_register_driver(& altera_uart_driver);
6723 }
6724#line 638
6725 if (rc) {
6726#line 639
6727 return (rc);
6728 } else {
6729
6730 }
6731 {
6732#line 640
6733 rc = platform_driver_register(& altera_uart_platform_driver);
6734 }
6735#line 641
6736 if (rc) {
6737 {
6738#line 642
6739 uart_unregister_driver(& altera_uart_driver);
6740 }
6741#line 643
6742 return (rc);
6743 } else {
6744
6745 }
6746#line 645
6747 return (0);
6748}
6749}
6750#line 648
6751static void altera_uart_exit(void) __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
6752#line 648 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6753static void altera_uart_exit(void)
6754{
6755
6756 {
6757 {
6758#line 650
6759 platform_driver_unregister(& altera_uart_platform_driver);
6760#line 651
6761 uart_unregister_driver(& altera_uart_driver);
6762 }
6763#line 652
6764 return;
6765}
6766}
6767#line 654 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6768int init_module(void)
6769{ int tmp___7 ;
6770
6771 {
6772 {
6773#line 654
6774 tmp___7 = altera_uart_init();
6775 }
6776#line 654
6777 return (tmp___7);
6778}
6779}
6780#line 655 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6781void cleanup_module(void)
6782{
6783
6784 {
6785 {
6786#line 655
6787 altera_uart_exit();
6788 }
6789#line 655
6790 return;
6791}
6792}
6793#line 657 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6794static char const __mod_description657[31] __attribute__((__used__, __unused__,
6795__section__(".modinfo"), __aligned__(1))) =
6796#line 657
6797 { (char const )'d', (char const )'e', (char const )'s', (char const )'c',
6798 (char const )'r', (char const )'i', (char const )'p', (char const )'t',
6799 (char const )'i', (char const )'o', (char const )'n', (char const )'=',
6800 (char const )'A', (char const )'l', (char const )'t', (char const )'e',
6801 (char const )'r', (char const )'a', (char const )' ', (char const )'U',
6802 (char const )'A', (char const )'R', (char const )'T', (char const )' ',
6803 (char const )'d', (char const )'r', (char const )'i', (char const )'v',
6804 (char const )'e', (char const )'r', (char const )'\000'};
6805#line 658 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6806static char const __mod_author658[42] __attribute__((__used__, __unused__, __section__(".modinfo"),
6807__aligned__(1))) =
6808#line 658
6809 { (char const )'a', (char const )'u', (char const )'t', (char const )'h',
6810 (char const )'o', (char const )'r', (char const )'=', (char const )'T',
6811 (char const )'h', (char const )'o', (char const )'m', (char const )'a',
6812 (char const )'s', (char const )' ', (char const )'C', (char const )'h',
6813 (char const )'o', (char const )'u', (char const )' ', (char const )'<',
6814 (char const )'t', (char const )'h', (char const )'o', (char const )'m',
6815 (char const )'a', (char const )'s', (char const )'@', (char const )'w',
6816 (char const )'y', (char const )'t', (char const )'r', (char const )'o',
6817 (char const )'n', (char const )'.', (char const )'c', (char const )'o',
6818 (char const )'m', (char const )'.', (char const )'t', (char const )'w',
6819 (char const )'>', (char const )'\000'};
6820#line 659 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6821static char const __mod_license659[12] __attribute__((__used__, __unused__, __section__(".modinfo"),
6822__aligned__(1))) =
6823#line 659
6824 { (char const )'l', (char const )'i', (char const )'c', (char const )'e',
6825 (char const )'n', (char const )'s', (char const )'e', (char const )'=',
6826 (char const )'G', (char const )'P', (char const )'L', (char const )'\000'};
6827#line 660 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6828static char const __mod_alias660[27] __attribute__((__used__, __unused__, __section__(".modinfo"),
6829__aligned__(1))) =
6830#line 660
6831 { (char const )'a', (char const )'l', (char const )'i', (char const )'a',
6832 (char const )'s', (char const )'=', (char const )'p', (char const )'l',
6833 (char const )'a', (char const )'t', (char const )'f', (char const )'o',
6834 (char const )'r', (char const )'m', (char const )':', (char const )'a',
6835 (char const )'l', (char const )'t', (char const )'e', (char const )'r',
6836 (char const )'a', (char const )'_', (char const )'u', (char const )'a',
6837 (char const )'r', (char const )'t', (char const )'\000'};
6838#line 661 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6839static char const __mod_alias661[23] __attribute__((__used__, __unused__, __section__(".modinfo"),
6840__aligned__(1))) =
6841#line 661
6842 { (char const )'a', (char const )'l', (char const )'i', (char const )'a',
6843 (char const )'s', (char const )'=', (char const )'c', (char const )'h',
6844 (char const )'a', (char const )'r', (char const )'-', (char const )'m',
6845 (char const )'a', (char const )'j', (char const )'o', (char const )'r',
6846 (char const )'-', (char const )'2', (char const )'0', (char const )'4',
6847 (char const )'-', (char const )'*', (char const )'\000'};
6848#line 679
6849void ldv_check_final_state(void) ;
6850#line 682
6851extern void ldv_check_return_value(int res ) ;
6852#line 685
6853extern void ldv_initialize(void) ;
6854#line 688
6855extern int __VERIFIER_nondet_int(void) ;
6856#line 691 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6857int LDV_IN_INTERRUPT ;
6858#line 1862 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6859static int res_altera_uart_probe_30 ;
6860#line 694 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
6861void main(void)
6862{ struct uart_port *var_group1 ;
6863 unsigned int var_altera_uart_set_mctrl_4_p1 ;
6864 int var_altera_uart_break_ctl_8_p1 ;
6865 struct ktermios *var_group2 ;
6866 struct ktermios *var_altera_uart_set_termios_10_p2 ;
6867 int var_altera_uart_config_port_15_p1 ;
6868 struct serial_struct *var_group3 ;
6869 unsigned char var_altera_uart_poll_put_char_23_p1 ;
6870 struct platform_device *var_group5 ;
6871 int var_altera_uart_interrupt_13_p0 ;
6872 void *var_altera_uart_interrupt_13_p1 ;
6873 int tmp___7 ;
6874 int ldv_s_altera_uart_platform_driver_platform_driver ;
6875 int tmp___8 ;
6876 int tmp___9 ;
6877 int __cil_tmp16 ;
6878
6879 {
6880 {
6881#line 1934
6882 LDV_IN_INTERRUPT = 1;
6883#line 1943
6884 ldv_initialize();
6885#line 1999
6886 tmp___7 = altera_uart_init();
6887 }
6888#line 1999
6889 if (tmp___7) {
6890#line 2000
6891 goto ldv_final;
6892 } else {
6893
6894 }
6895#line 2005
6896 ldv_s_altera_uart_platform_driver_platform_driver = 0;
6897 {
6898#line 2010
6899 while (1) {
6900 while_continue: ;
6901 {
6902#line 2010
6903 tmp___9 = __VERIFIER_nondet_int();
6904 }
6905#line 2010
6906 if (tmp___9) {
6907
6908 } else {
6909 {
6910#line 2010
6911 __cil_tmp16 = ldv_s_altera_uart_platform_driver_platform_driver == 0;
6912#line 2010
6913 if (! __cil_tmp16) {
6914
6915 } else {
6916#line 2010
6917 goto while_break;
6918 }
6919 }
6920 }
6921 {
6922#line 2014
6923 tmp___8 = __VERIFIER_nondet_int();
6924 }
6925#line 2016
6926 if (tmp___8 == 0) {
6927#line 2016
6928 goto case_0;
6929 } else
6930#line 2084
6931 if (tmp___8 == 1) {
6932#line 2084
6933 goto case_1;
6934 } else
6935#line 2152
6936 if (tmp___8 == 2) {
6937#line 2152
6938 goto case_2;
6939 } else
6940#line 2220
6941 if (tmp___8 == 3) {
6942#line 2220
6943 goto case_3;
6944 } else
6945#line 2288
6946 if (tmp___8 == 4) {
6947#line 2288
6948 goto case_4;
6949 } else
6950#line 2356
6951 if (tmp___8 == 5) {
6952#line 2356
6953 goto case_5;
6954 } else
6955#line 2424
6956 if (tmp___8 == 6) {
6957#line 2424
6958 goto case_6;
6959 } else
6960#line 2492
6961 if (tmp___8 == 7) {
6962#line 2492
6963 goto case_7;
6964 } else
6965#line 2560
6966 if (tmp___8 == 8) {
6967#line 2560
6968 goto case_8;
6969 } else
6970#line 2628
6971 if (tmp___8 == 9) {
6972#line 2628
6973 goto case_9;
6974 } else
6975#line 2696
6976 if (tmp___8 == 10) {
6977#line 2696
6978 goto case_10;
6979 } else
6980#line 2764
6981 if (tmp___8 == 11) {
6982#line 2764
6983 goto case_11;
6984 } else
6985#line 2832
6986 if (tmp___8 == 12) {
6987#line 2832
6988 goto case_12;
6989 } else
6990#line 2900
6991 if (tmp___8 == 13) {
6992#line 2900
6993 goto case_13;
6994 } else
6995#line 2968
6996 if (tmp___8 == 14) {
6997#line 2968
6998 goto case_14;
6999 } else
7000#line 3036
7001 if (tmp___8 == 15) {
7002#line 3036
7003 goto case_15;
7004 } else
7005#line 3104
7006 if (tmp___8 == 16) {
7007#line 3104
7008 goto case_16;
7009 } else
7010#line 3172
7011 if (tmp___8 == 17) {
7012#line 3172
7013 goto case_17;
7014 } else
7015#line 3240
7016 if (tmp___8 == 18) {
7017#line 3240
7018 goto case_18;
7019 } else
7020#line 3308
7021 if (tmp___8 == 19) {
7022#line 3308
7023 goto case_19;
7024 } else
7025#line 3376
7026 if (tmp___8 == 20) {
7027#line 3376
7028 goto case_20;
7029 } else
7030#line 3447
7031 if (tmp___8 == 21) {
7032#line 3447
7033 goto case_21;
7034 } else {
7035 {
7036#line 3515
7037 goto switch_default;
7038#line 2014
7039 if (0) {
7040 case_0:
7041 {
7042#line 2060
7043 altera_uart_tx_empty(var_group1);
7044 }
7045#line 2083
7046 goto switch_break;
7047 case_1:
7048 {
7049#line 2128
7050 altera_uart_get_mctrl(var_group1);
7051 }
7052#line 2151
7053 goto switch_break;
7054 case_2:
7055 {
7056#line 2196
7057 altera_uart_set_mctrl(var_group1, var_altera_uart_set_mctrl_4_p1);
7058 }
7059#line 2219
7060 goto switch_break;
7061 case_3:
7062 {
7063#line 2264
7064 altera_uart_start_tx(var_group1);
7065 }
7066#line 2287
7067 goto switch_break;
7068 case_4:
7069 {
7070#line 2332
7071 altera_uart_stop_tx(var_group1);
7072 }
7073#line 2355
7074 goto switch_break;
7075 case_5:
7076 {
7077#line 2400
7078 altera_uart_stop_rx(var_group1);
7079 }
7080#line 2423
7081 goto switch_break;
7082 case_6:
7083 {
7084#line 2468
7085 altera_uart_enable_ms(var_group1);
7086 }
7087#line 2491
7088 goto switch_break;
7089 case_7:
7090 {
7091#line 2536
7092 altera_uart_break_ctl(var_group1, var_altera_uart_break_ctl_8_p1);
7093 }
7094#line 2559
7095 goto switch_break;
7096 case_8:
7097 {
7098#line 2604
7099 altera_uart_startup(var_group1);
7100 }
7101#line 2627
7102 goto switch_break;
7103 case_9:
7104 {
7105#line 2672
7106 altera_uart_shutdown(var_group1);
7107 }
7108#line 2695
7109 goto switch_break;
7110 case_10:
7111 {
7112#line 2740
7113 altera_uart_set_termios(var_group1, var_group2, var_altera_uart_set_termios_10_p2);
7114 }
7115#line 2763
7116 goto switch_break;
7117 case_11:
7118 {
7119#line 2808
7120 altera_uart_type(var_group1);
7121 }
7122#line 2831
7123 goto switch_break;
7124 case_12:
7125 {
7126#line 2876
7127 altera_uart_request_port(var_group1);
7128 }
7129#line 2899
7130 goto switch_break;
7131 case_13:
7132 {
7133#line 2944
7134 altera_uart_release_port(var_group1);
7135 }
7136#line 2967
7137 goto switch_break;
7138 case_14:
7139 {
7140#line 3012
7141 altera_uart_config_port(var_group1, var_altera_uart_config_port_15_p1);
7142 }
7143#line 3035
7144 goto switch_break;
7145 case_15:
7146 {
7147#line 3080
7148 altera_uart_verify_port(var_group1, var_group3);
7149 }
7150#line 3103
7151 goto switch_break;
7152 case_16:
7153 {
7154#line 3149
7155 altera_uart_poll_get_char(var_group1);
7156 }
7157#line 3171
7158 goto switch_break;
7159 case_17:
7160 {
7161#line 3217
7162 altera_uart_poll_put_char(var_group1, var_altera_uart_poll_put_char_23_p1);
7163 }
7164#line 3239
7165 goto switch_break;
7166 case_18: ;
7167#line 3307
7168 goto switch_break;
7169 case_19: ;
7170#line 3375
7171 goto switch_break;
7172 case_20:
7173#line 3379
7174 if (ldv_s_altera_uart_platform_driver_platform_driver == 0) {
7175 {
7176#line 3432
7177 res_altera_uart_probe_30 = altera_uart_probe(var_group5);
7178#line 3433
7179 ldv_check_return_value(res_altera_uart_probe_30);
7180 }
7181#line 3434
7182 if (res_altera_uart_probe_30) {
7183#line 3435
7184 goto ldv_module_exit;
7185 } else {
7186
7187 }
7188#line 3440
7189 ldv_s_altera_uart_platform_driver_platform_driver = 0;
7190 } else {
7191
7192 }
7193#line 3446
7194 goto switch_break;
7195 case_21:
7196 {
7197#line 3450
7198 LDV_IN_INTERRUPT = 2;
7199#line 3491
7200 altera_uart_interrupt(var_altera_uart_interrupt_13_p0, var_altera_uart_interrupt_13_p1);
7201#line 3508
7202 LDV_IN_INTERRUPT = 1;
7203 }
7204#line 3514
7205 goto switch_break;
7206 switch_default:
7207#line 3515
7208 goto switch_break;
7209 } else {
7210 switch_break: ;
7211 }
7212 }
7213 }
7214 }
7215 while_break: ;
7216 }
7217 ldv_module_exit:
7218 {
7219#line 3577
7220 altera_uart_exit();
7221 }
7222 ldv_final:
7223 {
7224#line 3580
7225 ldv_check_final_state();
7226 }
7227#line 3583
7228 return;
7229}
7230}
7231#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
7232void ldv_blast_assert(void)
7233{
7234
7235 {
7236 ERROR:
7237#line 6
7238 goto ERROR;
7239}
7240}
7241#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
7242extern int __VERIFIER_nondet_int(void) ;
7243#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7244int ldv_mutex = 1;
7245#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7246int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock )
7247{ int nondetermined ;
7248
7249 {
7250#line 29
7251 if (ldv_mutex == 1) {
7252
7253 } else {
7254 {
7255#line 29
7256 ldv_blast_assert();
7257 }
7258 }
7259 {
7260#line 32
7261 nondetermined = __VERIFIER_nondet_int();
7262 }
7263#line 35
7264 if (nondetermined) {
7265#line 38
7266 ldv_mutex = 2;
7267#line 40
7268 return (0);
7269 } else {
7270#line 45
7271 return (-4);
7272 }
7273}
7274}
7275#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7276int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock )
7277{ int nondetermined ;
7278
7279 {
7280#line 57
7281 if (ldv_mutex == 1) {
7282
7283 } else {
7284 {
7285#line 57
7286 ldv_blast_assert();
7287 }
7288 }
7289 {
7290#line 60
7291 nondetermined = __VERIFIER_nondet_int();
7292 }
7293#line 63
7294 if (nondetermined) {
7295#line 66
7296 ldv_mutex = 2;
7297#line 68
7298 return (0);
7299 } else {
7300#line 73
7301 return (-4);
7302 }
7303}
7304}
7305#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7306int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock )
7307{ int atomic_value_after_dec ;
7308
7309 {
7310#line 83
7311 if (ldv_mutex == 1) {
7312
7313 } else {
7314 {
7315#line 83
7316 ldv_blast_assert();
7317 }
7318 }
7319 {
7320#line 86
7321 atomic_value_after_dec = __VERIFIER_nondet_int();
7322 }
7323#line 89
7324 if (atomic_value_after_dec == 0) {
7325#line 92
7326 ldv_mutex = 2;
7327#line 94
7328 return (1);
7329 } else {
7330
7331 }
7332#line 98
7333 return (0);
7334}
7335}
7336#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7337void mutex_lock(struct mutex *lock )
7338{
7339
7340 {
7341#line 108
7342 if (ldv_mutex == 1) {
7343
7344 } else {
7345 {
7346#line 108
7347 ldv_blast_assert();
7348 }
7349 }
7350#line 110
7351 ldv_mutex = 2;
7352#line 111
7353 return;
7354}
7355}
7356#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7357int mutex_trylock(struct mutex *lock )
7358{ int nondetermined ;
7359
7360 {
7361#line 121
7362 if (ldv_mutex == 1) {
7363
7364 } else {
7365 {
7366#line 121
7367 ldv_blast_assert();
7368 }
7369 }
7370 {
7371#line 124
7372 nondetermined = __VERIFIER_nondet_int();
7373 }
7374#line 127
7375 if (nondetermined) {
7376#line 130
7377 ldv_mutex = 2;
7378#line 132
7379 return (1);
7380 } else {
7381#line 137
7382 return (0);
7383 }
7384}
7385}
7386#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7387void mutex_unlock(struct mutex *lock )
7388{
7389
7390 {
7391#line 147
7392 if (ldv_mutex == 2) {
7393
7394 } else {
7395 {
7396#line 147
7397 ldv_blast_assert();
7398 }
7399 }
7400#line 149
7401 ldv_mutex = 1;
7402#line 150
7403 return;
7404}
7405}
7406#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7407void ldv_check_final_state(void)
7408{
7409
7410 {
7411#line 156
7412 if (ldv_mutex == 1) {
7413
7414 } else {
7415 {
7416#line 156
7417 ldv_blast_assert();
7418 }
7419 }
7420#line 157
7421 return;
7422}
7423}
7424#line 3592 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16486/dscv_tempdir/dscv/ri/32_1/drivers/tty/serial/altera_uart.c.common.c"
7425long s__builtin_expect(long val , long res )
7426{
7427
7428 {
7429#line 3593
7430 return (val);
7431}
7432}