1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 20 "include/asm-generic/int-ll64.h"
7typedef unsigned char __u8;
8#line 22 "include/asm-generic/int-ll64.h"
9typedef short __s16;
10#line 23 "include/asm-generic/int-ll64.h"
11typedef unsigned short __u16;
12#line 25 "include/asm-generic/int-ll64.h"
13typedef int __s32;
14#line 26 "include/asm-generic/int-ll64.h"
15typedef unsigned int __u32;
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 52 "include/asm-generic/posix_types.h"
37typedef unsigned int __kernel_uid32_t;
38#line 53 "include/asm-generic/posix_types.h"
39typedef unsigned int __kernel_gid32_t;
40#line 75 "include/asm-generic/posix_types.h"
41typedef __kernel_ulong_t __kernel_size_t;
42#line 76 "include/asm-generic/posix_types.h"
43typedef __kernel_long_t __kernel_ssize_t;
44#line 91 "include/asm-generic/posix_types.h"
45typedef long long __kernel_loff_t;
46#line 92 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_time_t;
48#line 21 "include/linux/types.h"
49typedef __u32 __kernel_dev_t;
50#line 24 "include/linux/types.h"
51typedef __kernel_dev_t dev_t;
52#line 27 "include/linux/types.h"
53typedef unsigned short umode_t;
54#line 38 "include/linux/types.h"
55typedef _Bool bool;
56#line 40 "include/linux/types.h"
57typedef __kernel_uid32_t uid_t;
58#line 41 "include/linux/types.h"
59typedef __kernel_gid32_t gid_t;
60#line 54 "include/linux/types.h"
61typedef __kernel_loff_t loff_t;
62#line 63 "include/linux/types.h"
63typedef __kernel_size_t size_t;
64#line 68 "include/linux/types.h"
65typedef __kernel_ssize_t ssize_t;
66#line 78 "include/linux/types.h"
67typedef __kernel_time_t time_t;
68#line 142 "include/linux/types.h"
69typedef unsigned long sector_t;
70#line 143 "include/linux/types.h"
71typedef unsigned long blkcnt_t;
72#line 202 "include/linux/types.h"
73typedef unsigned int gfp_t;
74#line 203 "include/linux/types.h"
75typedef unsigned int fmode_t;
76#line 206 "include/linux/types.h"
77typedef u64 phys_addr_t;
78#line 211 "include/linux/types.h"
79typedef phys_addr_t resource_size_t;
80#line 221 "include/linux/types.h"
81struct __anonstruct_atomic_t_6 {
82 int counter ;
83};
84#line 221 "include/linux/types.h"
85typedef struct __anonstruct_atomic_t_6 atomic_t;
86#line 226 "include/linux/types.h"
87struct __anonstruct_atomic64_t_7 {
88 long counter ;
89};
90#line 226 "include/linux/types.h"
91typedef struct __anonstruct_atomic64_t_7 atomic64_t;
92#line 227 "include/linux/types.h"
93struct list_head {
94 struct list_head *next ;
95 struct list_head *prev ;
96};
97#line 232
98struct hlist_node;
99#line 232 "include/linux/types.h"
100struct hlist_head {
101 struct hlist_node *first ;
102};
103#line 236 "include/linux/types.h"
104struct hlist_node {
105 struct hlist_node *next ;
106 struct hlist_node **pprev ;
107};
108#line 247 "include/linux/types.h"
109struct rcu_head {
110 struct rcu_head *next ;
111 void (*func)(struct rcu_head * ) ;
112};
113#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
114struct module;
115#line 55
116struct module;
117#line 146 "include/linux/init.h"
118typedef void (*ctor_fn_t)(void);
119#line 46 "include/linux/dynamic_debug.h"
120struct device;
121#line 46
122struct device;
123#line 58
124struct pt_regs;
125#line 58
126struct pt_regs;
127#line 348 "include/linux/kernel.h"
128struct pid;
129#line 348
130struct pid;
131#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
132struct timespec;
133#line 112
134struct timespec;
135#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
136struct page;
137#line 58
138struct page;
139#line 26 "include/asm-generic/getorder.h"
140struct task_struct;
141#line 26
142struct task_struct;
143#line 268 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/segment.h"
144struct pt_regs {
145 unsigned long r15 ;
146 unsigned long r14 ;
147 unsigned long r13 ;
148 unsigned long r12 ;
149 unsigned long bp ;
150 unsigned long bx ;
151 unsigned long r11 ;
152 unsigned long r10 ;
153 unsigned long r9 ;
154 unsigned long r8 ;
155 unsigned long ax ;
156 unsigned long cx ;
157 unsigned long dx ;
158 unsigned long si ;
159 unsigned long di ;
160 unsigned long orig_ax ;
161 unsigned long ip ;
162 unsigned long cs ;
163 unsigned long flags ;
164 unsigned long sp ;
165 unsigned long ss ;
166};
167#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
168struct __anonstruct_ldv_2180_13 {
169 unsigned int a ;
170 unsigned int b ;
171};
172#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
173struct __anonstruct_ldv_2195_14 {
174 u16 limit0 ;
175 u16 base0 ;
176 unsigned char base1 ;
177 unsigned char type : 4 ;
178 unsigned char s : 1 ;
179 unsigned char dpl : 2 ;
180 unsigned char p : 1 ;
181 unsigned char limit : 4 ;
182 unsigned char avl : 1 ;
183 unsigned char l : 1 ;
184 unsigned char d : 1 ;
185 unsigned char g : 1 ;
186 unsigned char base2 ;
187};
188#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
189union __anonunion_ldv_2196_12 {
190 struct __anonstruct_ldv_2180_13 ldv_2180 ;
191 struct __anonstruct_ldv_2195_14 ldv_2195 ;
192};
193#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
194struct desc_struct {
195 union __anonunion_ldv_2196_12 ldv_2196 ;
196};
197#line 43 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
198struct gate_struct64 {
199 u16 offset_low ;
200 u16 segment ;
201 unsigned char ist : 3 ;
202 unsigned char zero0 : 5 ;
203 unsigned char type : 5 ;
204 unsigned char dpl : 2 ;
205 unsigned char p : 1 ;
206 u16 offset_middle ;
207 u32 offset_high ;
208 u32 zero1 ;
209};
210#line 81 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
211typedef struct gate_struct64 gate_desc;
212#line 84 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
213struct desc_ptr {
214 unsigned short size ;
215 unsigned long address ;
216};
217#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
218struct file;
219#line 290
220struct file;
221#line 305
222struct seq_file;
223#line 305
224struct seq_file;
225#line 337
226struct thread_struct;
227#line 337
228struct thread_struct;
229#line 338
230struct tss_struct;
231#line 338
232struct tss_struct;
233#line 101 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
234struct pv_cpu_ops {
235 unsigned long (*get_debugreg)(int ) ;
236 void (*set_debugreg)(int , unsigned long ) ;
237 void (*clts)(void) ;
238 unsigned long (*read_cr0)(void) ;
239 void (*write_cr0)(unsigned long ) ;
240 unsigned long (*read_cr4_safe)(void) ;
241 unsigned long (*read_cr4)(void) ;
242 void (*write_cr4)(unsigned long ) ;
243 unsigned long (*read_cr8)(void) ;
244 void (*write_cr8)(unsigned long ) ;
245 void (*load_tr_desc)(void) ;
246 void (*load_gdt)(struct desc_ptr const * ) ;
247 void (*load_idt)(struct desc_ptr const * ) ;
248 void (*store_gdt)(struct desc_ptr * ) ;
249 void (*store_idt)(struct desc_ptr * ) ;
250 void (*set_ldt)(void const * , unsigned int ) ;
251 unsigned long (*store_tr)(void) ;
252 void (*load_tls)(struct thread_struct * , unsigned int ) ;
253 void (*load_gs_index)(unsigned int ) ;
254 void (*write_ldt_entry)(struct desc_struct * , int , void const * ) ;
255 void (*write_gdt_entry)(struct desc_struct * , int , void const * , int ) ;
256 void (*write_idt_entry)(gate_desc * , int , gate_desc const * ) ;
257 void (*alloc_ldt)(struct desc_struct * , unsigned int ) ;
258 void (*free_ldt)(struct desc_struct * , unsigned int ) ;
259 void (*load_sp0)(struct tss_struct * , struct thread_struct * ) ;
260 void (*set_iopl_mask)(unsigned int ) ;
261 void (*wbinvd)(void) ;
262 void (*io_delay)(void) ;
263 void (*cpuid)(unsigned int * , unsigned int * , unsigned int * , unsigned int * ) ;
264 u64 (*read_msr)(unsigned int , int * ) ;
265 int (*rdmsr_regs)(u32 * ) ;
266 int (*write_msr)(unsigned int , unsigned int , unsigned int ) ;
267 int (*wrmsr_regs)(u32 * ) ;
268 u64 (*read_tsc)(void) ;
269 u64 (*read_pmc)(int ) ;
270 unsigned long long (*read_tscp)(unsigned int * ) ;
271 void (*irq_enable_sysexit)(void) ;
272 void (*usergs_sysret64)(void) ;
273 void (*usergs_sysret32)(void) ;
274 void (*iret)(void) ;
275 void (*swapgs)(void) ;
276 void (*start_context_switch)(struct task_struct * ) ;
277 void (*end_context_switch)(struct task_struct * ) ;
278};
279#line 327
280struct arch_spinlock;
281#line 327
282struct arch_spinlock;
283#line 300 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
284struct kernel_vm86_regs {
285 struct pt_regs pt ;
286 unsigned short es ;
287 unsigned short __esh ;
288 unsigned short ds ;
289 unsigned short __dsh ;
290 unsigned short fs ;
291 unsigned short __fsh ;
292 unsigned short gs ;
293 unsigned short __gsh ;
294};
295#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
296union __anonunion_ldv_2824_19 {
297 struct pt_regs *regs ;
298 struct kernel_vm86_regs *vm86 ;
299};
300#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
301struct math_emu_info {
302 long ___orig_eip ;
303 union __anonunion_ldv_2824_19 ldv_2824 ;
304};
305#line 306 "include/linux/bitmap.h"
306struct bug_entry {
307 int bug_addr_disp ;
308 int file_disp ;
309 unsigned short line ;
310 unsigned short flags ;
311};
312#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
313struct static_key;
314#line 234
315struct static_key;
316#line 199 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
317struct x86_hw_tss {
318 u32 reserved1 ;
319 u64 sp0 ;
320 u64 sp1 ;
321 u64 sp2 ;
322 u64 reserved2 ;
323 u64 ist[7U] ;
324 u32 reserved3 ;
325 u32 reserved4 ;
326 u16 reserved5 ;
327 u16 io_bitmap_base ;
328};
329#line 246 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
330struct tss_struct {
331 struct x86_hw_tss x86_tss ;
332 unsigned long io_bitmap[1025U] ;
333 unsigned long stack[64U] ;
334};
335#line 287 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
336struct i387_fsave_struct {
337 u32 cwd ;
338 u32 swd ;
339 u32 twd ;
340 u32 fip ;
341 u32 fcs ;
342 u32 foo ;
343 u32 fos ;
344 u32 st_space[20U] ;
345 u32 status ;
346};
347#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
348struct __anonstruct_ldv_5180_24 {
349 u64 rip ;
350 u64 rdp ;
351};
352#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
353struct __anonstruct_ldv_5186_25 {
354 u32 fip ;
355 u32 fcs ;
356 u32 foo ;
357 u32 fos ;
358};
359#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
360union __anonunion_ldv_5187_23 {
361 struct __anonstruct_ldv_5180_24 ldv_5180 ;
362 struct __anonstruct_ldv_5186_25 ldv_5186 ;
363};
364#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
365union __anonunion_ldv_5196_26 {
366 u32 padding1[12U] ;
367 u32 sw_reserved[12U] ;
368};
369#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
370struct i387_fxsave_struct {
371 u16 cwd ;
372 u16 swd ;
373 u16 twd ;
374 u16 fop ;
375 union __anonunion_ldv_5187_23 ldv_5187 ;
376 u32 mxcsr ;
377 u32 mxcsr_mask ;
378 u32 st_space[32U] ;
379 u32 xmm_space[64U] ;
380 u32 padding[12U] ;
381 union __anonunion_ldv_5196_26 ldv_5196 ;
382};
383#line 339 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
384struct i387_soft_struct {
385 u32 cwd ;
386 u32 swd ;
387 u32 twd ;
388 u32 fip ;
389 u32 fcs ;
390 u32 foo ;
391 u32 fos ;
392 u32 st_space[20U] ;
393 u8 ftop ;
394 u8 changed ;
395 u8 lookahead ;
396 u8 no_update ;
397 u8 rm ;
398 u8 alimit ;
399 struct math_emu_info *info ;
400 u32 entry_eip ;
401};
402#line 360 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
403struct ymmh_struct {
404 u32 ymmh_space[64U] ;
405};
406#line 365 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
407struct xsave_hdr_struct {
408 u64 xstate_bv ;
409 u64 reserved1[2U] ;
410 u64 reserved2[5U] ;
411};
412#line 371 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
413struct xsave_struct {
414 struct i387_fxsave_struct i387 ;
415 struct xsave_hdr_struct xsave_hdr ;
416 struct ymmh_struct ymmh ;
417};
418#line 377 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
419union thread_xstate {
420 struct i387_fsave_struct fsave ;
421 struct i387_fxsave_struct fxsave ;
422 struct i387_soft_struct soft ;
423 struct xsave_struct xsave ;
424};
425#line 385 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
426struct fpu {
427 unsigned int last_cpu ;
428 unsigned int has_fpu ;
429 union thread_xstate *state ;
430};
431#line 433
432struct kmem_cache;
433#line 434
434struct perf_event;
435#line 434
436struct perf_event;
437#line 435 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
438struct thread_struct {
439 struct desc_struct tls_array[3U] ;
440 unsigned long sp0 ;
441 unsigned long sp ;
442 unsigned long usersp ;
443 unsigned short es ;
444 unsigned short ds ;
445 unsigned short fsindex ;
446 unsigned short gsindex ;
447 unsigned long fs ;
448 unsigned long gs ;
449 struct perf_event *ptrace_bps[4U] ;
450 unsigned long debugreg6 ;
451 unsigned long ptrace_dr7 ;
452 unsigned long cr2 ;
453 unsigned long trap_nr ;
454 unsigned long error_code ;
455 struct fpu fpu ;
456 unsigned long *io_bitmap_ptr ;
457 unsigned long iopl ;
458 unsigned int io_bitmap_max ;
459};
460#line 23 "include/asm-generic/atomic-long.h"
461typedef atomic64_t atomic_long_t;
462#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
463typedef u16 __ticket_t;
464#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
465typedef u32 __ticketpair_t;
466#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
467struct __raw_tickets {
468 __ticket_t head ;
469 __ticket_t tail ;
470};
471#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
472union __anonunion_ldv_5907_29 {
473 __ticketpair_t head_tail ;
474 struct __raw_tickets tickets ;
475};
476#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
477struct arch_spinlock {
478 union __anonunion_ldv_5907_29 ldv_5907 ;
479};
480#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
481typedef struct arch_spinlock arch_spinlock_t;
482#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
483struct __anonstruct_ldv_5914_31 {
484 u32 read ;
485 s32 write ;
486};
487#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
488union __anonunion_arch_rwlock_t_30 {
489 s64 lock ;
490 struct __anonstruct_ldv_5914_31 ldv_5914 ;
491};
492#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
493typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
494#line 34
495struct lockdep_map;
496#line 34
497struct lockdep_map;
498#line 55 "include/linux/debug_locks.h"
499struct stack_trace {
500 unsigned int nr_entries ;
501 unsigned int max_entries ;
502 unsigned long *entries ;
503 int skip ;
504};
505#line 26 "include/linux/stacktrace.h"
506struct lockdep_subclass_key {
507 char __one_byte ;
508};
509#line 53 "include/linux/lockdep.h"
510struct lock_class_key {
511 struct lockdep_subclass_key subkeys[8U] ;
512};
513#line 59 "include/linux/lockdep.h"
514struct lock_class {
515 struct list_head hash_entry ;
516 struct list_head lock_entry ;
517 struct lockdep_subclass_key *key ;
518 unsigned int subclass ;
519 unsigned int dep_gen_id ;
520 unsigned long usage_mask ;
521 struct stack_trace usage_traces[13U] ;
522 struct list_head locks_after ;
523 struct list_head locks_before ;
524 unsigned int version ;
525 unsigned long ops ;
526 char const *name ;
527 int name_version ;
528 unsigned long contention_point[4U] ;
529 unsigned long contending_point[4U] ;
530};
531#line 144 "include/linux/lockdep.h"
532struct lockdep_map {
533 struct lock_class_key *key ;
534 struct lock_class *class_cache[2U] ;
535 char const *name ;
536 int cpu ;
537 unsigned long ip ;
538};
539#line 556 "include/linux/lockdep.h"
540struct raw_spinlock {
541 arch_spinlock_t raw_lock ;
542 unsigned int magic ;
543 unsigned int owner_cpu ;
544 void *owner ;
545 struct lockdep_map dep_map ;
546};
547#line 32 "include/linux/spinlock_types.h"
548typedef struct raw_spinlock raw_spinlock_t;
549#line 33 "include/linux/spinlock_types.h"
550struct __anonstruct_ldv_6122_33 {
551 u8 __padding[24U] ;
552 struct lockdep_map dep_map ;
553};
554#line 33 "include/linux/spinlock_types.h"
555union __anonunion_ldv_6123_32 {
556 struct raw_spinlock rlock ;
557 struct __anonstruct_ldv_6122_33 ldv_6122 ;
558};
559#line 33 "include/linux/spinlock_types.h"
560struct spinlock {
561 union __anonunion_ldv_6123_32 ldv_6123 ;
562};
563#line 76 "include/linux/spinlock_types.h"
564typedef struct spinlock spinlock_t;
565#line 23 "include/linux/rwlock_types.h"
566struct __anonstruct_rwlock_t_34 {
567 arch_rwlock_t raw_lock ;
568 unsigned int magic ;
569 unsigned int owner_cpu ;
570 void *owner ;
571 struct lockdep_map dep_map ;
572};
573#line 23 "include/linux/rwlock_types.h"
574typedef struct __anonstruct_rwlock_t_34 rwlock_t;
575#line 110 "include/linux/seqlock.h"
576struct seqcount {
577 unsigned int sequence ;
578};
579#line 121 "include/linux/seqlock.h"
580typedef struct seqcount seqcount_t;
581#line 254 "include/linux/seqlock.h"
582struct timespec {
583 __kernel_time_t tv_sec ;
584 long tv_nsec ;
585};
586#line 286 "include/linux/time.h"
587struct kstat {
588 u64 ino ;
589 dev_t dev ;
590 umode_t mode ;
591 unsigned int nlink ;
592 uid_t uid ;
593 gid_t gid ;
594 dev_t rdev ;
595 loff_t size ;
596 struct timespec atime ;
597 struct timespec mtime ;
598 struct timespec ctime ;
599 unsigned long blksize ;
600 unsigned long long blocks ;
601};
602#line 48 "include/linux/wait.h"
603struct __wait_queue_head {
604 spinlock_t lock ;
605 struct list_head task_list ;
606};
607#line 53 "include/linux/wait.h"
608typedef struct __wait_queue_head wait_queue_head_t;
609#line 670 "include/linux/mmzone.h"
610struct mutex {
611 atomic_t count ;
612 spinlock_t wait_lock ;
613 struct list_head wait_list ;
614 struct task_struct *owner ;
615 char const *name ;
616 void *magic ;
617 struct lockdep_map dep_map ;
618};
619#line 171 "include/linux/mutex.h"
620struct rw_semaphore;
621#line 171
622struct rw_semaphore;
623#line 172 "include/linux/mutex.h"
624struct rw_semaphore {
625 long count ;
626 raw_spinlock_t wait_lock ;
627 struct list_head wait_list ;
628 struct lockdep_map dep_map ;
629};
630#line 188 "include/linux/rcupdate.h"
631struct notifier_block;
632#line 188
633struct notifier_block;
634#line 239 "include/linux/srcu.h"
635struct notifier_block {
636 int (*notifier_call)(struct notifier_block * , unsigned long , void * ) ;
637 struct notifier_block *next ;
638 int priority ;
639};
640#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/e820.h"
641struct resource {
642 resource_size_t start ;
643 resource_size_t end ;
644 char const *name ;
645 unsigned long flags ;
646 struct resource *parent ;
647 struct resource *sibling ;
648 struct resource *child ;
649};
650#line 18 "include/asm-generic/pci_iomap.h"
651struct vm_area_struct;
652#line 18
653struct vm_area_struct;
654#line 37 "include/linux/kmod.h"
655struct cred;
656#line 37
657struct cred;
658#line 18 "include/linux/elf.h"
659typedef __u64 Elf64_Addr;
660#line 19 "include/linux/elf.h"
661typedef __u16 Elf64_Half;
662#line 23 "include/linux/elf.h"
663typedef __u32 Elf64_Word;
664#line 24 "include/linux/elf.h"
665typedef __u64 Elf64_Xword;
666#line 193 "include/linux/elf.h"
667struct elf64_sym {
668 Elf64_Word st_name ;
669 unsigned char st_info ;
670 unsigned char st_other ;
671 Elf64_Half st_shndx ;
672 Elf64_Addr st_value ;
673 Elf64_Xword st_size ;
674};
675#line 201 "include/linux/elf.h"
676typedef struct elf64_sym Elf64_Sym;
677#line 445
678struct sock;
679#line 445
680struct sock;
681#line 446
682struct kobject;
683#line 446
684struct kobject;
685#line 447
686enum kobj_ns_type {
687 KOBJ_NS_TYPE_NONE = 0,
688 KOBJ_NS_TYPE_NET = 1,
689 KOBJ_NS_TYPES = 2
690} ;
691#line 453 "include/linux/elf.h"
692struct kobj_ns_type_operations {
693 enum kobj_ns_type type ;
694 void *(*grab_current_ns)(void) ;
695 void const *(*netlink_ns)(struct sock * ) ;
696 void const *(*initial_ns)(void) ;
697 void (*drop_ns)(void * ) ;
698};
699#line 57 "include/linux/kobject_ns.h"
700struct attribute {
701 char const *name ;
702 umode_t mode ;
703 struct lock_class_key *key ;
704 struct lock_class_key skey ;
705};
706#line 98 "include/linux/sysfs.h"
707struct sysfs_ops {
708 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
709 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
710 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
711};
712#line 117
713struct sysfs_dirent;
714#line 117
715struct sysfs_dirent;
716#line 182 "include/linux/sysfs.h"
717struct kref {
718 atomic_t refcount ;
719};
720#line 49 "include/linux/kobject.h"
721struct kset;
722#line 49
723struct kobj_type;
724#line 49 "include/linux/kobject.h"
725struct kobject {
726 char const *name ;
727 struct list_head entry ;
728 struct kobject *parent ;
729 struct kset *kset ;
730 struct kobj_type *ktype ;
731 struct sysfs_dirent *sd ;
732 struct kref kref ;
733 unsigned char state_initialized : 1 ;
734 unsigned char state_in_sysfs : 1 ;
735 unsigned char state_add_uevent_sent : 1 ;
736 unsigned char state_remove_uevent_sent : 1 ;
737 unsigned char uevent_suppress : 1 ;
738};
739#line 107 "include/linux/kobject.h"
740struct kobj_type {
741 void (*release)(struct kobject * ) ;
742 struct sysfs_ops const *sysfs_ops ;
743 struct attribute **default_attrs ;
744 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
745 void const *(*namespace)(struct kobject * ) ;
746};
747#line 115 "include/linux/kobject.h"
748struct kobj_uevent_env {
749 char *envp[32U] ;
750 int envp_idx ;
751 char buf[2048U] ;
752 int buflen ;
753};
754#line 122 "include/linux/kobject.h"
755struct kset_uevent_ops {
756 int (* const filter)(struct kset * , struct kobject * ) ;
757 char const *(* const name)(struct kset * , struct kobject * ) ;
758 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
759};
760#line 139 "include/linux/kobject.h"
761struct kset {
762 struct list_head list ;
763 spinlock_t list_lock ;
764 struct kobject kobj ;
765 struct kset_uevent_ops const *uevent_ops ;
766};
767#line 215
768struct kernel_param;
769#line 215
770struct kernel_param;
771#line 216 "include/linux/kobject.h"
772struct kernel_param_ops {
773 int (*set)(char const * , struct kernel_param const * ) ;
774 int (*get)(char * , struct kernel_param const * ) ;
775 void (*free)(void * ) ;
776};
777#line 49 "include/linux/moduleparam.h"
778struct kparam_string;
779#line 49
780struct kparam_array;
781#line 49 "include/linux/moduleparam.h"
782union __anonunion_ldv_13363_134 {
783 void *arg ;
784 struct kparam_string const *str ;
785 struct kparam_array const *arr ;
786};
787#line 49 "include/linux/moduleparam.h"
788struct kernel_param {
789 char const *name ;
790 struct kernel_param_ops const *ops ;
791 u16 perm ;
792 s16 level ;
793 union __anonunion_ldv_13363_134 ldv_13363 ;
794};
795#line 61 "include/linux/moduleparam.h"
796struct kparam_string {
797 unsigned int maxlen ;
798 char *string ;
799};
800#line 67 "include/linux/moduleparam.h"
801struct kparam_array {
802 unsigned int max ;
803 unsigned int elemsize ;
804 unsigned int *num ;
805 struct kernel_param_ops const *ops ;
806 void *elem ;
807};
808#line 458 "include/linux/moduleparam.h"
809struct static_key {
810 atomic_t enabled ;
811};
812#line 225 "include/linux/jump_label.h"
813struct tracepoint;
814#line 225
815struct tracepoint;
816#line 226 "include/linux/jump_label.h"
817struct tracepoint_func {
818 void *func ;
819 void *data ;
820};
821#line 29 "include/linux/tracepoint.h"
822struct tracepoint {
823 char const *name ;
824 struct static_key key ;
825 void (*regfunc)(void) ;
826 void (*unregfunc)(void) ;
827 struct tracepoint_func *funcs ;
828};
829#line 86 "include/linux/tracepoint.h"
830struct kernel_symbol {
831 unsigned long value ;
832 char const *name ;
833};
834#line 27 "include/linux/export.h"
835struct mod_arch_specific {
836
837};
838#line 34 "include/linux/module.h"
839struct module_param_attrs;
840#line 34 "include/linux/module.h"
841struct module_kobject {
842 struct kobject kobj ;
843 struct module *mod ;
844 struct kobject *drivers_dir ;
845 struct module_param_attrs *mp ;
846};
847#line 43 "include/linux/module.h"
848struct module_attribute {
849 struct attribute attr ;
850 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
851 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
852 size_t ) ;
853 void (*setup)(struct module * , char const * ) ;
854 int (*test)(struct module * ) ;
855 void (*free)(struct module * ) ;
856};
857#line 69
858struct exception_table_entry;
859#line 69
860struct exception_table_entry;
861#line 198
862enum module_state {
863 MODULE_STATE_LIVE = 0,
864 MODULE_STATE_COMING = 1,
865 MODULE_STATE_GOING = 2
866} ;
867#line 204 "include/linux/module.h"
868struct module_ref {
869 unsigned long incs ;
870 unsigned long decs ;
871};
872#line 219
873struct module_sect_attrs;
874#line 219
875struct module_notes_attrs;
876#line 219
877struct ftrace_event_call;
878#line 219 "include/linux/module.h"
879struct module {
880 enum module_state state ;
881 struct list_head list ;
882 char name[56U] ;
883 struct module_kobject mkobj ;
884 struct module_attribute *modinfo_attrs ;
885 char const *version ;
886 char const *srcversion ;
887 struct kobject *holders_dir ;
888 struct kernel_symbol const *syms ;
889 unsigned long const *crcs ;
890 unsigned int num_syms ;
891 struct kernel_param *kp ;
892 unsigned int num_kp ;
893 unsigned int num_gpl_syms ;
894 struct kernel_symbol const *gpl_syms ;
895 unsigned long const *gpl_crcs ;
896 struct kernel_symbol const *unused_syms ;
897 unsigned long const *unused_crcs ;
898 unsigned int num_unused_syms ;
899 unsigned int num_unused_gpl_syms ;
900 struct kernel_symbol const *unused_gpl_syms ;
901 unsigned long const *unused_gpl_crcs ;
902 struct kernel_symbol const *gpl_future_syms ;
903 unsigned long const *gpl_future_crcs ;
904 unsigned int num_gpl_future_syms ;
905 unsigned int num_exentries ;
906 struct exception_table_entry *extable ;
907 int (*init)(void) ;
908 void *module_init ;
909 void *module_core ;
910 unsigned int init_size ;
911 unsigned int core_size ;
912 unsigned int init_text_size ;
913 unsigned int core_text_size ;
914 unsigned int init_ro_size ;
915 unsigned int core_ro_size ;
916 struct mod_arch_specific arch ;
917 unsigned int taints ;
918 unsigned int num_bugs ;
919 struct list_head bug_list ;
920 struct bug_entry *bug_table ;
921 Elf64_Sym *symtab ;
922 Elf64_Sym *core_symtab ;
923 unsigned int num_symtab ;
924 unsigned int core_num_syms ;
925 char *strtab ;
926 char *core_strtab ;
927 struct module_sect_attrs *sect_attrs ;
928 struct module_notes_attrs *notes_attrs ;
929 char *args ;
930 void *percpu ;
931 unsigned int percpu_size ;
932 unsigned int num_tracepoints ;
933 struct tracepoint * const *tracepoints_ptrs ;
934 unsigned int num_trace_bprintk_fmt ;
935 char const **trace_bprintk_fmt_start ;
936 struct ftrace_event_call **trace_events ;
937 unsigned int num_trace_events ;
938 struct list_head source_list ;
939 struct list_head target_list ;
940 struct task_struct *waiter ;
941 void (*exit)(void) ;
942 struct module_ref *refptr ;
943 ctor_fn_t (**ctors)(void) ;
944 unsigned int num_ctors ;
945};
946#line 88 "include/linux/kmemleak.h"
947struct kmem_cache_cpu {
948 void **freelist ;
949 unsigned long tid ;
950 struct page *page ;
951 struct page *partial ;
952 int node ;
953 unsigned int stat[26U] ;
954};
955#line 55 "include/linux/slub_def.h"
956struct kmem_cache_node {
957 spinlock_t list_lock ;
958 unsigned long nr_partial ;
959 struct list_head partial ;
960 atomic_long_t nr_slabs ;
961 atomic_long_t total_objects ;
962 struct list_head full ;
963};
964#line 66 "include/linux/slub_def.h"
965struct kmem_cache_order_objects {
966 unsigned long x ;
967};
968#line 76 "include/linux/slub_def.h"
969struct kmem_cache {
970 struct kmem_cache_cpu *cpu_slab ;
971 unsigned long flags ;
972 unsigned long min_partial ;
973 int size ;
974 int objsize ;
975 int offset ;
976 int cpu_partial ;
977 struct kmem_cache_order_objects oo ;
978 struct kmem_cache_order_objects max ;
979 struct kmem_cache_order_objects min ;
980 gfp_t allocflags ;
981 int refcount ;
982 void (*ctor)(void * ) ;
983 int inuse ;
984 int align ;
985 int reserved ;
986 char const *name ;
987 struct list_head list ;
988 struct kobject kobj ;
989 int remote_node_defrag_ratio ;
990 struct kmem_cache_node *node[1024U] ;
991};
992#line 15 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
993struct file_operations;
994#line 15 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
995struct miscdevice {
996 int minor ;
997 char const *name ;
998 struct file_operations const *fops ;
999 struct list_head list ;
1000 struct device *parent ;
1001 struct device *this_device ;
1002 char const *nodename ;
1003 umode_t mode ;
1004};
1005#line 63 "include/linux/miscdevice.h"
1006struct watchdog_info {
1007 __u32 options ;
1008 __u32 firmware_version ;
1009 __u8 identity[32U] ;
1010};
1011#line 57 "include/linux/delay.h"
1012struct block_device;
1013#line 57
1014struct block_device;
1015#line 93 "include/linux/bit_spinlock.h"
1016struct hlist_bl_node;
1017#line 93 "include/linux/bit_spinlock.h"
1018struct hlist_bl_head {
1019 struct hlist_bl_node *first ;
1020};
1021#line 36 "include/linux/list_bl.h"
1022struct hlist_bl_node {
1023 struct hlist_bl_node *next ;
1024 struct hlist_bl_node **pprev ;
1025};
1026#line 114 "include/linux/rculist_bl.h"
1027struct nameidata;
1028#line 114
1029struct nameidata;
1030#line 115
1031struct path;
1032#line 115
1033struct path;
1034#line 116
1035struct vfsmount;
1036#line 116
1037struct vfsmount;
1038#line 117 "include/linux/rculist_bl.h"
1039struct qstr {
1040 unsigned int hash ;
1041 unsigned int len ;
1042 unsigned char const *name ;
1043};
1044#line 72 "include/linux/dcache.h"
1045struct inode;
1046#line 72
1047struct dentry_operations;
1048#line 72
1049struct super_block;
1050#line 72 "include/linux/dcache.h"
1051union __anonunion_d_u_135 {
1052 struct list_head d_child ;
1053 struct rcu_head d_rcu ;
1054};
1055#line 72 "include/linux/dcache.h"
1056struct dentry {
1057 unsigned int d_flags ;
1058 seqcount_t d_seq ;
1059 struct hlist_bl_node d_hash ;
1060 struct dentry *d_parent ;
1061 struct qstr d_name ;
1062 struct inode *d_inode ;
1063 unsigned char d_iname[32U] ;
1064 unsigned int d_count ;
1065 spinlock_t d_lock ;
1066 struct dentry_operations const *d_op ;
1067 struct super_block *d_sb ;
1068 unsigned long d_time ;
1069 void *d_fsdata ;
1070 struct list_head d_lru ;
1071 union __anonunion_d_u_135 d_u ;
1072 struct list_head d_subdirs ;
1073 struct list_head d_alias ;
1074};
1075#line 123 "include/linux/dcache.h"
1076struct dentry_operations {
1077 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1078 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1079 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1080 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1081 int (*d_delete)(struct dentry const * ) ;
1082 void (*d_release)(struct dentry * ) ;
1083 void (*d_prune)(struct dentry * ) ;
1084 void (*d_iput)(struct dentry * , struct inode * ) ;
1085 char *(*d_dname)(struct dentry * , char * , int ) ;
1086 struct vfsmount *(*d_automount)(struct path * ) ;
1087 int (*d_manage)(struct dentry * , bool ) ;
1088};
1089#line 402 "include/linux/dcache.h"
1090struct path {
1091 struct vfsmount *mnt ;
1092 struct dentry *dentry ;
1093};
1094#line 58 "include/linux/radix-tree.h"
1095struct radix_tree_node;
1096#line 58 "include/linux/radix-tree.h"
1097struct radix_tree_root {
1098 unsigned int height ;
1099 gfp_t gfp_mask ;
1100 struct radix_tree_node *rnode ;
1101};
1102#line 377
1103struct prio_tree_node;
1104#line 19 "include/linux/prio_tree.h"
1105struct prio_tree_node {
1106 struct prio_tree_node *left ;
1107 struct prio_tree_node *right ;
1108 struct prio_tree_node *parent ;
1109 unsigned long start ;
1110 unsigned long last ;
1111};
1112#line 27 "include/linux/prio_tree.h"
1113struct prio_tree_root {
1114 struct prio_tree_node *prio_tree_node ;
1115 unsigned short index_bits ;
1116 unsigned short raw ;
1117};
1118#line 111
1119enum pid_type {
1120 PIDTYPE_PID = 0,
1121 PIDTYPE_PGID = 1,
1122 PIDTYPE_SID = 2,
1123 PIDTYPE_MAX = 3
1124} ;
1125#line 118
1126struct pid_namespace;
1127#line 118 "include/linux/prio_tree.h"
1128struct upid {
1129 int nr ;
1130 struct pid_namespace *ns ;
1131 struct hlist_node pid_chain ;
1132};
1133#line 56 "include/linux/pid.h"
1134struct pid {
1135 atomic_t count ;
1136 unsigned int level ;
1137 struct hlist_head tasks[3U] ;
1138 struct rcu_head rcu ;
1139 struct upid numbers[1U] ;
1140};
1141#line 45 "include/linux/semaphore.h"
1142struct fiemap_extent {
1143 __u64 fe_logical ;
1144 __u64 fe_physical ;
1145 __u64 fe_length ;
1146 __u64 fe_reserved64[2U] ;
1147 __u32 fe_flags ;
1148 __u32 fe_reserved[3U] ;
1149};
1150#line 38 "include/linux/fiemap.h"
1151struct shrink_control {
1152 gfp_t gfp_mask ;
1153 unsigned long nr_to_scan ;
1154};
1155#line 14 "include/linux/shrinker.h"
1156struct shrinker {
1157 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1158 int seeks ;
1159 long batch ;
1160 struct list_head list ;
1161 atomic_long_t nr_in_batch ;
1162};
1163#line 43
1164enum migrate_mode {
1165 MIGRATE_ASYNC = 0,
1166 MIGRATE_SYNC_LIGHT = 1,
1167 MIGRATE_SYNC = 2
1168} ;
1169#line 49
1170struct export_operations;
1171#line 49
1172struct export_operations;
1173#line 51
1174struct iovec;
1175#line 51
1176struct iovec;
1177#line 52
1178struct kiocb;
1179#line 52
1180struct kiocb;
1181#line 53
1182struct pipe_inode_info;
1183#line 53
1184struct pipe_inode_info;
1185#line 54
1186struct poll_table_struct;
1187#line 54
1188struct poll_table_struct;
1189#line 55
1190struct kstatfs;
1191#line 55
1192struct kstatfs;
1193#line 435 "include/linux/fs.h"
1194struct iattr {
1195 unsigned int ia_valid ;
1196 umode_t ia_mode ;
1197 uid_t ia_uid ;
1198 gid_t ia_gid ;
1199 loff_t ia_size ;
1200 struct timespec ia_atime ;
1201 struct timespec ia_mtime ;
1202 struct timespec ia_ctime ;
1203 struct file *ia_file ;
1204};
1205#line 119 "include/linux/quota.h"
1206struct if_dqinfo {
1207 __u64 dqi_bgrace ;
1208 __u64 dqi_igrace ;
1209 __u32 dqi_flags ;
1210 __u32 dqi_valid ;
1211};
1212#line 176 "include/linux/percpu_counter.h"
1213struct fs_disk_quota {
1214 __s8 d_version ;
1215 __s8 d_flags ;
1216 __u16 d_fieldmask ;
1217 __u32 d_id ;
1218 __u64 d_blk_hardlimit ;
1219 __u64 d_blk_softlimit ;
1220 __u64 d_ino_hardlimit ;
1221 __u64 d_ino_softlimit ;
1222 __u64 d_bcount ;
1223 __u64 d_icount ;
1224 __s32 d_itimer ;
1225 __s32 d_btimer ;
1226 __u16 d_iwarns ;
1227 __u16 d_bwarns ;
1228 __s32 d_padding2 ;
1229 __u64 d_rtb_hardlimit ;
1230 __u64 d_rtb_softlimit ;
1231 __u64 d_rtbcount ;
1232 __s32 d_rtbtimer ;
1233 __u16 d_rtbwarns ;
1234 __s16 d_padding3 ;
1235 char d_padding4[8U] ;
1236};
1237#line 75 "include/linux/dqblk_xfs.h"
1238struct fs_qfilestat {
1239 __u64 qfs_ino ;
1240 __u64 qfs_nblks ;
1241 __u32 qfs_nextents ;
1242};
1243#line 150 "include/linux/dqblk_xfs.h"
1244typedef struct fs_qfilestat fs_qfilestat_t;
1245#line 151 "include/linux/dqblk_xfs.h"
1246struct fs_quota_stat {
1247 __s8 qs_version ;
1248 __u16 qs_flags ;
1249 __s8 qs_pad ;
1250 fs_qfilestat_t qs_uquota ;
1251 fs_qfilestat_t qs_gquota ;
1252 __u32 qs_incoredqs ;
1253 __s32 qs_btimelimit ;
1254 __s32 qs_itimelimit ;
1255 __s32 qs_rtbtimelimit ;
1256 __u16 qs_bwarnlimit ;
1257 __u16 qs_iwarnlimit ;
1258};
1259#line 165
1260struct dquot;
1261#line 165
1262struct dquot;
1263#line 185 "include/linux/quota.h"
1264typedef __kernel_uid32_t qid_t;
1265#line 186 "include/linux/quota.h"
1266typedef long long qsize_t;
1267#line 189 "include/linux/quota.h"
1268struct mem_dqblk {
1269 qsize_t dqb_bhardlimit ;
1270 qsize_t dqb_bsoftlimit ;
1271 qsize_t dqb_curspace ;
1272 qsize_t dqb_rsvspace ;
1273 qsize_t dqb_ihardlimit ;
1274 qsize_t dqb_isoftlimit ;
1275 qsize_t dqb_curinodes ;
1276 time_t dqb_btime ;
1277 time_t dqb_itime ;
1278};
1279#line 211
1280struct quota_format_type;
1281#line 211
1282struct quota_format_type;
1283#line 212 "include/linux/quota.h"
1284struct mem_dqinfo {
1285 struct quota_format_type *dqi_format ;
1286 int dqi_fmt_id ;
1287 struct list_head dqi_dirty_list ;
1288 unsigned long dqi_flags ;
1289 unsigned int dqi_bgrace ;
1290 unsigned int dqi_igrace ;
1291 qsize_t dqi_maxblimit ;
1292 qsize_t dqi_maxilimit ;
1293 void *dqi_priv ;
1294};
1295#line 275 "include/linux/quota.h"
1296struct dquot {
1297 struct hlist_node dq_hash ;
1298 struct list_head dq_inuse ;
1299 struct list_head dq_free ;
1300 struct list_head dq_dirty ;
1301 struct mutex dq_lock ;
1302 atomic_t dq_count ;
1303 wait_queue_head_t dq_wait_unused ;
1304 struct super_block *dq_sb ;
1305 unsigned int dq_id ;
1306 loff_t dq_off ;
1307 unsigned long dq_flags ;
1308 short dq_type ;
1309 struct mem_dqblk dq_dqb ;
1310};
1311#line 303 "include/linux/quota.h"
1312struct quota_format_ops {
1313 int (*check_quota_file)(struct super_block * , int ) ;
1314 int (*read_file_info)(struct super_block * , int ) ;
1315 int (*write_file_info)(struct super_block * , int ) ;
1316 int (*free_file_info)(struct super_block * , int ) ;
1317 int (*read_dqblk)(struct dquot * ) ;
1318 int (*commit_dqblk)(struct dquot * ) ;
1319 int (*release_dqblk)(struct dquot * ) ;
1320};
1321#line 314 "include/linux/quota.h"
1322struct dquot_operations {
1323 int (*write_dquot)(struct dquot * ) ;
1324 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1325 void (*destroy_dquot)(struct dquot * ) ;
1326 int (*acquire_dquot)(struct dquot * ) ;
1327 int (*release_dquot)(struct dquot * ) ;
1328 int (*mark_dirty)(struct dquot * ) ;
1329 int (*write_info)(struct super_block * , int ) ;
1330 qsize_t *(*get_reserved_space)(struct inode * ) ;
1331};
1332#line 328 "include/linux/quota.h"
1333struct quotactl_ops {
1334 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1335 int (*quota_on_meta)(struct super_block * , int , int ) ;
1336 int (*quota_off)(struct super_block * , int ) ;
1337 int (*quota_sync)(struct super_block * , int , int ) ;
1338 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1339 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1340 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1341 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1342 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1343 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1344};
1345#line 344 "include/linux/quota.h"
1346struct quota_format_type {
1347 int qf_fmt_id ;
1348 struct quota_format_ops const *qf_ops ;
1349 struct module *qf_owner ;
1350 struct quota_format_type *qf_next ;
1351};
1352#line 390 "include/linux/quota.h"
1353struct quota_info {
1354 unsigned int flags ;
1355 struct mutex dqio_mutex ;
1356 struct mutex dqonoff_mutex ;
1357 struct rw_semaphore dqptr_sem ;
1358 struct inode *files[2U] ;
1359 struct mem_dqinfo info[2U] ;
1360 struct quota_format_ops const *ops[2U] ;
1361};
1362#line 421
1363struct address_space;
1364#line 421
1365struct address_space;
1366#line 422
1367struct writeback_control;
1368#line 422
1369struct writeback_control;
1370#line 585 "include/linux/fs.h"
1371union __anonunion_arg_138 {
1372 char *buf ;
1373 void *data ;
1374};
1375#line 585 "include/linux/fs.h"
1376struct __anonstruct_read_descriptor_t_137 {
1377 size_t written ;
1378 size_t count ;
1379 union __anonunion_arg_138 arg ;
1380 int error ;
1381};
1382#line 585 "include/linux/fs.h"
1383typedef struct __anonstruct_read_descriptor_t_137 read_descriptor_t;
1384#line 588 "include/linux/fs.h"
1385struct address_space_operations {
1386 int (*writepage)(struct page * , struct writeback_control * ) ;
1387 int (*readpage)(struct file * , struct page * ) ;
1388 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1389 int (*set_page_dirty)(struct page * ) ;
1390 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1391 unsigned int ) ;
1392 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
1393 unsigned int , struct page ** , void ** ) ;
1394 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
1395 unsigned int , struct page * , void * ) ;
1396 sector_t (*bmap)(struct address_space * , sector_t ) ;
1397 void (*invalidatepage)(struct page * , unsigned long ) ;
1398 int (*releasepage)(struct page * , gfp_t ) ;
1399 void (*freepage)(struct page * ) ;
1400 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
1401 unsigned long ) ;
1402 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1403 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1404 int (*launder_page)(struct page * ) ;
1405 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1406 int (*error_remove_page)(struct address_space * , struct page * ) ;
1407};
1408#line 642
1409struct backing_dev_info;
1410#line 642
1411struct backing_dev_info;
1412#line 643 "include/linux/fs.h"
1413struct address_space {
1414 struct inode *host ;
1415 struct radix_tree_root page_tree ;
1416 spinlock_t tree_lock ;
1417 unsigned int i_mmap_writable ;
1418 struct prio_tree_root i_mmap ;
1419 struct list_head i_mmap_nonlinear ;
1420 struct mutex i_mmap_mutex ;
1421 unsigned long nrpages ;
1422 unsigned long writeback_index ;
1423 struct address_space_operations const *a_ops ;
1424 unsigned long flags ;
1425 struct backing_dev_info *backing_dev_info ;
1426 spinlock_t private_lock ;
1427 struct list_head private_list ;
1428 struct address_space *assoc_mapping ;
1429};
1430#line 664
1431struct request_queue;
1432#line 664
1433struct request_queue;
1434#line 665
1435struct hd_struct;
1436#line 665
1437struct gendisk;
1438#line 665 "include/linux/fs.h"
1439struct block_device {
1440 dev_t bd_dev ;
1441 int bd_openers ;
1442 struct inode *bd_inode ;
1443 struct super_block *bd_super ;
1444 struct mutex bd_mutex ;
1445 struct list_head bd_inodes ;
1446 void *bd_claiming ;
1447 void *bd_holder ;
1448 int bd_holders ;
1449 bool bd_write_holder ;
1450 struct list_head bd_holder_disks ;
1451 struct block_device *bd_contains ;
1452 unsigned int bd_block_size ;
1453 struct hd_struct *bd_part ;
1454 unsigned int bd_part_count ;
1455 int bd_invalidated ;
1456 struct gendisk *bd_disk ;
1457 struct request_queue *bd_queue ;
1458 struct list_head bd_list ;
1459 unsigned long bd_private ;
1460 int bd_fsfreeze_count ;
1461 struct mutex bd_fsfreeze_mutex ;
1462};
1463#line 737
1464struct posix_acl;
1465#line 737
1466struct posix_acl;
1467#line 738
1468struct inode_operations;
1469#line 738 "include/linux/fs.h"
1470union __anonunion_ldv_15837_139 {
1471 unsigned int const i_nlink ;
1472 unsigned int __i_nlink ;
1473};
1474#line 738 "include/linux/fs.h"
1475union __anonunion_ldv_15856_140 {
1476 struct list_head i_dentry ;
1477 struct rcu_head i_rcu ;
1478};
1479#line 738
1480struct file_lock;
1481#line 738
1482struct cdev;
1483#line 738 "include/linux/fs.h"
1484union __anonunion_ldv_15873_141 {
1485 struct pipe_inode_info *i_pipe ;
1486 struct block_device *i_bdev ;
1487 struct cdev *i_cdev ;
1488};
1489#line 738 "include/linux/fs.h"
1490struct inode {
1491 umode_t i_mode ;
1492 unsigned short i_opflags ;
1493 uid_t i_uid ;
1494 gid_t i_gid ;
1495 unsigned int i_flags ;
1496 struct posix_acl *i_acl ;
1497 struct posix_acl *i_default_acl ;
1498 struct inode_operations const *i_op ;
1499 struct super_block *i_sb ;
1500 struct address_space *i_mapping ;
1501 void *i_security ;
1502 unsigned long i_ino ;
1503 union __anonunion_ldv_15837_139 ldv_15837 ;
1504 dev_t i_rdev ;
1505 struct timespec i_atime ;
1506 struct timespec i_mtime ;
1507 struct timespec i_ctime ;
1508 spinlock_t i_lock ;
1509 unsigned short i_bytes ;
1510 blkcnt_t i_blocks ;
1511 loff_t i_size ;
1512 unsigned long i_state ;
1513 struct mutex i_mutex ;
1514 unsigned long dirtied_when ;
1515 struct hlist_node i_hash ;
1516 struct list_head i_wb_list ;
1517 struct list_head i_lru ;
1518 struct list_head i_sb_list ;
1519 union __anonunion_ldv_15856_140 ldv_15856 ;
1520 atomic_t i_count ;
1521 unsigned int i_blkbits ;
1522 u64 i_version ;
1523 atomic_t i_dio_count ;
1524 atomic_t i_writecount ;
1525 struct file_operations const *i_fop ;
1526 struct file_lock *i_flock ;
1527 struct address_space i_data ;
1528 struct dquot *i_dquot[2U] ;
1529 struct list_head i_devices ;
1530 union __anonunion_ldv_15873_141 ldv_15873 ;
1531 __u32 i_generation ;
1532 __u32 i_fsnotify_mask ;
1533 struct hlist_head i_fsnotify_marks ;
1534 atomic_t i_readcount ;
1535 void *i_private ;
1536};
1537#line 941 "include/linux/fs.h"
1538struct fown_struct {
1539 rwlock_t lock ;
1540 struct pid *pid ;
1541 enum pid_type pid_type ;
1542 uid_t uid ;
1543 uid_t euid ;
1544 int signum ;
1545};
1546#line 949 "include/linux/fs.h"
1547struct file_ra_state {
1548 unsigned long start ;
1549 unsigned int size ;
1550 unsigned int async_size ;
1551 unsigned int ra_pages ;
1552 unsigned int mmap_miss ;
1553 loff_t prev_pos ;
1554};
1555#line 972 "include/linux/fs.h"
1556union __anonunion_f_u_142 {
1557 struct list_head fu_list ;
1558 struct rcu_head fu_rcuhead ;
1559};
1560#line 972 "include/linux/fs.h"
1561struct file {
1562 union __anonunion_f_u_142 f_u ;
1563 struct path f_path ;
1564 struct file_operations const *f_op ;
1565 spinlock_t f_lock ;
1566 int f_sb_list_cpu ;
1567 atomic_long_t f_count ;
1568 unsigned int f_flags ;
1569 fmode_t f_mode ;
1570 loff_t f_pos ;
1571 struct fown_struct f_owner ;
1572 struct cred const *f_cred ;
1573 struct file_ra_state f_ra ;
1574 u64 f_version ;
1575 void *f_security ;
1576 void *private_data ;
1577 struct list_head f_ep_links ;
1578 struct list_head f_tfile_llink ;
1579 struct address_space *f_mapping ;
1580 unsigned long f_mnt_write_state ;
1581};
1582#line 1111
1583struct files_struct;
1584#line 1111 "include/linux/fs.h"
1585typedef struct files_struct *fl_owner_t;
1586#line 1112 "include/linux/fs.h"
1587struct file_lock_operations {
1588 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1589 void (*fl_release_private)(struct file_lock * ) ;
1590};
1591#line 1117 "include/linux/fs.h"
1592struct lock_manager_operations {
1593 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1594 void (*lm_notify)(struct file_lock * ) ;
1595 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1596 void (*lm_release_private)(struct file_lock * ) ;
1597 void (*lm_break)(struct file_lock * ) ;
1598 int (*lm_change)(struct file_lock ** , int ) ;
1599};
1600#line 1134
1601struct nlm_lockowner;
1602#line 1134
1603struct nlm_lockowner;
1604#line 1135 "include/linux/fs.h"
1605struct nfs_lock_info {
1606 u32 state ;
1607 struct nlm_lockowner *owner ;
1608 struct list_head list ;
1609};
1610#line 14 "include/linux/nfs_fs_i.h"
1611struct nfs4_lock_state;
1612#line 14
1613struct nfs4_lock_state;
1614#line 15 "include/linux/nfs_fs_i.h"
1615struct nfs4_lock_info {
1616 struct nfs4_lock_state *owner ;
1617};
1618#line 19
1619struct fasync_struct;
1620#line 19 "include/linux/nfs_fs_i.h"
1621struct __anonstruct_afs_144 {
1622 struct list_head link ;
1623 int state ;
1624};
1625#line 19 "include/linux/nfs_fs_i.h"
1626union __anonunion_fl_u_143 {
1627 struct nfs_lock_info nfs_fl ;
1628 struct nfs4_lock_info nfs4_fl ;
1629 struct __anonstruct_afs_144 afs ;
1630};
1631#line 19 "include/linux/nfs_fs_i.h"
1632struct file_lock {
1633 struct file_lock *fl_next ;
1634 struct list_head fl_link ;
1635 struct list_head fl_block ;
1636 fl_owner_t fl_owner ;
1637 unsigned int fl_flags ;
1638 unsigned char fl_type ;
1639 unsigned int fl_pid ;
1640 struct pid *fl_nspid ;
1641 wait_queue_head_t fl_wait ;
1642 struct file *fl_file ;
1643 loff_t fl_start ;
1644 loff_t fl_end ;
1645 struct fasync_struct *fl_fasync ;
1646 unsigned long fl_break_time ;
1647 unsigned long fl_downgrade_time ;
1648 struct file_lock_operations const *fl_ops ;
1649 struct lock_manager_operations const *fl_lmops ;
1650 union __anonunion_fl_u_143 fl_u ;
1651};
1652#line 1221 "include/linux/fs.h"
1653struct fasync_struct {
1654 spinlock_t fa_lock ;
1655 int magic ;
1656 int fa_fd ;
1657 struct fasync_struct *fa_next ;
1658 struct file *fa_file ;
1659 struct rcu_head fa_rcu ;
1660};
1661#line 1417
1662struct file_system_type;
1663#line 1417
1664struct super_operations;
1665#line 1417
1666struct xattr_handler;
1667#line 1417
1668struct mtd_info;
1669#line 1417 "include/linux/fs.h"
1670struct super_block {
1671 struct list_head s_list ;
1672 dev_t s_dev ;
1673 unsigned char s_dirt ;
1674 unsigned char s_blocksize_bits ;
1675 unsigned long s_blocksize ;
1676 loff_t s_maxbytes ;
1677 struct file_system_type *s_type ;
1678 struct super_operations const *s_op ;
1679 struct dquot_operations const *dq_op ;
1680 struct quotactl_ops const *s_qcop ;
1681 struct export_operations const *s_export_op ;
1682 unsigned long s_flags ;
1683 unsigned long s_magic ;
1684 struct dentry *s_root ;
1685 struct rw_semaphore s_umount ;
1686 struct mutex s_lock ;
1687 int s_count ;
1688 atomic_t s_active ;
1689 void *s_security ;
1690 struct xattr_handler const **s_xattr ;
1691 struct list_head s_inodes ;
1692 struct hlist_bl_head s_anon ;
1693 struct list_head *s_files ;
1694 struct list_head s_mounts ;
1695 struct list_head s_dentry_lru ;
1696 int s_nr_dentry_unused ;
1697 spinlock_t s_inode_lru_lock ;
1698 struct list_head s_inode_lru ;
1699 int s_nr_inodes_unused ;
1700 struct block_device *s_bdev ;
1701 struct backing_dev_info *s_bdi ;
1702 struct mtd_info *s_mtd ;
1703 struct hlist_node s_instances ;
1704 struct quota_info s_dquot ;
1705 int s_frozen ;
1706 wait_queue_head_t s_wait_unfrozen ;
1707 char s_id[32U] ;
1708 u8 s_uuid[16U] ;
1709 void *s_fs_info ;
1710 unsigned int s_max_links ;
1711 fmode_t s_mode ;
1712 u32 s_time_gran ;
1713 struct mutex s_vfs_rename_mutex ;
1714 char *s_subtype ;
1715 char *s_options ;
1716 struct dentry_operations const *s_d_op ;
1717 int cleancache_poolid ;
1718 struct shrinker s_shrink ;
1719 atomic_long_t s_remove_count ;
1720 int s_readonly_remount ;
1721};
1722#line 1563 "include/linux/fs.h"
1723struct fiemap_extent_info {
1724 unsigned int fi_flags ;
1725 unsigned int fi_extents_mapped ;
1726 unsigned int fi_extents_max ;
1727 struct fiemap_extent *fi_extents_start ;
1728};
1729#line 1602 "include/linux/fs.h"
1730struct file_operations {
1731 struct module *owner ;
1732 loff_t (*llseek)(struct file * , loff_t , int ) ;
1733 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1734 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1735 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1736 loff_t ) ;
1737 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1738 loff_t ) ;
1739 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1740 loff_t , u64 , unsigned int ) ) ;
1741 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1742 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1743 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1744 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1745 int (*open)(struct inode * , struct file * ) ;
1746 int (*flush)(struct file * , fl_owner_t ) ;
1747 int (*release)(struct inode * , struct file * ) ;
1748 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
1749 int (*aio_fsync)(struct kiocb * , int ) ;
1750 int (*fasync)(int , struct file * , int ) ;
1751 int (*lock)(struct file * , int , struct file_lock * ) ;
1752 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1753 int ) ;
1754 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1755 unsigned long , unsigned long ) ;
1756 int (*check_flags)(int ) ;
1757 int (*flock)(struct file * , int , struct file_lock * ) ;
1758 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1759 unsigned int ) ;
1760 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1761 unsigned int ) ;
1762 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1763 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
1764};
1765#line 1637 "include/linux/fs.h"
1766struct inode_operations {
1767 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1768 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1769 int (*permission)(struct inode * , int ) ;
1770 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1771 int (*readlink)(struct dentry * , char * , int ) ;
1772 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1773 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
1774 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1775 int (*unlink)(struct inode * , struct dentry * ) ;
1776 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
1777 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
1778 int (*rmdir)(struct inode * , struct dentry * ) ;
1779 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
1780 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1781 void (*truncate)(struct inode * ) ;
1782 int (*setattr)(struct dentry * , struct iattr * ) ;
1783 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
1784 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
1785 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
1786 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
1787 int (*removexattr)(struct dentry * , char const * ) ;
1788 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
1789 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
1790};
1791#line 1682 "include/linux/fs.h"
1792struct super_operations {
1793 struct inode *(*alloc_inode)(struct super_block * ) ;
1794 void (*destroy_inode)(struct inode * ) ;
1795 void (*dirty_inode)(struct inode * , int ) ;
1796 int (*write_inode)(struct inode * , struct writeback_control * ) ;
1797 int (*drop_inode)(struct inode * ) ;
1798 void (*evict_inode)(struct inode * ) ;
1799 void (*put_super)(struct super_block * ) ;
1800 void (*write_super)(struct super_block * ) ;
1801 int (*sync_fs)(struct super_block * , int ) ;
1802 int (*freeze_fs)(struct super_block * ) ;
1803 int (*unfreeze_fs)(struct super_block * ) ;
1804 int (*statfs)(struct dentry * , struct kstatfs * ) ;
1805 int (*remount_fs)(struct super_block * , int * , char * ) ;
1806 void (*umount_begin)(struct super_block * ) ;
1807 int (*show_options)(struct seq_file * , struct dentry * ) ;
1808 int (*show_devname)(struct seq_file * , struct dentry * ) ;
1809 int (*show_path)(struct seq_file * , struct dentry * ) ;
1810 int (*show_stats)(struct seq_file * , struct dentry * ) ;
1811 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
1812 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
1813 loff_t ) ;
1814 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
1815 int (*nr_cached_objects)(struct super_block * ) ;
1816 void (*free_cached_objects)(struct super_block * , int ) ;
1817};
1818#line 1834 "include/linux/fs.h"
1819struct file_system_type {
1820 char const *name ;
1821 int fs_flags ;
1822 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
1823 void (*kill_sb)(struct super_block * ) ;
1824 struct module *owner ;
1825 struct file_system_type *next ;
1826 struct hlist_head fs_supers ;
1827 struct lock_class_key s_lock_key ;
1828 struct lock_class_key s_umount_key ;
1829 struct lock_class_key s_vfs_rename_key ;
1830 struct lock_class_key i_lock_key ;
1831 struct lock_class_key i_mutex_key ;
1832 struct lock_class_key i_mutex_dir_key ;
1833};
1834#line 69 "include/linux/io.h"
1835struct exception_table_entry {
1836 unsigned long insn ;
1837 unsigned long fixup ;
1838};
1839#line 405 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
1840union __anonunion_uarg_146 {
1841 struct watchdog_info *ident ;
1842 int *i ;
1843};
1844#line 2
1845void ldv_spin_lock(void) ;
1846#line 3
1847void ldv_spin_unlock(void) ;
1848#line 4
1849int ldv_spin_trylock(void) ;
1850#line 98 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
1851__inline static void clear_bit(int nr , unsigned long volatile *addr )
1852{ long volatile *__cil_tmp3 ;
1853
1854 {
1855#line 105
1856 __cil_tmp3 = (long volatile *)addr;
1857#line 105
1858 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; btr %1,%0": "+m" (*__cil_tmp3): "Ir" (nr));
1859#line 107
1860 return;
1861}
1862}
1863#line 195 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
1864__inline static int test_and_set_bit(int nr , unsigned long volatile *addr )
1865{ int oldbit ;
1866 long volatile *__cil_tmp4 ;
1867
1868 {
1869#line 199
1870 __cil_tmp4 = (long volatile *)addr;
1871#line 199
1872 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; bts %2,%1\n\tsbb %0,%0": "=r" (oldbit),
1873 "+m" (*__cil_tmp4): "Ir" (nr): "memory");
1874#line 202
1875 return (oldbit);
1876}
1877}
1878#line 101 "include/linux/printk.h"
1879extern int printk(char const * , ...) ;
1880#line 192 "include/linux/kernel.h"
1881extern void might_fault(void) ;
1882#line 355 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
1883extern struct pv_cpu_ops pv_cpu_ops ;
1884#line 349 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
1885__inline static void slow_down_io(void)
1886{ unsigned long __cil_tmp1 ;
1887 void (*__cil_tmp2)(void) ;
1888
1889 {
1890 {
1891#line 351
1892 __cil_tmp1 = (unsigned long )(& pv_cpu_ops) + 216;
1893#line 351
1894 __cil_tmp2 = *((void (**)(void))__cil_tmp1);
1895#line 351
1896 (*__cil_tmp2)();
1897 }
1898#line 352
1899 return;
1900}
1901}
1902#line 22 "include/linux/spinlock_api_smp.h"
1903extern void _raw_spin_lock(raw_spinlock_t * ) ;
1904#line 39
1905extern void _raw_spin_unlock(raw_spinlock_t * ) ;
1906#line 283 "include/linux/spinlock.h"
1907__inline static void ldv_spin_lock_1(spinlock_t *lock )
1908{ struct raw_spinlock *__cil_tmp2 ;
1909
1910 {
1911 {
1912#line 285
1913 __cil_tmp2 = (struct raw_spinlock *)lock;
1914#line 285
1915 _raw_spin_lock(__cil_tmp2);
1916 }
1917#line 286
1918 return;
1919}
1920}
1921#line 283
1922__inline static void spin_lock(spinlock_t *lock ) ;
1923#line 323 "include/linux/spinlock.h"
1924__inline static void ldv_spin_unlock_5(spinlock_t *lock )
1925{ struct raw_spinlock *__cil_tmp2 ;
1926
1927 {
1928 {
1929#line 325
1930 __cil_tmp2 = (struct raw_spinlock *)lock;
1931#line 325
1932 _raw_spin_unlock(__cil_tmp2);
1933 }
1934#line 326
1935 return;
1936}
1937}
1938#line 323
1939__inline static void spin_unlock(spinlock_t *lock ) ;
1940#line 137 "include/linux/ioport.h"
1941extern struct resource ioport_resource ;
1942#line 181
1943extern struct resource *__request_region(struct resource * , resource_size_t , resource_size_t ,
1944 char const * , int ) ;
1945#line 192
1946extern void __release_region(struct resource * , resource_size_t , resource_size_t ) ;
1947#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
1948__inline static void outb(unsigned char value , int port )
1949{
1950
1951 {
1952#line 308
1953 __asm__ volatile ("outb %b0, %w1": : "a" (value), "Nd" (port));
1954#line 309
1955 return;
1956}
1957}
1958#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
1959__inline static unsigned char inb(int port )
1960{ unsigned char value ;
1961
1962 {
1963#line 308
1964 __asm__ volatile ("inb %w1, %b0": "=a" (value): "Nd" (port));
1965#line 308
1966 return (value);
1967}
1968}
1969#line 308 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
1970__inline static void outb_p(unsigned char value , int port )
1971{ int __cil_tmp3 ;
1972 unsigned char __cil_tmp4 ;
1973
1974 {
1975 {
1976#line 308
1977 __cil_tmp3 = (int )value;
1978#line 308
1979 __cil_tmp4 = (unsigned char )__cil_tmp3;
1980#line 308
1981 outb(__cil_tmp4, port);
1982#line 308
1983 slow_down_io();
1984 }
1985#line 309
1986 return;
1987}
1988}
1989#line 26 "include/linux/export.h"
1990extern struct module __this_module ;
1991#line 453 "include/linux/module.h"
1992extern void __module_get(struct module * ) ;
1993#line 220 "include/linux/slub_def.h"
1994extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
1995#line 223
1996void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
1997#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
1998void ldv_check_alloc_flags(gfp_t flags ) ;
1999#line 12
2000void ldv_check_alloc_nonatomic(void) ;
2001#line 14
2002struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2003#line 61 "include/linux/miscdevice.h"
2004extern int misc_register(struct miscdevice * ) ;
2005#line 62
2006extern int misc_deregister(struct miscdevice * ) ;
2007#line 2402 "include/linux/fs.h"
2008extern loff_t no_llseek(struct file * , loff_t , int ) ;
2009#line 2407
2010extern int nonseekable_open(struct inode * , struct file * ) ;
2011#line 47 "include/linux/reboot.h"
2012extern int register_reboot_notifier(struct notifier_block * ) ;
2013#line 48
2014extern int unregister_reboot_notifier(struct notifier_block * ) ;
2015#line 40 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
2016extern unsigned long _copy_to_user(void * , void const * , unsigned int ) ;
2017#line 63 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
2018__inline static int copy_to_user(void *dst , void const *src , unsigned int size )
2019{ unsigned long tmp ;
2020
2021 {
2022 {
2023#line 65
2024 might_fault();
2025#line 67
2026 tmp = _copy_to_user(dst, src, size);
2027 }
2028#line 67
2029 return ((int )tmp);
2030}
2031}
2032#line 73 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2033static int io = 46;
2034#line 74 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2035static int swc_base_addr = -1;
2036#line 76 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2037static int timeout = 1;
2038#line 77 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2039static unsigned long timer_enabled ;
2040#line 79 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2041static char expect_close ;
2042#line 81 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2043static spinlock_t io_lock = {{{{{0U}}, 3735899821U, 4294967295U, (void *)0xffffffffffffffffUL, {(struct lock_class_key *)0,
2044 {(struct lock_class *)0,
2045 (struct lock_class *)0},
2046 "io_lock",
2047 0, 0UL}}}};
2048#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2049static bool nowayout = (bool )1;
2050#line 89 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2051__inline static void pc87413_select_wdt_out(void)
2052{ unsigned int cr_data ;
2053 unsigned char tmp ;
2054 int *__cil_tmp3 ;
2055 int __cil_tmp4 ;
2056 int *__cil_tmp5 ;
2057 int __cil_tmp6 ;
2058 int __cil_tmp7 ;
2059 int *__cil_tmp8 ;
2060 int __cil_tmp9 ;
2061 unsigned char __cil_tmp10 ;
2062 int __cil_tmp11 ;
2063 unsigned char __cil_tmp12 ;
2064 int *__cil_tmp13 ;
2065 int __cil_tmp14 ;
2066 int __cil_tmp15 ;
2067
2068 {
2069 {
2070#line 91
2071 cr_data = 0U;
2072#line 95
2073 __cil_tmp3 = & io;
2074#line 95
2075 __cil_tmp4 = *__cil_tmp3;
2076#line 95
2077 outb_p((unsigned char)34, __cil_tmp4);
2078#line 97
2079 __cil_tmp5 = & io;
2080#line 97
2081 __cil_tmp6 = *__cil_tmp5;
2082#line 97
2083 __cil_tmp7 = __cil_tmp6 + 1;
2084#line 97
2085 tmp = inb(__cil_tmp7);
2086#line 97
2087 cr_data = (unsigned int )tmp;
2088#line 99
2089 cr_data = cr_data | 128U;
2090#line 100
2091 __cil_tmp8 = & io;
2092#line 100
2093 __cil_tmp9 = *__cil_tmp8;
2094#line 100
2095 outb_p((unsigned char)34, __cil_tmp9);
2096#line 102
2097 __cil_tmp10 = (unsigned char )cr_data;
2098#line 102
2099 __cil_tmp11 = (int )__cil_tmp10;
2100#line 102
2101 __cil_tmp12 = (unsigned char )__cil_tmp11;
2102#line 102
2103 __cil_tmp13 = & io;
2104#line 102
2105 __cil_tmp14 = *__cil_tmp13;
2106#line 102
2107 __cil_tmp15 = __cil_tmp14 + 1;
2108#line 102
2109 outb_p(__cil_tmp12, __cil_tmp15);
2110 }
2111#line 103
2112 return;
2113}
2114}
2115#line 113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2116__inline static void pc87413_enable_swc(void)
2117{ unsigned int cr_data ;
2118 unsigned char tmp ;
2119 int *__cil_tmp3 ;
2120 int __cil_tmp4 ;
2121 int *__cil_tmp5 ;
2122 int __cil_tmp6 ;
2123 int __cil_tmp7 ;
2124 int *__cil_tmp8 ;
2125 int __cil_tmp9 ;
2126 int *__cil_tmp10 ;
2127 int __cil_tmp11 ;
2128 int __cil_tmp12 ;
2129 int *__cil_tmp13 ;
2130 int __cil_tmp14 ;
2131 unsigned char __cil_tmp15 ;
2132 int __cil_tmp16 ;
2133 unsigned char __cil_tmp17 ;
2134 int *__cil_tmp18 ;
2135 int __cil_tmp19 ;
2136 int __cil_tmp20 ;
2137
2138 {
2139 {
2140#line 115
2141 cr_data = 0U;
2142#line 119
2143 __cil_tmp3 = & io;
2144#line 119
2145 __cil_tmp4 = *__cil_tmp3;
2146#line 119
2147 outb_p((unsigned char)7, __cil_tmp4);
2148#line 120
2149 __cil_tmp5 = & io;
2150#line 120
2151 __cil_tmp6 = *__cil_tmp5;
2152#line 120
2153 __cil_tmp7 = __cil_tmp6 + 1;
2154#line 120
2155 outb_p((unsigned char)4, __cil_tmp7);
2156#line 122
2157 __cil_tmp8 = & io;
2158#line 122
2159 __cil_tmp9 = *__cil_tmp8;
2160#line 122
2161 outb_p((unsigned char)48, __cil_tmp9);
2162#line 123
2163 __cil_tmp10 = & io;
2164#line 123
2165 __cil_tmp11 = *__cil_tmp10;
2166#line 123
2167 __cil_tmp12 = __cil_tmp11 + 1;
2168#line 123
2169 tmp = inb(__cil_tmp12);
2170#line 123
2171 cr_data = (unsigned int )tmp;
2172#line 124
2173 cr_data = cr_data | 1U;
2174#line 125
2175 __cil_tmp13 = & io;
2176#line 125
2177 __cil_tmp14 = *__cil_tmp13;
2178#line 125
2179 outb_p((unsigned char)48, __cil_tmp14);
2180#line 126
2181 __cil_tmp15 = (unsigned char )cr_data;
2182#line 126
2183 __cil_tmp16 = (int )__cil_tmp15;
2184#line 126
2185 __cil_tmp17 = (unsigned char )__cil_tmp16;
2186#line 126
2187 __cil_tmp18 = & io;
2188#line 126
2189 __cil_tmp19 = *__cil_tmp18;
2190#line 126
2191 __cil_tmp20 = __cil_tmp19 + 1;
2192#line 126
2193 outb_p(__cil_tmp17, __cil_tmp20);
2194 }
2195#line 127
2196 return;
2197}
2198}
2199#line 135 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2200static void pc87413_get_swc_base_addr(void)
2201{ unsigned char addr_l ;
2202 unsigned char addr_h ;
2203 int *__cil_tmp3 ;
2204 int __cil_tmp4 ;
2205 int *__cil_tmp5 ;
2206 int __cil_tmp6 ;
2207 int __cil_tmp7 ;
2208 int *__cil_tmp8 ;
2209 int __cil_tmp9 ;
2210 int *__cil_tmp10 ;
2211 int __cil_tmp11 ;
2212 int __cil_tmp12 ;
2213 int __cil_tmp13 ;
2214 int __cil_tmp14 ;
2215 int __cil_tmp15 ;
2216
2217 {
2218 {
2219#line 137
2220 addr_h = (unsigned char)0;
2221#line 141
2222 __cil_tmp3 = & io;
2223#line 141
2224 __cil_tmp4 = *__cil_tmp3;
2225#line 141
2226 outb_p((unsigned char)96, __cil_tmp4);
2227#line 142
2228 __cil_tmp5 = & io;
2229#line 142
2230 __cil_tmp6 = *__cil_tmp5;
2231#line 142
2232 __cil_tmp7 = __cil_tmp6 + 1;
2233#line 142
2234 addr_h = inb(__cil_tmp7);
2235#line 144
2236 __cil_tmp8 = & io;
2237#line 144
2238 __cil_tmp9 = *__cil_tmp8;
2239#line 144
2240 outb_p((unsigned char)97, __cil_tmp9);
2241#line 146
2242 __cil_tmp10 = & io;
2243#line 146
2244 __cil_tmp11 = *__cil_tmp10;
2245#line 146
2246 __cil_tmp12 = __cil_tmp11 + 1;
2247#line 146
2248 addr_l = inb(__cil_tmp12);
2249#line 148
2250 __cil_tmp13 = (int )addr_l;
2251#line 148
2252 __cil_tmp14 = (int )addr_h;
2253#line 148
2254 __cil_tmp15 = __cil_tmp14 << 8;
2255#line 148
2256 swc_base_addr = __cil_tmp15 + __cil_tmp13;
2257 }
2258#line 149
2259 return;
2260}
2261}
2262#line 158 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2263__inline static void pc87413_swc_bank3(void)
2264{ unsigned char tmp ;
2265 int __cil_tmp2 ;
2266 unsigned int __cil_tmp3 ;
2267 unsigned int __cil_tmp4 ;
2268 int __cil_tmp5 ;
2269 unsigned char __cil_tmp6 ;
2270 int __cil_tmp7 ;
2271
2272 {
2273 {
2274#line 161
2275 __cil_tmp2 = swc_base_addr + 15;
2276#line 161
2277 tmp = inb(__cil_tmp2);
2278#line 161
2279 __cil_tmp3 = (unsigned int )tmp;
2280#line 161
2281 __cil_tmp4 = __cil_tmp3 | 3U;
2282#line 161
2283 __cil_tmp5 = (int )__cil_tmp4;
2284#line 161
2285 __cil_tmp6 = (unsigned char )__cil_tmp5;
2286#line 161
2287 __cil_tmp7 = swc_base_addr + 15;
2288#line 161
2289 outb_p(__cil_tmp6, __cil_tmp7);
2290 }
2291#line 162
2292 return;
2293}
2294}
2295#line 169 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2296__inline static void pc87413_programm_wdto(char pc87413_time )
2297{ unsigned char __cil_tmp2 ;
2298 int __cil_tmp3 ;
2299 unsigned char __cil_tmp4 ;
2300 int __cil_tmp5 ;
2301
2302 {
2303 {
2304#line 172
2305 __cil_tmp2 = (unsigned char )pc87413_time;
2306#line 172
2307 __cil_tmp3 = (int )__cil_tmp2;
2308#line 172
2309 __cil_tmp4 = (unsigned char )__cil_tmp3;
2310#line 172
2311 __cil_tmp5 = swc_base_addr + 17;
2312#line 172
2313 outb_p(__cil_tmp4, __cil_tmp5);
2314 }
2315#line 173
2316 return;
2317}
2318}
2319#line 180 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2320__inline static void pc87413_enable_wden(void)
2321{ unsigned char tmp ;
2322 int __cil_tmp2 ;
2323 unsigned int __cil_tmp3 ;
2324 unsigned int __cil_tmp4 ;
2325 int __cil_tmp5 ;
2326 unsigned char __cil_tmp6 ;
2327 int __cil_tmp7 ;
2328
2329 {
2330 {
2331#line 183
2332 __cil_tmp2 = swc_base_addr + 16;
2333#line 183
2334 tmp = inb(__cil_tmp2);
2335#line 183
2336 __cil_tmp3 = (unsigned int )tmp;
2337#line 183
2338 __cil_tmp4 = __cil_tmp3 | 1U;
2339#line 183
2340 __cil_tmp5 = (int )__cil_tmp4;
2341#line 183
2342 __cil_tmp6 = (unsigned char )__cil_tmp5;
2343#line 183
2344 __cil_tmp7 = swc_base_addr + 16;
2345#line 183
2346 outb_p(__cil_tmp6, __cil_tmp7);
2347 }
2348#line 184
2349 return;
2350}
2351}
2352#line 190 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2353__inline static void pc87413_enable_sw_wd_tren(void)
2354{ unsigned char tmp ;
2355 int __cil_tmp2 ;
2356 unsigned int __cil_tmp3 ;
2357 unsigned int __cil_tmp4 ;
2358 int __cil_tmp5 ;
2359 unsigned char __cil_tmp6 ;
2360 int __cil_tmp7 ;
2361
2362 {
2363 {
2364#line 193
2365 __cil_tmp2 = swc_base_addr + 18;
2366#line 193
2367 tmp = inb(__cil_tmp2);
2368#line 193
2369 __cil_tmp3 = (unsigned int )tmp;
2370#line 193
2371 __cil_tmp4 = __cil_tmp3 | 128U;
2372#line 193
2373 __cil_tmp5 = (int )__cil_tmp4;
2374#line 193
2375 __cil_tmp6 = (unsigned char )__cil_tmp5;
2376#line 193
2377 __cil_tmp7 = swc_base_addr + 18;
2378#line 193
2379 outb_p(__cil_tmp6, __cil_tmp7);
2380 }
2381#line 194
2382 return;
2383}
2384}
2385#line 201 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2386__inline static void pc87413_disable_sw_wd_tren(void)
2387{ unsigned char tmp ;
2388 int __cil_tmp2 ;
2389 int __cil_tmp3 ;
2390 int __cil_tmp4 ;
2391 unsigned char __cil_tmp5 ;
2392 int __cil_tmp6 ;
2393
2394 {
2395 {
2396#line 204
2397 __cil_tmp2 = swc_base_addr + 18;
2398#line 204
2399 tmp = inb(__cil_tmp2);
2400#line 204
2401 __cil_tmp3 = (int )tmp;
2402#line 204
2403 __cil_tmp4 = __cil_tmp3 & 127;
2404#line 204
2405 __cil_tmp5 = (unsigned char )__cil_tmp4;
2406#line 204
2407 __cil_tmp6 = swc_base_addr + 18;
2408#line 204
2409 outb_p(__cil_tmp5, __cil_tmp6);
2410 }
2411#line 205
2412 return;
2413}
2414}
2415#line 212 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2416__inline static void pc87413_enable_sw_wd_trg(void)
2417{ unsigned char tmp ;
2418 int __cil_tmp2 ;
2419 unsigned int __cil_tmp3 ;
2420 unsigned int __cil_tmp4 ;
2421 int __cil_tmp5 ;
2422 unsigned char __cil_tmp6 ;
2423 int __cil_tmp7 ;
2424
2425 {
2426 {
2427#line 215
2428 __cil_tmp2 = swc_base_addr + 16;
2429#line 215
2430 tmp = inb(__cil_tmp2);
2431#line 215
2432 __cil_tmp3 = (unsigned int )tmp;
2433#line 215
2434 __cil_tmp4 = __cil_tmp3 | 128U;
2435#line 215
2436 __cil_tmp5 = (int )__cil_tmp4;
2437#line 215
2438 __cil_tmp6 = (unsigned char )__cil_tmp5;
2439#line 215
2440 __cil_tmp7 = swc_base_addr + 16;
2441#line 215
2442 outb_p(__cil_tmp6, __cil_tmp7);
2443 }
2444#line 216
2445 return;
2446}
2447}
2448#line 223 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2449__inline static void pc87413_disable_sw_wd_trg(void)
2450{ unsigned char tmp ;
2451 int __cil_tmp2 ;
2452 int __cil_tmp3 ;
2453 int __cil_tmp4 ;
2454 unsigned char __cil_tmp5 ;
2455 int __cil_tmp6 ;
2456
2457 {
2458 {
2459#line 226
2460 __cil_tmp2 = swc_base_addr + 16;
2461#line 226
2462 tmp = inb(__cil_tmp2);
2463#line 226
2464 __cil_tmp3 = (int )tmp;
2465#line 226
2466 __cil_tmp4 = __cil_tmp3 & 127;
2467#line 226
2468 __cil_tmp5 = (unsigned char )__cil_tmp4;
2469#line 226
2470 __cil_tmp6 = swc_base_addr + 16;
2471#line 226
2472 outb_p(__cil_tmp5, __cil_tmp6);
2473 }
2474#line 227
2475 return;
2476}
2477}
2478#line 236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2479static void pc87413_enable(void)
2480{ int *__cil_tmp1 ;
2481 int __cil_tmp2 ;
2482 char __cil_tmp3 ;
2483 int __cil_tmp4 ;
2484 char __cil_tmp5 ;
2485
2486 {
2487 {
2488#line 238
2489 spin_lock(& io_lock);
2490#line 240
2491 pc87413_swc_bank3();
2492#line 241
2493 __cil_tmp1 = & timeout;
2494#line 241
2495 __cil_tmp2 = *__cil_tmp1;
2496#line 241
2497 __cil_tmp3 = (char )__cil_tmp2;
2498#line 241
2499 __cil_tmp4 = (int )__cil_tmp3;
2500#line 241
2501 __cil_tmp5 = (char )__cil_tmp4;
2502#line 241
2503 pc87413_programm_wdto(__cil_tmp5);
2504#line 242
2505 pc87413_enable_wden();
2506#line 243
2507 pc87413_enable_sw_wd_tren();
2508#line 244
2509 pc87413_enable_sw_wd_trg();
2510#line 246
2511 spin_unlock(& io_lock);
2512 }
2513#line 247
2514 return;
2515}
2516}
2517#line 251 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2518static void pc87413_disable(void)
2519{
2520
2521 {
2522 {
2523#line 253
2524 spin_lock(& io_lock);
2525#line 255
2526 pc87413_swc_bank3();
2527#line 256
2528 pc87413_disable_sw_wd_tren();
2529#line 257
2530 pc87413_disable_sw_wd_trg();
2531#line 258
2532 pc87413_programm_wdto((char)0);
2533#line 260
2534 spin_unlock(& io_lock);
2535 }
2536#line 261
2537 return;
2538}
2539}
2540#line 265 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2541static void pc87413_refresh(void)
2542{ int *__cil_tmp1 ;
2543 int __cil_tmp2 ;
2544 char __cil_tmp3 ;
2545 int __cil_tmp4 ;
2546 char __cil_tmp5 ;
2547
2548 {
2549 {
2550#line 267
2551 spin_lock(& io_lock);
2552#line 269
2553 pc87413_swc_bank3();
2554#line 270
2555 pc87413_disable_sw_wd_tren();
2556#line 271
2557 pc87413_disable_sw_wd_trg();
2558#line 272
2559 __cil_tmp1 = & timeout;
2560#line 272
2561 __cil_tmp2 = *__cil_tmp1;
2562#line 272
2563 __cil_tmp3 = (char )__cil_tmp2;
2564#line 272
2565 __cil_tmp4 = (int )__cil_tmp3;
2566#line 272
2567 __cil_tmp5 = (char )__cil_tmp4;
2568#line 272
2569 pc87413_programm_wdto(__cil_tmp5);
2570#line 273
2571 pc87413_enable_wden();
2572#line 274
2573 pc87413_enable_sw_wd_tren();
2574#line 275
2575 pc87413_enable_sw_wd_trg();
2576#line 277
2577 spin_unlock(& io_lock);
2578 }
2579#line 278
2580 return;
2581}
2582}
2583#line 289 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2584static int pc87413_open(struct inode *inode , struct file *file )
2585{ int tmp ;
2586 int tmp___0 ;
2587 unsigned long volatile *__cil_tmp5 ;
2588 bool *__cil_tmp6 ;
2589 bool __cil_tmp7 ;
2590 int *__cil_tmp8 ;
2591 int __cil_tmp9 ;
2592
2593 {
2594 {
2595#line 293
2596 __cil_tmp5 = (unsigned long volatile *)(& timer_enabled);
2597#line 293
2598 tmp = test_and_set_bit(0, __cil_tmp5);
2599 }
2600#line 293
2601 if (tmp != 0) {
2602#line 294
2603 return (-16);
2604 } else {
2605
2606 }
2607 {
2608#line 296
2609 __cil_tmp6 = & nowayout;
2610#line 296
2611 __cil_tmp7 = *__cil_tmp6;
2612#line 296
2613 if ((int )__cil_tmp7) {
2614 {
2615#line 297
2616 __module_get(& __this_module);
2617 }
2618 } else {
2619
2620 }
2621 }
2622 {
2623#line 300
2624 pc87413_refresh();
2625#line 302
2626 __cil_tmp8 = & timeout;
2627#line 302
2628 __cil_tmp9 = *__cil_tmp8;
2629#line 302
2630 printk("<6>pc87413_wdt: Watchdog enabled. Timeout set to %d minute(s).\n", __cil_tmp9);
2631#line 304
2632 tmp___0 = nonseekable_open(inode, file);
2633 }
2634#line 304
2635 return (tmp___0);
2636}
2637}
2638#line 319 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2639static int pc87413_release(struct inode *inode , struct file *file )
2640{ signed char __cil_tmp3 ;
2641 int __cil_tmp4 ;
2642 unsigned long volatile *__cil_tmp5 ;
2643
2644 {
2645 {
2646#line 323
2647 __cil_tmp3 = (signed char )expect_close;
2648#line 323
2649 __cil_tmp4 = (int )__cil_tmp3;
2650#line 323
2651 if (__cil_tmp4 == 42) {
2652 {
2653#line 324
2654 pc87413_disable();
2655#line 325
2656 printk("<6>pc87413_wdt: Watchdog disabled, sleeping again...\n");
2657 }
2658 } else {
2659 {
2660#line 327
2661 printk("<2>pc87413_wdt: Unexpected close, not stopping watchdog!\n");
2662#line 328
2663 pc87413_refresh();
2664 }
2665 }
2666 }
2667 {
2668#line 330
2669 __cil_tmp5 = (unsigned long volatile *)(& timer_enabled);
2670#line 330
2671 clear_bit(0, __cil_tmp5);
2672#line 331
2673 expect_close = (char)0;
2674 }
2675#line 332
2676 return (0);
2677}
2678}
2679#line 342 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2680static int pc87413_status(void)
2681{
2682
2683 {
2684#line 344
2685 return (0);
2686}
2687}
2688#line 358 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2689static ssize_t pc87413_write(struct file *file , char const *data , size_t len ,
2690 loff_t *ppos )
2691{ size_t i ;
2692 char c ;
2693 int __ret_gu ;
2694 unsigned long __val_gu ;
2695 bool *__cil_tmp9 ;
2696 bool __cil_tmp10 ;
2697 signed char __cil_tmp11 ;
2698 int __cil_tmp12 ;
2699
2700 {
2701#line 362
2702 if (len != 0UL) {
2703 {
2704#line 363
2705 __cil_tmp9 = & nowayout;
2706#line 363
2707 __cil_tmp10 = *__cil_tmp9;
2708#line 363
2709 if (! __cil_tmp10) {
2710#line 367
2711 expect_close = (char)0;
2712#line 371
2713 i = 0UL;
2714#line 371
2715 goto ldv_18099;
2716 ldv_18098:
2717 {
2718#line 373
2719 might_fault();
2720 }
2721#line 373
2722 if (1 == 1) {
2723#line 373
2724 goto case_1;
2725 } else
2726#line 373
2727 if (1 == 2) {
2728#line 373
2729 goto case_2;
2730 } else
2731#line 373
2732 if (1 == 4) {
2733#line 373
2734 goto case_4;
2735 } else
2736#line 373
2737 if (1 == 8) {
2738#line 373
2739 goto case_8;
2740 } else {
2741 {
2742#line 373
2743 goto switch_default;
2744#line 373
2745 if (0) {
2746 case_1:
2747#line 373
2748 __asm__ volatile ("call __get_user_1": "=a" (__ret_gu), "=d" (__val_gu): "0" (data + i));
2749#line 373
2750 goto ldv_18092;
2751 case_2:
2752#line 373
2753 __asm__ volatile ("call __get_user_2": "=a" (__ret_gu), "=d" (__val_gu): "0" (data + i));
2754#line 373
2755 goto ldv_18092;
2756 case_4:
2757#line 373
2758 __asm__ volatile ("call __get_user_4": "=a" (__ret_gu), "=d" (__val_gu): "0" (data + i));
2759#line 373
2760 goto ldv_18092;
2761 case_8:
2762#line 373
2763 __asm__ volatile ("call __get_user_8": "=a" (__ret_gu), "=d" (__val_gu): "0" (data + i));
2764#line 373
2765 goto ldv_18092;
2766 switch_default:
2767#line 373
2768 __asm__ volatile ("call __get_user_X": "=a" (__ret_gu), "=d" (__val_gu): "0" (data + i));
2769#line 373
2770 goto ldv_18092;
2771 } else {
2772 switch_break: ;
2773 }
2774 }
2775 }
2776 ldv_18092:
2777#line 373
2778 c = (char )__val_gu;
2779#line 373
2780 if (__ret_gu != 0) {
2781#line 374
2782 return (-14L);
2783 } else {
2784
2785 }
2786 {
2787#line 375
2788 __cil_tmp11 = (signed char )c;
2789#line 375
2790 __cil_tmp12 = (int )__cil_tmp11;
2791#line 375
2792 if (__cil_tmp12 == 86) {
2793#line 376
2794 expect_close = (char)42;
2795 } else {
2796
2797 }
2798 }
2799#line 371
2800 i = i + 1UL;
2801 ldv_18099: ;
2802#line 371
2803 if (i != len) {
2804#line 372
2805 goto ldv_18098;
2806 } else {
2807#line 374
2808 goto ldv_18100;
2809 }
2810 ldv_18100: ;
2811 } else {
2812
2813 }
2814 }
2815 {
2816#line 381
2817 pc87413_refresh();
2818 }
2819 } else {
2820
2821 }
2822#line 383
2823 return ((ssize_t )len);
2824}
2825}
2826#line 397 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
2827static long pc87413_ioctl(struct file *file , unsigned int cmd , unsigned long arg )
2828{ int new_timeout ;
2829 union __anonunion_uarg_146 uarg ;
2830 struct watchdog_info ident ;
2831 long tmp___0 ;
2832 int tmp___1 ;
2833 int __ret_pu ;
2834 int __pu_val ;
2835 int __ret_pu___0 ;
2836 int __pu_val___0 ;
2837 int options ;
2838 int retval ;
2839 int __ret_gu ;
2840 unsigned long __val_gu ;
2841 int __ret_gu___0 ;
2842 unsigned long __val_gu___0 ;
2843 int __ret_pu___1 ;
2844 int __pu_val___1 ;
2845 struct watchdog_info *__cil_tmp22 ;
2846 unsigned long __cil_tmp23 ;
2847 unsigned long __cil_tmp24 ;
2848 unsigned long __cil_tmp25 ;
2849 unsigned long __cil_tmp26 ;
2850 unsigned long __cil_tmp27 ;
2851 unsigned long __cil_tmp28 ;
2852 unsigned long __cil_tmp29 ;
2853 unsigned long __cil_tmp30 ;
2854 unsigned long __cil_tmp31 ;
2855 unsigned long __cil_tmp32 ;
2856 unsigned long __cil_tmp33 ;
2857 unsigned long __cil_tmp34 ;
2858 unsigned long __cil_tmp35 ;
2859 unsigned long __cil_tmp36 ;
2860 unsigned long __cil_tmp37 ;
2861 unsigned long __cil_tmp38 ;
2862 unsigned long __cil_tmp39 ;
2863 unsigned long __cil_tmp40 ;
2864 unsigned long __cil_tmp41 ;
2865 unsigned long __cil_tmp42 ;
2866 unsigned long __cil_tmp43 ;
2867 unsigned long __cil_tmp44 ;
2868 unsigned long __cil_tmp45 ;
2869 unsigned long __cil_tmp46 ;
2870 unsigned long __cil_tmp47 ;
2871 unsigned long __cil_tmp48 ;
2872 unsigned long __cil_tmp49 ;
2873 unsigned long __cil_tmp50 ;
2874 unsigned long __cil_tmp51 ;
2875 unsigned long __cil_tmp52 ;
2876 unsigned long __cil_tmp53 ;
2877 unsigned long __cil_tmp54 ;
2878 unsigned long __cil_tmp55 ;
2879 unsigned long __cil_tmp56 ;
2880 unsigned long __cil_tmp57 ;
2881 unsigned long __cil_tmp58 ;
2882 unsigned long __cil_tmp59 ;
2883 unsigned long __cil_tmp60 ;
2884 unsigned long __cil_tmp61 ;
2885 unsigned long __cil_tmp62 ;
2886 unsigned long __cil_tmp63 ;
2887 unsigned long __cil_tmp64 ;
2888 unsigned long __cil_tmp65 ;
2889 unsigned long __cil_tmp66 ;
2890 unsigned long __cil_tmp67 ;
2891 unsigned long __cil_tmp68 ;
2892 unsigned long __cil_tmp69 ;
2893 unsigned long __cil_tmp70 ;
2894 unsigned long __cil_tmp71 ;
2895 unsigned long __cil_tmp72 ;
2896 unsigned long __cil_tmp73 ;
2897 unsigned long __cil_tmp74 ;
2898 unsigned long __cil_tmp75 ;
2899 unsigned long __cil_tmp76 ;
2900 unsigned long __cil_tmp77 ;
2901 unsigned long __cil_tmp78 ;
2902 unsigned long __cil_tmp79 ;
2903 unsigned long __cil_tmp80 ;
2904 unsigned long __cil_tmp81 ;
2905 unsigned long __cil_tmp82 ;
2906 unsigned long __cil_tmp83 ;
2907 unsigned long __cil_tmp84 ;
2908 unsigned long __cil_tmp85 ;
2909 unsigned long __cil_tmp86 ;
2910 unsigned long __cil_tmp87 ;
2911 unsigned long __cil_tmp88 ;
2912 unsigned long __cil_tmp89 ;
2913 unsigned long __cil_tmp90 ;
2914 unsigned long __cil_tmp91 ;
2915 unsigned long __cil_tmp92 ;
2916 unsigned long __cil_tmp93 ;
2917 unsigned long __cil_tmp94 ;
2918 unsigned long __cil_tmp95 ;
2919 unsigned long __cil_tmp96 ;
2920 unsigned long __cil_tmp97 ;
2921 unsigned long __cil_tmp98 ;
2922 unsigned long __cil_tmp99 ;
2923 unsigned long __cil_tmp100 ;
2924 unsigned long __cil_tmp101 ;
2925 unsigned long __cil_tmp102 ;
2926 unsigned long __cil_tmp103 ;
2927 unsigned long __cil_tmp104 ;
2928 unsigned long __cil_tmp105 ;
2929 unsigned long __cil_tmp106 ;
2930 unsigned long __cil_tmp107 ;
2931 unsigned long __cil_tmp108 ;
2932 unsigned long __cil_tmp109 ;
2933 unsigned long __cil_tmp110 ;
2934 unsigned long __cil_tmp111 ;
2935 unsigned long __cil_tmp112 ;
2936 unsigned long __cil_tmp113 ;
2937 unsigned long __cil_tmp114 ;
2938 unsigned long __cil_tmp115 ;
2939 unsigned long __cil_tmp116 ;
2940 unsigned long __cil_tmp117 ;
2941 unsigned long __cil_tmp118 ;
2942 unsigned long __cil_tmp119 ;
2943 void *__cil_tmp120 ;
2944 void const *__cil_tmp121 ;
2945 int __cil_tmp122 ;
2946 int *__cil_tmp123 ;
2947 int *__cil_tmp124 ;
2948 int __cil_tmp125 ;
2949
2950 {
2951#line 407
2952 __cil_tmp22 = & ident;
2953#line 407
2954 *((__u32 *)__cil_tmp22) = 33152U;
2955#line 407
2956 __cil_tmp23 = (unsigned long )(& ident) + 4;
2957#line 407
2958 *((__u32 *)__cil_tmp23) = 1U;
2959#line 407
2960 __cil_tmp24 = 0 * 1UL;
2961#line 407
2962 __cil_tmp25 = 8 + __cil_tmp24;
2963#line 407
2964 __cil_tmp26 = (unsigned long )(& ident) + __cil_tmp25;
2965#line 407
2966 *((__u8 *)__cil_tmp26) = (__u8 )'P';
2967#line 407
2968 __cil_tmp27 = 1 * 1UL;
2969#line 407
2970 __cil_tmp28 = 8 + __cil_tmp27;
2971#line 407
2972 __cil_tmp29 = (unsigned long )(& ident) + __cil_tmp28;
2973#line 407
2974 *((__u8 *)__cil_tmp29) = (__u8 )'C';
2975#line 407
2976 __cil_tmp30 = 2 * 1UL;
2977#line 407
2978 __cil_tmp31 = 8 + __cil_tmp30;
2979#line 407
2980 __cil_tmp32 = (unsigned long )(& ident) + __cil_tmp31;
2981#line 407
2982 *((__u8 *)__cil_tmp32) = (__u8 )'8';
2983#line 407
2984 __cil_tmp33 = 3 * 1UL;
2985#line 407
2986 __cil_tmp34 = 8 + __cil_tmp33;
2987#line 407
2988 __cil_tmp35 = (unsigned long )(& ident) + __cil_tmp34;
2989#line 407
2990 *((__u8 *)__cil_tmp35) = (__u8 )'7';
2991#line 407
2992 __cil_tmp36 = 4 * 1UL;
2993#line 407
2994 __cil_tmp37 = 8 + __cil_tmp36;
2995#line 407
2996 __cil_tmp38 = (unsigned long )(& ident) + __cil_tmp37;
2997#line 407
2998 *((__u8 *)__cil_tmp38) = (__u8 )'4';
2999#line 407
3000 __cil_tmp39 = 5 * 1UL;
3001#line 407
3002 __cil_tmp40 = 8 + __cil_tmp39;
3003#line 407
3004 __cil_tmp41 = (unsigned long )(& ident) + __cil_tmp40;
3005#line 407
3006 *((__u8 *)__cil_tmp41) = (__u8 )'1';
3007#line 407
3008 __cil_tmp42 = 6 * 1UL;
3009#line 407
3010 __cil_tmp43 = 8 + __cil_tmp42;
3011#line 407
3012 __cil_tmp44 = (unsigned long )(& ident) + __cil_tmp43;
3013#line 407
3014 *((__u8 *)__cil_tmp44) = (__u8 )'3';
3015#line 407
3016 __cil_tmp45 = 7 * 1UL;
3017#line 407
3018 __cil_tmp46 = 8 + __cil_tmp45;
3019#line 407
3020 __cil_tmp47 = (unsigned long )(& ident) + __cil_tmp46;
3021#line 407
3022 *((__u8 *)__cil_tmp47) = (__u8 )'(';
3023#line 407
3024 __cil_tmp48 = 8 * 1UL;
3025#line 407
3026 __cil_tmp49 = 8 + __cil_tmp48;
3027#line 407
3028 __cil_tmp50 = (unsigned long )(& ident) + __cil_tmp49;
3029#line 407
3030 *((__u8 *)__cil_tmp50) = (__u8 )'H';
3031#line 407
3032 __cil_tmp51 = 9 * 1UL;
3033#line 407
3034 __cil_tmp52 = 8 + __cil_tmp51;
3035#line 407
3036 __cil_tmp53 = (unsigned long )(& ident) + __cil_tmp52;
3037#line 407
3038 *((__u8 *)__cil_tmp53) = (__u8 )'F';
3039#line 407
3040 __cil_tmp54 = 10 * 1UL;
3041#line 407
3042 __cil_tmp55 = 8 + __cil_tmp54;
3043#line 407
3044 __cil_tmp56 = (unsigned long )(& ident) + __cil_tmp55;
3045#line 407
3046 *((__u8 *)__cil_tmp56) = (__u8 )'/';
3047#line 407
3048 __cil_tmp57 = 11 * 1UL;
3049#line 407
3050 __cil_tmp58 = 8 + __cil_tmp57;
3051#line 407
3052 __cil_tmp59 = (unsigned long )(& ident) + __cil_tmp58;
3053#line 407
3054 *((__u8 *)__cil_tmp59) = (__u8 )'F';
3055#line 407
3056 __cil_tmp60 = 12 * 1UL;
3057#line 407
3058 __cil_tmp61 = 8 + __cil_tmp60;
3059#line 407
3060 __cil_tmp62 = (unsigned long )(& ident) + __cil_tmp61;
3061#line 407
3062 *((__u8 *)__cil_tmp62) = (__u8 )')';
3063#line 407
3064 __cil_tmp63 = 13 * 1UL;
3065#line 407
3066 __cil_tmp64 = 8 + __cil_tmp63;
3067#line 407
3068 __cil_tmp65 = (unsigned long )(& ident) + __cil_tmp64;
3069#line 407
3070 *((__u8 *)__cil_tmp65) = (__u8 )' ';
3071#line 407
3072 __cil_tmp66 = 14 * 1UL;
3073#line 407
3074 __cil_tmp67 = 8 + __cil_tmp66;
3075#line 407
3076 __cil_tmp68 = (unsigned long )(& ident) + __cil_tmp67;
3077#line 407
3078 *((__u8 *)__cil_tmp68) = (__u8 )'w';
3079#line 407
3080 __cil_tmp69 = 15 * 1UL;
3081#line 407
3082 __cil_tmp70 = 8 + __cil_tmp69;
3083#line 407
3084 __cil_tmp71 = (unsigned long )(& ident) + __cil_tmp70;
3085#line 407
3086 *((__u8 *)__cil_tmp71) = (__u8 )'a';
3087#line 407
3088 __cil_tmp72 = 16 * 1UL;
3089#line 407
3090 __cil_tmp73 = 8 + __cil_tmp72;
3091#line 407
3092 __cil_tmp74 = (unsigned long )(& ident) + __cil_tmp73;
3093#line 407
3094 *((__u8 *)__cil_tmp74) = (__u8 )'t';
3095#line 407
3096 __cil_tmp75 = 17 * 1UL;
3097#line 407
3098 __cil_tmp76 = 8 + __cil_tmp75;
3099#line 407
3100 __cil_tmp77 = (unsigned long )(& ident) + __cil_tmp76;
3101#line 407
3102 *((__u8 *)__cil_tmp77) = (__u8 )'c';
3103#line 407
3104 __cil_tmp78 = 18 * 1UL;
3105#line 407
3106 __cil_tmp79 = 8 + __cil_tmp78;
3107#line 407
3108 __cil_tmp80 = (unsigned long )(& ident) + __cil_tmp79;
3109#line 407
3110 *((__u8 *)__cil_tmp80) = (__u8 )'h';
3111#line 407
3112 __cil_tmp81 = 19 * 1UL;
3113#line 407
3114 __cil_tmp82 = 8 + __cil_tmp81;
3115#line 407
3116 __cil_tmp83 = (unsigned long )(& ident) + __cil_tmp82;
3117#line 407
3118 *((__u8 *)__cil_tmp83) = (__u8 )'d';
3119#line 407
3120 __cil_tmp84 = 20 * 1UL;
3121#line 407
3122 __cil_tmp85 = 8 + __cil_tmp84;
3123#line 407
3124 __cil_tmp86 = (unsigned long )(& ident) + __cil_tmp85;
3125#line 407
3126 *((__u8 *)__cil_tmp86) = (__u8 )'o';
3127#line 407
3128 __cil_tmp87 = 21 * 1UL;
3129#line 407
3130 __cil_tmp88 = 8 + __cil_tmp87;
3131#line 407
3132 __cil_tmp89 = (unsigned long )(& ident) + __cil_tmp88;
3133#line 407
3134 *((__u8 *)__cil_tmp89) = (__u8 )'g';
3135#line 407
3136 __cil_tmp90 = 22 * 1UL;
3137#line 407
3138 __cil_tmp91 = 8 + __cil_tmp90;
3139#line 407
3140 __cil_tmp92 = (unsigned long )(& ident) + __cil_tmp91;
3141#line 407
3142 *((__u8 *)__cil_tmp92) = (__u8 )'\000';
3143#line 407
3144 __cil_tmp93 = 23 * 1UL;
3145#line 407
3146 __cil_tmp94 = 8 + __cil_tmp93;
3147#line 407
3148 __cil_tmp95 = (unsigned long )(& ident) + __cil_tmp94;
3149#line 407
3150 *((__u8 *)__cil_tmp95) = (unsigned char)0;
3151#line 407
3152 __cil_tmp96 = 24 * 1UL;
3153#line 407
3154 __cil_tmp97 = 8 + __cil_tmp96;
3155#line 407
3156 __cil_tmp98 = (unsigned long )(& ident) + __cil_tmp97;
3157#line 407
3158 *((__u8 *)__cil_tmp98) = (unsigned char)0;
3159#line 407
3160 __cil_tmp99 = 25 * 1UL;
3161#line 407
3162 __cil_tmp100 = 8 + __cil_tmp99;
3163#line 407
3164 __cil_tmp101 = (unsigned long )(& ident) + __cil_tmp100;
3165#line 407
3166 *((__u8 *)__cil_tmp101) = (unsigned char)0;
3167#line 407
3168 __cil_tmp102 = 26 * 1UL;
3169#line 407
3170 __cil_tmp103 = 8 + __cil_tmp102;
3171#line 407
3172 __cil_tmp104 = (unsigned long )(& ident) + __cil_tmp103;
3173#line 407
3174 *((__u8 *)__cil_tmp104) = (unsigned char)0;
3175#line 407
3176 __cil_tmp105 = 27 * 1UL;
3177#line 407
3178 __cil_tmp106 = 8 + __cil_tmp105;
3179#line 407
3180 __cil_tmp107 = (unsigned long )(& ident) + __cil_tmp106;
3181#line 407
3182 *((__u8 *)__cil_tmp107) = (unsigned char)0;
3183#line 407
3184 __cil_tmp108 = 28 * 1UL;
3185#line 407
3186 __cil_tmp109 = 8 + __cil_tmp108;
3187#line 407
3188 __cil_tmp110 = (unsigned long )(& ident) + __cil_tmp109;
3189#line 407
3190 *((__u8 *)__cil_tmp110) = (unsigned char)0;
3191#line 407
3192 __cil_tmp111 = 29 * 1UL;
3193#line 407
3194 __cil_tmp112 = 8 + __cil_tmp111;
3195#line 407
3196 __cil_tmp113 = (unsigned long )(& ident) + __cil_tmp112;
3197#line 407
3198 *((__u8 *)__cil_tmp113) = (unsigned char)0;
3199#line 407
3200 __cil_tmp114 = 30 * 1UL;
3201#line 407
3202 __cil_tmp115 = 8 + __cil_tmp114;
3203#line 407
3204 __cil_tmp116 = (unsigned long )(& ident) + __cil_tmp115;
3205#line 407
3206 *((__u8 *)__cil_tmp116) = (unsigned char)0;
3207#line 407
3208 __cil_tmp117 = 31 * 1UL;
3209#line 407
3210 __cil_tmp118 = 8 + __cil_tmp117;
3211#line 407
3212 __cil_tmp119 = (unsigned long )(& ident) + __cil_tmp118;
3213#line 407
3214 *((__u8 *)__cil_tmp119) = (unsigned char)0;
3215#line 415
3216 uarg.i = (int *)arg;
3217#line 418
3218 if ((int )cmd == -2144839936) {
3219#line 418
3220 goto case_neg_2144839936;
3221 } else
3222#line 421
3223 if ((int )cmd == -2147199231) {
3224#line 421
3225 goto case_neg_2147199231;
3226 } else
3227#line 423
3228 if ((int )cmd == -2147199230) {
3229#line 423
3230 goto case_neg_2147199230;
3231 } else
3232#line 425
3233 if ((int )cmd == -2147199228) {
3234#line 425
3235 goto case_neg_2147199228;
3236 } else
3237#line 440
3238 if ((int )cmd == -2147199227) {
3239#line 440
3240 goto case_neg_2147199227;
3241 } else
3242#line 446
3243 if ((int )cmd == -1073457402) {
3244#line 446
3245 goto case_neg_1073457402;
3246 } else
3247#line 456
3248 if ((int )cmd == -2147199225) {
3249#line 456
3250 goto case_neg_2147199225;
3251 } else {
3252 {
3253#line 459
3254 goto switch_default___4;
3255#line 417
3256 if (0) {
3257 case_neg_2144839936:
3258 {
3259#line 419
3260 __cil_tmp120 = (void *)uarg.ident;
3261#line 419
3262 __cil_tmp121 = (void const *)(& ident);
3263#line 419
3264 tmp___1 = copy_to_user(__cil_tmp120, __cil_tmp121, 40U);
3265 }
3266#line 419
3267 if (tmp___1 != 0) {
3268#line 419
3269 tmp___0 = -14L;
3270 } else {
3271#line 419
3272 tmp___0 = 0L;
3273 }
3274#line 419
3275 return (tmp___0);
3276 case_neg_2147199231:
3277 {
3278#line 422
3279 might_fault();
3280#line 422
3281 __pu_val = pc87413_status();
3282 }
3283#line 422
3284 if (4 == 1) {
3285#line 422
3286 goto case_1;
3287 } else
3288#line 422
3289 if (4 == 2) {
3290#line 422
3291 goto case_2;
3292 } else
3293#line 422
3294 if (4 == 4) {
3295#line 422
3296 goto case_4;
3297 } else
3298#line 422
3299 if (4 == 8) {
3300#line 422
3301 goto case_8;
3302 } else {
3303 {
3304#line 422
3305 goto switch_default;
3306#line 422
3307 if (0) {
3308 case_1:
3309#line 422
3310 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val),
3311 "c" (uarg.i): "ebx");
3312#line 422
3313 goto ldv_18117;
3314 case_2:
3315#line 422
3316 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val),
3317 "c" (uarg.i): "ebx");
3318#line 422
3319 goto ldv_18117;
3320 case_4:
3321#line 422
3322 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val),
3323 "c" (uarg.i): "ebx");
3324#line 422
3325 goto ldv_18117;
3326 case_8:
3327#line 422
3328 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val),
3329 "c" (uarg.i): "ebx");
3330#line 422
3331 goto ldv_18117;
3332 switch_default:
3333#line 422
3334 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val),
3335 "c" (uarg.i): "ebx");
3336#line 422
3337 goto ldv_18117;
3338 } else {
3339 switch_break___0: ;
3340 }
3341 }
3342 }
3343 ldv_18117: ;
3344#line 422
3345 return ((long )__ret_pu);
3346 case_neg_2147199230:
3347 {
3348#line 424
3349 might_fault();
3350#line 424
3351 __pu_val___0 = 0;
3352 }
3353#line 424
3354 if (4 == 1) {
3355#line 424
3356 goto case_1___0;
3357 } else
3358#line 424
3359 if (4 == 2) {
3360#line 424
3361 goto case_2___0;
3362 } else
3363#line 424
3364 if (4 == 4) {
3365#line 424
3366 goto case_4___0;
3367 } else
3368#line 424
3369 if (4 == 8) {
3370#line 424
3371 goto case_8___0;
3372 } else {
3373 {
3374#line 424
3375 goto switch_default___0;
3376#line 424
3377 if (0) {
3378 case_1___0:
3379#line 424
3380 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu___0): "0" (__pu_val___0),
3381 "c" (uarg.i): "ebx");
3382#line 424
3383 goto ldv_18127;
3384 case_2___0:
3385#line 424
3386 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu___0): "0" (__pu_val___0),
3387 "c" (uarg.i): "ebx");
3388#line 424
3389 goto ldv_18127;
3390 case_4___0:
3391#line 424
3392 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu___0): "0" (__pu_val___0),
3393 "c" (uarg.i): "ebx");
3394#line 424
3395 goto ldv_18127;
3396 case_8___0:
3397#line 424
3398 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu___0): "0" (__pu_val___0),
3399 "c" (uarg.i): "ebx");
3400#line 424
3401 goto ldv_18127;
3402 switch_default___0:
3403#line 424
3404 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu___0): "0" (__pu_val___0),
3405 "c" (uarg.i): "ebx");
3406#line 424
3407 goto ldv_18127;
3408 } else {
3409 switch_break___1: ;
3410 }
3411 }
3412 }
3413 ldv_18127: ;
3414#line 424
3415 return ((long )__ret_pu___0);
3416 case_neg_2147199228:
3417 {
3418#line 427
3419 retval = -22;
3420#line 428
3421 might_fault();
3422 }
3423#line 428
3424 if (4 == 1) {
3425#line 428
3426 goto case_1___1;
3427 } else
3428#line 428
3429 if (4 == 2) {
3430#line 428
3431 goto case_2___1;
3432 } else
3433#line 428
3434 if (4 == 4) {
3435#line 428
3436 goto case_4___1;
3437 } else
3438#line 428
3439 if (4 == 8) {
3440#line 428
3441 goto case_8___1;
3442 } else {
3443 {
3444#line 428
3445 goto switch_default___1;
3446#line 428
3447 if (0) {
3448 case_1___1:
3449#line 428
3450 __asm__ volatile ("call __get_user_1": "=a" (__ret_gu), "=d" (__val_gu): "0" (uarg.i));
3451#line 428
3452 goto ldv_18139;
3453 case_2___1:
3454#line 428
3455 __asm__ volatile ("call __get_user_2": "=a" (__ret_gu), "=d" (__val_gu): "0" (uarg.i));
3456#line 428
3457 goto ldv_18139;
3458 case_4___1:
3459#line 428
3460 __asm__ volatile ("call __get_user_4": "=a" (__ret_gu), "=d" (__val_gu): "0" (uarg.i));
3461#line 428
3462 goto ldv_18139;
3463 case_8___1:
3464#line 428
3465 __asm__ volatile ("call __get_user_8": "=a" (__ret_gu), "=d" (__val_gu): "0" (uarg.i));
3466#line 428
3467 goto ldv_18139;
3468 switch_default___1:
3469#line 428
3470 __asm__ volatile ("call __get_user_X": "=a" (__ret_gu), "=d" (__val_gu): "0" (uarg.i));
3471#line 428
3472 goto ldv_18139;
3473 } else {
3474 switch_break___2: ;
3475 }
3476 }
3477 }
3478 ldv_18139:
3479#line 428
3480 options = (int )__val_gu;
3481#line 428
3482 if (__ret_gu != 0) {
3483#line 429
3484 return (-14L);
3485 } else {
3486
3487 }
3488#line 430
3489 if (options & 1) {
3490 {
3491#line 431
3492 pc87413_disable();
3493#line 432
3494 retval = 0;
3495 }
3496 } else {
3497
3498 }
3499 {
3500#line 434
3501 __cil_tmp122 = options & 2;
3502#line 434
3503 if (__cil_tmp122 != 0) {
3504 {
3505#line 435
3506 pc87413_enable();
3507#line 436
3508 retval = 0;
3509 }
3510 } else {
3511
3512 }
3513 }
3514#line 438
3515 return ((long )retval);
3516 case_neg_2147199227:
3517 {
3518#line 441
3519 pc87413_refresh();
3520 }
3521#line 445
3522 return (0L);
3523 case_neg_1073457402:
3524 {
3525#line 447
3526 might_fault();
3527 }
3528#line 447
3529 if (4 == 1) {
3530#line 447
3531 goto case_1___2;
3532 } else
3533#line 447
3534 if (4 == 2) {
3535#line 447
3536 goto case_2___2;
3537 } else
3538#line 447
3539 if (4 == 4) {
3540#line 447
3541 goto case_4___2;
3542 } else
3543#line 447
3544 if (4 == 8) {
3545#line 447
3546 goto case_8___2;
3547 } else {
3548 {
3549#line 447
3550 goto switch_default___2;
3551#line 447
3552 if (0) {
3553 case_1___2:
3554#line 447
3555 __asm__ volatile ("call __get_user_1": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" (uarg.i));
3556#line 447
3557 goto ldv_18150;
3558 case_2___2:
3559#line 447
3560 __asm__ volatile ("call __get_user_2": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" (uarg.i));
3561#line 447
3562 goto ldv_18150;
3563 case_4___2:
3564#line 447
3565 __asm__ volatile ("call __get_user_4": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" (uarg.i));
3566#line 447
3567 goto ldv_18150;
3568 case_8___2:
3569#line 447
3570 __asm__ volatile ("call __get_user_8": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" (uarg.i));
3571#line 447
3572 goto ldv_18150;
3573 switch_default___2:
3574#line 447
3575 __asm__ volatile ("call __get_user_X": "=a" (__ret_gu___0), "=d" (__val_gu___0): "0" (uarg.i));
3576#line 447
3577 goto ldv_18150;
3578 } else {
3579 switch_break___3: ;
3580 }
3581 }
3582 }
3583 ldv_18150:
3584#line 447
3585 new_timeout = (int )__val_gu___0;
3586#line 447
3587 if (__ret_gu___0 != 0) {
3588#line 448
3589 return (-14L);
3590 } else {
3591
3592 }
3593#line 450
3594 new_timeout = new_timeout / 60;
3595#line 451
3596 if (new_timeout < 0) {
3597#line 452
3598 return (-22L);
3599 } else
3600#line 451
3601 if (new_timeout > 255) {
3602#line 452
3603 return (-22L);
3604 } else {
3605
3606 }
3607 {
3608#line 453
3609 __cil_tmp123 = & timeout;
3610#line 453
3611 *__cil_tmp123 = new_timeout;
3612#line 454
3613 pc87413_refresh();
3614 }
3615 case_neg_2147199225:
3616 {
3617#line 457
3618 __cil_tmp124 = & timeout;
3619#line 457
3620 __cil_tmp125 = *__cil_tmp124;
3621#line 457
3622 new_timeout = __cil_tmp125 * 60;
3623#line 458
3624 might_fault();
3625#line 458
3626 __pu_val___1 = new_timeout;
3627 }
3628#line 458
3629 if (4 == 1) {
3630#line 458
3631 goto case_1___3;
3632 } else
3633#line 458
3634 if (4 == 2) {
3635#line 458
3636 goto case_2___3;
3637 } else
3638#line 458
3639 if (4 == 4) {
3640#line 458
3641 goto case_4___3;
3642 } else
3643#line 458
3644 if (4 == 8) {
3645#line 458
3646 goto case_8___3;
3647 } else {
3648 {
3649#line 458
3650 goto switch_default___3;
3651#line 458
3652 if (0) {
3653 case_1___3:
3654#line 458
3655 __asm__ volatile ("call __put_user_1": "=a" (__ret_pu___1): "0" (__pu_val___1),
3656 "c" (uarg.i): "ebx");
3657#line 458
3658 goto ldv_18160;
3659 case_2___3:
3660#line 458
3661 __asm__ volatile ("call __put_user_2": "=a" (__ret_pu___1): "0" (__pu_val___1),
3662 "c" (uarg.i): "ebx");
3663#line 458
3664 goto ldv_18160;
3665 case_4___3:
3666#line 458
3667 __asm__ volatile ("call __put_user_4": "=a" (__ret_pu___1): "0" (__pu_val___1),
3668 "c" (uarg.i): "ebx");
3669#line 458
3670 goto ldv_18160;
3671 case_8___3:
3672#line 458
3673 __asm__ volatile ("call __put_user_8": "=a" (__ret_pu___1): "0" (__pu_val___1),
3674 "c" (uarg.i): "ebx");
3675#line 458
3676 goto ldv_18160;
3677 switch_default___3:
3678#line 458
3679 __asm__ volatile ("call __put_user_X": "=a" (__ret_pu___1): "0" (__pu_val___1),
3680 "c" (uarg.i): "ebx");
3681#line 458
3682 goto ldv_18160;
3683 } else {
3684 switch_break___4: ;
3685 }
3686 }
3687 }
3688 ldv_18160: ;
3689#line 458
3690 return ((long )__ret_pu___1);
3691 switch_default___4: ;
3692#line 460
3693 return (-25L);
3694 } else {
3695 switch_break: ;
3696 }
3697 }
3698 }
3699}
3700}
3701#line 478 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3702static int pc87413_notify_sys(struct notifier_block *this , unsigned long code , void *unused )
3703{
3704
3705 {
3706#line 482
3707 if (code == 1UL) {
3708 {
3709#line 484
3710 pc87413_disable();
3711 }
3712 } else
3713#line 482
3714 if (code == 2UL) {
3715 {
3716#line 484
3717 pc87413_disable();
3718 }
3719 } else {
3720
3721 }
3722#line 485
3723 return (0);
3724}
3725}
3726#line 490 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3727static struct file_operations const pc87413_fops =
3728#line 490
3729 {& __this_module, & no_llseek, (ssize_t (*)(struct file * , char * , size_t ,
3730 loff_t * ))0, & pc87413_write, (ssize_t (*)(struct kiocb * ,
3731 struct iovec const * ,
3732 unsigned long ,
3733 loff_t ))0,
3734 (ssize_t (*)(struct kiocb * , struct iovec const * , unsigned long , loff_t ))0,
3735 (int (*)(struct file * , void * , int (*)(void * , char const * , int , loff_t ,
3736 u64 , unsigned int ) ))0, (unsigned int (*)(struct file * ,
3737 struct poll_table_struct * ))0,
3738 & pc87413_ioctl, (long (*)(struct file * , unsigned int , unsigned long ))0,
3739 (int (*)(struct file * , struct vm_area_struct * ))0, & pc87413_open, (int (*)(struct file * ,
3740 fl_owner_t ))0,
3741 & pc87413_release, (int (*)(struct file * , loff_t , loff_t , int ))0, (int (*)(struct kiocb * ,
3742 int ))0,
3743 (int (*)(int , struct file * , int ))0, (int (*)(struct file * , int , struct file_lock * ))0,
3744 (ssize_t (*)(struct file * , struct page * , int , size_t , loff_t * , int ))0,
3745 (unsigned long (*)(struct file * , unsigned long , unsigned long , unsigned long ,
3746 unsigned long ))0, (int (*)(int ))0, (int (*)(struct file * ,
3747 int , struct file_lock * ))0,
3748 (ssize_t (*)(struct pipe_inode_info * , struct file * , loff_t * , size_t , unsigned int ))0,
3749 (ssize_t (*)(struct file * , loff_t * , struct pipe_inode_info * , size_t , unsigned int ))0,
3750 (int (*)(struct file * , long , struct file_lock ** ))0, (long (*)(struct file * ,
3751 int , loff_t ,
3752 loff_t ))0};
3753#line 499 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3754static struct notifier_block pc87413_notifier = {& pc87413_notify_sys, (struct notifier_block *)0, 0};
3755#line 503 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3756static struct miscdevice pc87413_miscdev =
3757#line 503
3758 {130, "watchdog", & pc87413_fops, {(struct list_head *)0, (struct list_head *)0},
3759 (struct device *)0, (struct device *)0, (char const *)0, (unsigned short)0};
3760#line 519 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3761static int pc87413_init(void)
3762{ int ret ;
3763 struct resource *tmp ;
3764 struct resource *tmp___0 ;
3765 int *__cil_tmp4 ;
3766 int __cil_tmp5 ;
3767 int *__cil_tmp6 ;
3768 int __cil_tmp7 ;
3769 resource_size_t __cil_tmp8 ;
3770 struct resource *__cil_tmp9 ;
3771 unsigned long __cil_tmp10 ;
3772 unsigned long __cil_tmp11 ;
3773 int *__cil_tmp12 ;
3774 int __cil_tmp13 ;
3775 resource_size_t __cil_tmp14 ;
3776 struct resource *__cil_tmp15 ;
3777 unsigned long __cil_tmp16 ;
3778 unsigned long __cil_tmp17 ;
3779 int *__cil_tmp18 ;
3780 int __cil_tmp19 ;
3781 resource_size_t __cil_tmp20 ;
3782 int *__cil_tmp21 ;
3783 int __cil_tmp22 ;
3784 resource_size_t __cil_tmp23 ;
3785
3786 {
3787 {
3788#line 523
3789 __cil_tmp4 = & io;
3790#line 523
3791 __cil_tmp5 = *__cil_tmp4;
3792#line 523
3793 printk("<6>pc87413_wdt: Version 1.1 at io 0x%X\n", __cil_tmp5);
3794#line 526
3795 __cil_tmp6 = & io;
3796#line 526
3797 __cil_tmp7 = *__cil_tmp6;
3798#line 526
3799 __cil_tmp8 = (resource_size_t )__cil_tmp7;
3800#line 526
3801 tmp = __request_region(& ioport_resource, __cil_tmp8, 2ULL, "pc87413 WDT", 4194304);
3802 }
3803 {
3804#line 526
3805 __cil_tmp9 = (struct resource *)0;
3806#line 526
3807 __cil_tmp10 = (unsigned long )__cil_tmp9;
3808#line 526
3809 __cil_tmp11 = (unsigned long )tmp;
3810#line 526
3811 if (__cil_tmp11 == __cil_tmp10) {
3812#line 527
3813 return (-16);
3814 } else {
3815
3816 }
3817 }
3818 {
3819#line 529
3820 ret = register_reboot_notifier(& pc87413_notifier);
3821 }
3822#line 530
3823 if (ret != 0) {
3824 {
3825#line 531
3826 printk("<3>pc87413_wdt: cannot register reboot notifier (err=%d)\n", ret);
3827 }
3828 } else {
3829
3830 }
3831 {
3832#line 534
3833 ret = misc_register(& pc87413_miscdev);
3834 }
3835#line 535
3836 if (ret != 0) {
3837 {
3838#line 536
3839 printk("<3>pc87413_wdt: cannot register miscdev on minor=%d (err=%d)\n", 130,
3840 ret);
3841 }
3842#line 538
3843 goto reboot_unreg;
3844 } else {
3845
3846 }
3847 {
3848#line 540
3849 __cil_tmp12 = & timeout;
3850#line 540
3851 __cil_tmp13 = *__cil_tmp12;
3852#line 540
3853 printk("<6>pc87413_wdt: initialized. timeout=%d min\n", __cil_tmp13);
3854#line 542
3855 pc87413_select_wdt_out();
3856#line 543
3857 pc87413_enable_swc();
3858#line 544
3859 pc87413_get_swc_base_addr();
3860#line 546
3861 __cil_tmp14 = (resource_size_t )swc_base_addr;
3862#line 546
3863 tmp___0 = __request_region(& ioport_resource, __cil_tmp14, 32ULL, "pc87413 WDT",
3864 0);
3865 }
3866 {
3867#line 546
3868 __cil_tmp15 = (struct resource *)0;
3869#line 546
3870 __cil_tmp16 = (unsigned long )__cil_tmp15;
3871#line 546
3872 __cil_tmp17 = (unsigned long )tmp___0;
3873#line 546
3874 if (__cil_tmp17 == __cil_tmp16) {
3875 {
3876#line 547
3877 printk("<3>pc87413_wdt: cannot request SWC region at 0x%x\n", swc_base_addr);
3878#line 548
3879 ret = -16;
3880 }
3881#line 549
3882 goto misc_unreg;
3883 } else {
3884
3885 }
3886 }
3887 {
3888#line 552
3889 pc87413_enable();
3890#line 554
3891 __cil_tmp18 = & io;
3892#line 554
3893 __cil_tmp19 = *__cil_tmp18;
3894#line 554
3895 __cil_tmp20 = (resource_size_t )__cil_tmp19;
3896#line 554
3897 __release_region(& ioport_resource, __cil_tmp20, 2ULL);
3898 }
3899#line 555
3900 return (0);
3901 misc_unreg:
3902 {
3903#line 558
3904 misc_deregister(& pc87413_miscdev);
3905 }
3906 reboot_unreg:
3907 {
3908#line 560
3909 unregister_reboot_notifier(& pc87413_notifier);
3910#line 561
3911 __cil_tmp21 = & io;
3912#line 561
3913 __cil_tmp22 = *__cil_tmp21;
3914#line 561
3915 __cil_tmp23 = (resource_size_t )__cil_tmp22;
3916#line 561
3917 __release_region(& ioport_resource, __cil_tmp23, 2ULL);
3918 }
3919#line 562
3920 return (ret);
3921}
3922}
3923#line 575 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3924static void pc87413_exit(void)
3925{ bool *__cil_tmp1 ;
3926 bool __cil_tmp2 ;
3927 resource_size_t __cil_tmp3 ;
3928
3929 {
3930 {
3931#line 578
3932 __cil_tmp1 = & nowayout;
3933#line 578
3934 __cil_tmp2 = *__cil_tmp1;
3935#line 578
3936 if (! __cil_tmp2) {
3937 {
3938#line 579
3939 pc87413_disable();
3940#line 580
3941 printk("<6>pc87413_wdt: Watchdog disabled\n");
3942 }
3943 } else {
3944
3945 }
3946 }
3947 {
3948#line 583
3949 misc_deregister(& pc87413_miscdev);
3950#line 584
3951 unregister_reboot_notifier(& pc87413_notifier);
3952#line 585
3953 __cil_tmp3 = (resource_size_t )swc_base_addr;
3954#line 585
3955 __release_region(& ioport_resource, __cil_tmp3, 32ULL);
3956#line 587
3957 printk("<6>pc87413_wdt: watchdog component driver removed\n");
3958 }
3959#line 588
3960 return;
3961}
3962}
3963#line 631
3964extern void ldv_check_final_state(void) ;
3965#line 634
3966extern void ldv_check_return_value(int ) ;
3967#line 637
3968extern void ldv_initialize(void) ;
3969#line 640
3970extern int __VERIFIER_nondet_int(void) ;
3971#line 643 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3972int LDV_IN_INTERRUPT ;
3973#line 646 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
3974void main(void)
3975{ struct file *var_group1 ;
3976 char const *var_pc87413_write_16_p1 ;
3977 size_t var_pc87413_write_16_p2 ;
3978 loff_t *var_pc87413_write_16_p3 ;
3979 ssize_t res_pc87413_write_16 ;
3980 unsigned int var_pc87413_ioctl_17_p1 ;
3981 unsigned long var_pc87413_ioctl_17_p2 ;
3982 struct inode *var_group2 ;
3983 int res_pc87413_open_13 ;
3984 struct notifier_block *var_group3 ;
3985 unsigned long var_pc87413_notify_sys_18_p1 ;
3986 void *var_pc87413_notify_sys_18_p2 ;
3987 int ldv_s_pc87413_fops_file_operations ;
3988 int tmp ;
3989 int tmp___0 ;
3990 int tmp___1 ;
3991 int __cil_tmp17 ;
3992
3993 {
3994 {
3995#line 939
3996 ldv_s_pc87413_fops_file_operations = 0;
3997#line 885
3998 LDV_IN_INTERRUPT = 1;
3999#line 894
4000 ldv_initialize();
4001#line 937
4002 tmp = pc87413_init();
4003 }
4004#line 937
4005 if (tmp != 0) {
4006#line 938
4007 goto ldv_final;
4008 } else {
4009
4010 }
4011#line 945
4012 goto ldv_18269;
4013 ldv_18268:
4014 {
4015#line 949
4016 tmp___0 = __VERIFIER_nondet_int();
4017 }
4018#line 951
4019 if (tmp___0 == 0) {
4020#line 951
4021 goto case_0;
4022 } else
4023#line 1009
4024 if (tmp___0 == 1) {
4025#line 1009
4026 goto case_1;
4027 } else
4028#line 1067
4029 if (tmp___0 == 2) {
4030#line 1067
4031 goto case_2;
4032 } else
4033#line 1122
4034 if (tmp___0 == 3) {
4035#line 1122
4036 goto case_3;
4037 } else
4038#line 1173
4039 if (tmp___0 == 4) {
4040#line 1173
4041 goto case_4;
4042 } else {
4043 {
4044#line 1226
4045 goto switch_default;
4046#line 949
4047 if (0) {
4048 case_0: ;
4049#line 954
4050 if (ldv_s_pc87413_fops_file_operations == 0) {
4051 {
4052#line 994
4053 res_pc87413_open_13 = pc87413_open(var_group2, var_group1);
4054#line 995
4055 ldv_check_return_value(res_pc87413_open_13);
4056 }
4057#line 996
4058 if (res_pc87413_open_13 != 0) {
4059#line 997
4060 goto ldv_module_exit;
4061 } else {
4062
4063 }
4064#line 1002
4065 ldv_s_pc87413_fops_file_operations = ldv_s_pc87413_fops_file_operations + 1;
4066 } else {
4067
4068 }
4069#line 1008
4070 goto ldv_18262;
4071 case_1: ;
4072#line 1012
4073 if (ldv_s_pc87413_fops_file_operations == 1) {
4074 {
4075#line 1052
4076 res_pc87413_write_16 = pc87413_write(var_group1, var_pc87413_write_16_p1,
4077 var_pc87413_write_16_p2, var_pc87413_write_16_p3);
4078#line 1053
4079 __cil_tmp17 = (int )res_pc87413_write_16;
4080#line 1053
4081 ldv_check_return_value(__cil_tmp17);
4082 }
4083#line 1054
4084 if (res_pc87413_write_16 < 0L) {
4085#line 1055
4086 goto ldv_module_exit;
4087 } else {
4088
4089 }
4090#line 1060
4091 ldv_s_pc87413_fops_file_operations = ldv_s_pc87413_fops_file_operations + 1;
4092 } else {
4093
4094 }
4095#line 1066
4096 goto ldv_18262;
4097 case_2: ;
4098#line 1070
4099 if (ldv_s_pc87413_fops_file_operations == 2) {
4100 {
4101#line 1110
4102 pc87413_release(var_group2, var_group1);
4103#line 1115
4104 ldv_s_pc87413_fops_file_operations = 0;
4105 }
4106 } else {
4107
4108 }
4109#line 1121
4110 goto ldv_18262;
4111 case_3:
4112 {
4113#line 1165
4114 pc87413_ioctl(var_group1, var_pc87413_ioctl_17_p1, var_pc87413_ioctl_17_p2);
4115 }
4116#line 1172
4117 goto ldv_18262;
4118 case_4:
4119 {
4120#line 1218
4121 pc87413_notify_sys(var_group3, var_pc87413_notify_sys_18_p1, var_pc87413_notify_sys_18_p2);
4122 }
4123#line 1225
4124 goto ldv_18262;
4125 switch_default: ;
4126#line 1226
4127 goto ldv_18262;
4128 } else {
4129 switch_break: ;
4130 }
4131 }
4132 }
4133 ldv_18262: ;
4134 ldv_18269:
4135 {
4136#line 945
4137 tmp___1 = __VERIFIER_nondet_int();
4138 }
4139#line 945
4140 if (tmp___1 != 0) {
4141#line 947
4142 goto ldv_18268;
4143 } else
4144#line 945
4145 if (ldv_s_pc87413_fops_file_operations != 0) {
4146#line 947
4147 goto ldv_18268;
4148 } else {
4149#line 949
4150 goto ldv_18270;
4151 }
4152 ldv_18270: ;
4153 ldv_module_exit:
4154 {
4155#line 1275
4156 pc87413_exit();
4157 }
4158 ldv_final:
4159 {
4160#line 1278
4161 ldv_check_final_state();
4162 }
4163#line 1281
4164 return;
4165}
4166}
4167#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
4168void ldv_blast_assert(void)
4169{
4170
4171 {
4172 ERROR: ;
4173#line 6
4174 goto ERROR;
4175}
4176}
4177#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
4178extern int __VERIFIER_nondet_int(void) ;
4179#line 1302 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4180int ldv_spin = 0;
4181#line 1306 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4182void ldv_check_alloc_flags(gfp_t flags )
4183{
4184
4185 {
4186#line 1309
4187 if (ldv_spin != 0) {
4188#line 1309
4189 if (flags != 32U) {
4190 {
4191#line 1309
4192 ldv_blast_assert();
4193 }
4194 } else {
4195
4196 }
4197 } else {
4198
4199 }
4200#line 1312
4201 return;
4202}
4203}
4204#line 1312
4205extern struct page *ldv_some_page(void) ;
4206#line 1315 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4207struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
4208{ struct page *tmp ;
4209
4210 {
4211#line 1318
4212 if (ldv_spin != 0) {
4213#line 1318
4214 if (flags != 32U) {
4215 {
4216#line 1318
4217 ldv_blast_assert();
4218 }
4219 } else {
4220
4221 }
4222 } else {
4223
4224 }
4225 {
4226#line 1320
4227 tmp = ldv_some_page();
4228 }
4229#line 1320
4230 return (tmp);
4231}
4232}
4233#line 1324 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4234void ldv_check_alloc_nonatomic(void)
4235{
4236
4237 {
4238#line 1327
4239 if (ldv_spin != 0) {
4240 {
4241#line 1327
4242 ldv_blast_assert();
4243 }
4244 } else {
4245
4246 }
4247#line 1330
4248 return;
4249}
4250}
4251#line 1331 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4252void ldv_spin_lock(void)
4253{
4254
4255 {
4256#line 1334
4257 ldv_spin = 1;
4258#line 1335
4259 return;
4260}
4261}
4262#line 1338 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4263void ldv_spin_unlock(void)
4264{
4265
4266 {
4267#line 1341
4268 ldv_spin = 0;
4269#line 1342
4270 return;
4271}
4272}
4273#line 1345 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4274int ldv_spin_trylock(void)
4275{ int is_lock ;
4276
4277 {
4278 {
4279#line 1350
4280 is_lock = __VERIFIER_nondet_int();
4281 }
4282#line 1352
4283 if (is_lock != 0) {
4284#line 1355
4285 return (0);
4286 } else {
4287#line 1360
4288 ldv_spin = 1;
4289#line 1362
4290 return (1);
4291 }
4292}
4293}
4294#line 1366 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4295__inline static void spin_lock(spinlock_t *lock )
4296{
4297
4298 {
4299 {
4300#line 1371
4301 ldv_spin_lock();
4302#line 1373
4303 ldv_spin_lock_1(lock);
4304 }
4305#line 1374
4306 return;
4307}
4308}
4309#line 1408 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4310__inline static void spin_unlock(spinlock_t *lock )
4311{
4312
4313 {
4314 {
4315#line 1413
4316 ldv_spin_unlock();
4317#line 1415
4318 ldv_spin_unlock_5(lock);
4319 }
4320#line 1416
4321 return;
4322}
4323}
4324#line 1529 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/17353/dscv_tempdir/dscv/ri/43_1a/drivers/watchdog/pc87413_wdt.c.p"
4325void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
4326{
4327
4328 {
4329 {
4330#line 1535
4331 ldv_check_alloc_flags(ldv_func_arg2);
4332#line 1537
4333 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
4334 }
4335#line 1538
4336 return ((void *)0);
4337}
4338}