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