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 29 "include/asm-generic/int-ll64.h"
17typedef long long __s64;
18#line 30 "include/asm-generic/int-ll64.h"
19typedef unsigned long long __u64;
20#line 43 "include/asm-generic/int-ll64.h"
21typedef unsigned char u8;
22#line 45 "include/asm-generic/int-ll64.h"
23typedef short s16;
24#line 46 "include/asm-generic/int-ll64.h"
25typedef unsigned short u16;
26#line 48 "include/asm-generic/int-ll64.h"
27typedef int s32;
28#line 49 "include/asm-generic/int-ll64.h"
29typedef unsigned int u32;
30#line 51 "include/asm-generic/int-ll64.h"
31typedef long long s64;
32#line 52 "include/asm-generic/int-ll64.h"
33typedef unsigned long long u64;
34#line 14 "include/asm-generic/posix_types.h"
35typedef long __kernel_long_t;
36#line 15 "include/asm-generic/posix_types.h"
37typedef unsigned long __kernel_ulong_t;
38#line 31 "include/asm-generic/posix_types.h"
39typedef int __kernel_pid_t;
40#line 52 "include/asm-generic/posix_types.h"
41typedef unsigned int __kernel_uid32_t;
42#line 53 "include/asm-generic/posix_types.h"
43typedef unsigned int __kernel_gid32_t;
44#line 75 "include/asm-generic/posix_types.h"
45typedef __kernel_ulong_t __kernel_size_t;
46#line 76 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_ssize_t;
48#line 91 "include/asm-generic/posix_types.h"
49typedef long long __kernel_loff_t;
50#line 92 "include/asm-generic/posix_types.h"
51typedef __kernel_long_t __kernel_time_t;
52#line 93 "include/asm-generic/posix_types.h"
53typedef __kernel_long_t __kernel_clock_t;
54#line 94 "include/asm-generic/posix_types.h"
55typedef int __kernel_timer_t;
56#line 95 "include/asm-generic/posix_types.h"
57typedef int __kernel_clockid_t;
58#line 21 "include/linux/types.h"
59typedef __u32 __kernel_dev_t;
60#line 24 "include/linux/types.h"
61typedef __kernel_dev_t dev_t;
62#line 27 "include/linux/types.h"
63typedef unsigned short umode_t;
64#line 30 "include/linux/types.h"
65typedef __kernel_pid_t pid_t;
66#line 35 "include/linux/types.h"
67typedef __kernel_clockid_t clockid_t;
68#line 38 "include/linux/types.h"
69typedef _Bool bool;
70#line 40 "include/linux/types.h"
71typedef __kernel_uid32_t uid_t;
72#line 41 "include/linux/types.h"
73typedef __kernel_gid32_t gid_t;
74#line 54 "include/linux/types.h"
75typedef __kernel_loff_t loff_t;
76#line 63 "include/linux/types.h"
77typedef __kernel_size_t size_t;
78#line 68 "include/linux/types.h"
79typedef __kernel_ssize_t ssize_t;
80#line 78 "include/linux/types.h"
81typedef __kernel_time_t time_t;
82#line 111 "include/linux/types.h"
83typedef __s32 int32_t;
84#line 117 "include/linux/types.h"
85typedef __u32 uint32_t;
86#line 142 "include/linux/types.h"
87typedef unsigned long sector_t;
88#line 143 "include/linux/types.h"
89typedef unsigned long blkcnt_t;
90#line 202 "include/linux/types.h"
91typedef unsigned int gfp_t;
92#line 203 "include/linux/types.h"
93typedef unsigned int fmode_t;
94#line 219 "include/linux/types.h"
95struct __anonstruct_atomic_t_7 {
96 int counter ;
97};
98#line 219 "include/linux/types.h"
99typedef struct __anonstruct_atomic_t_7 atomic_t;
100#line 224 "include/linux/types.h"
101struct __anonstruct_atomic64_t_8 {
102 long counter ;
103};
104#line 224 "include/linux/types.h"
105typedef struct __anonstruct_atomic64_t_8 atomic64_t;
106#line 229 "include/linux/types.h"
107struct list_head {
108 struct list_head *next ;
109 struct list_head *prev ;
110};
111#line 233
112struct hlist_node;
113#line 233 "include/linux/types.h"
114struct hlist_head {
115 struct hlist_node *first ;
116};
117#line 237 "include/linux/types.h"
118struct hlist_node {
119 struct hlist_node *next ;
120 struct hlist_node **pprev ;
121};
122#line 253 "include/linux/types.h"
123struct rcu_head {
124 struct rcu_head *next ;
125 void (*func)(struct rcu_head *head ) ;
126};
127#line 18 "include/linux/capability.h"
128struct task_struct;
129#line 18
130struct task_struct;
131#line 94 "include/linux/capability.h"
132struct kernel_cap_struct {
133 __u32 cap[2] ;
134};
135#line 94 "include/linux/capability.h"
136typedef struct kernel_cap_struct kernel_cap_t;
137#line 377
138struct dentry;
139#line 377
140struct dentry;
141#line 378
142struct user_namespace;
143#line 378
144struct user_namespace;
145#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
146struct module;
147#line 56
148struct module;
149#line 146 "include/linux/init.h"
150typedef void (*ctor_fn_t)(void);
151#line 47 "include/linux/dynamic_debug.h"
152struct device;
153#line 47
154struct device;
155#line 135 "include/linux/kernel.h"
156struct completion;
157#line 135
158struct completion;
159#line 136
160struct pt_regs;
161#line 136
162struct pt_regs;
163#line 349
164struct pid;
165#line 349
166struct pid;
167#line 12 "include/linux/thread_info.h"
168struct timespec;
169#line 12
170struct timespec;
171#line 13
172struct compat_timespec;
173#line 13
174struct compat_timespec;
175#line 18 "include/linux/thread_info.h"
176struct __anonstruct_futex_12 {
177 u32 *uaddr ;
178 u32 val ;
179 u32 flags ;
180 u32 bitset ;
181 u64 time ;
182 u32 *uaddr2 ;
183};
184#line 18 "include/linux/thread_info.h"
185struct __anonstruct_nanosleep_13 {
186 clockid_t clockid ;
187 struct timespec *rmtp ;
188 struct compat_timespec *compat_rmtp ;
189 u64 expires ;
190};
191#line 18
192struct pollfd;
193#line 18 "include/linux/thread_info.h"
194struct __anonstruct_poll_14 {
195 struct pollfd *ufds ;
196 int nfds ;
197 int has_timeout ;
198 unsigned long tv_sec ;
199 unsigned long tv_nsec ;
200};
201#line 18 "include/linux/thread_info.h"
202union __anonunion____missing_field_name_11 {
203 struct __anonstruct_futex_12 futex ;
204 struct __anonstruct_nanosleep_13 nanosleep ;
205 struct __anonstruct_poll_14 poll ;
206};
207#line 18 "include/linux/thread_info.h"
208struct restart_block {
209 long (*fn)(struct restart_block * ) ;
210 union __anonunion____missing_field_name_11 __annonCompField4 ;
211};
212#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
213struct page;
214#line 18
215struct page;
216#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
217struct task_struct;
218#line 21
219struct exec_domain;
220#line 21
221struct exec_domain;
222#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
223struct task_struct;
224#line 8
225struct mm_struct;
226#line 8
227struct mm_struct;
228#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
229struct pt_regs {
230 unsigned long r15 ;
231 unsigned long r14 ;
232 unsigned long r13 ;
233 unsigned long r12 ;
234 unsigned long bp ;
235 unsigned long bx ;
236 unsigned long r11 ;
237 unsigned long r10 ;
238 unsigned long r9 ;
239 unsigned long r8 ;
240 unsigned long ax ;
241 unsigned long cx ;
242 unsigned long dx ;
243 unsigned long si ;
244 unsigned long di ;
245 unsigned long orig_ax ;
246 unsigned long ip ;
247 unsigned long cs ;
248 unsigned long flags ;
249 unsigned long sp ;
250 unsigned long ss ;
251};
252#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
253struct __anonstruct____missing_field_name_16 {
254 unsigned int a ;
255 unsigned int b ;
256};
257#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
258struct __anonstruct____missing_field_name_17 {
259 u16 limit0 ;
260 u16 base0 ;
261 unsigned int base1 : 8 ;
262 unsigned int type : 4 ;
263 unsigned int s : 1 ;
264 unsigned int dpl : 2 ;
265 unsigned int p : 1 ;
266 unsigned int limit : 4 ;
267 unsigned int avl : 1 ;
268 unsigned int l : 1 ;
269 unsigned int d : 1 ;
270 unsigned int g : 1 ;
271 unsigned int base2 : 8 ;
272};
273#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
274union __anonunion____missing_field_name_15 {
275 struct __anonstruct____missing_field_name_16 __annonCompField5 ;
276 struct __anonstruct____missing_field_name_17 __annonCompField6 ;
277};
278#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
279struct desc_struct {
280 union __anonunion____missing_field_name_15 __annonCompField7 ;
281} __attribute__((__packed__)) ;
282#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
283typedef unsigned long pgdval_t;
284#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
285typedef unsigned long pgprotval_t;
286#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
287struct pgprot {
288 pgprotval_t pgprot ;
289};
290#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
291typedef struct pgprot pgprot_t;
292#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
293struct __anonstruct_pgd_t_21 {
294 pgdval_t pgd ;
295};
296#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
297typedef struct __anonstruct_pgd_t_21 pgd_t;
298#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
299typedef struct page *pgtable_t;
300#line 295
301struct file;
302#line 295
303struct file;
304#line 313
305struct seq_file;
306#line 313
307struct seq_file;
308#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
309struct page;
310#line 47
311struct thread_struct;
312#line 47
313struct thread_struct;
314#line 50
315struct mm_struct;
316#line 51
317struct desc_struct;
318#line 52
319struct task_struct;
320#line 53
321struct cpumask;
322#line 53
323struct cpumask;
324#line 329
325struct arch_spinlock;
326#line 329
327struct arch_spinlock;
328#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
329struct task_struct;
330#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
331struct kernel_vm86_regs {
332 struct pt_regs pt ;
333 unsigned short es ;
334 unsigned short __esh ;
335 unsigned short ds ;
336 unsigned short __dsh ;
337 unsigned short fs ;
338 unsigned short __fsh ;
339 unsigned short gs ;
340 unsigned short __gsh ;
341};
342#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
343union __anonunion____missing_field_name_25 {
344 struct pt_regs *regs ;
345 struct kernel_vm86_regs *vm86 ;
346};
347#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
348struct math_emu_info {
349 long ___orig_eip ;
350 union __anonunion____missing_field_name_25 __annonCompField8 ;
351};
352#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
353struct task_struct;
354#line 10 "include/asm-generic/bug.h"
355struct bug_entry {
356 int bug_addr_disp ;
357 int file_disp ;
358 unsigned short line ;
359 unsigned short flags ;
360};
361#line 12 "include/linux/bug.h"
362struct pt_regs;
363#line 14 "include/linux/cpumask.h"
364struct cpumask {
365 unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
366};
367#line 14 "include/linux/cpumask.h"
368typedef struct cpumask cpumask_t;
369#line 637 "include/linux/cpumask.h"
370typedef struct cpumask *cpumask_var_t;
371#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
372struct static_key;
373#line 234
374struct static_key;
375#line 10 "include/linux/personality.h"
376struct exec_domain;
377#line 11
378struct pt_regs;
379#line 92
380struct map_segment;
381#line 92 "include/linux/personality.h"
382struct exec_domain {
383 char *name ;
384 void (*handler)(int , struct pt_regs * ) ;
385 unsigned char pers_low ;
386 unsigned char pers_high ;
387 unsigned long *signal_map ;
388 unsigned long *signal_invmap ;
389 struct map_segment *err_map ;
390 struct map_segment *socktype_map ;
391 struct map_segment *sockopt_map ;
392 struct map_segment *af_map ;
393 struct module *module ;
394 struct exec_domain *next ;
395};
396#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
397struct i387_fsave_struct {
398 u32 cwd ;
399 u32 swd ;
400 u32 twd ;
401 u32 fip ;
402 u32 fcs ;
403 u32 foo ;
404 u32 fos ;
405 u32 st_space[20] ;
406 u32 status ;
407};
408#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
409struct __anonstruct____missing_field_name_32 {
410 u64 rip ;
411 u64 rdp ;
412};
413#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
414struct __anonstruct____missing_field_name_33 {
415 u32 fip ;
416 u32 fcs ;
417 u32 foo ;
418 u32 fos ;
419};
420#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
421union __anonunion____missing_field_name_31 {
422 struct __anonstruct____missing_field_name_32 __annonCompField12 ;
423 struct __anonstruct____missing_field_name_33 __annonCompField13 ;
424};
425#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
426union __anonunion____missing_field_name_34 {
427 u32 padding1[12] ;
428 u32 sw_reserved[12] ;
429};
430#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
431struct i387_fxsave_struct {
432 u16 cwd ;
433 u16 swd ;
434 u16 twd ;
435 u16 fop ;
436 union __anonunion____missing_field_name_31 __annonCompField14 ;
437 u32 mxcsr ;
438 u32 mxcsr_mask ;
439 u32 st_space[32] ;
440 u32 xmm_space[64] ;
441 u32 padding[12] ;
442 union __anonunion____missing_field_name_34 __annonCompField15 ;
443} __attribute__((__aligned__(16))) ;
444#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
445struct i387_soft_struct {
446 u32 cwd ;
447 u32 swd ;
448 u32 twd ;
449 u32 fip ;
450 u32 fcs ;
451 u32 foo ;
452 u32 fos ;
453 u32 st_space[20] ;
454 u8 ftop ;
455 u8 changed ;
456 u8 lookahead ;
457 u8 no_update ;
458 u8 rm ;
459 u8 alimit ;
460 struct math_emu_info *info ;
461 u32 entry_eip ;
462};
463#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
464struct ymmh_struct {
465 u32 ymmh_space[64] ;
466};
467#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
468struct xsave_hdr_struct {
469 u64 xstate_bv ;
470 u64 reserved1[2] ;
471 u64 reserved2[5] ;
472} __attribute__((__packed__)) ;
473#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
474struct xsave_struct {
475 struct i387_fxsave_struct i387 ;
476 struct xsave_hdr_struct xsave_hdr ;
477 struct ymmh_struct ymmh ;
478} __attribute__((__packed__, __aligned__(64))) ;
479#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
480union thread_xstate {
481 struct i387_fsave_struct fsave ;
482 struct i387_fxsave_struct fxsave ;
483 struct i387_soft_struct soft ;
484 struct xsave_struct xsave ;
485};
486#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
487struct fpu {
488 unsigned int last_cpu ;
489 unsigned int has_fpu ;
490 union thread_xstate *state ;
491};
492#line 433
493struct kmem_cache;
494#line 435
495struct perf_event;
496#line 435
497struct perf_event;
498#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
499struct thread_struct {
500 struct desc_struct tls_array[3] ;
501 unsigned long sp0 ;
502 unsigned long sp ;
503 unsigned long usersp ;
504 unsigned short es ;
505 unsigned short ds ;
506 unsigned short fsindex ;
507 unsigned short gsindex ;
508 unsigned long fs ;
509 unsigned long gs ;
510 struct perf_event *ptrace_bps[4] ;
511 unsigned long debugreg6 ;
512 unsigned long ptrace_dr7 ;
513 unsigned long cr2 ;
514 unsigned long trap_nr ;
515 unsigned long error_code ;
516 struct fpu fpu ;
517 unsigned long *io_bitmap_ptr ;
518 unsigned long iopl ;
519 unsigned int io_bitmap_max ;
520};
521#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
522struct __anonstruct_mm_segment_t_36 {
523 unsigned long seg ;
524};
525#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
526typedef struct __anonstruct_mm_segment_t_36 mm_segment_t;
527#line 23 "include/asm-generic/atomic-long.h"
528typedef atomic64_t atomic_long_t;
529#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
530struct thread_info {
531 struct task_struct *task ;
532 struct exec_domain *exec_domain ;
533 __u32 flags ;
534 __u32 status ;
535 __u32 cpu ;
536 int preempt_count ;
537 mm_segment_t addr_limit ;
538 struct restart_block restart_block ;
539 void *sysenter_return ;
540 unsigned int sig_on_uaccess_error : 1 ;
541 unsigned int uaccess_err : 1 ;
542};
543#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
544typedef u16 __ticket_t;
545#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
546typedef u32 __ticketpair_t;
547#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
548struct __raw_tickets {
549 __ticket_t head ;
550 __ticket_t tail ;
551};
552#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
553union __anonunion____missing_field_name_37 {
554 __ticketpair_t head_tail ;
555 struct __raw_tickets tickets ;
556};
557#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
558struct arch_spinlock {
559 union __anonunion____missing_field_name_37 __annonCompField17 ;
560};
561#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
562typedef struct arch_spinlock arch_spinlock_t;
563#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
564struct __anonstruct____missing_field_name_39 {
565 u32 read ;
566 s32 write ;
567};
568#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
569union __anonunion_arch_rwlock_t_38 {
570 s64 lock ;
571 struct __anonstruct____missing_field_name_39 __annonCompField18 ;
572};
573#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
574typedef union __anonunion_arch_rwlock_t_38 arch_rwlock_t;
575#line 12 "include/linux/lockdep.h"
576struct task_struct;
577#line 391 "include/linux/lockdep.h"
578struct lock_class_key {
579
580};
581#line 20 "include/linux/spinlock_types.h"
582struct raw_spinlock {
583 arch_spinlock_t raw_lock ;
584 unsigned int magic ;
585 unsigned int owner_cpu ;
586 void *owner ;
587};
588#line 20 "include/linux/spinlock_types.h"
589typedef struct raw_spinlock raw_spinlock_t;
590#line 64 "include/linux/spinlock_types.h"
591union __anonunion____missing_field_name_40 {
592 struct raw_spinlock rlock ;
593};
594#line 64 "include/linux/spinlock_types.h"
595struct spinlock {
596 union __anonunion____missing_field_name_40 __annonCompField19 ;
597};
598#line 64 "include/linux/spinlock_types.h"
599typedef struct spinlock spinlock_t;
600#line 11 "include/linux/rwlock_types.h"
601struct __anonstruct_rwlock_t_41 {
602 arch_rwlock_t raw_lock ;
603 unsigned int magic ;
604 unsigned int owner_cpu ;
605 void *owner ;
606};
607#line 11 "include/linux/rwlock_types.h"
608typedef struct __anonstruct_rwlock_t_41 rwlock_t;
609#line 119 "include/linux/seqlock.h"
610struct seqcount {
611 unsigned int sequence ;
612};
613#line 119 "include/linux/seqlock.h"
614typedef struct seqcount seqcount_t;
615#line 14 "include/linux/time.h"
616struct timespec {
617 __kernel_time_t tv_sec ;
618 long tv_nsec ;
619};
620#line 100 "include/linux/rbtree.h"
621struct rb_node {
622 unsigned long rb_parent_color ;
623 struct rb_node *rb_right ;
624 struct rb_node *rb_left ;
625} __attribute__((__aligned__(sizeof(long )))) ;
626#line 110 "include/linux/rbtree.h"
627struct rb_root {
628 struct rb_node *rb_node ;
629};
630#line 98 "include/linux/nodemask.h"
631struct __anonstruct_nodemask_t_43 {
632 unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
633};
634#line 98 "include/linux/nodemask.h"
635typedef struct __anonstruct_nodemask_t_43 nodemask_t;
636#line 14 "include/linux/prio_tree.h"
637struct prio_tree_node;
638#line 14 "include/linux/prio_tree.h"
639struct raw_prio_tree_node {
640 struct prio_tree_node *left ;
641 struct prio_tree_node *right ;
642 struct prio_tree_node *parent ;
643};
644#line 20 "include/linux/prio_tree.h"
645struct prio_tree_node {
646 struct prio_tree_node *left ;
647 struct prio_tree_node *right ;
648 struct prio_tree_node *parent ;
649 unsigned long start ;
650 unsigned long last ;
651};
652#line 28 "include/linux/prio_tree.h"
653struct prio_tree_root {
654 struct prio_tree_node *prio_tree_node ;
655 unsigned short index_bits ;
656 unsigned short raw ;
657};
658#line 19 "include/linux/rwsem.h"
659struct rw_semaphore;
660#line 19
661struct rw_semaphore;
662#line 25 "include/linux/rwsem.h"
663struct rw_semaphore {
664 long count ;
665 raw_spinlock_t wait_lock ;
666 struct list_head wait_list ;
667};
668#line 27 "include/linux/wait.h"
669struct __wait_queue;
670#line 27 "include/linux/wait.h"
671typedef struct __wait_queue wait_queue_t;
672#line 31 "include/linux/wait.h"
673struct __wait_queue {
674 unsigned int flags ;
675 void *private ;
676 int (*func)(wait_queue_t *wait , unsigned int mode , int flags , void *key ) ;
677 struct list_head task_list ;
678};
679#line 49 "include/linux/wait.h"
680struct __wait_queue_head {
681 spinlock_t lock ;
682 struct list_head task_list ;
683};
684#line 53 "include/linux/wait.h"
685typedef struct __wait_queue_head wait_queue_head_t;
686#line 55
687struct task_struct;
688#line 25 "include/linux/completion.h"
689struct completion {
690 unsigned int done ;
691 wait_queue_head_t wait ;
692};
693#line 48 "include/linux/mutex.h"
694struct mutex {
695 atomic_t count ;
696 spinlock_t wait_lock ;
697 struct list_head wait_list ;
698 struct task_struct *owner ;
699 char *name ;
700 void *magic ;
701};
702#line 69 "include/linux/mutex.h"
703struct mutex_waiter {
704 struct list_head list ;
705 struct task_struct *task ;
706 void *magic ;
707};
708#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
709struct __anonstruct_mm_context_t_44 {
710 void *ldt ;
711 int size ;
712 unsigned short ia32_compat ;
713 struct mutex lock ;
714 void *vdso ;
715};
716#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
717typedef struct __anonstruct_mm_context_t_44 mm_context_t;
718#line 23 "include/linux/mm_types.h"
719struct address_space;
720#line 23
721struct address_space;
722#line 40 "include/linux/mm_types.h"
723union __anonunion____missing_field_name_46 {
724 unsigned long index ;
725 void *freelist ;
726};
727#line 40 "include/linux/mm_types.h"
728struct __anonstruct____missing_field_name_50 {
729 unsigned int inuse : 16 ;
730 unsigned int objects : 15 ;
731 unsigned int frozen : 1 ;
732};
733#line 40 "include/linux/mm_types.h"
734union __anonunion____missing_field_name_49 {
735 atomic_t _mapcount ;
736 struct __anonstruct____missing_field_name_50 __annonCompField21 ;
737};
738#line 40 "include/linux/mm_types.h"
739struct __anonstruct____missing_field_name_48 {
740 union __anonunion____missing_field_name_49 __annonCompField22 ;
741 atomic_t _count ;
742};
743#line 40 "include/linux/mm_types.h"
744union __anonunion____missing_field_name_47 {
745 unsigned long counters ;
746 struct __anonstruct____missing_field_name_48 __annonCompField23 ;
747};
748#line 40 "include/linux/mm_types.h"
749struct __anonstruct____missing_field_name_45 {
750 union __anonunion____missing_field_name_46 __annonCompField20 ;
751 union __anonunion____missing_field_name_47 __annonCompField24 ;
752};
753#line 40 "include/linux/mm_types.h"
754struct __anonstruct____missing_field_name_52 {
755 struct page *next ;
756 int pages ;
757 int pobjects ;
758};
759#line 40 "include/linux/mm_types.h"
760union __anonunion____missing_field_name_51 {
761 struct list_head lru ;
762 struct __anonstruct____missing_field_name_52 __annonCompField26 ;
763};
764#line 40 "include/linux/mm_types.h"
765union __anonunion____missing_field_name_53 {
766 unsigned long private ;
767 struct kmem_cache *slab ;
768 struct page *first_page ;
769};
770#line 40 "include/linux/mm_types.h"
771struct page {
772 unsigned long flags ;
773 struct address_space *mapping ;
774 struct __anonstruct____missing_field_name_45 __annonCompField25 ;
775 union __anonunion____missing_field_name_51 __annonCompField27 ;
776 union __anonunion____missing_field_name_53 __annonCompField28 ;
777 unsigned long debug_flags ;
778} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
779#line 200 "include/linux/mm_types.h"
780struct __anonstruct_vm_set_55 {
781 struct list_head list ;
782 void *parent ;
783 struct vm_area_struct *head ;
784};
785#line 200 "include/linux/mm_types.h"
786union __anonunion_shared_54 {
787 struct __anonstruct_vm_set_55 vm_set ;
788 struct raw_prio_tree_node prio_tree_node ;
789};
790#line 200
791struct anon_vma;
792#line 200
793struct vm_operations_struct;
794#line 200
795struct mempolicy;
796#line 200 "include/linux/mm_types.h"
797struct vm_area_struct {
798 struct mm_struct *vm_mm ;
799 unsigned long vm_start ;
800 unsigned long vm_end ;
801 struct vm_area_struct *vm_next ;
802 struct vm_area_struct *vm_prev ;
803 pgprot_t vm_page_prot ;
804 unsigned long vm_flags ;
805 struct rb_node vm_rb ;
806 union __anonunion_shared_54 shared ;
807 struct list_head anon_vma_chain ;
808 struct anon_vma *anon_vma ;
809 struct vm_operations_struct *vm_ops ;
810 unsigned long vm_pgoff ;
811 struct file *vm_file ;
812 void *vm_private_data ;
813 struct mempolicy *vm_policy ;
814};
815#line 257 "include/linux/mm_types.h"
816struct core_thread {
817 struct task_struct *task ;
818 struct core_thread *next ;
819};
820#line 262 "include/linux/mm_types.h"
821struct core_state {
822 atomic_t nr_threads ;
823 struct core_thread dumper ;
824 struct completion startup ;
825};
826#line 284 "include/linux/mm_types.h"
827struct mm_rss_stat {
828 atomic_long_t count[3] ;
829};
830#line 288
831struct linux_binfmt;
832#line 288
833struct mmu_notifier_mm;
834#line 288 "include/linux/mm_types.h"
835struct mm_struct {
836 struct vm_area_struct *mmap ;
837 struct rb_root mm_rb ;
838 struct vm_area_struct *mmap_cache ;
839 unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
840 unsigned long pgoff , unsigned long flags ) ;
841 void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
842 unsigned long mmap_base ;
843 unsigned long task_size ;
844 unsigned long cached_hole_size ;
845 unsigned long free_area_cache ;
846 pgd_t *pgd ;
847 atomic_t mm_users ;
848 atomic_t mm_count ;
849 int map_count ;
850 spinlock_t page_table_lock ;
851 struct rw_semaphore mmap_sem ;
852 struct list_head mmlist ;
853 unsigned long hiwater_rss ;
854 unsigned long hiwater_vm ;
855 unsigned long total_vm ;
856 unsigned long locked_vm ;
857 unsigned long pinned_vm ;
858 unsigned long shared_vm ;
859 unsigned long exec_vm ;
860 unsigned long stack_vm ;
861 unsigned long reserved_vm ;
862 unsigned long def_flags ;
863 unsigned long nr_ptes ;
864 unsigned long start_code ;
865 unsigned long end_code ;
866 unsigned long start_data ;
867 unsigned long end_data ;
868 unsigned long start_brk ;
869 unsigned long brk ;
870 unsigned long start_stack ;
871 unsigned long arg_start ;
872 unsigned long arg_end ;
873 unsigned long env_start ;
874 unsigned long env_end ;
875 unsigned long saved_auxv[44] ;
876 struct mm_rss_stat rss_stat ;
877 struct linux_binfmt *binfmt ;
878 cpumask_var_t cpu_vm_mask_var ;
879 mm_context_t context ;
880 unsigned int faultstamp ;
881 unsigned int token_priority ;
882 unsigned int last_interval ;
883 unsigned long flags ;
884 struct core_state *core_state ;
885 spinlock_t ioctx_lock ;
886 struct hlist_head ioctx_list ;
887 struct task_struct *owner ;
888 struct file *exe_file ;
889 unsigned long num_exe_file_vmas ;
890 struct mmu_notifier_mm *mmu_notifier_mm ;
891 pgtable_t pmd_huge_pte ;
892 struct cpumask cpumask_allocation ;
893};
894#line 7 "include/asm-generic/cputime.h"
895typedef unsigned long cputime_t;
896#line 202 "include/linux/ioport.h"
897struct device;
898#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
899struct device;
900#line 46 "include/linux/ktime.h"
901union ktime {
902 s64 tv64 ;
903};
904#line 59 "include/linux/ktime.h"
905typedef union ktime ktime_t;
906#line 10 "include/linux/timer.h"
907struct tvec_base;
908#line 10
909struct tvec_base;
910#line 12 "include/linux/timer.h"
911struct timer_list {
912 struct list_head entry ;
913 unsigned long expires ;
914 struct tvec_base *base ;
915 void (*function)(unsigned long ) ;
916 unsigned long data ;
917 int slack ;
918 int start_pid ;
919 void *start_site ;
920 char start_comm[16] ;
921};
922#line 289
923struct hrtimer;
924#line 289
925struct hrtimer;
926#line 290
927enum hrtimer_restart;
928#line 17 "include/linux/workqueue.h"
929struct work_struct;
930#line 17
931struct work_struct;
932#line 79 "include/linux/workqueue.h"
933struct work_struct {
934 atomic_long_t data ;
935 struct list_head entry ;
936 void (*func)(struct work_struct *work ) ;
937};
938#line 92 "include/linux/workqueue.h"
939struct delayed_work {
940 struct work_struct work ;
941 struct timer_list timer ;
942};
943#line 42 "include/linux/pm.h"
944struct device;
945#line 50 "include/linux/pm.h"
946struct pm_message {
947 int event ;
948};
949#line 50 "include/linux/pm.h"
950typedef struct pm_message pm_message_t;
951#line 264 "include/linux/pm.h"
952struct dev_pm_ops {
953 int (*prepare)(struct device *dev ) ;
954 void (*complete)(struct device *dev ) ;
955 int (*suspend)(struct device *dev ) ;
956 int (*resume)(struct device *dev ) ;
957 int (*freeze)(struct device *dev ) ;
958 int (*thaw)(struct device *dev ) ;
959 int (*poweroff)(struct device *dev ) ;
960 int (*restore)(struct device *dev ) ;
961 int (*suspend_late)(struct device *dev ) ;
962 int (*resume_early)(struct device *dev ) ;
963 int (*freeze_late)(struct device *dev ) ;
964 int (*thaw_early)(struct device *dev ) ;
965 int (*poweroff_late)(struct device *dev ) ;
966 int (*restore_early)(struct device *dev ) ;
967 int (*suspend_noirq)(struct device *dev ) ;
968 int (*resume_noirq)(struct device *dev ) ;
969 int (*freeze_noirq)(struct device *dev ) ;
970 int (*thaw_noirq)(struct device *dev ) ;
971 int (*poweroff_noirq)(struct device *dev ) ;
972 int (*restore_noirq)(struct device *dev ) ;
973 int (*runtime_suspend)(struct device *dev ) ;
974 int (*runtime_resume)(struct device *dev ) ;
975 int (*runtime_idle)(struct device *dev ) ;
976};
977#line 458
978enum rpm_status {
979 RPM_ACTIVE = 0,
980 RPM_RESUMING = 1,
981 RPM_SUSPENDED = 2,
982 RPM_SUSPENDING = 3
983} ;
984#line 480
985enum rpm_request {
986 RPM_REQ_NONE = 0,
987 RPM_REQ_IDLE = 1,
988 RPM_REQ_SUSPEND = 2,
989 RPM_REQ_AUTOSUSPEND = 3,
990 RPM_REQ_RESUME = 4
991} ;
992#line 488
993struct wakeup_source;
994#line 488
995struct wakeup_source;
996#line 495 "include/linux/pm.h"
997struct pm_subsys_data {
998 spinlock_t lock ;
999 unsigned int refcount ;
1000};
1001#line 506
1002struct dev_pm_qos_request;
1003#line 506
1004struct pm_qos_raints;
1005#line 506 "include/linux/pm.h"
1006struct dev_pm_info {
1007 pm_message_t power_state ;
1008 unsigned int can_wakeup : 1 ;
1009 unsigned int async_suspend : 1 ;
1010 bool is_prepared : 1 ;
1011 bool is_suspended : 1 ;
1012 bool ignore_children : 1 ;
1013 spinlock_t lock ;
1014 struct list_head entry ;
1015 struct completion completion ;
1016 struct wakeup_source *wakeup ;
1017 bool wakeup_path : 1 ;
1018 struct timer_list suspend_timer ;
1019 unsigned long timer_expires ;
1020 struct work_struct work ;
1021 wait_queue_head_t wait_queue ;
1022 atomic_t usage_count ;
1023 atomic_t child_count ;
1024 unsigned int disable_depth : 3 ;
1025 unsigned int idle_notification : 1 ;
1026 unsigned int request_pending : 1 ;
1027 unsigned int deferred_resume : 1 ;
1028 unsigned int run_wake : 1 ;
1029 unsigned int runtime_auto : 1 ;
1030 unsigned int no_callbacks : 1 ;
1031 unsigned int irq_safe : 1 ;
1032 unsigned int use_autosuspend : 1 ;
1033 unsigned int timer_autosuspends : 1 ;
1034 enum rpm_request request ;
1035 enum rpm_status runtime_status ;
1036 int runtime_error ;
1037 int autosuspend_delay ;
1038 unsigned long last_busy ;
1039 unsigned long active_jiffies ;
1040 unsigned long suspended_jiffies ;
1041 unsigned long accounting_timestamp ;
1042 ktime_t suspend_time ;
1043 s64 max_time_suspended_ns ;
1044 struct dev_pm_qos_request *pq_req ;
1045 struct pm_subsys_data *subsys_data ;
1046 struct pm_qos_raints *raints ;
1047};
1048#line 564 "include/linux/pm.h"
1049struct dev_pm_domain {
1050 struct dev_pm_ops ops ;
1051};
1052#line 8 "include/linux/vmalloc.h"
1053struct vm_area_struct;
1054#line 84 "include/linux/sem.h"
1055struct task_struct;
1056#line 101
1057struct sem_undo_list;
1058#line 101 "include/linux/sem.h"
1059struct sysv_sem {
1060 struct sem_undo_list *undo_list ;
1061};
1062#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1063struct siginfo;
1064#line 10
1065struct siginfo;
1066#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1067struct __anonstruct_sigset_t_150 {
1068 unsigned long sig[1] ;
1069};
1070#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1071typedef struct __anonstruct_sigset_t_150 sigset_t;
1072#line 17 "include/asm-generic/signal-defs.h"
1073typedef void __signalfn_t(int );
1074#line 18 "include/asm-generic/signal-defs.h"
1075typedef __signalfn_t *__sighandler_t;
1076#line 20 "include/asm-generic/signal-defs.h"
1077typedef void __restorefn_t(void);
1078#line 21 "include/asm-generic/signal-defs.h"
1079typedef __restorefn_t *__sigrestore_t;
1080#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1081struct sigaction {
1082 __sighandler_t sa_handler ;
1083 unsigned long sa_flags ;
1084 __sigrestore_t sa_restorer ;
1085 sigset_t sa_mask ;
1086};
1087#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1088struct k_sigaction {
1089 struct sigaction sa ;
1090};
1091#line 7 "include/asm-generic/siginfo.h"
1092union sigval {
1093 int sival_int ;
1094 void *sival_ptr ;
1095};
1096#line 7 "include/asm-generic/siginfo.h"
1097typedef union sigval sigval_t;
1098#line 48 "include/asm-generic/siginfo.h"
1099struct __anonstruct__kill_152 {
1100 __kernel_pid_t _pid ;
1101 __kernel_uid32_t _uid ;
1102};
1103#line 48 "include/asm-generic/siginfo.h"
1104struct __anonstruct__timer_153 {
1105 __kernel_timer_t _tid ;
1106 int _overrun ;
1107 char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
1108 sigval_t _sigval ;
1109 int _sys_private ;
1110};
1111#line 48 "include/asm-generic/siginfo.h"
1112struct __anonstruct__rt_154 {
1113 __kernel_pid_t _pid ;
1114 __kernel_uid32_t _uid ;
1115 sigval_t _sigval ;
1116};
1117#line 48 "include/asm-generic/siginfo.h"
1118struct __anonstruct__sigchld_155 {
1119 __kernel_pid_t _pid ;
1120 __kernel_uid32_t _uid ;
1121 int _status ;
1122 __kernel_clock_t _utime ;
1123 __kernel_clock_t _stime ;
1124};
1125#line 48 "include/asm-generic/siginfo.h"
1126struct __anonstruct__sigfault_156 {
1127 void *_addr ;
1128 short _addr_lsb ;
1129};
1130#line 48 "include/asm-generic/siginfo.h"
1131struct __anonstruct__sigpoll_157 {
1132 long _band ;
1133 int _fd ;
1134};
1135#line 48 "include/asm-generic/siginfo.h"
1136union __anonunion__sifields_151 {
1137 int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
1138 struct __anonstruct__kill_152 _kill ;
1139 struct __anonstruct__timer_153 _timer ;
1140 struct __anonstruct__rt_154 _rt ;
1141 struct __anonstruct__sigchld_155 _sigchld ;
1142 struct __anonstruct__sigfault_156 _sigfault ;
1143 struct __anonstruct__sigpoll_157 _sigpoll ;
1144};
1145#line 48 "include/asm-generic/siginfo.h"
1146struct siginfo {
1147 int si_signo ;
1148 int si_errno ;
1149 int si_code ;
1150 union __anonunion__sifields_151 _sifields ;
1151};
1152#line 48 "include/asm-generic/siginfo.h"
1153typedef struct siginfo siginfo_t;
1154#line 288
1155struct siginfo;
1156#line 10 "include/linux/signal.h"
1157struct task_struct;
1158#line 18
1159struct user_struct;
1160#line 28 "include/linux/signal.h"
1161struct sigpending {
1162 struct list_head list ;
1163 sigset_t signal ;
1164};
1165#line 239
1166struct timespec;
1167#line 240
1168struct pt_regs;
1169#line 6 "include/linux/pid.h"
1170enum pid_type {
1171 PIDTYPE_PID = 0,
1172 PIDTYPE_PGID = 1,
1173 PIDTYPE_SID = 2,
1174 PIDTYPE_MAX = 3
1175} ;
1176#line 50
1177struct pid_namespace;
1178#line 50 "include/linux/pid.h"
1179struct upid {
1180 int nr ;
1181 struct pid_namespace *ns ;
1182 struct hlist_node pid_chain ;
1183};
1184#line 57 "include/linux/pid.h"
1185struct pid {
1186 atomic_t count ;
1187 unsigned int level ;
1188 struct hlist_head tasks[3] ;
1189 struct rcu_head rcu ;
1190 struct upid numbers[1] ;
1191};
1192#line 69 "include/linux/pid.h"
1193struct pid_link {
1194 struct hlist_node node ;
1195 struct pid *pid ;
1196};
1197#line 100
1198struct pid_namespace;
1199#line 60 "include/linux/pageblock-flags.h"
1200struct page;
1201#line 9 "include/linux/memory_hotplug.h"
1202struct page;
1203#line 994 "include/linux/mmzone.h"
1204struct page;
1205#line 10 "include/linux/seccomp.h"
1206struct __anonstruct_seccomp_t_162 {
1207 int mode ;
1208};
1209#line 10 "include/linux/seccomp.h"
1210typedef struct __anonstruct_seccomp_t_162 seccomp_t;
1211#line 81 "include/linux/plist.h"
1212struct plist_head {
1213 struct list_head node_list ;
1214};
1215#line 85 "include/linux/plist.h"
1216struct plist_node {
1217 int prio ;
1218 struct list_head prio_list ;
1219 struct list_head node_list ;
1220};
1221#line 40 "include/linux/rtmutex.h"
1222struct rt_mutex_waiter;
1223#line 40
1224struct rt_mutex_waiter;
1225#line 42 "include/linux/resource.h"
1226struct rlimit {
1227 unsigned long rlim_cur ;
1228 unsigned long rlim_max ;
1229};
1230#line 81
1231struct task_struct;
1232#line 8 "include/linux/timerqueue.h"
1233struct timerqueue_node {
1234 struct rb_node node ;
1235 ktime_t expires ;
1236};
1237#line 13 "include/linux/timerqueue.h"
1238struct timerqueue_head {
1239 struct rb_root head ;
1240 struct timerqueue_node *next ;
1241};
1242#line 27 "include/linux/hrtimer.h"
1243struct hrtimer_clock_base;
1244#line 27
1245struct hrtimer_clock_base;
1246#line 28
1247struct hrtimer_cpu_base;
1248#line 28
1249struct hrtimer_cpu_base;
1250#line 44
1251enum hrtimer_restart {
1252 HRTIMER_NORESTART = 0,
1253 HRTIMER_RESTART = 1
1254} ;
1255#line 108 "include/linux/hrtimer.h"
1256struct hrtimer {
1257 struct timerqueue_node node ;
1258 ktime_t _softexpires ;
1259 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1260 struct hrtimer_clock_base *base ;
1261 unsigned long state ;
1262 int start_pid ;
1263 void *start_site ;
1264 char start_comm[16] ;
1265};
1266#line 145 "include/linux/hrtimer.h"
1267struct hrtimer_clock_base {
1268 struct hrtimer_cpu_base *cpu_base ;
1269 int index ;
1270 clockid_t clockid ;
1271 struct timerqueue_head active ;
1272 ktime_t resolution ;
1273 ktime_t (*get_time)(void) ;
1274 ktime_t softirq_time ;
1275 ktime_t offset ;
1276};
1277#line 178 "include/linux/hrtimer.h"
1278struct hrtimer_cpu_base {
1279 raw_spinlock_t lock ;
1280 unsigned long active_bases ;
1281 ktime_t expires_next ;
1282 int hres_active ;
1283 int hang_detected ;
1284 unsigned long nr_events ;
1285 unsigned long nr_retries ;
1286 unsigned long nr_hangs ;
1287 ktime_t max_hang_time ;
1288 struct hrtimer_clock_base clock_base[3] ;
1289};
1290#line 11 "include/linux/task_io_accounting.h"
1291struct task_io_accounting {
1292 u64 rchar ;
1293 u64 wchar ;
1294 u64 syscr ;
1295 u64 syscw ;
1296 u64 read_bytes ;
1297 u64 write_bytes ;
1298 u64 cancelled_write_bytes ;
1299};
1300#line 13 "include/linux/latencytop.h"
1301struct task_struct;
1302#line 20 "include/linux/latencytop.h"
1303struct latency_record {
1304 unsigned long backtrace[12] ;
1305 unsigned int count ;
1306 unsigned long time ;
1307 unsigned long max ;
1308};
1309#line 29 "include/linux/sysctl.h"
1310struct completion;
1311#line 939
1312struct nsproxy;
1313#line 939
1314struct nsproxy;
1315#line 29 "include/linux/key.h"
1316typedef int32_t key_serial_t;
1317#line 32 "include/linux/key.h"
1318typedef uint32_t key_perm_t;
1319#line 34
1320struct key;
1321#line 34
1322struct key;
1323#line 74
1324struct seq_file;
1325#line 75
1326struct user_struct;
1327#line 76
1328struct signal_struct;
1329#line 76
1330struct signal_struct;
1331#line 77
1332struct cred;
1333#line 77
1334struct cred;
1335#line 79
1336struct key_type;
1337#line 79
1338struct key_type;
1339#line 81
1340struct keyring_list;
1341#line 81
1342struct keyring_list;
1343#line 124
1344struct key_user;
1345#line 124 "include/linux/key.h"
1346union __anonunion____missing_field_name_219 {
1347 time_t expiry ;
1348 time_t revoked_at ;
1349};
1350#line 124 "include/linux/key.h"
1351union __anonunion_type_data_220 {
1352 struct list_head link ;
1353 unsigned long x[2] ;
1354 void *p[2] ;
1355 int reject_error ;
1356};
1357#line 124 "include/linux/key.h"
1358union __anonunion_payload_221 {
1359 unsigned long value ;
1360 void *rcudata ;
1361 void *data ;
1362 struct keyring_list *subscriptions ;
1363};
1364#line 124 "include/linux/key.h"
1365struct key {
1366 atomic_t usage ;
1367 key_serial_t serial ;
1368 struct rb_node serial_node ;
1369 struct key_type *type ;
1370 struct rw_semaphore sem ;
1371 struct key_user *user ;
1372 void *security ;
1373 union __anonunion____missing_field_name_219 __annonCompField41 ;
1374 uid_t uid ;
1375 gid_t gid ;
1376 key_perm_t perm ;
1377 unsigned short quotalen ;
1378 unsigned short datalen ;
1379 unsigned long flags ;
1380 char *description ;
1381 union __anonunion_type_data_220 type_data ;
1382 union __anonunion_payload_221 payload ;
1383};
1384#line 18 "include/linux/selinux.h"
1385struct audit_context;
1386#line 18
1387struct audit_context;
1388#line 21 "include/linux/cred.h"
1389struct user_struct;
1390#line 22
1391struct cred;
1392#line 23
1393struct inode;
1394#line 23
1395struct inode;
1396#line 31 "include/linux/cred.h"
1397struct group_info {
1398 atomic_t usage ;
1399 int ngroups ;
1400 int nblocks ;
1401 gid_t small_block[32] ;
1402 gid_t *blocks[0] ;
1403};
1404#line 83 "include/linux/cred.h"
1405struct thread_group_cred {
1406 atomic_t usage ;
1407 pid_t tgid ;
1408 spinlock_t lock ;
1409 struct key *session_keyring ;
1410 struct key *process_keyring ;
1411 struct rcu_head rcu ;
1412};
1413#line 116 "include/linux/cred.h"
1414struct cred {
1415 atomic_t usage ;
1416 atomic_t subscribers ;
1417 void *put_addr ;
1418 unsigned int magic ;
1419 uid_t uid ;
1420 gid_t gid ;
1421 uid_t suid ;
1422 gid_t sgid ;
1423 uid_t euid ;
1424 gid_t egid ;
1425 uid_t fsuid ;
1426 gid_t fsgid ;
1427 unsigned int securebits ;
1428 kernel_cap_t cap_inheritable ;
1429 kernel_cap_t cap_permitted ;
1430 kernel_cap_t cap_effective ;
1431 kernel_cap_t cap_bset ;
1432 unsigned char jit_keyring ;
1433 struct key *thread_keyring ;
1434 struct key *request_key_auth ;
1435 struct thread_group_cred *tgcred ;
1436 void *security ;
1437 struct user_struct *user ;
1438 struct user_namespace *user_ns ;
1439 struct group_info *group_info ;
1440 struct rcu_head rcu ;
1441};
1442#line 61 "include/linux/llist.h"
1443struct llist_node;
1444#line 65 "include/linux/llist.h"
1445struct llist_node {
1446 struct llist_node *next ;
1447};
1448#line 96 "include/linux/sched.h"
1449struct exec_domain;
1450#line 97
1451struct futex_pi_state;
1452#line 97
1453struct futex_pi_state;
1454#line 98
1455struct robust_list_head;
1456#line 98
1457struct robust_list_head;
1458#line 99
1459struct bio_list;
1460#line 99
1461struct bio_list;
1462#line 100
1463struct fs_struct;
1464#line 100
1465struct fs_struct;
1466#line 101
1467struct perf_event_context;
1468#line 101
1469struct perf_event_context;
1470#line 102
1471struct blk_plug;
1472#line 102
1473struct blk_plug;
1474#line 150
1475struct seq_file;
1476#line 151
1477struct cfs_rq;
1478#line 151
1479struct cfs_rq;
1480#line 259
1481struct task_struct;
1482#line 366
1483struct nsproxy;
1484#line 367
1485struct user_namespace;
1486#line 58 "include/linux/aio_abi.h"
1487struct io_event {
1488 __u64 data ;
1489 __u64 obj ;
1490 __s64 res ;
1491 __s64 res2 ;
1492};
1493#line 16 "include/linux/uio.h"
1494struct iovec {
1495 void *iov_base ;
1496 __kernel_size_t iov_len ;
1497};
1498#line 15 "include/linux/aio.h"
1499struct kioctx;
1500#line 15
1501struct kioctx;
1502#line 87 "include/linux/aio.h"
1503union __anonunion_ki_obj_223 {
1504 void *user ;
1505 struct task_struct *tsk ;
1506};
1507#line 87
1508struct eventfd_ctx;
1509#line 87 "include/linux/aio.h"
1510struct kiocb {
1511 struct list_head ki_run_list ;
1512 unsigned long ki_flags ;
1513 int ki_users ;
1514 unsigned int ki_key ;
1515 struct file *ki_filp ;
1516 struct kioctx *ki_ctx ;
1517 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
1518 ssize_t (*ki_retry)(struct kiocb * ) ;
1519 void (*ki_dtor)(struct kiocb * ) ;
1520 union __anonunion_ki_obj_223 ki_obj ;
1521 __u64 ki_user_data ;
1522 loff_t ki_pos ;
1523 void *private ;
1524 unsigned short ki_opcode ;
1525 size_t ki_nbytes ;
1526 char *ki_buf ;
1527 size_t ki_left ;
1528 struct iovec ki_inline_vec ;
1529 struct iovec *ki_iovec ;
1530 unsigned long ki_nr_segs ;
1531 unsigned long ki_cur_seg ;
1532 struct list_head ki_list ;
1533 struct list_head ki_batch ;
1534 struct eventfd_ctx *ki_eventfd ;
1535};
1536#line 166 "include/linux/aio.h"
1537struct aio_ring_info {
1538 unsigned long mmap_base ;
1539 unsigned long mmap_size ;
1540 struct page **ring_pages ;
1541 spinlock_t ring_lock ;
1542 long nr_pages ;
1543 unsigned int nr ;
1544 unsigned int tail ;
1545 struct page *internal_pages[8] ;
1546};
1547#line 179 "include/linux/aio.h"
1548struct kioctx {
1549 atomic_t users ;
1550 int dead ;
1551 struct mm_struct *mm ;
1552 unsigned long user_id ;
1553 struct hlist_node list ;
1554 wait_queue_head_t wait ;
1555 spinlock_t ctx_lock ;
1556 int reqs_active ;
1557 struct list_head active_reqs ;
1558 struct list_head run_list ;
1559 unsigned int max_reqs ;
1560 struct aio_ring_info ring_info ;
1561 struct delayed_work wq ;
1562 struct rcu_head rcu_head ;
1563};
1564#line 214
1565struct mm_struct;
1566#line 443 "include/linux/sched.h"
1567struct sighand_struct {
1568 atomic_t count ;
1569 struct k_sigaction action[64] ;
1570 spinlock_t siglock ;
1571 wait_queue_head_t signalfd_wqh ;
1572};
1573#line 450 "include/linux/sched.h"
1574struct pacct_struct {
1575 int ac_flag ;
1576 long ac_exitcode ;
1577 unsigned long ac_mem ;
1578 cputime_t ac_utime ;
1579 cputime_t ac_stime ;
1580 unsigned long ac_minflt ;
1581 unsigned long ac_majflt ;
1582};
1583#line 458 "include/linux/sched.h"
1584struct cpu_itimer {
1585 cputime_t expires ;
1586 cputime_t incr ;
1587 u32 error ;
1588 u32 incr_error ;
1589};
1590#line 476 "include/linux/sched.h"
1591struct task_cputime {
1592 cputime_t utime ;
1593 cputime_t stime ;
1594 unsigned long long sum_exec_runtime ;
1595};
1596#line 512 "include/linux/sched.h"
1597struct thread_group_cputimer {
1598 struct task_cputime cputime ;
1599 int running ;
1600 raw_spinlock_t lock ;
1601};
1602#line 519
1603struct autogroup;
1604#line 519
1605struct autogroup;
1606#line 528
1607struct tty_struct;
1608#line 528
1609struct taskstats;
1610#line 528
1611struct tty_audit_buf;
1612#line 528 "include/linux/sched.h"
1613struct signal_struct {
1614 atomic_t sigcnt ;
1615 atomic_t live ;
1616 int nr_threads ;
1617 wait_queue_head_t wait_chldexit ;
1618 struct task_struct *curr_target ;
1619 struct sigpending shared_pending ;
1620 int group_exit_code ;
1621 int notify_count ;
1622 struct task_struct *group_exit_task ;
1623 int group_stop_count ;
1624 unsigned int flags ;
1625 unsigned int is_child_subreaper : 1 ;
1626 unsigned int has_child_subreaper : 1 ;
1627 struct list_head posix_timers ;
1628 struct hrtimer real_timer ;
1629 struct pid *leader_pid ;
1630 ktime_t it_real_incr ;
1631 struct cpu_itimer it[2] ;
1632 struct thread_group_cputimer cputimer ;
1633 struct task_cputime cputime_expires ;
1634 struct list_head cpu_timers[3] ;
1635 struct pid *tty_old_pgrp ;
1636 int leader ;
1637 struct tty_struct *tty ;
1638 struct autogroup *autogroup ;
1639 cputime_t utime ;
1640 cputime_t stime ;
1641 cputime_t cutime ;
1642 cputime_t cstime ;
1643 cputime_t gtime ;
1644 cputime_t cgtime ;
1645 cputime_t prev_utime ;
1646 cputime_t prev_stime ;
1647 unsigned long nvcsw ;
1648 unsigned long nivcsw ;
1649 unsigned long cnvcsw ;
1650 unsigned long cnivcsw ;
1651 unsigned long min_flt ;
1652 unsigned long maj_flt ;
1653 unsigned long cmin_flt ;
1654 unsigned long cmaj_flt ;
1655 unsigned long inblock ;
1656 unsigned long oublock ;
1657 unsigned long cinblock ;
1658 unsigned long coublock ;
1659 unsigned long maxrss ;
1660 unsigned long cmaxrss ;
1661 struct task_io_accounting ioac ;
1662 unsigned long long sum_sched_runtime ;
1663 struct rlimit rlim[16] ;
1664 struct pacct_struct pacct ;
1665 struct taskstats *stats ;
1666 unsigned int audit_tty ;
1667 struct tty_audit_buf *tty_audit_buf ;
1668 struct rw_semaphore group_rwsem ;
1669 int oom_adj ;
1670 int oom_score_adj ;
1671 int oom_score_adj_min ;
1672 struct mutex cred_guard_mutex ;
1673};
1674#line 703 "include/linux/sched.h"
1675struct user_struct {
1676 atomic_t __count ;
1677 atomic_t processes ;
1678 atomic_t files ;
1679 atomic_t sigpending ;
1680 atomic_t inotify_watches ;
1681 atomic_t inotify_devs ;
1682 atomic_t fanotify_listeners ;
1683 atomic_long_t epoll_watches ;
1684 unsigned long mq_bytes ;
1685 unsigned long locked_shm ;
1686 struct key *uid_keyring ;
1687 struct key *session_keyring ;
1688 struct hlist_node uidhash_node ;
1689 uid_t uid ;
1690 struct user_namespace *user_ns ;
1691 atomic_long_t locked_vm ;
1692};
1693#line 747
1694struct backing_dev_info;
1695#line 747
1696struct backing_dev_info;
1697#line 748
1698struct reclaim_state;
1699#line 748
1700struct reclaim_state;
1701#line 751 "include/linux/sched.h"
1702struct sched_info {
1703 unsigned long pcount ;
1704 unsigned long long run_delay ;
1705 unsigned long long last_arrival ;
1706 unsigned long long last_queued ;
1707};
1708#line 763 "include/linux/sched.h"
1709struct task_delay_info {
1710 spinlock_t lock ;
1711 unsigned int flags ;
1712 struct timespec blkio_start ;
1713 struct timespec blkio_end ;
1714 u64 blkio_delay ;
1715 u64 swapin_delay ;
1716 u32 blkio_count ;
1717 u32 swapin_count ;
1718 struct timespec freepages_start ;
1719 struct timespec freepages_end ;
1720 u64 freepages_delay ;
1721 u32 freepages_count ;
1722};
1723#line 1088
1724struct io_context;
1725#line 1088
1726struct io_context;
1727#line 1097
1728struct audit_context;
1729#line 1098
1730struct mempolicy;
1731#line 1099
1732struct pipe_inode_info;
1733#line 1099
1734struct pipe_inode_info;
1735#line 1102
1736struct rq;
1737#line 1102
1738struct rq;
1739#line 1122 "include/linux/sched.h"
1740struct sched_class {
1741 struct sched_class *next ;
1742 void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
1743 void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
1744 void (*yield_task)(struct rq *rq ) ;
1745 bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
1746 void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
1747 struct task_struct *(*pick_next_task)(struct rq *rq ) ;
1748 void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
1749 int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
1750 void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
1751 void (*post_schedule)(struct rq *this_rq ) ;
1752 void (*task_waking)(struct task_struct *task ) ;
1753 void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
1754 void (*set_cpus_allowed)(struct task_struct *p , struct cpumask *newmask ) ;
1755 void (*rq_online)(struct rq *rq ) ;
1756 void (*rq_offline)(struct rq *rq ) ;
1757 void (*set_curr_task)(struct rq *rq ) ;
1758 void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
1759 void (*task_fork)(struct task_struct *p ) ;
1760 void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
1761 void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
1762 void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
1763 unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
1764 void (*task_move_group)(struct task_struct *p , int on_rq ) ;
1765};
1766#line 1167 "include/linux/sched.h"
1767struct load_weight {
1768 unsigned long weight ;
1769 unsigned long inv_weight ;
1770};
1771#line 1172 "include/linux/sched.h"
1772struct sched_statistics {
1773 u64 wait_start ;
1774 u64 wait_max ;
1775 u64 wait_count ;
1776 u64 wait_sum ;
1777 u64 iowait_count ;
1778 u64 iowait_sum ;
1779 u64 sleep_start ;
1780 u64 sleep_max ;
1781 s64 sum_sleep_runtime ;
1782 u64 block_start ;
1783 u64 block_max ;
1784 u64 exec_max ;
1785 u64 slice_max ;
1786 u64 nr_migrations_cold ;
1787 u64 nr_failed_migrations_affine ;
1788 u64 nr_failed_migrations_running ;
1789 u64 nr_failed_migrations_hot ;
1790 u64 nr_forced_migrations ;
1791 u64 nr_wakeups ;
1792 u64 nr_wakeups_sync ;
1793 u64 nr_wakeups_migrate ;
1794 u64 nr_wakeups_local ;
1795 u64 nr_wakeups_remote ;
1796 u64 nr_wakeups_affine ;
1797 u64 nr_wakeups_affine_attempts ;
1798 u64 nr_wakeups_passive ;
1799 u64 nr_wakeups_idle ;
1800};
1801#line 1207 "include/linux/sched.h"
1802struct sched_entity {
1803 struct load_weight load ;
1804 struct rb_node run_node ;
1805 struct list_head group_node ;
1806 unsigned int on_rq ;
1807 u64 exec_start ;
1808 u64 sum_exec_runtime ;
1809 u64 vruntime ;
1810 u64 prev_sum_exec_runtime ;
1811 u64 nr_migrations ;
1812 struct sched_statistics statistics ;
1813 struct sched_entity *parent ;
1814 struct cfs_rq *cfs_rq ;
1815 struct cfs_rq *my_q ;
1816};
1817#line 1233
1818struct rt_rq;
1819#line 1233 "include/linux/sched.h"
1820struct sched_rt_entity {
1821 struct list_head run_list ;
1822 unsigned long timeout ;
1823 unsigned int time_slice ;
1824 int nr_cpus_allowed ;
1825 struct sched_rt_entity *back ;
1826 struct sched_rt_entity *parent ;
1827 struct rt_rq *rt_rq ;
1828 struct rt_rq *my_q ;
1829};
1830#line 1264
1831struct files_struct;
1832#line 1264
1833struct css_set;
1834#line 1264
1835struct compat_robust_list_head;
1836#line 1264
1837struct mem_cgroup;
1838#line 1264 "include/linux/sched.h"
1839struct memcg_batch_info {
1840 int do_batch ;
1841 struct mem_cgroup *memcg ;
1842 unsigned long nr_pages ;
1843 unsigned long memsw_nr_pages ;
1844};
1845#line 1264 "include/linux/sched.h"
1846struct task_struct {
1847 long volatile state ;
1848 void *stack ;
1849 atomic_t usage ;
1850 unsigned int flags ;
1851 unsigned int ptrace ;
1852 struct llist_node wake_entry ;
1853 int on_cpu ;
1854 int on_rq ;
1855 int prio ;
1856 int static_prio ;
1857 int normal_prio ;
1858 unsigned int rt_priority ;
1859 struct sched_class *sched_class ;
1860 struct sched_entity se ;
1861 struct sched_rt_entity rt ;
1862 struct hlist_head preempt_notifiers ;
1863 unsigned char fpu_counter ;
1864 unsigned int policy ;
1865 cpumask_t cpus_allowed ;
1866 struct sched_info sched_info ;
1867 struct list_head tasks ;
1868 struct plist_node pushable_tasks ;
1869 struct mm_struct *mm ;
1870 struct mm_struct *active_mm ;
1871 unsigned int brk_randomized : 1 ;
1872 int exit_state ;
1873 int exit_code ;
1874 int exit_signal ;
1875 int pdeath_signal ;
1876 unsigned int jobctl ;
1877 unsigned int personality ;
1878 unsigned int did_exec : 1 ;
1879 unsigned int in_execve : 1 ;
1880 unsigned int in_iowait : 1 ;
1881 unsigned int sched_reset_on_fork : 1 ;
1882 unsigned int sched_contributes_to_load : 1 ;
1883 unsigned int irq_thread : 1 ;
1884 pid_t pid ;
1885 pid_t tgid ;
1886 unsigned long stack_canary ;
1887 struct task_struct *real_parent ;
1888 struct task_struct *parent ;
1889 struct list_head children ;
1890 struct list_head sibling ;
1891 struct task_struct *group_leader ;
1892 struct list_head ptraced ;
1893 struct list_head ptrace_entry ;
1894 struct pid_link pids[3] ;
1895 struct list_head thread_group ;
1896 struct completion *vfork_done ;
1897 int *set_child_tid ;
1898 int *clear_child_tid ;
1899 cputime_t utime ;
1900 cputime_t stime ;
1901 cputime_t utimescaled ;
1902 cputime_t stimescaled ;
1903 cputime_t gtime ;
1904 cputime_t prev_utime ;
1905 cputime_t prev_stime ;
1906 unsigned long nvcsw ;
1907 unsigned long nivcsw ;
1908 struct timespec start_time ;
1909 struct timespec real_start_time ;
1910 unsigned long min_flt ;
1911 unsigned long maj_flt ;
1912 struct task_cputime cputime_expires ;
1913 struct list_head cpu_timers[3] ;
1914 struct cred *real_cred ;
1915 struct cred *cred ;
1916 struct cred *replacement_session_keyring ;
1917 char comm[16] ;
1918 int link_count ;
1919 int total_link_count ;
1920 struct sysv_sem sysvsem ;
1921 unsigned long last_switch_count ;
1922 struct thread_struct thread ;
1923 struct fs_struct *fs ;
1924 struct files_struct *files ;
1925 struct nsproxy *nsproxy ;
1926 struct signal_struct *signal ;
1927 struct sighand_struct *sighand ;
1928 sigset_t blocked ;
1929 sigset_t real_blocked ;
1930 sigset_t saved_sigmask ;
1931 struct sigpending pending ;
1932 unsigned long sas_ss_sp ;
1933 size_t sas_ss_size ;
1934 int (*notifier)(void *priv ) ;
1935 void *notifier_data ;
1936 sigset_t *notifier_mask ;
1937 struct audit_context *audit_context ;
1938 uid_t loginuid ;
1939 unsigned int sessionid ;
1940 seccomp_t seccomp ;
1941 u32 parent_exec_id ;
1942 u32 self_exec_id ;
1943 spinlock_t alloc_lock ;
1944 raw_spinlock_t pi_lock ;
1945 struct plist_head pi_waiters ;
1946 struct rt_mutex_waiter *pi_blocked_on ;
1947 struct mutex_waiter *blocked_on ;
1948 unsigned int irq_events ;
1949 unsigned long hardirq_enable_ip ;
1950 unsigned long hardirq_disable_ip ;
1951 unsigned int hardirq_enable_event ;
1952 unsigned int hardirq_disable_event ;
1953 int hardirqs_enabled ;
1954 int hardirq_context ;
1955 unsigned long softirq_disable_ip ;
1956 unsigned long softirq_enable_ip ;
1957 unsigned int softirq_disable_event ;
1958 unsigned int softirq_enable_event ;
1959 int softirqs_enabled ;
1960 int softirq_context ;
1961 void *journal_info ;
1962 struct bio_list *bio_list ;
1963 struct blk_plug *plug ;
1964 struct reclaim_state *reclaim_state ;
1965 struct backing_dev_info *backing_dev_info ;
1966 struct io_context *io_context ;
1967 unsigned long ptrace_message ;
1968 siginfo_t *last_siginfo ;
1969 struct task_io_accounting ioac ;
1970 u64 acct_rss_mem1 ;
1971 u64 acct_vm_mem1 ;
1972 cputime_t acct_timexpd ;
1973 nodemask_t mems_allowed ;
1974 seqcount_t mems_allowed_seq ;
1975 int cpuset_mem_spread_rotor ;
1976 int cpuset_slab_spread_rotor ;
1977 struct css_set *cgroups ;
1978 struct list_head cg_list ;
1979 struct robust_list_head *robust_list ;
1980 struct compat_robust_list_head *compat_robust_list ;
1981 struct list_head pi_state_list ;
1982 struct futex_pi_state *pi_state_cache ;
1983 struct perf_event_context *perf_event_ctxp[2] ;
1984 struct mutex perf_event_mutex ;
1985 struct list_head perf_event_list ;
1986 struct mempolicy *mempolicy ;
1987 short il_next ;
1988 short pref_node_fork ;
1989 struct rcu_head rcu ;
1990 struct pipe_inode_info *splice_pipe ;
1991 struct task_delay_info *delays ;
1992 int make_it_fail ;
1993 int nr_dirtied ;
1994 int nr_dirtied_pause ;
1995 unsigned long dirty_paused_when ;
1996 int latency_record_count ;
1997 struct latency_record latency_record[32] ;
1998 unsigned long timer_slack_ns ;
1999 unsigned long default_timer_slack_ns ;
2000 struct list_head *scm_work_list ;
2001 unsigned long trace ;
2002 unsigned long trace_recursion ;
2003 struct memcg_batch_info memcg_batch ;
2004 atomic_t ptrace_bp_refcnt ;
2005};
2006#line 1681
2007struct pid_namespace;
2008#line 10 "include/linux/gfp.h"
2009struct vm_area_struct;
2010#line 20 "include/linux/kobject_ns.h"
2011struct sock;
2012#line 20
2013struct sock;
2014#line 21
2015struct kobject;
2016#line 21
2017struct kobject;
2018#line 27
2019enum kobj_ns_type {
2020 KOBJ_NS_TYPE_NONE = 0,
2021 KOBJ_NS_TYPE_NET = 1,
2022 KOBJ_NS_TYPES = 2
2023} ;
2024#line 40 "include/linux/kobject_ns.h"
2025struct kobj_ns_type_operations {
2026 enum kobj_ns_type type ;
2027 void *(*grab_current_ns)(void) ;
2028 void *(*netlink_ns)(struct sock *sk ) ;
2029 void *(*initial_ns)(void) ;
2030 void (*drop_ns)(void * ) ;
2031};
2032#line 22 "include/linux/sysfs.h"
2033struct kobject;
2034#line 23
2035struct module;
2036#line 24
2037enum kobj_ns_type;
2038#line 26 "include/linux/sysfs.h"
2039struct attribute {
2040 char *name ;
2041 umode_t mode ;
2042};
2043#line 56 "include/linux/sysfs.h"
2044struct attribute_group {
2045 char *name ;
2046 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
2047 struct attribute **attrs ;
2048};
2049#line 85
2050struct file;
2051#line 86
2052struct vm_area_struct;
2053#line 88 "include/linux/sysfs.h"
2054struct bin_attribute {
2055 struct attribute attr ;
2056 size_t size ;
2057 void *private ;
2058 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
2059 loff_t , size_t ) ;
2060 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
2061 loff_t , size_t ) ;
2062 int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
2063};
2064#line 112 "include/linux/sysfs.h"
2065struct sysfs_ops {
2066 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
2067 ssize_t (*store)(struct kobject * , struct attribute * , char * , size_t ) ;
2068 void *(*namespace)(struct kobject * , struct attribute * ) ;
2069};
2070#line 118
2071struct sysfs_dirent;
2072#line 118
2073struct sysfs_dirent;
2074#line 22 "include/linux/kref.h"
2075struct kref {
2076 atomic_t refcount ;
2077};
2078#line 60 "include/linux/kobject.h"
2079struct kset;
2080#line 60
2081struct kobj_type;
2082#line 60 "include/linux/kobject.h"
2083struct kobject {
2084 char *name ;
2085 struct list_head entry ;
2086 struct kobject *parent ;
2087 struct kset *kset ;
2088 struct kobj_type *ktype ;
2089 struct sysfs_dirent *sd ;
2090 struct kref kref ;
2091 unsigned int state_initialized : 1 ;
2092 unsigned int state_in_sysfs : 1 ;
2093 unsigned int state_add_uevent_sent : 1 ;
2094 unsigned int state_remove_uevent_sent : 1 ;
2095 unsigned int uevent_suppress : 1 ;
2096};
2097#line 108 "include/linux/kobject.h"
2098struct kobj_type {
2099 void (*release)(struct kobject *kobj ) ;
2100 struct sysfs_ops *sysfs_ops ;
2101 struct attribute **default_attrs ;
2102 struct kobj_ns_type_operations *(*child_ns_type)(struct kobject *kobj ) ;
2103 void *(*namespace)(struct kobject *kobj ) ;
2104};
2105#line 116 "include/linux/kobject.h"
2106struct kobj_uevent_env {
2107 char *envp[32] ;
2108 int envp_idx ;
2109 char buf[2048] ;
2110 int buflen ;
2111};
2112#line 123 "include/linux/kobject.h"
2113struct kset_uevent_ops {
2114 int (* filter)(struct kset *kset , struct kobject *kobj ) ;
2115 char *(* name)(struct kset *kset , struct kobject *kobj ) ;
2116 int (* uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
2117};
2118#line 140
2119struct sock;
2120#line 159 "include/linux/kobject.h"
2121struct kset {
2122 struct list_head list ;
2123 spinlock_t list_lock ;
2124 struct kobject kobj ;
2125 struct kset_uevent_ops *uevent_ops ;
2126};
2127#line 46 "include/linux/slub_def.h"
2128struct kmem_cache_cpu {
2129 void **freelist ;
2130 unsigned long tid ;
2131 struct page *page ;
2132 struct page *partial ;
2133 int node ;
2134 unsigned int stat[26] ;
2135};
2136#line 57 "include/linux/slub_def.h"
2137struct kmem_cache_node {
2138 spinlock_t list_lock ;
2139 unsigned long nr_partial ;
2140 struct list_head partial ;
2141 atomic_long_t nr_slabs ;
2142 atomic_long_t total_objects ;
2143 struct list_head full ;
2144};
2145#line 73 "include/linux/slub_def.h"
2146struct kmem_cache_order_objects {
2147 unsigned long x ;
2148};
2149#line 80 "include/linux/slub_def.h"
2150struct kmem_cache {
2151 struct kmem_cache_cpu *cpu_slab ;
2152 unsigned long flags ;
2153 unsigned long min_partial ;
2154 int size ;
2155 int objsize ;
2156 int offset ;
2157 int cpu_partial ;
2158 struct kmem_cache_order_objects oo ;
2159 struct kmem_cache_order_objects max ;
2160 struct kmem_cache_order_objects min ;
2161 gfp_t allocflags ;
2162 int refcount ;
2163 void (*ctor)(void * ) ;
2164 int inuse ;
2165 int align ;
2166 int reserved ;
2167 char *name ;
2168 struct list_head list ;
2169 struct kobject kobj ;
2170 int remote_node_defrag_ratio ;
2171 struct kmem_cache_node *node[1 << 10] ;
2172};
2173#line 33 "include/asm-generic/poll.h"
2174struct pollfd {
2175 int fd ;
2176 short events ;
2177 short revents ;
2178};
2179#line 15 "include/linux/blk_types.h"
2180struct page;
2181#line 16
2182struct block_device;
2183#line 16
2184struct block_device;
2185#line 33 "include/linux/list_bl.h"
2186struct hlist_bl_node;
2187#line 33 "include/linux/list_bl.h"
2188struct hlist_bl_head {
2189 struct hlist_bl_node *first ;
2190};
2191#line 37 "include/linux/list_bl.h"
2192struct hlist_bl_node {
2193 struct hlist_bl_node *next ;
2194 struct hlist_bl_node **pprev ;
2195};
2196#line 13 "include/linux/dcache.h"
2197struct nameidata;
2198#line 13
2199struct nameidata;
2200#line 14
2201struct path;
2202#line 14
2203struct path;
2204#line 15
2205struct vfsmount;
2206#line 15
2207struct vfsmount;
2208#line 35 "include/linux/dcache.h"
2209struct qstr {
2210 unsigned int hash ;
2211 unsigned int len ;
2212 unsigned char *name ;
2213};
2214#line 88
2215struct dentry_operations;
2216#line 88
2217struct super_block;
2218#line 88 "include/linux/dcache.h"
2219union __anonunion_d_u_225 {
2220 struct list_head d_child ;
2221 struct rcu_head d_rcu ;
2222};
2223#line 88 "include/linux/dcache.h"
2224struct dentry {
2225 unsigned int d_flags ;
2226 seqcount_t d_seq ;
2227 struct hlist_bl_node d_hash ;
2228 struct dentry *d_parent ;
2229 struct qstr d_name ;
2230 struct inode *d_inode ;
2231 unsigned char d_iname[32] ;
2232 unsigned int d_count ;
2233 spinlock_t d_lock ;
2234 struct dentry_operations *d_op ;
2235 struct super_block *d_sb ;
2236 unsigned long d_time ;
2237 void *d_fsdata ;
2238 struct list_head d_lru ;
2239 union __anonunion_d_u_225 d_u ;
2240 struct list_head d_subdirs ;
2241 struct list_head d_alias ;
2242};
2243#line 131 "include/linux/dcache.h"
2244struct dentry_operations {
2245 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
2246 int (*d_hash)(struct dentry * , struct inode * , struct qstr * ) ;
2247 int (*d_compare)(struct dentry * , struct inode * , struct dentry const * ,
2248 struct inode * , unsigned int , char * , struct qstr const * ) ;
2249 int (*d_delete)(struct dentry * ) ;
2250 void (*d_release)(struct dentry * ) ;
2251 void (*d_prune)(struct dentry * ) ;
2252 void (*d_iput)(struct dentry * , struct inode * ) ;
2253 char *(*d_dname)(struct dentry * , char * , int ) ;
2254 struct vfsmount *(*d_automount)(struct path * ) ;
2255 int (*d_manage)(struct dentry * , bool ) ;
2256} __attribute__((__aligned__((1) << (6) ))) ;
2257#line 4 "include/linux/path.h"
2258struct dentry;
2259#line 5
2260struct vfsmount;
2261#line 7 "include/linux/path.h"
2262struct path {
2263 struct vfsmount *mnt ;
2264 struct dentry *dentry ;
2265};
2266#line 62 "include/linux/stat.h"
2267struct kstat {
2268 u64 ino ;
2269 dev_t dev ;
2270 umode_t mode ;
2271 unsigned int nlink ;
2272 uid_t uid ;
2273 gid_t gid ;
2274 dev_t rdev ;
2275 loff_t size ;
2276 struct timespec atime ;
2277 struct timespec mtime ;
2278 struct timespec ctime ;
2279 unsigned long blksize ;
2280 unsigned long long blocks ;
2281};
2282#line 64 "include/linux/radix-tree.h"
2283struct radix_tree_node;
2284#line 64 "include/linux/radix-tree.h"
2285struct radix_tree_root {
2286 unsigned int height ;
2287 gfp_t gfp_mask ;
2288 struct radix_tree_node *rnode ;
2289};
2290#line 16 "include/linux/fiemap.h"
2291struct fiemap_extent {
2292 __u64 fe_logical ;
2293 __u64 fe_physical ;
2294 __u64 fe_length ;
2295 __u64 fe_reserved64[2] ;
2296 __u32 fe_flags ;
2297 __u32 fe_reserved[3] ;
2298};
2299#line 8 "include/linux/shrinker.h"
2300struct shrink_control {
2301 gfp_t gfp_mask ;
2302 unsigned long nr_to_scan ;
2303};
2304#line 31 "include/linux/shrinker.h"
2305struct shrinker {
2306 int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
2307 int seeks ;
2308 long batch ;
2309 struct list_head list ;
2310 atomic_long_t nr_in_batch ;
2311};
2312#line 10 "include/linux/migrate_mode.h"
2313enum migrate_mode {
2314 MIGRATE_ASYNC = 0,
2315 MIGRATE_SYNC_LIGHT = 1,
2316 MIGRATE_SYNC = 2
2317} ;
2318#line 408 "include/linux/fs.h"
2319struct export_operations;
2320#line 408
2321struct export_operations;
2322#line 410
2323struct iovec;
2324#line 411
2325struct nameidata;
2326#line 412
2327struct kiocb;
2328#line 413
2329struct kobject;
2330#line 414
2331struct pipe_inode_info;
2332#line 415
2333struct poll_table_struct;
2334#line 415
2335struct poll_table_struct;
2336#line 416
2337struct kstatfs;
2338#line 416
2339struct kstatfs;
2340#line 417
2341struct vm_area_struct;
2342#line 418
2343struct vfsmount;
2344#line 419
2345struct cred;
2346#line 469 "include/linux/fs.h"
2347struct iattr {
2348 unsigned int ia_valid ;
2349 umode_t ia_mode ;
2350 uid_t ia_uid ;
2351 gid_t ia_gid ;
2352 loff_t ia_size ;
2353 struct timespec ia_atime ;
2354 struct timespec ia_mtime ;
2355 struct timespec ia_ctime ;
2356 struct file *ia_file ;
2357};
2358#line 129 "include/linux/quota.h"
2359struct if_dqinfo {
2360 __u64 dqi_bgrace ;
2361 __u64 dqi_igrace ;
2362 __u32 dqi_flags ;
2363 __u32 dqi_valid ;
2364};
2365#line 50 "include/linux/dqblk_xfs.h"
2366struct fs_disk_quota {
2367 __s8 d_version ;
2368 __s8 d_flags ;
2369 __u16 d_fieldmask ;
2370 __u32 d_id ;
2371 __u64 d_blk_hardlimit ;
2372 __u64 d_blk_softlimit ;
2373 __u64 d_ino_hardlimit ;
2374 __u64 d_ino_softlimit ;
2375 __u64 d_bcount ;
2376 __u64 d_icount ;
2377 __s32 d_itimer ;
2378 __s32 d_btimer ;
2379 __u16 d_iwarns ;
2380 __u16 d_bwarns ;
2381 __s32 d_padding2 ;
2382 __u64 d_rtb_hardlimit ;
2383 __u64 d_rtb_softlimit ;
2384 __u64 d_rtbcount ;
2385 __s32 d_rtbtimer ;
2386 __u16 d_rtbwarns ;
2387 __s16 d_padding3 ;
2388 char d_padding4[8] ;
2389};
2390#line 146 "include/linux/dqblk_xfs.h"
2391struct fs_qfilestat {
2392 __u64 qfs_ino ;
2393 __u64 qfs_nblks ;
2394 __u32 qfs_nextents ;
2395};
2396#line 146 "include/linux/dqblk_xfs.h"
2397typedef struct fs_qfilestat fs_qfilestat_t;
2398#line 152 "include/linux/dqblk_xfs.h"
2399struct fs_quota_stat {
2400 __s8 qs_version ;
2401 __u16 qs_flags ;
2402 __s8 qs_pad ;
2403 fs_qfilestat_t qs_uquota ;
2404 fs_qfilestat_t qs_gquota ;
2405 __u32 qs_incoredqs ;
2406 __s32 qs_btimelimit ;
2407 __s32 qs_itimelimit ;
2408 __s32 qs_rtbtimelimit ;
2409 __u16 qs_bwarnlimit ;
2410 __u16 qs_iwarnlimit ;
2411};
2412#line 17 "include/linux/dqblk_qtree.h"
2413struct dquot;
2414#line 17
2415struct dquot;
2416#line 185 "include/linux/quota.h"
2417typedef __kernel_uid32_t qid_t;
2418#line 186 "include/linux/quota.h"
2419typedef long long qsize_t;
2420#line 200 "include/linux/quota.h"
2421struct mem_dqblk {
2422 qsize_t dqb_bhardlimit ;
2423 qsize_t dqb_bsoftlimit ;
2424 qsize_t dqb_curspace ;
2425 qsize_t dqb_rsvspace ;
2426 qsize_t dqb_ihardlimit ;
2427 qsize_t dqb_isoftlimit ;
2428 qsize_t dqb_curinodes ;
2429 time_t dqb_btime ;
2430 time_t dqb_itime ;
2431};
2432#line 215
2433struct quota_format_type;
2434#line 215
2435struct quota_format_type;
2436#line 217 "include/linux/quota.h"
2437struct mem_dqinfo {
2438 struct quota_format_type *dqi_format ;
2439 int dqi_fmt_id ;
2440 struct list_head dqi_dirty_list ;
2441 unsigned long dqi_flags ;
2442 unsigned int dqi_bgrace ;
2443 unsigned int dqi_igrace ;
2444 qsize_t dqi_maxblimit ;
2445 qsize_t dqi_maxilimit ;
2446 void *dqi_priv ;
2447};
2448#line 230
2449struct super_block;
2450#line 288 "include/linux/quota.h"
2451struct dquot {
2452 struct hlist_node dq_hash ;
2453 struct list_head dq_inuse ;
2454 struct list_head dq_free ;
2455 struct list_head dq_dirty ;
2456 struct mutex dq_lock ;
2457 atomic_t dq_count ;
2458 wait_queue_head_t dq_wait_unused ;
2459 struct super_block *dq_sb ;
2460 unsigned int dq_id ;
2461 loff_t dq_off ;
2462 unsigned long dq_flags ;
2463 short dq_type ;
2464 struct mem_dqblk dq_dqb ;
2465};
2466#line 305 "include/linux/quota.h"
2467struct quota_format_ops {
2468 int (*check_quota_file)(struct super_block *sb , int type ) ;
2469 int (*read_file_info)(struct super_block *sb , int type ) ;
2470 int (*write_file_info)(struct super_block *sb , int type ) ;
2471 int (*free_file_info)(struct super_block *sb , int type ) ;
2472 int (*read_dqblk)(struct dquot *dquot ) ;
2473 int (*commit_dqblk)(struct dquot *dquot ) ;
2474 int (*release_dqblk)(struct dquot *dquot ) ;
2475};
2476#line 316 "include/linux/quota.h"
2477struct dquot_operations {
2478 int (*write_dquot)(struct dquot * ) ;
2479 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
2480 void (*destroy_dquot)(struct dquot * ) ;
2481 int (*acquire_dquot)(struct dquot * ) ;
2482 int (*release_dquot)(struct dquot * ) ;
2483 int (*mark_dirty)(struct dquot * ) ;
2484 int (*write_info)(struct super_block * , int ) ;
2485 qsize_t *(*get_reserved_space)(struct inode * ) ;
2486};
2487#line 329
2488struct path;
2489#line 332 "include/linux/quota.h"
2490struct quotactl_ops {
2491 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
2492 int (*quota_on_meta)(struct super_block * , int , int ) ;
2493 int (*quota_off)(struct super_block * , int ) ;
2494 int (*quota_sync)(struct super_block * , int , int ) ;
2495 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
2496 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
2497 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2498 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2499 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
2500 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
2501};
2502#line 345 "include/linux/quota.h"
2503struct quota_format_type {
2504 int qf_fmt_id ;
2505 struct quota_format_ops *qf_ops ;
2506 struct module *qf_owner ;
2507 struct quota_format_type *qf_next ;
2508};
2509#line 399 "include/linux/quota.h"
2510struct quota_info {
2511 unsigned int flags ;
2512 struct mutex dqio_mutex ;
2513 struct mutex dqonoff_mutex ;
2514 struct rw_semaphore dqptr_sem ;
2515 struct inode *files[2] ;
2516 struct mem_dqinfo info[2] ;
2517 struct quota_format_ops *ops[2] ;
2518};
2519#line 532 "include/linux/fs.h"
2520struct page;
2521#line 533
2522struct address_space;
2523#line 534
2524struct writeback_control;
2525#line 534
2526struct writeback_control;
2527#line 577 "include/linux/fs.h"
2528union __anonunion_arg_232 {
2529 char *buf ;
2530 void *data ;
2531};
2532#line 577 "include/linux/fs.h"
2533struct __anonstruct_read_descriptor_t_231 {
2534 size_t written ;
2535 size_t count ;
2536 union __anonunion_arg_232 arg ;
2537 int error ;
2538};
2539#line 577 "include/linux/fs.h"
2540typedef struct __anonstruct_read_descriptor_t_231 read_descriptor_t;
2541#line 590 "include/linux/fs.h"
2542struct address_space_operations {
2543 int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
2544 int (*readpage)(struct file * , struct page * ) ;
2545 int (*writepages)(struct address_space * , struct writeback_control * ) ;
2546 int (*set_page_dirty)(struct page *page ) ;
2547 int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
2548 unsigned int nr_pages ) ;
2549 int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
2550 unsigned int len , unsigned int flags , struct page **pagep ,
2551 void **fsdata ) ;
2552 int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
2553 unsigned int copied , struct page *page , void *fsdata ) ;
2554 sector_t (*bmap)(struct address_space * , sector_t ) ;
2555 void (*invalidatepage)(struct page * , unsigned long ) ;
2556 int (*releasepage)(struct page * , gfp_t ) ;
2557 void (*freepage)(struct page * ) ;
2558 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec *iov , loff_t offset ,
2559 unsigned long nr_segs ) ;
2560 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2561 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
2562 int (*launder_page)(struct page * ) ;
2563 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2564 int (*error_remove_page)(struct address_space * , struct page * ) ;
2565};
2566#line 645
2567struct backing_dev_info;
2568#line 646 "include/linux/fs.h"
2569struct address_space {
2570 struct inode *host ;
2571 struct radix_tree_root page_tree ;
2572 spinlock_t tree_lock ;
2573 unsigned int i_mmap_writable ;
2574 struct prio_tree_root i_mmap ;
2575 struct list_head i_mmap_nonlinear ;
2576 struct mutex i_mmap_mutex ;
2577 unsigned long nrpages ;
2578 unsigned long writeback_index ;
2579 struct address_space_operations *a_ops ;
2580 unsigned long flags ;
2581 struct backing_dev_info *backing_dev_info ;
2582 spinlock_t private_lock ;
2583 struct list_head private_list ;
2584 struct address_space *assoc_mapping ;
2585} __attribute__((__aligned__(sizeof(long )))) ;
2586#line 669
2587struct request_queue;
2588#line 669
2589struct request_queue;
2590#line 671
2591struct hd_struct;
2592#line 671
2593struct gendisk;
2594#line 671 "include/linux/fs.h"
2595struct block_device {
2596 dev_t bd_dev ;
2597 int bd_openers ;
2598 struct inode *bd_inode ;
2599 struct super_block *bd_super ;
2600 struct mutex bd_mutex ;
2601 struct list_head bd_inodes ;
2602 void *bd_claiming ;
2603 void *bd_holder ;
2604 int bd_holders ;
2605 bool bd_write_holder ;
2606 struct list_head bd_holder_disks ;
2607 struct block_device *bd_contains ;
2608 unsigned int bd_block_size ;
2609 struct hd_struct *bd_part ;
2610 unsigned int bd_part_count ;
2611 int bd_invalidated ;
2612 struct gendisk *bd_disk ;
2613 struct request_queue *bd_queue ;
2614 struct list_head bd_list ;
2615 unsigned long bd_private ;
2616 int bd_fsfreeze_count ;
2617 struct mutex bd_fsfreeze_mutex ;
2618};
2619#line 749
2620struct posix_acl;
2621#line 749
2622struct posix_acl;
2623#line 761
2624struct inode_operations;
2625#line 761 "include/linux/fs.h"
2626union __anonunion____missing_field_name_233 {
2627 unsigned int i_nlink ;
2628 unsigned int __i_nlink ;
2629};
2630#line 761 "include/linux/fs.h"
2631union __anonunion____missing_field_name_234 {
2632 struct list_head i_dentry ;
2633 struct rcu_head i_rcu ;
2634};
2635#line 761
2636struct file_operations;
2637#line 761
2638struct file_lock;
2639#line 761
2640struct cdev;
2641#line 761 "include/linux/fs.h"
2642union __anonunion____missing_field_name_235 {
2643 struct pipe_inode_info *i_pipe ;
2644 struct block_device *i_bdev ;
2645 struct cdev *i_cdev ;
2646};
2647#line 761 "include/linux/fs.h"
2648struct inode {
2649 umode_t i_mode ;
2650 unsigned short i_opflags ;
2651 uid_t i_uid ;
2652 gid_t i_gid ;
2653 unsigned int i_flags ;
2654 struct posix_acl *i_acl ;
2655 struct posix_acl *i_default_acl ;
2656 struct inode_operations *i_op ;
2657 struct super_block *i_sb ;
2658 struct address_space *i_mapping ;
2659 void *i_security ;
2660 unsigned long i_ino ;
2661 union __anonunion____missing_field_name_233 __annonCompField43 ;
2662 dev_t i_rdev ;
2663 struct timespec i_atime ;
2664 struct timespec i_mtime ;
2665 struct timespec i_ctime ;
2666 spinlock_t i_lock ;
2667 unsigned short i_bytes ;
2668 blkcnt_t i_blocks ;
2669 loff_t i_size ;
2670 unsigned long i_state ;
2671 struct mutex i_mutex ;
2672 unsigned long dirtied_when ;
2673 struct hlist_node i_hash ;
2674 struct list_head i_wb_list ;
2675 struct list_head i_lru ;
2676 struct list_head i_sb_list ;
2677 union __anonunion____missing_field_name_234 __annonCompField44 ;
2678 atomic_t i_count ;
2679 unsigned int i_blkbits ;
2680 u64 i_version ;
2681 atomic_t i_dio_count ;
2682 atomic_t i_writecount ;
2683 struct file_operations *i_fop ;
2684 struct file_lock *i_flock ;
2685 struct address_space i_data ;
2686 struct dquot *i_dquot[2] ;
2687 struct list_head i_devices ;
2688 union __anonunion____missing_field_name_235 __annonCompField45 ;
2689 __u32 i_generation ;
2690 __u32 i_fsnotify_mask ;
2691 struct hlist_head i_fsnotify_marks ;
2692 atomic_t i_readcount ;
2693 void *i_private ;
2694};
2695#line 942 "include/linux/fs.h"
2696struct fown_struct {
2697 rwlock_t lock ;
2698 struct pid *pid ;
2699 enum pid_type pid_type ;
2700 uid_t uid ;
2701 uid_t euid ;
2702 int signum ;
2703};
2704#line 953 "include/linux/fs.h"
2705struct file_ra_state {
2706 unsigned long start ;
2707 unsigned int size ;
2708 unsigned int async_size ;
2709 unsigned int ra_pages ;
2710 unsigned int mmap_miss ;
2711 loff_t prev_pos ;
2712};
2713#line 976 "include/linux/fs.h"
2714union __anonunion_f_u_236 {
2715 struct list_head fu_list ;
2716 struct rcu_head fu_rcuhead ;
2717};
2718#line 976 "include/linux/fs.h"
2719struct file {
2720 union __anonunion_f_u_236 f_u ;
2721 struct path f_path ;
2722 struct file_operations *f_op ;
2723 spinlock_t f_lock ;
2724 int f_sb_list_cpu ;
2725 atomic_long_t f_count ;
2726 unsigned int f_flags ;
2727 fmode_t f_mode ;
2728 loff_t f_pos ;
2729 struct fown_struct f_owner ;
2730 struct cred *f_cred ;
2731 struct file_ra_state f_ra ;
2732 u64 f_version ;
2733 void *f_security ;
2734 void *private_data ;
2735 struct list_head f_ep_links ;
2736 struct list_head f_tfile_llink ;
2737 struct address_space *f_mapping ;
2738 unsigned long f_mnt_write_state ;
2739};
2740#line 1111 "include/linux/fs.h"
2741typedef struct files_struct *fl_owner_t;
2742#line 1113 "include/linux/fs.h"
2743struct file_lock_operations {
2744 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
2745 void (*fl_release_private)(struct file_lock * ) ;
2746};
2747#line 1118 "include/linux/fs.h"
2748struct lock_manager_operations {
2749 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
2750 void (*lm_notify)(struct file_lock * ) ;
2751 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
2752 void (*lm_release_private)(struct file_lock * ) ;
2753 void (*lm_break)(struct file_lock * ) ;
2754 int (*lm_change)(struct file_lock ** , int ) ;
2755};
2756#line 4 "include/linux/nfs_fs_i.h"
2757struct nlm_lockowner;
2758#line 4
2759struct nlm_lockowner;
2760#line 9 "include/linux/nfs_fs_i.h"
2761struct nfs_lock_info {
2762 u32 state ;
2763 struct nlm_lockowner *owner ;
2764 struct list_head list ;
2765};
2766#line 15
2767struct nfs4_lock_state;
2768#line 15
2769struct nfs4_lock_state;
2770#line 16 "include/linux/nfs_fs_i.h"
2771struct nfs4_lock_info {
2772 struct nfs4_lock_state *owner ;
2773};
2774#line 1138 "include/linux/fs.h"
2775struct fasync_struct;
2776#line 1138 "include/linux/fs.h"
2777struct __anonstruct_afs_238 {
2778 struct list_head link ;
2779 int state ;
2780};
2781#line 1138 "include/linux/fs.h"
2782union __anonunion_fl_u_237 {
2783 struct nfs_lock_info nfs_fl ;
2784 struct nfs4_lock_info nfs4_fl ;
2785 struct __anonstruct_afs_238 afs ;
2786};
2787#line 1138 "include/linux/fs.h"
2788struct file_lock {
2789 struct file_lock *fl_next ;
2790 struct list_head fl_link ;
2791 struct list_head fl_block ;
2792 fl_owner_t fl_owner ;
2793 unsigned int fl_flags ;
2794 unsigned char fl_type ;
2795 unsigned int fl_pid ;
2796 struct pid *fl_nspid ;
2797 wait_queue_head_t fl_wait ;
2798 struct file *fl_file ;
2799 loff_t fl_start ;
2800 loff_t fl_end ;
2801 struct fasync_struct *fl_fasync ;
2802 unsigned long fl_break_time ;
2803 unsigned long fl_downgrade_time ;
2804 struct file_lock_operations *fl_ops ;
2805 struct lock_manager_operations *fl_lmops ;
2806 union __anonunion_fl_u_237 fl_u ;
2807};
2808#line 1378 "include/linux/fs.h"
2809struct fasync_struct {
2810 spinlock_t fa_lock ;
2811 int magic ;
2812 int fa_fd ;
2813 struct fasync_struct *fa_next ;
2814 struct file *fa_file ;
2815 struct rcu_head fa_rcu ;
2816};
2817#line 1418
2818struct file_system_type;
2819#line 1418
2820struct super_operations;
2821#line 1418
2822struct xattr_handler;
2823#line 1418
2824struct mtd_info;
2825#line 1418 "include/linux/fs.h"
2826struct super_block {
2827 struct list_head s_list ;
2828 dev_t s_dev ;
2829 unsigned char s_dirt ;
2830 unsigned char s_blocksize_bits ;
2831 unsigned long s_blocksize ;
2832 loff_t s_maxbytes ;
2833 struct file_system_type *s_type ;
2834 struct super_operations *s_op ;
2835 struct dquot_operations *dq_op ;
2836 struct quotactl_ops *s_qcop ;
2837 struct export_operations *s_export_op ;
2838 unsigned long s_flags ;
2839 unsigned long s_magic ;
2840 struct dentry *s_root ;
2841 struct rw_semaphore s_umount ;
2842 struct mutex s_lock ;
2843 int s_count ;
2844 atomic_t s_active ;
2845 void *s_security ;
2846 struct xattr_handler **s_xattr ;
2847 struct list_head s_inodes ;
2848 struct hlist_bl_head s_anon ;
2849 struct list_head *s_files ;
2850 struct list_head s_mounts ;
2851 struct list_head s_dentry_lru ;
2852 int s_nr_dentry_unused ;
2853 spinlock_t s_inode_lru_lock __attribute__((__aligned__((1) << (6) ))) ;
2854 struct list_head s_inode_lru ;
2855 int s_nr_inodes_unused ;
2856 struct block_device *s_bdev ;
2857 struct backing_dev_info *s_bdi ;
2858 struct mtd_info *s_mtd ;
2859 struct hlist_node s_instances ;
2860 struct quota_info s_dquot ;
2861 int s_frozen ;
2862 wait_queue_head_t s_wait_unfrozen ;
2863 char s_id[32] ;
2864 u8 s_uuid[16] ;
2865 void *s_fs_info ;
2866 unsigned int s_max_links ;
2867 fmode_t s_mode ;
2868 u32 s_time_gran ;
2869 struct mutex s_vfs_rename_mutex ;
2870 char *s_subtype ;
2871 char *s_options ;
2872 struct dentry_operations *s_d_op ;
2873 int cleancache_poolid ;
2874 struct shrinker s_shrink ;
2875 atomic_long_t s_remove_count ;
2876 int s_readonly_remount ;
2877};
2878#line 1567 "include/linux/fs.h"
2879struct fiemap_extent_info {
2880 unsigned int fi_flags ;
2881 unsigned int fi_extents_mapped ;
2882 unsigned int fi_extents_max ;
2883 struct fiemap_extent *fi_extents_start ;
2884};
2885#line 1609 "include/linux/fs.h"
2886struct file_operations {
2887 struct module *owner ;
2888 loff_t (*llseek)(struct file * , loff_t , int ) ;
2889 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
2890 ssize_t (*write)(struct file * , char * , size_t , loff_t * ) ;
2891 ssize_t (*aio_read)(struct kiocb * , struct iovec * , unsigned long ,
2892 loff_t ) ;
2893 ssize_t (*aio_write)(struct kiocb * , struct iovec * , unsigned long ,
2894 loff_t ) ;
2895 int (*readdir)(struct file * , void * , int (*)(void * , char * , int ,
2896 loff_t , u64 , unsigned int ) ) ;
2897 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
2898 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
2899 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
2900 int (*mmap)(struct file * , struct vm_area_struct * ) ;
2901 int (*open)(struct inode * , struct file * ) ;
2902 int (*flush)(struct file * , fl_owner_t id ) ;
2903 int (*release)(struct inode * , struct file * ) ;
2904 int (*fsync)(struct file * , loff_t , loff_t , int datasync ) ;
2905 int (*aio_fsync)(struct kiocb * , int datasync ) ;
2906 int (*fasync)(int , struct file * , int ) ;
2907 int (*lock)(struct file * , int , struct file_lock * ) ;
2908 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
2909 int ) ;
2910 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
2911 unsigned long , unsigned long ) ;
2912 int (*check_flags)(int ) ;
2913 int (*flock)(struct file * , int , struct file_lock * ) ;
2914 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
2915 unsigned int ) ;
2916 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
2917 unsigned int ) ;
2918 int (*setlease)(struct file * , long , struct file_lock ** ) ;
2919 long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
2920};
2921#line 1639 "include/linux/fs.h"
2922struct inode_operations {
2923 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
2924 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
2925 int (*permission)(struct inode * , int ) ;
2926 struct posix_acl *(*get_acl)(struct inode * , int ) ;
2927 int (*readlink)(struct dentry * , char * , int ) ;
2928 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
2929 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
2930 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
2931 int (*unlink)(struct inode * , struct dentry * ) ;
2932 int (*symlink)(struct inode * , struct dentry * , char * ) ;
2933 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
2934 int (*rmdir)(struct inode * , struct dentry * ) ;
2935 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
2936 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
2937 void (*truncate)(struct inode * ) ;
2938 int (*setattr)(struct dentry * , struct iattr * ) ;
2939 int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
2940 int (*setxattr)(struct dentry * , char * , void * , size_t , int ) ;
2941 ssize_t (*getxattr)(struct dentry * , char * , void * , size_t ) ;
2942 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
2943 int (*removexattr)(struct dentry * , char * ) ;
2944 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
2945 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
2946} __attribute__((__aligned__((1) << (6) ))) ;
2947#line 1669
2948struct seq_file;
2949#line 1684 "include/linux/fs.h"
2950struct super_operations {
2951 struct inode *(*alloc_inode)(struct super_block *sb ) ;
2952 void (*destroy_inode)(struct inode * ) ;
2953 void (*dirty_inode)(struct inode * , int flags ) ;
2954 int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
2955 int (*drop_inode)(struct inode * ) ;
2956 void (*evict_inode)(struct inode * ) ;
2957 void (*put_super)(struct super_block * ) ;
2958 void (*write_super)(struct super_block * ) ;
2959 int (*sync_fs)(struct super_block *sb , int wait ) ;
2960 int (*freeze_fs)(struct super_block * ) ;
2961 int (*unfreeze_fs)(struct super_block * ) ;
2962 int (*statfs)(struct dentry * , struct kstatfs * ) ;
2963 int (*remount_fs)(struct super_block * , int * , char * ) ;
2964 void (*umount_begin)(struct super_block * ) ;
2965 int (*show_options)(struct seq_file * , struct dentry * ) ;
2966 int (*show_devname)(struct seq_file * , struct dentry * ) ;
2967 int (*show_path)(struct seq_file * , struct dentry * ) ;
2968 int (*show_stats)(struct seq_file * , struct dentry * ) ;
2969 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
2970 ssize_t (*quota_write)(struct super_block * , int , char * , size_t ,
2971 loff_t ) ;
2972 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
2973 int (*nr_cached_objects)(struct super_block * ) ;
2974 void (*free_cached_objects)(struct super_block * , int ) ;
2975};
2976#line 1835 "include/linux/fs.h"
2977struct file_system_type {
2978 char *name ;
2979 int fs_flags ;
2980 struct dentry *(*mount)(struct file_system_type * , int , char * , void * ) ;
2981 void (*kill_sb)(struct super_block * ) ;
2982 struct module *owner ;
2983 struct file_system_type *next ;
2984 struct hlist_head fs_supers ;
2985 struct lock_class_key s_lock_key ;
2986 struct lock_class_key s_umount_key ;
2987 struct lock_class_key s_vfs_rename_key ;
2988 struct lock_class_key i_lock_key ;
2989 struct lock_class_key i_mutex_key ;
2990 struct lock_class_key i_mutex_dir_key ;
2991};
2992#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
2993struct exception_table_entry {
2994 unsigned long insn ;
2995 unsigned long fixup ;
2996};
2997#line 28 "include/linux/poll.h"
2998struct poll_table_struct;
2999#line 39 "include/linux/poll.h"
3000struct poll_table_struct {
3001 void (*_qproc)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
3002 unsigned long _key ;
3003};
3004#line 39 "include/linux/poll.h"
3005typedef struct poll_table_struct poll_table;
3006#line 48 "include/linux/kmod.h"
3007struct cred;
3008#line 49
3009struct file;
3010#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
3011struct task_struct;
3012#line 18 "include/linux/elf.h"
3013typedef __u64 Elf64_Addr;
3014#line 19 "include/linux/elf.h"
3015typedef __u16 Elf64_Half;
3016#line 23 "include/linux/elf.h"
3017typedef __u32 Elf64_Word;
3018#line 24 "include/linux/elf.h"
3019typedef __u64 Elf64_Xword;
3020#line 194 "include/linux/elf.h"
3021struct elf64_sym {
3022 Elf64_Word st_name ;
3023 unsigned char st_info ;
3024 unsigned char st_other ;
3025 Elf64_Half st_shndx ;
3026 Elf64_Addr st_value ;
3027 Elf64_Xword st_size ;
3028};
3029#line 194 "include/linux/elf.h"
3030typedef struct elf64_sym Elf64_Sym;
3031#line 438
3032struct file;
3033#line 39 "include/linux/moduleparam.h"
3034struct kernel_param;
3035#line 39
3036struct kernel_param;
3037#line 41 "include/linux/moduleparam.h"
3038struct kernel_param_ops {
3039 int (*set)(char *val , struct kernel_param *kp ) ;
3040 int (*get)(char *buffer , struct kernel_param *kp ) ;
3041 void (*free)(void *arg ) ;
3042};
3043#line 50
3044struct kparam_string;
3045#line 50
3046struct kparam_array;
3047#line 50 "include/linux/moduleparam.h"
3048union __anonunion____missing_field_name_246 {
3049 void *arg ;
3050 struct kparam_string *str ;
3051 struct kparam_array *arr ;
3052};
3053#line 50 "include/linux/moduleparam.h"
3054struct kernel_param {
3055 char *name ;
3056 struct kernel_param_ops *ops ;
3057 u16 perm ;
3058 s16 level ;
3059 union __anonunion____missing_field_name_246 __annonCompField46 ;
3060};
3061#line 63 "include/linux/moduleparam.h"
3062struct kparam_string {
3063 unsigned int maxlen ;
3064 char *string ;
3065};
3066#line 69 "include/linux/moduleparam.h"
3067struct kparam_array {
3068 unsigned int max ;
3069 unsigned int elemsize ;
3070 unsigned int *num ;
3071 struct kernel_param_ops *ops ;
3072 void *elem ;
3073};
3074#line 445
3075struct module;
3076#line 80 "include/linux/jump_label.h"
3077struct module;
3078#line 143 "include/linux/jump_label.h"
3079struct static_key {
3080 atomic_t enabled ;
3081};
3082#line 22 "include/linux/tracepoint.h"
3083struct module;
3084#line 23
3085struct tracepoint;
3086#line 23
3087struct tracepoint;
3088#line 25 "include/linux/tracepoint.h"
3089struct tracepoint_func {
3090 void *func ;
3091 void *data ;
3092};
3093#line 30 "include/linux/tracepoint.h"
3094struct tracepoint {
3095 char *name ;
3096 struct static_key key ;
3097 void (*regfunc)(void) ;
3098 void (*unregfunc)(void) ;
3099 struct tracepoint_func *funcs ;
3100};
3101#line 19 "include/linux/export.h"
3102struct kernel_symbol {
3103 unsigned long value ;
3104 char *name ;
3105};
3106#line 8 "include/asm-generic/module.h"
3107struct mod_arch_specific {
3108
3109};
3110#line 35 "include/linux/module.h"
3111struct module;
3112#line 37
3113struct module_param_attrs;
3114#line 37 "include/linux/module.h"
3115struct module_kobject {
3116 struct kobject kobj ;
3117 struct module *mod ;
3118 struct kobject *drivers_dir ;
3119 struct module_param_attrs *mp ;
3120};
3121#line 44 "include/linux/module.h"
3122struct module_attribute {
3123 struct attribute attr ;
3124 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
3125 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char * ,
3126 size_t count ) ;
3127 void (*setup)(struct module * , char * ) ;
3128 int (*test)(struct module * ) ;
3129 void (*free)(struct module * ) ;
3130};
3131#line 71
3132struct exception_table_entry;
3133#line 199
3134enum module_state {
3135 MODULE_STATE_LIVE = 0,
3136 MODULE_STATE_COMING = 1,
3137 MODULE_STATE_GOING = 2
3138} ;
3139#line 215 "include/linux/module.h"
3140struct module_ref {
3141 unsigned long incs ;
3142 unsigned long decs ;
3143} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
3144#line 220
3145struct module_sect_attrs;
3146#line 220
3147struct module_notes_attrs;
3148#line 220
3149struct ftrace_event_call;
3150#line 220 "include/linux/module.h"
3151struct module {
3152 enum module_state state ;
3153 struct list_head list ;
3154 char name[64UL - sizeof(unsigned long )] ;
3155 struct module_kobject mkobj ;
3156 struct module_attribute *modinfo_attrs ;
3157 char *version ;
3158 char *srcversion ;
3159 struct kobject *holders_dir ;
3160 struct kernel_symbol *syms ;
3161 unsigned long *crcs ;
3162 unsigned int num_syms ;
3163 struct kernel_param *kp ;
3164 unsigned int num_kp ;
3165 unsigned int num_gpl_syms ;
3166 struct kernel_symbol *gpl_syms ;
3167 unsigned long *gpl_crcs ;
3168 struct kernel_symbol *unused_syms ;
3169 unsigned long *unused_crcs ;
3170 unsigned int num_unused_syms ;
3171 unsigned int num_unused_gpl_syms ;
3172 struct kernel_symbol *unused_gpl_syms ;
3173 unsigned long *unused_gpl_crcs ;
3174 struct kernel_symbol *gpl_future_syms ;
3175 unsigned long *gpl_future_crcs ;
3176 unsigned int num_gpl_future_syms ;
3177 unsigned int num_exentries ;
3178 struct exception_table_entry *extable ;
3179 int (*init)(void) ;
3180 void *module_init ;
3181 void *module_core ;
3182 unsigned int init_size ;
3183 unsigned int core_size ;
3184 unsigned int init_text_size ;
3185 unsigned int core_text_size ;
3186 unsigned int init_ro_size ;
3187 unsigned int core_ro_size ;
3188 struct mod_arch_specific arch ;
3189 unsigned int taints ;
3190 unsigned int num_bugs ;
3191 struct list_head bug_list ;
3192 struct bug_entry *bug_table ;
3193 Elf64_Sym *symtab ;
3194 Elf64_Sym *core_symtab ;
3195 unsigned int num_symtab ;
3196 unsigned int core_num_syms ;
3197 char *strtab ;
3198 char *core_strtab ;
3199 struct module_sect_attrs *sect_attrs ;
3200 struct module_notes_attrs *notes_attrs ;
3201 char *args ;
3202 void *percpu ;
3203 unsigned int percpu_size ;
3204 unsigned int num_tracepoints ;
3205 struct tracepoint * *tracepoints_ptrs ;
3206 unsigned int num_trace_bprintk_fmt ;
3207 char **trace_bprintk_fmt_start ;
3208 struct ftrace_event_call **trace_events ;
3209 unsigned int num_trace_events ;
3210 struct list_head source_list ;
3211 struct list_head target_list ;
3212 struct task_struct *waiter ;
3213 void (*exit)(void) ;
3214 struct module_ref *refptr ;
3215 ctor_fn_t *ctors ;
3216 unsigned int num_ctors ;
3217};
3218#line 43 "include/linux/input.h"
3219struct input_id {
3220 __u16 bustype ;
3221 __u16 vendor ;
3222 __u16 product ;
3223 __u16 version ;
3224};
3225#line 69 "include/linux/input.h"
3226struct input_absinfo {
3227 __s32 value ;
3228 __s32 minimum ;
3229 __s32 maximum ;
3230 __s32 fuzz ;
3231 __s32 flat ;
3232 __s32 resolution ;
3233};
3234#line 93 "include/linux/input.h"
3235struct input_keymap_entry {
3236 __u8 flags ;
3237 __u8 len ;
3238 __u16 index ;
3239 __u32 keycode ;
3240 __u8 scancode[32] ;
3241};
3242#line 957 "include/linux/input.h"
3243struct ff_replay {
3244 __u16 length ;
3245 __u16 delay ;
3246};
3247#line 967 "include/linux/input.h"
3248struct ff_trigger {
3249 __u16 button ;
3250 __u16 interval ;
3251};
3252#line 984 "include/linux/input.h"
3253struct ff_envelope {
3254 __u16 attack_length ;
3255 __u16 attack_level ;
3256 __u16 fade_length ;
3257 __u16 fade_level ;
3258};
3259#line 996 "include/linux/input.h"
3260struct ff_ant_effect {
3261 __s16 level ;
3262 struct ff_envelope envelope ;
3263};
3264#line 1007 "include/linux/input.h"
3265struct ff_ramp_effect {
3266 __s16 start_level ;
3267 __s16 end_level ;
3268 struct ff_envelope envelope ;
3269};
3270#line 1023 "include/linux/input.h"
3271struct ff_condition_effect {
3272 __u16 right_saturation ;
3273 __u16 left_saturation ;
3274 __s16 right_coeff ;
3275 __s16 left_coeff ;
3276 __u16 deadband ;
3277 __s16 center ;
3278};
3279#line 1052 "include/linux/input.h"
3280struct ff_periodic_effect {
3281 __u16 waveform ;
3282 __u16 period ;
3283 __s16 magnitude ;
3284 __s16 offset ;
3285 __u16 phase ;
3286 struct ff_envelope envelope ;
3287 __u32 custom_len ;
3288 __s16 *custom_data ;
3289};
3290#line 1073 "include/linux/input.h"
3291struct ff_rumble_effect {
3292 __u16 strong_magnitude ;
3293 __u16 weak_magnitude ;
3294};
3295#line 1101 "include/linux/input.h"
3296union __anonunion_u_248 {
3297 struct ff_ant_effect ant ;
3298 struct ff_ramp_effect ramp ;
3299 struct ff_periodic_effect periodic ;
3300 struct ff_condition_effect condition[2] ;
3301 struct ff_rumble_effect rumble ;
3302};
3303#line 1101 "include/linux/input.h"
3304struct ff_effect {
3305 __u16 type ;
3306 __s16 id ;
3307 __u16 direction ;
3308 struct ff_trigger trigger ;
3309 struct ff_replay replay ;
3310 union __anonunion_u_248 u ;
3311};
3312#line 19 "include/linux/klist.h"
3313struct klist_node;
3314#line 19
3315struct klist_node;
3316#line 39 "include/linux/klist.h"
3317struct klist_node {
3318 void *n_klist ;
3319 struct list_head n_node ;
3320 struct kref n_ref ;
3321};
3322#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
3323struct dma_map_ops;
3324#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
3325struct dev_archdata {
3326 void *acpi_handle ;
3327 struct dma_map_ops *dma_ops ;
3328 void *iommu ;
3329};
3330#line 28 "include/linux/device.h"
3331struct device;
3332#line 29
3333struct device_private;
3334#line 29
3335struct device_private;
3336#line 30
3337struct device_driver;
3338#line 30
3339struct device_driver;
3340#line 31
3341struct driver_private;
3342#line 31
3343struct driver_private;
3344#line 32
3345struct module;
3346#line 33
3347struct class;
3348#line 33
3349struct class;
3350#line 34
3351struct subsys_private;
3352#line 34
3353struct subsys_private;
3354#line 35
3355struct bus_type;
3356#line 35
3357struct bus_type;
3358#line 36
3359struct device_node;
3360#line 36
3361struct device_node;
3362#line 37
3363struct iommu_ops;
3364#line 37
3365struct iommu_ops;
3366#line 39 "include/linux/device.h"
3367struct bus_attribute {
3368 struct attribute attr ;
3369 ssize_t (*show)(struct bus_type *bus , char *buf ) ;
3370 ssize_t (*store)(struct bus_type *bus , char *buf , size_t count ) ;
3371};
3372#line 89
3373struct device_attribute;
3374#line 89
3375struct driver_attribute;
3376#line 89 "include/linux/device.h"
3377struct bus_type {
3378 char *name ;
3379 char *dev_name ;
3380 struct device *dev_root ;
3381 struct bus_attribute *bus_attrs ;
3382 struct device_attribute *dev_attrs ;
3383 struct driver_attribute *drv_attrs ;
3384 int (*match)(struct device *dev , struct device_driver *drv ) ;
3385 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
3386 int (*probe)(struct device *dev ) ;
3387 int (*remove)(struct device *dev ) ;
3388 void (*shutdown)(struct device *dev ) ;
3389 int (*suspend)(struct device *dev , pm_message_t state ) ;
3390 int (*resume)(struct device *dev ) ;
3391 struct dev_pm_ops *pm ;
3392 struct iommu_ops *iommu_ops ;
3393 struct subsys_private *p ;
3394};
3395#line 127
3396struct device_type;
3397#line 214
3398struct of_device_id;
3399#line 214 "include/linux/device.h"
3400struct device_driver {
3401 char *name ;
3402 struct bus_type *bus ;
3403 struct module *owner ;
3404 char *mod_name ;
3405 bool suppress_bind_attrs ;
3406 struct of_device_id *of_match_table ;
3407 int (*probe)(struct device *dev ) ;
3408 int (*remove)(struct device *dev ) ;
3409 void (*shutdown)(struct device *dev ) ;
3410 int (*suspend)(struct device *dev , pm_message_t state ) ;
3411 int (*resume)(struct device *dev ) ;
3412 struct attribute_group **groups ;
3413 struct dev_pm_ops *pm ;
3414 struct driver_private *p ;
3415};
3416#line 249 "include/linux/device.h"
3417struct driver_attribute {
3418 struct attribute attr ;
3419 ssize_t (*show)(struct device_driver *driver , char *buf ) ;
3420 ssize_t (*store)(struct device_driver *driver , char *buf , size_t count ) ;
3421};
3422#line 330
3423struct class_attribute;
3424#line 330 "include/linux/device.h"
3425struct class {
3426 char *name ;
3427 struct module *owner ;
3428 struct class_attribute *class_attrs ;
3429 struct device_attribute *dev_attrs ;
3430 struct bin_attribute *dev_bin_attrs ;
3431 struct kobject *dev_kobj ;
3432 int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
3433 char *(*devnode)(struct device *dev , umode_t *mode ) ;
3434 void (*class_release)(struct class *class ) ;
3435 void (*dev_release)(struct device *dev ) ;
3436 int (*suspend)(struct device *dev , pm_message_t state ) ;
3437 int (*resume)(struct device *dev ) ;
3438 struct kobj_ns_type_operations *ns_type ;
3439 void *(*namespace)(struct device *dev ) ;
3440 struct dev_pm_ops *pm ;
3441 struct subsys_private *p ;
3442};
3443#line 397 "include/linux/device.h"
3444struct class_attribute {
3445 struct attribute attr ;
3446 ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
3447 ssize_t (*store)(struct class *class , struct class_attribute *attr , char *buf ,
3448 size_t count ) ;
3449 void *(*namespace)(struct class *class , struct class_attribute *attr ) ;
3450};
3451#line 465 "include/linux/device.h"
3452struct device_type {
3453 char *name ;
3454 struct attribute_group **groups ;
3455 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
3456 char *(*devnode)(struct device *dev , umode_t *mode ) ;
3457 void (*release)(struct device *dev ) ;
3458 struct dev_pm_ops *pm ;
3459};
3460#line 476 "include/linux/device.h"
3461struct device_attribute {
3462 struct attribute attr ;
3463 ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
3464 ssize_t (*store)(struct device *dev , struct device_attribute *attr , char *buf ,
3465 size_t count ) ;
3466};
3467#line 559 "include/linux/device.h"
3468struct device_dma_parameters {
3469 unsigned int max_segment_size ;
3470 unsigned long segment_boundary_mask ;
3471};
3472#line 627
3473struct dma_coherent_mem;
3474#line 627 "include/linux/device.h"
3475struct device {
3476 struct device *parent ;
3477 struct device_private *p ;
3478 struct kobject kobj ;
3479 char *init_name ;
3480 struct device_type *type ;
3481 struct mutex mutex ;
3482 struct bus_type *bus ;
3483 struct device_driver *driver ;
3484 void *platform_data ;
3485 struct dev_pm_info power ;
3486 struct dev_pm_domain *pm_domain ;
3487 int numa_node ;
3488 u64 *dma_mask ;
3489 u64 coherent_dma_mask ;
3490 struct device_dma_parameters *dma_parms ;
3491 struct list_head dma_pools ;
3492 struct dma_coherent_mem *dma_mem ;
3493 struct dev_archdata archdata ;
3494 struct device_node *of_node ;
3495 dev_t devt ;
3496 u32 id ;
3497 spinlock_t devres_lock ;
3498 struct list_head devres_head ;
3499 struct klist_node knode_class ;
3500 struct class *class ;
3501 struct attribute_group **groups ;
3502 void (*release)(struct device *dev ) ;
3503};
3504#line 43 "include/linux/pm_wakeup.h"
3505struct wakeup_source {
3506 char *name ;
3507 struct list_head entry ;
3508 spinlock_t lock ;
3509 struct timer_list timer ;
3510 unsigned long timer_expires ;
3511 ktime_t total_time ;
3512 ktime_t max_time ;
3513 ktime_t last_time ;
3514 unsigned long event_count ;
3515 unsigned long active_count ;
3516 unsigned long relax_count ;
3517 unsigned long hit_count ;
3518 unsigned int active : 1 ;
3519};
3520#line 12 "include/linux/mod_devicetable.h"
3521typedef unsigned long kernel_ulong_t;
3522#line 219 "include/linux/mod_devicetable.h"
3523struct of_device_id {
3524 char name[32] ;
3525 char type[32] ;
3526 char compatible[128] ;
3527 void *data ;
3528};
3529#line 312 "include/linux/mod_devicetable.h"
3530struct input_device_id {
3531 kernel_ulong_t flags ;
3532 __u16 bustype ;
3533 __u16 vendor ;
3534 __u16 product ;
3535 __u16 version ;
3536 kernel_ulong_t evbit[1] ;
3537 kernel_ulong_t keybit[12] ;
3538 kernel_ulong_t relbit[1] ;
3539 kernel_ulong_t absbit[1] ;
3540 kernel_ulong_t mscbit[1] ;
3541 kernel_ulong_t ledbit[1] ;
3542 kernel_ulong_t sndbit[1] ;
3543 kernel_ulong_t ffbit[2] ;
3544 kernel_ulong_t swbit[1] ;
3545 kernel_ulong_t driver_info ;
3546};
3547#line 1250 "include/linux/input.h"
3548struct ff_device;
3549#line 1250
3550struct input_mt_slot;
3551#line 1250
3552struct input_handle;
3553#line 1250 "include/linux/input.h"
3554struct input_dev {
3555 char *name ;
3556 char *phys ;
3557 char *uniq ;
3558 struct input_id id ;
3559 unsigned long propbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3560 unsigned long evbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3561 unsigned long keybit[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3562 unsigned long relbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3563 unsigned long absbit[((64UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3564 unsigned long mscbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3565 unsigned long ledbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3566 unsigned long sndbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3567 unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3568 unsigned long swbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3569 unsigned int hint_events_per_packet ;
3570 unsigned int keycodemax ;
3571 unsigned int keycodesize ;
3572 void *keycode ;
3573 int (*setkeycode)(struct input_dev *dev , struct input_keymap_entry *ke ,
3574 unsigned int *old_keycode ) ;
3575 int (*getkeycode)(struct input_dev *dev , struct input_keymap_entry *ke ) ;
3576 struct ff_device *ff ;
3577 unsigned int repeat_key ;
3578 struct timer_list timer ;
3579 int rep[2] ;
3580 struct input_mt_slot *mt ;
3581 int mtsize ;
3582 int slot ;
3583 int trkid ;
3584 struct input_absinfo *absinfo ;
3585 unsigned long key[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3586 unsigned long led[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3587 unsigned long snd[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3588 unsigned long sw[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3589 int (*open)(struct input_dev *dev ) ;
3590 void (*close)(struct input_dev *dev ) ;
3591 int (*flush)(struct input_dev *dev , struct file *file ) ;
3592 int (*event)(struct input_dev *dev , unsigned int type , unsigned int code , int value ) ;
3593 struct input_handle *grab ;
3594 spinlock_t event_lock ;
3595 struct mutex mutex ;
3596 unsigned int users ;
3597 bool going_away ;
3598 bool sync ;
3599 struct device dev ;
3600 struct list_head h_list ;
3601 struct list_head node ;
3602};
3603#line 1370
3604struct input_handle;
3605#line 1409 "include/linux/input.h"
3606struct input_handler {
3607 void *private ;
3608 void (*event)(struct input_handle *handle , unsigned int type , unsigned int code ,
3609 int value ) ;
3610 bool (*filter)(struct input_handle *handle , unsigned int type , unsigned int code ,
3611 int value ) ;
3612 bool (*match)(struct input_handler *handler , struct input_dev *dev ) ;
3613 int (*connect)(struct input_handler *handler , struct input_dev *dev , struct input_device_id *id ) ;
3614 void (*disconnect)(struct input_handle *handle ) ;
3615 void (*start)(struct input_handle *handle ) ;
3616 struct file_operations *fops ;
3617 int minor ;
3618 char *name ;
3619 struct input_device_id *id_table ;
3620 struct list_head h_list ;
3621 struct list_head node ;
3622};
3623#line 1442 "include/linux/input.h"
3624struct input_handle {
3625 void *private ;
3626 int open ;
3627 char *name ;
3628 struct input_dev *dev ;
3629 struct input_handler *handler ;
3630 struct list_head d_node ;
3631 struct list_head h_node ;
3632};
3633#line 1619 "include/linux/input.h"
3634struct ff_device {
3635 int (*upload)(struct input_dev *dev , struct ff_effect *effect , struct ff_effect *old ) ;
3636 int (*erase)(struct input_dev *dev , int effect_id ) ;
3637 int (*playback)(struct input_dev *dev , int effect_id , int value ) ;
3638 void (*set_gain)(struct input_dev *dev , u16 gain ) ;
3639 void (*set_autocenter)(struct input_dev *dev , u16 magnitude ) ;
3640 void (*destroy)(struct ff_device * ) ;
3641 void *private ;
3642 unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3643 struct mutex mutex ;
3644 int max_effects ;
3645 struct ff_effect *effects ;
3646 struct file *effect_owners[] ;
3647};
3648#line 48 "include/linux/miscdevice.h"
3649struct device;
3650#line 50 "include/linux/miscdevice.h"
3651struct miscdevice {
3652 int minor ;
3653 char *name ;
3654 struct file_operations *fops ;
3655 struct list_head list ;
3656 struct device *parent ;
3657 struct device *this_device ;
3658 char *nodename ;
3659 umode_t mode ;
3660};
3661#line 56 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
3662struct mousedev_hw_data {
3663 int dx ;
3664 int dy ;
3665 int dz ;
3666 int x ;
3667 int y ;
3668 int abs_event ;
3669 unsigned long buttons ;
3670};
3671#line 63 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
3672struct mousedev {
3673 int open ;
3674 int minor ;
3675 struct input_handle handle ;
3676 wait_queue_head_t wait ;
3677 struct list_head client_list ;
3678 spinlock_t client_lock ;
3679 struct mutex mutex ;
3680 struct device dev ;
3681 bool exist ;
3682 struct list_head mixdev_node ;
3683 int mixdev_open ;
3684 struct mousedev_hw_data packet ;
3685 unsigned int pkt_count ;
3686 int old_x[4] ;
3687 int old_y[4] ;
3688 int frac_dx ;
3689 int frac_dy ;
3690 unsigned long touch ;
3691};
3692#line 84
3693enum mousedev_emul {
3694 MOUSEDEV_EMUL_PS2 = 0,
3695 MOUSEDEV_EMUL_IMPS = 1,
3696 MOUSEDEV_EMUL_EXPS = 2
3697} ;
3698#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
3699struct mousedev_motion {
3700 int dx ;
3701 int dy ;
3702 int dz ;
3703 unsigned long buttons ;
3704};
3705#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
3706struct mousedev_client {
3707 struct fasync_struct *fasync ;
3708 struct mousedev *mousedev ;
3709 struct list_head node ;
3710 struct mousedev_motion packets[16] ;
3711 unsigned int head ;
3712 unsigned int tail ;
3713 spinlock_t packet_lock ;
3714 int pos_x ;
3715 int pos_y ;
3716 signed char ps2[6] ;
3717 unsigned char ready ;
3718 unsigned char buffer ;
3719 unsigned char bufsiz ;
3720 unsigned char imexseq ;
3721 unsigned char impsseq ;
3722 enum mousedev_emul mode ;
3723 unsigned long last_buttons ;
3724};
3725#line 1 "<compiler builtins>"
3726
3727#line 1
3728long __builtin_expect(long val , long res ) ;
3729#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
3730__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
3731 unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
3732#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
3733__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
3734 unsigned long volatile *addr )
3735{ long volatile *__cil_tmp3 ;
3736
3737 {
3738#line 68
3739 __cil_tmp3 = (long volatile *)addr;
3740#line 68
3741 __asm__ volatile (".section .smp_locks,\"a\"\n"
3742 ".balign 4\n"
3743 ".long 671f - .\n"
3744 ".previous\n"
3745 "671:"
3746 "\n\tlock; "
3747 "bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
3748#line 71
3749 return;
3750}
3751}
3752#line 97
3753__inline static void ( __attribute__((__always_inline__)) clear_bit)(int nr , unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
3754#line 97 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
3755__inline static void ( __attribute__((__always_inline__)) clear_bit)(int nr , unsigned long volatile *addr )
3756{ long volatile *__cil_tmp3 ;
3757
3758 {
3759#line 105
3760 __cil_tmp3 = (long volatile *)addr;
3761#line 105
3762 __asm__ volatile (".section .smp_locks,\"a\"\n"
3763 ".balign 4\n"
3764 ".long 671f - .\n"
3765 ".previous\n"
3766 "671:"
3767 "\n\tlock; "
3768 "btr %1,%0": "+m" (*__cil_tmp3): "Ir" (nr));
3769#line 109
3770 return;
3771}
3772}
3773#line 309
3774__inline static int ( __attribute__((__always_inline__)) ant_test_bit)(unsigned int nr ,
3775 unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
3776#line 309 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
3777__inline static int ( __attribute__((__always_inline__)) ant_test_bit)(unsigned int nr ,
3778 unsigned long volatile *addr )
3779{ unsigned int __cil_tmp3 ;
3780 unsigned long volatile *__cil_tmp4 ;
3781 unsigned long volatile __cil_tmp5 ;
3782 unsigned long __cil_tmp6 ;
3783 unsigned int __cil_tmp7 ;
3784 unsigned long __cil_tmp8 ;
3785 unsigned long __cil_tmp9 ;
3786
3787 {
3788 {
3789#line 311
3790 __cil_tmp3 = nr / 64U;
3791#line 311
3792 __cil_tmp4 = addr + __cil_tmp3;
3793#line 311
3794 __cil_tmp5 = *__cil_tmp4;
3795#line 311
3796 __cil_tmp6 = (unsigned long )__cil_tmp5;
3797#line 311
3798 __cil_tmp7 = nr % 64U;
3799#line 311
3800 __cil_tmp8 = 1UL << __cil_tmp7;
3801#line 311
3802 __cil_tmp9 = __cil_tmp8 & __cil_tmp6;
3803#line 311
3804 return (__cil_tmp9 != 0UL);
3805 }
3806}
3807}
3808#line 315
3809__inline static int variable_test_bit(int nr , unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
3810#line 315 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
3811__inline static int variable_test_bit(int nr , unsigned long volatile *addr )
3812{ int oldbit ;
3813 unsigned long *__cil_tmp4 ;
3814
3815 {
3816#line 319
3817 __cil_tmp4 = (unsigned long *)addr;
3818#line 319
3819 __asm__ volatile ("bt %2,%1\n\t"
3820 "sbb %0,%0": "=r" (oldbit): "m" (*__cil_tmp4), "Ir" (nr));
3821#line 324
3822 return (oldbit);
3823}
3824}
3825#line 100 "include/linux/printk.h"
3826extern int ( printk)(char *fmt , ...) ;
3827#line 147 "include/linux/kernel.h"
3828extern void __might_sleep(char *file , int line , int preempt_offset ) ;
3829#line 194
3830__inline static void might_fault(void) __attribute__((__no_instrument_function__)) ;
3831#line 194 "include/linux/kernel.h"
3832__inline static void might_fault(void)
3833{
3834
3835 {
3836 {
3837#line 196
3838 while (1) {
3839 while_continue: ;
3840 {
3841#line 196
3842 __might_sleep("include/linux/kernel.h", 196, 0);
3843 }
3844 {
3845#line 196
3846 while (1) {
3847 while_continue___0: ;
3848#line 196
3849 goto while_break___0;
3850 }
3851 while_break___0: ;
3852 }
3853#line 196
3854 goto while_break;
3855 }
3856 while_break: ;
3857 }
3858#line 197
3859 return;
3860}
3861}
3862#line 88 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/percpu.h"
3863extern void __bad_percpu_size(void) ;
3864#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
3865extern struct task_struct *current_task __attribute__((__section__(".data..percpu"))) ;
3866#line 12
3867__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void) __attribute__((__no_instrument_function__)) ;
3868#line 12 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
3869__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void)
3870{ struct task_struct *pfo_ret__ ;
3871
3872 {
3873#line 14
3874 if ((int )8UL == 1) {
3875#line 14
3876 goto case_1;
3877 } else
3878#line 14
3879 if ((int )8UL == 2) {
3880#line 14
3881 goto case_2;
3882 } else
3883#line 14
3884 if ((int )8UL == 4) {
3885#line 14
3886 goto case_4;
3887 } else
3888#line 14
3889 if ((int )8UL == 8) {
3890#line 14
3891 goto case_8;
3892 } else {
3893 {
3894#line 14
3895 goto switch_default;
3896#line 14
3897 if (0) {
3898 case_1:
3899#line 14
3900 __asm__ ("mov"
3901 "b "
3902 "%%"
3903 "gs"
3904 ":"
3905 "%P"
3906 "1"
3907 ",%0": "=q" (pfo_ret__): "p" (& current_task));
3908#line 14
3909 goto switch_break;
3910 case_2:
3911#line 14
3912 __asm__ ("mov"
3913 "w "
3914 "%%"
3915 "gs"
3916 ":"
3917 "%P"
3918 "1"
3919 ",%0": "=r" (pfo_ret__): "p" (& current_task));
3920#line 14
3921 goto switch_break;
3922 case_4:
3923#line 14
3924 __asm__ ("mov"
3925 "l "
3926 "%%"
3927 "gs"
3928 ":"
3929 "%P"
3930 "1"
3931 ",%0": "=r" (pfo_ret__): "p" (& current_task));
3932#line 14
3933 goto switch_break;
3934 case_8:
3935#line 14
3936 __asm__ ("mov"
3937 "q "
3938 "%%"
3939 "gs"
3940 ":"
3941 "%P"
3942 "1"
3943 ",%0": "=r" (pfo_ret__): "p" (& current_task));
3944#line 14
3945 goto switch_break;
3946 switch_default:
3947 {
3948#line 14
3949 __bad_percpu_size();
3950 }
3951 } else {
3952 switch_break: ;
3953 }
3954 }
3955 }
3956#line 14
3957 return (pfo_ret__);
3958}
3959}
3960#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
3961extern void *memset(void *s , int c , size_t n ) ;
3962#line 22 "include/linux/err.h"
3963__inline static void * __attribute__((__warn_unused_result__)) ERR_PTR(long error ) __attribute__((__no_instrument_function__)) ;
3964#line 22 "include/linux/err.h"
3965__inline static void * __attribute__((__warn_unused_result__)) ERR_PTR(long error )
3966{
3967
3968 {
3969#line 24
3970 return ((void *)error);
3971}
3972}
3973#line 27
3974__inline static long __attribute__((__warn_unused_result__)) PTR_ERR(void *ptr ) __attribute__((__no_instrument_function__)) ;
3975#line 27 "include/linux/err.h"
3976__inline static long __attribute__((__warn_unused_result__)) PTR_ERR(void *ptr )
3977{
3978
3979 {
3980#line 29
3981 return ((long )ptr);
3982}
3983}
3984#line 32
3985__inline static long __attribute__((__warn_unused_result__)) IS_ERR(void *ptr ) __attribute__((__no_instrument_function__)) ;
3986#line 32 "include/linux/err.h"
3987__inline static long __attribute__((__warn_unused_result__)) IS_ERR(void *ptr )
3988{ long tmp ;
3989 unsigned long __cil_tmp3 ;
3990 int __cil_tmp4 ;
3991 int __cil_tmp5 ;
3992 int __cil_tmp6 ;
3993 long __cil_tmp7 ;
3994
3995 {
3996 {
3997#line 34
3998 __cil_tmp3 = (unsigned long )ptr;
3999#line 34
4000 __cil_tmp4 = __cil_tmp3 >= 0xfffffffffffff001UL;
4001#line 34
4002 __cil_tmp5 = ! __cil_tmp4;
4003#line 34
4004 __cil_tmp6 = ! __cil_tmp5;
4005#line 34
4006 __cil_tmp7 = (long )__cil_tmp6;
4007#line 34
4008 tmp = __builtin_expect(__cil_tmp7, 0L);
4009 }
4010#line 34
4011 return (tmp);
4012}
4013}
4014#line 220 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
4015extern unsigned long kernel_stack __attribute__((__section__(".data..percpu"))) ;
4016#line 222
4017__inline static struct thread_info *current_thread_info(void) __attribute__((__no_instrument_function__)) ;
4018#line 222 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
4019__inline static struct thread_info *current_thread_info(void)
4020{ struct thread_info *ti ;
4021 unsigned long pfo_ret__ ;
4022 unsigned long __cil_tmp3 ;
4023 unsigned long __cil_tmp4 ;
4024 unsigned long __cil_tmp5 ;
4025 unsigned long __cil_tmp6 ;
4026 void *__cil_tmp7 ;
4027
4028 {
4029#line 225
4030 if ((int )8UL == 1) {
4031#line 225
4032 goto case_1;
4033 } else
4034#line 225
4035 if ((int )8UL == 2) {
4036#line 225
4037 goto case_2;
4038 } else
4039#line 225
4040 if ((int )8UL == 4) {
4041#line 225
4042 goto case_4;
4043 } else
4044#line 225
4045 if ((int )8UL == 8) {
4046#line 225
4047 goto case_8;
4048 } else {
4049 {
4050#line 225
4051 goto switch_default;
4052#line 225
4053 if (0) {
4054 case_1:
4055#line 225
4056 __asm__ ("mov"
4057 "b "
4058 "%%"
4059 "gs"
4060 ":"
4061 "%P"
4062 "1"
4063 ",%0": "=q" (pfo_ret__): "p" (& kernel_stack));
4064#line 225
4065 goto switch_break;
4066 case_2:
4067#line 225
4068 __asm__ ("mov"
4069 "w "
4070 "%%"
4071 "gs"
4072 ":"
4073 "%P"
4074 "1"
4075 ",%0": "=r" (pfo_ret__): "p" (& kernel_stack));
4076#line 225
4077 goto switch_break;
4078 case_4:
4079#line 225
4080 __asm__ ("mov"
4081 "l "
4082 "%%"
4083 "gs"
4084 ":"
4085 "%P"
4086 "1"
4087 ",%0": "=r" (pfo_ret__): "p" (& kernel_stack));
4088#line 225
4089 goto switch_break;
4090 case_8:
4091#line 225
4092 __asm__ ("mov"
4093 "q "
4094 "%%"
4095 "gs"
4096 ":"
4097 "%P"
4098 "1"
4099 ",%0": "=r" (pfo_ret__): "p" (& kernel_stack));
4100#line 225
4101 goto switch_break;
4102 switch_default:
4103 {
4104#line 225
4105 __bad_percpu_size();
4106 }
4107 } else {
4108 switch_break: ;
4109 }
4110 }
4111 }
4112#line 225
4113 __cil_tmp3 = 1UL << 12;
4114#line 225
4115 __cil_tmp4 = __cil_tmp3 << 1;
4116#line 225
4117 __cil_tmp5 = pfo_ret__ + 40UL;
4118#line 225
4119 __cil_tmp6 = __cil_tmp5 - __cil_tmp4;
4120#line 225
4121 __cil_tmp7 = (void *)__cil_tmp6;
4122#line 225
4123 ti = (struct thread_info *)__cil_tmp7;
4124#line 227
4125 return (ti);
4126}
4127}
4128#line 82 "include/linux/thread_info.h"
4129__inline static int test_ti_thread_flag(struct thread_info *ti , int flag ) __attribute__((__no_instrument_function__)) ;
4130#line 82 "include/linux/thread_info.h"
4131__inline static int test_ti_thread_flag(struct thread_info *ti , int flag )
4132{ int tmp___0 ;
4133 unsigned long __cil_tmp5 ;
4134 unsigned long __cil_tmp6 ;
4135 __u32 *__cil_tmp7 ;
4136 unsigned long *__cil_tmp8 ;
4137 unsigned long volatile *__cil_tmp9 ;
4138
4139 {
4140 {
4141#line 84
4142 __cil_tmp5 = (unsigned long )ti;
4143#line 84
4144 __cil_tmp6 = __cil_tmp5 + 16;
4145#line 84
4146 __cil_tmp7 = (__u32 *)__cil_tmp6;
4147#line 84
4148 __cil_tmp8 = (unsigned long *)__cil_tmp7;
4149#line 84
4150 __cil_tmp9 = (unsigned long volatile *)__cil_tmp8;
4151#line 84
4152 tmp___0 = variable_test_bit(flag, __cil_tmp9);
4153 }
4154#line 84
4155 return (tmp___0);
4156}
4157}
4158#line 24 "include/linux/list.h"
4159__inline static void INIT_LIST_HEAD(struct list_head *list ) __attribute__((__no_instrument_function__)) ;
4160#line 24 "include/linux/list.h"
4161__inline static void INIT_LIST_HEAD(struct list_head *list )
4162{ unsigned long __cil_tmp2 ;
4163 unsigned long __cil_tmp3 ;
4164
4165 {
4166#line 26
4167 *((struct list_head **)list) = list;
4168#line 27
4169 __cil_tmp2 = (unsigned long )list;
4170#line 27
4171 __cil_tmp3 = __cil_tmp2 + 8;
4172#line 27
4173 *((struct list_head **)__cil_tmp3) = list;
4174#line 28
4175 return;
4176}
4177}
4178#line 47
4179extern void __list_add(struct list_head *new , struct list_head *prev , struct list_head *next ) ;
4180#line 74
4181__inline static void list_add_tail(struct list_head *new , struct list_head *head ) __attribute__((__no_instrument_function__)) ;
4182#line 74 "include/linux/list.h"
4183__inline static void list_add_tail(struct list_head *new , struct list_head *head )
4184{ unsigned long __cil_tmp3 ;
4185 unsigned long __cil_tmp4 ;
4186 struct list_head *__cil_tmp5 ;
4187
4188 {
4189 {
4190#line 76
4191 __cil_tmp3 = (unsigned long )head;
4192#line 76
4193 __cil_tmp4 = __cil_tmp3 + 8;
4194#line 76
4195 __cil_tmp5 = *((struct list_head **)__cil_tmp4);
4196#line 76
4197 __list_add(new, __cil_tmp5, head);
4198 }
4199#line 77
4200 return;
4201}
4202}
4203#line 86
4204__inline static void __list_del(struct list_head *prev , struct list_head *next ) __attribute__((__no_instrument_function__)) ;
4205#line 86 "include/linux/list.h"
4206__inline static void __list_del(struct list_head *prev , struct list_head *next )
4207{ unsigned long __cil_tmp3 ;
4208 unsigned long __cil_tmp4 ;
4209
4210 {
4211#line 88
4212 __cil_tmp3 = (unsigned long )next;
4213#line 88
4214 __cil_tmp4 = __cil_tmp3 + 8;
4215#line 88
4216 *((struct list_head **)__cil_tmp4) = prev;
4217#line 89
4218 *((struct list_head **)prev) = next;
4219#line 90
4220 return;
4221}
4222}
4223#line 111
4224extern void __list_del_entry(struct list_head *entry ) ;
4225#line 142
4226__inline static void list_del_init(struct list_head *entry ) __attribute__((__no_instrument_function__)) ;
4227#line 142 "include/linux/list.h"
4228__inline static void list_del_init(struct list_head *entry )
4229{
4230
4231 {
4232 {
4233#line 144
4234 __list_del_entry(entry);
4235#line 145
4236 INIT_LIST_HEAD(entry);
4237 }
4238#line 146
4239 return;
4240}
4241}
4242#line 93 "include/linux/spinlock.h"
4243extern void __raw_spin_lock_init(raw_spinlock_t *lock , char *name , struct lock_class_key *key ) ;
4244#line 22 "include/linux/spinlock_api_smp.h"
4245extern void _raw_spin_lock(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4246#line 29
4247extern void _raw_spin_lock_irq(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4248#line 39
4249extern void _raw_spin_unlock(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4250#line 41
4251extern void _raw_spin_unlock_irq(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4252#line 272 "include/linux/spinlock.h"
4253__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4254#line 272 "include/linux/spinlock.h"
4255__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
4256{
4257
4258 {
4259#line 274
4260 return ((struct raw_spinlock *)lock);
4261}
4262}
4263#line 283
4264__inline static void spin_lock(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4265#line 283 "include/linux/spinlock.h"
4266__inline static void spin_lock(spinlock_t *lock )
4267{ struct raw_spinlock *__cil_tmp2 ;
4268
4269 {
4270 {
4271#line 285
4272 __cil_tmp2 = (struct raw_spinlock *)lock;
4273#line 285
4274 _raw_spin_lock(__cil_tmp2);
4275 }
4276#line 286
4277 return;
4278}
4279}
4280#line 308
4281__inline static void spin_lock_irq(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4282#line 308 "include/linux/spinlock.h"
4283__inline static void spin_lock_irq(spinlock_t *lock )
4284{ struct raw_spinlock *__cil_tmp2 ;
4285
4286 {
4287 {
4288#line 310
4289 __cil_tmp2 = (struct raw_spinlock *)lock;
4290#line 310
4291 _raw_spin_lock_irq(__cil_tmp2);
4292 }
4293#line 311
4294 return;
4295}
4296}
4297#line 323
4298__inline static void spin_unlock(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4299#line 323 "include/linux/spinlock.h"
4300__inline static void spin_unlock(spinlock_t *lock )
4301{ struct raw_spinlock *__cil_tmp2 ;
4302
4303 {
4304 {
4305#line 325
4306 __cil_tmp2 = (struct raw_spinlock *)lock;
4307#line 325
4308 _raw_spin_unlock(__cil_tmp2);
4309 }
4310#line 326
4311 return;
4312}
4313}
4314#line 333
4315__inline static void spin_unlock_irq(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4316#line 333 "include/linux/spinlock.h"
4317__inline static void spin_unlock_irq(spinlock_t *lock )
4318{ struct raw_spinlock *__cil_tmp2 ;
4319
4320 {
4321 {
4322#line 335
4323 __cil_tmp2 = (struct raw_spinlock *)lock;
4324#line 335
4325 _raw_spin_unlock_irq(__cil_tmp2);
4326 }
4327#line 336
4328 return;
4329}
4330}
4331#line 82 "include/linux/jiffies.h"
4332extern unsigned long volatile jiffies __attribute__((__section__(".data"))) ;
4333#line 298
4334extern unsigned long msecs_to_jiffies(unsigned int m ) ;
4335#line 79 "include/linux/wait.h"
4336extern void __init_waitqueue_head(wait_queue_head_t *q , char *name , struct lock_class_key * ) ;
4337#line 155
4338extern void __wake_up(wait_queue_head_t *q , unsigned int mode , int nr , void *key ) ;
4339#line 584
4340extern void prepare_to_wait(wait_queue_head_t *q , wait_queue_t *wait , int state ) ;
4341#line 586
4342extern void finish_wait(wait_queue_head_t *q , wait_queue_t *wait ) ;
4343#line 589
4344extern int autoremove_wake_function(wait_queue_t *wait , unsigned int mode , int sync ,
4345 void *key ) ;
4346#line 115 "include/linux/mutex.h"
4347extern void __mutex_init(struct mutex *lock , char *name , struct lock_class_key *key ) ;
4348#line 152
4349void mutex_lock(struct mutex *lock ) ;
4350#line 153
4351int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock ) ;
4352#line 154
4353int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock ) ;
4354#line 168
4355int mutex_trylock(struct mutex *lock ) ;
4356#line 169
4357void mutex_unlock(struct mutex *lock ) ;
4358#line 170
4359int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
4360#line 144 "include/linux/rcupdate.h"
4361extern void synchronize_sched(void) ;
4362#line 162
4363__inline static void __rcu_read_lock(void) __attribute__((__no_instrument_function__)) ;
4364#line 162 "include/linux/rcupdate.h"
4365__inline static void __rcu_read_lock(void)
4366{ struct thread_info *tmp ;
4367 unsigned long __cil_tmp2 ;
4368 unsigned long __cil_tmp3 ;
4369 unsigned long __cil_tmp4 ;
4370 unsigned long __cil_tmp5 ;
4371 int __cil_tmp6 ;
4372
4373 {
4374 {
4375#line 164
4376 while (1) {
4377 while_continue: ;
4378 {
4379#line 164
4380 while (1) {
4381 while_continue___0: ;
4382 {
4383#line 164
4384 tmp = current_thread_info();
4385#line 164
4386 __cil_tmp2 = (unsigned long )tmp;
4387#line 164
4388 __cil_tmp3 = __cil_tmp2 + 28;
4389#line 164
4390 __cil_tmp4 = (unsigned long )tmp;
4391#line 164
4392 __cil_tmp5 = __cil_tmp4 + 28;
4393#line 164
4394 __cil_tmp6 = *((int *)__cil_tmp5);
4395#line 164
4396 *((int *)__cil_tmp3) = __cil_tmp6 + 1;
4397 }
4398#line 164
4399 goto while_break___0;
4400 }
4401 while_break___0: ;
4402 }
4403#line 164
4404 __asm__ volatile ("": : : "memory");
4405#line 164
4406 goto while_break;
4407 }
4408 while_break: ;
4409 }
4410#line 165
4411 return;
4412}
4413}
4414#line 167
4415__inline static void __rcu_read_unlock(void) __attribute__((__no_instrument_function__)) ;
4416#line 167 "include/linux/rcupdate.h"
4417__inline static void __rcu_read_unlock(void)
4418{ struct thread_info *tmp ;
4419 unsigned long __cil_tmp2 ;
4420 unsigned long __cil_tmp3 ;
4421 unsigned long __cil_tmp4 ;
4422 unsigned long __cil_tmp5 ;
4423 int __cil_tmp6 ;
4424
4425 {
4426 {
4427#line 169
4428 while (1) {
4429 while_continue: ;
4430 {
4431#line 169
4432 while (1) {
4433 while_continue___0: ;
4434#line 169
4435 __asm__ volatile ("": : : "memory");
4436 {
4437#line 169
4438 while (1) {
4439 while_continue___1: ;
4440 {
4441#line 169
4442 tmp = current_thread_info();
4443#line 169
4444 __cil_tmp2 = (unsigned long )tmp;
4445#line 169
4446 __cil_tmp3 = __cil_tmp2 + 28;
4447#line 169
4448 __cil_tmp4 = (unsigned long )tmp;
4449#line 169
4450 __cil_tmp5 = __cil_tmp4 + 28;
4451#line 169
4452 __cil_tmp6 = *((int *)__cil_tmp5);
4453#line 169
4454 *((int *)__cil_tmp3) = __cil_tmp6 - 1;
4455 }
4456#line 169
4457 goto while_break___1;
4458 }
4459 while_break___1: ;
4460 }
4461#line 169
4462 goto while_break___0;
4463 }
4464 while_break___0: ;
4465 }
4466#line 169
4467 __asm__ volatile ("": : : "memory");
4468 {
4469#line 169
4470 while (1) {
4471 while_continue___2: ;
4472#line 169
4473 goto while_break___2;
4474 }
4475 while_break___2: ;
4476 }
4477#line 169
4478 goto while_break;
4479 }
4480 while_break: ;
4481 }
4482#line 170
4483 return;
4484}
4485}
4486#line 172
4487__inline static void synchronize_rcu(void) __attribute__((__no_instrument_function__)) ;
4488#line 172 "include/linux/rcupdate.h"
4489__inline static void synchronize_rcu(void)
4490{
4491
4492 {
4493 {
4494#line 174
4495 synchronize_sched();
4496 }
4497#line 175
4498 return;
4499}
4500}
4501#line 723
4502__inline static void rcu_read_lock(void) __attribute__((__no_instrument_function__)) ;
4503#line 723 "include/linux/rcupdate.h"
4504__inline static void rcu_read_lock(void)
4505{
4506
4507 {
4508 {
4509#line 725
4510 __rcu_read_lock();
4511 }
4512 {
4513#line 727
4514 while (1) {
4515 while_continue: ;
4516#line 727
4517 goto while_break;
4518 }
4519 while_break: ;
4520 }
4521 {
4522#line 728
4523 while (1) {
4524 while_continue___0: ;
4525#line 728
4526 goto while_break___0;
4527 }
4528 while_break___0: ;
4529 }
4530#line 730
4531 return;
4532}
4533}
4534#line 747
4535__inline static void rcu_read_unlock(void) __attribute__((__no_instrument_function__)) ;
4536#line 747 "include/linux/rcupdate.h"
4537__inline static void rcu_read_unlock(void)
4538{
4539
4540 {
4541 {
4542#line 749
4543 while (1) {
4544 while_continue: ;
4545#line 749
4546 goto while_break;
4547 }
4548 while_break: ;
4549 }
4550 {
4551#line 751
4552 while (1) {
4553 while_continue___0: ;
4554#line 751
4555 goto while_break___0;
4556 }
4557 while_break___0: ;
4558 }
4559 {
4560#line 753
4561 __rcu_read_unlock();
4562 }
4563#line 754
4564 return;
4565}
4566}
4567#line 33 "include/linux/rculist.h"
4568__inline static void __list_add_rcu(struct list_head *new , struct list_head *prev ,
4569 struct list_head *next ) __attribute__((__no_instrument_function__)) ;
4570#line 33 "include/linux/rculist.h"
4571__inline static void __list_add_rcu(struct list_head *new , struct list_head *prev ,
4572 struct list_head *next )
4573{ unsigned long __cil_tmp4 ;
4574 unsigned long __cil_tmp5 ;
4575 unsigned long __cil_tmp6 ;
4576 unsigned long __cil_tmp7 ;
4577
4578 {
4579#line 36
4580 *((struct list_head **)new) = next;
4581#line 37
4582 __cil_tmp4 = (unsigned long )new;
4583#line 37
4584 __cil_tmp5 = __cil_tmp4 + 8;
4585#line 37
4586 *((struct list_head **)__cil_tmp5) = prev;
4587#line 38
4588 __asm__ volatile ("": : : "memory");
4589#line 38
4590 *((struct list_head **)prev) = new;
4591#line 39
4592 __cil_tmp6 = (unsigned long )next;
4593#line 39
4594 __cil_tmp7 = __cil_tmp6 + 8;
4595#line 39
4596 *((struct list_head **)__cil_tmp7) = new;
4597#line 40
4598 return;
4599}
4600}
4601#line 79
4602__inline static void list_add_tail_rcu(struct list_head *new , struct list_head *head ) __attribute__((__no_instrument_function__)) ;
4603#line 79 "include/linux/rculist.h"
4604__inline static void list_add_tail_rcu(struct list_head *new , struct list_head *head )
4605{ unsigned long __cil_tmp3 ;
4606 unsigned long __cil_tmp4 ;
4607 struct list_head *__cil_tmp5 ;
4608
4609 {
4610 {
4611#line 82
4612 __cil_tmp3 = (unsigned long )head;
4613#line 82
4614 __cil_tmp4 = __cil_tmp3 + 8;
4615#line 82
4616 __cil_tmp5 = *((struct list_head **)__cil_tmp4);
4617#line 82
4618 __list_add_rcu(new, __cil_tmp5, head);
4619 }
4620#line 83
4621 return;
4622}
4623}
4624#line 109
4625__inline static void list_del_rcu(struct list_head *entry ) __attribute__((__no_instrument_function__)) ;
4626#line 109 "include/linux/rculist.h"
4627__inline static void list_del_rcu(struct list_head *entry )
4628{ unsigned long __cil_tmp2 ;
4629 unsigned long __cil_tmp3 ;
4630 struct list_head *__cil_tmp4 ;
4631 struct list_head *__cil_tmp5 ;
4632 unsigned long __cil_tmp6 ;
4633 unsigned long __cil_tmp7 ;
4634 void *__cil_tmp8 ;
4635 void *__cil_tmp9 ;
4636
4637 {
4638 {
4639#line 111
4640 __cil_tmp2 = (unsigned long )entry;
4641#line 111
4642 __cil_tmp3 = __cil_tmp2 + 8;
4643#line 111
4644 __cil_tmp4 = *((struct list_head **)__cil_tmp3);
4645#line 111
4646 __cil_tmp5 = *((struct list_head **)entry);
4647#line 111
4648 __list_del(__cil_tmp4, __cil_tmp5);
4649#line 112
4650 __cil_tmp6 = (unsigned long )entry;
4651#line 112
4652 __cil_tmp7 = __cil_tmp6 + 8;
4653#line 112
4654 __cil_tmp8 = (void *)2097664;
4655#line 112
4656 __cil_tmp9 = __cil_tmp8 + 0xdead000000000000UL;
4657#line 112
4658 *((struct list_head **)__cil_tmp7) = (struct list_head *)__cil_tmp9;
4659 }
4660#line 113
4661 return;
4662}
4663}
4664#line 362 "include/linux/sched.h"
4665extern void schedule(void) ;
4666#line 2563
4667__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag ) __attribute__((__no_instrument_function__)) ;
4668#line 2563 "include/linux/sched.h"
4669__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag )
4670{ int tmp___7 ;
4671 unsigned long __cil_tmp4 ;
4672 unsigned long __cil_tmp5 ;
4673 void *__cil_tmp6 ;
4674 struct thread_info *__cil_tmp7 ;
4675
4676 {
4677 {
4678#line 2565
4679 __cil_tmp4 = (unsigned long )tsk;
4680#line 2565
4681 __cil_tmp5 = __cil_tmp4 + 8;
4682#line 2565
4683 __cil_tmp6 = *((void **)__cil_tmp5);
4684#line 2565
4685 __cil_tmp7 = (struct thread_info *)__cil_tmp6;
4686#line 2565
4687 tmp___7 = test_ti_thread_flag(__cil_tmp7, flag);
4688 }
4689#line 2565
4690 return (tmp___7);
4691}
4692}
4693#line 2589
4694__inline static int signal_pending(struct task_struct *p ) __attribute__((__no_instrument_function__)) ;
4695#line 2589 "include/linux/sched.h"
4696__inline static int signal_pending(struct task_struct *p )
4697{ int tmp___7 ;
4698 int tmp___8 ;
4699 long tmp___9 ;
4700 long __cil_tmp5 ;
4701
4702 {
4703 {
4704#line 2591
4705 tmp___7 = test_tsk_thread_flag(p, 2);
4706 }
4707#line 2591
4708 if (tmp___7) {
4709#line 2591
4710 tmp___8 = 1;
4711 } else {
4712#line 2591
4713 tmp___8 = 0;
4714 }
4715 {
4716#line 2591
4717 __cil_tmp5 = (long )tmp___8;
4718#line 2591
4719 tmp___9 = __builtin_expect(__cil_tmp5, 0L);
4720 }
4721#line 2591
4722 return ((int )tmp___9);
4723}
4724}
4725#line 161 "include/linux/slab.h"
4726extern void kfree(void * ) ;
4727#line 80 "include/linux/kobject.h"
4728__inline static char *kobject_name(struct kobject *kobj ) __attribute__((__no_instrument_function__)) ;
4729#line 80 "include/linux/kobject.h"
4730__inline static char *kobject_name(struct kobject *kobj )
4731{ char * __cil_tmp2 ;
4732
4733 {
4734 {
4735#line 82
4736 __cil_tmp2 = *((char * *)kobj);
4737#line 82
4738 return ((char *)__cil_tmp2);
4739 }
4740}
4741}
4742#line 221 "include/linux/slub_def.h"
4743extern void *__kmalloc(size_t size , gfp_t flags ) ;
4744#line 268
4745__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
4746 gfp_t flags ) __attribute__((__no_instrument_function__)) ;
4747#line 268 "include/linux/slub_def.h"
4748__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
4749 gfp_t flags )
4750{ void *tmp___10 ;
4751
4752 {
4753 {
4754#line 283
4755 tmp___10 = __kmalloc(size, flags);
4756 }
4757#line 283
4758 return (tmp___10);
4759}
4760}
4761#line 349 "include/linux/slab.h"
4762__inline static void *kzalloc(size_t size , gfp_t flags ) __attribute__((__no_instrument_function__)) ;
4763#line 349 "include/linux/slab.h"
4764__inline static void *kzalloc(size_t size , gfp_t flags )
4765{ void *tmp___7 ;
4766 unsigned int __cil_tmp4 ;
4767
4768 {
4769 {
4770#line 351
4771 __cil_tmp4 = flags | 32768U;
4772#line 351
4773 tmp___7 = kmalloc(size, __cil_tmp4);
4774 }
4775#line 351
4776 return (tmp___7);
4777}
4778}
4779#line 930 "include/linux/fs.h"
4780__inline static unsigned int iminor(struct inode *inode ) __attribute__((__no_instrument_function__)) ;
4781#line 930 "include/linux/fs.h"
4782__inline static unsigned int iminor(struct inode *inode )
4783{ unsigned int __cil_tmp2 ;
4784 unsigned int __cil_tmp3 ;
4785 unsigned int __cil_tmp4 ;
4786 unsigned long __cil_tmp5 ;
4787 unsigned long __cil_tmp6 ;
4788 dev_t __cil_tmp7 ;
4789 unsigned int __cil_tmp8 ;
4790
4791 {
4792 {
4793#line 932
4794 __cil_tmp2 = 1U << 20;
4795#line 932
4796 __cil_tmp3 = __cil_tmp2 - 1U;
4797#line 932
4798 __cil_tmp4 = (unsigned int )__cil_tmp3;
4799#line 932
4800 __cil_tmp5 = (unsigned long )inode;
4801#line 932
4802 __cil_tmp6 = __cil_tmp5 + 76;
4803#line 932
4804 __cil_tmp7 = *((dev_t *)__cil_tmp6);
4805#line 932
4806 __cil_tmp8 = __cil_tmp7 & __cil_tmp4;
4807#line 932
4808 return ((unsigned int )__cil_tmp8);
4809 }
4810}
4811}
4812#line 935
4813__inline static unsigned int imajor(struct inode *inode ) __attribute__((__no_instrument_function__)) ;
4814#line 935 "include/linux/fs.h"
4815__inline static unsigned int imajor(struct inode *inode )
4816{ unsigned long __cil_tmp2 ;
4817 unsigned long __cil_tmp3 ;
4818 dev_t __cil_tmp4 ;
4819 dev_t __cil_tmp5 ;
4820
4821 {
4822 {
4823#line 937
4824 __cil_tmp2 = (unsigned long )inode;
4825#line 937
4826 __cil_tmp3 = __cil_tmp2 + 76;
4827#line 937
4828 __cil_tmp4 = *((dev_t *)__cil_tmp3);
4829#line 937
4830 __cil_tmp5 = __cil_tmp4 >> 20;
4831#line 937
4832 return ((unsigned int )__cil_tmp5);
4833 }
4834}
4835}
4836#line 1390
4837extern int fasync_helper(int , struct file * , int , struct fasync_struct ** ) ;
4838#line 1397
4839extern void kill_fasync(struct fasync_struct ** , int , int ) ;
4840#line 2401
4841extern loff_t noop_llseek(struct file *file , loff_t offset , int origin ) ;
4842#line 39 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
4843extern unsigned long __attribute__((__warn_unused_result__)) _copy_to_user(void *to ,
4844 void *from ,
4845 unsigned int len ) ;
4846#line 62
4847__inline static int __attribute__((__warn_unused_result__)) ( __attribute__((__always_inline__)) copy_to_user)(void *dst ,
4848 void *src ,
4849 unsigned int size ) __attribute__((__no_instrument_function__)) ;
4850#line 62 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
4851__inline static int __attribute__((__warn_unused_result__)) ( __attribute__((__always_inline__)) copy_to_user)(void *dst ,
4852 void *src ,
4853 unsigned int size )
4854{ unsigned long tmp___7 ;
4855
4856 {
4857 {
4858#line 65
4859 might_fault();
4860#line 67
4861 tmp___7 = (unsigned long )_copy_to_user(dst, src, size);
4862 }
4863#line 67
4864 return ((int )tmp___7);
4865}
4866}
4867#line 44 "include/linux/poll.h"
4868__inline static void poll_wait(struct file *filp , wait_queue_head_t *wait_address ,
4869 poll_table *p ) __attribute__((__no_instrument_function__)) ;
4870#line 44 "include/linux/poll.h"
4871__inline static void poll_wait(struct file *filp , wait_queue_head_t *wait_address ,
4872 poll_table *p )
4873{ void (*__cil_tmp4)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
4874
4875 {
4876#line 46
4877 if (p) {
4878#line 46
4879 if (*((void (**)(struct file * , wait_queue_head_t * , struct poll_table_struct * ))p)) {
4880#line 46
4881 if (wait_address) {
4882 {
4883#line 47
4884 __cil_tmp4 = *((void (**)(struct file * , wait_queue_head_t * , struct poll_table_struct * ))p);
4885#line 47
4886 (*__cil_tmp4)(filp, wait_address, p);
4887 }
4888 } else {
4889
4890 }
4891 } else {
4892
4893 }
4894 } else {
4895
4896 }
4897#line 48
4898 return;
4899}
4900}
4901#line 361 "include/linux/moduleparam.h"
4902extern struct kernel_param_ops param_ops_uint ;
4903#line 26 "include/linux/export.h"
4904extern struct module __this_module ;
4905#line 67 "include/linux/module.h"
4906int init_module(void) ;
4907#line 68
4908void cleanup_module(void) ;
4909#line 685 "include/linux/device.h"
4910__inline static char *dev_name(struct device *dev ) __attribute__((__no_instrument_function__)) ;
4911#line 685 "include/linux/device.h"
4912__inline static char *dev_name(struct device *dev )
4913{ char *tmp___7 ;
4914 unsigned long __cil_tmp3 ;
4915 unsigned long __cil_tmp4 ;
4916 unsigned long __cil_tmp5 ;
4917 unsigned long __cil_tmp6 ;
4918 char * __cil_tmp7 ;
4919 unsigned long __cil_tmp8 ;
4920 unsigned long __cil_tmp9 ;
4921 struct kobject *__cil_tmp10 ;
4922
4923 {
4924 {
4925#line 688
4926 __cil_tmp3 = (unsigned long )dev;
4927#line 688
4928 __cil_tmp4 = __cil_tmp3 + 80;
4929#line 688
4930 if (*((char * *)__cil_tmp4)) {
4931 {
4932#line 689
4933 __cil_tmp5 = (unsigned long )dev;
4934#line 689
4935 __cil_tmp6 = __cil_tmp5 + 80;
4936#line 689
4937 __cil_tmp7 = *((char * *)__cil_tmp6);
4938#line 689
4939 return ((char *)__cil_tmp7);
4940 }
4941 } else {
4942
4943 }
4944 }
4945 {
4946#line 691
4947 __cil_tmp8 = (unsigned long )dev;
4948#line 691
4949 __cil_tmp9 = __cil_tmp8 + 16;
4950#line 691
4951 __cil_tmp10 = (struct kobject *)__cil_tmp9;
4952#line 691
4953 tmp___7 = kobject_name(__cil_tmp10);
4954 }
4955#line 691
4956 return (tmp___7);
4957}
4958}
4959#line 694
4960extern int ( dev_set_name)(struct device *dev , char *name
4961 , ...) ;
4962#line 780
4963extern void device_initialize(struct device *dev ) ;
4964#line 781
4965extern int __attribute__((__warn_unused_result__)) device_add(struct device *dev ) ;
4966#line 782
4967extern void device_del(struct device *dev ) ;
4968#line 855
4969extern struct device *get_device(struct device *dev ) ;
4970#line 856
4971extern void put_device(struct device *dev ) ;
4972#line 1459 "include/linux/input.h"
4973__inline static struct input_dev *input_get_device(struct input_dev *dev ) __attribute__((__no_instrument_function__)) ;
4974#line 1459 "include/linux/input.h"
4975__inline static struct input_dev *input_get_device(struct input_dev *dev )
4976{ struct device *__mptr ;
4977 struct device *tmp___7 ;
4978 struct input_dev *tmp___8 ;
4979 unsigned long __cil_tmp5 ;
4980 unsigned long __cil_tmp6 ;
4981 struct device *__cil_tmp7 ;
4982 struct input_dev *__cil_tmp8 ;
4983 unsigned long __cil_tmp9 ;
4984 unsigned long __cil_tmp10 ;
4985 struct device *__cil_tmp11 ;
4986 unsigned int __cil_tmp12 ;
4987 char *__cil_tmp13 ;
4988 char *__cil_tmp14 ;
4989 void *__cil_tmp15 ;
4990
4991 {
4992#line 1461
4993 if (dev) {
4994 {
4995#line 1461
4996 __cil_tmp5 = (unsigned long )dev;
4997#line 1461
4998 __cil_tmp6 = __cil_tmp5 + 648;
4999#line 1461
5000 __cil_tmp7 = (struct device *)__cil_tmp6;
5001#line 1461
5002 tmp___7 = get_device(__cil_tmp7);
5003#line 1461
5004 __mptr = (struct device *)tmp___7;
5005#line 1461
5006 __cil_tmp8 = (struct input_dev *)0;
5007#line 1461
5008 __cil_tmp9 = (unsigned long )__cil_tmp8;
5009#line 1461
5010 __cil_tmp10 = __cil_tmp9 + 648;
5011#line 1461
5012 __cil_tmp11 = (struct device *)__cil_tmp10;
5013#line 1461
5014 __cil_tmp12 = (unsigned int )__cil_tmp11;
5015#line 1461
5016 __cil_tmp13 = (char *)__mptr;
5017#line 1461
5018 __cil_tmp14 = __cil_tmp13 - __cil_tmp12;
5019#line 1461
5020 tmp___8 = (struct input_dev *)__cil_tmp14;
5021 }
5022 } else {
5023#line 1461
5024 __cil_tmp15 = (void *)0;
5025#line 1461
5026 tmp___8 = (struct input_dev *)__cil_tmp15;
5027 }
5028#line 1461
5029 return (tmp___8);
5030}
5031}
5032#line 1464
5033__inline static void input_put_device(struct input_dev *dev ) __attribute__((__no_instrument_function__)) ;
5034#line 1464 "include/linux/input.h"
5035__inline static void input_put_device(struct input_dev *dev )
5036{ unsigned long __cil_tmp2 ;
5037 unsigned long __cil_tmp3 ;
5038 struct device *__cil_tmp4 ;
5039
5040 {
5041#line 1466
5042 if (dev) {
5043 {
5044#line 1467
5045 __cil_tmp2 = (unsigned long )dev;
5046#line 1467
5047 __cil_tmp3 = __cil_tmp2 + 648;
5048#line 1467
5049 __cil_tmp4 = (struct device *)__cil_tmp3;
5050#line 1467
5051 put_device(__cil_tmp4);
5052 }
5053 } else {
5054
5055 }
5056#line 1468
5057 return;
5058}
5059}
5060#line 1485
5061extern int __attribute__((__warn_unused_result__)) input_register_handler(struct input_handler * ) ;
5062#line 1486
5063extern void input_unregister_handler(struct input_handler * ) ;
5064#line 1491
5065extern int input_register_handle(struct input_handle * ) ;
5066#line 1492
5067extern void input_unregister_handle(struct input_handle * ) ;
5068#line 1497
5069extern int input_open_device(struct input_handle * ) ;
5070#line 1498
5071extern void input_close_device(struct input_handle * ) ;
5072#line 1577
5073__inline static int input_abs_get_min(struct input_dev *dev , unsigned int axis ) __attribute__((__no_instrument_function__)) ;
5074#line 1577 "include/linux/input.h"
5075__inline static int input_abs_get_min(struct input_dev *dev , unsigned int axis )
5076{ __s32 tmp___7 ;
5077 unsigned long __cil_tmp4 ;
5078 unsigned long __cil_tmp5 ;
5079 unsigned long __cil_tmp6 ;
5080 unsigned long __cil_tmp7 ;
5081 struct input_absinfo *__cil_tmp8 ;
5082 struct input_absinfo *__cil_tmp9 ;
5083 unsigned long __cil_tmp10 ;
5084 unsigned long __cil_tmp11 ;
5085
5086 {
5087 {
5088#line 1577
5089 __cil_tmp4 = (unsigned long )dev;
5090#line 1577
5091 __cil_tmp5 = __cil_tmp4 + 376;
5092#line 1577
5093 if (*((struct input_absinfo **)__cil_tmp5)) {
5094#line 1577
5095 __cil_tmp6 = (unsigned long )dev;
5096#line 1577
5097 __cil_tmp7 = __cil_tmp6 + 376;
5098#line 1577
5099 __cil_tmp8 = *((struct input_absinfo **)__cil_tmp7);
5100#line 1577
5101 __cil_tmp9 = __cil_tmp8 + axis;
5102#line 1577
5103 __cil_tmp10 = (unsigned long )__cil_tmp9;
5104#line 1577
5105 __cil_tmp11 = __cil_tmp10 + 4;
5106#line 1577
5107 tmp___7 = *((__s32 *)__cil_tmp11);
5108 } else {
5109#line 1577
5110 tmp___7 = 0;
5111 }
5112 }
5113#line 1577
5114 return (tmp___7);
5115}
5116}
5117#line 1578
5118__inline static int input_abs_get_max(struct input_dev *dev , unsigned int axis ) __attribute__((__no_instrument_function__)) ;
5119#line 1578 "include/linux/input.h"
5120__inline static int input_abs_get_max(struct input_dev *dev , unsigned int axis )
5121{ __s32 tmp___7 ;
5122 unsigned long __cil_tmp4 ;
5123 unsigned long __cil_tmp5 ;
5124 unsigned long __cil_tmp6 ;
5125 unsigned long __cil_tmp7 ;
5126 struct input_absinfo *__cil_tmp8 ;
5127 struct input_absinfo *__cil_tmp9 ;
5128 unsigned long __cil_tmp10 ;
5129 unsigned long __cil_tmp11 ;
5130
5131 {
5132 {
5133#line 1578
5134 __cil_tmp4 = (unsigned long )dev;
5135#line 1578
5136 __cil_tmp5 = __cil_tmp4 + 376;
5137#line 1578
5138 if (*((struct input_absinfo **)__cil_tmp5)) {
5139#line 1578
5140 __cil_tmp6 = (unsigned long )dev;
5141#line 1578
5142 __cil_tmp7 = __cil_tmp6 + 376;
5143#line 1578
5144 __cil_tmp8 = *((struct input_absinfo **)__cil_tmp7);
5145#line 1578
5146 __cil_tmp9 = __cil_tmp8 + axis;
5147#line 1578
5148 __cil_tmp10 = (unsigned long )__cil_tmp9;
5149#line 1578
5150 __cil_tmp11 = __cil_tmp10 + 8;
5151#line 1578
5152 tmp___7 = *((__s32 *)__cil_tmp11);
5153 } else {
5154#line 1578
5155 tmp___7 = 0;
5156 }
5157 }
5158#line 1578
5159 return (tmp___7);
5160}
5161}
5162#line 1590
5163extern struct class input_class ;
5164#line 61 "include/linux/miscdevice.h"
5165extern int misc_register(struct miscdevice *misc ) ;
5166#line 62
5167extern int misc_deregister(struct miscdevice *misc ) ;
5168#line 33 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5169static char __mod_author33[39] __attribute__((__used__, __unused__, __section__(".modinfo"),
5170__aligned__(1))) =
5171#line 33 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5172 { (char )'a', (char )'u', (char const )'t', (char const )'h',
5173 (char )'o', (char )'r', (char const )'=', (char const )'V',
5174 (char )'o', (char )'j', (char const )'t', (char const )'e',
5175 (char )'c', (char )'h', (char const )' ', (char const )'P',
5176 (char )'a', (char )'v', (char const )'l', (char const )'i',
5177 (char )'k', (char )' ', (char const )'<', (char const )'v',
5178 (char )'o', (char )'j', (char const )'t', (char const )'e',
5179 (char )'c', (char )'h', (char const )'@', (char const )'u',
5180 (char )'c', (char )'w', (char const )'.', (char const )'c',
5181 (char )'z', (char )'>', (char const )'\000'};
5182#line 34 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5183static char __mod_description34[51] __attribute__((__used__, __unused__,
5184__section__(".modinfo"), __aligned__(1))) =
5185#line 34
5186 { (char )'d', (char )'e', (char const )'s', (char const )'c',
5187 (char )'r', (char )'i', (char const )'p', (char const )'t',
5188 (char )'i', (char )'o', (char const )'n', (char const )'=',
5189 (char )'M', (char )'o', (char const )'u', (char const )'s',
5190 (char )'e', (char )' ', (char const )'(', (char const )'E',
5191 (char )'x', (char )'p', (char const )'l', (char const )'o',
5192 (char )'r', (char )'e', (char const )'r', (char const )'P',
5193 (char )'S', (char )'/', (char const )'2', (char const )')',
5194 (char )' ', (char )'d', (char const )'e', (char const )'v',
5195 (char )'i', (char )'c', (char const )'e', (char const )' ',
5196 (char )'i', (char )'n', (char const )'t', (char const )'e',
5197 (char )'r', (char )'f', (char const )'a', (char const )'c',
5198 (char )'e', (char )'s', (char const )'\000'};
5199#line 35 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5200static char __mod_license35[12] __attribute__((__used__, __unused__, __section__(".modinfo"),
5201__aligned__(1))) =
5202#line 35
5203 { (char )'l', (char )'i', (char const )'c', (char const )'e',
5204 (char )'n', (char )'s', (char const )'e', (char const )'=',
5205 (char )'G', (char )'P', (char const )'L', (char const )'\000'};
5206#line 44 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5207static int xres = 1024;
5208#line 45 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5209static char __param_str_xres[5] = { (char )'x', (char const )'r', (char const )'e', (char const )'s',
5210 (char )'\000'};
5211#line 45 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5212static struct kernel_param __param_xres __attribute__((__used__, __unused__,
5213__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_xres, (struct kernel_param_ops *)(& param_ops_uint), (u16 )420,
5214 (s16 )0, {(void *)(& xres)}};
5215#line 45 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5216static char __mod_xrestype45[19] __attribute__((__used__, __unused__, __section__(".modinfo"),
5217__aligned__(1))) =
5218#line 45
5219 { (char )'p', (char )'a', (char const )'r', (char const )'m',
5220 (char )'t', (char )'y', (char const )'p', (char const )'e',
5221 (char )'=', (char )'x', (char const )'r', (char const )'e',
5222 (char )'s', (char )':', (char const )'u', (char const )'i',
5223 (char )'n', (char )'t', (char const )'\000'};
5224#line 46 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5225static char __mod_xres46[39] __attribute__((__used__, __unused__, __section__(".modinfo"),
5226__aligned__(1))) =
5227#line 46
5228 { (char )'p', (char )'a', (char const )'r', (char const )'m',
5229 (char )'=', (char )'x', (char const )'r', (char const )'e',
5230 (char )'s', (char )':', (char const )'H', (char const )'o',
5231 (char )'r', (char )'i', (char const )'z', (char const )'o',
5232 (char )'n', (char )'t', (char const )'a', (char const )'l',
5233 (char )' ', (char )'s', (char const )'c', (char const )'r',
5234 (char )'e', (char )'e', (char const )'n', (char const )' ',
5235 (char )'r', (char )'e', (char const )'s', (char const )'o',
5236 (char )'l', (char )'u', (char const )'t', (char const )'i',
5237 (char )'o', (char )'n', (char const )'\000'};
5238#line 48 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5239static int yres = 768;
5240#line 49 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5241static char __param_str_yres[5] = { (char )'y', (char const )'r', (char const )'e', (char const )'s',
5242 (char )'\000'};
5243#line 49 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5244static struct kernel_param __param_yres __attribute__((__used__, __unused__,
5245__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_yres, (struct kernel_param_ops *)(& param_ops_uint), (u16 )420,
5246 (s16 )0, {(void *)(& yres)}};
5247#line 49 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5248static char __mod_yrestype49[19] __attribute__((__used__, __unused__, __section__(".modinfo"),
5249__aligned__(1))) =
5250#line 49
5251 { (char )'p', (char )'a', (char const )'r', (char const )'m',
5252 (char )'t', (char )'y', (char const )'p', (char const )'e',
5253 (char )'=', (char )'y', (char const )'r', (char const )'e',
5254 (char )'s', (char )':', (char const )'u', (char const )'i',
5255 (char )'n', (char )'t', (char const )'\000'};
5256#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5257static char __mod_yres50[37] __attribute__((__used__, __unused__, __section__(".modinfo"),
5258__aligned__(1))) =
5259#line 50
5260 { (char )'p', (char )'a', (char const )'r', (char const )'m',
5261 (char )'=', (char )'y', (char const )'r', (char const )'e',
5262 (char )'s', (char )':', (char const )'V', (char const )'e',
5263 (char )'r', (char )'t', (char const )'i', (char const )'c',
5264 (char )'a', (char )'l', (char const )' ', (char const )'s',
5265 (char )'c', (char )'r', (char const )'e', (char const )'e',
5266 (char )'n', (char )' ', (char const )'r', (char const )'e',
5267 (char )'s', (char )'o', (char const )'l', (char const )'u',
5268 (char )'t', (char )'i', (char const )'o', (char const )'n',
5269 (char )'\000'};
5270#line 52 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5271static unsigned int tap_time = 200U;
5272#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5273static char __param_str_tap_time[9] =
5274#line 53
5275 { (char )'t', (char )'a', (char const )'p', (char const )'_',
5276 (char )'t', (char )'i', (char const )'m', (char const )'e',
5277 (char )'\000'};
5278#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5279static struct kernel_param __param_tap_time __attribute__((__used__, __unused__,
5280__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_tap_time, (struct kernel_param_ops *)(& param_ops_uint), (u16 )420,
5281 (s16 )0, {(void *)(& tap_time)}};
5282#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5283static char __mod_tap_timetype53[23] __attribute__((__used__, __unused__,
5284__section__(".modinfo"), __aligned__(1))) =
5285#line 53
5286 { (char )'p', (char )'a', (char const )'r', (char const )'m',
5287 (char )'t', (char )'y', (char const )'p', (char const )'e',
5288 (char )'=', (char )'t', (char const )'a', (char const )'p',
5289 (char )'_', (char )'t', (char const )'i', (char const )'m',
5290 (char )'e', (char )':', (char const )'u', (char const )'i',
5291 (char )'n', (char )'t', (char const )'\000'};
5292#line 54 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5293static char __mod_tap_time54[62] __attribute__((__used__, __unused__, __section__(".modinfo"),
5294__aligned__(1))) =
5295#line 54
5296 { (char )'p', (char )'a', (char const )'r', (char const )'m',
5297 (char )'=', (char )'t', (char const )'a', (char const )'p',
5298 (char )'_', (char )'t', (char const )'i', (char const )'m',
5299 (char )'e', (char )':', (char const )'T', (char const )'a',
5300 (char )'p', (char )' ', (char const )'t', (char const )'i',
5301 (char )'m', (char )'e', (char const )' ', (char const )'f',
5302 (char )'o', (char )'r', (char const )' ', (char const )'t',
5303 (char )'o', (char )'u', (char const )'c', (char const )'h',
5304 (char )'p', (char )'a', (char const )'d', (char const )'s',
5305 (char )' ', (char )'i', (char const )'n', (char const )' ',
5306 (char )'a', (char )'b', (char const )'s', (char const )'o',
5307 (char )'l', (char )'u', (char const )'t', (char const )'e',
5308 (char )' ', (char )'m', (char const )'o', (char const )'d',
5309 (char )'e', (char )' ', (char const )'(', (char const )'m',
5310 (char )'s', (char )'e', (char const )'c', (char const )'s',
5311 (char )')', (char )'\000'};
5312#line 115 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5313static unsigned char mousedev_imps_seq[6] = { (unsigned char)243, (unsigned char)200, (unsigned char)243, (unsigned char)100,
5314 (unsigned char)243, (unsigned char)80};
5315#line 116 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5316static unsigned char mousedev_imex_seq[6] = { (unsigned char)243, (unsigned char)200, (unsigned char)243, (unsigned char)200,
5317 (unsigned char)243, (unsigned char)80};
5318#line 118
5319static struct input_handler mousedev_handler ;
5320#line 120 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5321static struct mousedev *mousedev_table[32] ;
5322#line 121 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5323static struct mutex mousedev_table_mutex = {{1}, {{{{{(__ticketpair_t )0}}, 3735899821U, 4294967295U, (void *)-1L}}}, {& mousedev_table_mutex.wait_list,
5324 & mousedev_table_mutex.wait_list},
5325 (struct task_struct *)0, (char *)0, (void *)(& mousedev_table_mutex)};
5326#line 122 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5327static struct mousedev *mousedev_mix ;
5328#line 123 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5329static struct list_head mousedev_mix_list = {& mousedev_mix_list, & mousedev_mix_list};
5330#line 125
5331static void mixdev_open_devices(void) ;
5332#line 126
5333static void mixdev_close_devices(void) ;
5334#line 131 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5335static void mousedev_touchpad_event(struct input_dev *dev , struct mousedev *mousedev ,
5336 unsigned int code , int value )
5337{ int size ;
5338 int tmp___7 ;
5339 int tmp___8 ;
5340 int tmp___9 ;
5341 int tmp___10 ;
5342 int tmp___11 ;
5343 unsigned long __cil_tmp11 ;
5344 unsigned long __cil_tmp12 ;
5345 unsigned int __cil_tmp13 ;
5346 unsigned int __cil_tmp14 ;
5347 unsigned long __cil_tmp15 ;
5348 unsigned long __cil_tmp16 ;
5349 unsigned long __cil_tmp17 ;
5350 unsigned long __cil_tmp18 ;
5351 unsigned long __cil_tmp19 ;
5352 unsigned long __cil_tmp20 ;
5353 unsigned long __cil_tmp21 ;
5354 unsigned long __cil_tmp22 ;
5355 unsigned int __cil_tmp23 ;
5356 unsigned long __cil_tmp24 ;
5357 unsigned long __cil_tmp25 ;
5358 unsigned int __cil_tmp26 ;
5359 unsigned int __cil_tmp27 ;
5360 unsigned int __cil_tmp28 ;
5361 unsigned long __cil_tmp29 ;
5362 unsigned long __cil_tmp30 ;
5363 unsigned long __cil_tmp31 ;
5364 unsigned long __cil_tmp32 ;
5365 int __cil_tmp33 ;
5366 int __cil_tmp34 ;
5367 int __cil_tmp35 ;
5368 int __cil_tmp36 ;
5369 unsigned long __cil_tmp37 ;
5370 unsigned long __cil_tmp38 ;
5371 int __cil_tmp39 ;
5372 unsigned long __cil_tmp40 ;
5373 unsigned long __cil_tmp41 ;
5374 unsigned long __cil_tmp42 ;
5375 unsigned long __cil_tmp43 ;
5376 unsigned long __cil_tmp44 ;
5377 unsigned long __cil_tmp45 ;
5378 int __cil_tmp46 ;
5379 int __cil_tmp47 ;
5380 unsigned long __cil_tmp48 ;
5381 unsigned long __cil_tmp49 ;
5382 unsigned int __cil_tmp50 ;
5383 unsigned int __cil_tmp51 ;
5384 unsigned long __cil_tmp52 ;
5385 unsigned long __cil_tmp53 ;
5386 unsigned long __cil_tmp54 ;
5387 unsigned long __cil_tmp55 ;
5388 unsigned long __cil_tmp56 ;
5389 unsigned long __cil_tmp57 ;
5390 unsigned long __cil_tmp58 ;
5391 unsigned long __cil_tmp59 ;
5392 unsigned int __cil_tmp60 ;
5393 unsigned long __cil_tmp61 ;
5394 unsigned long __cil_tmp62 ;
5395 unsigned int __cil_tmp63 ;
5396 unsigned int __cil_tmp64 ;
5397 unsigned int __cil_tmp65 ;
5398 unsigned long __cil_tmp66 ;
5399 unsigned long __cil_tmp67 ;
5400 unsigned long __cil_tmp68 ;
5401 unsigned long __cil_tmp69 ;
5402 int __cil_tmp70 ;
5403 int __cil_tmp71 ;
5404 int __cil_tmp72 ;
5405 int __cil_tmp73 ;
5406 int __cil_tmp74 ;
5407 unsigned long __cil_tmp75 ;
5408 unsigned long __cil_tmp76 ;
5409 int __cil_tmp77 ;
5410 unsigned long __cil_tmp78 ;
5411 unsigned long __cil_tmp79 ;
5412 unsigned long __cil_tmp80 ;
5413 unsigned long __cil_tmp81 ;
5414 unsigned long __cil_tmp82 ;
5415 unsigned long __cil_tmp83 ;
5416 unsigned long __cil_tmp84 ;
5417 unsigned long __cil_tmp85 ;
5418 int __cil_tmp86 ;
5419 int __cil_tmp87 ;
5420
5421 {
5422#line 140
5423 if ((int )code == 0) {
5424#line 140
5425 goto case_0;
5426 } else
5427#line 157
5428 if ((int )code == 1) {
5429#line 157
5430 goto case_1;
5431 } else
5432#line 138
5433 if (0) {
5434 case_0:
5435#line 142
5436 __cil_tmp11 = (unsigned long )mousedev;
5437#line 142
5438 __cil_tmp12 = __cil_tmp11 + 1064;
5439#line 142
5440 __cil_tmp13 = *((unsigned int *)__cil_tmp12);
5441#line 142
5442 __cil_tmp14 = __cil_tmp13 & 3U;
5443#line 142
5444 __cil_tmp15 = __cil_tmp14 * 4UL;
5445#line 142
5446 __cil_tmp16 = 1068 + __cil_tmp15;
5447#line 142
5448 __cil_tmp17 = (unsigned long )mousedev;
5449#line 142
5450 __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
5451#line 142
5452 *((int *)__cil_tmp18) = value;
5453 {
5454#line 143
5455 __cil_tmp19 = (unsigned long )mousedev;
5456#line 143
5457 __cil_tmp20 = __cil_tmp19 + 1112;
5458#line 143
5459 if (*((unsigned long *)__cil_tmp20)) {
5460 {
5461#line 143
5462 __cil_tmp21 = (unsigned long )mousedev;
5463#line 143
5464 __cil_tmp22 = __cil_tmp21 + 1064;
5465#line 143
5466 __cil_tmp23 = *((unsigned int *)__cil_tmp22);
5467#line 143
5468 if (__cil_tmp23 >= 2U) {
5469 {
5470#line 144
5471 tmp___8 = input_abs_get_max(dev, 0U);
5472#line 144
5473 tmp___9 = input_abs_get_min(dev, 0U);
5474#line 144
5475 size = tmp___8 - tmp___9;
5476 }
5477#line 146
5478 if (size == 0) {
5479#line 147
5480 size = 512;
5481 } else {
5482
5483 }
5484#line 149
5485 __cil_tmp24 = (unsigned long )mousedev;
5486#line 149
5487 __cil_tmp25 = __cil_tmp24 + 1064;
5488#line 149
5489 __cil_tmp26 = *((unsigned int *)__cil_tmp25);
5490#line 149
5491 __cil_tmp27 = __cil_tmp26 - 2U;
5492#line 149
5493 __cil_tmp28 = __cil_tmp27 & 3U;
5494#line 149
5495 __cil_tmp29 = __cil_tmp28 * 4UL;
5496#line 149
5497 __cil_tmp30 = 1068 + __cil_tmp29;
5498#line 149
5499 __cil_tmp31 = (unsigned long )mousedev;
5500#line 149
5501 __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
5502#line 149
5503 __cil_tmp33 = *((int *)__cil_tmp32);
5504#line 149
5505 __cil_tmp34 = value - __cil_tmp33;
5506#line 149
5507 __cil_tmp35 = __cil_tmp34 * 256;
5508#line 149
5509 __cil_tmp36 = __cil_tmp35 * 128;
5510#line 149
5511 tmp___7 = __cil_tmp36 / size;
5512#line 150
5513 __cil_tmp37 = (unsigned long )mousedev;
5514#line 150
5515 __cil_tmp38 = __cil_tmp37 + 1100;
5516#line 150
5517 __cil_tmp39 = *((int *)__cil_tmp38);
5518#line 150
5519 tmp___7 = tmp___7 + __cil_tmp39;
5520#line 151
5521 __cil_tmp40 = (unsigned long )mousedev;
5522#line 151
5523 __cil_tmp41 = __cil_tmp40 + 1032;
5524#line 151
5525 *((int *)__cil_tmp41) = tmp___7 / 128;
5526#line 152
5527 __cil_tmp42 = (unsigned long )mousedev;
5528#line 152
5529 __cil_tmp43 = __cil_tmp42 + 1100;
5530#line 152
5531 __cil_tmp44 = (unsigned long )mousedev;
5532#line 152
5533 __cil_tmp45 = __cil_tmp44 + 1032;
5534#line 152
5535 __cil_tmp46 = *((int *)__cil_tmp45);
5536#line 152
5537 __cil_tmp47 = __cil_tmp46 * 128;
5538#line 152
5539 *((int *)__cil_tmp43) = tmp___7 - __cil_tmp47;
5540 } else {
5541
5542 }
5543 }
5544 } else {
5545
5546 }
5547 }
5548#line 155
5549 goto switch_break;
5550 case_1:
5551#line 158
5552 __cil_tmp48 = (unsigned long )mousedev;
5553#line 158
5554 __cil_tmp49 = __cil_tmp48 + 1064;
5555#line 158
5556 __cil_tmp50 = *((unsigned int *)__cil_tmp49);
5557#line 158
5558 __cil_tmp51 = __cil_tmp50 & 3U;
5559#line 158
5560 __cil_tmp52 = __cil_tmp51 * 4UL;
5561#line 158
5562 __cil_tmp53 = 1084 + __cil_tmp52;
5563#line 158
5564 __cil_tmp54 = (unsigned long )mousedev;
5565#line 158
5566 __cil_tmp55 = __cil_tmp54 + __cil_tmp53;
5567#line 158
5568 *((int *)__cil_tmp55) = value;
5569 {
5570#line 159
5571 __cil_tmp56 = (unsigned long )mousedev;
5572#line 159
5573 __cil_tmp57 = __cil_tmp56 + 1112;
5574#line 159
5575 if (*((unsigned long *)__cil_tmp57)) {
5576 {
5577#line 159
5578 __cil_tmp58 = (unsigned long )mousedev;
5579#line 159
5580 __cil_tmp59 = __cil_tmp58 + 1064;
5581#line 159
5582 __cil_tmp60 = *((unsigned int *)__cil_tmp59);
5583#line 159
5584 if (__cil_tmp60 >= 2U) {
5585 {
5586#line 161
5587 tmp___10 = input_abs_get_max(dev, 0U);
5588#line 161
5589 tmp___11 = input_abs_get_min(dev, 0U);
5590#line 161
5591 size = tmp___10 - tmp___11;
5592 }
5593#line 163
5594 if (size == 0) {
5595#line 164
5596 size = 512;
5597 } else {
5598
5599 }
5600#line 166
5601 __cil_tmp61 = (unsigned long )mousedev;
5602#line 166
5603 __cil_tmp62 = __cil_tmp61 + 1064;
5604#line 166
5605 __cil_tmp63 = *((unsigned int *)__cil_tmp62);
5606#line 166
5607 __cil_tmp64 = __cil_tmp63 - 2U;
5608#line 166
5609 __cil_tmp65 = __cil_tmp64 & 3U;
5610#line 166
5611 __cil_tmp66 = __cil_tmp65 * 4UL;
5612#line 166
5613 __cil_tmp67 = 1084 + __cil_tmp66;
5614#line 166
5615 __cil_tmp68 = (unsigned long )mousedev;
5616#line 166
5617 __cil_tmp69 = __cil_tmp68 + __cil_tmp67;
5618#line 166
5619 __cil_tmp70 = *((int *)__cil_tmp69);
5620#line 166
5621 __cil_tmp71 = value - __cil_tmp70;
5622#line 166
5623 __cil_tmp72 = __cil_tmp71 * 256;
5624#line 166
5625 __cil_tmp73 = __cil_tmp72 * 128;
5626#line 166
5627 __cil_tmp74 = - __cil_tmp73;
5628#line 166
5629 tmp___7 = __cil_tmp74 / size;
5630#line 167
5631 __cil_tmp75 = (unsigned long )mousedev;
5632#line 167
5633 __cil_tmp76 = __cil_tmp75 + 1104;
5634#line 167
5635 __cil_tmp77 = *((int *)__cil_tmp76);
5636#line 167
5637 tmp___7 = tmp___7 + __cil_tmp77;
5638#line 168
5639 __cil_tmp78 = 1032 + 4;
5640#line 168
5641 __cil_tmp79 = (unsigned long )mousedev;
5642#line 168
5643 __cil_tmp80 = __cil_tmp79 + __cil_tmp78;
5644#line 168
5645 *((int *)__cil_tmp80) = tmp___7 / 128;
5646#line 169
5647 __cil_tmp81 = (unsigned long )mousedev;
5648#line 169
5649 __cil_tmp82 = __cil_tmp81 + 1104;
5650#line 169
5651 __cil_tmp83 = 1032 + 4;
5652#line 169
5653 __cil_tmp84 = (unsigned long )mousedev;
5654#line 169
5655 __cil_tmp85 = __cil_tmp84 + __cil_tmp83;
5656#line 169
5657 __cil_tmp86 = *((int *)__cil_tmp85);
5658#line 169
5659 __cil_tmp87 = __cil_tmp86 * 128;
5660#line 169
5661 *((int *)__cil_tmp82) = tmp___7 - __cil_tmp87;
5662 } else {
5663
5664 }
5665 }
5666 } else {
5667
5668 }
5669 }
5670#line 172
5671 goto switch_break;
5672 } else {
5673 switch_break: ;
5674 }
5675#line 174
5676 return;
5677}
5678}
5679#line 176 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
5680static void mousedev_abs_event(struct input_dev *dev , struct mousedev *mousedev ,
5681 unsigned int code , int value )
5682{ int min ;
5683 int max ;
5684 int size ;
5685 int tmp___7 ;
5686 int __val ;
5687 int __min ;
5688 int __max ;
5689 int tmp___8 ;
5690 int tmp___9 ;
5691 int __val___0 ;
5692 int __min___0 ;
5693 int __max___0 ;
5694 int tmp___10 ;
5695 int *__cil_tmp18 ;
5696 int *__cil_tmp19 ;
5697 int *__cil_tmp20 ;
5698 int *__cil_tmp21 ;
5699 int *__cil_tmp22 ;
5700 int __cil_tmp23 ;
5701 int *__cil_tmp24 ;
5702 int __cil_tmp25 ;
5703 int *__cil_tmp26 ;
5704 int *__cil_tmp27 ;
5705 int *__cil_tmp28 ;
5706 int *__cil_tmp29 ;
5707 int *__cil_tmp30 ;
5708 int __cil_tmp31 ;
5709 int *__cil_tmp32 ;
5710 int __cil_tmp33 ;
5711 int *__cil_tmp34 ;
5712 int *__cil_tmp35 ;
5713 unsigned long __cil_tmp36 ;
5714 unsigned long __cil_tmp37 ;
5715 unsigned long __cil_tmp38 ;
5716 int *__cil_tmp39 ;
5717 int __cil_tmp40 ;
5718 int __cil_tmp41 ;
5719 int __cil_tmp42 ;
5720 unsigned long __cil_tmp43 ;
5721 unsigned long __cil_tmp44 ;
5722 unsigned long __cil_tmp45 ;
5723 int *__cil_tmp46 ;
5724 int *__cil_tmp47 ;
5725 int *__cil_tmp48 ;
5726 int *__cil_tmp49 ;
5727 int *__cil_tmp50 ;
5728 int __cil_tmp51 ;
5729 int *__cil_tmp52 ;
5730 int __cil_tmp53 ;
5731 int *__cil_tmp54 ;
5732 int *__cil_tmp55 ;
5733 int *__cil_tmp56 ;
5734 int *__cil_tmp57 ;
5735 int *__cil_tmp58 ;
5736 int __cil_tmp59 ;
5737 int *__cil_tmp60 ;
5738 int __cil_tmp61 ;
5739 int *__cil_tmp62 ;
5740 int *__cil_tmp63 ;
5741 unsigned long __cil_tmp64 ;
5742 unsigned long __cil_tmp65 ;
5743 unsigned long __cil_tmp66 ;
5744 int *__cil_tmp67 ;
5745 int __cil_tmp68 ;
5746 int __cil_tmp69 ;
5747 int __cil_tmp70 ;
5748 int __cil_tmp71 ;
5749 int *__cil_tmp72 ;
5750 int __cil_tmp73 ;
5751 unsigned long __cil_tmp74 ;
5752 unsigned long __cil_tmp75 ;
5753 unsigned long __cil_tmp76 ;
5754
5755 {
5756#line 183
5757 if ((int )code == 0) {
5758#line 183
5759 goto case_0;
5760 } else
5761#line 197
5762 if ((int )code == 1) {
5763#line 197
5764 goto case_1;
5765 } else
5766#line 181
5767 if (0) {
5768 case_0:
5769 {
5770#line 184
5771 min = input_abs_get_min(dev, 0U);
5772#line 185
5773 max = input_abs_get_max(dev, 0U);
5774#line 187
5775 size = max - min;
5776 }
5777#line 188
5778 if (size == 0) {
5779#line 189
5780 __cil_tmp18 = & xres;
5781#line 189
5782 tmp___7 = *__cil_tmp18;
5783#line 189
5784 if (tmp___7) {
5785
5786 } else {
5787#line 189
5788 tmp___7 = 1;
5789 }
5790#line 189
5791 size = tmp___7;
5792 } else {
5793
5794 }
5795#line 191
5796 __cil_tmp19 = & __val;
5797#line 191
5798 *__cil_tmp19 = value;
5799#line 191
5800 __cil_tmp20 = & __min;
5801#line 191
5802 *__cil_tmp20 = min;
5803#line 191
5804 __cil_tmp21 = & __max;
5805#line 191
5806 *__cil_tmp21 = max;
5807 {
5808#line 191
5809 __cil_tmp22 = & __min;
5810#line 191
5811 __cil_tmp23 = *__cil_tmp22;
5812#line 191
5813 __cil_tmp24 = & __val;
5814#line 191
5815 __cil_tmp25 = *__cil_tmp24;
5816#line 191
5817 if (__cil_tmp25 < __cil_tmp23) {
5818#line 191
5819 __cil_tmp26 = & __val;
5820#line 191
5821 __cil_tmp27 = & __min;
5822#line 191
5823 *__cil_tmp26 = *__cil_tmp27;
5824 } else {
5825#line 191
5826 __cil_tmp28 = & __val;
5827#line 191
5828 __cil_tmp29 = & __val;
5829#line 191
5830 *__cil_tmp28 = *__cil_tmp29;
5831 }
5832 }
5833 {
5834#line 191
5835 __cil_tmp30 = & __max;
5836#line 191
5837 __cil_tmp31 = *__cil_tmp30;
5838#line 191
5839 __cil_tmp32 = & __val;
5840#line 191
5841 __cil_tmp33 = *__cil_tmp32;
5842#line 191
5843 if (__cil_tmp33 > __cil_tmp31) {
5844#line 191
5845 __cil_tmp34 = & __max;
5846#line 191
5847 tmp___8 = *__cil_tmp34;
5848 } else {
5849#line 191
5850 __cil_tmp35 = & __val;
5851#line 191
5852 tmp___8 = *__cil_tmp35;
5853 }
5854 }
5855#line 191
5856 value = tmp___8;
5857#line 193
5858 __cil_tmp36 = 1032 + 12;
5859#line 193
5860 __cil_tmp37 = (unsigned long )mousedev;
5861#line 193
5862 __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
5863#line 193
5864 __cil_tmp39 = & xres;
5865#line 193
5866 __cil_tmp40 = *__cil_tmp39;
5867#line 193
5868 __cil_tmp41 = value - min;
5869#line 193
5870 __cil_tmp42 = __cil_tmp41 * __cil_tmp40;
5871#line 193
5872 *((int *)__cil_tmp38) = __cil_tmp42 / size;
5873#line 194
5874 __cil_tmp43 = 1032 + 20;
5875#line 194
5876 __cil_tmp44 = (unsigned long )mousedev;
5877#line 194
5878 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
5879#line 194
5880 *((int *)__cil_tmp45) = 1;
5881#line 195
5882 goto switch_break;
5883 case_1:
5884 {
5885#line 198
5886 min = input_abs_get_min(dev, 1U);
5887#line 199
5888 max = input_abs_get_max(dev, 1U);
5889#line 201
5890 size = max - min;
5891 }
5892#line 202
5893 if (size == 0) {
5894#line 203
5895 __cil_tmp46 = & yres;
5896#line 203
5897 tmp___9 = *__cil_tmp46;
5898#line 203
5899 if (tmp___9) {
5900
5901 } else {
5902#line 203
5903 tmp___9 = 1;
5904 }
5905#line 203
5906 size = tmp___9;
5907 } else {
5908
5909 }
5910#line 205
5911 __cil_tmp47 = & __val___0;
5912#line 205
5913 *__cil_tmp47 = value;
5914#line 205
5915 __cil_tmp48 = & __min___0;
5916#line 205
5917 *__cil_tmp48 = min;
5918#line 205
5919 __cil_tmp49 = & __max___0;
5920#line 205
5921 *__cil_tmp49 = max;
5922 {
5923#line 205
5924 __cil_tmp50 = & __min___0;
5925#line 205
5926 __cil_tmp51 = *__cil_tmp50;
5927#line 205
5928 __cil_tmp52 = & __val___0;
5929#line 205
5930 __cil_tmp53 = *__cil_tmp52;
5931#line 205
5932 if (__cil_tmp53 < __cil_tmp51) {
5933#line 205
5934 __cil_tmp54 = & __val___0;
5935#line 205
5936 __cil_tmp55 = & __min___0;
5937#line 205
5938 *__cil_tmp54 = *__cil_tmp55;
5939 } else {
5940#line 205
5941 __cil_tmp56 = & __val___0;
5942#line 205
5943 __cil_tmp57 = & __val___0;
5944#line 205
5945 *__cil_tmp56 = *__cil_tmp57;
5946 }
5947 }
5948 {
5949#line 205
5950 __cil_tmp58 = & __max___0;
5951#line 205
5952 __cil_tmp59 = *__cil_tmp58;
5953#line 205
5954 __cil_tmp60 = & __val___0;
5955#line 205
5956 __cil_tmp61 = *__cil_tmp60;
5957#line 205
5958 if (__cil_tmp61 > __cil_tmp59) {
5959#line 205
5960 __cil_tmp62 = & __max___0;
5961#line 205
5962 tmp___10 = *__cil_tmp62;
5963 } else {
5964#line 205
5965 __cil_tmp63 = & __val___0;
5966#line 205
5967 tmp___10 = *__cil_tmp63;
5968 }
5969 }
5970#line 205
5971 value = tmp___10;
5972#line 207
5973 __cil_tmp64 = 1032 + 16;
5974#line 207
5975 __cil_tmp65 = (unsigned long )mousedev;
5976#line 207
5977 __cil_tmp66 = __cil_tmp65 + __cil_tmp64;
5978#line 207
5979 __cil_tmp67 = & yres;
5980#line 207
5981 __cil_tmp68 = *__cil_tmp67;
5982#line 207
5983 __cil_tmp69 = value - min;
5984#line 207
5985 __cil_tmp70 = __cil_tmp69 * __cil_tmp68;
5986#line 207
5987 __cil_tmp71 = __cil_tmp70 / size;
5988#line 207
5989 __cil_tmp72 = & yres;
5990#line 207
5991 __cil_tmp73 = *__cil_tmp72;
5992#line 207
5993 *((int *)__cil_tmp66) = __cil_tmp73 - __cil_tmp71;
5994#line 208
5995 __cil_tmp74 = 1032 + 20;
5996#line 208
5997 __cil_tmp75 = (unsigned long )mousedev;
5998#line 208
5999 __cil_tmp76 = __cil_tmp75 + __cil_tmp74;
6000#line 208
6001 *((int *)__cil_tmp76) = 1;
6002#line 209
6003 goto switch_break;
6004 } else {
6005 switch_break: ;
6006 }
6007#line 211
6008 return;
6009}
6010}
6011#line 213 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
6012static void mousedev_rel_event(struct mousedev *mousedev , unsigned int code , int value )
6013{ unsigned long __cil_tmp4 ;
6014 unsigned long __cil_tmp5 ;
6015 unsigned long __cil_tmp6 ;
6016 unsigned long __cil_tmp7 ;
6017 int __cil_tmp8 ;
6018 unsigned long __cil_tmp9 ;
6019 unsigned long __cil_tmp10 ;
6020 unsigned long __cil_tmp11 ;
6021 unsigned long __cil_tmp12 ;
6022 unsigned long __cil_tmp13 ;
6023 unsigned long __cil_tmp14 ;
6024 int __cil_tmp15 ;
6025 unsigned long __cil_tmp16 ;
6026 unsigned long __cil_tmp17 ;
6027 unsigned long __cil_tmp18 ;
6028 unsigned long __cil_tmp19 ;
6029 unsigned long __cil_tmp20 ;
6030 unsigned long __cil_tmp21 ;
6031 int __cil_tmp22 ;
6032
6033 {
6034#line 217
6035 if ((int )code == 0) {
6036#line 217
6037 goto case_0;
6038 } else
6039#line 221
6040 if ((int )code == 1) {
6041#line 221
6042 goto case_1;
6043 } else
6044#line 225
6045 if ((int )code == 8) {
6046#line 225
6047 goto case_8;
6048 } else
6049#line 216
6050 if (0) {
6051 case_0:
6052#line 218
6053 __cil_tmp4 = (unsigned long )mousedev;
6054#line 218
6055 __cil_tmp5 = __cil_tmp4 + 1032;
6056#line 218
6057 __cil_tmp6 = (unsigned long )mousedev;
6058#line 218
6059 __cil_tmp7 = __cil_tmp6 + 1032;
6060#line 218
6061 __cil_tmp8 = *((int *)__cil_tmp7);
6062#line 218
6063 *((int *)__cil_tmp5) = __cil_tmp8 + value;
6064#line 219
6065 goto switch_break;
6066 case_1:
6067#line 222
6068 __cil_tmp9 = 1032 + 4;
6069#line 222
6070 __cil_tmp10 = (unsigned long )mousedev;
6071#line 222
6072 __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
6073#line 222
6074 __cil_tmp12 = 1032 + 4;
6075#line 222
6076 __cil_tmp13 = (unsigned long )mousedev;
6077#line 222
6078 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
6079#line 222
6080 __cil_tmp15 = *((int *)__cil_tmp14);
6081#line 222
6082 *((int *)__cil_tmp11) = __cil_tmp15 - value;
6083#line 223
6084 goto switch_break;
6085 case_8:
6086#line 226
6087 __cil_tmp16 = 1032 + 8;
6088#line 226
6089 __cil_tmp17 = (unsigned long )mousedev;
6090#line 226
6091 __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
6092#line 226
6093 __cil_tmp19 = 1032 + 8;
6094#line 226
6095 __cil_tmp20 = (unsigned long )mousedev;
6096#line 226
6097 __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
6098#line 226
6099 __cil_tmp22 = *((int *)__cil_tmp21);
6100#line 226
6101 *((int *)__cil_tmp18) = __cil_tmp22 - value;
6102#line 227
6103 goto switch_break;
6104 } else {
6105 switch_break: ;
6106 }
6107#line 229
6108 return;
6109}
6110}
6111#line 231 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
6112static void mousedev_key_event(struct mousedev *mousedev , unsigned int code , int value )
6113{ int index ;
6114 unsigned int __cil_tmp5 ;
6115 unsigned long __cil_tmp6 ;
6116 unsigned long __cil_tmp7 ;
6117 unsigned long __cil_tmp8 ;
6118 unsigned long *__cil_tmp9 ;
6119 unsigned long volatile *__cil_tmp10 ;
6120 unsigned int __cil_tmp11 ;
6121 unsigned long __cil_tmp12 ;
6122 unsigned long __cil_tmp13 ;
6123 unsigned long __cil_tmp14 ;
6124 unsigned long *__cil_tmp15 ;
6125 unsigned long volatile *__cil_tmp16 ;
6126 unsigned long __cil_tmp17 ;
6127 unsigned long __cil_tmp18 ;
6128 unsigned long __cil_tmp19 ;
6129 unsigned long *__cil_tmp20 ;
6130 unsigned long volatile *__cil_tmp21 ;
6131 unsigned long __cil_tmp22 ;
6132 unsigned long __cil_tmp23 ;
6133 unsigned long __cil_tmp24 ;
6134 unsigned long *__cil_tmp25 ;
6135 unsigned long volatile *__cil_tmp26 ;
6136
6137 {
6138#line 238
6139 if ((int )code == 330) {
6140#line 238
6141 goto case_330;
6142 } else
6143#line 239
6144 if ((int )code == 256) {
6145#line 239
6146 goto case_330;
6147 } else
6148#line 240
6149 if ((int )code == 272) {
6150#line 240
6151 goto case_330;
6152 } else
6153#line 242
6154 if ((int )code == 331) {
6155#line 242
6156 goto case_331;
6157 } else
6158#line 243
6159 if ((int )code == 257) {
6160#line 243
6161 goto case_331;
6162 } else
6163#line 244
6164 if ((int )code == 273) {
6165#line 244
6166 goto case_331;
6167 } else
6168#line 246
6169 if ((int )code == 258) {
6170#line 246
6171 goto case_258;
6172 } else
6173#line 247
6174 if ((int )code == 277) {
6175#line 247
6176 goto case_258;
6177 } else
6178#line 248
6179 if ((int )code == 332) {
6180#line 248
6181 goto case_258;
6182 } else
6183#line 249
6184 if ((int )code == 274) {
6185#line 249
6186 goto case_258;
6187 } else
6188#line 251
6189 if ((int )code == 259) {
6190#line 251
6191 goto case_259;
6192 } else
6193#line 252
6194 if ((int )code == 278) {
6195#line 252
6196 goto case_259;
6197 } else
6198#line 253
6199 if ((int )code == 275) {
6200#line 253
6201 goto case_259;
6202 } else
6203#line 255
6204 if ((int )code == 260) {
6205#line 255
6206 goto case_260;
6207 } else
6208#line 256
6209 if ((int )code == 276) {
6210#line 256
6211 goto case_260;
6212 } else {
6213 {
6214#line 258
6215 goto switch_default;
6216#line 236
6217 if (0) {
6218 case_330:
6219 case_256:
6220 case_272:
6221#line 240
6222 index = 0;
6223#line 240
6224 goto switch_break;
6225 case_331:
6226 case_257:
6227 case_273:
6228#line 244
6229 index = 1;
6230#line 244
6231 goto switch_break;
6232 case_258:
6233 case_277:
6234 case_332:
6235 case_274:
6236#line 249
6237 index = 2;
6238#line 249
6239 goto switch_break;
6240 case_259:
6241 case_278:
6242 case_275:
6243#line 253
6244 index = 3;
6245#line 253
6246 goto switch_break;
6247 case_260:
6248 case_276:
6249#line 256
6250 index = 4;
6251#line 256
6252 goto switch_break;
6253 switch_default:
6254#line 258
6255 return;
6256 } else {
6257 switch_break: ;
6258 }
6259 }
6260 }
6261#line 261
6262 if (value) {
6263 {
6264#line 262
6265 __cil_tmp5 = (unsigned int )index;
6266#line 262
6267 __cil_tmp6 = 1032 + 24;
6268#line 262
6269 __cil_tmp7 = (unsigned long )mousedev;
6270#line 262
6271 __cil_tmp8 = __cil_tmp7 + __cil_tmp6;
6272#line 262
6273 __cil_tmp9 = (unsigned long *)__cil_tmp8;
6274#line 262
6275 __cil_tmp10 = (unsigned long volatile *)__cil_tmp9;
6276#line 262
6277 set_bit(__cil_tmp5, __cil_tmp10);
6278#line 263
6279 __cil_tmp11 = (unsigned int )index;
6280#line 263
6281 __cil_tmp12 = 1032 + 24;
6282#line 263
6283 __cil_tmp13 = (unsigned long )mousedev_mix;
6284#line 263
6285 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
6286#line 263
6287 __cil_tmp15 = (unsigned long *)__cil_tmp14;
6288#line 263
6289 __cil_tmp16 = (unsigned long volatile *)__cil_tmp15;
6290#line 263
6291 set_bit(__cil_tmp11, __cil_tmp16);
6292 }
6293 } else {
6294 {
6295#line 265
6296 __cil_tmp17 = 1032 + 24;
6297#line 265
6298 __cil_tmp18 = (unsigned long )mousedev;
6299#line 265
6300 __cil_tmp19 = __cil_tmp18 + __cil_tmp17;
6301#line 265
6302 __cil_tmp20 = (unsigned long *)__cil_tmp19;
6303#line 265
6304 __cil_tmp21 = (unsigned long volatile *)__cil_tmp20;
6305#line 265
6306 clear_bit(index, __cil_tmp21);
6307#line 266
6308 __cil_tmp22 = 1032 + 24;
6309#line 266
6310 __cil_tmp23 = (unsigned long )mousedev_mix;
6311#line 266
6312 __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
6313#line 266
6314 __cil_tmp25 = (unsigned long *)__cil_tmp24;
6315#line 266
6316 __cil_tmp26 = (unsigned long volatile *)__cil_tmp25;
6317#line 266
6318 clear_bit(index, __cil_tmp26);
6319 }
6320 }
6321#line 268
6322 return;
6323}
6324}
6325#line 270 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
6326static void mousedev_notify_readers(struct mousedev *mousedev , struct mousedev_hw_data *packet )
6327{ struct mousedev_client *client ;
6328 struct mousedev_motion *p ;
6329 unsigned int new_head ;
6330 int wake_readers ;
6331 struct list_head *__ptr ;
6332 struct list_head *__mptr ;
6333 struct list_head *_________p1 ;
6334 struct list_head *__ptr___0 ;
6335 struct list_head *__mptr___0 ;
6336 struct list_head *_________p1___0 ;
6337 unsigned int tmp___7 ;
6338 int tmp___8 ;
6339 int tmp___9 ;
6340 struct list_head **__cil_tmp16 ;
6341 unsigned long __cil_tmp17 ;
6342 unsigned long __cil_tmp18 ;
6343 struct list_head * volatile *__cil_tmp19 ;
6344 struct list_head * volatile __cil_tmp20 ;
6345 struct mousedev_client *__cil_tmp21 ;
6346 unsigned long __cil_tmp22 ;
6347 unsigned long __cil_tmp23 ;
6348 struct list_head *__cil_tmp24 ;
6349 unsigned int __cil_tmp25 ;
6350 char *__cil_tmp26 ;
6351 char *__cil_tmp27 ;
6352 unsigned long __cil_tmp28 ;
6353 unsigned long __cil_tmp29 ;
6354 struct list_head *__cil_tmp30 ;
6355 unsigned long __cil_tmp31 ;
6356 unsigned long __cil_tmp32 ;
6357 unsigned long __cil_tmp33 ;
6358 struct list_head *__cil_tmp34 ;
6359 unsigned long __cil_tmp35 ;
6360 unsigned long __cil_tmp36 ;
6361 unsigned long __cil_tmp37 ;
6362 spinlock_t *__cil_tmp38 ;
6363 unsigned long __cil_tmp39 ;
6364 unsigned long __cil_tmp40 ;
6365 unsigned int __cil_tmp41 ;
6366 unsigned long __cil_tmp42 ;
6367 unsigned long __cil_tmp43 ;
6368 unsigned long __cil_tmp44 ;
6369 unsigned long __cil_tmp45 ;
6370 unsigned long __cil_tmp46 ;
6371 unsigned long __cil_tmp47 ;
6372 unsigned long __cil_tmp48 ;
6373 unsigned long __cil_tmp49 ;
6374 unsigned long __cil_tmp50 ;
6375 unsigned long __cil_tmp51 ;
6376 unsigned long __cil_tmp52 ;
6377 unsigned long __cil_tmp53 ;
6378 unsigned long __cil_tmp54 ;
6379 unsigned long __cil_tmp55 ;
6380 unsigned long __cil_tmp56 ;
6381 unsigned int __cil_tmp57 ;
6382 unsigned int __cil_tmp58 ;
6383 unsigned long __cil_tmp59 ;
6384 unsigned long __cil_tmp60 ;
6385 unsigned int __cil_tmp61 ;
6386 unsigned long __cil_tmp62 ;
6387 unsigned long __cil_tmp63 ;
6388 unsigned long __cil_tmp64 ;
6389 unsigned long __cil_tmp65 ;
6390 unsigned long __cil_tmp66 ;
6391 unsigned long __cil_tmp67 ;
6392 void *__cil_tmp68 ;
6393 unsigned long __cil_tmp69 ;
6394 unsigned long __cil_tmp70 ;
6395 unsigned long __cil_tmp71 ;
6396 unsigned long __cil_tmp72 ;
6397 int __cil_tmp73 ;
6398 unsigned long __cil_tmp74 ;
6399 unsigned long __cil_tmp75 ;
6400 int __cil_tmp76 ;
6401 int __cil_tmp77 ;
6402 int __cil_tmp78 ;
6403 unsigned long __cil_tmp79 ;
6404 unsigned long __cil_tmp80 ;
6405 unsigned long __cil_tmp81 ;
6406 unsigned long __cil_tmp82 ;
6407 int __cil_tmp83 ;
6408 unsigned long __cil_tmp84 ;
6409 unsigned long __cil_tmp85 ;
6410 int __cil_tmp86 ;
6411 int __cil_tmp87 ;
6412 unsigned long __cil_tmp88 ;
6413 unsigned long __cil_tmp89 ;
6414 int __cil_tmp90 ;
6415 unsigned long __cil_tmp91 ;
6416 unsigned long __cil_tmp92 ;
6417 unsigned long __cil_tmp93 ;
6418 unsigned long __cil_tmp94 ;
6419 unsigned long __cil_tmp95 ;
6420 unsigned long __cil_tmp96 ;
6421 unsigned long __cil_tmp97 ;
6422 unsigned long __cil_tmp98 ;
6423 unsigned long __cil_tmp99 ;
6424 unsigned long __cil_tmp100 ;
6425 int __cil_tmp101 ;
6426 unsigned long __cil_tmp102 ;
6427 unsigned long __cil_tmp103 ;
6428 int __cil_tmp104 ;
6429 unsigned long __cil_tmp105 ;
6430 unsigned long __cil_tmp106 ;
6431 int __cil_tmp107 ;
6432 unsigned long __cil_tmp108 ;
6433 unsigned long __cil_tmp109 ;
6434 int *__cil_tmp110 ;
6435 int __cil_tmp111 ;
6436 unsigned long __cil_tmp112 ;
6437 unsigned long __cil_tmp113 ;
6438 int __cil_tmp114 ;
6439 int *__cil_tmp115 ;
6440 unsigned long __cil_tmp116 ;
6441 unsigned long __cil_tmp117 ;
6442 unsigned long __cil_tmp118 ;
6443 unsigned long __cil_tmp119 ;
6444 unsigned long __cil_tmp120 ;
6445 unsigned long __cil_tmp121 ;
6446 unsigned long __cil_tmp122 ;
6447 unsigned long __cil_tmp123 ;
6448 int __cil_tmp124 ;
6449 unsigned long __cil_tmp125 ;
6450 unsigned long __cil_tmp126 ;
6451 int __cil_tmp127 ;
6452 unsigned long __cil_tmp128 ;
6453 unsigned long __cil_tmp129 ;
6454 int __cil_tmp130 ;
6455 unsigned long __cil_tmp131 ;
6456 unsigned long __cil_tmp132 ;
6457 int *__cil_tmp133 ;
6458 int __cil_tmp134 ;
6459 unsigned long __cil_tmp135 ;
6460 unsigned long __cil_tmp136 ;
6461 int __cil_tmp137 ;
6462 int *__cil_tmp138 ;
6463 unsigned long __cil_tmp139 ;
6464 unsigned long __cil_tmp140 ;
6465 unsigned long __cil_tmp141 ;
6466 unsigned long __cil_tmp142 ;
6467 int __cil_tmp143 ;
6468 int __cil_tmp144 ;
6469 unsigned long __cil_tmp145 ;
6470 unsigned long __cil_tmp146 ;
6471 unsigned long __cil_tmp147 ;
6472 unsigned long __cil_tmp148 ;
6473 int __cil_tmp149 ;
6474 unsigned long __cil_tmp150 ;
6475 unsigned long __cil_tmp151 ;
6476 int __cil_tmp152 ;
6477 unsigned long __cil_tmp153 ;
6478 unsigned long __cil_tmp154 ;
6479 unsigned long __cil_tmp155 ;
6480 unsigned long __cil_tmp156 ;
6481 int __cil_tmp157 ;
6482 unsigned long __cil_tmp158 ;
6483 unsigned long __cil_tmp159 ;
6484 int __cil_tmp160 ;
6485 unsigned long __cil_tmp161 ;
6486 unsigned long __cil_tmp162 ;
6487 unsigned long __cil_tmp163 ;
6488 unsigned long __cil_tmp164 ;
6489 unsigned long __cil_tmp165 ;
6490 unsigned long __cil_tmp166 ;
6491 unsigned long __cil_tmp167 ;
6492 unsigned long __cil_tmp168 ;
6493 unsigned long __cil_tmp169 ;
6494 unsigned long __cil_tmp170 ;
6495 unsigned long __cil_tmp171 ;
6496 unsigned long __cil_tmp172 ;
6497 unsigned long __cil_tmp173 ;
6498 unsigned long __cil_tmp174 ;
6499 unsigned long __cil_tmp175 ;
6500 unsigned long __cil_tmp176 ;
6501 unsigned long __cil_tmp177 ;
6502 unsigned long __cil_tmp178 ;
6503 unsigned long __cil_tmp179 ;
6504 unsigned long __cil_tmp180 ;
6505 unsigned long __cil_tmp181 ;
6506 unsigned long __cil_tmp182 ;
6507 unsigned long __cil_tmp183 ;
6508 unsigned long __cil_tmp184 ;
6509 unsigned long __cil_tmp185 ;
6510 spinlock_t *__cil_tmp186 ;
6511 unsigned long __cil_tmp187 ;
6512 unsigned long __cil_tmp188 ;
6513 struct fasync_struct **__cil_tmp189 ;
6514 int __cil_tmp190 ;
6515 int __cil_tmp191 ;
6516 struct list_head **__cil_tmp192 ;
6517 unsigned long __cil_tmp193 ;
6518 unsigned long __cil_tmp194 ;
6519 struct list_head * volatile *__cil_tmp195 ;
6520 struct list_head * volatile __cil_tmp196 ;
6521 struct mousedev_client *__cil_tmp197 ;
6522 unsigned long __cil_tmp198 ;
6523 unsigned long __cil_tmp199 ;
6524 struct list_head *__cil_tmp200 ;
6525 unsigned int __cil_tmp201 ;
6526 char *__cil_tmp202 ;
6527 char *__cil_tmp203 ;
6528 unsigned long __cil_tmp204 ;
6529 unsigned long __cil_tmp205 ;
6530 wait_queue_head_t *__cil_tmp206 ;
6531 void *__cil_tmp207 ;
6532
6533 {
6534 {
6535#line 276
6536 wake_readers = 0;
6537#line 278
6538 rcu_read_lock();
6539#line 279
6540 __cil_tmp16 = & __ptr;
6541#line 279
6542 __cil_tmp17 = (unsigned long )mousedev;
6543#line 279
6544 __cil_tmp18 = __cil_tmp17 + 120;
6545#line 279
6546 *__cil_tmp16 = *((struct list_head **)__cil_tmp18);
6547#line 279
6548 __cil_tmp19 = (struct list_head * volatile *)(& __ptr);
6549#line 279
6550 __cil_tmp20 = *__cil_tmp19;
6551#line 279
6552 _________p1 = (struct list_head *)__cil_tmp20;
6553 }
6554 {
6555#line 279
6556 while (1) {
6557 while_continue: ;
6558#line 279
6559 goto while_break;
6560 }
6561 while_break: ;
6562 }
6563 {
6564#line 279
6565 while (1) {
6566 while_continue___0: ;
6567#line 279
6568 goto while_break___0;
6569 }
6570 while_break___0: ;
6571 }
6572#line 279
6573 __mptr = (struct list_head *)_________p1;
6574#line 279
6575 __cil_tmp21 = (struct mousedev_client *)0;
6576#line 279
6577 __cil_tmp22 = (unsigned long )__cil_tmp21;
6578#line 279
6579 __cil_tmp23 = __cil_tmp22 + 16;
6580#line 279
6581 __cil_tmp24 = (struct list_head *)__cil_tmp23;
6582#line 279
6583 __cil_tmp25 = (unsigned int )__cil_tmp24;
6584#line 279
6585 __cil_tmp26 = (char *)__mptr;
6586#line 279
6587 __cil_tmp27 = __cil_tmp26 - __cil_tmp25;
6588#line 279
6589 client = (struct mousedev_client *)__cil_tmp27;
6590 {
6591#line 279
6592 while (1) {
6593 while_continue___1: ;
6594 {
6595#line 279
6596 __cil_tmp28 = (unsigned long )mousedev;
6597#line 279
6598 __cil_tmp29 = __cil_tmp28 + 120;
6599#line 279
6600 __cil_tmp30 = (struct list_head *)__cil_tmp29;
6601#line 279
6602 __cil_tmp31 = (unsigned long )__cil_tmp30;
6603#line 279
6604 __cil_tmp32 = (unsigned long )client;
6605#line 279
6606 __cil_tmp33 = __cil_tmp32 + 16;
6607#line 279
6608 __cil_tmp34 = (struct list_head *)__cil_tmp33;
6609#line 279
6610 __cil_tmp35 = (unsigned long )__cil_tmp34;
6611#line 279
6612 if (__cil_tmp35 != __cil_tmp31) {
6613
6614 } else {
6615#line 279
6616 goto while_break___1;
6617 }
6618 }
6619 {
6620#line 282
6621 __cil_tmp36 = (unsigned long )client;
6622#line 282
6623 __cil_tmp37 = __cil_tmp36 + 424;
6624#line 282
6625 __cil_tmp38 = (spinlock_t *)__cil_tmp37;
6626#line 282
6627 spin_lock(__cil_tmp38);
6628#line 284
6629 __cil_tmp39 = (unsigned long )client;
6630#line 284
6631 __cil_tmp40 = __cil_tmp39 + 416;
6632#line 284
6633 __cil_tmp41 = *((unsigned int *)__cil_tmp40);
6634#line 284
6635 __cil_tmp42 = __cil_tmp41 * 24UL;
6636#line 284
6637 __cil_tmp43 = 32 + __cil_tmp42;
6638#line 284
6639 __cil_tmp44 = (unsigned long )client;
6640#line 284
6641 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
6642#line 284
6643 p = (struct mousedev_motion *)__cil_tmp45;
6644 }
6645 {
6646#line 285
6647 __cil_tmp46 = (unsigned long )client;
6648#line 285
6649 __cil_tmp47 = __cil_tmp46 + 462;
6650#line 285
6651 if (*((unsigned char *)__cil_tmp47)) {
6652 {
6653#line 285
6654 __cil_tmp48 = 1032 + 24;
6655#line 285
6656 __cil_tmp49 = (unsigned long )mousedev;
6657#line 285
6658 __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
6659#line 285
6660 __cil_tmp51 = *((unsigned long *)__cil_tmp50);
6661#line 285
6662 __cil_tmp52 = (unsigned long )p;
6663#line 285
6664 __cil_tmp53 = __cil_tmp52 + 16;
6665#line 285
6666 __cil_tmp54 = *((unsigned long *)__cil_tmp53);
6667#line 285
6668 if (__cil_tmp54 != __cil_tmp51) {
6669#line 286
6670 __cil_tmp55 = (unsigned long )client;
6671#line 286
6672 __cil_tmp56 = __cil_tmp55 + 416;
6673#line 286
6674 __cil_tmp57 = *((unsigned int *)__cil_tmp56);
6675#line 286
6676 __cil_tmp58 = __cil_tmp57 + 1U;
6677#line 286
6678 new_head = __cil_tmp58 % 16U;
6679 {
6680#line 287
6681 __cil_tmp59 = (unsigned long )client;
6682#line 287
6683 __cil_tmp60 = __cil_tmp59 + 420;
6684#line 287
6685 __cil_tmp61 = *((unsigned int *)__cil_tmp60);
6686#line 287
6687 if (new_head != __cil_tmp61) {
6688 {
6689#line 288
6690 tmp___7 = new_head;
6691#line 288
6692 __cil_tmp62 = (unsigned long )client;
6693#line 288
6694 __cil_tmp63 = __cil_tmp62 + 416;
6695#line 288
6696 *((unsigned int *)__cil_tmp63) = tmp___7;
6697#line 288
6698 __cil_tmp64 = tmp___7 * 24UL;
6699#line 288
6700 __cil_tmp65 = 32 + __cil_tmp64;
6701#line 288
6702 __cil_tmp66 = (unsigned long )client;
6703#line 288
6704 __cil_tmp67 = __cil_tmp66 + __cil_tmp65;
6705#line 288
6706 p = (struct mousedev_motion *)__cil_tmp67;
6707#line 289
6708 __cil_tmp68 = (void *)p;
6709#line 289
6710 memset(__cil_tmp68, 0, 24UL);
6711 }
6712 } else {
6713
6714 }
6715 }
6716 } else {
6717
6718 }
6719 }
6720 } else {
6721
6722 }
6723 }
6724 {
6725#line 293
6726 __cil_tmp69 = (unsigned long )packet;
6727#line 293
6728 __cil_tmp70 = __cil_tmp69 + 20;
6729#line 293
6730 if (*((int *)__cil_tmp70)) {
6731#line 294
6732 __cil_tmp71 = (unsigned long )client;
6733#line 294
6734 __cil_tmp72 = __cil_tmp71 + 448;
6735#line 294
6736 __cil_tmp73 = *((int *)__cil_tmp72);
6737#line 294
6738 __cil_tmp74 = (unsigned long )packet;
6739#line 294
6740 __cil_tmp75 = __cil_tmp74 + 12;
6741#line 294
6742 __cil_tmp76 = *((int *)__cil_tmp75);
6743#line 294
6744 __cil_tmp77 = __cil_tmp76 - __cil_tmp73;
6745#line 294
6746 __cil_tmp78 = *((int *)p);
6747#line 294
6748 *((int *)p) = __cil_tmp78 + __cil_tmp77;
6749#line 295
6750 __cil_tmp79 = (unsigned long )p;
6751#line 295
6752 __cil_tmp80 = __cil_tmp79 + 4;
6753#line 295
6754 __cil_tmp81 = (unsigned long )client;
6755#line 295
6756 __cil_tmp82 = __cil_tmp81 + 452;
6757#line 295
6758 __cil_tmp83 = *((int *)__cil_tmp82);
6759#line 295
6760 __cil_tmp84 = (unsigned long )packet;
6761#line 295
6762 __cil_tmp85 = __cil_tmp84 + 16;
6763#line 295
6764 __cil_tmp86 = *((int *)__cil_tmp85);
6765#line 295
6766 __cil_tmp87 = __cil_tmp86 - __cil_tmp83;
6767#line 295
6768 __cil_tmp88 = (unsigned long )p;
6769#line 295
6770 __cil_tmp89 = __cil_tmp88 + 4;
6771#line 295
6772 __cil_tmp90 = *((int *)__cil_tmp89);
6773#line 295
6774 *((int *)__cil_tmp80) = __cil_tmp90 + __cil_tmp87;
6775#line 296
6776 __cil_tmp91 = (unsigned long )client;
6777#line 296
6778 __cil_tmp92 = __cil_tmp91 + 448;
6779#line 296
6780 __cil_tmp93 = (unsigned long )packet;
6781#line 296
6782 __cil_tmp94 = __cil_tmp93 + 12;
6783#line 296
6784 *((int *)__cil_tmp92) = *((int *)__cil_tmp94);
6785#line 297
6786 __cil_tmp95 = (unsigned long )client;
6787#line 297
6788 __cil_tmp96 = __cil_tmp95 + 452;
6789#line 297
6790 __cil_tmp97 = (unsigned long )packet;
6791#line 297
6792 __cil_tmp98 = __cil_tmp97 + 16;
6793#line 297
6794 *((int *)__cil_tmp96) = *((int *)__cil_tmp98);
6795 } else {
6796
6797 }
6798 }
6799#line 300
6800 __cil_tmp99 = (unsigned long )client;
6801#line 300
6802 __cil_tmp100 = __cil_tmp99 + 448;
6803#line 300
6804 __cil_tmp101 = *((int *)packet);
6805#line 300
6806 __cil_tmp102 = (unsigned long )client;
6807#line 300
6808 __cil_tmp103 = __cil_tmp102 + 448;
6809#line 300
6810 __cil_tmp104 = *((int *)__cil_tmp103);
6811#line 300
6812 *((int *)__cil_tmp100) = __cil_tmp104 + __cil_tmp101;
6813 {
6814#line 301
6815 __cil_tmp105 = (unsigned long )client;
6816#line 301
6817 __cil_tmp106 = __cil_tmp105 + 448;
6818#line 301
6819 __cil_tmp107 = *((int *)__cil_tmp106);
6820#line 301
6821 if (__cil_tmp107 < 0) {
6822#line 301
6823 __cil_tmp108 = (unsigned long )client;
6824#line 301
6825 __cil_tmp109 = __cil_tmp108 + 448;
6826#line 301
6827 *((int *)__cil_tmp109) = 0;
6828 } else {
6829 {
6830#line 301
6831 __cil_tmp110 = & xres;
6832#line 301
6833 __cil_tmp111 = *__cil_tmp110;
6834#line 301
6835 __cil_tmp112 = (unsigned long )client;
6836#line 301
6837 __cil_tmp113 = __cil_tmp112 + 448;
6838#line 301
6839 __cil_tmp114 = *((int *)__cil_tmp113);
6840#line 301
6841 if (__cil_tmp114 >= __cil_tmp111) {
6842#line 301
6843 __cil_tmp115 = & xres;
6844#line 301
6845 tmp___8 = *__cil_tmp115;
6846 } else {
6847#line 301
6848 __cil_tmp116 = (unsigned long )client;
6849#line 301
6850 __cil_tmp117 = __cil_tmp116 + 448;
6851#line 301
6852 tmp___8 = *((int *)__cil_tmp117);
6853 }
6854 }
6855#line 301
6856 __cil_tmp118 = (unsigned long )client;
6857#line 301
6858 __cil_tmp119 = __cil_tmp118 + 448;
6859#line 301
6860 *((int *)__cil_tmp119) = tmp___8;
6861 }
6862 }
6863#line 303
6864 __cil_tmp120 = (unsigned long )client;
6865#line 303
6866 __cil_tmp121 = __cil_tmp120 + 452;
6867#line 303
6868 __cil_tmp122 = (unsigned long )packet;
6869#line 303
6870 __cil_tmp123 = __cil_tmp122 + 4;
6871#line 303
6872 __cil_tmp124 = *((int *)__cil_tmp123);
6873#line 303
6874 __cil_tmp125 = (unsigned long )client;
6875#line 303
6876 __cil_tmp126 = __cil_tmp125 + 452;
6877#line 303
6878 __cil_tmp127 = *((int *)__cil_tmp126);
6879#line 303
6880 *((int *)__cil_tmp121) = __cil_tmp127 + __cil_tmp124;
6881 {
6882#line 304
6883 __cil_tmp128 = (unsigned long )client;
6884#line 304
6885 __cil_tmp129 = __cil_tmp128 + 452;
6886#line 304
6887 __cil_tmp130 = *((int *)__cil_tmp129);
6888#line 304
6889 if (__cil_tmp130 < 0) {
6890#line 304
6891 __cil_tmp131 = (unsigned long )client;
6892#line 304
6893 __cil_tmp132 = __cil_tmp131 + 452;
6894#line 304
6895 *((int *)__cil_tmp132) = 0;
6896 } else {
6897 {
6898#line 304
6899 __cil_tmp133 = & yres;
6900#line 304
6901 __cil_tmp134 = *__cil_tmp133;
6902#line 304
6903 __cil_tmp135 = (unsigned long )client;
6904#line 304
6905 __cil_tmp136 = __cil_tmp135 + 452;
6906#line 304
6907 __cil_tmp137 = *((int *)__cil_tmp136);
6908#line 304
6909 if (__cil_tmp137 >= __cil_tmp134) {
6910#line 304
6911 __cil_tmp138 = & yres;
6912#line 304
6913 tmp___9 = *__cil_tmp138;
6914 } else {
6915#line 304
6916 __cil_tmp139 = (unsigned long )client;
6917#line 304
6918 __cil_tmp140 = __cil_tmp139 + 452;
6919#line 304
6920 tmp___9 = *((int *)__cil_tmp140);
6921 }
6922 }
6923#line 304
6924 __cil_tmp141 = (unsigned long )client;
6925#line 304
6926 __cil_tmp142 = __cil_tmp141 + 452;
6927#line 304
6928 *((int *)__cil_tmp142) = tmp___9;
6929 }
6930 }
6931#line 307
6932 __cil_tmp143 = *((int *)packet);
6933#line 307
6934 __cil_tmp144 = *((int *)p);
6935#line 307
6936 *((int *)p) = __cil_tmp144 + __cil_tmp143;
6937#line 308
6938 __cil_tmp145 = (unsigned long )p;
6939#line 308
6940 __cil_tmp146 = __cil_tmp145 + 4;
6941#line 308
6942 __cil_tmp147 = (unsigned long )packet;
6943#line 308
6944 __cil_tmp148 = __cil_tmp147 + 4;
6945#line 308
6946 __cil_tmp149 = *((int *)__cil_tmp148);
6947#line 308
6948 __cil_tmp150 = (unsigned long )p;
6949#line 308
6950 __cil_tmp151 = __cil_tmp150 + 4;
6951#line 308
6952 __cil_tmp152 = *((int *)__cil_tmp151);
6953#line 308
6954 *((int *)__cil_tmp146) = __cil_tmp152 + __cil_tmp149;
6955#line 309
6956 __cil_tmp153 = (unsigned long )p;
6957#line 309
6958 __cil_tmp154 = __cil_tmp153 + 8;
6959#line 309
6960 __cil_tmp155 = (unsigned long )packet;
6961#line 309
6962 __cil_tmp156 = __cil_tmp155 + 8;
6963#line 309
6964 __cil_tmp157 = *((int *)__cil_tmp156);
6965#line 309
6966 __cil_tmp158 = (unsigned long )p;
6967#line 309
6968 __cil_tmp159 = __cil_tmp158 + 8;
6969#line 309
6970 __cil_tmp160 = *((int *)__cil_tmp159);
6971#line 309
6972 *((int *)__cil_tmp154) = __cil_tmp160 + __cil_tmp157;
6973#line 310
6974 __cil_tmp161 = (unsigned long )p;
6975#line 310
6976 __cil_tmp162 = __cil_tmp161 + 16;
6977#line 310
6978 __cil_tmp163 = 1032 + 24;
6979#line 310
6980 __cil_tmp164 = (unsigned long )mousedev;
6981#line 310
6982 __cil_tmp165 = __cil_tmp164 + __cil_tmp163;
6983#line 310
6984 *((unsigned long *)__cil_tmp162) = *((unsigned long *)__cil_tmp165);
6985#line 312
6986 if (*((int *)p)) {
6987#line 314
6988 __cil_tmp166 = (unsigned long )client;
6989#line 314
6990 __cil_tmp167 = __cil_tmp166 + 462;
6991#line 314
6992 *((unsigned char *)__cil_tmp167) = (unsigned char)1;
6993 } else {
6994 {
6995#line 312
6996 __cil_tmp168 = (unsigned long )p;
6997#line 312
6998 __cil_tmp169 = __cil_tmp168 + 4;
6999#line 312
7000 if (*((int *)__cil_tmp169)) {
7001#line 314
7002 __cil_tmp170 = (unsigned long )client;
7003#line 314
7004 __cil_tmp171 = __cil_tmp170 + 462;
7005#line 314
7006 *((unsigned char *)__cil_tmp171) = (unsigned char)1;
7007 } else {
7008 {
7009#line 312
7010 __cil_tmp172 = (unsigned long )p;
7011#line 312
7012 __cil_tmp173 = __cil_tmp172 + 8;
7013#line 312
7014 if (*((int *)__cil_tmp173)) {
7015#line 314
7016 __cil_tmp174 = (unsigned long )client;
7017#line 314
7018 __cil_tmp175 = __cil_tmp174 + 462;
7019#line 314
7020 *((unsigned char *)__cil_tmp175) = (unsigned char)1;
7021 } else {
7022 {
7023#line 312
7024 __cil_tmp176 = (unsigned long )client;
7025#line 312
7026 __cil_tmp177 = __cil_tmp176 + 472;
7027#line 312
7028 __cil_tmp178 = *((unsigned long *)__cil_tmp177);
7029#line 312
7030 __cil_tmp179 = (unsigned long )p;
7031#line 312
7032 __cil_tmp180 = __cil_tmp179 + 16;
7033#line 312
7034 __cil_tmp181 = *((unsigned long *)__cil_tmp180);
7035#line 312
7036 if (__cil_tmp181 != __cil_tmp178) {
7037#line 314
7038 __cil_tmp182 = (unsigned long )client;
7039#line 314
7040 __cil_tmp183 = __cil_tmp182 + 462;
7041#line 314
7042 *((unsigned char *)__cil_tmp183) = (unsigned char)1;
7043 } else {
7044
7045 }
7046 }
7047 }
7048 }
7049 }
7050 }
7051 }
7052 {
7053#line 316
7054 __cil_tmp184 = (unsigned long )client;
7055#line 316
7056 __cil_tmp185 = __cil_tmp184 + 424;
7057#line 316
7058 __cil_tmp186 = (spinlock_t *)__cil_tmp185;
7059#line 316
7060 spin_unlock(__cil_tmp186);
7061 }
7062 {
7063#line 318
7064 __cil_tmp187 = (unsigned long )client;
7065#line 318
7066 __cil_tmp188 = __cil_tmp187 + 462;
7067#line 318
7068 if (*((unsigned char *)__cil_tmp188)) {
7069 {
7070#line 319
7071 __cil_tmp189 = (struct fasync_struct **)client;
7072#line 319
7073 __cil_tmp190 = 2 << 16;
7074#line 319
7075 __cil_tmp191 = __cil_tmp190 | 1;
7076#line 319
7077 kill_fasync(__cil_tmp189, 29, __cil_tmp191);
7078#line 320
7079 wake_readers = 1;
7080 }
7081 } else {
7082
7083 }
7084 }
7085#line 279
7086 __cil_tmp192 = & __ptr___0;
7087#line 279
7088 __cil_tmp193 = (unsigned long )client;
7089#line 279
7090 __cil_tmp194 = __cil_tmp193 + 16;
7091#line 279
7092 *__cil_tmp192 = *((struct list_head **)__cil_tmp194);
7093#line 279
7094 __cil_tmp195 = (struct list_head * volatile *)(& __ptr___0);
7095#line 279
7096 __cil_tmp196 = *__cil_tmp195;
7097#line 279
7098 _________p1___0 = (struct list_head *)__cil_tmp196;
7099 {
7100#line 279
7101 while (1) {
7102 while_continue___2: ;
7103#line 279
7104 goto while_break___2;
7105 }
7106 while_break___2: ;
7107 }
7108 {
7109#line 279
7110 while (1) {
7111 while_continue___3: ;
7112#line 279
7113 goto while_break___3;
7114 }
7115 while_break___3: ;
7116 }
7117#line 279
7118 __mptr___0 = (struct list_head *)_________p1___0;
7119#line 279
7120 __cil_tmp197 = (struct mousedev_client *)0;
7121#line 279
7122 __cil_tmp198 = (unsigned long )__cil_tmp197;
7123#line 279
7124 __cil_tmp199 = __cil_tmp198 + 16;
7125#line 279
7126 __cil_tmp200 = (struct list_head *)__cil_tmp199;
7127#line 279
7128 __cil_tmp201 = (unsigned int )__cil_tmp200;
7129#line 279
7130 __cil_tmp202 = (char *)__mptr___0;
7131#line 279
7132 __cil_tmp203 = __cil_tmp202 - __cil_tmp201;
7133#line 279
7134 client = (struct mousedev_client *)__cil_tmp203;
7135 }
7136 while_break___1: ;
7137 }
7138 {
7139#line 323
7140 rcu_read_unlock();
7141 }
7142#line 325
7143 if (wake_readers) {
7144 {
7145#line 326
7146 __cil_tmp204 = (unsigned long )mousedev;
7147#line 326
7148 __cil_tmp205 = __cil_tmp204 + 80;
7149#line 326
7150 __cil_tmp206 = (wait_queue_head_t *)__cil_tmp205;
7151#line 326
7152 __cil_tmp207 = (void *)0;
7153#line 326
7154 __wake_up(__cil_tmp206, 1U, 1, __cil_tmp207);
7155 }
7156 } else {
7157
7158 }
7159#line 327
7160 return;
7161}
7162}
7163#line 329 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
7164static void mousedev_touchpad_touch(struct mousedev *mousedev , int value )
7165{ unsigned long tmp___8 ;
7166 unsigned int tmp___9 ;
7167 unsigned long __cil_tmp10 ;
7168 unsigned long __cil_tmp11 ;
7169 unsigned int *__cil_tmp12 ;
7170 unsigned int __cil_tmp13 ;
7171 unsigned int __cil_tmp14 ;
7172 unsigned long __cil_tmp15 ;
7173 unsigned long __cil_tmp16 ;
7174 unsigned long __cil_tmp17 ;
7175 unsigned long __cil_tmp18 ;
7176 long __cil_tmp19 ;
7177 long __cil_tmp20 ;
7178 long __cil_tmp21 ;
7179 unsigned long __cil_tmp22 ;
7180 unsigned long __cil_tmp23 ;
7181 unsigned long __cil_tmp24 ;
7182 unsigned long *__cil_tmp25 ;
7183 unsigned long volatile *__cil_tmp26 ;
7184 unsigned long __cil_tmp27 ;
7185 unsigned long __cil_tmp28 ;
7186 unsigned long __cil_tmp29 ;
7187 unsigned long *__cil_tmp30 ;
7188 unsigned long volatile *__cil_tmp31 ;
7189 unsigned long __cil_tmp32 ;
7190 unsigned long __cil_tmp33 ;
7191 struct mousedev_hw_data *__cil_tmp34 ;
7192 unsigned long __cil_tmp35 ;
7193 unsigned long __cil_tmp36 ;
7194 struct mousedev_hw_data *__cil_tmp37 ;
7195 unsigned long __cil_tmp38 ;
7196 unsigned long __cil_tmp39 ;
7197 unsigned long __cil_tmp40 ;
7198 unsigned long *__cil_tmp41 ;
7199 unsigned long volatile *__cil_tmp42 ;
7200 unsigned long __cil_tmp43 ;
7201 unsigned long __cil_tmp44 ;
7202 unsigned long __cil_tmp45 ;
7203 unsigned long *__cil_tmp46 ;
7204 unsigned long volatile *__cil_tmp47 ;
7205 unsigned long __cil_tmp48 ;
7206 unsigned long __cil_tmp49 ;
7207 unsigned long __cil_tmp50 ;
7208 unsigned long __cil_tmp51 ;
7209 unsigned long __cil_tmp52 ;
7210 unsigned long __cil_tmp53 ;
7211 unsigned long __cil_tmp54 ;
7212 unsigned long __cil_tmp55 ;
7213 unsigned long __cil_tmp56 ;
7214 unsigned long __cil_tmp57 ;
7215 unsigned long __cil_tmp58 ;
7216 unsigned long __cil_tmp59 ;
7217 unsigned long __cil_tmp60 ;
7218
7219 {
7220#line 331
7221 if (! value) {
7222 {
7223#line 333
7224 __cil_tmp10 = (unsigned long )mousedev;
7225#line 333
7226 __cil_tmp11 = __cil_tmp10 + 1112;
7227#line 333
7228 if (*((unsigned long *)__cil_tmp11)) {
7229 {
7230#line 333
7231 __cil_tmp12 = & tap_time;
7232#line 333
7233 __cil_tmp13 = *__cil_tmp12;
7234#line 333
7235 __cil_tmp14 = (unsigned int )__cil_tmp13;
7236#line 333
7237 tmp___8 = msecs_to_jiffies(__cil_tmp14);
7238 }
7239 {
7240#line 333
7241 __cil_tmp15 = (unsigned long )mousedev;
7242#line 333
7243 __cil_tmp16 = __cil_tmp15 + 1112;
7244#line 333
7245 __cil_tmp17 = *((unsigned long *)__cil_tmp16);
7246#line 333
7247 __cil_tmp18 = __cil_tmp17 + tmp___8;
7248#line 333
7249 __cil_tmp19 = (long )__cil_tmp18;
7250#line 333
7251 __cil_tmp20 = (long )jiffies;
7252#line 333
7253 __cil_tmp21 = __cil_tmp20 - __cil_tmp19;
7254#line 333
7255 if (__cil_tmp21 < 0L) {
7256 {
7257#line 340
7258 __cil_tmp22 = 1032 + 24;
7259#line 340
7260 __cil_tmp23 = (unsigned long )mousedev;
7261#line 340
7262 __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
7263#line 340
7264 __cil_tmp25 = (unsigned long *)__cil_tmp24;
7265#line 340
7266 __cil_tmp26 = (unsigned long volatile *)__cil_tmp25;
7267#line 340
7268 set_bit(0U, __cil_tmp26);
7269#line 341
7270 __cil_tmp27 = 1032 + 24;
7271#line 341
7272 __cil_tmp28 = (unsigned long )mousedev_mix;
7273#line 341
7274 __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
7275#line 341
7276 __cil_tmp30 = (unsigned long *)__cil_tmp29;
7277#line 341
7278 __cil_tmp31 = (unsigned long volatile *)__cil_tmp30;
7279#line 341
7280 set_bit(0U, __cil_tmp31);
7281#line 342
7282 __cil_tmp32 = (unsigned long )mousedev_mix;
7283#line 342
7284 __cil_tmp33 = __cil_tmp32 + 1032;
7285#line 342
7286 __cil_tmp34 = (struct mousedev_hw_data *)__cil_tmp33;
7287#line 342
7288 mousedev_notify_readers(mousedev, __cil_tmp34);
7289#line 343
7290 __cil_tmp35 = (unsigned long )mousedev_mix;
7291#line 343
7292 __cil_tmp36 = __cil_tmp35 + 1032;
7293#line 343
7294 __cil_tmp37 = (struct mousedev_hw_data *)__cil_tmp36;
7295#line 343
7296 mousedev_notify_readers(mousedev_mix, __cil_tmp37);
7297#line 345
7298 __cil_tmp38 = 1032 + 24;
7299#line 345
7300 __cil_tmp39 = (unsigned long )mousedev;
7301#line 345
7302 __cil_tmp40 = __cil_tmp39 + __cil_tmp38;
7303#line 345
7304 __cil_tmp41 = (unsigned long *)__cil_tmp40;
7305#line 345
7306 __cil_tmp42 = (unsigned long volatile *)__cil_tmp41;
7307#line 345
7308 clear_bit(0, __cil_tmp42);
7309#line 346
7310 __cil_tmp43 = 1032 + 24;
7311#line 346
7312 __cil_tmp44 = (unsigned long )mousedev_mix;
7313#line 346
7314 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
7315#line 346
7316 __cil_tmp46 = (unsigned long *)__cil_tmp45;
7317#line 346
7318 __cil_tmp47 = (unsigned long volatile *)__cil_tmp46;
7319#line 346
7320 clear_bit(0, __cil_tmp47);
7321 }
7322 } else {
7323
7324 }
7325 }
7326 } else {
7327
7328 }
7329 }
7330#line 348
7331 tmp___9 = 0U;
7332#line 348
7333 __cil_tmp48 = (unsigned long )mousedev;
7334#line 348
7335 __cil_tmp49 = __cil_tmp48 + 1064;
7336#line 348
7337 *((unsigned int *)__cil_tmp49) = tmp___9;
7338#line 348
7339 __cil_tmp50 = (unsigned long )mousedev;
7340#line 348
7341 __cil_tmp51 = __cil_tmp50 + 1112;
7342#line 348
7343 *((unsigned long *)__cil_tmp51) = (unsigned long )tmp___9;
7344#line 349
7345 __cil_tmp52 = (unsigned long )mousedev;
7346#line 349
7347 __cil_tmp53 = __cil_tmp52 + 1100;
7348#line 349
7349 *((int *)__cil_tmp53) = 0;
7350#line 350
7351 __cil_tmp54 = (unsigned long )mousedev;
7352#line 350
7353 __cil_tmp55 = __cil_tmp54 + 1104;
7354#line 350
7355 *((int *)__cil_tmp55) = 0;
7356 } else {
7357 {
7358#line 352
7359 __cil_tmp56 = (unsigned long )mousedev;
7360#line 352
7361 __cil_tmp57 = __cil_tmp56 + 1112;
7362#line 352
7363 __cil_tmp58 = *((unsigned long *)__cil_tmp57);
7364#line 352
7365 if (! __cil_tmp58) {
7366#line 353
7367 __cil_tmp59 = (unsigned long )mousedev;
7368#line 353
7369 __cil_tmp60 = __cil_tmp59 + 1112;
7370#line 353
7371 *((unsigned long *)__cil_tmp60) = (unsigned long )jiffies;
7372 } else {
7373
7374 }
7375 }
7376 }
7377#line 354
7378 return;
7379}
7380}
7381#line 356 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
7382static void mousedev_event(struct input_handle *handle , unsigned int type , unsigned int code ,
7383 int value )
7384{ struct mousedev *mousedev ;
7385 int tmp___7 ;
7386 int tmp___9 ;
7387 int tmp___11 ;
7388 int tmp___13 ;
7389 int tmp___14 ;
7390 void *__cil_tmp14 ;
7391 unsigned long __cil_tmp15 ;
7392 unsigned long __cil_tmp16 ;
7393 unsigned long __cil_tmp17 ;
7394 unsigned long __cil_tmp18 ;
7395 struct input_dev *__cil_tmp19 ;
7396 unsigned long __cil_tmp20 ;
7397 unsigned long __cil_tmp21 ;
7398 unsigned long *__cil_tmp22 ;
7399 unsigned long volatile *__cil_tmp23 ;
7400 unsigned long __cil_tmp24 ;
7401 unsigned long __cil_tmp25 ;
7402 unsigned long __cil_tmp26 ;
7403 unsigned long __cil_tmp27 ;
7404 struct input_dev *__cil_tmp28 ;
7405 unsigned long __cil_tmp29 ;
7406 unsigned long __cil_tmp30 ;
7407 unsigned long *__cil_tmp31 ;
7408 unsigned long volatile *__cil_tmp32 ;
7409 unsigned long __cil_tmp33 ;
7410 unsigned long __cil_tmp34 ;
7411 struct input_dev *__cil_tmp35 ;
7412 unsigned long __cil_tmp36 ;
7413 unsigned long __cil_tmp37 ;
7414 struct input_dev *__cil_tmp38 ;
7415 unsigned long __cil_tmp39 ;
7416 unsigned long __cil_tmp40 ;
7417 unsigned long __cil_tmp41 ;
7418 unsigned long __cil_tmp42 ;
7419 struct input_dev *__cil_tmp43 ;
7420 unsigned long __cil_tmp44 ;
7421 unsigned long __cil_tmp45 ;
7422 unsigned long *__cil_tmp46 ;
7423 unsigned long volatile *__cil_tmp47 ;
7424 unsigned long __cil_tmp48 ;
7425 unsigned long __cil_tmp49 ;
7426 unsigned long __cil_tmp50 ;
7427 unsigned long __cil_tmp51 ;
7428 unsigned long __cil_tmp52 ;
7429 unsigned long __cil_tmp53 ;
7430 unsigned int __cil_tmp54 ;
7431 unsigned long __cil_tmp55 ;
7432 unsigned long __cil_tmp56 ;
7433 unsigned int __cil_tmp57 ;
7434 unsigned int __cil_tmp58 ;
7435 unsigned long __cil_tmp59 ;
7436 unsigned long __cil_tmp60 ;
7437 unsigned long __cil_tmp61 ;
7438 unsigned long __cil_tmp62 ;
7439 unsigned long __cil_tmp63 ;
7440 unsigned long __cil_tmp64 ;
7441 unsigned int __cil_tmp65 ;
7442 unsigned int __cil_tmp66 ;
7443 unsigned int __cil_tmp67 ;
7444 unsigned long __cil_tmp68 ;
7445 unsigned long __cil_tmp69 ;
7446 unsigned long __cil_tmp70 ;
7447 unsigned long __cil_tmp71 ;
7448 unsigned long __cil_tmp72 ;
7449 unsigned long __cil_tmp73 ;
7450 unsigned int __cil_tmp74 ;
7451 unsigned int __cil_tmp75 ;
7452 unsigned long __cil_tmp76 ;
7453 unsigned long __cil_tmp77 ;
7454 unsigned long __cil_tmp78 ;
7455 unsigned long __cil_tmp79 ;
7456 unsigned long __cil_tmp80 ;
7457 unsigned long __cil_tmp81 ;
7458 unsigned int __cil_tmp82 ;
7459 unsigned int __cil_tmp83 ;
7460 unsigned int __cil_tmp84 ;
7461 unsigned long __cil_tmp85 ;
7462 unsigned long __cil_tmp86 ;
7463 unsigned long __cil_tmp87 ;
7464 unsigned long __cil_tmp88 ;
7465 unsigned long __cil_tmp89 ;
7466 unsigned long __cil_tmp90 ;
7467 struct mousedev_hw_data *__cil_tmp91 ;
7468 unsigned long __cil_tmp92 ;
7469 unsigned long __cil_tmp93 ;
7470 struct mousedev_hw_data *__cil_tmp94 ;
7471 unsigned long __cil_tmp95 ;
7472 unsigned long __cil_tmp96 ;
7473 unsigned long __cil_tmp97 ;
7474 unsigned long __cil_tmp98 ;
7475 unsigned long __cil_tmp99 ;
7476 unsigned long __cil_tmp100 ;
7477 unsigned long __cil_tmp101 ;
7478 unsigned long __cil_tmp102 ;
7479 unsigned long __cil_tmp103 ;
7480 unsigned long __cil_tmp104 ;
7481 unsigned long __cil_tmp105 ;
7482
7483 {
7484#line 359
7485 __cil_tmp14 = *((void **)handle);
7486#line 359
7487 mousedev = (struct mousedev *)__cil_tmp14;
7488#line 363
7489 if ((int )type == 3) {
7490#line 363
7491 goto case_3;
7492 } else
7493#line 376
7494 if ((int )type == 2) {
7495#line 376
7496 goto case_2;
7497 } else
7498#line 380
7499 if ((int )type == 1) {
7500#line 380
7501 goto case_1;
7502 } else
7503#line 390
7504 if ((int )type == 0) {
7505#line 390
7506 goto case_0;
7507 } else
7508#line 361
7509 if (0) {
7510 case_3:
7511 {
7512#line 365
7513 __cil_tmp15 = 0 * 8UL;
7514#line 365
7515 __cil_tmp16 = 48 + __cil_tmp15;
7516#line 365
7517 __cil_tmp17 = (unsigned long )handle;
7518#line 365
7519 __cil_tmp18 = __cil_tmp17 + 24;
7520#line 365
7521 __cil_tmp19 = *((struct input_dev **)__cil_tmp18);
7522#line 365
7523 __cil_tmp20 = (unsigned long )__cil_tmp19;
7524#line 365
7525 __cil_tmp21 = __cil_tmp20 + __cil_tmp16;
7526#line 365
7527 __cil_tmp22 = (unsigned long *)__cil_tmp21;
7528#line 365
7529 __cil_tmp23 = (unsigned long volatile *)__cil_tmp22;
7530#line 365
7531 tmp___7 = ant_test_bit(288U, __cil_tmp23);
7532 }
7533#line 365
7534 if (tmp___7) {
7535#line 366
7536 return;
7537 } else {
7538
7539 }
7540 {
7541#line 368
7542 __cil_tmp24 = 0 * 8UL;
7543#line 368
7544 __cil_tmp25 = 48 + __cil_tmp24;
7545#line 368
7546 __cil_tmp26 = (unsigned long )handle;
7547#line 368
7548 __cil_tmp27 = __cil_tmp26 + 24;
7549#line 368
7550 __cil_tmp28 = *((struct input_dev **)__cil_tmp27);
7551#line 368
7552 __cil_tmp29 = (unsigned long )__cil_tmp28;
7553#line 368
7554 __cil_tmp30 = __cil_tmp29 + __cil_tmp25;
7555#line 368
7556 __cil_tmp31 = (unsigned long *)__cil_tmp30;
7557#line 368
7558 __cil_tmp32 = (unsigned long volatile *)__cil_tmp31;
7559#line 368
7560 tmp___9 = ant_test_bit(325U, __cil_tmp32);
7561 }
7562#line 368
7563 if (tmp___9) {
7564 {
7565#line 369
7566 __cil_tmp33 = (unsigned long )handle;
7567#line 369
7568 __cil_tmp34 = __cil_tmp33 + 24;
7569#line 369
7570 __cil_tmp35 = *((struct input_dev **)__cil_tmp34);
7571#line 369
7572 mousedev_touchpad_event(__cil_tmp35, mousedev, code, value);
7573 }
7574 } else {
7575 {
7576#line 372
7577 __cil_tmp36 = (unsigned long )handle;
7578#line 372
7579 __cil_tmp37 = __cil_tmp36 + 24;
7580#line 372
7581 __cil_tmp38 = *((struct input_dev **)__cil_tmp37);
7582#line 372
7583 mousedev_abs_event(__cil_tmp38, mousedev, code, value);
7584 }
7585 }
7586#line 374
7587 goto switch_break;
7588 case_2:
7589 {
7590#line 377
7591 mousedev_rel_event(mousedev, code, value);
7592 }
7593#line 378
7594 goto switch_break;
7595 case_1:
7596#line 381
7597 if (value != 2) {
7598#line 382
7599 if (code == 330U) {
7600 {
7601#line 382
7602 __cil_tmp39 = 0 * 8UL;
7603#line 382
7604 __cil_tmp40 = 48 + __cil_tmp39;
7605#line 382
7606 __cil_tmp41 = (unsigned long )handle;
7607#line 382
7608 __cil_tmp42 = __cil_tmp41 + 24;
7609#line 382
7610 __cil_tmp43 = *((struct input_dev **)__cil_tmp42);
7611#line 382
7612 __cil_tmp44 = (unsigned long )__cil_tmp43;
7613#line 382
7614 __cil_tmp45 = __cil_tmp44 + __cil_tmp40;
7615#line 382
7616 __cil_tmp46 = (unsigned long *)__cil_tmp45;
7617#line 382
7618 __cil_tmp47 = (unsigned long volatile *)__cil_tmp46;
7619#line 382
7620 tmp___11 = ant_test_bit(325U, __cil_tmp47);
7621 }
7622#line 382
7623 if (tmp___11) {
7624 {
7625#line 384
7626 mousedev_touchpad_touch(mousedev, value);
7627 }
7628 } else {
7629 {
7630#line 386
7631 mousedev_key_event(mousedev, code, value);
7632 }
7633 }
7634 } else {
7635 {
7636#line 386
7637 mousedev_key_event(mousedev, code, value);
7638 }
7639 }
7640 } else {
7641
7642 }
7643#line 388
7644 goto switch_break;
7645 case_0:
7646#line 391
7647 if (code == 0U) {
7648 {
7649#line 392
7650 __cil_tmp48 = (unsigned long )mousedev;
7651#line 392
7652 __cil_tmp49 = __cil_tmp48 + 1112;
7653#line 392
7654 if (*((unsigned long *)__cil_tmp49)) {
7655#line 393
7656 __cil_tmp50 = (unsigned long )mousedev;
7657#line 393
7658 __cil_tmp51 = __cil_tmp50 + 1064;
7659#line 393
7660 __cil_tmp52 = (unsigned long )mousedev;
7661#line 393
7662 __cil_tmp53 = __cil_tmp52 + 1064;
7663#line 393
7664 __cil_tmp54 = *((unsigned int *)__cil_tmp53);
7665#line 393
7666 *((unsigned int *)__cil_tmp51) = __cil_tmp54 + 1U;
7667#line 399
7668 __cil_tmp55 = (unsigned long )mousedev;
7669#line 399
7670 __cil_tmp56 = __cil_tmp55 + 1064;
7671#line 399
7672 __cil_tmp57 = *((unsigned int *)__cil_tmp56);
7673#line 399
7674 __cil_tmp58 = __cil_tmp57 & 3U;
7675#line 399
7676 __cil_tmp59 = __cil_tmp58 * 4UL;
7677#line 399
7678 __cil_tmp60 = 1068 + __cil_tmp59;
7679#line 399
7680 __cil_tmp61 = (unsigned long )mousedev;
7681#line 399
7682 __cil_tmp62 = __cil_tmp61 + __cil_tmp60;
7683#line 399
7684 __cil_tmp63 = (unsigned long )mousedev;
7685#line 399
7686 __cil_tmp64 = __cil_tmp63 + 1064;
7687#line 399
7688 __cil_tmp65 = *((unsigned int *)__cil_tmp64);
7689#line 399
7690 __cil_tmp66 = __cil_tmp65 - 1U;
7691#line 399
7692 __cil_tmp67 = __cil_tmp66 & 3U;
7693#line 399
7694 __cil_tmp68 = __cil_tmp67 * 4UL;
7695#line 399
7696 __cil_tmp69 = 1068 + __cil_tmp68;
7697#line 399
7698 __cil_tmp70 = (unsigned long )mousedev;
7699#line 399
7700 __cil_tmp71 = __cil_tmp70 + __cil_tmp69;
7701#line 399
7702 *((int *)__cil_tmp62) = *((int *)__cil_tmp71);
7703#line 400
7704 __cil_tmp72 = (unsigned long )mousedev;
7705#line 400
7706 __cil_tmp73 = __cil_tmp72 + 1064;
7707#line 400
7708 __cil_tmp74 = *((unsigned int *)__cil_tmp73);
7709#line 400
7710 __cil_tmp75 = __cil_tmp74 & 3U;
7711#line 400
7712 __cil_tmp76 = __cil_tmp75 * 4UL;
7713#line 400
7714 __cil_tmp77 = 1084 + __cil_tmp76;
7715#line 400
7716 __cil_tmp78 = (unsigned long )mousedev;
7717#line 400
7718 __cil_tmp79 = __cil_tmp78 + __cil_tmp77;
7719#line 400
7720 __cil_tmp80 = (unsigned long )mousedev;
7721#line 400
7722 __cil_tmp81 = __cil_tmp80 + 1064;
7723#line 400
7724 __cil_tmp82 = *((unsigned int *)__cil_tmp81);
7725#line 400
7726 __cil_tmp83 = __cil_tmp82 - 1U;
7727#line 400
7728 __cil_tmp84 = __cil_tmp83 & 3U;
7729#line 400
7730 __cil_tmp85 = __cil_tmp84 * 4UL;
7731#line 400
7732 __cil_tmp86 = 1084 + __cil_tmp85;
7733#line 400
7734 __cil_tmp87 = (unsigned long )mousedev;
7735#line 400
7736 __cil_tmp88 = __cil_tmp87 + __cil_tmp86;
7737#line 400
7738 *((int *)__cil_tmp79) = *((int *)__cil_tmp88);
7739 } else {
7740
7741 }
7742 }
7743 {
7744#line 403
7745 __cil_tmp89 = (unsigned long )mousedev;
7746#line 403
7747 __cil_tmp90 = __cil_tmp89 + 1032;
7748#line 403
7749 __cil_tmp91 = (struct mousedev_hw_data *)__cil_tmp90;
7750#line 403
7751 mousedev_notify_readers(mousedev, __cil_tmp91);
7752#line 404
7753 __cil_tmp92 = (unsigned long )mousedev;
7754#line 404
7755 __cil_tmp93 = __cil_tmp92 + 1032;
7756#line 404
7757 __cil_tmp94 = (struct mousedev_hw_data *)__cil_tmp93;
7758#line 404
7759 mousedev_notify_readers(mousedev_mix, __cil_tmp94);
7760#line 406
7761 tmp___14 = 0;
7762#line 406
7763 __cil_tmp95 = 1032 + 8;
7764#line 406
7765 __cil_tmp96 = (unsigned long )mousedev;
7766#line 406
7767 __cil_tmp97 = __cil_tmp96 + __cil_tmp95;
7768#line 406
7769 *((int *)__cil_tmp97) = tmp___14;
7770#line 406
7771 tmp___13 = tmp___14;
7772#line 406
7773 __cil_tmp98 = 1032 + 4;
7774#line 406
7775 __cil_tmp99 = (unsigned long )mousedev;
7776#line 406
7777 __cil_tmp100 = __cil_tmp99 + __cil_tmp98;
7778#line 406
7779 *((int *)__cil_tmp100) = tmp___13;
7780#line 406
7781 __cil_tmp101 = (unsigned long )mousedev;
7782#line 406
7783 __cil_tmp102 = __cil_tmp101 + 1032;
7784#line 406
7785 *((int *)__cil_tmp102) = tmp___13;
7786#line 408
7787 __cil_tmp103 = 1032 + 20;
7788#line 408
7789 __cil_tmp104 = (unsigned long )mousedev;
7790#line 408
7791 __cil_tmp105 = __cil_tmp104 + __cil_tmp103;
7792#line 408
7793 *((int *)__cil_tmp105) = 0;
7794 }
7795 } else {
7796
7797 }
7798#line 410
7799 goto switch_break;
7800 } else {
7801 switch_break: ;
7802 }
7803#line 412
7804 return;
7805}
7806}
7807#line 414 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
7808static int mousedev_fasync(int fd , struct file *file , int on )
7809{ struct mousedev_client *client ;
7810 int tmp___7 ;
7811 unsigned long __cil_tmp6 ;
7812 unsigned long __cil_tmp7 ;
7813 void *__cil_tmp8 ;
7814 struct fasync_struct **__cil_tmp9 ;
7815
7816 {
7817 {
7818#line 416
7819 __cil_tmp6 = (unsigned long )file;
7820#line 416
7821 __cil_tmp7 = __cil_tmp6 + 200;
7822#line 416
7823 __cil_tmp8 = *((void **)__cil_tmp7);
7824#line 416
7825 client = (struct mousedev_client *)__cil_tmp8;
7826#line 418
7827 __cil_tmp9 = (struct fasync_struct **)client;
7828#line 418
7829 tmp___7 = fasync_helper(fd, file, on, __cil_tmp9);
7830 }
7831#line 418
7832 return (tmp___7);
7833}
7834}
7835#line 421 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
7836static void mousedev_free(struct device *dev )
7837{ struct mousedev *mousedev ;
7838 struct device *__mptr ;
7839 struct mousedev *__cil_tmp4 ;
7840 unsigned long __cil_tmp5 ;
7841 unsigned long __cil_tmp6 ;
7842 struct device *__cil_tmp7 ;
7843 unsigned int __cil_tmp8 ;
7844 char *__cil_tmp9 ;
7845 char *__cil_tmp10 ;
7846 unsigned long __cil_tmp11 ;
7847 unsigned long __cil_tmp12 ;
7848 unsigned long __cil_tmp13 ;
7849 struct input_dev *__cil_tmp14 ;
7850 void *__cil_tmp15 ;
7851
7852 {
7853 {
7854#line 423
7855 __mptr = (struct device *)dev;
7856#line 423
7857 __cil_tmp4 = (struct mousedev *)0;
7858#line 423
7859 __cil_tmp5 = (unsigned long )__cil_tmp4;
7860#line 423
7861 __cil_tmp6 = __cil_tmp5 + 232;
7862#line 423
7863 __cil_tmp7 = (struct device *)__cil_tmp6;
7864#line 423
7865 __cil_tmp8 = (unsigned int )__cil_tmp7;
7866#line 423
7867 __cil_tmp9 = (char *)__mptr;
7868#line 423
7869 __cil_tmp10 = __cil_tmp9 - __cil_tmp8;
7870#line 423
7871 mousedev = (struct mousedev *)__cil_tmp10;
7872#line 425
7873 __cil_tmp11 = 8 + 24;
7874#line 425
7875 __cil_tmp12 = (unsigned long )mousedev;
7876#line 425
7877 __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
7878#line 425
7879 __cil_tmp14 = *((struct input_dev **)__cil_tmp13);
7880#line 425
7881 input_put_device(__cil_tmp14);
7882#line 426
7883 __cil_tmp15 = (void *)mousedev;
7884#line 426
7885 kfree(__cil_tmp15);
7886 }
7887#line 427
7888 return;
7889}
7890}
7891#line 429 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
7892static int mousedev_open_device(struct mousedev *mousedev )
7893{ int retval ;
7894 int tmp___7 ;
7895 unsigned long __cil_tmp4 ;
7896 unsigned long __cil_tmp5 ;
7897 struct mutex *__cil_tmp6 ;
7898 unsigned long __cil_tmp7 ;
7899 unsigned long __cil_tmp8 ;
7900 int __cil_tmp9 ;
7901 unsigned long __cil_tmp10 ;
7902 unsigned long __cil_tmp11 ;
7903 bool __cil_tmp12 ;
7904 int __cil_tmp13 ;
7905 unsigned long __cil_tmp14 ;
7906 unsigned long __cil_tmp15 ;
7907 struct input_handle *__cil_tmp16 ;
7908 int __cil_tmp17 ;
7909 unsigned long __cil_tmp18 ;
7910 unsigned long __cil_tmp19 ;
7911 struct mutex *__cil_tmp20 ;
7912
7913 {
7914 {
7915#line 433
7916 __cil_tmp4 = (unsigned long )mousedev;
7917#line 433
7918 __cil_tmp5 = __cil_tmp4 + 160;
7919#line 433
7920 __cil_tmp6 = (struct mutex *)__cil_tmp5;
7921#line 433
7922 retval = (int )mutex_lock_interruptible(__cil_tmp6);
7923 }
7924#line 434
7925 if (retval) {
7926#line 435
7927 return (retval);
7928 } else {
7929
7930 }
7931 {
7932#line 437
7933 __cil_tmp7 = (unsigned long )mousedev;
7934#line 437
7935 __cil_tmp8 = __cil_tmp7 + 4;
7936#line 437
7937 __cil_tmp9 = *((int *)__cil_tmp8);
7938#line 437
7939 if (__cil_tmp9 == 31) {
7940 {
7941#line 438
7942 mixdev_open_devices();
7943 }
7944 } else {
7945 {
7946#line 439
7947 __cil_tmp10 = (unsigned long )mousedev;
7948#line 439
7949 __cil_tmp11 = __cil_tmp10 + 1000;
7950#line 439
7951 __cil_tmp12 = *((bool *)__cil_tmp11);
7952#line 439
7953 if (! __cil_tmp12) {
7954#line 440
7955 retval = -19;
7956 } else {
7957#line 441
7958 tmp___7 = *((int *)mousedev);
7959#line 441
7960 __cil_tmp13 = *((int *)mousedev);
7961#line 441
7962 *((int *)mousedev) = __cil_tmp13 + 1;
7963#line 441
7964 if (tmp___7) {
7965
7966 } else {
7967 {
7968#line 442
7969 __cil_tmp14 = (unsigned long )mousedev;
7970#line 442
7971 __cil_tmp15 = __cil_tmp14 + 8;
7972#line 442
7973 __cil_tmp16 = (struct input_handle *)__cil_tmp15;
7974#line 442
7975 retval = input_open_device(__cil_tmp16);
7976 }
7977#line 443
7978 if (retval) {
7979#line 444
7980 __cil_tmp17 = *((int *)mousedev);
7981#line 444
7982 *((int *)mousedev) = __cil_tmp17 - 1;
7983 } else {
7984
7985 }
7986 }
7987 }
7988 }
7989 }
7990 }
7991 {
7992#line 447
7993 __cil_tmp18 = (unsigned long )mousedev;
7994#line 447
7995 __cil_tmp19 = __cil_tmp18 + 160;
7996#line 447
7997 __cil_tmp20 = (struct mutex *)__cil_tmp19;
7998#line 447
7999 mutex_unlock(__cil_tmp20);
8000 }
8001#line 448
8002 return (retval);
8003}
8004}
8005#line 451 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8006static void mousedev_close_device(struct mousedev *mousedev )
8007{ unsigned long __cil_tmp2 ;
8008 unsigned long __cil_tmp3 ;
8009 struct mutex *__cil_tmp4 ;
8010 unsigned long __cil_tmp5 ;
8011 unsigned long __cil_tmp6 ;
8012 int __cil_tmp7 ;
8013 unsigned long __cil_tmp8 ;
8014 unsigned long __cil_tmp9 ;
8015 int __cil_tmp10 ;
8016 unsigned long __cil_tmp11 ;
8017 unsigned long __cil_tmp12 ;
8018 struct input_handle *__cil_tmp13 ;
8019 unsigned long __cil_tmp14 ;
8020 unsigned long __cil_tmp15 ;
8021 struct mutex *__cil_tmp16 ;
8022
8023 {
8024 {
8025#line 453
8026 __cil_tmp2 = (unsigned long )mousedev;
8027#line 453
8028 __cil_tmp3 = __cil_tmp2 + 160;
8029#line 453
8030 __cil_tmp4 = (struct mutex *)__cil_tmp3;
8031#line 453
8032 mutex_lock(__cil_tmp4);
8033 }
8034 {
8035#line 455
8036 __cil_tmp5 = (unsigned long )mousedev;
8037#line 455
8038 __cil_tmp6 = __cil_tmp5 + 4;
8039#line 455
8040 __cil_tmp7 = *((int *)__cil_tmp6);
8041#line 455
8042 if (__cil_tmp7 == 31) {
8043 {
8044#line 456
8045 mixdev_close_devices();
8046 }
8047 } else {
8048 {
8049#line 457
8050 __cil_tmp8 = (unsigned long )mousedev;
8051#line 457
8052 __cil_tmp9 = __cil_tmp8 + 1000;
8053#line 457
8054 if (*((bool *)__cil_tmp9)) {
8055#line 457
8056 __cil_tmp10 = *((int *)mousedev);
8057#line 457
8058 *((int *)mousedev) = __cil_tmp10 - 1;
8059#line 457
8060 if (*((int *)mousedev)) {
8061
8062 } else {
8063 {
8064#line 458
8065 __cil_tmp11 = (unsigned long )mousedev;
8066#line 458
8067 __cil_tmp12 = __cil_tmp11 + 8;
8068#line 458
8069 __cil_tmp13 = (struct input_handle *)__cil_tmp12;
8070#line 458
8071 input_close_device(__cil_tmp13);
8072 }
8073 }
8074 } else {
8075
8076 }
8077 }
8078 }
8079 }
8080 {
8081#line 460
8082 __cil_tmp14 = (unsigned long )mousedev;
8083#line 460
8084 __cil_tmp15 = __cil_tmp14 + 160;
8085#line 460
8086 __cil_tmp16 = (struct mutex *)__cil_tmp15;
8087#line 460
8088 mutex_unlock(__cil_tmp16);
8089 }
8090#line 461
8091 return;
8092}
8093}
8094#line 468 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8095static void mixdev_open_devices(void)
8096{ struct mousedev *mousedev ;
8097 int tmp___7 ;
8098 struct list_head *__mptr ;
8099 struct list_head *__mptr___0 ;
8100 int tmp___8 ;
8101 int __cil_tmp6 ;
8102 struct list_head *__cil_tmp7 ;
8103 struct list_head *__cil_tmp8 ;
8104 struct mousedev *__cil_tmp9 ;
8105 unsigned long __cil_tmp10 ;
8106 unsigned long __cil_tmp11 ;
8107 struct list_head *__cil_tmp12 ;
8108 unsigned int __cil_tmp13 ;
8109 char *__cil_tmp14 ;
8110 char *__cil_tmp15 ;
8111 unsigned long __cil_tmp16 ;
8112 unsigned long __cil_tmp17 ;
8113 unsigned long __cil_tmp18 ;
8114 struct list_head *__cil_tmp19 ;
8115 unsigned long __cil_tmp20 ;
8116 unsigned long __cil_tmp21 ;
8117 unsigned long __cil_tmp22 ;
8118 int __cil_tmp23 ;
8119 unsigned long __cil_tmp24 ;
8120 unsigned long __cil_tmp25 ;
8121 unsigned long __cil_tmp26 ;
8122 unsigned long __cil_tmp27 ;
8123 struct list_head *__cil_tmp28 ;
8124 struct mousedev *__cil_tmp29 ;
8125 unsigned long __cil_tmp30 ;
8126 unsigned long __cil_tmp31 ;
8127 struct list_head *__cil_tmp32 ;
8128 unsigned int __cil_tmp33 ;
8129 char *__cil_tmp34 ;
8130 char *__cil_tmp35 ;
8131
8132 {
8133#line 472
8134 tmp___7 = *((int *)mousedev_mix);
8135#line 472
8136 __cil_tmp6 = *((int *)mousedev_mix);
8137#line 472
8138 *((int *)mousedev_mix) = __cil_tmp6 + 1;
8139#line 472
8140 if (tmp___7) {
8141#line 473
8142 return;
8143 } else {
8144
8145 }
8146#line 475
8147 __cil_tmp7 = & mousedev_mix_list;
8148#line 475
8149 __cil_tmp8 = *((struct list_head **)__cil_tmp7);
8150#line 475
8151 __mptr = (struct list_head *)__cil_tmp8;
8152#line 475
8153 __cil_tmp9 = (struct mousedev *)0;
8154#line 475
8155 __cil_tmp10 = (unsigned long )__cil_tmp9;
8156#line 475
8157 __cil_tmp11 = __cil_tmp10 + 1008;
8158#line 475
8159 __cil_tmp12 = (struct list_head *)__cil_tmp11;
8160#line 475
8161 __cil_tmp13 = (unsigned int )__cil_tmp12;
8162#line 475
8163 __cil_tmp14 = (char *)__mptr;
8164#line 475
8165 __cil_tmp15 = __cil_tmp14 - __cil_tmp13;
8166#line 475
8167 mousedev = (struct mousedev *)__cil_tmp15;
8168 {
8169#line 475
8170 while (1) {
8171 while_continue: ;
8172 {
8173#line 475
8174 __cil_tmp16 = (unsigned long )(& mousedev_mix_list);
8175#line 475
8176 __cil_tmp17 = (unsigned long )mousedev;
8177#line 475
8178 __cil_tmp18 = __cil_tmp17 + 1008;
8179#line 475
8180 __cil_tmp19 = (struct list_head *)__cil_tmp18;
8181#line 475
8182 __cil_tmp20 = (unsigned long )__cil_tmp19;
8183#line 475
8184 if (__cil_tmp20 != __cil_tmp16) {
8185
8186 } else {
8187#line 475
8188 goto while_break;
8189 }
8190 }
8191 {
8192#line 476
8193 __cil_tmp21 = (unsigned long )mousedev;
8194#line 476
8195 __cil_tmp22 = __cil_tmp21 + 1024;
8196#line 476
8197 __cil_tmp23 = *((int *)__cil_tmp22);
8198#line 476
8199 if (! __cil_tmp23) {
8200 {
8201#line 477
8202 tmp___8 = mousedev_open_device(mousedev);
8203 }
8204#line 477
8205 if (tmp___8) {
8206#line 478
8207 goto __Cont;
8208 } else {
8209
8210 }
8211#line 480
8212 __cil_tmp24 = (unsigned long )mousedev;
8213#line 480
8214 __cil_tmp25 = __cil_tmp24 + 1024;
8215#line 480
8216 *((int *)__cil_tmp25) = 1;
8217 } else {
8218
8219 }
8220 }
8221 __Cont:
8222#line 475
8223 __cil_tmp26 = (unsigned long )mousedev;
8224#line 475
8225 __cil_tmp27 = __cil_tmp26 + 1008;
8226#line 475
8227 __cil_tmp28 = *((struct list_head **)__cil_tmp27);
8228#line 475
8229 __mptr___0 = (struct list_head *)__cil_tmp28;
8230#line 475
8231 __cil_tmp29 = (struct mousedev *)0;
8232#line 475
8233 __cil_tmp30 = (unsigned long )__cil_tmp29;
8234#line 475
8235 __cil_tmp31 = __cil_tmp30 + 1008;
8236#line 475
8237 __cil_tmp32 = (struct list_head *)__cil_tmp31;
8238#line 475
8239 __cil_tmp33 = (unsigned int )__cil_tmp32;
8240#line 475
8241 __cil_tmp34 = (char *)__mptr___0;
8242#line 475
8243 __cil_tmp35 = __cil_tmp34 - __cil_tmp33;
8244#line 475
8245 mousedev = (struct mousedev *)__cil_tmp35;
8246 }
8247 while_break: ;
8248 }
8249#line 483
8250 return;
8251}
8252}
8253#line 490 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8254static void mixdev_close_devices(void)
8255{ struct mousedev *mousedev ;
8256 struct list_head *__mptr ;
8257 struct list_head *__mptr___0 ;
8258 int __cil_tmp4 ;
8259 struct list_head *__cil_tmp5 ;
8260 struct list_head *__cil_tmp6 ;
8261 struct mousedev *__cil_tmp7 ;
8262 unsigned long __cil_tmp8 ;
8263 unsigned long __cil_tmp9 ;
8264 struct list_head *__cil_tmp10 ;
8265 unsigned int __cil_tmp11 ;
8266 char *__cil_tmp12 ;
8267 char *__cil_tmp13 ;
8268 unsigned long __cil_tmp14 ;
8269 unsigned long __cil_tmp15 ;
8270 unsigned long __cil_tmp16 ;
8271 struct list_head *__cil_tmp17 ;
8272 unsigned long __cil_tmp18 ;
8273 unsigned long __cil_tmp19 ;
8274 unsigned long __cil_tmp20 ;
8275 unsigned long __cil_tmp21 ;
8276 unsigned long __cil_tmp22 ;
8277 unsigned long __cil_tmp23 ;
8278 unsigned long __cil_tmp24 ;
8279 struct list_head *__cil_tmp25 ;
8280 struct mousedev *__cil_tmp26 ;
8281 unsigned long __cil_tmp27 ;
8282 unsigned long __cil_tmp28 ;
8283 struct list_head *__cil_tmp29 ;
8284 unsigned int __cil_tmp30 ;
8285 char *__cil_tmp31 ;
8286 char *__cil_tmp32 ;
8287
8288 {
8289#line 494
8290 __cil_tmp4 = *((int *)mousedev_mix);
8291#line 494
8292 *((int *)mousedev_mix) = __cil_tmp4 - 1;
8293#line 494
8294 if (*((int *)mousedev_mix)) {
8295#line 495
8296 return;
8297 } else {
8298
8299 }
8300#line 497
8301 __cil_tmp5 = & mousedev_mix_list;
8302#line 497
8303 __cil_tmp6 = *((struct list_head **)__cil_tmp5);
8304#line 497
8305 __mptr = (struct list_head *)__cil_tmp6;
8306#line 497
8307 __cil_tmp7 = (struct mousedev *)0;
8308#line 497
8309 __cil_tmp8 = (unsigned long )__cil_tmp7;
8310#line 497
8311 __cil_tmp9 = __cil_tmp8 + 1008;
8312#line 497
8313 __cil_tmp10 = (struct list_head *)__cil_tmp9;
8314#line 497
8315 __cil_tmp11 = (unsigned int )__cil_tmp10;
8316#line 497
8317 __cil_tmp12 = (char *)__mptr;
8318#line 497
8319 __cil_tmp13 = __cil_tmp12 - __cil_tmp11;
8320#line 497
8321 mousedev = (struct mousedev *)__cil_tmp13;
8322 {
8323#line 497
8324 while (1) {
8325 while_continue: ;
8326 {
8327#line 497
8328 __cil_tmp14 = (unsigned long )(& mousedev_mix_list);
8329#line 497
8330 __cil_tmp15 = (unsigned long )mousedev;
8331#line 497
8332 __cil_tmp16 = __cil_tmp15 + 1008;
8333#line 497
8334 __cil_tmp17 = (struct list_head *)__cil_tmp16;
8335#line 497
8336 __cil_tmp18 = (unsigned long )__cil_tmp17;
8337#line 497
8338 if (__cil_tmp18 != __cil_tmp14) {
8339
8340 } else {
8341#line 497
8342 goto while_break;
8343 }
8344 }
8345 {
8346#line 498
8347 __cil_tmp19 = (unsigned long )mousedev;
8348#line 498
8349 __cil_tmp20 = __cil_tmp19 + 1024;
8350#line 498
8351 if (*((int *)__cil_tmp20)) {
8352 {
8353#line 499
8354 __cil_tmp21 = (unsigned long )mousedev;
8355#line 499
8356 __cil_tmp22 = __cil_tmp21 + 1024;
8357#line 499
8358 *((int *)__cil_tmp22) = 0;
8359#line 500
8360 mousedev_close_device(mousedev);
8361 }
8362 } else {
8363
8364 }
8365 }
8366#line 497
8367 __cil_tmp23 = (unsigned long )mousedev;
8368#line 497
8369 __cil_tmp24 = __cil_tmp23 + 1008;
8370#line 497
8371 __cil_tmp25 = *((struct list_head **)__cil_tmp24);
8372#line 497
8373 __mptr___0 = (struct list_head *)__cil_tmp25;
8374#line 497
8375 __cil_tmp26 = (struct mousedev *)0;
8376#line 497
8377 __cil_tmp27 = (unsigned long )__cil_tmp26;
8378#line 497
8379 __cil_tmp28 = __cil_tmp27 + 1008;
8380#line 497
8381 __cil_tmp29 = (struct list_head *)__cil_tmp28;
8382#line 497
8383 __cil_tmp30 = (unsigned int )__cil_tmp29;
8384#line 497
8385 __cil_tmp31 = (char *)__mptr___0;
8386#line 497
8387 __cil_tmp32 = __cil_tmp31 - __cil_tmp30;
8388#line 497
8389 mousedev = (struct mousedev *)__cil_tmp32;
8390 }
8391 while_break: ;
8392 }
8393#line 503
8394 return;
8395}
8396}
8397#line 506 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8398static void mousedev_attach_client(struct mousedev *mousedev , struct mousedev_client *client )
8399{ unsigned long __cil_tmp3 ;
8400 unsigned long __cil_tmp4 ;
8401 spinlock_t *__cil_tmp5 ;
8402 unsigned long __cil_tmp6 ;
8403 unsigned long __cil_tmp7 ;
8404 struct list_head *__cil_tmp8 ;
8405 unsigned long __cil_tmp9 ;
8406 unsigned long __cil_tmp10 ;
8407 struct list_head *__cil_tmp11 ;
8408 unsigned long __cil_tmp12 ;
8409 unsigned long __cil_tmp13 ;
8410 spinlock_t *__cil_tmp14 ;
8411
8412 {
8413 {
8414#line 509
8415 __cil_tmp3 = (unsigned long )mousedev;
8416#line 509
8417 __cil_tmp4 = __cil_tmp3 + 136;
8418#line 509
8419 __cil_tmp5 = (spinlock_t *)__cil_tmp4;
8420#line 509
8421 spin_lock(__cil_tmp5);
8422#line 510
8423 __cil_tmp6 = (unsigned long )client;
8424#line 510
8425 __cil_tmp7 = __cil_tmp6 + 16;
8426#line 510
8427 __cil_tmp8 = (struct list_head *)__cil_tmp7;
8428#line 510
8429 __cil_tmp9 = (unsigned long )mousedev;
8430#line 510
8431 __cil_tmp10 = __cil_tmp9 + 120;
8432#line 510
8433 __cil_tmp11 = (struct list_head *)__cil_tmp10;
8434#line 510
8435 list_add_tail_rcu(__cil_tmp8, __cil_tmp11);
8436#line 511
8437 __cil_tmp12 = (unsigned long )mousedev;
8438#line 511
8439 __cil_tmp13 = __cil_tmp12 + 136;
8440#line 511
8441 __cil_tmp14 = (spinlock_t *)__cil_tmp13;
8442#line 511
8443 spin_unlock(__cil_tmp14);
8444 }
8445#line 512
8446 return;
8447}
8448}
8449#line 514 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8450static void mousedev_detach_client(struct mousedev *mousedev , struct mousedev_client *client )
8451{ unsigned long __cil_tmp3 ;
8452 unsigned long __cil_tmp4 ;
8453 spinlock_t *__cil_tmp5 ;
8454 unsigned long __cil_tmp6 ;
8455 unsigned long __cil_tmp7 ;
8456 struct list_head *__cil_tmp8 ;
8457 unsigned long __cil_tmp9 ;
8458 unsigned long __cil_tmp10 ;
8459 spinlock_t *__cil_tmp11 ;
8460
8461 {
8462 {
8463#line 517
8464 __cil_tmp3 = (unsigned long )mousedev;
8465#line 517
8466 __cil_tmp4 = __cil_tmp3 + 136;
8467#line 517
8468 __cil_tmp5 = (spinlock_t *)__cil_tmp4;
8469#line 517
8470 spin_lock(__cil_tmp5);
8471#line 518
8472 __cil_tmp6 = (unsigned long )client;
8473#line 518
8474 __cil_tmp7 = __cil_tmp6 + 16;
8475#line 518
8476 __cil_tmp8 = (struct list_head *)__cil_tmp7;
8477#line 518
8478 list_del_rcu(__cil_tmp8);
8479#line 519
8480 __cil_tmp9 = (unsigned long )mousedev;
8481#line 519
8482 __cil_tmp10 = __cil_tmp9 + 136;
8483#line 519
8484 __cil_tmp11 = (spinlock_t *)__cil_tmp10;
8485#line 519
8486 spin_unlock(__cil_tmp11);
8487#line 520
8488 synchronize_rcu();
8489 }
8490#line 521
8491 return;
8492}
8493}
8494#line 523 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8495static int mousedev_release(struct inode *inode , struct file *file )
8496{ struct mousedev_client *client ;
8497 struct mousedev *mousedev ;
8498 unsigned long __cil_tmp5 ;
8499 unsigned long __cil_tmp6 ;
8500 void *__cil_tmp7 ;
8501 unsigned long __cil_tmp8 ;
8502 unsigned long __cil_tmp9 ;
8503 void *__cil_tmp10 ;
8504 unsigned long __cil_tmp11 ;
8505 unsigned long __cil_tmp12 ;
8506 struct device *__cil_tmp13 ;
8507
8508 {
8509 {
8510#line 525
8511 __cil_tmp5 = (unsigned long )file;
8512#line 525
8513 __cil_tmp6 = __cil_tmp5 + 200;
8514#line 525
8515 __cil_tmp7 = *((void **)__cil_tmp6);
8516#line 525
8517 client = (struct mousedev_client *)__cil_tmp7;
8518#line 526
8519 __cil_tmp8 = (unsigned long )client;
8520#line 526
8521 __cil_tmp9 = __cil_tmp8 + 8;
8522#line 526
8523 mousedev = *((struct mousedev **)__cil_tmp9);
8524#line 528
8525 mousedev_detach_client(mousedev, client);
8526#line 529
8527 __cil_tmp10 = (void *)client;
8528#line 529
8529 kfree(__cil_tmp10);
8530#line 531
8531 mousedev_close_device(mousedev);
8532#line 532
8533 __cil_tmp11 = (unsigned long )mousedev;
8534#line 532
8535 __cil_tmp12 = __cil_tmp11 + 232;
8536#line 532
8537 __cil_tmp13 = (struct device *)__cil_tmp12;
8538#line 532
8539 put_device(__cil_tmp13);
8540 }
8541#line 534
8542 return (0);
8543}
8544}
8545#line 573 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8546static struct lock_class_key __key___4 ;
8547#line 537 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8548static int mousedev_open(struct inode *inode , struct file *file )
8549{ struct mousedev_client *client ;
8550 struct mousedev *mousedev ;
8551 int error ;
8552 int i ;
8553 unsigned int tmp___7 ;
8554 unsigned int tmp___8 ;
8555 void *tmp___9 ;
8556 struct inode *__cil_tmp10 ;
8557 struct inode *__cil_tmp11 ;
8558 unsigned int __cil_tmp12 ;
8559 unsigned long __cil_tmp13 ;
8560 unsigned long __cil_tmp14 ;
8561 unsigned long __cil_tmp15 ;
8562 unsigned long __cil_tmp16 ;
8563 struct device *__cil_tmp17 ;
8564 unsigned long __cil_tmp18 ;
8565 unsigned long __cil_tmp19 ;
8566 spinlock_t *__cil_tmp20 ;
8567 unsigned long __cil_tmp21 ;
8568 unsigned long __cil_tmp22 ;
8569 struct raw_spinlock *__cil_tmp23 ;
8570 unsigned long __cil_tmp24 ;
8571 unsigned long __cil_tmp25 ;
8572 int *__cil_tmp26 ;
8573 int __cil_tmp27 ;
8574 unsigned long __cil_tmp28 ;
8575 unsigned long __cil_tmp29 ;
8576 int *__cil_tmp30 ;
8577 int __cil_tmp31 ;
8578 unsigned long __cil_tmp32 ;
8579 unsigned long __cil_tmp33 ;
8580 unsigned long __cil_tmp34 ;
8581 unsigned long __cil_tmp35 ;
8582 void *__cil_tmp36 ;
8583 unsigned long __cil_tmp37 ;
8584 unsigned long __cil_tmp38 ;
8585 struct device *__cil_tmp39 ;
8586
8587 {
8588 {
8589#line 545
8590 __cil_tmp10 = (struct inode *)inode;
8591#line 545
8592 tmp___8 = imajor(__cil_tmp10);
8593 }
8594#line 545
8595 if (tmp___8 == 10U) {
8596#line 546
8597 i = 31;
8598 } else {
8599 {
8600#line 549
8601 __cil_tmp11 = (struct inode *)inode;
8602#line 549
8603 tmp___7 = iminor(__cil_tmp11);
8604#line 549
8605 __cil_tmp12 = tmp___7 - 32U;
8606#line 549
8607 i = (int )__cil_tmp12;
8608 }
8609 }
8610#line 551
8611 if (i >= 32) {
8612#line 552
8613 return (-19);
8614 } else {
8615
8616 }
8617 {
8618#line 554
8619 error = (int )mutex_lock_interruptible(& mousedev_table_mutex);
8620 }
8621#line 555
8622 if (error) {
8623#line 556
8624 return (error);
8625 } else {
8626
8627 }
8628#line 558
8629 __cil_tmp13 = i * 8UL;
8630#line 558
8631 __cil_tmp14 = (unsigned long )(mousedev_table) + __cil_tmp13;
8632#line 558
8633 mousedev = *((struct mousedev **)__cil_tmp14);
8634#line 559
8635 if (mousedev) {
8636 {
8637#line 560
8638 __cil_tmp15 = (unsigned long )mousedev;
8639#line 560
8640 __cil_tmp16 = __cil_tmp15 + 232;
8641#line 560
8642 __cil_tmp17 = (struct device *)__cil_tmp16;
8643#line 560
8644 get_device(__cil_tmp17);
8645 }
8646 } else {
8647
8648 }
8649 {
8650#line 561
8651 mutex_unlock(& mousedev_table_mutex);
8652 }
8653#line 563
8654 if (! mousedev) {
8655#line 564
8656 return (-19);
8657 } else {
8658
8659 }
8660 {
8661#line 567
8662 tmp___9 = kzalloc(480UL, 208U);
8663#line 567
8664 client = (struct mousedev_client *)tmp___9;
8665 }
8666#line 568
8667 if (! client) {
8668#line 569
8669 error = -12;
8670#line 570
8671 goto err_put_mousedev;
8672 } else {
8673
8674 }
8675 {
8676#line 573
8677 while (1) {
8678 while_continue: ;
8679 {
8680#line 573
8681 __cil_tmp18 = (unsigned long )client;
8682#line 573
8683 __cil_tmp19 = __cil_tmp18 + 424;
8684#line 573
8685 __cil_tmp20 = (spinlock_t *)__cil_tmp19;
8686#line 573
8687 spinlock_check(__cil_tmp20);
8688 }
8689 {
8690#line 573
8691 while (1) {
8692 while_continue___0: ;
8693 {
8694#line 573
8695 __cil_tmp21 = (unsigned long )client;
8696#line 573
8697 __cil_tmp22 = __cil_tmp21 + 424;
8698#line 573
8699 __cil_tmp23 = (struct raw_spinlock *)__cil_tmp22;
8700#line 573
8701 __raw_spin_lock_init(__cil_tmp23, "&(&client->packet_lock)->rlock", & __key___4);
8702 }
8703#line 573
8704 goto while_break___0;
8705 }
8706 while_break___0: ;
8707 }
8708#line 573
8709 goto while_break;
8710 }
8711 while_break: ;
8712 }
8713 {
8714#line 574
8715 __cil_tmp24 = (unsigned long )client;
8716#line 574
8717 __cil_tmp25 = __cil_tmp24 + 448;
8718#line 574
8719 __cil_tmp26 = & xres;
8720#line 574
8721 __cil_tmp27 = *__cil_tmp26;
8722#line 574
8723 *((int *)__cil_tmp25) = __cil_tmp27 / 2;
8724#line 575
8725 __cil_tmp28 = (unsigned long )client;
8726#line 575
8727 __cil_tmp29 = __cil_tmp28 + 452;
8728#line 575
8729 __cil_tmp30 = & yres;
8730#line 575
8731 __cil_tmp31 = *__cil_tmp30;
8732#line 575
8733 *((int *)__cil_tmp29) = __cil_tmp31 / 2;
8734#line 576
8735 __cil_tmp32 = (unsigned long )client;
8736#line 576
8737 __cil_tmp33 = __cil_tmp32 + 8;
8738#line 576
8739 *((struct mousedev **)__cil_tmp33) = mousedev;
8740#line 577
8741 mousedev_attach_client(mousedev, client);
8742#line 579
8743 error = mousedev_open_device(mousedev);
8744 }
8745#line 580
8746 if (error) {
8747#line 581
8748 goto err_free_client;
8749 } else {
8750
8751 }
8752#line 583
8753 __cil_tmp34 = (unsigned long )file;
8754#line 583
8755 __cil_tmp35 = __cil_tmp34 + 200;
8756#line 583
8757 *((void **)__cil_tmp35) = (void *)client;
8758#line 584
8759 return (0);
8760 err_free_client:
8761 {
8762#line 587
8763 mousedev_detach_client(mousedev, client);
8764#line 588
8765 __cil_tmp36 = (void *)client;
8766#line 588
8767 kfree(__cil_tmp36);
8768 }
8769 err_put_mousedev:
8770 {
8771#line 590
8772 __cil_tmp37 = (unsigned long )mousedev;
8773#line 590
8774 __cil_tmp38 = __cil_tmp37 + 232;
8775#line 590
8776 __cil_tmp39 = (struct device *)__cil_tmp38;
8777#line 590
8778 put_device(__cil_tmp39);
8779 }
8780#line 591
8781 return (error);
8782}
8783}
8784#line 594
8785__inline static int mousedev_limit_delta(int delta , int limit ) __attribute__((__no_instrument_function__)) ;
8786#line 594 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8787__inline static int mousedev_limit_delta(int delta , int limit )
8788{ int tmp___7 ;
8789 int tmp___8 ;
8790 int __cil_tmp5 ;
8791
8792 {
8793#line 596
8794 if (delta > limit) {
8795#line 596
8796 tmp___8 = limit;
8797 } else {
8798 {
8799#line 596
8800 __cil_tmp5 = - limit;
8801#line 596
8802 if (delta < __cil_tmp5) {
8803#line 596
8804 tmp___7 = - limit;
8805 } else {
8806#line 596
8807 tmp___7 = delta;
8808 }
8809 }
8810#line 596
8811 tmp___8 = tmp___7;
8812 }
8813#line 596
8814 return (tmp___8);
8815}
8816}
8817#line 599 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
8818static void mousedev_packet(struct mousedev_client *client , signed char *ps2_data )
8819{ struct mousedev_motion *p ;
8820 int tmp___7 ;
8821 int tmp___8 ;
8822 int tmp___9 ;
8823 int tmp___10 ;
8824 unsigned long __cil_tmp8 ;
8825 unsigned long __cil_tmp9 ;
8826 unsigned int __cil_tmp10 ;
8827 unsigned long __cil_tmp11 ;
8828 unsigned long __cil_tmp12 ;
8829 unsigned long __cil_tmp13 ;
8830 unsigned long __cil_tmp14 ;
8831 signed char *__cil_tmp15 ;
8832 unsigned long __cil_tmp16 ;
8833 unsigned long __cil_tmp17 ;
8834 unsigned long __cil_tmp18 ;
8835 unsigned long __cil_tmp19 ;
8836 unsigned long __cil_tmp20 ;
8837 unsigned long __cil_tmp21 ;
8838 int __cil_tmp22 ;
8839 int __cil_tmp23 ;
8840 int __cil_tmp24 ;
8841 int __cil_tmp25 ;
8842 int __cil_tmp26 ;
8843 int __cil_tmp27 ;
8844 int __cil_tmp28 ;
8845 int __cil_tmp29 ;
8846 unsigned long __cil_tmp30 ;
8847 unsigned long __cil_tmp31 ;
8848 int __cil_tmp32 ;
8849 signed char *__cil_tmp33 ;
8850 unsigned long __cil_tmp34 ;
8851 unsigned long __cil_tmp35 ;
8852 int __cil_tmp36 ;
8853 signed char *__cil_tmp37 ;
8854 signed char *__cil_tmp38 ;
8855 signed char __cil_tmp39 ;
8856 int __cil_tmp40 ;
8857 int __cil_tmp41 ;
8858 unsigned long __cil_tmp42 ;
8859 unsigned long __cil_tmp43 ;
8860 signed char *__cil_tmp44 ;
8861 signed char __cil_tmp45 ;
8862 int __cil_tmp46 ;
8863 unsigned long __cil_tmp47 ;
8864 unsigned long __cil_tmp48 ;
8865 int __cil_tmp49 ;
8866 unsigned long __cil_tmp50 ;
8867 unsigned long __cil_tmp51 ;
8868 enum mousedev_emul __cil_tmp52 ;
8869 unsigned long __cil_tmp53 ;
8870 unsigned long __cil_tmp54 ;
8871 int __cil_tmp55 ;
8872 signed char *__cil_tmp56 ;
8873 unsigned long __cil_tmp57 ;
8874 unsigned long __cil_tmp58 ;
8875 signed char *__cil_tmp59 ;
8876 signed char __cil_tmp60 ;
8877 int __cil_tmp61 ;
8878 unsigned long __cil_tmp62 ;
8879 unsigned long __cil_tmp63 ;
8880 int __cil_tmp64 ;
8881 signed char *__cil_tmp65 ;
8882 unsigned long __cil_tmp66 ;
8883 unsigned long __cil_tmp67 ;
8884 unsigned long __cil_tmp68 ;
8885 unsigned long __cil_tmp69 ;
8886 unsigned long __cil_tmp70 ;
8887 signed char *__cil_tmp71 ;
8888 signed char __cil_tmp72 ;
8889 int __cil_tmp73 ;
8890 int __cil_tmp74 ;
8891 unsigned long __cil_tmp75 ;
8892 unsigned long __cil_tmp76 ;
8893 unsigned long __cil_tmp77 ;
8894 unsigned long __cil_tmp78 ;
8895 signed char *__cil_tmp79 ;
8896 unsigned long __cil_tmp80 ;
8897 unsigned long __cil_tmp81 ;
8898 unsigned long __cil_tmp82 ;
8899 unsigned long __cil_tmp83 ;
8900 unsigned long __cil_tmp84 ;
8901 unsigned long __cil_tmp85 ;
8902 unsigned long __cil_tmp86 ;
8903 unsigned long __cil_tmp87 ;
8904 unsigned long __cil_tmp88 ;
8905 unsigned long __cil_tmp89 ;
8906 unsigned long __cil_tmp90 ;
8907 signed char *__cil_tmp91 ;
8908 signed char __cil_tmp92 ;
8909 unsigned long __cil_tmp93 ;
8910 unsigned long __cil_tmp94 ;
8911 unsigned long __cil_tmp95 ;
8912 unsigned long __cil_tmp96 ;
8913 int __cil_tmp97 ;
8914 signed char *__cil_tmp98 ;
8915 unsigned long __cil_tmp99 ;
8916 unsigned long __cil_tmp100 ;
8917 signed char *__cil_tmp101 ;
8918 signed char __cil_tmp102 ;
8919 int __cil_tmp103 ;
8920 unsigned long __cil_tmp104 ;
8921 unsigned long __cil_tmp105 ;
8922 int __cil_tmp106 ;
8923 unsigned long __cil_tmp107 ;
8924 unsigned long __cil_tmp108 ;
8925 signed char *__cil_tmp109 ;
8926 unsigned long __cil_tmp110 ;
8927 unsigned long __cil_tmp111 ;
8928 unsigned long __cil_tmp112 ;
8929 unsigned long __cil_tmp113 ;
8930 unsigned long __cil_tmp114 ;
8931 unsigned long __cil_tmp115 ;
8932 unsigned long __cil_tmp116 ;
8933 unsigned long __cil_tmp117 ;
8934 unsigned long __cil_tmp118 ;
8935 unsigned long __cil_tmp119 ;
8936 unsigned long __cil_tmp120 ;
8937 signed char *__cil_tmp121 ;
8938 signed char __cil_tmp122 ;
8939 unsigned long __cil_tmp123 ;
8940 unsigned long __cil_tmp124 ;
8941 unsigned long __cil_tmp125 ;
8942 unsigned long __cil_tmp126 ;
8943 unsigned long __cil_tmp127 ;
8944 unsigned long __cil_tmp128 ;
8945 int __cil_tmp129 ;
8946 unsigned long __cil_tmp130 ;
8947 unsigned long __cil_tmp131 ;
8948 int __cil_tmp132 ;
8949 unsigned long __cil_tmp133 ;
8950 unsigned long __cil_tmp134 ;
8951 int __cil_tmp135 ;
8952 unsigned long __cil_tmp136 ;
8953 unsigned long __cil_tmp137 ;
8954 unsigned int __cil_tmp138 ;
8955 unsigned long __cil_tmp139 ;
8956 unsigned long __cil_tmp140 ;
8957 unsigned int __cil_tmp141 ;
8958 unsigned long __cil_tmp142 ;
8959 unsigned long __cil_tmp143 ;
8960 unsigned long __cil_tmp144 ;
8961 unsigned long __cil_tmp145 ;
8962 unsigned long __cil_tmp146 ;
8963 unsigned long __cil_tmp147 ;
8964 unsigned long __cil_tmp148 ;
8965 unsigned long __cil_tmp149 ;
8966 unsigned long __cil_tmp150 ;
8967 unsigned long __cil_tmp151 ;
8968 unsigned int __cil_tmp152 ;
8969 unsigned int __cil_tmp153 ;
8970
8971 {
8972 {
8973#line 602
8974 __cil_tmp8 = (unsigned long )client;
8975#line 602
8976 __cil_tmp9 = __cil_tmp8 + 420;
8977#line 602
8978 __cil_tmp10 = *((unsigned int *)__cil_tmp9);
8979#line 602
8980 __cil_tmp11 = __cil_tmp10 * 24UL;
8981#line 602
8982 __cil_tmp12 = 32 + __cil_tmp11;
8983#line 602
8984 __cil_tmp13 = (unsigned long )client;
8985#line 602
8986 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
8987#line 602
8988 p = (struct mousedev_motion *)__cil_tmp14;
8989#line 604
8990 __cil_tmp15 = ps2_data + 0;
8991#line 604
8992 __cil_tmp16 = (unsigned long )p;
8993#line 604
8994 __cil_tmp17 = __cil_tmp16 + 16;
8995#line 604
8996 __cil_tmp18 = *((unsigned long *)__cil_tmp17);
8997#line 604
8998 __cil_tmp19 = __cil_tmp18 & 7UL;
8999#line 604
9000 __cil_tmp20 = (unsigned long )p;
9001#line 604
9002 __cil_tmp21 = __cil_tmp20 + 4;
9003#line 604
9004 __cil_tmp22 = *((int *)__cil_tmp21);
9005#line 604
9006 __cil_tmp23 = __cil_tmp22 < 0;
9007#line 604
9008 __cil_tmp24 = __cil_tmp23 << 5;
9009#line 604
9010 __cil_tmp25 = *((int *)p);
9011#line 604
9012 __cil_tmp26 = __cil_tmp25 < 0;
9013#line 604
9014 __cil_tmp27 = __cil_tmp26 << 4;
9015#line 604
9016 __cil_tmp28 = 8 | __cil_tmp27;
9017#line 604
9018 __cil_tmp29 = __cil_tmp28 | __cil_tmp24;
9019#line 604
9020 __cil_tmp30 = (unsigned long )__cil_tmp29;
9021#line 604
9022 __cil_tmp31 = __cil_tmp30 | __cil_tmp19;
9023#line 604
9024 *__cil_tmp15 = (signed char )__cil_tmp31;
9025#line 606
9026 __cil_tmp32 = *((int *)p);
9027#line 606
9028 tmp___7 = mousedev_limit_delta(__cil_tmp32, 127);
9029#line 606
9030 __cil_tmp33 = ps2_data + 1;
9031#line 606
9032 *__cil_tmp33 = (signed char )tmp___7;
9033#line 607
9034 __cil_tmp34 = (unsigned long )p;
9035#line 607
9036 __cil_tmp35 = __cil_tmp34 + 4;
9037#line 607
9038 __cil_tmp36 = *((int *)__cil_tmp35);
9039#line 607
9040 tmp___8 = mousedev_limit_delta(__cil_tmp36, 127);
9041#line 607
9042 __cil_tmp37 = ps2_data + 2;
9043#line 607
9044 *__cil_tmp37 = (signed char )tmp___8;
9045#line 608
9046 __cil_tmp38 = ps2_data + 1;
9047#line 608
9048 __cil_tmp39 = *__cil_tmp38;
9049#line 608
9050 __cil_tmp40 = (int )__cil_tmp39;
9051#line 608
9052 __cil_tmp41 = *((int *)p);
9053#line 608
9054 *((int *)p) = __cil_tmp41 - __cil_tmp40;
9055#line 609
9056 __cil_tmp42 = (unsigned long )p;
9057#line 609
9058 __cil_tmp43 = __cil_tmp42 + 4;
9059#line 609
9060 __cil_tmp44 = ps2_data + 2;
9061#line 609
9062 __cil_tmp45 = *__cil_tmp44;
9063#line 609
9064 __cil_tmp46 = (int )__cil_tmp45;
9065#line 609
9066 __cil_tmp47 = (unsigned long )p;
9067#line 609
9068 __cil_tmp48 = __cil_tmp47 + 4;
9069#line 609
9070 __cil_tmp49 = *((int *)__cil_tmp48);
9071#line 609
9072 *((int *)__cil_tmp43) = __cil_tmp49 - __cil_tmp46;
9073 }
9074 {
9075#line 611
9076 __cil_tmp50 = (unsigned long )client;
9077#line 611
9078 __cil_tmp51 = __cil_tmp50 + 468;
9079#line 611
9080 __cil_tmp52 = *((enum mousedev_emul *)__cil_tmp51);
9081#line 612
9082 if ((int )__cil_tmp52 == 2) {
9083#line 612
9084 goto case_2;
9085 } else
9086#line 619
9087 if ((int )__cil_tmp52 == 1) {
9088#line 619
9089 goto case_1;
9090 } else {
9091 {
9092#line 628
9093 goto switch_default;
9094#line 611
9095 if (0) {
9096 case_2:
9097 {
9098#line 613
9099 __cil_tmp53 = (unsigned long )p;
9100#line 613
9101 __cil_tmp54 = __cil_tmp53 + 8;
9102#line 613
9103 __cil_tmp55 = *((int *)__cil_tmp54);
9104#line 613
9105 tmp___9 = mousedev_limit_delta(__cil_tmp55, 7);
9106#line 613
9107 __cil_tmp56 = ps2_data + 3;
9108#line 613
9109 *__cil_tmp56 = (signed char )tmp___9;
9110#line 614
9111 __cil_tmp57 = (unsigned long )p;
9112#line 614
9113 __cil_tmp58 = __cil_tmp57 + 8;
9114#line 614
9115 __cil_tmp59 = ps2_data + 3;
9116#line 614
9117 __cil_tmp60 = *__cil_tmp59;
9118#line 614
9119 __cil_tmp61 = (int )__cil_tmp60;
9120#line 614
9121 __cil_tmp62 = (unsigned long )p;
9122#line 614
9123 __cil_tmp63 = __cil_tmp62 + 8;
9124#line 614
9125 __cil_tmp64 = *((int *)__cil_tmp63);
9126#line 614
9127 *((int *)__cil_tmp58) = __cil_tmp64 - __cil_tmp61;
9128#line 615
9129 __cil_tmp65 = ps2_data + 3;
9130#line 615
9131 __cil_tmp66 = (unsigned long )p;
9132#line 615
9133 __cil_tmp67 = __cil_tmp66 + 16;
9134#line 615
9135 __cil_tmp68 = *((unsigned long *)__cil_tmp67);
9136#line 615
9137 __cil_tmp69 = __cil_tmp68 & 24UL;
9138#line 615
9139 __cil_tmp70 = __cil_tmp69 << 1;
9140#line 615
9141 __cil_tmp71 = ps2_data + 3;
9142#line 615
9143 __cil_tmp72 = *__cil_tmp71;
9144#line 615
9145 __cil_tmp73 = (int )__cil_tmp72;
9146#line 615
9147 __cil_tmp74 = __cil_tmp73 & 15;
9148#line 615
9149 __cil_tmp75 = (unsigned long )__cil_tmp74;
9150#line 615
9151 __cil_tmp76 = __cil_tmp75 | __cil_tmp70;
9152#line 615
9153 *__cil_tmp65 = (signed char )__cil_tmp76;
9154#line 616
9155 __cil_tmp77 = (unsigned long )client;
9156#line 616
9157 __cil_tmp78 = __cil_tmp77 + 464;
9158#line 616
9159 *((unsigned char *)__cil_tmp78) = (unsigned char)4;
9160 }
9161#line 617
9162 goto switch_break;
9163 case_1:
9164 {
9165#line 620
9166 __cil_tmp79 = ps2_data + 0;
9167#line 620
9168 __cil_tmp80 = (unsigned long )p;
9169#line 620
9170 __cil_tmp81 = __cil_tmp80 + 16;
9171#line 620
9172 __cil_tmp82 = *((unsigned long *)__cil_tmp81);
9173#line 620
9174 __cil_tmp83 = __cil_tmp82 & 8UL;
9175#line 620
9176 __cil_tmp84 = __cil_tmp83 >> 1;
9177#line 620
9178 __cil_tmp85 = (unsigned long )p;
9179#line 620
9180 __cil_tmp86 = __cil_tmp85 + 16;
9181#line 620
9182 __cil_tmp87 = *((unsigned long *)__cil_tmp86);
9183#line 620
9184 __cil_tmp88 = __cil_tmp87 & 16UL;
9185#line 620
9186 __cil_tmp89 = __cil_tmp88 >> 3;
9187#line 620
9188 __cil_tmp90 = __cil_tmp89 | __cil_tmp84;
9189#line 620
9190 __cil_tmp91 = ps2_data + 0;
9191#line 620
9192 __cil_tmp92 = *__cil_tmp91;
9193#line 620
9194 __cil_tmp93 = (unsigned long )__cil_tmp92;
9195#line 620
9196 __cil_tmp94 = __cil_tmp93 | __cil_tmp90;
9197#line 620
9198 *__cil_tmp79 = (signed char )__cil_tmp94;
9199#line 622
9200 __cil_tmp95 = (unsigned long )p;
9201#line 622
9202 __cil_tmp96 = __cil_tmp95 + 8;
9203#line 622
9204 __cil_tmp97 = *((int *)__cil_tmp96);
9205#line 622
9206 tmp___10 = mousedev_limit_delta(__cil_tmp97, 127);
9207#line 622
9208 __cil_tmp98 = ps2_data + 3;
9209#line 622
9210 *__cil_tmp98 = (signed char )tmp___10;
9211#line 623
9212 __cil_tmp99 = (unsigned long )p;
9213#line 623
9214 __cil_tmp100 = __cil_tmp99 + 8;
9215#line 623
9216 __cil_tmp101 = ps2_data + 3;
9217#line 623
9218 __cil_tmp102 = *__cil_tmp101;
9219#line 623
9220 __cil_tmp103 = (int )__cil_tmp102;
9221#line 623
9222 __cil_tmp104 = (unsigned long )p;
9223#line 623
9224 __cil_tmp105 = __cil_tmp104 + 8;
9225#line 623
9226 __cil_tmp106 = *((int *)__cil_tmp105);
9227#line 623
9228 *((int *)__cil_tmp100) = __cil_tmp106 - __cil_tmp103;
9229#line 624
9230 __cil_tmp107 = (unsigned long )client;
9231#line 624
9232 __cil_tmp108 = __cil_tmp107 + 464;
9233#line 624
9234 *((unsigned char *)__cil_tmp108) = (unsigned char)4;
9235 }
9236#line 625
9237 goto switch_break;
9238 switch_default:
9239#line 629
9240 __cil_tmp109 = ps2_data + 0;
9241#line 629
9242 __cil_tmp110 = (unsigned long )p;
9243#line 629
9244 __cil_tmp111 = __cil_tmp110 + 16;
9245#line 629
9246 __cil_tmp112 = *((unsigned long *)__cil_tmp111);
9247#line 629
9248 __cil_tmp113 = __cil_tmp112 & 8UL;
9249#line 629
9250 __cil_tmp114 = __cil_tmp113 >> 1;
9251#line 629
9252 __cil_tmp115 = (unsigned long )p;
9253#line 629
9254 __cil_tmp116 = __cil_tmp115 + 16;
9255#line 629
9256 __cil_tmp117 = *((unsigned long *)__cil_tmp116);
9257#line 629
9258 __cil_tmp118 = __cil_tmp117 & 16UL;
9259#line 629
9260 __cil_tmp119 = __cil_tmp118 >> 3;
9261#line 629
9262 __cil_tmp120 = __cil_tmp119 | __cil_tmp114;
9263#line 629
9264 __cil_tmp121 = ps2_data + 0;
9265#line 629
9266 __cil_tmp122 = *__cil_tmp121;
9267#line 629
9268 __cil_tmp123 = (unsigned long )__cil_tmp122;
9269#line 629
9270 __cil_tmp124 = __cil_tmp123 | __cil_tmp120;
9271#line 629
9272 *__cil_tmp109 = (signed char )__cil_tmp124;
9273#line 631
9274 __cil_tmp125 = (unsigned long )p;
9275#line 631
9276 __cil_tmp126 = __cil_tmp125 + 8;
9277#line 631
9278 *((int *)__cil_tmp126) = 0;
9279#line 632
9280 __cil_tmp127 = (unsigned long )client;
9281#line 632
9282 __cil_tmp128 = __cil_tmp127 + 464;
9283#line 632
9284 *((unsigned char *)__cil_tmp128) = (unsigned char)3;
9285#line 633
9286 goto switch_break;
9287 } else {
9288 switch_break: ;
9289 }
9290 }
9291 }
9292 }
9293 {
9294#line 636
9295 __cil_tmp129 = *((int *)p);
9296#line 636
9297 if (! __cil_tmp129) {
9298 {
9299#line 636
9300 __cil_tmp130 = (unsigned long )p;
9301#line 636
9302 __cil_tmp131 = __cil_tmp130 + 4;
9303#line 636
9304 __cil_tmp132 = *((int *)__cil_tmp131);
9305#line 636
9306 if (! __cil_tmp132) {
9307 {
9308#line 636
9309 __cil_tmp133 = (unsigned long )p;
9310#line 636
9311 __cil_tmp134 = __cil_tmp133 + 8;
9312#line 636
9313 __cil_tmp135 = *((int *)__cil_tmp134);
9314#line 636
9315 if (! __cil_tmp135) {
9316 {
9317#line 637
9318 __cil_tmp136 = (unsigned long )client;
9319#line 637
9320 __cil_tmp137 = __cil_tmp136 + 416;
9321#line 637
9322 __cil_tmp138 = *((unsigned int *)__cil_tmp137);
9323#line 637
9324 __cil_tmp139 = (unsigned long )client;
9325#line 637
9326 __cil_tmp140 = __cil_tmp139 + 420;
9327#line 637
9328 __cil_tmp141 = *((unsigned int *)__cil_tmp140);
9329#line 637
9330 if (__cil_tmp141 == __cil_tmp138) {
9331#line 638
9332 __cil_tmp142 = (unsigned long )client;
9333#line 638
9334 __cil_tmp143 = __cil_tmp142 + 462;
9335#line 638
9336 *((unsigned char *)__cil_tmp143) = (unsigned char)0;
9337#line 639
9338 __cil_tmp144 = (unsigned long )client;
9339#line 639
9340 __cil_tmp145 = __cil_tmp144 + 472;
9341#line 639
9342 __cil_tmp146 = (unsigned long )p;
9343#line 639
9344 __cil_tmp147 = __cil_tmp146 + 16;
9345#line 639
9346 *((unsigned long *)__cil_tmp145) = *((unsigned long *)__cil_tmp147);
9347 } else {
9348#line 641
9349 __cil_tmp148 = (unsigned long )client;
9350#line 641
9351 __cil_tmp149 = __cil_tmp148 + 420;
9352#line 641
9353 __cil_tmp150 = (unsigned long )client;
9354#line 641
9355 __cil_tmp151 = __cil_tmp150 + 420;
9356#line 641
9357 __cil_tmp152 = *((unsigned int *)__cil_tmp151);
9358#line 641
9359 __cil_tmp153 = __cil_tmp152 + 1U;
9360#line 641
9361 *((unsigned int *)__cil_tmp149) = __cil_tmp153 % 16U;
9362 }
9363 }
9364 } else {
9365
9366 }
9367 }
9368 } else {
9369
9370 }
9371 }
9372 } else {
9373
9374 }
9375 }
9376#line 643
9377 return;
9378}
9379}
9380#line 645 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
9381static void mousedev_generate_response(struct mousedev_client *client , int command )
9382{ unsigned char tmp___7 ;
9383 unsigned long __cil_tmp4 ;
9384 unsigned long __cil_tmp5 ;
9385 unsigned long __cil_tmp6 ;
9386 unsigned long __cil_tmp7 ;
9387 unsigned long __cil_tmp8 ;
9388 unsigned long __cil_tmp9 ;
9389 unsigned long __cil_tmp10 ;
9390 unsigned long __cil_tmp11 ;
9391 signed char *__cil_tmp12 ;
9392 unsigned long __cil_tmp13 ;
9393 unsigned long __cil_tmp14 ;
9394 unsigned long __cil_tmp15 ;
9395 unsigned long __cil_tmp16 ;
9396 unsigned char __cil_tmp17 ;
9397 int __cil_tmp18 ;
9398 int __cil_tmp19 ;
9399 unsigned long __cil_tmp20 ;
9400 unsigned long __cil_tmp21 ;
9401 enum mousedev_emul __cil_tmp22 ;
9402 unsigned long __cil_tmp23 ;
9403 unsigned long __cil_tmp24 ;
9404 unsigned long __cil_tmp25 ;
9405 unsigned long __cil_tmp26 ;
9406 unsigned long __cil_tmp27 ;
9407 unsigned long __cil_tmp28 ;
9408 unsigned long __cil_tmp29 ;
9409 unsigned long __cil_tmp30 ;
9410 unsigned long __cil_tmp31 ;
9411 unsigned long __cil_tmp32 ;
9412 unsigned long __cil_tmp33 ;
9413 unsigned long __cil_tmp34 ;
9414 unsigned long __cil_tmp35 ;
9415 unsigned long __cil_tmp36 ;
9416 unsigned long __cil_tmp37 ;
9417 unsigned long __cil_tmp38 ;
9418 unsigned long __cil_tmp39 ;
9419 unsigned long __cil_tmp40 ;
9420 unsigned long __cil_tmp41 ;
9421 unsigned long __cil_tmp42 ;
9422 unsigned long __cil_tmp43 ;
9423 unsigned long __cil_tmp44 ;
9424 unsigned long __cil_tmp45 ;
9425 unsigned long __cil_tmp46 ;
9426 unsigned long __cil_tmp47 ;
9427 unsigned long __cil_tmp48 ;
9428 unsigned long __cil_tmp49 ;
9429 unsigned long __cil_tmp50 ;
9430 unsigned long __cil_tmp51 ;
9431 unsigned long __cil_tmp52 ;
9432 unsigned long __cil_tmp53 ;
9433 unsigned long __cil_tmp54 ;
9434 unsigned long __cil_tmp55 ;
9435 unsigned long __cil_tmp56 ;
9436 unsigned long __cil_tmp57 ;
9437 unsigned long __cil_tmp58 ;
9438 unsigned long __cil_tmp59 ;
9439 unsigned long __cil_tmp60 ;
9440 unsigned long __cil_tmp61 ;
9441 unsigned long __cil_tmp62 ;
9442 unsigned long __cil_tmp63 ;
9443 unsigned long __cil_tmp64 ;
9444 unsigned long __cil_tmp65 ;
9445 unsigned long __cil_tmp66 ;
9446 unsigned long __cil_tmp67 ;
9447 unsigned long __cil_tmp68 ;
9448 unsigned long __cil_tmp69 ;
9449 unsigned long __cil_tmp70 ;
9450 unsigned long __cil_tmp71 ;
9451 unsigned long __cil_tmp72 ;
9452
9453 {
9454#line 648
9455 __cil_tmp4 = 0 * 1UL;
9456#line 648
9457 __cil_tmp5 = 456 + __cil_tmp4;
9458#line 648
9459 __cil_tmp6 = (unsigned long )client;
9460#line 648
9461 __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
9462#line 648
9463 *((signed char *)__cil_tmp7) = (signed char)-6;
9464#line 652
9465 if (command == 235) {
9466#line 652
9467 goto case_235;
9468 } else
9469#line 657
9470 if (command == 242) {
9471#line 657
9472 goto case_242;
9473 } else
9474#line 672
9475 if (command == 233) {
9476#line 672
9477 goto case_233;
9478 } else
9479#line 677
9480 if (command == 255) {
9481#line 677
9482 goto case_255;
9483 } else {
9484 {
9485#line 684
9486 goto switch_default;
9487#line 650
9488 if (0) {
9489 case_235:
9490 {
9491#line 653
9492 __cil_tmp8 = 1 * 1UL;
9493#line 653
9494 __cil_tmp9 = 456 + __cil_tmp8;
9495#line 653
9496 __cil_tmp10 = (unsigned long )client;
9497#line 653
9498 __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
9499#line 653
9500 __cil_tmp12 = (signed char *)__cil_tmp11;
9501#line 653
9502 mousedev_packet(client, __cil_tmp12);
9503#line 654
9504 __cil_tmp13 = (unsigned long )client;
9505#line 654
9506 __cil_tmp14 = __cil_tmp13 + 464;
9507#line 654
9508 __cil_tmp15 = (unsigned long )client;
9509#line 654
9510 __cil_tmp16 = __cil_tmp15 + 464;
9511#line 654
9512 __cil_tmp17 = *((unsigned char *)__cil_tmp16);
9513#line 654
9514 __cil_tmp18 = (int )__cil_tmp17;
9515#line 654
9516 __cil_tmp19 = __cil_tmp18 + 1;
9517#line 654
9518 *((unsigned char *)__cil_tmp14) = (unsigned char )__cil_tmp19;
9519 }
9520#line 655
9521 goto switch_break;
9522 case_242:
9523 {
9524#line 658
9525 __cil_tmp20 = (unsigned long )client;
9526#line 658
9527 __cil_tmp21 = __cil_tmp20 + 468;
9528#line 658
9529 __cil_tmp22 = *((enum mousedev_emul *)__cil_tmp21);
9530#line 659
9531 if ((int )__cil_tmp22 == 0) {
9532#line 659
9533 goto case_0;
9534 } else
9535#line 662
9536 if ((int )__cil_tmp22 == 1) {
9537#line 662
9538 goto case_1;
9539 } else
9540#line 665
9541 if ((int )__cil_tmp22 == 2) {
9542#line 665
9543 goto case_2;
9544 } else
9545#line 658
9546 if (0) {
9547 case_0:
9548#line 660
9549 __cil_tmp23 = 1 * 1UL;
9550#line 660
9551 __cil_tmp24 = 456 + __cil_tmp23;
9552#line 660
9553 __cil_tmp25 = (unsigned long )client;
9554#line 660
9555 __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
9556#line 660
9557 *((signed char *)__cil_tmp26) = (signed char)0;
9558#line 661
9559 goto switch_break___0;
9560 case_1:
9561#line 663
9562 __cil_tmp27 = 1 * 1UL;
9563#line 663
9564 __cil_tmp28 = 456 + __cil_tmp27;
9565#line 663
9566 __cil_tmp29 = (unsigned long )client;
9567#line 663
9568 __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
9569#line 663
9570 *((signed char *)__cil_tmp30) = (signed char)3;
9571#line 664
9572 goto switch_break___0;
9573 case_2:
9574#line 666
9575 __cil_tmp31 = 1 * 1UL;
9576#line 666
9577 __cil_tmp32 = 456 + __cil_tmp31;
9578#line 666
9579 __cil_tmp33 = (unsigned long )client;
9580#line 666
9581 __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
9582#line 666
9583 *((signed char *)__cil_tmp34) = (signed char)4;
9584#line 667
9585 goto switch_break___0;
9586 } else {
9587 switch_break___0: ;
9588 }
9589 }
9590#line 669
9591 __cil_tmp35 = (unsigned long )client;
9592#line 669
9593 __cil_tmp36 = __cil_tmp35 + 464;
9594#line 669
9595 *((unsigned char *)__cil_tmp36) = (unsigned char)2;
9596#line 670
9597 goto switch_break;
9598 case_233:
9599#line 673
9600 __cil_tmp37 = 1 * 1UL;
9601#line 673
9602 __cil_tmp38 = 456 + __cil_tmp37;
9603#line 673
9604 __cil_tmp39 = (unsigned long )client;
9605#line 673
9606 __cil_tmp40 = __cil_tmp39 + __cil_tmp38;
9607#line 673
9608 *((signed char *)__cil_tmp40) = (signed char)96;
9609#line 673
9610 __cil_tmp41 = 2 * 1UL;
9611#line 673
9612 __cil_tmp42 = 456 + __cil_tmp41;
9613#line 673
9614 __cil_tmp43 = (unsigned long )client;
9615#line 673
9616 __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
9617#line 673
9618 *((signed char *)__cil_tmp44) = (signed char)3;
9619#line 673
9620 __cil_tmp45 = 3 * 1UL;
9621#line 673
9622 __cil_tmp46 = 456 + __cil_tmp45;
9623#line 673
9624 __cil_tmp47 = (unsigned long )client;
9625#line 673
9626 __cil_tmp48 = __cil_tmp47 + __cil_tmp46;
9627#line 673
9628 *((signed char *)__cil_tmp48) = (signed char)-56;
9629#line 674
9630 __cil_tmp49 = (unsigned long )client;
9631#line 674
9632 __cil_tmp50 = __cil_tmp49 + 464;
9633#line 674
9634 *((unsigned char *)__cil_tmp50) = (unsigned char)4;
9635#line 675
9636 goto switch_break;
9637 case_255:
9638#line 678
9639 tmp___7 = (unsigned char)0;
9640#line 678
9641 __cil_tmp51 = (unsigned long )client;
9642#line 678
9643 __cil_tmp52 = __cil_tmp51 + 465;
9644#line 678
9645 *((unsigned char *)__cil_tmp52) = tmp___7;
9646#line 678
9647 __cil_tmp53 = (unsigned long )client;
9648#line 678
9649 __cil_tmp54 = __cil_tmp53 + 466;
9650#line 678
9651 *((unsigned char *)__cil_tmp54) = tmp___7;
9652#line 679
9653 __cil_tmp55 = (unsigned long )client;
9654#line 679
9655 __cil_tmp56 = __cil_tmp55 + 468;
9656#line 679
9657 *((enum mousedev_emul *)__cil_tmp56) = (enum mousedev_emul )0;
9658#line 680
9659 __cil_tmp57 = 1 * 1UL;
9660#line 680
9661 __cil_tmp58 = 456 + __cil_tmp57;
9662#line 680
9663 __cil_tmp59 = (unsigned long )client;
9664#line 680
9665 __cil_tmp60 = __cil_tmp59 + __cil_tmp58;
9666#line 680
9667 *((signed char *)__cil_tmp60) = (signed char)-86;
9668#line 680
9669 __cil_tmp61 = 2 * 1UL;
9670#line 680
9671 __cil_tmp62 = 456 + __cil_tmp61;
9672#line 680
9673 __cil_tmp63 = (unsigned long )client;
9674#line 680
9675 __cil_tmp64 = __cil_tmp63 + __cil_tmp62;
9676#line 680
9677 *((signed char *)__cil_tmp64) = (signed char)0;
9678#line 681
9679 __cil_tmp65 = (unsigned long )client;
9680#line 681
9681 __cil_tmp66 = __cil_tmp65 + 464;
9682#line 681
9683 *((unsigned char *)__cil_tmp66) = (unsigned char)3;
9684#line 682
9685 goto switch_break;
9686 switch_default:
9687#line 685
9688 __cil_tmp67 = (unsigned long )client;
9689#line 685
9690 __cil_tmp68 = __cil_tmp67 + 464;
9691#line 685
9692 *((unsigned char *)__cil_tmp68) = (unsigned char)1;
9693#line 686
9694 goto switch_break;
9695 } else {
9696 switch_break: ;
9697 }
9698 }
9699 }
9700#line 688
9701 __cil_tmp69 = (unsigned long )client;
9702#line 688
9703 __cil_tmp70 = __cil_tmp69 + 463;
9704#line 688
9705 __cil_tmp71 = (unsigned long )client;
9706#line 688
9707 __cil_tmp72 = __cil_tmp71 + 464;
9708#line 688
9709 *((unsigned char *)__cil_tmp70) = *((unsigned char *)__cil_tmp72);
9710#line 689
9711 return;
9712}
9713}
9714#line 691 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
9715static ssize_t mousedev_write(struct file *file , char *buffer , size_t count ,
9716 loff_t *ppos )
9717{ struct mousedev_client *client ;
9718 unsigned char c ;
9719 unsigned int i ;
9720 int __ret_gu ;
9721 unsigned long __val_gu ;
9722 unsigned long __cil_tmp10 ;
9723 unsigned long __cil_tmp11 ;
9724 void *__cil_tmp12 ;
9725 size_t __cil_tmp13 ;
9726 char __cil_tmp14 ;
9727 unsigned long __cil_tmp15 ;
9728 unsigned long __cil_tmp16 ;
9729 spinlock_t *__cil_tmp17 ;
9730 unsigned long __cil_tmp18 ;
9731 unsigned long __cil_tmp19 ;
9732 unsigned char __cil_tmp20 ;
9733 unsigned long __cil_tmp21 ;
9734 unsigned long __cil_tmp22 ;
9735 unsigned char __cil_tmp23 ;
9736 int __cil_tmp24 ;
9737 int __cil_tmp25 ;
9738 unsigned long __cil_tmp26 ;
9739 unsigned long __cil_tmp27 ;
9740 unsigned long __cil_tmp28 ;
9741 unsigned long __cil_tmp29 ;
9742 unsigned char __cil_tmp30 ;
9743 int __cil_tmp31 ;
9744 int __cil_tmp32 ;
9745 unsigned long __cil_tmp33 ;
9746 unsigned long __cil_tmp34 ;
9747 unsigned char __cil_tmp35 ;
9748 unsigned long __cil_tmp36 ;
9749 unsigned long __cil_tmp37 ;
9750 unsigned long __cil_tmp38 ;
9751 unsigned long __cil_tmp39 ;
9752 unsigned long __cil_tmp40 ;
9753 unsigned long __cil_tmp41 ;
9754 unsigned long __cil_tmp42 ;
9755 unsigned long __cil_tmp43 ;
9756 unsigned char __cil_tmp44 ;
9757 unsigned long __cil_tmp45 ;
9758 unsigned long __cil_tmp46 ;
9759 unsigned char __cil_tmp47 ;
9760 int __cil_tmp48 ;
9761 int __cil_tmp49 ;
9762 unsigned long __cil_tmp50 ;
9763 unsigned long __cil_tmp51 ;
9764 unsigned long __cil_tmp52 ;
9765 unsigned long __cil_tmp53 ;
9766 unsigned char __cil_tmp54 ;
9767 int __cil_tmp55 ;
9768 int __cil_tmp56 ;
9769 unsigned long __cil_tmp57 ;
9770 unsigned long __cil_tmp58 ;
9771 unsigned char __cil_tmp59 ;
9772 unsigned long __cil_tmp60 ;
9773 unsigned long __cil_tmp61 ;
9774 unsigned long __cil_tmp62 ;
9775 unsigned long __cil_tmp63 ;
9776 unsigned long __cil_tmp64 ;
9777 unsigned long __cil_tmp65 ;
9778 int __cil_tmp66 ;
9779 unsigned long __cil_tmp67 ;
9780 unsigned long __cil_tmp68 ;
9781 spinlock_t *__cil_tmp69 ;
9782 struct fasync_struct **__cil_tmp70 ;
9783 int __cil_tmp71 ;
9784 int __cil_tmp72 ;
9785 unsigned long __cil_tmp73 ;
9786 unsigned long __cil_tmp74 ;
9787 struct mousedev *__cil_tmp75 ;
9788 unsigned long __cil_tmp76 ;
9789 unsigned long __cil_tmp77 ;
9790 wait_queue_head_t *__cil_tmp78 ;
9791 void *__cil_tmp79 ;
9792
9793 {
9794#line 694
9795 __cil_tmp10 = (unsigned long )file;
9796#line 694
9797 __cil_tmp11 = __cil_tmp10 + 200;
9798#line 694
9799 __cil_tmp12 = *((void **)__cil_tmp11);
9800#line 694
9801 client = (struct mousedev_client *)__cil_tmp12;
9802#line 698
9803 i = 0U;
9804 {
9805#line 698
9806 while (1) {
9807 while_continue: ;
9808 {
9809#line 698
9810 __cil_tmp13 = (size_t )i;
9811#line 698
9812 if (__cil_tmp13 < count) {
9813
9814 } else {
9815#line 698
9816 goto while_break;
9817 }
9818 }
9819 {
9820#line 700
9821 might_fault();
9822 }
9823#line 700
9824 if ((int )1UL == 1) {
9825#line 700
9826 goto case_1;
9827 } else
9828#line 700
9829 if ((int )1UL == 2) {
9830#line 700
9831 goto case_2;
9832 } else
9833#line 700
9834 if ((int )1UL == 4) {
9835#line 700
9836 goto case_4;
9837 } else
9838#line 700
9839 if ((int )1UL == 8) {
9840#line 700
9841 goto case_8;
9842 } else {
9843 {
9844#line 700
9845 goto switch_default;
9846#line 700
9847 if (0) {
9848 case_1:
9849#line 700
9850 __asm__ volatile ("call __get_user_"
9851 "1": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
9852#line 700
9853 goto switch_break;
9854 case_2:
9855#line 700
9856 __asm__ volatile ("call __get_user_"
9857 "2": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
9858#line 700
9859 goto switch_break;
9860 case_4:
9861#line 700
9862 __asm__ volatile ("call __get_user_"
9863 "4": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
9864#line 700
9865 goto switch_break;
9866 case_8:
9867#line 700
9868 __asm__ volatile ("call __get_user_"
9869 "8": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
9870#line 700
9871 goto switch_break;
9872 switch_default:
9873#line 700
9874 __asm__ volatile ("call __get_user_"
9875 "X": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
9876#line 700
9877 goto switch_break;
9878 } else {
9879 switch_break: ;
9880 }
9881 }
9882 }
9883#line 700
9884 __cil_tmp14 = (char )__val_gu;
9885#line 700
9886 c = (unsigned char )__cil_tmp14;
9887#line 700
9888 if (__ret_gu) {
9889#line 701
9890 return ((ssize_t )-14);
9891 } else {
9892
9893 }
9894 {
9895#line 703
9896 __cil_tmp15 = (unsigned long )client;
9897#line 703
9898 __cil_tmp16 = __cil_tmp15 + 424;
9899#line 703
9900 __cil_tmp17 = (spinlock_t *)__cil_tmp16;
9901#line 703
9902 spin_lock_irq(__cil_tmp17);
9903 }
9904 {
9905#line 705
9906 __cil_tmp18 = (unsigned long )client;
9907#line 705
9908 __cil_tmp19 = __cil_tmp18 + 465;
9909#line 705
9910 __cil_tmp20 = *((unsigned char *)__cil_tmp19);
9911#line 705
9912 __cil_tmp21 = __cil_tmp20 * 1UL;
9913#line 705
9914 __cil_tmp22 = (unsigned long )(mousedev_imex_seq) + __cil_tmp21;
9915#line 705
9916 __cil_tmp23 = *((unsigned char *)__cil_tmp22);
9917#line 705
9918 __cil_tmp24 = (int )__cil_tmp23;
9919#line 705
9920 __cil_tmp25 = (int )c;
9921#line 705
9922 if (__cil_tmp25 == __cil_tmp24) {
9923#line 706
9924 __cil_tmp26 = (unsigned long )client;
9925#line 706
9926 __cil_tmp27 = __cil_tmp26 + 465;
9927#line 706
9928 __cil_tmp28 = (unsigned long )client;
9929#line 706
9930 __cil_tmp29 = __cil_tmp28 + 465;
9931#line 706
9932 __cil_tmp30 = *((unsigned char *)__cil_tmp29);
9933#line 706
9934 __cil_tmp31 = (int )__cil_tmp30;
9935#line 706
9936 __cil_tmp32 = __cil_tmp31 + 1;
9937#line 706
9938 *((unsigned char *)__cil_tmp27) = (unsigned char )__cil_tmp32;
9939 {
9940#line 706
9941 __cil_tmp33 = (unsigned long )client;
9942#line 706
9943 __cil_tmp34 = __cil_tmp33 + 465;
9944#line 706
9945 __cil_tmp35 = *((unsigned char *)__cil_tmp34);
9946#line 706
9947 if (__cil_tmp35 == 6) {
9948#line 707
9949 __cil_tmp36 = (unsigned long )client;
9950#line 707
9951 __cil_tmp37 = __cil_tmp36 + 465;
9952#line 707
9953 *((unsigned char *)__cil_tmp37) = (unsigned char)0;
9954#line 708
9955 __cil_tmp38 = (unsigned long )client;
9956#line 708
9957 __cil_tmp39 = __cil_tmp38 + 468;
9958#line 708
9959 *((enum mousedev_emul *)__cil_tmp39) = (enum mousedev_emul )2;
9960 } else {
9961
9962 }
9963 }
9964 } else {
9965#line 711
9966 __cil_tmp40 = (unsigned long )client;
9967#line 711
9968 __cil_tmp41 = __cil_tmp40 + 465;
9969#line 711
9970 *((unsigned char *)__cil_tmp41) = (unsigned char)0;
9971 }
9972 }
9973 {
9974#line 713
9975 __cil_tmp42 = (unsigned long )client;
9976#line 713
9977 __cil_tmp43 = __cil_tmp42 + 466;
9978#line 713
9979 __cil_tmp44 = *((unsigned char *)__cil_tmp43);
9980#line 713
9981 __cil_tmp45 = __cil_tmp44 * 1UL;
9982#line 713
9983 __cil_tmp46 = (unsigned long )(mousedev_imps_seq) + __cil_tmp45;
9984#line 713
9985 __cil_tmp47 = *((unsigned char *)__cil_tmp46);
9986#line 713
9987 __cil_tmp48 = (int )__cil_tmp47;
9988#line 713
9989 __cil_tmp49 = (int )c;
9990#line 713
9991 if (__cil_tmp49 == __cil_tmp48) {
9992#line 714
9993 __cil_tmp50 = (unsigned long )client;
9994#line 714
9995 __cil_tmp51 = __cil_tmp50 + 466;
9996#line 714
9997 __cil_tmp52 = (unsigned long )client;
9998#line 714
9999 __cil_tmp53 = __cil_tmp52 + 466;
10000#line 714
10001 __cil_tmp54 = *((unsigned char *)__cil_tmp53);
10002#line 714
10003 __cil_tmp55 = (int )__cil_tmp54;
10004#line 714
10005 __cil_tmp56 = __cil_tmp55 + 1;
10006#line 714
10007 *((unsigned char *)__cil_tmp51) = (unsigned char )__cil_tmp56;
10008 {
10009#line 714
10010 __cil_tmp57 = (unsigned long )client;
10011#line 714
10012 __cil_tmp58 = __cil_tmp57 + 466;
10013#line 714
10014 __cil_tmp59 = *((unsigned char *)__cil_tmp58);
10015#line 714
10016 if (__cil_tmp59 == 6) {
10017#line 715
10018 __cil_tmp60 = (unsigned long )client;
10019#line 715
10020 __cil_tmp61 = __cil_tmp60 + 466;
10021#line 715
10022 *((unsigned char *)__cil_tmp61) = (unsigned char)0;
10023#line 716
10024 __cil_tmp62 = (unsigned long )client;
10025#line 716
10026 __cil_tmp63 = __cil_tmp62 + 468;
10027#line 716
10028 *((enum mousedev_emul *)__cil_tmp63) = (enum mousedev_emul )1;
10029 } else {
10030
10031 }
10032 }
10033 } else {
10034#line 719
10035 __cil_tmp64 = (unsigned long )client;
10036#line 719
10037 __cil_tmp65 = __cil_tmp64 + 466;
10038#line 719
10039 *((unsigned char *)__cil_tmp65) = (unsigned char)0;
10040 }
10041 }
10042 {
10043#line 721
10044 __cil_tmp66 = (int )c;
10045#line 721
10046 mousedev_generate_response(client, __cil_tmp66);
10047#line 723
10048 __cil_tmp67 = (unsigned long )client;
10049#line 723
10050 __cil_tmp68 = __cil_tmp67 + 424;
10051#line 723
10052 __cil_tmp69 = (spinlock_t *)__cil_tmp68;
10053#line 723
10054 spin_unlock_irq(__cil_tmp69);
10055#line 698
10056 i = i + 1U;
10057 }
10058 }
10059 while_break: ;
10060 }
10061 {
10062#line 726
10063 __cil_tmp70 = (struct fasync_struct **)client;
10064#line 726
10065 __cil_tmp71 = 2 << 16;
10066#line 726
10067 __cil_tmp72 = __cil_tmp71 | 1;
10068#line 726
10069 kill_fasync(__cil_tmp70, 29, __cil_tmp72);
10070#line 727
10071 __cil_tmp73 = (unsigned long )client;
10072#line 727
10073 __cil_tmp74 = __cil_tmp73 + 8;
10074#line 727
10075 __cil_tmp75 = *((struct mousedev **)__cil_tmp74);
10076#line 727
10077 __cil_tmp76 = (unsigned long )__cil_tmp75;
10078#line 727
10079 __cil_tmp77 = __cil_tmp76 + 80;
10080#line 727
10081 __cil_tmp78 = (wait_queue_head_t *)__cil_tmp77;
10082#line 727
10083 __cil_tmp79 = (void *)0;
10084#line 727
10085 __wake_up(__cil_tmp78, 1U, 1, __cil_tmp79);
10086 }
10087#line 729
10088 return ((ssize_t )count);
10089}
10090}
10091#line 732 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10092static ssize_t mousedev_read(struct file *file , char *buffer , size_t count , loff_t *ppos )
10093{ struct mousedev_client *client ;
10094 struct mousedev *mousedev ;
10095 signed char data[sizeof(client->ps2)] ;
10096 int retval ;
10097 int __ret ;
10098 wait_queue_t __wait ;
10099 struct task_struct *tmp___7 ;
10100 struct task_struct *tmp___8 ;
10101 int tmp___9 ;
10102 size_t __len ;
10103 void *__ret___0 ;
10104 int tmp___10 ;
10105 unsigned long __cil_tmp17 ;
10106 unsigned long __cil_tmp18 ;
10107 void *__cil_tmp19 ;
10108 unsigned long __cil_tmp20 ;
10109 unsigned long __cil_tmp21 ;
10110 unsigned long __cil_tmp22 ;
10111 unsigned long __cil_tmp23 ;
10112 unsigned char __cil_tmp24 ;
10113 unsigned long __cil_tmp25 ;
10114 unsigned long __cil_tmp26 ;
10115 unsigned char __cil_tmp27 ;
10116 unsigned long __cil_tmp28 ;
10117 unsigned long __cil_tmp29 ;
10118 unsigned long __cil_tmp30 ;
10119 unsigned long __cil_tmp31 ;
10120 unsigned int __cil_tmp32 ;
10121 unsigned long __cil_tmp33 ;
10122 unsigned long __cil_tmp34 ;
10123 bool __cil_tmp35 ;
10124 unsigned long __cil_tmp36 ;
10125 unsigned long __cil_tmp37 ;
10126 unsigned long __cil_tmp38 ;
10127 unsigned long __cil_tmp39 ;
10128 wait_queue_t *__cil_tmp40 ;
10129 unsigned long __cil_tmp41 ;
10130 unsigned long __cil_tmp42 ;
10131 unsigned long __cil_tmp43 ;
10132 unsigned long __cil_tmp44 ;
10133 unsigned long __cil_tmp45 ;
10134 unsigned long __cil_tmp46 ;
10135 unsigned long __cil_tmp47 ;
10136 unsigned long __cil_tmp48 ;
10137 unsigned long __cil_tmp49 ;
10138 wait_queue_head_t *__cil_tmp50 ;
10139 unsigned long __cil_tmp51 ;
10140 unsigned long __cil_tmp52 ;
10141 bool __cil_tmp53 ;
10142 unsigned long __cil_tmp54 ;
10143 unsigned long __cil_tmp55 ;
10144 unsigned long __cil_tmp56 ;
10145 unsigned long __cil_tmp57 ;
10146 unsigned long __cil_tmp58 ;
10147 unsigned long __cil_tmp59 ;
10148 wait_queue_head_t *__cil_tmp60 ;
10149 unsigned long __cil_tmp61 ;
10150 unsigned long __cil_tmp62 ;
10151 bool __cil_tmp63 ;
10152 unsigned long __cil_tmp64 ;
10153 unsigned long __cil_tmp65 ;
10154 spinlock_t *__cil_tmp66 ;
10155 unsigned long __cil_tmp67 ;
10156 unsigned long __cil_tmp68 ;
10157 unsigned char __cil_tmp69 ;
10158 unsigned long __cil_tmp70 ;
10159 unsigned long __cil_tmp71 ;
10160 unsigned long __cil_tmp72 ;
10161 unsigned long __cil_tmp73 ;
10162 unsigned long __cil_tmp74 ;
10163 unsigned long __cil_tmp75 ;
10164 signed char *__cil_tmp76 ;
10165 unsigned long __cil_tmp77 ;
10166 unsigned long __cil_tmp78 ;
10167 unsigned long __cil_tmp79 ;
10168 unsigned long __cil_tmp80 ;
10169 unsigned long __cil_tmp81 ;
10170 unsigned long __cil_tmp82 ;
10171 unsigned char __cil_tmp83 ;
10172 size_t __cil_tmp84 ;
10173 unsigned long __cil_tmp85 ;
10174 unsigned long __cil_tmp86 ;
10175 unsigned char __cil_tmp87 ;
10176 unsigned long __cil_tmp88 ;
10177 unsigned long __cil_tmp89 ;
10178 signed char *__cil_tmp90 ;
10179 void *__cil_tmp91 ;
10180 unsigned long __cil_tmp92 ;
10181 unsigned long __cil_tmp93 ;
10182 unsigned char __cil_tmp94 ;
10183 int __cil_tmp95 ;
10184 unsigned long __cil_tmp96 ;
10185 unsigned long __cil_tmp97 ;
10186 unsigned char __cil_tmp98 ;
10187 int __cil_tmp99 ;
10188 unsigned long __cil_tmp100 ;
10189 unsigned long __cil_tmp101 ;
10190 unsigned long __cil_tmp102 ;
10191 unsigned long __cil_tmp103 ;
10192 signed char *__cil_tmp104 ;
10193 signed char *__cil_tmp105 ;
10194 signed char *__cil_tmp106 ;
10195 void *__cil_tmp107 ;
10196 unsigned long __cil_tmp108 ;
10197 unsigned long __cil_tmp109 ;
10198 unsigned long __cil_tmp110 ;
10199 unsigned long __cil_tmp111 ;
10200 unsigned char __cil_tmp112 ;
10201 size_t __cil_tmp113 ;
10202 size_t __cil_tmp114 ;
10203 unsigned long __cil_tmp115 ;
10204 unsigned long __cil_tmp116 ;
10205 spinlock_t *__cil_tmp117 ;
10206 void *__cil_tmp118 ;
10207 unsigned long __cil_tmp119 ;
10208 unsigned long __cil_tmp120 ;
10209 signed char *__cil_tmp121 ;
10210 void *__cil_tmp122 ;
10211 unsigned int __cil_tmp123 ;
10212
10213 {
10214#line 735
10215 __cil_tmp17 = (unsigned long )file;
10216#line 735
10217 __cil_tmp18 = __cil_tmp17 + 200;
10218#line 735
10219 __cil_tmp19 = *((void **)__cil_tmp18);
10220#line 735
10221 client = (struct mousedev_client *)__cil_tmp19;
10222#line 736
10223 __cil_tmp20 = (unsigned long )client;
10224#line 736
10225 __cil_tmp21 = __cil_tmp20 + 8;
10226#line 736
10227 mousedev = *((struct mousedev **)__cil_tmp21);
10228#line 738
10229 retval = 0;
10230 {
10231#line 740
10232 __cil_tmp22 = (unsigned long )client;
10233#line 740
10234 __cil_tmp23 = __cil_tmp22 + 462;
10235#line 740
10236 __cil_tmp24 = *((unsigned char *)__cil_tmp23);
10237#line 740
10238 if (! __cil_tmp24) {
10239 {
10240#line 740
10241 __cil_tmp25 = (unsigned long )client;
10242#line 740
10243 __cil_tmp26 = __cil_tmp25 + 463;
10244#line 740
10245 __cil_tmp27 = *((unsigned char *)__cil_tmp26);
10246#line 740
10247 if (! __cil_tmp27) {
10248 {
10249#line 740
10250 __cil_tmp28 = (unsigned long )mousedev;
10251#line 740
10252 __cil_tmp29 = __cil_tmp28 + 1000;
10253#line 740
10254 if (*((bool *)__cil_tmp29)) {
10255 {
10256#line 740
10257 __cil_tmp30 = (unsigned long )file;
10258#line 740
10259 __cil_tmp31 = __cil_tmp30 + 80;
10260#line 740
10261 __cil_tmp32 = *((unsigned int *)__cil_tmp31);
10262#line 740
10263 if (__cil_tmp32 & 2048U) {
10264#line 742
10265 return ((ssize_t )-11);
10266 } else {
10267
10268 }
10269 }
10270 } else {
10271
10272 }
10273 }
10274 } else {
10275
10276 }
10277 }
10278 } else {
10279
10280 }
10281 }
10282#line 744
10283 __ret = 0;
10284 {
10285#line 744
10286 __cil_tmp33 = (unsigned long )mousedev;
10287#line 744
10288 __cil_tmp34 = __cil_tmp33 + 1000;
10289#line 744
10290 __cil_tmp35 = *((bool *)__cil_tmp34);
10291#line 744
10292 if (! __cil_tmp35) {
10293
10294 } else {
10295 {
10296#line 744
10297 __cil_tmp36 = (unsigned long )client;
10298#line 744
10299 __cil_tmp37 = __cil_tmp36 + 462;
10300#line 744
10301 if (*((unsigned char *)__cil_tmp37)) {
10302
10303 } else {
10304 {
10305#line 744
10306 __cil_tmp38 = (unsigned long )client;
10307#line 744
10308 __cil_tmp39 = __cil_tmp38 + 463;
10309#line 744
10310 if (*((unsigned char *)__cil_tmp39)) {
10311
10312 } else {
10313 {
10314#line 744
10315 while (1) {
10316 while_continue: ;
10317 {
10318#line 744
10319 tmp___7 = get_current();
10320#line 744
10321 __cil_tmp40 = & __wait;
10322#line 744
10323 *((unsigned int *)__cil_tmp40) = 0U;
10324#line 744
10325 __cil_tmp41 = (unsigned long )(& __wait) + 8;
10326#line 744
10327 *((void **)__cil_tmp41) = (void *)tmp___7;
10328#line 744
10329 __cil_tmp42 = (unsigned long )(& __wait) + 16;
10330#line 744
10331 *((int (**)(wait_queue_t *wait , unsigned int mode , int flags , void *key ))__cil_tmp42) = & autoremove_wake_function;
10332#line 744
10333 __cil_tmp43 = (unsigned long )(& __wait) + 24;
10334#line 744
10335 __cil_tmp44 = (unsigned long )(& __wait) + 24;
10336#line 744
10337 *((struct list_head **)__cil_tmp43) = (struct list_head *)__cil_tmp44;
10338#line 744
10339 __cil_tmp45 = 24 + 8;
10340#line 744
10341 __cil_tmp46 = (unsigned long )(& __wait) + __cil_tmp45;
10342#line 744
10343 __cil_tmp47 = (unsigned long )(& __wait) + 24;
10344#line 744
10345 *((struct list_head **)__cil_tmp46) = (struct list_head *)__cil_tmp47;
10346 }
10347 {
10348#line 744
10349 while (1) {
10350 while_continue___0: ;
10351 {
10352#line 744
10353 __cil_tmp48 = (unsigned long )mousedev;
10354#line 744
10355 __cil_tmp49 = __cil_tmp48 + 80;
10356#line 744
10357 __cil_tmp50 = (wait_queue_head_t *)__cil_tmp49;
10358#line 744
10359 prepare_to_wait(__cil_tmp50, & __wait, 1);
10360 }
10361 {
10362#line 744
10363 __cil_tmp51 = (unsigned long )mousedev;
10364#line 744
10365 __cil_tmp52 = __cil_tmp51 + 1000;
10366#line 744
10367 __cil_tmp53 = *((bool *)__cil_tmp52);
10368#line 744
10369 if (! __cil_tmp53) {
10370#line 744
10371 goto while_break___0;
10372 } else {
10373 {
10374#line 744
10375 __cil_tmp54 = (unsigned long )client;
10376#line 744
10377 __cil_tmp55 = __cil_tmp54 + 462;
10378#line 744
10379 if (*((unsigned char *)__cil_tmp55)) {
10380#line 744
10381 goto while_break___0;
10382 } else {
10383 {
10384#line 744
10385 __cil_tmp56 = (unsigned long )client;
10386#line 744
10387 __cil_tmp57 = __cil_tmp56 + 463;
10388#line 744
10389 if (*((unsigned char *)__cil_tmp57)) {
10390#line 744
10391 goto while_break___0;
10392 } else {
10393
10394 }
10395 }
10396 }
10397 }
10398 }
10399 }
10400 {
10401#line 744
10402 tmp___8 = get_current();
10403#line 744
10404 tmp___9 = signal_pending(tmp___8);
10405 }
10406#line 744
10407 if (tmp___9) {
10408
10409 } else {
10410 {
10411#line 744
10412 schedule();
10413 }
10414#line 744
10415 goto __Cont;
10416 }
10417#line 744
10418 __ret = -512;
10419#line 744
10420 goto while_break___0;
10421 __Cont: ;
10422 }
10423 while_break___0: ;
10424 }
10425 {
10426#line 744
10427 __cil_tmp58 = (unsigned long )mousedev;
10428#line 744
10429 __cil_tmp59 = __cil_tmp58 + 80;
10430#line 744
10431 __cil_tmp60 = (wait_queue_head_t *)__cil_tmp59;
10432#line 744
10433 finish_wait(__cil_tmp60, & __wait);
10434 }
10435#line 744
10436 goto while_break;
10437 }
10438 while_break: ;
10439 }
10440 }
10441 }
10442 }
10443 }
10444 }
10445 }
10446#line 744
10447 retval = __ret;
10448#line 746
10449 if (retval) {
10450#line 747
10451 return ((ssize_t )retval);
10452 } else {
10453
10454 }
10455 {
10456#line 749
10457 __cil_tmp61 = (unsigned long )mousedev;
10458#line 749
10459 __cil_tmp62 = __cil_tmp61 + 1000;
10460#line 749
10461 __cil_tmp63 = *((bool *)__cil_tmp62);
10462#line 749
10463 if (! __cil_tmp63) {
10464#line 750
10465 return ((ssize_t )-19);
10466 } else {
10467
10468 }
10469 }
10470 {
10471#line 752
10472 __cil_tmp64 = (unsigned long )client;
10473#line 752
10474 __cil_tmp65 = __cil_tmp64 + 424;
10475#line 752
10476 __cil_tmp66 = (spinlock_t *)__cil_tmp65;
10477#line 752
10478 spin_lock_irq(__cil_tmp66);
10479 }
10480 {
10481#line 754
10482 __cil_tmp67 = (unsigned long )client;
10483#line 754
10484 __cil_tmp68 = __cil_tmp67 + 463;
10485#line 754
10486 __cil_tmp69 = *((unsigned char *)__cil_tmp68);
10487#line 754
10488 if (! __cil_tmp69) {
10489 {
10490#line 754
10491 __cil_tmp70 = (unsigned long )client;
10492#line 754
10493 __cil_tmp71 = __cil_tmp70 + 462;
10494#line 754
10495 if (*((unsigned char *)__cil_tmp71)) {
10496 {
10497#line 755
10498 __cil_tmp72 = 0 * 1UL;
10499#line 755
10500 __cil_tmp73 = 456 + __cil_tmp72;
10501#line 755
10502 __cil_tmp74 = (unsigned long )client;
10503#line 755
10504 __cil_tmp75 = __cil_tmp74 + __cil_tmp73;
10505#line 755
10506 __cil_tmp76 = (signed char *)__cil_tmp75;
10507#line 755
10508 mousedev_packet(client, __cil_tmp76);
10509#line 756
10510 __cil_tmp77 = (unsigned long )client;
10511#line 756
10512 __cil_tmp78 = __cil_tmp77 + 463;
10513#line 756
10514 __cil_tmp79 = (unsigned long )client;
10515#line 756
10516 __cil_tmp80 = __cil_tmp79 + 464;
10517#line 756
10518 *((unsigned char *)__cil_tmp78) = *((unsigned char *)__cil_tmp80);
10519 }
10520 } else {
10521
10522 }
10523 }
10524 } else {
10525
10526 }
10527 }
10528 {
10529#line 759
10530 __cil_tmp81 = (unsigned long )client;
10531#line 759
10532 __cil_tmp82 = __cil_tmp81 + 463;
10533#line 759
10534 __cil_tmp83 = *((unsigned char *)__cil_tmp82);
10535#line 759
10536 __cil_tmp84 = (size_t )__cil_tmp83;
10537#line 759
10538 if (count > __cil_tmp84) {
10539#line 760
10540 __cil_tmp85 = (unsigned long )client;
10541#line 760
10542 __cil_tmp86 = __cil_tmp85 + 463;
10543#line 760
10544 __cil_tmp87 = *((unsigned char *)__cil_tmp86);
10545#line 760
10546 count = (size_t )__cil_tmp87;
10547 } else {
10548
10549 }
10550 }
10551 {
10552#line 762
10553 __len = count;
10554#line 762
10555 __cil_tmp88 = 0 * 1UL;
10556#line 762
10557 __cil_tmp89 = (unsigned long )(data) + __cil_tmp88;
10558#line 762
10559 __cil_tmp90 = (signed char *)__cil_tmp89;
10560#line 762
10561 __cil_tmp91 = (void *)__cil_tmp90;
10562#line 762
10563 __cil_tmp92 = (unsigned long )client;
10564#line 762
10565 __cil_tmp93 = __cil_tmp92 + 463;
10566#line 762
10567 __cil_tmp94 = *((unsigned char *)__cil_tmp93);
10568#line 762
10569 __cil_tmp95 = (int )__cil_tmp94;
10570#line 762
10571 __cil_tmp96 = (unsigned long )client;
10572#line 762
10573 __cil_tmp97 = __cil_tmp96 + 464;
10574#line 762
10575 __cil_tmp98 = *((unsigned char *)__cil_tmp97);
10576#line 762
10577 __cil_tmp99 = (int )__cil_tmp98;
10578#line 762
10579 __cil_tmp100 = 0 * 1UL;
10580#line 762
10581 __cil_tmp101 = 456 + __cil_tmp100;
10582#line 762
10583 __cil_tmp102 = (unsigned long )client;
10584#line 762
10585 __cil_tmp103 = __cil_tmp102 + __cil_tmp101;
10586#line 762
10587 __cil_tmp104 = (signed char *)__cil_tmp103;
10588#line 762
10589 __cil_tmp105 = __cil_tmp104 + __cil_tmp99;
10590#line 762
10591 __cil_tmp106 = __cil_tmp105 - __cil_tmp95;
10592#line 762
10593 __cil_tmp107 = (void *)__cil_tmp106;
10594#line 762
10595 __ret___0 = __builtin_memcpy(__cil_tmp91, __cil_tmp107, __len);
10596#line 763
10597 __cil_tmp108 = (unsigned long )client;
10598#line 763
10599 __cil_tmp109 = __cil_tmp108 + 463;
10600#line 763
10601 __cil_tmp110 = (unsigned long )client;
10602#line 763
10603 __cil_tmp111 = __cil_tmp110 + 463;
10604#line 763
10605 __cil_tmp112 = *((unsigned char *)__cil_tmp111);
10606#line 763
10607 __cil_tmp113 = (size_t )__cil_tmp112;
10608#line 763
10609 __cil_tmp114 = __cil_tmp113 - count;
10610#line 763
10611 *((unsigned char *)__cil_tmp109) = (unsigned char )__cil_tmp114;
10612#line 765
10613 __cil_tmp115 = (unsigned long )client;
10614#line 765
10615 __cil_tmp116 = __cil_tmp115 + 424;
10616#line 765
10617 __cil_tmp117 = (spinlock_t *)__cil_tmp116;
10618#line 765
10619 spin_unlock_irq(__cil_tmp117);
10620#line 767
10621 __cil_tmp118 = (void *)buffer;
10622#line 767
10623 __cil_tmp119 = 0 * 1UL;
10624#line 767
10625 __cil_tmp120 = (unsigned long )(data) + __cil_tmp119;
10626#line 767
10627 __cil_tmp121 = (signed char *)__cil_tmp120;
10628#line 767
10629 __cil_tmp122 = (void *)__cil_tmp121;
10630#line 767
10631 __cil_tmp123 = (unsigned int )count;
10632#line 767
10633 tmp___10 = (int )copy_to_user(__cil_tmp118, __cil_tmp122, __cil_tmp123);
10634 }
10635#line 767
10636 if (tmp___10) {
10637#line 768
10638 return ((ssize_t )-14);
10639 } else {
10640
10641 }
10642#line 770
10643 return ((ssize_t )count);
10644}
10645}
10646#line 774 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10647static unsigned int mousedev_poll(struct file *file , poll_table *wait )
10648{ struct mousedev_client *client ;
10649 struct mousedev *mousedev ;
10650 unsigned int mask ;
10651 unsigned long __cil_tmp6 ;
10652 unsigned long __cil_tmp7 ;
10653 void *__cil_tmp8 ;
10654 unsigned long __cil_tmp9 ;
10655 unsigned long __cil_tmp10 ;
10656 unsigned long __cil_tmp11 ;
10657 unsigned long __cil_tmp12 ;
10658 wait_queue_head_t *__cil_tmp13 ;
10659 unsigned long __cil_tmp14 ;
10660 unsigned long __cil_tmp15 ;
10661 unsigned long __cil_tmp16 ;
10662 unsigned long __cil_tmp17 ;
10663 unsigned long __cil_tmp18 ;
10664 unsigned long __cil_tmp19 ;
10665
10666 {
10667 {
10668#line 776
10669 __cil_tmp6 = (unsigned long )file;
10670#line 776
10671 __cil_tmp7 = __cil_tmp6 + 200;
10672#line 776
10673 __cil_tmp8 = *((void **)__cil_tmp7);
10674#line 776
10675 client = (struct mousedev_client *)__cil_tmp8;
10676#line 777
10677 __cil_tmp9 = (unsigned long )client;
10678#line 777
10679 __cil_tmp10 = __cil_tmp9 + 8;
10680#line 777
10681 mousedev = *((struct mousedev **)__cil_tmp10);
10682#line 780
10683 __cil_tmp11 = (unsigned long )mousedev;
10684#line 780
10685 __cil_tmp12 = __cil_tmp11 + 80;
10686#line 780
10687 __cil_tmp13 = (wait_queue_head_t *)__cil_tmp12;
10688#line 780
10689 poll_wait(file, __cil_tmp13, wait);
10690 }
10691 {
10692#line 782
10693 __cil_tmp14 = (unsigned long )mousedev;
10694#line 782
10695 __cil_tmp15 = __cil_tmp14 + 1000;
10696#line 782
10697 if (*((bool *)__cil_tmp15)) {
10698#line 782
10699 mask = 260U;
10700 } else {
10701#line 782
10702 mask = 24U;
10703 }
10704 }
10705 {
10706#line 783
10707 __cil_tmp16 = (unsigned long )client;
10708#line 783
10709 __cil_tmp17 = __cil_tmp16 + 462;
10710#line 783
10711 if (*((unsigned char *)__cil_tmp17)) {
10712#line 784
10713 mask = mask | 65U;
10714 } else {
10715 {
10716#line 783
10717 __cil_tmp18 = (unsigned long )client;
10718#line 783
10719 __cil_tmp19 = __cil_tmp18 + 463;
10720#line 783
10721 if (*((unsigned char *)__cil_tmp19)) {
10722#line 784
10723 mask = mask | 65U;
10724 } else {
10725
10726 }
10727 }
10728 }
10729 }
10730#line 786
10731 return (mask);
10732}
10733}
10734#line 789 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10735static struct file_operations mousedev_fops =
10736#line 789
10737 {& __this_module, & noop_llseek, & mousedev_read, & mousedev_write, (ssize_t (*)(struct kiocb * ,
10738 struct iovec * ,
10739 unsigned long ,
10740 loff_t ))0,
10741 (ssize_t (*)(struct kiocb * , struct iovec * , unsigned long , loff_t ))0,
10742 (int (*)(struct file * , void * , int (*)(void * , char * , int , loff_t ,
10743 u64 , unsigned int ) ))0, & mousedev_poll,
10744 (long (*)(struct file * , unsigned int , unsigned long ))0, (long (*)(struct file * ,
10745 unsigned int ,
10746 unsigned long ))0,
10747 (int (*)(struct file * , struct vm_area_struct * ))0, & mousedev_open, (int (*)(struct file * ,
10748 fl_owner_t id ))0,
10749 & mousedev_release, (int (*)(struct file * , loff_t , loff_t , int datasync ))0,
10750 (int (*)(struct kiocb * , int datasync ))0, & mousedev_fasync, (int (*)(struct file * ,
10751 int ,
10752 struct file_lock * ))0,
10753 (ssize_t (*)(struct file * , struct page * , int , size_t , loff_t * , int ))0,
10754 (unsigned long (*)(struct file * , unsigned long , unsigned long , unsigned long ,
10755 unsigned long ))0, (int (*)(int ))0, (int (*)(struct file * ,
10756 int , struct file_lock * ))0,
10757 (ssize_t (*)(struct pipe_inode_info * , struct file * , loff_t * , size_t , unsigned int ))0,
10758 (ssize_t (*)(struct file * , loff_t * , struct pipe_inode_info * , size_t , unsigned int ))0,
10759 (int (*)(struct file * , long , struct file_lock ** ))0, (long (*)(struct file *file ,
10760 int mode ,
10761 loff_t offset ,
10762 loff_t len ))0};
10763#line 800 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10764static int mousedev_install_chrdev(struct mousedev *mousedev )
10765{ unsigned long __cil_tmp2 ;
10766 unsigned long __cil_tmp3 ;
10767 int __cil_tmp4 ;
10768 unsigned long __cil_tmp5 ;
10769 unsigned long __cil_tmp6 ;
10770
10771 {
10772#line 802
10773 __cil_tmp2 = (unsigned long )mousedev;
10774#line 802
10775 __cil_tmp3 = __cil_tmp2 + 4;
10776#line 802
10777 __cil_tmp4 = *((int *)__cil_tmp3);
10778#line 802
10779 __cil_tmp5 = __cil_tmp4 * 8UL;
10780#line 802
10781 __cil_tmp6 = (unsigned long )(mousedev_table) + __cil_tmp5;
10782#line 802
10783 *((struct mousedev **)__cil_tmp6) = mousedev;
10784#line 803
10785 return (0);
10786}
10787}
10788#line 806 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10789static void mousedev_remove_chrdev(struct mousedev *mousedev )
10790{ unsigned long __cil_tmp2 ;
10791 unsigned long __cil_tmp3 ;
10792 int __cil_tmp4 ;
10793 unsigned long __cil_tmp5 ;
10794 unsigned long __cil_tmp6 ;
10795 void *__cil_tmp7 ;
10796
10797 {
10798 {
10799#line 808
10800 mutex_lock(& mousedev_table_mutex);
10801#line 809
10802 __cil_tmp2 = (unsigned long )mousedev;
10803#line 809
10804 __cil_tmp3 = __cil_tmp2 + 4;
10805#line 809
10806 __cil_tmp4 = *((int *)__cil_tmp3);
10807#line 809
10808 __cil_tmp5 = __cil_tmp4 * 8UL;
10809#line 809
10810 __cil_tmp6 = (unsigned long )(mousedev_table) + __cil_tmp5;
10811#line 809
10812 __cil_tmp7 = (void *)0;
10813#line 809
10814 *((struct mousedev **)__cil_tmp6) = (struct mousedev *)__cil_tmp7;
10815#line 810
10816 mutex_unlock(& mousedev_table_mutex);
10817 }
10818#line 811
10819 return;
10820}
10821}
10822#line 818 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10823static void mousedev_mark_dead(struct mousedev *mousedev )
10824{ unsigned long __cil_tmp2 ;
10825 unsigned long __cil_tmp3 ;
10826 struct mutex *__cil_tmp4 ;
10827 unsigned long __cil_tmp5 ;
10828 unsigned long __cil_tmp6 ;
10829 unsigned long __cil_tmp7 ;
10830 unsigned long __cil_tmp8 ;
10831 struct mutex *__cil_tmp9 ;
10832
10833 {
10834 {
10835#line 820
10836 __cil_tmp2 = (unsigned long )mousedev;
10837#line 820
10838 __cil_tmp3 = __cil_tmp2 + 160;
10839#line 820
10840 __cil_tmp4 = (struct mutex *)__cil_tmp3;
10841#line 820
10842 mutex_lock(__cil_tmp4);
10843#line 821
10844 __cil_tmp5 = (unsigned long )mousedev;
10845#line 821
10846 __cil_tmp6 = __cil_tmp5 + 1000;
10847#line 821
10848 *((bool *)__cil_tmp6) = (bool )0;
10849#line 822
10850 __cil_tmp7 = (unsigned long )mousedev;
10851#line 822
10852 __cil_tmp8 = __cil_tmp7 + 160;
10853#line 822
10854 __cil_tmp9 = (struct mutex *)__cil_tmp8;
10855#line 822
10856 mutex_unlock(__cil_tmp9);
10857 }
10858#line 823
10859 return;
10860}
10861}
10862#line 829 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10863static void mousedev_hangup(struct mousedev *mousedev )
10864{ struct mousedev_client *client ;
10865 struct list_head *__mptr ;
10866 struct list_head *__mptr___0 ;
10867 unsigned long __cil_tmp5 ;
10868 unsigned long __cil_tmp6 ;
10869 spinlock_t *__cil_tmp7 ;
10870 unsigned long __cil_tmp8 ;
10871 unsigned long __cil_tmp9 ;
10872 struct list_head *__cil_tmp10 ;
10873 struct mousedev_client *__cil_tmp11 ;
10874 unsigned long __cil_tmp12 ;
10875 unsigned long __cil_tmp13 ;
10876 struct list_head *__cil_tmp14 ;
10877 unsigned int __cil_tmp15 ;
10878 char *__cil_tmp16 ;
10879 char *__cil_tmp17 ;
10880 unsigned long __cil_tmp18 ;
10881 unsigned long __cil_tmp19 ;
10882 struct list_head *__cil_tmp20 ;
10883 unsigned long __cil_tmp21 ;
10884 unsigned long __cil_tmp22 ;
10885 unsigned long __cil_tmp23 ;
10886 struct list_head *__cil_tmp24 ;
10887 unsigned long __cil_tmp25 ;
10888 struct fasync_struct **__cil_tmp26 ;
10889 int __cil_tmp27 ;
10890 int __cil_tmp28 ;
10891 unsigned long __cil_tmp29 ;
10892 unsigned long __cil_tmp30 ;
10893 struct list_head *__cil_tmp31 ;
10894 struct mousedev_client *__cil_tmp32 ;
10895 unsigned long __cil_tmp33 ;
10896 unsigned long __cil_tmp34 ;
10897 struct list_head *__cil_tmp35 ;
10898 unsigned int __cil_tmp36 ;
10899 char *__cil_tmp37 ;
10900 char *__cil_tmp38 ;
10901 unsigned long __cil_tmp39 ;
10902 unsigned long __cil_tmp40 ;
10903 spinlock_t *__cil_tmp41 ;
10904 unsigned long __cil_tmp42 ;
10905 unsigned long __cil_tmp43 ;
10906 wait_queue_head_t *__cil_tmp44 ;
10907 void *__cil_tmp45 ;
10908
10909 {
10910 {
10911#line 833
10912 __cil_tmp5 = (unsigned long )mousedev;
10913#line 833
10914 __cil_tmp6 = __cil_tmp5 + 136;
10915#line 833
10916 __cil_tmp7 = (spinlock_t *)__cil_tmp6;
10917#line 833
10918 spin_lock(__cil_tmp7);
10919#line 834
10920 __cil_tmp8 = (unsigned long )mousedev;
10921#line 834
10922 __cil_tmp9 = __cil_tmp8 + 120;
10923#line 834
10924 __cil_tmp10 = *((struct list_head **)__cil_tmp9);
10925#line 834
10926 __mptr = (struct list_head *)__cil_tmp10;
10927#line 834
10928 __cil_tmp11 = (struct mousedev_client *)0;
10929#line 834
10930 __cil_tmp12 = (unsigned long )__cil_tmp11;
10931#line 834
10932 __cil_tmp13 = __cil_tmp12 + 16;
10933#line 834
10934 __cil_tmp14 = (struct list_head *)__cil_tmp13;
10935#line 834
10936 __cil_tmp15 = (unsigned int )__cil_tmp14;
10937#line 834
10938 __cil_tmp16 = (char *)__mptr;
10939#line 834
10940 __cil_tmp17 = __cil_tmp16 - __cil_tmp15;
10941#line 834
10942 client = (struct mousedev_client *)__cil_tmp17;
10943 }
10944 {
10945#line 834
10946 while (1) {
10947 while_continue: ;
10948 {
10949#line 834
10950 __cil_tmp18 = (unsigned long )mousedev;
10951#line 834
10952 __cil_tmp19 = __cil_tmp18 + 120;
10953#line 834
10954 __cil_tmp20 = (struct list_head *)__cil_tmp19;
10955#line 834
10956 __cil_tmp21 = (unsigned long )__cil_tmp20;
10957#line 834
10958 __cil_tmp22 = (unsigned long )client;
10959#line 834
10960 __cil_tmp23 = __cil_tmp22 + 16;
10961#line 834
10962 __cil_tmp24 = (struct list_head *)__cil_tmp23;
10963#line 834
10964 __cil_tmp25 = (unsigned long )__cil_tmp24;
10965#line 834
10966 if (__cil_tmp25 != __cil_tmp21) {
10967
10968 } else {
10969#line 834
10970 goto while_break;
10971 }
10972 }
10973 {
10974#line 835
10975 __cil_tmp26 = (struct fasync_struct **)client;
10976#line 835
10977 __cil_tmp27 = 2 << 16;
10978#line 835
10979 __cil_tmp28 = __cil_tmp27 | 6;
10980#line 835
10981 kill_fasync(__cil_tmp26, 29, __cil_tmp28);
10982#line 834
10983 __cil_tmp29 = (unsigned long )client;
10984#line 834
10985 __cil_tmp30 = __cil_tmp29 + 16;
10986#line 834
10987 __cil_tmp31 = *((struct list_head **)__cil_tmp30);
10988#line 834
10989 __mptr___0 = (struct list_head *)__cil_tmp31;
10990#line 834
10991 __cil_tmp32 = (struct mousedev_client *)0;
10992#line 834
10993 __cil_tmp33 = (unsigned long )__cil_tmp32;
10994#line 834
10995 __cil_tmp34 = __cil_tmp33 + 16;
10996#line 834
10997 __cil_tmp35 = (struct list_head *)__cil_tmp34;
10998#line 834
10999 __cil_tmp36 = (unsigned int )__cil_tmp35;
11000#line 834
11001 __cil_tmp37 = (char *)__mptr___0;
11002#line 834
11003 __cil_tmp38 = __cil_tmp37 - __cil_tmp36;
11004#line 834
11005 client = (struct mousedev_client *)__cil_tmp38;
11006 }
11007 }
11008 while_break: ;
11009 }
11010 {
11011#line 836
11012 __cil_tmp39 = (unsigned long )mousedev;
11013#line 836
11014 __cil_tmp40 = __cil_tmp39 + 136;
11015#line 836
11016 __cil_tmp41 = (spinlock_t *)__cil_tmp40;
11017#line 836
11018 spin_unlock(__cil_tmp41);
11019#line 838
11020 __cil_tmp42 = (unsigned long )mousedev;
11021#line 838
11022 __cil_tmp43 = __cil_tmp42 + 80;
11023#line 838
11024 __cil_tmp44 = (wait_queue_head_t *)__cil_tmp43;
11025#line 838
11026 __cil_tmp45 = (void *)0;
11027#line 838
11028 __wake_up(__cil_tmp44, 1U, 1, __cil_tmp45);
11029 }
11030#line 839
11031 return;
11032}
11033}
11034#line 841 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11035static void mousedev_cleanup(struct mousedev *mousedev )
11036{ struct input_handle *handle ;
11037 unsigned long __cil_tmp3 ;
11038 unsigned long __cil_tmp4 ;
11039
11040 {
11041 {
11042#line 843
11043 __cil_tmp3 = (unsigned long )mousedev;
11044#line 843
11045 __cil_tmp4 = __cil_tmp3 + 8;
11046#line 843
11047 handle = (struct input_handle *)__cil_tmp4;
11048#line 845
11049 mousedev_mark_dead(mousedev);
11050#line 846
11051 mousedev_hangup(mousedev);
11052#line 847
11053 mousedev_remove_chrdev(mousedev);
11054 }
11055#line 850
11056 if (*((int *)mousedev)) {
11057 {
11058#line 851
11059 input_close_device(handle);
11060 }
11061 } else {
11062
11063 }
11064#line 852
11065 return;
11066}
11067}
11068#line 869 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11069static struct lock_class_key __key___5 ;
11070#line 870 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11071static struct lock_class_key __key___6 ;
11072#line 873 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11073static struct lock_class_key __key___7 ;
11074#line 854 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11075static struct mousedev *mousedev_create(struct input_dev *dev , struct input_handler *handler ,
11076 int minor )
11077{ struct mousedev *mousedev ;
11078 int error ;
11079 void *tmp___7 ;
11080 void *tmp___8 ;
11081 unsigned long __cil_tmp8 ;
11082 unsigned long __cil_tmp9 ;
11083 struct list_head *__cil_tmp10 ;
11084 unsigned long __cil_tmp11 ;
11085 unsigned long __cil_tmp12 ;
11086 struct list_head *__cil_tmp13 ;
11087 unsigned long __cil_tmp14 ;
11088 unsigned long __cil_tmp15 ;
11089 spinlock_t *__cil_tmp16 ;
11090 unsigned long __cil_tmp17 ;
11091 unsigned long __cil_tmp18 ;
11092 struct raw_spinlock *__cil_tmp19 ;
11093 unsigned long __cil_tmp20 ;
11094 unsigned long __cil_tmp21 ;
11095 struct mutex *__cil_tmp22 ;
11096 unsigned long __cil_tmp23 ;
11097 unsigned long __cil_tmp24 ;
11098 wait_queue_head_t *__cil_tmp25 ;
11099 unsigned long __cil_tmp26 ;
11100 unsigned long __cil_tmp27 ;
11101 struct device *__cil_tmp28 ;
11102 unsigned long __cil_tmp29 ;
11103 unsigned long __cil_tmp30 ;
11104 struct device *__cil_tmp31 ;
11105 unsigned long __cil_tmp32 ;
11106 unsigned long __cil_tmp33 ;
11107 unsigned long __cil_tmp34 ;
11108 unsigned long __cil_tmp35 ;
11109 unsigned long __cil_tmp36 ;
11110 unsigned long __cil_tmp37 ;
11111 unsigned long __cil_tmp38 ;
11112 unsigned long __cil_tmp39 ;
11113 unsigned long __cil_tmp40 ;
11114 unsigned long __cil_tmp41 ;
11115 unsigned long __cil_tmp42 ;
11116 unsigned long __cil_tmp43 ;
11117 struct device *__cil_tmp44 ;
11118 struct device *__cil_tmp45 ;
11119 unsigned long __cil_tmp46 ;
11120 unsigned long __cil_tmp47 ;
11121 unsigned long __cil_tmp48 ;
11122 unsigned long __cil_tmp49 ;
11123 unsigned long __cil_tmp50 ;
11124 unsigned long __cil_tmp51 ;
11125 unsigned long __cil_tmp52 ;
11126 unsigned long __cil_tmp53 ;
11127 unsigned long __cil_tmp54 ;
11128 unsigned long __cil_tmp55 ;
11129 unsigned long __cil_tmp56 ;
11130 unsigned long __cil_tmp57 ;
11131 unsigned long __cil_tmp58 ;
11132 unsigned long __cil_tmp59 ;
11133 unsigned long __cil_tmp60 ;
11134 int __cil_tmp61 ;
11135 int __cil_tmp62 ;
11136 int __cil_tmp63 ;
11137 unsigned long __cil_tmp64 ;
11138 unsigned long __cil_tmp65 ;
11139 unsigned long __cil_tmp66 ;
11140 unsigned long __cil_tmp67 ;
11141 unsigned long __cil_tmp68 ;
11142 struct device *__cil_tmp69 ;
11143 unsigned long __cil_tmp70 ;
11144 unsigned long __cil_tmp71 ;
11145 struct input_handle *__cil_tmp72 ;
11146 unsigned long __cil_tmp73 ;
11147 unsigned long __cil_tmp74 ;
11148 struct device *__cil_tmp75 ;
11149 unsigned long __cil_tmp76 ;
11150 unsigned long __cil_tmp77 ;
11151 struct input_handle *__cil_tmp78 ;
11152 unsigned long __cil_tmp79 ;
11153 unsigned long __cil_tmp80 ;
11154 struct device *__cil_tmp81 ;
11155 long __cil_tmp82 ;
11156
11157 {
11158 {
11159#line 861
11160 tmp___7 = kzalloc(1120UL, 208U);
11161#line 861
11162 mousedev = (struct mousedev *)tmp___7;
11163 }
11164#line 862
11165 if (! mousedev) {
11166#line 863
11167 error = -12;
11168#line 864
11169 goto err_out;
11170 } else {
11171
11172 }
11173 {
11174#line 867
11175 __cil_tmp8 = (unsigned long )mousedev;
11176#line 867
11177 __cil_tmp9 = __cil_tmp8 + 120;
11178#line 867
11179 __cil_tmp10 = (struct list_head *)__cil_tmp9;
11180#line 867
11181 INIT_LIST_HEAD(__cil_tmp10);
11182#line 868
11183 __cil_tmp11 = (unsigned long )mousedev;
11184#line 868
11185 __cil_tmp12 = __cil_tmp11 + 1008;
11186#line 868
11187 __cil_tmp13 = (struct list_head *)__cil_tmp12;
11188#line 868
11189 INIT_LIST_HEAD(__cil_tmp13);
11190 }
11191 {
11192#line 869
11193 while (1) {
11194 while_continue: ;
11195 {
11196#line 869
11197 __cil_tmp14 = (unsigned long )mousedev;
11198#line 869
11199 __cil_tmp15 = __cil_tmp14 + 136;
11200#line 869
11201 __cil_tmp16 = (spinlock_t *)__cil_tmp15;
11202#line 869
11203 spinlock_check(__cil_tmp16);
11204 }
11205 {
11206#line 869
11207 while (1) {
11208 while_continue___0: ;
11209 {
11210#line 869
11211 __cil_tmp17 = (unsigned long )mousedev;
11212#line 869
11213 __cil_tmp18 = __cil_tmp17 + 136;
11214#line 869
11215 __cil_tmp19 = (struct raw_spinlock *)__cil_tmp18;
11216#line 869
11217 __raw_spin_lock_init(__cil_tmp19, "&(&mousedev->client_lock)->rlock", & __key___5);
11218 }
11219#line 869
11220 goto while_break___0;
11221 }
11222 while_break___0: ;
11223 }
11224#line 869
11225 goto while_break;
11226 }
11227 while_break: ;
11228 }
11229 {
11230#line 870
11231 while (1) {
11232 while_continue___1: ;
11233 {
11234#line 870
11235 __cil_tmp20 = (unsigned long )mousedev;
11236#line 870
11237 __cil_tmp21 = __cil_tmp20 + 160;
11238#line 870
11239 __cil_tmp22 = (struct mutex *)__cil_tmp21;
11240#line 870
11241 __mutex_init(__cil_tmp22, "&mousedev->mutex", & __key___6);
11242 }
11243#line 870
11244 goto while_break___1;
11245 }
11246 while_break___1: ;
11247 }
11248 {
11249#line 871
11250 while (1) {
11251 while_continue___2: ;
11252#line 871
11253 goto while_break___2;
11254 }
11255 while_break___2: ;
11256 }
11257 {
11258#line 873
11259 while (1) {
11260 while_continue___3: ;
11261 {
11262#line 873
11263 __cil_tmp23 = (unsigned long )mousedev;
11264#line 873
11265 __cil_tmp24 = __cil_tmp23 + 80;
11266#line 873
11267 __cil_tmp25 = (wait_queue_head_t *)__cil_tmp24;
11268#line 873
11269 __init_waitqueue_head(__cil_tmp25, "&mousedev->wait", & __key___7);
11270 }
11271#line 873
11272 goto while_break___3;
11273 }
11274 while_break___3: ;
11275 }
11276#line 875
11277 if (minor == 31) {
11278 {
11279#line 876
11280 __cil_tmp26 = (unsigned long )mousedev;
11281#line 876
11282 __cil_tmp27 = __cil_tmp26 + 232;
11283#line 876
11284 __cil_tmp28 = (struct device *)__cil_tmp27;
11285#line 876
11286 dev_set_name(__cil_tmp28, "mice");
11287 }
11288 } else {
11289 {
11290#line 878
11291 __cil_tmp29 = (unsigned long )mousedev;
11292#line 878
11293 __cil_tmp30 = __cil_tmp29 + 232;
11294#line 878
11295 __cil_tmp31 = (struct device *)__cil_tmp30;
11296#line 878
11297 dev_set_name(__cil_tmp31, "mouse%d", minor);
11298 }
11299 }
11300 {
11301#line 880
11302 __cil_tmp32 = (unsigned long )mousedev;
11303#line 880
11304 __cil_tmp33 = __cil_tmp32 + 4;
11305#line 880
11306 *((int *)__cil_tmp33) = minor;
11307#line 881
11308 __cil_tmp34 = (unsigned long )mousedev;
11309#line 881
11310 __cil_tmp35 = __cil_tmp34 + 1000;
11311#line 881
11312 *((bool *)__cil_tmp35) = (bool )1;
11313#line 882
11314 __cil_tmp36 = 8 + 24;
11315#line 882
11316 __cil_tmp37 = (unsigned long )mousedev;
11317#line 882
11318 __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
11319#line 882
11320 *((struct input_dev **)__cil_tmp38) = input_get_device(dev);
11321#line 883
11322 __cil_tmp39 = 8 + 16;
11323#line 883
11324 __cil_tmp40 = (unsigned long )mousedev;
11325#line 883
11326 __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
11327#line 883
11328 __cil_tmp42 = (unsigned long )mousedev;
11329#line 883
11330 __cil_tmp43 = __cil_tmp42 + 232;
11331#line 883
11332 __cil_tmp44 = (struct device *)__cil_tmp43;
11333#line 883
11334 __cil_tmp45 = (struct device *)__cil_tmp44;
11335#line 883
11336 *((char **)__cil_tmp41) = dev_name(__cil_tmp45);
11337#line 884
11338 __cil_tmp46 = 8 + 32;
11339#line 884
11340 __cil_tmp47 = (unsigned long )mousedev;
11341#line 884
11342 __cil_tmp48 = __cil_tmp47 + __cil_tmp46;
11343#line 884
11344 *((struct input_handler **)__cil_tmp48) = handler;
11345#line 885
11346 __cil_tmp49 = (unsigned long )mousedev;
11347#line 885
11348 __cil_tmp50 = __cil_tmp49 + 8;
11349#line 885
11350 *((void **)__cil_tmp50) = (void *)mousedev;
11351#line 887
11352 __cil_tmp51 = 232 + 744;
11353#line 887
11354 __cil_tmp52 = (unsigned long )mousedev;
11355#line 887
11356 __cil_tmp53 = __cil_tmp52 + __cil_tmp51;
11357#line 887
11358 *((struct class **)__cil_tmp53) = & input_class;
11359 }
11360#line 888
11361 if (dev) {
11362#line 889
11363 __cil_tmp54 = (unsigned long )mousedev;
11364#line 889
11365 __cil_tmp55 = __cil_tmp54 + 232;
11366#line 889
11367 __cil_tmp56 = (unsigned long )dev;
11368#line 889
11369 __cil_tmp57 = __cil_tmp56 + 648;
11370#line 889
11371 *((struct device **)__cil_tmp55) = (struct device *)__cil_tmp57;
11372 } else {
11373
11374 }
11375 {
11376#line 890
11377 __cil_tmp58 = 232 + 664;
11378#line 890
11379 __cil_tmp59 = (unsigned long )mousedev;
11380#line 890
11381 __cil_tmp60 = __cil_tmp59 + __cil_tmp58;
11382#line 890
11383 __cil_tmp61 = 32 + minor;
11384#line 890
11385 __cil_tmp62 = 13 << 20;
11386#line 890
11387 __cil_tmp63 = __cil_tmp62 | __cil_tmp61;
11388#line 890
11389 *((dev_t *)__cil_tmp60) = (dev_t )__cil_tmp63;
11390#line 891
11391 __cil_tmp64 = 232 + 760;
11392#line 891
11393 __cil_tmp65 = (unsigned long )mousedev;
11394#line 891
11395 __cil_tmp66 = __cil_tmp65 + __cil_tmp64;
11396#line 891
11397 *((void (**)(struct device *dev ))__cil_tmp66) = & mousedev_free;
11398#line 892
11399 __cil_tmp67 = (unsigned long )mousedev;
11400#line 892
11401 __cil_tmp68 = __cil_tmp67 + 232;
11402#line 892
11403 __cil_tmp69 = (struct device *)__cil_tmp68;
11404#line 892
11405 device_initialize(__cil_tmp69);
11406 }
11407#line 894
11408 if (minor != 31) {
11409 {
11410#line 895
11411 __cil_tmp70 = (unsigned long )mousedev;
11412#line 895
11413 __cil_tmp71 = __cil_tmp70 + 8;
11414#line 895
11415 __cil_tmp72 = (struct input_handle *)__cil_tmp71;
11416#line 895
11417 error = input_register_handle(__cil_tmp72);
11418 }
11419#line 896
11420 if (error) {
11421#line 897
11422 goto err_free_mousedev;
11423 } else {
11424
11425 }
11426 } else {
11427
11428 }
11429 {
11430#line 900
11431 error = mousedev_install_chrdev(mousedev);
11432 }
11433#line 901
11434 if (error) {
11435#line 902
11436 goto err_unregister_handle;
11437 } else {
11438
11439 }
11440 {
11441#line 904
11442 __cil_tmp73 = (unsigned long )mousedev;
11443#line 904
11444 __cil_tmp74 = __cil_tmp73 + 232;
11445#line 904
11446 __cil_tmp75 = (struct device *)__cil_tmp74;
11447#line 904
11448 error = (int )device_add(__cil_tmp75);
11449 }
11450#line 905
11451 if (error) {
11452#line 906
11453 goto err_cleanup_mousedev;
11454 } else {
11455
11456 }
11457#line 908
11458 return (mousedev);
11459 err_cleanup_mousedev:
11460 {
11461#line 911
11462 mousedev_cleanup(mousedev);
11463 }
11464 err_unregister_handle:
11465#line 913
11466 if (minor != 31) {
11467 {
11468#line 914
11469 __cil_tmp76 = (unsigned long )mousedev;
11470#line 914
11471 __cil_tmp77 = __cil_tmp76 + 8;
11472#line 914
11473 __cil_tmp78 = (struct input_handle *)__cil_tmp77;
11474#line 914
11475 input_unregister_handle(__cil_tmp78);
11476 }
11477 } else {
11478
11479 }
11480 err_free_mousedev:
11481 {
11482#line 916
11483 __cil_tmp79 = (unsigned long )mousedev;
11484#line 916
11485 __cil_tmp80 = __cil_tmp79 + 232;
11486#line 916
11487 __cil_tmp81 = (struct device *)__cil_tmp80;
11488#line 916
11489 put_device(__cil_tmp81);
11490 }
11491 err_out:
11492 {
11493#line 918
11494 __cil_tmp82 = (long )error;
11495#line 918
11496 tmp___8 = (void *)ERR_PTR(__cil_tmp82);
11497 }
11498#line 918
11499 return ((struct mousedev *)tmp___8);
11500}
11501}
11502#line 921 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11503static void mousedev_destroy(struct mousedev *mousedev )
11504{ unsigned long __cil_tmp2 ;
11505 unsigned long __cil_tmp3 ;
11506 struct device *__cil_tmp4 ;
11507 unsigned long __cil_tmp5 ;
11508 unsigned long __cil_tmp6 ;
11509 int __cil_tmp7 ;
11510 unsigned long __cil_tmp8 ;
11511 unsigned long __cil_tmp9 ;
11512 struct input_handle *__cil_tmp10 ;
11513 unsigned long __cil_tmp11 ;
11514 unsigned long __cil_tmp12 ;
11515 struct device *__cil_tmp13 ;
11516
11517 {
11518 {
11519#line 923
11520 __cil_tmp2 = (unsigned long )mousedev;
11521#line 923
11522 __cil_tmp3 = __cil_tmp2 + 232;
11523#line 923
11524 __cil_tmp4 = (struct device *)__cil_tmp3;
11525#line 923
11526 device_del(__cil_tmp4);
11527#line 924
11528 mousedev_cleanup(mousedev);
11529 }
11530 {
11531#line 925
11532 __cil_tmp5 = (unsigned long )mousedev;
11533#line 925
11534 __cil_tmp6 = __cil_tmp5 + 4;
11535#line 925
11536 __cil_tmp7 = *((int *)__cil_tmp6);
11537#line 925
11538 if (__cil_tmp7 != 31) {
11539 {
11540#line 926
11541 __cil_tmp8 = (unsigned long )mousedev;
11542#line 926
11543 __cil_tmp9 = __cil_tmp8 + 8;
11544#line 926
11545 __cil_tmp10 = (struct input_handle *)__cil_tmp9;
11546#line 926
11547 input_unregister_handle(__cil_tmp10);
11548 }
11549 } else {
11550
11551 }
11552 }
11553 {
11554#line 927
11555 __cil_tmp11 = (unsigned long )mousedev;
11556#line 927
11557 __cil_tmp12 = __cil_tmp11 + 232;
11558#line 927
11559 __cil_tmp13 = (struct device *)__cil_tmp12;
11560#line 927
11561 put_device(__cil_tmp13);
11562 }
11563#line 928
11564 return;
11565}
11566}
11567#line 930 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11568static int mixdev_add_device(struct mousedev *mousedev )
11569{ int retval ;
11570 unsigned long __cil_tmp3 ;
11571 unsigned long __cil_tmp4 ;
11572 struct mutex *__cil_tmp5 ;
11573 unsigned long __cil_tmp6 ;
11574 unsigned long __cil_tmp7 ;
11575 unsigned long __cil_tmp8 ;
11576 unsigned long __cil_tmp9 ;
11577 struct device *__cil_tmp10 ;
11578 unsigned long __cil_tmp11 ;
11579 unsigned long __cil_tmp12 ;
11580 struct list_head *__cil_tmp13 ;
11581 unsigned long __cil_tmp14 ;
11582 unsigned long __cil_tmp15 ;
11583 struct mutex *__cil_tmp16 ;
11584
11585 {
11586 {
11587#line 934
11588 __cil_tmp3 = (unsigned long )mousedev_mix;
11589#line 934
11590 __cil_tmp4 = __cil_tmp3 + 160;
11591#line 934
11592 __cil_tmp5 = (struct mutex *)__cil_tmp4;
11593#line 934
11594 retval = (int )mutex_lock_interruptible(__cil_tmp5);
11595 }
11596#line 935
11597 if (retval) {
11598#line 936
11599 return (retval);
11600 } else {
11601
11602 }
11603#line 938
11604 if (*((int *)mousedev_mix)) {
11605 {
11606#line 939
11607 retval = mousedev_open_device(mousedev);
11608 }
11609#line 940
11610 if (retval) {
11611#line 941
11612 goto out;
11613 } else {
11614
11615 }
11616#line 943
11617 __cil_tmp6 = (unsigned long )mousedev;
11618#line 943
11619 __cil_tmp7 = __cil_tmp6 + 1024;
11620#line 943
11621 *((int *)__cil_tmp7) = 1;
11622 } else {
11623
11624 }
11625 {
11626#line 946
11627 __cil_tmp8 = (unsigned long )mousedev;
11628#line 946
11629 __cil_tmp9 = __cil_tmp8 + 232;
11630#line 946
11631 __cil_tmp10 = (struct device *)__cil_tmp9;
11632#line 946
11633 get_device(__cil_tmp10);
11634#line 947
11635 __cil_tmp11 = (unsigned long )mousedev;
11636#line 947
11637 __cil_tmp12 = __cil_tmp11 + 1008;
11638#line 947
11639 __cil_tmp13 = (struct list_head *)__cil_tmp12;
11640#line 947
11641 list_add_tail(__cil_tmp13, & mousedev_mix_list);
11642 }
11643 out:
11644 {
11645#line 950
11646 __cil_tmp14 = (unsigned long )mousedev_mix;
11647#line 950
11648 __cil_tmp15 = __cil_tmp14 + 160;
11649#line 950
11650 __cil_tmp16 = (struct mutex *)__cil_tmp15;
11651#line 950
11652 mutex_unlock(__cil_tmp16);
11653 }
11654#line 951
11655 return (retval);
11656}
11657}
11658#line 954 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11659static void mixdev_remove_device(struct mousedev *mousedev )
11660{ unsigned long __cil_tmp2 ;
11661 unsigned long __cil_tmp3 ;
11662 struct mutex *__cil_tmp4 ;
11663 unsigned long __cil_tmp5 ;
11664 unsigned long __cil_tmp6 ;
11665 unsigned long __cil_tmp7 ;
11666 unsigned long __cil_tmp8 ;
11667 unsigned long __cil_tmp9 ;
11668 unsigned long __cil_tmp10 ;
11669 struct list_head *__cil_tmp11 ;
11670 unsigned long __cil_tmp12 ;
11671 unsigned long __cil_tmp13 ;
11672 struct mutex *__cil_tmp14 ;
11673 unsigned long __cil_tmp15 ;
11674 unsigned long __cil_tmp16 ;
11675 struct device *__cil_tmp17 ;
11676
11677 {
11678 {
11679#line 956
11680 __cil_tmp2 = (unsigned long )mousedev_mix;
11681#line 956
11682 __cil_tmp3 = __cil_tmp2 + 160;
11683#line 956
11684 __cil_tmp4 = (struct mutex *)__cil_tmp3;
11685#line 956
11686 mutex_lock(__cil_tmp4);
11687 }
11688 {
11689#line 958
11690 __cil_tmp5 = (unsigned long )mousedev;
11691#line 958
11692 __cil_tmp6 = __cil_tmp5 + 1024;
11693#line 958
11694 if (*((int *)__cil_tmp6)) {
11695 {
11696#line 959
11697 __cil_tmp7 = (unsigned long )mousedev;
11698#line 959
11699 __cil_tmp8 = __cil_tmp7 + 1024;
11700#line 959
11701 *((int *)__cil_tmp8) = 0;
11702#line 960
11703 mousedev_close_device(mousedev);
11704 }
11705 } else {
11706
11707 }
11708 }
11709 {
11710#line 963
11711 __cil_tmp9 = (unsigned long )mousedev;
11712#line 963
11713 __cil_tmp10 = __cil_tmp9 + 1008;
11714#line 963
11715 __cil_tmp11 = (struct list_head *)__cil_tmp10;
11716#line 963
11717 list_del_init(__cil_tmp11);
11718#line 964
11719 __cil_tmp12 = (unsigned long )mousedev_mix;
11720#line 964
11721 __cil_tmp13 = __cil_tmp12 + 160;
11722#line 964
11723 __cil_tmp14 = (struct mutex *)__cil_tmp13;
11724#line 964
11725 mutex_unlock(__cil_tmp14);
11726#line 966
11727 __cil_tmp15 = (unsigned long )mousedev;
11728#line 966
11729 __cil_tmp16 = __cil_tmp15 + 232;
11730#line 966
11731 __cil_tmp17 = (struct device *)__cil_tmp16;
11732#line 966
11733 put_device(__cil_tmp17);
11734 }
11735#line 967
11736 return;
11737}
11738}
11739#line 969 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11740static int mousedev_connect(struct input_handler *handler , struct input_dev *dev ,
11741 struct input_device_id *id )
11742{ struct mousedev *mousedev ;
11743 int minor ;
11744 int error ;
11745 long tmp___7 ;
11746 long tmp___8 ;
11747 unsigned long __cil_tmp9 ;
11748 unsigned long __cil_tmp10 ;
11749 struct mousedev *__cil_tmp11 ;
11750 void *__cil_tmp12 ;
11751 void *__cil_tmp13 ;
11752
11753 {
11754#line 977
11755 minor = 0;
11756 {
11757#line 977
11758 while (1) {
11759 while_continue: ;
11760#line 977
11761 if (minor < 32) {
11762
11763 } else {
11764#line 977
11765 goto while_break;
11766 }
11767 {
11768#line 978
11769 __cil_tmp9 = minor * 8UL;
11770#line 978
11771 __cil_tmp10 = (unsigned long )(mousedev_table) + __cil_tmp9;
11772#line 978
11773 __cil_tmp11 = *((struct mousedev **)__cil_tmp10);
11774#line 978
11775 if (! __cil_tmp11) {
11776#line 979
11777 goto while_break;
11778 } else {
11779
11780 }
11781 }
11782#line 977
11783 minor = minor + 1;
11784 }
11785 while_break: ;
11786 }
11787#line 981
11788 if (minor == 32) {
11789 {
11790#line 982
11791 printk("<3>mousedev: no more free mousedev devices\n");
11792 }
11793#line 983
11794 return (-23);
11795 } else {
11796
11797 }
11798 {
11799#line 986
11800 mousedev = mousedev_create(dev, handler, minor);
11801#line 987
11802 __cil_tmp12 = (void *)mousedev;
11803#line 987
11804 tmp___8 = (long )IS_ERR(__cil_tmp12);
11805 }
11806#line 987
11807 if (tmp___8) {
11808 {
11809#line 988
11810 __cil_tmp13 = (void *)mousedev;
11811#line 988
11812 tmp___7 = (long )PTR_ERR(__cil_tmp13);
11813 }
11814#line 988
11815 return ((int )tmp___7);
11816 } else {
11817
11818 }
11819 {
11820#line 990
11821 error = mixdev_add_device(mousedev);
11822 }
11823#line 991
11824 if (error) {
11825 {
11826#line 992
11827 mousedev_destroy(mousedev);
11828 }
11829#line 993
11830 return (error);
11831 } else {
11832
11833 }
11834#line 996
11835 return (0);
11836}
11837}
11838#line 999 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11839static void mousedev_disconnect(struct input_handle *handle )
11840{ struct mousedev *mousedev ;
11841 void *__cil_tmp3 ;
11842
11843 {
11844 {
11845#line 1001
11846 __cil_tmp3 = *((void **)handle);
11847#line 1001
11848 mousedev = (struct mousedev *)__cil_tmp3;
11849#line 1003
11850 mixdev_remove_device(mousedev);
11851#line 1004
11852 mousedev_destroy(mousedev);
11853 }
11854#line 1005
11855 return;
11856}
11857}
11858#line 1007 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11859static struct input_device_id mousedev_ids[5] = { {(kernel_ulong_t )112, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11860 (unsigned short)0, {(1UL << 1) | (1UL << 2)}, {0UL, 0UL, 0UL, 0UL, 1UL << 16,
11861 0UL, 0UL, 0UL, 0UL, 0UL, 0UL,
11862 0UL}, {1UL | (1UL << 1)}, {0UL},
11863 {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL},
11864 {(kernel_ulong_t )80, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11865 (unsigned short)0, {(1UL << 1) | (1UL << 2)}, {0UL, 0UL, 0UL, 0UL, 0UL, 0UL,
11866 0UL, 0UL, 0UL, 0UL, 0UL, 0UL},
11867 {1UL << 8}, {0UL}, {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL},
11868 {(kernel_ulong_t )176, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11869 (unsigned short)0, {(1UL << 1) | (1UL << 3)}, {0UL, 0UL, 0UL, 0UL, 0UL, 1UL << 10,
11870 0UL, 0UL, 0UL, 0UL, 0UL, 0UL},
11871 {0UL}, {1UL | (1UL << 1)}, {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL},
11872 {(kernel_ulong_t )176, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11873 (unsigned short)0, {(1UL << 1) | (1UL << 3)}, {0UL, 0UL, 0UL, 0UL, 0UL, 1UL << 5,
11874 0UL, 0UL, 0UL, 0UL, 0UL, 0UL},
11875 {0UL}, {((1UL | (1UL << 1)) | (1UL << 24)) | (1UL << 28)}, {0UL}, {0UL}, {0UL},
11876 {0UL, 0UL}, {0UL}, 0UL},
11877 {(kernel_ulong_t )176, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11878 (unsigned short)0, {(1UL << 1) | (1UL << 3)}, {0UL, 0UL, 0UL, 0UL, 1UL << 16,
11879 0UL, 0UL, 0UL, 0UL, 0UL, 0UL,
11880 0UL}, {0UL}, {1UL | (1UL << 1)},
11881 {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL}};
11882#line 1056
11883extern struct input_device_id __mod_input_device_table __attribute__((__unused__,
11884__alias__("mousedev_ids"))) ;
11885#line 1058 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11886static struct input_handler mousedev_handler =
11887#line 1058
11888 {(void *)0, & mousedev_event, (bool (*)(struct input_handle *handle , unsigned int type ,
11889 unsigned int code , int value ))0, (bool (*)(struct input_handler *handler ,
11890 struct input_dev *dev ))0,
11891 & mousedev_connect, & mousedev_disconnect, (void (*)(struct input_handle *handle ))0,
11892 & mousedev_fops, 32, "mousedev", mousedev_ids, {(struct list_head *)0, (struct list_head *)0},
11893 {(struct list_head *)0, (struct list_head *)0}};
11894#line 1069 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11895static struct miscdevice psaux_mouse =
11896#line 1069
11897 {1, "psaux", & mousedev_fops, {(struct list_head *)0, (struct list_head *)0}, (struct device *)0,
11898 (struct device *)0, (char *)0, (unsigned short)0};
11899#line 1072 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11900static int psaux_registered ;
11901#line 1075
11902static int mousedev_init(void) __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
11903#line 1075 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11904static int mousedev_init(void)
11905{ int error ;
11906 long tmp___7 ;
11907 long tmp___8 ;
11908 void *__cil_tmp4 ;
11909 struct input_dev *__cil_tmp5 ;
11910 void *__cil_tmp6 ;
11911 void *__cil_tmp7 ;
11912
11913 {
11914 {
11915#line 1079
11916 __cil_tmp4 = (void *)0;
11917#line 1079
11918 __cil_tmp5 = (struct input_dev *)__cil_tmp4;
11919#line 1079
11920 mousedev_mix = mousedev_create(__cil_tmp5, & mousedev_handler, 31);
11921#line 1080
11922 __cil_tmp6 = (void *)mousedev_mix;
11923#line 1080
11924 tmp___8 = (long )IS_ERR(__cil_tmp6);
11925 }
11926#line 1080
11927 if (tmp___8) {
11928 {
11929#line 1081
11930 __cil_tmp7 = (void *)mousedev_mix;
11931#line 1081
11932 tmp___7 = (long )PTR_ERR(__cil_tmp7);
11933 }
11934#line 1081
11935 return ((int )tmp___7);
11936 } else {
11937
11938 }
11939 {
11940#line 1083
11941 error = (int )input_register_handler(& mousedev_handler);
11942 }
11943#line 1084
11944 if (error) {
11945 {
11946#line 1085
11947 mousedev_destroy(mousedev_mix);
11948 }
11949#line 1086
11950 return (error);
11951 } else {
11952
11953 }
11954 {
11955#line 1090
11956 error = misc_register(& psaux_mouse);
11957 }
11958#line 1091
11959 if (error) {
11960 {
11961#line 1092
11962 printk("<4>mousedev: could not register psaux device, error: %d\n", error);
11963 }
11964 } else {
11965#line 1095
11966 psaux_registered = 1;
11967 }
11968 {
11969#line 1098
11970 printk("<6>mousedev: PS/2 mouse device common for all mice\n");
11971 }
11972#line 1100
11973 return (0);
11974}
11975}
11976#line 1103
11977static void mousedev_exit(void) __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
11978#line 1103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11979static void mousedev_exit(void)
11980{
11981
11982 {
11983#line 1106
11984 if (psaux_registered) {
11985 {
11986#line 1107
11987 misc_deregister(& psaux_mouse);
11988 }
11989 } else {
11990
11991 }
11992 {
11993#line 1109
11994 input_unregister_handler(& mousedev_handler);
11995#line 1110
11996 mousedev_destroy(mousedev_mix);
11997 }
11998#line 1111
11999 return;
12000}
12001}
12002#line 1113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12003int init_module(void)
12004{ int tmp___7 ;
12005
12006 {
12007 {
12008#line 1113
12009 tmp___7 = mousedev_init();
12010 }
12011#line 1113
12012 return (tmp___7);
12013}
12014}
12015#line 1114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12016void cleanup_module(void)
12017{
12018
12019 {
12020 {
12021#line 1114
12022 mousedev_exit();
12023 }
12024#line 1114
12025 return;
12026}
12027}
12028#line 1132
12029void ldv_check_final_state(void) ;
12030#line 1135
12031extern void ldv_check_return_value(int res ) ;
12032#line 1138
12033extern void ldv_initialize(void) ;
12034#line 1141
12035extern int __VERIFIER_nondet_int(void) ;
12036#line 1144 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12037int LDV_IN_INTERRUPT ;
12038#line 1184 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12039static ssize_t res_mousedev_read_21 ;
12040#line 1221 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12041static ssize_t res_mousedev_write_20 ;
12042#line 1283 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12043static int res_mousedev_open_16 ;
12044#line 1421 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12045static int res_mousedev_connect_32 ;
12046#line 1147 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12047void main(void)
12048{ struct file *var_group1 ;
12049 char *var_mousedev_read_21_p1 ;
12050 size_t var_mousedev_read_21_p2 ;
12051 loff_t *var_mousedev_read_21_p3 ;
12052 char *var_mousedev_write_20_p1 ;
12053 size_t var_mousedev_write_20_p2 ;
12054 loff_t *var_mousedev_write_20_p3 ;
12055 poll_table *var_mousedev_poll_22_p1 ;
12056 struct inode *var_group2 ;
12057 int var_mousedev_fasync_7_p0 ;
12058 int var_mousedev_fasync_7_p2 ;
12059 struct input_handle *var_group3 ;
12060 unsigned int var_mousedev_event_6_p1 ;
12061 unsigned int var_mousedev_event_6_p2 ;
12062 int var_mousedev_event_6_p3 ;
12063 struct input_handler *var_group4 ;
12064 struct input_dev *var_group5 ;
12065 struct input_device_id *var_mousedev_connect_32_p2 ;
12066 int tmp___7 ;
12067 int ldv_s_mousedev_fops_file_operations ;
12068 int ldv_s_mousedev_handler_input_handler ;
12069 int tmp___8 ;
12070 int tmp___9 ;
12071 int __cil_tmp24 ;
12072 int __cil_tmp25 ;
12073 int __cil_tmp26 ;
12074 int __cil_tmp27 ;
12075
12076 {
12077 {
12078#line 1466
12079 LDV_IN_INTERRUPT = 1;
12080#line 1475
12081 ldv_initialize();
12082#line 1502
12083 tmp___7 = mousedev_init();
12084 }
12085#line 1502
12086 if (tmp___7) {
12087#line 1503
12088 goto ldv_final;
12089 } else {
12090
12091 }
12092#line 1508
12093 ldv_s_mousedev_fops_file_operations = 0;
12094#line 1511
12095 ldv_s_mousedev_handler_input_handler = 0;
12096 {
12097#line 1515
12098 while (1) {
12099 while_continue: ;
12100 {
12101#line 1515
12102 tmp___9 = __VERIFIER_nondet_int();
12103 }
12104#line 1515
12105 if (tmp___9) {
12106
12107 } else {
12108 {
12109#line 1515
12110 __cil_tmp24 = ldv_s_mousedev_fops_file_operations == 0;
12111#line 1515
12112 if (! __cil_tmp24) {
12113
12114 } else {
12115 {
12116#line 1515
12117 __cil_tmp25 = ldv_s_mousedev_handler_input_handler == 0;
12118#line 1515
12119 if (! __cil_tmp25) {
12120
12121 } else {
12122#line 1515
12123 goto while_break;
12124 }
12125 }
12126 }
12127 }
12128 }
12129 {
12130#line 1520
12131 tmp___8 = __VERIFIER_nondet_int();
12132 }
12133#line 1522
12134 if (tmp___8 == 0) {
12135#line 1522
12136 goto case_0;
12137 } else
12138#line 1566
12139 if (tmp___8 == 1) {
12140#line 1566
12141 goto case_1;
12142 } else
12143#line 1612
12144 if (tmp___8 == 2) {
12145#line 1612
12146 goto case_2;
12147 } else
12148#line 1658
12149 if (tmp___8 == 3) {
12150#line 1658
12151 goto case_3;
12152 } else
12153#line 1701
12154 if (tmp___8 == 4) {
12155#line 1701
12156 goto case_4;
12157 } else
12158#line 1744
12159 if (tmp___8 == 5) {
12160#line 1744
12161 goto case_5;
12162 } else
12163#line 1787
12164 if (tmp___8 == 6) {
12165#line 1787
12166 goto case_6;
12167 } else
12168#line 1833
12169 if (tmp___8 == 7) {
12170#line 1833
12171 goto case_7;
12172 } else
12173#line 1876
12174 if (tmp___8 == 8) {
12175#line 1876
12176 goto case_8;
12177 } else {
12178 {
12179#line 1919
12180 goto switch_default;
12181#line 1520
12182 if (0) {
12183 case_0:
12184#line 1525
12185 if (ldv_s_mousedev_fops_file_operations == 0) {
12186 {
12187#line 1547
12188 res_mousedev_open_16 = mousedev_open(var_group2, var_group1);
12189#line 1548
12190 ldv_check_return_value(res_mousedev_open_16);
12191 }
12192#line 1549
12193 if (res_mousedev_open_16) {
12194#line 1550
12195 goto ldv_module_exit;
12196 } else {
12197
12198 }
12199#line 1559
12200 ldv_s_mousedev_fops_file_operations = ldv_s_mousedev_fops_file_operations + 1;
12201 } else {
12202
12203 }
12204#line 1565
12205 goto switch_break;
12206 case_1:
12207#line 1569
12208 if (ldv_s_mousedev_fops_file_operations == 1) {
12209 {
12210#line 1593
12211 res_mousedev_read_21 = mousedev_read(var_group1, var_mousedev_read_21_p1,
12212 var_mousedev_read_21_p2, var_mousedev_read_21_p3);
12213#line 1594
12214 __cil_tmp26 = (int )res_mousedev_read_21;
12215#line 1594
12216 ldv_check_return_value(__cil_tmp26);
12217 }
12218#line 1595
12219 if (res_mousedev_read_21 < 0L) {
12220#line 1596
12221 goto ldv_module_exit;
12222 } else {
12223
12224 }
12225#line 1605
12226 ldv_s_mousedev_fops_file_operations = ldv_s_mousedev_fops_file_operations + 1;
12227 } else {
12228
12229 }
12230#line 1611
12231 goto switch_break;
12232 case_2:
12233#line 1615
12234 if (ldv_s_mousedev_fops_file_operations == 2) {
12235 {
12236#line 1639
12237 res_mousedev_write_20 = mousedev_write(var_group1, var_mousedev_write_20_p1,
12238 var_mousedev_write_20_p2, var_mousedev_write_20_p3);
12239#line 1640
12240 __cil_tmp27 = (int )res_mousedev_write_20;
12241#line 1640
12242 ldv_check_return_value(__cil_tmp27);
12243 }
12244#line 1641
12245 if (res_mousedev_write_20 < 0L) {
12246#line 1642
12247 goto ldv_module_exit;
12248 } else {
12249
12250 }
12251#line 1651
12252 ldv_s_mousedev_fops_file_operations = ldv_s_mousedev_fops_file_operations + 1;
12253 } else {
12254
12255 }
12256#line 1657
12257 goto switch_break;
12258 case_3:
12259#line 1661
12260 if (ldv_s_mousedev_fops_file_operations == 3) {
12261 {
12262#line 1683
12263 mousedev_release(var_group2, var_group1);
12264#line 1694
12265 ldv_s_mousedev_fops_file_operations = 0;
12266 }
12267 } else {
12268
12269 }
12270#line 1700
12271 goto switch_break;
12272 case_4:
12273 {
12274#line 1728
12275 mousedev_poll(var_group1, var_mousedev_poll_22_p1);
12276 }
12277#line 1743
12278 goto switch_break;
12279 case_5:
12280 {
12281#line 1769
12282 mousedev_fasync(var_mousedev_fasync_7_p0, var_group1, var_mousedev_fasync_7_p2);
12283 }
12284#line 1786
12285 goto switch_break;
12286 case_6:
12287#line 1790
12288 if (ldv_s_mousedev_handler_input_handler == 0) {
12289 {
12290#line 1814
12291 res_mousedev_connect_32 = mousedev_connect(var_group4, var_group5, var_mousedev_connect_32_p2);
12292#line 1815
12293 ldv_check_return_value(res_mousedev_connect_32);
12294 }
12295#line 1816
12296 if (res_mousedev_connect_32) {
12297#line 1817
12298 goto ldv_module_exit;
12299 } else {
12300
12301 }
12302#line 1826
12303 ldv_s_mousedev_handler_input_handler = ldv_s_mousedev_handler_input_handler + 1;
12304 } else {
12305
12306 }
12307#line 1832
12308 goto switch_break;
12309 case_7:
12310#line 1836
12311 if (ldv_s_mousedev_handler_input_handler == 1) {
12312 {
12313#line 1860
12314 mousedev_disconnect(var_group3);
12315#line 1869
12316 ldv_s_mousedev_handler_input_handler = 0;
12317 }
12318 } else {
12319
12320 }
12321#line 1875
12322 goto switch_break;
12323 case_8:
12324 {
12325#line 1901
12326 mousedev_event(var_group3, var_mousedev_event_6_p1, var_mousedev_event_6_p2,
12327 var_mousedev_event_6_p3);
12328 }
12329#line 1918
12330 goto switch_break;
12331 switch_default:
12332#line 1919
12333 goto switch_break;
12334 } else {
12335 switch_break: ;
12336 }
12337 }
12338 }
12339 }
12340 while_break: ;
12341 }
12342 ldv_module_exit:
12343 {
12344#line 1954
12345 mousedev_exit();
12346 }
12347 ldv_final:
12348 {
12349#line 1957
12350 ldv_check_final_state();
12351 }
12352#line 1960
12353 return;
12354}
12355}
12356#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
12357void ldv_blast_assert(void)
12358{
12359
12360 {
12361 ERROR:
12362#line 6
12363 goto ERROR;
12364}
12365}
12366#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
12367extern int __VERIFIER_nondet_int(void) ;
12368#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12369int ldv_mutex = 1;
12370#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12371int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock )
12372{ int nondetermined ;
12373
12374 {
12375#line 29
12376 if (ldv_mutex == 1) {
12377
12378 } else {
12379 {
12380#line 29
12381 ldv_blast_assert();
12382 }
12383 }
12384 {
12385#line 32
12386 nondetermined = __VERIFIER_nondet_int();
12387 }
12388#line 35
12389 if (nondetermined) {
12390#line 38
12391 ldv_mutex = 2;
12392#line 40
12393 return (0);
12394 } else {
12395#line 45
12396 return (-4);
12397 }
12398}
12399}
12400#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12401int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock )
12402{ int nondetermined ;
12403
12404 {
12405#line 57
12406 if (ldv_mutex == 1) {
12407
12408 } else {
12409 {
12410#line 57
12411 ldv_blast_assert();
12412 }
12413 }
12414 {
12415#line 60
12416 nondetermined = __VERIFIER_nondet_int();
12417 }
12418#line 63
12419 if (nondetermined) {
12420#line 66
12421 ldv_mutex = 2;
12422#line 68
12423 return (0);
12424 } else {
12425#line 73
12426 return (-4);
12427 }
12428}
12429}
12430#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12431int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock )
12432{ int atomic_value_after_dec ;
12433
12434 {
12435#line 83
12436 if (ldv_mutex == 1) {
12437
12438 } else {
12439 {
12440#line 83
12441 ldv_blast_assert();
12442 }
12443 }
12444 {
12445#line 86
12446 atomic_value_after_dec = __VERIFIER_nondet_int();
12447 }
12448#line 89
12449 if (atomic_value_after_dec == 0) {
12450#line 92
12451 ldv_mutex = 2;
12452#line 94
12453 return (1);
12454 } else {
12455
12456 }
12457#line 98
12458 return (0);
12459}
12460}
12461#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12462void mutex_lock(struct mutex *lock )
12463{
12464
12465 {
12466#line 108
12467 if (ldv_mutex == 1) {
12468
12469 } else {
12470 {
12471#line 108
12472 ldv_blast_assert();
12473 }
12474 }
12475#line 110
12476 ldv_mutex = 2;
12477#line 111
12478 return;
12479}
12480}
12481#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12482int mutex_trylock(struct mutex *lock )
12483{ int nondetermined ;
12484
12485 {
12486#line 121
12487 if (ldv_mutex == 1) {
12488
12489 } else {
12490 {
12491#line 121
12492 ldv_blast_assert();
12493 }
12494 }
12495 {
12496#line 124
12497 nondetermined = __VERIFIER_nondet_int();
12498 }
12499#line 127
12500 if (nondetermined) {
12501#line 130
12502 ldv_mutex = 2;
12503#line 132
12504 return (1);
12505 } else {
12506#line 137
12507 return (0);
12508 }
12509}
12510}
12511#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12512void mutex_unlock(struct mutex *lock )
12513{
12514
12515 {
12516#line 147
12517 if (ldv_mutex == 2) {
12518
12519 } else {
12520 {
12521#line 147
12522 ldv_blast_assert();
12523 }
12524 }
12525#line 149
12526 ldv_mutex = 1;
12527#line 150
12528 return;
12529}
12530}
12531#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12532void ldv_check_final_state(void)
12533{
12534
12535 {
12536#line 156
12537 if (ldv_mutex == 1) {
12538
12539 } else {
12540 {
12541#line 156
12542 ldv_blast_assert();
12543 }
12544 }
12545#line 157
12546 return;
12547}
12548}
12549#line 1969 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12550long s__builtin_expect(long val , long res )
12551{
12552
12553 {
12554#line 1970
12555 return (val);
12556}
12557}