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