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