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