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