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