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 90 "include/asm-generic/posix_types.h"
49typedef __kernel_long_t __kernel_off_t;
50#line 91 "include/asm-generic/posix_types.h"
51typedef long long __kernel_loff_t;
52#line 92 "include/asm-generic/posix_types.h"
53typedef __kernel_long_t __kernel_time_t;
54#line 93 "include/asm-generic/posix_types.h"
55typedef __kernel_long_t __kernel_clock_t;
56#line 94 "include/asm-generic/posix_types.h"
57typedef int __kernel_timer_t;
58#line 95 "include/asm-generic/posix_types.h"
59typedef int __kernel_clockid_t;
60#line 21 "include/linux/types.h"
61typedef __u32 __kernel_dev_t;
62#line 24 "include/linux/types.h"
63typedef __kernel_dev_t dev_t;
64#line 27 "include/linux/types.h"
65typedef unsigned short umode_t;
66#line 29 "include/linux/types.h"
67typedef __kernel_off_t off_t;
68#line 30 "include/linux/types.h"
69typedef __kernel_pid_t pid_t;
70#line 35 "include/linux/types.h"
71typedef __kernel_clockid_t clockid_t;
72#line 38 "include/linux/types.h"
73typedef _Bool bool;
74#line 40 "include/linux/types.h"
75typedef __kernel_uid32_t uid_t;
76#line 41 "include/linux/types.h"
77typedef __kernel_gid32_t gid_t;
78#line 54 "include/linux/types.h"
79typedef __kernel_loff_t loff_t;
80#line 63 "include/linux/types.h"
81typedef __kernel_size_t size_t;
82#line 68 "include/linux/types.h"
83typedef __kernel_ssize_t ssize_t;
84#line 78 "include/linux/types.h"
85typedef __kernel_time_t time_t;
86#line 111 "include/linux/types.h"
87typedef __s32 int32_t;
88#line 117 "include/linux/types.h"
89typedef __u32 uint32_t;
90#line 142 "include/linux/types.h"
91typedef unsigned long sector_t;
92#line 143 "include/linux/types.h"
93typedef unsigned long blkcnt_t;
94#line 155 "include/linux/types.h"
95typedef u64 dma_addr_t;
96#line 178 "include/linux/types.h"
97typedef __u16 __le16;
98#line 180 "include/linux/types.h"
99typedef __u32 __le32;
100#line 202 "include/linux/types.h"
101typedef unsigned int gfp_t;
102#line 203 "include/linux/types.h"
103typedef unsigned int fmode_t;
104#line 219 "include/linux/types.h"
105struct __anonstruct_atomic_t_7 {
106 int counter ;
107};
108#line 219 "include/linux/types.h"
109typedef struct __anonstruct_atomic_t_7 atomic_t;
110#line 224 "include/linux/types.h"
111struct __anonstruct_atomic64_t_8 {
112 long counter ;
113};
114#line 224 "include/linux/types.h"
115typedef struct __anonstruct_atomic64_t_8 atomic64_t;
116#line 229 "include/linux/types.h"
117struct list_head {
118 struct list_head *next ;
119 struct list_head *prev ;
120};
121#line 233
122struct hlist_node;
123#line 233 "include/linux/types.h"
124struct hlist_head {
125 struct hlist_node *first ;
126};
127#line 237 "include/linux/types.h"
128struct hlist_node {
129 struct hlist_node *next ;
130 struct hlist_node **pprev ;
131};
132#line 253 "include/linux/types.h"
133struct rcu_head {
134 struct rcu_head *next ;
135 void (*func)(struct rcu_head *head ) ;
136};
137#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
138struct module;
139#line 146 "include/linux/init.h"
140typedef void (*ctor_fn_t)(void);
141#line 47 "include/linux/dynamic_debug.h"
142struct device;
143#line 135 "include/linux/kernel.h"
144struct completion;
145#line 136
146struct pt_regs;
147#line 349
148struct pid;
149#line 12 "include/linux/thread_info.h"
150struct timespec;
151#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
152struct page;
153#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
154struct task_struct;
155#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
156struct mm_struct;
157#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
158struct pt_regs {
159 unsigned long r15 ;
160 unsigned long r14 ;
161 unsigned long r13 ;
162 unsigned long r12 ;
163 unsigned long bp ;
164 unsigned long bx ;
165 unsigned long r11 ;
166 unsigned long r10 ;
167 unsigned long r9 ;
168 unsigned long r8 ;
169 unsigned long ax ;
170 unsigned long cx ;
171 unsigned long dx ;
172 unsigned long si ;
173 unsigned long di ;
174 unsigned long orig_ax ;
175 unsigned long ip ;
176 unsigned long cs ;
177 unsigned long flags ;
178 unsigned long sp ;
179 unsigned long ss ;
180};
181#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
182struct __anonstruct____missing_field_name_15 {
183 unsigned int a ;
184 unsigned int b ;
185};
186#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
187struct __anonstruct____missing_field_name_16 {
188 u16 limit0 ;
189 u16 base0 ;
190 unsigned int base1 : 8 ;
191 unsigned int type : 4 ;
192 unsigned int s : 1 ;
193 unsigned int dpl : 2 ;
194 unsigned int p : 1 ;
195 unsigned int limit : 4 ;
196 unsigned int avl : 1 ;
197 unsigned int l : 1 ;
198 unsigned int d : 1 ;
199 unsigned int g : 1 ;
200 unsigned int base2 : 8 ;
201};
202#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
203union __anonunion____missing_field_name_14 {
204 struct __anonstruct____missing_field_name_15 __annonCompField5 ;
205 struct __anonstruct____missing_field_name_16 __annonCompField6 ;
206};
207#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
208struct desc_struct {
209 union __anonunion____missing_field_name_14 __annonCompField7 ;
210} __attribute__((__packed__)) ;
211#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
212typedef unsigned long pgdval_t;
213#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
214typedef unsigned long pgprotval_t;
215#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
216struct pgprot {
217 pgprotval_t pgprot ;
218};
219#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
220typedef struct pgprot pgprot_t;
221#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
222struct __anonstruct_pgd_t_20 {
223 pgdval_t pgd ;
224};
225#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
226typedef struct __anonstruct_pgd_t_20 pgd_t;
227#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
228typedef struct page *pgtable_t;
229#line 295
230struct file;
231#line 313
232struct seq_file;
233#line 47 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
234struct thread_struct;
235#line 53
236struct cpumask;
237#line 329
238struct arch_spinlock;
239#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
240struct kernel_vm86_regs {
241 struct pt_regs pt ;
242 unsigned short es ;
243 unsigned short __esh ;
244 unsigned short ds ;
245 unsigned short __dsh ;
246 unsigned short fs ;
247 unsigned short __fsh ;
248 unsigned short gs ;
249 unsigned short __gsh ;
250};
251#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
252union __anonunion____missing_field_name_24 {
253 struct pt_regs *regs ;
254 struct kernel_vm86_regs *vm86 ;
255};
256#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
257struct math_emu_info {
258 long ___orig_eip ;
259 union __anonunion____missing_field_name_24 __annonCompField8 ;
260};
261#line 10 "include/asm-generic/bug.h"
262struct bug_entry {
263 int bug_addr_disp ;
264 int file_disp ;
265 unsigned short line ;
266 unsigned short flags ;
267};
268#line 14 "include/linux/cpumask.h"
269struct cpumask {
270 unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
271};
272#line 14 "include/linux/cpumask.h"
273typedef struct cpumask cpumask_t;
274#line 637 "include/linux/cpumask.h"
275typedef struct cpumask *cpumask_var_t;
276#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
277struct static_key;
278#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
279struct i387_fsave_struct {
280 u32 cwd ;
281 u32 swd ;
282 u32 twd ;
283 u32 fip ;
284 u32 fcs ;
285 u32 foo ;
286 u32 fos ;
287 u32 st_space[20] ;
288 u32 status ;
289};
290#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
291struct __anonstruct____missing_field_name_31 {
292 u64 rip ;
293 u64 rdp ;
294};
295#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
296struct __anonstruct____missing_field_name_32 {
297 u32 fip ;
298 u32 fcs ;
299 u32 foo ;
300 u32 fos ;
301};
302#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
303union __anonunion____missing_field_name_30 {
304 struct __anonstruct____missing_field_name_31 __annonCompField12 ;
305 struct __anonstruct____missing_field_name_32 __annonCompField13 ;
306};
307#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
308union __anonunion____missing_field_name_33 {
309 u32 padding1[12] ;
310 u32 sw_reserved[12] ;
311};
312#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
313struct i387_fxsave_struct {
314 u16 cwd ;
315 u16 swd ;
316 u16 twd ;
317 u16 fop ;
318 union __anonunion____missing_field_name_30 __annonCompField14 ;
319 u32 mxcsr ;
320 u32 mxcsr_mask ;
321 u32 st_space[32] ;
322 u32 xmm_space[64] ;
323 u32 padding[12] ;
324 union __anonunion____missing_field_name_33 __annonCompField15 ;
325} __attribute__((__aligned__(16))) ;
326#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
327struct i387_soft_struct {
328 u32 cwd ;
329 u32 swd ;
330 u32 twd ;
331 u32 fip ;
332 u32 fcs ;
333 u32 foo ;
334 u32 fos ;
335 u32 st_space[20] ;
336 u8 ftop ;
337 u8 changed ;
338 u8 lookahead ;
339 u8 no_update ;
340 u8 rm ;
341 u8 alimit ;
342 struct math_emu_info *info ;
343 u32 entry_eip ;
344};
345#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
346struct ymmh_struct {
347 u32 ymmh_space[64] ;
348};
349#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
350struct xsave_hdr_struct {
351 u64 xstate_bv ;
352 u64 reserved1[2] ;
353 u64 reserved2[5] ;
354} __attribute__((__packed__)) ;
355#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
356struct xsave_struct {
357 struct i387_fxsave_struct i387 ;
358 struct xsave_hdr_struct xsave_hdr ;
359 struct ymmh_struct ymmh ;
360} __attribute__((__packed__, __aligned__(64))) ;
361#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
362union thread_xstate {
363 struct i387_fsave_struct fsave ;
364 struct i387_fxsave_struct fxsave ;
365 struct i387_soft_struct soft ;
366 struct xsave_struct xsave ;
367};
368#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
369struct fpu {
370 unsigned int last_cpu ;
371 unsigned int has_fpu ;
372 union thread_xstate *state ;
373};
374#line 433
375struct kmem_cache;
376#line 435
377struct perf_event;
378#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
379struct thread_struct {
380 struct desc_struct tls_array[3] ;
381 unsigned long sp0 ;
382 unsigned long sp ;
383 unsigned long usersp ;
384 unsigned short es ;
385 unsigned short ds ;
386 unsigned short fsindex ;
387 unsigned short gsindex ;
388 unsigned long fs ;
389 unsigned long gs ;
390 struct perf_event *ptrace_bps[4] ;
391 unsigned long debugreg6 ;
392 unsigned long ptrace_dr7 ;
393 unsigned long cr2 ;
394 unsigned long trap_nr ;
395 unsigned long error_code ;
396 struct fpu fpu ;
397 unsigned long *io_bitmap_ptr ;
398 unsigned long iopl ;
399 unsigned int io_bitmap_max ;
400};
401#line 23 "include/asm-generic/atomic-long.h"
402typedef atomic64_t atomic_long_t;
403#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
404typedef u16 __ticket_t;
405#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
406typedef u32 __ticketpair_t;
407#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
408struct __raw_tickets {
409 __ticket_t head ;
410 __ticket_t tail ;
411};
412#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
413union __anonunion____missing_field_name_36 {
414 __ticketpair_t head_tail ;
415 struct __raw_tickets tickets ;
416};
417#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
418struct arch_spinlock {
419 union __anonunion____missing_field_name_36 __annonCompField17 ;
420};
421#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
422typedef struct arch_spinlock arch_spinlock_t;
423#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
424struct __anonstruct____missing_field_name_38 {
425 u32 read ;
426 s32 write ;
427};
428#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
429union __anonunion_arch_rwlock_t_37 {
430 s64 lock ;
431 struct __anonstruct____missing_field_name_38 __annonCompField18 ;
432};
433#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
434typedef union __anonunion_arch_rwlock_t_37 arch_rwlock_t;
435#line 391 "include/linux/lockdep.h"
436struct lock_class_key {
437
438};
439#line 20 "include/linux/spinlock_types.h"
440struct raw_spinlock {
441 arch_spinlock_t raw_lock ;
442 unsigned int magic ;
443 unsigned int owner_cpu ;
444 void *owner ;
445};
446#line 20 "include/linux/spinlock_types.h"
447typedef struct raw_spinlock raw_spinlock_t;
448#line 64 "include/linux/spinlock_types.h"
449union __anonunion____missing_field_name_39 {
450 struct raw_spinlock rlock ;
451};
452#line 64 "include/linux/spinlock_types.h"
453struct spinlock {
454 union __anonunion____missing_field_name_39 __annonCompField19 ;
455};
456#line 64 "include/linux/spinlock_types.h"
457typedef struct spinlock spinlock_t;
458#line 11 "include/linux/rwlock_types.h"
459struct __anonstruct_rwlock_t_40 {
460 arch_rwlock_t raw_lock ;
461 unsigned int magic ;
462 unsigned int owner_cpu ;
463 void *owner ;
464};
465#line 11 "include/linux/rwlock_types.h"
466typedef struct __anonstruct_rwlock_t_40 rwlock_t;
467#line 119 "include/linux/seqlock.h"
468struct seqcount {
469 unsigned int sequence ;
470};
471#line 119 "include/linux/seqlock.h"
472typedef struct seqcount seqcount_t;
473#line 14 "include/linux/time.h"
474struct timespec {
475 __kernel_time_t tv_sec ;
476 long tv_nsec ;
477};
478#line 62 "include/linux/stat.h"
479struct kstat {
480 u64 ino ;
481 dev_t dev ;
482 umode_t mode ;
483 unsigned int nlink ;
484 uid_t uid ;
485 gid_t gid ;
486 dev_t rdev ;
487 loff_t size ;
488 struct timespec atime ;
489 struct timespec mtime ;
490 struct timespec ctime ;
491 unsigned long blksize ;
492 unsigned long long blocks ;
493};
494#line 49 "include/linux/wait.h"
495struct __wait_queue_head {
496 spinlock_t lock ;
497 struct list_head task_list ;
498};
499#line 53 "include/linux/wait.h"
500typedef struct __wait_queue_head wait_queue_head_t;
501#line 98 "include/linux/nodemask.h"
502struct __anonstruct_nodemask_t_42 {
503 unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
504};
505#line 98 "include/linux/nodemask.h"
506typedef struct __anonstruct_nodemask_t_42 nodemask_t;
507#line 48 "include/linux/mutex.h"
508struct mutex {
509 atomic_t count ;
510 spinlock_t wait_lock ;
511 struct list_head wait_list ;
512 struct task_struct *owner ;
513 char *name ;
514 void *magic ;
515};
516#line 69 "include/linux/mutex.h"
517struct mutex_waiter {
518 struct list_head list ;
519 struct task_struct *task ;
520 void *magic ;
521};
522#line 19 "include/linux/rwsem.h"
523struct rw_semaphore;
524#line 25 "include/linux/rwsem.h"
525struct rw_semaphore {
526 long count ;
527 raw_spinlock_t wait_lock ;
528 struct list_head wait_list ;
529};
530#line 25 "include/linux/completion.h"
531struct completion {
532 unsigned int done ;
533 wait_queue_head_t wait ;
534};
535#line 46 "include/linux/ktime.h"
536union ktime {
537 s64 tv64 ;
538};
539#line 59 "include/linux/ktime.h"
540typedef union ktime ktime_t;
541#line 10 "include/linux/timer.h"
542struct tvec_base;
543#line 12 "include/linux/timer.h"
544struct timer_list {
545 struct list_head entry ;
546 unsigned long expires ;
547 struct tvec_base *base ;
548 void (*function)(unsigned long ) ;
549 unsigned long data ;
550 int slack ;
551 int start_pid ;
552 void *start_site ;
553 char start_comm[16] ;
554};
555#line 289
556struct hrtimer;
557#line 290
558enum hrtimer_restart;
559#line 15 "include/linux/workqueue.h"
560struct workqueue_struct;
561#line 17
562struct work_struct;
563#line 79 "include/linux/workqueue.h"
564struct work_struct {
565 atomic_long_t data ;
566 struct list_head entry ;
567 void (*func)(struct work_struct *work ) ;
568};
569#line 92 "include/linux/workqueue.h"
570struct delayed_work {
571 struct work_struct work ;
572 struct timer_list timer ;
573};
574#line 102 "include/linux/workqueue.h"
575struct execute_work {
576 struct work_struct work ;
577};
578#line 50 "include/linux/pm.h"
579struct pm_message {
580 int event ;
581};
582#line 50 "include/linux/pm.h"
583typedef struct pm_message pm_message_t;
584#line 264 "include/linux/pm.h"
585struct dev_pm_ops {
586 int (*prepare)(struct device *dev ) ;
587 void (*complete)(struct device *dev ) ;
588 int (*suspend)(struct device *dev ) ;
589 int (*resume)(struct device *dev ) ;
590 int (*freeze)(struct device *dev ) ;
591 int (*thaw)(struct device *dev ) ;
592 int (*poweroff)(struct device *dev ) ;
593 int (*restore)(struct device *dev ) ;
594 int (*suspend_late)(struct device *dev ) ;
595 int (*resume_early)(struct device *dev ) ;
596 int (*freeze_late)(struct device *dev ) ;
597 int (*thaw_early)(struct device *dev ) ;
598 int (*poweroff_late)(struct device *dev ) ;
599 int (*restore_early)(struct device *dev ) ;
600 int (*suspend_noirq)(struct device *dev ) ;
601 int (*resume_noirq)(struct device *dev ) ;
602 int (*freeze_noirq)(struct device *dev ) ;
603 int (*thaw_noirq)(struct device *dev ) ;
604 int (*poweroff_noirq)(struct device *dev ) ;
605 int (*restore_noirq)(struct device *dev ) ;
606 int (*runtime_suspend)(struct device *dev ) ;
607 int (*runtime_resume)(struct device *dev ) ;
608 int (*runtime_idle)(struct device *dev ) ;
609};
610#line 458
611enum rpm_status {
612 RPM_ACTIVE = 0,
613 RPM_RESUMING = 1,
614 RPM_SUSPENDED = 2,
615 RPM_SUSPENDING = 3
616} ;
617#line 480
618enum rpm_request {
619 RPM_REQ_NONE = 0,
620 RPM_REQ_IDLE = 1,
621 RPM_REQ_SUSPEND = 2,
622 RPM_REQ_AUTOSUSPEND = 3,
623 RPM_REQ_RESUME = 4
624} ;
625#line 488
626struct wakeup_source;
627#line 495 "include/linux/pm.h"
628struct pm_subsys_data {
629 spinlock_t lock ;
630 unsigned int refcount ;
631};
632#line 506
633struct dev_pm_qos_request;
634#line 506
635struct pm_qos_raints;
636#line 506 "include/linux/pm.h"
637struct dev_pm_info {
638 pm_message_t power_state ;
639 unsigned int can_wakeup : 1 ;
640 unsigned int async_suspend : 1 ;
641 bool is_prepared : 1 ;
642 bool is_suspended : 1 ;
643 bool ignore_children : 1 ;
644 spinlock_t lock ;
645 struct list_head entry ;
646 struct completion completion ;
647 struct wakeup_source *wakeup ;
648 bool wakeup_path : 1 ;
649 struct timer_list suspend_timer ;
650 unsigned long timer_expires ;
651 struct work_struct work ;
652 wait_queue_head_t wait_queue ;
653 atomic_t usage_count ;
654 atomic_t child_count ;
655 unsigned int disable_depth : 3 ;
656 unsigned int idle_notification : 1 ;
657 unsigned int request_pending : 1 ;
658 unsigned int deferred_resume : 1 ;
659 unsigned int run_wake : 1 ;
660 unsigned int runtime_auto : 1 ;
661 unsigned int no_callbacks : 1 ;
662 unsigned int irq_safe : 1 ;
663 unsigned int use_autosuspend : 1 ;
664 unsigned int timer_autosuspends : 1 ;
665 enum rpm_request request ;
666 enum rpm_status runtime_status ;
667 int runtime_error ;
668 int autosuspend_delay ;
669 unsigned long last_busy ;
670 unsigned long active_jiffies ;
671 unsigned long suspended_jiffies ;
672 unsigned long accounting_timestamp ;
673 ktime_t suspend_time ;
674 s64 max_time_suspended_ns ;
675 struct dev_pm_qos_request *pq_req ;
676 struct pm_subsys_data *subsys_data ;
677 struct pm_qos_raints *raints ;
678};
679#line 564 "include/linux/pm.h"
680struct dev_pm_domain {
681 struct dev_pm_ops ops ;
682};
683#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
684struct __anonstruct_mm_context_t_112 {
685 void *ldt ;
686 int size ;
687 unsigned short ia32_compat ;
688 struct mutex lock ;
689 void *vdso ;
690};
691#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
692typedef struct __anonstruct_mm_context_t_112 mm_context_t;
693#line 8 "include/linux/vmalloc.h"
694struct vm_area_struct;
695#line 336 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
696struct bio_vec;
697#line 18 "include/linux/smp.h"
698struct call_single_data {
699 struct list_head list ;
700 void (*func)(void *info ) ;
701 void *info ;
702 u16 flags ;
703 u16 priv ;
704};
705#line 100 "include/linux/rbtree.h"
706struct rb_node {
707 unsigned long rb_parent_color ;
708 struct rb_node *rb_right ;
709 struct rb_node *rb_left ;
710} __attribute__((__aligned__(sizeof(long )))) ;
711#line 110 "include/linux/rbtree.h"
712struct rb_root {
713 struct rb_node *rb_node ;
714};
715#line 939 "include/linux/sysctl.h"
716struct nsproxy;
717#line 48 "include/linux/kmod.h"
718struct cred;
719#line 18 "include/linux/elf.h"
720typedef __u64 Elf64_Addr;
721#line 19 "include/linux/elf.h"
722typedef __u16 Elf64_Half;
723#line 23 "include/linux/elf.h"
724typedef __u32 Elf64_Word;
725#line 24 "include/linux/elf.h"
726typedef __u64 Elf64_Xword;
727#line 194 "include/linux/elf.h"
728struct elf64_sym {
729 Elf64_Word st_name ;
730 unsigned char st_info ;
731 unsigned char st_other ;
732 Elf64_Half st_shndx ;
733 Elf64_Addr st_value ;
734 Elf64_Xword st_size ;
735};
736#line 194 "include/linux/elf.h"
737typedef struct elf64_sym Elf64_Sym;
738#line 20 "include/linux/kobject_ns.h"
739struct sock;
740#line 21
741struct kobject;
742#line 27
743enum kobj_ns_type {
744 KOBJ_NS_TYPE_NONE = 0,
745 KOBJ_NS_TYPE_NET = 1,
746 KOBJ_NS_TYPES = 2
747} ;
748#line 40 "include/linux/kobject_ns.h"
749struct kobj_ns_type_operations {
750 enum kobj_ns_type type ;
751 void *(*grab_current_ns)(void) ;
752 void *(*netlink_ns)(struct sock *sk ) ;
753 void *(*initial_ns)(void) ;
754 void (*drop_ns)(void * ) ;
755};
756#line 24 "include/linux/sysfs.h"
757enum kobj_ns_type;
758#line 26 "include/linux/sysfs.h"
759struct attribute {
760 char *name ;
761 umode_t mode ;
762};
763#line 56 "include/linux/sysfs.h"
764struct attribute_group {
765 char *name ;
766 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
767 struct attribute **attrs ;
768};
769#line 88 "include/linux/sysfs.h"
770struct bin_attribute {
771 struct attribute attr ;
772 size_t size ;
773 void *private ;
774 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
775 loff_t , size_t ) ;
776 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
777 loff_t , size_t ) ;
778 int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
779};
780#line 112 "include/linux/sysfs.h"
781struct sysfs_ops {
782 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
783 ssize_t (*store)(struct kobject * , struct attribute * , char * , size_t ) ;
784 void *(*namespace)(struct kobject * , struct attribute * ) ;
785};
786#line 118
787struct sysfs_dirent;
788#line 22 "include/linux/kref.h"
789struct kref {
790 atomic_t refcount ;
791};
792#line 60 "include/linux/kobject.h"
793struct kset;
794#line 60
795struct kobj_type;
796#line 60 "include/linux/kobject.h"
797struct kobject {
798 char *name ;
799 struct list_head entry ;
800 struct kobject *parent ;
801 struct kset *kset ;
802 struct kobj_type *ktype ;
803 struct sysfs_dirent *sd ;
804 struct kref kref ;
805 unsigned int state_initialized : 1 ;
806 unsigned int state_in_sysfs : 1 ;
807 unsigned int state_add_uevent_sent : 1 ;
808 unsigned int state_remove_uevent_sent : 1 ;
809 unsigned int uevent_suppress : 1 ;
810};
811#line 108 "include/linux/kobject.h"
812struct kobj_type {
813 void (*release)(struct kobject *kobj ) ;
814 struct sysfs_ops *sysfs_ops ;
815 struct attribute **default_attrs ;
816 struct kobj_ns_type_operations *(*child_ns_type)(struct kobject *kobj ) ;
817 void *(*namespace)(struct kobject *kobj ) ;
818};
819#line 116 "include/linux/kobject.h"
820struct kobj_uevent_env {
821 char *envp[32] ;
822 int envp_idx ;
823 char buf[2048] ;
824 int buflen ;
825};
826#line 123 "include/linux/kobject.h"
827struct kset_uevent_ops {
828 int (* filter)(struct kset *kset , struct kobject *kobj ) ;
829 char *(* name)(struct kset *kset , struct kobject *kobj ) ;
830 int (* uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
831};
832#line 159 "include/linux/kobject.h"
833struct kset {
834 struct list_head list ;
835 spinlock_t list_lock ;
836 struct kobject kobj ;
837 struct kset_uevent_ops *uevent_ops ;
838};
839#line 39 "include/linux/moduleparam.h"
840struct kernel_param;
841#line 41 "include/linux/moduleparam.h"
842struct kernel_param_ops {
843 int (*set)(char *val , struct kernel_param *kp ) ;
844 int (*get)(char *buffer , struct kernel_param *kp ) ;
845 void (*free)(void *arg ) ;
846};
847#line 50
848struct kparam_string;
849#line 50
850struct kparam_array;
851#line 50 "include/linux/moduleparam.h"
852union __anonunion____missing_field_name_199 {
853 void *arg ;
854 struct kparam_string *str ;
855 struct kparam_array *arr ;
856};
857#line 50 "include/linux/moduleparam.h"
858struct kernel_param {
859 char *name ;
860 struct kernel_param_ops *ops ;
861 u16 perm ;
862 s16 level ;
863 union __anonunion____missing_field_name_199 __annonCompField32 ;
864};
865#line 63 "include/linux/moduleparam.h"
866struct kparam_string {
867 unsigned int maxlen ;
868 char *string ;
869};
870#line 69 "include/linux/moduleparam.h"
871struct kparam_array {
872 unsigned int max ;
873 unsigned int elemsize ;
874 unsigned int *num ;
875 struct kernel_param_ops *ops ;
876 void *elem ;
877};
878#line 143 "include/linux/jump_label.h"
879struct static_key {
880 atomic_t enabled ;
881};
882#line 23 "include/linux/tracepoint.h"
883struct tracepoint;
884#line 25 "include/linux/tracepoint.h"
885struct tracepoint_func {
886 void *func ;
887 void *data ;
888};
889#line 30 "include/linux/tracepoint.h"
890struct tracepoint {
891 char *name ;
892 struct static_key key ;
893 void (*regfunc)(void) ;
894 void (*unregfunc)(void) ;
895 struct tracepoint_func *funcs ;
896};
897#line 19 "include/linux/export.h"
898struct kernel_symbol {
899 unsigned long value ;
900 char *name ;
901};
902#line 8 "include/asm-generic/module.h"
903struct mod_arch_specific {
904
905};
906#line 37 "include/linux/module.h"
907struct module_param_attrs;
908#line 37 "include/linux/module.h"
909struct module_kobject {
910 struct kobject kobj ;
911 struct module *mod ;
912 struct kobject *drivers_dir ;
913 struct module_param_attrs *mp ;
914};
915#line 44 "include/linux/module.h"
916struct module_attribute {
917 struct attribute attr ;
918 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
919 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char * ,
920 size_t count ) ;
921 void (*setup)(struct module * , char * ) ;
922 int (*test)(struct module * ) ;
923 void (*free)(struct module * ) ;
924};
925#line 71
926struct exception_table_entry;
927#line 199
928enum module_state {
929 MODULE_STATE_LIVE = 0,
930 MODULE_STATE_COMING = 1,
931 MODULE_STATE_GOING = 2
932} ;
933#line 215 "include/linux/module.h"
934struct module_ref {
935 unsigned long incs ;
936 unsigned long decs ;
937} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
938#line 220
939struct module_sect_attrs;
940#line 220
941struct module_notes_attrs;
942#line 220
943struct ftrace_event_call;
944#line 220 "include/linux/module.h"
945struct module {
946 enum module_state state ;
947 struct list_head list ;
948 char name[64UL - sizeof(unsigned long )] ;
949 struct module_kobject mkobj ;
950 struct module_attribute *modinfo_attrs ;
951 char *version ;
952 char *srcversion ;
953 struct kobject *holders_dir ;
954 struct kernel_symbol *syms ;
955 unsigned long *crcs ;
956 unsigned int num_syms ;
957 struct kernel_param *kp ;
958 unsigned int num_kp ;
959 unsigned int num_gpl_syms ;
960 struct kernel_symbol *gpl_syms ;
961 unsigned long *gpl_crcs ;
962 struct kernel_symbol *unused_syms ;
963 unsigned long *unused_crcs ;
964 unsigned int num_unused_syms ;
965 unsigned int num_unused_gpl_syms ;
966 struct kernel_symbol *unused_gpl_syms ;
967 unsigned long *unused_gpl_crcs ;
968 struct kernel_symbol *gpl_future_syms ;
969 unsigned long *gpl_future_crcs ;
970 unsigned int num_gpl_future_syms ;
971 unsigned int num_exentries ;
972 struct exception_table_entry *extable ;
973 int (*init)(void) ;
974 void *module_init ;
975 void *module_core ;
976 unsigned int init_size ;
977 unsigned int core_size ;
978 unsigned int init_text_size ;
979 unsigned int core_text_size ;
980 unsigned int init_ro_size ;
981 unsigned int core_ro_size ;
982 struct mod_arch_specific arch ;
983 unsigned int taints ;
984 unsigned int num_bugs ;
985 struct list_head bug_list ;
986 struct bug_entry *bug_table ;
987 Elf64_Sym *symtab ;
988 Elf64_Sym *core_symtab ;
989 unsigned int num_symtab ;
990 unsigned int core_num_syms ;
991 char *strtab ;
992 char *core_strtab ;
993 struct module_sect_attrs *sect_attrs ;
994 struct module_notes_attrs *notes_attrs ;
995 char *args ;
996 void *percpu ;
997 unsigned int percpu_size ;
998 unsigned int num_tracepoints ;
999 struct tracepoint * *tracepoints_ptrs ;
1000 unsigned int num_trace_bprintk_fmt ;
1001 char **trace_bprintk_fmt_start ;
1002 struct ftrace_event_call **trace_events ;
1003 unsigned int num_trace_events ;
1004 struct list_head source_list ;
1005 struct list_head target_list ;
1006 struct task_struct *waiter ;
1007 void (*exit)(void) ;
1008 struct module_ref *refptr ;
1009 ctor_fn_t *ctors ;
1010 unsigned int num_ctors ;
1011};
1012#line 14 "include/linux/prio_tree.h"
1013struct prio_tree_node;
1014#line 14 "include/linux/prio_tree.h"
1015struct raw_prio_tree_node {
1016 struct prio_tree_node *left ;
1017 struct prio_tree_node *right ;
1018 struct prio_tree_node *parent ;
1019};
1020#line 20 "include/linux/prio_tree.h"
1021struct prio_tree_node {
1022 struct prio_tree_node *left ;
1023 struct prio_tree_node *right ;
1024 struct prio_tree_node *parent ;
1025 unsigned long start ;
1026 unsigned long last ;
1027};
1028#line 28 "include/linux/prio_tree.h"
1029struct prio_tree_root {
1030 struct prio_tree_node *prio_tree_node ;
1031 unsigned short index_bits ;
1032 unsigned short raw ;
1033};
1034#line 23 "include/linux/mm_types.h"
1035struct address_space;
1036#line 40 "include/linux/mm_types.h"
1037union __anonunion____missing_field_name_202 {
1038 unsigned long index ;
1039 void *freelist ;
1040};
1041#line 40 "include/linux/mm_types.h"
1042struct __anonstruct____missing_field_name_206 {
1043 unsigned int inuse : 16 ;
1044 unsigned int objects : 15 ;
1045 unsigned int frozen : 1 ;
1046};
1047#line 40 "include/linux/mm_types.h"
1048union __anonunion____missing_field_name_205 {
1049 atomic_t _mapcount ;
1050 struct __anonstruct____missing_field_name_206 __annonCompField34 ;
1051};
1052#line 40 "include/linux/mm_types.h"
1053struct __anonstruct____missing_field_name_204 {
1054 union __anonunion____missing_field_name_205 __annonCompField35 ;
1055 atomic_t _count ;
1056};
1057#line 40 "include/linux/mm_types.h"
1058union __anonunion____missing_field_name_203 {
1059 unsigned long counters ;
1060 struct __anonstruct____missing_field_name_204 __annonCompField36 ;
1061};
1062#line 40 "include/linux/mm_types.h"
1063struct __anonstruct____missing_field_name_201 {
1064 union __anonunion____missing_field_name_202 __annonCompField33 ;
1065 union __anonunion____missing_field_name_203 __annonCompField37 ;
1066};
1067#line 40 "include/linux/mm_types.h"
1068struct __anonstruct____missing_field_name_208 {
1069 struct page *next ;
1070 int pages ;
1071 int pobjects ;
1072};
1073#line 40 "include/linux/mm_types.h"
1074union __anonunion____missing_field_name_207 {
1075 struct list_head lru ;
1076 struct __anonstruct____missing_field_name_208 __annonCompField39 ;
1077};
1078#line 40 "include/linux/mm_types.h"
1079union __anonunion____missing_field_name_209 {
1080 unsigned long private ;
1081 struct kmem_cache *slab ;
1082 struct page *first_page ;
1083};
1084#line 40 "include/linux/mm_types.h"
1085struct page {
1086 unsigned long flags ;
1087 struct address_space *mapping ;
1088 struct __anonstruct____missing_field_name_201 __annonCompField38 ;
1089 union __anonunion____missing_field_name_207 __annonCompField40 ;
1090 union __anonunion____missing_field_name_209 __annonCompField41 ;
1091 unsigned long debug_flags ;
1092} __attribute__((__aligned__((2) * (sizeof(unsigned long )) ))) ;
1093#line 200 "include/linux/mm_types.h"
1094struct __anonstruct_vm_set_211 {
1095 struct list_head list ;
1096 void *parent ;
1097 struct vm_area_struct *head ;
1098};
1099#line 200 "include/linux/mm_types.h"
1100union __anonunion_shared_210 {
1101 struct __anonstruct_vm_set_211 vm_set ;
1102 struct raw_prio_tree_node prio_tree_node ;
1103};
1104#line 200
1105struct anon_vma;
1106#line 200
1107struct vm_operations_struct;
1108#line 200
1109struct mempolicy;
1110#line 200 "include/linux/mm_types.h"
1111struct vm_area_struct {
1112 struct mm_struct *vm_mm ;
1113 unsigned long vm_start ;
1114 unsigned long vm_end ;
1115 struct vm_area_struct *vm_next ;
1116 struct vm_area_struct *vm_prev ;
1117 pgprot_t vm_page_prot ;
1118 unsigned long vm_flags ;
1119 struct rb_node vm_rb ;
1120 union __anonunion_shared_210 shared ;
1121 struct list_head anon_vma_chain ;
1122 struct anon_vma *anon_vma ;
1123 struct vm_operations_struct *vm_ops ;
1124 unsigned long vm_pgoff ;
1125 struct file *vm_file ;
1126 void *vm_private_data ;
1127 struct mempolicy *vm_policy ;
1128};
1129#line 257 "include/linux/mm_types.h"
1130struct core_thread {
1131 struct task_struct *task ;
1132 struct core_thread *next ;
1133};
1134#line 262 "include/linux/mm_types.h"
1135struct core_state {
1136 atomic_t nr_threads ;
1137 struct core_thread dumper ;
1138 struct completion startup ;
1139};
1140#line 284 "include/linux/mm_types.h"
1141struct mm_rss_stat {
1142 atomic_long_t count[3] ;
1143};
1144#line 288
1145struct linux_binfmt;
1146#line 288
1147struct mmu_notifier_mm;
1148#line 288 "include/linux/mm_types.h"
1149struct mm_struct {
1150 struct vm_area_struct *mmap ;
1151 struct rb_root mm_rb ;
1152 struct vm_area_struct *mmap_cache ;
1153 unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
1154 unsigned long pgoff , unsigned long flags ) ;
1155 void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
1156 unsigned long mmap_base ;
1157 unsigned long task_size ;
1158 unsigned long cached_hole_size ;
1159 unsigned long free_area_cache ;
1160 pgd_t *pgd ;
1161 atomic_t mm_users ;
1162 atomic_t mm_count ;
1163 int map_count ;
1164 spinlock_t page_table_lock ;
1165 struct rw_semaphore mmap_sem ;
1166 struct list_head mmlist ;
1167 unsigned long hiwater_rss ;
1168 unsigned long hiwater_vm ;
1169 unsigned long total_vm ;
1170 unsigned long locked_vm ;
1171 unsigned long pinned_vm ;
1172 unsigned long shared_vm ;
1173 unsigned long exec_vm ;
1174 unsigned long stack_vm ;
1175 unsigned long reserved_vm ;
1176 unsigned long def_flags ;
1177 unsigned long nr_ptes ;
1178 unsigned long start_code ;
1179 unsigned long end_code ;
1180 unsigned long start_data ;
1181 unsigned long end_data ;
1182 unsigned long start_brk ;
1183 unsigned long brk ;
1184 unsigned long start_stack ;
1185 unsigned long arg_start ;
1186 unsigned long arg_end ;
1187 unsigned long env_start ;
1188 unsigned long env_end ;
1189 unsigned long saved_auxv[44] ;
1190 struct mm_rss_stat rss_stat ;
1191 struct linux_binfmt *binfmt ;
1192 cpumask_var_t cpu_vm_mask_var ;
1193 mm_context_t context ;
1194 unsigned int faultstamp ;
1195 unsigned int token_priority ;
1196 unsigned int last_interval ;
1197 unsigned long flags ;
1198 struct core_state *core_state ;
1199 spinlock_t ioctx_lock ;
1200 struct hlist_head ioctx_list ;
1201 struct task_struct *owner ;
1202 struct file *exe_file ;
1203 unsigned long num_exe_file_vmas ;
1204 struct mmu_notifier_mm *mmu_notifier_mm ;
1205 pgtable_t pmd_huge_pte ;
1206 struct cpumask cpumask_allocation ;
1207};
1208#line 8 "include/linux/shrinker.h"
1209struct shrink_control {
1210 gfp_t gfp_mask ;
1211 unsigned long nr_to_scan ;
1212};
1213#line 31 "include/linux/shrinker.h"
1214struct shrinker {
1215 int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
1216 int seeks ;
1217 long batch ;
1218 struct list_head list ;
1219 atomic_long_t nr_in_batch ;
1220};
1221#line 24 "include/linux/mm.h"
1222struct file_ra_state;
1223#line 25
1224struct user_struct;
1225#line 26
1226struct writeback_control;
1227#line 188 "include/linux/mm.h"
1228struct vm_fault {
1229 unsigned int flags ;
1230 unsigned long pgoff ;
1231 void *virtual_address ;
1232 struct page *page ;
1233};
1234#line 205 "include/linux/mm.h"
1235struct vm_operations_struct {
1236 void (*open)(struct vm_area_struct *area ) ;
1237 void (*close)(struct vm_area_struct *area ) ;
1238 int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1239 int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1240 int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
1241 int write ) ;
1242 int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
1243 struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
1244 int (*migrate)(struct vm_area_struct *vma , nodemask_t *from , nodemask_t *to ,
1245 unsigned long flags ) ;
1246};
1247#line 247
1248struct inode;
1249#line 6 "include/asm-generic/scatterlist.h"
1250struct scatterlist {
1251 unsigned long sg_magic ;
1252 unsigned long page_link ;
1253 unsigned int offset ;
1254 unsigned int length ;
1255 dma_addr_t dma_address ;
1256 unsigned int dma_length ;
1257};
1258#line 12 "include/linux/scatterlist.h"
1259struct sg_table {
1260 struct scatterlist *sgl ;
1261 unsigned int nents ;
1262 unsigned int orig_nents ;
1263};
1264#line 14 "include/scsi/scsi.h"
1265struct scsi_cmnd;
1266#line 19 "include/linux/klist.h"
1267struct klist_node;
1268#line 39 "include/linux/klist.h"
1269struct klist_node {
1270 void *n_klist ;
1271 struct list_head n_node ;
1272 struct kref n_ref ;
1273};
1274#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1275struct dma_map_ops;
1276#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1277struct dev_archdata {
1278 void *acpi_handle ;
1279 struct dma_map_ops *dma_ops ;
1280 void *iommu ;
1281};
1282#line 29 "include/linux/device.h"
1283struct device_private;
1284#line 30
1285struct device_driver;
1286#line 31
1287struct driver_private;
1288#line 33
1289struct class;
1290#line 34
1291struct subsys_private;
1292#line 35
1293struct bus_type;
1294#line 36
1295struct device_node;
1296#line 37
1297struct iommu_ops;
1298#line 39 "include/linux/device.h"
1299struct bus_attribute {
1300 struct attribute attr ;
1301 ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1302 ssize_t (*store)(struct bus_type *bus , char *buf , size_t count ) ;
1303};
1304#line 89
1305struct device_attribute;
1306#line 89
1307struct driver_attribute;
1308#line 89 "include/linux/device.h"
1309struct bus_type {
1310 char *name ;
1311 char *dev_name ;
1312 struct device *dev_root ;
1313 struct bus_attribute *bus_attrs ;
1314 struct device_attribute *dev_attrs ;
1315 struct driver_attribute *drv_attrs ;
1316 int (*match)(struct device *dev , struct device_driver *drv ) ;
1317 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1318 int (*probe)(struct device *dev ) ;
1319 int (*remove)(struct device *dev ) ;
1320 void (*shutdown)(struct device *dev ) ;
1321 int (*suspend)(struct device *dev , pm_message_t state ) ;
1322 int (*resume)(struct device *dev ) ;
1323 struct dev_pm_ops *pm ;
1324 struct iommu_ops *iommu_ops ;
1325 struct subsys_private *p ;
1326};
1327#line 127
1328struct device_type;
1329#line 214
1330struct of_device_id;
1331#line 214 "include/linux/device.h"
1332struct device_driver {
1333 char *name ;
1334 struct bus_type *bus ;
1335 struct module *owner ;
1336 char *mod_name ;
1337 bool suppress_bind_attrs ;
1338 struct of_device_id *of_match_table ;
1339 int (*probe)(struct device *dev ) ;
1340 int (*remove)(struct device *dev ) ;
1341 void (*shutdown)(struct device *dev ) ;
1342 int (*suspend)(struct device *dev , pm_message_t state ) ;
1343 int (*resume)(struct device *dev ) ;
1344 struct attribute_group **groups ;
1345 struct dev_pm_ops *pm ;
1346 struct driver_private *p ;
1347};
1348#line 249 "include/linux/device.h"
1349struct driver_attribute {
1350 struct attribute attr ;
1351 ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1352 ssize_t (*store)(struct device_driver *driver , char *buf , size_t count ) ;
1353};
1354#line 330
1355struct class_attribute;
1356#line 330 "include/linux/device.h"
1357struct class {
1358 char *name ;
1359 struct module *owner ;
1360 struct class_attribute *class_attrs ;
1361 struct device_attribute *dev_attrs ;
1362 struct bin_attribute *dev_bin_attrs ;
1363 struct kobject *dev_kobj ;
1364 int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1365 char *(*devnode)(struct device *dev , umode_t *mode ) ;
1366 void (*class_release)(struct class *class ) ;
1367 void (*dev_release)(struct device *dev ) ;
1368 int (*suspend)(struct device *dev , pm_message_t state ) ;
1369 int (*resume)(struct device *dev ) ;
1370 struct kobj_ns_type_operations *ns_type ;
1371 void *(*namespace)(struct device *dev ) ;
1372 struct dev_pm_ops *pm ;
1373 struct subsys_private *p ;
1374};
1375#line 397 "include/linux/device.h"
1376struct class_attribute {
1377 struct attribute attr ;
1378 ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1379 ssize_t (*store)(struct class *class , struct class_attribute *attr , char *buf ,
1380 size_t count ) ;
1381 void *(*namespace)(struct class *class , struct class_attribute *attr ) ;
1382};
1383#line 465 "include/linux/device.h"
1384struct device_type {
1385 char *name ;
1386 struct attribute_group **groups ;
1387 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1388 char *(*devnode)(struct device *dev , umode_t *mode ) ;
1389 void (*release)(struct device *dev ) ;
1390 struct dev_pm_ops *pm ;
1391};
1392#line 476 "include/linux/device.h"
1393struct device_attribute {
1394 struct attribute attr ;
1395 ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1396 ssize_t (*store)(struct device *dev , struct device_attribute *attr , char *buf ,
1397 size_t count ) ;
1398};
1399#line 559 "include/linux/device.h"
1400struct device_dma_parameters {
1401 unsigned int max_segment_size ;
1402 unsigned long segment_boundary_mask ;
1403};
1404#line 627
1405struct dma_coherent_mem;
1406#line 627 "include/linux/device.h"
1407struct device {
1408 struct device *parent ;
1409 struct device_private *p ;
1410 struct kobject kobj ;
1411 char *init_name ;
1412 struct device_type *type ;
1413 struct mutex mutex ;
1414 struct bus_type *bus ;
1415 struct device_driver *driver ;
1416 void *platform_data ;
1417 struct dev_pm_info power ;
1418 struct dev_pm_domain *pm_domain ;
1419 int numa_node ;
1420 u64 *dma_mask ;
1421 u64 coherent_dma_mask ;
1422 struct device_dma_parameters *dma_parms ;
1423 struct list_head dma_pools ;
1424 struct dma_coherent_mem *dma_mem ;
1425 struct dev_archdata archdata ;
1426 struct device_node *of_node ;
1427 dev_t devt ;
1428 u32 id ;
1429 spinlock_t devres_lock ;
1430 struct list_head devres_head ;
1431 struct klist_node knode_class ;
1432 struct class *class ;
1433 struct attribute_group **groups ;
1434 void (*release)(struct device *dev ) ;
1435};
1436#line 43 "include/linux/pm_wakeup.h"
1437struct wakeup_source {
1438 char *name ;
1439 struct list_head entry ;
1440 spinlock_t lock ;
1441 struct timer_list timer ;
1442 unsigned long timer_expires ;
1443 ktime_t total_time ;
1444 ktime_t max_time ;
1445 ktime_t last_time ;
1446 unsigned long event_count ;
1447 unsigned long active_count ;
1448 unsigned long relax_count ;
1449 unsigned long hit_count ;
1450 unsigned int active : 1 ;
1451};
1452#line 27 "include/linux/dma-attrs.h"
1453struct dma_attrs {
1454 unsigned long flags[((4UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
1455};
1456#line 7 "include/linux/dma-direction.h"
1457enum dma_data_direction {
1458 DMA_BIDIRECTIONAL = 0,
1459 DMA_TO_DEVICE = 1,
1460 DMA_FROM_DEVICE = 2,
1461 DMA_NONE = 3
1462} ;
1463#line 11 "include/linux/dma-mapping.h"
1464struct dma_map_ops {
1465 void *(*alloc)(struct device *dev , size_t size , dma_addr_t *dma_handle , gfp_t gfp ,
1466 struct dma_attrs *attrs ) ;
1467 void (*free)(struct device *dev , size_t size , void *vaddr , dma_addr_t dma_handle ,
1468 struct dma_attrs *attrs ) ;
1469 int (*mmap)(struct device * , struct vm_area_struct * , void * , dma_addr_t ,
1470 size_t , struct dma_attrs *attrs ) ;
1471 dma_addr_t (*map_page)(struct device *dev , struct page *page , unsigned long offset ,
1472 size_t size , enum dma_data_direction dir , struct dma_attrs *attrs ) ;
1473 void (*unmap_page)(struct device *dev , dma_addr_t dma_handle , size_t size , enum dma_data_direction dir ,
1474 struct dma_attrs *attrs ) ;
1475 int (*map_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
1476 struct dma_attrs *attrs ) ;
1477 void (*unmap_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
1478 struct dma_attrs *attrs ) ;
1479 void (*sync_single_for_cpu)(struct device *dev , dma_addr_t dma_handle , size_t size ,
1480 enum dma_data_direction dir ) ;
1481 void (*sync_single_for_device)(struct device *dev , dma_addr_t dma_handle , size_t size ,
1482 enum dma_data_direction dir ) ;
1483 void (*sync_sg_for_cpu)(struct device *dev , struct scatterlist *sg , int nents ,
1484 enum dma_data_direction dir ) ;
1485 void (*sync_sg_for_device)(struct device *dev , struct scatterlist *sg , int nents ,
1486 enum dma_data_direction dir ) ;
1487 int (*mapping_error)(struct device *dev , dma_addr_t dma_addr ) ;
1488 int (*dma_supported)(struct device *dev , u64 mask ) ;
1489 int (*set_dma_mask)(struct device *dev , u64 mask ) ;
1490 int is_phys ;
1491};
1492#line 94 "include/linux/capability.h"
1493struct kernel_cap_struct {
1494 __u32 cap[2] ;
1495};
1496#line 94 "include/linux/capability.h"
1497typedef struct kernel_cap_struct kernel_cap_t;
1498#line 377
1499struct dentry;
1500#line 378
1501struct user_namespace;
1502#line 7 "include/asm-generic/cputime.h"
1503typedef unsigned long cputime_t;
1504#line 101 "include/linux/sem.h"
1505struct sem_undo_list;
1506#line 101 "include/linux/sem.h"
1507struct sysv_sem {
1508 struct sem_undo_list *undo_list ;
1509};
1510#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1511struct siginfo;
1512#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1513struct __anonstruct_sigset_t_214 {
1514 unsigned long sig[1] ;
1515};
1516#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1517typedef struct __anonstruct_sigset_t_214 sigset_t;
1518#line 17 "include/asm-generic/signal-defs.h"
1519typedef void __signalfn_t(int );
1520#line 18 "include/asm-generic/signal-defs.h"
1521typedef __signalfn_t *__sighandler_t;
1522#line 20 "include/asm-generic/signal-defs.h"
1523typedef void __restorefn_t(void);
1524#line 21 "include/asm-generic/signal-defs.h"
1525typedef __restorefn_t *__sigrestore_t;
1526#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1527struct sigaction {
1528 __sighandler_t sa_handler ;
1529 unsigned long sa_flags ;
1530 __sigrestore_t sa_restorer ;
1531 sigset_t sa_mask ;
1532};
1533#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1534struct k_sigaction {
1535 struct sigaction sa ;
1536};
1537#line 7 "include/asm-generic/siginfo.h"
1538union sigval {
1539 int sival_int ;
1540 void *sival_ptr ;
1541};
1542#line 7 "include/asm-generic/siginfo.h"
1543typedef union sigval sigval_t;
1544#line 48 "include/asm-generic/siginfo.h"
1545struct __anonstruct__kill_216 {
1546 __kernel_pid_t _pid ;
1547 __kernel_uid32_t _uid ;
1548};
1549#line 48 "include/asm-generic/siginfo.h"
1550struct __anonstruct__timer_217 {
1551 __kernel_timer_t _tid ;
1552 int _overrun ;
1553 char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
1554 sigval_t _sigval ;
1555 int _sys_private ;
1556};
1557#line 48 "include/asm-generic/siginfo.h"
1558struct __anonstruct__rt_218 {
1559 __kernel_pid_t _pid ;
1560 __kernel_uid32_t _uid ;
1561 sigval_t _sigval ;
1562};
1563#line 48 "include/asm-generic/siginfo.h"
1564struct __anonstruct__sigchld_219 {
1565 __kernel_pid_t _pid ;
1566 __kernel_uid32_t _uid ;
1567 int _status ;
1568 __kernel_clock_t _utime ;
1569 __kernel_clock_t _stime ;
1570};
1571#line 48 "include/asm-generic/siginfo.h"
1572struct __anonstruct__sigfault_220 {
1573 void *_addr ;
1574 short _addr_lsb ;
1575};
1576#line 48 "include/asm-generic/siginfo.h"
1577struct __anonstruct__sigpoll_221 {
1578 long _band ;
1579 int _fd ;
1580};
1581#line 48 "include/asm-generic/siginfo.h"
1582union __anonunion__sifields_215 {
1583 int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
1584 struct __anonstruct__kill_216 _kill ;
1585 struct __anonstruct__timer_217 _timer ;
1586 struct __anonstruct__rt_218 _rt ;
1587 struct __anonstruct__sigchld_219 _sigchld ;
1588 struct __anonstruct__sigfault_220 _sigfault ;
1589 struct __anonstruct__sigpoll_221 _sigpoll ;
1590};
1591#line 48 "include/asm-generic/siginfo.h"
1592struct siginfo {
1593 int si_signo ;
1594 int si_errno ;
1595 int si_code ;
1596 union __anonunion__sifields_215 _sifields ;
1597};
1598#line 48 "include/asm-generic/siginfo.h"
1599typedef struct siginfo siginfo_t;
1600#line 28 "include/linux/signal.h"
1601struct sigpending {
1602 struct list_head list ;
1603 sigset_t signal ;
1604};
1605#line 6 "include/linux/pid.h"
1606enum pid_type {
1607 PIDTYPE_PID = 0,
1608 PIDTYPE_PGID = 1,
1609 PIDTYPE_SID = 2,
1610 PIDTYPE_MAX = 3
1611} ;
1612#line 50
1613struct pid_namespace;
1614#line 50 "include/linux/pid.h"
1615struct upid {
1616 int nr ;
1617 struct pid_namespace *ns ;
1618 struct hlist_node pid_chain ;
1619};
1620#line 57 "include/linux/pid.h"
1621struct pid {
1622 atomic_t count ;
1623 unsigned int level ;
1624 struct hlist_head tasks[3] ;
1625 struct rcu_head rcu ;
1626 struct upid numbers[1] ;
1627};
1628#line 69 "include/linux/pid.h"
1629struct pid_link {
1630 struct hlist_node node ;
1631 struct pid *pid ;
1632};
1633#line 18 "include/linux/percpu_counter.h"
1634struct percpu_counter {
1635 raw_spinlock_t lock ;
1636 s64 count ;
1637 struct list_head list ;
1638 s32 *counters ;
1639};
1640#line 50 "include/linux/proportions.h"
1641struct prop_local_percpu {
1642 struct percpu_counter events ;
1643 int shift ;
1644 unsigned long period ;
1645 raw_spinlock_t lock ;
1646};
1647#line 10 "include/linux/seccomp.h"
1648struct __anonstruct_seccomp_t_224 {
1649 int mode ;
1650};
1651#line 10 "include/linux/seccomp.h"
1652typedef struct __anonstruct_seccomp_t_224 seccomp_t;
1653#line 81 "include/linux/plist.h"
1654struct plist_head {
1655 struct list_head node_list ;
1656};
1657#line 85 "include/linux/plist.h"
1658struct plist_node {
1659 int prio ;
1660 struct list_head prio_list ;
1661 struct list_head node_list ;
1662};
1663#line 40 "include/linux/rtmutex.h"
1664struct rt_mutex_waiter;
1665#line 42 "include/linux/resource.h"
1666struct rlimit {
1667 unsigned long rlim_cur ;
1668 unsigned long rlim_max ;
1669};
1670#line 8 "include/linux/timerqueue.h"
1671struct timerqueue_node {
1672 struct rb_node node ;
1673 ktime_t expires ;
1674};
1675#line 13 "include/linux/timerqueue.h"
1676struct timerqueue_head {
1677 struct rb_root head ;
1678 struct timerqueue_node *next ;
1679};
1680#line 27 "include/linux/hrtimer.h"
1681struct hrtimer_clock_base;
1682#line 28
1683struct hrtimer_cpu_base;
1684#line 44
1685enum hrtimer_restart {
1686 HRTIMER_NORESTART = 0,
1687 HRTIMER_RESTART = 1
1688} ;
1689#line 108 "include/linux/hrtimer.h"
1690struct hrtimer {
1691 struct timerqueue_node node ;
1692 ktime_t _softexpires ;
1693 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1694 struct hrtimer_clock_base *base ;
1695 unsigned long state ;
1696 int start_pid ;
1697 void *start_site ;
1698 char start_comm[16] ;
1699};
1700#line 145 "include/linux/hrtimer.h"
1701struct hrtimer_clock_base {
1702 struct hrtimer_cpu_base *cpu_base ;
1703 int index ;
1704 clockid_t clockid ;
1705 struct timerqueue_head active ;
1706 ktime_t resolution ;
1707 ktime_t (*get_time)(void) ;
1708 ktime_t softirq_time ;
1709 ktime_t offset ;
1710};
1711#line 178 "include/linux/hrtimer.h"
1712struct hrtimer_cpu_base {
1713 raw_spinlock_t lock ;
1714 unsigned long active_bases ;
1715 ktime_t expires_next ;
1716 int hres_active ;
1717 int hang_detected ;
1718 unsigned long nr_events ;
1719 unsigned long nr_retries ;
1720 unsigned long nr_hangs ;
1721 ktime_t max_hang_time ;
1722 struct hrtimer_clock_base clock_base[3] ;
1723};
1724#line 11 "include/linux/task_io_accounting.h"
1725struct task_io_accounting {
1726 u64 rchar ;
1727 u64 wchar ;
1728 u64 syscr ;
1729 u64 syscw ;
1730 u64 read_bytes ;
1731 u64 write_bytes ;
1732 u64 cancelled_write_bytes ;
1733};
1734#line 20 "include/linux/latencytop.h"
1735struct latency_record {
1736 unsigned long backtrace[12] ;
1737 unsigned int count ;
1738 unsigned long time ;
1739 unsigned long max ;
1740};
1741#line 29 "include/linux/key.h"
1742typedef int32_t key_serial_t;
1743#line 32 "include/linux/key.h"
1744typedef uint32_t key_perm_t;
1745#line 34
1746struct key;
1747#line 76
1748struct signal_struct;
1749#line 79
1750struct key_type;
1751#line 81
1752struct keyring_list;
1753#line 124
1754struct key_user;
1755#line 124 "include/linux/key.h"
1756union __anonunion____missing_field_name_225 {
1757 time_t expiry ;
1758 time_t revoked_at ;
1759};
1760#line 124 "include/linux/key.h"
1761union __anonunion_type_data_226 {
1762 struct list_head link ;
1763 unsigned long x[2] ;
1764 void *p[2] ;
1765 int reject_error ;
1766};
1767#line 124 "include/linux/key.h"
1768union __anonunion_payload_227 {
1769 unsigned long value ;
1770 void *rcudata ;
1771 void *data ;
1772 struct keyring_list *subscriptions ;
1773};
1774#line 124 "include/linux/key.h"
1775struct key {
1776 atomic_t usage ;
1777 key_serial_t serial ;
1778 struct rb_node serial_node ;
1779 struct key_type *type ;
1780 struct rw_semaphore sem ;
1781 struct key_user *user ;
1782 void *security ;
1783 union __anonunion____missing_field_name_225 __annonCompField42 ;
1784 uid_t uid ;
1785 gid_t gid ;
1786 key_perm_t perm ;
1787 unsigned short quotalen ;
1788 unsigned short datalen ;
1789 unsigned long flags ;
1790 char *description ;
1791 union __anonunion_type_data_226 type_data ;
1792 union __anonunion_payload_227 payload ;
1793};
1794#line 18 "include/linux/selinux.h"
1795struct audit_context;
1796#line 31 "include/linux/cred.h"
1797struct group_info {
1798 atomic_t usage ;
1799 int ngroups ;
1800 int nblocks ;
1801 gid_t small_block[32] ;
1802 gid_t *blocks[0] ;
1803};
1804#line 83 "include/linux/cred.h"
1805struct thread_group_cred {
1806 atomic_t usage ;
1807 pid_t tgid ;
1808 spinlock_t lock ;
1809 struct key *session_keyring ;
1810 struct key *process_keyring ;
1811 struct rcu_head rcu ;
1812};
1813#line 116 "include/linux/cred.h"
1814struct cred {
1815 atomic_t usage ;
1816 atomic_t subscribers ;
1817 void *put_addr ;
1818 unsigned int magic ;
1819 uid_t uid ;
1820 gid_t gid ;
1821 uid_t suid ;
1822 gid_t sgid ;
1823 uid_t euid ;
1824 gid_t egid ;
1825 uid_t fsuid ;
1826 gid_t fsgid ;
1827 unsigned int securebits ;
1828 kernel_cap_t cap_inheritable ;
1829 kernel_cap_t cap_permitted ;
1830 kernel_cap_t cap_effective ;
1831 kernel_cap_t cap_bset ;
1832 unsigned char jit_keyring ;
1833 struct key *thread_keyring ;
1834 struct key *request_key_auth ;
1835 struct thread_group_cred *tgcred ;
1836 void *security ;
1837 struct user_struct *user ;
1838 struct user_namespace *user_ns ;
1839 struct group_info *group_info ;
1840 struct rcu_head rcu ;
1841};
1842#line 61 "include/linux/llist.h"
1843struct llist_node;
1844#line 65 "include/linux/llist.h"
1845struct llist_node {
1846 struct llist_node *next ;
1847};
1848#line 97 "include/linux/sched.h"
1849struct futex_pi_state;
1850#line 98
1851struct robust_list_head;
1852#line 99
1853struct bio_list;
1854#line 100
1855struct fs_struct;
1856#line 101
1857struct perf_event_context;
1858#line 102
1859struct blk_plug;
1860#line 151
1861struct cfs_rq;
1862#line 58 "include/linux/aio_abi.h"
1863struct io_event {
1864 __u64 data ;
1865 __u64 obj ;
1866 __s64 res ;
1867 __s64 res2 ;
1868};
1869#line 16 "include/linux/uio.h"
1870struct iovec {
1871 void *iov_base ;
1872 __kernel_size_t iov_len ;
1873};
1874#line 15 "include/linux/aio.h"
1875struct kioctx;
1876#line 87 "include/linux/aio.h"
1877union __anonunion_ki_obj_229 {
1878 void *user ;
1879 struct task_struct *tsk ;
1880};
1881#line 87
1882struct eventfd_ctx;
1883#line 87 "include/linux/aio.h"
1884struct kiocb {
1885 struct list_head ki_run_list ;
1886 unsigned long ki_flags ;
1887 int ki_users ;
1888 unsigned int ki_key ;
1889 struct file *ki_filp ;
1890 struct kioctx *ki_ctx ;
1891 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
1892 ssize_t (*ki_retry)(struct kiocb * ) ;
1893 void (*ki_dtor)(struct kiocb * ) ;
1894 union __anonunion_ki_obj_229 ki_obj ;
1895 __u64 ki_user_data ;
1896 loff_t ki_pos ;
1897 void *private ;
1898 unsigned short ki_opcode ;
1899 size_t ki_nbytes ;
1900 char *ki_buf ;
1901 size_t ki_left ;
1902 struct iovec ki_inline_vec ;
1903 struct iovec *ki_iovec ;
1904 unsigned long ki_nr_segs ;
1905 unsigned long ki_cur_seg ;
1906 struct list_head ki_list ;
1907 struct list_head ki_batch ;
1908 struct eventfd_ctx *ki_eventfd ;
1909};
1910#line 166 "include/linux/aio.h"
1911struct aio_ring_info {
1912 unsigned long mmap_base ;
1913 unsigned long mmap_size ;
1914 struct page **ring_pages ;
1915 spinlock_t ring_lock ;
1916 long nr_pages ;
1917 unsigned int nr ;
1918 unsigned int tail ;
1919 struct page *internal_pages[8] ;
1920};
1921#line 179 "include/linux/aio.h"
1922struct kioctx {
1923 atomic_t users ;
1924 int dead ;
1925 struct mm_struct *mm ;
1926 unsigned long user_id ;
1927 struct hlist_node list ;
1928 wait_queue_head_t wait ;
1929 spinlock_t ctx_lock ;
1930 int reqs_active ;
1931 struct list_head active_reqs ;
1932 struct list_head run_list ;
1933 unsigned int max_reqs ;
1934 struct aio_ring_info ring_info ;
1935 struct delayed_work wq ;
1936 struct rcu_head rcu_head ;
1937};
1938#line 443 "include/linux/sched.h"
1939struct sighand_struct {
1940 atomic_t count ;
1941 struct k_sigaction action[64] ;
1942 spinlock_t siglock ;
1943 wait_queue_head_t signalfd_wqh ;
1944};
1945#line 450 "include/linux/sched.h"
1946struct pacct_struct {
1947 int ac_flag ;
1948 long ac_exitcode ;
1949 unsigned long ac_mem ;
1950 cputime_t ac_utime ;
1951 cputime_t ac_stime ;
1952 unsigned long ac_minflt ;
1953 unsigned long ac_majflt ;
1954};
1955#line 458 "include/linux/sched.h"
1956struct cpu_itimer {
1957 cputime_t expires ;
1958 cputime_t incr ;
1959 u32 error ;
1960 u32 incr_error ;
1961};
1962#line 476 "include/linux/sched.h"
1963struct task_cputime {
1964 cputime_t utime ;
1965 cputime_t stime ;
1966 unsigned long long sum_exec_runtime ;
1967};
1968#line 512 "include/linux/sched.h"
1969struct thread_group_cputimer {
1970 struct task_cputime cputime ;
1971 int running ;
1972 raw_spinlock_t lock ;
1973};
1974#line 519
1975struct autogroup;
1976#line 528
1977struct tty_struct;
1978#line 528
1979struct taskstats;
1980#line 528
1981struct tty_audit_buf;
1982#line 528 "include/linux/sched.h"
1983struct signal_struct {
1984 atomic_t sigcnt ;
1985 atomic_t live ;
1986 int nr_threads ;
1987 wait_queue_head_t wait_chldexit ;
1988 struct task_struct *curr_target ;
1989 struct sigpending shared_pending ;
1990 int group_exit_code ;
1991 int notify_count ;
1992 struct task_struct *group_exit_task ;
1993 int group_stop_count ;
1994 unsigned int flags ;
1995 unsigned int is_child_subreaper : 1 ;
1996 unsigned int has_child_subreaper : 1 ;
1997 struct list_head posix_timers ;
1998 struct hrtimer real_timer ;
1999 struct pid *leader_pid ;
2000 ktime_t it_real_incr ;
2001 struct cpu_itimer it[2] ;
2002 struct thread_group_cputimer cputimer ;
2003 struct task_cputime cputime_expires ;
2004 struct list_head cpu_timers[3] ;
2005 struct pid *tty_old_pgrp ;
2006 int leader ;
2007 struct tty_struct *tty ;
2008 struct autogroup *autogroup ;
2009 cputime_t utime ;
2010 cputime_t stime ;
2011 cputime_t cutime ;
2012 cputime_t cstime ;
2013 cputime_t gtime ;
2014 cputime_t cgtime ;
2015 cputime_t prev_utime ;
2016 cputime_t prev_stime ;
2017 unsigned long nvcsw ;
2018 unsigned long nivcsw ;
2019 unsigned long cnvcsw ;
2020 unsigned long cnivcsw ;
2021 unsigned long min_flt ;
2022 unsigned long maj_flt ;
2023 unsigned long cmin_flt ;
2024 unsigned long cmaj_flt ;
2025 unsigned long inblock ;
2026 unsigned long oublock ;
2027 unsigned long cinblock ;
2028 unsigned long coublock ;
2029 unsigned long maxrss ;
2030 unsigned long cmaxrss ;
2031 struct task_io_accounting ioac ;
2032 unsigned long long sum_sched_runtime ;
2033 struct rlimit rlim[16] ;
2034 struct pacct_struct pacct ;
2035 struct taskstats *stats ;
2036 unsigned int audit_tty ;
2037 struct tty_audit_buf *tty_audit_buf ;
2038 struct rw_semaphore group_rwsem ;
2039 int oom_adj ;
2040 int oom_score_adj ;
2041 int oom_score_adj_min ;
2042 struct mutex cred_guard_mutex ;
2043};
2044#line 703 "include/linux/sched.h"
2045struct user_struct {
2046 atomic_t __count ;
2047 atomic_t processes ;
2048 atomic_t files ;
2049 atomic_t sigpending ;
2050 atomic_t inotify_watches ;
2051 atomic_t inotify_devs ;
2052 atomic_t fanotify_listeners ;
2053 atomic_long_t epoll_watches ;
2054 unsigned long mq_bytes ;
2055 unsigned long locked_shm ;
2056 struct key *uid_keyring ;
2057 struct key *session_keyring ;
2058 struct hlist_node uidhash_node ;
2059 uid_t uid ;
2060 struct user_namespace *user_ns ;
2061 atomic_long_t locked_vm ;
2062};
2063#line 747
2064struct backing_dev_info;
2065#line 748
2066struct reclaim_state;
2067#line 751 "include/linux/sched.h"
2068struct sched_info {
2069 unsigned long pcount ;
2070 unsigned long long run_delay ;
2071 unsigned long long last_arrival ;
2072 unsigned long long last_queued ;
2073};
2074#line 763 "include/linux/sched.h"
2075struct task_delay_info {
2076 spinlock_t lock ;
2077 unsigned int flags ;
2078 struct timespec blkio_start ;
2079 struct timespec blkio_end ;
2080 u64 blkio_delay ;
2081 u64 swapin_delay ;
2082 u32 blkio_count ;
2083 u32 swapin_count ;
2084 struct timespec freepages_start ;
2085 struct timespec freepages_end ;
2086 u64 freepages_delay ;
2087 u32 freepages_count ;
2088};
2089#line 1088
2090struct io_context;
2091#line 1099
2092struct pipe_inode_info;
2093#line 1102
2094struct rq;
2095#line 1122 "include/linux/sched.h"
2096struct sched_class {
2097 struct sched_class *next ;
2098 void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2099 void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2100 void (*yield_task)(struct rq *rq ) ;
2101 bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
2102 void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
2103 struct task_struct *(*pick_next_task)(struct rq *rq ) ;
2104 void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
2105 int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
2106 void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
2107 void (*post_schedule)(struct rq *this_rq ) ;
2108 void (*task_waking)(struct task_struct *task ) ;
2109 void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
2110 void (*set_cpus_allowed)(struct task_struct *p , struct cpumask *newmask ) ;
2111 void (*rq_online)(struct rq *rq ) ;
2112 void (*rq_offline)(struct rq *rq ) ;
2113 void (*set_curr_task)(struct rq *rq ) ;
2114 void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
2115 void (*task_fork)(struct task_struct *p ) ;
2116 void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
2117 void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
2118 void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
2119 unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
2120 void (*task_move_group)(struct task_struct *p , int on_rq ) ;
2121};
2122#line 1167 "include/linux/sched.h"
2123struct load_weight {
2124 unsigned long weight ;
2125 unsigned long inv_weight ;
2126};
2127#line 1172 "include/linux/sched.h"
2128struct sched_statistics {
2129 u64 wait_start ;
2130 u64 wait_max ;
2131 u64 wait_count ;
2132 u64 wait_sum ;
2133 u64 iowait_count ;
2134 u64 iowait_sum ;
2135 u64 sleep_start ;
2136 u64 sleep_max ;
2137 s64 sum_sleep_runtime ;
2138 u64 block_start ;
2139 u64 block_max ;
2140 u64 exec_max ;
2141 u64 slice_max ;
2142 u64 nr_migrations_cold ;
2143 u64 nr_failed_migrations_affine ;
2144 u64 nr_failed_migrations_running ;
2145 u64 nr_failed_migrations_hot ;
2146 u64 nr_forced_migrations ;
2147 u64 nr_wakeups ;
2148 u64 nr_wakeups_sync ;
2149 u64 nr_wakeups_migrate ;
2150 u64 nr_wakeups_local ;
2151 u64 nr_wakeups_remote ;
2152 u64 nr_wakeups_affine ;
2153 u64 nr_wakeups_affine_attempts ;
2154 u64 nr_wakeups_passive ;
2155 u64 nr_wakeups_idle ;
2156};
2157#line 1207 "include/linux/sched.h"
2158struct sched_entity {
2159 struct load_weight load ;
2160 struct rb_node run_node ;
2161 struct list_head group_node ;
2162 unsigned int on_rq ;
2163 u64 exec_start ;
2164 u64 sum_exec_runtime ;
2165 u64 vruntime ;
2166 u64 prev_sum_exec_runtime ;
2167 u64 nr_migrations ;
2168 struct sched_statistics statistics ;
2169 struct sched_entity *parent ;
2170 struct cfs_rq *cfs_rq ;
2171 struct cfs_rq *my_q ;
2172};
2173#line 1233
2174struct rt_rq;
2175#line 1233 "include/linux/sched.h"
2176struct sched_rt_entity {
2177 struct list_head run_list ;
2178 unsigned long timeout ;
2179 unsigned int time_slice ;
2180 int nr_cpus_allowed ;
2181 struct sched_rt_entity *back ;
2182 struct sched_rt_entity *parent ;
2183 struct rt_rq *rt_rq ;
2184 struct rt_rq *my_q ;
2185};
2186#line 1264
2187struct files_struct;
2188#line 1264
2189struct css_set;
2190#line 1264
2191struct compat_robust_list_head;
2192#line 1264
2193struct mem_cgroup;
2194#line 1264 "include/linux/sched.h"
2195struct memcg_batch_info {
2196 int do_batch ;
2197 struct mem_cgroup *memcg ;
2198 unsigned long nr_pages ;
2199 unsigned long memsw_nr_pages ;
2200};
2201#line 1264 "include/linux/sched.h"
2202struct task_struct {
2203 long volatile state ;
2204 void *stack ;
2205 atomic_t usage ;
2206 unsigned int flags ;
2207 unsigned int ptrace ;
2208 struct llist_node wake_entry ;
2209 int on_cpu ;
2210 int on_rq ;
2211 int prio ;
2212 int static_prio ;
2213 int normal_prio ;
2214 unsigned int rt_priority ;
2215 struct sched_class *sched_class ;
2216 struct sched_entity se ;
2217 struct sched_rt_entity rt ;
2218 struct hlist_head preempt_notifiers ;
2219 unsigned char fpu_counter ;
2220 unsigned int policy ;
2221 cpumask_t cpus_allowed ;
2222 struct sched_info sched_info ;
2223 struct list_head tasks ;
2224 struct plist_node pushable_tasks ;
2225 struct mm_struct *mm ;
2226 struct mm_struct *active_mm ;
2227 unsigned int brk_randomized : 1 ;
2228 int exit_state ;
2229 int exit_code ;
2230 int exit_signal ;
2231 int pdeath_signal ;
2232 unsigned int jobctl ;
2233 unsigned int personality ;
2234 unsigned int did_exec : 1 ;
2235 unsigned int in_execve : 1 ;
2236 unsigned int in_iowait : 1 ;
2237 unsigned int sched_reset_on_fork : 1 ;
2238 unsigned int sched_contributes_to_load : 1 ;
2239 unsigned int irq_thread : 1 ;
2240 pid_t pid ;
2241 pid_t tgid ;
2242 unsigned long stack_canary ;
2243 struct task_struct *real_parent ;
2244 struct task_struct *parent ;
2245 struct list_head children ;
2246 struct list_head sibling ;
2247 struct task_struct *group_leader ;
2248 struct list_head ptraced ;
2249 struct list_head ptrace_entry ;
2250 struct pid_link pids[3] ;
2251 struct list_head thread_group ;
2252 struct completion *vfork_done ;
2253 int *set_child_tid ;
2254 int *clear_child_tid ;
2255 cputime_t utime ;
2256 cputime_t stime ;
2257 cputime_t utimescaled ;
2258 cputime_t stimescaled ;
2259 cputime_t gtime ;
2260 cputime_t prev_utime ;
2261 cputime_t prev_stime ;
2262 unsigned long nvcsw ;
2263 unsigned long nivcsw ;
2264 struct timespec start_time ;
2265 struct timespec real_start_time ;
2266 unsigned long min_flt ;
2267 unsigned long maj_flt ;
2268 struct task_cputime cputime_expires ;
2269 struct list_head cpu_timers[3] ;
2270 struct cred *real_cred ;
2271 struct cred *cred ;
2272 struct cred *replacement_session_keyring ;
2273 char comm[16] ;
2274 int link_count ;
2275 int total_link_count ;
2276 struct sysv_sem sysvsem ;
2277 unsigned long last_switch_count ;
2278 struct thread_struct thread ;
2279 struct fs_struct *fs ;
2280 struct files_struct *files ;
2281 struct nsproxy *nsproxy ;
2282 struct signal_struct *signal ;
2283 struct sighand_struct *sighand ;
2284 sigset_t blocked ;
2285 sigset_t real_blocked ;
2286 sigset_t saved_sigmask ;
2287 struct sigpending pending ;
2288 unsigned long sas_ss_sp ;
2289 size_t sas_ss_size ;
2290 int (*notifier)(void *priv ) ;
2291 void *notifier_data ;
2292 sigset_t *notifier_mask ;
2293 struct audit_context *audit_context ;
2294 uid_t loginuid ;
2295 unsigned int sessionid ;
2296 seccomp_t seccomp ;
2297 u32 parent_exec_id ;
2298 u32 self_exec_id ;
2299 spinlock_t alloc_lock ;
2300 raw_spinlock_t pi_lock ;
2301 struct plist_head pi_waiters ;
2302 struct rt_mutex_waiter *pi_blocked_on ;
2303 struct mutex_waiter *blocked_on ;
2304 unsigned int irq_events ;
2305 unsigned long hardirq_enable_ip ;
2306 unsigned long hardirq_disable_ip ;
2307 unsigned int hardirq_enable_event ;
2308 unsigned int hardirq_disable_event ;
2309 int hardirqs_enabled ;
2310 int hardirq_context ;
2311 unsigned long softirq_disable_ip ;
2312 unsigned long softirq_enable_ip ;
2313 unsigned int softirq_disable_event ;
2314 unsigned int softirq_enable_event ;
2315 int softirqs_enabled ;
2316 int softirq_context ;
2317 void *journal_info ;
2318 struct bio_list *bio_list ;
2319 struct blk_plug *plug ;
2320 struct reclaim_state *reclaim_state ;
2321 struct backing_dev_info *backing_dev_info ;
2322 struct io_context *io_context ;
2323 unsigned long ptrace_message ;
2324 siginfo_t *last_siginfo ;
2325 struct task_io_accounting ioac ;
2326 u64 acct_rss_mem1 ;
2327 u64 acct_vm_mem1 ;
2328 cputime_t acct_timexpd ;
2329 nodemask_t mems_allowed ;
2330 seqcount_t mems_allowed_seq ;
2331 int cpuset_mem_spread_rotor ;
2332 int cpuset_slab_spread_rotor ;
2333 struct css_set *cgroups ;
2334 struct list_head cg_list ;
2335 struct robust_list_head *robust_list ;
2336 struct compat_robust_list_head *compat_robust_list ;
2337 struct list_head pi_state_list ;
2338 struct futex_pi_state *pi_state_cache ;
2339 struct perf_event_context *perf_event_ctxp[2] ;
2340 struct mutex perf_event_mutex ;
2341 struct list_head perf_event_list ;
2342 struct mempolicy *mempolicy ;
2343 short il_next ;
2344 short pref_node_fork ;
2345 struct rcu_head rcu ;
2346 struct pipe_inode_info *splice_pipe ;
2347 struct task_delay_info *delays ;
2348 int make_it_fail ;
2349 int nr_dirtied ;
2350 int nr_dirtied_pause ;
2351 unsigned long dirty_paused_when ;
2352 int latency_record_count ;
2353 struct latency_record latency_record[32] ;
2354 unsigned long timer_slack_ns ;
2355 unsigned long default_timer_slack_ns ;
2356 struct list_head *scm_work_list ;
2357 unsigned long trace ;
2358 unsigned long trace_recursion ;
2359 struct memcg_batch_info memcg_batch ;
2360 atomic_t ptrace_bp_refcnt ;
2361};
2362#line 46 "include/linux/slub_def.h"
2363struct kmem_cache_cpu {
2364 void **freelist ;
2365 unsigned long tid ;
2366 struct page *page ;
2367 struct page *partial ;
2368 int node ;
2369 unsigned int stat[26] ;
2370};
2371#line 57 "include/linux/slub_def.h"
2372struct kmem_cache_node {
2373 spinlock_t list_lock ;
2374 unsigned long nr_partial ;
2375 struct list_head partial ;
2376 atomic_long_t nr_slabs ;
2377 atomic_long_t total_objects ;
2378 struct list_head full ;
2379};
2380#line 73 "include/linux/slub_def.h"
2381struct kmem_cache_order_objects {
2382 unsigned long x ;
2383};
2384#line 80 "include/linux/slub_def.h"
2385struct kmem_cache {
2386 struct kmem_cache_cpu *cpu_slab ;
2387 unsigned long flags ;
2388 unsigned long min_partial ;
2389 int size ;
2390 int objsize ;
2391 int offset ;
2392 int cpu_partial ;
2393 struct kmem_cache_order_objects oo ;
2394 struct kmem_cache_order_objects max ;
2395 struct kmem_cache_order_objects min ;
2396 gfp_t allocflags ;
2397 int refcount ;
2398 void (*ctor)(void * ) ;
2399 int inuse ;
2400 int align ;
2401 int reserved ;
2402 char *name ;
2403 struct list_head list ;
2404 struct kobject kobj ;
2405 int remote_node_defrag_ratio ;
2406 struct kmem_cache_node *node[1 << 10] ;
2407};
2408#line 13 "include/linux/blk_types.h"
2409struct bio;
2410#line 14
2411struct bio_integrity_payload;
2412#line 16
2413struct block_device;
2414#line 17 "include/linux/blk_types.h"
2415typedef void bio_end_io_t(struct bio * , int );
2416#line 18 "include/linux/blk_types.h"
2417typedef void bio_destructor_t(struct bio * );
2418#line 23 "include/linux/blk_types.h"
2419struct bio_vec {
2420 struct page *bv_page ;
2421 unsigned int bv_len ;
2422 unsigned int bv_offset ;
2423};
2424#line 33 "include/linux/blk_types.h"
2425struct bio {
2426 sector_t bi_sector ;
2427 struct bio *bi_next ;
2428 struct block_device *bi_bdev ;
2429 unsigned long bi_flags ;
2430 unsigned long bi_rw ;
2431 unsigned short bi_vcnt ;
2432 unsigned short bi_idx ;
2433 unsigned int bi_phys_segments ;
2434 unsigned int bi_size ;
2435 unsigned int bi_seg_front_size ;
2436 unsigned int bi_seg_back_size ;
2437 unsigned int bi_max_vecs ;
2438 atomic_t bi_cnt ;
2439 struct bio_vec *bi_io_vec ;
2440 bio_end_io_t *bi_end_io ;
2441 void *bi_private ;
2442 struct bio_integrity_payload *bi_integrity ;
2443 bio_destructor_t *bi_destructor ;
2444 struct bio_vec bi_inline_vecs[0] ;
2445};
2446#line 33 "include/linux/list_bl.h"
2447struct hlist_bl_node;
2448#line 33 "include/linux/list_bl.h"
2449struct hlist_bl_head {
2450 struct hlist_bl_node *first ;
2451};
2452#line 37 "include/linux/list_bl.h"
2453struct hlist_bl_node {
2454 struct hlist_bl_node *next ;
2455 struct hlist_bl_node **pprev ;
2456};
2457#line 13 "include/linux/dcache.h"
2458struct nameidata;
2459#line 14
2460struct path;
2461#line 15
2462struct vfsmount;
2463#line 35 "include/linux/dcache.h"
2464struct qstr {
2465 unsigned int hash ;
2466 unsigned int len ;
2467 unsigned char *name ;
2468};
2469#line 88
2470struct dentry_operations;
2471#line 88
2472struct super_block;
2473#line 88 "include/linux/dcache.h"
2474union __anonunion_d_u_232 {
2475 struct list_head d_child ;
2476 struct rcu_head d_rcu ;
2477};
2478#line 88 "include/linux/dcache.h"
2479struct dentry {
2480 unsigned int d_flags ;
2481 seqcount_t d_seq ;
2482 struct hlist_bl_node d_hash ;
2483 struct dentry *d_parent ;
2484 struct qstr d_name ;
2485 struct inode *d_inode ;
2486 unsigned char d_iname[32] ;
2487 unsigned int d_count ;
2488 spinlock_t d_lock ;
2489 struct dentry_operations *d_op ;
2490 struct super_block *d_sb ;
2491 unsigned long d_time ;
2492 void *d_fsdata ;
2493 struct list_head d_lru ;
2494 union __anonunion_d_u_232 d_u ;
2495 struct list_head d_subdirs ;
2496 struct list_head d_alias ;
2497};
2498#line 131 "include/linux/dcache.h"
2499struct dentry_operations {
2500 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
2501 int (*d_hash)(struct dentry * , struct inode * , struct qstr * ) ;
2502 int (*d_compare)(struct dentry * , struct inode * , struct dentry const * ,
2503 struct inode * , unsigned int , char * , struct qstr const * ) ;
2504 int (*d_delete)(struct dentry * ) ;
2505 void (*d_release)(struct dentry * ) ;
2506 void (*d_prune)(struct dentry * ) ;
2507 void (*d_iput)(struct dentry * , struct inode * ) ;
2508 char *(*d_dname)(struct dentry * , char * , int ) ;
2509 struct vfsmount *(*d_automount)(struct path * ) ;
2510 int (*d_manage)(struct dentry * , bool ) ;
2511} __attribute__((__aligned__((1) << (6) ))) ;
2512#line 7 "include/linux/path.h"
2513struct path {
2514 struct vfsmount *mnt ;
2515 struct dentry *dentry ;
2516};
2517#line 64 "include/linux/radix-tree.h"
2518struct radix_tree_node;
2519#line 64 "include/linux/radix-tree.h"
2520struct radix_tree_root {
2521 unsigned int height ;
2522 gfp_t gfp_mask ;
2523 struct radix_tree_node *rnode ;
2524};
2525#line 16 "include/linux/fiemap.h"
2526struct fiemap_extent {
2527 __u64 fe_logical ;
2528 __u64 fe_physical ;
2529 __u64 fe_length ;
2530 __u64 fe_reserved64[2] ;
2531 __u32 fe_flags ;
2532 __u32 fe_reserved[3] ;
2533};
2534#line 10 "include/linux/migrate_mode.h"
2535enum migrate_mode {
2536 MIGRATE_ASYNC = 0,
2537 MIGRATE_SYNC_LIGHT = 1,
2538 MIGRATE_SYNC = 2
2539} ;
2540#line 408 "include/linux/fs.h"
2541struct export_operations;
2542#line 409
2543struct hd_geometry;
2544#line 415
2545struct poll_table_struct;
2546#line 416
2547struct kstatfs;
2548#line 469 "include/linux/fs.h"
2549struct iattr {
2550 unsigned int ia_valid ;
2551 umode_t ia_mode ;
2552 uid_t ia_uid ;
2553 gid_t ia_gid ;
2554 loff_t ia_size ;
2555 struct timespec ia_atime ;
2556 struct timespec ia_mtime ;
2557 struct timespec ia_ctime ;
2558 struct file *ia_file ;
2559};
2560#line 129 "include/linux/quota.h"
2561struct if_dqinfo {
2562 __u64 dqi_bgrace ;
2563 __u64 dqi_igrace ;
2564 __u32 dqi_flags ;
2565 __u32 dqi_valid ;
2566};
2567#line 50 "include/linux/dqblk_xfs.h"
2568struct fs_disk_quota {
2569 __s8 d_version ;
2570 __s8 d_flags ;
2571 __u16 d_fieldmask ;
2572 __u32 d_id ;
2573 __u64 d_blk_hardlimit ;
2574 __u64 d_blk_softlimit ;
2575 __u64 d_ino_hardlimit ;
2576 __u64 d_ino_softlimit ;
2577 __u64 d_bcount ;
2578 __u64 d_icount ;
2579 __s32 d_itimer ;
2580 __s32 d_btimer ;
2581 __u16 d_iwarns ;
2582 __u16 d_bwarns ;
2583 __s32 d_padding2 ;
2584 __u64 d_rtb_hardlimit ;
2585 __u64 d_rtb_softlimit ;
2586 __u64 d_rtbcount ;
2587 __s32 d_rtbtimer ;
2588 __u16 d_rtbwarns ;
2589 __s16 d_padding3 ;
2590 char d_padding4[8] ;
2591};
2592#line 146 "include/linux/dqblk_xfs.h"
2593struct fs_qfilestat {
2594 __u64 qfs_ino ;
2595 __u64 qfs_nblks ;
2596 __u32 qfs_nextents ;
2597};
2598#line 146 "include/linux/dqblk_xfs.h"
2599typedef struct fs_qfilestat fs_qfilestat_t;
2600#line 152 "include/linux/dqblk_xfs.h"
2601struct fs_quota_stat {
2602 __s8 qs_version ;
2603 __u16 qs_flags ;
2604 __s8 qs_pad ;
2605 fs_qfilestat_t qs_uquota ;
2606 fs_qfilestat_t qs_gquota ;
2607 __u32 qs_incoredqs ;
2608 __s32 qs_btimelimit ;
2609 __s32 qs_itimelimit ;
2610 __s32 qs_rtbtimelimit ;
2611 __u16 qs_bwarnlimit ;
2612 __u16 qs_iwarnlimit ;
2613};
2614#line 17 "include/linux/dqblk_qtree.h"
2615struct dquot;
2616#line 185 "include/linux/quota.h"
2617typedef __kernel_uid32_t qid_t;
2618#line 186 "include/linux/quota.h"
2619typedef long long qsize_t;
2620#line 200 "include/linux/quota.h"
2621struct mem_dqblk {
2622 qsize_t dqb_bhardlimit ;
2623 qsize_t dqb_bsoftlimit ;
2624 qsize_t dqb_curspace ;
2625 qsize_t dqb_rsvspace ;
2626 qsize_t dqb_ihardlimit ;
2627 qsize_t dqb_isoftlimit ;
2628 qsize_t dqb_curinodes ;
2629 time_t dqb_btime ;
2630 time_t dqb_itime ;
2631};
2632#line 215
2633struct quota_format_type;
2634#line 217 "include/linux/quota.h"
2635struct mem_dqinfo {
2636 struct quota_format_type *dqi_format ;
2637 int dqi_fmt_id ;
2638 struct list_head dqi_dirty_list ;
2639 unsigned long dqi_flags ;
2640 unsigned int dqi_bgrace ;
2641 unsigned int dqi_igrace ;
2642 qsize_t dqi_maxblimit ;
2643 qsize_t dqi_maxilimit ;
2644 void *dqi_priv ;
2645};
2646#line 288 "include/linux/quota.h"
2647struct dquot {
2648 struct hlist_node dq_hash ;
2649 struct list_head dq_inuse ;
2650 struct list_head dq_free ;
2651 struct list_head dq_dirty ;
2652 struct mutex dq_lock ;
2653 atomic_t dq_count ;
2654 wait_queue_head_t dq_wait_unused ;
2655 struct super_block *dq_sb ;
2656 unsigned int dq_id ;
2657 loff_t dq_off ;
2658 unsigned long dq_flags ;
2659 short dq_type ;
2660 struct mem_dqblk dq_dqb ;
2661};
2662#line 305 "include/linux/quota.h"
2663struct quota_format_ops {
2664 int (*check_quota_file)(struct super_block *sb , int type ) ;
2665 int (*read_file_info)(struct super_block *sb , int type ) ;
2666 int (*write_file_info)(struct super_block *sb , int type ) ;
2667 int (*free_file_info)(struct super_block *sb , int type ) ;
2668 int (*read_dqblk)(struct dquot *dquot ) ;
2669 int (*commit_dqblk)(struct dquot *dquot ) ;
2670 int (*release_dqblk)(struct dquot *dquot ) ;
2671};
2672#line 316 "include/linux/quota.h"
2673struct dquot_operations {
2674 int (*write_dquot)(struct dquot * ) ;
2675 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
2676 void (*destroy_dquot)(struct dquot * ) ;
2677 int (*acquire_dquot)(struct dquot * ) ;
2678 int (*release_dquot)(struct dquot * ) ;
2679 int (*mark_dirty)(struct dquot * ) ;
2680 int (*write_info)(struct super_block * , int ) ;
2681 qsize_t *(*get_reserved_space)(struct inode * ) ;
2682};
2683#line 332 "include/linux/quota.h"
2684struct quotactl_ops {
2685 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
2686 int (*quota_on_meta)(struct super_block * , int , int ) ;
2687 int (*quota_off)(struct super_block * , int ) ;
2688 int (*quota_sync)(struct super_block * , int , int ) ;
2689 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
2690 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
2691 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2692 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2693 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
2694 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
2695};
2696#line 345 "include/linux/quota.h"
2697struct quota_format_type {
2698 int qf_fmt_id ;
2699 struct quota_format_ops *qf_ops ;
2700 struct module *qf_owner ;
2701 struct quota_format_type *qf_next ;
2702};
2703#line 399 "include/linux/quota.h"
2704struct quota_info {
2705 unsigned int flags ;
2706 struct mutex dqio_mutex ;
2707 struct mutex dqonoff_mutex ;
2708 struct rw_semaphore dqptr_sem ;
2709 struct inode *files[2] ;
2710 struct mem_dqinfo info[2] ;
2711 struct quota_format_ops *ops[2] ;
2712};
2713#line 577 "include/linux/fs.h"
2714union __anonunion_arg_239 {
2715 char *buf ;
2716 void *data ;
2717};
2718#line 577 "include/linux/fs.h"
2719struct __anonstruct_read_descriptor_t_238 {
2720 size_t written ;
2721 size_t count ;
2722 union __anonunion_arg_239 arg ;
2723 int error ;
2724};
2725#line 577 "include/linux/fs.h"
2726typedef struct __anonstruct_read_descriptor_t_238 read_descriptor_t;
2727#line 590 "include/linux/fs.h"
2728struct address_space_operations {
2729 int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
2730 int (*readpage)(struct file * , struct page * ) ;
2731 int (*writepages)(struct address_space * , struct writeback_control * ) ;
2732 int (*set_page_dirty)(struct page *page ) ;
2733 int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
2734 unsigned int nr_pages ) ;
2735 int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
2736 unsigned int len , unsigned int flags , struct page **pagep ,
2737 void **fsdata ) ;
2738 int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
2739 unsigned int copied , struct page *page , void *fsdata ) ;
2740 sector_t (*bmap)(struct address_space * , sector_t ) ;
2741 void (*invalidatepage)(struct page * , unsigned long ) ;
2742 int (*releasepage)(struct page * , gfp_t ) ;
2743 void (*freepage)(struct page * ) ;
2744 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec *iov , loff_t offset ,
2745 unsigned long nr_segs ) ;
2746 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2747 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
2748 int (*launder_page)(struct page * ) ;
2749 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2750 int (*error_remove_page)(struct address_space * , struct page * ) ;
2751};
2752#line 646 "include/linux/fs.h"
2753struct address_space {
2754 struct inode *host ;
2755 struct radix_tree_root page_tree ;
2756 spinlock_t tree_lock ;
2757 unsigned int i_mmap_writable ;
2758 struct prio_tree_root i_mmap ;
2759 struct list_head i_mmap_nonlinear ;
2760 struct mutex i_mmap_mutex ;
2761 unsigned long nrpages ;
2762 unsigned long writeback_index ;
2763 struct address_space_operations *a_ops ;
2764 unsigned long flags ;
2765 struct backing_dev_info *backing_dev_info ;
2766 spinlock_t private_lock ;
2767 struct list_head private_list ;
2768 struct address_space *assoc_mapping ;
2769} __attribute__((__aligned__(sizeof(long )))) ;
2770#line 669
2771struct request_queue;
2772#line 671
2773struct hd_struct;
2774#line 671
2775struct gendisk;
2776#line 671 "include/linux/fs.h"
2777struct block_device {
2778 dev_t bd_dev ;
2779 int bd_openers ;
2780 struct inode *bd_inode ;
2781 struct super_block *bd_super ;
2782 struct mutex bd_mutex ;
2783 struct list_head bd_inodes ;
2784 void *bd_claiming ;
2785 void *bd_holder ;
2786 int bd_holders ;
2787 bool bd_write_holder ;
2788 struct list_head bd_holder_disks ;
2789 struct block_device *bd_contains ;
2790 unsigned int bd_block_size ;
2791 struct hd_struct *bd_part ;
2792 unsigned int bd_part_count ;
2793 int bd_invalidated ;
2794 struct gendisk *bd_disk ;
2795 struct request_queue *bd_queue ;
2796 struct list_head bd_list ;
2797 unsigned long bd_private ;
2798 int bd_fsfreeze_count ;
2799 struct mutex bd_fsfreeze_mutex ;
2800};
2801#line 749
2802struct posix_acl;
2803#line 761
2804struct inode_operations;
2805#line 761 "include/linux/fs.h"
2806union __anonunion____missing_field_name_240 {
2807 unsigned int i_nlink ;
2808 unsigned int __i_nlink ;
2809};
2810#line 761 "include/linux/fs.h"
2811union __anonunion____missing_field_name_241 {
2812 struct list_head i_dentry ;
2813 struct rcu_head i_rcu ;
2814};
2815#line 761
2816struct file_operations;
2817#line 761
2818struct file_lock;
2819#line 761
2820struct cdev;
2821#line 761 "include/linux/fs.h"
2822union __anonunion____missing_field_name_242 {
2823 struct pipe_inode_info *i_pipe ;
2824 struct block_device *i_bdev ;
2825 struct cdev *i_cdev ;
2826};
2827#line 761 "include/linux/fs.h"
2828struct inode {
2829 umode_t i_mode ;
2830 unsigned short i_opflags ;
2831 uid_t i_uid ;
2832 gid_t i_gid ;
2833 unsigned int i_flags ;
2834 struct posix_acl *i_acl ;
2835 struct posix_acl *i_default_acl ;
2836 struct inode_operations *i_op ;
2837 struct super_block *i_sb ;
2838 struct address_space *i_mapping ;
2839 void *i_security ;
2840 unsigned long i_ino ;
2841 union __anonunion____missing_field_name_240 __annonCompField44 ;
2842 dev_t i_rdev ;
2843 struct timespec i_atime ;
2844 struct timespec i_mtime ;
2845 struct timespec i_ctime ;
2846 spinlock_t i_lock ;
2847 unsigned short i_bytes ;
2848 blkcnt_t i_blocks ;
2849 loff_t i_size ;
2850 unsigned long i_state ;
2851 struct mutex i_mutex ;
2852 unsigned long dirtied_when ;
2853 struct hlist_node i_hash ;
2854 struct list_head i_wb_list ;
2855 struct list_head i_lru ;
2856 struct list_head i_sb_list ;
2857 union __anonunion____missing_field_name_241 __annonCompField45 ;
2858 atomic_t i_count ;
2859 unsigned int i_blkbits ;
2860 u64 i_version ;
2861 atomic_t i_dio_count ;
2862 atomic_t i_writecount ;
2863 struct file_operations *i_fop ;
2864 struct file_lock *i_flock ;
2865 struct address_space i_data ;
2866 struct dquot *i_dquot[2] ;
2867 struct list_head i_devices ;
2868 union __anonunion____missing_field_name_242 __annonCompField46 ;
2869 __u32 i_generation ;
2870 __u32 i_fsnotify_mask ;
2871 struct hlist_head i_fsnotify_marks ;
2872 atomic_t i_readcount ;
2873 void *i_private ;
2874};
2875#line 942 "include/linux/fs.h"
2876struct fown_struct {
2877 rwlock_t lock ;
2878 struct pid *pid ;
2879 enum pid_type pid_type ;
2880 uid_t uid ;
2881 uid_t euid ;
2882 int signum ;
2883};
2884#line 953 "include/linux/fs.h"
2885struct file_ra_state {
2886 unsigned long start ;
2887 unsigned int size ;
2888 unsigned int async_size ;
2889 unsigned int ra_pages ;
2890 unsigned int mmap_miss ;
2891 loff_t prev_pos ;
2892};
2893#line 976 "include/linux/fs.h"
2894union __anonunion_f_u_243 {
2895 struct list_head fu_list ;
2896 struct rcu_head fu_rcuhead ;
2897};
2898#line 976 "include/linux/fs.h"
2899struct file {
2900 union __anonunion_f_u_243 f_u ;
2901 struct path f_path ;
2902 struct file_operations *f_op ;
2903 spinlock_t f_lock ;
2904 int f_sb_list_cpu ;
2905 atomic_long_t f_count ;
2906 unsigned int f_flags ;
2907 fmode_t f_mode ;
2908 loff_t f_pos ;
2909 struct fown_struct f_owner ;
2910 struct cred *f_cred ;
2911 struct file_ra_state f_ra ;
2912 u64 f_version ;
2913 void *f_security ;
2914 void *private_data ;
2915 struct list_head f_ep_links ;
2916 struct list_head f_tfile_llink ;
2917 struct address_space *f_mapping ;
2918 unsigned long f_mnt_write_state ;
2919};
2920#line 1111 "include/linux/fs.h"
2921typedef struct files_struct *fl_owner_t;
2922#line 1113 "include/linux/fs.h"
2923struct file_lock_operations {
2924 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
2925 void (*fl_release_private)(struct file_lock * ) ;
2926};
2927#line 1118 "include/linux/fs.h"
2928struct lock_manager_operations {
2929 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
2930 void (*lm_notify)(struct file_lock * ) ;
2931 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
2932 void (*lm_release_private)(struct file_lock * ) ;
2933 void (*lm_break)(struct file_lock * ) ;
2934 int (*lm_change)(struct file_lock ** , int ) ;
2935};
2936#line 4 "include/linux/nfs_fs_i.h"
2937struct nlm_lockowner;
2938#line 9 "include/linux/nfs_fs_i.h"
2939struct nfs_lock_info {
2940 u32 state ;
2941 struct nlm_lockowner *owner ;
2942 struct list_head list ;
2943};
2944#line 15
2945struct nfs4_lock_state;
2946#line 16 "include/linux/nfs_fs_i.h"
2947struct nfs4_lock_info {
2948 struct nfs4_lock_state *owner ;
2949};
2950#line 1138 "include/linux/fs.h"
2951struct fasync_struct;
2952#line 1138 "include/linux/fs.h"
2953struct __anonstruct_afs_245 {
2954 struct list_head link ;
2955 int state ;
2956};
2957#line 1138 "include/linux/fs.h"
2958union __anonunion_fl_u_244 {
2959 struct nfs_lock_info nfs_fl ;
2960 struct nfs4_lock_info nfs4_fl ;
2961 struct __anonstruct_afs_245 afs ;
2962};
2963#line 1138 "include/linux/fs.h"
2964struct file_lock {
2965 struct file_lock *fl_next ;
2966 struct list_head fl_link ;
2967 struct list_head fl_block ;
2968 fl_owner_t fl_owner ;
2969 unsigned int fl_flags ;
2970 unsigned char fl_type ;
2971 unsigned int fl_pid ;
2972 struct pid *fl_nspid ;
2973 wait_queue_head_t fl_wait ;
2974 struct file *fl_file ;
2975 loff_t fl_start ;
2976 loff_t fl_end ;
2977 struct fasync_struct *fl_fasync ;
2978 unsigned long fl_break_time ;
2979 unsigned long fl_downgrade_time ;
2980 struct file_lock_operations *fl_ops ;
2981 struct lock_manager_operations *fl_lmops ;
2982 union __anonunion_fl_u_244 fl_u ;
2983};
2984#line 1378 "include/linux/fs.h"
2985struct fasync_struct {
2986 spinlock_t fa_lock ;
2987 int magic ;
2988 int fa_fd ;
2989 struct fasync_struct *fa_next ;
2990 struct file *fa_file ;
2991 struct rcu_head fa_rcu ;
2992};
2993#line 1418
2994struct file_system_type;
2995#line 1418
2996struct super_operations;
2997#line 1418
2998struct xattr_handler;
2999#line 1418
3000struct mtd_info;
3001#line 1418 "include/linux/fs.h"
3002struct super_block {
3003 struct list_head s_list ;
3004 dev_t s_dev ;
3005 unsigned char s_dirt ;
3006 unsigned char s_blocksize_bits ;
3007 unsigned long s_blocksize ;
3008 loff_t s_maxbytes ;
3009 struct file_system_type *s_type ;
3010 struct super_operations *s_op ;
3011 struct dquot_operations *dq_op ;
3012 struct quotactl_ops *s_qcop ;
3013 struct export_operations *s_export_op ;
3014 unsigned long s_flags ;
3015 unsigned long s_magic ;
3016 struct dentry *s_root ;
3017 struct rw_semaphore s_umount ;
3018 struct mutex s_lock ;
3019 int s_count ;
3020 atomic_t s_active ;
3021 void *s_security ;
3022 struct xattr_handler **s_xattr ;
3023 struct list_head s_inodes ;
3024 struct hlist_bl_head s_anon ;
3025 struct list_head *s_files ;
3026 struct list_head s_mounts ;
3027 struct list_head s_dentry_lru ;
3028 int s_nr_dentry_unused ;
3029 spinlock_t s_inode_lru_lock __attribute__((__aligned__((1) << (6) ))) ;
3030 struct list_head s_inode_lru ;
3031 int s_nr_inodes_unused ;
3032 struct block_device *s_bdev ;
3033 struct backing_dev_info *s_bdi ;
3034 struct mtd_info *s_mtd ;
3035 struct hlist_node s_instances ;
3036 struct quota_info s_dquot ;
3037 int s_frozen ;
3038 wait_queue_head_t s_wait_unfrozen ;
3039 char s_id[32] ;
3040 u8 s_uuid[16] ;
3041 void *s_fs_info ;
3042 unsigned int s_max_links ;
3043 fmode_t s_mode ;
3044 u32 s_time_gran ;
3045 struct mutex s_vfs_rename_mutex ;
3046 char *s_subtype ;
3047 char *s_options ;
3048 struct dentry_operations *s_d_op ;
3049 int cleancache_poolid ;
3050 struct shrinker s_shrink ;
3051 atomic_long_t s_remove_count ;
3052 int s_readonly_remount ;
3053};
3054#line 1567 "include/linux/fs.h"
3055struct fiemap_extent_info {
3056 unsigned int fi_flags ;
3057 unsigned int fi_extents_mapped ;
3058 unsigned int fi_extents_max ;
3059 struct fiemap_extent *fi_extents_start ;
3060};
3061#line 1601
3062struct block_device_operations;
3063#line 1609 "include/linux/fs.h"
3064struct file_operations {
3065 struct module *owner ;
3066 loff_t (*llseek)(struct file * , loff_t , int ) ;
3067 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
3068 ssize_t (*write)(struct file * , char * , size_t , loff_t * ) ;
3069 ssize_t (*aio_read)(struct kiocb * , struct iovec * , unsigned long ,
3070 loff_t ) ;
3071 ssize_t (*aio_write)(struct kiocb * , struct iovec * , unsigned long ,
3072 loff_t ) ;
3073 int (*readdir)(struct file * , void * , int (*)(void * , char * , int ,
3074 loff_t , u64 , unsigned int ) ) ;
3075 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
3076 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
3077 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
3078 int (*mmap)(struct file * , struct vm_area_struct * ) ;
3079 int (*open)(struct inode * , struct file * ) ;
3080 int (*flush)(struct file * , fl_owner_t id ) ;
3081 int (*release)(struct inode * , struct file * ) ;
3082 int (*fsync)(struct file * , loff_t , loff_t , int datasync ) ;
3083 int (*aio_fsync)(struct kiocb * , int datasync ) ;
3084 int (*fasync)(int , struct file * , int ) ;
3085 int (*lock)(struct file * , int , struct file_lock * ) ;
3086 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
3087 int ) ;
3088 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
3089 unsigned long , unsigned long ) ;
3090 int (*check_flags)(int ) ;
3091 int (*flock)(struct file * , int , struct file_lock * ) ;
3092 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
3093 unsigned int ) ;
3094 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
3095 unsigned int ) ;
3096 int (*setlease)(struct file * , long , struct file_lock ** ) ;
3097 long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
3098};
3099#line 1639 "include/linux/fs.h"
3100struct inode_operations {
3101 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
3102 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
3103 int (*permission)(struct inode * , int ) ;
3104 struct posix_acl *(*get_acl)(struct inode * , int ) ;
3105 int (*readlink)(struct dentry * , char * , int ) ;
3106 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
3107 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
3108 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
3109 int (*unlink)(struct inode * , struct dentry * ) ;
3110 int (*symlink)(struct inode * , struct dentry * , char * ) ;
3111 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
3112 int (*rmdir)(struct inode * , struct dentry * ) ;
3113 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
3114 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
3115 void (*truncate)(struct inode * ) ;
3116 int (*setattr)(struct dentry * , struct iattr * ) ;
3117 int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
3118 int (*setxattr)(struct dentry * , char * , void * , size_t , int ) ;
3119 ssize_t (*getxattr)(struct dentry * , char * , void * , size_t ) ;
3120 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
3121 int (*removexattr)(struct dentry * , char * ) ;
3122 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
3123 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
3124} __attribute__((__aligned__((1) << (6) ))) ;
3125#line 1684 "include/linux/fs.h"
3126struct super_operations {
3127 struct inode *(*alloc_inode)(struct super_block *sb ) ;
3128 void (*destroy_inode)(struct inode * ) ;
3129 void (*dirty_inode)(struct inode * , int flags ) ;
3130 int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
3131 int (*drop_inode)(struct inode * ) ;
3132 void (*evict_inode)(struct inode * ) ;
3133 void (*put_super)(struct super_block * ) ;
3134 void (*write_super)(struct super_block * ) ;
3135 int (*sync_fs)(struct super_block *sb , int wait ) ;
3136 int (*freeze_fs)(struct super_block * ) ;
3137 int (*unfreeze_fs)(struct super_block * ) ;
3138 int (*statfs)(struct dentry * , struct kstatfs * ) ;
3139 int (*remount_fs)(struct super_block * , int * , char * ) ;
3140 void (*umount_begin)(struct super_block * ) ;
3141 int (*show_options)(struct seq_file * , struct dentry * ) ;
3142 int (*show_devname)(struct seq_file * , struct dentry * ) ;
3143 int (*show_path)(struct seq_file * , struct dentry * ) ;
3144 int (*show_stats)(struct seq_file * , struct dentry * ) ;
3145 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
3146 ssize_t (*quota_write)(struct super_block * , int , char * , size_t ,
3147 loff_t ) ;
3148 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
3149 int (*nr_cached_objects)(struct super_block * ) ;
3150 void (*free_cached_objects)(struct super_block * , int ) ;
3151};
3152#line 1835 "include/linux/fs.h"
3153struct file_system_type {
3154 char *name ;
3155 int fs_flags ;
3156 struct dentry *(*mount)(struct file_system_type * , int , char * , void * ) ;
3157 void (*kill_sb)(struct super_block * ) ;
3158 struct module *owner ;
3159 struct file_system_type *next ;
3160 struct hlist_head fs_supers ;
3161 struct lock_class_key s_lock_key ;
3162 struct lock_class_key s_umount_key ;
3163 struct lock_class_key s_vfs_rename_key ;
3164 struct lock_class_key i_lock_key ;
3165 struct lock_class_key i_mutex_key ;
3166 struct lock_class_key i_mutex_dir_key ;
3167};
3168#line 82 "include/linux/genhd.h"
3169struct disk_stats {
3170 unsigned long sectors[2] ;
3171 unsigned long ios[2] ;
3172 unsigned long merges[2] ;
3173 unsigned long ticks[2] ;
3174 unsigned long io_ticks ;
3175 unsigned long time_in_queue ;
3176};
3177#line 94 "include/linux/genhd.h"
3178struct partition_meta_info {
3179 u8 uuid[16] ;
3180 u8 volname[64] ;
3181};
3182#line 99 "include/linux/genhd.h"
3183struct hd_struct {
3184 sector_t start_sect ;
3185 sector_t nr_sects ;
3186 sector_t alignment_offset ;
3187 unsigned int discard_alignment ;
3188 struct device __dev ;
3189 struct kobject *holder_dir ;
3190 int policy ;
3191 int partno ;
3192 struct partition_meta_info *info ;
3193 int make_it_fail ;
3194 unsigned long stamp ;
3195 atomic_t in_flight[2] ;
3196 struct disk_stats *dkstats ;
3197 atomic_t ref ;
3198 struct rcu_head rcu_head ;
3199};
3200#line 147 "include/linux/genhd.h"
3201struct disk_part_tbl {
3202 struct rcu_head rcu_head ;
3203 int len ;
3204 struct hd_struct *last_lookup ;
3205 struct hd_struct *part[] ;
3206};
3207#line 154
3208struct disk_events;
3209#line 156
3210struct timer_rand_state;
3211#line 156
3212struct blk_integrity;
3213#line 156 "include/linux/genhd.h"
3214struct gendisk {
3215 int major ;
3216 int first_minor ;
3217 int minors ;
3218 char disk_name[32] ;
3219 char *(*devnode)(struct gendisk *gd , umode_t *mode ) ;
3220 unsigned int events ;
3221 unsigned int async_events ;
3222 struct disk_part_tbl *part_tbl ;
3223 struct hd_struct part0 ;
3224 struct block_device_operations *fops ;
3225 struct request_queue *queue ;
3226 void *private_data ;
3227 int flags ;
3228 struct device *driverfs_dev ;
3229 struct kobject *slave_dir ;
3230 struct timer_rand_state *random ;
3231 atomic_t sync_io ;
3232 struct disk_events *ev ;
3233 struct blk_integrity *integrity ;
3234 int node_id ;
3235};
3236#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
3237struct exception_table_entry {
3238 unsigned long insn ;
3239 unsigned long fixup ;
3240};
3241#line 12 "include/linux/irqdesc.h"
3242struct proc_dir_entry;
3243#line 33 "include/linux/writeback.h"
3244enum writeback_sync_modes {
3245 WB_SYNC_NONE = 0,
3246 WB_SYNC_ALL = 1
3247} ;
3248#line 60 "include/linux/writeback.h"
3249struct writeback_control {
3250 enum writeback_sync_modes sync_mode ;
3251 long nr_to_write ;
3252 long pages_skipped ;
3253 loff_t range_start ;
3254 loff_t range_end ;
3255 unsigned int for_kupdate : 1 ;
3256 unsigned int for_background : 1 ;
3257 unsigned int tagged_writepages : 1 ;
3258 unsigned int for_reclaim : 1 ;
3259 unsigned int range_cyclic : 1 ;
3260};
3261#line 84
3262struct bdi_writeback;
3263#line 38 "include/linux/backing-dev.h"
3264typedef int congested_fn(void * , int );
3265#line 50 "include/linux/backing-dev.h"
3266struct bdi_writeback {
3267 struct backing_dev_info *bdi ;
3268 unsigned int nr ;
3269 unsigned long last_old_flush ;
3270 unsigned long last_active ;
3271 struct task_struct *task ;
3272 struct timer_list wakeup_timer ;
3273 struct list_head b_dirty ;
3274 struct list_head b_io ;
3275 struct list_head b_more_io ;
3276 spinlock_t list_lock ;
3277};
3278#line 65 "include/linux/backing-dev.h"
3279struct backing_dev_info {
3280 struct list_head bdi_list ;
3281 unsigned long ra_pages ;
3282 unsigned long state ;
3283 unsigned int capabilities ;
3284 congested_fn *congested_fn ;
3285 void *congested_data ;
3286 char *name ;
3287 struct percpu_counter bdi_stat[4] ;
3288 unsigned long bw_time_stamp ;
3289 unsigned long dirtied_stamp ;
3290 unsigned long written_stamp ;
3291 unsigned long write_bandwidth ;
3292 unsigned long avg_write_bandwidth ;
3293 unsigned long dirty_ratelimit ;
3294 unsigned long balanced_dirty_ratelimit ;
3295 struct prop_local_percpu completions ;
3296 int dirty_exceeded ;
3297 unsigned int min_ratio ;
3298 unsigned int max_ratio ;
3299 unsigned int max_prop_frac ;
3300 struct bdi_writeback wb ;
3301 spinlock_t wb_lock ;
3302 struct list_head work_list ;
3303 struct device *dev ;
3304 struct timer_list laptop_mode_wb_timer ;
3305 struct dentry *debug_dir ;
3306 struct dentry *debug_stats ;
3307};
3308#line 11 "include/linux/mempool.h"
3309typedef void *mempool_alloc_t(gfp_t gfp_mask , void *pool_data );
3310#line 12 "include/linux/mempool.h"
3311typedef void mempool_free_t(void *element , void *pool_data );
3312#line 14 "include/linux/mempool.h"
3313struct mempool_s {
3314 spinlock_t lock ;
3315 int min_nr ;
3316 int curr_nr ;
3317 void **elements ;
3318 void *pool_data ;
3319 mempool_alloc_t *alloc ;
3320 mempool_free_t *free ;
3321 wait_queue_head_t wait ;
3322};
3323#line 14 "include/linux/mempool.h"
3324typedef struct mempool_s mempool_t;
3325#line 75 "include/linux/iocontext.h"
3326union __anonunion____missing_field_name_256 {
3327 struct list_head q_node ;
3328 struct kmem_cache *__rcu_icq_cache ;
3329};
3330#line 75 "include/linux/iocontext.h"
3331union __anonunion____missing_field_name_257 {
3332 struct hlist_node ioc_node ;
3333 struct rcu_head __rcu_head ;
3334};
3335#line 75 "include/linux/iocontext.h"
3336struct io_cq {
3337 struct request_queue *q ;
3338 struct io_context *ioc ;
3339 union __anonunion____missing_field_name_256 __annonCompField47 ;
3340 union __anonunion____missing_field_name_257 __annonCompField48 ;
3341 unsigned int flags ;
3342};
3343#line 101 "include/linux/iocontext.h"
3344struct io_context {
3345 atomic_long_t refcount ;
3346 atomic_t nr_tasks ;
3347 spinlock_t lock ;
3348 unsigned short ioprio ;
3349 int nr_batch_requests ;
3350 unsigned long last_waited ;
3351 struct radix_tree_root icq_tree ;
3352 struct io_cq *icq_hint ;
3353 struct hlist_head icq_list ;
3354 struct work_struct release_work ;
3355};
3356#line 170 "include/linux/bio.h"
3357struct bio_integrity_payload {
3358 struct bio *bip_bio ;
3359 sector_t bip_sector ;
3360 void *bip_buf ;
3361 bio_end_io_t *bip_end_io ;
3362 unsigned int bip_size ;
3363 unsigned short bip_slab ;
3364 unsigned short bip_vcnt ;
3365 unsigned short bip_idx ;
3366 struct work_struct bip_work ;
3367 struct bio_vec bip_vec[0] ;
3368};
3369#line 374 "include/linux/bio.h"
3370struct bio_list {
3371 struct bio *head ;
3372 struct bio *tail ;
3373};
3374#line 67 "include/linux/bsg.h"
3375struct bsg_class_device {
3376 struct device *class_dev ;
3377 struct device *parent ;
3378 int minor ;
3379 struct request_queue *queue ;
3380 struct kref ref ;
3381 void (*release)(struct device * ) ;
3382};
3383#line 29 "include/linux/blkdev.h"
3384struct elevator_queue;
3385#line 32
3386struct request;
3387#line 34
3388struct bsg_job;
3389#line 40 "include/linux/blkdev.h"
3390typedef void rq_end_io_fn(struct request * , int );
3391#line 42 "include/linux/blkdev.h"
3392struct request_list {
3393 int count[2] ;
3394 int starved[2] ;
3395 int elvpriv ;
3396 mempool_t *rq_pool ;
3397 wait_queue_head_t wait[2] ;
3398};
3399#line 57
3400enum rq_cmd_type_bits {
3401 REQ_TYPE_FS = 1,
3402 REQ_TYPE_BLOCK_PC = 2,
3403 REQ_TYPE_SENSE = 3,
3404 REQ_TYPE_PM_SUSPEND = 4,
3405 REQ_TYPE_PM_RESUME = 5,
3406 REQ_TYPE_PM_SHUTDOWN = 6,
3407 REQ_TYPE_SPECIAL = 7,
3408 REQ_TYPE_ATA_TASKFILE = 8,
3409 REQ_TYPE_ATA_PC = 9
3410} ;
3411#line 81 "include/linux/blkdev.h"
3412union __anonunion____missing_field_name_260 {
3413 struct rb_node rb_node ;
3414 void *completion_data ;
3415};
3416#line 81 "include/linux/blkdev.h"
3417struct __anonstruct_elv_262 {
3418 struct io_cq *icq ;
3419 void *priv[2] ;
3420};
3421#line 81 "include/linux/blkdev.h"
3422struct __anonstruct_flush_263 {
3423 unsigned int seq ;
3424 struct list_head list ;
3425 rq_end_io_fn *saved_end_io ;
3426};
3427#line 81 "include/linux/blkdev.h"
3428union __anonunion____missing_field_name_261 {
3429 struct __anonstruct_elv_262 elv ;
3430 struct __anonstruct_flush_263 flush ;
3431};
3432#line 81 "include/linux/blkdev.h"
3433struct request {
3434 struct list_head queuelist ;
3435 struct call_single_data csd ;
3436 struct request_queue *q ;
3437 unsigned int cmd_flags ;
3438 enum rq_cmd_type_bits cmd_type ;
3439 unsigned long atomic_flags ;
3440 int cpu ;
3441 unsigned int __data_len ;
3442 sector_t __sector ;
3443 struct bio *bio ;
3444 struct bio *biotail ;
3445 struct hlist_node hash ;
3446 union __anonunion____missing_field_name_260 __annonCompField49 ;
3447 union __anonunion____missing_field_name_261 __annonCompField50 ;
3448 struct gendisk *rq_disk ;
3449 struct hd_struct *part ;
3450 unsigned long start_time ;
3451 unsigned short nr_phys_segments ;
3452 unsigned short nr_integrity_segments ;
3453 unsigned short ioprio ;
3454 int ref_count ;
3455 void *special ;
3456 char *buffer ;
3457 int tag ;
3458 int errors ;
3459 unsigned char __cmd[16] ;
3460 unsigned char *cmd ;
3461 unsigned short cmd_len ;
3462 unsigned int extra_len ;
3463 unsigned int sense_len ;
3464 unsigned int resid_len ;
3465 void *sense ;
3466 unsigned long deadline ;
3467 struct list_head timeout_list ;
3468 unsigned int timeout ;
3469 int retries ;
3470 rq_end_io_fn *end_io ;
3471 void *end_io_data ;
3472 struct request *next_rq ;
3473};
3474#line 10 "include/linux/elevator.h"
3475typedef int elevator_merge_fn(struct request_queue * , struct request ** , struct bio * );
3476#line 13 "include/linux/elevator.h"
3477typedef void elevator_merge_req_fn(struct request_queue * , struct request * , struct request * );
3478#line 15 "include/linux/elevator.h"
3479typedef void elevator_merged_fn(struct request_queue * , struct request * , int );
3480#line 17 "include/linux/elevator.h"
3481typedef int elevator_allow_merge_fn(struct request_queue * , struct request * , struct bio * );
3482#line 19 "include/linux/elevator.h"
3483typedef void elevator_bio_merged_fn(struct request_queue * , struct request * , struct bio * );
3484#line 22 "include/linux/elevator.h"
3485typedef int elevator_dispatch_fn(struct request_queue * , int );
3486#line 24 "include/linux/elevator.h"
3487typedef void elevator_add_req_fn(struct request_queue * , struct request * );
3488#line 25 "include/linux/elevator.h"
3489typedef struct request *elevator_request_list_fn(struct request_queue * , struct request * );
3490#line 26 "include/linux/elevator.h"
3491typedef void elevator_completed_req_fn(struct request_queue * , struct request * );
3492#line 27 "include/linux/elevator.h"
3493typedef int elevator_may_queue_fn(struct request_queue * , int );
3494#line 29 "include/linux/elevator.h"
3495typedef void elevator_init_icq_fn(struct io_cq * );
3496#line 30 "include/linux/elevator.h"
3497typedef void elevator_exit_icq_fn(struct io_cq * );
3498#line 31 "include/linux/elevator.h"
3499typedef int elevator_set_req_fn(struct request_queue * , struct request * , gfp_t );
3500#line 32 "include/linux/elevator.h"
3501typedef void elevator_put_req_fn(struct request * );
3502#line 33 "include/linux/elevator.h"
3503typedef void elevator_activate_req_fn(struct request_queue * , struct request * );
3504#line 34 "include/linux/elevator.h"
3505typedef void elevator_deactivate_req_fn(struct request_queue * , struct request * );
3506#line 36 "include/linux/elevator.h"
3507typedef void *elevator_init_fn(struct request_queue * );
3508#line 37 "include/linux/elevator.h"
3509typedef void elevator_exit_fn(struct elevator_queue * );
3510#line 39 "include/linux/elevator.h"
3511struct elevator_ops {
3512 elevator_merge_fn *elevator_merge_fn ;
3513 elevator_merged_fn *elevator_merged_fn ;
3514 elevator_merge_req_fn *elevator_merge_req_fn ;
3515 elevator_allow_merge_fn *elevator_allow_merge_fn ;
3516 elevator_bio_merged_fn *elevator_bio_merged_fn ;
3517 elevator_dispatch_fn *elevator_dispatch_fn ;
3518 elevator_add_req_fn *elevator_add_req_fn ;
3519 elevator_activate_req_fn *elevator_activate_req_fn ;
3520 elevator_deactivate_req_fn *elevator_deactivate_req_fn ;
3521 elevator_completed_req_fn *elevator_completed_req_fn ;
3522 elevator_request_list_fn *elevator_former_req_fn ;
3523 elevator_request_list_fn *elevator_latter_req_fn ;
3524 elevator_init_icq_fn *elevator_init_icq_fn ;
3525 elevator_exit_icq_fn *elevator_exit_icq_fn ;
3526 elevator_set_req_fn *elevator_set_req_fn ;
3527 elevator_put_req_fn *elevator_put_req_fn ;
3528 elevator_may_queue_fn *elevator_may_queue_fn ;
3529 elevator_init_fn *elevator_init_fn ;
3530 elevator_exit_fn *elevator_exit_fn ;
3531};
3532#line 71 "include/linux/elevator.h"
3533struct elv_fs_entry {
3534 struct attribute attr ;
3535 ssize_t (*show)(struct elevator_queue * , char * ) ;
3536 ssize_t (*store)(struct elevator_queue * , char * , size_t ) ;
3537};
3538#line 80 "include/linux/elevator.h"
3539struct elevator_type {
3540 struct kmem_cache *icq_cache ;
3541 struct elevator_ops ops ;
3542 size_t icq_size ;
3543 size_t icq_align ;
3544 struct elv_fs_entry *elevator_attrs ;
3545 char elevator_name[16] ;
3546 struct module *elevator_owner ;
3547 char icq_cache_name[21] ;
3548 struct list_head list ;
3549};
3550#line 101 "include/linux/elevator.h"
3551struct elevator_queue {
3552 struct elevator_type *type ;
3553 void *elevator_data ;
3554 struct kobject kobj ;
3555 struct mutex sysfs_lock ;
3556 struct hlist_head *hash ;
3557 unsigned int registered : 1 ;
3558};
3559#line 202 "include/linux/blkdev.h"
3560typedef void request_fn_proc(struct request_queue *q );
3561#line 203 "include/linux/blkdev.h"
3562typedef void make_request_fn(struct request_queue *q , struct bio *bio );
3563#line 204 "include/linux/blkdev.h"
3564typedef int prep_rq_fn(struct request_queue * , struct request * );
3565#line 205 "include/linux/blkdev.h"
3566typedef void unprep_rq_fn(struct request_queue * , struct request * );
3567#line 208 "include/linux/blkdev.h"
3568struct bvec_merge_data {
3569 struct block_device *bi_bdev ;
3570 sector_t bi_sector ;
3571 unsigned int bi_size ;
3572 unsigned long bi_rw ;
3573};
3574#line 214 "include/linux/blkdev.h"
3575typedef int merge_bvec_fn(struct request_queue * , struct bvec_merge_data * , struct bio_vec * );
3576#line 216 "include/linux/blkdev.h"
3577typedef void softirq_done_fn(struct request * );
3578#line 217 "include/linux/blkdev.h"
3579typedef int dma_drain_needed_fn(struct request * );
3580#line 218 "include/linux/blkdev.h"
3581typedef int lld_busy_fn(struct request_queue *q );
3582#line 219 "include/linux/blkdev.h"
3583typedef int bsg_job_fn(struct bsg_job * );
3584#line 221
3585enum blk_eh_timer_return {
3586 BLK_EH_NOT_HANDLED = 0,
3587 BLK_EH_HANDLED = 1,
3588 BLK_EH_RESET_TIMER = 2
3589} ;
3590#line 227 "include/linux/blkdev.h"
3591typedef enum blk_eh_timer_return rq_timed_out_fn(struct request * );
3592#line 234 "include/linux/blkdev.h"
3593struct blk_queue_tag {
3594 struct request **tag_index ;
3595 unsigned long *tag_map ;
3596 int busy ;
3597 int max_depth ;
3598 int real_max_depth ;
3599 atomic_t refcnt ;
3600};
3601#line 246 "include/linux/blkdev.h"
3602struct queue_limits {
3603 unsigned long bounce_pfn ;
3604 unsigned long seg_boundary_mask ;
3605 unsigned int max_hw_sectors ;
3606 unsigned int max_sectors ;
3607 unsigned int max_segment_size ;
3608 unsigned int physical_block_size ;
3609 unsigned int alignment_offset ;
3610 unsigned int io_min ;
3611 unsigned int io_opt ;
3612 unsigned int max_discard_sectors ;
3613 unsigned int discard_granularity ;
3614 unsigned int discard_alignment ;
3615 unsigned short logical_block_size ;
3616 unsigned short max_segments ;
3617 unsigned short max_integrity_segments ;
3618 unsigned char misaligned ;
3619 unsigned char discard_misaligned ;
3620 unsigned char cluster ;
3621 unsigned char discard_zeroes_data ;
3622};
3623#line 271 "include/linux/blkdev.h"
3624struct request_queue {
3625 struct list_head queue_head ;
3626 struct request *last_merge ;
3627 struct elevator_queue *elevator ;
3628 struct request_list rq ;
3629 request_fn_proc *request_fn ;
3630 make_request_fn *make_request_fn ;
3631 prep_rq_fn *prep_rq_fn ;
3632 unprep_rq_fn *unprep_rq_fn ;
3633 merge_bvec_fn *merge_bvec_fn ;
3634 softirq_done_fn *softirq_done_fn ;
3635 rq_timed_out_fn *rq_timed_out_fn ;
3636 dma_drain_needed_fn *dma_drain_needed ;
3637 lld_busy_fn *lld_busy_fn ;
3638 sector_t end_sector ;
3639 struct request *boundary_rq ;
3640 struct delayed_work delay_work ;
3641 struct backing_dev_info backing_dev_info ;
3642 void *queuedata ;
3643 unsigned long queue_flags ;
3644 int id ;
3645 gfp_t bounce_gfp ;
3646 spinlock_t __queue_lock ;
3647 spinlock_t *queue_lock ;
3648 struct kobject kobj ;
3649 unsigned long nr_requests ;
3650 unsigned int nr_congestion_on ;
3651 unsigned int nr_congestion_off ;
3652 unsigned int nr_batching ;
3653 unsigned int dma_drain_size ;
3654 void *dma_drain_buffer ;
3655 unsigned int dma_pad_mask ;
3656 unsigned int dma_alignment ;
3657 struct blk_queue_tag *queue_tags ;
3658 struct list_head tag_busy_list ;
3659 unsigned int nr_sorted ;
3660 unsigned int in_flight[2] ;
3661 unsigned int rq_timeout ;
3662 struct timer_list timeout ;
3663 struct list_head timeout_list ;
3664 struct list_head icq_list ;
3665 struct queue_limits limits ;
3666 unsigned int sg_timeout ;
3667 unsigned int sg_reserved_size ;
3668 int node ;
3669 unsigned int flush_flags ;
3670 unsigned int flush_not_queueable : 1 ;
3671 unsigned int flush_queue_delayed : 1 ;
3672 unsigned int flush_pending_idx : 1 ;
3673 unsigned int flush_running_idx : 1 ;
3674 unsigned long flush_pending_since ;
3675 struct list_head flush_queue[2] ;
3676 struct list_head flush_data_in_flight ;
3677 struct request flush_rq ;
3678 struct mutex sysfs_lock ;
3679 bsg_job_fn *bsg_job_fn ;
3680 int bsg_job_size ;
3681 struct bsg_class_device bsg_dev ;
3682};
3683#line 889 "include/linux/blkdev.h"
3684struct blk_plug {
3685 unsigned long magic ;
3686 struct list_head list ;
3687 struct list_head cb_list ;
3688 unsigned int should_sort ;
3689};
3690#line 1220 "include/linux/blkdev.h"
3691struct blk_integrity_exchg {
3692 void *prot_buf ;
3693 void *data_buf ;
3694 sector_t sector ;
3695 unsigned int data_size ;
3696 unsigned short sector_size ;
3697 char *disk_name ;
3698};
3699#line 1229 "include/linux/blkdev.h"
3700typedef void integrity_gen_fn(struct blk_integrity_exchg * );
3701#line 1230 "include/linux/blkdev.h"
3702typedef int integrity_vrfy_fn(struct blk_integrity_exchg * );
3703#line 1231 "include/linux/blkdev.h"
3704typedef void integrity_set_tag_fn(void * , void * , unsigned int );
3705#line 1232 "include/linux/blkdev.h"
3706typedef void integrity_get_tag_fn(void * , void * , unsigned int );
3707#line 1234 "include/linux/blkdev.h"
3708struct blk_integrity {
3709 integrity_gen_fn *generate_fn ;
3710 integrity_vrfy_fn *verify_fn ;
3711 integrity_set_tag_fn *set_tag_fn ;
3712 integrity_get_tag_fn *get_tag_fn ;
3713 unsigned short flags ;
3714 unsigned short tuple_size ;
3715 unsigned short sector_size ;
3716 unsigned short tag_size ;
3717 char *name ;
3718 struct kobject kobj ;
3719};
3720#line 1362 "include/linux/blkdev.h"
3721struct block_device_operations {
3722 int (*open)(struct block_device * , fmode_t ) ;
3723 int (*release)(struct gendisk * , fmode_t ) ;
3724 int (*ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
3725 int (*compat_ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
3726 int (*direct_access)(struct block_device * , sector_t , void ** , unsigned long * ) ;
3727 unsigned int (*check_events)(struct gendisk *disk , unsigned int clearing ) ;
3728 int (*media_changed)(struct gendisk * ) ;
3729 void (*unlock_native_capacity)(struct gendisk * ) ;
3730 int (*revalidate_disk)(struct gendisk * ) ;
3731 int (*getgeo)(struct block_device * , struct hd_geometry * ) ;
3732 void (*swap_slot_free_notify)(struct block_device * , unsigned long ) ;
3733 struct module *owner ;
3734};
3735#line 11 "include/scsi/scsi_cmnd.h"
3736struct Scsi_Host;
3737#line 12
3738struct scsi_device;
3739#line 32 "include/scsi/scsi_cmnd.h"
3740struct scsi_data_buffer {
3741 struct sg_table table ;
3742 unsigned int length ;
3743 int resid ;
3744};
3745#line 39 "include/scsi/scsi_cmnd.h"
3746struct scsi_pointer {
3747 char *ptr ;
3748 int this_residual ;
3749 struct scatterlist *buffer ;
3750 int buffers_residual ;
3751 dma_addr_t dma_handle ;
3752 int volatile Status ;
3753 int volatile Message ;
3754 int volatile have_data_in ;
3755 int volatile sent_command ;
3756 int volatile phase ;
3757};
3758#line 54 "include/scsi/scsi_cmnd.h"
3759struct scsi_cmnd {
3760 struct scsi_device *device ;
3761 struct list_head list ;
3762 struct list_head eh_entry ;
3763 int eh_eflags ;
3764 unsigned long serial_number ;
3765 unsigned long jiffies_at_alloc ;
3766 int retries ;
3767 int allowed ;
3768 unsigned char prot_op ;
3769 unsigned char prot_type ;
3770 unsigned short cmd_len ;
3771 enum dma_data_direction sc_data_direction ;
3772 unsigned char *cmnd ;
3773 struct scsi_data_buffer sdb ;
3774 struct scsi_data_buffer *prot_sdb ;
3775 unsigned int underflow ;
3776 unsigned int transfersize ;
3777 struct request *request ;
3778 unsigned char *sense_buffer ;
3779 void (*scsi_done)(struct scsi_cmnd * ) ;
3780 struct scsi_pointer SCp ;
3781 unsigned char *host_scribble ;
3782 int result ;
3783 unsigned char tag ;
3784};
3785#line 15 "include/scsi/scsi_device.h"
3786struct scsi_sense_hdr;
3787#line 31
3788enum scsi_device_state {
3789 SDEV_CREATED = 1,
3790 SDEV_RUNNING = 2,
3791 SDEV_CANCEL = 3,
3792 SDEV_DEL = 4,
3793 SDEV_QUIESCE = 5,
3794 SDEV_OFFLINE = 6,
3795 SDEV_BLOCK = 7,
3796 SDEV_CREATED_BLOCK = 8
3797} ;
3798#line 68
3799struct scsi_target;
3800#line 68
3801struct scsi_dh_data;
3802#line 68 "include/scsi/scsi_device.h"
3803struct scsi_device {
3804 struct Scsi_Host *host ;
3805 struct request_queue *request_queue ;
3806 struct list_head siblings ;
3807 struct list_head same_target_siblings ;
3808 unsigned int device_busy ;
3809 spinlock_t list_lock ;
3810 struct list_head cmd_list ;
3811 struct list_head starved_entry ;
3812 struct scsi_cmnd *current_cmnd ;
3813 unsigned short queue_depth ;
3814 unsigned short max_queue_depth ;
3815 unsigned short last_queue_full_depth ;
3816 unsigned short last_queue_full_count ;
3817 unsigned long last_queue_full_time ;
3818 unsigned long queue_ramp_up_period ;
3819 unsigned long last_queue_ramp_up ;
3820 unsigned int id ;
3821 unsigned int lun ;
3822 unsigned int channel ;
3823 unsigned int manufacturer ;
3824 unsigned int sector_size ;
3825 void *hostdata ;
3826 char type ;
3827 char scsi_level ;
3828 char inq_periph_qual ;
3829 unsigned char inquiry_len ;
3830 unsigned char *inquiry ;
3831 char *vendor ;
3832 char *model ;
3833 char *rev ;
3834 unsigned char current_tag ;
3835 struct scsi_target *sdev_target ;
3836 unsigned int sdev_bflags ;
3837 unsigned int writeable : 1 ;
3838 unsigned int removable : 1 ;
3839 unsigned int changed : 1 ;
3840 unsigned int busy : 1 ;
3841 unsigned int lockable : 1 ;
3842 unsigned int locked : 1 ;
3843 unsigned int borken : 1 ;
3844 unsigned int disconnect : 1 ;
3845 unsigned int soft_reset : 1 ;
3846 unsigned int sdtr : 1 ;
3847 unsigned int wdtr : 1 ;
3848 unsigned int ppr : 1 ;
3849 unsigned int tagged_supported : 1 ;
3850 unsigned int simple_tags : 1 ;
3851 unsigned int ordered_tags : 1 ;
3852 unsigned int was_reset : 1 ;
3853 unsigned int expecting_cc_ua : 1 ;
3854 unsigned int use_10_for_rw : 1 ;
3855 unsigned int use_10_for_ms : 1 ;
3856 unsigned int skip_ms_page_8 : 1 ;
3857 unsigned int skip_ms_page_3f : 1 ;
3858 unsigned int skip_vpd_pages : 1 ;
3859 unsigned int use_192_bytes_for_3f : 1 ;
3860 unsigned int no_start_on_add : 1 ;
3861 unsigned int allow_restart : 1 ;
3862 unsigned int manage_start_stop : 1 ;
3863 unsigned int start_stop_pwr_cond : 1 ;
3864 unsigned int no_uld_attach : 1 ;
3865 unsigned int select_no_atn : 1 ;
3866 unsigned int fix_capacity : 1 ;
3867 unsigned int guess_capacity : 1 ;
3868 unsigned int retry_hwerror : 1 ;
3869 unsigned int last_sector_bug : 1 ;
3870 unsigned int no_read_disc_info : 1 ;
3871 unsigned int no_read_capacity_16 : 1 ;
3872 unsigned int is_visible : 1 ;
3873 unsigned long supported_events[((2UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
3874 struct list_head event_list ;
3875 struct work_struct event_work ;
3876 unsigned int device_blocked ;
3877 unsigned int max_device_blocked ;
3878 atomic_t iorequest_cnt ;
3879 atomic_t iodone_cnt ;
3880 atomic_t ioerr_cnt ;
3881 struct device sdev_gendev ;
3882 struct device sdev_dev ;
3883 struct execute_work ew ;
3884 struct work_struct requeue_work ;
3885 struct scsi_dh_data *scsi_dh_data ;
3886 enum scsi_device_state sdev_state ;
3887 unsigned long sdev_data[0] ;
3888} __attribute__((__aligned__(sizeof(unsigned long )))) ;
3889#line 180 "include/scsi/scsi_device.h"
3890struct scsi_dh_devlist {
3891 char *vendor ;
3892 char *model ;
3893};
3894#line 186 "include/scsi/scsi_device.h"
3895struct scsi_device_handler {
3896 struct list_head list ;
3897 struct module *module ;
3898 char *name ;
3899 struct scsi_dh_devlist *devlist ;
3900 int (*check_sense)(struct scsi_device * , struct scsi_sense_hdr * ) ;
3901 int (*attach)(struct scsi_device * ) ;
3902 void (*detach)(struct scsi_device * ) ;
3903 int (*activate)(struct scsi_device * , void (*)(void * , int ) , void * ) ;
3904 int (*prep_fn)(struct scsi_device * , struct request * ) ;
3905 int (*set_params)(struct scsi_device * , char * ) ;
3906 bool (*match)(struct scsi_device * ) ;
3907};
3908#line 203 "include/scsi/scsi_device.h"
3909struct scsi_dh_data {
3910 struct scsi_device_handler *scsi_dh ;
3911 struct scsi_device *sdev ;
3912 struct kref kref ;
3913 char buf[0] ;
3914};
3915#line 226
3916enum scsi_target_state {
3917 STARGET_CREATED = 1,
3918 STARGET_RUNNING = 2,
3919 STARGET_DEL = 3
3920} ;
3921#line 237 "include/scsi/scsi_device.h"
3922struct scsi_target {
3923 struct scsi_device *starget_sdev_user ;
3924 struct list_head siblings ;
3925 struct list_head devices ;
3926 struct device dev ;
3927 unsigned int reap_ref ;
3928 unsigned int channel ;
3929 unsigned int id ;
3930 unsigned int create : 1 ;
3931 unsigned int single_lun : 1 ;
3932 unsigned int pdt_1f_for_no_lun : 1 ;
3933 unsigned int no_report_luns : 1 ;
3934 unsigned int target_busy ;
3935 unsigned int can_queue ;
3936 unsigned int target_blocked ;
3937 unsigned int max_target_blocked ;
3938 char scsi_level ;
3939 struct execute_work ew ;
3940 enum scsi_target_state state ;
3941 void *hostdata ;
3942 unsigned long starget_data[0] ;
3943} __attribute__((__aligned__(sizeof(unsigned long )))) ;
3944#line 19 "include/scsi/scsi_eh.h"
3945struct scsi_sense_hdr {
3946 u8 response_code ;
3947 u8 sense_key ;
3948 u8 asc ;
3949 u8 ascq ;
3950 u8 byte4 ;
3951 u8 byte5 ;
3952 u8 byte6 ;
3953 u8 additional_length ;
3954};
3955#line 219 "include/linux/mod_devicetable.h"
3956struct of_device_id {
3957 char name[32] ;
3958 char type[32] ;
3959 char compatible[128] ;
3960 void *data ;
3961};
3962#line 177 "include/linux/usb/ch9.h"
3963struct usb_ctrlrequest {
3964 __u8 bRequestType ;
3965 __u8 bRequest ;
3966 __le16 wValue ;
3967 __le16 wIndex ;
3968 __le16 wLength ;
3969} __attribute__((__packed__)) ;
3970#line 250 "include/linux/usb/ch9.h"
3971struct usb_device_descriptor {
3972 __u8 bLength ;
3973 __u8 bDescriptorType ;
3974 __le16 bcdUSB ;
3975 __u8 bDeviceClass ;
3976 __u8 bDeviceSubClass ;
3977 __u8 bDeviceProtocol ;
3978 __u8 bMaxPacketSize0 ;
3979 __le16 idVendor ;
3980 __le16 idProduct ;
3981 __le16 bcdDevice ;
3982 __u8 iManufacturer ;
3983 __u8 iProduct ;
3984 __u8 iSerialNumber ;
3985 __u8 bNumConfigurations ;
3986} __attribute__((__packed__)) ;
3987#line 306 "include/linux/usb/ch9.h"
3988struct usb_config_descriptor {
3989 __u8 bLength ;
3990 __u8 bDescriptorType ;
3991 __le16 wTotalLength ;
3992 __u8 bNumInterfaces ;
3993 __u8 bConfigurationValue ;
3994 __u8 iConfiguration ;
3995 __u8 bmAttributes ;
3996 __u8 bMaxPower ;
3997} __attribute__((__packed__)) ;
3998#line 343 "include/linux/usb/ch9.h"
3999struct usb_interface_descriptor {
4000 __u8 bLength ;
4001 __u8 bDescriptorType ;
4002 __u8 bInterfaceNumber ;
4003 __u8 bAlternateSetting ;
4004 __u8 bNumEndpoints ;
4005 __u8 bInterfaceClass ;
4006 __u8 bInterfaceSubClass ;
4007 __u8 bInterfaceProtocol ;
4008 __u8 iInterface ;
4009} __attribute__((__packed__)) ;
4010#line 361 "include/linux/usb/ch9.h"
4011struct usb_endpoint_descriptor {
4012 __u8 bLength ;
4013 __u8 bDescriptorType ;
4014 __u8 bEndpointAddress ;
4015 __u8 bmAttributes ;
4016 __le16 wMaxPacketSize ;
4017 __u8 bInterval ;
4018 __u8 bRefresh ;
4019 __u8 bSynchAddress ;
4020} __attribute__((__packed__)) ;
4021#line 598 "include/linux/usb/ch9.h"
4022struct usb_ss_ep_comp_descriptor {
4023 __u8 bLength ;
4024 __u8 bDescriptorType ;
4025 __u8 bMaxBurst ;
4026 __u8 bmAttributes ;
4027 __le16 wBytesPerInterval ;
4028} __attribute__((__packed__)) ;
4029#line 677 "include/linux/usb/ch9.h"
4030struct usb_interface_assoc_descriptor {
4031 __u8 bLength ;
4032 __u8 bDescriptorType ;
4033 __u8 bFirstInterface ;
4034 __u8 bInterfaceCount ;
4035 __u8 bFunctionClass ;
4036 __u8 bFunctionSubClass ;
4037 __u8 bFunctionProtocol ;
4038 __u8 iFunction ;
4039} __attribute__((__packed__)) ;
4040#line 737 "include/linux/usb/ch9.h"
4041struct usb_bos_descriptor {
4042 __u8 bLength ;
4043 __u8 bDescriptorType ;
4044 __le16 wTotalLength ;
4045 __u8 bNumDeviceCaps ;
4046} __attribute__((__packed__)) ;
4047#line 786 "include/linux/usb/ch9.h"
4048struct usb_ext_cap_descriptor {
4049 __u8 bLength ;
4050 __u8 bDescriptorType ;
4051 __u8 bDevCapabilityType ;
4052 __le32 bmAttributes ;
4053} __attribute__((__packed__)) ;
4054#line 806 "include/linux/usb/ch9.h"
4055struct usb_ss_cap_descriptor {
4056 __u8 bLength ;
4057 __u8 bDescriptorType ;
4058 __u8 bDevCapabilityType ;
4059 __u8 bmAttributes ;
4060 __le16 wSpeedSupported ;
4061 __u8 bFunctionalitySupport ;
4062 __u8 bU1devExitLat ;
4063 __le16 bU2DevExitLat ;
4064} __attribute__((__packed__)) ;
4065#line 829 "include/linux/usb/ch9.h"
4066struct usb_ss_container_id_descriptor {
4067 __u8 bLength ;
4068 __u8 bDescriptorType ;
4069 __u8 bDevCapabilityType ;
4070 __u8 bReserved ;
4071 __u8 ContainerID[16] ;
4072} __attribute__((__packed__)) ;
4073#line 891
4074enum usb_device_speed {
4075 USB_SPEED_UNKNOWN = 0,
4076 USB_SPEED_LOW = 1,
4077 USB_SPEED_FULL = 2,
4078 USB_SPEED_HIGH = 3,
4079 USB_SPEED_WIRELESS = 4,
4080 USB_SPEED_SUPER = 5
4081} ;
4082#line 911
4083enum usb_device_state {
4084 USB_STATE_NOTATTACHED = 0,
4085 USB_STATE_ATTACHED = 1,
4086 USB_STATE_POWERED = 2,
4087 USB_STATE_RECONNECTING = 3,
4088 USB_STATE_UNAUTHENTICATED = 4,
4089 USB_STATE_DEFAULT = 5,
4090 USB_STATE_ADDRESS = 6,
4091 USB_STATE_CONFIGURED = 7,
4092 USB_STATE_SUSPENDED = 8
4093} ;
4094#line 25 "include/linux/usb.h"
4095struct usb_device;
4096#line 27
4097struct wusb_dev;
4098#line 47
4099struct ep_device;
4100#line 64 "include/linux/usb.h"
4101struct usb_host_endpoint {
4102 struct usb_endpoint_descriptor desc ;
4103 struct usb_ss_ep_comp_descriptor ss_ep_comp ;
4104 struct list_head urb_list ;
4105 void *hcpriv ;
4106 struct ep_device *ep_dev ;
4107 unsigned char *extra ;
4108 int extralen ;
4109 int enabled ;
4110};
4111#line 77 "include/linux/usb.h"
4112struct usb_host_interface {
4113 struct usb_interface_descriptor desc ;
4114 struct usb_host_endpoint *endpoint ;
4115 char *string ;
4116 unsigned char *extra ;
4117 int extralen ;
4118};
4119#line 90
4120enum usb_interface_condition {
4121 USB_INTERFACE_UNBOUND = 0,
4122 USB_INTERFACE_BINDING = 1,
4123 USB_INTERFACE_BOUND = 2,
4124 USB_INTERFACE_UNBINDING = 3
4125} ;
4126#line 159 "include/linux/usb.h"
4127struct usb_interface {
4128 struct usb_host_interface *altsetting ;
4129 struct usb_host_interface *cur_altsetting ;
4130 unsigned int num_altsetting ;
4131 struct usb_interface_assoc_descriptor *intf_assoc ;
4132 int minor ;
4133 enum usb_interface_condition condition ;
4134 unsigned int sysfs_files_created : 1 ;
4135 unsigned int ep_devs_created : 1 ;
4136 unsigned int unregistering : 1 ;
4137 unsigned int needs_remote_wakeup : 1 ;
4138 unsigned int needs_altsetting0 : 1 ;
4139 unsigned int needs_binding : 1 ;
4140 unsigned int reset_running : 1 ;
4141 unsigned int resetting_device : 1 ;
4142 struct device dev ;
4143 struct device *usb_dev ;
4144 atomic_t pm_usage_cnt ;
4145 struct work_struct reset_ws ;
4146};
4147#line 222 "include/linux/usb.h"
4148struct usb_interface_cache {
4149 unsigned int num_altsetting ;
4150 struct kref ref ;
4151 struct usb_host_interface altsetting[0] ;
4152};
4153#line 274 "include/linux/usb.h"
4154struct usb_host_config {
4155 struct usb_config_descriptor desc ;
4156 char *string ;
4157 struct usb_interface_assoc_descriptor *intf_assoc[16] ;
4158 struct usb_interface *interface[32] ;
4159 struct usb_interface_cache *intf_cache[32] ;
4160 unsigned char *extra ;
4161 int extralen ;
4162};
4163#line 296 "include/linux/usb.h"
4164struct usb_host_bos {
4165 struct usb_bos_descriptor *desc ;
4166 struct usb_ext_cap_descriptor *ext_cap ;
4167 struct usb_ss_cap_descriptor *ss_cap ;
4168 struct usb_ss_container_id_descriptor *ss_id ;
4169};
4170#line 315 "include/linux/usb.h"
4171struct usb_devmap {
4172 unsigned long devicemap[128UL / (8UL * sizeof(unsigned long ))] ;
4173};
4174#line 322
4175struct mon_bus;
4176#line 322 "include/linux/usb.h"
4177struct usb_bus {
4178 struct device *controller ;
4179 int busnum ;
4180 char *bus_name ;
4181 u8 uses_dma ;
4182 u8 uses_pio_for_control ;
4183 u8 otg_port ;
4184 unsigned int is_b_host : 1 ;
4185 unsigned int b_hnp_enable : 1 ;
4186 unsigned int sg_tablesize ;
4187 int devnum_next ;
4188 struct usb_devmap devmap ;
4189 struct usb_device *root_hub ;
4190 struct usb_bus *hs_companion ;
4191 struct list_head bus_list ;
4192 int bandwidth_allocated ;
4193 int bandwidth_int_reqs ;
4194 int bandwidth_isoc_reqs ;
4195 struct dentry *usbfs_dentry ;
4196 struct mon_bus *mon_bus ;
4197 int monitored ;
4198};
4199#line 377
4200struct usb_tt;
4201#line 379
4202enum usb_device_removable {
4203 USB_DEVICE_REMOVABLE_UNKNOWN = 0,
4204 USB_DEVICE_REMOVABLE = 1,
4205 USB_DEVICE_FIXED = 2
4206} ;
4207#line 447 "include/linux/usb.h"
4208struct usb_device {
4209 int devnum ;
4210 char devpath[16] ;
4211 u32 route ;
4212 enum usb_device_state state ;
4213 enum usb_device_speed speed ;
4214 struct usb_tt *tt ;
4215 int ttport ;
4216 unsigned int toggle[2] ;
4217 struct usb_device *parent ;
4218 struct usb_bus *bus ;
4219 struct usb_host_endpoint ep0 ;
4220 struct device dev ;
4221 struct usb_device_descriptor descriptor ;
4222 struct usb_host_bos *bos ;
4223 struct usb_host_config *config ;
4224 struct usb_host_config *actconfig ;
4225 struct usb_host_endpoint *ep_in[16] ;
4226 struct usb_host_endpoint *ep_out[16] ;
4227 char **rawdescriptors ;
4228 unsigned short bus_mA ;
4229 u8 portnum ;
4230 u8 level ;
4231 unsigned int can_submit : 1 ;
4232 unsigned int persist_enabled : 1 ;
4233 unsigned int have_langid : 1 ;
4234 unsigned int authorized : 1 ;
4235 unsigned int authenticated : 1 ;
4236 unsigned int wusb : 1 ;
4237 unsigned int lpm_capable : 1 ;
4238 unsigned int usb2_hw_lpm_capable : 1 ;
4239 unsigned int usb2_hw_lpm_enabled : 1 ;
4240 int string_langid ;
4241 char *product ;
4242 char *manufacturer ;
4243 char *serial ;
4244 struct list_head filelist ;
4245 struct device *usb_classdev ;
4246 struct dentry *usbfs_dentry ;
4247 int maxchild ;
4248 struct usb_device **children ;
4249 u32 quirks ;
4250 atomic_t urbnum ;
4251 unsigned long active_duration ;
4252 unsigned long connect_time ;
4253 unsigned int do_remote_wakeup : 1 ;
4254 unsigned int reset_resume : 1 ;
4255 struct wusb_dev *wusb_dev ;
4256 int slot_id ;
4257 enum usb_device_removable removable ;
4258};
4259#line 1022 "include/linux/usb.h"
4260struct usb_iso_packet_descriptor {
4261 unsigned int offset ;
4262 unsigned int length ;
4263 unsigned int actual_length ;
4264 int status ;
4265};
4266#line 1029
4267struct urb;
4268#line 1031 "include/linux/usb.h"
4269struct usb_anchor {
4270 struct list_head urb_list ;
4271 wait_queue_head_t wait ;
4272 spinlock_t lock ;
4273 unsigned int poisoned : 1 ;
4274};
4275#line 1223 "include/linux/usb.h"
4276struct urb {
4277 struct kref kref ;
4278 void *hcpriv ;
4279 atomic_t use_count ;
4280 atomic_t reject ;
4281 int unlinked ;
4282 struct list_head urb_list ;
4283 struct list_head anchor_list ;
4284 struct usb_anchor *anchor ;
4285 struct usb_device *dev ;
4286 struct usb_host_endpoint *ep ;
4287 unsigned int pipe ;
4288 unsigned int stream_id ;
4289 int status ;
4290 unsigned int transfer_flags ;
4291 void *transfer_buffer ;
4292 dma_addr_t transfer_dma ;
4293 struct scatterlist *sg ;
4294 int num_mapped_sgs ;
4295 int num_sgs ;
4296 u32 transfer_buffer_length ;
4297 u32 actual_length ;
4298 unsigned char *setup_packet ;
4299 dma_addr_t setup_dma ;
4300 int start_frame ;
4301 int number_of_packets ;
4302 int interval ;
4303 int error_count ;
4304 void *context ;
4305 void (*complete)(struct urb * ) ;
4306 struct usb_iso_packet_descriptor iso_frame_desc[0] ;
4307};
4308#line 1495 "include/linux/usb.h"
4309struct usb_sg_request {
4310 int status ;
4311 size_t bytes ;
4312 spinlock_t lock ;
4313 struct usb_device *dev ;
4314 int pipe ;
4315 int entries ;
4316 struct urb **urbs ;
4317 int count ;
4318 struct completion complete ;
4319};
4320#line 19 "include/scsi/scsi_host.h"
4321struct scsi_host_cmd_pool;
4322#line 20
4323struct scsi_transport_template;
4324#line 52 "include/scsi/scsi_host.h"
4325struct scsi_host_template {
4326 struct module *module ;
4327 char *name ;
4328 int (*detect)(struct scsi_host_template * ) ;
4329 int (*release)(struct Scsi_Host * ) ;
4330 char *(*info)(struct Scsi_Host * ) ;
4331 int (*ioctl)(struct scsi_device *dev , int cmd , void *arg ) ;
4332 int (*compat_ioctl)(struct scsi_device *dev , int cmd , void *arg ) ;
4333 int (*queuecommand)(struct Scsi_Host * , struct scsi_cmnd * ) ;
4334 int (*transfer_response)(struct scsi_cmnd * , void (*done)(struct scsi_cmnd * ) ) ;
4335 int (*eh_abort_handler)(struct scsi_cmnd * ) ;
4336 int (*eh_device_reset_handler)(struct scsi_cmnd * ) ;
4337 int (*eh_target_reset_handler)(struct scsi_cmnd * ) ;
4338 int (*eh_bus_reset_handler)(struct scsi_cmnd * ) ;
4339 int (*eh_host_reset_handler)(struct scsi_cmnd * ) ;
4340 int (*slave_alloc)(struct scsi_device * ) ;
4341 int (*slave_configure)(struct scsi_device * ) ;
4342 void (*slave_destroy)(struct scsi_device * ) ;
4343 int (*target_alloc)(struct scsi_target * ) ;
4344 void (*target_destroy)(struct scsi_target * ) ;
4345 int (*scan_finished)(struct Scsi_Host * , unsigned long ) ;
4346 void (*scan_start)(struct Scsi_Host * ) ;
4347 int (*change_queue_depth)(struct scsi_device * , int , int ) ;
4348 int (*change_queue_type)(struct scsi_device * , int ) ;
4349 int (*bios_param)(struct scsi_device * , struct block_device * , sector_t , int * ) ;
4350 void (*unlock_native_capacity)(struct scsi_device * ) ;
4351 int (*proc_info)(struct Scsi_Host * , char * , char ** , off_t , int , int ) ;
4352 enum blk_eh_timer_return (*eh_timed_out)(struct scsi_cmnd * ) ;
4353 int (*host_reset)(struct Scsi_Host *shost , int reset_type ) ;
4354 char *proc_name ;
4355 struct proc_dir_entry *proc_dir ;
4356 int can_queue ;
4357 int this_id ;
4358 unsigned short sg_tablesize ;
4359 unsigned short sg_prot_tablesize ;
4360 unsigned short max_sectors ;
4361 unsigned long dma_boundary ;
4362 short cmd_per_lun ;
4363 unsigned char present ;
4364 unsigned int supported_mode : 2 ;
4365 unsigned int unchecked_isa_dma : 1 ;
4366 unsigned int use_clustering : 1 ;
4367 unsigned int emulated : 1 ;
4368 unsigned int skip_settle_delay : 1 ;
4369 unsigned int ordered_tag : 1 ;
4370 unsigned int max_host_blocked ;
4371 struct device_attribute **shost_attrs ;
4372 struct device_attribute **sdev_attrs ;
4373 struct list_head legacy_hosts ;
4374 u64 vendor_id ;
4375};
4376#line 543
4377enum scsi_host_state {
4378 SHOST_CREATED = 1,
4379 SHOST_RUNNING = 2,
4380 SHOST_CANCEL = 3,
4381 SHOST_DEL = 4,
4382 SHOST_RECOVERY = 5,
4383 SHOST_CANCEL_RECOVERY = 6,
4384 SHOST_DEL_RECOVERY = 7
4385} ;
4386#line 553 "include/scsi/scsi_host.h"
4387struct Scsi_Host {
4388 struct list_head __devices ;
4389 struct list_head __targets ;
4390 struct scsi_host_cmd_pool *cmd_pool ;
4391 spinlock_t free_list_lock ;
4392 struct list_head free_list ;
4393 struct list_head starved_list ;
4394 spinlock_t default_lock ;
4395 spinlock_t *host_lock ;
4396 struct mutex scan_mutex ;
4397 struct list_head eh_cmd_q ;
4398 struct task_struct *ehandler ;
4399 struct completion *eh_action ;
4400 wait_queue_head_t host_wait ;
4401 struct scsi_host_template *hostt ;
4402 struct scsi_transport_template *transportt ;
4403 struct blk_queue_tag *bqt ;
4404 unsigned int host_busy ;
4405 unsigned int host_failed ;
4406 unsigned int host_eh_scheduled ;
4407 unsigned int host_no ;
4408 int resetting ;
4409 unsigned long last_reset ;
4410 unsigned int max_id ;
4411 unsigned int max_lun ;
4412 unsigned int max_channel ;
4413 unsigned int unique_id ;
4414 unsigned short max_cmd_len ;
4415 int this_id ;
4416 int can_queue ;
4417 short cmd_per_lun ;
4418 unsigned short sg_tablesize ;
4419 unsigned short sg_prot_tablesize ;
4420 unsigned short max_sectors ;
4421 unsigned long dma_boundary ;
4422 unsigned long cmd_serial_number ;
4423 unsigned int active_mode : 2 ;
4424 unsigned int unchecked_isa_dma : 1 ;
4425 unsigned int use_clustering : 1 ;
4426 unsigned int use_blk_tcq : 1 ;
4427 unsigned int host_self_blocked : 1 ;
4428 unsigned int reverse_ordering : 1 ;
4429 unsigned int ordered_tag : 1 ;
4430 unsigned int tmf_in_progress : 1 ;
4431 unsigned int async_scan : 1 ;
4432 unsigned int eh_noresume : 1 ;
4433 char work_q_name[20] ;
4434 struct workqueue_struct *work_q ;
4435 unsigned int host_blocked ;
4436 unsigned int max_host_blocked ;
4437 unsigned int prot_capabilities ;
4438 unsigned char prot_guard_type ;
4439 struct request_queue *uspace_req_q ;
4440 unsigned long base ;
4441 unsigned long io_port ;
4442 unsigned char n_io_port ;
4443 unsigned char dma_channel ;
4444 unsigned int irq ;
4445 enum scsi_host_state shost_state ;
4446 struct device shost_gendev ;
4447 struct device shost_dev ;
4448 struct list_head sht_legacy_list ;
4449 void *shost_data ;
4450 struct device *dma_dev ;
4451 unsigned long hostdata[0] __attribute__((__aligned__(sizeof(unsigned long )))) ;
4452};
4453#line 53 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
4454struct us_data;
4455#line 60 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
4456struct us_unusual_dev {
4457 char *vendorName ;
4458 char *productName ;
4459 __u8 useProtocol ;
4460 __u8 useTransport ;
4461 int (*initFunction)(struct us_data * ) ;
4462};
4463#line 102 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
4464struct us_data {
4465 struct mutex dev_mutex ;
4466 struct usb_device *pusb_dev ;
4467 struct usb_interface *pusb_intf ;
4468 struct us_unusual_dev *unusual_dev ;
4469 unsigned long fflags ;
4470 unsigned long dflags ;
4471 unsigned int send_bulk_pipe ;
4472 unsigned int recv_bulk_pipe ;
4473 unsigned int send_ctrl_pipe ;
4474 unsigned int recv_ctrl_pipe ;
4475 unsigned int recv_intr_pipe ;
4476 char *transport_name ;
4477 char *protocol_name ;
4478 __le32 bcs_signature ;
4479 u8 subclass ;
4480 u8 protocol ;
4481 u8 max_lun ;
4482 u8 ifnum ;
4483 u8 ep_bInterval ;
4484 int (*transport)(struct scsi_cmnd * , struct us_data * ) ;
4485 int (*transport_reset)(struct us_data * ) ;
4486 void (*proto_handler)(struct scsi_cmnd * , struct us_data * ) ;
4487 struct scsi_cmnd *srb ;
4488 unsigned int tag ;
4489 char scsi_name[32] ;
4490 struct urb *current_urb ;
4491 struct usb_ctrlrequest *cr ;
4492 struct usb_sg_request current_sg ;
4493 unsigned char *iobuf ;
4494 dma_addr_t iobuf_dma ;
4495 struct task_struct *ctl_thread ;
4496 struct completion cmnd_ready ;
4497 struct completion notify ;
4498 wait_queue_head_t delay_wait ;
4499 struct delayed_work scan_dwork ;
4500 void *extra ;
4501 void (*extra_destructor)(void * ) ;
4502 void (*suspend_resume_hook)(struct us_data * , int ) ;
4503 int use_last_sector_hacks ;
4504 int last_sector_retries ;
4505};
4506#line 206 "include/linux/types.h"
4507typedef u64 phys_addr_t;
4508#line 290 "include/linux/timer.h"
4509enum hrtimer_restart;
4510#line 24 "include/linux/sysfs.h"
4511enum kobj_ns_type;
4512#line 49 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/protocol.h"
4513enum xfer_buf_dir {
4514 TO_XFER_BUF = 0,
4515 FROM_XFER_BUF = 1
4516} ;
4517#line 13 "include/linux/thread_info.h"
4518struct compat_timespec;
4519#line 18 "include/linux/thread_info.h"
4520struct __anonstruct_futex_12 {
4521 u32 *uaddr ;
4522 u32 val ;
4523 u32 flags ;
4524 u32 bitset ;
4525 u64 time ;
4526 u32 *uaddr2 ;
4527};
4528#line 18 "include/linux/thread_info.h"
4529struct __anonstruct_nanosleep_13 {
4530 clockid_t clockid ;
4531 struct timespec *rmtp ;
4532 struct compat_timespec *compat_rmtp ;
4533 u64 expires ;
4534};
4535#line 18
4536struct pollfd;
4537#line 18 "include/linux/thread_info.h"
4538struct __anonstruct_poll_14 {
4539 struct pollfd *ufds ;
4540 int nfds ;
4541 int has_timeout ;
4542 unsigned long tv_sec ;
4543 unsigned long tv_nsec ;
4544};
4545#line 18 "include/linux/thread_info.h"
4546union __anonunion____missing_field_name_11 {
4547 struct __anonstruct_futex_12 futex ;
4548 struct __anonstruct_nanosleep_13 nanosleep ;
4549 struct __anonstruct_poll_14 poll ;
4550};
4551#line 18 "include/linux/thread_info.h"
4552struct restart_block {
4553 long (*fn)(struct restart_block * ) ;
4554 union __anonunion____missing_field_name_11 __annonCompField4 ;
4555};
4556#line 21 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
4557struct exec_domain;
4558#line 92 "include/linux/personality.h"
4559struct map_segment;
4560#line 92 "include/linux/personality.h"
4561struct exec_domain {
4562 char *name ;
4563 void (*handler)(int , struct pt_regs * ) ;
4564 unsigned char pers_low ;
4565 unsigned char pers_high ;
4566 unsigned long *signal_map ;
4567 unsigned long *signal_invmap ;
4568 struct map_segment *err_map ;
4569 struct map_segment *socktype_map ;
4570 struct map_segment *sockopt_map ;
4571 struct map_segment *af_map ;
4572 struct module *module ;
4573 struct exec_domain *next ;
4574};
4575#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
4576struct __anonstruct_mm_segment_t_36 {
4577 unsigned long seg ;
4578};
4579#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
4580typedef struct __anonstruct_mm_segment_t_36 mm_segment_t;
4581#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
4582struct thread_info {
4583 struct task_struct *task ;
4584 struct exec_domain *exec_domain ;
4585 __u32 flags ;
4586 __u32 status ;
4587 __u32 cpu ;
4588 int preempt_count ;
4589 mm_segment_t addr_limit ;
4590 struct restart_block restart_block ;
4591 void *sysenter_return ;
4592 unsigned int sig_on_uaccess_error : 1 ;
4593 unsigned int uaccess_err : 1 ;
4594};
4595#line 27 "include/linux/wait.h"
4596struct __wait_queue;
4597#line 27 "include/linux/wait.h"
4598typedef struct __wait_queue wait_queue_t;
4599#line 31 "include/linux/wait.h"
4600struct __wait_queue {
4601 unsigned int flags ;
4602 void *private ;
4603 int (*func)(wait_queue_t *wait , unsigned int mode , int flags , void *key ) ;
4604 struct list_head task_list ;
4605};
4606#line 290 "include/linux/timer.h"
4607enum hrtimer_restart;
4608#line 24 "include/linux/sysfs.h"
4609enum kobj_ns_type;
4610#line 13 "include/scsi/scsi_cmnd.h"
4611struct scsi_driver;
4612#line 73 "include/scsi/scsi_eh.h"
4613struct scsi_eh_save {
4614 int result ;
4615 enum dma_data_direction data_direction ;
4616 unsigned int underflow ;
4617 unsigned char cmd_len ;
4618 unsigned char prot_op ;
4619 unsigned char *cmnd ;
4620 struct scsi_data_buffer sdb ;
4621 struct request *next_rq ;
4622 unsigned char eh_cmnd[16] ;
4623 struct scatterlist sense_sgl ;
4624};
4625#line 53 "include/linux/usb/storage.h"
4626struct bulk_cb_wrap {
4627 __le32 Signature ;
4628 __u32 Tag ;
4629 __le32 DataTransferLength ;
4630 __u8 Flags ;
4631 __u8 Lun ;
4632 __u8 Length ;
4633 __u8 CDB[16] ;
4634};
4635#line 69 "include/linux/usb/storage.h"
4636struct bulk_cs_wrap {
4637 __le32 Signature ;
4638 __u32 Tag ;
4639 __le32 Residue ;
4640 __u8 Status ;
4641};
4642#line 50 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/../../scsi/sd.h"
4643struct scsi_disk {
4644 struct scsi_driver *driver ;
4645 struct scsi_device *device ;
4646 struct device dev ;
4647 struct gendisk *disk ;
4648 atomic_t openers ;
4649 sector_t capacity ;
4650 u32 max_ws_blocks ;
4651 u32 max_unmap_blocks ;
4652 u32 unmap_granularity ;
4653 u32 unmap_alignment ;
4654 u32 index ;
4655 unsigned int physical_block_size ;
4656 unsigned int max_medium_access_timeouts ;
4657 unsigned int medium_access_timed_out ;
4658 u8 media_present ;
4659 u8 write_prot ;
4660 u8 protection_type ;
4661 u8 provisioning_mode ;
4662 unsigned int ATO : 1 ;
4663 unsigned int WCE : 1 ;
4664 unsigned int RCD : 1 ;
4665 unsigned int DPOFUA : 1 ;
4666 unsigned int first_scan : 1 ;
4667 unsigned int lbpme : 1 ;
4668 unsigned int lbprz : 1 ;
4669 unsigned int lbpu : 1 ;
4670 unsigned int lbpws : 1 ;
4671 unsigned int lbpws10 : 1 ;
4672 unsigned int lbpvpd : 1 ;
4673};
4674#line 9 "include/linux/dynamic_debug.h"
4675struct _ddebug {
4676 char *modname ;
4677 char *function ;
4678 char *filename ;
4679 char *format ;
4680 unsigned int lineno : 18 ;
4681 unsigned int flags : 8 ;
4682} __attribute__((__aligned__(8))) ;
4683#line 290 "include/linux/timer.h"
4684enum hrtimer_restart;
4685#line 1100 "include/linux/sched.h"
4686struct uts_namespace;
4687#line 24 "include/linux/sysfs.h"
4688enum kobj_ns_type;
4689#line 24 "include/linux/utsname.h"
4690struct new_utsname {
4691 char sysname[65] ;
4692 char nodename[65] ;
4693 char release[65] ;
4694 char version[65] ;
4695 char machine[65] ;
4696 char domainname[65] ;
4697};
4698#line 7 "include/linux/nsproxy.h"
4699struct mnt_namespace;
4700#line 9
4701struct ipc_namespace;
4702#line 25
4703struct net;
4704#line 25 "include/linux/nsproxy.h"
4705struct nsproxy {
4706 atomic_t count ;
4707 struct uts_namespace *uts_ns ;
4708 struct ipc_namespace *ipc_ns ;
4709 struct mnt_namespace *mnt_ns ;
4710 struct pid_namespace *pid_ns ;
4711 struct net *net_ns ;
4712};
4713#line 51 "include/linux/utsname.h"
4714struct uts_namespace {
4715 struct kref kref ;
4716 struct new_utsname name ;
4717 struct user_namespace *user_ns ;
4718};
4719#line 12 "include/linux/mod_devicetable.h"
4720typedef unsigned long kernel_ulong_t;
4721#line 98 "include/linux/mod_devicetable.h"
4722struct usb_device_id {
4723 __u16 match_flags ;
4724 __u16 idVendor ;
4725 __u16 idProduct ;
4726 __u16 bcdDevice_lo ;
4727 __u16 bcdDevice_hi ;
4728 __u8 bDeviceClass ;
4729 __u8 bDeviceSubClass ;
4730 __u8 bDeviceProtocol ;
4731 __u8 bInterfaceClass ;
4732 __u8 bInterfaceSubClass ;
4733 __u8 bInterfaceProtocol ;
4734 kernel_ulong_t driver_info ;
4735};
4736#line 26 "include/linux/usb.h"
4737struct usb_driver;
4738#line 789 "include/linux/usb.h"
4739struct usb_dynids {
4740 spinlock_t lock ;
4741 struct list_head list ;
4742};
4743#line 808 "include/linux/usb.h"
4744struct usbdrv_wrap {
4745 struct device_driver driver ;
4746 int for_devices ;
4747};
4748#line 869 "include/linux/usb.h"
4749struct usb_driver {
4750 char *name ;
4751 int (*probe)(struct usb_interface *intf , struct usb_device_id *id ) ;
4752 void (*disconnect)(struct usb_interface *intf ) ;
4753 int (*unlocked_ioctl)(struct usb_interface *intf , unsigned int code , void *buf ) ;
4754 int (*suspend)(struct usb_interface *intf , pm_message_t message ) ;
4755 int (*resume)(struct usb_interface *intf ) ;
4756 int (*reset_resume)(struct usb_interface *intf ) ;
4757 int (*pre_reset)(struct usb_interface *intf ) ;
4758 int (*post_reset)(struct usb_interface *intf ) ;
4759 struct usb_device_id *id_table ;
4760 struct usb_dynids dynids ;
4761 struct usbdrv_wrap drvwrap ;
4762 unsigned int no_dynamic_id : 1 ;
4763 unsigned int supports_autosuspend : 1 ;
4764 unsigned int soft_unbind : 1 ;
4765};
4766#line 1059 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
4767struct __anonstruct_276 {
4768 int : 0 ;
4769};
4770#line 290 "include/linux/timer.h"
4771enum hrtimer_restart;
4772#line 24 "include/linux/sysfs.h"
4773enum kobj_ns_type;
4774#line 290 "include/linux/timer.h"
4775enum hrtimer_restart;
4776#line 24 "include/linux/sysfs.h"
4777enum kobj_ns_type;
4778#line 52 "include/scsi/scsi_host.h"
4779enum blk_eh_timer_return;
4780#line 30 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
4781struct swoc_info {
4782 __u8 rev ;
4783 __u8 reserved[8] ;
4784 __u16 LinuxSKU ;
4785 __u16 LinuxVer ;
4786 __u8 reserved2[47] ;
4787} __attribute__((__packed__)) ;
4788#line 290 "include/linux/timer.h"
4789enum hrtimer_restart;
4790#line 24 "include/linux/sysfs.h"
4791enum kobj_ns_type;
4792#line 290 "include/linux/timer.h"
4793enum hrtimer_restart;
4794#line 24 "include/linux/sysfs.h"
4795enum kobj_ns_type;
4796#line 1 "<compiler builtins>"
4797long __builtin_expect(long val , long res ) ;
4798#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
4799__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
4800 unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
4801#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
4802__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
4803 unsigned long volatile *addr )
4804{ long volatile *__cil_tmp3 ;
4805
4806 {
4807#line 68
4808 __cil_tmp3 = (long volatile *)addr;
4809#line 68
4810 __asm__ volatile (".section .smp_locks,\"a\"\n"
4811 ".balign 4\n"
4812 ".long 671f - .\n"
4813 ".previous\n"
4814 "671:"
4815 "\n\tlock; "
4816 "bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
4817#line 71
4818 return;
4819}
4820}
4821#line 309
4822__inline static int ( __attribute__((__always_inline__)) ant_test_bit)(unsigned int nr ,
4823 unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
4824#line 309 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
4825__inline static int ( __attribute__((__always_inline__)) ant_test_bit)(unsigned int nr ,
4826 unsigned long volatile *addr )
4827{ unsigned int __cil_tmp3 ;
4828 unsigned long volatile *__cil_tmp4 ;
4829 unsigned long volatile __cil_tmp5 ;
4830 unsigned long __cil_tmp6 ;
4831 unsigned int __cil_tmp7 ;
4832 unsigned long __cil_tmp8 ;
4833 unsigned long __cil_tmp9 ;
4834
4835 {
4836 {
4837#line 311
4838 __cil_tmp3 = nr / 64U;
4839#line 311
4840 __cil_tmp4 = addr + __cil_tmp3;
4841#line 311
4842 __cil_tmp5 = *__cil_tmp4;
4843#line 311
4844 __cil_tmp6 = (unsigned long )__cil_tmp5;
4845#line 311
4846 __cil_tmp7 = nr % 64U;
4847#line 311
4848 __cil_tmp8 = 1UL << __cil_tmp7;
4849#line 311
4850 __cil_tmp9 = __cil_tmp8 & __cil_tmp6;
4851#line 311
4852 return (__cil_tmp9 != 0UL);
4853 }
4854}
4855}
4856#line 100 "include/linux/printk.h"
4857extern int ( printk)(char *fmt , ...) ;
4858#line 320 "include/linux/kernel.h"
4859extern int ( sprintf)(char *buf , char *fmt , ...) ;
4860#line 334
4861extern int ( sscanf)(char * , char * , ...) ;
4862#line 29 "include/linux/spinlock_api_smp.h"
4863extern void _raw_spin_lock_irq(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4864#line 32
4865extern unsigned long _raw_spin_lock_irqsave(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4866#line 41
4867extern void _raw_spin_unlock_irq(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4868#line 42
4869extern void _raw_spin_unlock_irqrestore(raw_spinlock_t *lock , unsigned long flags ) __attribute__((__section__(".spinlock.text"))) ;
4870#line 272 "include/linux/spinlock.h"
4871__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4872#line 272 "include/linux/spinlock.h"
4873__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
4874{
4875
4876 {
4877#line 274
4878 return ((struct raw_spinlock *)lock);
4879}
4880}
4881#line 308
4882__inline static void spin_lock_irq(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4883#line 308 "include/linux/spinlock.h"
4884__inline static void spin_lock_irq(spinlock_t *lock )
4885{ struct raw_spinlock *__cil_tmp2 ;
4886
4887 {
4888 {
4889#line 310
4890 __cil_tmp2 = (struct raw_spinlock *)lock;
4891#line 310
4892 _raw_spin_lock_irq(__cil_tmp2);
4893 }
4894#line 311
4895 return;
4896}
4897}
4898#line 333
4899__inline static void spin_unlock_irq(spinlock_t *lock ) __attribute__((__no_instrument_function__)) ;
4900#line 333 "include/linux/spinlock.h"
4901__inline static void spin_unlock_irq(spinlock_t *lock )
4902{ struct raw_spinlock *__cil_tmp2 ;
4903
4904 {
4905 {
4906#line 335
4907 __cil_tmp2 = (struct raw_spinlock *)lock;
4908#line 335
4909 _raw_spin_unlock_irq(__cil_tmp2);
4910 }
4911#line 336
4912 return;
4913}
4914}
4915#line 338
4916__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) __attribute__((__no_instrument_function__)) ;
4917#line 338 "include/linux/spinlock.h"
4918__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags )
4919{ struct raw_spinlock *__cil_tmp5 ;
4920
4921 {
4922 {
4923#line 340
4924 while (1) {
4925 while_continue: ;
4926 {
4927#line 340
4928 __cil_tmp5 = (struct raw_spinlock *)lock;
4929#line 340
4930 _raw_spin_unlock_irqrestore(__cil_tmp5, flags);
4931 }
4932#line 340
4933 goto while_break;
4934 }
4935 while_break: ;
4936 }
4937#line 341
4938 return;
4939}
4940}
4941#line 152 "include/linux/mutex.h"
4942void mutex_lock(struct mutex *lock ) ;
4943#line 153
4944int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock ) ;
4945#line 154
4946int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock ) ;
4947#line 168
4948int mutex_trylock(struct mutex *lock ) ;
4949#line 169
4950void mutex_unlock(struct mutex *lock ) ;
4951#line 170
4952int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
4953#line 79 "include/linux/completion.h"
4954extern void wait_for_completion(struct completion * ) ;
4955#line 91
4956extern void complete(struct completion * ) ;
4957#line 26 "include/linux/export.h"
4958extern struct module __this_module ;
4959#line 825 "include/linux/blkdev.h"
4960extern void blk_queue_bounce_limit(struct request_queue * , u64 ) ;
4961#line 827
4962extern void blk_queue_max_hw_sectors(struct request_queue * , unsigned int ) ;
4963#line 860
4964extern void blk_queue_update_dma_alignment(struct request_queue * , int ) ;
4965#line 1001
4966__inline static unsigned int queue_max_hw_sectors(struct request_queue *q ) __attribute__((__no_instrument_function__)) ;
4967#line 1001 "include/linux/blkdev.h"
4968__inline static unsigned int queue_max_hw_sectors(struct request_queue *q )
4969{ unsigned long __cil_tmp2 ;
4970 unsigned long __cil_tmp3 ;
4971 unsigned long __cil_tmp4 ;
4972
4973 {
4974 {
4975#line 1003
4976 __cil_tmp2 = 1448 + 16;
4977#line 1003
4978 __cil_tmp3 = (unsigned long )q;
4979#line 1003
4980 __cil_tmp4 = __cil_tmp3 + __cil_tmp2;
4981#line 1003
4982 return (*((unsigned int *)__cil_tmp4));
4983 }
4984}
4985}
4986#line 42 "include/scsi/scsi_eh.h"
4987extern void scsi_report_bus_reset(struct Scsi_Host * , int ) ;
4988#line 43
4989extern void scsi_report_device_reset(struct Scsi_Host * , int , int ) ;
4990#line 755 "include/scsi/scsi_host.h"
4991extern int scsi_is_host_device(struct device * ) ;
4992#line 757
4993__inline static struct Scsi_Host *dev_to_shost(struct device *dev ) __attribute__((__no_instrument_function__)) ;
4994#line 757 "include/scsi/scsi_host.h"
4995__inline static struct Scsi_Host *dev_to_shost(struct device *dev )
4996{ int tmp___7 ;
4997 struct device *__mptr ;
4998 struct device *__cil_tmp4 ;
4999 struct device *__cil_tmp5 ;
5000 void *__cil_tmp6 ;
5001 struct Scsi_Host *__cil_tmp7 ;
5002 unsigned long __cil_tmp8 ;
5003 unsigned long __cil_tmp9 ;
5004 struct device *__cil_tmp10 ;
5005 unsigned int __cil_tmp11 ;
5006 char *__cil_tmp12 ;
5007 char *__cil_tmp13 ;
5008
5009 {
5010 {
5011#line 759
5012 while (1) {
5013 while_continue: ;
5014 {
5015#line 759
5016 __cil_tmp4 = (struct device *)dev;
5017#line 759
5018 tmp___7 = scsi_is_host_device(__cil_tmp4);
5019 }
5020#line 759
5021 if (tmp___7) {
5022#line 759
5023 goto while_break;
5024 } else {
5025
5026 }
5027 {
5028#line 760
5029 __cil_tmp5 = *((struct device **)dev);
5030#line 760
5031 if (! __cil_tmp5) {
5032 {
5033#line 761
5034 __cil_tmp6 = (void *)0;
5035#line 761
5036 return ((struct Scsi_Host *)__cil_tmp6);
5037 }
5038 } else {
5039
5040 }
5041 }
5042#line 762
5043 dev = *((struct device **)dev);
5044 }
5045 while_break: ;
5046 }
5047#line 764
5048 __mptr = (struct device *)dev;
5049 {
5050#line 764
5051 __cil_tmp7 = (struct Scsi_Host *)0;
5052#line 764
5053 __cil_tmp8 = (unsigned long )__cil_tmp7;
5054#line 764
5055 __cil_tmp9 = __cil_tmp8 + 472;
5056#line 764
5057 __cil_tmp10 = (struct device *)__cil_tmp9;
5058#line 764
5059 __cil_tmp11 = (unsigned int )__cil_tmp10;
5060#line 764
5061 __cil_tmp12 = (char *)__mptr;
5062#line 764
5063 __cil_tmp13 = __cil_tmp12 - __cil_tmp11;
5064#line 764
5065 return ((struct Scsi_Host *)__cil_tmp13);
5066 }
5067}
5068}
5069#line 789
5070extern void scsi_cmd_get_serial(struct Scsi_Host * , struct scsi_cmnd * ) ;
5071#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
5072__inline static struct Scsi_Host *us_to_host(struct us_data *us ) __attribute__((__no_instrument_function__)) ;
5073#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
5074__inline static struct Scsi_Host *us_to_host(struct us_data *us )
5075{ unsigned long ( (*__mptr))[0] ;
5076 void *__cil_tmp3 ;
5077 struct Scsi_Host *__cil_tmp4 ;
5078 unsigned long __cil_tmp5 ;
5079 unsigned long __cil_tmp6 ;
5080 unsigned long (*__cil_tmp7)[0] ;
5081 unsigned int __cil_tmp8 ;
5082 char *__cil_tmp9 ;
5083 char *__cil_tmp10 ;
5084
5085 {
5086#line 168
5087 __cil_tmp3 = (void *)us;
5088#line 168
5089 __mptr = (unsigned long ( (*))[0])__cil_tmp3;
5090 {
5091#line 168
5092 __cil_tmp4 = (struct Scsi_Host *)0;
5093#line 168
5094 __cil_tmp5 = (unsigned long )__cil_tmp4;
5095#line 168
5096 __cil_tmp6 = __cil_tmp5 + 2040;
5097#line 168
5098 __cil_tmp7 = (unsigned long (*)[0])__cil_tmp6;
5099#line 168
5100 __cil_tmp8 = (unsigned int )__cil_tmp7;
5101#line 168
5102 __cil_tmp9 = (char *)__mptr;
5103#line 168
5104 __cil_tmp10 = __cil_tmp9 - __cil_tmp8;
5105#line 168
5106 return ((struct Scsi_Host *)__cil_tmp10);
5107 }
5108}
5109}
5110#line 170
5111__inline static struct us_data *host_to_us(struct Scsi_Host *host ) __attribute__((__no_instrument_function__)) ;
5112#line 170 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
5113__inline static struct us_data *host_to_us(struct Scsi_Host *host )
5114{ unsigned long __cil_tmp2 ;
5115 unsigned long __cil_tmp3 ;
5116 unsigned long __cil_tmp4 ;
5117 unsigned long __cil_tmp5 ;
5118 unsigned long *__cil_tmp6 ;
5119
5120 {
5121 {
5122#line 171
5123 __cil_tmp2 = 0 * 8UL;
5124#line 171
5125 __cil_tmp3 = 2040 + __cil_tmp2;
5126#line 171
5127 __cil_tmp4 = (unsigned long )host;
5128#line 171
5129 __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
5130#line 171
5131 __cil_tmp6 = (unsigned long *)__cil_tmp5;
5132#line 171
5133 return ((struct us_data *)__cil_tmp6);
5134 }
5135}
5136}
5137#line 42 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/scsiglue.h"
5138void usb_stor_report_device_reset(struct us_data *us ) ;
5139#line 43
5140void usb_stor_report_bus_reset(struct us_data *us ) ;
5141#line 45
5142unsigned char usb_stor_sense_invalidCDB[18] ;
5143#line 46
5144struct scsi_host_template usb_stor_host_template ;
5145#line 85 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/transport.h"
5146void usb_stor_stop_transport(struct us_data *us ) ;
5147#line 102
5148int usb_stor_port_reset(struct us_data *us ) ;
5149#line 74 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
5150static char *host_info(struct Scsi_Host *host )
5151{ struct us_data *us ;
5152 struct us_data *tmp___7 ;
5153 unsigned long __cil_tmp4 ;
5154 unsigned long __cil_tmp5 ;
5155 unsigned long __cil_tmp6 ;
5156 unsigned long __cil_tmp7 ;
5157 char *__cil_tmp8 ;
5158
5159 {
5160 {
5161#line 76
5162 tmp___7 = host_to_us(host);
5163#line 76
5164 us = tmp___7;
5165 }
5166 {
5167#line 77
5168 __cil_tmp4 = 0 * 1UL;
5169#line 77
5170 __cil_tmp5 = 204 + __cil_tmp4;
5171#line 77
5172 __cil_tmp6 = (unsigned long )us;
5173#line 77
5174 __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
5175#line 77
5176 __cil_tmp8 = (char *)__cil_tmp7;
5177#line 77
5178 return ((char *)__cil_tmp8);
5179 }
5180}
5181}
5182#line 80 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
5183static int slave_alloc(struct scsi_device *sdev )
5184{ unsigned long __cil_tmp2 ;
5185 unsigned long __cil_tmp3 ;
5186 unsigned long __cil_tmp4 ;
5187 unsigned long __cil_tmp5 ;
5188 struct request_queue *__cil_tmp6 ;
5189
5190 {
5191 {
5192#line 87
5193 __cil_tmp2 = (unsigned long )sdev;
5194#line 87
5195 __cil_tmp3 = __cil_tmp2 + 187;
5196#line 87
5197 *((unsigned char *)__cil_tmp3) = (unsigned char)36;
5198#line 104
5199 __cil_tmp4 = (unsigned long )sdev;
5200#line 104
5201 __cil_tmp5 = __cil_tmp4 + 8;
5202#line 104
5203 __cil_tmp6 = *((struct request_queue **)__cil_tmp5);
5204#line 104
5205 blk_queue_update_dma_alignment(__cil_tmp6, 511);
5206 }
5207#line 106
5208 return (0);
5209}
5210}
5211#line 109 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
5212static int slave_configure(struct scsi_device *sdev )
5213{ struct us_data *us ;
5214 struct us_data *tmp___7 ;
5215 unsigned int max_sectors ;
5216 unsigned int tmp___8 ;
5217 struct Scsi_Host *__cil_tmp6 ;
5218 unsigned long __cil_tmp7 ;
5219 unsigned long __cil_tmp8 ;
5220 unsigned long __cil_tmp9 ;
5221 unsigned long __cil_tmp10 ;
5222 unsigned long __cil_tmp11 ;
5223 unsigned long __cil_tmp12 ;
5224 unsigned long __cil_tmp13 ;
5225 unsigned long __cil_tmp14 ;
5226 unsigned long __cil_tmp15 ;
5227 unsigned long __cil_tmp16 ;
5228 struct request_queue *__cil_tmp17 ;
5229 unsigned long __cil_tmp18 ;
5230 unsigned long __cil_tmp19 ;
5231 struct request_queue *__cil_tmp20 ;
5232 unsigned long __cil_tmp21 ;
5233 unsigned long __cil_tmp22 ;
5234 char __cil_tmp23 ;
5235 int __cil_tmp24 ;
5236 unsigned long __cil_tmp25 ;
5237 unsigned long __cil_tmp26 ;
5238 struct request_queue *__cil_tmp27 ;
5239 unsigned long __cil_tmp28 ;
5240 unsigned long __cil_tmp29 ;
5241 struct usb_device *__cil_tmp30 ;
5242 unsigned long __cil_tmp31 ;
5243 unsigned long __cil_tmp32 ;
5244 struct usb_bus *__cil_tmp33 ;
5245 struct device *__cil_tmp34 ;
5246 unsigned long __cil_tmp35 ;
5247 unsigned long __cil_tmp36 ;
5248 u64 *__cil_tmp37 ;
5249 unsigned long __cil_tmp38 ;
5250 unsigned long __cil_tmp39 ;
5251 struct request_queue *__cil_tmp40 ;
5252 unsigned long __cil_tmp41 ;
5253 unsigned long __cil_tmp42 ;
5254 char __cil_tmp43 ;
5255 int __cil_tmp44 ;
5256 unsigned long __cil_tmp45 ;
5257 unsigned long __cil_tmp46 ;
5258 unsigned long __cil_tmp47 ;
5259 struct usb_device *__cil_tmp48 ;
5260 unsigned long __cil_tmp49 ;
5261 unsigned long __cil_tmp50 ;
5262 __le16 __cil_tmp51 ;
5263 unsigned long __cil_tmp52 ;
5264 unsigned long __cil_tmp53 ;
5265 unsigned long __cil_tmp54 ;
5266 unsigned long __cil_tmp55 ;
5267 unsigned long __cil_tmp56 ;
5268 unsigned long __cil_tmp57 ;
5269 unsigned long __cil_tmp58 ;
5270 unsigned long __cil_tmp59 ;
5271 unsigned long __cil_tmp60 ;
5272 unsigned long __cil_tmp61 ;
5273 unsigned long __cil_tmp62 ;
5274 u8 __cil_tmp63 ;
5275 int __cil_tmp64 ;
5276 unsigned long __cil_tmp65 ;
5277 unsigned long __cil_tmp66 ;
5278 u8 __cil_tmp67 ;
5279 int __cil_tmp68 ;
5280 unsigned long __cil_tmp69 ;
5281 unsigned long __cil_tmp70 ;
5282 unsigned long __cil_tmp71 ;
5283 unsigned long __cil_tmp72 ;
5284 unsigned long __cil_tmp73 ;
5285 unsigned long __cil_tmp74 ;
5286 unsigned long __cil_tmp75 ;
5287 unsigned long __cil_tmp76 ;
5288 unsigned long __cil_tmp77 ;
5289 unsigned long __cil_tmp78 ;
5290 unsigned long __cil_tmp79 ;
5291 unsigned long __cil_tmp80 ;
5292 unsigned long __cil_tmp81 ;
5293 unsigned long __cil_tmp82 ;
5294 char __cil_tmp83 ;
5295 int __cil_tmp84 ;
5296 unsigned long __cil_tmp85 ;
5297 unsigned long __cil_tmp86 ;
5298 unsigned long __cil_tmp87 ;
5299 unsigned long __cil_tmp88 ;
5300 unsigned long __cil_tmp89 ;
5301 unsigned long __cil_tmp90 ;
5302 unsigned long __cil_tmp91 ;
5303 unsigned long __cil_tmp92 ;
5304 unsigned long __cil_tmp93 ;
5305 unsigned long __cil_tmp94 ;
5306 unsigned long __cil_tmp95 ;
5307 unsigned long __cil_tmp96 ;
5308 unsigned long __cil_tmp97 ;
5309 unsigned long __cil_tmp98 ;
5310 unsigned long __cil_tmp99 ;
5311 u8 __cil_tmp100 ;
5312 int __cil_tmp101 ;
5313 unsigned long __cil_tmp102 ;
5314 unsigned long __cil_tmp103 ;
5315 unsigned long __cil_tmp104 ;
5316 unsigned long __cil_tmp105 ;
5317 unsigned long __cil_tmp106 ;
5318 unsigned long __cil_tmp107 ;
5319 unsigned long __cil_tmp108 ;
5320 u8 __cil_tmp109 ;
5321 int __cil_tmp110 ;
5322 unsigned long __cil_tmp111 ;
5323 unsigned long __cil_tmp112 ;
5324 u8 __cil_tmp113 ;
5325 int __cil_tmp114 ;
5326 unsigned long __cil_tmp115 ;
5327 unsigned long __cil_tmp116 ;
5328 char __cil_tmp117 ;
5329 int __cil_tmp118 ;
5330 unsigned long __cil_tmp119 ;
5331 unsigned long __cil_tmp120 ;
5332 unsigned long __cil_tmp121 ;
5333 unsigned long __cil_tmp122 ;
5334 unsigned long __cil_tmp123 ;
5335
5336 {
5337 {
5338#line 111
5339 __cil_tmp6 = *((struct Scsi_Host **)sdev);
5340#line 111
5341 tmp___7 = host_to_us(__cil_tmp6);
5342#line 111
5343 us = tmp___7;
5344 }
5345 {
5346#line 117
5347 __cil_tmp7 = (unsigned long )us;
5348#line 117
5349 __cil_tmp8 = __cil_tmp7 + 96;
5350#line 117
5351 __cil_tmp9 = *((unsigned long *)__cil_tmp8);
5352#line 117
5353 if (__cil_tmp9 & 9216UL) {
5354#line 118
5355 max_sectors = 64U;
5356 {
5357#line 120
5358 __cil_tmp10 = (unsigned long )us;
5359#line 120
5360 __cil_tmp11 = __cil_tmp10 + 96;
5361#line 120
5362 __cil_tmp12 = *((unsigned long *)__cil_tmp11);
5363#line 120
5364 if (__cil_tmp12 & 8192UL) {
5365#line 121
5366 __cil_tmp13 = 1UL << 12;
5367#line 121
5368 __cil_tmp14 = __cil_tmp13 >> 9;
5369#line 121
5370 max_sectors = (unsigned int )__cil_tmp14;
5371 } else {
5372
5373 }
5374 }
5375 {
5376#line 122
5377 __cil_tmp15 = (unsigned long )sdev;
5378#line 122
5379 __cil_tmp16 = __cil_tmp15 + 8;
5380#line 122
5381 __cil_tmp17 = *((struct request_queue **)__cil_tmp16);
5382#line 122
5383 tmp___8 = queue_max_hw_sectors(__cil_tmp17);
5384 }
5385#line 122
5386 if (tmp___8 > max_sectors) {
5387 {
5388#line 123
5389 __cil_tmp18 = (unsigned long )sdev;
5390#line 123
5391 __cil_tmp19 = __cil_tmp18 + 8;
5392#line 123
5393 __cil_tmp20 = *((struct request_queue **)__cil_tmp19);
5394#line 123
5395 blk_queue_max_hw_sectors(__cil_tmp20, max_sectors);
5396 }
5397 } else {
5398
5399 }
5400 } else {
5401 {
5402#line 125
5403 __cil_tmp21 = (unsigned long )sdev;
5404#line 125
5405 __cil_tmp22 = __cil_tmp21 + 184;
5406#line 125
5407 __cil_tmp23 = *((char *)__cil_tmp22);
5408#line 125
5409 __cil_tmp24 = (int )__cil_tmp23;
5410#line 125
5411 if (__cil_tmp24 == 1) {
5412 {
5413#line 130
5414 __cil_tmp25 = (unsigned long )sdev;
5415#line 130
5416 __cil_tmp26 = __cil_tmp25 + 8;
5417#line 130
5418 __cil_tmp27 = *((struct request_queue **)__cil_tmp26);
5419#line 130
5420 blk_queue_max_hw_sectors(__cil_tmp27, 8388607U);
5421 }
5422 } else {
5423
5424 }
5425 }
5426 }
5427 }
5428 {
5429#line 138
5430 __cil_tmp28 = (unsigned long )us;
5431#line 138
5432 __cil_tmp29 = __cil_tmp28 + 72;
5433#line 138
5434 __cil_tmp30 = *((struct usb_device **)__cil_tmp29);
5435#line 138
5436 __cil_tmp31 = (unsigned long )__cil_tmp30;
5437#line 138
5438 __cil_tmp32 = __cil_tmp31 + 64;
5439#line 138
5440 __cil_tmp33 = *((struct usb_bus **)__cil_tmp32);
5441#line 138
5442 __cil_tmp34 = *((struct device **)__cil_tmp33);
5443#line 138
5444 __cil_tmp35 = (unsigned long )__cil_tmp34;
5445#line 138
5446 __cil_tmp36 = __cil_tmp35 + 584;
5447#line 138
5448 __cil_tmp37 = *((u64 **)__cil_tmp36);
5449#line 138
5450 if (! __cil_tmp37) {
5451 {
5452#line 139
5453 __cil_tmp38 = (unsigned long )sdev;
5454#line 139
5455 __cil_tmp39 = __cil_tmp38 + 8;
5456#line 139
5457 __cil_tmp40 = *((struct request_queue **)__cil_tmp39);
5458#line 139
5459 blk_queue_bounce_limit(__cil_tmp40, 0xffffffffffffffffULL);
5460 }
5461 } else {
5462
5463 }
5464 }
5465 {
5466#line 144
5467 __cil_tmp41 = (unsigned long )sdev;
5468#line 144
5469 __cil_tmp42 = __cil_tmp41 + 184;
5470#line 144
5471 __cil_tmp43 = *((char *)__cil_tmp42);
5472#line 144
5473 __cil_tmp44 = (int )__cil_tmp43;
5474#line 144
5475 if (__cil_tmp44 == 0) {
5476 {
5477#line 152
5478 __cil_tmp45 = 904 + 8;
5479#line 152
5480 __cil_tmp46 = (unsigned long )us;
5481#line 152
5482 __cil_tmp47 = __cil_tmp46 + 72;
5483#line 152
5484 __cil_tmp48 = *((struct usb_device **)__cil_tmp47);
5485#line 152
5486 __cil_tmp49 = (unsigned long )__cil_tmp48;
5487#line 152
5488 __cil_tmp50 = __cil_tmp49 + __cil_tmp45;
5489#line 152
5490 __cil_tmp51 = *((__le16 *)__cil_tmp50);
5491#line 153
5492 if ((int )__cil_tmp51 == 1057) {
5493#line 153
5494 goto case_1057;
5495 } else
5496#line 154
5497 if ((int )__cil_tmp51 == 1200) {
5498#line 154
5499 goto case_1057;
5500 } else
5501#line 155
5502 if ((int )__cil_tmp51 == 2583) {
5503#line 155
5504 goto case_1057;
5505 } else
5506#line 156
5507 if ((int )__cil_tmp51 == 8888) {
5508#line 156
5509 goto case_1057;
5510 } else
5511#line 152
5512 if (0) {
5513 case_1057:
5514 case_1200:
5515 case_2583:
5516 case_8888:
5517 {
5518#line 157
5519 __cil_tmp52 = (unsigned long )us;
5520#line 157
5521 __cil_tmp53 = __cil_tmp52 + 96;
5522#line 157
5523 __cil_tmp54 = *((unsigned long *)__cil_tmp53);
5524#line 157
5525 __cil_tmp55 = __cil_tmp54 & 65552UL;
5526#line 157
5527 if (! __cil_tmp55) {
5528#line 159
5529 __cil_tmp56 = (unsigned long )us;
5530#line 159
5531 __cil_tmp57 = __cil_tmp56 + 96;
5532#line 159
5533 __cil_tmp58 = (unsigned long )us;
5534#line 159
5535 __cil_tmp59 = __cil_tmp58 + 96;
5536#line 159
5537 __cil_tmp60 = *((unsigned long *)__cil_tmp59);
5538#line 159
5539 *((unsigned long *)__cil_tmp57) = __cil_tmp60 | 4096UL;
5540 } else {
5541
5542 }
5543 }
5544#line 160
5545 goto switch_break;
5546 } else {
5547 switch_break: ;
5548 }
5549 }
5550 {
5551#line 166
5552 __cil_tmp61 = (unsigned long )us;
5553#line 166
5554 __cil_tmp62 = __cil_tmp61 + 156;
5555#line 166
5556 __cil_tmp63 = *((u8 *)__cil_tmp62);
5557#line 166
5558 __cil_tmp64 = (int )__cil_tmp63;
5559#line 166
5560 if (__cil_tmp64 != 6) {
5561 {
5562#line 166
5563 __cil_tmp65 = (unsigned long )us;
5564#line 166
5565 __cil_tmp66 = __cil_tmp65 + 156;
5566#line 166
5567 __cil_tmp67 = *((u8 *)__cil_tmp66);
5568#line 166
5569 __cil_tmp68 = (int )__cil_tmp67;
5570#line 166
5571 if (__cil_tmp68 != 241) {
5572#line 167
5573 sdev->use_10_for_ms = 1U;
5574 } else {
5575
5576 }
5577 }
5578 } else {
5579
5580 }
5581 }
5582#line 171
5583 sdev->use_192_bytes_for_3f = 1U;
5584 {
5585#line 180
5586 __cil_tmp69 = (unsigned long )us;
5587#line 180
5588 __cil_tmp70 = __cil_tmp69 + 96;
5589#line 180
5590 __cil_tmp71 = *((unsigned long *)__cil_tmp70);
5591#line 180
5592 if (__cil_tmp71 & 512UL) {
5593#line 181
5594 sdev->skip_ms_page_3f = 1U;
5595 } else {
5596
5597 }
5598 }
5599#line 185
5600 sdev->skip_ms_page_8 = 1U;
5601#line 188
5602 sdev->skip_vpd_pages = 1U;
5603 {
5604#line 193
5605 __cil_tmp72 = (unsigned long )us;
5606#line 193
5607 __cil_tmp73 = __cil_tmp72 + 96;
5608#line 193
5609 __cil_tmp74 = *((unsigned long *)__cil_tmp73);
5610#line 193
5611 if (__cil_tmp74 & 16UL) {
5612#line 194
5613 sdev->fix_capacity = 1U;
5614 } else {
5615
5616 }
5617 }
5618 {
5619#line 199
5620 __cil_tmp75 = (unsigned long )us;
5621#line 199
5622 __cil_tmp76 = __cil_tmp75 + 96;
5623#line 199
5624 __cil_tmp77 = *((unsigned long *)__cil_tmp76);
5625#line 199
5626 if (__cil_tmp77 & 4096UL) {
5627#line 200
5628 sdev->guess_capacity = 1U;
5629 } else {
5630
5631 }
5632 }
5633 {
5634#line 203
5635 __cil_tmp78 = (unsigned long )us;
5636#line 203
5637 __cil_tmp79 = __cil_tmp78 + 96;
5638#line 203
5639 __cil_tmp80 = *((unsigned long *)__cil_tmp79);
5640#line 203
5641 if (__cil_tmp80 & 524288UL) {
5642#line 204
5643 sdev->no_read_capacity_16 = 1U;
5644 } else {
5645
5646 }
5647 }
5648 {
5649#line 207
5650 __cil_tmp81 = (unsigned long )sdev;
5651#line 207
5652 __cil_tmp82 = __cil_tmp81 + 185;
5653#line 207
5654 __cil_tmp83 = *((char *)__cil_tmp82);
5655#line 207
5656 __cil_tmp84 = (int )__cil_tmp83;
5657#line 207
5658 if (__cil_tmp84 > 5) {
5659#line 208
5660 __cil_tmp85 = (unsigned long )us;
5661#line 208
5662 __cil_tmp86 = __cil_tmp85 + 96;
5663#line 208
5664 __cil_tmp87 = (unsigned long )us;
5665#line 208
5666 __cil_tmp88 = __cil_tmp87 + 96;
5667#line 208
5668 __cil_tmp89 = *((unsigned long *)__cil_tmp88);
5669#line 208
5670 *((unsigned long *)__cil_tmp86) = __cil_tmp89 | 32768UL;
5671 } else {
5672
5673 }
5674 }
5675#line 216
5676 sdev->retry_hwerror = 1U;
5677#line 220
5678 __cil_tmp90 = (unsigned long )sdev;
5679#line 220
5680 __cil_tmp91 = __cil_tmp90 + 247;
5681#line 220
5682 *((unsigned int *)__cil_tmp91) = 1U;
5683#line 225
5684 __cil_tmp92 = (unsigned long )sdev;
5685#line 225
5686 __cil_tmp93 = __cil_tmp92 + 248;
5687#line 225
5688 *((unsigned int *)__cil_tmp93) = 1U;
5689 {
5690#line 230
5691 __cil_tmp94 = (unsigned long )us;
5692#line 230
5693 __cil_tmp95 = __cil_tmp94 + 96;
5694#line 230
5695 __cil_tmp96 = *((unsigned long *)__cil_tmp95);
5696#line 230
5697 __cil_tmp97 = __cil_tmp96 & 65556UL;
5698#line 230
5699 if (! __cil_tmp97) {
5700 {
5701#line 230
5702 __cil_tmp98 = (unsigned long )us;
5703#line 230
5704 __cil_tmp99 = __cil_tmp98 + 157;
5705#line 230
5706 __cil_tmp100 = *((u8 *)__cil_tmp99);
5707#line 230
5708 __cil_tmp101 = (int )__cil_tmp100;
5709#line 230
5710 if (__cil_tmp101 == 80) {
5711#line 233
5712 __cil_tmp102 = (unsigned long )us;
5713#line 233
5714 __cil_tmp103 = __cil_tmp102 + 672;
5715#line 233
5716 *((int *)__cil_tmp103) = 1;
5717 } else {
5718
5719 }
5720 }
5721 } else {
5722
5723 }
5724 }
5725 } else {
5726#line 239
5727 sdev->use_10_for_ms = 1U;
5728 {
5729#line 242
5730 __cil_tmp104 = (unsigned long )us;
5731#line 242
5732 __cil_tmp105 = __cil_tmp104 + 96;
5733#line 242
5734 __cil_tmp106 = *((unsigned long *)__cil_tmp105);
5735#line 242
5736 if (__cil_tmp106 & 262144UL) {
5737#line 243
5738 sdev->no_read_disc_info = 1U;
5739 } else {
5740
5741 }
5742 }
5743 }
5744 }
5745 {
5746#line 252
5747 __cil_tmp107 = (unsigned long )us;
5748#line 252
5749 __cil_tmp108 = __cil_tmp107 + 157;
5750#line 252
5751 __cil_tmp109 = *((u8 *)__cil_tmp108);
5752#line 252
5753 __cil_tmp110 = (int )__cil_tmp109;
5754#line 252
5755 if (__cil_tmp110 == 1) {
5756#line 252
5757 goto _L;
5758 } else {
5759 {
5760#line 252
5761 __cil_tmp111 = (unsigned long )us;
5762#line 252
5763 __cil_tmp112 = __cil_tmp111 + 157;
5764#line 252
5765 __cil_tmp113 = *((u8 *)__cil_tmp112);
5766#line 252
5767 __cil_tmp114 = (int )__cil_tmp113;
5768#line 252
5769 if (__cil_tmp114 == 0) {
5770 _L:
5771 {
5772#line 252
5773 __cil_tmp115 = (unsigned long )sdev;
5774#line 252
5775 __cil_tmp116 = __cil_tmp115 + 185;
5776#line 252
5777 __cil_tmp117 = *((char *)__cil_tmp116);
5778#line 252
5779 __cil_tmp118 = (int )__cil_tmp117;
5780#line 252
5781 if (__cil_tmp118 == 0) {
5782#line 254
5783 __cil_tmp119 = (unsigned long )us;
5784#line 254
5785 __cil_tmp120 = __cil_tmp119 + 158;
5786#line 254
5787 *((u8 *)__cil_tmp120) = (u8 )0;
5788 } else {
5789
5790 }
5791 }
5792 } else {
5793
5794 }
5795 }
5796 }
5797 }
5798 {
5799#line 258
5800 __cil_tmp121 = (unsigned long )us;
5801#line 258
5802 __cil_tmp122 = __cil_tmp121 + 96;
5803#line 258
5804 __cil_tmp123 = *((unsigned long *)__cil_tmp122);
5805#line 258
5806 if (__cil_tmp123 & 128UL) {
5807#line 259
5808 sdev->lockable = 0U;
5809 } else {
5810
5811 }
5812 }
5813#line 263
5814 return (0);
5815}
5816}
5817#line 266 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
5818static int target_alloc(struct scsi_target *starget )
5819{ struct us_data *us ;
5820 struct Scsi_Host *tmp___7 ;
5821 struct us_data *tmp___8 ;
5822 unsigned long __cil_tmp5 ;
5823 unsigned long __cil_tmp6 ;
5824 struct device *__cil_tmp7 ;
5825 unsigned long __cil_tmp8 ;
5826 unsigned long __cil_tmp9 ;
5827 u8 __cil_tmp10 ;
5828 int __cil_tmp11 ;
5829
5830 {
5831 {
5832#line 268
5833 __cil_tmp5 = (unsigned long )starget;
5834#line 268
5835 __cil_tmp6 = __cil_tmp5 + 40;
5836#line 268
5837 __cil_tmp7 = *((struct device **)__cil_tmp6);
5838#line 268
5839 tmp___7 = dev_to_shost(__cil_tmp7);
5840#line 268
5841 tmp___8 = host_to_us(tmp___7);
5842#line 268
5843 us = tmp___8;
5844#line 276
5845 starget->no_report_luns = 1U;
5846 }
5847 {
5848#line 287
5849 __cil_tmp8 = (unsigned long )us;
5850#line 287
5851 __cil_tmp9 = __cil_tmp8 + 156;
5852#line 287
5853 __cil_tmp10 = *((u8 *)__cil_tmp9);
5854#line 287
5855 __cil_tmp11 = (int )__cil_tmp10;
5856#line 287
5857 if (__cil_tmp11 == 4) {
5858#line 288
5859 starget->pdt_1f_for_no_lun = 1U;
5860 } else {
5861
5862 }
5863 }
5864#line 290
5865 return (0);
5866}
5867}
5868#line 295 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
5869static int queuecommand_lck(struct scsi_cmnd *srb , void (*done)(struct scsi_cmnd * ) )
5870{ struct us_data *us ;
5871 struct us_data *tmp___7 ;
5872 int tmp___8 ;
5873 struct scsi_device *__cil_tmp7 ;
5874 struct Scsi_Host *__cil_tmp8 ;
5875 void *__cil_tmp9 ;
5876 unsigned long __cil_tmp10 ;
5877 unsigned long __cil_tmp11 ;
5878 unsigned long __cil_tmp12 ;
5879 struct scsi_cmnd *__cil_tmp13 ;
5880 unsigned long __cil_tmp14 ;
5881 unsigned long __cil_tmp15 ;
5882 unsigned long __cil_tmp16 ;
5883 struct scsi_cmnd *__cil_tmp17 ;
5884 unsigned long __cil_tmp18 ;
5885 unsigned long __cil_tmp19 ;
5886 unsigned long *__cil_tmp20 ;
5887 unsigned long volatile *__cil_tmp21 ;
5888 unsigned long __cil_tmp22 ;
5889 unsigned long __cil_tmp23 ;
5890 unsigned long __cil_tmp24 ;
5891 unsigned long __cil_tmp25 ;
5892 unsigned long __cil_tmp26 ;
5893 unsigned long __cil_tmp27 ;
5894 unsigned long __cil_tmp28 ;
5895 unsigned long __cil_tmp29 ;
5896 struct completion *__cil_tmp30 ;
5897
5898 {
5899 {
5900#line 298
5901 __cil_tmp7 = *((struct scsi_device **)srb);
5902#line 298
5903 __cil_tmp8 = *((struct Scsi_Host **)__cil_tmp7);
5904#line 298
5905 tmp___7 = host_to_us(__cil_tmp8);
5906#line 298
5907 us = tmp___7;
5908#line 300
5909 printk("<7>usb-storage: %s called\n", "queuecommand_lck");
5910 }
5911 {
5912#line 303
5913 __cil_tmp9 = (void *)0;
5914#line 303
5915 __cil_tmp10 = (unsigned long )__cil_tmp9;
5916#line 303
5917 __cil_tmp11 = (unsigned long )us;
5918#line 303
5919 __cil_tmp12 = __cil_tmp11 + 192;
5920#line 303
5921 __cil_tmp13 = *((struct scsi_cmnd **)__cil_tmp12);
5922#line 303
5923 __cil_tmp14 = (unsigned long )__cil_tmp13;
5924#line 303
5925 if (__cil_tmp14 != __cil_tmp10) {
5926 {
5927#line 304
5928 __cil_tmp15 = (unsigned long )us;
5929#line 304
5930 __cil_tmp16 = __cil_tmp15 + 192;
5931#line 304
5932 __cil_tmp17 = *((struct scsi_cmnd **)__cil_tmp16);
5933#line 304
5934 printk("<3>usb-storage: Error in %s: us->srb = %p\n", "queuecommand_lck", __cil_tmp17);
5935 }
5936#line 306
5937 return (4181);
5938 } else {
5939
5940 }
5941 }
5942 {
5943#line 310
5944 __cil_tmp18 = (unsigned long )us;
5945#line 310
5946 __cil_tmp19 = __cil_tmp18 + 104;
5947#line 310
5948 __cil_tmp20 = (unsigned long *)__cil_tmp19;
5949#line 310
5950 __cil_tmp21 = (unsigned long volatile *)__cil_tmp20;
5951#line 310
5952 tmp___8 = ant_test_bit(3U, __cil_tmp21);
5953 }
5954#line 310
5955 if (tmp___8) {
5956 {
5957#line 311
5958 printk("<7>usb-storage: Fail command during disconnect\n");
5959#line 312
5960 __cil_tmp22 = (unsigned long )srb;
5961#line 312
5962 __cil_tmp23 = __cil_tmp22 + 224;
5963#line 312
5964 *((int *)__cil_tmp23) = 1 << 16;
5965#line 313
5966 (*done)(srb);
5967 }
5968#line 314
5969 return (0);
5970 } else {
5971
5972 }
5973 {
5974#line 318
5975 __cil_tmp24 = (unsigned long )srb;
5976#line 318
5977 __cil_tmp25 = __cil_tmp24 + 144;
5978#line 318
5979 *((void (**)(struct scsi_cmnd * ))__cil_tmp25) = done;
5980#line 319
5981 __cil_tmp26 = (unsigned long )us;
5982#line 319
5983 __cil_tmp27 = __cil_tmp26 + 192;
5984#line 319
5985 *((struct scsi_cmnd **)__cil_tmp27) = srb;
5986#line 320
5987 __cil_tmp28 = (unsigned long )us;
5988#line 320
5989 __cil_tmp29 = __cil_tmp28 + 400;
5990#line 320
5991 __cil_tmp30 = (struct completion *)__cil_tmp29;
5992#line 320
5993 complete(__cil_tmp30);
5994 }
5995#line 322
5996 return (0);
5997}
5998}
5999#line 325 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
6000static int queuecommand(struct Scsi_Host *shost , struct scsi_cmnd *cmd )
6001{ unsigned long irq_flags ;
6002 int rc ;
6003 raw_spinlock_t *tmp___7 ;
6004 unsigned long __cil_tmp8 ;
6005 unsigned long __cil_tmp9 ;
6006 spinlock_t *__cil_tmp10 ;
6007 unsigned long __cil_tmp11 ;
6008 unsigned long __cil_tmp12 ;
6009 void (*__cil_tmp13)(struct scsi_cmnd * ) ;
6010 unsigned long __cil_tmp14 ;
6011 unsigned long __cil_tmp15 ;
6012 spinlock_t *__cil_tmp16 ;
6013
6014 {
6015 {
6016#line 325
6017 while (1) {
6018 while_continue: ;
6019 {
6020#line 325
6021 while (1) {
6022 while_continue___0: ;
6023 {
6024#line 325
6025 __cil_tmp8 = (unsigned long )shost;
6026#line 325
6027 __cil_tmp9 = __cil_tmp8 + 120;
6028#line 325
6029 __cil_tmp10 = *((spinlock_t **)__cil_tmp9);
6030#line 325
6031 tmp___7 = spinlock_check(__cil_tmp10);
6032#line 325
6033 irq_flags = _raw_spin_lock_irqsave(tmp___7);
6034 }
6035#line 325
6036 goto while_break___0;
6037 }
6038 while_break___0: ;
6039 }
6040#line 325
6041 goto while_break;
6042 }
6043 while_break: ;
6044 }
6045 {
6046#line 325
6047 scsi_cmd_get_serial(shost, cmd);
6048#line 325
6049 __cil_tmp11 = (unsigned long )cmd;
6050#line 325
6051 __cil_tmp12 = __cil_tmp11 + 144;
6052#line 325
6053 __cil_tmp13 = *((void (**)(struct scsi_cmnd * ))__cil_tmp12);
6054#line 325
6055 rc = queuecommand_lck(cmd, __cil_tmp13);
6056#line 325
6057 __cil_tmp14 = (unsigned long )shost;
6058#line 325
6059 __cil_tmp15 = __cil_tmp14 + 120;
6060#line 325
6061 __cil_tmp16 = *((spinlock_t **)__cil_tmp15);
6062#line 325
6063 spin_unlock_irqrestore(__cil_tmp16, irq_flags);
6064 }
6065#line 325
6066 return (rc);
6067}
6068}
6069#line 332 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
6070static int command_abort(struct scsi_cmnd *srb )
6071{ struct us_data *us ;
6072 struct us_data *tmp___7 ;
6073 struct Scsi_Host *tmp___8 ;
6074 struct Scsi_Host *tmp___9 ;
6075 int tmp___10 ;
6076 struct Scsi_Host *tmp___12 ;
6077 struct scsi_device *__cil_tmp9 ;
6078 struct Scsi_Host *__cil_tmp10 ;
6079 unsigned long __cil_tmp11 ;
6080 unsigned long __cil_tmp12 ;
6081 spinlock_t *__cil_tmp13 ;
6082 unsigned long __cil_tmp14 ;
6083 unsigned long __cil_tmp15 ;
6084 unsigned long __cil_tmp16 ;
6085 struct scsi_cmnd *__cil_tmp17 ;
6086 unsigned long __cil_tmp18 ;
6087 unsigned long __cil_tmp19 ;
6088 unsigned long __cil_tmp20 ;
6089 spinlock_t *__cil_tmp21 ;
6090 unsigned long __cil_tmp22 ;
6091 unsigned long __cil_tmp23 ;
6092 unsigned long *__cil_tmp24 ;
6093 unsigned long volatile *__cil_tmp25 ;
6094 unsigned long __cil_tmp26 ;
6095 unsigned long __cil_tmp27 ;
6096 unsigned long *__cil_tmp28 ;
6097 unsigned long volatile *__cil_tmp29 ;
6098 unsigned long __cil_tmp30 ;
6099 unsigned long __cil_tmp31 ;
6100 unsigned long *__cil_tmp32 ;
6101 unsigned long volatile *__cil_tmp33 ;
6102 unsigned long __cil_tmp34 ;
6103 unsigned long __cil_tmp35 ;
6104 spinlock_t *__cil_tmp36 ;
6105 unsigned long __cil_tmp37 ;
6106 unsigned long __cil_tmp38 ;
6107 struct completion *__cil_tmp39 ;
6108
6109 {
6110 {
6111#line 334
6112 __cil_tmp9 = *((struct scsi_device **)srb);
6113#line 334
6114 __cil_tmp10 = *((struct Scsi_Host **)__cil_tmp9);
6115#line 334
6116 tmp___7 = host_to_us(__cil_tmp10);
6117#line 334
6118 us = tmp___7;
6119#line 336
6120 printk("<7>usb-storage: %s called\n", "command_abort");
6121#line 340
6122 tmp___8 = us_to_host(us);
6123#line 340
6124 __cil_tmp11 = (unsigned long )tmp___8;
6125#line 340
6126 __cil_tmp12 = __cil_tmp11 + 120;
6127#line 340
6128 __cil_tmp13 = *((spinlock_t **)__cil_tmp12);
6129#line 340
6130 spin_lock_irq(__cil_tmp13);
6131 }
6132 {
6133#line 343
6134 __cil_tmp14 = (unsigned long )srb;
6135#line 343
6136 __cil_tmp15 = (unsigned long )us;
6137#line 343
6138 __cil_tmp16 = __cil_tmp15 + 192;
6139#line 343
6140 __cil_tmp17 = *((struct scsi_cmnd **)__cil_tmp16);
6141#line 343
6142 __cil_tmp18 = (unsigned long )__cil_tmp17;
6143#line 343
6144 if (__cil_tmp18 != __cil_tmp14) {
6145 {
6146#line 344
6147 tmp___9 = us_to_host(us);
6148#line 344
6149 __cil_tmp19 = (unsigned long )tmp___9;
6150#line 344
6151 __cil_tmp20 = __cil_tmp19 + 120;
6152#line 344
6153 __cil_tmp21 = *((spinlock_t **)__cil_tmp20);
6154#line 344
6155 spin_unlock_irq(__cil_tmp21);
6156#line 345
6157 printk("<7>usb-storage: -- nothing to abort\n");
6158 }
6159#line 346
6160 return (8195);
6161 } else {
6162
6163 }
6164 }
6165 {
6166#line 354
6167 __cil_tmp22 = (unsigned long )us;
6168#line 354
6169 __cil_tmp23 = __cil_tmp22 + 104;
6170#line 354
6171 __cil_tmp24 = (unsigned long *)__cil_tmp23;
6172#line 354
6173 __cil_tmp25 = (unsigned long volatile *)__cil_tmp24;
6174#line 354
6175 set_bit(5U, __cil_tmp25);
6176#line 355
6177 __cil_tmp26 = (unsigned long )us;
6178#line 355
6179 __cil_tmp27 = __cil_tmp26 + 104;
6180#line 355
6181 __cil_tmp28 = (unsigned long *)__cil_tmp27;
6182#line 355
6183 __cil_tmp29 = (unsigned long volatile *)__cil_tmp28;
6184#line 355
6185 tmp___10 = ant_test_bit(4U, __cil_tmp29);
6186 }
6187#line 355
6188 if (tmp___10) {
6189
6190 } else {
6191 {
6192#line 356
6193 __cil_tmp30 = (unsigned long )us;
6194#line 356
6195 __cil_tmp31 = __cil_tmp30 + 104;
6196#line 356
6197 __cil_tmp32 = (unsigned long *)__cil_tmp31;
6198#line 356
6199 __cil_tmp33 = (unsigned long volatile *)__cil_tmp32;
6200#line 356
6201 set_bit(2U, __cil_tmp33);
6202#line 357
6203 usb_stor_stop_transport(us);
6204 }
6205 }
6206 {
6207#line 359
6208 tmp___12 = us_to_host(us);
6209#line 359
6210 __cil_tmp34 = (unsigned long )tmp___12;
6211#line 359
6212 __cil_tmp35 = __cil_tmp34 + 120;
6213#line 359
6214 __cil_tmp36 = *((spinlock_t **)__cil_tmp35);
6215#line 359
6216 spin_unlock_irq(__cil_tmp36);
6217#line 362
6218 __cil_tmp37 = (unsigned long )us;
6219#line 362
6220 __cil_tmp38 = __cil_tmp37 + 448;
6221#line 362
6222 __cil_tmp39 = (struct completion *)__cil_tmp38;
6223#line 362
6224 wait_for_completion(__cil_tmp39);
6225 }
6226#line 363
6227 return (8194);
6228}
6229}
6230#line 368 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
6231static int device_reset(struct scsi_cmnd *srb )
6232{ struct us_data *us ;
6233 struct us_data *tmp___7 ;
6234 int result ;
6235 int tmp___8 ;
6236 struct scsi_device *__cil_tmp6 ;
6237 struct Scsi_Host *__cil_tmp7 ;
6238 struct mutex *__cil_tmp8 ;
6239 unsigned long __cil_tmp9 ;
6240 unsigned long __cil_tmp10 ;
6241 int (*__cil_tmp11)(struct us_data * ) ;
6242 struct mutex *__cil_tmp12 ;
6243
6244 {
6245 {
6246#line 370
6247 __cil_tmp6 = *((struct scsi_device **)srb);
6248#line 370
6249 __cil_tmp7 = *((struct Scsi_Host **)__cil_tmp6);
6250#line 370
6251 tmp___7 = host_to_us(__cil_tmp7);
6252#line 370
6253 us = tmp___7;
6254#line 373
6255 printk("<7>usb-storage: %s called\n", "device_reset");
6256#line 376
6257 __cil_tmp8 = (struct mutex *)us;
6258#line 376
6259 mutex_lock(__cil_tmp8);
6260#line 377
6261 __cil_tmp9 = (unsigned long )us;
6262#line 377
6263 __cil_tmp10 = __cil_tmp9 + 176;
6264#line 377
6265 __cil_tmp11 = *((int (**)(struct us_data * ))__cil_tmp10);
6266#line 377
6267 result = (*__cil_tmp11)(us);
6268#line 378
6269 __cil_tmp12 = (struct mutex *)us;
6270#line 378
6271 mutex_unlock(__cil_tmp12);
6272 }
6273#line 380
6274 if (result < 0) {
6275#line 380
6276 tmp___8 = 8195;
6277 } else {
6278#line 380
6279 tmp___8 = 8194;
6280 }
6281#line 380
6282 return (tmp___8);
6283}
6284}
6285#line 384 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
6286static int bus_reset(struct scsi_cmnd *srb )
6287{ struct us_data *us ;
6288 struct us_data *tmp___7 ;
6289 int result ;
6290 int tmp___8 ;
6291 struct scsi_device *__cil_tmp6 ;
6292 struct Scsi_Host *__cil_tmp7 ;
6293
6294 {
6295 {
6296#line 386
6297 __cil_tmp6 = *((struct scsi_device **)srb);
6298#line 386
6299 __cil_tmp7 = *((struct Scsi_Host **)__cil_tmp6);
6300#line 386
6301 tmp___7 = host_to_us(__cil_tmp7);
6302#line 386
6303 us = tmp___7;
6304#line 389
6305 printk("<7>usb-storage: %s called\n", "bus_reset");
6306#line 390
6307 result = usb_stor_port_reset(us);
6308 }
6309#line 391
6310 if (result < 0) {
6311#line 391
6312 tmp___8 = 8195;
6313 } else {
6314#line 391
6315 tmp___8 = 8194;
6316 }
6317#line 391
6318 return (tmp___8);
6319}
6320}
6321#line 397 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
6322void usb_stor_report_device_reset(struct us_data *us )
6323{ int i ;
6324 struct Scsi_Host *host ;
6325 struct Scsi_Host *tmp___7 ;
6326 unsigned long __cil_tmp5 ;
6327 unsigned long __cil_tmp6 ;
6328 unsigned long __cil_tmp7 ;
6329 unsigned long __cil_tmp8 ;
6330 unsigned long __cil_tmp9 ;
6331 unsigned int __cil_tmp10 ;
6332 unsigned int __cil_tmp11 ;
6333
6334 {
6335 {
6336#line 400
6337 tmp___7 = us_to_host(us);
6338#line 400
6339 host = tmp___7;
6340#line 402
6341 scsi_report_device_reset(host, 0, 0);
6342 }
6343 {
6344#line 403
6345 __cil_tmp5 = (unsigned long )us;
6346#line 403
6347 __cil_tmp6 = __cil_tmp5 + 96;
6348#line 403
6349 __cil_tmp7 = *((unsigned long *)__cil_tmp6);
6350#line 403
6351 if (__cil_tmp7 & 4UL) {
6352#line 404
6353 i = 1;
6354 {
6355#line 404
6356 while (1) {
6357 while_continue: ;
6358 {
6359#line 404
6360 __cil_tmp8 = (unsigned long )host;
6361#line 404
6362 __cil_tmp9 = __cil_tmp8 + 328;
6363#line 404
6364 __cil_tmp10 = *((unsigned int *)__cil_tmp9);
6365#line 404
6366 __cil_tmp11 = (unsigned int )i;
6367#line 404
6368 if (__cil_tmp11 < __cil_tmp10) {
6369
6370 } else {
6371#line 404
6372 goto while_break;
6373 }
6374 }
6375 {
6376#line 405
6377 scsi_report_device_reset(host, 0, i);
6378#line 404
6379 i = i + 1;
6380 }
6381 }
6382 while_break: ;
6383 }
6384 } else {
6385
6386 }
6387 }
6388#line 407
6389 return;
6390}
6391}
6392#line 412 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
6393void usb_stor_report_bus_reset(struct us_data *us )
6394{ struct Scsi_Host *host ;
6395 struct Scsi_Host *tmp___7 ;
6396 unsigned long __cil_tmp4 ;
6397 unsigned long __cil_tmp5 ;
6398 spinlock_t *__cil_tmp6 ;
6399 unsigned long __cil_tmp7 ;
6400 unsigned long __cil_tmp8 ;
6401 spinlock_t *__cil_tmp9 ;
6402
6403 {
6404 {
6405#line 414
6406 tmp___7 = us_to_host(us);
6407#line 414
6408 host = tmp___7;
6409#line 416
6410 __cil_tmp4 = (unsigned long )host;
6411#line 416
6412 __cil_tmp5 = __cil_tmp4 + 120;
6413#line 416
6414 __cil_tmp6 = *((spinlock_t **)__cil_tmp5);
6415#line 416
6416 spin_lock_irq(__cil_tmp6);
6417#line 417
6418 scsi_report_bus_reset(host, 0);
6419#line 418
6420 __cil_tmp7 = (unsigned long )host;
6421#line 418
6422 __cil_tmp8 = __cil_tmp7 + 120;
6423#line 418
6424 __cil_tmp9 = *((spinlock_t **)__cil_tmp8);
6425#line 418
6426 spin_unlock_irq(__cil_tmp9);
6427 }
6428#line 419
6429 return;
6430}
6431}
6432#line 430 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
6433static int proc_info(struct Scsi_Host *host , char *buffer , char **start , off_t offset ,
6434 int length , int inout )
6435{ struct us_data *us ;
6436 struct us_data *tmp___7 ;
6437 char *pos ;
6438 char *string ;
6439 int tmp___8 ;
6440 int tmp___9 ;
6441 int tmp___10 ;
6442 int tmp___11 ;
6443 int tmp___12 ;
6444 int tmp___13 ;
6445 int tmp___14 ;
6446 int tmp___15 ;
6447 int tmp___16 ;
6448 int tmp___17 ;
6449 int tmp___18 ;
6450 int tmp___19 ;
6451 int tmp___20 ;
6452 int tmp___21 ;
6453 int tmp___22 ;
6454 int tmp___23 ;
6455 int tmp___24 ;
6456 int tmp___25 ;
6457 int tmp___26 ;
6458 int tmp___27 ;
6459 int tmp___28 ;
6460 int tmp___29 ;
6461 int tmp___30 ;
6462 int tmp___31 ;
6463 int tmp___32 ;
6464 int tmp___33 ;
6465 int tmp___34 ;
6466 int tmp___35 ;
6467 char *tmp___36 ;
6468 char *__cil_tmp40 ;
6469 unsigned long __cil_tmp41 ;
6470 unsigned long __cil_tmp42 ;
6471 unsigned long __cil_tmp43 ;
6472 unsigned long __cil_tmp44 ;
6473 unsigned int __cil_tmp45 ;
6474 unsigned long __cil_tmp46 ;
6475 unsigned long __cil_tmp47 ;
6476 struct usb_device *__cil_tmp48 ;
6477 unsigned long __cil_tmp49 ;
6478 unsigned long __cil_tmp50 ;
6479 unsigned long __cil_tmp51 ;
6480 unsigned long __cil_tmp52 ;
6481 struct usb_device *__cil_tmp53 ;
6482 unsigned long __cil_tmp54 ;
6483 unsigned long __cil_tmp55 ;
6484 char *__cil_tmp56 ;
6485 unsigned long __cil_tmp57 ;
6486 unsigned long __cil_tmp58 ;
6487 struct us_unusual_dev *__cil_tmp59 ;
6488 unsigned long __cil_tmp60 ;
6489 unsigned long __cil_tmp61 ;
6490 struct us_unusual_dev *__cil_tmp62 ;
6491 char *__cil_tmp63 ;
6492 unsigned long __cil_tmp64 ;
6493 unsigned long __cil_tmp65 ;
6494 unsigned long __cil_tmp66 ;
6495 unsigned long __cil_tmp67 ;
6496 struct usb_device *__cil_tmp68 ;
6497 unsigned long __cil_tmp69 ;
6498 unsigned long __cil_tmp70 ;
6499 unsigned long __cil_tmp71 ;
6500 unsigned long __cil_tmp72 ;
6501 struct usb_device *__cil_tmp73 ;
6502 unsigned long __cil_tmp74 ;
6503 unsigned long __cil_tmp75 ;
6504 char *__cil_tmp76 ;
6505 unsigned long __cil_tmp77 ;
6506 unsigned long __cil_tmp78 ;
6507 struct us_unusual_dev *__cil_tmp79 ;
6508 unsigned long __cil_tmp80 ;
6509 unsigned long __cil_tmp81 ;
6510 unsigned long __cil_tmp82 ;
6511 unsigned long __cil_tmp83 ;
6512 struct us_unusual_dev *__cil_tmp84 ;
6513 unsigned long __cil_tmp85 ;
6514 unsigned long __cil_tmp86 ;
6515 char *__cil_tmp87 ;
6516 unsigned long __cil_tmp88 ;
6517 unsigned long __cil_tmp89 ;
6518 unsigned long __cil_tmp90 ;
6519 unsigned long __cil_tmp91 ;
6520 struct usb_device *__cil_tmp92 ;
6521 unsigned long __cil_tmp93 ;
6522 unsigned long __cil_tmp94 ;
6523 unsigned long __cil_tmp95 ;
6524 unsigned long __cil_tmp96 ;
6525 struct usb_device *__cil_tmp97 ;
6526 unsigned long __cil_tmp98 ;
6527 unsigned long __cil_tmp99 ;
6528 char *__cil_tmp100 ;
6529 char *__cil_tmp101 ;
6530 unsigned long __cil_tmp102 ;
6531 unsigned long __cil_tmp103 ;
6532 char *__cil_tmp104 ;
6533 unsigned long __cil_tmp105 ;
6534 unsigned long __cil_tmp106 ;
6535 unsigned long __cil_tmp107 ;
6536 unsigned long __cil_tmp108 ;
6537 char *__cil_tmp109 ;
6538 char *__cil_tmp110 ;
6539 unsigned long __cil_tmp111 ;
6540 unsigned long __cil_tmp112 ;
6541 unsigned long __cil_tmp113 ;
6542 unsigned long __cil_tmp114 ;
6543 char *__cil_tmp115 ;
6544 char *__cil_tmp116 ;
6545 unsigned long __cil_tmp117 ;
6546 unsigned long __cil_tmp118 ;
6547 unsigned long __cil_tmp119 ;
6548 unsigned long __cil_tmp120 ;
6549 unsigned long __cil_tmp121 ;
6550 unsigned long __cil_tmp122 ;
6551 unsigned long __cil_tmp123 ;
6552 unsigned long __cil_tmp124 ;
6553 unsigned long __cil_tmp125 ;
6554 unsigned long __cil_tmp126 ;
6555 unsigned long __cil_tmp127 ;
6556 unsigned long __cil_tmp128 ;
6557 unsigned long __cil_tmp129 ;
6558 unsigned long __cil_tmp130 ;
6559 unsigned long __cil_tmp131 ;
6560 unsigned long __cil_tmp132 ;
6561 unsigned long __cil_tmp133 ;
6562 unsigned long __cil_tmp134 ;
6563 unsigned long __cil_tmp135 ;
6564 unsigned long __cil_tmp136 ;
6565 unsigned long __cil_tmp137 ;
6566 unsigned long __cil_tmp138 ;
6567 unsigned long __cil_tmp139 ;
6568 unsigned long __cil_tmp140 ;
6569 unsigned long __cil_tmp141 ;
6570 unsigned long __cil_tmp142 ;
6571 unsigned long __cil_tmp143 ;
6572 unsigned long __cil_tmp144 ;
6573 unsigned long __cil_tmp145 ;
6574 unsigned long __cil_tmp146 ;
6575 unsigned long __cil_tmp147 ;
6576 unsigned long __cil_tmp148 ;
6577 unsigned long __cil_tmp149 ;
6578 unsigned long __cil_tmp150 ;
6579 unsigned long __cil_tmp151 ;
6580 unsigned long __cil_tmp152 ;
6581 unsigned long __cil_tmp153 ;
6582 unsigned long __cil_tmp154 ;
6583 unsigned long __cil_tmp155 ;
6584 unsigned long __cil_tmp156 ;
6585 unsigned long __cil_tmp157 ;
6586 unsigned long __cil_tmp158 ;
6587 unsigned long __cil_tmp159 ;
6588 unsigned long __cil_tmp160 ;
6589 unsigned long __cil_tmp161 ;
6590 unsigned long __cil_tmp162 ;
6591 unsigned long __cil_tmp163 ;
6592 unsigned long __cil_tmp164 ;
6593 unsigned long __cil_tmp165 ;
6594 unsigned long __cil_tmp166 ;
6595 unsigned long __cil_tmp167 ;
6596 unsigned long __cil_tmp168 ;
6597 unsigned long __cil_tmp169 ;
6598 unsigned long __cil_tmp170 ;
6599 unsigned long __cil_tmp171 ;
6600 unsigned long __cil_tmp172 ;
6601 unsigned long __cil_tmp173 ;
6602 unsigned long __cil_tmp174 ;
6603 unsigned long __cil_tmp175 ;
6604 unsigned long __cil_tmp176 ;
6605 unsigned long __cil_tmp177 ;
6606 unsigned long __cil_tmp178 ;
6607 unsigned long __cil_tmp179 ;
6608 unsigned long __cil_tmp180 ;
6609 unsigned long __cil_tmp181 ;
6610 int __cil_tmp182 ;
6611 off_t __cil_tmp183 ;
6612 off_t __cil_tmp184 ;
6613 int __cil_tmp185 ;
6614 off_t __cil_tmp186 ;
6615 off_t __cil_tmp187 ;
6616 int __cil_tmp188 ;
6617 off_t __cil_tmp189 ;
6618 off_t __cil_tmp190 ;
6619
6620 {
6621 {
6622#line 433
6623 tmp___7 = host_to_us(host);
6624#line 433
6625 us = tmp___7;
6626#line 434
6627 pos = buffer;
6628 }
6629#line 438
6630 if (inout) {
6631#line 439
6632 return (length);
6633 } else {
6634
6635 }
6636 {
6637#line 442
6638 while (1) {
6639 while_continue: ;
6640 {
6641#line 442
6642 __cil_tmp40 = buffer + length;
6643#line 442
6644 __cil_tmp41 = (unsigned long )__cil_tmp40;
6645#line 442
6646 __cil_tmp42 = (unsigned long )pos;
6647#line 442
6648 if (__cil_tmp42 < __cil_tmp41) {
6649 {
6650#line 442
6651 __cil_tmp43 = (unsigned long )host;
6652#line 442
6653 __cil_tmp44 = __cil_tmp43 + 308;
6654#line 442
6655 __cil_tmp45 = *((unsigned int *)__cil_tmp44);
6656#line 442
6657 tmp___8 = sprintf(pos, " Host scsi%d: usb-storage\n", __cil_tmp45);
6658#line 442
6659 pos = pos + tmp___8;
6660 }
6661 } else {
6662
6663 }
6664 }
6665#line 442
6666 goto while_break;
6667 }
6668 while_break: ;
6669 }
6670 {
6671#line 445
6672 __cil_tmp46 = (unsigned long )us;
6673#line 445
6674 __cil_tmp47 = __cil_tmp46 + 72;
6675#line 445
6676 __cil_tmp48 = *((struct usb_device **)__cil_tmp47);
6677#line 445
6678 __cil_tmp49 = (unsigned long )__cil_tmp48;
6679#line 445
6680 __cil_tmp50 = __cil_tmp49 + 1240;
6681#line 445
6682 if (*((char **)__cil_tmp50)) {
6683#line 446
6684 __cil_tmp51 = (unsigned long )us;
6685#line 446
6686 __cil_tmp52 = __cil_tmp51 + 72;
6687#line 446
6688 __cil_tmp53 = *((struct usb_device **)__cil_tmp52);
6689#line 446
6690 __cil_tmp54 = (unsigned long )__cil_tmp53;
6691#line 446
6692 __cil_tmp55 = __cil_tmp54 + 1240;
6693#line 446
6694 __cil_tmp56 = *((char **)__cil_tmp55);
6695#line 446
6696 string = (char *)__cil_tmp56;
6697 } else {
6698 {
6699#line 447
6700 __cil_tmp57 = (unsigned long )us;
6701#line 447
6702 __cil_tmp58 = __cil_tmp57 + 88;
6703#line 447
6704 __cil_tmp59 = *((struct us_unusual_dev **)__cil_tmp58);
6705#line 447
6706 if (*((char **)__cil_tmp59)) {
6707#line 448
6708 __cil_tmp60 = (unsigned long )us;
6709#line 448
6710 __cil_tmp61 = __cil_tmp60 + 88;
6711#line 448
6712 __cil_tmp62 = *((struct us_unusual_dev **)__cil_tmp61);
6713#line 448
6714 string = *((char **)__cil_tmp62);
6715 } else {
6716#line 450
6717 string = "Unknown";
6718 }
6719 }
6720 }
6721 }
6722 {
6723#line 451
6724 while (1) {
6725 while_continue___0: ;
6726 {
6727#line 451
6728 __cil_tmp63 = buffer + length;
6729#line 451
6730 __cil_tmp64 = (unsigned long )__cil_tmp63;
6731#line 451
6732 __cil_tmp65 = (unsigned long )pos;
6733#line 451
6734 if (__cil_tmp65 < __cil_tmp64) {
6735 {
6736#line 451
6737 tmp___9 = sprintf(pos, " Vendor: %s\n", string);
6738#line 451
6739 pos = pos + tmp___9;
6740 }
6741 } else {
6742
6743 }
6744 }
6745#line 451
6746 goto while_break___0;
6747 }
6748 while_break___0: ;
6749 }
6750 {
6751#line 452
6752 __cil_tmp66 = (unsigned long )us;
6753#line 452
6754 __cil_tmp67 = __cil_tmp66 + 72;
6755#line 452
6756 __cil_tmp68 = *((struct usb_device **)__cil_tmp67);
6757#line 452
6758 __cil_tmp69 = (unsigned long )__cil_tmp68;
6759#line 452
6760 __cil_tmp70 = __cil_tmp69 + 1232;
6761#line 452
6762 if (*((char **)__cil_tmp70)) {
6763#line 453
6764 __cil_tmp71 = (unsigned long )us;
6765#line 453
6766 __cil_tmp72 = __cil_tmp71 + 72;
6767#line 453
6768 __cil_tmp73 = *((struct usb_device **)__cil_tmp72);
6769#line 453
6770 __cil_tmp74 = (unsigned long )__cil_tmp73;
6771#line 453
6772 __cil_tmp75 = __cil_tmp74 + 1232;
6773#line 453
6774 __cil_tmp76 = *((char **)__cil_tmp75);
6775#line 453
6776 string = (char *)__cil_tmp76;
6777 } else {
6778 {
6779#line 454
6780 __cil_tmp77 = (unsigned long )us;
6781#line 454
6782 __cil_tmp78 = __cil_tmp77 + 88;
6783#line 454
6784 __cil_tmp79 = *((struct us_unusual_dev **)__cil_tmp78);
6785#line 454
6786 __cil_tmp80 = (unsigned long )__cil_tmp79;
6787#line 454
6788 __cil_tmp81 = __cil_tmp80 + 8;
6789#line 454
6790 if (*((char **)__cil_tmp81)) {
6791#line 455
6792 __cil_tmp82 = (unsigned long )us;
6793#line 455
6794 __cil_tmp83 = __cil_tmp82 + 88;
6795#line 455
6796 __cil_tmp84 = *((struct us_unusual_dev **)__cil_tmp83);
6797#line 455
6798 __cil_tmp85 = (unsigned long )__cil_tmp84;
6799#line 455
6800 __cil_tmp86 = __cil_tmp85 + 8;
6801#line 455
6802 string = *((char **)__cil_tmp86);
6803 } else {
6804#line 457
6805 string = "Unknown";
6806 }
6807 }
6808 }
6809 }
6810 {
6811#line 458
6812 while (1) {
6813 while_continue___1: ;
6814 {
6815#line 458
6816 __cil_tmp87 = buffer + length;
6817#line 458
6818 __cil_tmp88 = (unsigned long )__cil_tmp87;
6819#line 458
6820 __cil_tmp89 = (unsigned long )pos;
6821#line 458
6822 if (__cil_tmp89 < __cil_tmp88) {
6823 {
6824#line 458
6825 tmp___10 = sprintf(pos, " Product: %s\n", string);
6826#line 458
6827 pos = pos + tmp___10;
6828 }
6829 } else {
6830
6831 }
6832 }
6833#line 458
6834 goto while_break___1;
6835 }
6836 while_break___1: ;
6837 }
6838 {
6839#line 459
6840 __cil_tmp90 = (unsigned long )us;
6841#line 459
6842 __cil_tmp91 = __cil_tmp90 + 72;
6843#line 459
6844 __cil_tmp92 = *((struct usb_device **)__cil_tmp91);
6845#line 459
6846 __cil_tmp93 = (unsigned long )__cil_tmp92;
6847#line 459
6848 __cil_tmp94 = __cil_tmp93 + 1248;
6849#line 459
6850 if (*((char **)__cil_tmp94)) {
6851#line 460
6852 __cil_tmp95 = (unsigned long )us;
6853#line 460
6854 __cil_tmp96 = __cil_tmp95 + 72;
6855#line 460
6856 __cil_tmp97 = *((struct usb_device **)__cil_tmp96);
6857#line 460
6858 __cil_tmp98 = (unsigned long )__cil_tmp97;
6859#line 460
6860 __cil_tmp99 = __cil_tmp98 + 1248;
6861#line 460
6862 __cil_tmp100 = *((char **)__cil_tmp99);
6863#line 460
6864 string = (char *)__cil_tmp100;
6865 } else {
6866#line 462
6867 string = "None";
6868 }
6869 }
6870 {
6871#line 463
6872 while (1) {
6873 while_continue___2: ;
6874 {
6875#line 463
6876 __cil_tmp101 = buffer + length;
6877#line 463
6878 __cil_tmp102 = (unsigned long )__cil_tmp101;
6879#line 463
6880 __cil_tmp103 = (unsigned long )pos;
6881#line 463
6882 if (__cil_tmp103 < __cil_tmp102) {
6883 {
6884#line 463
6885 tmp___11 = sprintf(pos, "Serial Number: %s\n", string);
6886#line 463
6887 pos = pos + tmp___11;
6888 }
6889 } else {
6890
6891 }
6892 }
6893#line 463
6894 goto while_break___2;
6895 }
6896 while_break___2: ;
6897 }
6898 {
6899#line 466
6900 while (1) {
6901 while_continue___3: ;
6902 {
6903#line 466
6904 __cil_tmp104 = buffer + length;
6905#line 466
6906 __cil_tmp105 = (unsigned long )__cil_tmp104;
6907#line 466
6908 __cil_tmp106 = (unsigned long )pos;
6909#line 466
6910 if (__cil_tmp106 < __cil_tmp105) {
6911 {
6912#line 466
6913 __cil_tmp107 = (unsigned long )us;
6914#line 466
6915 __cil_tmp108 = __cil_tmp107 + 144;
6916#line 466
6917 __cil_tmp109 = *((char **)__cil_tmp108);
6918#line 466
6919 tmp___12 = sprintf(pos, " Protocol: %s\n", __cil_tmp109);
6920#line 466
6921 pos = pos + tmp___12;
6922 }
6923 } else {
6924
6925 }
6926 }
6927#line 466
6928 goto while_break___3;
6929 }
6930 while_break___3: ;
6931 }
6932 {
6933#line 467
6934 while (1) {
6935 while_continue___4: ;
6936 {
6937#line 467
6938 __cil_tmp110 = buffer + length;
6939#line 467
6940 __cil_tmp111 = (unsigned long )__cil_tmp110;
6941#line 467
6942 __cil_tmp112 = (unsigned long )pos;
6943#line 467
6944 if (__cil_tmp112 < __cil_tmp111) {
6945 {
6946#line 467
6947 __cil_tmp113 = (unsigned long )us;
6948#line 467
6949 __cil_tmp114 = __cil_tmp113 + 136;
6950#line 467
6951 __cil_tmp115 = *((char **)__cil_tmp114);
6952#line 467
6953 tmp___13 = sprintf(pos, " Transport: %s\n", __cil_tmp115);
6954#line 467
6955 pos = pos + tmp___13;
6956 }
6957 } else {
6958
6959 }
6960 }
6961#line 467
6962 goto while_break___4;
6963 }
6964 while_break___4: ;
6965 }
6966 {
6967#line 470
6968 __cil_tmp116 = buffer + length;
6969#line 470
6970 __cil_tmp117 = (unsigned long )__cil_tmp116;
6971#line 470
6972 __cil_tmp118 = (unsigned long )pos;
6973#line 470
6974 if (__cil_tmp118 < __cil_tmp117) {
6975 {
6976#line 471
6977 tmp___14 = sprintf(pos, " Quirks:");
6978#line 471
6979 pos = pos + tmp___14;
6980 }
6981 {
6982#line 475
6983 __cil_tmp119 = (unsigned long )us;
6984#line 475
6985 __cil_tmp120 = __cil_tmp119 + 96;
6986#line 475
6987 __cil_tmp121 = *((unsigned long *)__cil_tmp120);
6988#line 475
6989 if (__cil_tmp121 & 1UL) {
6990 {
6991#line 475
6992 tmp___15 = sprintf(pos, " SINGLE_LUN");
6993#line 475
6994 pos = pos + tmp___15;
6995 }
6996 } else {
6997
6998 }
6999 }
7000 {
7001#line 475
7002 __cil_tmp122 = (unsigned long )us;
7003#line 475
7004 __cil_tmp123 = __cil_tmp122 + 96;
7005#line 475
7006 __cil_tmp124 = *((unsigned long *)__cil_tmp123);
7007#line 475
7008 if (__cil_tmp124 & 2UL) {
7009 {
7010#line 475
7011 tmp___16 = sprintf(pos, " NEED_OVERRIDE");
7012#line 475
7013 pos = pos + tmp___16;
7014 }
7015 } else {
7016
7017 }
7018 }
7019 {
7020#line 475
7021 __cil_tmp125 = (unsigned long )us;
7022#line 475
7023 __cil_tmp126 = __cil_tmp125 + 96;
7024#line 475
7025 __cil_tmp127 = *((unsigned long *)__cil_tmp126);
7026#line 475
7027 if (__cil_tmp127 & 4UL) {
7028 {
7029#line 475
7030 tmp___17 = sprintf(pos, " SCM_MULT_TARG");
7031#line 475
7032 pos = pos + tmp___17;
7033 }
7034 } else {
7035
7036 }
7037 }
7038 {
7039#line 475
7040 __cil_tmp128 = (unsigned long )us;
7041#line 475
7042 __cil_tmp129 = __cil_tmp128 + 96;
7043#line 475
7044 __cil_tmp130 = *((unsigned long *)__cil_tmp129);
7045#line 475
7046 if (__cil_tmp130 & 8UL) {
7047 {
7048#line 475
7049 tmp___18 = sprintf(pos, " FIX_INQUIRY");
7050#line 475
7051 pos = pos + tmp___18;
7052 }
7053 } else {
7054
7055 }
7056 }
7057 {
7058#line 475
7059 __cil_tmp131 = (unsigned long )us;
7060#line 475
7061 __cil_tmp132 = __cil_tmp131 + 96;
7062#line 475
7063 __cil_tmp133 = *((unsigned long *)__cil_tmp132);
7064#line 475
7065 if (__cil_tmp133 & 16UL) {
7066 {
7067#line 475
7068 tmp___19 = sprintf(pos, " FIX_CAPACITY");
7069#line 475
7070 pos = pos + tmp___19;
7071 }
7072 } else {
7073
7074 }
7075 }
7076 {
7077#line 475
7078 __cil_tmp134 = (unsigned long )us;
7079#line 475
7080 __cil_tmp135 = __cil_tmp134 + 96;
7081#line 475
7082 __cil_tmp136 = *((unsigned long *)__cil_tmp135);
7083#line 475
7084 if (__cil_tmp136 & 32UL) {
7085 {
7086#line 475
7087 tmp___20 = sprintf(pos, " IGNORE_RESIDUE");
7088#line 475
7089 pos = pos + tmp___20;
7090 }
7091 } else {
7092
7093 }
7094 }
7095 {
7096#line 475
7097 __cil_tmp137 = (unsigned long )us;
7098#line 475
7099 __cil_tmp138 = __cil_tmp137 + 96;
7100#line 475
7101 __cil_tmp139 = *((unsigned long *)__cil_tmp138);
7102#line 475
7103 if (__cil_tmp139 & 64UL) {
7104 {
7105#line 475
7106 tmp___21 = sprintf(pos, " BULK32");
7107#line 475
7108 pos = pos + tmp___21;
7109 }
7110 } else {
7111
7112 }
7113 }
7114 {
7115#line 475
7116 __cil_tmp140 = (unsigned long )us;
7117#line 475
7118 __cil_tmp141 = __cil_tmp140 + 96;
7119#line 475
7120 __cil_tmp142 = *((unsigned long *)__cil_tmp141);
7121#line 475
7122 if (__cil_tmp142 & 128UL) {
7123 {
7124#line 475
7125 tmp___22 = sprintf(pos, " NOT_LOCKABLE");
7126#line 475
7127 pos = pos + tmp___22;
7128 }
7129 } else {
7130
7131 }
7132 }
7133 {
7134#line 475
7135 __cil_tmp143 = (unsigned long )us;
7136#line 475
7137 __cil_tmp144 = __cil_tmp143 + 96;
7138#line 475
7139 __cil_tmp145 = *((unsigned long *)__cil_tmp144);
7140#line 475
7141 if (__cil_tmp145 & 256UL) {
7142 {
7143#line 475
7144 tmp___23 = sprintf(pos, " GO_SLOW");
7145#line 475
7146 pos = pos + tmp___23;
7147 }
7148 } else {
7149
7150 }
7151 }
7152 {
7153#line 475
7154 __cil_tmp146 = (unsigned long )us;
7155#line 475
7156 __cil_tmp147 = __cil_tmp146 + 96;
7157#line 475
7158 __cil_tmp148 = *((unsigned long *)__cil_tmp147);
7159#line 475
7160 if (__cil_tmp148 & 512UL) {
7161 {
7162#line 475
7163 tmp___24 = sprintf(pos, " NO_WP_DETECT");
7164#line 475
7165 pos = pos + tmp___24;
7166 }
7167 } else {
7168
7169 }
7170 }
7171 {
7172#line 475
7173 __cil_tmp149 = (unsigned long )us;
7174#line 475
7175 __cil_tmp150 = __cil_tmp149 + 96;
7176#line 475
7177 __cil_tmp151 = *((unsigned long *)__cil_tmp150);
7178#line 475
7179 if (__cil_tmp151 & 1024UL) {
7180 {
7181#line 475
7182 tmp___25 = sprintf(pos, " MAX_SECTORS_64");
7183#line 475
7184 pos = pos + tmp___25;
7185 }
7186 } else {
7187
7188 }
7189 }
7190 {
7191#line 475
7192 __cil_tmp152 = (unsigned long )us;
7193#line 475
7194 __cil_tmp153 = __cil_tmp152 + 96;
7195#line 475
7196 __cil_tmp154 = *((unsigned long *)__cil_tmp153);
7197#line 475
7198 if (__cil_tmp154 & 2048UL) {
7199 {
7200#line 475
7201 tmp___26 = sprintf(pos, " IGNORE_DEVICE");
7202#line 475
7203 pos = pos + tmp___26;
7204 }
7205 } else {
7206
7207 }
7208 }
7209 {
7210#line 475
7211 __cil_tmp155 = (unsigned long )us;
7212#line 475
7213 __cil_tmp156 = __cil_tmp155 + 96;
7214#line 475
7215 __cil_tmp157 = *((unsigned long *)__cil_tmp156);
7216#line 475
7217 if (__cil_tmp157 & 4096UL) {
7218 {
7219#line 475
7220 tmp___27 = sprintf(pos, " CAPACITY_HEURISTICS");
7221#line 475
7222 pos = pos + tmp___27;
7223 }
7224 } else {
7225
7226 }
7227 }
7228 {
7229#line 475
7230 __cil_tmp158 = (unsigned long )us;
7231#line 475
7232 __cil_tmp159 = __cil_tmp158 + 96;
7233#line 475
7234 __cil_tmp160 = *((unsigned long *)__cil_tmp159);
7235#line 475
7236 if (__cil_tmp160 & 8192UL) {
7237 {
7238#line 475
7239 tmp___28 = sprintf(pos, " MAX_SECTORS_MIN");
7240#line 475
7241 pos = pos + tmp___28;
7242 }
7243 } else {
7244
7245 }
7246 }
7247 {
7248#line 475
7249 __cil_tmp161 = (unsigned long )us;
7250#line 475
7251 __cil_tmp162 = __cil_tmp161 + 96;
7252#line 475
7253 __cil_tmp163 = *((unsigned long *)__cil_tmp162);
7254#line 475
7255 if (__cil_tmp163 & 16384UL) {
7256 {
7257#line 475
7258 tmp___29 = sprintf(pos, " BULK_IGNORE_TAG");
7259#line 475
7260 pos = pos + tmp___29;
7261 }
7262 } else {
7263
7264 }
7265 }
7266 {
7267#line 475
7268 __cil_tmp164 = (unsigned long )us;
7269#line 475
7270 __cil_tmp165 = __cil_tmp164 + 96;
7271#line 475
7272 __cil_tmp166 = *((unsigned long *)__cil_tmp165);
7273#line 475
7274 if (__cil_tmp166 & 32768UL) {
7275 {
7276#line 475
7277 tmp___30 = sprintf(pos, " SANE_SENSE");
7278#line 475
7279 pos = pos + tmp___30;
7280 }
7281 } else {
7282
7283 }
7284 }
7285 {
7286#line 475
7287 __cil_tmp167 = (unsigned long )us;
7288#line 475
7289 __cil_tmp168 = __cil_tmp167 + 96;
7290#line 475
7291 __cil_tmp169 = *((unsigned long *)__cil_tmp168);
7292#line 475
7293 if (__cil_tmp169 & 65536UL) {
7294 {
7295#line 475
7296 tmp___31 = sprintf(pos, " CAPACITY_OK");
7297#line 475
7298 pos = pos + tmp___31;
7299 }
7300 } else {
7301
7302 }
7303 }
7304 {
7305#line 475
7306 __cil_tmp170 = (unsigned long )us;
7307#line 475
7308 __cil_tmp171 = __cil_tmp170 + 96;
7309#line 475
7310 __cil_tmp172 = *((unsigned long *)__cil_tmp171);
7311#line 475
7312 if (__cil_tmp172 & 131072UL) {
7313 {
7314#line 475
7315 tmp___32 = sprintf(pos, " BAD_SENSE");
7316#line 475
7317 pos = pos + tmp___32;
7318 }
7319 } else {
7320
7321 }
7322 }
7323 {
7324#line 475
7325 __cil_tmp173 = (unsigned long )us;
7326#line 475
7327 __cil_tmp174 = __cil_tmp173 + 96;
7328#line 475
7329 __cil_tmp175 = *((unsigned long *)__cil_tmp174);
7330#line 475
7331 if (__cil_tmp175 & 262144UL) {
7332 {
7333#line 475
7334 tmp___33 = sprintf(pos, " NO_READ_DISC_INFO");
7335#line 475
7336 pos = pos + tmp___33;
7337 }
7338 } else {
7339
7340 }
7341 }
7342 {
7343#line 475
7344 __cil_tmp176 = (unsigned long )us;
7345#line 475
7346 __cil_tmp177 = __cil_tmp176 + 96;
7347#line 475
7348 __cil_tmp178 = *((unsigned long *)__cil_tmp177);
7349#line 475
7350 if (__cil_tmp178 & 524288UL) {
7351 {
7352#line 475
7353 tmp___34 = sprintf(pos, " NO_READ_CAPACITY_16");
7354#line 475
7355 pos = pos + tmp___34;
7356 }
7357 } else {
7358
7359 }
7360 }
7361 {
7362#line 475
7363 __cil_tmp179 = (unsigned long )us;
7364#line 475
7365 __cil_tmp180 = __cil_tmp179 + 96;
7366#line 475
7367 __cil_tmp181 = *((unsigned long *)__cil_tmp180);
7368#line 475
7369 if (__cil_tmp181 & 1048576UL) {
7370 {
7371#line 475
7372 tmp___35 = sprintf(pos, " INITIAL_READ10");
7373#line 475
7374 pos = pos + tmp___35;
7375 }
7376 } else {
7377
7378 }
7379 }
7380#line 478
7381 tmp___36 = pos;
7382#line 478
7383 pos = pos + 1;
7384#line 478
7385 *tmp___36 = (char )'\n';
7386 } else {
7387
7388 }
7389 }
7390#line 484
7391 *start = buffer + offset;
7392 {
7393#line 486
7394 __cil_tmp182 = pos - buffer;
7395#line 486
7396 __cil_tmp183 = (off_t )__cil_tmp182;
7397#line 486
7398 if (__cil_tmp183 < offset) {
7399#line 487
7400 return (0);
7401 } else {
7402 {
7403#line 488
7404 __cil_tmp184 = (off_t )length;
7405#line 488
7406 __cil_tmp185 = pos - buffer;
7407#line 488
7408 __cil_tmp186 = (off_t )__cil_tmp185;
7409#line 488
7410 __cil_tmp187 = __cil_tmp186 - offset;
7411#line 488
7412 if (__cil_tmp187 < __cil_tmp184) {
7413 {
7414#line 489
7415 __cil_tmp188 = pos - buffer;
7416#line 489
7417 __cil_tmp189 = (off_t )__cil_tmp188;
7418#line 489
7419 __cil_tmp190 = __cil_tmp189 - offset;
7420#line 489
7421 return ((int )__cil_tmp190);
7422 }
7423 } else {
7424#line 491
7425 return (length);
7426 }
7427 }
7428 }
7429 }
7430}
7431}
7432#line 499 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7433static ssize_t show_max_sectors(struct device *dev , struct device_attribute *attr ,
7434 char *buf )
7435{ struct scsi_device *sdev ;
7436 struct device *__mptr ;
7437 unsigned int tmp___7 ;
7438 int tmp___8 ;
7439 struct scsi_device *__cil_tmp8 ;
7440 unsigned long __cil_tmp9 ;
7441 unsigned long __cil_tmp10 ;
7442 struct device *__cil_tmp11 ;
7443 unsigned int __cil_tmp12 ;
7444 char *__cil_tmp13 ;
7445 char *__cil_tmp14 ;
7446 unsigned long __cil_tmp15 ;
7447 unsigned long __cil_tmp16 ;
7448 struct request_queue *__cil_tmp17 ;
7449
7450 {
7451 {
7452#line 501
7453 __mptr = (struct device *)dev;
7454#line 501
7455 __cil_tmp8 = (struct scsi_device *)0;
7456#line 501
7457 __cil_tmp9 = (unsigned long )__cil_tmp8;
7458#line 501
7459 __cil_tmp10 = __cil_tmp9 + 336;
7460#line 501
7461 __cil_tmp11 = (struct device *)__cil_tmp10;
7462#line 501
7463 __cil_tmp12 = (unsigned int )__cil_tmp11;
7464#line 501
7465 __cil_tmp13 = (char *)__mptr;
7466#line 501
7467 __cil_tmp14 = __cil_tmp13 - __cil_tmp12;
7468#line 501
7469 sdev = (struct scsi_device *)__cil_tmp14;
7470#line 503
7471 __cil_tmp15 = (unsigned long )sdev;
7472#line 503
7473 __cil_tmp16 = __cil_tmp15 + 8;
7474#line 503
7475 __cil_tmp17 = *((struct request_queue **)__cil_tmp16);
7476#line 503
7477 tmp___7 = queue_max_hw_sectors(__cil_tmp17);
7478#line 503
7479 tmp___8 = sprintf(buf, "%u\n", tmp___7);
7480 }
7481#line 503
7482 return ((ssize_t )tmp___8);
7483}
7484}
7485#line 507 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7486static ssize_t store_max_sectors(struct device *dev , struct device_attribute *attr ,
7487 char *buf , size_t count )
7488{ struct scsi_device *sdev ;
7489 struct device *__mptr ;
7490 unsigned short ms ;
7491 int tmp___7 ;
7492 struct scsi_device *__cil_tmp9 ;
7493 unsigned long __cil_tmp10 ;
7494 unsigned long __cil_tmp11 ;
7495 struct device *__cil_tmp12 ;
7496 unsigned int __cil_tmp13 ;
7497 char *__cil_tmp14 ;
7498 char *__cil_tmp15 ;
7499 unsigned long __cil_tmp16 ;
7500 unsigned long __cil_tmp17 ;
7501 struct request_queue *__cil_tmp18 ;
7502 unsigned short *__cil_tmp19 ;
7503 unsigned short __cil_tmp20 ;
7504 unsigned int __cil_tmp21 ;
7505
7506 {
7507 {
7508#line 510
7509 __mptr = (struct device *)dev;
7510#line 510
7511 __cil_tmp9 = (struct scsi_device *)0;
7512#line 510
7513 __cil_tmp10 = (unsigned long )__cil_tmp9;
7514#line 510
7515 __cil_tmp11 = __cil_tmp10 + 336;
7516#line 510
7517 __cil_tmp12 = (struct device *)__cil_tmp11;
7518#line 510
7519 __cil_tmp13 = (unsigned int )__cil_tmp12;
7520#line 510
7521 __cil_tmp14 = (char *)__mptr;
7522#line 510
7523 __cil_tmp15 = __cil_tmp14 - __cil_tmp13;
7524#line 510
7525 sdev = (struct scsi_device *)__cil_tmp15;
7526#line 513
7527 tmp___7 = sscanf(buf, "%hu", & ms);
7528 }
7529#line 513
7530 if (tmp___7 > 0) {
7531 {
7532#line 514
7533 __cil_tmp16 = (unsigned long )sdev;
7534#line 514
7535 __cil_tmp17 = __cil_tmp16 + 8;
7536#line 514
7537 __cil_tmp18 = *((struct request_queue **)__cil_tmp17);
7538#line 514
7539 __cil_tmp19 = & ms;
7540#line 514
7541 __cil_tmp20 = *__cil_tmp19;
7542#line 514
7543 __cil_tmp21 = (unsigned int )__cil_tmp20;
7544#line 514
7545 blk_queue_max_hw_sectors(__cil_tmp18, __cil_tmp21);
7546 }
7547#line 515
7548 return ((ssize_t )count);
7549 } else {
7550
7551 }
7552#line 517
7553 return ((ssize_t )-22);
7554}
7555}
7556#line 520 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7557static struct device_attribute dev_attr_max_sectors = {{"max_sectors", (umode_t )420}, & show_max_sectors, & store_max_sectors};
7558#line 523 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7559static struct device_attribute *sysfs_device_attr_list[2] = { & dev_attr_max_sectors, (struct device_attribute *)((void *)0)};
7560#line 532 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7561struct scsi_host_template usb_stor_host_template =
7562#line 532
7563 {& __this_module, "usb-storage", (int (*)(struct scsi_host_template * ))0, (int (*)(struct Scsi_Host * ))0,
7564 & host_info, (int (*)(struct scsi_device *dev , int cmd , void *arg ))0, (int (*)(struct scsi_device *dev ,
7565 int cmd ,
7566 void *arg ))0,
7567 & queuecommand, (int (*)(struct scsi_cmnd * , void (*done)(struct scsi_cmnd * ) ))0,
7568 & command_abort, & device_reset, (int (*)(struct scsi_cmnd * ))0, & bus_reset,
7569 (int (*)(struct scsi_cmnd * ))0, & slave_alloc, & slave_configure, (void (*)(struct scsi_device * ))0,
7570 & target_alloc, (void (*)(struct scsi_target * ))0, (int (*)(struct Scsi_Host * ,
7571 unsigned long ))0,
7572 (void (*)(struct Scsi_Host * ))0, (int (*)(struct scsi_device * , int , int ))0,
7573 (int (*)(struct scsi_device * , int ))0, (int (*)(struct scsi_device * , struct block_device * ,
7574 sector_t , int * ))0, (void (*)(struct scsi_device * ))0,
7575 & proc_info, (enum blk_eh_timer_return (*)(struct scsi_cmnd * ))0, (int (*)(struct Scsi_Host *shost ,
7576 int reset_type ))0,
7577 "usb-storage", (struct proc_dir_entry *)0, 1, -1, (unsigned short)2048, (unsigned short)0,
7578 (unsigned short)240, 0UL, (short)1, (unsigned char)0, 0U, 0U, 1U, 1U, 1U, 0U,
7579 0U, (struct device_attribute **)0, sysfs_device_attr_list, {(struct list_head *)0,
7580 (struct list_head *)0},
7581 0ULL};
7582#line 584 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7583unsigned char usb_stor_sense_invalidCDB[18] =
7584#line 584
7585 { (unsigned char)112, (unsigned char)0, (unsigned char)5, (unsigned char)0,
7586 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)10,
7587 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
7588 (unsigned char)36, (unsigned char)0, (unsigned char)0, (unsigned char)0,
7589 (unsigned char)0, (unsigned char)0};
7590#line 590
7591extern void *__crc_usb_stor_sense_invalidCDB __attribute__((__weak__)) ;
7592#line 590 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7593static unsigned long __kcrctab_usb_stor_sense_invalidCDB __attribute__((__used__,
7594__unused__, __section__("___kcrctab_gpl+usb_stor_sense_invalidCDB"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_sense_invalidCDB));
7595#line 590 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7596static char __kstrtab_usb_stor_sense_invalidCDB[26] __attribute__((__section__("__ksymtab_strings"),
7597__aligned__(1))) =
7598#line 590
7599 { (char )'u', (char )'s', (char const )'b', (char const )'_',
7600 (char )'s', (char )'t', (char const )'o', (char const )'r',
7601 (char )'_', (char )'s', (char const )'e', (char const )'n',
7602 (char )'s', (char )'e', (char const )'_', (char const )'i',
7603 (char )'n', (char )'v', (char const )'a', (char const )'l',
7604 (char )'i', (char )'d', (char const )'C', (char const )'D',
7605 (char )'B', (char )'\000'};
7606#line 590 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7607static struct kernel_symbol __ksymtab_usb_stor_sense_invalidCDB __attribute__((__used__,
7608__unused__, __section__("___ksymtab_gpl+usb_stor_sense_invalidCDB"))) = {(unsigned long )(& usb_stor_sense_invalidCDB), __kstrtab_usb_stor_sense_invalidCDB};
7609#line 608
7610void ldv_check_final_state(void) ;
7611#line 614
7612extern void ldv_initialize(void) ;
7613#line 617
7614extern int __VERIFIER_nondet_int(void) ;
7615#line 620 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7616int LDV_IN_INTERRUPT ;
7617#line 623 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7618void main(void)
7619{ struct Scsi_Host *var_group1 ;
7620 char *var_proc_info_9_p1 ;
7621 char **var_proc_info_9_p2 ;
7622 off_t var_proc_info_9_p3 ;
7623 int var_proc_info_9_p4 ;
7624 int var_proc_info_9_p5 ;
7625 struct scsi_cmnd *var_group2 ;
7626 struct scsi_device *var_group3 ;
7627 struct scsi_target *var_group4 ;
7628 int tmp___7 ;
7629 int tmp___8 ;
7630
7631 {
7632 {
7633#line 770
7634 LDV_IN_INTERRUPT = 1;
7635#line 779
7636 ldv_initialize();
7637 }
7638 {
7639#line 783
7640 while (1) {
7641 while_continue: ;
7642 {
7643#line 783
7644 tmp___8 = __VERIFIER_nondet_int();
7645 }
7646#line 783
7647 if (tmp___8) {
7648
7649 } else {
7650#line 783
7651 goto while_break;
7652 }
7653 {
7654#line 786
7655 tmp___7 = __VERIFIER_nondet_int();
7656 }
7657#line 788
7658 if (tmp___7 == 0) {
7659#line 788
7660 goto case_0;
7661 } else
7662#line 812
7663 if (tmp___7 == 1) {
7664#line 812
7665 goto case_1;
7666 } else
7667#line 841
7668 if (tmp___7 == 2) {
7669#line 841
7670 goto case_2;
7671 } else
7672#line 870
7673 if (tmp___7 == 3) {
7674#line 870
7675 goto case_3;
7676 } else
7677#line 899
7678 if (tmp___7 == 4) {
7679#line 899
7680 goto case_4;
7681 } else
7682#line 928
7683 if (tmp___7 == 5) {
7684#line 928
7685 goto case_5;
7686 } else
7687#line 957
7688 if (tmp___7 == 6) {
7689#line 957
7690 goto case_6;
7691 } else
7692#line 986
7693 if (tmp___7 == 7) {
7694#line 986
7695 goto case_7;
7696 } else {
7697 {
7698#line 1015
7699 goto switch_default;
7700#line 786
7701 if (0) {
7702 case_0:
7703 {
7704#line 804
7705 proc_info(var_group1, var_proc_info_9_p1, var_proc_info_9_p2, var_proc_info_9_p3,
7706 var_proc_info_9_p4, var_proc_info_9_p5);
7707 }
7708#line 811
7709 goto switch_break;
7710 case_1:
7711 {
7712#line 825
7713 host_info(var_group1);
7714 }
7715#line 840
7716 goto switch_break;
7717 case_2:
7718 {
7719#line 854
7720 command_abort(var_group2);
7721 }
7722#line 869
7723 goto switch_break;
7724 case_3:
7725 {
7726#line 883
7727 device_reset(var_group2);
7728 }
7729#line 898
7730 goto switch_break;
7731 case_4:
7732 {
7733#line 912
7734 bus_reset(var_group2);
7735 }
7736#line 927
7737 goto switch_break;
7738 case_5:
7739 {
7740#line 941
7741 slave_alloc(var_group3);
7742 }
7743#line 956
7744 goto switch_break;
7745 case_6:
7746 {
7747#line 970
7748 slave_configure(var_group3);
7749 }
7750#line 985
7751 goto switch_break;
7752 case_7:
7753 {
7754#line 999
7755 target_alloc(var_group4);
7756 }
7757#line 1014
7758 goto switch_break;
7759 switch_default:
7760#line 1015
7761 goto switch_break;
7762 } else {
7763 switch_break: ;
7764 }
7765 }
7766 }
7767 }
7768 while_break: ;
7769 }
7770 {
7771#line 1024
7772 ldv_check_final_state();
7773 }
7774#line 1027
7775 return;
7776}
7777}
7778#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
7779void ldv_blast_assert(void)
7780{
7781
7782 {
7783 ERROR:
7784#line 6
7785 goto ERROR;
7786}
7787}
7788#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
7789extern int __VERIFIER_nondet_int(void) ;
7790#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7791int ldv_mutex = 1;
7792#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7793int __attribute__((__warn_unused_result__)) mutex_lock_interruptible(struct mutex *lock )
7794{ int nondetermined ;
7795
7796 {
7797#line 29
7798 if (ldv_mutex == 1) {
7799
7800 } else {
7801 {
7802#line 29
7803 ldv_blast_assert();
7804 }
7805 }
7806 {
7807#line 32
7808 nondetermined = __VERIFIER_nondet_int();
7809 }
7810#line 35
7811 if (nondetermined) {
7812#line 38
7813 ldv_mutex = 2;
7814#line 40
7815 return (0);
7816 } else {
7817#line 45
7818 return (-4);
7819 }
7820}
7821}
7822#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7823int __attribute__((__warn_unused_result__)) mutex_lock_killable(struct mutex *lock )
7824{ int nondetermined ;
7825
7826 {
7827#line 57
7828 if (ldv_mutex == 1) {
7829
7830 } else {
7831 {
7832#line 57
7833 ldv_blast_assert();
7834 }
7835 }
7836 {
7837#line 60
7838 nondetermined = __VERIFIER_nondet_int();
7839 }
7840#line 63
7841 if (nondetermined) {
7842#line 66
7843 ldv_mutex = 2;
7844#line 68
7845 return (0);
7846 } else {
7847#line 73
7848 return (-4);
7849 }
7850}
7851}
7852#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7853int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock )
7854{ int atomic_value_after_dec ;
7855
7856 {
7857#line 83
7858 if (ldv_mutex == 1) {
7859
7860 } else {
7861 {
7862#line 83
7863 ldv_blast_assert();
7864 }
7865 }
7866 {
7867#line 86
7868 atomic_value_after_dec = __VERIFIER_nondet_int();
7869 }
7870#line 89
7871 if (atomic_value_after_dec == 0) {
7872#line 92
7873 ldv_mutex = 2;
7874#line 94
7875 return (1);
7876 } else {
7877
7878 }
7879#line 98
7880 return (0);
7881}
7882}
7883#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7884void mutex_lock(struct mutex *lock )
7885{
7886
7887 {
7888#line 108
7889 if (ldv_mutex == 1) {
7890
7891 } else {
7892 {
7893#line 108
7894 ldv_blast_assert();
7895 }
7896 }
7897#line 110
7898 ldv_mutex = 2;
7899#line 111
7900 return;
7901}
7902}
7903#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7904int mutex_trylock(struct mutex *lock )
7905{ int nondetermined ;
7906
7907 {
7908#line 121
7909 if (ldv_mutex == 1) {
7910
7911 } else {
7912 {
7913#line 121
7914 ldv_blast_assert();
7915 }
7916 }
7917 {
7918#line 124
7919 nondetermined = __VERIFIER_nondet_int();
7920 }
7921#line 127
7922 if (nondetermined) {
7923#line 130
7924 ldv_mutex = 2;
7925#line 132
7926 return (1);
7927 } else {
7928#line 137
7929 return (0);
7930 }
7931}
7932}
7933#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7934void mutex_unlock(struct mutex *lock )
7935{
7936
7937 {
7938#line 147
7939 if (ldv_mutex == 2) {
7940
7941 } else {
7942 {
7943#line 147
7944 ldv_blast_assert();
7945 }
7946 }
7947#line 149
7948 ldv_mutex = 1;
7949#line 150
7950 return;
7951}
7952}
7953#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
7954void ldv_check_final_state(void)
7955{
7956
7957 {
7958#line 156
7959 if (ldv_mutex == 1) {
7960
7961 } else {
7962 {
7963#line 156
7964 ldv_blast_assert();
7965 }
7966 }
7967#line 157
7968 return;
7969}
7970}
7971#line 1036 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/scsiglue.c.common.c"
7972long s__builtin_expect(long val , long res )
7973{
7974
7975 {
7976#line 1037
7977 return (val);
7978}
7979}
7980#line 1 "<compiler builtins>"
7981
7982#line 147 "include/linux/kernel.h"
7983extern void __might_sleep(char *file , int line , int preempt_offset ) ;
7984#line 737 "include/linux/mm.h"
7985__inline static void *( __attribute__((__always_inline__)) lowmem_page_address)(struct page *page ) __attribute__((__no_instrument_function__)) ;
7986#line 737 "include/linux/mm.h"
7987__inline static void *( __attribute__((__always_inline__)) lowmem_page_address)(struct page *page )
7988{ struct page *__cil_tmp2 ;
7989 struct page *__cil_tmp3 ;
7990 int __cil_tmp4 ;
7991 unsigned long __cil_tmp5 ;
7992 phys_addr_t __cil_tmp6 ;
7993 phys_addr_t __cil_tmp7 ;
7994 unsigned long __cil_tmp8 ;
7995 unsigned long __cil_tmp9 ;
7996
7997 {
7998 {
7999#line 739
8000 __cil_tmp2 = (struct page *)0xffffea0000000000UL;
8001#line 739
8002 __cil_tmp3 = (struct page *)__cil_tmp2;
8003#line 739
8004 __cil_tmp4 = page - __cil_tmp3;
8005#line 739
8006 __cil_tmp5 = (unsigned long )__cil_tmp4;
8007#line 739
8008 __cil_tmp6 = (phys_addr_t )__cil_tmp5;
8009#line 739
8010 __cil_tmp7 = __cil_tmp6 << 12;
8011#line 739
8012 __cil_tmp8 = (unsigned long )__cil_tmp7;
8013#line 739
8014 __cil_tmp9 = __cil_tmp8 + 0xffff880000000000UL;
8015#line 739
8016 return ((void *)__cil_tmp9);
8017 }
8018}
8019}
8020#line 49 "include/linux/highmem.h"
8021__inline static void *kmap(struct page *page ) __attribute__((__no_instrument_function__)) ;
8022#line 49 "include/linux/highmem.h"
8023__inline static void *kmap(struct page *page )
8024{ void *tmp ;
8025 struct page *__cil_tmp3 ;
8026
8027 {
8028 {
8029#line 51
8030 while (1) {
8031 while_continue: ;
8032 {
8033#line 51
8034 __might_sleep("include/linux/highmem.h", 51, 0);
8035 }
8036 {
8037#line 51
8038 while (1) {
8039 while_continue___0: ;
8040#line 51
8041 goto while_break___0;
8042 }
8043 while_break___0: ;
8044 }
8045#line 51
8046 goto while_break;
8047 }
8048 while_break: ;
8049 }
8050 {
8051#line 52
8052 __cil_tmp3 = (struct page *)page;
8053#line 52
8054 tmp = lowmem_page_address(__cil_tmp3);
8055 }
8056#line 52
8057 return (tmp);
8058}
8059}
8060#line 55
8061__inline static void kunmap(struct page *page ) __attribute__((__no_instrument_function__)) ;
8062#line 55 "include/linux/highmem.h"
8063__inline static void kunmap(struct page *page )
8064{
8065
8066 {
8067#line 57
8068 return;
8069}
8070}
8071#line 95 "include/linux/scatterlist.h"
8072__inline static struct page *sg_page(struct scatterlist *sg ) __attribute__((__no_instrument_function__)) ;
8073#line 95 "include/linux/scatterlist.h"
8074__inline static struct page *sg_page(struct scatterlist *sg )
8075{ long tmp ;
8076 long tmp___0 ;
8077 unsigned long __cil_tmp4 ;
8078 int __cil_tmp5 ;
8079 int __cil_tmp6 ;
8080 int __cil_tmp7 ;
8081 long __cil_tmp8 ;
8082 unsigned long __cil_tmp9 ;
8083 unsigned long __cil_tmp10 ;
8084 unsigned long __cil_tmp11 ;
8085 unsigned long __cil_tmp12 ;
8086 int __cil_tmp13 ;
8087 int __cil_tmp14 ;
8088 long __cil_tmp15 ;
8089 unsigned long __cil_tmp16 ;
8090 unsigned long __cil_tmp17 ;
8091 unsigned long __cil_tmp18 ;
8092 unsigned long __cil_tmp19 ;
8093
8094 {
8095 {
8096#line 98
8097 while (1) {
8098 while_continue: ;
8099 {
8100#line 98
8101 __cil_tmp4 = *((unsigned long *)sg);
8102#line 98
8103 __cil_tmp5 = __cil_tmp4 != 2271560481UL;
8104#line 98
8105 __cil_tmp6 = ! __cil_tmp5;
8106#line 98
8107 __cil_tmp7 = ! __cil_tmp6;
8108#line 98
8109 __cil_tmp8 = (long )__cil_tmp7;
8110#line 98
8111 tmp = __builtin_expect(__cil_tmp8, 0L);
8112 }
8113#line 98
8114 if (tmp) {
8115 {
8116#line 98
8117 while (1) {
8118 while_continue___0: ;
8119#line 98
8120 __asm__ volatile ("1:\tud2\n"
8121 ".pushsection __bug_table,\"a\"\n"
8122 "2:\t.long 1b - 2b, %c0 - 2b\n"
8123 "\t.word %c1, 0\n"
8124 "\t.org 2b+%c2\n"
8125 ".popsection": : "i" ("include/linux/scatterlist.h"),
8126 "i" (98), "i" (12UL));
8127 {
8128#line 98
8129 while (1) {
8130 while_continue___1: ;
8131 }
8132 while_break___1: ;
8133 }
8134#line 98
8135 goto while_break___0;
8136 }
8137 while_break___0: ;
8138 }
8139 } else {
8140
8141 }
8142#line 98
8143 goto while_break;
8144 }
8145 while_break: ;
8146 }
8147 {
8148#line 99
8149 while (1) {
8150 while_continue___2: ;
8151 {
8152#line 99
8153 __cil_tmp9 = (unsigned long )sg;
8154#line 99
8155 __cil_tmp10 = __cil_tmp9 + 8;
8156#line 99
8157 __cil_tmp11 = *((unsigned long *)__cil_tmp10);
8158#line 99
8159 __cil_tmp12 = __cil_tmp11 & 1UL;
8160#line 99
8161 __cil_tmp13 = ! __cil_tmp12;
8162#line 99
8163 __cil_tmp14 = ! __cil_tmp13;
8164#line 99
8165 __cil_tmp15 = (long )__cil_tmp14;
8166#line 99
8167 tmp___0 = __builtin_expect(__cil_tmp15, 0L);
8168 }
8169#line 99
8170 if (tmp___0) {
8171 {
8172#line 99
8173 while (1) {
8174 while_continue___3: ;
8175#line 99
8176 __asm__ volatile ("1:\tud2\n"
8177 ".pushsection __bug_table,\"a\"\n"
8178 "2:\t.long 1b - 2b, %c0 - 2b\n"
8179 "\t.word %c1, 0\n"
8180 "\t.org 2b+%c2\n"
8181 ".popsection": : "i" ("include/linux/scatterlist.h"),
8182 "i" (99), "i" (12UL));
8183 {
8184#line 99
8185 while (1) {
8186 while_continue___4: ;
8187 }
8188 while_break___4: ;
8189 }
8190#line 99
8191 goto while_break___3;
8192 }
8193 while_break___3: ;
8194 }
8195 } else {
8196
8197 }
8198#line 99
8199 goto while_break___2;
8200 }
8201 while_break___2: ;
8202 }
8203 {
8204#line 101
8205 __cil_tmp16 = (unsigned long )sg;
8206#line 101
8207 __cil_tmp17 = __cil_tmp16 + 8;
8208#line 101
8209 __cil_tmp18 = *((unsigned long *)__cil_tmp17);
8210#line 101
8211 __cil_tmp19 = __cil_tmp18 & 0xfffffffffffffffcUL;
8212#line 101
8213 return ((struct page *)__cil_tmp19);
8214 }
8215}
8216}
8217#line 204
8218extern struct scatterlist *sg_next(struct scatterlist * ) ;
8219#line 168 "include/scsi/scsi_cmnd.h"
8220__inline static struct scatterlist *scsi_sglist(struct scsi_cmnd *cmd ) __attribute__((__no_instrument_function__)) ;
8221#line 168 "include/scsi/scsi_cmnd.h"
8222__inline static struct scatterlist *scsi_sglist(struct scsi_cmnd *cmd )
8223{ unsigned long __cil_tmp2 ;
8224 unsigned long __cil_tmp3 ;
8225
8226 {
8227 {
8228#line 170
8229 __cil_tmp2 = (unsigned long )cmd;
8230#line 170
8231 __cil_tmp3 = __cil_tmp2 + 88;
8232#line 170
8233 return (*((struct scatterlist **)__cil_tmp3));
8234 }
8235}
8236}
8237#line 173
8238__inline static unsigned int scsi_bufflen(struct scsi_cmnd *cmd ) __attribute__((__no_instrument_function__)) ;
8239#line 173 "include/scsi/scsi_cmnd.h"
8240__inline static unsigned int scsi_bufflen(struct scsi_cmnd *cmd )
8241{ unsigned long __cil_tmp2 ;
8242 unsigned long __cil_tmp3 ;
8243 unsigned long __cil_tmp4 ;
8244
8245 {
8246 {
8247#line 175
8248 __cil_tmp2 = 88 + 16;
8249#line 175
8250 __cil_tmp3 = (unsigned long )cmd;
8251#line 175
8252 __cil_tmp4 = __cil_tmp3 + __cil_tmp2;
8253#line 175
8254 return (*((unsigned int *)__cil_tmp4));
8255 }
8256}
8257}
8258#line 178
8259__inline static void scsi_set_resid(struct scsi_cmnd *cmd , int resid ) __attribute__((__no_instrument_function__)) ;
8260#line 178 "include/scsi/scsi_cmnd.h"
8261__inline static void scsi_set_resid(struct scsi_cmnd *cmd , int resid )
8262{ unsigned long __cil_tmp3 ;
8263 unsigned long __cil_tmp4 ;
8264 unsigned long __cil_tmp5 ;
8265
8266 {
8267#line 180
8268 __cil_tmp3 = 88 + 20;
8269#line 180
8270 __cil_tmp4 = (unsigned long )cmd;
8271#line 180
8272 __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
8273#line 180
8274 *((int *)__cil_tmp5) = resid;
8275#line 181
8276 return;
8277}
8278}
8279#line 43 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/protocol.h"
8280void usb_stor_pad12_command(struct scsi_cmnd *srb , struct us_data *us ) ;
8281#line 44
8282void usb_stor_ufi_command(struct scsi_cmnd *srb , struct us_data *us ) ;
8283#line 45
8284void usb_stor_transparent_scsi_command(struct scsi_cmnd *srb , struct us_data *us ) ;
8285#line 51
8286unsigned int usb_stor_access_xfer_buf(unsigned char *buffer , unsigned int buflen ,
8287 struct scsi_cmnd *srb , struct scatterlist **sgptr ,
8288 unsigned int *offset , enum xfer_buf_dir dir ) ;
8289#line 55
8290void usb_stor_set_xfer_buf(unsigned char *buffer , unsigned int buflen , struct scsi_cmnd *srb ) ;
8291#line 84 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/transport.h"
8292void usb_stor_invoke_transport(struct scsi_cmnd *srb , struct us_data *us ) ;
8293#line 60 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8294void usb_stor_pad12_command(struct scsi_cmnd *srb , struct us_data *us )
8295{ unsigned long __cil_tmp3 ;
8296 unsigned long __cil_tmp4 ;
8297 unsigned short __cil_tmp5 ;
8298 int __cil_tmp6 ;
8299 unsigned long __cil_tmp7 ;
8300 unsigned long __cil_tmp8 ;
8301 unsigned short __cil_tmp9 ;
8302 unsigned long __cil_tmp10 ;
8303 unsigned long __cil_tmp11 ;
8304 unsigned char *__cil_tmp12 ;
8305 unsigned char *__cil_tmp13 ;
8306 unsigned long __cil_tmp14 ;
8307 unsigned long __cil_tmp15 ;
8308 unsigned long __cil_tmp16 ;
8309 unsigned long __cil_tmp17 ;
8310 unsigned short __cil_tmp18 ;
8311 int __cil_tmp19 ;
8312 int __cil_tmp20 ;
8313
8314 {
8315 {
8316#line 69
8317 while (1) {
8318 while_continue: ;
8319 {
8320#line 69
8321 __cil_tmp3 = (unsigned long )srb;
8322#line 69
8323 __cil_tmp4 = __cil_tmp3 + 74;
8324#line 69
8325 __cil_tmp5 = *((unsigned short *)__cil_tmp4);
8326#line 69
8327 __cil_tmp6 = (int )__cil_tmp5;
8328#line 69
8329 if (__cil_tmp6 < 12) {
8330
8331 } else {
8332#line 69
8333 goto while_break;
8334 }
8335 }
8336#line 70
8337 __cil_tmp7 = (unsigned long )srb;
8338#line 70
8339 __cil_tmp8 = __cil_tmp7 + 74;
8340#line 70
8341 __cil_tmp9 = *((unsigned short *)__cil_tmp8);
8342#line 70
8343 __cil_tmp10 = (unsigned long )srb;
8344#line 70
8345 __cil_tmp11 = __cil_tmp10 + 80;
8346#line 70
8347 __cil_tmp12 = *((unsigned char **)__cil_tmp11);
8348#line 70
8349 __cil_tmp13 = __cil_tmp12 + __cil_tmp9;
8350#line 70
8351 *__cil_tmp13 = (unsigned char)0;
8352#line 69
8353 __cil_tmp14 = (unsigned long )srb;
8354#line 69
8355 __cil_tmp15 = __cil_tmp14 + 74;
8356#line 69
8357 __cil_tmp16 = (unsigned long )srb;
8358#line 69
8359 __cil_tmp17 = __cil_tmp16 + 74;
8360#line 69
8361 __cil_tmp18 = *((unsigned short *)__cil_tmp17);
8362#line 69
8363 __cil_tmp19 = (int )__cil_tmp18;
8364#line 69
8365 __cil_tmp20 = __cil_tmp19 + 1;
8366#line 69
8367 *((unsigned short *)__cil_tmp15) = (unsigned short )__cil_tmp20;
8368 }
8369 while_break: ;
8370 }
8371 {
8372#line 73
8373 usb_stor_invoke_transport(srb, us);
8374 }
8375#line 74
8376 return;
8377}
8378}
8379#line 76 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8380void usb_stor_ufi_command(struct scsi_cmnd *srb , struct us_data *us )
8381{ unsigned long __cil_tmp3 ;
8382 unsigned long __cil_tmp4 ;
8383 unsigned short __cil_tmp5 ;
8384 int __cil_tmp6 ;
8385 unsigned long __cil_tmp7 ;
8386 unsigned long __cil_tmp8 ;
8387 unsigned short __cil_tmp9 ;
8388 unsigned long __cil_tmp10 ;
8389 unsigned long __cil_tmp11 ;
8390 unsigned char *__cil_tmp12 ;
8391 unsigned char *__cil_tmp13 ;
8392 unsigned long __cil_tmp14 ;
8393 unsigned long __cil_tmp15 ;
8394 unsigned long __cil_tmp16 ;
8395 unsigned long __cil_tmp17 ;
8396 unsigned short __cil_tmp18 ;
8397 int __cil_tmp19 ;
8398 int __cil_tmp20 ;
8399 unsigned long __cil_tmp21 ;
8400 unsigned long __cil_tmp22 ;
8401 unsigned long __cil_tmp23 ;
8402 unsigned long __cil_tmp24 ;
8403 unsigned char *__cil_tmp25 ;
8404 unsigned char *__cil_tmp26 ;
8405 unsigned char __cil_tmp27 ;
8406 unsigned long __cil_tmp28 ;
8407 unsigned long __cil_tmp29 ;
8408 unsigned char *__cil_tmp30 ;
8409 unsigned char *__cil_tmp31 ;
8410 unsigned long __cil_tmp32 ;
8411 unsigned long __cil_tmp33 ;
8412 unsigned char *__cil_tmp34 ;
8413 unsigned char *__cil_tmp35 ;
8414 unsigned long __cil_tmp36 ;
8415 unsigned long __cil_tmp37 ;
8416 unsigned char *__cil_tmp38 ;
8417 unsigned char *__cil_tmp39 ;
8418 unsigned long __cil_tmp40 ;
8419 unsigned long __cil_tmp41 ;
8420 unsigned char *__cil_tmp42 ;
8421 unsigned char *__cil_tmp43 ;
8422
8423 {
8424 {
8425#line 86
8426 while (1) {
8427 while_continue: ;
8428 {
8429#line 86
8430 __cil_tmp3 = (unsigned long )srb;
8431#line 86
8432 __cil_tmp4 = __cil_tmp3 + 74;
8433#line 86
8434 __cil_tmp5 = *((unsigned short *)__cil_tmp4);
8435#line 86
8436 __cil_tmp6 = (int )__cil_tmp5;
8437#line 86
8438 if (__cil_tmp6 < 12) {
8439
8440 } else {
8441#line 86
8442 goto while_break;
8443 }
8444 }
8445#line 87
8446 __cil_tmp7 = (unsigned long )srb;
8447#line 87
8448 __cil_tmp8 = __cil_tmp7 + 74;
8449#line 87
8450 __cil_tmp9 = *((unsigned short *)__cil_tmp8);
8451#line 87
8452 __cil_tmp10 = (unsigned long )srb;
8453#line 87
8454 __cil_tmp11 = __cil_tmp10 + 80;
8455#line 87
8456 __cil_tmp12 = *((unsigned char **)__cil_tmp11);
8457#line 87
8458 __cil_tmp13 = __cil_tmp12 + __cil_tmp9;
8459#line 87
8460 *__cil_tmp13 = (unsigned char)0;
8461#line 86
8462 __cil_tmp14 = (unsigned long )srb;
8463#line 86
8464 __cil_tmp15 = __cil_tmp14 + 74;
8465#line 86
8466 __cil_tmp16 = (unsigned long )srb;
8467#line 86
8468 __cil_tmp17 = __cil_tmp16 + 74;
8469#line 86
8470 __cil_tmp18 = *((unsigned short *)__cil_tmp17);
8471#line 86
8472 __cil_tmp19 = (int )__cil_tmp18;
8473#line 86
8474 __cil_tmp20 = __cil_tmp19 + 1;
8475#line 86
8476 *((unsigned short *)__cil_tmp15) = (unsigned short )__cil_tmp20;
8477 }
8478 while_break: ;
8479 }
8480#line 90
8481 __cil_tmp21 = (unsigned long )srb;
8482#line 90
8483 __cil_tmp22 = __cil_tmp21 + 74;
8484#line 90
8485 *((unsigned short *)__cil_tmp22) = (unsigned short)12;
8486 {
8487#line 95
8488 __cil_tmp23 = (unsigned long )srb;
8489#line 95
8490 __cil_tmp24 = __cil_tmp23 + 80;
8491#line 95
8492 __cil_tmp25 = *((unsigned char **)__cil_tmp24);
8493#line 95
8494 __cil_tmp26 = __cil_tmp25 + 0;
8495#line 95
8496 __cil_tmp27 = *__cil_tmp26;
8497#line 98
8498 if ((int )__cil_tmp27 == 18) {
8499#line 98
8500 goto case_18;
8501 } else
8502#line 103
8503 if ((int )__cil_tmp27 == 90) {
8504#line 103
8505 goto case_90;
8506 } else
8507#line 109
8508 if ((int )__cil_tmp27 == 3) {
8509#line 109
8510 goto case_3;
8511 } else
8512#line 95
8513 if (0) {
8514 case_18:
8515#line 99
8516 __cil_tmp28 = (unsigned long )srb;
8517#line 99
8518 __cil_tmp29 = __cil_tmp28 + 80;
8519#line 99
8520 __cil_tmp30 = *((unsigned char **)__cil_tmp29);
8521#line 99
8522 __cil_tmp31 = __cil_tmp30 + 4;
8523#line 99
8524 *__cil_tmp31 = (unsigned char)36;
8525#line 100
8526 goto switch_break;
8527 case_90:
8528#line 104
8529 __cil_tmp32 = (unsigned long )srb;
8530#line 104
8531 __cil_tmp33 = __cil_tmp32 + 80;
8532#line 104
8533 __cil_tmp34 = *((unsigned char **)__cil_tmp33);
8534#line 104
8535 __cil_tmp35 = __cil_tmp34 + 7;
8536#line 104
8537 *__cil_tmp35 = (unsigned char)0;
8538#line 105
8539 __cil_tmp36 = (unsigned long )srb;
8540#line 105
8541 __cil_tmp37 = __cil_tmp36 + 80;
8542#line 105
8543 __cil_tmp38 = *((unsigned char **)__cil_tmp37);
8544#line 105
8545 __cil_tmp39 = __cil_tmp38 + 8;
8546#line 105
8547 *__cil_tmp39 = (unsigned char)8;
8548#line 106
8549 goto switch_break;
8550 case_3:
8551#line 110
8552 __cil_tmp40 = (unsigned long )srb;
8553#line 110
8554 __cil_tmp41 = __cil_tmp40 + 80;
8555#line 110
8556 __cil_tmp42 = *((unsigned char **)__cil_tmp41);
8557#line 110
8558 __cil_tmp43 = __cil_tmp42 + 4;
8559#line 110
8560 *__cil_tmp43 = (unsigned char)18;
8561#line 111
8562 goto switch_break;
8563 } else {
8564 switch_break: ;
8565 }
8566 }
8567 {
8568#line 115
8569 usb_stor_invoke_transport(srb, us);
8570 }
8571#line 116
8572 return;
8573}
8574}
8575#line 118 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8576void usb_stor_transparent_scsi_command(struct scsi_cmnd *srb , struct us_data *us )
8577{
8578
8579 {
8580 {
8581#line 122
8582 usb_stor_invoke_transport(srb, us);
8583 }
8584#line 123
8585 return;
8586}
8587}
8588#line 124
8589extern void *__crc_usb_stor_transparent_scsi_command __attribute__((__weak__)) ;
8590#line 124 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8591static unsigned long __kcrctab_usb_stor_transparent_scsi_command __attribute__((__used__,
8592__unused__, __section__("___kcrctab_gpl+usb_stor_transparent_scsi_command"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_transparent_scsi_command));
8593#line 124 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8594static char __kstrtab_usb_stor_transparent_scsi_command[34] __attribute__((__section__("__ksymtab_strings"),
8595__aligned__(1))) =
8596#line 124
8597 { (char )'u', (char )'s', (char const )'b', (char const )'_',
8598 (char )'s', (char )'t', (char const )'o', (char const )'r',
8599 (char )'_', (char )'t', (char const )'r', (char const )'a',
8600 (char )'n', (char )'s', (char const )'p', (char const )'a',
8601 (char )'r', (char )'e', (char const )'n', (char const )'t',
8602 (char )'_', (char )'s', (char const )'c', (char const )'s',
8603 (char )'i', (char )'_', (char const )'c', (char const )'o',
8604 (char )'m', (char )'m', (char const )'a', (char const )'n',
8605 (char )'d', (char )'\000'};
8606#line 124 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8607static struct kernel_symbol __ksymtab_usb_stor_transparent_scsi_command __attribute__((__used__,
8608__unused__, __section__("___ksymtab_gpl+usb_stor_transparent_scsi_command"))) = {(unsigned long )(& usb_stor_transparent_scsi_command),
8609 __kstrtab_usb_stor_transparent_scsi_command};
8610#line 134 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8611unsigned int usb_stor_access_xfer_buf(unsigned char *buffer , unsigned int buflen ,
8612 struct scsi_cmnd *srb , struct scatterlist **sgptr ,
8613 unsigned int *offset , enum xfer_buf_dir dir )
8614{ unsigned int cnt ;
8615 struct scatterlist *sg ;
8616 struct page *page ;
8617 struct page *tmp___7 ;
8618 unsigned int poff ;
8619 unsigned int sglen ;
8620 unsigned int plen ;
8621 unsigned int _min1 ;
8622 unsigned int _min2 ;
8623 unsigned int tmp___8 ;
8624 unsigned char *ptr ;
8625 void *tmp___9 ;
8626 size_t __len ;
8627 void *__ret ;
8628 size_t __len___0 ;
8629 void *__ret___0 ;
8630 unsigned int __cil_tmp23 ;
8631 unsigned long __cil_tmp24 ;
8632 unsigned long __cil_tmp25 ;
8633 unsigned int __cil_tmp26 ;
8634 unsigned int __cil_tmp27 ;
8635 unsigned int __cil_tmp28 ;
8636 unsigned long __cil_tmp29 ;
8637 unsigned long __cil_tmp30 ;
8638 unsigned int __cil_tmp31 ;
8639 unsigned long __cil_tmp32 ;
8640 unsigned long __cil_tmp33 ;
8641 unsigned int __cil_tmp34 ;
8642 unsigned int __cil_tmp35 ;
8643 unsigned long __cil_tmp36 ;
8644 unsigned long __cil_tmp37 ;
8645 unsigned int __cil_tmp38 ;
8646 unsigned long __cil_tmp39 ;
8647 unsigned long __cil_tmp40 ;
8648 unsigned int __cil_tmp41 ;
8649 unsigned int __cil_tmp42 ;
8650 unsigned int __cil_tmp43 ;
8651 unsigned int *__cil_tmp44 ;
8652 unsigned int *__cil_tmp45 ;
8653 unsigned long __cil_tmp46 ;
8654 unsigned int __cil_tmp47 ;
8655 unsigned int *__cil_tmp48 ;
8656 unsigned int __cil_tmp49 ;
8657 unsigned int *__cil_tmp50 ;
8658 unsigned int __cil_tmp51 ;
8659 unsigned int *__cil_tmp52 ;
8660 unsigned int *__cil_tmp53 ;
8661 unsigned int __cil_tmp54 ;
8662 unsigned char *__cil_tmp55 ;
8663 void *__cil_tmp56 ;
8664 unsigned char *__cil_tmp57 ;
8665 void *__cil_tmp58 ;
8666 unsigned char *__cil_tmp59 ;
8667 void *__cil_tmp60 ;
8668 unsigned char *__cil_tmp61 ;
8669 void *__cil_tmp62 ;
8670
8671 {
8672#line 139
8673 sg = *sgptr;
8674#line 150
8675 if (! sg) {
8676 {
8677#line 151
8678 sg = scsi_sglist(srb);
8679 }
8680 } else {
8681
8682 }
8683#line 158
8684 cnt = 0U;
8685 {
8686#line 159
8687 while (1) {
8688 while_continue: ;
8689#line 159
8690 if (cnt < buflen) {
8691#line 159
8692 if (sg) {
8693
8694 } else {
8695#line 159
8696 goto while_break;
8697 }
8698 } else {
8699#line 159
8700 goto while_break;
8701 }
8702 {
8703#line 160
8704 tmp___7 = sg_page(sg);
8705#line 160
8706 __cil_tmp23 = *offset;
8707#line 160
8708 __cil_tmp24 = (unsigned long )sg;
8709#line 160
8710 __cil_tmp25 = __cil_tmp24 + 16;
8711#line 160
8712 __cil_tmp26 = *((unsigned int *)__cil_tmp25);
8713#line 160
8714 __cil_tmp27 = __cil_tmp26 + __cil_tmp23;
8715#line 160
8716 __cil_tmp28 = __cil_tmp27 >> 12;
8717#line 160
8718 page = tmp___7 + __cil_tmp28;
8719#line 162
8720 __cil_tmp29 = 1UL << 12;
8721#line 162
8722 __cil_tmp30 = __cil_tmp29 - 1UL;
8723#line 162
8724 __cil_tmp31 = *offset;
8725#line 162
8726 __cil_tmp32 = (unsigned long )sg;
8727#line 162
8728 __cil_tmp33 = __cil_tmp32 + 16;
8729#line 162
8730 __cil_tmp34 = *((unsigned int *)__cil_tmp33);
8731#line 162
8732 __cil_tmp35 = __cil_tmp34 + __cil_tmp31;
8733#line 162
8734 __cil_tmp36 = (unsigned long )__cil_tmp35;
8735#line 162
8736 __cil_tmp37 = __cil_tmp36 & __cil_tmp30;
8737#line 162
8738 poff = (unsigned int )__cil_tmp37;
8739#line 163
8740 __cil_tmp38 = *offset;
8741#line 163
8742 __cil_tmp39 = (unsigned long )sg;
8743#line 163
8744 __cil_tmp40 = __cil_tmp39 + 20;
8745#line 163
8746 __cil_tmp41 = *((unsigned int *)__cil_tmp40);
8747#line 163
8748 sglen = __cil_tmp41 - __cil_tmp38;
8749 }
8750 {
8751#line 165
8752 __cil_tmp42 = buflen - cnt;
8753#line 165
8754 if (sglen > __cil_tmp42) {
8755#line 168
8756 sglen = buflen - cnt;
8757#line 169
8758 __cil_tmp43 = *offset;
8759#line 169
8760 *offset = __cil_tmp43 + sglen;
8761 } else {
8762 {
8763#line 173
8764 *offset = 0U;
8765#line 174
8766 sg = sg_next(sg);
8767 }
8768 }
8769 }
8770 {
8771#line 180
8772 while (1) {
8773 while_continue___0: ;
8774#line 180
8775 if (sglen > 0U) {
8776
8777 } else {
8778#line 180
8779 goto while_break___0;
8780 }
8781#line 181
8782 __cil_tmp44 = & _min1;
8783#line 181
8784 *__cil_tmp44 = sglen;
8785#line 181
8786 __cil_tmp45 = & _min2;
8787#line 181
8788 __cil_tmp46 = 1UL << 12;
8789#line 181
8790 __cil_tmp47 = (unsigned int )__cil_tmp46;
8791#line 181
8792 *__cil_tmp45 = __cil_tmp47 - poff;
8793 {
8794#line 181
8795 __cil_tmp48 = & _min2;
8796#line 181
8797 __cil_tmp49 = *__cil_tmp48;
8798#line 181
8799 __cil_tmp50 = & _min1;
8800#line 181
8801 __cil_tmp51 = *__cil_tmp50;
8802#line 181
8803 if (__cil_tmp51 < __cil_tmp49) {
8804#line 181
8805 __cil_tmp52 = & _min1;
8806#line 181
8807 tmp___8 = *__cil_tmp52;
8808 } else {
8809#line 181
8810 __cil_tmp53 = & _min2;
8811#line 181
8812 tmp___8 = *__cil_tmp53;
8813 }
8814 }
8815 {
8816#line 181
8817 plen = tmp___8;
8818#line 183
8819 tmp___9 = kmap(page);
8820#line 183
8821 ptr = (unsigned char *)tmp___9;
8822 }
8823 {
8824#line 185
8825 __cil_tmp54 = (unsigned int )dir;
8826#line 185
8827 if (__cil_tmp54 == 0U) {
8828 {
8829#line 186
8830 __len = (size_t )plen;
8831#line 186
8832 __cil_tmp55 = ptr + poff;
8833#line 186
8834 __cil_tmp56 = (void *)__cil_tmp55;
8835#line 186
8836 __cil_tmp57 = buffer + cnt;
8837#line 186
8838 __cil_tmp58 = (void *)__cil_tmp57;
8839#line 186
8840 __ret = __builtin_memcpy(__cil_tmp56, __cil_tmp58, __len);
8841 }
8842 } else {
8843 {
8844#line 188
8845 __len___0 = (size_t )plen;
8846#line 188
8847 __cil_tmp59 = buffer + cnt;
8848#line 188
8849 __cil_tmp60 = (void *)__cil_tmp59;
8850#line 188
8851 __cil_tmp61 = ptr + poff;
8852#line 188
8853 __cil_tmp62 = (void *)__cil_tmp61;
8854#line 188
8855 __ret___0 = __builtin_memcpy(__cil_tmp60, __cil_tmp62, __len___0);
8856 }
8857 }
8858 }
8859 {
8860#line 189
8861 kunmap(page);
8862#line 192
8863 poff = 0U;
8864#line 193
8865 page = page + 1;
8866#line 194
8867 cnt = cnt + plen;
8868#line 195
8869 sglen = sglen - plen;
8870 }
8871 }
8872 while_break___0: ;
8873 }
8874 }
8875 while_break: ;
8876 }
8877#line 198
8878 *sgptr = sg;
8879#line 201
8880 return (cnt);
8881}
8882}
8883#line 203
8884extern void *__crc_usb_stor_access_xfer_buf __attribute__((__weak__)) ;
8885#line 203 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8886static unsigned long __kcrctab_usb_stor_access_xfer_buf __attribute__((__used__,
8887__unused__, __section__("___kcrctab_gpl+usb_stor_access_xfer_buf"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_access_xfer_buf));
8888#line 203 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8889static char __kstrtab_usb_stor_access_xfer_buf[25] __attribute__((__section__("__ksymtab_strings"),
8890__aligned__(1))) =
8891#line 203
8892 { (char )'u', (char )'s', (char const )'b', (char const )'_',
8893 (char )'s', (char )'t', (char const )'o', (char const )'r',
8894 (char )'_', (char )'a', (char const )'c', (char const )'c',
8895 (char )'e', (char )'s', (char const )'s', (char const )'_',
8896 (char )'x', (char )'f', (char const )'e', (char const )'r',
8897 (char )'_', (char )'b', (char const )'u', (char const )'f',
8898 (char )'\000'};
8899#line 203 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8900static struct kernel_symbol __ksymtab_usb_stor_access_xfer_buf __attribute__((__used__,
8901__unused__, __section__("___ksymtab_gpl+usb_stor_access_xfer_buf"))) = {(unsigned long )(& usb_stor_access_xfer_buf), __kstrtab_usb_stor_access_xfer_buf};
8902#line 208 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
8903void usb_stor_set_xfer_buf(unsigned char *buffer , unsigned int buflen , struct scsi_cmnd *srb )
8904{ unsigned int offset ;
8905 struct scatterlist *sg ;
8906 unsigned int _min1 ;
8907 unsigned int _min2 ;
8908 unsigned int tmp___7 ;
8909 unsigned int tmp___8 ;
8910 unsigned int tmp___9 ;
8911 unsigned int tmp___10 ;
8912 unsigned int *__cil_tmp12 ;
8913 struct scatterlist **__cil_tmp13 ;
8914 void *__cil_tmp14 ;
8915 unsigned int *__cil_tmp15 ;
8916 unsigned int *__cil_tmp16 ;
8917 unsigned int *__cil_tmp17 ;
8918 unsigned int __cil_tmp18 ;
8919 unsigned int *__cil_tmp19 ;
8920 unsigned int __cil_tmp20 ;
8921 unsigned int *__cil_tmp21 ;
8922 unsigned int *__cil_tmp22 ;
8923 enum xfer_buf_dir __cil_tmp23 ;
8924 unsigned int __cil_tmp24 ;
8925 int __cil_tmp25 ;
8926
8927 {
8928 {
8929#line 211
8930 __cil_tmp12 = & offset;
8931#line 211
8932 *__cil_tmp12 = 0U;
8933#line 212
8934 __cil_tmp13 = & sg;
8935#line 212
8936 __cil_tmp14 = (void *)0;
8937#line 212
8938 *__cil_tmp13 = (struct scatterlist *)__cil_tmp14;
8939#line 214
8940 __cil_tmp15 = & _min1;
8941#line 214
8942 *__cil_tmp15 = buflen;
8943#line 214
8944 tmp___7 = scsi_bufflen(srb);
8945#line 214
8946 __cil_tmp16 = & _min2;
8947#line 214
8948 *__cil_tmp16 = tmp___7;
8949 }
8950 {
8951#line 214
8952 __cil_tmp17 = & _min2;
8953#line 214
8954 __cil_tmp18 = *__cil_tmp17;
8955#line 214
8956 __cil_tmp19 = & _min1;
8957#line 214
8958 __cil_tmp20 = *__cil_tmp19;
8959#line 214
8960 if (__cil_tmp20 < __cil_tmp18) {
8961#line 214
8962 __cil_tmp21 = & _min1;
8963#line 214
8964 tmp___8 = *__cil_tmp21;
8965 } else {
8966#line 214
8967 __cil_tmp22 = & _min2;
8968#line 214
8969 tmp___8 = *__cil_tmp22;
8970 }
8971 }
8972 {
8973#line 214
8974 buflen = tmp___8;
8975#line 215
8976 __cil_tmp23 = (enum xfer_buf_dir )0;
8977#line 215
8978 buflen = usb_stor_access_xfer_buf(buffer, buflen, srb, & sg, & offset, __cil_tmp23);
8979#line 217
8980 tmp___10 = scsi_bufflen(srb);
8981 }
8982#line 217
8983 if (buflen < tmp___10) {
8984 {
8985#line 218
8986 tmp___9 = scsi_bufflen(srb);
8987#line 218
8988 __cil_tmp24 = tmp___9 - buflen;
8989#line 218
8990 __cil_tmp25 = (int )__cil_tmp24;
8991#line 218
8992 scsi_set_resid(srb, __cil_tmp25);
8993 }
8994 } else {
8995
8996 }
8997#line 219
8998 return;
8999}
9000}
9001#line 220
9002extern void *__crc_usb_stor_set_xfer_buf __attribute__((__weak__)) ;
9003#line 220 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
9004static unsigned long __kcrctab_usb_stor_set_xfer_buf __attribute__((__used__,
9005__unused__, __section__("___kcrctab_gpl+usb_stor_set_xfer_buf"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_set_xfer_buf));
9006#line 220 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
9007static char __kstrtab_usb_stor_set_xfer_buf[22] __attribute__((__section__("__ksymtab_strings"),
9008__aligned__(1))) =
9009#line 220
9010 { (char )'u', (char )'s', (char const )'b', (char const )'_',
9011 (char )'s', (char )'t', (char const )'o', (char const )'r',
9012 (char )'_', (char )'s', (char const )'e', (char const )'t',
9013 (char )'_', (char )'x', (char const )'f', (char const )'e',
9014 (char )'r', (char )'_', (char const )'b', (char const )'u',
9015 (char )'f', (char )'\000'};
9016#line 220 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/protocol.c"
9017static struct kernel_symbol __ksymtab_usb_stor_set_xfer_buf __attribute__((__used__,
9018__unused__, __section__("___ksymtab_gpl+usb_stor_set_xfer_buf"))) = {(unsigned long )(& usb_stor_set_xfer_buf), __kstrtab_usb_stor_set_xfer_buf};
9019#line 97 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
9020__inline static void ( __attribute__((__always_inline__)) clear_bit)(int nr , unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
9021#line 97 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
9022__inline static void ( __attribute__((__always_inline__)) clear_bit)(int nr , unsigned long volatile *addr )
9023{ long volatile *__cil_tmp3 ;
9024
9025 {
9026#line 105
9027 __cil_tmp3 = (long volatile *)addr;
9028#line 105
9029 __asm__ volatile (".section .smp_locks,\"a\"\n"
9030 ".balign 4\n"
9031 ".long 671f - .\n"
9032 ".previous\n"
9033 "671:"
9034 "\n\tlock; "
9035 "btr %1,%0": "+m" (*__cil_tmp3): "Ir" (nr));
9036#line 109
9037 return;
9038}
9039}
9040#line 246
9041__inline static int test_and_clear_bit(int nr , unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
9042#line 246 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
9043__inline static int test_and_clear_bit(int nr , unsigned long volatile *addr )
9044{ int oldbit ;
9045 long volatile *__cil_tmp4 ;
9046
9047 {
9048#line 250
9049 __cil_tmp4 = (long volatile *)addr;
9050#line 250
9051 __asm__ volatile (".section .smp_locks,\"a\"\n"
9052 ".balign 4\n"
9053 ".long 671f - .\n"
9054 ".previous\n"
9055 "671:"
9056 "\n\tlock; "
9057 "btr %2,%1\n\t"
9058 "sbb %0,%0": "=r" (oldbit), "+m" (*__cil_tmp4): "Ir" (nr): "memory");
9059#line 254
9060 return (oldbit);
9061}
9062}
9063#line 315
9064__inline static int variable_test_bit(int nr , unsigned long volatile *addr ) __attribute__((__no_instrument_function__)) ;
9065#line 315 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
9066__inline static int variable_test_bit(int nr , unsigned long volatile *addr )
9067{ int oldbit ;
9068 unsigned long *__cil_tmp4 ;
9069
9070 {
9071#line 319
9072 __cil_tmp4 = (unsigned long *)addr;
9073#line 319
9074 __asm__ volatile ("bt %2,%1\n\t"
9075 "sbb %0,%0": "=r" (oldbit): "m" (*__cil_tmp4), "Ir" (nr));
9076#line 324
9077 return (oldbit);
9078}
9079}
9080#line 88 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/percpu.h"
9081extern void __bad_percpu_size(void) ;
9082#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
9083extern struct task_struct *current_task __attribute__((__section__(".data..percpu"))) ;
9084#line 12
9085__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void) __attribute__((__no_instrument_function__)) ;
9086#line 12 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
9087__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void)
9088{ struct task_struct *pfo_ret__ ;
9089
9090 {
9091#line 14
9092 if ((int )8UL == 1) {
9093#line 14
9094 goto case_1;
9095 } else
9096#line 14
9097 if ((int )8UL == 2) {
9098#line 14
9099 goto case_2;
9100 } else
9101#line 14
9102 if ((int )8UL == 4) {
9103#line 14
9104 goto case_4;
9105 } else
9106#line 14
9107 if ((int )8UL == 8) {
9108#line 14
9109 goto case_8;
9110 } else {
9111 {
9112#line 14
9113 goto switch_default;
9114#line 14
9115 if (0) {
9116 case_1:
9117#line 14
9118 __asm__ ("mov"
9119 "b "
9120 "%%"
9121 "gs"
9122 ":"
9123 "%P"
9124 "1"
9125 ",%0": "=q" (pfo_ret__): "p" (& current_task));
9126#line 14
9127 goto switch_break;
9128 case_2:
9129#line 14
9130 __asm__ ("mov"
9131 "w "
9132 "%%"
9133 "gs"
9134 ":"
9135 "%P"
9136 "1"
9137 ",%0": "=r" (pfo_ret__): "p" (& current_task));
9138#line 14
9139 goto switch_break;
9140 case_4:
9141#line 14
9142 __asm__ ("mov"
9143 "l "
9144 "%%"
9145 "gs"
9146 ":"
9147 "%P"
9148 "1"
9149 ",%0": "=r" (pfo_ret__): "p" (& current_task));
9150#line 14
9151 goto switch_break;
9152 case_8:
9153#line 14
9154 __asm__ ("mov"
9155 "q "
9156 "%%"
9157 "gs"
9158 ":"
9159 "%P"
9160 "1"
9161 ",%0": "=r" (pfo_ret__): "p" (& current_task));
9162#line 14
9163 goto switch_break;
9164 switch_default:
9165 {
9166#line 14
9167 __bad_percpu_size();
9168 }
9169 } else {
9170 switch_break: ;
9171 }
9172 }
9173 }
9174#line 14
9175 return (pfo_ret__);
9176}
9177}
9178#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
9179extern void *__memcpy(void *to , void *from , size_t len ) ;
9180#line 55
9181extern void *memset(void *s , int c , size_t n ) ;
9182#line 70 "include/asm-generic/bug.h"
9183extern void warn_slowpath_null(char *file , int line ) ;
9184#line 82 "include/linux/thread_info.h"
9185__inline static int test_ti_thread_flag(struct thread_info *ti , int flag ) __attribute__((__no_instrument_function__)) ;
9186#line 82 "include/linux/thread_info.h"
9187__inline static int test_ti_thread_flag(struct thread_info *ti , int flag )
9188{ int tmp___0 ;
9189 unsigned long __cil_tmp5 ;
9190 unsigned long __cil_tmp6 ;
9191 __u32 *__cil_tmp7 ;
9192 unsigned long *__cil_tmp8 ;
9193 unsigned long volatile *__cil_tmp9 ;
9194
9195 {
9196 {
9197#line 84
9198 __cil_tmp5 = (unsigned long )ti;
9199#line 84
9200 __cil_tmp6 = __cil_tmp5 + 16;
9201#line 84
9202 __cil_tmp7 = (__u32 *)__cil_tmp6;
9203#line 84
9204 __cil_tmp8 = (unsigned long *)__cil_tmp7;
9205#line 84
9206 __cil_tmp9 = (unsigned long volatile *)__cil_tmp8;
9207#line 84
9208 tmp___0 = variable_test_bit(flag, __cil_tmp9);
9209 }
9210#line 84
9211 return (tmp___0);
9212}
9213}
9214#line 79 "include/linux/wait.h"
9215extern void __init_waitqueue_head(wait_queue_head_t *q , char *name , struct lock_class_key * ) ;
9216#line 584
9217extern void prepare_to_wait(wait_queue_head_t *q , wait_queue_t *wait , int state ) ;
9218#line 586
9219extern void finish_wait(wait_queue_head_t *q , wait_queue_t *wait ) ;
9220#line 589
9221extern int autoremove_wake_function(wait_queue_t *wait , unsigned int mode , int sync ,
9222 void *key ) ;
9223#line 76 "include/linux/completion.h"
9224static struct lock_class_key __key ;
9225#line 73
9226__inline static void init_completion(struct completion *x ) __attribute__((__no_instrument_function__)) ;
9227#line 73 "include/linux/completion.h"
9228__inline static void init_completion(struct completion *x )
9229{ unsigned long __cil_tmp2 ;
9230 unsigned long __cil_tmp3 ;
9231 wait_queue_head_t *__cil_tmp4 ;
9232
9233 {
9234#line 75
9235 *((unsigned int *)x) = 0U;
9236 {
9237#line 76
9238 while (1) {
9239 while_continue: ;
9240 {
9241#line 76
9242 __cil_tmp2 = (unsigned long )x;
9243#line 76
9244 __cil_tmp3 = __cil_tmp2 + 8;
9245#line 76
9246 __cil_tmp4 = (wait_queue_head_t *)__cil_tmp3;
9247#line 76
9248 __init_waitqueue_head(__cil_tmp4, "&x->wait", & __key);
9249 }
9250#line 76
9251 goto while_break;
9252 }
9253 while_break: ;
9254 }
9255#line 77
9256 return;
9257}
9258}
9259#line 84
9260extern long wait_for_completion_interruptible_timeout(struct completion *x , unsigned long timeout ) ;
9261#line 358 "include/linux/sched.h"
9262extern long schedule_timeout(long timeout ) ;
9263#line 2563
9264__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag ) __attribute__((__no_instrument_function__)) ;
9265#line 2563 "include/linux/sched.h"
9266__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag )
9267{ int tmp___7 ;
9268 unsigned long __cil_tmp4 ;
9269 unsigned long __cil_tmp5 ;
9270 void *__cil_tmp6 ;
9271 struct thread_info *__cil_tmp7 ;
9272
9273 {
9274 {
9275#line 2565
9276 __cil_tmp4 = (unsigned long )tsk;
9277#line 2565
9278 __cil_tmp5 = __cil_tmp4 + 8;
9279#line 2565
9280 __cil_tmp6 = *((void **)__cil_tmp5);
9281#line 2565
9282 __cil_tmp7 = (struct thread_info *)__cil_tmp6;
9283#line 2565
9284 tmp___7 = test_ti_thread_flag(__cil_tmp7, flag);
9285 }
9286#line 2565
9287 return (tmp___7);
9288}
9289}
9290#line 2589
9291__inline static int signal_pending(struct task_struct *p ) __attribute__((__no_instrument_function__)) ;
9292#line 2589 "include/linux/sched.h"
9293__inline static int signal_pending(struct task_struct *p )
9294{ int tmp___7 ;
9295 int tmp___8 ;
9296 long tmp___9 ;
9297 long __cil_tmp5 ;
9298
9299 {
9300 {
9301#line 2591
9302 tmp___7 = test_tsk_thread_flag(p, 2);
9303 }
9304#line 2591
9305 if (tmp___7) {
9306#line 2591
9307 tmp___8 = 1;
9308 } else {
9309#line 2591
9310 tmp___8 = 0;
9311 }
9312 {
9313#line 2591
9314 __cil_tmp5 = (long )tmp___8;
9315#line 2591
9316 tmp___9 = __builtin_expect(__cil_tmp5, 0L);
9317 }
9318#line 2591
9319 return ((int )tmp___9);
9320}
9321}
9322#line 768 "include/linux/device.h"
9323__inline static void device_unlock(struct device *dev ) __attribute__((__no_instrument_function__)) ;
9324#line 768 "include/linux/device.h"
9325__inline static void device_unlock(struct device *dev )
9326{ unsigned long __cil_tmp2 ;
9327 unsigned long __cil_tmp3 ;
9328 struct mutex *__cil_tmp4 ;
9329
9330 {
9331 {
9332#line 770
9333 __cil_tmp2 = (unsigned long )dev;
9334#line 770
9335 __cil_tmp3 = __cil_tmp2 + 96;
9336#line 770
9337 __cil_tmp4 = (struct mutex *)__cil_tmp3;
9338#line 770
9339 mutex_unlock(__cil_tmp4);
9340 }
9341#line 771
9342 return;
9343}
9344}
9345#line 163 "include/scsi/scsi_cmnd.h"
9346__inline static unsigned int scsi_sg_count(struct scsi_cmnd *cmd ) __attribute__((__no_instrument_function__)) ;
9347#line 163 "include/scsi/scsi_cmnd.h"
9348__inline static unsigned int scsi_sg_count(struct scsi_cmnd *cmd )
9349{ unsigned long __cil_tmp2 ;
9350 unsigned long __cil_tmp3 ;
9351 unsigned long __cil_tmp4 ;
9352 unsigned long __cil_tmp5 ;
9353
9354 {
9355 {
9356#line 165
9357 __cil_tmp2 = 0 + 8;
9358#line 165
9359 __cil_tmp3 = 88 + __cil_tmp2;
9360#line 165
9361 __cil_tmp4 = (unsigned long )cmd;
9362#line 165
9363 __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
9364#line 165
9365 return (*((unsigned int *)__cil_tmp5));
9366 }
9367}
9368}
9369#line 183
9370__inline static int scsi_get_resid(struct scsi_cmnd *cmd ) __attribute__((__no_instrument_function__)) ;
9371#line 183 "include/scsi/scsi_cmnd.h"
9372__inline static int scsi_get_resid(struct scsi_cmnd *cmd )
9373{ unsigned long __cil_tmp2 ;
9374 unsigned long __cil_tmp3 ;
9375 unsigned long __cil_tmp4 ;
9376
9377 {
9378 {
9379#line 185
9380 __cil_tmp2 = 88 + 20;
9381#line 185
9382 __cil_tmp3 = (unsigned long )cmd;
9383#line 185
9384 __cil_tmp4 = __cil_tmp3 + __cil_tmp2;
9385#line 185
9386 return (*((int *)__cil_tmp4));
9387 }
9388}
9389}
9390#line 45 "include/scsi/scsi_eh.h"
9391extern int scsi_normalize_sense(u8 *sense_buffer , int sb_len , struct scsi_sense_hdr *sshdr ) ;
9392#line 55
9393extern u8 *scsi_sense_desc_find(u8 *sense_buffer , int sb_len , int desc_type ) ;
9394#line 88
9395extern void scsi_eh_prep_cmnd(struct scsi_cmnd *scmd , struct scsi_eh_save *ses ,
9396 unsigned char *cmnd , int cmnd_size , unsigned int sense_bytes ) ;
9397#line 92
9398extern void scsi_eh_restore_cmnd(struct scsi_cmnd *scmd , struct scsi_eh_save *ses ) ;
9399#line 590 "include/linux/usb/ch9.h"
9400__inline static int usb_endpoint_maxp(struct usb_endpoint_descriptor *epd ) __attribute__((__no_instrument_function__)) ;
9401#line 590 "include/linux/usb/ch9.h"
9402__inline static int usb_endpoint_maxp(struct usb_endpoint_descriptor *epd )
9403{ unsigned long __cil_tmp2 ;
9404 unsigned long __cil_tmp3 ;
9405 __le16 __cil_tmp4 ;
9406 __le16 __cil_tmp5 ;
9407
9408 {
9409 {
9410#line 592
9411 __cil_tmp2 = (unsigned long )epd;
9412#line 592
9413 __cil_tmp3 = __cil_tmp2 + 4;
9414#line 592
9415 __cil_tmp4 = *((__le16 *)__cil_tmp3);
9416#line 592
9417 __cil_tmp5 = (__le16 )__cil_tmp4;
9418#line 592
9419 return ((int )__cil_tmp5);
9420 }
9421}
9422}
9423#line 10 "include/asm-generic/delay.h"
9424extern void ___udelay(unsigned long xloops ) ;
9425#line 535 "include/linux/usb.h"
9426extern int usb_lock_device_for_reset(struct usb_device *udev , struct usb_interface *iface ) ;
9427#line 539
9428extern int usb_reset_device(struct usb_device *dev ) ;
9429#line 1278
9430__inline static void usb_fill_control_urb(struct urb *urb , struct usb_device *dev ,
9431 unsigned int pipe , unsigned char *setup_packet ,
9432 void *transfer_buffer , int buffer_length ,
9433 void (*complete_fn)(struct urb * ) , void *context ) __attribute__((__no_instrument_function__)) ;
9434#line 1278 "include/linux/usb.h"
9435__inline static void usb_fill_control_urb(struct urb *urb , struct usb_device *dev ,
9436 unsigned int pipe , unsigned char *setup_packet ,
9437 void *transfer_buffer , int buffer_length ,
9438 void (*complete_fn)(struct urb * ) , void *context )
9439{ unsigned long __cil_tmp9 ;
9440 unsigned long __cil_tmp10 ;
9441 unsigned long __cil_tmp11 ;
9442 unsigned long __cil_tmp12 ;
9443 unsigned long __cil_tmp13 ;
9444 unsigned long __cil_tmp14 ;
9445 unsigned long __cil_tmp15 ;
9446 unsigned long __cil_tmp16 ;
9447 unsigned long __cil_tmp17 ;
9448 unsigned long __cil_tmp18 ;
9449 unsigned long __cil_tmp19 ;
9450 unsigned long __cil_tmp20 ;
9451 unsigned long __cil_tmp21 ;
9452 unsigned long __cil_tmp22 ;
9453
9454 {
9455#line 1287
9456 __cil_tmp9 = (unsigned long )urb;
9457#line 1287
9458 __cil_tmp10 = __cil_tmp9 + 72;
9459#line 1287
9460 *((struct usb_device **)__cil_tmp10) = dev;
9461#line 1288
9462 __cil_tmp11 = (unsigned long )urb;
9463#line 1288
9464 __cil_tmp12 = __cil_tmp11 + 88;
9465#line 1288
9466 *((unsigned int *)__cil_tmp12) = pipe;
9467#line 1289
9468 __cil_tmp13 = (unsigned long )urb;
9469#line 1289
9470 __cil_tmp14 = __cil_tmp13 + 144;
9471#line 1289
9472 *((unsigned char **)__cil_tmp14) = setup_packet;
9473#line 1290
9474 __cil_tmp15 = (unsigned long )urb;
9475#line 1290
9476 __cil_tmp16 = __cil_tmp15 + 104;
9477#line 1290
9478 *((void **)__cil_tmp16) = transfer_buffer;
9479#line 1291
9480 __cil_tmp17 = (unsigned long )urb;
9481#line 1291
9482 __cil_tmp18 = __cil_tmp17 + 136;
9483#line 1291
9484 *((u32 *)__cil_tmp18) = (u32 )buffer_length;
9485#line 1292
9486 __cil_tmp19 = (unsigned long )urb;
9487#line 1292
9488 __cil_tmp20 = __cil_tmp19 + 184;
9489#line 1292
9490 *((void (**)(struct urb * ))__cil_tmp20) = complete_fn;
9491#line 1293
9492 __cil_tmp21 = (unsigned long )urb;
9493#line 1293
9494 __cil_tmp22 = __cil_tmp21 + 176;
9495#line 1293
9496 *((void **)__cil_tmp22) = context;
9497#line 1294
9498 return;
9499}
9500}
9501#line 1309
9502__inline static void usb_fill_bulk_urb(struct urb *urb , struct usb_device *dev ,
9503 unsigned int pipe , void *transfer_buffer ,
9504 int buffer_length , void (*complete_fn)(struct urb * ) ,
9505 void *context ) __attribute__((__no_instrument_function__)) ;
9506#line 1309 "include/linux/usb.h"
9507__inline static void usb_fill_bulk_urb(struct urb *urb , struct usb_device *dev ,
9508 unsigned int pipe , void *transfer_buffer ,
9509 int buffer_length , void (*complete_fn)(struct urb * ) ,
9510 void *context )
9511{ unsigned long __cil_tmp8 ;
9512 unsigned long __cil_tmp9 ;
9513 unsigned long __cil_tmp10 ;
9514 unsigned long __cil_tmp11 ;
9515 unsigned long __cil_tmp12 ;
9516 unsigned long __cil_tmp13 ;
9517 unsigned long __cil_tmp14 ;
9518 unsigned long __cil_tmp15 ;
9519 unsigned long __cil_tmp16 ;
9520 unsigned long __cil_tmp17 ;
9521 unsigned long __cil_tmp18 ;
9522 unsigned long __cil_tmp19 ;
9523
9524 {
9525#line 1317
9526 __cil_tmp8 = (unsigned long )urb;
9527#line 1317
9528 __cil_tmp9 = __cil_tmp8 + 72;
9529#line 1317
9530 *((struct usb_device **)__cil_tmp9) = dev;
9531#line 1318
9532 __cil_tmp10 = (unsigned long )urb;
9533#line 1318
9534 __cil_tmp11 = __cil_tmp10 + 88;
9535#line 1318
9536 *((unsigned int *)__cil_tmp11) = pipe;
9537#line 1319
9538 __cil_tmp12 = (unsigned long )urb;
9539#line 1319
9540 __cil_tmp13 = __cil_tmp12 + 104;
9541#line 1319
9542 *((void **)__cil_tmp13) = transfer_buffer;
9543#line 1320
9544 __cil_tmp14 = (unsigned long )urb;
9545#line 1320
9546 __cil_tmp15 = __cil_tmp14 + 136;
9547#line 1320
9548 *((u32 *)__cil_tmp15) = (u32 )buffer_length;
9549#line 1321
9550 __cil_tmp16 = (unsigned long )urb;
9551#line 1321
9552 __cil_tmp17 = __cil_tmp16 + 184;
9553#line 1321
9554 *((void (**)(struct urb * ))__cil_tmp17) = complete_fn;
9555#line 1322
9556 __cil_tmp18 = (unsigned long )urb;
9557#line 1322
9558 __cil_tmp19 = __cil_tmp18 + 176;
9559#line 1322
9560 *((void **)__cil_tmp19) = context;
9561#line 1323
9562 return;
9563}
9564}
9565#line 1350
9566__inline static void usb_fill_int_urb(struct urb *urb , struct usb_device *dev , unsigned int pipe ,
9567 void *transfer_buffer , int buffer_length ,
9568 void (*complete_fn)(struct urb * ) , void *context ,
9569 int interval ) __attribute__((__no_instrument_function__)) ;
9570#line 1350 "include/linux/usb.h"
9571__inline static void usb_fill_int_urb(struct urb *urb , struct usb_device *dev , unsigned int pipe ,
9572 void *transfer_buffer , int buffer_length ,
9573 void (*complete_fn)(struct urb * ) , void *context ,
9574 int interval )
9575{ unsigned long __cil_tmp9 ;
9576 unsigned long __cil_tmp10 ;
9577 unsigned long __cil_tmp11 ;
9578 unsigned long __cil_tmp12 ;
9579 unsigned long __cil_tmp13 ;
9580 unsigned long __cil_tmp14 ;
9581 unsigned long __cil_tmp15 ;
9582 unsigned long __cil_tmp16 ;
9583 unsigned long __cil_tmp17 ;
9584 unsigned long __cil_tmp18 ;
9585 unsigned long __cil_tmp19 ;
9586 unsigned long __cil_tmp20 ;
9587 unsigned long __cil_tmp21 ;
9588 unsigned long __cil_tmp22 ;
9589 enum usb_device_speed __cil_tmp23 ;
9590 unsigned int __cil_tmp24 ;
9591 unsigned long __cil_tmp25 ;
9592 unsigned long __cil_tmp26 ;
9593 int __cil_tmp27 ;
9594 unsigned long __cil_tmp28 ;
9595 unsigned long __cil_tmp29 ;
9596 enum usb_device_speed __cil_tmp30 ;
9597 unsigned int __cil_tmp31 ;
9598 unsigned long __cil_tmp32 ;
9599 unsigned long __cil_tmp33 ;
9600 int __cil_tmp34 ;
9601 unsigned long __cil_tmp35 ;
9602 unsigned long __cil_tmp36 ;
9603 unsigned long __cil_tmp37 ;
9604 unsigned long __cil_tmp38 ;
9605
9606 {
9607#line 1359
9608 __cil_tmp9 = (unsigned long )urb;
9609#line 1359
9610 __cil_tmp10 = __cil_tmp9 + 72;
9611#line 1359
9612 *((struct usb_device **)__cil_tmp10) = dev;
9613#line 1360
9614 __cil_tmp11 = (unsigned long )urb;
9615#line 1360
9616 __cil_tmp12 = __cil_tmp11 + 88;
9617#line 1360
9618 *((unsigned int *)__cil_tmp12) = pipe;
9619#line 1361
9620 __cil_tmp13 = (unsigned long )urb;
9621#line 1361
9622 __cil_tmp14 = __cil_tmp13 + 104;
9623#line 1361
9624 *((void **)__cil_tmp14) = transfer_buffer;
9625#line 1362
9626 __cil_tmp15 = (unsigned long )urb;
9627#line 1362
9628 __cil_tmp16 = __cil_tmp15 + 136;
9629#line 1362
9630 *((u32 *)__cil_tmp16) = (u32 )buffer_length;
9631#line 1363
9632 __cil_tmp17 = (unsigned long )urb;
9633#line 1363
9634 __cil_tmp18 = __cil_tmp17 + 184;
9635#line 1363
9636 *((void (**)(struct urb * ))__cil_tmp18) = complete_fn;
9637#line 1364
9638 __cil_tmp19 = (unsigned long )urb;
9639#line 1364
9640 __cil_tmp20 = __cil_tmp19 + 176;
9641#line 1364
9642 *((void **)__cil_tmp20) = context;
9643 {
9644#line 1365
9645 __cil_tmp21 = (unsigned long )dev;
9646#line 1365
9647 __cil_tmp22 = __cil_tmp21 + 28;
9648#line 1365
9649 __cil_tmp23 = *((enum usb_device_speed *)__cil_tmp22);
9650#line 1365
9651 __cil_tmp24 = (unsigned int )__cil_tmp23;
9652#line 1365
9653 if (__cil_tmp24 == 3U) {
9654#line 1366
9655 __cil_tmp25 = (unsigned long )urb;
9656#line 1366
9657 __cil_tmp26 = __cil_tmp25 + 168;
9658#line 1366
9659 __cil_tmp27 = interval - 1;
9660#line 1366
9661 *((int *)__cil_tmp26) = 1 << __cil_tmp27;
9662 } else {
9663 {
9664#line 1365
9665 __cil_tmp28 = (unsigned long )dev;
9666#line 1365
9667 __cil_tmp29 = __cil_tmp28 + 28;
9668#line 1365
9669 __cil_tmp30 = *((enum usb_device_speed *)__cil_tmp29);
9670#line 1365
9671 __cil_tmp31 = (unsigned int )__cil_tmp30;
9672#line 1365
9673 if (__cil_tmp31 == 5U) {
9674#line 1366
9675 __cil_tmp32 = (unsigned long )urb;
9676#line 1366
9677 __cil_tmp33 = __cil_tmp32 + 168;
9678#line 1366
9679 __cil_tmp34 = interval - 1;
9680#line 1366
9681 *((int *)__cil_tmp33) = 1 << __cil_tmp34;
9682 } else {
9683#line 1368
9684 __cil_tmp35 = (unsigned long )urb;
9685#line 1368
9686 __cil_tmp36 = __cil_tmp35 + 168;
9687#line 1368
9688 *((int *)__cil_tmp36) = interval;
9689 }
9690 }
9691 }
9692 }
9693#line 1369
9694 __cil_tmp37 = (unsigned long )urb;
9695#line 1369
9696 __cil_tmp38 = __cil_tmp37 + 160;
9697#line 1369
9698 *((int *)__cil_tmp38) = -1;
9699#line 1370
9700 return;
9701}
9702}
9703#line 1377
9704extern int usb_submit_urb(struct urb *urb , gfp_t mem_flags ) ;
9705#line 1378
9706extern int usb_unlink_urb(struct urb *urb ) ;
9707#line 1379
9708extern void usb_kill_urb(struct urb *urb ) ;
9709#line 1464
9710extern void usb_reset_endpoint(struct usb_device *dev , unsigned int epaddr ) ;
9711#line 1515
9712extern int usb_sg_init(struct usb_sg_request *io , struct usb_device *dev , unsigned int pipe ,
9713 unsigned int period , struct scatterlist *sg , int nents ,
9714 size_t length , gfp_t mem_flags ) ;
9715#line 1525
9716extern void usb_sg_cancel(struct usb_sg_request *io ) ;
9717#line 1526
9718extern void usb_sg_wait(struct usb_sg_request *io ) ;
9719#line 1601
9720__inline static __u16 usb_maxpacket(struct usb_device *udev , int pipe , int is_out ) __attribute__((__no_instrument_function__)) ;
9721#line 1601 "include/linux/usb.h"
9722__inline static __u16 usb_maxpacket(struct usb_device *udev , int pipe , int is_out )
9723{ struct usb_host_endpoint *ep ;
9724 unsigned int epnum ;
9725 int __ret_warn_on ;
9726 long tmp___7 ;
9727 int __ret_warn_on___0 ;
9728 long tmp___8 ;
9729 int tmp___9 ;
9730 int __cil_tmp11 ;
9731 int __cil_tmp12 ;
9732 int __cil_tmp13 ;
9733 int __cil_tmp14 ;
9734 int __cil_tmp15 ;
9735 int __cil_tmp16 ;
9736 long __cil_tmp17 ;
9737 int __cil_tmp18 ;
9738 int __cil_tmp19 ;
9739 int __cil_tmp20 ;
9740 long __cil_tmp21 ;
9741 unsigned long __cil_tmp22 ;
9742 unsigned long __cil_tmp23 ;
9743 unsigned long __cil_tmp24 ;
9744 unsigned long __cil_tmp25 ;
9745 int __cil_tmp26 ;
9746 int __cil_tmp27 ;
9747 int __cil_tmp28 ;
9748 int __cil_tmp29 ;
9749 int __cil_tmp30 ;
9750 long __cil_tmp31 ;
9751 int __cil_tmp32 ;
9752 int __cil_tmp33 ;
9753 int __cil_tmp34 ;
9754 long __cil_tmp35 ;
9755 unsigned long __cil_tmp36 ;
9756 unsigned long __cil_tmp37 ;
9757 unsigned long __cil_tmp38 ;
9758 unsigned long __cil_tmp39 ;
9759 struct usb_endpoint_descriptor *__cil_tmp40 ;
9760 struct usb_endpoint_descriptor *__cil_tmp41 ;
9761
9762 {
9763#line 1605
9764 __cil_tmp11 = pipe >> 15;
9765#line 1605
9766 __cil_tmp12 = __cil_tmp11 & 15;
9767#line 1605
9768 epnum = (unsigned int )__cil_tmp12;
9769#line 1607
9770 if (is_out) {
9771 {
9772#line 1608
9773 __cil_tmp13 = pipe & 128;
9774#line 1608
9775 __cil_tmp14 = ! __cil_tmp13;
9776#line 1608
9777 __ret_warn_on = ! __cil_tmp14;
9778#line 1608
9779 __cil_tmp15 = ! __ret_warn_on;
9780#line 1608
9781 __cil_tmp16 = ! __cil_tmp15;
9782#line 1608
9783 __cil_tmp17 = (long )__cil_tmp16;
9784#line 1608
9785 tmp___7 = __builtin_expect(__cil_tmp17, 0L);
9786 }
9787#line 1608
9788 if (tmp___7) {
9789 {
9790#line 1608
9791 __cil_tmp18 = (int )1608;
9792#line 1608
9793 warn_slowpath_null("include/linux/usb.h", __cil_tmp18);
9794 }
9795 } else {
9796
9797 }
9798 {
9799#line 1608
9800 __cil_tmp19 = ! __ret_warn_on;
9801#line 1608
9802 __cil_tmp20 = ! __cil_tmp19;
9803#line 1608
9804 __cil_tmp21 = (long )__cil_tmp20;
9805#line 1608
9806 __builtin_expect(__cil_tmp21, 0L);
9807#line 1609
9808 __cil_tmp22 = epnum * 8UL;
9809#line 1609
9810 __cil_tmp23 = 1080 + __cil_tmp22;
9811#line 1609
9812 __cil_tmp24 = (unsigned long )udev;
9813#line 1609
9814 __cil_tmp25 = __cil_tmp24 + __cil_tmp23;
9815#line 1609
9816 ep = *((struct usb_host_endpoint **)__cil_tmp25);
9817 }
9818 } else {
9819 {
9820#line 1611
9821 __cil_tmp26 = pipe & 128;
9822#line 1611
9823 __cil_tmp27 = ! __cil_tmp26;
9824#line 1611
9825 __cil_tmp28 = ! __cil_tmp27;
9826#line 1611
9827 __ret_warn_on___0 = ! __cil_tmp28;
9828#line 1611
9829 __cil_tmp29 = ! __ret_warn_on___0;
9830#line 1611
9831 __cil_tmp30 = ! __cil_tmp29;
9832#line 1611
9833 __cil_tmp31 = (long )__cil_tmp30;
9834#line 1611
9835 tmp___8 = __builtin_expect(__cil_tmp31, 0L);
9836 }
9837#line 1611
9838 if (tmp___8) {
9839 {
9840#line 1611
9841 __cil_tmp32 = (int )1611;
9842#line 1611
9843 warn_slowpath_null("include/linux/usb.h", __cil_tmp32);
9844 }
9845 } else {
9846
9847 }
9848 {
9849#line 1611
9850 __cil_tmp33 = ! __ret_warn_on___0;
9851#line 1611
9852 __cil_tmp34 = ! __cil_tmp33;
9853#line 1611
9854 __cil_tmp35 = (long )__cil_tmp34;
9855#line 1611
9856 __builtin_expect(__cil_tmp35, 0L);
9857#line 1612
9858 __cil_tmp36 = epnum * 8UL;
9859#line 1612
9860 __cil_tmp37 = 952 + __cil_tmp36;
9861#line 1612
9862 __cil_tmp38 = (unsigned long )udev;
9863#line 1612
9864 __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
9865#line 1612
9866 ep = *((struct usb_host_endpoint **)__cil_tmp39);
9867 }
9868 }
9869#line 1614
9870 if (! ep) {
9871#line 1615
9872 return ((__u16 )0);
9873 } else {
9874
9875 }
9876 {
9877#line 1618
9878 __cil_tmp40 = (struct usb_endpoint_descriptor *)ep;
9879#line 1618
9880 __cil_tmp41 = (struct usb_endpoint_descriptor *)__cil_tmp40;
9881#line 1618
9882 tmp___9 = usb_endpoint_maxp(__cil_tmp41);
9883 }
9884#line 1618
9885 return ((__u16 )tmp___9);
9886}
9887}
9888#line 77 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/transport.h"
9889int usb_stor_CB_transport(struct scsi_cmnd *srb , struct us_data *us ) ;
9890#line 78
9891int usb_stor_CB_reset(struct us_data *us ) ;
9892#line 80
9893int usb_stor_Bulk_transport(struct scsi_cmnd *srb , struct us_data *us ) ;
9894#line 81
9895int usb_stor_Bulk_max_lun(struct us_data *us ) ;
9896#line 82
9897int usb_stor_Bulk_reset(struct us_data *us ) ;
9898#line 87
9899int usb_stor_control_msg(struct us_data *us , unsigned int pipe , u8 request , u8 requesttype ,
9900 u16 value , u16 index , void *data , u16 size , int timeout ) ;
9901#line 90
9902int usb_stor_clear_halt(struct us_data *us , unsigned int pipe ) ;
9903#line 92
9904int usb_stor_ctrl_transfer(struct us_data *us , unsigned int pipe , u8 request , u8 requesttype ,
9905 u16 value , u16 index , void *data , u16 size ) ;
9906#line 95
9907int usb_stor_bulk_transfer_buf(struct us_data *us , unsigned int pipe , void *buf ,
9908 unsigned int length , unsigned int *act_len ) ;
9909#line 97
9910int usb_stor_bulk_transfer_sg(struct us_data *us , unsigned int pipe , void *buf ,
9911 unsigned int length_left , int use_sg , int *residual ) ;
9912#line 99
9913int usb_stor_bulk_srb(struct us_data *us , unsigned int pipe , struct scsi_cmnd *srb ) ;
9914#line 51 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/debug.h"
9915void usb_stor_show_sense(unsigned char key , unsigned char asc , unsigned char ascq ) ;
9916#line 83 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/../../scsi/sd.h"
9917__inline static struct scsi_disk *scsi_disk(struct gendisk *disk ) __attribute__((__no_instrument_function__)) ;
9918#line 83 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/../../scsi/sd.h"
9919__inline static struct scsi_disk *scsi_disk(struct gendisk *disk )
9920{ struct scsi_driver * *__mptr ;
9921 unsigned long __cil_tmp3 ;
9922 unsigned long __cil_tmp4 ;
9923 void *__cil_tmp5 ;
9924 struct scsi_disk *__cil_tmp6 ;
9925 struct scsi_driver **__cil_tmp7 ;
9926 unsigned int __cil_tmp8 ;
9927 char *__cil_tmp9 ;
9928 char *__cil_tmp10 ;
9929
9930 {
9931#line 85
9932 __cil_tmp3 = (unsigned long )disk;
9933#line 85
9934 __cil_tmp4 = __cil_tmp3 + 968;
9935#line 85
9936 __cil_tmp5 = *((void **)__cil_tmp4);
9937#line 85
9938 __mptr = (struct scsi_driver * *)__cil_tmp5;
9939 {
9940#line 85
9941 __cil_tmp6 = (struct scsi_disk *)0;
9942#line 85
9943 __cil_tmp7 = (struct scsi_driver **)__cil_tmp6;
9944#line 85
9945 __cil_tmp8 = (unsigned int )__cil_tmp7;
9946#line 85
9947 __cil_tmp9 = (char *)__mptr;
9948#line 85
9949 __cil_tmp10 = __cil_tmp9 - __cil_tmp8;
9950#line 85
9951 return ((struct scsi_disk *)__cil_tmp10);
9952 }
9953}
9954}
9955#line 115 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
9956static void usb_stor_blocking_completion(struct urb *urb )
9957{ struct completion *urb_done_ptr ;
9958 unsigned long __cil_tmp3 ;
9959 unsigned long __cil_tmp4 ;
9960 void *__cil_tmp5 ;
9961
9962 {
9963 {
9964#line 117
9965 __cil_tmp3 = (unsigned long )urb;
9966#line 117
9967 __cil_tmp4 = __cil_tmp3 + 176;
9968#line 117
9969 __cil_tmp5 = *((void **)__cil_tmp4);
9970#line 117
9971 urb_done_ptr = (struct completion *)__cil_tmp5;
9972#line 119
9973 complete(urb_done_ptr);
9974 }
9975#line 120
9976 return;
9977}
9978}
9979#line 128 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
9980static int usb_stor_msg_common(struct us_data *us , int timeout )
9981{ struct completion urb_done ;
9982 long timeleft ;
9983 int status ;
9984 int tmp___7 ;
9985 int tmp___9 ;
9986 int tmp___10 ;
9987 long tmp___12 ;
9988 char *tmp___13 ;
9989 unsigned long __cil_tmp13 ;
9990 unsigned long __cil_tmp14 ;
9991 unsigned long *__cil_tmp15 ;
9992 unsigned long volatile *__cil_tmp16 ;
9993 unsigned long __cil_tmp17 ;
9994 unsigned long __cil_tmp18 ;
9995 struct urb *__cil_tmp19 ;
9996 unsigned long __cil_tmp20 ;
9997 unsigned long __cil_tmp21 ;
9998 unsigned long __cil_tmp22 ;
9999 unsigned long __cil_tmp23 ;
10000 struct urb *__cil_tmp24 ;
10001 unsigned long __cil_tmp25 ;
10002 unsigned long __cil_tmp26 ;
10003 unsigned long __cil_tmp27 ;
10004 unsigned long __cil_tmp28 ;
10005 unsigned char *__cil_tmp29 ;
10006 unsigned long __cil_tmp30 ;
10007 unsigned long __cil_tmp31 ;
10008 unsigned long __cil_tmp32 ;
10009 struct urb *__cil_tmp33 ;
10010 unsigned long __cil_tmp34 ;
10011 unsigned long __cil_tmp35 ;
10012 void *__cil_tmp36 ;
10013 unsigned long __cil_tmp37 ;
10014 unsigned long __cil_tmp38 ;
10015 unsigned long __cil_tmp39 ;
10016 struct urb *__cil_tmp40 ;
10017 unsigned long __cil_tmp41 ;
10018 unsigned long __cil_tmp42 ;
10019 unsigned long __cil_tmp43 ;
10020 unsigned long __cil_tmp44 ;
10021 struct urb *__cil_tmp45 ;
10022 unsigned long __cil_tmp46 ;
10023 unsigned long __cil_tmp47 ;
10024 unsigned int __cil_tmp48 ;
10025 unsigned long __cil_tmp49 ;
10026 unsigned long __cil_tmp50 ;
10027 struct urb *__cil_tmp51 ;
10028 unsigned long __cil_tmp52 ;
10029 unsigned long __cil_tmp53 ;
10030 unsigned long __cil_tmp54 ;
10031 unsigned long __cil_tmp55 ;
10032 unsigned long __cil_tmp56 ;
10033 unsigned long __cil_tmp57 ;
10034 struct urb *__cil_tmp58 ;
10035 unsigned long __cil_tmp59 ;
10036 unsigned long __cil_tmp60 ;
10037 unsigned long *__cil_tmp61 ;
10038 unsigned long volatile *__cil_tmp62 ;
10039 unsigned long __cil_tmp63 ;
10040 unsigned long __cil_tmp64 ;
10041 unsigned long *__cil_tmp65 ;
10042 unsigned long volatile *__cil_tmp66 ;
10043 unsigned long __cil_tmp67 ;
10044 unsigned long __cil_tmp68 ;
10045 unsigned long *__cil_tmp69 ;
10046 unsigned long volatile *__cil_tmp70 ;
10047 unsigned long __cil_tmp71 ;
10048 unsigned long __cil_tmp72 ;
10049 struct urb *__cil_tmp73 ;
10050 unsigned long __cil_tmp74 ;
10051 unsigned long __cil_tmp75 ;
10052 unsigned long __cil_tmp76 ;
10053 unsigned long __cil_tmp77 ;
10054 unsigned long *__cil_tmp78 ;
10055 unsigned long volatile *__cil_tmp79 ;
10056 unsigned long __cil_tmp80 ;
10057 unsigned long __cil_tmp81 ;
10058 struct urb *__cil_tmp82 ;
10059 unsigned long __cil_tmp83 ;
10060 unsigned long __cil_tmp84 ;
10061 struct urb *__cil_tmp85 ;
10062 unsigned long __cil_tmp86 ;
10063 unsigned long __cil_tmp87 ;
10064
10065 {
10066 {
10067#line 135
10068 __cil_tmp13 = (unsigned long )us;
10069#line 135
10070 __cil_tmp14 = __cil_tmp13 + 104;
10071#line 135
10072 __cil_tmp15 = (unsigned long *)__cil_tmp14;
10073#line 135
10074 __cil_tmp16 = (unsigned long volatile *)__cil_tmp15;
10075#line 135
10076 tmp___7 = ant_test_bit(2U, __cil_tmp16);
10077 }
10078#line 135
10079 if (tmp___7) {
10080#line 136
10081 return (-5);
10082 } else {
10083
10084 }
10085 {
10086#line 139
10087 init_completion(& urb_done);
10088#line 142
10089 __cil_tmp17 = (unsigned long )us;
10090#line 142
10091 __cil_tmp18 = __cil_tmp17 + 240;
10092#line 142
10093 __cil_tmp19 = *((struct urb **)__cil_tmp18);
10094#line 142
10095 __cil_tmp20 = (unsigned long )__cil_tmp19;
10096#line 142
10097 __cil_tmp21 = __cil_tmp20 + 176;
10098#line 142
10099 *((void **)__cil_tmp21) = (void *)(& urb_done);
10100#line 143
10101 __cil_tmp22 = (unsigned long )us;
10102#line 143
10103 __cil_tmp23 = __cil_tmp22 + 240;
10104#line 143
10105 __cil_tmp24 = *((struct urb **)__cil_tmp23);
10106#line 143
10107 __cil_tmp25 = (unsigned long )__cil_tmp24;
10108#line 143
10109 __cil_tmp26 = __cil_tmp25 + 100;
10110#line 143
10111 *((unsigned int *)__cil_tmp26) = 0U;
10112 }
10113 {
10114#line 149
10115 __cil_tmp27 = (unsigned long )us;
10116#line 149
10117 __cil_tmp28 = __cil_tmp27 + 376;
10118#line 149
10119 __cil_tmp29 = *((unsigned char **)__cil_tmp28);
10120#line 149
10121 __cil_tmp30 = (unsigned long )__cil_tmp29;
10122#line 149
10123 __cil_tmp31 = (unsigned long )us;
10124#line 149
10125 __cil_tmp32 = __cil_tmp31 + 240;
10126#line 149
10127 __cil_tmp33 = *((struct urb **)__cil_tmp32);
10128#line 149
10129 __cil_tmp34 = (unsigned long )__cil_tmp33;
10130#line 149
10131 __cil_tmp35 = __cil_tmp34 + 104;
10132#line 149
10133 __cil_tmp36 = *((void **)__cil_tmp35);
10134#line 149
10135 __cil_tmp37 = (unsigned long )__cil_tmp36;
10136#line 149
10137 if (__cil_tmp37 == __cil_tmp30) {
10138#line 150
10139 __cil_tmp38 = (unsigned long )us;
10140#line 150
10141 __cil_tmp39 = __cil_tmp38 + 240;
10142#line 150
10143 __cil_tmp40 = *((struct urb **)__cil_tmp39);
10144#line 150
10145 __cil_tmp41 = (unsigned long )__cil_tmp40;
10146#line 150
10147 __cil_tmp42 = __cil_tmp41 + 100;
10148#line 150
10149 __cil_tmp43 = (unsigned long )us;
10150#line 150
10151 __cil_tmp44 = __cil_tmp43 + 240;
10152#line 150
10153 __cil_tmp45 = *((struct urb **)__cil_tmp44);
10154#line 150
10155 __cil_tmp46 = (unsigned long )__cil_tmp45;
10156#line 150
10157 __cil_tmp47 = __cil_tmp46 + 100;
10158#line 150
10159 __cil_tmp48 = *((unsigned int *)__cil_tmp47);
10160#line 150
10161 *((unsigned int *)__cil_tmp42) = __cil_tmp48 | 4U;
10162 } else {
10163
10164 }
10165 }
10166 {
10167#line 151
10168 __cil_tmp49 = (unsigned long )us;
10169#line 151
10170 __cil_tmp50 = __cil_tmp49 + 240;
10171#line 151
10172 __cil_tmp51 = *((struct urb **)__cil_tmp50);
10173#line 151
10174 __cil_tmp52 = (unsigned long )__cil_tmp51;
10175#line 151
10176 __cil_tmp53 = __cil_tmp52 + 112;
10177#line 151
10178 __cil_tmp54 = (unsigned long )us;
10179#line 151
10180 __cil_tmp55 = __cil_tmp54 + 384;
10181#line 151
10182 *((dma_addr_t *)__cil_tmp53) = *((dma_addr_t *)__cil_tmp55);
10183#line 154
10184 __cil_tmp56 = (unsigned long )us;
10185#line 154
10186 __cil_tmp57 = __cil_tmp56 + 240;
10187#line 154
10188 __cil_tmp58 = *((struct urb **)__cil_tmp57);
10189#line 154
10190 status = usb_submit_urb(__cil_tmp58, 16U);
10191 }
10192#line 155
10193 if (status) {
10194#line 157
10195 return (status);
10196 } else {
10197
10198 }
10199 {
10200#line 162
10201 __cil_tmp59 = (unsigned long )us;
10202#line 162
10203 __cil_tmp60 = __cil_tmp59 + 104;
10204#line 162
10205 __cil_tmp61 = (unsigned long *)__cil_tmp60;
10206#line 162
10207 __cil_tmp62 = (unsigned long volatile *)__cil_tmp61;
10208#line 162
10209 set_bit(0U, __cil_tmp62);
10210#line 165
10211 __cil_tmp63 = (unsigned long )us;
10212#line 165
10213 __cil_tmp64 = __cil_tmp63 + 104;
10214#line 165
10215 __cil_tmp65 = (unsigned long *)__cil_tmp64;
10216#line 165
10217 __cil_tmp66 = (unsigned long volatile *)__cil_tmp65;
10218#line 165
10219 tmp___10 = ant_test_bit(2U, __cil_tmp66);
10220 }
10221#line 165
10222 if (tmp___10) {
10223 {
10224#line 168
10225 __cil_tmp67 = (unsigned long )us;
10226#line 168
10227 __cil_tmp68 = __cil_tmp67 + 104;
10228#line 168
10229 __cil_tmp69 = (unsigned long *)__cil_tmp68;
10230#line 168
10231 __cil_tmp70 = (unsigned long volatile *)__cil_tmp69;
10232#line 168
10233 tmp___9 = test_and_clear_bit(0, __cil_tmp70);
10234 }
10235#line 168
10236 if (tmp___9) {
10237 {
10238#line 169
10239 printk("<7>usb-storage: -- cancelling URB\n");
10240#line 170
10241 __cil_tmp71 = (unsigned long )us;
10242#line 170
10243 __cil_tmp72 = __cil_tmp71 + 240;
10244#line 170
10245 __cil_tmp73 = *((struct urb **)__cil_tmp72);
10246#line 170
10247 usb_unlink_urb(__cil_tmp73);
10248 }
10249 } else {
10250
10251 }
10252 } else {
10253
10254 }
10255#line 175
10256 tmp___12 = (long )timeout;
10257#line 175
10258 if (tmp___12) {
10259
10260 } else {
10261#line 175
10262 __cil_tmp74 = 0xffffffffffffffffUL >> 1;
10263#line 175
10264 tmp___12 = (long )__cil_tmp74;
10265 }
10266 {
10267#line 175
10268 __cil_tmp75 = (unsigned long )tmp___12;
10269#line 175
10270 timeleft = wait_for_completion_interruptible_timeout(& urb_done, __cil_tmp75);
10271#line 178
10272 __cil_tmp76 = (unsigned long )us;
10273#line 178
10274 __cil_tmp77 = __cil_tmp76 + 104;
10275#line 178
10276 __cil_tmp78 = (unsigned long *)__cil_tmp77;
10277#line 178
10278 __cil_tmp79 = (unsigned long volatile *)__cil_tmp78;
10279#line 178
10280 clear_bit(0, __cil_tmp79);
10281 }
10282#line 180
10283 if (timeleft <= 0L) {
10284#line 181
10285 if (timeleft == 0L) {
10286#line 181
10287 tmp___13 = "Timeout";
10288 } else {
10289#line 181
10290 tmp___13 = "Signal";
10291 }
10292 {
10293#line 181
10294 printk("<7>usb-storage: %s -- cancelling URB\n", tmp___13);
10295#line 183
10296 __cil_tmp80 = (unsigned long )us;
10297#line 183
10298 __cil_tmp81 = __cil_tmp80 + 240;
10299#line 183
10300 __cil_tmp82 = *((struct urb **)__cil_tmp81);
10301#line 183
10302 usb_kill_urb(__cil_tmp82);
10303 }
10304 } else {
10305
10306 }
10307 {
10308#line 187
10309 __cil_tmp83 = (unsigned long )us;
10310#line 187
10311 __cil_tmp84 = __cil_tmp83 + 240;
10312#line 187
10313 __cil_tmp85 = *((struct urb **)__cil_tmp84);
10314#line 187
10315 __cil_tmp86 = (unsigned long )__cil_tmp85;
10316#line 187
10317 __cil_tmp87 = __cil_tmp86 + 96;
10318#line 187
10319 return (*((int *)__cil_tmp87));
10320 }
10321}
10322}
10323#line 194 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10324int usb_stor_control_msg(struct us_data *us , unsigned int pipe , u8 request , u8 requesttype ,
10325 u16 value , u16 index , void *data , u16 size , int timeout )
10326{ int status ;
10327 int __cil_tmp11 ;
10328 int __cil_tmp12 ;
10329 int __cil_tmp13 ;
10330 int __cil_tmp14 ;
10331 int __cil_tmp15 ;
10332 unsigned long __cil_tmp16 ;
10333 unsigned long __cil_tmp17 ;
10334 struct usb_ctrlrequest *__cil_tmp18 ;
10335 unsigned long __cil_tmp19 ;
10336 unsigned long __cil_tmp20 ;
10337 struct usb_ctrlrequest *__cil_tmp21 ;
10338 unsigned long __cil_tmp22 ;
10339 unsigned long __cil_tmp23 ;
10340 unsigned long __cil_tmp24 ;
10341 unsigned long __cil_tmp25 ;
10342 struct usb_ctrlrequest *__cil_tmp26 ;
10343 unsigned long __cil_tmp27 ;
10344 unsigned long __cil_tmp28 ;
10345 unsigned long __cil_tmp29 ;
10346 unsigned long __cil_tmp30 ;
10347 struct usb_ctrlrequest *__cil_tmp31 ;
10348 unsigned long __cil_tmp32 ;
10349 unsigned long __cil_tmp33 ;
10350 unsigned long __cil_tmp34 ;
10351 unsigned long __cil_tmp35 ;
10352 struct usb_ctrlrequest *__cil_tmp36 ;
10353 unsigned long __cil_tmp37 ;
10354 unsigned long __cil_tmp38 ;
10355 unsigned long __cil_tmp39 ;
10356 unsigned long __cil_tmp40 ;
10357 struct urb *__cil_tmp41 ;
10358 unsigned long __cil_tmp42 ;
10359 unsigned long __cil_tmp43 ;
10360 struct usb_device *__cil_tmp44 ;
10361 unsigned long __cil_tmp45 ;
10362 unsigned long __cil_tmp46 ;
10363 struct usb_ctrlrequest *__cil_tmp47 ;
10364 unsigned char *__cil_tmp48 ;
10365 int __cil_tmp49 ;
10366 void *__cil_tmp50 ;
10367 unsigned long __cil_tmp51 ;
10368 unsigned long __cil_tmp52 ;
10369 struct urb *__cil_tmp53 ;
10370 unsigned long __cil_tmp54 ;
10371 unsigned long __cil_tmp55 ;
10372 u32 __cil_tmp56 ;
10373
10374 {
10375 {
10376#line 200
10377 __cil_tmp11 = (int )request;
10378#line 200
10379 __cil_tmp12 = (int )requesttype;
10380#line 200
10381 __cil_tmp13 = (int )value;
10382#line 200
10383 __cil_tmp14 = (int )index;
10384#line 200
10385 __cil_tmp15 = (int )size;
10386#line 200
10387 printk("<7>usb-storage: %s: rq=%02x rqtype=%02x value=%04x index=%02x len=%u\n",
10388 "usb_stor_control_msg", __cil_tmp11, __cil_tmp12, __cil_tmp13, __cil_tmp14,
10389 __cil_tmp15);
10390#line 205
10391 __cil_tmp16 = (unsigned long )us;
10392#line 205
10393 __cil_tmp17 = __cil_tmp16 + 248;
10394#line 205
10395 __cil_tmp18 = *((struct usb_ctrlrequest **)__cil_tmp17);
10396#line 205
10397 *((__u8 *)__cil_tmp18) = requesttype;
10398#line 206
10399 __cil_tmp19 = (unsigned long )us;
10400#line 206
10401 __cil_tmp20 = __cil_tmp19 + 248;
10402#line 206
10403 __cil_tmp21 = *((struct usb_ctrlrequest **)__cil_tmp20);
10404#line 206
10405 __cil_tmp22 = (unsigned long )__cil_tmp21;
10406#line 206
10407 __cil_tmp23 = __cil_tmp22 + 1;
10408#line 206
10409 *((__u8 *)__cil_tmp23) = request;
10410#line 207
10411 __cil_tmp24 = (unsigned long )us;
10412#line 207
10413 __cil_tmp25 = __cil_tmp24 + 248;
10414#line 207
10415 __cil_tmp26 = *((struct usb_ctrlrequest **)__cil_tmp25);
10416#line 207
10417 __cil_tmp27 = (unsigned long )__cil_tmp26;
10418#line 207
10419 __cil_tmp28 = __cil_tmp27 + 2;
10420#line 207
10421 *((__le16 *)__cil_tmp28) = value;
10422#line 208
10423 __cil_tmp29 = (unsigned long )us;
10424#line 208
10425 __cil_tmp30 = __cil_tmp29 + 248;
10426#line 208
10427 __cil_tmp31 = *((struct usb_ctrlrequest **)__cil_tmp30);
10428#line 208
10429 __cil_tmp32 = (unsigned long )__cil_tmp31;
10430#line 208
10431 __cil_tmp33 = __cil_tmp32 + 4;
10432#line 208
10433 *((__le16 *)__cil_tmp33) = index;
10434#line 209
10435 __cil_tmp34 = (unsigned long )us;
10436#line 209
10437 __cil_tmp35 = __cil_tmp34 + 248;
10438#line 209
10439 __cil_tmp36 = *((struct usb_ctrlrequest **)__cil_tmp35);
10440#line 209
10441 __cil_tmp37 = (unsigned long )__cil_tmp36;
10442#line 209
10443 __cil_tmp38 = __cil_tmp37 + 6;
10444#line 209
10445 *((__le16 *)__cil_tmp38) = size;
10446#line 212
10447 __cil_tmp39 = (unsigned long )us;
10448#line 212
10449 __cil_tmp40 = __cil_tmp39 + 240;
10450#line 212
10451 __cil_tmp41 = *((struct urb **)__cil_tmp40);
10452#line 212
10453 __cil_tmp42 = (unsigned long )us;
10454#line 212
10455 __cil_tmp43 = __cil_tmp42 + 72;
10456#line 212
10457 __cil_tmp44 = *((struct usb_device **)__cil_tmp43);
10458#line 212
10459 __cil_tmp45 = (unsigned long )us;
10460#line 212
10461 __cil_tmp46 = __cil_tmp45 + 248;
10462#line 212
10463 __cil_tmp47 = *((struct usb_ctrlrequest **)__cil_tmp46);
10464#line 212
10465 __cil_tmp48 = (unsigned char *)__cil_tmp47;
10466#line 212
10467 __cil_tmp49 = (int )size;
10468#line 212
10469 __cil_tmp50 = (void *)0;
10470#line 212
10471 usb_fill_control_urb(__cil_tmp41, __cil_tmp44, pipe, __cil_tmp48, data, __cil_tmp49,
10472 & usb_stor_blocking_completion, __cil_tmp50);
10473#line 215
10474 status = usb_stor_msg_common(us, timeout);
10475 }
10476#line 218
10477 if (status == 0) {
10478#line 219
10479 __cil_tmp51 = (unsigned long )us;
10480#line 219
10481 __cil_tmp52 = __cil_tmp51 + 240;
10482#line 219
10483 __cil_tmp53 = *((struct urb **)__cil_tmp52);
10484#line 219
10485 __cil_tmp54 = (unsigned long )__cil_tmp53;
10486#line 219
10487 __cil_tmp55 = __cil_tmp54 + 140;
10488#line 219
10489 __cil_tmp56 = *((u32 *)__cil_tmp55);
10490#line 219
10491 status = (int )__cil_tmp56;
10492 } else {
10493
10494 }
10495#line 220
10496 return (status);
10497}
10498}
10499#line 222
10500extern void *__crc_usb_stor_control_msg __attribute__((__weak__)) ;
10501#line 222 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10502static unsigned long __kcrctab_usb_stor_control_msg __attribute__((__used__,
10503__unused__, __section__("___kcrctab_gpl+usb_stor_control_msg"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_control_msg));
10504#line 222 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10505static char __kstrtab_usb_stor_control_msg[21] __attribute__((__section__("__ksymtab_strings"),
10506__aligned__(1))) =
10507#line 222
10508 { (char )'u', (char )'s', (char const )'b', (char const )'_',
10509 (char )'s', (char )'t', (char const )'o', (char const )'r',
10510 (char )'_', (char )'c', (char const )'o', (char const )'n',
10511 (char )'t', (char )'r', (char const )'o', (char const )'l',
10512 (char )'_', (char )'m', (char const )'s', (char const )'g',
10513 (char )'\000'};
10514#line 222 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10515static struct kernel_symbol __ksymtab_usb_stor_control_msg __attribute__((__used__,
10516__unused__, __section__("___ksymtab_gpl+usb_stor_control_msg"))) = {(unsigned long )(& usb_stor_control_msg), __kstrtab_usb_stor_control_msg};
10517#line 236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10518int usb_stor_clear_halt(struct us_data *us , unsigned int pipe )
10519{ int result ;
10520 int endp ;
10521 unsigned int __cil_tmp5 ;
10522 unsigned int __cil_tmp6 ;
10523 unsigned long __cil_tmp7 ;
10524 unsigned long __cil_tmp8 ;
10525 unsigned int __cil_tmp9 ;
10526 u8 __cil_tmp10 ;
10527 u8 __cil_tmp11 ;
10528 u16 __cil_tmp12 ;
10529 u16 __cil_tmp13 ;
10530 void *__cil_tmp14 ;
10531 u16 __cil_tmp15 ;
10532 unsigned long __cil_tmp16 ;
10533 unsigned long __cil_tmp17 ;
10534 struct usb_device *__cil_tmp18 ;
10535 unsigned int __cil_tmp19 ;
10536
10537 {
10538#line 239
10539 __cil_tmp5 = pipe >> 15;
10540#line 239
10541 __cil_tmp6 = __cil_tmp5 & 15U;
10542#line 239
10543 endp = (int )__cil_tmp6;
10544#line 241
10545 if (pipe & 128U) {
10546#line 242
10547 endp = endp | 128;
10548 } else {
10549
10550 }
10551 {
10552#line 244
10553 __cil_tmp7 = (unsigned long )us;
10554#line 244
10555 __cil_tmp8 = __cil_tmp7 + 120;
10556#line 244
10557 __cil_tmp9 = *((unsigned int *)__cil_tmp8);
10558#line 244
10559 __cil_tmp10 = (u8 )1;
10560#line 244
10561 __cil_tmp11 = (u8 )2;
10562#line 244
10563 __cil_tmp12 = (u16 )0;
10564#line 244
10565 __cil_tmp13 = (u16 )endp;
10566#line 244
10567 __cil_tmp14 = (void *)0;
10568#line 244
10569 __cil_tmp15 = (u16 )0;
10570#line 244
10571 result = usb_stor_control_msg(us, __cil_tmp9, __cil_tmp10, __cil_tmp11, __cil_tmp12,
10572 __cil_tmp13, __cil_tmp14, __cil_tmp15, 750);
10573 }
10574#line 249
10575 if (result >= 0) {
10576 {
10577#line 250
10578 __cil_tmp16 = (unsigned long )us;
10579#line 250
10580 __cil_tmp17 = __cil_tmp16 + 72;
10581#line 250
10582 __cil_tmp18 = *((struct usb_device **)__cil_tmp17);
10583#line 250
10584 __cil_tmp19 = (unsigned int )endp;
10585#line 250
10586 usb_reset_endpoint(__cil_tmp18, __cil_tmp19);
10587 }
10588 } else {
10589
10590 }
10591 {
10592#line 252
10593 printk("<7>usb-storage: %s: result = %d\n", "usb_stor_clear_halt", result);
10594 }
10595#line 253
10596 return (result);
10597}
10598}
10599#line 255
10600extern void *__crc_usb_stor_clear_halt __attribute__((__weak__)) ;
10601#line 255 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10602static unsigned long __kcrctab_usb_stor_clear_halt __attribute__((__used__,
10603__unused__, __section__("___kcrctab_gpl+usb_stor_clear_halt"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_clear_halt));
10604#line 255 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10605static char __kstrtab_usb_stor_clear_halt[20] __attribute__((__section__("__ksymtab_strings"),
10606__aligned__(1))) =
10607#line 255
10608 { (char )'u', (char )'s', (char const )'b', (char const )'_',
10609 (char )'s', (char )'t', (char const )'o', (char const )'r',
10610 (char )'_', (char )'c', (char const )'l', (char const )'e',
10611 (char )'a', (char )'r', (char const )'_', (char const )'h',
10612 (char )'a', (char )'l', (char const )'t', (char const )'\000'};
10613#line 255 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10614static struct kernel_symbol __ksymtab_usb_stor_clear_halt __attribute__((__used__,
10615__unused__, __section__("___ksymtab_gpl+usb_stor_clear_halt"))) = {(unsigned long )(& usb_stor_clear_halt), __kstrtab_usb_stor_clear_halt};
10616#line 265 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10617static int interpret_urb_result(struct us_data *us , unsigned int pipe , unsigned int length ,
10618 int result , unsigned int partial )
10619{ int tmp___7 ;
10620 unsigned int __cil_tmp7 ;
10621 unsigned int __cil_tmp8 ;
10622
10623 {
10624 {
10625#line 268
10626 printk("<7>usb-storage: Status code %d; transferred %u/%u\n", result, partial, length);
10627 }
10628#line 273
10629 if (result == 0) {
10630#line 273
10631 goto case_0;
10632 } else
10633#line 283
10634 if (result == -32) {
10635#line 283
10636 goto case_neg_32;
10637 } else
10638#line 298
10639 if (result == -75) {
10640#line 298
10641 goto case_neg_75;
10642 } else
10643#line 303
10644 if (result == -104) {
10645#line 303
10646 goto case_neg_104;
10647 } else
10648#line 308
10649 if (result == -121) {
10650#line 308
10651 goto case_neg_121;
10652 } else
10653#line 313
10654 if (result == -5) {
10655#line 313
10656 goto case_neg_5;
10657 } else {
10658 {
10659#line 318
10660 goto switch_default;
10661#line 270
10662 if (0) {
10663 case_0:
10664#line 274
10665 if (partial != length) {
10666 {
10667#line 275
10668 printk("<7>usb-storage: -- short transfer\n");
10669 }
10670#line 276
10671 return (1);
10672 } else {
10673
10674 }
10675 {
10676#line 279
10677 printk("<7>usb-storage: -- transfer complete\n");
10678 }
10679#line 280
10680 return (0);
10681 case_neg_32:
10682 {
10683#line 286
10684 __cil_tmp7 = pipe >> 30;
10685#line 286
10686 __cil_tmp8 = __cil_tmp7 & 3U;
10687#line 286
10688 if (__cil_tmp8 == 2U) {
10689 {
10690#line 287
10691 printk("<7>usb-storage: -- stall on control pipe\n");
10692 }
10693#line 288
10694 return (2);
10695 } else {
10696
10697 }
10698 }
10699 {
10700#line 292
10701 printk("<7>usb-storage: clearing endpoint halt for pipe 0x%x\n", pipe);
10702#line 293
10703 tmp___7 = usb_stor_clear_halt(us, pipe);
10704 }
10705#line 293
10706 if (tmp___7 < 0) {
10707#line 294
10708 return (4);
10709 } else {
10710
10711 }
10712#line 295
10713 return (2);
10714 case_neg_75:
10715 {
10716#line 299
10717 printk("<7>usb-storage: -- babble\n");
10718 }
10719#line 300
10720 return (3);
10721 case_neg_104:
10722 {
10723#line 304
10724 printk("<7>usb-storage: -- transfer cancelled\n");
10725 }
10726#line 305
10727 return (4);
10728 case_neg_121:
10729 {
10730#line 309
10731 printk("<7>usb-storage: -- short read transfer\n");
10732 }
10733#line 310
10734 return (1);
10735 case_neg_5:
10736 {
10737#line 314
10738 printk("<7>usb-storage: -- abort or disconnect in progress\n");
10739 }
10740#line 315
10741 return (4);
10742 switch_default:
10743 {
10744#line 319
10745 printk("<7>usb-storage: -- unknown error\n");
10746 }
10747#line 320
10748 return (4);
10749 } else {
10750 switch_break: ;
10751 }
10752 }
10753 }
10754}
10755}
10756#line 328 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10757int usb_stor_ctrl_transfer(struct us_data *us , unsigned int pipe , u8 request , u8 requesttype ,
10758 u16 value , u16 index , void *data , u16 size )
10759{ int result ;
10760 int tmp___7 ;
10761 int __cil_tmp11 ;
10762 int __cil_tmp12 ;
10763 int __cil_tmp13 ;
10764 int __cil_tmp14 ;
10765 int __cil_tmp15 ;
10766 unsigned long __cil_tmp16 ;
10767 unsigned long __cil_tmp17 ;
10768 struct usb_ctrlrequest *__cil_tmp18 ;
10769 unsigned long __cil_tmp19 ;
10770 unsigned long __cil_tmp20 ;
10771 struct usb_ctrlrequest *__cil_tmp21 ;
10772 unsigned long __cil_tmp22 ;
10773 unsigned long __cil_tmp23 ;
10774 unsigned long __cil_tmp24 ;
10775 unsigned long __cil_tmp25 ;
10776 struct usb_ctrlrequest *__cil_tmp26 ;
10777 unsigned long __cil_tmp27 ;
10778 unsigned long __cil_tmp28 ;
10779 unsigned long __cil_tmp29 ;
10780 unsigned long __cil_tmp30 ;
10781 struct usb_ctrlrequest *__cil_tmp31 ;
10782 unsigned long __cil_tmp32 ;
10783 unsigned long __cil_tmp33 ;
10784 unsigned long __cil_tmp34 ;
10785 unsigned long __cil_tmp35 ;
10786 struct usb_ctrlrequest *__cil_tmp36 ;
10787 unsigned long __cil_tmp37 ;
10788 unsigned long __cil_tmp38 ;
10789 unsigned long __cil_tmp39 ;
10790 unsigned long __cil_tmp40 ;
10791 struct urb *__cil_tmp41 ;
10792 unsigned long __cil_tmp42 ;
10793 unsigned long __cil_tmp43 ;
10794 struct usb_device *__cil_tmp44 ;
10795 unsigned long __cil_tmp45 ;
10796 unsigned long __cil_tmp46 ;
10797 struct usb_ctrlrequest *__cil_tmp47 ;
10798 unsigned char *__cil_tmp48 ;
10799 int __cil_tmp49 ;
10800 void *__cil_tmp50 ;
10801 unsigned int __cil_tmp51 ;
10802 unsigned long __cil_tmp52 ;
10803 unsigned long __cil_tmp53 ;
10804 struct urb *__cil_tmp54 ;
10805 unsigned long __cil_tmp55 ;
10806 unsigned long __cil_tmp56 ;
10807 u32 __cil_tmp57 ;
10808
10809 {
10810 {
10811#line 334
10812 __cil_tmp11 = (int )request;
10813#line 334
10814 __cil_tmp12 = (int )requesttype;
10815#line 334
10816 __cil_tmp13 = (int )value;
10817#line 334
10818 __cil_tmp14 = (int )index;
10819#line 334
10820 __cil_tmp15 = (int )size;
10821#line 334
10822 printk("<7>usb-storage: %s: rq=%02x rqtype=%02x value=%04x index=%02x len=%u\n",
10823 "usb_stor_ctrl_transfer", __cil_tmp11, __cil_tmp12, __cil_tmp13, __cil_tmp14,
10824 __cil_tmp15);
10825#line 339
10826 __cil_tmp16 = (unsigned long )us;
10827#line 339
10828 __cil_tmp17 = __cil_tmp16 + 248;
10829#line 339
10830 __cil_tmp18 = *((struct usb_ctrlrequest **)__cil_tmp17);
10831#line 339
10832 *((__u8 *)__cil_tmp18) = requesttype;
10833#line 340
10834 __cil_tmp19 = (unsigned long )us;
10835#line 340
10836 __cil_tmp20 = __cil_tmp19 + 248;
10837#line 340
10838 __cil_tmp21 = *((struct usb_ctrlrequest **)__cil_tmp20);
10839#line 340
10840 __cil_tmp22 = (unsigned long )__cil_tmp21;
10841#line 340
10842 __cil_tmp23 = __cil_tmp22 + 1;
10843#line 340
10844 *((__u8 *)__cil_tmp23) = request;
10845#line 341
10846 __cil_tmp24 = (unsigned long )us;
10847#line 341
10848 __cil_tmp25 = __cil_tmp24 + 248;
10849#line 341
10850 __cil_tmp26 = *((struct usb_ctrlrequest **)__cil_tmp25);
10851#line 341
10852 __cil_tmp27 = (unsigned long )__cil_tmp26;
10853#line 341
10854 __cil_tmp28 = __cil_tmp27 + 2;
10855#line 341
10856 *((__le16 *)__cil_tmp28) = value;
10857#line 342
10858 __cil_tmp29 = (unsigned long )us;
10859#line 342
10860 __cil_tmp30 = __cil_tmp29 + 248;
10861#line 342
10862 __cil_tmp31 = *((struct usb_ctrlrequest **)__cil_tmp30);
10863#line 342
10864 __cil_tmp32 = (unsigned long )__cil_tmp31;
10865#line 342
10866 __cil_tmp33 = __cil_tmp32 + 4;
10867#line 342
10868 *((__le16 *)__cil_tmp33) = index;
10869#line 343
10870 __cil_tmp34 = (unsigned long )us;
10871#line 343
10872 __cil_tmp35 = __cil_tmp34 + 248;
10873#line 343
10874 __cil_tmp36 = *((struct usb_ctrlrequest **)__cil_tmp35);
10875#line 343
10876 __cil_tmp37 = (unsigned long )__cil_tmp36;
10877#line 343
10878 __cil_tmp38 = __cil_tmp37 + 6;
10879#line 343
10880 *((__le16 *)__cil_tmp38) = size;
10881#line 346
10882 __cil_tmp39 = (unsigned long )us;
10883#line 346
10884 __cil_tmp40 = __cil_tmp39 + 240;
10885#line 346
10886 __cil_tmp41 = *((struct urb **)__cil_tmp40);
10887#line 346
10888 __cil_tmp42 = (unsigned long )us;
10889#line 346
10890 __cil_tmp43 = __cil_tmp42 + 72;
10891#line 346
10892 __cil_tmp44 = *((struct usb_device **)__cil_tmp43);
10893#line 346
10894 __cil_tmp45 = (unsigned long )us;
10895#line 346
10896 __cil_tmp46 = __cil_tmp45 + 248;
10897#line 346
10898 __cil_tmp47 = *((struct usb_ctrlrequest **)__cil_tmp46);
10899#line 346
10900 __cil_tmp48 = (unsigned char *)__cil_tmp47;
10901#line 346
10902 __cil_tmp49 = (int )size;
10903#line 346
10904 __cil_tmp50 = (void *)0;
10905#line 346
10906 usb_fill_control_urb(__cil_tmp41, __cil_tmp44, pipe, __cil_tmp48, data, __cil_tmp49,
10907 & usb_stor_blocking_completion, __cil_tmp50);
10908#line 349
10909 result = usb_stor_msg_common(us, 0);
10910#line 351
10911 __cil_tmp51 = (unsigned int )size;
10912#line 351
10913 __cil_tmp52 = (unsigned long )us;
10914#line 351
10915 __cil_tmp53 = __cil_tmp52 + 240;
10916#line 351
10917 __cil_tmp54 = *((struct urb **)__cil_tmp53);
10918#line 351
10919 __cil_tmp55 = (unsigned long )__cil_tmp54;
10920#line 351
10921 __cil_tmp56 = __cil_tmp55 + 140;
10922#line 351
10923 __cil_tmp57 = *((u32 *)__cil_tmp56);
10924#line 351
10925 tmp___7 = interpret_urb_result(us, pipe, __cil_tmp51, result, __cil_tmp57);
10926 }
10927#line 351
10928 return (tmp___7);
10929}
10930}
10931#line 354
10932extern void *__crc_usb_stor_ctrl_transfer __attribute__((__weak__)) ;
10933#line 354 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10934static unsigned long __kcrctab_usb_stor_ctrl_transfer __attribute__((__used__,
10935__unused__, __section__("___kcrctab_gpl+usb_stor_ctrl_transfer"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_ctrl_transfer));
10936#line 354 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10937static char __kstrtab_usb_stor_ctrl_transfer[23] __attribute__((__section__("__ksymtab_strings"),
10938__aligned__(1))) =
10939#line 354
10940 { (char )'u', (char )'s', (char const )'b', (char const )'_',
10941 (char )'s', (char )'t', (char const )'o', (char const )'r',
10942 (char )'_', (char )'c', (char const )'t', (char const )'r',
10943 (char )'l', (char )'_', (char const )'t', (char const )'r',
10944 (char )'a', (char )'n', (char const )'s', (char const )'f',
10945 (char )'e', (char )'r', (char const )'\000'};
10946#line 354 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10947static struct kernel_symbol __ksymtab_usb_stor_ctrl_transfer __attribute__((__used__,
10948__unused__, __section__("___ksymtab_gpl+usb_stor_ctrl_transfer"))) = {(unsigned long )(& usb_stor_ctrl_transfer), __kstrtab_usb_stor_ctrl_transfer};
10949#line 363 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
10950static int usb_stor_intr_transfer(struct us_data *us , void *buf , unsigned int length )
10951{ int result ;
10952 unsigned int pipe ;
10953 unsigned int maxp ;
10954 __u16 tmp___7 ;
10955 int tmp___8 ;
10956 unsigned long __cil_tmp9 ;
10957 unsigned long __cil_tmp10 ;
10958 unsigned long __cil_tmp11 ;
10959 unsigned long __cil_tmp12 ;
10960 struct usb_device *__cil_tmp13 ;
10961 int __cil_tmp14 ;
10962 unsigned int __cil_tmp15 ;
10963 int __cil_tmp16 ;
10964 unsigned long __cil_tmp17 ;
10965 unsigned long __cil_tmp18 ;
10966 struct urb *__cil_tmp19 ;
10967 unsigned long __cil_tmp20 ;
10968 unsigned long __cil_tmp21 ;
10969 struct usb_device *__cil_tmp22 ;
10970 int __cil_tmp23 ;
10971 void *__cil_tmp24 ;
10972 unsigned long __cil_tmp25 ;
10973 unsigned long __cil_tmp26 ;
10974 u8 __cil_tmp27 ;
10975 int __cil_tmp28 ;
10976 unsigned long __cil_tmp29 ;
10977 unsigned long __cil_tmp30 ;
10978 struct urb *__cil_tmp31 ;
10979 unsigned long __cil_tmp32 ;
10980 unsigned long __cil_tmp33 ;
10981 u32 __cil_tmp34 ;
10982
10983 {
10984 {
10985#line 367
10986 __cil_tmp9 = (unsigned long )us;
10987#line 367
10988 __cil_tmp10 = __cil_tmp9 + 128;
10989#line 367
10990 pipe = *((unsigned int *)__cil_tmp10);
10991#line 370
10992 printk("<7>usb-storage: %s: xfer %u bytes\n", "usb_stor_intr_transfer", length);
10993#line 373
10994 __cil_tmp11 = (unsigned long )us;
10995#line 373
10996 __cil_tmp12 = __cil_tmp11 + 72;
10997#line 373
10998 __cil_tmp13 = *((struct usb_device **)__cil_tmp12);
10999#line 373
11000 __cil_tmp14 = (int )pipe;
11001#line 373
11002 __cil_tmp15 = pipe & 128U;
11003#line 373
11004 __cil_tmp16 = ! __cil_tmp15;
11005#line 373
11006 tmp___7 = usb_maxpacket(__cil_tmp13, __cil_tmp14, __cil_tmp16);
11007#line 373
11008 maxp = (unsigned int )tmp___7;
11009 }
11010#line 374
11011 if (maxp > length) {
11012#line 375
11013 maxp = length;
11014 } else {
11015
11016 }
11017 {
11018#line 378
11019 __cil_tmp17 = (unsigned long )us;
11020#line 378
11021 __cil_tmp18 = __cil_tmp17 + 240;
11022#line 378
11023 __cil_tmp19 = *((struct urb **)__cil_tmp18);
11024#line 378
11025 __cil_tmp20 = (unsigned long )us;
11026#line 378
11027 __cil_tmp21 = __cil_tmp20 + 72;
11028#line 378
11029 __cil_tmp22 = *((struct usb_device **)__cil_tmp21);
11030#line 378
11031 __cil_tmp23 = (int )maxp;
11032#line 378
11033 __cil_tmp24 = (void *)0;
11034#line 378
11035 __cil_tmp25 = (unsigned long )us;
11036#line 378
11037 __cil_tmp26 = __cil_tmp25 + 160;
11038#line 378
11039 __cil_tmp27 = *((u8 *)__cil_tmp26);
11040#line 378
11041 __cil_tmp28 = (int )__cil_tmp27;
11042#line 378
11043 usb_fill_int_urb(__cil_tmp19, __cil_tmp22, pipe, buf, __cil_tmp23, & usb_stor_blocking_completion,
11044 __cil_tmp24, __cil_tmp28);
11045#line 381
11046 result = usb_stor_msg_common(us, 0);
11047#line 383
11048 __cil_tmp29 = (unsigned long )us;
11049#line 383
11050 __cil_tmp30 = __cil_tmp29 + 240;
11051#line 383
11052 __cil_tmp31 = *((struct urb **)__cil_tmp30);
11053#line 383
11054 __cil_tmp32 = (unsigned long )__cil_tmp31;
11055#line 383
11056 __cil_tmp33 = __cil_tmp32 + 140;
11057#line 383
11058 __cil_tmp34 = *((u32 *)__cil_tmp33);
11059#line 383
11060 tmp___8 = interpret_urb_result(us, pipe, length, result, __cil_tmp34);
11061 }
11062#line 383
11063 return (tmp___8);
11064}
11065}
11066#line 392 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11067int usb_stor_bulk_transfer_buf(struct us_data *us , unsigned int pipe , void *buf ,
11068 unsigned int length , unsigned int *act_len )
11069{ int result ;
11070 int tmp___7 ;
11071 unsigned long __cil_tmp8 ;
11072 unsigned long __cil_tmp9 ;
11073 struct urb *__cil_tmp10 ;
11074 unsigned long __cil_tmp11 ;
11075 unsigned long __cil_tmp12 ;
11076 struct usb_device *__cil_tmp13 ;
11077 int __cil_tmp14 ;
11078 void *__cil_tmp15 ;
11079 unsigned long __cil_tmp16 ;
11080 unsigned long __cil_tmp17 ;
11081 struct urb *__cil_tmp18 ;
11082 unsigned long __cil_tmp19 ;
11083 unsigned long __cil_tmp20 ;
11084 unsigned long __cil_tmp21 ;
11085 unsigned long __cil_tmp22 ;
11086 struct urb *__cil_tmp23 ;
11087 unsigned long __cil_tmp24 ;
11088 unsigned long __cil_tmp25 ;
11089 u32 __cil_tmp26 ;
11090
11091 {
11092 {
11093#line 397
11094 printk("<7>usb-storage: %s: xfer %u bytes\n", "usb_stor_bulk_transfer_buf", length);
11095#line 400
11096 __cil_tmp8 = (unsigned long )us;
11097#line 400
11098 __cil_tmp9 = __cil_tmp8 + 240;
11099#line 400
11100 __cil_tmp10 = *((struct urb **)__cil_tmp9);
11101#line 400
11102 __cil_tmp11 = (unsigned long )us;
11103#line 400
11104 __cil_tmp12 = __cil_tmp11 + 72;
11105#line 400
11106 __cil_tmp13 = *((struct usb_device **)__cil_tmp12);
11107#line 400
11108 __cil_tmp14 = (int )length;
11109#line 400
11110 __cil_tmp15 = (void *)0;
11111#line 400
11112 usb_fill_bulk_urb(__cil_tmp10, __cil_tmp13, pipe, buf, __cil_tmp14, & usb_stor_blocking_completion,
11113 __cil_tmp15);
11114#line 402
11115 result = usb_stor_msg_common(us, 0);
11116 }
11117#line 405
11118 if (act_len) {
11119#line 406
11120 __cil_tmp16 = (unsigned long )us;
11121#line 406
11122 __cil_tmp17 = __cil_tmp16 + 240;
11123#line 406
11124 __cil_tmp18 = *((struct urb **)__cil_tmp17);
11125#line 406
11126 __cil_tmp19 = (unsigned long )__cil_tmp18;
11127#line 406
11128 __cil_tmp20 = __cil_tmp19 + 140;
11129#line 406
11130 *act_len = *((u32 *)__cil_tmp20);
11131 } else {
11132
11133 }
11134 {
11135#line 407
11136 __cil_tmp21 = (unsigned long )us;
11137#line 407
11138 __cil_tmp22 = __cil_tmp21 + 240;
11139#line 407
11140 __cil_tmp23 = *((struct urb **)__cil_tmp22);
11141#line 407
11142 __cil_tmp24 = (unsigned long )__cil_tmp23;
11143#line 407
11144 __cil_tmp25 = __cil_tmp24 + 140;
11145#line 407
11146 __cil_tmp26 = *((u32 *)__cil_tmp25);
11147#line 407
11148 tmp___7 = interpret_urb_result(us, pipe, length, result, __cil_tmp26);
11149 }
11150#line 407
11151 return (tmp___7);
11152}
11153}
11154#line 410
11155extern void *__crc_usb_stor_bulk_transfer_buf __attribute__((__weak__)) ;
11156#line 410 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11157static unsigned long __kcrctab_usb_stor_bulk_transfer_buf __attribute__((__used__,
11158__unused__, __section__("___kcrctab_gpl+usb_stor_bulk_transfer_buf"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_bulk_transfer_buf));
11159#line 410 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11160static char __kstrtab_usb_stor_bulk_transfer_buf[27] __attribute__((__section__("__ksymtab_strings"),
11161__aligned__(1))) =
11162#line 410
11163 { (char )'u', (char )'s', (char const )'b', (char const )'_',
11164 (char )'s', (char )'t', (char const )'o', (char const )'r',
11165 (char )'_', (char )'b', (char const )'u', (char const )'l',
11166 (char )'k', (char )'_', (char const )'t', (char const )'r',
11167 (char )'a', (char )'n', (char const )'s', (char const )'f',
11168 (char )'e', (char )'r', (char const )'_', (char const )'b',
11169 (char )'u', (char )'f', (char const )'\000'};
11170#line 410 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11171static struct kernel_symbol __ksymtab_usb_stor_bulk_transfer_buf __attribute__((__used__,
11172__unused__, __section__("___ksymtab_gpl+usb_stor_bulk_transfer_buf"))) = {(unsigned long )(& usb_stor_bulk_transfer_buf), __kstrtab_usb_stor_bulk_transfer_buf};
11173#line 418 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11174static int usb_stor_bulk_transfer_sglist(struct us_data *us , unsigned int pipe ,
11175 struct scatterlist *sg , int num_sg , unsigned int length ,
11176 unsigned int *act_len )
11177{ int result ;
11178 int tmp___7 ;
11179 int tmp___9 ;
11180 int tmp___10 ;
11181 int tmp___12 ;
11182 unsigned long __cil_tmp14 ;
11183 unsigned long __cil_tmp15 ;
11184 unsigned long *__cil_tmp16 ;
11185 unsigned long volatile *__cil_tmp17 ;
11186 unsigned long __cil_tmp18 ;
11187 unsigned long __cil_tmp19 ;
11188 struct usb_sg_request *__cil_tmp20 ;
11189 unsigned long __cil_tmp21 ;
11190 unsigned long __cil_tmp22 ;
11191 struct usb_device *__cil_tmp23 ;
11192 size_t __cil_tmp24 ;
11193 unsigned long __cil_tmp25 ;
11194 unsigned long __cil_tmp26 ;
11195 unsigned long *__cil_tmp27 ;
11196 unsigned long volatile *__cil_tmp28 ;
11197 unsigned long __cil_tmp29 ;
11198 unsigned long __cil_tmp30 ;
11199 unsigned long *__cil_tmp31 ;
11200 unsigned long volatile *__cil_tmp32 ;
11201 unsigned long __cil_tmp33 ;
11202 unsigned long __cil_tmp34 ;
11203 unsigned long *__cil_tmp35 ;
11204 unsigned long volatile *__cil_tmp36 ;
11205 unsigned long __cil_tmp37 ;
11206 unsigned long __cil_tmp38 ;
11207 struct usb_sg_request *__cil_tmp39 ;
11208 unsigned long __cil_tmp40 ;
11209 unsigned long __cil_tmp41 ;
11210 struct usb_sg_request *__cil_tmp42 ;
11211 unsigned long __cil_tmp43 ;
11212 unsigned long __cil_tmp44 ;
11213 unsigned long *__cil_tmp45 ;
11214 unsigned long volatile *__cil_tmp46 ;
11215 unsigned long __cil_tmp47 ;
11216 unsigned long __cil_tmp48 ;
11217 unsigned long __cil_tmp49 ;
11218 unsigned long __cil_tmp50 ;
11219 unsigned long __cil_tmp51 ;
11220 size_t __cil_tmp52 ;
11221 unsigned long __cil_tmp53 ;
11222 unsigned long __cil_tmp54 ;
11223 unsigned long __cil_tmp55 ;
11224 size_t __cil_tmp56 ;
11225 unsigned int __cil_tmp57 ;
11226
11227 {
11228 {
11229#line 425
11230 __cil_tmp14 = (unsigned long )us;
11231#line 425
11232 __cil_tmp15 = __cil_tmp14 + 104;
11233#line 425
11234 __cil_tmp16 = (unsigned long *)__cil_tmp15;
11235#line 425
11236 __cil_tmp17 = (unsigned long volatile *)__cil_tmp16;
11237#line 425
11238 tmp___7 = ant_test_bit(2U, __cil_tmp17);
11239 }
11240#line 425
11241 if (tmp___7) {
11242#line 426
11243 return (4);
11244 } else {
11245
11246 }
11247 {
11248#line 429
11249 printk("<7>usb-storage: %s: xfer %u bytes, %d entries\n", "usb_stor_bulk_transfer_sglist",
11250 length, num_sg);
11251#line 431
11252 __cil_tmp18 = (unsigned long )us;
11253#line 431
11254 __cil_tmp19 = __cil_tmp18 + 256;
11255#line 431
11256 __cil_tmp20 = (struct usb_sg_request *)__cil_tmp19;
11257#line 431
11258 __cil_tmp21 = (unsigned long )us;
11259#line 431
11260 __cil_tmp22 = __cil_tmp21 + 72;
11261#line 431
11262 __cil_tmp23 = *((struct usb_device **)__cil_tmp22);
11263#line 431
11264 __cil_tmp24 = (size_t )length;
11265#line 431
11266 result = usb_sg_init(__cil_tmp20, __cil_tmp23, pipe, 0U, sg, num_sg, __cil_tmp24,
11267 16U);
11268 }
11269#line 433
11270 if (result) {
11271 {
11272#line 434
11273 printk("<7>usb-storage: usb_sg_init returned %d\n", result);
11274 }
11275#line 435
11276 return (4);
11277 } else {
11278
11279 }
11280 {
11281#line 440
11282 __cil_tmp25 = (unsigned long )us;
11283#line 440
11284 __cil_tmp26 = __cil_tmp25 + 104;
11285#line 440
11286 __cil_tmp27 = (unsigned long *)__cil_tmp26;
11287#line 440
11288 __cil_tmp28 = (unsigned long volatile *)__cil_tmp27;
11289#line 440
11290 set_bit(1U, __cil_tmp28);
11291#line 443
11292 __cil_tmp29 = (unsigned long )us;
11293#line 443
11294 __cil_tmp30 = __cil_tmp29 + 104;
11295#line 443
11296 __cil_tmp31 = (unsigned long *)__cil_tmp30;
11297#line 443
11298 __cil_tmp32 = (unsigned long volatile *)__cil_tmp31;
11299#line 443
11300 tmp___10 = ant_test_bit(2U, __cil_tmp32);
11301 }
11302#line 443
11303 if (tmp___10) {
11304 {
11305#line 446
11306 __cil_tmp33 = (unsigned long )us;
11307#line 446
11308 __cil_tmp34 = __cil_tmp33 + 104;
11309#line 446
11310 __cil_tmp35 = (unsigned long *)__cil_tmp34;
11311#line 446
11312 __cil_tmp36 = (unsigned long volatile *)__cil_tmp35;
11313#line 446
11314 tmp___9 = test_and_clear_bit(1, __cil_tmp36);
11315 }
11316#line 446
11317 if (tmp___9) {
11318 {
11319#line 447
11320 printk("<7>usb-storage: -- cancelling sg request\n");
11321#line 448
11322 __cil_tmp37 = (unsigned long )us;
11323#line 448
11324 __cil_tmp38 = __cil_tmp37 + 256;
11325#line 448
11326 __cil_tmp39 = (struct usb_sg_request *)__cil_tmp38;
11327#line 448
11328 usb_sg_cancel(__cil_tmp39);
11329 }
11330 } else {
11331
11332 }
11333 } else {
11334
11335 }
11336 {
11337#line 453
11338 __cil_tmp40 = (unsigned long )us;
11339#line 453
11340 __cil_tmp41 = __cil_tmp40 + 256;
11341#line 453
11342 __cil_tmp42 = (struct usb_sg_request *)__cil_tmp41;
11343#line 453
11344 usb_sg_wait(__cil_tmp42);
11345#line 454
11346 __cil_tmp43 = (unsigned long )us;
11347#line 454
11348 __cil_tmp44 = __cil_tmp43 + 104;
11349#line 454
11350 __cil_tmp45 = (unsigned long *)__cil_tmp44;
11351#line 454
11352 __cil_tmp46 = (unsigned long volatile *)__cil_tmp45;
11353#line 454
11354 clear_bit(1, __cil_tmp46);
11355#line 456
11356 __cil_tmp47 = (unsigned long )us;
11357#line 456
11358 __cil_tmp48 = __cil_tmp47 + 256;
11359#line 456
11360 result = *((int *)__cil_tmp48);
11361 }
11362#line 457
11363 if (act_len) {
11364#line 458
11365 __cil_tmp49 = 256 + 8;
11366#line 458
11367 __cil_tmp50 = (unsigned long )us;
11368#line 458
11369 __cil_tmp51 = __cil_tmp50 + __cil_tmp49;
11370#line 458
11371 __cil_tmp52 = *((size_t *)__cil_tmp51);
11372#line 458
11373 *act_len = (unsigned int )__cil_tmp52;
11374 } else {
11375
11376 }
11377 {
11378#line 459
11379 __cil_tmp53 = 256 + 8;
11380#line 459
11381 __cil_tmp54 = (unsigned long )us;
11382#line 459
11383 __cil_tmp55 = __cil_tmp54 + __cil_tmp53;
11384#line 459
11385 __cil_tmp56 = *((size_t *)__cil_tmp55);
11386#line 459
11387 __cil_tmp57 = (unsigned int )__cil_tmp56;
11388#line 459
11389 tmp___12 = interpret_urb_result(us, pipe, length, result, __cil_tmp57);
11390 }
11391#line 459
11392 return (tmp___12);
11393}
11394}
11395#line 467 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11396int usb_stor_bulk_srb(struct us_data *us , unsigned int pipe , struct scsi_cmnd *srb )
11397{ unsigned int partial ;
11398 int result ;
11399 unsigned int tmp___7 ;
11400 unsigned int tmp___8 ;
11401 struct scatterlist *tmp___9 ;
11402 int tmp___10 ;
11403 unsigned int tmp___11 ;
11404 int __cil_tmp11 ;
11405 unsigned int *__cil_tmp12 ;
11406 unsigned int __cil_tmp13 ;
11407 unsigned int __cil_tmp14 ;
11408 int __cil_tmp15 ;
11409
11410 {
11411 {
11412#line 471
11413 tmp___7 = scsi_bufflen(srb);
11414#line 471
11415 tmp___8 = scsi_sg_count(srb);
11416#line 471
11417 tmp___9 = scsi_sglist(srb);
11418#line 471
11419 __cil_tmp11 = (int )tmp___8;
11420#line 471
11421 tmp___10 = usb_stor_bulk_transfer_sglist(us, pipe, tmp___9, __cil_tmp11, tmp___7,
11422 & partial);
11423#line 471
11424 result = tmp___10;
11425#line 475
11426 tmp___11 = scsi_bufflen(srb);
11427#line 475
11428 __cil_tmp12 = & partial;
11429#line 475
11430 __cil_tmp13 = *__cil_tmp12;
11431#line 475
11432 __cil_tmp14 = tmp___11 - __cil_tmp13;
11433#line 475
11434 __cil_tmp15 = (int )__cil_tmp14;
11435#line 475
11436 scsi_set_resid(srb, __cil_tmp15);
11437 }
11438#line 476
11439 return (result);
11440}
11441}
11442#line 478
11443extern void *__crc_usb_stor_bulk_srb __attribute__((__weak__)) ;
11444#line 478 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11445static unsigned long __kcrctab_usb_stor_bulk_srb __attribute__((__used__,
11446__unused__, __section__("___kcrctab_gpl+usb_stor_bulk_srb"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_bulk_srb));
11447#line 478 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11448static char __kstrtab_usb_stor_bulk_srb[18] __attribute__((__section__("__ksymtab_strings"),
11449__aligned__(1))) =
11450#line 478
11451 { (char )'u', (char )'s', (char const )'b', (char const )'_',
11452 (char )'s', (char )'t', (char const )'o', (char const )'r',
11453 (char )'_', (char )'b', (char const )'u', (char const )'l',
11454 (char )'k', (char )'_', (char const )'s', (char const )'r',
11455 (char )'b', (char )'\000'};
11456#line 478 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11457static struct kernel_symbol __ksymtab_usb_stor_bulk_srb __attribute__((__used__,
11458__unused__, __section__("___ksymtab_gpl+usb_stor_bulk_srb"))) = {(unsigned long )(& usb_stor_bulk_srb), __kstrtab_usb_stor_bulk_srb};
11459#line 489 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11460int usb_stor_bulk_transfer_sg(struct us_data *us , unsigned int pipe , void *buf ,
11461 unsigned int length_left , int use_sg , int *residual )
11462{ int result ;
11463 unsigned int partial ;
11464 struct scatterlist *__cil_tmp9 ;
11465 unsigned int *__cil_tmp10 ;
11466 unsigned int __cil_tmp11 ;
11467 unsigned int *__cil_tmp12 ;
11468 unsigned int __cil_tmp13 ;
11469
11470 {
11471#line 496
11472 if (use_sg) {
11473 {
11474#line 498
11475 __cil_tmp9 = (struct scatterlist *)buf;
11476#line 498
11477 result = usb_stor_bulk_transfer_sglist(us, pipe, __cil_tmp9, use_sg, length_left,
11478 & partial);
11479#line 501
11480 __cil_tmp10 = & partial;
11481#line 501
11482 __cil_tmp11 = *__cil_tmp10;
11483#line 501
11484 length_left = length_left - __cil_tmp11;
11485 }
11486 } else {
11487 {
11488#line 504
11489 result = usb_stor_bulk_transfer_buf(us, pipe, buf, length_left, & partial);
11490#line 506
11491 __cil_tmp12 = & partial;
11492#line 506
11493 __cil_tmp13 = *__cil_tmp12;
11494#line 506
11495 length_left = length_left - __cil_tmp13;
11496 }
11497 }
11498#line 510
11499 if (residual) {
11500#line 511
11501 *residual = (int )length_left;
11502 } else {
11503
11504 }
11505#line 512
11506 return (result);
11507}
11508}
11509#line 514
11510extern void *__crc_usb_stor_bulk_transfer_sg __attribute__((__weak__)) ;
11511#line 514 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11512static unsigned long __kcrctab_usb_stor_bulk_transfer_sg __attribute__((__used__,
11513__unused__, __section__("___kcrctab_gpl+usb_stor_bulk_transfer_sg"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_bulk_transfer_sg));
11514#line 514 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11515static char __kstrtab_usb_stor_bulk_transfer_sg[26] __attribute__((__section__("__ksymtab_strings"),
11516__aligned__(1))) =
11517#line 514
11518 { (char )'u', (char )'s', (char const )'b', (char const )'_',
11519 (char )'s', (char )'t', (char const )'o', (char const )'r',
11520 (char )'_', (char )'b', (char const )'u', (char const )'l',
11521 (char )'k', (char )'_', (char const )'t', (char const )'r',
11522 (char )'a', (char )'n', (char const )'s', (char const )'f',
11523 (char )'e', (char )'r', (char const )'_', (char const )'s',
11524 (char )'g', (char )'\000'};
11525#line 514 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11526static struct kernel_symbol __ksymtab_usb_stor_bulk_transfer_sg __attribute__((__used__,
11527__unused__, __section__("___ksymtab_gpl+usb_stor_bulk_transfer_sg"))) = {(unsigned long )(& usb_stor_bulk_transfer_sg), __kstrtab_usb_stor_bulk_transfer_sg};
11528#line 531
11529static void last_sector_hacks(struct us_data *us , struct scsi_cmnd *srb ) ;
11530#line 531 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11531static unsigned char record_not_found[18] =
11532#line 531
11533 { (unsigned char)112, (unsigned char)0, (unsigned char)3, (unsigned char)0,
11534 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)10,
11535 (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
11536 (unsigned char)20, (unsigned char)0, (unsigned char)0, (unsigned char)0,
11537 (unsigned char)0, (unsigned char)0};
11538#line 524 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11539static void last_sector_hacks(struct us_data *us , struct scsi_cmnd *srb )
11540{ struct gendisk *disk ;
11541 struct scsi_disk *sdkp ;
11542 u32 sector ;
11543 size_t __len ;
11544 void *__ret ;
11545 int tmp___7 ;
11546 unsigned long __cil_tmp9 ;
11547 unsigned long __cil_tmp10 ;
11548 int __cil_tmp11 ;
11549 unsigned long __cil_tmp12 ;
11550 unsigned long __cil_tmp13 ;
11551 unsigned char *__cil_tmp14 ;
11552 unsigned char *__cil_tmp15 ;
11553 unsigned char __cil_tmp16 ;
11554 int __cil_tmp17 ;
11555 unsigned long __cil_tmp18 ;
11556 unsigned long __cil_tmp19 ;
11557 unsigned char *__cil_tmp20 ;
11558 unsigned char *__cil_tmp21 ;
11559 unsigned char __cil_tmp22 ;
11560 int __cil_tmp23 ;
11561 unsigned long __cil_tmp24 ;
11562 unsigned long __cil_tmp25 ;
11563 unsigned char *__cil_tmp26 ;
11564 unsigned char *__cil_tmp27 ;
11565 unsigned char __cil_tmp28 ;
11566 int __cil_tmp29 ;
11567 unsigned long __cil_tmp30 ;
11568 unsigned long __cil_tmp31 ;
11569 unsigned char *__cil_tmp32 ;
11570 unsigned char *__cil_tmp33 ;
11571 unsigned char __cil_tmp34 ;
11572 int __cil_tmp35 ;
11573 int __cil_tmp36 ;
11574 unsigned long __cil_tmp37 ;
11575 unsigned long __cil_tmp38 ;
11576 unsigned char *__cil_tmp39 ;
11577 unsigned char *__cil_tmp40 ;
11578 unsigned char __cil_tmp41 ;
11579 int __cil_tmp42 ;
11580 int __cil_tmp43 ;
11581 unsigned long __cil_tmp44 ;
11582 unsigned long __cil_tmp45 ;
11583 unsigned char *__cil_tmp46 ;
11584 unsigned char *__cil_tmp47 ;
11585 unsigned char __cil_tmp48 ;
11586 int __cil_tmp49 ;
11587 int __cil_tmp50 ;
11588 int __cil_tmp51 ;
11589 int __cil_tmp52 ;
11590 int __cil_tmp53 ;
11591 unsigned long __cil_tmp54 ;
11592 unsigned long __cil_tmp55 ;
11593 struct request *__cil_tmp56 ;
11594 unsigned long __cil_tmp57 ;
11595 unsigned long __cil_tmp58 ;
11596 unsigned long __cil_tmp59 ;
11597 unsigned long __cil_tmp60 ;
11598 sector_t __cil_tmp61 ;
11599 u32 __cil_tmp62 ;
11600 sector_t __cil_tmp63 ;
11601 unsigned long __cil_tmp64 ;
11602 unsigned long __cil_tmp65 ;
11603 int __cil_tmp66 ;
11604 unsigned long __cil_tmp67 ;
11605 unsigned long __cil_tmp68 ;
11606 unsigned long __cil_tmp69 ;
11607 unsigned long __cil_tmp70 ;
11608 unsigned long __cil_tmp71 ;
11609 unsigned long __cil_tmp72 ;
11610 int __cil_tmp73 ;
11611 unsigned long __cil_tmp74 ;
11612 unsigned long __cil_tmp75 ;
11613 int __cil_tmp76 ;
11614 unsigned long __cil_tmp77 ;
11615 unsigned long __cil_tmp78 ;
11616 unsigned long __cil_tmp79 ;
11617 unsigned long __cil_tmp80 ;
11618 unsigned char *__cil_tmp81 ;
11619 void *__cil_tmp82 ;
11620 unsigned long __cil_tmp83 ;
11621 unsigned long __cil_tmp84 ;
11622 unsigned char *__cil_tmp85 ;
11623 void *__cil_tmp86 ;
11624 unsigned long __cil_tmp87 ;
11625 unsigned long __cil_tmp88 ;
11626 unsigned char *__cil_tmp89 ;
11627 void *__cil_tmp90 ;
11628 unsigned long __cil_tmp91 ;
11629 unsigned long __cil_tmp92 ;
11630 unsigned char *__cil_tmp93 ;
11631 void *__cil_tmp94 ;
11632 unsigned long __cil_tmp95 ;
11633 unsigned long __cil_tmp96 ;
11634 unsigned char *__cil_tmp97 ;
11635 unsigned char *__cil_tmp98 ;
11636 unsigned char __cil_tmp99 ;
11637 int __cil_tmp100 ;
11638 unsigned long __cil_tmp101 ;
11639 unsigned long __cil_tmp102 ;
11640
11641 {
11642 {
11643#line 543
11644 __cil_tmp9 = (unsigned long )us;
11645#line 543
11646 __cil_tmp10 = __cil_tmp9 + 672;
11647#line 543
11648 __cil_tmp11 = *((int *)__cil_tmp10);
11649#line 543
11650 if (! __cil_tmp11) {
11651#line 544
11652 return;
11653 } else {
11654
11655 }
11656 }
11657 {
11658#line 547
11659 __cil_tmp12 = (unsigned long )srb;
11660#line 547
11661 __cil_tmp13 = __cil_tmp12 + 80;
11662#line 547
11663 __cil_tmp14 = *((unsigned char **)__cil_tmp13);
11664#line 547
11665 __cil_tmp15 = __cil_tmp14 + 0;
11666#line 547
11667 __cil_tmp16 = *__cil_tmp15;
11668#line 547
11669 __cil_tmp17 = (int )__cil_tmp16;
11670#line 547
11671 if (__cil_tmp17 != 40) {
11672 {
11673#line 547
11674 __cil_tmp18 = (unsigned long )srb;
11675#line 547
11676 __cil_tmp19 = __cil_tmp18 + 80;
11677#line 547
11678 __cil_tmp20 = *((unsigned char **)__cil_tmp19);
11679#line 547
11680 __cil_tmp21 = __cil_tmp20 + 0;
11681#line 547
11682 __cil_tmp22 = *__cil_tmp21;
11683#line 547
11684 __cil_tmp23 = (int )__cil_tmp22;
11685#line 547
11686 if (__cil_tmp23 != 42) {
11687#line 548
11688 goto done;
11689 } else {
11690
11691 }
11692 }
11693 } else {
11694
11695 }
11696 }
11697#line 551
11698 __cil_tmp24 = (unsigned long )srb;
11699#line 551
11700 __cil_tmp25 = __cil_tmp24 + 80;
11701#line 551
11702 __cil_tmp26 = *((unsigned char **)__cil_tmp25);
11703#line 551
11704 __cil_tmp27 = __cil_tmp26 + 5;
11705#line 551
11706 __cil_tmp28 = *__cil_tmp27;
11707#line 551
11708 __cil_tmp29 = (int )__cil_tmp28;
11709#line 551
11710 __cil_tmp30 = (unsigned long )srb;
11711#line 551
11712 __cil_tmp31 = __cil_tmp30 + 80;
11713#line 551
11714 __cil_tmp32 = *((unsigned char **)__cil_tmp31);
11715#line 551
11716 __cil_tmp33 = __cil_tmp32 + 4;
11717#line 551
11718 __cil_tmp34 = *__cil_tmp33;
11719#line 551
11720 __cil_tmp35 = (int )__cil_tmp34;
11721#line 551
11722 __cil_tmp36 = __cil_tmp35 << 8;
11723#line 551
11724 __cil_tmp37 = (unsigned long )srb;
11725#line 551
11726 __cil_tmp38 = __cil_tmp37 + 80;
11727#line 551
11728 __cil_tmp39 = *((unsigned char **)__cil_tmp38);
11729#line 551
11730 __cil_tmp40 = __cil_tmp39 + 3;
11731#line 551
11732 __cil_tmp41 = *__cil_tmp40;
11733#line 551
11734 __cil_tmp42 = (int )__cil_tmp41;
11735#line 551
11736 __cil_tmp43 = __cil_tmp42 << 16;
11737#line 551
11738 __cil_tmp44 = (unsigned long )srb;
11739#line 551
11740 __cil_tmp45 = __cil_tmp44 + 80;
11741#line 551
11742 __cil_tmp46 = *((unsigned char **)__cil_tmp45);
11743#line 551
11744 __cil_tmp47 = __cil_tmp46 + 2;
11745#line 551
11746 __cil_tmp48 = *__cil_tmp47;
11747#line 551
11748 __cil_tmp49 = (int )__cil_tmp48;
11749#line 551
11750 __cil_tmp50 = __cil_tmp49 << 24;
11751#line 551
11752 __cil_tmp51 = __cil_tmp50 | __cil_tmp43;
11753#line 551
11754 __cil_tmp52 = __cil_tmp51 | __cil_tmp36;
11755#line 551
11756 __cil_tmp53 = __cil_tmp52 | __cil_tmp29;
11757#line 551
11758 sector = (u32 )__cil_tmp53;
11759#line 553
11760 __cil_tmp54 = (unsigned long )srb;
11761#line 553
11762 __cil_tmp55 = __cil_tmp54 + 128;
11763#line 553
11764 __cil_tmp56 = *((struct request **)__cil_tmp55);
11765#line 553
11766 __cil_tmp57 = (unsigned long )__cil_tmp56;
11767#line 553
11768 __cil_tmp58 = __cil_tmp57 + 184;
11769#line 553
11770 disk = *((struct gendisk **)__cil_tmp58);
11771#line 554
11772 if (! disk) {
11773#line 555
11774 goto done;
11775 } else {
11776
11777 }
11778 {
11779#line 556
11780 sdkp = scsi_disk(disk);
11781 }
11782#line 557
11783 if (! sdkp) {
11784#line 558
11785 goto done;
11786 } else {
11787
11788 }
11789 {
11790#line 559
11791 __cil_tmp59 = (unsigned long )sdkp;
11792#line 559
11793 __cil_tmp60 = __cil_tmp59 + 800;
11794#line 559
11795 __cil_tmp61 = *((sector_t *)__cil_tmp60);
11796#line 559
11797 __cil_tmp62 = sector + 1U;
11798#line 559
11799 __cil_tmp63 = (sector_t )__cil_tmp62;
11800#line 559
11801 if (__cil_tmp63 != __cil_tmp61) {
11802#line 560
11803 goto done;
11804 } else {
11805
11806 }
11807 }
11808 {
11809#line 562
11810 __cil_tmp64 = (unsigned long )srb;
11811#line 562
11812 __cil_tmp65 = __cil_tmp64 + 224;
11813#line 562
11814 __cil_tmp66 = *((int *)__cil_tmp65);
11815#line 562
11816 if (__cil_tmp66 == 0) {
11817 {
11818#line 562
11819 tmp___7 = scsi_get_resid(srb);
11820 }
11821#line 562
11822 if (tmp___7 == 0) {
11823#line 567
11824 __cil_tmp67 = (unsigned long )us;
11825#line 567
11826 __cil_tmp68 = __cil_tmp67 + 672;
11827#line 567
11828 *((int *)__cil_tmp68) = 0;
11829 } else {
11830#line 562
11831 goto _L;
11832 }
11833 } else {
11834 _L:
11835#line 578
11836 __cil_tmp69 = (unsigned long )us;
11837#line 578
11838 __cil_tmp70 = __cil_tmp69 + 676;
11839#line 578
11840 __cil_tmp71 = (unsigned long )us;
11841#line 578
11842 __cil_tmp72 = __cil_tmp71 + 676;
11843#line 578
11844 __cil_tmp73 = *((int *)__cil_tmp72);
11845#line 578
11846 *((int *)__cil_tmp70) = __cil_tmp73 + 1;
11847 {
11848#line 578
11849 __cil_tmp74 = (unsigned long )us;
11850#line 578
11851 __cil_tmp75 = __cil_tmp74 + 676;
11852#line 578
11853 __cil_tmp76 = *((int *)__cil_tmp75);
11854#line 578
11855 if (__cil_tmp76 < 3) {
11856#line 579
11857 return;
11858 } else {
11859
11860 }
11861 }
11862#line 580
11863 __cil_tmp77 = (unsigned long )srb;
11864#line 580
11865 __cil_tmp78 = __cil_tmp77 + 224;
11866#line 580
11867 *((int *)__cil_tmp78) = 2;
11868#line 581
11869 __len = 18UL;
11870#line 581
11871 if (__len >= 64UL) {
11872 {
11873#line 581
11874 __cil_tmp79 = (unsigned long )srb;
11875#line 581
11876 __cil_tmp80 = __cil_tmp79 + 136;
11877#line 581
11878 __cil_tmp81 = *((unsigned char **)__cil_tmp80);
11879#line 581
11880 __cil_tmp82 = (void *)__cil_tmp81;
11881#line 581
11882 __cil_tmp83 = 0 * 1UL;
11883#line 581
11884 __cil_tmp84 = (unsigned long )(record_not_found) + __cil_tmp83;
11885#line 581
11886 __cil_tmp85 = (unsigned char *)__cil_tmp84;
11887#line 581
11888 __cil_tmp86 = (void *)__cil_tmp85;
11889#line 581
11890 __ret = __memcpy(__cil_tmp82, __cil_tmp86, __len);
11891 }
11892 } else {
11893 {
11894#line 581
11895 __cil_tmp87 = (unsigned long )srb;
11896#line 581
11897 __cil_tmp88 = __cil_tmp87 + 136;
11898#line 581
11899 __cil_tmp89 = *((unsigned char **)__cil_tmp88);
11900#line 581
11901 __cil_tmp90 = (void *)__cil_tmp89;
11902#line 581
11903 __cil_tmp91 = 0 * 1UL;
11904#line 581
11905 __cil_tmp92 = (unsigned long )(record_not_found) + __cil_tmp91;
11906#line 581
11907 __cil_tmp93 = (unsigned char *)__cil_tmp92;
11908#line 581
11909 __cil_tmp94 = (void *)__cil_tmp93;
11910#line 581
11911 __ret = __builtin_memcpy(__cil_tmp90, __cil_tmp94, __len);
11912 }
11913 }
11914 }
11915 }
11916 done:
11917 {
11918#line 590
11919 __cil_tmp95 = (unsigned long )srb;
11920#line 590
11921 __cil_tmp96 = __cil_tmp95 + 80;
11922#line 590
11923 __cil_tmp97 = *((unsigned char **)__cil_tmp96);
11924#line 590
11925 __cil_tmp98 = __cil_tmp97 + 0;
11926#line 590
11927 __cil_tmp99 = *__cil_tmp98;
11928#line 590
11929 __cil_tmp100 = (int )__cil_tmp99;
11930#line 590
11931 if (__cil_tmp100 != 0) {
11932#line 591
11933 __cil_tmp101 = (unsigned long )us;
11934#line 591
11935 __cil_tmp102 = __cil_tmp101 + 676;
11936#line 591
11937 *((int *)__cil_tmp102) = 0;
11938 } else {
11939
11940 }
11941 }
11942#line 592
11943 return;
11944}
11945}
11946#line 599 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
11947void usb_stor_invoke_transport(struct scsi_cmnd *srb , struct us_data *us )
11948{ int need_auto_sense ;
11949 int result ;
11950 int tmp___7 ;
11951 int tmp___9 ;
11952 long tmp___10 ;
11953 int tmp___11 ;
11954 int temp_result ;
11955 struct scsi_eh_save ses ;
11956 int sense_size ;
11957 struct scsi_sense_hdr sshdr ;
11958 u8 *scdd ;
11959 u8 fm_ili ;
11960 int tmp___12 ;
11961 int tmp___14 ;
11962 int tmp___15 ;
11963 int tmp___17 ;
11964 int tmp___19 ;
11965 long tmp___20 ;
11966 unsigned int tmp___21 ;
11967 int tmp___22 ;
11968 struct Scsi_Host *tmp___23 ;
11969 struct Scsi_Host *tmp___24 ;
11970 struct Scsi_Host *tmp___25 ;
11971 struct Scsi_Host *tmp___26 ;
11972 unsigned long __cil_tmp31 ;
11973 unsigned long __cil_tmp32 ;
11974 int (*__cil_tmp33)(struct scsi_cmnd * , struct us_data * ) ;
11975 unsigned long __cil_tmp34 ;
11976 unsigned long __cil_tmp35 ;
11977 unsigned long *__cil_tmp36 ;
11978 unsigned long volatile *__cil_tmp37 ;
11979 unsigned long __cil_tmp38 ;
11980 unsigned long __cil_tmp39 ;
11981 unsigned long __cil_tmp40 ;
11982 unsigned long __cil_tmp41 ;
11983 unsigned long __cil_tmp42 ;
11984 unsigned long __cil_tmp43 ;
11985 unsigned long __cil_tmp44 ;
11986 unsigned long __cil_tmp45 ;
11987 unsigned long __cil_tmp46 ;
11988 unsigned long __cil_tmp47 ;
11989 u8 __cil_tmp48 ;
11990 int __cil_tmp49 ;
11991 unsigned long __cil_tmp50 ;
11992 unsigned long __cil_tmp51 ;
11993 u8 __cil_tmp52 ;
11994 int __cil_tmp53 ;
11995 unsigned long __cil_tmp54 ;
11996 unsigned long __cil_tmp55 ;
11997 enum dma_data_direction __cil_tmp56 ;
11998 unsigned int __cil_tmp57 ;
11999 unsigned long __cil_tmp58 ;
12000 unsigned long __cil_tmp59 ;
12001 unsigned char *__cil_tmp60 ;
12002 unsigned char *__cil_tmp61 ;
12003 unsigned char __cil_tmp62 ;
12004 int __cil_tmp63 ;
12005 unsigned long __cil_tmp64 ;
12006 unsigned long __cil_tmp65 ;
12007 unsigned char *__cil_tmp66 ;
12008 unsigned char *__cil_tmp67 ;
12009 unsigned char __cil_tmp68 ;
12010 int __cil_tmp69 ;
12011 unsigned long __cil_tmp70 ;
12012 unsigned long __cil_tmp71 ;
12013 unsigned long __cil_tmp72 ;
12014 unsigned long __cil_tmp73 ;
12015 unsigned long __cil_tmp74 ;
12016 unsigned long __cil_tmp75 ;
12017 unsigned long __cil_tmp76 ;
12018 unsigned long __cil_tmp77 ;
12019 unsigned long __cil_tmp78 ;
12020 unsigned long __cil_tmp79 ;
12021 unsigned char *__cil_tmp80 ;
12022 unsigned char *__cil_tmp81 ;
12023 unsigned char __cil_tmp82 ;
12024 int __cil_tmp83 ;
12025 int __cil_tmp84 ;
12026 long __cil_tmp85 ;
12027 unsigned long __cil_tmp86 ;
12028 unsigned long __cil_tmp87 ;
12029 unsigned long __cil_tmp88 ;
12030 unsigned long __cil_tmp89 ;
12031 unsigned long __cil_tmp90 ;
12032 unsigned long __cil_tmp91 ;
12033 unsigned long __cil_tmp92 ;
12034 unsigned char *__cil_tmp93 ;
12035 unsigned char *__cil_tmp94 ;
12036 unsigned char __cil_tmp95 ;
12037 int __cil_tmp96 ;
12038 unsigned long __cil_tmp97 ;
12039 unsigned long __cil_tmp98 ;
12040 unsigned char *__cil_tmp99 ;
12041 unsigned char *__cil_tmp100 ;
12042 unsigned char __cil_tmp101 ;
12043 int __cil_tmp102 ;
12044 unsigned long __cil_tmp103 ;
12045 unsigned long __cil_tmp104 ;
12046 unsigned char *__cil_tmp105 ;
12047 unsigned char *__cil_tmp106 ;
12048 unsigned char __cil_tmp107 ;
12049 int __cil_tmp108 ;
12050 unsigned long __cil_tmp109 ;
12051 unsigned long __cil_tmp110 ;
12052 unsigned char *__cil_tmp111 ;
12053 unsigned char *__cil_tmp112 ;
12054 unsigned char __cil_tmp113 ;
12055 int __cil_tmp114 ;
12056 unsigned long __cil_tmp115 ;
12057 unsigned long __cil_tmp116 ;
12058 unsigned char *__cil_tmp117 ;
12059 unsigned char *__cil_tmp118 ;
12060 unsigned char __cil_tmp119 ;
12061 int __cil_tmp120 ;
12062 unsigned long __cil_tmp121 ;
12063 unsigned long __cil_tmp122 ;
12064 unsigned long __cil_tmp123 ;
12065 void *__cil_tmp124 ;
12066 unsigned char *__cil_tmp125 ;
12067 unsigned int __cil_tmp126 ;
12068 unsigned long __cil_tmp127 ;
12069 unsigned long __cil_tmp128 ;
12070 u8 __cil_tmp129 ;
12071 int __cil_tmp130 ;
12072 unsigned long __cil_tmp131 ;
12073 unsigned long __cil_tmp132 ;
12074 unsigned long __cil_tmp133 ;
12075 unsigned long __cil_tmp134 ;
12076 u8 __cil_tmp135 ;
12077 int __cil_tmp136 ;
12078 unsigned long __cil_tmp137 ;
12079 unsigned long __cil_tmp138 ;
12080 unsigned long __cil_tmp139 ;
12081 unsigned long __cil_tmp140 ;
12082 u8 __cil_tmp141 ;
12083 int __cil_tmp142 ;
12084 unsigned long __cil_tmp143 ;
12085 unsigned long __cil_tmp144 ;
12086 unsigned long __cil_tmp145 ;
12087 unsigned long __cil_tmp146 ;
12088 unsigned long __cil_tmp147 ;
12089 unsigned long __cil_tmp148 ;
12090 int (*__cil_tmp149)(struct scsi_cmnd * , struct us_data * ) ;
12091 unsigned long __cil_tmp150 ;
12092 unsigned long __cil_tmp151 ;
12093 struct scsi_cmnd *__cil_tmp152 ;
12094 unsigned long __cil_tmp153 ;
12095 unsigned long __cil_tmp154 ;
12096 unsigned long *__cil_tmp155 ;
12097 unsigned long volatile *__cil_tmp156 ;
12098 unsigned long __cil_tmp157 ;
12099 unsigned long __cil_tmp158 ;
12100 unsigned long __cil_tmp159 ;
12101 unsigned long __cil_tmp160 ;
12102 unsigned long __cil_tmp161 ;
12103 unsigned long __cil_tmp162 ;
12104 unsigned long __cil_tmp163 ;
12105 unsigned long __cil_tmp164 ;
12106 unsigned long __cil_tmp165 ;
12107 unsigned long __cil_tmp166 ;
12108 unsigned long __cil_tmp167 ;
12109 unsigned long __cil_tmp168 ;
12110 unsigned long __cil_tmp169 ;
12111 unsigned long __cil_tmp170 ;
12112 unsigned long __cil_tmp171 ;
12113 unsigned long __cil_tmp172 ;
12114 unsigned long __cil_tmp173 ;
12115 unsigned long __cil_tmp174 ;
12116 unsigned long __cil_tmp175 ;
12117 unsigned long __cil_tmp176 ;
12118 unsigned long __cil_tmp177 ;
12119 unsigned long __cil_tmp178 ;
12120 unsigned long __cil_tmp179 ;
12121 unsigned long __cil_tmp180 ;
12122 unsigned long __cil_tmp181 ;
12123 unsigned long __cil_tmp182 ;
12124 unsigned long __cil_tmp183 ;
12125 unsigned long __cil_tmp184 ;
12126 unsigned long __cil_tmp185 ;
12127 unsigned long __cil_tmp186 ;
12128 unsigned char *__cil_tmp187 ;
12129 unsigned char *__cil_tmp188 ;
12130 unsigned char __cil_tmp189 ;
12131 int __cil_tmp190 ;
12132 unsigned long __cil_tmp191 ;
12133 unsigned long __cil_tmp192 ;
12134 unsigned long __cil_tmp193 ;
12135 unsigned long __cil_tmp194 ;
12136 unsigned long __cil_tmp195 ;
12137 unsigned long __cil_tmp196 ;
12138 unsigned long __cil_tmp197 ;
12139 unsigned long __cil_tmp198 ;
12140 unsigned long __cil_tmp199 ;
12141 unsigned long __cil_tmp200 ;
12142 unsigned char *__cil_tmp201 ;
12143 unsigned char *__cil_tmp202 ;
12144 unsigned char __cil_tmp203 ;
12145 int __cil_tmp204 ;
12146 int __cil_tmp205 ;
12147 unsigned long __cil_tmp206 ;
12148 unsigned long __cil_tmp207 ;
12149 unsigned long __cil_tmp208 ;
12150 unsigned long __cil_tmp209 ;
12151 unsigned long __cil_tmp210 ;
12152 unsigned long __cil_tmp211 ;
12153 unsigned long __cil_tmp212 ;
12154 unsigned char *__cil_tmp213 ;
12155 unsigned char *__cil_tmp214 ;
12156 unsigned char __cil_tmp215 ;
12157 int __cil_tmp216 ;
12158 int __cil_tmp217 ;
12159 unsigned long __cil_tmp218 ;
12160 unsigned long __cil_tmp219 ;
12161 unsigned char *__cil_tmp220 ;
12162 unsigned char *__cil_tmp221 ;
12163 unsigned long __cil_tmp222 ;
12164 unsigned long __cil_tmp223 ;
12165 unsigned char *__cil_tmp224 ;
12166 u8 *__cil_tmp225 ;
12167 struct scsi_sense_hdr *__cil_tmp226 ;
12168 u8 __cil_tmp227 ;
12169 int __cil_tmp228 ;
12170 unsigned long __cil_tmp229 ;
12171 u8 __cil_tmp230 ;
12172 int __cil_tmp231 ;
12173 unsigned long __cil_tmp232 ;
12174 u8 __cil_tmp233 ;
12175 int __cil_tmp234 ;
12176 unsigned long __cil_tmp235 ;
12177 u8 __cil_tmp236 ;
12178 int __cil_tmp237 ;
12179 unsigned long __cil_tmp238 ;
12180 u8 __cil_tmp239 ;
12181 unsigned long __cil_tmp240 ;
12182 u8 __cil_tmp241 ;
12183 unsigned long __cil_tmp242 ;
12184 u8 __cil_tmp243 ;
12185 unsigned long __cil_tmp244 ;
12186 unsigned long __cil_tmp245 ;
12187 unsigned long __cil_tmp246 ;
12188 unsigned long __cil_tmp247 ;
12189 unsigned char *__cil_tmp248 ;
12190 u8 *__cil_tmp249 ;
12191 u8 *__cil_tmp250 ;
12192 u8 __cil_tmp251 ;
12193 unsigned long __cil_tmp252 ;
12194 unsigned long __cil_tmp253 ;
12195 unsigned char *__cil_tmp254 ;
12196 unsigned char *__cil_tmp255 ;
12197 unsigned char __cil_tmp256 ;
12198 int __cil_tmp257 ;
12199 unsigned long __cil_tmp258 ;
12200 u8 __cil_tmp259 ;
12201 int __cil_tmp260 ;
12202 unsigned long __cil_tmp261 ;
12203 u8 __cil_tmp262 ;
12204 int __cil_tmp263 ;
12205 unsigned long __cil_tmp264 ;
12206 u8 __cil_tmp265 ;
12207 int __cil_tmp266 ;
12208 int __cil_tmp267 ;
12209 unsigned long __cil_tmp268 ;
12210 unsigned long __cil_tmp269 ;
12211 unsigned long __cil_tmp270 ;
12212 unsigned long __cil_tmp271 ;
12213 unsigned char *__cil_tmp272 ;
12214 unsigned char *__cil_tmp273 ;
12215 unsigned long __cil_tmp274 ;
12216 unsigned long __cil_tmp275 ;
12217 struct scsi_sense_hdr *__cil_tmp276 ;
12218 u8 __cil_tmp277 ;
12219 int __cil_tmp278 ;
12220 int __cil_tmp279 ;
12221 unsigned long __cil_tmp280 ;
12222 unsigned long __cil_tmp281 ;
12223 unsigned char *__cil_tmp282 ;
12224 unsigned char *__cil_tmp283 ;
12225 unsigned long __cil_tmp284 ;
12226 unsigned long __cil_tmp285 ;
12227 unsigned char *__cil_tmp286 ;
12228 unsigned char *__cil_tmp287 ;
12229 unsigned long __cil_tmp288 ;
12230 unsigned long __cil_tmp289 ;
12231 unsigned long __cil_tmp290 ;
12232 unsigned long __cil_tmp291 ;
12233 unsigned long __cil_tmp292 ;
12234 unsigned char *__cil_tmp293 ;
12235 unsigned char *__cil_tmp294 ;
12236 unsigned char __cil_tmp295 ;
12237 int __cil_tmp296 ;
12238 long __cil_tmp297 ;
12239 unsigned long __cil_tmp298 ;
12240 unsigned long __cil_tmp299 ;
12241 int __cil_tmp300 ;
12242 unsigned long __cil_tmp301 ;
12243 unsigned long __cil_tmp302 ;
12244 unsigned long *__cil_tmp303 ;
12245 unsigned long volatile *__cil_tmp304 ;
12246 unsigned long __cil_tmp305 ;
12247 unsigned long __cil_tmp306 ;
12248 unsigned long *__cil_tmp307 ;
12249 unsigned long volatile *__cil_tmp308 ;
12250 unsigned long __cil_tmp309 ;
12251 unsigned long __cil_tmp310 ;
12252 unsigned long *__cil_tmp311 ;
12253 unsigned long volatile *__cil_tmp312 ;
12254 unsigned long __cil_tmp313 ;
12255 unsigned long __cil_tmp314 ;
12256 unsigned long *__cil_tmp315 ;
12257 unsigned long volatile *__cil_tmp316 ;
12258 unsigned long __cil_tmp317 ;
12259 unsigned long __cil_tmp318 ;
12260 unsigned long *__cil_tmp319 ;
12261 unsigned long volatile *__cil_tmp320 ;
12262 unsigned long __cil_tmp321 ;
12263 unsigned long __cil_tmp322 ;
12264 unsigned long *__cil_tmp323 ;
12265 unsigned long volatile *__cil_tmp324 ;
12266 unsigned long __cil_tmp325 ;
12267 unsigned long __cil_tmp326 ;
12268 unsigned long __cil_tmp327 ;
12269 unsigned long __cil_tmp328 ;
12270 unsigned char *__cil_tmp329 ;
12271 unsigned char *__cil_tmp330 ;
12272 unsigned long __cil_tmp331 ;
12273 unsigned long __cil_tmp332 ;
12274 int __cil_tmp333 ;
12275 unsigned long __cil_tmp334 ;
12276 unsigned long __cil_tmp335 ;
12277 unsigned char *__cil_tmp336 ;
12278 unsigned char *__cil_tmp337 ;
12279 unsigned char __cil_tmp338 ;
12280 int __cil_tmp339 ;
12281 unsigned long __cil_tmp340 ;
12282 unsigned long __cil_tmp341 ;
12283 unsigned int __cil_tmp342 ;
12284 unsigned int __cil_tmp343 ;
12285 unsigned int __cil_tmp344 ;
12286 unsigned long __cil_tmp345 ;
12287 unsigned long __cil_tmp346 ;
12288 unsigned long __cil_tmp347 ;
12289 unsigned long __cil_tmp348 ;
12290 spinlock_t *__cil_tmp349 ;
12291 unsigned long __cil_tmp350 ;
12292 unsigned long __cil_tmp351 ;
12293 unsigned long *__cil_tmp352 ;
12294 unsigned long volatile *__cil_tmp353 ;
12295 unsigned long __cil_tmp354 ;
12296 unsigned long __cil_tmp355 ;
12297 unsigned long *__cil_tmp356 ;
12298 unsigned long volatile *__cil_tmp357 ;
12299 unsigned long __cil_tmp358 ;
12300 unsigned long __cil_tmp359 ;
12301 spinlock_t *__cil_tmp360 ;
12302 struct mutex *__cil_tmp361 ;
12303 struct mutex *__cil_tmp362 ;
12304 unsigned long __cil_tmp363 ;
12305 unsigned long __cil_tmp364 ;
12306 spinlock_t *__cil_tmp365 ;
12307 unsigned long __cil_tmp366 ;
12308 unsigned long __cil_tmp367 ;
12309 spinlock_t *__cil_tmp368 ;
12310 unsigned long __cil_tmp369 ;
12311 unsigned long __cil_tmp370 ;
12312 int (*__cil_tmp371)(struct us_data * ) ;
12313 unsigned long __cil_tmp372 ;
12314 unsigned long __cil_tmp373 ;
12315 unsigned long *__cil_tmp374 ;
12316 unsigned long volatile *__cil_tmp375 ;
12317
12318 {
12319 {
12320#line 605
12321 scsi_set_resid(srb, 0);
12322#line 606
12323 __cil_tmp31 = (unsigned long )us;
12324#line 606
12325 __cil_tmp32 = __cil_tmp31 + 168;
12326#line 606
12327 __cil_tmp33 = *((int (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp32);
12328#line 606
12329 result = (*__cil_tmp33)(srb, us);
12330#line 611
12331 __cil_tmp34 = (unsigned long )us;
12332#line 611
12333 __cil_tmp35 = __cil_tmp34 + 104;
12334#line 611
12335 __cil_tmp36 = (unsigned long *)__cil_tmp35;
12336#line 611
12337 __cil_tmp37 = (unsigned long volatile *)__cil_tmp36;
12338#line 611
12339 tmp___7 = ant_test_bit(5U, __cil_tmp37);
12340 }
12341#line 611
12342 if (tmp___7) {
12343 {
12344#line 612
12345 printk("<7>usb-storage: -- command was aborted\n");
12346#line 613
12347 __cil_tmp38 = (unsigned long )srb;
12348#line 613
12349 __cil_tmp39 = __cil_tmp38 + 224;
12350#line 613
12351 *((int *)__cil_tmp39) = 5 << 16;
12352 }
12353#line 614
12354 goto Handle_Errors;
12355 } else {
12356
12357 }
12358#line 618
12359 if (result == 3) {
12360 {
12361#line 619
12362 printk("<7>usb-storage: -- transport indicates error, resetting\n");
12363#line 620
12364 __cil_tmp40 = (unsigned long )srb;
12365#line 620
12366 __cil_tmp41 = __cil_tmp40 + 224;
12367#line 620
12368 *((int *)__cil_tmp41) = 7 << 16;
12369 }
12370#line 621
12371 goto Handle_Errors;
12372 } else {
12373
12374 }
12375#line 625
12376 if (result == 2) {
12377 {
12378#line 626
12379 __cil_tmp42 = (unsigned long )srb;
12380#line 626
12381 __cil_tmp43 = __cil_tmp42 + 224;
12382#line 626
12383 *((int *)__cil_tmp43) = 2;
12384#line 627
12385 last_sector_hacks(us, srb);
12386 }
12387#line 628
12388 return;
12389 } else {
12390
12391 }
12392#line 631
12393 __cil_tmp44 = (unsigned long )srb;
12394#line 631
12395 __cil_tmp45 = __cil_tmp44 + 224;
12396#line 631
12397 *((int *)__cil_tmp45) = 0;
12398#line 638
12399 need_auto_sense = 0;
12400 {
12401#line 646
12402 __cil_tmp46 = (unsigned long )us;
12403#line 646
12404 __cil_tmp47 = __cil_tmp46 + 157;
12405#line 646
12406 __cil_tmp48 = *((u8 *)__cil_tmp47);
12407#line 646
12408 __cil_tmp49 = (int )__cil_tmp48;
12409#line 646
12410 if (__cil_tmp49 == 1) {
12411#line 646
12412 goto _L;
12413 } else {
12414 {
12415#line 646
12416 __cil_tmp50 = (unsigned long )us;
12417#line 646
12418 __cil_tmp51 = __cil_tmp50 + 157;
12419#line 646
12420 __cil_tmp52 = *((u8 *)__cil_tmp51);
12421#line 646
12422 __cil_tmp53 = (int )__cil_tmp52;
12423#line 646
12424 if (__cil_tmp53 == 240) {
12425 _L:
12426 {
12427#line 646
12428 __cil_tmp54 = (unsigned long )srb;
12429#line 646
12430 __cil_tmp55 = __cil_tmp54 + 76;
12431#line 646
12432 __cil_tmp56 = *((enum dma_data_direction *)__cil_tmp55);
12433#line 646
12434 __cil_tmp57 = (unsigned int )__cil_tmp56;
12435#line 646
12436 if (__cil_tmp57 != 2U) {
12437 {
12438#line 648
12439 printk("<7>usb-storage: -- CB transport device requiring auto-sense\n");
12440#line 649
12441 need_auto_sense = 1;
12442 }
12443 } else {
12444
12445 }
12446 }
12447 } else {
12448
12449 }
12450 }
12451 }
12452 }
12453#line 657
12454 if (result == 1) {
12455 {
12456#line 658
12457 printk("<7>usb-storage: -- transport indicates command failure\n");
12458#line 659
12459 need_auto_sense = 1;
12460 }
12461 } else {
12462
12463 }
12464 {
12465#line 668
12466 __cil_tmp58 = (unsigned long )srb;
12467#line 668
12468 __cil_tmp59 = __cil_tmp58 + 80;
12469#line 668
12470 __cil_tmp60 = *((unsigned char **)__cil_tmp59);
12471#line 668
12472 __cil_tmp61 = __cil_tmp60 + 0;
12473#line 668
12474 __cil_tmp62 = *__cil_tmp61;
12475#line 668
12476 __cil_tmp63 = (int )__cil_tmp62;
12477#line 668
12478 if (__cil_tmp63 == 133) {
12479#line 668
12480 goto _L___0;
12481 } else {
12482 {
12483#line 668
12484 __cil_tmp64 = (unsigned long )srb;
12485#line 668
12486 __cil_tmp65 = __cil_tmp64 + 80;
12487#line 668
12488 __cil_tmp66 = *((unsigned char **)__cil_tmp65);
12489#line 668
12490 __cil_tmp67 = __cil_tmp66 + 0;
12491#line 668
12492 __cil_tmp68 = *__cil_tmp67;
12493#line 668
12494 __cil_tmp69 = (int )__cil_tmp68;
12495#line 668
12496 if (__cil_tmp69 == 161) {
12497 _L___0:
12498#line 668
12499 if (result == 0) {
12500 {
12501#line 668
12502 __cil_tmp70 = (unsigned long )us;
12503#line 668
12504 __cil_tmp71 = __cil_tmp70 + 96;
12505#line 668
12506 __cil_tmp72 = *((unsigned long *)__cil_tmp71);
12507#line 668
12508 __cil_tmp73 = __cil_tmp72 & 32768UL;
12509#line 668
12510 if (! __cil_tmp73) {
12511 {
12512#line 668
12513 __cil_tmp74 = (unsigned long )us;
12514#line 668
12515 __cil_tmp75 = __cil_tmp74 + 96;
12516#line 668
12517 __cil_tmp76 = *((unsigned long *)__cil_tmp75);
12518#line 668
12519 __cil_tmp77 = __cil_tmp76 & 131072UL;
12520#line 668
12521 if (! __cil_tmp77) {
12522 {
12523#line 668
12524 __cil_tmp78 = (unsigned long )srb;
12525#line 668
12526 __cil_tmp79 = __cil_tmp78 + 80;
12527#line 668
12528 __cil_tmp80 = *((unsigned char **)__cil_tmp79);
12529#line 668
12530 __cil_tmp81 = __cil_tmp80 + 2;
12531#line 668
12532 __cil_tmp82 = *__cil_tmp81;
12533#line 668
12534 __cil_tmp83 = (int )__cil_tmp82;
12535#line 668
12536 __cil_tmp84 = __cil_tmp83 & 32;
12537#line 668
12538 if (! __cil_tmp84) {
12539#line 668
12540 tmp___9 = 1;
12541 } else {
12542#line 668
12543 tmp___9 = 0;
12544 }
12545 }
12546 } else {
12547#line 668
12548 tmp___9 = 0;
12549 }
12550 }
12551 } else {
12552#line 668
12553 tmp___9 = 0;
12554 }
12555 }
12556 } else {
12557#line 668
12558 tmp___9 = 0;
12559 }
12560 } else {
12561#line 668
12562 tmp___9 = 0;
12563 }
12564 }
12565 }
12566 }
12567 {
12568#line 668
12569 __cil_tmp85 = (long )tmp___9;
12570#line 668
12571 tmp___10 = __builtin_expect(__cil_tmp85, 0L);
12572 }
12573#line 668
12574 if (tmp___10) {
12575 {
12576#line 673
12577 printk("<7>usb-storage: -- SAT supported, increasing auto-sense\n");
12578#line 674
12579 __cil_tmp86 = (unsigned long )us;
12580#line 674
12581 __cil_tmp87 = __cil_tmp86 + 96;
12582#line 674
12583 __cil_tmp88 = (unsigned long )us;
12584#line 674
12585 __cil_tmp89 = __cil_tmp88 + 96;
12586#line 674
12587 __cil_tmp90 = *((unsigned long *)__cil_tmp89);
12588#line 674
12589 *((unsigned long *)__cil_tmp87) = __cil_tmp90 | 32768UL;
12590 }
12591 } else {
12592
12593 }
12594 {
12595#line 681
12596 tmp___11 = scsi_get_resid(srb);
12597 }
12598#line 681
12599 if (tmp___11 > 0) {
12600 {
12601#line 681
12602 __cil_tmp91 = (unsigned long )srb;
12603#line 681
12604 __cil_tmp92 = __cil_tmp91 + 80;
12605#line 681
12606 __cil_tmp93 = *((unsigned char **)__cil_tmp92);
12607#line 681
12608 __cil_tmp94 = __cil_tmp93 + 0;
12609#line 681
12610 __cil_tmp95 = *__cil_tmp94;
12611#line 681
12612 __cil_tmp96 = (int )__cil_tmp95;
12613#line 681
12614 if (__cil_tmp96 == 3) {
12615
12616 } else {
12617 {
12618#line 681
12619 __cil_tmp97 = (unsigned long )srb;
12620#line 681
12621 __cil_tmp98 = __cil_tmp97 + 80;
12622#line 681
12623 __cil_tmp99 = *((unsigned char **)__cil_tmp98);
12624#line 681
12625 __cil_tmp100 = __cil_tmp99 + 0;
12626#line 681
12627 __cil_tmp101 = *__cil_tmp100;
12628#line 681
12629 __cil_tmp102 = (int )__cil_tmp101;
12630#line 681
12631 if (__cil_tmp102 == 18) {
12632
12633 } else {
12634 {
12635#line 681
12636 __cil_tmp103 = (unsigned long )srb;
12637#line 681
12638 __cil_tmp104 = __cil_tmp103 + 80;
12639#line 681
12640 __cil_tmp105 = *((unsigned char **)__cil_tmp104);
12641#line 681
12642 __cil_tmp106 = __cil_tmp105 + 0;
12643#line 681
12644 __cil_tmp107 = *__cil_tmp106;
12645#line 681
12646 __cil_tmp108 = (int )__cil_tmp107;
12647#line 681
12648 if (__cil_tmp108 == 26) {
12649
12650 } else {
12651 {
12652#line 681
12653 __cil_tmp109 = (unsigned long )srb;
12654#line 681
12655 __cil_tmp110 = __cil_tmp109 + 80;
12656#line 681
12657 __cil_tmp111 = *((unsigned char **)__cil_tmp110);
12658#line 681
12659 __cil_tmp112 = __cil_tmp111 + 0;
12660#line 681
12661 __cil_tmp113 = *__cil_tmp112;
12662#line 681
12663 __cil_tmp114 = (int )__cil_tmp113;
12664#line 681
12665 if (__cil_tmp114 == 77) {
12666
12667 } else {
12668 {
12669#line 681
12670 __cil_tmp115 = (unsigned long )srb;
12671#line 681
12672 __cil_tmp116 = __cil_tmp115 + 80;
12673#line 681
12674 __cil_tmp117 = *((unsigned char **)__cil_tmp116);
12675#line 681
12676 __cil_tmp118 = __cil_tmp117 + 0;
12677#line 681
12678 __cil_tmp119 = *__cil_tmp118;
12679#line 681
12680 __cil_tmp120 = (int )__cil_tmp119;
12681#line 681
12682 if (__cil_tmp120 == 90) {
12683
12684 } else {
12685 {
12686#line 687
12687 printk("<7>usb-storage: -- unexpectedly short transfer\n");
12688 }
12689 }
12690 }
12691 }
12692 }
12693 }
12694 }
12695 }
12696 }
12697 }
12698 }
12699 } else {
12700
12701 }
12702#line 691
12703 if (need_auto_sense) {
12704#line 694
12705 sense_size = 18;
12706 {
12707#line 700
12708 __cil_tmp121 = (unsigned long )us;
12709#line 700
12710 __cil_tmp122 = __cil_tmp121 + 96;
12711#line 700
12712 __cil_tmp123 = *((unsigned long *)__cil_tmp122);
12713#line 700
12714 if (__cil_tmp123 & 32768UL) {
12715#line 701
12716 sense_size = ~ 0;
12717 } else {
12718
12719 }
12720 }
12721 Retry_Sense:
12722 {
12723#line 703
12724 printk("<7>usb-storage: Issuing auto-REQUEST_SENSE\n");
12725#line 705
12726 __cil_tmp124 = (void *)0;
12727#line 705
12728 __cil_tmp125 = (unsigned char *)__cil_tmp124;
12729#line 705
12730 __cil_tmp126 = (unsigned int )sense_size;
12731#line 705
12732 scsi_eh_prep_cmnd(srb, & ses, __cil_tmp125, 0, __cil_tmp126);
12733 }
12734 {
12735#line 708
12736 __cil_tmp127 = (unsigned long )us;
12737#line 708
12738 __cil_tmp128 = __cil_tmp127 + 156;
12739#line 708
12740 __cil_tmp129 = *((u8 *)__cil_tmp128);
12741#line 708
12742 __cil_tmp130 = (int )__cil_tmp129;
12743#line 708
12744 if (__cil_tmp130 == 1) {
12745#line 710
12746 __cil_tmp131 = (unsigned long )srb;
12747#line 710
12748 __cil_tmp132 = __cil_tmp131 + 74;
12749#line 710
12750 *((unsigned short *)__cil_tmp132) = (unsigned short)6;
12751 } else {
12752 {
12753#line 708
12754 __cil_tmp133 = (unsigned long )us;
12755#line 708
12756 __cil_tmp134 = __cil_tmp133 + 156;
12757#line 708
12758 __cil_tmp135 = *((u8 *)__cil_tmp134);
12759#line 708
12760 __cil_tmp136 = (int )__cil_tmp135;
12761#line 708
12762 if (__cil_tmp136 == 6) {
12763#line 710
12764 __cil_tmp137 = (unsigned long )srb;
12765#line 710
12766 __cil_tmp138 = __cil_tmp137 + 74;
12767#line 710
12768 *((unsigned short *)__cil_tmp138) = (unsigned short)6;
12769 } else {
12770 {
12771#line 708
12772 __cil_tmp139 = (unsigned long )us;
12773#line 708
12774 __cil_tmp140 = __cil_tmp139 + 156;
12775#line 708
12776 __cil_tmp141 = *((u8 *)__cil_tmp140);
12777#line 708
12778 __cil_tmp142 = (int )__cil_tmp141;
12779#line 708
12780 if (__cil_tmp142 == 241) {
12781#line 710
12782 __cil_tmp143 = (unsigned long )srb;
12783#line 710
12784 __cil_tmp144 = __cil_tmp143 + 74;
12785#line 710
12786 *((unsigned short *)__cil_tmp144) = (unsigned short)6;
12787 } else {
12788#line 712
12789 __cil_tmp145 = (unsigned long )srb;
12790#line 712
12791 __cil_tmp146 = __cil_tmp145 + 74;
12792#line 712
12793 *((unsigned short *)__cil_tmp146) = (unsigned short)12;
12794 }
12795 }
12796 }
12797 }
12798 }
12799 }
12800 {
12801#line 715
12802 scsi_set_resid(srb, 0);
12803#line 716
12804 __cil_tmp147 = (unsigned long )us;
12805#line 716
12806 __cil_tmp148 = __cil_tmp147 + 168;
12807#line 716
12808 __cil_tmp149 = *((int (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp148);
12809#line 716
12810 __cil_tmp150 = (unsigned long )us;
12811#line 716
12812 __cil_tmp151 = __cil_tmp150 + 192;
12813#line 716
12814 __cil_tmp152 = *((struct scsi_cmnd **)__cil_tmp151);
12815#line 716
12816 temp_result = (*__cil_tmp149)(__cil_tmp152, us);
12817#line 719
12818 scsi_eh_restore_cmnd(srb, & ses);
12819#line 721
12820 __cil_tmp153 = (unsigned long )us;
12821#line 721
12822 __cil_tmp154 = __cil_tmp153 + 104;
12823#line 721
12824 __cil_tmp155 = (unsigned long *)__cil_tmp154;
12825#line 721
12826 __cil_tmp156 = (unsigned long volatile *)__cil_tmp155;
12827#line 721
12828 tmp___12 = ant_test_bit(5U, __cil_tmp156);
12829 }
12830#line 721
12831 if (tmp___12) {
12832 {
12833#line 722
12834 printk("<7>usb-storage: -- auto-sense aborted\n");
12835#line 723
12836 __cil_tmp157 = (unsigned long )srb;
12837#line 723
12838 __cil_tmp158 = __cil_tmp157 + 224;
12839#line 723
12840 *((int *)__cil_tmp158) = 5 << 16;
12841 }
12842#line 726
12843 if (sense_size != 18) {
12844#line 727
12845 __cil_tmp159 = (unsigned long )us;
12846#line 727
12847 __cil_tmp160 = __cil_tmp159 + 96;
12848#line 727
12849 __cil_tmp161 = (unsigned long )us;
12850#line 727
12851 __cil_tmp162 = __cil_tmp161 + 96;
12852#line 727
12853 __cil_tmp163 = *((unsigned long *)__cil_tmp162);
12854#line 727
12855 *((unsigned long *)__cil_tmp160) = __cil_tmp163 & 0xffffffffffff7fffUL;
12856#line 728
12857 __cil_tmp164 = (unsigned long )us;
12858#line 728
12859 __cil_tmp165 = __cil_tmp164 + 96;
12860#line 728
12861 __cil_tmp166 = (unsigned long )us;
12862#line 728
12863 __cil_tmp167 = __cil_tmp166 + 96;
12864#line 728
12865 __cil_tmp168 = *((unsigned long *)__cil_tmp167);
12866#line 728
12867 *((unsigned long *)__cil_tmp165) = __cil_tmp168 | 131072UL;
12868 } else {
12869
12870 }
12871#line 730
12872 goto Handle_Errors;
12873 } else {
12874
12875 }
12876#line 738
12877 if (temp_result == 1) {
12878#line 738
12879 if (sense_size != 18) {
12880 {
12881#line 740
12882 printk("<7>usb-storage: -- auto-sense failure, retry small sense\n");
12883#line 741
12884 sense_size = 18;
12885#line 742
12886 __cil_tmp169 = (unsigned long )us;
12887#line 742
12888 __cil_tmp170 = __cil_tmp169 + 96;
12889#line 742
12890 __cil_tmp171 = (unsigned long )us;
12891#line 742
12892 __cil_tmp172 = __cil_tmp171 + 96;
12893#line 742
12894 __cil_tmp173 = *((unsigned long *)__cil_tmp172);
12895#line 742
12896 *((unsigned long *)__cil_tmp170) = __cil_tmp173 & 0xffffffffffff7fffUL;
12897#line 743
12898 __cil_tmp174 = (unsigned long )us;
12899#line 743
12900 __cil_tmp175 = __cil_tmp174 + 96;
12901#line 743
12902 __cil_tmp176 = (unsigned long )us;
12903#line 743
12904 __cil_tmp177 = __cil_tmp176 + 96;
12905#line 743
12906 __cil_tmp178 = *((unsigned long *)__cil_tmp177);
12907#line 743
12908 *((unsigned long *)__cil_tmp175) = __cil_tmp178 | 131072UL;
12909 }
12910#line 744
12911 goto Retry_Sense;
12912 } else {
12913
12914 }
12915 } else {
12916
12917 }
12918#line 748
12919 if (temp_result != 0) {
12920 {
12921#line 749
12922 printk("<7>usb-storage: -- auto-sense failure\n");
12923#line 755
12924 __cil_tmp179 = (unsigned long )srb;
12925#line 755
12926 __cil_tmp180 = __cil_tmp179 + 224;
12927#line 755
12928 *((int *)__cil_tmp180) = 7 << 16;
12929 }
12930 {
12931#line 756
12932 __cil_tmp181 = (unsigned long )us;
12933#line 756
12934 __cil_tmp182 = __cil_tmp181 + 96;
12935#line 756
12936 __cil_tmp183 = *((unsigned long *)__cil_tmp182);
12937#line 756
12938 __cil_tmp184 = __cil_tmp183 & 4UL;
12939#line 756
12940 if (! __cil_tmp184) {
12941#line 757
12942 goto Handle_Errors;
12943 } else {
12944
12945 }
12946 }
12947#line 758
12948 return;
12949 } else {
12950
12951 }
12952 {
12953#line 765
12954 __cil_tmp185 = (unsigned long )srb;
12955#line 765
12956 __cil_tmp186 = __cil_tmp185 + 136;
12957#line 765
12958 __cil_tmp187 = *((unsigned char **)__cil_tmp186);
12959#line 765
12960 __cil_tmp188 = __cil_tmp187 + 7;
12961#line 765
12962 __cil_tmp189 = *__cil_tmp188;
12963#line 765
12964 __cil_tmp190 = (int )__cil_tmp189;
12965#line 765
12966 if (__cil_tmp190 > 10) {
12967 {
12968#line 765
12969 __cil_tmp191 = (unsigned long )us;
12970#line 765
12971 __cil_tmp192 = __cil_tmp191 + 96;
12972#line 765
12973 __cil_tmp193 = *((unsigned long *)__cil_tmp192);
12974#line 765
12975 __cil_tmp194 = __cil_tmp193 & 32768UL;
12976#line 765
12977 if (! __cil_tmp194) {
12978 {
12979#line 765
12980 __cil_tmp195 = (unsigned long )us;
12981#line 765
12982 __cil_tmp196 = __cil_tmp195 + 96;
12983#line 765
12984 __cil_tmp197 = *((unsigned long *)__cil_tmp196);
12985#line 765
12986 __cil_tmp198 = __cil_tmp197 & 131072UL;
12987#line 765
12988 if (! __cil_tmp198) {
12989 {
12990#line 765
12991 __cil_tmp199 = (unsigned long )srb;
12992#line 765
12993 __cil_tmp200 = __cil_tmp199 + 136;
12994#line 765
12995 __cil_tmp201 = *((unsigned char **)__cil_tmp200);
12996#line 765
12997 __cil_tmp202 = __cil_tmp201 + 0;
12998#line 765
12999 __cil_tmp203 = *__cil_tmp202;
13000#line 765
13001 __cil_tmp204 = (int )__cil_tmp203;
13002#line 765
13003 __cil_tmp205 = __cil_tmp204 & 124;
13004#line 765
13005 if (__cil_tmp205 == 112) {
13006 {
13007#line 769
13008 printk("<7>usb-storage: -- SANE_SENSE support enabled\n");
13009#line 770
13010 __cil_tmp206 = (unsigned long )us;
13011#line 770
13012 __cil_tmp207 = __cil_tmp206 + 96;
13013#line 770
13014 __cil_tmp208 = (unsigned long )us;
13015#line 770
13016 __cil_tmp209 = __cil_tmp208 + 96;
13017#line 770
13018 __cil_tmp210 = *((unsigned long *)__cil_tmp209);
13019#line 770
13020 *((unsigned long *)__cil_tmp207) = __cil_tmp210 | 32768UL;
13021#line 775
13022 __cil_tmp211 = (unsigned long )srb;
13023#line 775
13024 __cil_tmp212 = __cil_tmp211 + 136;
13025#line 775
13026 __cil_tmp213 = *((unsigned char **)__cil_tmp212);
13027#line 775
13028 __cil_tmp214 = __cil_tmp213 + 7;
13029#line 775
13030 __cil_tmp215 = *__cil_tmp214;
13031#line 775
13032 __cil_tmp216 = (int )__cil_tmp215;
13033#line 775
13034 __cil_tmp217 = __cil_tmp216 + 8;
13035#line 775
13036 printk("<7>usb-storage: -- Sense data truncated to %i from %i\n", 18,
13037 __cil_tmp217);
13038#line 778
13039 __cil_tmp218 = (unsigned long )srb;
13040#line 778
13041 __cil_tmp219 = __cil_tmp218 + 136;
13042#line 778
13043 __cil_tmp220 = *((unsigned char **)__cil_tmp219);
13044#line 778
13045 __cil_tmp221 = __cil_tmp220 + 7;
13046#line 778
13047 *__cil_tmp221 = (unsigned char)10;
13048 }
13049 } else {
13050
13051 }
13052 }
13053 } else {
13054
13055 }
13056 }
13057 } else {
13058
13059 }
13060 }
13061 } else {
13062
13063 }
13064 }
13065 {
13066#line 781
13067 __cil_tmp222 = (unsigned long )srb;
13068#line 781
13069 __cil_tmp223 = __cil_tmp222 + 136;
13070#line 781
13071 __cil_tmp224 = *((unsigned char **)__cil_tmp223);
13072#line 781
13073 __cil_tmp225 = (u8 *)__cil_tmp224;
13074#line 781
13075 scsi_normalize_sense(__cil_tmp225, 96, & sshdr);
13076#line 784
13077 printk("<7>usb-storage: -- Result from auto-sense is %d\n", temp_result);
13078#line 785
13079 __cil_tmp226 = & sshdr;
13080#line 785
13081 __cil_tmp227 = *((u8 *)__cil_tmp226);
13082#line 785
13083 __cil_tmp228 = (int )__cil_tmp227;
13084#line 785
13085 __cil_tmp229 = (unsigned long )(& sshdr) + 1;
13086#line 785
13087 __cil_tmp230 = *((u8 *)__cil_tmp229);
13088#line 785
13089 __cil_tmp231 = (int )__cil_tmp230;
13090#line 785
13091 __cil_tmp232 = (unsigned long )(& sshdr) + 2;
13092#line 785
13093 __cil_tmp233 = *((u8 *)__cil_tmp232);
13094#line 785
13095 __cil_tmp234 = (int )__cil_tmp233;
13096#line 785
13097 __cil_tmp235 = (unsigned long )(& sshdr) + 3;
13098#line 785
13099 __cil_tmp236 = *((u8 *)__cil_tmp235);
13100#line 785
13101 __cil_tmp237 = (int )__cil_tmp236;
13102#line 785
13103 printk("<7>usb-storage: -- code: 0x%x, key: 0x%x, ASC: 0x%x, ASCQ: 0x%x\n", __cil_tmp228,
13104 __cil_tmp231, __cil_tmp234, __cil_tmp237);
13105#line 789
13106 __cil_tmp238 = (unsigned long )(& sshdr) + 1;
13107#line 789
13108 __cil_tmp239 = *((u8 *)__cil_tmp238);
13109#line 789
13110 __cil_tmp240 = (unsigned long )(& sshdr) + 2;
13111#line 789
13112 __cil_tmp241 = *((u8 *)__cil_tmp240);
13113#line 789
13114 __cil_tmp242 = (unsigned long )(& sshdr) + 3;
13115#line 789
13116 __cil_tmp243 = *((u8 *)__cil_tmp242);
13117#line 789
13118 usb_stor_show_sense(__cil_tmp239, __cil_tmp241, __cil_tmp243);
13119#line 793
13120 __cil_tmp244 = (unsigned long )srb;
13121#line 793
13122 __cil_tmp245 = __cil_tmp244 + 224;
13123#line 793
13124 *((int *)__cil_tmp245) = 2;
13125#line 795
13126 __cil_tmp246 = (unsigned long )srb;
13127#line 795
13128 __cil_tmp247 = __cil_tmp246 + 136;
13129#line 795
13130 __cil_tmp248 = *((unsigned char **)__cil_tmp247);
13131#line 795
13132 __cil_tmp249 = (u8 *)__cil_tmp248;
13133#line 795
13134 scdd = scsi_sense_desc_find(__cil_tmp249, 96, 4);
13135 }
13136#line 797
13137 if (scdd) {
13138#line 797
13139 __cil_tmp250 = scdd + 3;
13140#line 797
13141 __cil_tmp251 = *__cil_tmp250;
13142#line 797
13143 tmp___14 = (int )__cil_tmp251;
13144 } else {
13145#line 797
13146 __cil_tmp252 = (unsigned long )srb;
13147#line 797
13148 __cil_tmp253 = __cil_tmp252 + 136;
13149#line 797
13150 __cil_tmp254 = *((unsigned char **)__cil_tmp253);
13151#line 797
13152 __cil_tmp255 = __cil_tmp254 + 2;
13153#line 797
13154 __cil_tmp256 = *__cil_tmp255;
13155#line 797
13156 tmp___14 = (int )__cil_tmp256;
13157 }
13158#line 797
13159 __cil_tmp257 = tmp___14 & 160;
13160#line 797
13161 fm_ili = (u8 )__cil_tmp257;
13162 {
13163#line 803
13164 __cil_tmp258 = (unsigned long )(& sshdr) + 1;
13165#line 803
13166 __cil_tmp259 = *((u8 *)__cil_tmp258);
13167#line 803
13168 __cil_tmp260 = (int )__cil_tmp259;
13169#line 803
13170 if (__cil_tmp260 == 0) {
13171 {
13172#line 803
13173 __cil_tmp261 = (unsigned long )(& sshdr) + 2;
13174#line 803
13175 __cil_tmp262 = *((u8 *)__cil_tmp261);
13176#line 803
13177 __cil_tmp263 = (int )__cil_tmp262;
13178#line 803
13179 if (__cil_tmp263 == 0) {
13180 {
13181#line 803
13182 __cil_tmp264 = (unsigned long )(& sshdr) + 3;
13183#line 803
13184 __cil_tmp265 = *((u8 *)__cil_tmp264);
13185#line 803
13186 __cil_tmp266 = (int )__cil_tmp265;
13187#line 803
13188 if (__cil_tmp266 == 0) {
13189 {
13190#line 803
13191 __cil_tmp267 = (int )fm_ili;
13192#line 803
13193 if (__cil_tmp267 == 0) {
13194#line 809
13195 if (result == 0) {
13196#line 810
13197 __cil_tmp268 = (unsigned long )srb;
13198#line 810
13199 __cil_tmp269 = __cil_tmp268 + 224;
13200#line 810
13201 *((int *)__cil_tmp269) = 0;
13202#line 811
13203 __cil_tmp270 = (unsigned long )srb;
13204#line 811
13205 __cil_tmp271 = __cil_tmp270 + 136;
13206#line 811
13207 __cil_tmp272 = *((unsigned char **)__cil_tmp271);
13208#line 811
13209 __cil_tmp273 = __cil_tmp272 + 0;
13210#line 811
13211 *__cil_tmp273 = (unsigned char)0;
13212 } else {
13213#line 818
13214 __cil_tmp274 = (unsigned long )srb;
13215#line 818
13216 __cil_tmp275 = __cil_tmp274 + 224;
13217#line 818
13218 *((int *)__cil_tmp275) = 7 << 16;
13219 {
13220#line 819
13221 __cil_tmp276 = & sshdr;
13222#line 819
13223 __cil_tmp277 = *((u8 *)__cil_tmp276);
13224#line 819
13225 __cil_tmp278 = (int )__cil_tmp277;
13226#line 819
13227 __cil_tmp279 = __cil_tmp278 & 114;
13228#line 819
13229 if (__cil_tmp279 == 114) {
13230#line 820
13231 __cil_tmp280 = (unsigned long )srb;
13232#line 820
13233 __cil_tmp281 = __cil_tmp280 + 136;
13234#line 820
13235 __cil_tmp282 = *((unsigned char **)__cil_tmp281);
13236#line 820
13237 __cil_tmp283 = __cil_tmp282 + 1;
13238#line 820
13239 *__cil_tmp283 = (unsigned char)4;
13240 } else {
13241#line 822
13242 __cil_tmp284 = (unsigned long )srb;
13243#line 822
13244 __cil_tmp285 = __cil_tmp284 + 136;
13245#line 822
13246 __cil_tmp286 = *((unsigned char **)__cil_tmp285);
13247#line 822
13248 __cil_tmp287 = __cil_tmp286 + 2;
13249#line 822
13250 *__cil_tmp287 = (unsigned char)4;
13251 }
13252 }
13253 }
13254 } else {
13255
13256 }
13257 }
13258 } else {
13259
13260 }
13261 }
13262 } else {
13263
13264 }
13265 }
13266 } else {
13267
13268 }
13269 }
13270 } else {
13271
13272 }
13273 {
13274#line 835
13275 __cil_tmp288 = (unsigned long )us;
13276#line 835
13277 __cil_tmp289 = __cil_tmp288 + 96;
13278#line 835
13279 __cil_tmp290 = *((unsigned long *)__cil_tmp289);
13280#line 835
13281 if (__cil_tmp290 & 1048576UL) {
13282 {
13283#line 835
13284 __cil_tmp291 = (unsigned long )srb;
13285#line 835
13286 __cil_tmp292 = __cil_tmp291 + 80;
13287#line 835
13288 __cil_tmp293 = *((unsigned char **)__cil_tmp292);
13289#line 835
13290 __cil_tmp294 = __cil_tmp293 + 0;
13291#line 835
13292 __cil_tmp295 = *__cil_tmp294;
13293#line 835
13294 __cil_tmp296 = (int )__cil_tmp295;
13295#line 835
13296 if (__cil_tmp296 == 40) {
13297#line 835
13298 tmp___19 = 1;
13299 } else {
13300#line 835
13301 tmp___19 = 0;
13302 }
13303 }
13304 } else {
13305#line 835
13306 tmp___19 = 0;
13307 }
13308 }
13309 {
13310#line 835
13311 __cil_tmp297 = (long )tmp___19;
13312#line 835
13313 tmp___20 = __builtin_expect(__cil_tmp297, 0L);
13314 }
13315#line 835
13316 if (tmp___20) {
13317 {
13318#line 837
13319 __cil_tmp298 = (unsigned long )srb;
13320#line 837
13321 __cil_tmp299 = __cil_tmp298 + 224;
13322#line 837
13323 __cil_tmp300 = *((int *)__cil_tmp299);
13324#line 837
13325 if (__cil_tmp300 == 0) {
13326 {
13327#line 838
13328 __cil_tmp301 = (unsigned long )us;
13329#line 838
13330 __cil_tmp302 = __cil_tmp301 + 104;
13331#line 838
13332 __cil_tmp303 = (unsigned long *)__cil_tmp302;
13333#line 838
13334 __cil_tmp304 = (unsigned long volatile *)__cil_tmp303;
13335#line 838
13336 set_bit(8U, __cil_tmp304);
13337 }
13338 } else {
13339 {
13340#line 839
13341 __cil_tmp305 = (unsigned long )us;
13342#line 839
13343 __cil_tmp306 = __cil_tmp305 + 104;
13344#line 839
13345 __cil_tmp307 = (unsigned long *)__cil_tmp306;
13346#line 839
13347 __cil_tmp308 = (unsigned long volatile *)__cil_tmp307;
13348#line 839
13349 tmp___15 = ant_test_bit(8U, __cil_tmp308);
13350 }
13351#line 839
13352 if (tmp___15) {
13353 {
13354#line 840
13355 __cil_tmp309 = (unsigned long )us;
13356#line 840
13357 __cil_tmp310 = __cil_tmp309 + 104;
13358#line 840
13359 __cil_tmp311 = (unsigned long *)__cil_tmp310;
13360#line 840
13361 __cil_tmp312 = (unsigned long volatile *)__cil_tmp311;
13362#line 840
13363 clear_bit(8, __cil_tmp312);
13364#line 841
13365 __cil_tmp313 = (unsigned long )us;
13366#line 841
13367 __cil_tmp314 = __cil_tmp313 + 104;
13368#line 841
13369 __cil_tmp315 = (unsigned long *)__cil_tmp314;
13370#line 841
13371 __cil_tmp316 = (unsigned long volatile *)__cil_tmp315;
13372#line 841
13373 set_bit(7U, __cil_tmp316);
13374 }
13375 } else {
13376
13377 }
13378 }
13379 }
13380 {
13381#line 849
13382 __cil_tmp317 = (unsigned long )us;
13383#line 849
13384 __cil_tmp318 = __cil_tmp317 + 104;
13385#line 849
13386 __cil_tmp319 = (unsigned long *)__cil_tmp318;
13387#line 849
13388 __cil_tmp320 = (unsigned long volatile *)__cil_tmp319;
13389#line 849
13390 tmp___17 = ant_test_bit(7U, __cil_tmp320);
13391 }
13392#line 849
13393 if (tmp___17) {
13394 {
13395#line 850
13396 __cil_tmp321 = (unsigned long )us;
13397#line 850
13398 __cil_tmp322 = __cil_tmp321 + 104;
13399#line 850
13400 __cil_tmp323 = (unsigned long *)__cil_tmp322;
13401#line 850
13402 __cil_tmp324 = (unsigned long volatile *)__cil_tmp323;
13403#line 850
13404 clear_bit(7, __cil_tmp324);
13405#line 851
13406 __cil_tmp325 = (unsigned long )srb;
13407#line 851
13408 __cil_tmp326 = __cil_tmp325 + 224;
13409#line 851
13410 *((int *)__cil_tmp326) = 12 << 16;
13411#line 852
13412 __cil_tmp327 = (unsigned long )srb;
13413#line 852
13414 __cil_tmp328 = __cil_tmp327 + 136;
13415#line 852
13416 __cil_tmp329 = *((unsigned char **)__cil_tmp328);
13417#line 852
13418 __cil_tmp330 = __cil_tmp329 + 0;
13419#line 852
13420 *__cil_tmp330 = (unsigned char)0;
13421 }
13422 } else {
13423
13424 }
13425 } else {
13426
13427 }
13428 {
13429#line 857
13430 __cil_tmp331 = (unsigned long )srb;
13431#line 857
13432 __cil_tmp332 = __cil_tmp331 + 224;
13433#line 857
13434 __cil_tmp333 = *((int *)__cil_tmp332);
13435#line 857
13436 if (__cil_tmp333 == 0) {
13437#line 857
13438 goto _L___1;
13439 } else {
13440 {
13441#line 857
13442 __cil_tmp334 = (unsigned long )srb;
13443#line 857
13444 __cil_tmp335 = __cil_tmp334 + 136;
13445#line 857
13446 __cil_tmp336 = *((unsigned char **)__cil_tmp335);
13447#line 857
13448 __cil_tmp337 = __cil_tmp336 + 2;
13449#line 857
13450 __cil_tmp338 = *__cil_tmp337;
13451#line 857
13452 __cil_tmp339 = (int )__cil_tmp338;
13453#line 857
13454 if (__cil_tmp339 == 0) {
13455 _L___1:
13456 {
13457#line 857
13458 tmp___21 = scsi_bufflen(srb);
13459#line 857
13460 tmp___22 = scsi_get_resid(srb);
13461 }
13462 {
13463#line 857
13464 __cil_tmp340 = (unsigned long )srb;
13465#line 857
13466 __cil_tmp341 = __cil_tmp340 + 120;
13467#line 857
13468 __cil_tmp342 = *((unsigned int *)__cil_tmp341);
13469#line 857
13470 __cil_tmp343 = (unsigned int )tmp___22;
13471#line 857
13472 __cil_tmp344 = tmp___21 - __cil_tmp343;
13473#line 857
13474 if (__cil_tmp344 < __cil_tmp342) {
13475#line 859
13476 __cil_tmp345 = (unsigned long )srb;
13477#line 859
13478 __cil_tmp346 = __cil_tmp345 + 224;
13479#line 859
13480 *((int *)__cil_tmp346) = 7 << 16;
13481 } else {
13482
13483 }
13484 }
13485 } else {
13486
13487 }
13488 }
13489 }
13490 }
13491 {
13492#line 861
13493 last_sector_hacks(us, srb);
13494 }
13495#line 862
13496 return;
13497 Handle_Errors:
13498 {
13499#line 871
13500 tmp___23 = us_to_host(us);
13501#line 871
13502 __cil_tmp347 = (unsigned long )tmp___23;
13503#line 871
13504 __cil_tmp348 = __cil_tmp347 + 120;
13505#line 871
13506 __cil_tmp349 = *((spinlock_t **)__cil_tmp348);
13507#line 871
13508 spin_lock_irq(__cil_tmp349);
13509#line 872
13510 __cil_tmp350 = (unsigned long )us;
13511#line 872
13512 __cil_tmp351 = __cil_tmp350 + 104;
13513#line 872
13514 __cil_tmp352 = (unsigned long *)__cil_tmp351;
13515#line 872
13516 __cil_tmp353 = (unsigned long volatile *)__cil_tmp352;
13517#line 872
13518 set_bit(4U, __cil_tmp353);
13519#line 873
13520 __cil_tmp354 = (unsigned long )us;
13521#line 873
13522 __cil_tmp355 = __cil_tmp354 + 104;
13523#line 873
13524 __cil_tmp356 = (unsigned long *)__cil_tmp355;
13525#line 873
13526 __cil_tmp357 = (unsigned long volatile *)__cil_tmp356;
13527#line 873
13528 clear_bit(2, __cil_tmp357);
13529#line 874
13530 tmp___24 = us_to_host(us);
13531#line 874
13532 __cil_tmp358 = (unsigned long )tmp___24;
13533#line 874
13534 __cil_tmp359 = __cil_tmp358 + 120;
13535#line 874
13536 __cil_tmp360 = *((spinlock_t **)__cil_tmp359);
13537#line 874
13538 spin_unlock_irq(__cil_tmp360);
13539#line 878
13540 __cil_tmp361 = (struct mutex *)us;
13541#line 878
13542 mutex_unlock(__cil_tmp361);
13543#line 879
13544 result = usb_stor_port_reset(us);
13545#line 880
13546 __cil_tmp362 = (struct mutex *)us;
13547#line 880
13548 mutex_lock(__cil_tmp362);
13549 }
13550#line 882
13551 if (result < 0) {
13552 {
13553#line 883
13554 tmp___25 = us_to_host(us);
13555#line 883
13556 __cil_tmp363 = (unsigned long )tmp___25;
13557#line 883
13558 __cil_tmp364 = __cil_tmp363 + 120;
13559#line 883
13560 __cil_tmp365 = *((spinlock_t **)__cil_tmp364);
13561#line 883
13562 spin_lock_irq(__cil_tmp365);
13563#line 884
13564 usb_stor_report_device_reset(us);
13565#line 885
13566 tmp___26 = us_to_host(us);
13567#line 885
13568 __cil_tmp366 = (unsigned long )tmp___26;
13569#line 885
13570 __cil_tmp367 = __cil_tmp366 + 120;
13571#line 885
13572 __cil_tmp368 = *((spinlock_t **)__cil_tmp367);
13573#line 885
13574 spin_unlock_irq(__cil_tmp368);
13575#line 886
13576 __cil_tmp369 = (unsigned long )us;
13577#line 886
13578 __cil_tmp370 = __cil_tmp369 + 176;
13579#line 886
13580 __cil_tmp371 = *((int (**)(struct us_data * ))__cil_tmp370);
13581#line 886
13582 (*__cil_tmp371)(us);
13583 }
13584 } else {
13585
13586 }
13587 {
13588#line 888
13589 __cil_tmp372 = (unsigned long )us;
13590#line 888
13591 __cil_tmp373 = __cil_tmp372 + 104;
13592#line 888
13593 __cil_tmp374 = (unsigned long *)__cil_tmp373;
13594#line 888
13595 __cil_tmp375 = (unsigned long volatile *)__cil_tmp374;
13596#line 888
13597 clear_bit(4, __cil_tmp375);
13598#line 889
13599 last_sector_hacks(us, srb);
13600 }
13601#line 890
13602 return;
13603}
13604}
13605#line 893 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
13606void usb_stor_stop_transport(struct us_data *us )
13607{ int tmp___7 ;
13608 int tmp___8 ;
13609 unsigned long __cil_tmp4 ;
13610 unsigned long __cil_tmp5 ;
13611 unsigned long *__cil_tmp6 ;
13612 unsigned long volatile *__cil_tmp7 ;
13613 unsigned long __cil_tmp8 ;
13614 unsigned long __cil_tmp9 ;
13615 struct urb *__cil_tmp10 ;
13616 unsigned long __cil_tmp11 ;
13617 unsigned long __cil_tmp12 ;
13618 unsigned long *__cil_tmp13 ;
13619 unsigned long volatile *__cil_tmp14 ;
13620 unsigned long __cil_tmp15 ;
13621 unsigned long __cil_tmp16 ;
13622 struct usb_sg_request *__cil_tmp17 ;
13623
13624 {
13625 {
13626#line 895
13627 printk("<7>usb-storage: %s called\n", "usb_stor_stop_transport");
13628#line 901
13629 __cil_tmp4 = (unsigned long )us;
13630#line 901
13631 __cil_tmp5 = __cil_tmp4 + 104;
13632#line 901
13633 __cil_tmp6 = (unsigned long *)__cil_tmp5;
13634#line 901
13635 __cil_tmp7 = (unsigned long volatile *)__cil_tmp6;
13636#line 901
13637 tmp___7 = test_and_clear_bit(0, __cil_tmp7);
13638 }
13639#line 901
13640 if (tmp___7) {
13641 {
13642#line 902
13643 printk("<7>usb-storage: -- cancelling URB\n");
13644#line 903
13645 __cil_tmp8 = (unsigned long )us;
13646#line 903
13647 __cil_tmp9 = __cil_tmp8 + 240;
13648#line 903
13649 __cil_tmp10 = *((struct urb **)__cil_tmp9);
13650#line 903
13651 usb_unlink_urb(__cil_tmp10);
13652 }
13653 } else {
13654
13655 }
13656 {
13657#line 907
13658 __cil_tmp11 = (unsigned long )us;
13659#line 907
13660 __cil_tmp12 = __cil_tmp11 + 104;
13661#line 907
13662 __cil_tmp13 = (unsigned long *)__cil_tmp12;
13663#line 907
13664 __cil_tmp14 = (unsigned long volatile *)__cil_tmp13;
13665#line 907
13666 tmp___8 = test_and_clear_bit(1, __cil_tmp14);
13667 }
13668#line 907
13669 if (tmp___8) {
13670 {
13671#line 908
13672 printk("<7>usb-storage: -- cancelling sg request\n");
13673#line 909
13674 __cil_tmp15 = (unsigned long )us;
13675#line 909
13676 __cil_tmp16 = __cil_tmp15 + 256;
13677#line 909
13678 __cil_tmp17 = (struct usb_sg_request *)__cil_tmp16;
13679#line 909
13680 usb_sg_cancel(__cil_tmp17);
13681 }
13682 } else {
13683
13684 }
13685#line 911
13686 return;
13687}
13688}
13689#line 917 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
13690int usb_stor_CB_transport(struct scsi_cmnd *srb , struct us_data *us )
13691{ unsigned int transfer_length ;
13692 unsigned int tmp___7 ;
13693 unsigned int pipe ;
13694 int result ;
13695 unsigned long __cil_tmp7 ;
13696 unsigned long __cil_tmp8 ;
13697 unsigned int __cil_tmp9 ;
13698 u8 __cil_tmp10 ;
13699 int __cil_tmp11 ;
13700 int __cil_tmp12 ;
13701 u8 __cil_tmp13 ;
13702 u16 __cil_tmp14 ;
13703 unsigned long __cil_tmp15 ;
13704 unsigned long __cil_tmp16 ;
13705 u8 __cil_tmp17 ;
13706 u16 __cil_tmp18 ;
13707 unsigned long __cil_tmp19 ;
13708 unsigned long __cil_tmp20 ;
13709 unsigned char *__cil_tmp21 ;
13710 void *__cil_tmp22 ;
13711 unsigned long __cil_tmp23 ;
13712 unsigned long __cil_tmp24 ;
13713 unsigned short __cil_tmp25 ;
13714 unsigned long __cil_tmp26 ;
13715 unsigned long __cil_tmp27 ;
13716 enum dma_data_direction __cil_tmp28 ;
13717 unsigned int __cil_tmp29 ;
13718 unsigned long __cil_tmp30 ;
13719 unsigned long __cil_tmp31 ;
13720 unsigned long __cil_tmp32 ;
13721 unsigned long __cil_tmp33 ;
13722 unsigned long __cil_tmp34 ;
13723 unsigned long __cil_tmp35 ;
13724 u8 __cil_tmp36 ;
13725 int __cil_tmp37 ;
13726 unsigned long __cil_tmp38 ;
13727 unsigned long __cil_tmp39 ;
13728 unsigned char *__cil_tmp40 ;
13729 void *__cil_tmp41 ;
13730 unsigned long __cil_tmp42 ;
13731 unsigned long __cil_tmp43 ;
13732 unsigned char *__cil_tmp44 ;
13733 unsigned char *__cil_tmp45 ;
13734 unsigned char __cil_tmp46 ;
13735 int __cil_tmp47 ;
13736 unsigned long __cil_tmp48 ;
13737 unsigned long __cil_tmp49 ;
13738 unsigned char *__cil_tmp50 ;
13739 unsigned char *__cil_tmp51 ;
13740 unsigned char __cil_tmp52 ;
13741 int __cil_tmp53 ;
13742 unsigned long __cil_tmp54 ;
13743 unsigned long __cil_tmp55 ;
13744 u8 __cil_tmp56 ;
13745 int __cil_tmp57 ;
13746 unsigned long __cil_tmp58 ;
13747 unsigned long __cil_tmp59 ;
13748 unsigned char *__cil_tmp60 ;
13749 unsigned char *__cil_tmp61 ;
13750 unsigned char __cil_tmp62 ;
13751 int __cil_tmp63 ;
13752 unsigned long __cil_tmp64 ;
13753 unsigned long __cil_tmp65 ;
13754 unsigned char *__cil_tmp66 ;
13755 unsigned char *__cil_tmp67 ;
13756 unsigned char __cil_tmp68 ;
13757 int __cil_tmp69 ;
13758 unsigned long __cil_tmp70 ;
13759 unsigned long __cil_tmp71 ;
13760 unsigned char *__cil_tmp72 ;
13761 unsigned char *__cil_tmp73 ;
13762 unsigned long __cil_tmp74 ;
13763 unsigned long __cil_tmp75 ;
13764 unsigned char *__cil_tmp76 ;
13765 unsigned char *__cil_tmp77 ;
13766 unsigned long __cil_tmp78 ;
13767 unsigned long __cil_tmp79 ;
13768 unsigned char *__cil_tmp80 ;
13769 unsigned char *__cil_tmp81 ;
13770 unsigned char __cil_tmp82 ;
13771 int __cil_tmp83 ;
13772 unsigned long __cil_tmp84 ;
13773 unsigned long __cil_tmp85 ;
13774 unsigned char *__cil_tmp86 ;
13775 unsigned char *__cil_tmp87 ;
13776 unsigned char __cil_tmp88 ;
13777 int __cil_tmp89 ;
13778
13779 {
13780 {
13781#line 919
13782 tmp___7 = scsi_bufflen(srb);
13783#line 919
13784 transfer_length = tmp___7;
13785#line 920
13786 pipe = 0U;
13787#line 925
13788 __cil_tmp7 = (unsigned long )us;
13789#line 925
13790 __cil_tmp8 = __cil_tmp7 + 120;
13791#line 925
13792 __cil_tmp9 = *((unsigned int *)__cil_tmp8);
13793#line 925
13794 __cil_tmp10 = (u8 )0;
13795#line 925
13796 __cil_tmp11 = 1 << 5;
13797#line 925
13798 __cil_tmp12 = __cil_tmp11 | 1;
13799#line 925
13800 __cil_tmp13 = (u8 )__cil_tmp12;
13801#line 925
13802 __cil_tmp14 = (u16 )0;
13803#line 925
13804 __cil_tmp15 = (unsigned long )us;
13805#line 925
13806 __cil_tmp16 = __cil_tmp15 + 159;
13807#line 925
13808 __cil_tmp17 = *((u8 *)__cil_tmp16);
13809#line 925
13810 __cil_tmp18 = (u16 )__cil_tmp17;
13811#line 925
13812 __cil_tmp19 = (unsigned long )srb;
13813#line 925
13814 __cil_tmp20 = __cil_tmp19 + 80;
13815#line 925
13816 __cil_tmp21 = *((unsigned char **)__cil_tmp20);
13817#line 925
13818 __cil_tmp22 = (void *)__cil_tmp21;
13819#line 925
13820 __cil_tmp23 = (unsigned long )srb;
13821#line 925
13822 __cil_tmp24 = __cil_tmp23 + 74;
13823#line 925
13824 __cil_tmp25 = *((unsigned short *)__cil_tmp24);
13825#line 925
13826 result = usb_stor_ctrl_transfer(us, __cil_tmp9, __cil_tmp10, __cil_tmp13, __cil_tmp14,
13827 __cil_tmp18, __cil_tmp22, __cil_tmp25);
13828#line 931
13829 printk("<7>usb-storage: Call to usb_stor_ctrl_transfer() returned %d\n", result);
13830 }
13831#line 934
13832 if (result == 2) {
13833#line 935
13834 return (1);
13835 } else {
13836
13837 }
13838#line 939
13839 if (result != 0) {
13840#line 940
13841 return (3);
13842 } else {
13843
13844 }
13845#line 945
13846 if (transfer_length) {
13847 {
13848#line 946
13849 __cil_tmp26 = (unsigned long )srb;
13850#line 946
13851 __cil_tmp27 = __cil_tmp26 + 76;
13852#line 946
13853 __cil_tmp28 = *((enum dma_data_direction *)__cil_tmp27);
13854#line 946
13855 __cil_tmp29 = (unsigned int )__cil_tmp28;
13856#line 946
13857 if (__cil_tmp29 == 2U) {
13858#line 946
13859 __cil_tmp30 = (unsigned long )us;
13860#line 946
13861 __cil_tmp31 = __cil_tmp30 + 116;
13862#line 946
13863 pipe = *((unsigned int *)__cil_tmp31);
13864 } else {
13865#line 946
13866 __cil_tmp32 = (unsigned long )us;
13867#line 946
13868 __cil_tmp33 = __cil_tmp32 + 112;
13869#line 946
13870 pipe = *((unsigned int *)__cil_tmp33);
13871 }
13872 }
13873 {
13874#line 948
13875 result = usb_stor_bulk_srb(us, pipe, srb);
13876#line 949
13877 printk("<7>usb-storage: CBI data stage result is 0x%x\n", result);
13878 }
13879#line 952
13880 if (result == 2) {
13881#line 953
13882 return (1);
13883 } else {
13884
13885 }
13886#line 954
13887 if (result > 2) {
13888#line 955
13889 return (3);
13890 } else {
13891
13892 }
13893 } else {
13894
13895 }
13896 {
13897#line 963
13898 __cil_tmp34 = (unsigned long )us;
13899#line 963
13900 __cil_tmp35 = __cil_tmp34 + 157;
13901#line 963
13902 __cil_tmp36 = *((u8 *)__cil_tmp35);
13903#line 963
13904 __cil_tmp37 = (int )__cil_tmp36;
13905#line 963
13906 if (__cil_tmp37 != 0) {
13907#line 964
13908 return (0);
13909 } else {
13910
13911 }
13912 }
13913 {
13914#line 966
13915 __cil_tmp38 = (unsigned long )us;
13916#line 966
13917 __cil_tmp39 = __cil_tmp38 + 376;
13918#line 966
13919 __cil_tmp40 = *((unsigned char **)__cil_tmp39);
13920#line 966
13921 __cil_tmp41 = (void *)__cil_tmp40;
13922#line 966
13923 result = usb_stor_intr_transfer(us, __cil_tmp41, 2U);
13924#line 967
13925 __cil_tmp42 = (unsigned long )us;
13926#line 967
13927 __cil_tmp43 = __cil_tmp42 + 376;
13928#line 967
13929 __cil_tmp44 = *((unsigned char **)__cil_tmp43);
13930#line 967
13931 __cil_tmp45 = __cil_tmp44 + 0;
13932#line 967
13933 __cil_tmp46 = *__cil_tmp45;
13934#line 967
13935 __cil_tmp47 = (int )__cil_tmp46;
13936#line 967
13937 __cil_tmp48 = (unsigned long )us;
13938#line 967
13939 __cil_tmp49 = __cil_tmp48 + 376;
13940#line 967
13941 __cil_tmp50 = *((unsigned char **)__cil_tmp49);
13942#line 967
13943 __cil_tmp51 = __cil_tmp50 + 1;
13944#line 967
13945 __cil_tmp52 = *__cil_tmp51;
13946#line 967
13947 __cil_tmp53 = (int )__cil_tmp52;
13948#line 967
13949 printk("<7>usb-storage: Got interrupt data (0x%x, 0x%x)\n", __cil_tmp47, __cil_tmp53);
13950 }
13951#line 969
13952 if (result != 0) {
13953#line 970
13954 return (3);
13955 } else {
13956
13957 }
13958 {
13959#line 979
13960 __cil_tmp54 = (unsigned long )us;
13961#line 979
13962 __cil_tmp55 = __cil_tmp54 + 156;
13963#line 979
13964 __cil_tmp56 = *((u8 *)__cil_tmp55);
13965#line 979
13966 __cil_tmp57 = (int )__cil_tmp56;
13967#line 979
13968 if (__cil_tmp57 == 4) {
13969 {
13970#line 980
13971 __cil_tmp58 = (unsigned long )srb;
13972#line 980
13973 __cil_tmp59 = __cil_tmp58 + 80;
13974#line 980
13975 __cil_tmp60 = *((unsigned char **)__cil_tmp59);
13976#line 980
13977 __cil_tmp61 = __cil_tmp60 + 0;
13978#line 980
13979 __cil_tmp62 = *__cil_tmp61;
13980#line 980
13981 __cil_tmp63 = (int )__cil_tmp62;
13982#line 980
13983 if (__cil_tmp63 == 3) {
13984#line 982
13985 return (0);
13986 } else {
13987 {
13988#line 980
13989 __cil_tmp64 = (unsigned long )srb;
13990#line 980
13991 __cil_tmp65 = __cil_tmp64 + 80;
13992#line 980
13993 __cil_tmp66 = *((unsigned char **)__cil_tmp65);
13994#line 980
13995 __cil_tmp67 = __cil_tmp66 + 0;
13996#line 980
13997 __cil_tmp68 = *__cil_tmp67;
13998#line 980
13999 __cil_tmp69 = (int )__cil_tmp68;
14000#line 980
14001 if (__cil_tmp69 == 18) {
14002#line 982
14003 return (0);
14004 } else {
14005
14006 }
14007 }
14008 }
14009 }
14010 {
14011#line 983
14012 __cil_tmp70 = (unsigned long )us;
14013#line 983
14014 __cil_tmp71 = __cil_tmp70 + 376;
14015#line 983
14016 __cil_tmp72 = *((unsigned char **)__cil_tmp71);
14017#line 983
14018 __cil_tmp73 = __cil_tmp72 + 0;
14019#line 983
14020 if (*__cil_tmp73) {
14021#line 984
14022 goto Failed;
14023 } else {
14024
14025 }
14026 }
14027#line 985
14028 return (0);
14029 } else {
14030
14031 }
14032 }
14033 {
14034#line 994
14035 __cil_tmp74 = (unsigned long )us;
14036#line 994
14037 __cil_tmp75 = __cil_tmp74 + 376;
14038#line 994
14039 __cil_tmp76 = *((unsigned char **)__cil_tmp75);
14040#line 994
14041 __cil_tmp77 = __cil_tmp76 + 0;
14042#line 994
14043 if (*__cil_tmp77) {
14044 {
14045#line 995
14046 __cil_tmp78 = (unsigned long )us;
14047#line 995
14048 __cil_tmp79 = __cil_tmp78 + 376;
14049#line 995
14050 __cil_tmp80 = *((unsigned char **)__cil_tmp79);
14051#line 995
14052 __cil_tmp81 = __cil_tmp80 + 0;
14053#line 995
14054 __cil_tmp82 = *__cil_tmp81;
14055#line 995
14056 __cil_tmp83 = (int )__cil_tmp82;
14057#line 995
14058 printk("<7>usb-storage: CBI IRQ data showed reserved bType 0x%x\n", __cil_tmp83);
14059 }
14060#line 997
14061 goto Failed;
14062 } else {
14063
14064 }
14065 }
14066 {
14067#line 1002
14068 __cil_tmp84 = (unsigned long )us;
14069#line 1002
14070 __cil_tmp85 = __cil_tmp84 + 376;
14071#line 1002
14072 __cil_tmp86 = *((unsigned char **)__cil_tmp85);
14073#line 1002
14074 __cil_tmp87 = __cil_tmp86 + 1;
14075#line 1002
14076 __cil_tmp88 = *__cil_tmp87;
14077#line 1002
14078 __cil_tmp89 = (int )__cil_tmp88;
14079#line 1003
14080 if ((__cil_tmp89 & 15) == 0) {
14081#line 1003
14082 goto case_0;
14083 } else
14084#line 1005
14085 if ((__cil_tmp89 & 15) == 1) {
14086#line 1005
14087 goto case_1;
14088 } else
14089#line 1002
14090 if (0) {
14091 case_0:
14092#line 1004
14093 return (0);
14094 case_1:
14095#line 1006
14096 goto Failed;
14097 } else {
14098 switch_break: ;
14099 }
14100 }
14101#line 1008
14102 return (3);
14103 Failed:
14104#line 1014
14105 if (pipe) {
14106 {
14107#line 1015
14108 usb_stor_clear_halt(us, pipe);
14109 }
14110 } else {
14111
14112 }
14113#line 1016
14114 return (1);
14115}
14116}
14117#line 1018
14118extern void *__crc_usb_stor_CB_transport __attribute__((__weak__)) ;
14119#line 1018 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
14120static unsigned long __kcrctab_usb_stor_CB_transport __attribute__((__used__,
14121__unused__, __section__("___kcrctab_gpl+usb_stor_CB_transport"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_CB_transport));
14122#line 1018 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
14123static char __kstrtab_usb_stor_CB_transport[22] __attribute__((__section__("__ksymtab_strings"),
14124__aligned__(1))) =
14125#line 1018
14126 { (char )'u', (char )'s', (char const )'b', (char const )'_',
14127 (char )'s', (char )'t', (char const )'o', (char const )'r',
14128 (char )'_', (char )'C', (char const )'B', (char const )'_',
14129 (char )'t', (char )'r', (char const )'a', (char const )'n',
14130 (char )'s', (char )'p', (char const )'o', (char const )'r',
14131 (char )'t', (char )'\000'};
14132#line 1018 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
14133static struct kernel_symbol __ksymtab_usb_stor_CB_transport __attribute__((__used__,
14134__unused__, __section__("___ksymtab_gpl+usb_stor_CB_transport"))) = {(unsigned long )(& usb_stor_CB_transport), __kstrtab_usb_stor_CB_transport};
14135#line 1025 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
14136int usb_stor_Bulk_max_lun(struct us_data *us )
14137{ int result ;
14138 unsigned long __cil_tmp3 ;
14139 unsigned long __cil_tmp4 ;
14140 unsigned char *__cil_tmp5 ;
14141 unsigned char *__cil_tmp6 ;
14142 unsigned long __cil_tmp7 ;
14143 unsigned long __cil_tmp8 ;
14144 unsigned int __cil_tmp9 ;
14145 u8 __cil_tmp10 ;
14146 int __cil_tmp11 ;
14147 int __cil_tmp12 ;
14148 int __cil_tmp13 ;
14149 u8 __cil_tmp14 ;
14150 u16 __cil_tmp15 ;
14151 unsigned long __cil_tmp16 ;
14152 unsigned long __cil_tmp17 ;
14153 u8 __cil_tmp18 ;
14154 u16 __cil_tmp19 ;
14155 unsigned long __cil_tmp20 ;
14156 unsigned long __cil_tmp21 ;
14157 unsigned char *__cil_tmp22 ;
14158 void *__cil_tmp23 ;
14159 u16 __cil_tmp24 ;
14160 unsigned long __cil_tmp25 ;
14161 unsigned long __cil_tmp26 ;
14162 unsigned char *__cil_tmp27 ;
14163 unsigned char *__cil_tmp28 ;
14164 unsigned char __cil_tmp29 ;
14165 int __cil_tmp30 ;
14166 unsigned long __cil_tmp31 ;
14167 unsigned long __cil_tmp32 ;
14168 unsigned char *__cil_tmp33 ;
14169 unsigned char *__cil_tmp34 ;
14170 unsigned char __cil_tmp35 ;
14171
14172 {
14173 {
14174#line 1030
14175 __cil_tmp3 = (unsigned long )us;
14176#line 1030
14177 __cil_tmp4 = __cil_tmp3 + 376;
14178#line 1030
14179 __cil_tmp5 = *((unsigned char **)__cil_tmp4);
14180#line 1030
14181 __cil_tmp6 = __cil_tmp5 + 0;
14182#line 1030
14183 *__cil_tmp6 = (unsigned char)0;
14184#line 1031
14185 __cil_tmp7 = (unsigned long )us;
14186#line 1031
14187 __cil_tmp8 = __cil_tmp7 + 124;
14188#line 1031
14189 __cil_tmp9 = *((unsigned int *)__cil_tmp8);
14190#line 1031
14191 __cil_tmp10 = (u8 )254;
14192#line 1031
14193 __cil_tmp11 = 1 << 5;
14194#line 1031
14195 __cil_tmp12 = 128 | __cil_tmp11;
14196#line 1031
14197 __cil_tmp13 = __cil_tmp12 | 1;
14198#line 1031
14199 __cil_tmp14 = (u8 )__cil_tmp13;
14200#line 1031
14201 __cil_tmp15 = (u16 )0;
14202#line 1031
14203 __cil_tmp16 = (unsigned long )us;
14204#line 1031
14205 __cil_tmp17 = __cil_tmp16 + 159;
14206#line 1031
14207 __cil_tmp18 = *((u8 *)__cil_tmp17);
14208#line 1031
14209 __cil_tmp19 = (u16 )__cil_tmp18;
14210#line 1031
14211 __cil_tmp20 = (unsigned long )us;
14212#line 1031
14213 __cil_tmp21 = __cil_tmp20 + 376;
14214#line 1031
14215 __cil_tmp22 = *((unsigned char **)__cil_tmp21);
14216#line 1031
14217 __cil_tmp23 = (void *)__cil_tmp22;
14218#line 1031
14219 __cil_tmp24 = (u16 )1;
14220#line 1031
14221 result = usb_stor_control_msg(us, __cil_tmp9, __cil_tmp10, __cil_tmp14, __cil_tmp15,
14222 __cil_tmp19, __cil_tmp23, __cil_tmp24, 2500);
14223#line 1037
14224 __cil_tmp25 = (unsigned long )us;
14225#line 1037
14226 __cil_tmp26 = __cil_tmp25 + 376;
14227#line 1037
14228 __cil_tmp27 = *((unsigned char **)__cil_tmp26);
14229#line 1037
14230 __cil_tmp28 = __cil_tmp27 + 0;
14231#line 1037
14232 __cil_tmp29 = *__cil_tmp28;
14233#line 1037
14234 __cil_tmp30 = (int )__cil_tmp29;
14235#line 1037
14236 printk("<7>usb-storage: GetMaxLUN command result is %d, data is %d\n", result, __cil_tmp30);
14237 }
14238#line 1041
14239 if (result > 0) {
14240 {
14241#line 1042
14242 __cil_tmp31 = (unsigned long )us;
14243#line 1042
14244 __cil_tmp32 = __cil_tmp31 + 376;
14245#line 1042
14246 __cil_tmp33 = *((unsigned char **)__cil_tmp32);
14247#line 1042
14248 __cil_tmp34 = __cil_tmp33 + 0;
14249#line 1042
14250 __cil_tmp35 = *__cil_tmp34;
14251#line 1042
14252 return ((int )__cil_tmp35);
14253 }
14254 } else {
14255
14256 }
14257#line 1051
14258 return (0);
14259}
14260}
14261#line 1054 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
14262int usb_stor_Bulk_transport(struct scsi_cmnd *srb , struct us_data *us )
14263{ struct bulk_cb_wrap *bcb ;
14264 struct bulk_cs_wrap *bcs ;
14265 unsigned int transfer_length ;
14266 unsigned int tmp___7 ;
14267 unsigned int residue ;
14268 int result ;
14269 int fake_sense ;
14270 unsigned int cswlen ;
14271 unsigned int cbwlen ;
14272 long tmp___8 ;
14273 size_t __len ;
14274 void *__ret ;
14275 long tmp___9 ;
14276 unsigned int pipe ;
14277 unsigned int tmp___10 ;
14278 unsigned int _min1 ;
14279 unsigned int _min2 ;
14280 unsigned int tmp___11 ;
14281 int _max1 ;
14282 int tmp___12 ;
14283 int _max2 ;
14284 int tmp___13 ;
14285 int tmp___14 ;
14286 size_t __len___0 ;
14287 void *__ret___0 ;
14288 unsigned long __cil_tmp28 ;
14289 unsigned long __cil_tmp29 ;
14290 unsigned char *__cil_tmp30 ;
14291 unsigned long __cil_tmp31 ;
14292 unsigned long __cil_tmp32 ;
14293 unsigned char *__cil_tmp33 ;
14294 unsigned long __cil_tmp34 ;
14295 unsigned long __cil_tmp35 ;
14296 unsigned long __cil_tmp36 ;
14297 unsigned long __cil_tmp37 ;
14298 int __cil_tmp38 ;
14299 int __cil_tmp39 ;
14300 long __cil_tmp40 ;
14301 unsigned long __cil_tmp41 ;
14302 unsigned long __cil_tmp42 ;
14303 unsigned char *__cil_tmp43 ;
14304 unsigned char *__cil_tmp44 ;
14305 unsigned long __cil_tmp45 ;
14306 unsigned long __cil_tmp46 ;
14307 unsigned long __cil_tmp47 ;
14308 unsigned long __cil_tmp48 ;
14309 enum dma_data_direction __cil_tmp49 ;
14310 unsigned int __cil_tmp50 ;
14311 unsigned long __cil_tmp51 ;
14312 unsigned long __cil_tmp52 ;
14313 int __cil_tmp53 ;
14314 unsigned long __cil_tmp54 ;
14315 unsigned long __cil_tmp55 ;
14316 unsigned long __cil_tmp56 ;
14317 unsigned long __cil_tmp57 ;
14318 unsigned long __cil_tmp58 ;
14319 unsigned long __cil_tmp59 ;
14320 unsigned int __cil_tmp60 ;
14321 unsigned long __cil_tmp61 ;
14322 unsigned long __cil_tmp62 ;
14323 unsigned long __cil_tmp63 ;
14324 unsigned long __cil_tmp64 ;
14325 unsigned long __cil_tmp65 ;
14326 unsigned long __cil_tmp66 ;
14327 struct scsi_device *__cil_tmp67 ;
14328 unsigned long __cil_tmp68 ;
14329 unsigned long __cil_tmp69 ;
14330 unsigned int __cil_tmp70 ;
14331 unsigned long __cil_tmp71 ;
14332 unsigned long __cil_tmp72 ;
14333 unsigned long __cil_tmp73 ;
14334 unsigned long __cil_tmp74 ;
14335 unsigned long __cil_tmp75 ;
14336 struct scsi_device *__cil_tmp76 ;
14337 unsigned long __cil_tmp77 ;
14338 unsigned long __cil_tmp78 ;
14339 unsigned int __cil_tmp79 ;
14340 unsigned int __cil_tmp80 ;
14341 unsigned long __cil_tmp81 ;
14342 unsigned long __cil_tmp82 ;
14343 __u8 __cil_tmp83 ;
14344 unsigned int __cil_tmp84 ;
14345 unsigned int __cil_tmp85 ;
14346 unsigned long __cil_tmp86 ;
14347 unsigned long __cil_tmp87 ;
14348 unsigned long __cil_tmp88 ;
14349 unsigned long __cil_tmp89 ;
14350 unsigned short __cil_tmp90 ;
14351 unsigned long __cil_tmp91 ;
14352 unsigned long __cil_tmp92 ;
14353 unsigned long __cil_tmp93 ;
14354 unsigned long __cil_tmp94 ;
14355 __u8 *__cil_tmp95 ;
14356 void *__cil_tmp96 ;
14357 unsigned long __cil_tmp97 ;
14358 unsigned long __cil_tmp98 ;
14359 __u8 __cil_tmp99 ;
14360 unsigned long __cil_tmp100 ;
14361 unsigned long __cil_tmp101 ;
14362 unsigned long __cil_tmp102 ;
14363 unsigned long __cil_tmp103 ;
14364 __u8 *__cil_tmp104 ;
14365 void *__cil_tmp105 ;
14366 unsigned long __cil_tmp106 ;
14367 unsigned long __cil_tmp107 ;
14368 unsigned char *__cil_tmp108 ;
14369 void *__cil_tmp109 ;
14370 __le32 __cil_tmp110 ;
14371 unsigned long __cil_tmp111 ;
14372 unsigned long __cil_tmp112 ;
14373 __u32 __cil_tmp113 ;
14374 unsigned long __cil_tmp114 ;
14375 unsigned long __cil_tmp115 ;
14376 __le32 __cil_tmp116 ;
14377 unsigned long __cil_tmp117 ;
14378 unsigned long __cil_tmp118 ;
14379 __u8 __cil_tmp119 ;
14380 int __cil_tmp120 ;
14381 unsigned long __cil_tmp121 ;
14382 unsigned long __cil_tmp122 ;
14383 __u8 __cil_tmp123 ;
14384 int __cil_tmp124 ;
14385 int __cil_tmp125 ;
14386 unsigned long __cil_tmp126 ;
14387 unsigned long __cil_tmp127 ;
14388 __u8 __cil_tmp128 ;
14389 int __cil_tmp129 ;
14390 int __cil_tmp130 ;
14391 unsigned long __cil_tmp131 ;
14392 unsigned long __cil_tmp132 ;
14393 __u8 __cil_tmp133 ;
14394 int __cil_tmp134 ;
14395 unsigned long __cil_tmp135 ;
14396 unsigned long __cil_tmp136 ;
14397 unsigned int __cil_tmp137 ;
14398 void *__cil_tmp138 ;
14399 void *__cil_tmp139 ;
14400 unsigned int *__cil_tmp140 ;
14401 unsigned long __cil_tmp141 ;
14402 unsigned long __cil_tmp142 ;
14403 unsigned long __cil_tmp143 ;
14404 unsigned long __cil_tmp144 ;
14405 int __cil_tmp145 ;
14406 int __cil_tmp146 ;
14407 long __cil_tmp147 ;
14408 unsigned long __cil_tmp148 ;
14409 unsigned long __cil_tmp149 ;
14410 enum dma_data_direction __cil_tmp150 ;
14411 unsigned int __cil_tmp151 ;
14412 unsigned long __cil_tmp152 ;
14413 unsigned long __cil_tmp153 ;
14414 unsigned long __cil_tmp154 ;
14415 unsigned long __cil_tmp155 ;
14416 unsigned long __cil_tmp156 ;
14417 unsigned long __cil_tmp157 ;
14418 unsigned int __cil_tmp158 ;
14419 void *__cil_tmp159 ;
14420 unsigned int *__cil_tmp160 ;
14421 unsigned int __cil_tmp161 ;
14422 unsigned long __cil_tmp162 ;
14423 unsigned long __cil_tmp163 ;
14424 unsigned int __cil_tmp164 ;
14425 void *__cil_tmp165 ;
14426 unsigned long __cil_tmp166 ;
14427 unsigned long __cil_tmp167 ;
14428 unsigned int __cil_tmp168 ;
14429 void *__cil_tmp169 ;
14430 void *__cil_tmp170 ;
14431 unsigned int *__cil_tmp171 ;
14432 unsigned long __cil_tmp172 ;
14433 unsigned long __cil_tmp173 ;
14434 __le32 __cil_tmp174 ;
14435 unsigned long __cil_tmp175 ;
14436 unsigned long __cil_tmp176 ;
14437 __u32 __cil_tmp177 ;
14438 unsigned long __cil_tmp178 ;
14439 unsigned long __cil_tmp179 ;
14440 __u8 __cil_tmp180 ;
14441 int __cil_tmp181 ;
14442 unsigned long __cil_tmp182 ;
14443 unsigned long __cil_tmp183 ;
14444 unsigned int __cil_tmp184 ;
14445 unsigned long __cil_tmp185 ;
14446 unsigned long __cil_tmp186 ;
14447 __u32 __cil_tmp187 ;
14448 unsigned long __cil_tmp188 ;
14449 unsigned long __cil_tmp189 ;
14450 unsigned long __cil_tmp190 ;
14451 unsigned long __cil_tmp191 ;
14452 unsigned long __cil_tmp192 ;
14453 __u8 __cil_tmp193 ;
14454 int __cil_tmp194 ;
14455 unsigned long __cil_tmp195 ;
14456 unsigned long __cil_tmp196 ;
14457 __le32 __cil_tmp197 ;
14458 unsigned long __cil_tmp198 ;
14459 unsigned long __cil_tmp199 ;
14460 unsigned long __cil_tmp200 ;
14461 unsigned long __cil_tmp201 ;
14462 __le32 __cil_tmp202 ;
14463 unsigned long __cil_tmp203 ;
14464 unsigned long __cil_tmp204 ;
14465 __le32 __cil_tmp205 ;
14466 unsigned long __cil_tmp206 ;
14467 unsigned long __cil_tmp207 ;
14468 __le32 __cil_tmp208 ;
14469 __le32 __cil_tmp209 ;
14470 __le32 __cil_tmp210 ;
14471 unsigned long __cil_tmp211 ;
14472 unsigned long __cil_tmp212 ;
14473 __le32 __cil_tmp213 ;
14474 unsigned long __cil_tmp214 ;
14475 unsigned long __cil_tmp215 ;
14476 unsigned long __cil_tmp216 ;
14477 unsigned long __cil_tmp217 ;
14478 unsigned long __cil_tmp218 ;
14479 unsigned long __cil_tmp219 ;
14480 __u8 __cil_tmp220 ;
14481 int __cil_tmp221 ;
14482 unsigned long __cil_tmp222 ;
14483 unsigned long __cil_tmp223 ;
14484 unsigned char *__cil_tmp224 ;
14485 unsigned char *__cil_tmp225 ;
14486 unsigned char __cil_tmp226 ;
14487 int __cil_tmp227 ;
14488 unsigned long __cil_tmp228 ;
14489 unsigned long __cil_tmp229 ;
14490 unsigned long __cil_tmp230 ;
14491 unsigned long __cil_tmp231 ;
14492 unsigned long __cil_tmp232 ;
14493 unsigned long __cil_tmp233 ;
14494 unsigned long __cil_tmp234 ;
14495 unsigned char *__cil_tmp235 ;
14496 unsigned char *__cil_tmp236 ;
14497 unsigned char __cil_tmp237 ;
14498 int __cil_tmp238 ;
14499 unsigned long __cil_tmp239 ;
14500 unsigned long __cil_tmp240 ;
14501 unsigned long __cil_tmp241 ;
14502 unsigned long __cil_tmp242 ;
14503 unsigned long __cil_tmp243 ;
14504 unsigned int *__cil_tmp244 ;
14505 unsigned int *__cil_tmp245 ;
14506 unsigned int *__cil_tmp246 ;
14507 unsigned int __cil_tmp247 ;
14508 unsigned int *__cil_tmp248 ;
14509 unsigned int __cil_tmp249 ;
14510 unsigned int *__cil_tmp250 ;
14511 unsigned int *__cil_tmp251 ;
14512 int *__cil_tmp252 ;
14513 int *__cil_tmp253 ;
14514 int *__cil_tmp254 ;
14515 int __cil_tmp255 ;
14516 int *__cil_tmp256 ;
14517 int __cil_tmp257 ;
14518 int *__cil_tmp258 ;
14519 int *__cil_tmp259 ;
14520 unsigned long __cil_tmp260 ;
14521 unsigned long __cil_tmp261 ;
14522 __u8 __cil_tmp262 ;
14523 unsigned long __cil_tmp263 ;
14524 unsigned long __cil_tmp264 ;
14525 unsigned char *__cil_tmp265 ;
14526 void *__cil_tmp266 ;
14527 unsigned long __cil_tmp267 ;
14528 unsigned long __cil_tmp268 ;
14529 unsigned char *__cil_tmp269 ;
14530 void *__cil_tmp270 ;
14531 unsigned long __cil_tmp271 ;
14532 unsigned long __cil_tmp272 ;
14533 unsigned char *__cil_tmp273 ;
14534 void *__cil_tmp274 ;
14535 unsigned long __cil_tmp275 ;
14536 unsigned long __cil_tmp276 ;
14537 unsigned char *__cil_tmp277 ;
14538 void *__cil_tmp278 ;
14539
14540 {
14541 {
14542#line 1056
14543 __cil_tmp28 = (unsigned long )us;
14544#line 1056
14545 __cil_tmp29 = __cil_tmp28 + 376;
14546#line 1056
14547 __cil_tmp30 = *((unsigned char **)__cil_tmp29);
14548#line 1056
14549 bcb = (struct bulk_cb_wrap *)__cil_tmp30;
14550#line 1057
14551 __cil_tmp31 = (unsigned long )us;
14552#line 1057
14553 __cil_tmp32 = __cil_tmp31 + 376;
14554#line 1057
14555 __cil_tmp33 = *((unsigned char **)__cil_tmp32);
14556#line 1057
14557 bcs = (struct bulk_cs_wrap *)__cil_tmp33;
14558#line 1058
14559 tmp___7 = scsi_bufflen(srb);
14560#line 1058
14561 transfer_length = tmp___7;
14562#line 1061
14563 fake_sense = 0;
14564#line 1063
14565 cbwlen = 31U;
14566#line 1066
14567 __cil_tmp34 = (unsigned long )us;
14568#line 1066
14569 __cil_tmp35 = __cil_tmp34 + 96;
14570#line 1066
14571 __cil_tmp36 = *((unsigned long *)__cil_tmp35);
14572#line 1066
14573 __cil_tmp37 = __cil_tmp36 & 64UL;
14574#line 1066
14575 __cil_tmp38 = ! __cil_tmp37;
14576#line 1066
14577 __cil_tmp39 = ! __cil_tmp38;
14578#line 1066
14579 __cil_tmp40 = (long )__cil_tmp39;
14580#line 1066
14581 tmp___8 = __builtin_expect(__cil_tmp40, 0L);
14582 }
14583#line 1066
14584 if (tmp___8) {
14585#line 1067
14586 cbwlen = 32U;
14587#line 1068
14588 __cil_tmp41 = (unsigned long )us;
14589#line 1068
14590 __cil_tmp42 = __cil_tmp41 + 376;
14591#line 1068
14592 __cil_tmp43 = *((unsigned char **)__cil_tmp42);
14593#line 1068
14594 __cil_tmp44 = __cil_tmp43 + 31;
14595#line 1068
14596 *__cil_tmp44 = (unsigned char)0;
14597 } else {
14598
14599 }
14600#line 1072
14601 *((__le32 *)bcb) = (__u32 )1128420181;
14602#line 1073
14603 __cil_tmp45 = (unsigned long )bcb;
14604#line 1073
14605 __cil_tmp46 = __cil_tmp45 + 8;
14606#line 1073
14607 *((__le32 *)__cil_tmp46) = transfer_length;
14608 {
14609#line 1074
14610 __cil_tmp47 = (unsigned long )srb;
14611#line 1074
14612 __cil_tmp48 = __cil_tmp47 + 76;
14613#line 1074
14614 __cil_tmp49 = *((enum dma_data_direction *)__cil_tmp48);
14615#line 1074
14616 __cil_tmp50 = (unsigned int )__cil_tmp49;
14617#line 1074
14618 if (__cil_tmp50 == 2U) {
14619#line 1074
14620 __cil_tmp51 = (unsigned long )bcb;
14621#line 1074
14622 __cil_tmp52 = __cil_tmp51 + 12;
14623#line 1074
14624 __cil_tmp53 = 1 << 7;
14625#line 1074
14626 *((__u8 *)__cil_tmp52) = (__u8 )__cil_tmp53;
14627 } else {
14628#line 1074
14629 __cil_tmp54 = (unsigned long )bcb;
14630#line 1074
14631 __cil_tmp55 = __cil_tmp54 + 12;
14632#line 1074
14633 *((__u8 *)__cil_tmp55) = (__u8 )0;
14634 }
14635 }
14636#line 1076
14637 __cil_tmp56 = (unsigned long )us;
14638#line 1076
14639 __cil_tmp57 = __cil_tmp56 + 200;
14640#line 1076
14641 __cil_tmp58 = (unsigned long )us;
14642#line 1076
14643 __cil_tmp59 = __cil_tmp58 + 200;
14644#line 1076
14645 __cil_tmp60 = *((unsigned int *)__cil_tmp59);
14646#line 1076
14647 *((unsigned int *)__cil_tmp57) = __cil_tmp60 + 1U;
14648#line 1076
14649 __cil_tmp61 = (unsigned long )bcb;
14650#line 1076
14651 __cil_tmp62 = __cil_tmp61 + 4;
14652#line 1076
14653 __cil_tmp63 = (unsigned long )us;
14654#line 1076
14655 __cil_tmp64 = __cil_tmp63 + 200;
14656#line 1076
14657 *((__u32 *)__cil_tmp62) = *((unsigned int *)__cil_tmp64);
14658#line 1077
14659 __cil_tmp65 = (unsigned long )bcb;
14660#line 1077
14661 __cil_tmp66 = __cil_tmp65 + 13;
14662#line 1077
14663 __cil_tmp67 = *((struct scsi_device **)srb);
14664#line 1077
14665 __cil_tmp68 = (unsigned long )__cil_tmp67;
14666#line 1077
14667 __cil_tmp69 = __cil_tmp68 + 156;
14668#line 1077
14669 __cil_tmp70 = *((unsigned int *)__cil_tmp69);
14670#line 1077
14671 *((__u8 *)__cil_tmp66) = (__u8 )__cil_tmp70;
14672 {
14673#line 1078
14674 __cil_tmp71 = (unsigned long )us;
14675#line 1078
14676 __cil_tmp72 = __cil_tmp71 + 96;
14677#line 1078
14678 __cil_tmp73 = *((unsigned long *)__cil_tmp72);
14679#line 1078
14680 if (__cil_tmp73 & 4UL) {
14681#line 1079
14682 __cil_tmp74 = (unsigned long )bcb;
14683#line 1079
14684 __cil_tmp75 = __cil_tmp74 + 13;
14685#line 1079
14686 __cil_tmp76 = *((struct scsi_device **)srb);
14687#line 1079
14688 __cil_tmp77 = (unsigned long )__cil_tmp76;
14689#line 1079
14690 __cil_tmp78 = __cil_tmp77 + 152;
14691#line 1079
14692 __cil_tmp79 = *((unsigned int *)__cil_tmp78);
14693#line 1079
14694 __cil_tmp80 = __cil_tmp79 << 4;
14695#line 1079
14696 __cil_tmp81 = (unsigned long )bcb;
14697#line 1079
14698 __cil_tmp82 = __cil_tmp81 + 13;
14699#line 1079
14700 __cil_tmp83 = *((__u8 *)__cil_tmp82);
14701#line 1079
14702 __cil_tmp84 = (unsigned int )__cil_tmp83;
14703#line 1079
14704 __cil_tmp85 = __cil_tmp84 | __cil_tmp80;
14705#line 1079
14706 *((__u8 *)__cil_tmp75) = (__u8 )__cil_tmp85;
14707 } else {
14708
14709 }
14710 }
14711 {
14712#line 1080
14713 __cil_tmp86 = (unsigned long )bcb;
14714#line 1080
14715 __cil_tmp87 = __cil_tmp86 + 14;
14716#line 1080
14717 __cil_tmp88 = (unsigned long )srb;
14718#line 1080
14719 __cil_tmp89 = __cil_tmp88 + 74;
14720#line 1080
14721 __cil_tmp90 = *((unsigned short *)__cil_tmp89);
14722#line 1080
14723 *((__u8 *)__cil_tmp87) = (__u8 )__cil_tmp90;
14724#line 1083
14725 __cil_tmp91 = 0 * 1UL;
14726#line 1083
14727 __cil_tmp92 = 15 + __cil_tmp91;
14728#line 1083
14729 __cil_tmp93 = (unsigned long )bcb;
14730#line 1083
14731 __cil_tmp94 = __cil_tmp93 + __cil_tmp92;
14732#line 1083
14733 __cil_tmp95 = (__u8 *)__cil_tmp94;
14734#line 1083
14735 __cil_tmp96 = (void *)__cil_tmp95;
14736#line 1083
14737 memset(__cil_tmp96, 0, 16UL);
14738#line 1084
14739 __cil_tmp97 = (unsigned long )bcb;
14740#line 1084
14741 __cil_tmp98 = __cil_tmp97 + 14;
14742#line 1084
14743 __cil_tmp99 = *((__u8 *)__cil_tmp98);
14744#line 1084
14745 __len = (size_t )__cil_tmp99;
14746#line 1084
14747 __cil_tmp100 = 0 * 1UL;
14748#line 1084
14749 __cil_tmp101 = 15 + __cil_tmp100;
14750#line 1084
14751 __cil_tmp102 = (unsigned long )bcb;
14752#line 1084
14753 __cil_tmp103 = __cil_tmp102 + __cil_tmp101;
14754#line 1084
14755 __cil_tmp104 = (__u8 *)__cil_tmp103;
14756#line 1084
14757 __cil_tmp105 = (void *)__cil_tmp104;
14758#line 1084
14759 __cil_tmp106 = (unsigned long )srb;
14760#line 1084
14761 __cil_tmp107 = __cil_tmp106 + 80;
14762#line 1084
14763 __cil_tmp108 = *((unsigned char **)__cil_tmp107);
14764#line 1084
14765 __cil_tmp109 = (void *)__cil_tmp108;
14766#line 1084
14767 __ret = __builtin_memcpy(__cil_tmp105, __cil_tmp109, __len);
14768#line 1087
14769 __cil_tmp110 = *((__le32 *)bcb);
14770#line 1087
14771 __cil_tmp111 = (unsigned long )bcb;
14772#line 1087
14773 __cil_tmp112 = __cil_tmp111 + 4;
14774#line 1087
14775 __cil_tmp113 = *((__u32 *)__cil_tmp112);
14776#line 1087
14777 __cil_tmp114 = (unsigned long )bcb;
14778#line 1087
14779 __cil_tmp115 = __cil_tmp114 + 8;
14780#line 1087
14781 __cil_tmp116 = *((__le32 *)__cil_tmp115);
14782#line 1087
14783 __cil_tmp117 = (unsigned long )bcb;
14784#line 1087
14785 __cil_tmp118 = __cil_tmp117 + 12;
14786#line 1087
14787 __cil_tmp119 = *((__u8 *)__cil_tmp118);
14788#line 1087
14789 __cil_tmp120 = (int )__cil_tmp119;
14790#line 1087
14791 __cil_tmp121 = (unsigned long )bcb;
14792#line 1087
14793 __cil_tmp122 = __cil_tmp121 + 13;
14794#line 1087
14795 __cil_tmp123 = *((__u8 *)__cil_tmp122);
14796#line 1087
14797 __cil_tmp124 = (int )__cil_tmp123;
14798#line 1087
14799 __cil_tmp125 = __cil_tmp124 >> 4;
14800#line 1087
14801 __cil_tmp126 = (unsigned long )bcb;
14802#line 1087
14803 __cil_tmp127 = __cil_tmp126 + 13;
14804#line 1087
14805 __cil_tmp128 = *((__u8 *)__cil_tmp127);
14806#line 1087
14807 __cil_tmp129 = (int )__cil_tmp128;
14808#line 1087
14809 __cil_tmp130 = __cil_tmp129 & 15;
14810#line 1087
14811 __cil_tmp131 = (unsigned long )bcb;
14812#line 1087
14813 __cil_tmp132 = __cil_tmp131 + 14;
14814#line 1087
14815 __cil_tmp133 = *((__u8 *)__cil_tmp132);
14816#line 1087
14817 __cil_tmp134 = (int )__cil_tmp133;
14818#line 1087
14819 printk("<7>usb-storage: Bulk Command S 0x%x T 0x%x L %d F %d Trg %d LUN %d CL %d\n",
14820 __cil_tmp110, __cil_tmp113, __cil_tmp116, __cil_tmp120, __cil_tmp125, __cil_tmp130,
14821 __cil_tmp134);
14822#line 1092
14823 __cil_tmp135 = (unsigned long )us;
14824#line 1092
14825 __cil_tmp136 = __cil_tmp135 + 112;
14826#line 1092
14827 __cil_tmp137 = *((unsigned int *)__cil_tmp136);
14828#line 1092
14829 __cil_tmp138 = (void *)bcb;
14830#line 1092
14831 __cil_tmp139 = (void *)0;
14832#line 1092
14833 __cil_tmp140 = (unsigned int *)__cil_tmp139;
14834#line 1092
14835 result = usb_stor_bulk_transfer_buf(us, __cil_tmp137, __cil_tmp138, cbwlen, __cil_tmp140);
14836#line 1094
14837 printk("<7>usb-storage: Bulk command transfer result=%d\n", result);
14838 }
14839#line 1095
14840 if (result != 0) {
14841#line 1096
14842 return (3);
14843 } else {
14844
14845 }
14846 {
14847#line 1104
14848 __cil_tmp141 = (unsigned long )us;
14849#line 1104
14850 __cil_tmp142 = __cil_tmp141 + 96;
14851#line 1104
14852 __cil_tmp143 = *((unsigned long *)__cil_tmp142);
14853#line 1104
14854 __cil_tmp144 = __cil_tmp143 & 256UL;
14855#line 1104
14856 __cil_tmp145 = ! __cil_tmp144;
14857#line 1104
14858 __cil_tmp146 = ! __cil_tmp145;
14859#line 1104
14860 __cil_tmp147 = (long )__cil_tmp146;
14861#line 1104
14862 tmp___9 = __builtin_expect(__cil_tmp147, 0L);
14863 }
14864#line 1104
14865 if (tmp___9) {
14866 {
14867#line 1105
14868 ___udelay(536875UL);
14869 }
14870 } else {
14871
14872 }
14873#line 1107
14874 if (transfer_length) {
14875 {
14876#line 1108
14877 __cil_tmp148 = (unsigned long )srb;
14878#line 1108
14879 __cil_tmp149 = __cil_tmp148 + 76;
14880#line 1108
14881 __cil_tmp150 = *((enum dma_data_direction *)__cil_tmp149);
14882#line 1108
14883 __cil_tmp151 = (unsigned int )__cil_tmp150;
14884#line 1108
14885 if (__cil_tmp151 == 2U) {
14886#line 1108
14887 __cil_tmp152 = (unsigned long )us;
14888#line 1108
14889 __cil_tmp153 = __cil_tmp152 + 116;
14890#line 1108
14891 tmp___10 = *((unsigned int *)__cil_tmp153);
14892 } else {
14893#line 1108
14894 __cil_tmp154 = (unsigned long )us;
14895#line 1108
14896 __cil_tmp155 = __cil_tmp154 + 112;
14897#line 1108
14898 tmp___10 = *((unsigned int *)__cil_tmp155);
14899 }
14900 }
14901 {
14902#line 1108
14903 pipe = tmp___10;
14904#line 1110
14905 result = usb_stor_bulk_srb(us, pipe, srb);
14906#line 1111
14907 printk("<7>usb-storage: Bulk data transfer result 0x%x\n", result);
14908 }
14909#line 1112
14910 if (result == 4) {
14911#line 1113
14912 return (3);
14913 } else {
14914
14915 }
14916#line 1121
14917 if (result == 3) {
14918#line 1122
14919 fake_sense = 1;
14920 } else {
14921
14922 }
14923 } else {
14924
14925 }
14926 {
14927#line 1130
14928 printk("<7>usb-storage: Attempting to get CSW...\n");
14929#line 1131
14930 __cil_tmp156 = (unsigned long )us;
14931#line 1131
14932 __cil_tmp157 = __cil_tmp156 + 116;
14933#line 1131
14934 __cil_tmp158 = *((unsigned int *)__cil_tmp157);
14935#line 1131
14936 __cil_tmp159 = (void *)bcs;
14937#line 1131
14938 result = usb_stor_bulk_transfer_buf(us, __cil_tmp158, __cil_tmp159, 13U, & cswlen);
14939 }
14940#line 1138
14941 if (result == 1) {
14942 {
14943#line 1138
14944 __cil_tmp160 = & cswlen;
14945#line 1138
14946 __cil_tmp161 = *__cil_tmp160;
14947#line 1138
14948 if (__cil_tmp161 == 0U) {
14949 {
14950#line 1139
14951 printk("<7>usb-storage: Received 0-length CSW; retrying...\n");
14952#line 1140
14953 __cil_tmp162 = (unsigned long )us;
14954#line 1140
14955 __cil_tmp163 = __cil_tmp162 + 116;
14956#line 1140
14957 __cil_tmp164 = *((unsigned int *)__cil_tmp163);
14958#line 1140
14959 __cil_tmp165 = (void *)bcs;
14960#line 1140
14961 result = usb_stor_bulk_transfer_buf(us, __cil_tmp164, __cil_tmp165, 13U, & cswlen);
14962 }
14963 } else {
14964
14965 }
14966 }
14967 } else {
14968
14969 }
14970#line 1145
14971 if (result == 2) {
14972 {
14973#line 1148
14974 printk("<7>usb-storage: Attempting to get CSW (2nd try)...\n");
14975#line 1149
14976 __cil_tmp166 = (unsigned long )us;
14977#line 1149
14978 __cil_tmp167 = __cil_tmp166 + 116;
14979#line 1149
14980 __cil_tmp168 = *((unsigned int *)__cil_tmp167);
14981#line 1149
14982 __cil_tmp169 = (void *)bcs;
14983#line 1149
14984 __cil_tmp170 = (void *)0;
14985#line 1149
14986 __cil_tmp171 = (unsigned int *)__cil_tmp170;
14987#line 1149
14988 result = usb_stor_bulk_transfer_buf(us, __cil_tmp168, __cil_tmp169, 13U, __cil_tmp171);
14989 }
14990 } else {
14991
14992 }
14993 {
14994#line 1154
14995 printk("<7>usb-storage: Bulk status result = %d\n", result);
14996 }
14997#line 1155
14998 if (result != 0) {
14999#line 1156
15000 return (3);
15001 } else {
15002
15003 }
15004 {
15005#line 1159
15006 __cil_tmp172 = (unsigned long )bcs;
15007#line 1159
15008 __cil_tmp173 = __cil_tmp172 + 8;
15009#line 1159
15010 residue = *((__le32 *)__cil_tmp173);
15011#line 1160
15012 __cil_tmp174 = *((__le32 *)bcs);
15013#line 1160
15014 __cil_tmp175 = (unsigned long )bcs;
15015#line 1160
15016 __cil_tmp176 = __cil_tmp175 + 4;
15017#line 1160
15018 __cil_tmp177 = *((__u32 *)__cil_tmp176);
15019#line 1160
15020 __cil_tmp178 = (unsigned long )bcs;
15021#line 1160
15022 __cil_tmp179 = __cil_tmp178 + 12;
15023#line 1160
15024 __cil_tmp180 = *((__u8 *)__cil_tmp179);
15025#line 1160
15026 __cil_tmp181 = (int )__cil_tmp180;
15027#line 1160
15028 printk("<7>usb-storage: Bulk Status S 0x%x T 0x%x R %u Stat 0x%x\n", __cil_tmp174,
15029 __cil_tmp177, residue, __cil_tmp181);
15030 }
15031 {
15032#line 1163
15033 __cil_tmp182 = (unsigned long )us;
15034#line 1163
15035 __cil_tmp183 = __cil_tmp182 + 200;
15036#line 1163
15037 __cil_tmp184 = *((unsigned int *)__cil_tmp183);
15038#line 1163
15039 __cil_tmp185 = (unsigned long )bcs;
15040#line 1163
15041 __cil_tmp186 = __cil_tmp185 + 4;
15042#line 1163
15043 __cil_tmp187 = *((__u32 *)__cil_tmp186);
15044#line 1163
15045 if (__cil_tmp187 == __cil_tmp184) {
15046#line 1163
15047 goto _L;
15048 } else {
15049 {
15050#line 1163
15051 __cil_tmp188 = (unsigned long )us;
15052#line 1163
15053 __cil_tmp189 = __cil_tmp188 + 96;
15054#line 1163
15055 __cil_tmp190 = *((unsigned long *)__cil_tmp189);
15056#line 1163
15057 if (__cil_tmp190 & 16384UL) {
15058 _L:
15059 {
15060#line 1163
15061 __cil_tmp191 = (unsigned long )bcs;
15062#line 1163
15063 __cil_tmp192 = __cil_tmp191 + 12;
15064#line 1163
15065 __cil_tmp193 = *((__u8 *)__cil_tmp192);
15066#line 1163
15067 __cil_tmp194 = (int )__cil_tmp193;
15068#line 1163
15069 if (__cil_tmp194 > 2) {
15070 {
15071#line 1165
15072 printk("<7>usb-storage: Bulk logical error\n");
15073 }
15074#line 1166
15075 return (3);
15076 } else {
15077
15078 }
15079 }
15080 } else {
15081 {
15082#line 1165
15083 printk("<7>usb-storage: Bulk logical error\n");
15084 }
15085#line 1166
15086 return (3);
15087 }
15088 }
15089 }
15090 }
15091 {
15092#line 1173
15093 __cil_tmp195 = (unsigned long )us;
15094#line 1173
15095 __cil_tmp196 = __cil_tmp195 + 152;
15096#line 1173
15097 __cil_tmp197 = *((__le32 *)__cil_tmp196);
15098#line 1173
15099 if (! __cil_tmp197) {
15100#line 1174
15101 __cil_tmp198 = (unsigned long )us;
15102#line 1174
15103 __cil_tmp199 = __cil_tmp198 + 152;
15104#line 1174
15105 *((__le32 *)__cil_tmp199) = *((__le32 *)bcs);
15106 {
15107#line 1175
15108 __cil_tmp200 = (unsigned long )us;
15109#line 1175
15110 __cil_tmp201 = __cil_tmp200 + 152;
15111#line 1175
15112 __cil_tmp202 = *((__le32 *)__cil_tmp201);
15113#line 1175
15114 if (__cil_tmp202 != 1396855637U) {
15115 {
15116#line 1176
15117 __cil_tmp203 = (unsigned long )us;
15118#line 1176
15119 __cil_tmp204 = __cil_tmp203 + 152;
15120#line 1176
15121 __cil_tmp205 = *((__le32 *)__cil_tmp204);
15122#line 1176
15123 printk("<7>usb-storage: Learnt BCS signature 0x%08X\n", __cil_tmp205);
15124 }
15125 } else {
15126
15127 }
15128 }
15129 } else {
15130 {
15131#line 1178
15132 __cil_tmp206 = (unsigned long )us;
15133#line 1178
15134 __cil_tmp207 = __cil_tmp206 + 152;
15135#line 1178
15136 __cil_tmp208 = *((__le32 *)__cil_tmp207);
15137#line 1178
15138 __cil_tmp209 = *((__le32 *)bcs);
15139#line 1178
15140 if (__cil_tmp209 != __cil_tmp208) {
15141 {
15142#line 1179
15143 __cil_tmp210 = *((__le32 *)bcs);
15144#line 1179
15145 __cil_tmp211 = (unsigned long )us;
15146#line 1179
15147 __cil_tmp212 = __cil_tmp211 + 152;
15148#line 1179
15149 __cil_tmp213 = *((__le32 *)__cil_tmp212);
15150#line 1179
15151 printk("<7>usb-storage: Signature mismatch: got %08X, expecting %08X\n", __cil_tmp210,
15152 __cil_tmp213);
15153 }
15154#line 1182
15155 return (3);
15156 } else {
15157
15158 }
15159 }
15160 }
15161 }
15162#line 1187
15163 if (residue) {
15164 {
15165#line 1187
15166 __cil_tmp214 = (unsigned long )us;
15167#line 1187
15168 __cil_tmp215 = __cil_tmp214 + 96;
15169#line 1187
15170 __cil_tmp216 = *((unsigned long *)__cil_tmp215);
15171#line 1187
15172 __cil_tmp217 = __cil_tmp216 & 32UL;
15173#line 1187
15174 if (! __cil_tmp217) {
15175 {
15176#line 1193
15177 __cil_tmp218 = (unsigned long )bcs;
15178#line 1193
15179 __cil_tmp219 = __cil_tmp218 + 12;
15180#line 1193
15181 __cil_tmp220 = *((__u8 *)__cil_tmp219);
15182#line 1193
15183 __cil_tmp221 = (int )__cil_tmp220;
15184#line 1193
15185 if (__cil_tmp221 == 0) {
15186 {
15187#line 1193
15188 tmp___14 = scsi_get_resid(srb);
15189 }
15190#line 1193
15191 if (tmp___14 == 0) {
15192 {
15193#line 1193
15194 __cil_tmp222 = (unsigned long )srb;
15195#line 1193
15196 __cil_tmp223 = __cil_tmp222 + 80;
15197#line 1193
15198 __cil_tmp224 = *((unsigned char **)__cil_tmp223);
15199#line 1193
15200 __cil_tmp225 = __cil_tmp224 + 0;
15201#line 1193
15202 __cil_tmp226 = *__cil_tmp225;
15203#line 1193
15204 __cil_tmp227 = (int )__cil_tmp226;
15205#line 1193
15206 if (__cil_tmp227 == 18) {
15207#line 1193
15208 if (transfer_length == 36U) {
15209#line 1199
15210 __cil_tmp228 = (unsigned long )us;
15211#line 1199
15212 __cil_tmp229 = __cil_tmp228 + 96;
15213#line 1199
15214 __cil_tmp230 = (unsigned long )us;
15215#line 1199
15216 __cil_tmp231 = __cil_tmp230 + 96;
15217#line 1199
15218 __cil_tmp232 = *((unsigned long *)__cil_tmp231);
15219#line 1199
15220 *((unsigned long *)__cil_tmp229) = __cil_tmp232 | 32UL;
15221 } else {
15222#line 1193
15223 goto _L___1;
15224 }
15225 } else {
15226 _L___1:
15227 {
15228#line 1193
15229 __cil_tmp233 = (unsigned long )srb;
15230#line 1193
15231 __cil_tmp234 = __cil_tmp233 + 80;
15232#line 1193
15233 __cil_tmp235 = *((unsigned char **)__cil_tmp234);
15234#line 1193
15235 __cil_tmp236 = __cil_tmp235 + 0;
15236#line 1193
15237 __cil_tmp237 = *__cil_tmp236;
15238#line 1193
15239 __cil_tmp238 = (int )__cil_tmp237;
15240#line 1193
15241 if (__cil_tmp238 == 37) {
15242#line 1193
15243 if (transfer_length == 8U) {
15244#line 1199
15245 __cil_tmp239 = (unsigned long )us;
15246#line 1199
15247 __cil_tmp240 = __cil_tmp239 + 96;
15248#line 1199
15249 __cil_tmp241 = (unsigned long )us;
15250#line 1199
15251 __cil_tmp242 = __cil_tmp241 + 96;
15252#line 1199
15253 __cil_tmp243 = *((unsigned long *)__cil_tmp242);
15254#line 1199
15255 *((unsigned long *)__cil_tmp240) = __cil_tmp243 | 32UL;
15256 } else {
15257#line 1193
15258 goto _L___2;
15259 }
15260 } else {
15261#line 1193
15262 goto _L___2;
15263 }
15264 }
15265 }
15266 }
15267 } else {
15268#line 1193
15269 goto _L___2;
15270 }
15271 } else {
15272 _L___2:
15273#line 1202
15274 __cil_tmp244 = & _min1;
15275#line 1202
15276 *__cil_tmp244 = residue;
15277#line 1202
15278 __cil_tmp245 = & _min2;
15279#line 1202
15280 *__cil_tmp245 = transfer_length;
15281 {
15282#line 1202
15283 __cil_tmp246 = & _min2;
15284#line 1202
15285 __cil_tmp247 = *__cil_tmp246;
15286#line 1202
15287 __cil_tmp248 = & _min1;
15288#line 1202
15289 __cil_tmp249 = *__cil_tmp248;
15290#line 1202
15291 if (__cil_tmp249 < __cil_tmp247) {
15292#line 1202
15293 __cil_tmp250 = & _min1;
15294#line 1202
15295 tmp___11 = *__cil_tmp250;
15296 } else {
15297#line 1202
15298 __cil_tmp251 = & _min2;
15299#line 1202
15300 tmp___11 = *__cil_tmp251;
15301 }
15302 }
15303 {
15304#line 1202
15305 residue = tmp___11;
15306#line 1203
15307 tmp___12 = scsi_get_resid(srb);
15308#line 1203
15309 __cil_tmp252 = & _max1;
15310#line 1203
15311 *__cil_tmp252 = tmp___12;
15312#line 1203
15313 __cil_tmp253 = & _max2;
15314#line 1203
15315 *__cil_tmp253 = (int )residue;
15316 }
15317 {
15318#line 1203
15319 __cil_tmp254 = & _max2;
15320#line 1203
15321 __cil_tmp255 = *__cil_tmp254;
15322#line 1203
15323 __cil_tmp256 = & _max1;
15324#line 1203
15325 __cil_tmp257 = *__cil_tmp256;
15326#line 1203
15327 if (__cil_tmp257 > __cil_tmp255) {
15328#line 1203
15329 __cil_tmp258 = & _max1;
15330#line 1203
15331 tmp___13 = *__cil_tmp258;
15332 } else {
15333#line 1203
15334 __cil_tmp259 = & _max2;
15335#line 1203
15336 tmp___13 = *__cil_tmp259;
15337 }
15338 }
15339 {
15340#line 1203
15341 scsi_set_resid(srb, tmp___13);
15342 }
15343 }
15344 }
15345 } else {
15346
15347 }
15348 }
15349 } else {
15350
15351 }
15352 {
15353#line 1209
15354 __cil_tmp260 = (unsigned long )bcs;
15355#line 1209
15356 __cil_tmp261 = __cil_tmp260 + 12;
15357#line 1209
15358 __cil_tmp262 = *((__u8 *)__cil_tmp261);
15359#line 1210
15360 if ((int )__cil_tmp262 == 0) {
15361#line 1210
15362 goto case_0;
15363 } else
15364#line 1222
15365 if ((int )__cil_tmp262 == 1) {
15366#line 1222
15367 goto case_1;
15368 } else
15369#line 1226
15370 if ((int )__cil_tmp262 == 2) {
15371#line 1226
15372 goto case_2;
15373 } else
15374#line 1209
15375 if (0) {
15376 case_0:
15377#line 1212
15378 if (fake_sense) {
15379#line 1213
15380 __len___0 = 18UL;
15381#line 1213
15382 if (__len___0 >= 64UL) {
15383 {
15384#line 1213
15385 __cil_tmp263 = (unsigned long )srb;
15386#line 1213
15387 __cil_tmp264 = __cil_tmp263 + 136;
15388#line 1213
15389 __cil_tmp265 = *((unsigned char **)__cil_tmp264);
15390#line 1213
15391 __cil_tmp266 = (void *)__cil_tmp265;
15392#line 1213
15393 __cil_tmp267 = 0 * 1UL;
15394#line 1213
15395 __cil_tmp268 = (unsigned long )(usb_stor_sense_invalidCDB) + __cil_tmp267;
15396#line 1213
15397 __cil_tmp269 = (unsigned char *)__cil_tmp268;
15398#line 1213
15399 __cil_tmp270 = (void *)__cil_tmp269;
15400#line 1213
15401 __ret___0 = __memcpy(__cil_tmp266, __cil_tmp270, __len___0);
15402 }
15403 } else {
15404 {
15405#line 1213
15406 __cil_tmp271 = (unsigned long )srb;
15407#line 1213
15408 __cil_tmp272 = __cil_tmp271 + 136;
15409#line 1213
15410 __cil_tmp273 = *((unsigned char **)__cil_tmp272);
15411#line 1213
15412 __cil_tmp274 = (void *)__cil_tmp273;
15413#line 1213
15414 __cil_tmp275 = 0 * 1UL;
15415#line 1213
15416 __cil_tmp276 = (unsigned long )(usb_stor_sense_invalidCDB) + __cil_tmp275;
15417#line 1213
15418 __cil_tmp277 = (unsigned char *)__cil_tmp276;
15419#line 1213
15420 __cil_tmp278 = (void *)__cil_tmp277;
15421#line 1213
15422 __ret___0 = __builtin_memcpy(__cil_tmp274, __cil_tmp278, __len___0);
15423 }
15424 }
15425#line 1216
15426 return (2);
15427 } else {
15428
15429 }
15430#line 1220
15431 return (0);
15432 case_1:
15433#line 1224
15434 return (1);
15435 case_2:
15436#line 1230
15437 return (3);
15438 } else {
15439 switch_break: ;
15440 }
15441 }
15442#line 1234
15443 return (3);
15444}
15445}
15446#line 1236
15447extern void *__crc_usb_stor_Bulk_transport __attribute__((__weak__)) ;
15448#line 1236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15449static unsigned long __kcrctab_usb_stor_Bulk_transport __attribute__((__used__,
15450__unused__, __section__("___kcrctab_gpl+usb_stor_Bulk_transport"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_Bulk_transport));
15451#line 1236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15452static char __kstrtab_usb_stor_Bulk_transport[24] __attribute__((__section__("__ksymtab_strings"),
15453__aligned__(1))) =
15454#line 1236
15455 { (char )'u', (char )'s', (char const )'b', (char const )'_',
15456 (char )'s', (char )'t', (char const )'o', (char const )'r',
15457 (char )'_', (char )'B', (char const )'u', (char const )'l',
15458 (char )'k', (char )'_', (char const )'t', (char const )'r',
15459 (char )'a', (char )'n', (char const )'s', (char const )'p',
15460 (char )'o', (char )'r', (char const )'t', (char const )'\000'};
15461#line 1236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15462static struct kernel_symbol __ksymtab_usb_stor_Bulk_transport __attribute__((__used__,
15463__unused__, __section__("___ksymtab_gpl+usb_stor_Bulk_transport"))) = {(unsigned long )(& usb_stor_Bulk_transport), __kstrtab_usb_stor_Bulk_transport};
15464#line 1250 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15465static int usb_stor_reset_common(struct us_data *us , u8 request , u8 requesttype ,
15466 u16 value , u16 index , void *data , u16 size )
15467{ int result ;
15468 int result2 ;
15469 int tmp___7 ;
15470 long __ret ;
15471 wait_queue_t __wait ;
15472 struct task_struct *tmp___9 ;
15473 int tmp___10 ;
15474 struct task_struct *tmp___12 ;
15475 int tmp___13 ;
15476 int tmp___14 ;
15477 int tmp___16 ;
15478 unsigned long __cil_tmp23 ;
15479 unsigned long __cil_tmp24 ;
15480 unsigned long *__cil_tmp25 ;
15481 unsigned long volatile *__cil_tmp26 ;
15482 unsigned long __cil_tmp27 ;
15483 unsigned long __cil_tmp28 ;
15484 unsigned int __cil_tmp29 ;
15485 unsigned long __cil_tmp30 ;
15486 unsigned long __cil_tmp31 ;
15487 unsigned long *__cil_tmp32 ;
15488 unsigned long volatile *__cil_tmp33 ;
15489 wait_queue_t *__cil_tmp34 ;
15490 unsigned long __cil_tmp35 ;
15491 unsigned long __cil_tmp36 ;
15492 unsigned long __cil_tmp37 ;
15493 unsigned long __cil_tmp38 ;
15494 unsigned long __cil_tmp39 ;
15495 unsigned long __cil_tmp40 ;
15496 unsigned long __cil_tmp41 ;
15497 unsigned long __cil_tmp42 ;
15498 unsigned long __cil_tmp43 ;
15499 wait_queue_head_t *__cil_tmp44 ;
15500 unsigned long __cil_tmp45 ;
15501 unsigned long __cil_tmp46 ;
15502 unsigned long *__cil_tmp47 ;
15503 unsigned long volatile *__cil_tmp48 ;
15504 unsigned long __cil_tmp49 ;
15505 unsigned long __cil_tmp50 ;
15506 wait_queue_head_t *__cil_tmp51 ;
15507 unsigned long __cil_tmp52 ;
15508 unsigned long __cil_tmp53 ;
15509 unsigned long *__cil_tmp54 ;
15510 unsigned long volatile *__cil_tmp55 ;
15511 unsigned long __cil_tmp56 ;
15512 unsigned long __cil_tmp57 ;
15513 unsigned int __cil_tmp58 ;
15514 unsigned long __cil_tmp59 ;
15515 unsigned long __cil_tmp60 ;
15516 unsigned int __cil_tmp61 ;
15517
15518 {
15519 {
15520#line 1257
15521 __cil_tmp23 = (unsigned long )us;
15522#line 1257
15523 __cil_tmp24 = __cil_tmp23 + 104;
15524#line 1257
15525 __cil_tmp25 = (unsigned long *)__cil_tmp24;
15526#line 1257
15527 __cil_tmp26 = (unsigned long volatile *)__cil_tmp25;
15528#line 1257
15529 tmp___7 = ant_test_bit(3U, __cil_tmp26);
15530 }
15531#line 1257
15532 if (tmp___7) {
15533 {
15534#line 1258
15535 printk("<7>usb-storage: No reset during disconnect\n");
15536 }
15537#line 1259
15538 return (-5);
15539 } else {
15540
15541 }
15542 {
15543#line 1262
15544 __cil_tmp27 = (unsigned long )us;
15545#line 1262
15546 __cil_tmp28 = __cil_tmp27 + 120;
15547#line 1262
15548 __cil_tmp29 = *((unsigned int *)__cil_tmp28);
15549#line 1262
15550 result = usb_stor_control_msg(us, __cil_tmp29, request, requesttype, value, index,
15551 data, size, 1250);
15552 }
15553#line 1265
15554 if (result < 0) {
15555 {
15556#line 1266
15557 printk("<7>usb-storage: Soft reset failed: %d\n", result);
15558 }
15559#line 1267
15560 return (result);
15561 } else {
15562
15563 }
15564 {
15565#line 1272
15566 __ret = 1500L;
15567#line 1272
15568 __cil_tmp30 = (unsigned long )us;
15569#line 1272
15570 __cil_tmp31 = __cil_tmp30 + 104;
15571#line 1272
15572 __cil_tmp32 = (unsigned long *)__cil_tmp31;
15573#line 1272
15574 __cil_tmp33 = (unsigned long volatile *)__cil_tmp32;
15575#line 1272
15576 tmp___14 = ant_test_bit(3U, __cil_tmp33);
15577 }
15578#line 1272
15579 if (tmp___14) {
15580
15581 } else {
15582 {
15583#line 1272
15584 while (1) {
15585 while_continue: ;
15586 {
15587#line 1272
15588 tmp___9 = get_current();
15589#line 1272
15590 __cil_tmp34 = & __wait;
15591#line 1272
15592 *((unsigned int *)__cil_tmp34) = 0U;
15593#line 1272
15594 __cil_tmp35 = (unsigned long )(& __wait) + 8;
15595#line 1272
15596 *((void **)__cil_tmp35) = (void *)tmp___9;
15597#line 1272
15598 __cil_tmp36 = (unsigned long )(& __wait) + 16;
15599#line 1272
15600 *((int (**)(wait_queue_t *wait , unsigned int mode , int flags , void *key ))__cil_tmp36) = & autoremove_wake_function;
15601#line 1272
15602 __cil_tmp37 = (unsigned long )(& __wait) + 24;
15603#line 1272
15604 __cil_tmp38 = (unsigned long )(& __wait) + 24;
15605#line 1272
15606 *((struct list_head **)__cil_tmp37) = (struct list_head *)__cil_tmp38;
15607#line 1272
15608 __cil_tmp39 = 24 + 8;
15609#line 1272
15610 __cil_tmp40 = (unsigned long )(& __wait) + __cil_tmp39;
15611#line 1272
15612 __cil_tmp41 = (unsigned long )(& __wait) + 24;
15613#line 1272
15614 *((struct list_head **)__cil_tmp40) = (struct list_head *)__cil_tmp41;
15615 }
15616 {
15617#line 1272
15618 while (1) {
15619 while_continue___0: ;
15620 {
15621#line 1272
15622 __cil_tmp42 = (unsigned long )us;
15623#line 1272
15624 __cil_tmp43 = __cil_tmp42 + 496;
15625#line 1272
15626 __cil_tmp44 = (wait_queue_head_t *)__cil_tmp43;
15627#line 1272
15628 prepare_to_wait(__cil_tmp44, & __wait, 1);
15629#line 1272
15630 __cil_tmp45 = (unsigned long )us;
15631#line 1272
15632 __cil_tmp46 = __cil_tmp45 + 104;
15633#line 1272
15634 __cil_tmp47 = (unsigned long *)__cil_tmp46;
15635#line 1272
15636 __cil_tmp48 = (unsigned long volatile *)__cil_tmp47;
15637#line 1272
15638 tmp___10 = ant_test_bit(3U, __cil_tmp48);
15639 }
15640#line 1272
15641 if (tmp___10) {
15642#line 1272
15643 goto while_break___0;
15644 } else {
15645
15646 }
15647 {
15648#line 1272
15649 tmp___12 = get_current();
15650#line 1272
15651 tmp___13 = signal_pending(tmp___12);
15652 }
15653#line 1272
15654 if (tmp___13) {
15655
15656 } else {
15657 {
15658#line 1272
15659 __ret = schedule_timeout(__ret);
15660 }
15661#line 1272
15662 if (! __ret) {
15663#line 1272
15664 goto while_break___0;
15665 } else {
15666
15667 }
15668#line 1272
15669 goto __Cont;
15670 }
15671#line 1272
15672 __ret = -512L;
15673#line 1272
15674 goto while_break___0;
15675 __Cont: ;
15676 }
15677 while_break___0: ;
15678 }
15679 {
15680#line 1272
15681 __cil_tmp49 = (unsigned long )us;
15682#line 1272
15683 __cil_tmp50 = __cil_tmp49 + 496;
15684#line 1272
15685 __cil_tmp51 = (wait_queue_head_t *)__cil_tmp50;
15686#line 1272
15687 finish_wait(__cil_tmp51, & __wait);
15688 }
15689#line 1272
15690 goto while_break;
15691 }
15692 while_break: ;
15693 }
15694 }
15695 {
15696#line 1275
15697 __cil_tmp52 = (unsigned long )us;
15698#line 1275
15699 __cil_tmp53 = __cil_tmp52 + 104;
15700#line 1275
15701 __cil_tmp54 = (unsigned long *)__cil_tmp53;
15702#line 1275
15703 __cil_tmp55 = (unsigned long volatile *)__cil_tmp54;
15704#line 1275
15705 tmp___16 = ant_test_bit(3U, __cil_tmp55);
15706 }
15707#line 1275
15708 if (tmp___16) {
15709 {
15710#line 1276
15711 printk("<7>usb-storage: Reset interrupted by disconnect\n");
15712 }
15713#line 1277
15714 return (-5);
15715 } else {
15716
15717 }
15718 {
15719#line 1280
15720 printk("<7>usb-storage: Soft reset: clearing bulk-in endpoint halt\n");
15721#line 1281
15722 __cil_tmp56 = (unsigned long )us;
15723#line 1281
15724 __cil_tmp57 = __cil_tmp56 + 116;
15725#line 1281
15726 __cil_tmp58 = *((unsigned int *)__cil_tmp57);
15727#line 1281
15728 result = usb_stor_clear_halt(us, __cil_tmp58);
15729#line 1283
15730 printk("<7>usb-storage: Soft reset: clearing bulk-out endpoint halt\n");
15731#line 1284
15732 __cil_tmp59 = (unsigned long )us;
15733#line 1284
15734 __cil_tmp60 = __cil_tmp59 + 112;
15735#line 1284
15736 __cil_tmp61 = *((unsigned int *)__cil_tmp60);
15737#line 1284
15738 result2 = usb_stor_clear_halt(us, __cil_tmp61);
15739 }
15740#line 1287
15741 if (result >= 0) {
15742#line 1288
15743 result = result2;
15744 } else {
15745
15746 }
15747#line 1289
15748 if (result < 0) {
15749 {
15750#line 1290
15751 printk("<7>usb-storage: Soft reset failed\n");
15752 }
15753 } else {
15754 {
15755#line 1292
15756 printk("<7>usb-storage: Soft reset done\n");
15757 }
15758 }
15759#line 1293
15760 return (result);
15761}
15762}
15763#line 1300 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15764int usb_stor_CB_reset(struct us_data *us )
15765{ int tmp___7 ;
15766 unsigned long __cil_tmp3 ;
15767 unsigned long __cil_tmp4 ;
15768 unsigned char *__cil_tmp5 ;
15769 void *__cil_tmp6 ;
15770 size_t __cil_tmp7 ;
15771 unsigned long __cil_tmp8 ;
15772 unsigned long __cil_tmp9 ;
15773 unsigned char *__cil_tmp10 ;
15774 unsigned char *__cil_tmp11 ;
15775 unsigned long __cil_tmp12 ;
15776 unsigned long __cil_tmp13 ;
15777 unsigned char *__cil_tmp14 ;
15778 unsigned char *__cil_tmp15 ;
15779 u8 __cil_tmp16 ;
15780 int __cil_tmp17 ;
15781 int __cil_tmp18 ;
15782 u8 __cil_tmp19 ;
15783 u16 __cil_tmp20 ;
15784 unsigned long __cil_tmp21 ;
15785 unsigned long __cil_tmp22 ;
15786 u8 __cil_tmp23 ;
15787 u16 __cil_tmp24 ;
15788 unsigned long __cil_tmp25 ;
15789 unsigned long __cil_tmp26 ;
15790 unsigned char *__cil_tmp27 ;
15791 void *__cil_tmp28 ;
15792 u16 __cil_tmp29 ;
15793
15794 {
15795 {
15796#line 1302
15797 printk("<7>usb-storage: %s called\n", "usb_stor_CB_reset");
15798#line 1304
15799 __cil_tmp3 = (unsigned long )us;
15800#line 1304
15801 __cil_tmp4 = __cil_tmp3 + 376;
15802#line 1304
15803 __cil_tmp5 = *((unsigned char **)__cil_tmp4);
15804#line 1304
15805 __cil_tmp6 = (void *)__cil_tmp5;
15806#line 1304
15807 __cil_tmp7 = (size_t )12;
15808#line 1304
15809 memset(__cil_tmp6, 255, __cil_tmp7);
15810#line 1305
15811 __cil_tmp8 = (unsigned long )us;
15812#line 1305
15813 __cil_tmp9 = __cil_tmp8 + 376;
15814#line 1305
15815 __cil_tmp10 = *((unsigned char **)__cil_tmp9);
15816#line 1305
15817 __cil_tmp11 = __cil_tmp10 + 0;
15818#line 1305
15819 *__cil_tmp11 = (unsigned char)29;
15820#line 1306
15821 __cil_tmp12 = (unsigned long )us;
15822#line 1306
15823 __cil_tmp13 = __cil_tmp12 + 376;
15824#line 1306
15825 __cil_tmp14 = *((unsigned char **)__cil_tmp13);
15826#line 1306
15827 __cil_tmp15 = __cil_tmp14 + 1;
15828#line 1306
15829 *__cil_tmp15 = (unsigned char)4;
15830#line 1307
15831 __cil_tmp16 = (u8 )0;
15832#line 1307
15833 __cil_tmp17 = 1 << 5;
15834#line 1307
15835 __cil_tmp18 = __cil_tmp17 | 1;
15836#line 1307
15837 __cil_tmp19 = (u8 )__cil_tmp18;
15838#line 1307
15839 __cil_tmp20 = (u16 )0;
15840#line 1307
15841 __cil_tmp21 = (unsigned long )us;
15842#line 1307
15843 __cil_tmp22 = __cil_tmp21 + 159;
15844#line 1307
15845 __cil_tmp23 = *((u8 *)__cil_tmp22);
15846#line 1307
15847 __cil_tmp24 = (u16 )__cil_tmp23;
15848#line 1307
15849 __cil_tmp25 = (unsigned long )us;
15850#line 1307
15851 __cil_tmp26 = __cil_tmp25 + 376;
15852#line 1307
15853 __cil_tmp27 = *((unsigned char **)__cil_tmp26);
15854#line 1307
15855 __cil_tmp28 = (void *)__cil_tmp27;
15856#line 1307
15857 __cil_tmp29 = (u16 )12;
15858#line 1307
15859 tmp___7 = usb_stor_reset_common(us, __cil_tmp16, __cil_tmp19, __cil_tmp20, __cil_tmp24,
15860 __cil_tmp28, __cil_tmp29);
15861 }
15862#line 1307
15863 return (tmp___7);
15864}
15865}
15866#line 1311
15867extern void *__crc_usb_stor_CB_reset __attribute__((__weak__)) ;
15868#line 1311 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15869static unsigned long __kcrctab_usb_stor_CB_reset __attribute__((__used__,
15870__unused__, __section__("___kcrctab_gpl+usb_stor_CB_reset"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_CB_reset));
15871#line 1311 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15872static char __kstrtab_usb_stor_CB_reset[18] __attribute__((__section__("__ksymtab_strings"),
15873__aligned__(1))) =
15874#line 1311
15875 { (char )'u', (char )'s', (char const )'b', (char const )'_',
15876 (char )'s', (char )'t', (char const )'o', (char const )'r',
15877 (char )'_', (char )'C', (char const )'B', (char const )'_',
15878 (char )'r', (char )'e', (char const )'s', (char const )'e',
15879 (char )'t', (char )'\000'};
15880#line 1311 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15881static struct kernel_symbol __ksymtab_usb_stor_CB_reset __attribute__((__used__,
15882__unused__, __section__("___ksymtab_gpl+usb_stor_CB_reset"))) = {(unsigned long )(& usb_stor_CB_reset), __kstrtab_usb_stor_CB_reset};
15883#line 1316 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15884int usb_stor_Bulk_reset(struct us_data *us )
15885{ int tmp___7 ;
15886 u8 __cil_tmp3 ;
15887 int __cil_tmp4 ;
15888 int __cil_tmp5 ;
15889 u8 __cil_tmp6 ;
15890 u16 __cil_tmp7 ;
15891 unsigned long __cil_tmp8 ;
15892 unsigned long __cil_tmp9 ;
15893 u8 __cil_tmp10 ;
15894 u16 __cil_tmp11 ;
15895 void *__cil_tmp12 ;
15896 u16 __cil_tmp13 ;
15897
15898 {
15899 {
15900#line 1318
15901 printk("<7>usb-storage: %s called\n", "usb_stor_Bulk_reset");
15902#line 1320
15903 __cil_tmp3 = (u8 )255;
15904#line 1320
15905 __cil_tmp4 = 1 << 5;
15906#line 1320
15907 __cil_tmp5 = __cil_tmp4 | 1;
15908#line 1320
15909 __cil_tmp6 = (u8 )__cil_tmp5;
15910#line 1320
15911 __cil_tmp7 = (u16 )0;
15912#line 1320
15913 __cil_tmp8 = (unsigned long )us;
15914#line 1320
15915 __cil_tmp9 = __cil_tmp8 + 159;
15916#line 1320
15917 __cil_tmp10 = *((u8 *)__cil_tmp9);
15918#line 1320
15919 __cil_tmp11 = (u16 )__cil_tmp10;
15920#line 1320
15921 __cil_tmp12 = (void *)0;
15922#line 1320
15923 __cil_tmp13 = (u16 )0;
15924#line 1320
15925 tmp___7 = usb_stor_reset_common(us, __cil_tmp3, __cil_tmp6, __cil_tmp7, __cil_tmp11,
15926 __cil_tmp12, __cil_tmp13);
15927 }
15928#line 1320
15929 return (tmp___7);
15930}
15931}
15932#line 1324
15933extern void *__crc_usb_stor_Bulk_reset __attribute__((__weak__)) ;
15934#line 1324 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15935static unsigned long __kcrctab_usb_stor_Bulk_reset __attribute__((__used__,
15936__unused__, __section__("___kcrctab_gpl+usb_stor_Bulk_reset"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_Bulk_reset));
15937#line 1324 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15938static char __kstrtab_usb_stor_Bulk_reset[20] __attribute__((__section__("__ksymtab_strings"),
15939__aligned__(1))) =
15940#line 1324
15941 { (char )'u', (char )'s', (char const )'b', (char const )'_',
15942 (char )'s', (char )'t', (char const )'o', (char const )'r',
15943 (char )'_', (char )'B', (char const )'u', (char const )'l',
15944 (char )'k', (char )'_', (char const )'r', (char const )'e',
15945 (char )'s', (char )'e', (char const )'t', (char const )'\000'};
15946#line 1324 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15947static struct kernel_symbol __ksymtab_usb_stor_Bulk_reset __attribute__((__used__,
15948__unused__, __section__("___ksymtab_gpl+usb_stor_Bulk_reset"))) = {(unsigned long )(& usb_stor_Bulk_reset), __kstrtab_usb_stor_Bulk_reset};
15949#line 1329 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/transport.c"
15950int usb_stor_port_reset(struct us_data *us )
15951{ int result ;
15952 int tmp___7 ;
15953 unsigned long __cil_tmp5 ;
15954 unsigned long __cil_tmp6 ;
15955 struct usb_device *__cil_tmp7 ;
15956 unsigned long __cil_tmp8 ;
15957 unsigned long __cil_tmp9 ;
15958 u32 __cil_tmp10 ;
15959 unsigned long __cil_tmp11 ;
15960 unsigned long __cil_tmp12 ;
15961 struct usb_device *__cil_tmp13 ;
15962 unsigned long __cil_tmp14 ;
15963 unsigned long __cil_tmp15 ;
15964 struct usb_interface *__cil_tmp16 ;
15965 struct usb_interface *__cil_tmp17 ;
15966 unsigned long __cil_tmp18 ;
15967 unsigned long __cil_tmp19 ;
15968 unsigned long *__cil_tmp20 ;
15969 unsigned long volatile *__cil_tmp21 ;
15970 unsigned long __cil_tmp22 ;
15971 unsigned long __cil_tmp23 ;
15972 struct usb_device *__cil_tmp24 ;
15973 unsigned long __cil_tmp25 ;
15974 unsigned long __cil_tmp26 ;
15975 struct usb_device *__cil_tmp27 ;
15976 unsigned long __cil_tmp28 ;
15977 unsigned long __cil_tmp29 ;
15978 struct device *__cil_tmp30 ;
15979
15980 {
15981 {
15982#line 1334
15983 __cil_tmp5 = (unsigned long )us;
15984#line 1334
15985 __cil_tmp6 = __cil_tmp5 + 72;
15986#line 1334
15987 __cil_tmp7 = *((struct usb_device **)__cil_tmp6);
15988#line 1334
15989 __cil_tmp8 = (unsigned long )__cil_tmp7;
15990#line 1334
15991 __cil_tmp9 = __cil_tmp8 + 1304;
15992#line 1334
15993 __cil_tmp10 = *((u32 *)__cil_tmp9);
15994#line 1334
15995 if (__cil_tmp10 & 16U) {
15996#line 1335
15997 return (-1);
15998 } else {
15999
16000 }
16001 }
16002 {
16003#line 1337
16004 __cil_tmp11 = (unsigned long )us;
16005#line 1337
16006 __cil_tmp12 = __cil_tmp11 + 72;
16007#line 1337
16008 __cil_tmp13 = *((struct usb_device **)__cil_tmp12);
16009#line 1337
16010 __cil_tmp14 = (unsigned long )us;
16011#line 1337
16012 __cil_tmp15 = __cil_tmp14 + 80;
16013#line 1337
16014 __cil_tmp16 = *((struct usb_interface **)__cil_tmp15);
16015#line 1337
16016 __cil_tmp17 = (struct usb_interface *)__cil_tmp16;
16017#line 1337
16018 result = usb_lock_device_for_reset(__cil_tmp13, __cil_tmp17);
16019 }
16020#line 1338
16021 if (result < 0) {
16022 {
16023#line 1339
16024 printk("<7>usb-storage: unable to lock device for reset: %d\n", result);
16025 }
16026 } else {
16027 {
16028#line 1342
16029 __cil_tmp18 = (unsigned long )us;
16030#line 1342
16031 __cil_tmp19 = __cil_tmp18 + 104;
16032#line 1342
16033 __cil_tmp20 = (unsigned long *)__cil_tmp19;
16034#line 1342
16035 __cil_tmp21 = (unsigned long volatile *)__cil_tmp20;
16036#line 1342
16037 tmp___7 = ant_test_bit(3U, __cil_tmp21);
16038 }
16039#line 1342
16040 if (tmp___7) {
16041 {
16042#line 1343
16043 result = -5;
16044#line 1344
16045 printk("<7>usb-storage: No reset during disconnect\n");
16046 }
16047 } else {
16048 {
16049#line 1346
16050 __cil_tmp22 = (unsigned long )us;
16051#line 1346
16052 __cil_tmp23 = __cil_tmp22 + 72;
16053#line 1346
16054 __cil_tmp24 = *((struct usb_device **)__cil_tmp23);
16055#line 1346
16056 result = usb_reset_device(__cil_tmp24);
16057#line 1347
16058 printk("<7>usb-storage: usb_reset_device returns %d\n", result);
16059 }
16060 }
16061 {
16062#line 1350
16063 __cil_tmp25 = (unsigned long )us;
16064#line 1350
16065 __cil_tmp26 = __cil_tmp25 + 72;
16066#line 1350
16067 __cil_tmp27 = *((struct usb_device **)__cil_tmp26);
16068#line 1350
16069 __cil_tmp28 = (unsigned long )__cil_tmp27;
16070#line 1350
16071 __cil_tmp29 = __cil_tmp28 + 136;
16072#line 1350
16073 __cil_tmp30 = (struct device *)__cil_tmp29;
16074#line 1350
16075 device_unlock(__cil_tmp30);
16076 }
16077 }
16078#line 1352
16079 return (result);
16080}
16081}
16082#line 49 "include/linux/dynamic_debug.h"
16083extern int ( __dynamic_dev_dbg)(struct _ddebug *descriptor ,
16084 struct device *dev ,
16085 char *fmt , ...) ;
16086#line 307 "include/linux/kernel.h"
16087extern unsigned long simple_strtoul(char * , char ** , unsigned int ) ;
16088#line 322
16089extern int ( snprintf)(char *buf , size_t size , char *fmt
16090 , ...) ;
16091#line 61 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
16092extern unsigned long strlen(char *s ) ;
16093#line 27 "include/linux/err.h"
16094__inline static long __attribute__((__warn_unused_result__)) PTR_ERR(void *ptr ) __attribute__((__no_instrument_function__)) ;
16095#line 27 "include/linux/err.h"
16096__inline static long __attribute__((__warn_unused_result__)) PTR_ERR(void *ptr )
16097{
16098
16099 {
16100#line 29
16101 return ((long )ptr);
16102}
16103}
16104#line 32
16105__inline static long __attribute__((__warn_unused_result__)) IS_ERR(void *ptr ) __attribute__((__no_instrument_function__)) ;
16106#line 32 "include/linux/err.h"
16107__inline static long __attribute__((__warn_unused_result__)) IS_ERR(void *ptr )
16108{ long tmp ;
16109 unsigned long __cil_tmp3 ;
16110 int __cil_tmp4 ;
16111 int __cil_tmp5 ;
16112 int __cil_tmp6 ;
16113 long __cil_tmp7 ;
16114
16115 {
16116 {
16117#line 34
16118 __cil_tmp3 = (unsigned long )ptr;
16119#line 34
16120 __cil_tmp4 = __cil_tmp3 >= 0xfffffffffffff001UL;
16121#line 34
16122 __cil_tmp5 = ! __cil_tmp4;
16123#line 34
16124 __cil_tmp6 = ! __cil_tmp5;
16125#line 34
16126 __cil_tmp7 = (long )__cil_tmp6;
16127#line 34
16128 tmp = __builtin_expect(__cil_tmp7, 0L);
16129 }
16130#line 34
16131 return (tmp);
16132}
16133}
16134#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/cmpxchg.h"
16135extern void __xchg_wrong_size(void) ;
16136#line 24 "include/linux/list.h"
16137__inline static void INIT_LIST_HEAD(struct list_head *list ) __attribute__((__no_instrument_function__)) ;
16138#line 24 "include/linux/list.h"
16139__inline static void INIT_LIST_HEAD(struct list_head *list )
16140{ unsigned long __cil_tmp2 ;
16141 unsigned long __cil_tmp3 ;
16142
16143 {
16144#line 26
16145 *((struct list_head **)list) = list;
16146#line 27
16147 __cil_tmp2 = (unsigned long )list;
16148#line 27
16149 __cil_tmp3 = __cil_tmp2 + 8;
16150#line 27
16151 *((struct list_head **)__cil_tmp3) = list;
16152#line 28
16153 return;
16154}
16155}
16156#line 82 "include/linux/jiffies.h"
16157extern unsigned long volatile jiffies __attribute__((__section__(".data"))) ;
16158#line 155 "include/linux/wait.h"
16159extern void __wake_up(wait_queue_head_t *q , unsigned int mode , int nr , void *key ) ;
16160#line 76 "include/linux/completion.h"
16161static struct lock_class_key __key___0 ;
16162#line 73
16163__inline static void init_completion___0(struct completion *x ) __attribute__((__no_instrument_function__)) ;
16164#line 73 "include/linux/completion.h"
16165__inline static void init_completion___0(struct completion *x )
16166{ unsigned long __cil_tmp2 ;
16167 unsigned long __cil_tmp3 ;
16168 wait_queue_head_t *__cil_tmp4 ;
16169
16170 {
16171#line 75
16172 *((unsigned int *)x) = 0U;
16173 {
16174#line 76
16175 while (1) {
16176 while_continue: ;
16177 {
16178#line 76
16179 __cil_tmp2 = (unsigned long )x;
16180#line 76
16181 __cil_tmp3 = __cil_tmp2 + 8;
16182#line 76
16183 __cil_tmp4 = (wait_queue_head_t *)__cil_tmp3;
16184#line 76
16185 __init_waitqueue_head(__cil_tmp4, "&x->wait", & __key___0);
16186 }
16187#line 76
16188 goto while_break;
16189 }
16190 while_break: ;
16191 }
16192#line 77
16193 return;
16194}
16195}
16196#line 80
16197extern int wait_for_completion_interruptible(struct completion *x ) ;
16198#line 115 "include/linux/mutex.h"
16199extern void __mutex_init(struct mutex *lock , char *name , struct lock_class_key *key ) ;
16200#line 91 "include/linux/timer.h"
16201extern void init_timer_key(struct timer_list *timer , char *name , struct lock_class_key *key ) ;
16202#line 156 "include/linux/workqueue.h"
16203extern void __init_work(struct work_struct *work , int onstack ) ;
16204#line 300
16205extern struct workqueue_struct *system_freezable_wq ;
16206#line 371
16207extern int queue_delayed_work(struct workqueue_struct *wq , struct delayed_work *work ,
16208 unsigned long delay ) ;
16209#line 396
16210extern bool cancel_delayed_work_sync(struct delayed_work *dwork ) ;
16211#line 362 "include/linux/sched.h"
16212extern void schedule(void) ;
16213#line 2194
16214extern int wake_up_process(struct task_struct *tsk ) ;
16215#line 80 "include/linux/kobject.h"
16216__inline static char *kobject_name(struct kobject *kobj ) __attribute__((__no_instrument_function__)) ;
16217#line 80 "include/linux/kobject.h"
16218__inline static char *kobject_name(struct kobject *kobj )
16219{ char * __cil_tmp2 ;
16220
16221 {
16222 {
16223#line 82
16224 __cil_tmp2 = *((char * *)kobj);
16225#line 82
16226 return ((char *)__cil_tmp2);
16227 }
16228}
16229}
16230#line 361 "include/linux/moduleparam.h"
16231extern struct kernel_param_ops param_ops_uint ;
16232#line 439
16233extern struct kernel_param_ops param_ops_string ;
16234#line 67 "include/linux/module.h"
16235int init_module(void) ;
16236#line 68
16237void cleanup_module(void) ;
16238#line 161 "include/linux/slab.h"
16239extern void kfree(void * ) ;
16240#line 221 "include/linux/slub_def.h"
16241extern void *__kmalloc(size_t size , gfp_t flags ) ;
16242#line 268
16243__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
16244 gfp_t flags ) __attribute__((__no_instrument_function__)) ;
16245#line 268 "include/linux/slub_def.h"
16246__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
16247 gfp_t flags )
16248{ void *tmp___10 ;
16249
16250 {
16251 {
16252#line 283
16253 tmp___10 = __kmalloc(size, flags);
16254 }
16255#line 283
16256 return (tmp___10);
16257}
16258}
16259#line 7 "include/linux/kthread.h"
16260extern struct task_struct *( kthread_create_on_node)(int (*threadfn)(void *data ) ,
16261 void *data ,
16262 int node ,
16263 char *namefmt
16264 , ...) ;
16265#line 36
16266extern int kthread_stop(struct task_struct *k ) ;
16267#line 37
16268extern int kthread_should_stop(void) ;
16269#line 99 "include/linux/utsname.h"
16270__inline static struct new_utsname *utsname(void) __attribute__((__no_instrument_function__)) ;
16271#line 99 "include/linux/utsname.h"
16272__inline static struct new_utsname *utsname(void)
16273{ struct task_struct *tmp___7 ;
16274 unsigned long __cil_tmp2 ;
16275 unsigned long __cil_tmp3 ;
16276 struct nsproxy *__cil_tmp4 ;
16277 unsigned long __cil_tmp5 ;
16278 unsigned long __cil_tmp6 ;
16279 struct uts_namespace *__cil_tmp7 ;
16280 unsigned long __cil_tmp8 ;
16281 unsigned long __cil_tmp9 ;
16282
16283 {
16284 {
16285#line 101
16286 tmp___7 = get_current();
16287 }
16288 {
16289#line 101
16290 __cil_tmp2 = (unsigned long )tmp___7;
16291#line 101
16292 __cil_tmp3 = __cil_tmp2 + 1816;
16293#line 101
16294 __cil_tmp4 = *((struct nsproxy **)__cil_tmp3);
16295#line 101
16296 __cil_tmp5 = (unsigned long )__cil_tmp4;
16297#line 101
16298 __cil_tmp6 = __cil_tmp5 + 8;
16299#line 101
16300 __cil_tmp7 = *((struct uts_namespace **)__cil_tmp6);
16301#line 101
16302 __cil_tmp8 = (unsigned long )__cil_tmp7;
16303#line 101
16304 __cil_tmp9 = __cil_tmp8 + 4;
16305#line 101
16306 return ((struct new_utsname *)__cil_tmp9);
16307 }
16308}
16309}
16310#line 685 "include/linux/device.h"
16311__inline static char *dev_name(struct device *dev ) __attribute__((__no_instrument_function__)) ;
16312#line 685 "include/linux/device.h"
16313__inline static char *dev_name(struct device *dev )
16314{ char *tmp___7 ;
16315 unsigned long __cil_tmp3 ;
16316 unsigned long __cil_tmp4 ;
16317 unsigned long __cil_tmp5 ;
16318 unsigned long __cil_tmp6 ;
16319 char * __cil_tmp7 ;
16320 unsigned long __cil_tmp8 ;
16321 unsigned long __cil_tmp9 ;
16322 struct kobject *__cil_tmp10 ;
16323
16324 {
16325 {
16326#line 688
16327 __cil_tmp3 = (unsigned long )dev;
16328#line 688
16329 __cil_tmp4 = __cil_tmp3 + 80;
16330#line 688
16331 if (*((char * *)__cil_tmp4)) {
16332 {
16333#line 689
16334 __cil_tmp5 = (unsigned long )dev;
16335#line 689
16336 __cil_tmp6 = __cil_tmp5 + 80;
16337#line 689
16338 __cil_tmp7 = *((char * *)__cil_tmp6);
16339#line 689
16340 return ((char *)__cil_tmp7);
16341 }
16342 } else {
16343
16344 }
16345 }
16346 {
16347#line 691
16348 __cil_tmp8 = (unsigned long )dev;
16349#line 691
16350 __cil_tmp9 = __cil_tmp8 + 16;
16351#line 691
16352 __cil_tmp10 = (struct kobject *)__cil_tmp9;
16353#line 691
16354 tmp___7 = kobject_name(__cil_tmp10);
16355 }
16356#line 691
16357 return (tmp___7);
16358}
16359}
16360#line 792
16361extern void *dev_get_drvdata(struct device *dev ) ;
16362#line 793
16363extern int dev_set_drvdata(struct device *dev , void *data ) ;
16364#line 893
16365extern int ( dev_warn)(struct device *dev , char *fmt
16366 , ...) ;
16367#line 895
16368extern int ( dev_notice)(struct device *dev , char *fmt
16369 , ...) ;
16370#line 897
16371extern int ( _dev_info)(struct device *dev , char *fmt
16372 , ...) ;
16373#line 412 "include/linux/usb/ch9.h"
16374__inline static int usb_endpoint_num(struct usb_endpoint_descriptor *epd ) __attribute__((__no_instrument_function__)) ;
16375#line 412 "include/linux/usb/ch9.h"
16376__inline static int usb_endpoint_num(struct usb_endpoint_descriptor *epd )
16377{ unsigned long __cil_tmp2 ;
16378 unsigned long __cil_tmp3 ;
16379 __u8 __cil_tmp4 ;
16380 int __cil_tmp5 ;
16381 int __cil_tmp6 ;
16382
16383 {
16384 {
16385#line 414
16386 __cil_tmp2 = (unsigned long )epd;
16387#line 414
16388 __cil_tmp3 = __cil_tmp2 + 2;
16389#line 414
16390 __cil_tmp4 = *((__u8 *)__cil_tmp3);
16391#line 414
16392 __cil_tmp5 = (int )__cil_tmp4;
16393#line 414
16394 __cil_tmp6 = __cil_tmp5 & 15;
16395#line 414
16396 return ((int )__cil_tmp6);
16397 }
16398}
16399}
16400#line 435
16401__inline static int usb_endpoint_dir_in(struct usb_endpoint_descriptor *epd ) __attribute__((__no_instrument_function__)) ;
16402#line 435 "include/linux/usb/ch9.h"
16403__inline static int usb_endpoint_dir_in(struct usb_endpoint_descriptor *epd )
16404{ unsigned long __cil_tmp2 ;
16405 unsigned long __cil_tmp3 ;
16406 __u8 __cil_tmp4 ;
16407 int __cil_tmp5 ;
16408 int __cil_tmp6 ;
16409
16410 {
16411 {
16412#line 437
16413 __cil_tmp2 = (unsigned long )epd;
16414#line 437
16415 __cil_tmp3 = __cil_tmp2 + 2;
16416#line 437
16417 __cil_tmp4 = *((__u8 *)__cil_tmp3);
16418#line 437
16419 __cil_tmp5 = (int )__cil_tmp4;
16420#line 437
16421 __cil_tmp6 = __cil_tmp5 & 128;
16422#line 437
16423 return (__cil_tmp6 == 128);
16424 }
16425}
16426}
16427#line 458
16428__inline static int usb_endpoint_xfer_bulk(struct usb_endpoint_descriptor *epd ) __attribute__((__no_instrument_function__)) ;
16429#line 458 "include/linux/usb/ch9.h"
16430__inline static int usb_endpoint_xfer_bulk(struct usb_endpoint_descriptor *epd )
16431{ unsigned long __cil_tmp2 ;
16432 unsigned long __cil_tmp3 ;
16433 __u8 __cil_tmp4 ;
16434 int __cil_tmp5 ;
16435 int __cil_tmp6 ;
16436
16437 {
16438 {
16439#line 461
16440 __cil_tmp2 = (unsigned long )epd;
16441#line 461
16442 __cil_tmp3 = __cil_tmp2 + 3;
16443#line 461
16444 __cil_tmp4 = *((__u8 *)__cil_tmp3);
16445#line 461
16446 __cil_tmp5 = (int )__cil_tmp4;
16447#line 461
16448 __cil_tmp6 = __cil_tmp5 & 3;
16449#line 461
16450 return (__cil_tmp6 == 2);
16451 }
16452}
16453}
16454#line 485
16455__inline static int usb_endpoint_xfer_int(struct usb_endpoint_descriptor *epd ) __attribute__((__no_instrument_function__)) ;
16456#line 485 "include/linux/usb/ch9.h"
16457__inline static int usb_endpoint_xfer_int(struct usb_endpoint_descriptor *epd )
16458{ unsigned long __cil_tmp2 ;
16459 unsigned long __cil_tmp3 ;
16460 __u8 __cil_tmp4 ;
16461 int __cil_tmp5 ;
16462 int __cil_tmp6 ;
16463
16464 {
16465 {
16466#line 488
16467 __cil_tmp2 = (unsigned long )epd;
16468#line 488
16469 __cil_tmp3 = __cil_tmp2 + 3;
16470#line 488
16471 __cil_tmp4 = *((__u8 *)__cil_tmp3);
16472#line 488
16473 __cil_tmp5 = (int )__cil_tmp4;
16474#line 488
16475 __cil_tmp6 = __cil_tmp5 & 3;
16476#line 488
16477 return (__cil_tmp6 == 3);
16478 }
16479}
16480}
16481#line 539
16482__inline static int usb_endpoint_is_int_in(struct usb_endpoint_descriptor *epd ) __attribute__((__no_instrument_function__)) ;
16483#line 539 "include/linux/usb/ch9.h"
16484__inline static int usb_endpoint_is_int_in(struct usb_endpoint_descriptor *epd )
16485{ int tmp___7 ;
16486 int tmp___8 ;
16487 int tmp___9 ;
16488
16489 {
16490 {
16491#line 542
16492 tmp___7 = usb_endpoint_xfer_int(epd);
16493 }
16494#line 542
16495 if (tmp___7) {
16496 {
16497#line 542
16498 tmp___8 = usb_endpoint_dir_in(epd);
16499 }
16500#line 542
16501 if (tmp___8) {
16502#line 542
16503 tmp___9 = 1;
16504 } else {
16505#line 542
16506 tmp___9 = 0;
16507 }
16508 } else {
16509#line 542
16510 tmp___9 = 0;
16511 }
16512#line 542
16513 return (tmp___9);
16514}
16515}
16516#line 98 "include/linux/pm_runtime.h"
16517__inline static void pm_runtime_mark_last_busy(struct device *dev ) __attribute__((__no_instrument_function__)) ;
16518#line 98 "include/linux/pm_runtime.h"
16519__inline static void pm_runtime_mark_last_busy(struct device *dev )
16520{ unsigned long __cil_tmp2 ;
16521 unsigned long __cil_tmp3 ;
16522 unsigned long __cil_tmp4 ;
16523 unsigned long *__cil_tmp5 ;
16524 unsigned long volatile *__cil_tmp6 ;
16525
16526 {
16527#line 100
16528 __cil_tmp2 = 192 + 304;
16529#line 100
16530 __cil_tmp3 = (unsigned long )dev;
16531#line 100
16532 __cil_tmp4 = __cil_tmp3 + __cil_tmp2;
16533#line 100
16534 __cil_tmp5 = (unsigned long *)__cil_tmp4;
16535#line 100
16536 __cil_tmp6 = (unsigned long volatile *)__cil_tmp5;
16537#line 100
16538 *__cil_tmp6 = jiffies;
16539#line 101
16540 return;
16541}
16542}
16543#line 191 "include/linux/usb.h"
16544__inline static void *usb_get_intfdata(struct usb_interface *intf ) __attribute__((__no_instrument_function__)) ;
16545#line 191 "include/linux/usb.h"
16546__inline static void *usb_get_intfdata(struct usb_interface *intf )
16547{ void *tmp___7 ;
16548 unsigned long __cil_tmp3 ;
16549 unsigned long __cil_tmp4 ;
16550 struct device *__cil_tmp5 ;
16551 struct device *__cil_tmp6 ;
16552
16553 {
16554 {
16555#line 193
16556 __cil_tmp3 = (unsigned long )intf;
16557#line 193
16558 __cil_tmp4 = __cil_tmp3 + 48;
16559#line 193
16560 __cil_tmp5 = (struct device *)__cil_tmp4;
16561#line 193
16562 __cil_tmp6 = (struct device *)__cil_tmp5;
16563#line 193
16564 tmp___7 = dev_get_drvdata(__cil_tmp6);
16565 }
16566#line 193
16567 return (tmp___7);
16568}
16569}
16570#line 196
16571__inline static void usb_set_intfdata(struct usb_interface *intf , void *data ) __attribute__((__no_instrument_function__)) ;
16572#line 196 "include/linux/usb.h"
16573__inline static void usb_set_intfdata(struct usb_interface *intf , void *data )
16574{ unsigned long __cil_tmp3 ;
16575 unsigned long __cil_tmp4 ;
16576 struct device *__cil_tmp5 ;
16577
16578 {
16579 {
16580#line 198
16581 __cil_tmp3 = (unsigned long )intf;
16582#line 198
16583 __cil_tmp4 = __cil_tmp3 + 48;
16584#line 198
16585 __cil_tmp5 = (struct device *)__cil_tmp4;
16586#line 198
16587 dev_set_drvdata(__cil_tmp5, data);
16588 }
16589#line 199
16590 return;
16591}
16592}
16593#line 523
16594__inline static struct usb_device *interface_to_usbdev(struct usb_interface *intf ) __attribute__((__no_instrument_function__)) ;
16595#line 523 "include/linux/usb.h"
16596__inline static struct usb_device *interface_to_usbdev(struct usb_interface *intf )
16597{ struct device *__mptr ;
16598 unsigned long __cil_tmp3 ;
16599 unsigned long __cil_tmp4 ;
16600 struct device *__cil_tmp5 ;
16601 struct usb_device *__cil_tmp6 ;
16602 unsigned long __cil_tmp7 ;
16603 unsigned long __cil_tmp8 ;
16604 struct device *__cil_tmp9 ;
16605 unsigned int __cil_tmp10 ;
16606 char *__cil_tmp11 ;
16607 char *__cil_tmp12 ;
16608
16609 {
16610#line 525
16611 __cil_tmp3 = (unsigned long )intf;
16612#line 525
16613 __cil_tmp4 = __cil_tmp3 + 48;
16614#line 525
16615 __cil_tmp5 = *((struct device **)__cil_tmp4);
16616#line 525
16617 __mptr = (struct device *)__cil_tmp5;
16618 {
16619#line 525
16620 __cil_tmp6 = (struct usb_device *)0;
16621#line 525
16622 __cil_tmp7 = (unsigned long )__cil_tmp6;
16623#line 525
16624 __cil_tmp8 = __cil_tmp7 + 136;
16625#line 525
16626 __cil_tmp9 = (struct device *)__cil_tmp8;
16627#line 525
16628 __cil_tmp10 = (unsigned int )__cil_tmp9;
16629#line 525
16630 __cil_tmp11 = (char *)__mptr;
16631#line 525
16632 __cil_tmp12 = __cil_tmp11 - __cil_tmp10;
16633#line 525
16634 return ((struct usb_device *)__cil_tmp12);
16635 }
16636}
16637}
16638#line 549
16639extern void usb_autopm_put_interface(struct usb_interface *intf ) ;
16640#line 552
16641extern void usb_autopm_get_interface_no_resume(struct usb_interface *intf ) ;
16642#line 553
16643extern void usb_autopm_put_interface_no_suspend(struct usb_interface *intf ) ;
16644#line 555
16645__inline static void usb_mark_last_busy(struct usb_device *udev ) __attribute__((__no_instrument_function__)) ;
16646#line 555 "include/linux/usb.h"
16647__inline static void usb_mark_last_busy(struct usb_device *udev )
16648{ unsigned long __cil_tmp2 ;
16649 unsigned long __cil_tmp3 ;
16650 struct device *__cil_tmp4 ;
16651
16652 {
16653 {
16654#line 557
16655 __cil_tmp2 = (unsigned long )udev;
16656#line 557
16657 __cil_tmp3 = __cil_tmp2 + 136;
16658#line 557
16659 __cil_tmp4 = (struct device *)__cil_tmp3;
16660#line 557
16661 pm_runtime_mark_last_busy(__cil_tmp4);
16662 }
16663#line 558
16664 return;
16665}
16666}
16667#line 955
16668extern int usb_register_driver(struct usb_driver * , struct module * , char * ) ;
16669#line 962
16670extern void usb_deregister(struct usb_driver * ) ;
16671#line 1373
16672extern struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags ) ;
16673#line 1374
16674extern void usb_free_urb(struct urb *urb ) ;
16675#line 1418
16676extern void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
16677 dma_addr_t *dma ) ;
16678#line 1420
16679extern void usb_free_coherent(struct usb_device *dev , size_t size , void *addr ,
16680 dma_addr_t dma ) ;
16681#line 1567
16682__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint ) __attribute__((__no_instrument_function__)) ;
16683#line 1567 "include/linux/usb.h"
16684__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint )
16685{ unsigned int __cil_tmp3 ;
16686 int __cil_tmp4 ;
16687 int __cil_tmp5 ;
16688 unsigned int __cil_tmp6 ;
16689
16690 {
16691 {
16692#line 1570
16693 __cil_tmp3 = endpoint << 15;
16694#line 1570
16695 __cil_tmp4 = *((int *)dev);
16696#line 1570
16697 __cil_tmp5 = __cil_tmp4 << 8;
16698#line 1570
16699 __cil_tmp6 = (unsigned int )__cil_tmp5;
16700#line 1570
16701 return (__cil_tmp6 | __cil_tmp3);
16702 }
16703}
16704}
16705#line 87 "include/linux/usb_usual.h"
16706extern int usb_usual_ignore_device(struct usb_interface *intf ) ;
16707#line 88
16708extern struct usb_device_id usb_storage_usb_ids[] ;
16709#line 92
16710extern void usb_usual_set_present(int type ) ;
16711#line 93
16712extern void usb_usual_clear_present(int type ) ;
16713#line 94
16714extern int usb_usual_check_type(struct usb_device_id * , int type ) ;
16715#line 778 "include/scsi/scsi_host.h"
16716extern struct Scsi_Host *scsi_host_alloc(struct scsi_host_template * , int ) ;
16717#line 779
16718extern int __attribute__((__warn_unused_result__)) scsi_add_host_with_dma(struct Scsi_Host * ,
16719 struct device * ,
16720 struct device * ) ;
16721#line 782
16722extern void scsi_scan_host(struct Scsi_Host * ) ;
16723#line 784
16724extern void scsi_remove_host(struct Scsi_Host * ) ;
16725#line 786
16726extern void scsi_host_put(struct Scsi_Host *t ) ;
16727#line 793
16728__inline static int __attribute__((__warn_unused_result__)) scsi_add_host(struct Scsi_Host *host ,
16729 struct device *dev ) __attribute__((__no_instrument_function__)) ;
16730#line 793 "include/scsi/scsi_host.h"
16731__inline static int __attribute__((__warn_unused_result__)) scsi_add_host(struct Scsi_Host *host ,
16732 struct device *dev )
16733{ int tmp___7 ;
16734
16735 {
16736 {
16737#line 796
16738 tmp___7 = (int )scsi_add_host_with_dma(host, dev, dev);
16739 }
16740#line 796
16741 return (tmp___7);
16742}
16743}
16744#line 175 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/usb.h"
16745void fill_inquiry_response(struct us_data *us , unsigned char *data , unsigned int data_len ) ;
16746#line 185
16747int usb_stor_suspend(struct usb_interface *iface , int message_event12 ) ;
16748#line 186
16749int usb_stor_resume(struct usb_interface *iface ) ;
16750#line 187
16751int usb_stor_reset_resume(struct usb_interface *iface ) ;
16752#line 194
16753int usb_stor_pre_reset(struct usb_interface *iface ) ;
16754#line 195
16755int usb_stor_post_reset(struct usb_interface *iface ) ;
16756#line 197
16757int usb_stor_probe1(struct us_data **pus , struct usb_interface *intf , struct usb_device_id *id ,
16758 struct us_unusual_dev *unusual_dev ) ;
16759#line 201
16760int usb_stor_probe2(struct us_data *us ) ;
16761#line 202
16762void usb_stor_disconnect(struct usb_interface *intf ) ;
16763#line 50 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/debug.h"
16764void usb_stor_show_command(struct scsi_cmnd *srb ) ;
16765#line 43 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/initializers.h"
16766int usb_stor_euscsi_init(struct us_data *us ) ;
16767#line 47
16768int usb_stor_ucr61s2b_init(struct us_data *us ) ;
16769#line 50
16770int usb_stor_huawei_e220_init(struct us_data *us ) ;
16771#line 3 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/sierra_ms.h"
16772int sierra_ms_init(struct us_data *us ) ;
16773#line 3 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/usb/storage/option_ms.h"
16774int option_ms_init(struct us_data *us ) ;
16775#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16776static char __mod_author78[53] __attribute__((__used__, __unused__, __section__(".modinfo"),
16777__aligned__(1))) =
16778#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16779 { (char )'a', (char )'u', (char const )'t', (char const )'h',
16780 (char )'o', (char )'r', (char const )'=', (char const )'M',
16781 (char )'a', (char )'t', (char const )'t', (char const )'h',
16782 (char )'e', (char )'w', (char const )' ', (char const )'D',
16783 (char )'h', (char )'a', (char const )'r', (char const )'m',
16784 (char )' ', (char )'<', (char const )'m', (char const )'d',
16785 (char )'h', (char )'a', (char const )'r', (char const )'m',
16786 (char )'-', (char )'u', (char const )'s', (char const )'b',
16787 (char )'@', (char )'o', (char const )'n', (char const )'e',
16788 (char )'-', (char )'e', (char const )'y', (char const )'e',
16789 (char )'d', (char )'-', (char const )'a', (char const )'l',
16790 (char )'i', (char )'e', (char const )'n', (char const )'.',
16791 (char )'n', (char )'e', (char const )'t', (char const )'>',
16792 (char )'\000'};
16793#line 79 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16794static char __mod_description79[46] __attribute__((__used__, __unused__,
16795__section__(".modinfo"), __aligned__(1))) =
16796#line 79
16797 { (char )'d', (char )'e', (char const )'s', (char const )'c',
16798 (char )'r', (char )'i', (char const )'p', (char const )'t',
16799 (char )'i', (char )'o', (char const )'n', (char const )'=',
16800 (char )'U', (char )'S', (char const )'B', (char const )' ',
16801 (char )'M', (char )'a', (char const )'s', (char const )'s',
16802 (char )' ', (char )'S', (char const )'t', (char const )'o',
16803 (char )'r', (char )'a', (char const )'g', (char const )'e',
16804 (char )' ', (char )'d', (char const )'r', (char const )'i',
16805 (char )'v', (char )'e', (char const )'r', (char const )' ',
16806 (char )'f', (char )'o', (char const )'r', (char const )' ',
16807 (char )'L', (char )'i', (char const )'n', (char const )'u',
16808 (char )'x', (char )'\000'};
16809#line 80 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16810static char __mod_license80[12] __attribute__((__used__, __unused__, __section__(".modinfo"),
16811__aligned__(1))) =
16812#line 80
16813 { (char )'l', (char )'i', (char const )'c', (char const )'e',
16814 (char )'n', (char )'s', (char const )'e', (char const )'=',
16815 (char )'G', (char )'P', (char const )'L', (char const )'\000'};
16816#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16817static unsigned int delay_use = 1U;
16818#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16819static char __param_str_delay_use[10] =
16820#line 83
16821 { (char )'d', (char )'e', (char const )'l', (char const )'a',
16822 (char )'y', (char )'_', (char const )'u', (char const )'s',
16823 (char )'e', (char )'\000'};
16824#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16825static struct kernel_param __param_delay_use __attribute__((__used__, __unused__,
16826__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_delay_use, (struct kernel_param_ops *)(& param_ops_uint),
16827 (u16 )420, (s16 )0, {(void *)(& delay_use)}};
16828#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16829static char __mod_delay_usetype83[24] __attribute__((__used__, __unused__,
16830__section__(".modinfo"), __aligned__(1))) =
16831#line 83
16832 { (char )'p', (char )'a', (char const )'r', (char const )'m',
16833 (char )'t', (char )'y', (char const )'p', (char const )'e',
16834 (char )'=', (char )'d', (char const )'e', (char const )'l',
16835 (char )'a', (char )'y', (char const )'_', (char const )'u',
16836 (char )'s', (char )'e', (char const )':', (char const )'u',
16837 (char )'i', (char )'n', (char const )'t', (char const )'\000'};
16838#line 84 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16839static char __mod_delay_use84[58] __attribute__((__used__, __unused__, __section__(".modinfo"),
16840__aligned__(1))) =
16841#line 84
16842 { (char )'p', (char )'a', (char const )'r', (char const )'m',
16843 (char )'=', (char )'d', (char const )'e', (char const )'l',
16844 (char )'a', (char )'y', (char const )'_', (char const )'u',
16845 (char )'s', (char )'e', (char const )':', (char const )'s',
16846 (char )'e', (char )'c', (char const )'o', (char const )'n',
16847 (char )'d', (char )'s', (char const )' ', (char const )'t',
16848 (char )'o', (char )' ', (char const )'d', (char const )'e',
16849 (char )'l', (char )'a', (char const )'y', (char const )' ',
16850 (char )'b', (char )'e', (char const )'f', (char const )'o',
16851 (char )'r', (char )'e', (char const )' ', (char const )'u',
16852 (char )'s', (char )'i', (char const )'n', (char const )'g',
16853 (char )' ', (char )'a', (char const )' ', (char const )'n',
16854 (char )'e', (char )'w', (char const )' ', (char const )'d',
16855 (char )'e', (char )'v', (char const )'i', (char const )'c',
16856 (char )'e', (char )'\000'};
16857#line 86 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16858static char quirks[128] ;
16859#line 87 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16860static struct kparam_string __param_string_quirks = {(unsigned int )sizeof(quirks), quirks};
16861#line 87 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16862static char __param_str_quirks[7] = { (char )'q', (char const )'u', (char const )'i', (char const )'r',
16863 (char )'k', (char )'s', (char const )'\000'};
16864#line 87 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16865static struct kernel_param __param_quirks __attribute__((__used__, __unused__,
16866__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_quirks, (struct kernel_param_ops *)(& param_ops_string), (u16 )420,
16867 (s16 )0, {.str = & __param_string_quirks}};
16868#line 87 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16869static char __mod_quirkstype87[23] __attribute__((__used__, __unused__, __section__(".modinfo"),
16870__aligned__(1))) =
16871#line 87
16872 { (char )'p', (char )'a', (char const )'r', (char const )'m',
16873 (char )'t', (char )'y', (char const )'p', (char const )'e',
16874 (char )'=', (char )'q', (char const )'u', (char const )'i',
16875 (char )'r', (char )'k', (char const )'s', (char const )':',
16876 (char )'s', (char )'t', (char const )'r', (char const )'i',
16877 (char )'n', (char )'g', (char const )'\000'};
16878#line 88 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16879static char __mod_quirks88[61] __attribute__((__used__, __unused__, __section__(".modinfo"),
16880__aligned__(1))) =
16881#line 88
16882 { (char )'p', (char )'a', (char const )'r', (char const )'m',
16883 (char )'=', (char )'q', (char const )'u', (char const )'i',
16884 (char )'r', (char )'k', (char const )'s', (char const )':',
16885 (char )'s', (char )'u', (char const )'p', (char const )'p',
16886 (char )'l', (char )'e', (char const )'m', (char const )'e',
16887 (char )'n', (char )'t', (char const )'a', (char const )'l',
16888 (char )' ', (char )'l', (char const )'i', (char const )'s',
16889 (char )'t', (char )' ', (char const )'o', (char const )'f',
16890 (char )' ', (char )'d', (char const )'e', (char const )'v',
16891 (char )'i', (char )'c', (char const )'e', (char const )' ',
16892 (char )'I', (char )'D', (char const )'s', (char const )' ',
16893 (char )'a', (char )'n', (char const )'d', (char const )' ',
16894 (char )'t', (char )'h', (char const )'e', (char const )'i',
16895 (char )'r', (char )' ', (char const )'q', (char const )'u',
16896 (char )'i', (char )'r', (char const )'k', (char const )'s',
16897 (char )'\000'};
16898#line 124 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
16899static struct us_unusual_dev us_unusual_dev_list[290] =
16900#line 124
16901 { {"ATMEL", "SND1 Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16902 {"VIA Technologies Inc.",
16903 "Mitsumi multi cardreader", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16904 {"HP",
16905 "CD-Writer+", (__u8 )5, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16906 {"HP", "Personal Media Drive", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16907 {"HP",
16908 "PhotoSmart R707", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16909 {"NEC",
16910 "NEC USB UF000x", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16911 {"VIA Technologies Inc.",
16912 "USB 2.0 Card Reader", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16913 {"Buffalo",
16914 "DUB-P40G HDD", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16915 {"Samsung Info. Systems America, Inc.",
16916 "MP3 Player", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16917 {"Samsung",
16918 "MP3 Player", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16919 {"TrekStor",
16920 "i.Beat 115 2.0", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16921 {"TrekStor",
16922 "i.Beat Joy 2.0", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16923 {"GENERIC",
16924 "MP3 PLAYER", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16925 {"Nokia",
16926 "Nokia 6288", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16927 {"Nokia",
16928 "Nokia 3250", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16929 {"Nokia",
16930 "E70", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16931 {"Nokia", "E60", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16932 {"Nokia",
16933 "N91", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16934 {"Nokia", "N80", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16935 {"Nokia",
16936 "E61", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16937 {"Nokia", "6131", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16938 {"Nokia",
16939 "Nokia 6233", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16940 {"Nokia",
16941 "6234", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16942 {"Neuros Audio", "USB 2.0 HD 2.5", (__u8 )255, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
16943 {"USBest Technology",
16944 "USB Mass Storage Device", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16945 {"USB 2.0",
16946 "Flash Disk", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16947 {"Mitac",
16948 "GPS", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16949 {"AMI", "Virtual Floppy", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16950 {"Kyocera",
16951 "Finecam S3x", (__u8 )5, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16952 {"Kyocera",
16953 "Finecam S4", (__u8 )5, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16954 {"Kyocera", "Finecam S5", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16955 {"Kyocera",
16956 "CONTAX SL300R T*", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16957 {"Hitachi",
16958 "DVD-CAM DZ-MV100A Camcorder", (__u8 )6, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16959 {"Tekom Technologies, Inc",
16960 "300_CAMERA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16961 {"NIKON",
16962 "NIKON DSC E2000", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16963 {"IBM",
16964 "IBM RSA2", (__u8 )255, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16965 {"Epson", "875DC Storage", (__u8 )6, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16966 {"Epson",
16967 "785EPX Storage", (__u8 )6, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
16968 {"Fujifilm",
16969 "FinePix 1400Zoom", (__u8 )4, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16970 {"ScanLogic",
16971 "SL11R-IDE", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16972 {"Panasonic",
16973 "LS-120 Camera", (__u8 )4, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16974 {"Sharp CE-CW05",
16975 "CD-R/RW Drive", (__u8 )5, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16976 {"Panasonic",
16977 "DMC-LCx Camera", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16978 {"LEICA",
16979 "D-LUX Camera", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16980 {"Matshita",
16981 "LS-120", (__u8 )2, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16982 {"Shuttle", "eUSCSI Bridge", (__u8 )255, (__u8 )255, & usb_stor_euscsi_init},
16983 {"SCM Microsystems Inc.",
16984 "eUSB MMC Adapter", (__u8 )6, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16985 {"Shuttle",
16986 "eUSB MMC Adapter", (__u8 )6, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16987 {"Sony",
16988 "Hifd", (__u8 )6, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16989 {"Shuttle", "eUSB ATA/ATAPI Adapter", (__u8 )2, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16990 {"Shuttle",
16991 "eUSB CompactFlash Adapter", (__u8 )2, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16992 {"Shuttle",
16993 "eUSCSI Bridge", (__u8 )6, (__u8 )80, & usb_stor_euscsi_init},
16994 {"Shuttle", "eUSCSI Bridge", (__u8 )6, (__u8 )80, & usb_stor_euscsi_init},
16995 {"Shuttle", "CD-RW Device", (__u8 )2, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
16996 {"Samsung",
16997 "YP-U3", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16998 {"Samsung", "YP-CP3", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
16999 {"Kobian Mercury",
17000 "Binocam DCB-132", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17001 {"Belkin",
17002 "USB SCSI Adaptor", (__u8 )6, (__u8 )80, & usb_stor_euscsi_init},
17003 {"Iomega", "USB Clik! 40", (__u8 )5, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17004 {"Linux",
17005 "File-backed Storage Gadget", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17006 {"Tekom Technologies, Inc",
17007 "300_CAMERA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17008 {"Tekom Technologies, Inc",
17009 "300_CAMERA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17010 {"Tekom Technologies, Inc",
17011 "300_CAMERA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17012 {"Tekom Technologies, Inc",
17013 "400_CAMERA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17014 {"Tekom Technologies, Inc",
17015 "400_CAMERA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17016 {"Sony",
17017 "DSC-S30/S70/S75/505V/F505/F707/F717/P8", (__u8 )6, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17018 {"Sony",
17019 "DSC-T1/T5/H5", (__u8 )5, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17020 {"Sony",
17021 "Memorystick NW-MS7", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17022 {"Sony",
17023 "USB Floppy Drive", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17024 {"Sony",
17025 "Memorystick MSAC-US1", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17026 {"Sony",
17027 "Handycam", (__u8 )6, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17028 {"Sony", "Handycam HC-85", (__u8 )4, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17029 {"Sony",
17030 "Memorystick MSC-U01N", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17031 {"Sony",
17032 "PEG N760c Memorystick", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17033 {"Sony",
17034 "Memorystick MSC-U03", (__u8 )4, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
17035 {"Sony",
17036 "PEG Mass Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17037 {"Sony",
17038 "PEG Mass Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17039 {"Sony",
17040 "PEG Mass Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17041 {"SAMSUNG",
17042 "SFD-321U [FW 0C]", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17043 {"Y-E Data",
17044 "Flashbuster-U", (__u8 )255, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
17045 {"Y-E Data",
17046 "Silicon Media R/W", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17047 {"JetFlash",
17048 "TS1GJF2A/120", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17049 {"Fujifilm",
17050 "Digital Camera EX-20 DSC", (__u8 )5, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17051 {"Iomega",
17052 "ZIP 100", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17053 {"LaCie",
17054 "DVD+-RW", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17055 {"In-System",
17056 "PyroGate External CD-ROM Enclosure (FCD-523)", (__u8 )6, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
17057 {"Apple",
17058 "iPod", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17059 {"Apple", "iPod", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17060 {"Apple",
17061 "iPod", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17062 {"Apple", "iPod", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17063 {"Apple",
17064 "iPod", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17065 {"Option N.V.", "Mass Storage", (__u8 )255, (__u8 )255, & option_ms_init},
17066 {"Lexar", "USB CF Reader", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17067 {"Genesys Logic",
17068 "USB to IDE Optical", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17069 {"Genesys Logic",
17070 "USB to IDE Disk", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17071 {"Genesys Logic",
17072 "USB to SATA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17073 {"Vivitar",
17074 "Vivicam 35Xx", (__u8 )6, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
17075 {"TEAC",
17076 "Floppy Drive", (__u8 )4, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
17077 {"SigmaTel",
17078 "USBMSC Audio Player", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17079 {"Prolific Technology, Inc.",
17080 "Prolific Storage Gadget", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17081 {"Prolific Technology, Inc.",
17082 "Mass Storage Device", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17083 {"Prolific Technology Inc.",
17084 "Mass Storage Device", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17085 {"Prolific Technology Inc.",
17086 "ATAPI-6 Bridge Controller", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17087 {"Minolta",
17088 "Dimage F300", (__u8 )6, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
17089 {"Minolta",
17090 "DIMAGE E223", (__u8 )6, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17091 {"Hagiwara",
17092 "Flashgate", (__u8 )6, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
17093 {"Thomson Multimedia Inc.", "RCA RD1080 MP3 Player", (__u8 )255, (__u8 )255,
17094 (int (*)(struct us_data * ))((void *)0)},
17095 {"RockChip", "MP3", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17096 {"RockChip",
17097 "MTP", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17098 {"RockChip", "ROCK MP3", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17099 {"ATMEL",
17100 "SND1 Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17101 {"Sandisk",
17102 "ImageMate SDDR-05a", (__u8 )6, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
17103 {"SanDisk Corporation",
17104 "ImageMate CompactFlash USB", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17105 {"Sandisk",
17106 "ImageMate SDDR-12", (__u8 )6, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
17107 {"Freecom Technologies",
17108 "FHD-Classic", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17109 {"Microtech",
17110 "USB-SCSI-DB25", (__u8 )255, (__u8 )255, & usb_stor_euscsi_init},
17111 {"Microtech", "USB-SCSI-HD50", (__u8 )255, (__u8 )255, & usb_stor_euscsi_init},
17112 {"Datafab",
17113 "KECF-USB", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17114 {"Simple Tech/Datafab",
17115 "CF+SM Reader", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17116 {"Casio",
17117 "QV DigitalCamera", (__u8 )5, (__u8 )1, (int (*)(struct us_data * ))((void *)0)},
17118 {"Samsung",
17119 "Digimax 410", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17120 {"Argosy",
17121 "Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17122 {"Argosy",
17123 "Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17124 {"Argosy",
17125 "Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17126 {"Grandtech",
17127 "DC2MEGA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17128 {"MagicPixel",
17129 "FW_Omega2", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17130 {"PanDigital",
17131 "Photo Frame", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17132 {"CITIZEN",
17133 "X1DE-USB", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17134 {"AIPTEK",
17135 "Aiptek USB Keychain MP3 Player", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17136 {"Trumpion",
17137 "t33520 USB Flash Card Controller", (__u8 )255, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
17138 {"Trumpion Microelectronics, Inc.",
17139 "33520 USB Digital Voice Recorder", (__u8 )4, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17140 {"Trumpion",
17141 "MP3 player", (__u8 )1, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
17142 {"Feiya",
17143 "5-in-1 Card Reader", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17144 {"Feiya",
17145 "SD/SDHC Card Reader", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17146 {"Pentax",
17147 "Optio 2/3/400", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17148 {"ZyXEL",
17149 "G-220F USB-WLAN Install", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17150 {"SiteCom",
17151 "WL-117 USB-WLAN Install", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17152 {"Option N.V.",
17153 "Mass Storage", (__u8 )255, (__u8 )255, & option_ms_init},
17154 {"Option", "GI 0401 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17155 {"Option",
17156 "GI 0431 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17157 {"Option",
17158 "GI 0451 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17159 {"Option",
17160 "GI 0451 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17161 {"Option",
17162 "GI 0452 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17163 {"Option",
17164 "GI 0461 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17165 {"Option",
17166 "GI 0461 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17167 {"Option",
17168 "GI 033x SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17169 {"Option",
17170 "GI 033x SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17171 {"Option",
17172 "GI 033x SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17173 {"Option",
17174 "GI 070x SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17175 {"Option",
17176 "GI 1505 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17177 {"Option",
17178 "GI 1509 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17179 {"Option",
17180 "GI 1515 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17181 {"Option",
17182 "GI 1215 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17183 {"Option",
17184 "GI 1505 SD-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17185 {"Seagate",
17186 "FreeAgent Pro", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17187 {"Maxtor",
17188 "USB to SATA", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17189 {"Unknown",
17190 "Unknown", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17191 {"Medion",
17192 "MD 7425", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17193 {"Jenoptik",
17194 "JD 5200 z3", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17195 {"Macpower Technology Co.LTD.",
17196 "USB 2.0 3.5\" DEVICE", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17197 {"Netac",
17198 "USB-CF-Card", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17199 {"Netac",
17200 "USB Flash Disk", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17201 {"WINWARD",
17202 "Music Disk", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17203 {"PNP_MP3",
17204 "PNP_MP3 PLAYER", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17205 {"Cowon Systems",
17206 "iAUDIO M5", (__u8 )255, (__u8 )80, (int (*)(struct us_data * ))((void *)0)},
17207 {"USB",
17208 "Solid state disk", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17209 {"Ours Technology",
17210 "Flash Disk", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17211 {"USB",
17212 "Flash Disk", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17213 {"Typhoon",
17214 "My DJ 1820", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17215 {"Oracom Co., Ltd",
17216 "ORC-200M", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17217 {"C-MEX",
17218 "A-VOX", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17219 {"VTech", "Kidizoom", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17220 {"Sony Ericsson",
17221 "V800-Vodafone 802", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17222 {"Sony Ericsson",
17223 "MD400", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17224 {"Sony Ericsson", "P990i", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17225 {"Sony Ericsson",
17226 "M600i", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17227 {"Sony Ericsson", "P1i", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17228 {"Desknote",
17229 "UCR-61S2B", (__u8 )255, (__u8 )255, & usb_stor_ucr61s2b_init},
17230 {"Western Digital", "External HDD", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17231 {"Actions Semiconductor",
17232 "Mtp device", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17233 {"D-Link",
17234 "USB Mass Storage", (__u8 )255, (__u8 )255, & option_ms_init},
17235 {"Sierra Wireless", "USB MMC Storage", (__u8 )255, (__u8 )255, & sierra_ms_init},
17236 {"Digitech HMG",
17237 "DigiTech Mass Storage", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17238 {"HUAWEI MOBILE",
17239 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17240 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17241 {"HUAWEI MOBILE",
17242 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17243 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17244 {"HUAWEI MOBILE",
17245 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17246 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17247 {"HUAWEI MOBILE",
17248 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17249 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17250 {"HUAWEI MOBILE",
17251 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17252 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17253 {"HUAWEI MOBILE",
17254 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17255 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17256 {"HUAWEI MOBILE",
17257 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17258 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17259 {"HUAWEI MOBILE",
17260 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17261 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17262 {"HUAWEI MOBILE",
17263 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17264 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17265 {"HUAWEI MOBILE",
17266 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17267 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17268 {"HUAWEI MOBILE",
17269 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17270 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17271 {"HUAWEI MOBILE",
17272 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17273 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17274 {"HUAWEI MOBILE",
17275 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17276 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17277 {"HUAWEI MOBILE",
17278 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17279 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17280 {"HUAWEI MOBILE",
17281 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17282 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17283 {"HUAWEI MOBILE",
17284 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17285 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17286 {"HUAWEI MOBILE",
17287 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17288 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17289 {"HUAWEI MOBILE",
17290 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17291 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17292 {"HUAWEI MOBILE",
17293 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17294 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17295 {"HUAWEI MOBILE",
17296 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17297 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17298 {"HUAWEI MOBILE",
17299 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17300 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17301 {"HUAWEI MOBILE",
17302 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17303 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17304 {"HUAWEI MOBILE",
17305 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17306 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17307 {"HUAWEI MOBILE",
17308 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17309 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17310 {"HUAWEI MOBILE",
17311 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17312 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17313 {"HUAWEI MOBILE",
17314 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17315 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17316 {"HUAWEI MOBILE",
17317 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17318 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17319 {"HUAWEI MOBILE",
17320 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17321 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17322 {"HUAWEI MOBILE",
17323 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17324 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17325 {"HUAWEI MOBILE",
17326 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17327 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17328 {"HUAWEI MOBILE",
17329 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17330 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17331 {"HUAWEI MOBILE",
17332 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17333 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17334 {"HUAWEI MOBILE",
17335 "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17336 {"HUAWEI MOBILE", "Mass Storage", (__u8 )255, (__u8 )255, & usb_stor_huawei_e220_init},
17337 {"Minolta",
17338 "Dimage Z10", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17339 {"SWISSBIT",
17340 "Black Silver", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17341 {"Kingston",
17342 "DT 101 G2", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17343 {"Super Top",
17344 "IDE DEVICE", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17345 {"JMicron",
17346 "USB to ATA/ATAPI Bridge", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17347 {"Teac",
17348 "HD-35PUK-B", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17349 {"BUILDWIN",
17350 "Photo Frame", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17351 {"BUILDWIN",
17352 "Photo Frame", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17353 {"BUILDWIN",
17354 "Photo Frame", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17355 {"Corsair",
17356 "Padlock v2", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17357 {"TrekStor GmbH & Co. KG",
17358 "DataStation maxi g.u", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17359 {"Coby Electronics",
17360 "MP3 Player", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17361 {"ST",
17362 "2A", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17363 {"Motorola", "RAZR V3x", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17364 {"Motorola",
17365 "MSnc.", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17366 {"MPIO", "HS200", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17367 {"Mitac",
17368 "Mio DigiWalker USB Sync", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17369 {"iRiver",
17370 "MP3 T10", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17371 {"iRiver",
17372 "P7K", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17373 {"Iomega", "Micro Mini 1GB", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17374 {"Keil Software, Inc.",
17375 "V2M MotherBoard", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17376 {"DataStor",
17377 "USB4500 FW1.04", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17378 {"TGE",
17379 "Digital MP3 Audio Player", (__u8 )255, (__u8 )255, (int (*)(struct us_data * ))((void *)0)},
17380 {(char *)0,
17381 (char *)0, (__u8 )1, (__u8 )1, (int (*)(struct us_data * ))0},
17382 {(char *)0, (char *)0, (__u8 )2, (__u8 )1, (int (*)(struct us_data * ))0},
17383 {(char *)0,
17384 (char *)0, (__u8 )3, (__u8 )1, (int (*)(struct us_data * ))0},
17385 {(char *)0, (char *)0, (__u8 )4, (__u8 )1, (int (*)(struct us_data * ))0},
17386 {(char *)0,
17387 (char *)0, (__u8 )5, (__u8 )1, (int (*)(struct us_data * ))0},
17388 {(char *)0, (char *)0, (__u8 )6, (__u8 )1, (int (*)(struct us_data * ))0},
17389 {(char *)0,
17390 (char *)0, (__u8 )1, (__u8 )0, (int (*)(struct us_data * ))0},
17391 {(char *)0, (char *)0, (__u8 )2, (__u8 )0, (int (*)(struct us_data * ))0},
17392 {(char *)0,
17393 (char *)0, (__u8 )3, (__u8 )0, (int (*)(struct us_data * ))0},
17394 {(char *)0, (char *)0, (__u8 )4, (__u8 )0, (int (*)(struct us_data * ))0},
17395 {(char *)0,
17396 (char *)0, (__u8 )5, (__u8 )0, (int (*)(struct us_data * ))0},
17397 {(char *)0, (char *)0, (__u8 )6, (__u8 )0, (int (*)(struct us_data * ))0},
17398 {(char *)0,
17399 (char *)0, (__u8 )1, (__u8 )80, (int (*)(struct us_data * ))0},
17400 {(char *)0, (char *)0, (__u8 )2, (__u8 )80, (int (*)(struct us_data * ))0},
17401 {(char *)0,
17402 (char *)0, (__u8 )3, (__u8 )80, (int (*)(struct us_data * ))0},
17403 {(char *)0, (char *)0, (__u8 )4, (__u8 )80, (int (*)(struct us_data * ))0},
17404 {(char *)0,
17405 (char *)0, (__u8 )5, (__u8 )80, (int (*)(struct us_data * ))0},
17406 {(char *)0, (char *)0, (__u8 )6, (__u8 )80, (int (*)(struct us_data * ))0}};
17407#line 129 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17408static struct us_unusual_dev for_dynamic_ids = {(char *)0, (char *)0, (__u8 )6, (__u8 )80, (int (*)(struct us_data * ))0};
17409#line 159 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17410static void us_set_lock_class(struct mutex *mutex , struct usb_interface *intf )
17411{
17412
17413 {
17414#line 162
17415 return;
17416}
17417}
17418#line 168 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17419int usb_stor_suspend(struct usb_interface *iface , int message_event12 )
17420{ struct us_data *us ;
17421 void *tmp___7 ;
17422 struct mutex *__cil_tmp5 ;
17423 unsigned long __cil_tmp6 ;
17424 unsigned long __cil_tmp7 ;
17425 unsigned long __cil_tmp8 ;
17426 unsigned long __cil_tmp9 ;
17427 void (*__cil_tmp10)(struct us_data * , int ) ;
17428 struct mutex *__cil_tmp11 ;
17429
17430 {
17431 {
17432#line 170
17433 tmp___7 = usb_get_intfdata(iface);
17434#line 170
17435 us = (struct us_data *)tmp___7;
17436#line 173
17437 __cil_tmp5 = (struct mutex *)us;
17438#line 173
17439 mutex_lock(__cil_tmp5);
17440#line 175
17441 printk("<7>usb-storage: %s\n", "usb_stor_suspend");
17442 }
17443 {
17444#line 176
17445 __cil_tmp6 = (unsigned long )us;
17446#line 176
17447 __cil_tmp7 = __cil_tmp6 + 664;
17448#line 176
17449 if (*((void (**)(struct us_data * , int ))__cil_tmp7)) {
17450 {
17451#line 177
17452 __cil_tmp8 = (unsigned long )us;
17453#line 177
17454 __cil_tmp9 = __cil_tmp8 + 664;
17455#line 177
17456 __cil_tmp10 = *((void (**)(struct us_data * , int ))__cil_tmp9);
17457#line 177
17458 (*__cil_tmp10)(us, 0);
17459 }
17460 } else {
17461
17462 }
17463 }
17464 {
17465#line 182
17466 __cil_tmp11 = (struct mutex *)us;
17467#line 182
17468 mutex_unlock(__cil_tmp11);
17469 }
17470#line 183
17471 return (0);
17472}
17473}
17474#line 185
17475extern void *__crc_usb_stor_suspend __attribute__((__weak__)) ;
17476#line 185 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17477static unsigned long __kcrctab_usb_stor_suspend __attribute__((__used__,
17478__unused__, __section__("___kcrctab_gpl+usb_stor_suspend"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_suspend));
17479#line 185 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17480static char __kstrtab_usb_stor_suspend[17] __attribute__((__section__("__ksymtab_strings"),
17481__aligned__(1))) =
17482#line 185
17483 { (char )'u', (char )'s', (char const )'b', (char const )'_',
17484 (char )'s', (char )'t', (char const )'o', (char const )'r',
17485 (char )'_', (char )'s', (char const )'u', (char const )'s',
17486 (char )'p', (char )'e', (char const )'n', (char const )'d',
17487 (char )'\000'};
17488#line 185 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17489static struct kernel_symbol __ksymtab_usb_stor_suspend __attribute__((__used__,
17490__unused__, __section__("___ksymtab_gpl+usb_stor_suspend"))) = {(unsigned long )(& usb_stor_suspend), __kstrtab_usb_stor_suspend};
17491#line 187 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17492int usb_stor_resume(struct usb_interface *iface )
17493{ struct us_data *us ;
17494 void *tmp___7 ;
17495 struct mutex *__cil_tmp4 ;
17496 unsigned long __cil_tmp5 ;
17497 unsigned long __cil_tmp6 ;
17498 unsigned long __cil_tmp7 ;
17499 unsigned long __cil_tmp8 ;
17500 void (*__cil_tmp9)(struct us_data * , int ) ;
17501 struct mutex *__cil_tmp10 ;
17502
17503 {
17504 {
17505#line 189
17506 tmp___7 = usb_get_intfdata(iface);
17507#line 189
17508 us = (struct us_data *)tmp___7;
17509#line 191
17510 __cil_tmp4 = (struct mutex *)us;
17511#line 191
17512 mutex_lock(__cil_tmp4);
17513#line 193
17514 printk("<7>usb-storage: %s\n", "usb_stor_resume");
17515 }
17516 {
17517#line 194
17518 __cil_tmp5 = (unsigned long )us;
17519#line 194
17520 __cil_tmp6 = __cil_tmp5 + 664;
17521#line 194
17522 if (*((void (**)(struct us_data * , int ))__cil_tmp6)) {
17523 {
17524#line 195
17525 __cil_tmp7 = (unsigned long )us;
17526#line 195
17527 __cil_tmp8 = __cil_tmp7 + 664;
17528#line 195
17529 __cil_tmp9 = *((void (**)(struct us_data * , int ))__cil_tmp8);
17530#line 195
17531 (*__cil_tmp9)(us, 1);
17532 }
17533 } else {
17534
17535 }
17536 }
17537 {
17538#line 197
17539 __cil_tmp10 = (struct mutex *)us;
17540#line 197
17541 mutex_unlock(__cil_tmp10);
17542 }
17543#line 198
17544 return (0);
17545}
17546}
17547#line 200
17548extern void *__crc_usb_stor_resume __attribute__((__weak__)) ;
17549#line 200 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17550static unsigned long __kcrctab_usb_stor_resume __attribute__((__used__, __unused__,
17551__section__("___kcrctab_gpl+usb_stor_resume"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_resume));
17552#line 200 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17553static char __kstrtab_usb_stor_resume[16] __attribute__((__section__("__ksymtab_strings"),
17554__aligned__(1))) =
17555#line 200
17556 { (char )'u', (char )'s', (char const )'b', (char const )'_',
17557 (char )'s', (char )'t', (char const )'o', (char const )'r',
17558 (char )'_', (char )'r', (char const )'e', (char const )'s',
17559 (char )'u', (char )'m', (char const )'e', (char const )'\000'};
17560#line 200 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17561static struct kernel_symbol __ksymtab_usb_stor_resume __attribute__((__used__,
17562__unused__, __section__("___ksymtab_gpl+usb_stor_resume"))) = {(unsigned long )(& usb_stor_resume), __kstrtab_usb_stor_resume};
17563#line 202 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17564int usb_stor_reset_resume(struct usb_interface *iface )
17565{ struct us_data *us ;
17566 void *tmp___7 ;
17567
17568 {
17569 {
17570#line 204
17571 tmp___7 = usb_get_intfdata(iface);
17572#line 204
17573 us = (struct us_data *)tmp___7;
17574#line 206
17575 printk("<7>usb-storage: %s\n", "usb_stor_reset_resume");
17576#line 209
17577 usb_stor_report_bus_reset(us);
17578 }
17579#line 213
17580 return (0);
17581}
17582}
17583#line 215
17584extern void *__crc_usb_stor_reset_resume __attribute__((__weak__)) ;
17585#line 215 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17586static unsigned long __kcrctab_usb_stor_reset_resume __attribute__((__used__,
17587__unused__, __section__("___kcrctab_gpl+usb_stor_reset_resume"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_reset_resume));
17588#line 215 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17589static char __kstrtab_usb_stor_reset_resume[22] __attribute__((__section__("__ksymtab_strings"),
17590__aligned__(1))) =
17591#line 215
17592 { (char )'u', (char )'s', (char const )'b', (char const )'_',
17593 (char )'s', (char )'t', (char const )'o', (char const )'r',
17594 (char )'_', (char )'r', (char const )'e', (char const )'s',
17595 (char )'e', (char )'t', (char const )'_', (char const )'r',
17596 (char )'e', (char )'s', (char const )'u', (char const )'m',
17597 (char )'e', (char )'\000'};
17598#line 215 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17599static struct kernel_symbol __ksymtab_usb_stor_reset_resume __attribute__((__used__,
17600__unused__, __section__("___ksymtab_gpl+usb_stor_reset_resume"))) = {(unsigned long )(& usb_stor_reset_resume), __kstrtab_usb_stor_reset_resume};
17601#line 224 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17602int usb_stor_pre_reset(struct usb_interface *iface )
17603{ struct us_data *us ;
17604 void *tmp___7 ;
17605 struct mutex *__cil_tmp4 ;
17606
17607 {
17608 {
17609#line 226
17610 tmp___7 = usb_get_intfdata(iface);
17611#line 226
17612 us = (struct us_data *)tmp___7;
17613#line 228
17614 printk("<7>usb-storage: %s\n", "usb_stor_pre_reset");
17615#line 231
17616 __cil_tmp4 = (struct mutex *)us;
17617#line 231
17618 mutex_lock(__cil_tmp4);
17619 }
17620#line 232
17621 return (0);
17622}
17623}
17624#line 234
17625extern void *__crc_usb_stor_pre_reset __attribute__((__weak__)) ;
17626#line 234 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17627static unsigned long __kcrctab_usb_stor_pre_reset __attribute__((__used__,
17628__unused__, __section__("___kcrctab_gpl+usb_stor_pre_reset"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_pre_reset));
17629#line 234 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17630static char __kstrtab_usb_stor_pre_reset[19] __attribute__((__section__("__ksymtab_strings"),
17631__aligned__(1))) =
17632#line 234
17633 { (char )'u', (char )'s', (char const )'b', (char const )'_',
17634 (char )'s', (char )'t', (char const )'o', (char const )'r',
17635 (char )'_', (char )'p', (char const )'r', (char const )'e',
17636 (char )'_', (char )'r', (char const )'e', (char const )'s',
17637 (char )'e', (char )'t', (char const )'\000'};
17638#line 234 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17639static struct kernel_symbol __ksymtab_usb_stor_pre_reset __attribute__((__used__,
17640__unused__, __section__("___ksymtab_gpl+usb_stor_pre_reset"))) = {(unsigned long )(& usb_stor_pre_reset), __kstrtab_usb_stor_pre_reset};
17641#line 236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17642int usb_stor_post_reset(struct usb_interface *iface )
17643{ struct us_data *us ;
17644 void *tmp___7 ;
17645 struct mutex *__cil_tmp4 ;
17646
17647 {
17648 {
17649#line 238
17650 tmp___7 = usb_get_intfdata(iface);
17651#line 238
17652 us = (struct us_data *)tmp___7;
17653#line 240
17654 printk("<7>usb-storage: %s\n", "usb_stor_post_reset");
17655#line 243
17656 usb_stor_report_bus_reset(us);
17657#line 248
17658 __cil_tmp4 = (struct mutex *)us;
17659#line 248
17660 mutex_unlock(__cil_tmp4);
17661 }
17662#line 249
17663 return (0);
17664}
17665}
17666#line 251
17667extern void *__crc_usb_stor_post_reset __attribute__((__weak__)) ;
17668#line 251 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17669static unsigned long __kcrctab_usb_stor_post_reset __attribute__((__used__,
17670__unused__, __section__("___kcrctab_gpl+usb_stor_post_reset"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_post_reset));
17671#line 251 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17672static char __kstrtab_usb_stor_post_reset[20] __attribute__((__section__("__ksymtab_strings"),
17673__aligned__(1))) =
17674#line 251
17675 { (char )'u', (char )'s', (char const )'b', (char const )'_',
17676 (char )'s', (char )'t', (char const )'o', (char const )'r',
17677 (char )'_', (char )'p', (char const )'o', (char const )'s',
17678 (char )'t', (char )'_', (char const )'r', (char const )'e',
17679 (char )'s', (char )'e', (char const )'t', (char const )'\000'};
17680#line 251 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17681static struct kernel_symbol __ksymtab_usb_stor_post_reset __attribute__((__used__,
17682__unused__, __section__("___ksymtab_gpl+usb_stor_post_reset"))) = {(unsigned long )(& usb_stor_post_reset), __kstrtab_usb_stor_post_reset};
17683#line 262 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
17684void fill_inquiry_response(struct us_data *us , unsigned char *data , unsigned int data_len )
17685{ u16 bcdDevice ;
17686 int n ;
17687 unsigned long tmp___7 ;
17688 size_t __len ;
17689 int _min1 ;
17690 int _min2 ;
17691 int tmp___8 ;
17692 void *__ret ;
17693 unsigned long tmp___10 ;
17694 size_t __len___0 ;
17695 int _min1___1 ;
17696 int _min2___1 ;
17697 int tmp___11 ;
17698 void *__ret___0 ;
17699 unsigned char *__cil_tmp24 ;
17700 void *__cil_tmp25 ;
17701 size_t __cil_tmp26 ;
17702 unsigned char *__cil_tmp27 ;
17703 unsigned char __cil_tmp28 ;
17704 int __cil_tmp29 ;
17705 unsigned long __cil_tmp30 ;
17706 unsigned long __cil_tmp31 ;
17707 unsigned long __cil_tmp32 ;
17708 struct usb_device *__cil_tmp33 ;
17709 unsigned long __cil_tmp34 ;
17710 unsigned long __cil_tmp35 ;
17711 unsigned long __cil_tmp36 ;
17712 unsigned long __cil_tmp37 ;
17713 struct us_unusual_dev *__cil_tmp38 ;
17714 char *__cil_tmp39 ;
17715 int *__cil_tmp40 ;
17716 int *__cil_tmp41 ;
17717 int *__cil_tmp42 ;
17718 int __cil_tmp43 ;
17719 int *__cil_tmp44 ;
17720 int __cil_tmp45 ;
17721 int *__cil_tmp46 ;
17722 int *__cil_tmp47 ;
17723 unsigned char *__cil_tmp48 ;
17724 void *__cil_tmp49 ;
17725 unsigned long __cil_tmp50 ;
17726 unsigned long __cil_tmp51 ;
17727 struct us_unusual_dev *__cil_tmp52 ;
17728 char *__cil_tmp53 ;
17729 void *__cil_tmp54 ;
17730 unsigned long __cil_tmp55 ;
17731 unsigned long __cil_tmp56 ;
17732 struct us_unusual_dev *__cil_tmp57 ;
17733 unsigned long __cil_tmp58 ;
17734 unsigned long __cil_tmp59 ;
17735 char *__cil_tmp60 ;
17736 int *__cil_tmp61 ;
17737 int *__cil_tmp62 ;
17738 int *__cil_tmp63 ;
17739 int __cil_tmp64 ;
17740 int *__cil_tmp65 ;
17741 int __cil_tmp66 ;
17742 int *__cil_tmp67 ;
17743 int *__cil_tmp68 ;
17744 unsigned char *__cil_tmp69 ;
17745 void *__cil_tmp70 ;
17746 unsigned long __cil_tmp71 ;
17747 unsigned long __cil_tmp72 ;
17748 struct us_unusual_dev *__cil_tmp73 ;
17749 unsigned long __cil_tmp74 ;
17750 unsigned long __cil_tmp75 ;
17751 char *__cil_tmp76 ;
17752 void *__cil_tmp77 ;
17753 unsigned char *__cil_tmp78 ;
17754 int __cil_tmp79 ;
17755 int __cil_tmp80 ;
17756 int __cil_tmp81 ;
17757 int __cil_tmp82 ;
17758 unsigned char *__cil_tmp83 ;
17759 int __cil_tmp84 ;
17760 int __cil_tmp85 ;
17761 int __cil_tmp86 ;
17762 int __cil_tmp87 ;
17763 unsigned char *__cil_tmp88 ;
17764 int __cil_tmp89 ;
17765 int __cil_tmp90 ;
17766 int __cil_tmp91 ;
17767 int __cil_tmp92 ;
17768 unsigned char *__cil_tmp93 ;
17769 int __cil_tmp94 ;
17770 int __cil_tmp95 ;
17771 int __cil_tmp96 ;
17772 unsigned long __cil_tmp97 ;
17773 unsigned long __cil_tmp98 ;
17774 struct scsi_cmnd *__cil_tmp99 ;
17775
17776 {
17777#line 265
17778 if (data_len < 36U) {
17779#line 266
17780 return;
17781 } else {
17782
17783 }
17784 {
17785#line 268
17786 __cil_tmp24 = data + 8;
17787#line 268
17788 __cil_tmp25 = (void *)__cil_tmp24;
17789#line 268
17790 __cil_tmp26 = (size_t )28;
17791#line 268
17792 memset(__cil_tmp25, ' ', __cil_tmp26);
17793 }
17794 {
17795#line 269
17796 __cil_tmp27 = data + 0;
17797#line 269
17798 __cil_tmp28 = *__cil_tmp27;
17799#line 269
17800 __cil_tmp29 = (int )__cil_tmp28;
17801#line 269
17802 if (__cil_tmp29 & 32) {
17803
17804 } else {
17805 {
17806#line 279
17807 __cil_tmp30 = 904 + 12;
17808#line 279
17809 __cil_tmp31 = (unsigned long )us;
17810#line 279
17811 __cil_tmp32 = __cil_tmp31 + 72;
17812#line 279
17813 __cil_tmp33 = *((struct usb_device **)__cil_tmp32);
17814#line 279
17815 __cil_tmp34 = (unsigned long )__cil_tmp33;
17816#line 279
17817 __cil_tmp35 = __cil_tmp34 + __cil_tmp30;
17818#line 279
17819 bcdDevice = *((__le16 *)__cil_tmp35);
17820#line 282
17821 __cil_tmp36 = (unsigned long )us;
17822#line 282
17823 __cil_tmp37 = __cil_tmp36 + 88;
17824#line 282
17825 __cil_tmp38 = *((struct us_unusual_dev **)__cil_tmp37);
17826#line 282
17827 __cil_tmp39 = *((char **)__cil_tmp38);
17828#line 282
17829 tmp___7 = strlen(__cil_tmp39);
17830#line 282
17831 n = (int )tmp___7;
17832#line 283
17833 __cil_tmp40 = & _min1;
17834#line 283
17835 *__cil_tmp40 = 8;
17836#line 283
17837 __cil_tmp41 = & _min2;
17838#line 283
17839 *__cil_tmp41 = n;
17840 }
17841 {
17842#line 283
17843 __cil_tmp42 = & _min2;
17844#line 283
17845 __cil_tmp43 = *__cil_tmp42;
17846#line 283
17847 __cil_tmp44 = & _min1;
17848#line 283
17849 __cil_tmp45 = *__cil_tmp44;
17850#line 283
17851 if (__cil_tmp45 < __cil_tmp43) {
17852#line 283
17853 __cil_tmp46 = & _min1;
17854#line 283
17855 tmp___8 = *__cil_tmp46;
17856 } else {
17857#line 283
17858 __cil_tmp47 = & _min2;
17859#line 283
17860 tmp___8 = *__cil_tmp47;
17861 }
17862 }
17863 {
17864#line 283
17865 __len = (size_t )tmp___8;
17866#line 283
17867 __cil_tmp48 = data + 8;
17868#line 283
17869 __cil_tmp49 = (void *)__cil_tmp48;
17870#line 283
17871 __cil_tmp50 = (unsigned long )us;
17872#line 283
17873 __cil_tmp51 = __cil_tmp50 + 88;
17874#line 283
17875 __cil_tmp52 = *((struct us_unusual_dev **)__cil_tmp51);
17876#line 283
17877 __cil_tmp53 = *((char **)__cil_tmp52);
17878#line 283
17879 __cil_tmp54 = (void *)__cil_tmp53;
17880#line 283
17881 __ret = __builtin_memcpy(__cil_tmp49, __cil_tmp54, __len);
17882#line 284
17883 __cil_tmp55 = (unsigned long )us;
17884#line 284
17885 __cil_tmp56 = __cil_tmp55 + 88;
17886#line 284
17887 __cil_tmp57 = *((struct us_unusual_dev **)__cil_tmp56);
17888#line 284
17889 __cil_tmp58 = (unsigned long )__cil_tmp57;
17890#line 284
17891 __cil_tmp59 = __cil_tmp58 + 8;
17892#line 284
17893 __cil_tmp60 = *((char **)__cil_tmp59);
17894#line 284
17895 tmp___10 = strlen(__cil_tmp60);
17896#line 284
17897 n = (int )tmp___10;
17898#line 285
17899 __cil_tmp61 = & _min1___1;
17900#line 285
17901 *__cil_tmp61 = 16;
17902#line 285
17903 __cil_tmp62 = & _min2___1;
17904#line 285
17905 *__cil_tmp62 = n;
17906 }
17907 {
17908#line 285
17909 __cil_tmp63 = & _min2___1;
17910#line 285
17911 __cil_tmp64 = *__cil_tmp63;
17912#line 285
17913 __cil_tmp65 = & _min1___1;
17914#line 285
17915 __cil_tmp66 = *__cil_tmp65;
17916#line 285
17917 if (__cil_tmp66 < __cil_tmp64) {
17918#line 285
17919 __cil_tmp67 = & _min1___1;
17920#line 285
17921 tmp___11 = *__cil_tmp67;
17922 } else {
17923#line 285
17924 __cil_tmp68 = & _min2___1;
17925#line 285
17926 tmp___11 = *__cil_tmp68;
17927 }
17928 }
17929 {
17930#line 285
17931 __len___0 = (size_t )tmp___11;
17932#line 285
17933 __cil_tmp69 = data + 16;
17934#line 285
17935 __cil_tmp70 = (void *)__cil_tmp69;
17936#line 285
17937 __cil_tmp71 = (unsigned long )us;
17938#line 285
17939 __cil_tmp72 = __cil_tmp71 + 88;
17940#line 285
17941 __cil_tmp73 = *((struct us_unusual_dev **)__cil_tmp72);
17942#line 285
17943 __cil_tmp74 = (unsigned long )__cil_tmp73;
17944#line 285
17945 __cil_tmp75 = __cil_tmp74 + 8;
17946#line 285
17947 __cil_tmp76 = *((char **)__cil_tmp75);
17948#line 285
17949 __cil_tmp77 = (void *)__cil_tmp76;
17950#line 285
17951 __ret___0 = __builtin_memcpy(__cil_tmp70, __cil_tmp77, __len___0);
17952#line 287
17953 __cil_tmp78 = data + 32;
17954#line 287
17955 __cil_tmp79 = (int )bcdDevice;
17956#line 287
17957 __cil_tmp80 = __cil_tmp79 >> 12;
17958#line 287
17959 __cil_tmp81 = __cil_tmp80 & 15;
17960#line 287
17961 __cil_tmp82 = 48 + __cil_tmp81;
17962#line 287
17963 *__cil_tmp78 = (unsigned char )__cil_tmp82;
17964#line 288
17965 __cil_tmp83 = data + 33;
17966#line 288
17967 __cil_tmp84 = (int )bcdDevice;
17968#line 288
17969 __cil_tmp85 = __cil_tmp84 >> 8;
17970#line 288
17971 __cil_tmp86 = __cil_tmp85 & 15;
17972#line 288
17973 __cil_tmp87 = 48 + __cil_tmp86;
17974#line 288
17975 *__cil_tmp83 = (unsigned char )__cil_tmp87;
17976#line 289
17977 __cil_tmp88 = data + 34;
17978#line 289
17979 __cil_tmp89 = (int )bcdDevice;
17980#line 289
17981 __cil_tmp90 = __cil_tmp89 >> 4;
17982#line 289
17983 __cil_tmp91 = __cil_tmp90 & 15;
17984#line 289
17985 __cil_tmp92 = 48 + __cil_tmp91;
17986#line 289
17987 *__cil_tmp88 = (unsigned char )__cil_tmp92;
17988#line 290
17989 __cil_tmp93 = data + 35;
17990#line 290
17991 __cil_tmp94 = (int )bcdDevice;
17992#line 290
17993 __cil_tmp95 = __cil_tmp94 & 15;
17994#line 290
17995 __cil_tmp96 = 48 + __cil_tmp95;
17996#line 290
17997 *__cil_tmp93 = (unsigned char )__cil_tmp96;
17998 }
17999 }
18000 }
18001 {
18002#line 293
18003 __cil_tmp97 = (unsigned long )us;
18004#line 293
18005 __cil_tmp98 = __cil_tmp97 + 192;
18006#line 293
18007 __cil_tmp99 = *((struct scsi_cmnd **)__cil_tmp98);
18008#line 293
18009 usb_stor_set_xfer_buf(data, data_len, __cil_tmp99);
18010 }
18011#line 294
18012 return;
18013}
18014}
18015#line 295
18016extern void *__crc_fill_inquiry_response __attribute__((__weak__)) ;
18017#line 295 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
18018static unsigned long __kcrctab_fill_inquiry_response __attribute__((__used__,
18019__unused__, __section__("___kcrctab_gpl+fill_inquiry_response"))) = (unsigned long )((unsigned long )(& __crc_fill_inquiry_response));
18020#line 295 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
18021static char __kstrtab_fill_inquiry_response[22] __attribute__((__section__("__ksymtab_strings"),
18022__aligned__(1))) =
18023#line 295
18024 { (char )'f', (char )'i', (char const )'l', (char const )'l',
18025 (char )'_', (char )'i', (char const )'n', (char const )'q',
18026 (char )'u', (char )'i', (char const )'r', (char const )'y',
18027 (char )'_', (char )'r', (char const )'e', (char const )'s',
18028 (char )'p', (char )'o', (char const )'n', (char const )'s',
18029 (char )'e', (char )'\000'};
18030#line 295 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
18031static struct kernel_symbol __ksymtab_fill_inquiry_response __attribute__((__used__,
18032__unused__, __section__("___ksymtab_gpl+fill_inquiry_response"))) = {(unsigned long )(& fill_inquiry_response), __kstrtab_fill_inquiry_response};
18033#line 297 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
18034static int usb_stor_control_thread(void *__us )
18035{ struct us_data *us ;
18036 struct Scsi_Host *host ;
18037 struct Scsi_Host *tmp___7 ;
18038 int tmp___8 ;
18039 int tmp___9 ;
18040 unsigned char data_ptr[36] ;
18041 int tmp___11 ;
18042 long volatile __ret ;
18043 struct task_struct *tmp___14 ;
18044 struct task_struct *tmp___15 ;
18045 struct task_struct *tmp___16 ;
18046 struct task_struct *tmp___17 ;
18047 struct task_struct *tmp___18 ;
18048 int tmp___19 ;
18049 struct task_struct *tmp___20 ;
18050 unsigned long __cil_tmp20 ;
18051 unsigned long __cil_tmp21 ;
18052 struct completion *__cil_tmp22 ;
18053 struct mutex *__cil_tmp23 ;
18054 unsigned long __cil_tmp24 ;
18055 unsigned long __cil_tmp25 ;
18056 spinlock_t *__cil_tmp26 ;
18057 void *__cil_tmp27 ;
18058 unsigned long __cil_tmp28 ;
18059 unsigned long __cil_tmp29 ;
18060 unsigned long __cil_tmp30 ;
18061 struct scsi_cmnd *__cil_tmp31 ;
18062 unsigned long __cil_tmp32 ;
18063 unsigned long __cil_tmp33 ;
18064 unsigned long __cil_tmp34 ;
18065 spinlock_t *__cil_tmp35 ;
18066 struct mutex *__cil_tmp36 ;
18067 unsigned long __cil_tmp37 ;
18068 unsigned long __cil_tmp38 ;
18069 unsigned long *__cil_tmp39 ;
18070 unsigned long volatile *__cil_tmp40 ;
18071 unsigned long __cil_tmp41 ;
18072 unsigned long __cil_tmp42 ;
18073 struct scsi_cmnd *__cil_tmp43 ;
18074 unsigned long __cil_tmp44 ;
18075 unsigned long __cil_tmp45 ;
18076 unsigned long __cil_tmp46 ;
18077 unsigned long __cil_tmp47 ;
18078 spinlock_t *__cil_tmp48 ;
18079 unsigned long __cil_tmp49 ;
18080 unsigned long __cil_tmp50 ;
18081 struct scsi_cmnd *__cil_tmp51 ;
18082 unsigned long __cil_tmp52 ;
18083 unsigned long __cil_tmp53 ;
18084 enum dma_data_direction __cil_tmp54 ;
18085 unsigned int __cil_tmp55 ;
18086 unsigned long __cil_tmp56 ;
18087 unsigned long __cil_tmp57 ;
18088 struct scsi_cmnd *__cil_tmp58 ;
18089 unsigned long __cil_tmp59 ;
18090 unsigned long __cil_tmp60 ;
18091 unsigned long __cil_tmp61 ;
18092 unsigned long __cil_tmp62 ;
18093 struct scsi_cmnd *__cil_tmp63 ;
18094 struct scsi_device *__cil_tmp64 ;
18095 unsigned long __cil_tmp65 ;
18096 unsigned long __cil_tmp66 ;
18097 unsigned long __cil_tmp67 ;
18098 unsigned long __cil_tmp68 ;
18099 unsigned long __cil_tmp69 ;
18100 unsigned long __cil_tmp70 ;
18101 unsigned long __cil_tmp71 ;
18102 unsigned long __cil_tmp72 ;
18103 struct scsi_cmnd *__cil_tmp73 ;
18104 struct scsi_device *__cil_tmp74 ;
18105 unsigned long __cil_tmp75 ;
18106 unsigned long __cil_tmp76 ;
18107 unsigned int __cil_tmp77 ;
18108 unsigned long __cil_tmp78 ;
18109 unsigned long __cil_tmp79 ;
18110 struct scsi_cmnd *__cil_tmp80 ;
18111 struct scsi_device *__cil_tmp81 ;
18112 unsigned long __cil_tmp82 ;
18113 unsigned long __cil_tmp83 ;
18114 unsigned int __cil_tmp84 ;
18115 unsigned long __cil_tmp85 ;
18116 unsigned long __cil_tmp86 ;
18117 struct scsi_cmnd *__cil_tmp87 ;
18118 unsigned long __cil_tmp88 ;
18119 unsigned long __cil_tmp89 ;
18120 unsigned long __cil_tmp90 ;
18121 unsigned long __cil_tmp91 ;
18122 u8 __cil_tmp92 ;
18123 unsigned int __cil_tmp93 ;
18124 unsigned long __cil_tmp94 ;
18125 unsigned long __cil_tmp95 ;
18126 struct scsi_cmnd *__cil_tmp96 ;
18127 struct scsi_device *__cil_tmp97 ;
18128 unsigned long __cil_tmp98 ;
18129 unsigned long __cil_tmp99 ;
18130 unsigned int __cil_tmp100 ;
18131 unsigned long __cil_tmp101 ;
18132 unsigned long __cil_tmp102 ;
18133 struct scsi_cmnd *__cil_tmp103 ;
18134 struct scsi_device *__cil_tmp104 ;
18135 unsigned long __cil_tmp105 ;
18136 unsigned long __cil_tmp106 ;
18137 unsigned int __cil_tmp107 ;
18138 unsigned long __cil_tmp108 ;
18139 unsigned long __cil_tmp109 ;
18140 struct scsi_cmnd *__cil_tmp110 ;
18141 struct scsi_device *__cil_tmp111 ;
18142 unsigned long __cil_tmp112 ;
18143 unsigned long __cil_tmp113 ;
18144 unsigned int __cil_tmp114 ;
18145 unsigned long __cil_tmp115 ;
18146 unsigned long __cil_tmp116 ;
18147 struct scsi_cmnd *__cil_tmp117 ;
18148 unsigned long __cil_tmp118 ;
18149 unsigned long __cil_tmp119 ;
18150 unsigned long __cil_tmp120 ;
18151 unsigned long __cil_tmp121 ;
18152 struct scsi_cmnd *__cil_tmp122 ;
18153 unsigned long __cil_tmp123 ;
18154 unsigned long __cil_tmp124 ;
18155 unsigned char *__cil_tmp125 ;
18156 unsigned char *__cil_tmp126 ;
18157 unsigned char __cil_tmp127 ;
18158 int __cil_tmp128 ;
18159 unsigned long __cil_tmp129 ;
18160 unsigned long __cil_tmp130 ;
18161 unsigned long __cil_tmp131 ;
18162 unsigned long __cil_tmp132 ;
18163 unsigned long __cil_tmp133 ;
18164 unsigned long __cil_tmp134 ;
18165 unsigned long __cil_tmp135 ;
18166 unsigned long __cil_tmp136 ;
18167 unsigned long __cil_tmp137 ;
18168 unsigned long __cil_tmp138 ;
18169 unsigned long __cil_tmp139 ;
18170 unsigned long __cil_tmp140 ;
18171 unsigned long __cil_tmp141 ;
18172 unsigned long __cil_tmp142 ;
18173 unsigned long __cil_tmp143 ;
18174 unsigned long __cil_tmp144 ;
18175 unsigned long __cil_tmp145 ;
18176 unsigned long __cil_tmp146 ;
18177 unsigned long __cil_tmp147 ;
18178 unsigned long __cil_tmp148 ;
18179 unsigned long __cil_tmp149 ;
18180 unsigned char *__cil_tmp150 ;
18181 unsigned long __cil_tmp151 ;
18182 unsigned long __cil_tmp152 ;
18183 struct scsi_cmnd *__cil_tmp153 ;
18184 unsigned long __cil_tmp154 ;
18185 unsigned long __cil_tmp155 ;
18186 unsigned long __cil_tmp156 ;
18187 unsigned long __cil_tmp157 ;
18188 struct scsi_cmnd *__cil_tmp158 ;
18189 unsigned long __cil_tmp159 ;
18190 unsigned long __cil_tmp160 ;
18191 void (*__cil_tmp161)(struct scsi_cmnd * , struct us_data * ) ;
18192 unsigned long __cil_tmp162 ;
18193 unsigned long __cil_tmp163 ;
18194 struct scsi_cmnd *__cil_tmp164 ;
18195 unsigned long __cil_tmp165 ;
18196 unsigned long __cil_tmp166 ;
18197 struct usb_device *__cil_tmp167 ;
18198 unsigned long __cil_tmp168 ;
18199 unsigned long __cil_tmp169 ;
18200 struct scsi_cmnd *__cil_tmp170 ;
18201 unsigned long __cil_tmp171 ;
18202 unsigned long __cil_tmp172 ;
18203 void (*__cil_tmp173)(struct scsi_cmnd * , struct us_data * ) ;
18204 unsigned long __cil_tmp174 ;
18205 unsigned long __cil_tmp175 ;
18206 struct scsi_cmnd *__cil_tmp176 ;
18207 unsigned long __cil_tmp177 ;
18208 unsigned long __cil_tmp178 ;
18209 struct usb_device *__cil_tmp179 ;
18210 unsigned long __cil_tmp180 ;
18211 unsigned long __cil_tmp181 ;
18212 spinlock_t *__cil_tmp182 ;
18213 int __cil_tmp183 ;
18214 unsigned long __cil_tmp184 ;
18215 unsigned long __cil_tmp185 ;
18216 struct scsi_cmnd *__cil_tmp186 ;
18217 unsigned long __cil_tmp187 ;
18218 unsigned long __cil_tmp188 ;
18219 int __cil_tmp189 ;
18220 unsigned long __cil_tmp190 ;
18221 unsigned long __cil_tmp191 ;
18222 struct scsi_cmnd *__cil_tmp192 ;
18223 unsigned long __cil_tmp193 ;
18224 unsigned long __cil_tmp194 ;
18225 int __cil_tmp195 ;
18226 unsigned long __cil_tmp196 ;
18227 unsigned long __cil_tmp197 ;
18228 struct scsi_cmnd *__cil_tmp198 ;
18229 unsigned long __cil_tmp199 ;
18230 unsigned long __cil_tmp200 ;
18231 void (*__cil_tmp201)(struct scsi_cmnd * ) ;
18232 unsigned long __cil_tmp202 ;
18233 unsigned long __cil_tmp203 ;
18234 struct scsi_cmnd *__cil_tmp204 ;
18235 unsigned long __cil_tmp205 ;
18236 unsigned long __cil_tmp206 ;
18237 unsigned long *__cil_tmp207 ;
18238 unsigned long volatile *__cil_tmp208 ;
18239 unsigned long __cil_tmp209 ;
18240 unsigned long __cil_tmp210 ;
18241 struct completion *__cil_tmp211 ;
18242 unsigned long __cil_tmp212 ;
18243 unsigned long __cil_tmp213 ;
18244 unsigned long *__cil_tmp214 ;
18245 unsigned long volatile *__cil_tmp215 ;
18246 unsigned long __cil_tmp216 ;
18247 unsigned long __cil_tmp217 ;
18248 unsigned long *__cil_tmp218 ;
18249 unsigned long volatile *__cil_tmp219 ;
18250 unsigned long __cil_tmp220 ;
18251 unsigned long __cil_tmp221 ;
18252 void *__cil_tmp222 ;
18253 unsigned long __cil_tmp223 ;
18254 unsigned long __cil_tmp224 ;
18255 spinlock_t *__cil_tmp225 ;
18256 struct mutex *__cil_tmp226 ;
18257
18258 {
18259 {
18260#line 299
18261 us = (struct us_data *)__us;
18262#line 300
18263 tmp___7 = us_to_host(us);
18264#line 300
18265 host = tmp___7;
18266 }
18267 {
18268#line 302
18269 while (1) {
18270 while_continue: ;
18271 {
18272#line 303
18273 printk("<7>usb-storage: *** thread sleeping.\n");
18274#line 304
18275 __cil_tmp20 = (unsigned long )us;
18276#line 304
18277 __cil_tmp21 = __cil_tmp20 + 400;
18278#line 304
18279 __cil_tmp22 = (struct completion *)__cil_tmp21;
18280#line 304
18281 tmp___8 = wait_for_completion_interruptible(__cil_tmp22);
18282 }
18283#line 304
18284 if (tmp___8) {
18285#line 305
18286 goto while_break;
18287 } else {
18288
18289 }
18290 {
18291#line 307
18292 printk("<7>usb-storage: *** thread awakened.\n");
18293#line 310
18294 __cil_tmp23 = (struct mutex *)us;
18295#line 310
18296 mutex_lock(__cil_tmp23);
18297#line 313
18298 __cil_tmp24 = (unsigned long )host;
18299#line 313
18300 __cil_tmp25 = __cil_tmp24 + 120;
18301#line 313
18302 __cil_tmp26 = *((spinlock_t **)__cil_tmp25);
18303#line 313
18304 spin_lock_irq(__cil_tmp26);
18305 }
18306 {
18307#line 316
18308 __cil_tmp27 = (void *)0;
18309#line 316
18310 __cil_tmp28 = (unsigned long )__cil_tmp27;
18311#line 316
18312 __cil_tmp29 = (unsigned long )us;
18313#line 316
18314 __cil_tmp30 = __cil_tmp29 + 192;
18315#line 316
18316 __cil_tmp31 = *((struct scsi_cmnd **)__cil_tmp30);
18317#line 316
18318 __cil_tmp32 = (unsigned long )__cil_tmp31;
18319#line 316
18320 if (__cil_tmp32 == __cil_tmp28) {
18321 {
18322#line 317
18323 __cil_tmp33 = (unsigned long )host;
18324#line 317
18325 __cil_tmp34 = __cil_tmp33 + 120;
18326#line 317
18327 __cil_tmp35 = *((spinlock_t **)__cil_tmp34);
18328#line 317
18329 spin_unlock_irq(__cil_tmp35);
18330#line 318
18331 __cil_tmp36 = (struct mutex *)us;
18332#line 318
18333 mutex_unlock(__cil_tmp36);
18334#line 319
18335 printk("<7>usb-storage: -- exiting\n");
18336 }
18337#line 320
18338 goto while_break;
18339 } else {
18340
18341 }
18342 }
18343 {
18344#line 324
18345 __cil_tmp37 = (unsigned long )us;
18346#line 324
18347 __cil_tmp38 = __cil_tmp37 + 104;
18348#line 324
18349 __cil_tmp39 = (unsigned long *)__cil_tmp38;
18350#line 324
18351 __cil_tmp40 = (unsigned long volatile *)__cil_tmp39;
18352#line 324
18353 tmp___9 = ant_test_bit(5U, __cil_tmp40);
18354 }
18355#line 324
18356 if (tmp___9) {
18357#line 325
18358 __cil_tmp41 = (unsigned long )us;
18359#line 325
18360 __cil_tmp42 = __cil_tmp41 + 192;
18361#line 325
18362 __cil_tmp43 = *((struct scsi_cmnd **)__cil_tmp42);
18363#line 325
18364 __cil_tmp44 = (unsigned long )__cil_tmp43;
18365#line 325
18366 __cil_tmp45 = __cil_tmp44 + 224;
18367#line 325
18368 *((int *)__cil_tmp45) = 5 << 16;
18369#line 326
18370 goto SkipForAbort;
18371 } else {
18372
18373 }
18374 {
18375#line 329
18376 __cil_tmp46 = (unsigned long )host;
18377#line 329
18378 __cil_tmp47 = __cil_tmp46 + 120;
18379#line 329
18380 __cil_tmp48 = *((spinlock_t **)__cil_tmp47);
18381#line 329
18382 spin_unlock_irq(__cil_tmp48);
18383 }
18384 {
18385#line 334
18386 __cil_tmp49 = (unsigned long )us;
18387#line 334
18388 __cil_tmp50 = __cil_tmp49 + 192;
18389#line 334
18390 __cil_tmp51 = *((struct scsi_cmnd **)__cil_tmp50);
18391#line 334
18392 __cil_tmp52 = (unsigned long )__cil_tmp51;
18393#line 334
18394 __cil_tmp53 = __cil_tmp52 + 76;
18395#line 334
18396 __cil_tmp54 = *((enum dma_data_direction *)__cil_tmp53);
18397#line 334
18398 __cil_tmp55 = (unsigned int )__cil_tmp54;
18399#line 334
18400 if (__cil_tmp55 == 0U) {
18401 {
18402#line 335
18403 printk("<7>usb-storage: UNKNOWN data direction\n");
18404#line 336
18405 __cil_tmp56 = (unsigned long )us;
18406#line 336
18407 __cil_tmp57 = __cil_tmp56 + 192;
18408#line 336
18409 __cil_tmp58 = *((struct scsi_cmnd **)__cil_tmp57);
18410#line 336
18411 __cil_tmp59 = (unsigned long )__cil_tmp58;
18412#line 336
18413 __cil_tmp60 = __cil_tmp59 + 224;
18414#line 336
18415 *((int *)__cil_tmp60) = 7 << 16;
18416 }
18417 } else {
18418 {
18419#line 342
18420 __cil_tmp61 = (unsigned long )us;
18421#line 342
18422 __cil_tmp62 = __cil_tmp61 + 192;
18423#line 342
18424 __cil_tmp63 = *((struct scsi_cmnd **)__cil_tmp62);
18425#line 342
18426 __cil_tmp64 = *((struct scsi_device **)__cil_tmp63);
18427#line 342
18428 __cil_tmp65 = (unsigned long )__cil_tmp64;
18429#line 342
18430 __cil_tmp66 = __cil_tmp65 + 152;
18431#line 342
18432 if (*((unsigned int *)__cil_tmp66)) {
18433 {
18434#line 342
18435 __cil_tmp67 = (unsigned long )us;
18436#line 342
18437 __cil_tmp68 = __cil_tmp67 + 96;
18438#line 342
18439 __cil_tmp69 = *((unsigned long *)__cil_tmp68);
18440#line 342
18441 __cil_tmp70 = __cil_tmp69 & 4UL;
18442#line 342
18443 if (! __cil_tmp70) {
18444 {
18445#line 344
18446 __cil_tmp71 = (unsigned long )us;
18447#line 344
18448 __cil_tmp72 = __cil_tmp71 + 192;
18449#line 344
18450 __cil_tmp73 = *((struct scsi_cmnd **)__cil_tmp72);
18451#line 344
18452 __cil_tmp74 = *((struct scsi_device **)__cil_tmp73);
18453#line 344
18454 __cil_tmp75 = (unsigned long )__cil_tmp74;
18455#line 344
18456 __cil_tmp76 = __cil_tmp75 + 152;
18457#line 344
18458 __cil_tmp77 = *((unsigned int *)__cil_tmp76);
18459#line 344
18460 __cil_tmp78 = (unsigned long )us;
18461#line 344
18462 __cil_tmp79 = __cil_tmp78 + 192;
18463#line 344
18464 __cil_tmp80 = *((struct scsi_cmnd **)__cil_tmp79);
18465#line 344
18466 __cil_tmp81 = *((struct scsi_device **)__cil_tmp80);
18467#line 344
18468 __cil_tmp82 = (unsigned long )__cil_tmp81;
18469#line 344
18470 __cil_tmp83 = __cil_tmp82 + 156;
18471#line 344
18472 __cil_tmp84 = *((unsigned int *)__cil_tmp83);
18473#line 344
18474 printk("<7>usb-storage: Bad target number (%d:%d)\n", __cil_tmp77, __cil_tmp84);
18475#line 346
18476 __cil_tmp85 = (unsigned long )us;
18477#line 346
18478 __cil_tmp86 = __cil_tmp85 + 192;
18479#line 346
18480 __cil_tmp87 = *((struct scsi_cmnd **)__cil_tmp86);
18481#line 346
18482 __cil_tmp88 = (unsigned long )__cil_tmp87;
18483#line 346
18484 __cil_tmp89 = __cil_tmp88 + 224;
18485#line 346
18486 *((int *)__cil_tmp89) = 4 << 16;
18487 }
18488 } else {
18489#line 342
18490 goto _L;
18491 }
18492 }
18493 } else {
18494 _L:
18495 {
18496#line 349
18497 __cil_tmp90 = (unsigned long )us;
18498#line 349
18499 __cil_tmp91 = __cil_tmp90 + 158;
18500#line 349
18501 __cil_tmp92 = *((u8 *)__cil_tmp91);
18502#line 349
18503 __cil_tmp93 = (unsigned int )__cil_tmp92;
18504#line 349
18505 __cil_tmp94 = (unsigned long )us;
18506#line 349
18507 __cil_tmp95 = __cil_tmp94 + 192;
18508#line 349
18509 __cil_tmp96 = *((struct scsi_cmnd **)__cil_tmp95);
18510#line 349
18511 __cil_tmp97 = *((struct scsi_device **)__cil_tmp96);
18512#line 349
18513 __cil_tmp98 = (unsigned long )__cil_tmp97;
18514#line 349
18515 __cil_tmp99 = __cil_tmp98 + 156;
18516#line 349
18517 __cil_tmp100 = *((unsigned int *)__cil_tmp99);
18518#line 349
18519 if (__cil_tmp100 > __cil_tmp93) {
18520 {
18521#line 350
18522 __cil_tmp101 = (unsigned long )us;
18523#line 350
18524 __cil_tmp102 = __cil_tmp101 + 192;
18525#line 350
18526 __cil_tmp103 = *((struct scsi_cmnd **)__cil_tmp102);
18527#line 350
18528 __cil_tmp104 = *((struct scsi_device **)__cil_tmp103);
18529#line 350
18530 __cil_tmp105 = (unsigned long )__cil_tmp104;
18531#line 350
18532 __cil_tmp106 = __cil_tmp105 + 152;
18533#line 350
18534 __cil_tmp107 = *((unsigned int *)__cil_tmp106);
18535#line 350
18536 __cil_tmp108 = (unsigned long )us;
18537#line 350
18538 __cil_tmp109 = __cil_tmp108 + 192;
18539#line 350
18540 __cil_tmp110 = *((struct scsi_cmnd **)__cil_tmp109);
18541#line 350
18542 __cil_tmp111 = *((struct scsi_device **)__cil_tmp110);
18543#line 350
18544 __cil_tmp112 = (unsigned long )__cil_tmp111;
18545#line 350
18546 __cil_tmp113 = __cil_tmp112 + 156;
18547#line 350
18548 __cil_tmp114 = *((unsigned int *)__cil_tmp113);
18549#line 350
18550 printk("<7>usb-storage: Bad LUN (%d:%d)\n", __cil_tmp107, __cil_tmp114);
18551#line 352
18552 __cil_tmp115 = (unsigned long )us;
18553#line 352
18554 __cil_tmp116 = __cil_tmp115 + 192;
18555#line 352
18556 __cil_tmp117 = *((struct scsi_cmnd **)__cil_tmp116);
18557#line 352
18558 __cil_tmp118 = (unsigned long )__cil_tmp117;
18559#line 352
18560 __cil_tmp119 = __cil_tmp118 + 224;
18561#line 352
18562 *((int *)__cil_tmp119) = 4 << 16;
18563 }
18564 } else {
18565 {
18566#line 357
18567 __cil_tmp120 = (unsigned long )us;
18568#line 357
18569 __cil_tmp121 = __cil_tmp120 + 192;
18570#line 357
18571 __cil_tmp122 = *((struct scsi_cmnd **)__cil_tmp121);
18572#line 357
18573 __cil_tmp123 = (unsigned long )__cil_tmp122;
18574#line 357
18575 __cil_tmp124 = __cil_tmp123 + 80;
18576#line 357
18577 __cil_tmp125 = *((unsigned char **)__cil_tmp124);
18578#line 357
18579 __cil_tmp126 = __cil_tmp125 + 0;
18580#line 357
18581 __cil_tmp127 = *__cil_tmp126;
18582#line 357
18583 __cil_tmp128 = (int )__cil_tmp127;
18584#line 357
18585 if (__cil_tmp128 == 18) {
18586 {
18587#line 357
18588 __cil_tmp129 = (unsigned long )us;
18589#line 357
18590 __cil_tmp130 = __cil_tmp129 + 96;
18591#line 357
18592 __cil_tmp131 = *((unsigned long *)__cil_tmp130);
18593#line 357
18594 if (__cil_tmp131 & 8UL) {
18595 {
18596#line 359
18597 __cil_tmp132 = 0 * 1UL;
18598#line 359
18599 __cil_tmp133 = (unsigned long )(data_ptr) + __cil_tmp132;
18600#line 359
18601 *((unsigned char *)__cil_tmp133) = (unsigned char)0;
18602#line 359
18603 __cil_tmp134 = 1 * 1UL;
18604#line 359
18605 __cil_tmp135 = (unsigned long )(data_ptr) + __cil_tmp134;
18606#line 359
18607 *((unsigned char *)__cil_tmp135) = (unsigned char)128;
18608#line 359
18609 __cil_tmp136 = 2 * 1UL;
18610#line 359
18611 __cil_tmp137 = (unsigned long )(data_ptr) + __cil_tmp136;
18612#line 359
18613 *((unsigned char *)__cil_tmp137) = (unsigned char)2;
18614#line 359
18615 __cil_tmp138 = 3 * 1UL;
18616#line 359
18617 __cil_tmp139 = (unsigned long )(data_ptr) + __cil_tmp138;
18618#line 359
18619 *((unsigned char *)__cil_tmp139) = (unsigned char)2;
18620#line 359
18621 __cil_tmp140 = 4 * 1UL;
18622#line 359
18623 __cil_tmp141 = (unsigned long )(data_ptr) + __cil_tmp140;
18624#line 359
18625 *((unsigned char *)__cil_tmp141) = (unsigned char)31;
18626#line 359
18627 __cil_tmp142 = 5 * 1UL;
18628#line 359
18629 __cil_tmp143 = (unsigned long )(data_ptr) + __cil_tmp142;
18630#line 359
18631 *((unsigned char *)__cil_tmp143) = (unsigned char)0;
18632#line 359
18633 __cil_tmp144 = 6 * 1UL;
18634#line 359
18635 __cil_tmp145 = (unsigned long )(data_ptr) + __cil_tmp144;
18636#line 359
18637 *((unsigned char *)__cil_tmp145) = (unsigned char)0;
18638#line 359
18639 __cil_tmp146 = 7 * 1UL;
18640#line 359
18641 __cil_tmp147 = (unsigned long )(data_ptr) + __cil_tmp146;
18642#line 359
18643 *((unsigned char *)__cil_tmp147) = (unsigned char)0;
18644#line 363
18645 printk("<7>usb-storage: Faking INQUIRY command\n");
18646#line 364
18647 __cil_tmp148 = 0 * 1UL;
18648#line 364
18649 __cil_tmp149 = (unsigned long )(data_ptr) + __cil_tmp148;
18650#line 364
18651 __cil_tmp150 = (unsigned char *)__cil_tmp149;
18652#line 364
18653 fill_inquiry_response(us, __cil_tmp150, 36U);
18654#line 365
18655 __cil_tmp151 = (unsigned long )us;
18656#line 365
18657 __cil_tmp152 = __cil_tmp151 + 192;
18658#line 365
18659 __cil_tmp153 = *((struct scsi_cmnd **)__cil_tmp152);
18660#line 365
18661 __cil_tmp154 = (unsigned long )__cil_tmp153;
18662#line 365
18663 __cil_tmp155 = __cil_tmp154 + 224;
18664#line 365
18665 *((int *)__cil_tmp155) = 0;
18666 }
18667 } else {
18668 {
18669#line 370
18670 __cil_tmp156 = (unsigned long )us;
18671#line 370
18672 __cil_tmp157 = __cil_tmp156 + 192;
18673#line 370
18674 __cil_tmp158 = *((struct scsi_cmnd **)__cil_tmp157);
18675#line 370
18676 usb_stor_show_command(__cil_tmp158);
18677#line 371
18678 __cil_tmp159 = (unsigned long )us;
18679#line 371
18680 __cil_tmp160 = __cil_tmp159 + 184;
18681#line 371
18682 __cil_tmp161 = *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp160);
18683#line 371
18684 __cil_tmp162 = (unsigned long )us;
18685#line 371
18686 __cil_tmp163 = __cil_tmp162 + 192;
18687#line 371
18688 __cil_tmp164 = *((struct scsi_cmnd **)__cil_tmp163);
18689#line 371
18690 (*__cil_tmp161)(__cil_tmp164, us);
18691#line 372
18692 __cil_tmp165 = (unsigned long )us;
18693#line 372
18694 __cil_tmp166 = __cil_tmp165 + 72;
18695#line 372
18696 __cil_tmp167 = *((struct usb_device **)__cil_tmp166);
18697#line 372
18698 usb_mark_last_busy(__cil_tmp167);
18699 }
18700 }
18701 }
18702 } else {
18703 {
18704#line 370
18705 __cil_tmp168 = (unsigned long )us;
18706#line 370
18707 __cil_tmp169 = __cil_tmp168 + 192;
18708#line 370
18709 __cil_tmp170 = *((struct scsi_cmnd **)__cil_tmp169);
18710#line 370
18711 usb_stor_show_command(__cil_tmp170);
18712#line 371
18713 __cil_tmp171 = (unsigned long )us;
18714#line 371
18715 __cil_tmp172 = __cil_tmp171 + 184;
18716#line 371
18717 __cil_tmp173 = *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp172);
18718#line 371
18719 __cil_tmp174 = (unsigned long )us;
18720#line 371
18721 __cil_tmp175 = __cil_tmp174 + 192;
18722#line 371
18723 __cil_tmp176 = *((struct scsi_cmnd **)__cil_tmp175);
18724#line 371
18725 (*__cil_tmp173)(__cil_tmp176, us);
18726#line 372
18727 __cil_tmp177 = (unsigned long )us;
18728#line 372
18729 __cil_tmp178 = __cil_tmp177 + 72;
18730#line 372
18731 __cil_tmp179 = *((struct usb_device **)__cil_tmp178);
18732#line 372
18733 usb_mark_last_busy(__cil_tmp179);
18734 }
18735 }
18736 }
18737 }
18738 }
18739 }
18740 }
18741 }
18742 }
18743 {
18744#line 376
18745 __cil_tmp180 = (unsigned long )host;
18746#line 376
18747 __cil_tmp181 = __cil_tmp180 + 120;
18748#line 376
18749 __cil_tmp182 = *((spinlock_t **)__cil_tmp181);
18750#line 376
18751 spin_lock_irq(__cil_tmp182);
18752 }
18753 {
18754#line 379
18755 __cil_tmp183 = 5 << 16;
18756#line 379
18757 __cil_tmp184 = (unsigned long )us;
18758#line 379
18759 __cil_tmp185 = __cil_tmp184 + 192;
18760#line 379
18761 __cil_tmp186 = *((struct scsi_cmnd **)__cil_tmp185);
18762#line 379
18763 __cil_tmp187 = (unsigned long )__cil_tmp186;
18764#line 379
18765 __cil_tmp188 = __cil_tmp187 + 224;
18766#line 379
18767 __cil_tmp189 = *((int *)__cil_tmp188);
18768#line 379
18769 if (__cil_tmp189 != __cil_tmp183) {
18770 {
18771#line 380
18772 __cil_tmp190 = (unsigned long )us;
18773#line 380
18774 __cil_tmp191 = __cil_tmp190 + 192;
18775#line 380
18776 __cil_tmp192 = *((struct scsi_cmnd **)__cil_tmp191);
18777#line 380
18778 __cil_tmp193 = (unsigned long )__cil_tmp192;
18779#line 380
18780 __cil_tmp194 = __cil_tmp193 + 224;
18781#line 380
18782 __cil_tmp195 = *((int *)__cil_tmp194);
18783#line 380
18784 printk("<7>usb-storage: scsi cmd done, result=0x%x\n", __cil_tmp195);
18785#line 382
18786 __cil_tmp196 = (unsigned long )us;
18787#line 382
18788 __cil_tmp197 = __cil_tmp196 + 192;
18789#line 382
18790 __cil_tmp198 = *((struct scsi_cmnd **)__cil_tmp197);
18791#line 382
18792 __cil_tmp199 = (unsigned long )__cil_tmp198;
18793#line 382
18794 __cil_tmp200 = __cil_tmp199 + 144;
18795#line 382
18796 __cil_tmp201 = *((void (**)(struct scsi_cmnd * ))__cil_tmp200);
18797#line 382
18798 __cil_tmp202 = (unsigned long )us;
18799#line 382
18800 __cil_tmp203 = __cil_tmp202 + 192;
18801#line 382
18802 __cil_tmp204 = *((struct scsi_cmnd **)__cil_tmp203);
18803#line 382
18804 (*__cil_tmp201)(__cil_tmp204);
18805 }
18806 } else {
18807 SkipForAbort:
18808 {
18809#line 385
18810 printk("<7>usb-storage: scsi command aborted\n");
18811 }
18812 }
18813 }
18814 {
18815#line 393
18816 __cil_tmp205 = (unsigned long )us;
18817#line 393
18818 __cil_tmp206 = __cil_tmp205 + 104;
18819#line 393
18820 __cil_tmp207 = (unsigned long *)__cil_tmp206;
18821#line 393
18822 __cil_tmp208 = (unsigned long volatile *)__cil_tmp207;
18823#line 393
18824 tmp___11 = ant_test_bit(5U, __cil_tmp208);
18825 }
18826#line 393
18827 if (tmp___11) {
18828 {
18829#line 394
18830 __cil_tmp209 = (unsigned long )us;
18831#line 394
18832 __cil_tmp210 = __cil_tmp209 + 448;
18833#line 394
18834 __cil_tmp211 = (struct completion *)__cil_tmp210;
18835#line 394
18836 complete(__cil_tmp211);
18837#line 397
18838 __cil_tmp212 = (unsigned long )us;
18839#line 397
18840 __cil_tmp213 = __cil_tmp212 + 104;
18841#line 397
18842 __cil_tmp214 = (unsigned long *)__cil_tmp213;
18843#line 397
18844 __cil_tmp215 = (unsigned long volatile *)__cil_tmp214;
18845#line 397
18846 clear_bit(2, __cil_tmp215);
18847#line 398
18848 __cil_tmp216 = (unsigned long )us;
18849#line 398
18850 __cil_tmp217 = __cil_tmp216 + 104;
18851#line 398
18852 __cil_tmp218 = (unsigned long *)__cil_tmp217;
18853#line 398
18854 __cil_tmp219 = (unsigned long volatile *)__cil_tmp218;
18855#line 398
18856 clear_bit(5, __cil_tmp219);
18857 }
18858 } else {
18859
18860 }
18861 {
18862#line 402
18863 __cil_tmp220 = (unsigned long )us;
18864#line 402
18865 __cil_tmp221 = __cil_tmp220 + 192;
18866#line 402
18867 __cil_tmp222 = (void *)0;
18868#line 402
18869 *((struct scsi_cmnd **)__cil_tmp221) = (struct scsi_cmnd *)__cil_tmp222;
18870#line 403
18871 __cil_tmp223 = (unsigned long )host;
18872#line 403
18873 __cil_tmp224 = __cil_tmp223 + 120;
18874#line 403
18875 __cil_tmp225 = *((spinlock_t **)__cil_tmp224);
18876#line 403
18877 spin_unlock_irq(__cil_tmp225);
18878#line 406
18879 __cil_tmp226 = (struct mutex *)us;
18880#line 406
18881 mutex_unlock(__cil_tmp226);
18882 }
18883 }
18884 while_break: ;
18885 }
18886 {
18887#line 410
18888 while (1) {
18889 while_continue___0: ;
18890 {
18891#line 411
18892 while (1) {
18893 while_continue___1: ;
18894#line 411
18895 __ret = (long volatile )1;
18896#line 411
18897 if ((int )8UL == 1) {
18898#line 411
18899 goto case_1;
18900 } else
18901#line 411
18902 if ((int )8UL == 2) {
18903#line 411
18904 goto case_2;
18905 } else
18906#line 411
18907 if ((int )8UL == 4) {
18908#line 411
18909 goto case_4;
18910 } else
18911#line 411
18912 if ((int )8UL == 8) {
18913#line 411
18914 goto case_8;
18915 } else {
18916 {
18917#line 411
18918 goto switch_default;
18919#line 411
18920 if (0) {
18921 case_1:
18922 {
18923#line 411
18924 tmp___15 = get_current();
18925#line 411
18926 __asm__ volatile (""
18927 "xchg"
18928 "b %b0, %1\n": "+q" (__ret), "+m" (*((long volatile *)tmp___15)): : "memory",
18929 "cc");
18930 }
18931#line 411
18932 goto switch_break;
18933 case_2:
18934 {
18935#line 411
18936 tmp___16 = get_current();
18937#line 411
18938 __asm__ volatile (""
18939 "xchg"
18940 "w %w0, %1\n": "+r" (__ret), "+m" (*((long volatile *)tmp___16)): : "memory",
18941 "cc");
18942 }
18943#line 411
18944 goto switch_break;
18945 case_4:
18946 {
18947#line 411
18948 tmp___17 = get_current();
18949#line 411
18950 __asm__ volatile (""
18951 "xchg"
18952 "l %0, %1\n": "+r" (__ret), "+m" (*((long volatile *)tmp___17)): : "memory",
18953 "cc");
18954 }
18955#line 411
18956 goto switch_break;
18957 case_8:
18958 {
18959#line 411
18960 tmp___18 = get_current();
18961#line 411
18962 __asm__ volatile (""
18963 "xchg"
18964 "q %q0, %1\n": "+r" (__ret), "+m" (*((long volatile *)tmp___18)): : "memory",
18965 "cc");
18966 }
18967#line 411
18968 goto switch_break;
18969 switch_default:
18970 {
18971#line 411
18972 __xchg_wrong_size();
18973 }
18974 } else {
18975 switch_break: ;
18976 }
18977 }
18978 }
18979#line 411
18980 goto while_break___1;
18981 }
18982 while_break___1: ;
18983 }
18984 {
18985#line 412
18986 tmp___19 = kthread_should_stop();
18987 }
18988#line 412
18989 if (tmp___19) {
18990#line 413
18991 goto while_break___0;
18992 } else {
18993
18994 }
18995 {
18996#line 414
18997 schedule();
18998 }
18999 }
19000 while_break___0: ;
19001 }
19002 {
19003#line 416
19004 while (1) {
19005 while_continue___2: ;
19006 {
19007#line 416
19008 tmp___20 = get_current();
19009#line 416
19010 *((long volatile *)tmp___20) = (long volatile )0;
19011 }
19012#line 416
19013 goto while_break___2;
19014 }
19015 while_break___2: ;
19016 }
19017#line 417
19018 return (0);
19019}
19020}
19021#line 425 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
19022static int associate_dev(struct us_data *us , struct usb_interface *intf )
19023{ void *tmp___7 ;
19024 void *tmp___8 ;
19025 unsigned long __cil_tmp5 ;
19026 unsigned long __cil_tmp6 ;
19027 unsigned long __cil_tmp7 ;
19028 unsigned long __cil_tmp8 ;
19029 unsigned long __cil_tmp9 ;
19030 unsigned long __cil_tmp10 ;
19031 unsigned long __cil_tmp11 ;
19032 unsigned long __cil_tmp12 ;
19033 unsigned long __cil_tmp13 ;
19034 struct usb_host_interface *__cil_tmp14 ;
19035 unsigned long __cil_tmp15 ;
19036 unsigned long __cil_tmp16 ;
19037 unsigned long __cil_tmp17 ;
19038 unsigned long __cil_tmp18 ;
19039 unsigned long __cil_tmp19 ;
19040 struct usb_device *__cil_tmp20 ;
19041 unsigned long __cil_tmp21 ;
19042 unsigned long __cil_tmp22 ;
19043 __le16 __cil_tmp23 ;
19044 int __cil_tmp24 ;
19045 unsigned long __cil_tmp25 ;
19046 unsigned long __cil_tmp26 ;
19047 unsigned long __cil_tmp27 ;
19048 struct usb_device *__cil_tmp28 ;
19049 unsigned long __cil_tmp29 ;
19050 unsigned long __cil_tmp30 ;
19051 __le16 __cil_tmp31 ;
19052 int __cil_tmp32 ;
19053 unsigned long __cil_tmp33 ;
19054 unsigned long __cil_tmp34 ;
19055 unsigned long __cil_tmp35 ;
19056 struct usb_device *__cil_tmp36 ;
19057 unsigned long __cil_tmp37 ;
19058 unsigned long __cil_tmp38 ;
19059 __le16 __cil_tmp39 ;
19060 int __cil_tmp40 ;
19061 unsigned long __cil_tmp41 ;
19062 unsigned long __cil_tmp42 ;
19063 unsigned long __cil_tmp43 ;
19064 struct usb_host_interface *__cil_tmp44 ;
19065 unsigned long __cil_tmp45 ;
19066 unsigned long __cil_tmp46 ;
19067 __u8 __cil_tmp47 ;
19068 int __cil_tmp48 ;
19069 unsigned long __cil_tmp49 ;
19070 unsigned long __cil_tmp50 ;
19071 unsigned long __cil_tmp51 ;
19072 struct usb_host_interface *__cil_tmp52 ;
19073 unsigned long __cil_tmp53 ;
19074 unsigned long __cil_tmp54 ;
19075 __u8 __cil_tmp55 ;
19076 int __cil_tmp56 ;
19077 void *__cil_tmp57 ;
19078 unsigned long __cil_tmp58 ;
19079 unsigned long __cil_tmp59 ;
19080 unsigned long __cil_tmp60 ;
19081 unsigned long __cil_tmp61 ;
19082 struct usb_ctrlrequest *__cil_tmp62 ;
19083 unsigned long __cil_tmp63 ;
19084 unsigned long __cil_tmp64 ;
19085 struct usb_device *__cil_tmp65 ;
19086 size_t __cil_tmp66 ;
19087 unsigned long __cil_tmp67 ;
19088 unsigned long __cil_tmp68 ;
19089 dma_addr_t *__cil_tmp69 ;
19090 unsigned long __cil_tmp70 ;
19091 unsigned long __cil_tmp71 ;
19092 unsigned long __cil_tmp72 ;
19093 unsigned long __cil_tmp73 ;
19094 unsigned char *__cil_tmp74 ;
19095
19096 {
19097 {
19098#line 427
19099 printk("<7>usb-storage: -- %s\n", "associate_dev");
19100#line 430
19101 __cil_tmp5 = (unsigned long )us;
19102#line 430
19103 __cil_tmp6 = __cil_tmp5 + 72;
19104#line 430
19105 *((struct usb_device **)__cil_tmp6) = interface_to_usbdev(intf);
19106#line 431
19107 __cil_tmp7 = (unsigned long )us;
19108#line 431
19109 __cil_tmp8 = __cil_tmp7 + 80;
19110#line 431
19111 *((struct usb_interface **)__cil_tmp8) = intf;
19112#line 432
19113 __cil_tmp9 = (unsigned long )us;
19114#line 432
19115 __cil_tmp10 = __cil_tmp9 + 159;
19116#line 432
19117 __cil_tmp11 = 0 + 2;
19118#line 432
19119 __cil_tmp12 = (unsigned long )intf;
19120#line 432
19121 __cil_tmp13 = __cil_tmp12 + 8;
19122#line 432
19123 __cil_tmp14 = *((struct usb_host_interface **)__cil_tmp13);
19124#line 432
19125 __cil_tmp15 = (unsigned long )__cil_tmp14;
19126#line 432
19127 __cil_tmp16 = __cil_tmp15 + __cil_tmp11;
19128#line 432
19129 *((u8 *)__cil_tmp10) = *((__u8 *)__cil_tmp16);
19130#line 433
19131 __cil_tmp17 = 904 + 8;
19132#line 433
19133 __cil_tmp18 = (unsigned long )us;
19134#line 433
19135 __cil_tmp19 = __cil_tmp18 + 72;
19136#line 433
19137 __cil_tmp20 = *((struct usb_device **)__cil_tmp19);
19138#line 433
19139 __cil_tmp21 = (unsigned long )__cil_tmp20;
19140#line 433
19141 __cil_tmp22 = __cil_tmp21 + __cil_tmp17;
19142#line 433
19143 __cil_tmp23 = *((__le16 *)__cil_tmp22);
19144#line 433
19145 __cil_tmp24 = (int )__cil_tmp23;
19146#line 433
19147 __cil_tmp25 = 904 + 10;
19148#line 433
19149 __cil_tmp26 = (unsigned long )us;
19150#line 433
19151 __cil_tmp27 = __cil_tmp26 + 72;
19152#line 433
19153 __cil_tmp28 = *((struct usb_device **)__cil_tmp27);
19154#line 433
19155 __cil_tmp29 = (unsigned long )__cil_tmp28;
19156#line 433
19157 __cil_tmp30 = __cil_tmp29 + __cil_tmp25;
19158#line 433
19159 __cil_tmp31 = *((__le16 *)__cil_tmp30);
19160#line 433
19161 __cil_tmp32 = (int )__cil_tmp31;
19162#line 433
19163 __cil_tmp33 = 904 + 12;
19164#line 433
19165 __cil_tmp34 = (unsigned long )us;
19166#line 433
19167 __cil_tmp35 = __cil_tmp34 + 72;
19168#line 433
19169 __cil_tmp36 = *((struct usb_device **)__cil_tmp35);
19170#line 433
19171 __cil_tmp37 = (unsigned long )__cil_tmp36;
19172#line 433
19173 __cil_tmp38 = __cil_tmp37 + __cil_tmp33;
19174#line 433
19175 __cil_tmp39 = *((__le16 *)__cil_tmp38);
19176#line 433
19177 __cil_tmp40 = (int )__cil_tmp39;
19178#line 433
19179 printk("<7>usb-storage: Vendor: 0x%04x, Product: 0x%04x, Revision: 0x%04x\n", __cil_tmp24,
19180 __cil_tmp32, __cil_tmp40);
19181#line 437
19182 __cil_tmp41 = 0 + 6;
19183#line 437
19184 __cil_tmp42 = (unsigned long )intf;
19185#line 437
19186 __cil_tmp43 = __cil_tmp42 + 8;
19187#line 437
19188 __cil_tmp44 = *((struct usb_host_interface **)__cil_tmp43);
19189#line 437
19190 __cil_tmp45 = (unsigned long )__cil_tmp44;
19191#line 437
19192 __cil_tmp46 = __cil_tmp45 + __cil_tmp41;
19193#line 437
19194 __cil_tmp47 = *((__u8 *)__cil_tmp46);
19195#line 437
19196 __cil_tmp48 = (int )__cil_tmp47;
19197#line 437
19198 __cil_tmp49 = 0 + 7;
19199#line 437
19200 __cil_tmp50 = (unsigned long )intf;
19201#line 437
19202 __cil_tmp51 = __cil_tmp50 + 8;
19203#line 437
19204 __cil_tmp52 = *((struct usb_host_interface **)__cil_tmp51);
19205#line 437
19206 __cil_tmp53 = (unsigned long )__cil_tmp52;
19207#line 437
19208 __cil_tmp54 = __cil_tmp53 + __cil_tmp49;
19209#line 437
19210 __cil_tmp55 = *((__u8 *)__cil_tmp54);
19211#line 437
19212 __cil_tmp56 = (int )__cil_tmp55;
19213#line 437
19214 printk("<7>usb-storage: Interface Subclass: 0x%02x, Protocol: 0x%02x\n", __cil_tmp48,
19215 __cil_tmp56);
19216#line 442
19217 __cil_tmp57 = (void *)us;
19218#line 442
19219 usb_set_intfdata(intf, __cil_tmp57);
19220#line 445
19221 tmp___7 = kmalloc(8UL, 208U);
19222#line 445
19223 __cil_tmp58 = (unsigned long )us;
19224#line 445
19225 __cil_tmp59 = __cil_tmp58 + 248;
19226#line 445
19227 *((struct usb_ctrlrequest **)__cil_tmp59) = (struct usb_ctrlrequest *)tmp___7;
19228 }
19229 {
19230#line 446
19231 __cil_tmp60 = (unsigned long )us;
19232#line 446
19233 __cil_tmp61 = __cil_tmp60 + 248;
19234#line 446
19235 __cil_tmp62 = *((struct usb_ctrlrequest **)__cil_tmp61);
19236#line 446
19237 if (! __cil_tmp62) {
19238 {
19239#line 447
19240 printk("<7>usb-storage: usb_ctrlrequest allocation failed\n");
19241 }
19242#line 448
19243 return (-12);
19244 } else {
19245
19246 }
19247 }
19248 {
19249#line 451
19250 __cil_tmp63 = (unsigned long )us;
19251#line 451
19252 __cil_tmp64 = __cil_tmp63 + 72;
19253#line 451
19254 __cil_tmp65 = *((struct usb_device **)__cil_tmp64);
19255#line 451
19256 __cil_tmp66 = (size_t )64;
19257#line 451
19258 __cil_tmp67 = (unsigned long )us;
19259#line 451
19260 __cil_tmp68 = __cil_tmp67 + 384;
19261#line 451
19262 __cil_tmp69 = (dma_addr_t *)__cil_tmp68;
19263#line 451
19264 tmp___8 = usb_alloc_coherent(__cil_tmp65, __cil_tmp66, 208U, __cil_tmp69);
19265#line 451
19266 __cil_tmp70 = (unsigned long )us;
19267#line 451
19268 __cil_tmp71 = __cil_tmp70 + 376;
19269#line 451
19270 *((unsigned char **)__cil_tmp71) = (unsigned char *)tmp___8;
19271 }
19272 {
19273#line 453
19274 __cil_tmp72 = (unsigned long )us;
19275#line 453
19276 __cil_tmp73 = __cil_tmp72 + 376;
19277#line 453
19278 __cil_tmp74 = *((unsigned char **)__cil_tmp73);
19279#line 453
19280 if (! __cil_tmp74) {
19281 {
19282#line 454
19283 printk("<7>usb-storage: I/O buffer allocation failed\n");
19284 }
19285#line 455
19286 return (-12);
19287 } else {
19288
19289 }
19290 }
19291#line 457
19292 return (0);
19293}
19294}
19295#line 464 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
19296static void adjust_quirks(struct us_data *us )
19297{ char *p ;
19298 u16 vid ;
19299 u16 pid ;
19300 unsigned int f ;
19301 unsigned int mask ;
19302 unsigned long tmp___7 ;
19303 unsigned long tmp___8 ;
19304 char *tmp___9 ;
19305 unsigned long __cil_tmp10 ;
19306 unsigned long __cil_tmp11 ;
19307 unsigned long __cil_tmp12 ;
19308 struct usb_device *__cil_tmp13 ;
19309 unsigned long __cil_tmp14 ;
19310 unsigned long __cil_tmp15 ;
19311 unsigned long __cil_tmp16 ;
19312 unsigned long __cil_tmp17 ;
19313 unsigned long __cil_tmp18 ;
19314 struct usb_device *__cil_tmp19 ;
19315 unsigned long __cil_tmp20 ;
19316 unsigned long __cil_tmp21 ;
19317 char **__cil_tmp22 ;
19318 unsigned long __cil_tmp23 ;
19319 unsigned long __cil_tmp24 ;
19320 char **__cil_tmp25 ;
19321 char *__cil_tmp26 ;
19322 char **__cil_tmp27 ;
19323 char *__cil_tmp28 ;
19324 char *__cil_tmp29 ;
19325 unsigned long __cil_tmp30 ;
19326 char **__cil_tmp31 ;
19327 char *__cil_tmp32 ;
19328 char __cil_tmp33 ;
19329 int __cil_tmp34 ;
19330 char **__cil_tmp35 ;
19331 char *__cil_tmp36 ;
19332 char *__cil_tmp37 ;
19333 char *__cil_tmp38 ;
19334 unsigned long __cil_tmp39 ;
19335 char **__cil_tmp40 ;
19336 char *__cil_tmp41 ;
19337 char __cil_tmp42 ;
19338 int __cil_tmp43 ;
19339 char **__cil_tmp44 ;
19340 char *__cil_tmp45 ;
19341 char **__cil_tmp46 ;
19342 char **__cil_tmp47 ;
19343 char **__cil_tmp48 ;
19344 char *__cil_tmp49 ;
19345 char __cil_tmp50 ;
19346 int __cil_tmp51 ;
19347 char **__cil_tmp52 ;
19348 char *__cil_tmp53 ;
19349 char __cil_tmp54 ;
19350 char **__cil_tmp55 ;
19351 char **__cil_tmp56 ;
19352 char *__cil_tmp57 ;
19353 char **__cil_tmp58 ;
19354 char *__cil_tmp59 ;
19355 char **__cil_tmp60 ;
19356 char *__cil_tmp61 ;
19357 char __cil_tmp62 ;
19358 int __cil_tmp63 ;
19359 char **__cil_tmp64 ;
19360 char *__cil_tmp65 ;
19361 char __cil_tmp66 ;
19362 int __cil_tmp67 ;
19363 unsigned long __cil_tmp68 ;
19364 unsigned long __cil_tmp69 ;
19365 unsigned long __cil_tmp70 ;
19366 unsigned int __cil_tmp71 ;
19367 unsigned long __cil_tmp72 ;
19368 unsigned long __cil_tmp73 ;
19369 unsigned long __cil_tmp74 ;
19370 unsigned long __cil_tmp75 ;
19371 unsigned long __cil_tmp76 ;
19372
19373 {
19374#line 467
19375 __cil_tmp10 = 904 + 8;
19376#line 467
19377 __cil_tmp11 = (unsigned long )us;
19378#line 467
19379 __cil_tmp12 = __cil_tmp11 + 72;
19380#line 467
19381 __cil_tmp13 = *((struct usb_device **)__cil_tmp12);
19382#line 467
19383 __cil_tmp14 = (unsigned long )__cil_tmp13;
19384#line 467
19385 __cil_tmp15 = __cil_tmp14 + __cil_tmp10;
19386#line 467
19387 vid = *((__le16 *)__cil_tmp15);
19388#line 468
19389 __cil_tmp16 = 904 + 10;
19390#line 468
19391 __cil_tmp17 = (unsigned long )us;
19392#line 468
19393 __cil_tmp18 = __cil_tmp17 + 72;
19394#line 468
19395 __cil_tmp19 = *((struct usb_device **)__cil_tmp18);
19396#line 468
19397 __cil_tmp20 = (unsigned long )__cil_tmp19;
19398#line 468
19399 __cil_tmp21 = __cil_tmp20 + __cil_tmp16;
19400#line 468
19401 pid = *((__le16 *)__cil_tmp21);
19402#line 469
19403 f = 0U;
19404#line 470
19405 mask = 2072241U;
19406#line 479
19407 __cil_tmp22 = & p;
19408#line 479
19409 __cil_tmp23 = 0 * 1UL;
19410#line 479
19411 __cil_tmp24 = (unsigned long )(quirks) + __cil_tmp23;
19412#line 479
19413 *__cil_tmp22 = (char *)__cil_tmp24;
19414 {
19415#line 480
19416 while (1) {
19417 while_continue: ;
19418 {
19419#line 480
19420 __cil_tmp25 = & p;
19421#line 480
19422 __cil_tmp26 = *__cil_tmp25;
19423#line 480
19424 if (*__cil_tmp26) {
19425
19426 } else {
19427#line 480
19428 goto while_break;
19429 }
19430 }
19431 {
19432#line 482
19433 __cil_tmp27 = & p;
19434#line 482
19435 __cil_tmp28 = *__cil_tmp27;
19436#line 482
19437 __cil_tmp29 = (char *)__cil_tmp28;
19438#line 482
19439 tmp___7 = simple_strtoul(__cil_tmp29, & p, 16U);
19440 }
19441 {
19442#line 482
19443 __cil_tmp30 = (unsigned long )vid;
19444#line 482
19445 if (__cil_tmp30 == tmp___7) {
19446 {
19447#line 482
19448 __cil_tmp31 = & p;
19449#line 482
19450 __cil_tmp32 = *__cil_tmp31;
19451#line 482
19452 __cil_tmp33 = *__cil_tmp32;
19453#line 482
19454 __cil_tmp34 = (int )__cil_tmp33;
19455#line 482
19456 if (__cil_tmp34 == 58) {
19457 {
19458#line 482
19459 __cil_tmp35 = & p;
19460#line 482
19461 __cil_tmp36 = *__cil_tmp35;
19462#line 482
19463 __cil_tmp37 = __cil_tmp36 + 1;
19464#line 482
19465 __cil_tmp38 = (char *)__cil_tmp37;
19466#line 482
19467 tmp___8 = simple_strtoul(__cil_tmp38, & p, 16U);
19468 }
19469 {
19470#line 482
19471 __cil_tmp39 = (unsigned long )pid;
19472#line 482
19473 if (__cil_tmp39 == tmp___8) {
19474 {
19475#line 482
19476 __cil_tmp40 = & p;
19477#line 482
19478 __cil_tmp41 = *__cil_tmp40;
19479#line 482
19480 __cil_tmp42 = *__cil_tmp41;
19481#line 482
19482 __cil_tmp43 = (int )__cil_tmp42;
19483#line 482
19484 if (__cil_tmp43 == 58) {
19485#line 486
19486 goto while_break;
19487 } else {
19488
19489 }
19490 }
19491 } else {
19492
19493 }
19494 }
19495 } else {
19496
19497 }
19498 }
19499 } else {
19500
19501 }
19502 }
19503 {
19504#line 489
19505 while (1) {
19506 while_continue___0: ;
19507 {
19508#line 489
19509 __cil_tmp44 = & p;
19510#line 489
19511 __cil_tmp45 = *__cil_tmp44;
19512#line 489
19513 if (*__cil_tmp45) {
19514
19515 } else {
19516#line 489
19517 goto while_break___0;
19518 }
19519 }
19520#line 490
19521 __cil_tmp46 = & p;
19522#line 490
19523 tmp___9 = *__cil_tmp46;
19524#line 490
19525 __cil_tmp47 = & p;
19526#line 490
19527 __cil_tmp48 = & p;
19528#line 490
19529 __cil_tmp49 = *__cil_tmp48;
19530#line 490
19531 *__cil_tmp47 = __cil_tmp49 + 1;
19532 {
19533#line 490
19534 __cil_tmp50 = *tmp___9;
19535#line 490
19536 __cil_tmp51 = (int )__cil_tmp50;
19537#line 490
19538 if (__cil_tmp51 == 44) {
19539#line 491
19540 goto while_break___0;
19541 } else {
19542
19543 }
19544 }
19545 }
19546 while_break___0: ;
19547 }
19548 }
19549 while_break: ;
19550 }
19551 {
19552#line 494
19553 __cil_tmp52 = & p;
19554#line 494
19555 __cil_tmp53 = *__cil_tmp52;
19556#line 494
19557 __cil_tmp54 = *__cil_tmp53;
19558#line 494
19559 if (! __cil_tmp54) {
19560#line 495
19561 return;
19562 } else {
19563
19564 }
19565 }
19566 {
19567#line 498
19568 while (1) {
19569 while_continue___1: ;
19570#line 498
19571 __cil_tmp55 = & p;
19572#line 498
19573 __cil_tmp56 = & p;
19574#line 498
19575 __cil_tmp57 = *__cil_tmp56;
19576#line 498
19577 *__cil_tmp55 = __cil_tmp57 + 1;
19578 {
19579#line 498
19580 __cil_tmp58 = & p;
19581#line 498
19582 __cil_tmp59 = *__cil_tmp58;
19583#line 498
19584 if (*__cil_tmp59) {
19585 {
19586#line 498
19587 __cil_tmp60 = & p;
19588#line 498
19589 __cil_tmp61 = *__cil_tmp60;
19590#line 498
19591 __cil_tmp62 = *__cil_tmp61;
19592#line 498
19593 __cil_tmp63 = (int )__cil_tmp62;
19594#line 498
19595 if (__cil_tmp63 != 44) {
19596
19597 } else {
19598#line 498
19599 goto while_break___1;
19600 }
19601 }
19602 } else {
19603#line 498
19604 goto while_break___1;
19605 }
19606 }
19607 {
19608#line 499
19609 __cil_tmp64 = & p;
19610#line 499
19611 __cil_tmp65 = *__cil_tmp64;
19612#line 499
19613 __cil_tmp66 = *__cil_tmp65;
19614#line 499
19615 __cil_tmp67 = (int )__cil_tmp66;
19616#line 500
19617 if ((__cil_tmp67 | 32) == 97) {
19618#line 500
19619 goto case_97;
19620 } else
19621#line 503
19622 if ((__cil_tmp67 | 32) == 98) {
19623#line 503
19624 goto case_98;
19625 } else
19626#line 506
19627 if ((__cil_tmp67 | 32) == 99) {
19628#line 506
19629 goto case_99;
19630 } else
19631#line 509
19632 if ((__cil_tmp67 | 32) == 100) {
19633#line 509
19634 goto case_100;
19635 } else
19636#line 512
19637 if ((__cil_tmp67 | 32) == 101) {
19638#line 512
19639 goto case_101;
19640 } else
19641#line 515
19642 if ((__cil_tmp67 | 32) == 104) {
19643#line 515
19644 goto case_104;
19645 } else
19646#line 518
19647 if ((__cil_tmp67 | 32) == 105) {
19648#line 518
19649 goto case_105;
19650 } else
19651#line 521
19652 if ((__cil_tmp67 | 32) == 108) {
19653#line 521
19654 goto case_108;
19655 } else
19656#line 524
19657 if ((__cil_tmp67 | 32) == 109) {
19658#line 524
19659 goto case_109;
19660 } else
19661#line 527
19662 if ((__cil_tmp67 | 32) == 110) {
19663#line 527
19664 goto case_110;
19665 } else
19666#line 530
19667 if ((__cil_tmp67 | 32) == 111) {
19668#line 530
19669 goto case_111;
19670 } else
19671#line 533
19672 if ((__cil_tmp67 | 32) == 114) {
19673#line 533
19674 goto case_114;
19675 } else
19676#line 536
19677 if ((__cil_tmp67 | 32) == 115) {
19678#line 536
19679 goto case_115;
19680 } else
19681#line 539
19682 if ((__cil_tmp67 | 32) == 119) {
19683#line 539
19684 goto case_119;
19685 } else
19686#line 499
19687 if (0) {
19688 case_97:
19689#line 501
19690 f = f | 32768U;
19691#line 502
19692 goto switch_break;
19693 case_98:
19694#line 504
19695 f = f | 131072U;
19696#line 505
19697 goto switch_break;
19698 case_99:
19699#line 507
19700 f = f | 16U;
19701#line 508
19702 goto switch_break;
19703 case_100:
19704#line 510
19705 f = f | 262144U;
19706#line 511
19707 goto switch_break;
19708 case_101:
19709#line 513
19710 f = f | 524288U;
19711#line 514
19712 goto switch_break;
19713 case_104:
19714#line 516
19715 f = f | 4096U;
19716#line 517
19717 goto switch_break;
19718 case_105:
19719#line 519
19720 f = f | 2048U;
19721#line 520
19722 goto switch_break;
19723 case_108:
19724#line 522
19725 f = f | 128U;
19726#line 523
19727 goto switch_break;
19728 case_109:
19729#line 525
19730 f = f | 1024U;
19731#line 526
19732 goto switch_break;
19733 case_110:
19734#line 528
19735 f = f | 1048576U;
19736#line 529
19737 goto switch_break;
19738 case_111:
19739#line 531
19740 f = f | 65536U;
19741#line 532
19742 goto switch_break;
19743 case_114:
19744#line 534
19745 f = f | 32U;
19746#line 535
19747 goto switch_break;
19748 case_115:
19749#line 537
19750 f = f | 1U;
19751#line 538
19752 goto switch_break;
19753 case_119:
19754#line 540
19755 f = f | 512U;
19756#line 541
19757 goto switch_break;
19758 } else {
19759 switch_break: ;
19760 }
19761 }
19762 }
19763 while_break___1: ;
19764 }
19765#line 545
19766 __cil_tmp68 = (unsigned long )us;
19767#line 545
19768 __cil_tmp69 = __cil_tmp68 + 96;
19769#line 545
19770 __cil_tmp70 = (unsigned long )f;
19771#line 545
19772 __cil_tmp71 = ~ mask;
19773#line 545
19774 __cil_tmp72 = (unsigned long )__cil_tmp71;
19775#line 545
19776 __cil_tmp73 = (unsigned long )us;
19777#line 545
19778 __cil_tmp74 = __cil_tmp73 + 96;
19779#line 545
19780 __cil_tmp75 = *((unsigned long *)__cil_tmp74);
19781#line 545
19782 __cil_tmp76 = __cil_tmp75 & __cil_tmp72;
19783#line 545
19784 *((unsigned long *)__cil_tmp69) = __cil_tmp76 | __cil_tmp70;
19785#line 546
19786 return;
19787}
19788}
19789#line 592
19790static int get_device_info(struct us_data *us , struct usb_device_id *id ,
19791 struct us_unusual_dev *unusual_dev ) ;
19792#line 592 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
19793static char *msgs[3] = { "an unneeded SubClass entry", "an unneeded Protocol entry", "unneeded SubClass and Protocol entries"};
19794#line 549 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
19795static int get_device_info(struct us_data *us , struct usb_device_id *id ,
19796 struct us_unusual_dev *unusual_dev )
19797{ struct usb_device *dev ;
19798 struct usb_interface_descriptor *idesc ;
19799 struct device *pdev ;
19800 struct usb_device_descriptor *ddesc ;
19801 int msg ;
19802 struct new_utsname *tmp___7 ;
19803 unsigned long __cil_tmp10 ;
19804 unsigned long __cil_tmp11 ;
19805 unsigned long __cil_tmp12 ;
19806 unsigned long __cil_tmp13 ;
19807 struct usb_interface *__cil_tmp14 ;
19808 unsigned long __cil_tmp15 ;
19809 unsigned long __cil_tmp16 ;
19810 struct usb_host_interface *__cil_tmp17 ;
19811 unsigned long __cil_tmp18 ;
19812 unsigned long __cil_tmp19 ;
19813 struct usb_interface *__cil_tmp20 ;
19814 unsigned long __cil_tmp21 ;
19815 unsigned long __cil_tmp22 ;
19816 unsigned long __cil_tmp23 ;
19817 unsigned long __cil_tmp24 ;
19818 unsigned long __cil_tmp25 ;
19819 unsigned long __cil_tmp26 ;
19820 __u8 __cil_tmp27 ;
19821 int __cil_tmp28 ;
19822 unsigned long __cil_tmp29 ;
19823 unsigned long __cil_tmp30 ;
19824 unsigned long __cil_tmp31 ;
19825 unsigned long __cil_tmp32 ;
19826 unsigned long __cil_tmp33 ;
19827 unsigned long __cil_tmp34 ;
19828 unsigned long __cil_tmp35 ;
19829 unsigned long __cil_tmp36 ;
19830 unsigned long __cil_tmp37 ;
19831 unsigned long __cil_tmp38 ;
19832 __u8 __cil_tmp39 ;
19833 int __cil_tmp40 ;
19834 unsigned long __cil_tmp41 ;
19835 unsigned long __cil_tmp42 ;
19836 unsigned long __cil_tmp43 ;
19837 unsigned long __cil_tmp44 ;
19838 unsigned long __cil_tmp45 ;
19839 unsigned long __cil_tmp46 ;
19840 unsigned long __cil_tmp47 ;
19841 unsigned long __cil_tmp48 ;
19842 unsigned long __cil_tmp49 ;
19843 unsigned long __cil_tmp50 ;
19844 unsigned long __cil_tmp51 ;
19845 unsigned long __cil_tmp52 ;
19846 kernel_ulong_t __cil_tmp53 ;
19847 unsigned long __cil_tmp54 ;
19848 unsigned long __cil_tmp55 ;
19849 unsigned long __cil_tmp56 ;
19850 unsigned long __cil_tmp57 ;
19851 struct device *__cil_tmp58 ;
19852 unsigned long __cil_tmp59 ;
19853 unsigned long __cil_tmp60 ;
19854 enum usb_device_speed __cil_tmp61 ;
19855 unsigned int __cil_tmp62 ;
19856 unsigned long __cil_tmp63 ;
19857 unsigned long __cil_tmp64 ;
19858 unsigned long __cil_tmp65 ;
19859 unsigned long __cil_tmp66 ;
19860 unsigned long __cil_tmp67 ;
19861 unsigned long __cil_tmp68 ;
19862 unsigned long __cil_tmp69 ;
19863 struct device *__cil_tmp70 ;
19864 unsigned long __cil_tmp71 ;
19865 unsigned long __cil_tmp72 ;
19866 unsigned long __cil_tmp73 ;
19867 __le16 __cil_tmp74 ;
19868 int __cil_tmp75 ;
19869 unsigned long __cil_tmp76 ;
19870 unsigned long __cil_tmp77 ;
19871 unsigned long __cil_tmp78 ;
19872 __le16 __cil_tmp79 ;
19873 int __cil_tmp80 ;
19874 unsigned long __cil_tmp81 ;
19875 unsigned long __cil_tmp82 ;
19876 unsigned long __cil_tmp83 ;
19877 unsigned long __cil_tmp84 ;
19878 unsigned long __cil_tmp85 ;
19879 unsigned long __cil_tmp86 ;
19880 unsigned long __cil_tmp87 ;
19881 unsigned long __cil_tmp88 ;
19882 unsigned long __cil_tmp89 ;
19883 unsigned long __cil_tmp90 ;
19884 unsigned long __cil_tmp91 ;
19885 __u8 __cil_tmp92 ;
19886 int __cil_tmp93 ;
19887 unsigned long __cil_tmp94 ;
19888 unsigned long __cil_tmp95 ;
19889 __u8 __cil_tmp96 ;
19890 int __cil_tmp97 ;
19891 unsigned long __cil_tmp98 ;
19892 unsigned long __cil_tmp99 ;
19893 u8 __cil_tmp100 ;
19894 int __cil_tmp101 ;
19895 unsigned long __cil_tmp102 ;
19896 unsigned long __cil_tmp103 ;
19897 __u8 __cil_tmp104 ;
19898 int __cil_tmp105 ;
19899 unsigned long __cil_tmp106 ;
19900 unsigned long __cil_tmp107 ;
19901 __u8 __cil_tmp108 ;
19902 int __cil_tmp109 ;
19903 unsigned long __cil_tmp110 ;
19904 unsigned long __cil_tmp111 ;
19905 u8 __cil_tmp112 ;
19906 int __cil_tmp113 ;
19907 unsigned long __cil_tmp114 ;
19908 unsigned long __cil_tmp115 ;
19909 unsigned long __cil_tmp116 ;
19910 unsigned long __cil_tmp117 ;
19911 struct device *__cil_tmp118 ;
19912 unsigned long __cil_tmp119 ;
19913 unsigned long __cil_tmp120 ;
19914 __le16 __cil_tmp121 ;
19915 int __cil_tmp122 ;
19916 unsigned long __cil_tmp123 ;
19917 unsigned long __cil_tmp124 ;
19918 __le16 __cil_tmp125 ;
19919 int __cil_tmp126 ;
19920 unsigned long __cil_tmp127 ;
19921 unsigned long __cil_tmp128 ;
19922 __le16 __cil_tmp129 ;
19923 int __cil_tmp130 ;
19924 unsigned long __cil_tmp131 ;
19925 unsigned long __cil_tmp132 ;
19926 __u8 __cil_tmp133 ;
19927 int __cil_tmp134 ;
19928 unsigned long __cil_tmp135 ;
19929 unsigned long __cil_tmp136 ;
19930 __u8 __cil_tmp137 ;
19931 int __cil_tmp138 ;
19932 unsigned long __cil_tmp139 ;
19933 unsigned long __cil_tmp140 ;
19934 char *__cil_tmp141 ;
19935 unsigned long __cil_tmp142 ;
19936 unsigned long __cil_tmp143 ;
19937 unsigned long __cil_tmp144 ;
19938 unsigned long __cil_tmp145 ;
19939 char *__cil_tmp146 ;
19940
19941 {
19942#line 552
19943 __cil_tmp10 = (unsigned long )us;
19944#line 552
19945 __cil_tmp11 = __cil_tmp10 + 72;
19946#line 552
19947 dev = *((struct usb_device **)__cil_tmp11);
19948#line 553
19949 __cil_tmp12 = (unsigned long )us;
19950#line 553
19951 __cil_tmp13 = __cil_tmp12 + 80;
19952#line 553
19953 __cil_tmp14 = *((struct usb_interface **)__cil_tmp13);
19954#line 553
19955 __cil_tmp15 = (unsigned long )__cil_tmp14;
19956#line 553
19957 __cil_tmp16 = __cil_tmp15 + 8;
19958#line 553
19959 __cil_tmp17 = *((struct usb_host_interface **)__cil_tmp16);
19960#line 553
19961 idesc = (struct usb_interface_descriptor *)__cil_tmp17;
19962#line 555
19963 __cil_tmp18 = (unsigned long )us;
19964#line 555
19965 __cil_tmp19 = __cil_tmp18 + 80;
19966#line 555
19967 __cil_tmp20 = *((struct usb_interface **)__cil_tmp19);
19968#line 555
19969 __cil_tmp21 = (unsigned long )__cil_tmp20;
19970#line 555
19971 __cil_tmp22 = __cil_tmp21 + 48;
19972#line 555
19973 pdev = (struct device *)__cil_tmp22;
19974#line 558
19975 __cil_tmp23 = (unsigned long )us;
19976#line 558
19977 __cil_tmp24 = __cil_tmp23 + 88;
19978#line 558
19979 *((struct us_unusual_dev **)__cil_tmp24) = unusual_dev;
19980 {
19981#line 559
19982 __cil_tmp25 = (unsigned long )unusual_dev;
19983#line 559
19984 __cil_tmp26 = __cil_tmp25 + 16;
19985#line 559
19986 __cil_tmp27 = *((__u8 *)__cil_tmp26);
19987#line 559
19988 __cil_tmp28 = (int )__cil_tmp27;
19989#line 559
19990 if (__cil_tmp28 == 255) {
19991#line 559
19992 __cil_tmp29 = (unsigned long )us;
19993#line 559
19994 __cil_tmp30 = __cil_tmp29 + 156;
19995#line 559
19996 __cil_tmp31 = (unsigned long )idesc;
19997#line 559
19998 __cil_tmp32 = __cil_tmp31 + 6;
19999#line 559
20000 *((u8 *)__cil_tmp30) = *((__u8 *)__cil_tmp32);
20001 } else {
20002#line 559
20003 __cil_tmp33 = (unsigned long )us;
20004#line 559
20005 __cil_tmp34 = __cil_tmp33 + 156;
20006#line 559
20007 __cil_tmp35 = (unsigned long )unusual_dev;
20008#line 559
20009 __cil_tmp36 = __cil_tmp35 + 16;
20010#line 559
20011 *((u8 *)__cil_tmp34) = *((__u8 *)__cil_tmp36);
20012 }
20013 }
20014 {
20015#line 562
20016 __cil_tmp37 = (unsigned long )unusual_dev;
20017#line 562
20018 __cil_tmp38 = __cil_tmp37 + 17;
20019#line 562
20020 __cil_tmp39 = *((__u8 *)__cil_tmp38);
20021#line 562
20022 __cil_tmp40 = (int )__cil_tmp39;
20023#line 562
20024 if (__cil_tmp40 == 255) {
20025#line 562
20026 __cil_tmp41 = (unsigned long )us;
20027#line 562
20028 __cil_tmp42 = __cil_tmp41 + 157;
20029#line 562
20030 __cil_tmp43 = (unsigned long )idesc;
20031#line 562
20032 __cil_tmp44 = __cil_tmp43 + 7;
20033#line 562
20034 *((u8 *)__cil_tmp42) = *((__u8 *)__cil_tmp44);
20035 } else {
20036#line 562
20037 __cil_tmp45 = (unsigned long )us;
20038#line 562
20039 __cil_tmp46 = __cil_tmp45 + 157;
20040#line 562
20041 __cil_tmp47 = (unsigned long )unusual_dev;
20042#line 562
20043 __cil_tmp48 = __cil_tmp47 + 17;
20044#line 562
20045 *((u8 *)__cil_tmp46) = *((__u8 *)__cil_tmp48);
20046 }
20047 }
20048 {
20049#line 565
20050 __cil_tmp49 = (unsigned long )us;
20051#line 565
20052 __cil_tmp50 = __cil_tmp49 + 96;
20053#line 565
20054 __cil_tmp51 = (unsigned long )id;
20055#line 565
20056 __cil_tmp52 = __cil_tmp51 + 16;
20057#line 565
20058 __cil_tmp53 = *((kernel_ulong_t *)__cil_tmp52);
20059#line 565
20060 __cil_tmp54 = __cil_tmp53 & 16777215UL;
20061#line 565
20062 *((unsigned long *)__cil_tmp50) = (unsigned long )__cil_tmp54;
20063#line 566
20064 adjust_quirks(us);
20065 }
20066 {
20067#line 568
20068 __cil_tmp55 = (unsigned long )us;
20069#line 568
20070 __cil_tmp56 = __cil_tmp55 + 96;
20071#line 568
20072 __cil_tmp57 = *((unsigned long *)__cil_tmp56);
20073#line 568
20074 if (__cil_tmp57 & 2048UL) {
20075 {
20076#line 569
20077 __cil_tmp58 = (struct device *)pdev;
20078#line 569
20079 _dev_info(__cil_tmp58, "device ignored\n");
20080 }
20081#line 570
20082 return (-19);
20083 } else {
20084
20085 }
20086 }
20087 {
20088#line 577
20089 __cil_tmp59 = (unsigned long )dev;
20090#line 577
20091 __cil_tmp60 = __cil_tmp59 + 28;
20092#line 577
20093 __cil_tmp61 = *((enum usb_device_speed *)__cil_tmp60);
20094#line 577
20095 __cil_tmp62 = (unsigned int )__cil_tmp61;
20096#line 577
20097 if (__cil_tmp62 != 3U) {
20098#line 578
20099 __cil_tmp63 = (unsigned long )us;
20100#line 578
20101 __cil_tmp64 = __cil_tmp63 + 96;
20102#line 578
20103 __cil_tmp65 = (unsigned long )us;
20104#line 578
20105 __cil_tmp66 = __cil_tmp65 + 96;
20106#line 578
20107 __cil_tmp67 = *((unsigned long *)__cil_tmp66);
20108#line 578
20109 *((unsigned long *)__cil_tmp64) = __cil_tmp67 & 0xfffffffffffffeffUL;
20110 } else {
20111
20112 }
20113 }
20114 {
20115#line 580
20116 __cil_tmp68 = (unsigned long )us;
20117#line 580
20118 __cil_tmp69 = __cil_tmp68 + 96;
20119#line 580
20120 if (*((unsigned long *)__cil_tmp69)) {
20121 {
20122#line 581
20123 __cil_tmp70 = (struct device *)pdev;
20124#line 581
20125 __cil_tmp71 = 904 + 8;
20126#line 581
20127 __cil_tmp72 = (unsigned long )dev;
20128#line 581
20129 __cil_tmp73 = __cil_tmp72 + __cil_tmp71;
20130#line 581
20131 __cil_tmp74 = *((__le16 *)__cil_tmp73);
20132#line 581
20133 __cil_tmp75 = (int )__cil_tmp74;
20134#line 581
20135 __cil_tmp76 = 904 + 10;
20136#line 581
20137 __cil_tmp77 = (unsigned long )dev;
20138#line 581
20139 __cil_tmp78 = __cil_tmp77 + __cil_tmp76;
20140#line 581
20141 __cil_tmp79 = *((__le16 *)__cil_tmp78);
20142#line 581
20143 __cil_tmp80 = (int )__cil_tmp79;
20144#line 581
20145 __cil_tmp81 = (unsigned long )us;
20146#line 581
20147 __cil_tmp82 = __cil_tmp81 + 96;
20148#line 581
20149 __cil_tmp83 = *((unsigned long *)__cil_tmp82);
20150#line 581
20151 _dev_info(__cil_tmp70, "Quirks match for vid %04x pid %04x: %lx\n", __cil_tmp75,
20152 __cil_tmp80, __cil_tmp83);
20153 }
20154 } else {
20155
20156 }
20157 }
20158 {
20159#line 591
20160 __cil_tmp84 = (unsigned long )id;
20161#line 591
20162 __cil_tmp85 = __cil_tmp84 + 2;
20163#line 591
20164 if (*((__u16 *)__cil_tmp85)) {
20165#line 591
20166 goto _L;
20167 } else {
20168 {
20169#line 591
20170 __cil_tmp86 = (unsigned long )id;
20171#line 591
20172 __cil_tmp87 = __cil_tmp86 + 4;
20173#line 591
20174 if (*((__u16 *)__cil_tmp87)) {
20175 _L:
20176#line 596
20177 __cil_tmp88 = (unsigned long )dev;
20178#line 596
20179 __cil_tmp89 = __cil_tmp88 + 904;
20180#line 596
20181 ddesc = (struct usb_device_descriptor *)__cil_tmp89;
20182#line 597
20183 msg = -1;
20184 {
20185#line 599
20186 __cil_tmp90 = (unsigned long )unusual_dev;
20187#line 599
20188 __cil_tmp91 = __cil_tmp90 + 16;
20189#line 599
20190 __cil_tmp92 = *((__u8 *)__cil_tmp91);
20191#line 599
20192 __cil_tmp93 = (int )__cil_tmp92;
20193#line 599
20194 if (__cil_tmp93 != 255) {
20195 {
20196#line 599
20197 __cil_tmp94 = (unsigned long )idesc;
20198#line 599
20199 __cil_tmp95 = __cil_tmp94 + 6;
20200#line 599
20201 __cil_tmp96 = *((__u8 *)__cil_tmp95);
20202#line 599
20203 __cil_tmp97 = (int )__cil_tmp96;
20204#line 599
20205 __cil_tmp98 = (unsigned long )us;
20206#line 599
20207 __cil_tmp99 = __cil_tmp98 + 156;
20208#line 599
20209 __cil_tmp100 = *((u8 *)__cil_tmp99);
20210#line 599
20211 __cil_tmp101 = (int )__cil_tmp100;
20212#line 599
20213 if (__cil_tmp101 == __cil_tmp97) {
20214#line 601
20215 msg = msg + 1;
20216 } else {
20217
20218 }
20219 }
20220 } else {
20221
20222 }
20223 }
20224 {
20225#line 602
20226 __cil_tmp102 = (unsigned long )unusual_dev;
20227#line 602
20228 __cil_tmp103 = __cil_tmp102 + 17;
20229#line 602
20230 __cil_tmp104 = *((__u8 *)__cil_tmp103);
20231#line 602
20232 __cil_tmp105 = (int )__cil_tmp104;
20233#line 602
20234 if (__cil_tmp105 != 255) {
20235 {
20236#line 602
20237 __cil_tmp106 = (unsigned long )idesc;
20238#line 602
20239 __cil_tmp107 = __cil_tmp106 + 7;
20240#line 602
20241 __cil_tmp108 = *((__u8 *)__cil_tmp107);
20242#line 602
20243 __cil_tmp109 = (int )__cil_tmp108;
20244#line 602
20245 __cil_tmp110 = (unsigned long )us;
20246#line 602
20247 __cil_tmp111 = __cil_tmp110 + 157;
20248#line 602
20249 __cil_tmp112 = *((u8 *)__cil_tmp111);
20250#line 602
20251 __cil_tmp113 = (int )__cil_tmp112;
20252#line 602
20253 if (__cil_tmp113 == __cil_tmp109) {
20254#line 604
20255 msg = msg + 2;
20256 } else {
20257
20258 }
20259 }
20260 } else {
20261
20262 }
20263 }
20264#line 605
20265 if (msg >= 0) {
20266 {
20267#line 605
20268 __cil_tmp114 = (unsigned long )us;
20269#line 605
20270 __cil_tmp115 = __cil_tmp114 + 96;
20271#line 605
20272 __cil_tmp116 = *((unsigned long *)__cil_tmp115);
20273#line 605
20274 __cil_tmp117 = __cil_tmp116 & 2UL;
20275#line 605
20276 if (! __cil_tmp117) {
20277 {
20278#line 606
20279 tmp___7 = utsname();
20280#line 606
20281 __cil_tmp118 = (struct device *)pdev;
20282#line 606
20283 __cil_tmp119 = (unsigned long )ddesc;
20284#line 606
20285 __cil_tmp120 = __cil_tmp119 + 8;
20286#line 606
20287 __cil_tmp121 = *((__le16 *)__cil_tmp120);
20288#line 606
20289 __cil_tmp122 = (int )__cil_tmp121;
20290#line 606
20291 __cil_tmp123 = (unsigned long )ddesc;
20292#line 606
20293 __cil_tmp124 = __cil_tmp123 + 10;
20294#line 606
20295 __cil_tmp125 = *((__le16 *)__cil_tmp124);
20296#line 606
20297 __cil_tmp126 = (int )__cil_tmp125;
20298#line 606
20299 __cil_tmp127 = (unsigned long )ddesc;
20300#line 606
20301 __cil_tmp128 = __cil_tmp127 + 12;
20302#line 606
20303 __cil_tmp129 = *((__le16 *)__cil_tmp128);
20304#line 606
20305 __cil_tmp130 = (int )__cil_tmp129;
20306#line 606
20307 __cil_tmp131 = (unsigned long )idesc;
20308#line 606
20309 __cil_tmp132 = __cil_tmp131 + 6;
20310#line 606
20311 __cil_tmp133 = *((__u8 *)__cil_tmp132);
20312#line 606
20313 __cil_tmp134 = (int )__cil_tmp133;
20314#line 606
20315 __cil_tmp135 = (unsigned long )idesc;
20316#line 606
20317 __cil_tmp136 = __cil_tmp135 + 7;
20318#line 606
20319 __cil_tmp137 = *((__u8 *)__cil_tmp136);
20320#line 606
20321 __cil_tmp138 = (int )__cil_tmp137;
20322#line 606
20323 __cil_tmp139 = msg * 8UL;
20324#line 606
20325 __cil_tmp140 = (unsigned long )(msgs) + __cil_tmp139;
20326#line 606
20327 __cil_tmp141 = *((char **)__cil_tmp140);
20328#line 606
20329 __cil_tmp142 = 0 * 1UL;
20330#line 606
20331 __cil_tmp143 = 130 + __cil_tmp142;
20332#line 606
20333 __cil_tmp144 = (unsigned long )tmp___7;
20334#line 606
20335 __cil_tmp145 = __cil_tmp144 + __cil_tmp143;
20336#line 606
20337 __cil_tmp146 = (char *)__cil_tmp145;
20338#line 606
20339 dev_notice(__cil_tmp118, "This device (%04x,%04x,%04x S %02x P %02x) has %s in unusual_devs.h (kernel %s)\n Please send a copy of this message to <linux-usb@vger.kernel.org> and <usb-storage@lists.one-eyed-alien.net>\n",
20340 __cil_tmp122, __cil_tmp126, __cil_tmp130, __cil_tmp134, __cil_tmp138,
20341 __cil_tmp141, __cil_tmp146);
20342 }
20343 } else {
20344
20345 }
20346 }
20347 } else {
20348
20349 }
20350 } else {
20351
20352 }
20353 }
20354 }
20355 }
20356#line 622
20357 return (0);
20358}
20359}
20360#line 626 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
20361static void get_transport(struct us_data *us )
20362{ unsigned long __cil_tmp2 ;
20363 unsigned long __cil_tmp3 ;
20364 u8 __cil_tmp4 ;
20365 unsigned long __cil_tmp5 ;
20366 unsigned long __cil_tmp6 ;
20367 unsigned long __cil_tmp7 ;
20368 unsigned long __cil_tmp8 ;
20369 unsigned long __cil_tmp9 ;
20370 unsigned long __cil_tmp10 ;
20371 unsigned long __cil_tmp11 ;
20372 unsigned long __cil_tmp12 ;
20373 unsigned long __cil_tmp13 ;
20374 unsigned long __cil_tmp14 ;
20375 unsigned long __cil_tmp15 ;
20376 unsigned long __cil_tmp16 ;
20377 unsigned long __cil_tmp17 ;
20378 unsigned long __cil_tmp18 ;
20379 unsigned long __cil_tmp19 ;
20380 unsigned long __cil_tmp20 ;
20381 unsigned long __cil_tmp21 ;
20382 unsigned long __cil_tmp22 ;
20383 unsigned long __cil_tmp23 ;
20384 unsigned long __cil_tmp24 ;
20385 unsigned long __cil_tmp25 ;
20386 unsigned long __cil_tmp26 ;
20387
20388 {
20389 {
20390#line 628
20391 __cil_tmp2 = (unsigned long )us;
20392#line 628
20393 __cil_tmp3 = __cil_tmp2 + 157;
20394#line 628
20395 __cil_tmp4 = *((u8 *)__cil_tmp3);
20396#line 629
20397 if ((int )__cil_tmp4 == 1) {
20398#line 629
20399 goto case_1;
20400 } else
20401#line 636
20402 if ((int )__cil_tmp4 == 0) {
20403#line 636
20404 goto case_0;
20405 } else
20406#line 643
20407 if ((int )__cil_tmp4 == 80) {
20408#line 643
20409 goto case_80;
20410 } else
20411#line 628
20412 if (0) {
20413 case_1:
20414#line 630
20415 __cil_tmp5 = (unsigned long )us;
20416#line 630
20417 __cil_tmp6 = __cil_tmp5 + 136;
20418#line 630
20419 *((char **)__cil_tmp6) = (char *)"Control/Bulk";
20420#line 631
20421 __cil_tmp7 = (unsigned long )us;
20422#line 631
20423 __cil_tmp8 = __cil_tmp7 + 168;
20424#line 631
20425 *((int (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp8) = & usb_stor_CB_transport;
20426#line 632
20427 __cil_tmp9 = (unsigned long )us;
20428#line 632
20429 __cil_tmp10 = __cil_tmp9 + 176;
20430#line 632
20431 *((int (**)(struct us_data * ))__cil_tmp10) = & usb_stor_CB_reset;
20432#line 633
20433 __cil_tmp11 = (unsigned long )us;
20434#line 633
20435 __cil_tmp12 = __cil_tmp11 + 158;
20436#line 633
20437 *((u8 *)__cil_tmp12) = (u8 )7;
20438#line 634
20439 goto switch_break;
20440 case_0:
20441#line 637
20442 __cil_tmp13 = (unsigned long )us;
20443#line 637
20444 __cil_tmp14 = __cil_tmp13 + 136;
20445#line 637
20446 *((char **)__cil_tmp14) = (char *)"Control/Bulk/Interrupt";
20447#line 638
20448 __cil_tmp15 = (unsigned long )us;
20449#line 638
20450 __cil_tmp16 = __cil_tmp15 + 168;
20451#line 638
20452 *((int (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp16) = & usb_stor_CB_transport;
20453#line 639
20454 __cil_tmp17 = (unsigned long )us;
20455#line 639
20456 __cil_tmp18 = __cil_tmp17 + 176;
20457#line 639
20458 *((int (**)(struct us_data * ))__cil_tmp18) = & usb_stor_CB_reset;
20459#line 640
20460 __cil_tmp19 = (unsigned long )us;
20461#line 640
20462 __cil_tmp20 = __cil_tmp19 + 158;
20463#line 640
20464 *((u8 *)__cil_tmp20) = (u8 )7;
20465#line 641
20466 goto switch_break;
20467 case_80:
20468#line 644
20469 __cil_tmp21 = (unsigned long )us;
20470#line 644
20471 __cil_tmp22 = __cil_tmp21 + 136;
20472#line 644
20473 *((char **)__cil_tmp22) = (char *)"Bulk";
20474#line 645
20475 __cil_tmp23 = (unsigned long )us;
20476#line 645
20477 __cil_tmp24 = __cil_tmp23 + 168;
20478#line 645
20479 *((int (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp24) = & usb_stor_Bulk_transport;
20480#line 646
20481 __cil_tmp25 = (unsigned long )us;
20482#line 646
20483 __cil_tmp26 = __cil_tmp25 + 176;
20484#line 646
20485 *((int (**)(struct us_data * ))__cil_tmp26) = & usb_stor_Bulk_reset;
20486#line 647
20487 goto switch_break;
20488 } else {
20489 switch_break: ;
20490 }
20491 }
20492#line 649
20493 return;
20494}
20495}
20496#line 652 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
20497static void get_protocol(struct us_data *us )
20498{ unsigned long __cil_tmp2 ;
20499 unsigned long __cil_tmp3 ;
20500 u8 __cil_tmp4 ;
20501 unsigned long __cil_tmp5 ;
20502 unsigned long __cil_tmp6 ;
20503 unsigned long __cil_tmp7 ;
20504 unsigned long __cil_tmp8 ;
20505 unsigned long __cil_tmp9 ;
20506 unsigned long __cil_tmp10 ;
20507 unsigned long __cil_tmp11 ;
20508 unsigned long __cil_tmp12 ;
20509 unsigned long __cil_tmp13 ;
20510 unsigned long __cil_tmp14 ;
20511 unsigned long __cil_tmp15 ;
20512 unsigned long __cil_tmp16 ;
20513 unsigned long __cil_tmp17 ;
20514 unsigned long __cil_tmp18 ;
20515 unsigned long __cil_tmp19 ;
20516 unsigned long __cil_tmp20 ;
20517 unsigned long __cil_tmp21 ;
20518 unsigned long __cil_tmp22 ;
20519 unsigned long __cil_tmp23 ;
20520 unsigned long __cil_tmp24 ;
20521 unsigned long __cil_tmp25 ;
20522 unsigned long __cil_tmp26 ;
20523 unsigned long __cil_tmp27 ;
20524 unsigned long __cil_tmp28 ;
20525 unsigned long __cil_tmp29 ;
20526 unsigned long __cil_tmp30 ;
20527 unsigned long __cil_tmp31 ;
20528 unsigned long __cil_tmp32 ;
20529 unsigned long __cil_tmp33 ;
20530 unsigned long __cil_tmp34 ;
20531
20532 {
20533 {
20534#line 654
20535 __cil_tmp2 = (unsigned long )us;
20536#line 654
20537 __cil_tmp3 = __cil_tmp2 + 156;
20538#line 654
20539 __cil_tmp4 = *((u8 *)__cil_tmp3);
20540#line 655
20541 if ((int )__cil_tmp4 == 1) {
20542#line 655
20543 goto case_1;
20544 } else
20545#line 660
20546 if ((int )__cil_tmp4 == 2) {
20547#line 660
20548 goto case_2;
20549 } else
20550#line 666
20551 if ((int )__cil_tmp4 == 3) {
20552#line 666
20553 goto case_3;
20554 } else
20555#line 672
20556 if ((int )__cil_tmp4 == 5) {
20557#line 672
20558 goto case_5;
20559 } else
20560#line 678
20561 if ((int )__cil_tmp4 == 6) {
20562#line 678
20563 goto case_6;
20564 } else
20565#line 683
20566 if ((int )__cil_tmp4 == 4) {
20567#line 683
20568 goto case_4;
20569 } else
20570#line 654
20571 if (0) {
20572 case_1:
20573#line 656
20574 __cil_tmp5 = (unsigned long )us;
20575#line 656
20576 __cil_tmp6 = __cil_tmp5 + 144;
20577#line 656
20578 *((char **)__cil_tmp6) = (char *)"Reduced Block Commands (RBC)";
20579#line 657
20580 __cil_tmp7 = (unsigned long )us;
20581#line 657
20582 __cil_tmp8 = __cil_tmp7 + 184;
20583#line 657
20584 *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp8) = & usb_stor_transparent_scsi_command;
20585#line 658
20586 goto switch_break;
20587 case_2:
20588#line 661
20589 __cil_tmp9 = (unsigned long )us;
20590#line 661
20591 __cil_tmp10 = __cil_tmp9 + 144;
20592#line 661
20593 *((char **)__cil_tmp10) = (char *)"8020i";
20594#line 662
20595 __cil_tmp11 = (unsigned long )us;
20596#line 662
20597 __cil_tmp12 = __cil_tmp11 + 184;
20598#line 662
20599 *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp12) = & usb_stor_pad12_command;
20600#line 663
20601 __cil_tmp13 = (unsigned long )us;
20602#line 663
20603 __cil_tmp14 = __cil_tmp13 + 158;
20604#line 663
20605 *((u8 *)__cil_tmp14) = (u8 )0;
20606#line 664
20607 goto switch_break;
20608 case_3:
20609#line 667
20610 __cil_tmp15 = (unsigned long )us;
20611#line 667
20612 __cil_tmp16 = __cil_tmp15 + 144;
20613#line 667
20614 *((char **)__cil_tmp16) = (char *)"QIC-157";
20615#line 668
20616 __cil_tmp17 = (unsigned long )us;
20617#line 668
20618 __cil_tmp18 = __cil_tmp17 + 184;
20619#line 668
20620 *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp18) = & usb_stor_pad12_command;
20621#line 669
20622 __cil_tmp19 = (unsigned long )us;
20623#line 669
20624 __cil_tmp20 = __cil_tmp19 + 158;
20625#line 669
20626 *((u8 *)__cil_tmp20) = (u8 )0;
20627#line 670
20628 goto switch_break;
20629 case_5:
20630#line 673
20631 __cil_tmp21 = (unsigned long )us;
20632#line 673
20633 __cil_tmp22 = __cil_tmp21 + 144;
20634#line 673
20635 *((char **)__cil_tmp22) = (char *)"8070i";
20636#line 674
20637 __cil_tmp23 = (unsigned long )us;
20638#line 674
20639 __cil_tmp24 = __cil_tmp23 + 184;
20640#line 674
20641 *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp24) = & usb_stor_pad12_command;
20642#line 675
20643 __cil_tmp25 = (unsigned long )us;
20644#line 675
20645 __cil_tmp26 = __cil_tmp25 + 158;
20646#line 675
20647 *((u8 *)__cil_tmp26) = (u8 )0;
20648#line 676
20649 goto switch_break;
20650 case_6:
20651#line 679
20652 __cil_tmp27 = (unsigned long )us;
20653#line 679
20654 __cil_tmp28 = __cil_tmp27 + 144;
20655#line 679
20656 *((char **)__cil_tmp28) = (char *)"Transparent SCSI";
20657#line 680
20658 __cil_tmp29 = (unsigned long )us;
20659#line 680
20660 __cil_tmp30 = __cil_tmp29 + 184;
20661#line 680
20662 *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp30) = & usb_stor_transparent_scsi_command;
20663#line 681
20664 goto switch_break;
20665 case_4:
20666#line 684
20667 __cil_tmp31 = (unsigned long )us;
20668#line 684
20669 __cil_tmp32 = __cil_tmp31 + 144;
20670#line 684
20671 *((char **)__cil_tmp32) = (char *)"Uniform Floppy Interface (UFI)";
20672#line 685
20673 __cil_tmp33 = (unsigned long )us;
20674#line 685
20675 __cil_tmp34 = __cil_tmp33 + 184;
20676#line 685
20677 *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp34) = & usb_stor_ufi_command;
20678#line 686
20679 goto switch_break;
20680 } else {
20681 switch_break: ;
20682 }
20683 }
20684#line 688
20685 return;
20686}
20687}
20688#line 691 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
20689static int get_pipes(struct us_data *us )
20690{ struct usb_host_interface *altsetting ;
20691 int i ;
20692 struct usb_endpoint_descriptor *ep ;
20693 struct usb_endpoint_descriptor *ep_in ;
20694 struct usb_endpoint_descriptor *ep_out ;
20695 struct usb_endpoint_descriptor *ep_int ;
20696 int tmp___7 ;
20697 int tmp___8 ;
20698 int tmp___9 ;
20699 unsigned int tmp___10 ;
20700 unsigned int tmp___11 ;
20701 int tmp___12 ;
20702 unsigned int tmp___13 ;
20703 int tmp___14 ;
20704 unsigned int tmp___15 ;
20705 int tmp___16 ;
20706 unsigned int tmp___17 ;
20707 unsigned long __cil_tmp19 ;
20708 unsigned long __cil_tmp20 ;
20709 struct usb_interface *__cil_tmp21 ;
20710 unsigned long __cil_tmp22 ;
20711 unsigned long __cil_tmp23 ;
20712 void *__cil_tmp24 ;
20713 void *__cil_tmp25 ;
20714 void *__cil_tmp26 ;
20715 unsigned long __cil_tmp27 ;
20716 unsigned long __cil_tmp28 ;
20717 unsigned long __cil_tmp29 ;
20718 __u8 __cil_tmp30 ;
20719 int __cil_tmp31 ;
20720 unsigned long __cil_tmp32 ;
20721 unsigned long __cil_tmp33 ;
20722 struct usb_host_endpoint *__cil_tmp34 ;
20723 struct usb_host_endpoint *__cil_tmp35 ;
20724 struct usb_endpoint_descriptor *__cil_tmp36 ;
20725 struct usb_endpoint_descriptor *__cil_tmp37 ;
20726 struct usb_endpoint_descriptor *__cil_tmp38 ;
20727 unsigned long __cil_tmp39 ;
20728 unsigned long __cil_tmp40 ;
20729 u8 __cil_tmp41 ;
20730 int __cil_tmp42 ;
20731 unsigned long __cil_tmp43 ;
20732 unsigned long __cil_tmp44 ;
20733 struct usb_device *__cil_tmp45 ;
20734 unsigned long __cil_tmp46 ;
20735 unsigned long __cil_tmp47 ;
20736 int __cil_tmp48 ;
20737 unsigned int __cil_tmp49 ;
20738 unsigned long __cil_tmp50 ;
20739 unsigned long __cil_tmp51 ;
20740 struct usb_device *__cil_tmp52 ;
20741 unsigned long __cil_tmp53 ;
20742 unsigned long __cil_tmp54 ;
20743 int __cil_tmp55 ;
20744 unsigned int __cil_tmp56 ;
20745 unsigned int __cil_tmp57 ;
20746 struct usb_endpoint_descriptor *__cil_tmp58 ;
20747 unsigned long __cil_tmp59 ;
20748 unsigned long __cil_tmp60 ;
20749 struct usb_device *__cil_tmp61 ;
20750 unsigned int __cil_tmp62 ;
20751 unsigned long __cil_tmp63 ;
20752 unsigned long __cil_tmp64 ;
20753 int __cil_tmp65 ;
20754 unsigned int __cil_tmp66 ;
20755 struct usb_endpoint_descriptor *__cil_tmp67 ;
20756 unsigned long __cil_tmp68 ;
20757 unsigned long __cil_tmp69 ;
20758 struct usb_device *__cil_tmp70 ;
20759 unsigned int __cil_tmp71 ;
20760 unsigned long __cil_tmp72 ;
20761 unsigned long __cil_tmp73 ;
20762 int __cil_tmp74 ;
20763 unsigned int __cil_tmp75 ;
20764 unsigned int __cil_tmp76 ;
20765 struct usb_endpoint_descriptor *__cil_tmp77 ;
20766 unsigned long __cil_tmp78 ;
20767 unsigned long __cil_tmp79 ;
20768 struct usb_device *__cil_tmp80 ;
20769 unsigned int __cil_tmp81 ;
20770 unsigned long __cil_tmp82 ;
20771 unsigned long __cil_tmp83 ;
20772 int __cil_tmp84 ;
20773 unsigned int __cil_tmp85 ;
20774 unsigned int __cil_tmp86 ;
20775 unsigned long __cil_tmp87 ;
20776 unsigned long __cil_tmp88 ;
20777 unsigned long __cil_tmp89 ;
20778 unsigned long __cil_tmp90 ;
20779
20780 {
20781#line 693
20782 __cil_tmp19 = (unsigned long )us;
20783#line 693
20784 __cil_tmp20 = __cil_tmp19 + 80;
20785#line 693
20786 __cil_tmp21 = *((struct usb_interface **)__cil_tmp20);
20787#line 693
20788 __cil_tmp22 = (unsigned long )__cil_tmp21;
20789#line 693
20790 __cil_tmp23 = __cil_tmp22 + 8;
20791#line 693
20792 altsetting = *((struct usb_host_interface **)__cil_tmp23);
20793#line 697
20794 __cil_tmp24 = (void *)0;
20795#line 697
20796 ep_in = (struct usb_endpoint_descriptor *)__cil_tmp24;
20797#line 698
20798 __cil_tmp25 = (void *)0;
20799#line 698
20800 ep_out = (struct usb_endpoint_descriptor *)__cil_tmp25;
20801#line 699
20802 __cil_tmp26 = (void *)0;
20803#line 699
20804 ep_int = (struct usb_endpoint_descriptor *)__cil_tmp26;
20805#line 707
20806 i = 0;
20807 {
20808#line 707
20809 while (1) {
20810 while_continue: ;
20811 {
20812#line 707
20813 __cil_tmp27 = 0 + 4;
20814#line 707
20815 __cil_tmp28 = (unsigned long )altsetting;
20816#line 707
20817 __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
20818#line 707
20819 __cil_tmp30 = *((__u8 *)__cil_tmp29);
20820#line 707
20821 __cil_tmp31 = (int )__cil_tmp30;
20822#line 707
20823 if (i < __cil_tmp31) {
20824
20825 } else {
20826#line 707
20827 goto while_break;
20828 }
20829 }
20830 {
20831#line 708
20832 __cil_tmp32 = (unsigned long )altsetting;
20833#line 708
20834 __cil_tmp33 = __cil_tmp32 + 16;
20835#line 708
20836 __cil_tmp34 = *((struct usb_host_endpoint **)__cil_tmp33);
20837#line 708
20838 __cil_tmp35 = __cil_tmp34 + i;
20839#line 708
20840 ep = (struct usb_endpoint_descriptor *)__cil_tmp35;
20841#line 710
20842 __cil_tmp36 = (struct usb_endpoint_descriptor *)ep;
20843#line 710
20844 tmp___9 = usb_endpoint_xfer_bulk(__cil_tmp36);
20845 }
20846#line 710
20847 if (tmp___9) {
20848 {
20849#line 711
20850 __cil_tmp37 = (struct usb_endpoint_descriptor *)ep;
20851#line 711
20852 tmp___7 = usb_endpoint_dir_in(__cil_tmp37);
20853 }
20854#line 711
20855 if (tmp___7) {
20856#line 712
20857 if (! ep_in) {
20858#line 713
20859 ep_in = ep;
20860 } else {
20861
20862 }
20863 } else
20864#line 715
20865 if (! ep_out) {
20866#line 716
20867 ep_out = ep;
20868 } else {
20869
20870 }
20871 } else {
20872 {
20873#line 720
20874 __cil_tmp38 = (struct usb_endpoint_descriptor *)ep;
20875#line 720
20876 tmp___8 = usb_endpoint_is_int_in(__cil_tmp38);
20877 }
20878#line 720
20879 if (tmp___8) {
20880#line 721
20881 if (! ep_int) {
20882#line 722
20883 ep_int = ep;
20884 } else {
20885
20886 }
20887 } else {
20888
20889 }
20890 }
20891#line 707
20892 i = i + 1;
20893 }
20894 while_break: ;
20895 }
20896#line 726
20897 if (! ep_in) {
20898 {
20899#line 727
20900 printk("<7>usb-storage: Endpoint sanity check failed! Rejecting dev.\n");
20901 }
20902#line 728
20903 return (-5);
20904 } else
20905#line 726
20906 if (! ep_out) {
20907 {
20908#line 727
20909 printk("<7>usb-storage: Endpoint sanity check failed! Rejecting dev.\n");
20910 }
20911#line 728
20912 return (-5);
20913 } else {
20914 {
20915#line 726
20916 __cil_tmp39 = (unsigned long )us;
20917#line 726
20918 __cil_tmp40 = __cil_tmp39 + 157;
20919#line 726
20920 __cil_tmp41 = *((u8 *)__cil_tmp40);
20921#line 726
20922 __cil_tmp42 = (int )__cil_tmp41;
20923#line 726
20924 if (__cil_tmp42 == 0) {
20925#line 726
20926 if (! ep_int) {
20927 {
20928#line 727
20929 printk("<7>usb-storage: Endpoint sanity check failed! Rejecting dev.\n");
20930 }
20931#line 728
20932 return (-5);
20933 } else {
20934
20935 }
20936 } else {
20937
20938 }
20939 }
20940 }
20941 {
20942#line 732
20943 __cil_tmp43 = (unsigned long )us;
20944#line 732
20945 __cil_tmp44 = __cil_tmp43 + 72;
20946#line 732
20947 __cil_tmp45 = *((struct usb_device **)__cil_tmp44);
20948#line 732
20949 tmp___10 = __create_pipe(__cil_tmp45, 0U);
20950#line 732
20951 __cil_tmp46 = (unsigned long )us;
20952#line 732
20953 __cil_tmp47 = __cil_tmp46 + 120;
20954#line 732
20955 __cil_tmp48 = 2 << 30;
20956#line 732
20957 __cil_tmp49 = (unsigned int )__cil_tmp48;
20958#line 732
20959 *((unsigned int *)__cil_tmp47) = __cil_tmp49 | tmp___10;
20960#line 733
20961 __cil_tmp50 = (unsigned long )us;
20962#line 733
20963 __cil_tmp51 = __cil_tmp50 + 72;
20964#line 733
20965 __cil_tmp52 = *((struct usb_device **)__cil_tmp51);
20966#line 733
20967 tmp___11 = __create_pipe(__cil_tmp52, 0U);
20968#line 733
20969 __cil_tmp53 = (unsigned long )us;
20970#line 733
20971 __cil_tmp54 = __cil_tmp53 + 124;
20972#line 733
20973 __cil_tmp55 = 2 << 30;
20974#line 733
20975 __cil_tmp56 = (unsigned int )__cil_tmp55;
20976#line 733
20977 __cil_tmp57 = __cil_tmp56 | tmp___11;
20978#line 733
20979 *((unsigned int *)__cil_tmp54) = __cil_tmp57 | 128U;
20980#line 734
20981 __cil_tmp58 = (struct usb_endpoint_descriptor *)ep_out;
20982#line 734
20983 tmp___12 = usb_endpoint_num(__cil_tmp58);
20984#line 734
20985 __cil_tmp59 = (unsigned long )us;
20986#line 734
20987 __cil_tmp60 = __cil_tmp59 + 72;
20988#line 734
20989 __cil_tmp61 = *((struct usb_device **)__cil_tmp60);
20990#line 734
20991 __cil_tmp62 = (unsigned int )tmp___12;
20992#line 734
20993 tmp___13 = __create_pipe(__cil_tmp61, __cil_tmp62);
20994#line 734
20995 __cil_tmp63 = (unsigned long )us;
20996#line 734
20997 __cil_tmp64 = __cil_tmp63 + 112;
20998#line 734
20999 __cil_tmp65 = 3 << 30;
21000#line 734
21001 __cil_tmp66 = (unsigned int )__cil_tmp65;
21002#line 734
21003 *((unsigned int *)__cil_tmp64) = __cil_tmp66 | tmp___13;
21004#line 736
21005 __cil_tmp67 = (struct usb_endpoint_descriptor *)ep_in;
21006#line 736
21007 tmp___14 = usb_endpoint_num(__cil_tmp67);
21008#line 736
21009 __cil_tmp68 = (unsigned long )us;
21010#line 736
21011 __cil_tmp69 = __cil_tmp68 + 72;
21012#line 736
21013 __cil_tmp70 = *((struct usb_device **)__cil_tmp69);
21014#line 736
21015 __cil_tmp71 = (unsigned int )tmp___14;
21016#line 736
21017 tmp___15 = __create_pipe(__cil_tmp70, __cil_tmp71);
21018#line 736
21019 __cil_tmp72 = (unsigned long )us;
21020#line 736
21021 __cil_tmp73 = __cil_tmp72 + 116;
21022#line 736
21023 __cil_tmp74 = 3 << 30;
21024#line 736
21025 __cil_tmp75 = (unsigned int )__cil_tmp74;
21026#line 736
21027 __cil_tmp76 = __cil_tmp75 | tmp___15;
21028#line 736
21029 *((unsigned int *)__cil_tmp73) = __cil_tmp76 | 128U;
21030 }
21031#line 738
21032 if (ep_int) {
21033 {
21034#line 739
21035 __cil_tmp77 = (struct usb_endpoint_descriptor *)ep_int;
21036#line 739
21037 tmp___16 = usb_endpoint_num(__cil_tmp77);
21038#line 739
21039 __cil_tmp78 = (unsigned long )us;
21040#line 739
21041 __cil_tmp79 = __cil_tmp78 + 72;
21042#line 739
21043 __cil_tmp80 = *((struct usb_device **)__cil_tmp79);
21044#line 739
21045 __cil_tmp81 = (unsigned int )tmp___16;
21046#line 739
21047 tmp___17 = __create_pipe(__cil_tmp80, __cil_tmp81);
21048#line 739
21049 __cil_tmp82 = (unsigned long )us;
21050#line 739
21051 __cil_tmp83 = __cil_tmp82 + 128;
21052#line 739
21053 __cil_tmp84 = 1 << 30;
21054#line 739
21055 __cil_tmp85 = (unsigned int )__cil_tmp84;
21056#line 739
21057 __cil_tmp86 = __cil_tmp85 | tmp___17;
21058#line 739
21059 *((unsigned int *)__cil_tmp83) = __cil_tmp86 | 128U;
21060#line 741
21061 __cil_tmp87 = (unsigned long )us;
21062#line 741
21063 __cil_tmp88 = __cil_tmp87 + 160;
21064#line 741
21065 __cil_tmp89 = (unsigned long )ep_int;
21066#line 741
21067 __cil_tmp90 = __cil_tmp89 + 6;
21068#line 741
21069 *((u8 *)__cil_tmp88) = *((__u8 *)__cil_tmp90);
21070 }
21071 } else {
21072
21073 }
21074#line 743
21075 return (0);
21076}
21077}
21078#line 747 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21079static int usb_stor_acquire_resources(struct us_data *us )
21080{ int p ;
21081 struct task_struct *th ;
21082 struct task_struct *__k ;
21083 struct task_struct *tmp___7 ;
21084 long tmp___8 ;
21085 long tmp___9 ;
21086 long tmp___10 ;
21087 unsigned long __cil_tmp9 ;
21088 unsigned long __cil_tmp10 ;
21089 unsigned long __cil_tmp11 ;
21090 unsigned long __cil_tmp12 ;
21091 struct urb *__cil_tmp13 ;
21092 unsigned long __cil_tmp14 ;
21093 unsigned long __cil_tmp15 ;
21094 struct us_unusual_dev *__cil_tmp16 ;
21095 unsigned long __cil_tmp17 ;
21096 unsigned long __cil_tmp18 ;
21097 unsigned long __cil_tmp19 ;
21098 unsigned long __cil_tmp20 ;
21099 struct us_unusual_dev *__cil_tmp21 ;
21100 unsigned long __cil_tmp22 ;
21101 unsigned long __cil_tmp23 ;
21102 int (*__cil_tmp24)(struct us_data * ) ;
21103 void *__cil_tmp25 ;
21104 void *__cil_tmp26 ;
21105 void *__cil_tmp27 ;
21106 unsigned long __cil_tmp28 ;
21107 unsigned long __cil_tmp29 ;
21108 struct usb_interface *__cil_tmp30 ;
21109 unsigned long __cil_tmp31 ;
21110 unsigned long __cil_tmp32 ;
21111 struct device *__cil_tmp33 ;
21112 struct device *__cil_tmp34 ;
21113 void *__cil_tmp35 ;
21114 unsigned long __cil_tmp36 ;
21115 unsigned long __cil_tmp37 ;
21116
21117 {
21118 {
21119#line 752
21120 __cil_tmp9 = (unsigned long )us;
21121#line 752
21122 __cil_tmp10 = __cil_tmp9 + 240;
21123#line 752
21124 *((struct urb **)__cil_tmp10) = usb_alloc_urb(0, 208U);
21125 }
21126 {
21127#line 753
21128 __cil_tmp11 = (unsigned long )us;
21129#line 753
21130 __cil_tmp12 = __cil_tmp11 + 240;
21131#line 753
21132 __cil_tmp13 = *((struct urb **)__cil_tmp12);
21133#line 753
21134 if (! __cil_tmp13) {
21135 {
21136#line 754
21137 printk("<7>usb-storage: URB allocation failed\n");
21138 }
21139#line 755
21140 return (-12);
21141 } else {
21142
21143 }
21144 }
21145 {
21146#line 760
21147 __cil_tmp14 = (unsigned long )us;
21148#line 760
21149 __cil_tmp15 = __cil_tmp14 + 88;
21150#line 760
21151 __cil_tmp16 = *((struct us_unusual_dev **)__cil_tmp15);
21152#line 760
21153 __cil_tmp17 = (unsigned long )__cil_tmp16;
21154#line 760
21155 __cil_tmp18 = __cil_tmp17 + 24;
21156#line 760
21157 if (*((int (**)(struct us_data * ))__cil_tmp18)) {
21158 {
21159#line 761
21160 __cil_tmp19 = (unsigned long )us;
21161#line 761
21162 __cil_tmp20 = __cil_tmp19 + 88;
21163#line 761
21164 __cil_tmp21 = *((struct us_unusual_dev **)__cil_tmp20);
21165#line 761
21166 __cil_tmp22 = (unsigned long )__cil_tmp21;
21167#line 761
21168 __cil_tmp23 = __cil_tmp22 + 24;
21169#line 761
21170 __cil_tmp24 = *((int (**)(struct us_data * ))__cil_tmp23);
21171#line 761
21172 p = (*__cil_tmp24)(us);
21173 }
21174#line 762
21175 if (p) {
21176#line 763
21177 return (p);
21178 } else {
21179
21180 }
21181 } else {
21182
21183 }
21184 }
21185 {
21186#line 767
21187 __cil_tmp25 = (void *)us;
21188#line 767
21189 tmp___7 = kthread_create_on_node(& usb_stor_control_thread, __cil_tmp25, -1, "usb-storage");
21190#line 767
21191 __k = tmp___7;
21192#line 767
21193 __cil_tmp26 = (void *)__k;
21194#line 767
21195 tmp___8 = (long )IS_ERR(__cil_tmp26);
21196 }
21197#line 767
21198 if (tmp___8) {
21199
21200 } else {
21201 {
21202#line 767
21203 wake_up_process(__k);
21204 }
21205 }
21206 {
21207#line 767
21208 th = __k;
21209#line 768
21210 __cil_tmp27 = (void *)th;
21211#line 768
21212 tmp___10 = (long )IS_ERR(__cil_tmp27);
21213 }
21214#line 768
21215 if (tmp___10) {
21216 {
21217#line 769
21218 __cil_tmp28 = (unsigned long )us;
21219#line 769
21220 __cil_tmp29 = __cil_tmp28 + 80;
21221#line 769
21222 __cil_tmp30 = *((struct usb_interface **)__cil_tmp29);
21223#line 769
21224 __cil_tmp31 = (unsigned long )__cil_tmp30;
21225#line 769
21226 __cil_tmp32 = __cil_tmp31 + 48;
21227#line 769
21228 __cil_tmp33 = (struct device *)__cil_tmp32;
21229#line 769
21230 __cil_tmp34 = (struct device *)__cil_tmp33;
21231#line 769
21232 dev_warn(__cil_tmp34, "Unable to start control thread\n");
21233#line 771
21234 __cil_tmp35 = (void *)th;
21235#line 771
21236 tmp___9 = (long )PTR_ERR(__cil_tmp35);
21237 }
21238#line 771
21239 return ((int )tmp___9);
21240 } else {
21241
21242 }
21243#line 773
21244 __cil_tmp36 = (unsigned long )us;
21245#line 773
21246 __cil_tmp37 = __cil_tmp36 + 392;
21247#line 773
21248 *((struct task_struct **)__cil_tmp37) = th;
21249#line 775
21250 return (0);
21251}
21252}
21253#line 779 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21254static void usb_stor_release_resources(struct us_data *us )
21255{ unsigned long __cil_tmp2 ;
21256 unsigned long __cil_tmp3 ;
21257 struct completion *__cil_tmp4 ;
21258 unsigned long __cil_tmp5 ;
21259 unsigned long __cil_tmp6 ;
21260 unsigned long __cil_tmp7 ;
21261 unsigned long __cil_tmp8 ;
21262 struct task_struct *__cil_tmp9 ;
21263 unsigned long __cil_tmp10 ;
21264 unsigned long __cil_tmp11 ;
21265 unsigned long __cil_tmp12 ;
21266 unsigned long __cil_tmp13 ;
21267 void (*__cil_tmp14)(void * ) ;
21268 unsigned long __cil_tmp15 ;
21269 unsigned long __cil_tmp16 ;
21270 void *__cil_tmp17 ;
21271 unsigned long __cil_tmp18 ;
21272 unsigned long __cil_tmp19 ;
21273 void *__cil_tmp20 ;
21274 void *__cil_tmp21 ;
21275 unsigned long __cil_tmp22 ;
21276 unsigned long __cil_tmp23 ;
21277 struct urb *__cil_tmp24 ;
21278
21279 {
21280 {
21281#line 781
21282 printk("<7>usb-storage: -- %s\n", "usb_stor_release_resources");
21283#line 787
21284 printk("<7>usb-storage: -- sending exit command to thread\n");
21285#line 788
21286 __cil_tmp2 = (unsigned long )us;
21287#line 788
21288 __cil_tmp3 = __cil_tmp2 + 400;
21289#line 788
21290 __cil_tmp4 = (struct completion *)__cil_tmp3;
21291#line 788
21292 complete(__cil_tmp4);
21293 }
21294 {
21295#line 789
21296 __cil_tmp5 = (unsigned long )us;
21297#line 789
21298 __cil_tmp6 = __cil_tmp5 + 392;
21299#line 789
21300 if (*((struct task_struct **)__cil_tmp6)) {
21301 {
21302#line 790
21303 __cil_tmp7 = (unsigned long )us;
21304#line 790
21305 __cil_tmp8 = __cil_tmp7 + 392;
21306#line 790
21307 __cil_tmp9 = *((struct task_struct **)__cil_tmp8);
21308#line 790
21309 kthread_stop(__cil_tmp9);
21310 }
21311 } else {
21312
21313 }
21314 }
21315 {
21316#line 793
21317 __cil_tmp10 = (unsigned long )us;
21318#line 793
21319 __cil_tmp11 = __cil_tmp10 + 656;
21320#line 793
21321 if (*((void (**)(void * ))__cil_tmp11)) {
21322 {
21323#line 794
21324 printk("<7>usb-storage: -- calling extra_destructor()\n");
21325#line 795
21326 __cil_tmp12 = (unsigned long )us;
21327#line 795
21328 __cil_tmp13 = __cil_tmp12 + 656;
21329#line 795
21330 __cil_tmp14 = *((void (**)(void * ))__cil_tmp13);
21331#line 795
21332 __cil_tmp15 = (unsigned long )us;
21333#line 795
21334 __cil_tmp16 = __cil_tmp15 + 648;
21335#line 795
21336 __cil_tmp17 = *((void **)__cil_tmp16);
21337#line 795
21338 (*__cil_tmp14)(__cil_tmp17);
21339 }
21340 } else {
21341
21342 }
21343 }
21344 {
21345#line 799
21346 __cil_tmp18 = (unsigned long )us;
21347#line 799
21348 __cil_tmp19 = __cil_tmp18 + 648;
21349#line 799
21350 __cil_tmp20 = *((void **)__cil_tmp19);
21351#line 799
21352 __cil_tmp21 = (void *)__cil_tmp20;
21353#line 799
21354 kfree(__cil_tmp21);
21355#line 800
21356 __cil_tmp22 = (unsigned long )us;
21357#line 800
21358 __cil_tmp23 = __cil_tmp22 + 240;
21359#line 800
21360 __cil_tmp24 = *((struct urb **)__cil_tmp23);
21361#line 800
21362 usb_free_urb(__cil_tmp24);
21363 }
21364#line 801
21365 return;
21366}
21367}
21368#line 804 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21369static void dissociate_dev(struct us_data *us )
21370{ unsigned long __cil_tmp2 ;
21371 unsigned long __cil_tmp3 ;
21372 struct usb_ctrlrequest *__cil_tmp4 ;
21373 void *__cil_tmp5 ;
21374 unsigned long __cil_tmp6 ;
21375 unsigned long __cil_tmp7 ;
21376 struct usb_device *__cil_tmp8 ;
21377 size_t __cil_tmp9 ;
21378 unsigned long __cil_tmp10 ;
21379 unsigned long __cil_tmp11 ;
21380 unsigned char *__cil_tmp12 ;
21381 void *__cil_tmp13 ;
21382 unsigned long __cil_tmp14 ;
21383 unsigned long __cil_tmp15 ;
21384 dma_addr_t __cil_tmp16 ;
21385 unsigned long __cil_tmp17 ;
21386 unsigned long __cil_tmp18 ;
21387 struct usb_interface *__cil_tmp19 ;
21388 void *__cil_tmp20 ;
21389
21390 {
21391 {
21392#line 806
21393 printk("<7>usb-storage: -- %s\n", "dissociate_dev");
21394#line 809
21395 __cil_tmp2 = (unsigned long )us;
21396#line 809
21397 __cil_tmp3 = __cil_tmp2 + 248;
21398#line 809
21399 __cil_tmp4 = *((struct usb_ctrlrequest **)__cil_tmp3);
21400#line 809
21401 __cil_tmp5 = (void *)__cil_tmp4;
21402#line 809
21403 kfree(__cil_tmp5);
21404#line 810
21405 __cil_tmp6 = (unsigned long )us;
21406#line 810
21407 __cil_tmp7 = __cil_tmp6 + 72;
21408#line 810
21409 __cil_tmp8 = *((struct usb_device **)__cil_tmp7);
21410#line 810
21411 __cil_tmp9 = (size_t )64;
21412#line 810
21413 __cil_tmp10 = (unsigned long )us;
21414#line 810
21415 __cil_tmp11 = __cil_tmp10 + 376;
21416#line 810
21417 __cil_tmp12 = *((unsigned char **)__cil_tmp11);
21418#line 810
21419 __cil_tmp13 = (void *)__cil_tmp12;
21420#line 810
21421 __cil_tmp14 = (unsigned long )us;
21422#line 810
21423 __cil_tmp15 = __cil_tmp14 + 384;
21424#line 810
21425 __cil_tmp16 = *((dma_addr_t *)__cil_tmp15);
21426#line 810
21427 usb_free_coherent(__cil_tmp8, __cil_tmp9, __cil_tmp13, __cil_tmp16);
21428#line 813
21429 __cil_tmp17 = (unsigned long )us;
21430#line 813
21431 __cil_tmp18 = __cil_tmp17 + 80;
21432#line 813
21433 __cil_tmp19 = *((struct usb_interface **)__cil_tmp18);
21434#line 813
21435 __cil_tmp20 = (void *)0;
21436#line 813
21437 usb_set_intfdata(__cil_tmp19, __cil_tmp20);
21438 }
21439#line 814
21440 return;
21441}
21442}
21443#line 819 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21444static void quiesce_and_remove_host(struct us_data *us )
21445{ struct Scsi_Host *host ;
21446 struct Scsi_Host *tmp___7 ;
21447 int tmp___8 ;
21448 unsigned long __cil_tmp6 ;
21449 unsigned long __cil_tmp7 ;
21450 struct usb_device *__cil_tmp8 ;
21451 unsigned long __cil_tmp9 ;
21452 unsigned long __cil_tmp10 ;
21453 enum usb_device_state __cil_tmp11 ;
21454 unsigned int __cil_tmp12 ;
21455 unsigned long __cil_tmp13 ;
21456 unsigned long __cil_tmp14 ;
21457 unsigned long *__cil_tmp15 ;
21458 unsigned long volatile *__cil_tmp16 ;
21459 unsigned long __cil_tmp17 ;
21460 unsigned long __cil_tmp18 ;
21461 wait_queue_head_t *__cil_tmp19 ;
21462 void *__cil_tmp20 ;
21463 unsigned long __cil_tmp21 ;
21464 unsigned long __cil_tmp22 ;
21465 struct delayed_work *__cil_tmp23 ;
21466 unsigned long __cil_tmp24 ;
21467 unsigned long __cil_tmp25 ;
21468 unsigned long *__cil_tmp26 ;
21469 unsigned long volatile *__cil_tmp27 ;
21470 unsigned long __cil_tmp28 ;
21471 unsigned long __cil_tmp29 ;
21472 struct usb_interface *__cil_tmp30 ;
21473 unsigned long __cil_tmp31 ;
21474 unsigned long __cil_tmp32 ;
21475 spinlock_t *__cil_tmp33 ;
21476 unsigned long __cil_tmp34 ;
21477 unsigned long __cil_tmp35 ;
21478 unsigned long *__cil_tmp36 ;
21479 unsigned long volatile *__cil_tmp37 ;
21480 unsigned long __cil_tmp38 ;
21481 unsigned long __cil_tmp39 ;
21482 spinlock_t *__cil_tmp40 ;
21483 unsigned long __cil_tmp41 ;
21484 unsigned long __cil_tmp42 ;
21485 wait_queue_head_t *__cil_tmp43 ;
21486 void *__cil_tmp44 ;
21487
21488 {
21489 {
21490#line 821
21491 tmp___7 = us_to_host(us);
21492#line 821
21493 host = tmp___7;
21494 }
21495 {
21496#line 824
21497 __cil_tmp6 = (unsigned long )us;
21498#line 824
21499 __cil_tmp7 = __cil_tmp6 + 72;
21500#line 824
21501 __cil_tmp8 = *((struct usb_device **)__cil_tmp7);
21502#line 824
21503 __cil_tmp9 = (unsigned long )__cil_tmp8;
21504#line 824
21505 __cil_tmp10 = __cil_tmp9 + 24;
21506#line 824
21507 __cil_tmp11 = *((enum usb_device_state *)__cil_tmp10);
21508#line 824
21509 __cil_tmp12 = (unsigned int )__cil_tmp11;
21510#line 824
21511 if (__cil_tmp12 == 0U) {
21512 {
21513#line 825
21514 __cil_tmp13 = (unsigned long )us;
21515#line 825
21516 __cil_tmp14 = __cil_tmp13 + 104;
21517#line 825
21518 __cil_tmp15 = (unsigned long *)__cil_tmp14;
21519#line 825
21520 __cil_tmp16 = (unsigned long volatile *)__cil_tmp15;
21521#line 825
21522 set_bit(3U, __cil_tmp16);
21523#line 826
21524 __cil_tmp17 = (unsigned long )us;
21525#line 826
21526 __cil_tmp18 = __cil_tmp17 + 496;
21527#line 826
21528 __cil_tmp19 = (wait_queue_head_t *)__cil_tmp18;
21529#line 826
21530 __cil_tmp20 = (void *)0;
21531#line 826
21532 __wake_up(__cil_tmp19, 3U, 1, __cil_tmp20);
21533 }
21534 } else {
21535
21536 }
21537 }
21538 {
21539#line 832
21540 __cil_tmp21 = (unsigned long )us;
21541#line 832
21542 __cil_tmp22 = __cil_tmp21 + 536;
21543#line 832
21544 __cil_tmp23 = (struct delayed_work *)__cil_tmp22;
21545#line 832
21546 cancel_delayed_work_sync(__cil_tmp23);
21547#line 835
21548 __cil_tmp24 = (unsigned long )us;
21549#line 835
21550 __cil_tmp25 = __cil_tmp24 + 104;
21551#line 835
21552 __cil_tmp26 = (unsigned long *)__cil_tmp25;
21553#line 835
21554 __cil_tmp27 = (unsigned long volatile *)__cil_tmp26;
21555#line 835
21556 tmp___8 = ant_test_bit(6U, __cil_tmp27);
21557 }
21558#line 835
21559 if (tmp___8) {
21560 {
21561#line 836
21562 __cil_tmp28 = (unsigned long )us;
21563#line 836
21564 __cil_tmp29 = __cil_tmp28 + 80;
21565#line 836
21566 __cil_tmp30 = *((struct usb_interface **)__cil_tmp29);
21567#line 836
21568 usb_autopm_put_interface_no_suspend(__cil_tmp30);
21569 }
21570 } else {
21571
21572 }
21573 {
21574#line 841
21575 scsi_remove_host(host);
21576#line 846
21577 __cil_tmp31 = (unsigned long )host;
21578#line 846
21579 __cil_tmp32 = __cil_tmp31 + 120;
21580#line 846
21581 __cil_tmp33 = *((spinlock_t **)__cil_tmp32);
21582#line 846
21583 spin_lock_irq(__cil_tmp33);
21584#line 847
21585 __cil_tmp34 = (unsigned long )us;
21586#line 847
21587 __cil_tmp35 = __cil_tmp34 + 104;
21588#line 847
21589 __cil_tmp36 = (unsigned long *)__cil_tmp35;
21590#line 847
21591 __cil_tmp37 = (unsigned long volatile *)__cil_tmp36;
21592#line 847
21593 set_bit(3U, __cil_tmp37);
21594#line 848
21595 __cil_tmp38 = (unsigned long )host;
21596#line 848
21597 __cil_tmp39 = __cil_tmp38 + 120;
21598#line 848
21599 __cil_tmp40 = *((spinlock_t **)__cil_tmp39);
21600#line 848
21601 spin_unlock_irq(__cil_tmp40);
21602#line 849
21603 __cil_tmp41 = (unsigned long )us;
21604#line 849
21605 __cil_tmp42 = __cil_tmp41 + 496;
21606#line 849
21607 __cil_tmp43 = (wait_queue_head_t *)__cil_tmp42;
21608#line 849
21609 __cil_tmp44 = (void *)0;
21610#line 849
21611 __wake_up(__cil_tmp43, 3U, 1, __cil_tmp44);
21612 }
21613#line 850
21614 return;
21615}
21616}
21617#line 853 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21618static void release_everything(struct us_data *us )
21619{ struct Scsi_Host *tmp___7 ;
21620
21621 {
21622 {
21623#line 855
21624 usb_stor_release_resources(us);
21625#line 856
21626 dissociate_dev(us);
21627#line 860
21628 tmp___7 = us_to_host(us);
21629#line 860
21630 scsi_host_put(tmp___7);
21631 }
21632#line 861
21633 return;
21634}
21635}
21636#line 870
21637static void usb_stor_scan_dwork(struct work_struct *work ) ;
21638#line 870 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21639static struct _ddebug __attribute__((__aligned__(8))) descriptor __attribute__((__used__,
21640__section__("__verbose"))) = {"usb_storage", "usb_stor_scan_dwork", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c",
21641 "starting scan\n", 870U, 1U};
21642#line 879 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21643static struct _ddebug __attribute__((__aligned__(8))) descriptor___0 __attribute__((__used__,
21644__section__("__verbose"))) = {"usb_storage", "usb_stor_scan_dwork", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c",
21645 "scan complete\n", 879U, 1U};
21646#line 864 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21647static void usb_stor_scan_dwork(struct work_struct *work )
21648{ struct us_data *us ;
21649 struct work_struct *__mptr ;
21650 struct device *dev ;
21651 long tmp___7 ;
21652 int tmp___8 ;
21653 struct Scsi_Host *tmp___9 ;
21654 long tmp___10 ;
21655 struct us_data *__cil_tmp9 ;
21656 unsigned long __cil_tmp10 ;
21657 unsigned long __cil_tmp11 ;
21658 struct work_struct *__cil_tmp12 ;
21659 unsigned int __cil_tmp13 ;
21660 char *__cil_tmp14 ;
21661 char *__cil_tmp15 ;
21662 unsigned long __cil_tmp16 ;
21663 unsigned long __cil_tmp17 ;
21664 struct usb_interface *__cil_tmp18 ;
21665 unsigned long __cil_tmp19 ;
21666 unsigned long __cil_tmp20 ;
21667 struct _ddebug __attribute__((__aligned__(8))) *__cil_tmp21 ;
21668 unsigned int __cil_tmp22 ;
21669 unsigned int __cil_tmp23 ;
21670 int __cil_tmp24 ;
21671 int __cil_tmp25 ;
21672 long __cil_tmp26 ;
21673 struct device *__cil_tmp27 ;
21674 unsigned long __cil_tmp28 ;
21675 unsigned long __cil_tmp29 ;
21676 u8 __cil_tmp30 ;
21677 int __cil_tmp31 ;
21678 unsigned long __cil_tmp32 ;
21679 unsigned long __cil_tmp33 ;
21680 unsigned long __cil_tmp34 ;
21681 unsigned long __cil_tmp35 ;
21682 struct mutex *__cil_tmp36 ;
21683 unsigned long __cil_tmp37 ;
21684 unsigned long __cil_tmp38 ;
21685 struct mutex *__cil_tmp39 ;
21686 struct _ddebug __attribute__((__aligned__(8))) *__cil_tmp40 ;
21687 unsigned int __cil_tmp41 ;
21688 unsigned int __cil_tmp42 ;
21689 int __cil_tmp43 ;
21690 int __cil_tmp44 ;
21691 long __cil_tmp45 ;
21692 struct device *__cil_tmp46 ;
21693 unsigned long __cil_tmp47 ;
21694 unsigned long __cil_tmp48 ;
21695 struct usb_interface *__cil_tmp49 ;
21696 unsigned long __cil_tmp50 ;
21697 unsigned long __cil_tmp51 ;
21698 unsigned long *__cil_tmp52 ;
21699 unsigned long volatile *__cil_tmp53 ;
21700
21701 {
21702#line 866
21703 __mptr = (struct work_struct *)work;
21704#line 866
21705 __cil_tmp9 = (struct us_data *)0;
21706#line 866
21707 __cil_tmp10 = (unsigned long )__cil_tmp9;
21708#line 866
21709 __cil_tmp11 = __cil_tmp10 + 536;
21710#line 866
21711 __cil_tmp12 = (struct work_struct *)__cil_tmp11;
21712#line 866
21713 __cil_tmp13 = (unsigned int )__cil_tmp12;
21714#line 866
21715 __cil_tmp14 = (char *)__mptr;
21716#line 866
21717 __cil_tmp15 = __cil_tmp14 - __cil_tmp13;
21718#line 866
21719 us = (struct us_data *)__cil_tmp15;
21720#line 868
21721 __cil_tmp16 = (unsigned long )us;
21722#line 868
21723 __cil_tmp17 = __cil_tmp16 + 80;
21724#line 868
21725 __cil_tmp18 = *((struct usb_interface **)__cil_tmp17);
21726#line 868
21727 __cil_tmp19 = (unsigned long )__cil_tmp18;
21728#line 868
21729 __cil_tmp20 = __cil_tmp19 + 48;
21730#line 868
21731 dev = (struct device *)__cil_tmp20;
21732 {
21733#line 870
21734 while (1) {
21735 while_continue: ;
21736 {
21737#line 870
21738 while (1) {
21739 while_continue___0: ;
21740 {
21741#line 870
21742 __cil_tmp21 = & descriptor;
21743#line 870
21744 __cil_tmp22 = __cil_tmp21->flags;
21745#line 870
21746 __cil_tmp23 = __cil_tmp22 & 1U;
21747#line 870
21748 __cil_tmp24 = ! __cil_tmp23;
21749#line 870
21750 __cil_tmp25 = ! __cil_tmp24;
21751#line 870
21752 __cil_tmp26 = (long )__cil_tmp25;
21753#line 870
21754 tmp___7 = __builtin_expect(__cil_tmp26, 0L);
21755 }
21756#line 870
21757 if (tmp___7) {
21758 {
21759#line 870
21760 __cil_tmp27 = (struct device *)dev;
21761#line 870
21762 __dynamic_dev_dbg(& descriptor, __cil_tmp27, "starting scan\n");
21763 }
21764 } else {
21765
21766 }
21767#line 870
21768 goto while_break___0;
21769 }
21770 while_break___0: ;
21771 }
21772#line 870
21773 goto while_break;
21774 }
21775 while_break: ;
21776 }
21777 {
21778#line 873
21779 __cil_tmp28 = (unsigned long )us;
21780#line 873
21781 __cil_tmp29 = __cil_tmp28 + 157;
21782#line 873
21783 __cil_tmp30 = *((u8 *)__cil_tmp29);
21784#line 873
21785 __cil_tmp31 = (int )__cil_tmp30;
21786#line 873
21787 if (__cil_tmp31 == 80) {
21788 {
21789#line 873
21790 __cil_tmp32 = (unsigned long )us;
21791#line 873
21792 __cil_tmp33 = __cil_tmp32 + 96;
21793#line 873
21794 __cil_tmp34 = *((unsigned long *)__cil_tmp33);
21795#line 873
21796 __cil_tmp35 = __cil_tmp34 & 1UL;
21797#line 873
21798 if (! __cil_tmp35) {
21799 {
21800#line 874
21801 __cil_tmp36 = (struct mutex *)us;
21802#line 874
21803 mutex_lock(__cil_tmp36);
21804#line 875
21805 tmp___8 = usb_stor_Bulk_max_lun(us);
21806#line 875
21807 __cil_tmp37 = (unsigned long )us;
21808#line 875
21809 __cil_tmp38 = __cil_tmp37 + 158;
21810#line 875
21811 *((u8 *)__cil_tmp38) = (u8 )tmp___8;
21812#line 876
21813 __cil_tmp39 = (struct mutex *)us;
21814#line 876
21815 mutex_unlock(__cil_tmp39);
21816 }
21817 } else {
21818
21819 }
21820 }
21821 } else {
21822
21823 }
21824 }
21825 {
21826#line 878
21827 tmp___9 = us_to_host(us);
21828#line 878
21829 scsi_scan_host(tmp___9);
21830 }
21831 {
21832#line 879
21833 while (1) {
21834 while_continue___1: ;
21835 {
21836#line 879
21837 while (1) {
21838 while_continue___2: ;
21839 {
21840#line 879
21841 __cil_tmp40 = & descriptor___0;
21842#line 879
21843 __cil_tmp41 = __cil_tmp40->flags;
21844#line 879
21845 __cil_tmp42 = __cil_tmp41 & 1U;
21846#line 879
21847 __cil_tmp43 = ! __cil_tmp42;
21848#line 879
21849 __cil_tmp44 = ! __cil_tmp43;
21850#line 879
21851 __cil_tmp45 = (long )__cil_tmp44;
21852#line 879
21853 tmp___10 = __builtin_expect(__cil_tmp45, 0L);
21854 }
21855#line 879
21856 if (tmp___10) {
21857 {
21858#line 879
21859 __cil_tmp46 = (struct device *)dev;
21860#line 879
21861 __dynamic_dev_dbg(& descriptor___0, __cil_tmp46, "scan complete\n");
21862 }
21863 } else {
21864
21865 }
21866#line 879
21867 goto while_break___2;
21868 }
21869 while_break___2: ;
21870 }
21871#line 879
21872 goto while_break___1;
21873 }
21874 while_break___1: ;
21875 }
21876 {
21877#line 883
21878 __cil_tmp47 = (unsigned long )us;
21879#line 883
21880 __cil_tmp48 = __cil_tmp47 + 80;
21881#line 883
21882 __cil_tmp49 = *((struct usb_interface **)__cil_tmp48);
21883#line 883
21884 usb_autopm_put_interface(__cil_tmp49);
21885#line 884
21886 __cil_tmp50 = (unsigned long )us;
21887#line 884
21888 __cil_tmp51 = __cil_tmp50 + 104;
21889#line 884
21890 __cil_tmp52 = (unsigned long *)__cil_tmp51;
21891#line 884
21892 __cil_tmp53 = (unsigned long volatile *)__cil_tmp52;
21893#line 884
21894 clear_bit(6, __cil_tmp53);
21895 }
21896#line 885
21897 return;
21898}
21899}
21900#line 887 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21901static unsigned int usb_stor_sg_tablesize(struct usb_interface *intf )
21902{ struct usb_device *usb_dev ;
21903 struct usb_device *tmp___7 ;
21904 unsigned long __cil_tmp4 ;
21905 unsigned long __cil_tmp5 ;
21906 struct usb_bus *__cil_tmp6 ;
21907 unsigned long __cil_tmp7 ;
21908 unsigned long __cil_tmp8 ;
21909 unsigned long __cil_tmp9 ;
21910 unsigned long __cil_tmp10 ;
21911 struct usb_bus *__cil_tmp11 ;
21912 unsigned long __cil_tmp12 ;
21913 unsigned long __cil_tmp13 ;
21914
21915 {
21916 {
21917#line 889
21918 tmp___7 = interface_to_usbdev(intf);
21919#line 889
21920 usb_dev = tmp___7;
21921 }
21922 {
21923#line 891
21924 __cil_tmp4 = (unsigned long )usb_dev;
21925#line 891
21926 __cil_tmp5 = __cil_tmp4 + 64;
21927#line 891
21928 __cil_tmp6 = *((struct usb_bus **)__cil_tmp5);
21929#line 891
21930 __cil_tmp7 = (unsigned long )__cil_tmp6;
21931#line 891
21932 __cil_tmp8 = __cil_tmp7 + 28;
21933#line 891
21934 if (*((unsigned int *)__cil_tmp8)) {
21935 {
21936#line 892
21937 __cil_tmp9 = (unsigned long )usb_dev;
21938#line 892
21939 __cil_tmp10 = __cil_tmp9 + 64;
21940#line 892
21941 __cil_tmp11 = *((struct usb_bus **)__cil_tmp10);
21942#line 892
21943 __cil_tmp12 = (unsigned long )__cil_tmp11;
21944#line 892
21945 __cil_tmp13 = __cil_tmp12 + 28;
21946#line 892
21947 return (*((unsigned int *)__cil_tmp13));
21948 }
21949 } else {
21950
21951 }
21952 }
21953#line 894
21954 return (128U);
21955}
21956}
21957#line 927 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21958static struct lock_class_key __key___6 ;
21959#line 931 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21960static struct lock_class_key __key___7 ;
21961#line 898 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
21962int usb_stor_probe1(struct us_data **pus , struct usb_interface *intf , struct usb_device_id *id ,
21963 struct us_unusual_dev *unusual_dev )
21964{ struct Scsi_Host *host ;
21965 struct us_data *us ;
21966 int result ;
21967 unsigned int tmp___7 ;
21968 atomic_long_t __r_expr_0 ;
21969 int __cil_tmp10 ;
21970 unsigned long __cil_tmp11 ;
21971 unsigned long __cil_tmp12 ;
21972 struct device *__cil_tmp13 ;
21973 struct device *__cil_tmp14 ;
21974 unsigned long __cil_tmp15 ;
21975 unsigned long __cil_tmp16 ;
21976 unsigned long __cil_tmp17 ;
21977 unsigned long __cil_tmp18 ;
21978 void *__cil_tmp19 ;
21979 struct mutex *__cil_tmp20 ;
21980 struct mutex *__cil_tmp21 ;
21981 unsigned long __cil_tmp22 ;
21982 unsigned long __cil_tmp23 ;
21983 struct completion *__cil_tmp24 ;
21984 unsigned long __cil_tmp25 ;
21985 unsigned long __cil_tmp26 ;
21986 struct completion *__cil_tmp27 ;
21987 unsigned long __cil_tmp28 ;
21988 unsigned long __cil_tmp29 ;
21989 wait_queue_head_t *__cil_tmp30 ;
21990 unsigned long __cil_tmp31 ;
21991 unsigned long __cil_tmp32 ;
21992 struct work_struct *__cil_tmp33 ;
21993 unsigned long __cil_tmp34 ;
21994 unsigned long __cil_tmp35 ;
21995 unsigned long __cil_tmp36 ;
21996 unsigned long __cil_tmp37 ;
21997 unsigned long __cil_tmp38 ;
21998 unsigned long __cil_tmp39 ;
21999 struct list_head *__cil_tmp40 ;
22000 unsigned long __cil_tmp41 ;
22001 unsigned long __cil_tmp42 ;
22002 unsigned long __cil_tmp43 ;
22003 unsigned long __cil_tmp44 ;
22004 unsigned long __cil_tmp45 ;
22005 unsigned long __cil_tmp46 ;
22006 unsigned long __cil_tmp47 ;
22007 struct timer_list *__cil_tmp48 ;
22008 void *__cil_tmp49 ;
22009 char *__cil_tmp50 ;
22010 void *__cil_tmp51 ;
22011 struct lock_class_key *__cil_tmp52 ;
22012 long __r_expr_0_counter53 ;
22013
22014 {
22015 {
22016#line 907
22017 printk("<7>usb-storage: USB Mass Storage device detected\n");
22018#line 913
22019 __cil_tmp10 = (int )680UL;
22020#line 913
22021 host = scsi_host_alloc(& usb_stor_host_template, __cil_tmp10);
22022 }
22023#line 914
22024 if (! host) {
22025 {
22026#line 915
22027 __cil_tmp11 = (unsigned long )intf;
22028#line 915
22029 __cil_tmp12 = __cil_tmp11 + 48;
22030#line 915
22031 __cil_tmp13 = (struct device *)__cil_tmp12;
22032#line 915
22033 __cil_tmp14 = (struct device *)__cil_tmp13;
22034#line 915
22035 dev_warn(__cil_tmp14, "Unable to allocate the scsi host\n");
22036 }
22037#line 917
22038 return (-12);
22039 } else {
22040
22041 }
22042 {
22043#line 923
22044 __cil_tmp15 = (unsigned long )host;
22045#line 923
22046 __cil_tmp16 = __cil_tmp15 + 344;
22047#line 923
22048 *((unsigned short *)__cil_tmp16) = (unsigned short)16;
22049#line 924
22050 tmp___7 = usb_stor_sg_tablesize(intf);
22051#line 924
22052 __cil_tmp17 = (unsigned long )host;
22053#line 924
22054 __cil_tmp18 = __cil_tmp17 + 358;
22055#line 924
22056 *((unsigned short *)__cil_tmp18) = (unsigned short )tmp___7;
22057#line 925
22058 us = host_to_us(host);
22059#line 925
22060 *pus = us;
22061#line 926
22062 __cil_tmp19 = (void *)us;
22063#line 926
22064 memset(__cil_tmp19, 0, 680UL);
22065 }
22066 {
22067#line 927
22068 while (1) {
22069 while_continue: ;
22070 {
22071#line 927
22072 __cil_tmp20 = (struct mutex *)us;
22073#line 927
22074 __mutex_init(__cil_tmp20, "&(us->dev_mutex)", & __key___6);
22075 }
22076#line 927
22077 goto while_break;
22078 }
22079 while_break: ;
22080 }
22081 {
22082#line 928
22083 __cil_tmp21 = (struct mutex *)us;
22084#line 928
22085 us_set_lock_class(__cil_tmp21, intf);
22086#line 929
22087 __cil_tmp22 = (unsigned long )us;
22088#line 929
22089 __cil_tmp23 = __cil_tmp22 + 400;
22090#line 929
22091 __cil_tmp24 = (struct completion *)__cil_tmp23;
22092#line 929
22093 init_completion___0(__cil_tmp24);
22094#line 930
22095 __cil_tmp25 = (unsigned long )us;
22096#line 930
22097 __cil_tmp26 = __cil_tmp25 + 448;
22098#line 930
22099 __cil_tmp27 = (struct completion *)__cil_tmp26;
22100#line 930
22101 init_completion___0(__cil_tmp27);
22102 }
22103 {
22104#line 931
22105 while (1) {
22106 while_continue___0: ;
22107 {
22108#line 931
22109 __cil_tmp28 = (unsigned long )us;
22110#line 931
22111 __cil_tmp29 = __cil_tmp28 + 496;
22112#line 931
22113 __cil_tmp30 = (wait_queue_head_t *)__cil_tmp29;
22114#line 931
22115 __init_waitqueue_head(__cil_tmp30, "&us->delay_wait", & __key___7);
22116 }
22117#line 931
22118 goto while_break___0;
22119 }
22120 while_break___0: ;
22121 }
22122 {
22123#line 932
22124 while (1) {
22125 while_continue___1: ;
22126 {
22127#line 932
22128 while (1) {
22129 while_continue___2: ;
22130 {
22131#line 932
22132 while (1) {
22133 while_continue___3: ;
22134 {
22135#line 932
22136 __cil_tmp31 = (unsigned long )us;
22137#line 932
22138 __cil_tmp32 = __cil_tmp31 + 536;
22139#line 932
22140 __cil_tmp33 = (struct work_struct *)__cil_tmp32;
22141#line 932
22142 __init_work(__cil_tmp33, 0);
22143#line 932
22144 __r_expr_0_counter53 = 2097664L;
22145#line 932
22146 __cil_tmp34 = (unsigned long )us;
22147#line 932
22148 __cil_tmp35 = __cil_tmp34 + 536;
22149#line 932
22150 ((atomic_long_t *)__cil_tmp35)->counter = __r_expr_0_counter53;
22151#line 932
22152 __cil_tmp36 = 0 + 8;
22153#line 932
22154 __cil_tmp37 = 536 + __cil_tmp36;
22155#line 932
22156 __cil_tmp38 = (unsigned long )us;
22157#line 932
22158 __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
22159#line 932
22160 __cil_tmp40 = (struct list_head *)__cil_tmp39;
22161#line 932
22162 INIT_LIST_HEAD(__cil_tmp40);
22163 }
22164 {
22165#line 932
22166 while (1) {
22167 while_continue___4: ;
22168#line 932
22169 __cil_tmp41 = 0 + 24;
22170#line 932
22171 __cil_tmp42 = 536 + __cil_tmp41;
22172#line 932
22173 __cil_tmp43 = (unsigned long )us;
22174#line 932
22175 __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
22176#line 932
22177 *((void (**)(struct work_struct *work ))__cil_tmp44) = & usb_stor_scan_dwork;
22178#line 932
22179 goto while_break___4;
22180 }
22181 while_break___4: ;
22182 }
22183#line 932
22184 goto while_break___3;
22185 }
22186 while_break___3: ;
22187 }
22188#line 932
22189 goto while_break___2;
22190 }
22191 while_break___2: ;
22192 }
22193 {
22194#line 932
22195 __cil_tmp45 = 536 + 32;
22196#line 932
22197 __cil_tmp46 = (unsigned long )us;
22198#line 932
22199 __cil_tmp47 = __cil_tmp46 + __cil_tmp45;
22200#line 932
22201 __cil_tmp48 = (struct timer_list *)__cil_tmp47;
22202#line 932
22203 __cil_tmp49 = (void *)0;
22204#line 932
22205 __cil_tmp50 = (char *)__cil_tmp49;
22206#line 932
22207 __cil_tmp51 = (void *)0;
22208#line 932
22209 __cil_tmp52 = (struct lock_class_key *)__cil_tmp51;
22210#line 932
22211 init_timer_key(__cil_tmp48, __cil_tmp50, __cil_tmp52);
22212 }
22213#line 932
22214 goto while_break___1;
22215 }
22216 while_break___1: ;
22217 }
22218 {
22219#line 935
22220 result = associate_dev(us, intf);
22221 }
22222#line 936
22223 if (result) {
22224#line 937
22225 goto BadDevice;
22226 } else {
22227
22228 }
22229 {
22230#line 940
22231 result = get_device_info(us, id, unusual_dev);
22232 }
22233#line 941
22234 if (result) {
22235#line 942
22236 goto BadDevice;
22237 } else {
22238
22239 }
22240 {
22241#line 945
22242 get_transport(us);
22243#line 946
22244 get_protocol(us);
22245 }
22246#line 951
22247 return (0);
22248 BadDevice:
22249 {
22250#line 954
22251 printk("<7>usb-storage: storage_probe() failed\n");
22252#line 955
22253 release_everything(us);
22254 }
22255#line 956
22256 return (result);
22257}
22258}
22259#line 958
22260extern void *__crc_usb_stor_probe1 __attribute__((__weak__)) ;
22261#line 958 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22262static unsigned long __kcrctab_usb_stor_probe1 __attribute__((__used__, __unused__,
22263__section__("___kcrctab_gpl+usb_stor_probe1"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_probe1));
22264#line 958 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22265static char __kstrtab_usb_stor_probe1[16] __attribute__((__section__("__ksymtab_strings"),
22266__aligned__(1))) =
22267#line 958
22268 { (char )'u', (char )'s', (char const )'b', (char const )'_',
22269 (char )'s', (char )'t', (char const )'o', (char const )'r',
22270 (char )'_', (char )'p', (char const )'r', (char const )'o',
22271 (char )'b', (char )'e', (char const )'1', (char const )'\000'};
22272#line 958 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22273static struct kernel_symbol __ksymtab_usb_stor_probe1 __attribute__((__used__,
22274__unused__, __section__("___ksymtab_gpl+usb_stor_probe1"))) = {(unsigned long )(& usb_stor_probe1), __kstrtab_usb_stor_probe1};
22275#line 1008 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22276static struct _ddebug __attribute__((__aligned__(8))) descriptor___1 __attribute__((__used__,
22277__section__("__verbose"))) = {"usb_storage", "usb_stor_probe2", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c",
22278 "waiting for device to settle before scanning\n", 1008U, 1U};
22279#line 961 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22280int usb_stor_probe2(struct us_data *us )
22281{ int result ;
22282 struct device *dev ;
22283 char *tmp___7 ;
22284 struct Scsi_Host *tmp___8 ;
22285 long tmp___9 ;
22286 unsigned long __cil_tmp7 ;
22287 unsigned long __cil_tmp8 ;
22288 struct usb_interface *__cil_tmp9 ;
22289 unsigned long __cil_tmp10 ;
22290 unsigned long __cil_tmp11 ;
22291 unsigned long __cil_tmp12 ;
22292 unsigned long __cil_tmp13 ;
22293 int (*__cil_tmp14)(struct scsi_cmnd * , struct us_data * ) ;
22294 unsigned long __cil_tmp15 ;
22295 unsigned long __cil_tmp16 ;
22296 void (*__cil_tmp17)(struct scsi_cmnd * , struct us_data * ) ;
22297 unsigned long __cil_tmp18 ;
22298 unsigned long __cil_tmp19 ;
22299 char *__cil_tmp20 ;
22300 unsigned long __cil_tmp21 ;
22301 unsigned long __cil_tmp22 ;
22302 char *__cil_tmp23 ;
22303 unsigned long __cil_tmp24 ;
22304 unsigned long __cil_tmp25 ;
22305 unsigned long __cil_tmp26 ;
22306 unsigned long __cil_tmp27 ;
22307 unsigned long __cil_tmp28 ;
22308 unsigned long __cil_tmp29 ;
22309 unsigned long __cil_tmp30 ;
22310 unsigned long __cil_tmp31 ;
22311 unsigned long __cil_tmp32 ;
22312 unsigned long __cil_tmp33 ;
22313 unsigned long *__cil_tmp34 ;
22314 unsigned long volatile *__cil_tmp35 ;
22315 unsigned long __cil_tmp36 ;
22316 unsigned long __cil_tmp37 ;
22317 struct usb_interface *__cil_tmp38 ;
22318 unsigned long __cil_tmp39 ;
22319 unsigned long __cil_tmp40 ;
22320 struct device *__cil_tmp41 ;
22321 struct device *__cil_tmp42 ;
22322 unsigned long __cil_tmp43 ;
22323 unsigned long __cil_tmp44 ;
22324 unsigned long __cil_tmp45 ;
22325 unsigned long __cil_tmp46 ;
22326 char *__cil_tmp47 ;
22327 struct device *__cil_tmp48 ;
22328 unsigned long __cil_tmp49 ;
22329 unsigned long __cil_tmp50 ;
22330 struct usb_interface *__cil_tmp51 ;
22331 unsigned long __cil_tmp52 ;
22332 unsigned long __cil_tmp53 ;
22333 unsigned long *__cil_tmp54 ;
22334 unsigned long volatile *__cil_tmp55 ;
22335 unsigned int *__cil_tmp56 ;
22336 unsigned int __cil_tmp57 ;
22337 struct _ddebug __attribute__((__aligned__(8))) *__cil_tmp58 ;
22338 unsigned int __cil_tmp59 ;
22339 unsigned int __cil_tmp60 ;
22340 int __cil_tmp61 ;
22341 int __cil_tmp62 ;
22342 long __cil_tmp63 ;
22343 struct device *__cil_tmp64 ;
22344 unsigned long __cil_tmp65 ;
22345 unsigned long __cil_tmp66 ;
22346 struct delayed_work *__cil_tmp67 ;
22347 unsigned int *__cil_tmp68 ;
22348 unsigned int __cil_tmp69 ;
22349 unsigned int __cil_tmp70 ;
22350 unsigned long __cil_tmp71 ;
22351
22352 {
22353#line 964
22354 __cil_tmp7 = (unsigned long )us;
22355#line 964
22356 __cil_tmp8 = __cil_tmp7 + 80;
22357#line 964
22358 __cil_tmp9 = *((struct usb_interface **)__cil_tmp8);
22359#line 964
22360 __cil_tmp10 = (unsigned long )__cil_tmp9;
22361#line 964
22362 __cil_tmp11 = __cil_tmp10 + 48;
22363#line 964
22364 dev = (struct device *)__cil_tmp11;
22365 {
22366#line 967
22367 __cil_tmp12 = (unsigned long )us;
22368#line 967
22369 __cil_tmp13 = __cil_tmp12 + 168;
22370#line 967
22371 __cil_tmp14 = *((int (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp13);
22372#line 967
22373 if (! __cil_tmp14) {
22374#line 968
22375 result = -6;
22376#line 969
22377 goto BadDevice;
22378 } else {
22379 {
22380#line 967
22381 __cil_tmp15 = (unsigned long )us;
22382#line 967
22383 __cil_tmp16 = __cil_tmp15 + 184;
22384#line 967
22385 __cil_tmp17 = *((void (**)(struct scsi_cmnd * , struct us_data * ))__cil_tmp16);
22386#line 967
22387 if (! __cil_tmp17) {
22388#line 968
22389 result = -6;
22390#line 969
22391 goto BadDevice;
22392 } else {
22393
22394 }
22395 }
22396 }
22397 }
22398 {
22399#line 971
22400 __cil_tmp18 = (unsigned long )us;
22401#line 971
22402 __cil_tmp19 = __cil_tmp18 + 136;
22403#line 971
22404 __cil_tmp20 = *((char **)__cil_tmp19);
22405#line 971
22406 printk("<7>usb-storage: Transport: %s\n", __cil_tmp20);
22407#line 972
22408 __cil_tmp21 = (unsigned long )us;
22409#line 972
22410 __cil_tmp22 = __cil_tmp21 + 144;
22411#line 972
22412 __cil_tmp23 = *((char **)__cil_tmp22);
22413#line 972
22414 printk("<7>usb-storage: Protocol: %s\n", __cil_tmp23);
22415 }
22416 {
22417#line 975
22418 __cil_tmp24 = (unsigned long )us;
22419#line 975
22420 __cil_tmp25 = __cil_tmp24 + 96;
22421#line 975
22422 __cil_tmp26 = *((unsigned long *)__cil_tmp25);
22423#line 975
22424 if (__cil_tmp26 & 1UL) {
22425#line 976
22426 __cil_tmp27 = (unsigned long )us;
22427#line 976
22428 __cil_tmp28 = __cil_tmp27 + 158;
22429#line 976
22430 *((u8 *)__cil_tmp28) = (u8 )0;
22431 } else {
22432
22433 }
22434 }
22435 {
22436#line 979
22437 result = get_pipes(us);
22438 }
22439#line 980
22440 if (result) {
22441#line 981
22442 goto BadDevice;
22443 } else {
22444
22445 }
22446 {
22447#line 987
22448 __cil_tmp29 = (unsigned long )us;
22449#line 987
22450 __cil_tmp30 = __cil_tmp29 + 96;
22451#line 987
22452 __cil_tmp31 = *((unsigned long *)__cil_tmp30);
22453#line 987
22454 if (__cil_tmp31 & 1048576UL) {
22455 {
22456#line 988
22457 __cil_tmp32 = (unsigned long )us;
22458#line 988
22459 __cil_tmp33 = __cil_tmp32 + 104;
22460#line 988
22461 __cil_tmp34 = (unsigned long *)__cil_tmp33;
22462#line 988
22463 __cil_tmp35 = (unsigned long volatile *)__cil_tmp34;
22464#line 988
22465 set_bit(7U, __cil_tmp35);
22466 }
22467 } else {
22468
22469 }
22470 }
22471 {
22472#line 991
22473 result = usb_stor_acquire_resources(us);
22474 }
22475#line 992
22476 if (result) {
22477#line 993
22478 goto BadDevice;
22479 } else {
22480
22481 }
22482 {
22483#line 994
22484 __cil_tmp36 = (unsigned long )us;
22485#line 994
22486 __cil_tmp37 = __cil_tmp36 + 80;
22487#line 994
22488 __cil_tmp38 = *((struct usb_interface **)__cil_tmp37);
22489#line 994
22490 __cil_tmp39 = (unsigned long )__cil_tmp38;
22491#line 994
22492 __cil_tmp40 = __cil_tmp39 + 48;
22493#line 994
22494 __cil_tmp41 = (struct device *)__cil_tmp40;
22495#line 994
22496 __cil_tmp42 = (struct device *)__cil_tmp41;
22497#line 994
22498 tmp___7 = dev_name(__cil_tmp42);
22499#line 994
22500 __cil_tmp43 = 0 * 1UL;
22501#line 994
22502 __cil_tmp44 = 204 + __cil_tmp43;
22503#line 994
22504 __cil_tmp45 = (unsigned long )us;
22505#line 994
22506 __cil_tmp46 = __cil_tmp45 + __cil_tmp44;
22507#line 994
22508 __cil_tmp47 = (char *)__cil_tmp46;
22509#line 994
22510 snprintf(__cil_tmp47, 32UL, "usb-storage %s", tmp___7);
22511#line 996
22512 tmp___8 = us_to_host(us);
22513#line 996
22514 result = (int )scsi_add_host(tmp___8, dev);
22515 }
22516#line 997
22517 if (result) {
22518 {
22519#line 998
22520 __cil_tmp48 = (struct device *)dev;
22521#line 998
22522 dev_warn(__cil_tmp48, "Unable to add the scsi host\n");
22523 }
22524#line 1000
22525 goto BadDevice;
22526 } else {
22527
22528 }
22529 {
22530#line 1004
22531 __cil_tmp49 = (unsigned long )us;
22532#line 1004
22533 __cil_tmp50 = __cil_tmp49 + 80;
22534#line 1004
22535 __cil_tmp51 = *((struct usb_interface **)__cil_tmp50);
22536#line 1004
22537 usb_autopm_get_interface_no_resume(__cil_tmp51);
22538#line 1005
22539 __cil_tmp52 = (unsigned long )us;
22540#line 1005
22541 __cil_tmp53 = __cil_tmp52 + 104;
22542#line 1005
22543 __cil_tmp54 = (unsigned long *)__cil_tmp53;
22544#line 1005
22545 __cil_tmp55 = (unsigned long volatile *)__cil_tmp54;
22546#line 1005
22547 set_bit(6U, __cil_tmp55);
22548 }
22549 {
22550#line 1007
22551 __cil_tmp56 = & delay_use;
22552#line 1007
22553 __cil_tmp57 = *__cil_tmp56;
22554#line 1007
22555 if (__cil_tmp57 > 0U) {
22556 {
22557#line 1008
22558 while (1) {
22559 while_continue: ;
22560 {
22561#line 1008
22562 while (1) {
22563 while_continue___0: ;
22564 {
22565#line 1008
22566 __cil_tmp58 = & descriptor___1;
22567#line 1008
22568 __cil_tmp59 = __cil_tmp58->flags;
22569#line 1008
22570 __cil_tmp60 = __cil_tmp59 & 1U;
22571#line 1008
22572 __cil_tmp61 = ! __cil_tmp60;
22573#line 1008
22574 __cil_tmp62 = ! __cil_tmp61;
22575#line 1008
22576 __cil_tmp63 = (long )__cil_tmp62;
22577#line 1008
22578 tmp___9 = __builtin_expect(__cil_tmp63, 0L);
22579 }
22580#line 1008
22581 if (tmp___9) {
22582 {
22583#line 1008
22584 __cil_tmp64 = (struct device *)dev;
22585#line 1008
22586 __dynamic_dev_dbg(& descriptor___1, __cil_tmp64, "waiting for device to settle before scanning\n");
22587 }
22588 } else {
22589
22590 }
22591#line 1008
22592 goto while_break___0;
22593 }
22594 while_break___0: ;
22595 }
22596#line 1008
22597 goto while_break;
22598 }
22599 while_break: ;
22600 }
22601 } else {
22602
22603 }
22604 }
22605 {
22606#line 1009
22607 __cil_tmp65 = (unsigned long )us;
22608#line 1009
22609 __cil_tmp66 = __cil_tmp65 + 536;
22610#line 1009
22611 __cil_tmp67 = (struct delayed_work *)__cil_tmp66;
22612#line 1009
22613 __cil_tmp68 = & delay_use;
22614#line 1009
22615 __cil_tmp69 = *__cil_tmp68;
22616#line 1009
22617 __cil_tmp70 = __cil_tmp69 * 250U;
22618#line 1009
22619 __cil_tmp71 = (unsigned long )__cil_tmp70;
22620#line 1009
22621 queue_delayed_work(system_freezable_wq, __cil_tmp67, __cil_tmp71);
22622 }
22623#line 1011
22624 return (0);
22625 BadDevice:
22626 {
22627#line 1015
22628 printk("<7>usb-storage: storage_probe() failed\n");
22629#line 1016
22630 release_everything(us);
22631 }
22632#line 1017
22633 return (result);
22634}
22635}
22636#line 1019
22637extern void *__crc_usb_stor_probe2 __attribute__((__weak__)) ;
22638#line 1019 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22639static unsigned long __kcrctab_usb_stor_probe2 __attribute__((__used__, __unused__,
22640__section__("___kcrctab_gpl+usb_stor_probe2"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_probe2));
22641#line 1019 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22642static char __kstrtab_usb_stor_probe2[16] __attribute__((__section__("__ksymtab_strings"),
22643__aligned__(1))) =
22644#line 1019
22645 { (char )'u', (char )'s', (char const )'b', (char const )'_',
22646 (char )'s', (char )'t', (char const )'o', (char const )'r',
22647 (char )'_', (char )'p', (char const )'r', (char const )'o',
22648 (char )'b', (char )'e', (char const )'2', (char const )'\000'};
22649#line 1019 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22650static struct kernel_symbol __ksymtab_usb_stor_probe2 __attribute__((__used__,
22651__unused__, __section__("___ksymtab_gpl+usb_stor_probe2"))) = {(unsigned long )(& usb_stor_probe2), __kstrtab_usb_stor_probe2};
22652#line 1022 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22653void usb_stor_disconnect(struct usb_interface *intf )
22654{ struct us_data *us ;
22655 void *tmp___7 ;
22656
22657 {
22658 {
22659#line 1024
22660 tmp___7 = usb_get_intfdata(intf);
22661#line 1024
22662 us = (struct us_data *)tmp___7;
22663#line 1026
22664 printk("<7>usb-storage: storage_disconnect() called\n");
22665#line 1027
22666 quiesce_and_remove_host(us);
22667#line 1028
22668 release_everything(us);
22669 }
22670#line 1029
22671 return;
22672}
22673}
22674#line 1030
22675extern void *__crc_usb_stor_disconnect __attribute__((__weak__)) ;
22676#line 1030 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22677static unsigned long __kcrctab_usb_stor_disconnect __attribute__((__used__,
22678__unused__, __section__("___kcrctab_gpl+usb_stor_disconnect"))) = (unsigned long )((unsigned long )(& __crc_usb_stor_disconnect));
22679#line 1030 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22680static char __kstrtab_usb_stor_disconnect[20] __attribute__((__section__("__ksymtab_strings"),
22681__aligned__(1))) =
22682#line 1030
22683 { (char )'u', (char )'s', (char const )'b', (char const )'_',
22684 (char )'s', (char )'t', (char const )'o', (char const )'r',
22685 (char )'_', (char )'d', (char const )'i', (char const )'s',
22686 (char )'c', (char )'o', (char const )'n', (char const )'n',
22687 (char )'e', (char )'c', (char const )'t', (char const )'\000'};
22688#line 1030 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22689static struct kernel_symbol __ksymtab_usb_stor_disconnect __attribute__((__used__,
22690__unused__, __section__("___ksymtab_gpl+usb_stor_disconnect"))) = {(unsigned long )(& usb_stor_disconnect), __kstrtab_usb_stor_disconnect};
22691#line 1033 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22692static int storage_probe(struct usb_interface *intf , struct usb_device_id *id )
22693{ struct us_unusual_dev *unusual_dev ;
22694 struct us_data *us ;
22695 int result ;
22696 int size ;
22697 int tmp___7 ;
22698 int tmp___8 ;
22699 unsigned long __cil_tmp9 ;
22700 unsigned long __cil_tmp10 ;
22701 unsigned long __cil_tmp11 ;
22702 unsigned long __cil_tmp12 ;
22703 struct usb_device_id *__cil_tmp13 ;
22704 unsigned long __cil_tmp14 ;
22705 unsigned long __cil_tmp15 ;
22706 unsigned long __cil_tmp16 ;
22707 unsigned long __cil_tmp17 ;
22708 struct usb_device_id *__cil_tmp18 ;
22709 struct usb_device_id *__cil_tmp19 ;
22710 unsigned long __cil_tmp20 ;
22711 unsigned long __cil_tmp21 ;
22712 unsigned long __cil_tmp22 ;
22713 unsigned long __cil_tmp23 ;
22714 struct usb_device_id *__cil_tmp24 ;
22715 struct usb_device_id *__cil_tmp25 ;
22716 int __cil_tmp26 ;
22717 unsigned long __cil_tmp27 ;
22718 unsigned long __cil_tmp28 ;
22719 struct us_unusual_dev *__cil_tmp29 ;
22720 unsigned long __cil_tmp30 ;
22721 unsigned long __cil_tmp31 ;
22722 __u16 __cil_tmp32 ;
22723 int __cil_tmp33 ;
22724 unsigned long __cil_tmp34 ;
22725 unsigned long __cil_tmp35 ;
22726 __u16 __cil_tmp36 ;
22727 int __cil_tmp37 ;
22728 unsigned long __cil_tmp38 ;
22729 unsigned long __cil_tmp39 ;
22730 __u16 __cil_tmp40 ;
22731 int __cil_tmp41 ;
22732 unsigned long __cil_tmp42 ;
22733 unsigned long __cil_tmp43 ;
22734 __u16 __cil_tmp44 ;
22735 int __cil_tmp45 ;
22736 struct us_data **__cil_tmp46 ;
22737 struct us_data *__cil_tmp47 ;
22738
22739 {
22740 {
22741#line 1047
22742 tmp___7 = usb_usual_check_type(id, 1);
22743 }
22744#line 1047
22745 if (tmp___7) {
22746#line 1049
22747 return (-6);
22748 } else {
22749 {
22750#line 1047
22751 tmp___8 = usb_usual_ignore_device(intf);
22752 }
22753#line 1047
22754 if (tmp___8) {
22755#line 1049
22756 return (-6);
22757 } else {
22758
22759 }
22760 }
22761#line 1059
22762 __cil_tmp9 = 9280UL / 32UL;
22763#line 1059
22764 __cil_tmp10 = __cil_tmp9 + 0UL;
22765#line 1059
22766 size = (int )__cil_tmp10;
22767 {
22768#line 1060
22769 __cil_tmp11 = 0 * 24UL;
22770#line 1060
22771 __cil_tmp12 = (unsigned long )(usb_storage_usb_ids) + __cil_tmp11;
22772#line 1060
22773 __cil_tmp13 = (struct usb_device_id *)__cil_tmp12;
22774#line 1060
22775 __cil_tmp14 = (unsigned long )__cil_tmp13;
22776#line 1060
22777 __cil_tmp15 = (unsigned long )id;
22778#line 1060
22779 if (__cil_tmp15 >= __cil_tmp14) {
22780 {
22781#line 1060
22782 __cil_tmp16 = 0 * 24UL;
22783#line 1060
22784 __cil_tmp17 = (unsigned long )(usb_storage_usb_ids) + __cil_tmp16;
22785#line 1060
22786 __cil_tmp18 = (struct usb_device_id *)__cil_tmp17;
22787#line 1060
22788 __cil_tmp19 = __cil_tmp18 + size;
22789#line 1060
22790 __cil_tmp20 = (unsigned long )__cil_tmp19;
22791#line 1060
22792 __cil_tmp21 = (unsigned long )id;
22793#line 1060
22794 if (__cil_tmp21 < __cil_tmp20) {
22795#line 1061
22796 __cil_tmp22 = 0 * 24UL;
22797#line 1061
22798 __cil_tmp23 = (unsigned long )(usb_storage_usb_ids) + __cil_tmp22;
22799#line 1061
22800 __cil_tmp24 = (struct usb_device_id *)__cil_tmp23;
22801#line 1061
22802 __cil_tmp25 = (struct usb_device_id *)__cil_tmp24;
22803#line 1061
22804 __cil_tmp26 = id - __cil_tmp25;
22805#line 1061
22806 __cil_tmp27 = 0 * 32UL;
22807#line 1061
22808 __cil_tmp28 = (unsigned long )(us_unusual_dev_list) + __cil_tmp27;
22809#line 1061
22810 __cil_tmp29 = (struct us_unusual_dev *)__cil_tmp28;
22811#line 1061
22812 unusual_dev = __cil_tmp29 + __cil_tmp26;
22813 } else {
22814 {
22815#line 1063
22816 unusual_dev = & for_dynamic_ids;
22817#line 1065
22818 __cil_tmp30 = (unsigned long )id;
22819#line 1065
22820 __cil_tmp31 = __cil_tmp30 + 2;
22821#line 1065
22822 __cil_tmp32 = *((__u16 *)__cil_tmp31);
22823#line 1065
22824 __cil_tmp33 = (int )__cil_tmp32;
22825#line 1065
22826 __cil_tmp34 = (unsigned long )id;
22827#line 1065
22828 __cil_tmp35 = __cil_tmp34 + 4;
22829#line 1065
22830 __cil_tmp36 = *((__u16 *)__cil_tmp35);
22831#line 1065
22832 __cil_tmp37 = (int )__cil_tmp36;
22833#line 1065
22834 printk("<7>usb-storage: %s %s 0x%04x 0x%04x\n", "Use Bulk-Only transport", "with the Transparent SCSI protocol for dynamic id:",
22835 __cil_tmp33, __cil_tmp37);
22836 }
22837 }
22838 }
22839 } else {
22840 {
22841#line 1063
22842 unusual_dev = & for_dynamic_ids;
22843#line 1065
22844 __cil_tmp38 = (unsigned long )id;
22845#line 1065
22846 __cil_tmp39 = __cil_tmp38 + 2;
22847#line 1065
22848 __cil_tmp40 = *((__u16 *)__cil_tmp39);
22849#line 1065
22850 __cil_tmp41 = (int )__cil_tmp40;
22851#line 1065
22852 __cil_tmp42 = (unsigned long )id;
22853#line 1065
22854 __cil_tmp43 = __cil_tmp42 + 4;
22855#line 1065
22856 __cil_tmp44 = *((__u16 *)__cil_tmp43);
22857#line 1065
22858 __cil_tmp45 = (int )__cil_tmp44;
22859#line 1065
22860 printk("<7>usb-storage: %s %s 0x%04x 0x%04x\n", "Use Bulk-Only transport", "with the Transparent SCSI protocol for dynamic id:",
22861 __cil_tmp41, __cil_tmp45);
22862 }
22863 }
22864 }
22865 {
22866#line 1070
22867 result = usb_stor_probe1(& us, intf, id, unusual_dev);
22868 }
22869#line 1071
22870 if (result) {
22871#line 1072
22872 return (result);
22873 } else {
22874
22875 }
22876 {
22877#line 1076
22878 __cil_tmp46 = & us;
22879#line 1076
22880 __cil_tmp47 = *__cil_tmp46;
22881#line 1076
22882 result = usb_stor_probe2(__cil_tmp47);
22883 }
22884#line 1077
22885 return (result);
22886}
22887}
22888#line 1084 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22889static struct usb_driver usb_storage_driver =
22890#line 1084
22891 {"usb-storage", & storage_probe, & usb_stor_disconnect, (int (*)(struct usb_interface *intf ,
22892 unsigned int code ,
22893 void *buf ))0,
22894 & usb_stor_suspend, & usb_stor_resume, & usb_stor_reset_resume, & usb_stor_pre_reset,
22895 & usb_stor_post_reset, (struct usb_device_id *)(usb_storage_usb_ids),
22896 {{{{{{0U}}, 0U, 0U, (void *)0}}}, {(struct list_head *)0, (struct list_head *)0}},
22897 {{(char *)0, (struct bus_type *)0, (struct module *)0, (char *)0,
22898 (_Bool)0, (struct of_device_id *)0, (int (*)(struct device *dev ))0,
22899 (int (*)(struct device *dev ))0, (void (*)(struct device *dev ))0, (int (*)(struct device *dev ,
22900 pm_message_t state ))0,
22901 (int (*)(struct device *dev ))0, (struct attribute_group **)0, (struct dev_pm_ops *)0,
22902 (struct driver_private *)0}, 0}, 0U, 1U, 1U};
22903#line 1098
22904static int usb_stor_init(void) __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
22905#line 1098 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22906static int usb_stor_init(void)
22907{ int retval ;
22908
22909 {
22910 {
22911#line 1102
22912 printk("<6>Initializing USB Mass Storage driver...\n");
22913#line 1105
22914 retval = usb_register_driver(& usb_storage_driver, & __this_module, "usb_storage");
22915 }
22916#line 1106
22917 if (retval == 0) {
22918 {
22919#line 1107
22920 printk("<6>USB Mass Storage support registered.\n");
22921#line 1108
22922 usb_usual_set_present(1);
22923 }
22924 } else {
22925
22926 }
22927#line 1110
22928 return (retval);
22929}
22930}
22931#line 1113
22932static void usb_stor_exit(void) __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
22933#line 1113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22934static void usb_stor_exit(void)
22935{
22936
22937 {
22938 {
22939#line 1115
22940 printk("<7>usb-storage: usb_stor_exit() called\n");
22941#line 1121
22942 printk("<7>usb-storage: -- calling usb_deregister()\n");
22943#line 1122
22944 usb_deregister(& usb_storage_driver);
22945#line 1124
22946 usb_usual_clear_present(1);
22947 }
22948#line 1125
22949 return;
22950}
22951}
22952#line 1127 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22953int init_module(void)
22954{ int tmp___7 ;
22955
22956 {
22957 {
22958#line 1127
22959 tmp___7 = usb_stor_init();
22960 }
22961#line 1127
22962 return (tmp___7);
22963}
22964}
22965#line 1128 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22966void cleanup_module(void)
22967{
22968
22969 {
22970 {
22971#line 1128
22972 usb_stor_exit();
22973 }
22974#line 1128
22975 return;
22976}
22977}
22978#line 1149
22979extern void ldv_check_return_value(int res ) ;
22980#line 1204 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22981static int res_storage_probe_25 ;
22982#line 1161 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/usb.c"
22983void ldv_main3_sequence_infinite_withcheck_stateful(void)
22984{ struct usb_interface *var_group1 ;
22985 struct usb_device_id *var_storage_probe_25_p1 ;
22986 pm_message_t var_usb_stor_suspend_2_p1 ;
22987 int tmp___7 ;
22988 int ldv_s_usb_storage_driver_usb_driver ;
22989 int tmp___8 ;
22990 int tmp___9 ;
22991 int __cil_tmp8 ;
22992 int var_usb_stor_suspend_2_p1_event9 ;
22993
22994 {
22995 {
22996#line 1410
22997 LDV_IN_INTERRUPT = 1;
22998#line 1419
22999 ldv_initialize();
23000#line 1454
23001 tmp___7 = usb_stor_init();
23002 }
23003#line 1454
23004 if (tmp___7) {
23005#line 1455
23006 goto ldv_final;
23007 } else {
23008
23009 }
23010#line 1456
23011 ldv_s_usb_storage_driver_usb_driver = 0;
23012 {
23013#line 1459
23014 while (1) {
23015 while_continue: ;
23016 {
23017#line 1459
23018 tmp___9 = __VERIFIER_nondet_int();
23019 }
23020#line 1459
23021 if (tmp___9) {
23022
23023 } else {
23024 {
23025#line 1459
23026 __cil_tmp8 = ldv_s_usb_storage_driver_usb_driver == 0;
23027#line 1459
23028 if (! __cil_tmp8) {
23029
23030 } else {
23031#line 1459
23032 goto while_break;
23033 }
23034 }
23035 }
23036 {
23037#line 1463
23038 tmp___8 = __VERIFIER_nondet_int();
23039 }
23040#line 1465
23041 if (tmp___8 == 0) {
23042#line 1465
23043 goto case_0;
23044 } else
23045#line 1513
23046 if (tmp___8 == 1) {
23047#line 1513
23048 goto case_1;
23049 } else
23050#line 1560
23051 if (tmp___8 == 2) {
23052#line 1560
23053 goto case_2;
23054 } else
23055#line 1607
23056 if (tmp___8 == 3) {
23057#line 1607
23058 goto case_3;
23059 } else
23060#line 1654
23061 if (tmp___8 == 4) {
23062#line 1654
23063 goto case_4;
23064 } else
23065#line 1701
23066 if (tmp___8 == 5) {
23067#line 1701
23068 goto case_5;
23069 } else
23070#line 1748
23071 if (tmp___8 == 6) {
23072#line 1748
23073 goto case_6;
23074 } else {
23075 {
23076#line 1793
23077 goto switch_default;
23078#line 1463
23079 if (0) {
23080 case_0:
23081#line 1468
23082 if (ldv_s_usb_storage_driver_usb_driver == 0) {
23083 {
23084#line 1502
23085 res_storage_probe_25 = storage_probe(var_group1, var_storage_probe_25_p1);
23086#line 1503
23087 ldv_check_return_value(res_storage_probe_25);
23088 }
23089#line 1504
23090 if (res_storage_probe_25) {
23091#line 1505
23092 goto ldv_module_exit;
23093 } else {
23094
23095 }
23096#line 1506
23097 ldv_s_usb_storage_driver_usb_driver = ldv_s_usb_storage_driver_usb_driver + 1;
23098 } else {
23099
23100 }
23101#line 1512
23102 goto switch_break;
23103 case_1:
23104#line 1516
23105 if (ldv_s_usb_storage_driver_usb_driver == 1) {
23106 {
23107#line 1548
23108 usb_stor_suspend(var_group1, var_usb_stor_suspend_2_p1_event9);
23109#line 1553
23110 ldv_s_usb_storage_driver_usb_driver = ldv_s_usb_storage_driver_usb_driver + 1;
23111 }
23112 } else {
23113
23114 }
23115#line 1559
23116 goto switch_break;
23117 case_2:
23118#line 1563
23119 if (ldv_s_usb_storage_driver_usb_driver == 2) {
23120 {
23121#line 1595
23122 usb_stor_resume(var_group1);
23123#line 1600
23124 ldv_s_usb_storage_driver_usb_driver = ldv_s_usb_storage_driver_usb_driver + 1;
23125 }
23126 } else {
23127
23128 }
23129#line 1606
23130 goto switch_break;
23131 case_3:
23132#line 1610
23133 if (ldv_s_usb_storage_driver_usb_driver == 3) {
23134 {
23135#line 1643
23136 usb_stor_pre_reset(var_group1);
23137#line 1647
23138 ldv_s_usb_storage_driver_usb_driver = ldv_s_usb_storage_driver_usb_driver + 1;
23139 }
23140 } else {
23141
23142 }
23143#line 1653
23144 goto switch_break;
23145 case_4:
23146#line 1657
23147 if (ldv_s_usb_storage_driver_usb_driver == 4) {
23148 {
23149#line 1689
23150 usb_stor_reset_resume(var_group1);
23151#line 1694
23152 ldv_s_usb_storage_driver_usb_driver = ldv_s_usb_storage_driver_usb_driver + 1;
23153 }
23154 } else {
23155
23156 }
23157#line 1700
23158 goto switch_break;
23159 case_5:
23160#line 1704
23161 if (ldv_s_usb_storage_driver_usb_driver == 5) {
23162 {
23163#line 1737
23164 usb_stor_post_reset(var_group1);
23165#line 1741
23166 ldv_s_usb_storage_driver_usb_driver = ldv_s_usb_storage_driver_usb_driver + 1;
23167 }
23168 } else {
23169
23170 }
23171#line 1747
23172 goto switch_break;
23173 case_6:
23174#line 1751
23175 if (ldv_s_usb_storage_driver_usb_driver == 6) {
23176 {
23177#line 1785
23178 usb_stor_disconnect(var_group1);
23179#line 1786
23180 ldv_s_usb_storage_driver_usb_driver = 0;
23181 }
23182 } else {
23183
23184 }
23185#line 1792
23186 goto switch_break;
23187 switch_default:
23188#line 1793
23189 goto switch_break;
23190 } else {
23191 switch_break: ;
23192 }
23193 }
23194 }
23195 }
23196 while_break: ;
23197 }
23198 ldv_module_exit:
23199 {
23200#line 1834
23201 usb_stor_exit();
23202 }
23203 ldv_final:
23204 {
23205#line 1837
23206 ldv_check_final_state();
23207 }
23208#line 1840
23209 return;
23210}
23211}
23212#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/initializers.c"
23213int usb_stor_euscsi_init(struct us_data *us )
23214{ int result ;
23215 unsigned long __cil_tmp3 ;
23216 unsigned long __cil_tmp4 ;
23217 unsigned char *__cil_tmp5 ;
23218 unsigned char *__cil_tmp6 ;
23219 unsigned long __cil_tmp7 ;
23220 unsigned long __cil_tmp8 ;
23221 unsigned int __cil_tmp9 ;
23222 u8 __cil_tmp10 ;
23223 int __cil_tmp11 ;
23224 int __cil_tmp12 ;
23225 u8 __cil_tmp13 ;
23226 u16 __cil_tmp14 ;
23227 u16 __cil_tmp15 ;
23228 unsigned long __cil_tmp16 ;
23229 unsigned long __cil_tmp17 ;
23230 unsigned char *__cil_tmp18 ;
23231 void *__cil_tmp19 ;
23232 u16 __cil_tmp20 ;
23233
23234 {
23235 {
23236#line 51
23237 printk("<7>usb-storage: Attempting to init eUSCSI bridge...\n");
23238#line 52
23239 __cil_tmp3 = (unsigned long )us;
23240#line 52
23241 __cil_tmp4 = __cil_tmp3 + 376;
23242#line 52
23243 __cil_tmp5 = *((unsigned char **)__cil_tmp4);
23244#line 52
23245 __cil_tmp6 = __cil_tmp5 + 0;
23246#line 52
23247 *__cil_tmp6 = (unsigned char)1;
23248#line 53
23249 __cil_tmp7 = (unsigned long )us;
23250#line 53
23251 __cil_tmp8 = __cil_tmp7 + 120;
23252#line 53
23253 __cil_tmp9 = *((unsigned int *)__cil_tmp8);
23254#line 53
23255 __cil_tmp10 = (u8 )12;
23256#line 53
23257 __cil_tmp11 = 2 << 5;
23258#line 53
23259 __cil_tmp12 = 1 | __cil_tmp11;
23260#line 53
23261 __cil_tmp13 = (u8 )__cil_tmp12;
23262#line 53
23263 __cil_tmp14 = (u16 )1;
23264#line 53
23265 __cil_tmp15 = (u16 )0;
23266#line 53
23267 __cil_tmp16 = (unsigned long )us;
23268#line 53
23269 __cil_tmp17 = __cil_tmp16 + 376;
23270#line 53
23271 __cil_tmp18 = *((unsigned char **)__cil_tmp17);
23272#line 53
23273 __cil_tmp19 = (void *)__cil_tmp18;
23274#line 53
23275 __cil_tmp20 = (u16 )1;
23276#line 53
23277 result = usb_stor_control_msg(us, __cil_tmp9, __cil_tmp10, __cil_tmp13, __cil_tmp14,
23278 __cil_tmp15, __cil_tmp19, __cil_tmp20, 5000);
23279#line 56
23280 printk("<7>usb-storage: -- result is %d\n", result);
23281 }
23282#line 58
23283 return (0);
23284}
23285}
23286#line 69 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/initializers.c"
23287static char init_string[13] =
23288#line 69
23289 { (char )'\354', (char )'\n', (char )'\006', (char )'\000',
23290 (char )'$', (char )'P', (char )'C', (char )'C',
23291 (char )'H', (char )'I', (char )'P', (char )'S',
23292 (char )'\000'};
23293#line 63 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/initializers.c"
23294int usb_stor_ucr61s2b_init(struct us_data *us )
23295{ struct bulk_cb_wrap *bcb ;
23296 struct bulk_cs_wrap *bcs ;
23297 int res ;
23298 unsigned int partial ;
23299 __u8 tmp___7 ;
23300 size_t __len ;
23301 void *__ret ;
23302 unsigned long __cil_tmp9 ;
23303 unsigned long __cil_tmp10 ;
23304 unsigned char *__cil_tmp11 ;
23305 unsigned long __cil_tmp12 ;
23306 unsigned long __cil_tmp13 ;
23307 unsigned char *__cil_tmp14 ;
23308 unsigned long __cil_tmp15 ;
23309 unsigned long __cil_tmp16 ;
23310 unsigned long __cil_tmp17 ;
23311 unsigned long __cil_tmp18 ;
23312 unsigned long __cil_tmp19 ;
23313 unsigned long __cil_tmp20 ;
23314 unsigned long __cil_tmp21 ;
23315 unsigned long __cil_tmp22 ;
23316 unsigned long __cil_tmp23 ;
23317 unsigned long __cil_tmp24 ;
23318 unsigned long __cil_tmp25 ;
23319 unsigned long __cil_tmp26 ;
23320 unsigned long __cil_tmp27 ;
23321 unsigned long __cil_tmp28 ;
23322 unsigned long __cil_tmp29 ;
23323 __u8 *__cil_tmp30 ;
23324 void *__cil_tmp31 ;
23325 unsigned long __cil_tmp32 ;
23326 unsigned long __cil_tmp33 ;
23327 unsigned long __cil_tmp34 ;
23328 unsigned long __cil_tmp35 ;
23329 __u8 *__cil_tmp36 ;
23330 void *__cil_tmp37 ;
23331 unsigned long __cil_tmp38 ;
23332 unsigned long __cil_tmp39 ;
23333 char *__cil_tmp40 ;
23334 void *__cil_tmp41 ;
23335 unsigned long __cil_tmp42 ;
23336 unsigned long __cil_tmp43 ;
23337 unsigned long __cil_tmp44 ;
23338 unsigned long __cil_tmp45 ;
23339 __u8 *__cil_tmp46 ;
23340 void *__cil_tmp47 ;
23341 unsigned long __cil_tmp48 ;
23342 unsigned long __cil_tmp49 ;
23343 char *__cil_tmp50 ;
23344 void *__cil_tmp51 ;
23345 unsigned long __cil_tmp52 ;
23346 unsigned long __cil_tmp53 ;
23347 unsigned int __cil_tmp54 ;
23348 void *__cil_tmp55 ;
23349 unsigned long __cil_tmp56 ;
23350 unsigned long __cil_tmp57 ;
23351 unsigned int __cil_tmp58 ;
23352 void *__cil_tmp59 ;
23353
23354 {
23355 {
23356#line 65
23357 __cil_tmp9 = (unsigned long )us;
23358#line 65
23359 __cil_tmp10 = __cil_tmp9 + 376;
23360#line 65
23361 __cil_tmp11 = *((unsigned char **)__cil_tmp10);
23362#line 65
23363 bcb = (struct bulk_cb_wrap *)__cil_tmp11;
23364#line 66
23365 __cil_tmp12 = (unsigned long )us;
23366#line 66
23367 __cil_tmp13 = __cil_tmp12 + 376;
23368#line 66
23369 __cil_tmp14 = *((unsigned char **)__cil_tmp13);
23370#line 66
23371 bcs = (struct bulk_cs_wrap *)__cil_tmp14;
23372#line 71
23373 printk("<7>usb-storage: Sending UCR-61S2B initialization packet...\n");
23374#line 73
23375 *((__le32 *)bcb) = (__u32 )1128420181;
23376#line 74
23377 __cil_tmp15 = (unsigned long )bcb;
23378#line 74
23379 __cil_tmp16 = __cil_tmp15 + 4;
23380#line 74
23381 *((__u32 *)__cil_tmp16) = (__u32 )0;
23382#line 75
23383 __cil_tmp17 = (unsigned long )bcb;
23384#line 75
23385 __cil_tmp18 = __cil_tmp17 + 8;
23386#line 75
23387 *((__le32 *)__cil_tmp18) = (__u32 )0;
23388#line 76
23389 tmp___7 = (__u8 )0;
23390#line 76
23391 __cil_tmp19 = (unsigned long )bcb;
23392#line 76
23393 __cil_tmp20 = __cil_tmp19 + 13;
23394#line 76
23395 *((__u8 *)__cil_tmp20) = tmp___7;
23396#line 76
23397 __cil_tmp21 = (unsigned long )bcb;
23398#line 76
23399 __cil_tmp22 = __cil_tmp21 + 12;
23400#line 76
23401 *((__u8 *)__cil_tmp22) = tmp___7;
23402#line 77
23403 __cil_tmp23 = (unsigned long )bcb;
23404#line 77
23405 __cil_tmp24 = __cil_tmp23 + 14;
23406#line 77
23407 __cil_tmp25 = 13UL - 1UL;
23408#line 77
23409 *((__u8 *)__cil_tmp24) = (__u8 )__cil_tmp25;
23410#line 78
23411 __cil_tmp26 = 0 * 1UL;
23412#line 78
23413 __cil_tmp27 = 15 + __cil_tmp26;
23414#line 78
23415 __cil_tmp28 = (unsigned long )bcb;
23416#line 78
23417 __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
23418#line 78
23419 __cil_tmp30 = (__u8 *)__cil_tmp29;
23420#line 78
23421 __cil_tmp31 = (void *)__cil_tmp30;
23422#line 78
23423 memset(__cil_tmp31, 0, 16UL);
23424#line 79
23425 __len = 13UL - 1UL;
23426 }
23427#line 79
23428 if (__len >= 64UL) {
23429 {
23430#line 79
23431 __cil_tmp32 = 0 * 1UL;
23432#line 79
23433 __cil_tmp33 = 15 + __cil_tmp32;
23434#line 79
23435 __cil_tmp34 = (unsigned long )bcb;
23436#line 79
23437 __cil_tmp35 = __cil_tmp34 + __cil_tmp33;
23438#line 79
23439 __cil_tmp36 = (__u8 *)__cil_tmp35;
23440#line 79
23441 __cil_tmp37 = (void *)__cil_tmp36;
23442#line 79
23443 __cil_tmp38 = 0 * 1UL;
23444#line 79
23445 __cil_tmp39 = (unsigned long )(init_string) + __cil_tmp38;
23446#line 79
23447 __cil_tmp40 = (char *)__cil_tmp39;
23448#line 79
23449 __cil_tmp41 = (void *)__cil_tmp40;
23450#line 79
23451 __ret = __memcpy(__cil_tmp37, __cil_tmp41, __len);
23452 }
23453 } else {
23454 {
23455#line 79
23456 __cil_tmp42 = 0 * 1UL;
23457#line 79
23458 __cil_tmp43 = 15 + __cil_tmp42;
23459#line 79
23460 __cil_tmp44 = (unsigned long )bcb;
23461#line 79
23462 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
23463#line 79
23464 __cil_tmp46 = (__u8 *)__cil_tmp45;
23465#line 79
23466 __cil_tmp47 = (void *)__cil_tmp46;
23467#line 79
23468 __cil_tmp48 = 0 * 1UL;
23469#line 79
23470 __cil_tmp49 = (unsigned long )(init_string) + __cil_tmp48;
23471#line 79
23472 __cil_tmp50 = (char *)__cil_tmp49;
23473#line 79
23474 __cil_tmp51 = (void *)__cil_tmp50;
23475#line 79
23476 __ret = __builtin_memcpy(__cil_tmp47, __cil_tmp51, __len);
23477 }
23478 }
23479 {
23480#line 81
23481 __cil_tmp52 = (unsigned long )us;
23482#line 81
23483 __cil_tmp53 = __cil_tmp52 + 112;
23484#line 81
23485 __cil_tmp54 = *((unsigned int *)__cil_tmp53);
23486#line 81
23487 __cil_tmp55 = (void *)bcb;
23488#line 81
23489 res = usb_stor_bulk_transfer_buf(us, __cil_tmp54, __cil_tmp55, 31U, & partial);
23490 }
23491#line 83
23492 if (res) {
23493#line 84
23494 return (-5);
23495 } else {
23496
23497 }
23498 {
23499#line 86
23500 printk("<7>usb-storage: Getting status packet...\n");
23501#line 87
23502 __cil_tmp56 = (unsigned long )us;
23503#line 87
23504 __cil_tmp57 = __cil_tmp56 + 116;
23505#line 87
23506 __cil_tmp58 = *((unsigned int *)__cil_tmp57);
23507#line 87
23508 __cil_tmp59 = (void *)bcs;
23509#line 87
23510 res = usb_stor_bulk_transfer_buf(us, __cil_tmp58, __cil_tmp59, 13U, & partial);
23511 }
23512#line 89
23513 if (res) {
23514#line 90
23515 return (-5);
23516 } else {
23517
23518 }
23519#line 92
23520 return (0);
23521}
23522}
23523#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/initializers.c"
23524int usb_stor_huawei_e220_init(struct us_data *us )
23525{ int result ;
23526 unsigned long __cil_tmp3 ;
23527 unsigned long __cil_tmp4 ;
23528 unsigned int __cil_tmp5 ;
23529 u8 __cil_tmp6 ;
23530 u8 __cil_tmp7 ;
23531 u16 __cil_tmp8 ;
23532 u16 __cil_tmp9 ;
23533 void *__cil_tmp10 ;
23534 u16 __cil_tmp11 ;
23535
23536 {
23537 {
23538#line 100
23539 __cil_tmp3 = (unsigned long )us;
23540#line 100
23541 __cil_tmp4 = __cil_tmp3 + 120;
23542#line 100
23543 __cil_tmp5 = *((unsigned int *)__cil_tmp4);
23544#line 100
23545 __cil_tmp6 = (u8 )3;
23546#line 100
23547 __cil_tmp7 = (u8 )0;
23548#line 100
23549 __cil_tmp8 = (u16 )1;
23550#line 100
23551 __cil_tmp9 = (u16 )0;
23552#line 100
23553 __cil_tmp10 = (void *)0;
23554#line 100
23555 __cil_tmp11 = (u16 )0;
23556#line 100
23557 result = usb_stor_control_msg(us, __cil_tmp5, __cil_tmp6, __cil_tmp7, __cil_tmp8,
23558 __cil_tmp9, __cil_tmp10, __cil_tmp11, 1000);
23559#line 104
23560 printk("<7>usb-storage: Huawei mode set result is %d\n", result);
23561 }
23562#line 105
23563 return (0);
23564}
23565}
23566#line 507 "include/linux/device.h"
23567extern int device_create_file(struct device *device , struct device_attribute *entry ) ;
23568#line 829 "include/scsi/scsi_host.h"
23569extern struct scsi_device *scsi_get_host_dev(struct Scsi_Host * ) ;
23570#line 361 "include/linux/sched.h"
23571extern long schedule_timeout_uninterruptible(long timeout ) ;
23572#line 1443 "include/linux/usb.h"
23573extern int usb_control_msg(struct usb_device *dev , unsigned int pipe , __u8 request ,
23574 __u8 requesttype , __u16 value , __u16 index , void *data ,
23575 __u16 size , int timeout ) ;
23576#line 25 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23577static unsigned int swi_tru_install = 1U;
23578#line 26 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23579static char __param_str_swi_tru_install[16] =
23580#line 26
23581 { (char )'s', (char )'w', (char const )'i', (char const )'_',
23582 (char )'t', (char )'r', (char const )'u', (char const )'_',
23583 (char )'i', (char )'n', (char const )'s', (char const )'t',
23584 (char )'a', (char )'l', (char const )'l', (char const )'\000'};
23585#line 26 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23586static struct kernel_param __param_swi_tru_install __attribute__((__used__,
23587__unused__, __section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_swi_tru_install, (struct kernel_param_ops *)(& param_ops_uint),
23588 (u16 )420, (s16 )0, {(void *)(& swi_tru_install)}};
23589#line 26 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23590static char __mod_swi_tru_installtype26[30] __attribute__((__used__, __unused__,
23591__section__(".modinfo"), __aligned__(1))) =
23592#line 26
23593 { (char )'p', (char )'a', (char const )'r', (char const )'m',
23594 (char )'t', (char )'y', (char const )'p', (char const )'e',
23595 (char )'=', (char )'s', (char const )'w', (char const )'i',
23596 (char )'_', (char )'t', (char const )'r', (char const )'u',
23597 (char )'_', (char )'i', (char const )'n', (char const )'s',
23598 (char )'t', (char )'a', (char const )'l', (char const )'l',
23599 (char )':', (char )'u', (char const )'i', (char const )'n',
23600 (char )'t', (char )'\000'};
23601#line 27 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23602static char __mod_swi_tru_install28[90] __attribute__((__used__, __unused__,
23603__section__(".modinfo"), __aligned__(1))) =
23604#line 27
23605 { (char )'p', (char )'a', (char const )'r', (char const )'m',
23606 (char )'=', (char )'s', (char const )'w', (char const )'i',
23607 (char )'_', (char )'t', (char const )'r', (char const )'u',
23608 (char )'_', (char )'i', (char const )'n', (char const )'s',
23609 (char )'t', (char )'a', (char const )'l', (char const )'l',
23610 (char )':', (char )'T', (char const )'R', (char const )'U',
23611 (char )'-', (char )'I', (char const )'n', (char const )'s',
23612 (char )'t', (char )'a', (char const )'l', (char const )'l',
23613 (char )' ', (char )'m', (char const )'o', (char const )'d',
23614 (char )'e', (char )' ', (char const )'(', (char const )'1',
23615 (char )'=', (char )'F', (char const )'u', (char const )'l',
23616 (char )'l', (char )' ', (char const )'L', (char const )'o',
23617 (char )'g', (char )'i', (char const )'c', (char const )' ',
23618 (char )'(', (char )'d', (char const )'e', (char const )'f',
23619 (char )')', (char )',', (char const )' ', (char const )'2',
23620 (char )'=', (char )'F', (char const )'o', (char const )'r',
23621 (char )'c', (char )'e', (char const )' ', (char const )'C',
23622 (char )'D', (char )'-', (char const )'R', (char const )'o',
23623 (char )'m', (char )',', (char const )' ', (char const )'3',
23624 (char )'=', (char )'F', (char const )'o', (char const )'r',
23625 (char )'c', (char )'e', (char const )' ', (char const )'M',
23626 (char )'o', (char )'d', (char const )'e', (char const )'m',
23627 (char )')', (char )'\000'};
23628#line 38 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23629static bool containsFullLinuxPackage(struct swoc_info *swocInfo )
23630{ unsigned long __cil_tmp2 ;
23631 unsigned long __cil_tmp3 ;
23632 __u16 __cil_tmp4 ;
23633 int __cil_tmp5 ;
23634 unsigned long __cil_tmp6 ;
23635 unsigned long __cil_tmp7 ;
23636 __u16 __cil_tmp8 ;
23637 int __cil_tmp9 ;
23638 unsigned long __cil_tmp10 ;
23639 unsigned long __cil_tmp11 ;
23640 __u16 __cil_tmp12 ;
23641 int __cil_tmp13 ;
23642 unsigned long __cil_tmp14 ;
23643 unsigned long __cil_tmp15 ;
23644 __u16 __cil_tmp16 ;
23645 int __cil_tmp17 ;
23646
23647 {
23648 {
23649#line 40
23650 __cil_tmp2 = (unsigned long )swocInfo;
23651#line 40
23652 __cil_tmp3 = __cil_tmp2 + 9;
23653#line 40
23654 __cil_tmp4 = *((__u16 *)__cil_tmp3);
23655#line 40
23656 __cil_tmp5 = (int )__cil_tmp4;
23657#line 40
23658 if (__cil_tmp5 >= 8448) {
23659 {
23660#line 40
23661 __cil_tmp6 = (unsigned long )swocInfo;
23662#line 40
23663 __cil_tmp7 = __cil_tmp6 + 9;
23664#line 40
23665 __cil_tmp8 = *((__u16 *)__cil_tmp7);
23666#line 40
23667 __cil_tmp9 = (int )__cil_tmp8;
23668#line 40
23669 if (__cil_tmp9 <= 12287) {
23670#line 42
23671 return ((bool )1);
23672 } else {
23673#line 40
23674 goto _L;
23675 }
23676 }
23677 } else {
23678 _L:
23679 {
23680#line 40
23681 __cil_tmp10 = (unsigned long )swocInfo;
23682#line 40
23683 __cil_tmp11 = __cil_tmp10 + 9;
23684#line 40
23685 __cil_tmp12 = *((__u16 *)__cil_tmp11);
23686#line 40
23687 __cil_tmp13 = (int )__cil_tmp12;
23688#line 40
23689 if (__cil_tmp13 >= 28928) {
23690 {
23691#line 40
23692 __cil_tmp14 = (unsigned long )swocInfo;
23693#line 40
23694 __cil_tmp15 = __cil_tmp14 + 9;
23695#line 40
23696 __cil_tmp16 = *((__u16 *)__cil_tmp15);
23697#line 40
23698 __cil_tmp17 = (int )__cil_tmp16;
23699#line 40
23700 if (__cil_tmp17 <= 32767) {
23701#line 42
23702 return ((bool )1);
23703 } else {
23704#line 44
23705 return ((bool )0);
23706 }
23707 }
23708 } else {
23709#line 44
23710 return ((bool )0);
23711 }
23712 }
23713 }
23714 }
23715}
23716}
23717#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23718static int sierra_set_ms_mode(struct usb_device *udev , __u16 eSWocMode )
23719{ int result ;
23720 unsigned int tmp___7 ;
23721 int __cil_tmp5 ;
23722 unsigned int __cil_tmp6 ;
23723 unsigned int __cil_tmp7 ;
23724 __u8 __cil_tmp8 ;
23725 int __cil_tmp9 ;
23726 __u8 __cil_tmp10 ;
23727 __u16 __cil_tmp11 ;
23728 void *__cil_tmp12 ;
23729 __u16 __cil_tmp13 ;
23730
23731 {
23732 {
23733#line 50
23734 printk("<7>usb-storage: SWIMS: %s", "DEVICE MODE SWITCH\n");
23735#line 51
23736 tmp___7 = __create_pipe(udev, 0U);
23737#line 51
23738 __cil_tmp5 = 2 << 30;
23739#line 51
23740 __cil_tmp6 = (unsigned int )__cil_tmp5;
23741#line 51
23742 __cil_tmp7 = __cil_tmp6 | tmp___7;
23743#line 51
23744 __cil_tmp8 = (__u8 )11;
23745#line 51
23746 __cil_tmp9 = 2 << 5;
23747#line 51
23748 __cil_tmp10 = (__u8 )__cil_tmp9;
23749#line 51
23750 __cil_tmp11 = (__u16 )0;
23751#line 51
23752 __cil_tmp12 = (void *)0;
23753#line 51
23754 __cil_tmp13 = (__u16 )0;
23755#line 51
23756 result = usb_control_msg(udev, __cil_tmp7, __cil_tmp8, __cil_tmp10, eSWocMode, __cil_tmp11,
23757 __cil_tmp12, __cil_tmp13, 5000);
23758 }
23759#line 59
23760 return (result);
23761}
23762}
23763#line 63 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23764static int sierra_get_swoc_info(struct usb_device *udev , struct swoc_info *swocInfo )
23765{ int result ;
23766 unsigned int tmp___7 ;
23767 int __cil_tmp5 ;
23768 unsigned int __cil_tmp6 ;
23769 unsigned int __cil_tmp7 ;
23770 unsigned int __cil_tmp8 ;
23771 __u8 __cil_tmp9 ;
23772 int __cil_tmp10 ;
23773 int __cil_tmp11 ;
23774 __u8 __cil_tmp12 ;
23775 __u16 __cil_tmp13 ;
23776 __u16 __cil_tmp14 ;
23777 void *__cil_tmp15 ;
23778 __u16 __cil_tmp16 ;
23779 unsigned long __cil_tmp17 ;
23780 unsigned long __cil_tmp18 ;
23781 unsigned long __cil_tmp19 ;
23782 unsigned long __cil_tmp20 ;
23783 unsigned long __cil_tmp21 ;
23784 unsigned long __cil_tmp22 ;
23785 unsigned long __cil_tmp23 ;
23786 unsigned long __cil_tmp24 ;
23787
23788 {
23789 {
23790#line 68
23791 printk("<7>usb-storage: SWIMS: Attempting to get TRU-Install info.\n");
23792#line 70
23793 tmp___7 = __create_pipe(udev, 0U);
23794#line 70
23795 __cil_tmp5 = 2 << 30;
23796#line 70
23797 __cil_tmp6 = (unsigned int )__cil_tmp5;
23798#line 70
23799 __cil_tmp7 = __cil_tmp6 | tmp___7;
23800#line 70
23801 __cil_tmp8 = __cil_tmp7 | 128U;
23802#line 70
23803 __cil_tmp9 = (__u8 )10;
23804#line 70
23805 __cil_tmp10 = 2 << 5;
23806#line 70
23807 __cil_tmp11 = __cil_tmp10 | 128;
23808#line 70
23809 __cil_tmp12 = (__u8 )__cil_tmp11;
23810#line 70
23811 __cil_tmp13 = (__u16 )0;
23812#line 70
23813 __cil_tmp14 = (__u16 )0;
23814#line 70
23815 __cil_tmp15 = (void *)swocInfo;
23816#line 70
23817 __cil_tmp16 = (__u16 )60UL;
23818#line 70
23819 result = usb_control_msg(udev, __cil_tmp8, __cil_tmp9, __cil_tmp12, __cil_tmp13,
23820 __cil_tmp14, __cil_tmp15, __cil_tmp16, 5000);
23821#line 79
23822 __cil_tmp17 = (unsigned long )swocInfo;
23823#line 79
23824 __cil_tmp18 = __cil_tmp17 + 9;
23825#line 79
23826 __cil_tmp19 = (unsigned long )swocInfo;
23827#line 79
23828 __cil_tmp20 = __cil_tmp19 + 9;
23829#line 79
23830 *((__u16 *)__cil_tmp18) = *((__u16 *)__cil_tmp20);
23831#line 80
23832 __cil_tmp21 = (unsigned long )swocInfo;
23833#line 80
23834 __cil_tmp22 = __cil_tmp21 + 11;
23835#line 80
23836 __cil_tmp23 = (unsigned long )swocInfo;
23837#line 80
23838 __cil_tmp24 = __cil_tmp23 + 11;
23839#line 80
23840 *((__u16 *)__cil_tmp22) = *((__u16 *)__cil_tmp24);
23841 }
23842#line 81
23843 return (result);
23844}
23845}
23846#line 84 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23847static void debug_swoc(struct swoc_info *swocInfo )
23848{ __u8 __cil_tmp2 ;
23849 int __cil_tmp3 ;
23850 unsigned long __cil_tmp4 ;
23851 unsigned long __cil_tmp5 ;
23852 __u16 __cil_tmp6 ;
23853 int __cil_tmp7 ;
23854 unsigned long __cil_tmp8 ;
23855 unsigned long __cil_tmp9 ;
23856 __u16 __cil_tmp10 ;
23857 int __cil_tmp11 ;
23858
23859 {
23860 {
23861#line 86
23862 __cil_tmp2 = *((__u8 *)swocInfo);
23863#line 86
23864 __cil_tmp3 = (int )__cil_tmp2;
23865#line 86
23866 printk("<7>usb-storage: SWIMS: SWoC Rev: %02d \n", __cil_tmp3);
23867#line 87
23868 __cil_tmp4 = (unsigned long )swocInfo;
23869#line 87
23870 __cil_tmp5 = __cil_tmp4 + 9;
23871#line 87
23872 __cil_tmp6 = *((__u16 *)__cil_tmp5);
23873#line 87
23874 __cil_tmp7 = (int )__cil_tmp6;
23875#line 87
23876 printk("<7>usb-storage: SWIMS: Linux SKU: %04X \n", __cil_tmp7);
23877#line 88
23878 __cil_tmp8 = (unsigned long )swocInfo;
23879#line 88
23880 __cil_tmp9 = __cil_tmp8 + 11;
23881#line 88
23882 __cil_tmp10 = *((__u16 *)__cil_tmp9);
23883#line 88
23884 __cil_tmp11 = (int )__cil_tmp10;
23885#line 88
23886 printk("<7>usb-storage: SWIMS: Linux Version: %04X \n", __cil_tmp11);
23887 }
23888#line 89
23889 return;
23890}
23891}
23892#line 92 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
23893static ssize_t show_truinst(struct device *dev , struct device_attribute *attr , char *buf )
23894{ struct swoc_info *swocInfo ;
23895 struct usb_interface *intf ;
23896 struct device *__mptr ;
23897 struct usb_device *udev ;
23898 struct usb_device *tmp___7 ;
23899 int result ;
23900 void *tmp___8 ;
23901 struct usb_interface *__cil_tmp11 ;
23902 unsigned long __cil_tmp12 ;
23903 unsigned long __cil_tmp13 ;
23904 struct device *__cil_tmp14 ;
23905 unsigned int __cil_tmp15 ;
23906 char *__cil_tmp16 ;
23907 char *__cil_tmp17 ;
23908 unsigned int *__cil_tmp18 ;
23909 unsigned int __cil_tmp19 ;
23910 unsigned long __cil_tmp20 ;
23911 unsigned long __cil_tmp21 ;
23912 void *__cil_tmp22 ;
23913 unsigned long __cil_tmp23 ;
23914 unsigned long __cil_tmp24 ;
23915 __u8 __cil_tmp25 ;
23916 int __cil_tmp26 ;
23917 unsigned long __cil_tmp27 ;
23918 unsigned long __cil_tmp28 ;
23919 __u16 __cil_tmp29 ;
23920 int __cil_tmp30 ;
23921 unsigned long __cil_tmp31 ;
23922 unsigned long __cil_tmp32 ;
23923 __u16 __cil_tmp33 ;
23924 int __cil_tmp34 ;
23925 void *__cil_tmp35 ;
23926
23927 {
23928 {
23929#line 96
23930 __mptr = (struct device *)dev;
23931#line 96
23932 __cil_tmp11 = (struct usb_interface *)0;
23933#line 96
23934 __cil_tmp12 = (unsigned long )__cil_tmp11;
23935#line 96
23936 __cil_tmp13 = __cil_tmp12 + 48;
23937#line 96
23938 __cil_tmp14 = (struct device *)__cil_tmp13;
23939#line 96
23940 __cil_tmp15 = (unsigned int )__cil_tmp14;
23941#line 96
23942 __cil_tmp16 = (char *)__mptr;
23943#line 96
23944 __cil_tmp17 = __cil_tmp16 - __cil_tmp15;
23945#line 96
23946 intf = (struct usb_interface *)__cil_tmp17;
23947#line 97
23948 tmp___7 = interface_to_usbdev(intf);
23949#line 97
23950 udev = tmp___7;
23951 }
23952 {
23953#line 99
23954 __cil_tmp18 = & swi_tru_install;
23955#line 99
23956 __cil_tmp19 = *__cil_tmp18;
23957#line 99
23958 if (__cil_tmp19 == 2U) {
23959 {
23960#line 100
23961 __cil_tmp20 = 1UL << 12;
23962#line 100
23963 result = snprintf(buf, __cil_tmp20, "Forced Mass Storage\n");
23964 }
23965 } else {
23966 {
23967#line 102
23968 tmp___8 = kmalloc(60UL, 208U);
23969#line 102
23970 swocInfo = (struct swoc_info *)tmp___8;
23971 }
23972#line 103
23973 if (! swocInfo) {
23974 {
23975#line 104
23976 printk("<7>usb-storage: SWIMS: Allocation failure\n");
23977#line 105
23978 __cil_tmp21 = 1UL << 12;
23979#line 105
23980 snprintf(buf, __cil_tmp21, "Error\n");
23981 }
23982#line 106
23983 return ((ssize_t )-12);
23984 } else {
23985
23986 }
23987 {
23988#line 108
23989 result = sierra_get_swoc_info(udev, swocInfo);
23990 }
23991#line 109
23992 if (result < 0) {
23993 {
23994#line 110
23995 printk("<7>usb-storage: SWIMS: failed SWoC query\n");
23996#line 111
23997 __cil_tmp22 = (void *)swocInfo;
23998#line 111
23999 kfree(__cil_tmp22);
24000#line 112
24001 __cil_tmp23 = 1UL << 12;
24002#line 112
24003 snprintf(buf, __cil_tmp23, "Error\n");
24004 }
24005#line 113
24006 return ((ssize_t )-5);
24007 } else {
24008
24009 }
24010 {
24011#line 115
24012 debug_swoc(swocInfo);
24013#line 116
24014 __cil_tmp24 = 1UL << 12;
24015#line 116
24016 __cil_tmp25 = *((__u8 *)swocInfo);
24017#line 116
24018 __cil_tmp26 = (int )__cil_tmp25;
24019#line 116
24020 __cil_tmp27 = (unsigned long )swocInfo;
24021#line 116
24022 __cil_tmp28 = __cil_tmp27 + 9;
24023#line 116
24024 __cil_tmp29 = *((__u16 *)__cil_tmp28);
24025#line 116
24026 __cil_tmp30 = (int )__cil_tmp29;
24027#line 116
24028 __cil_tmp31 = (unsigned long )swocInfo;
24029#line 116
24030 __cil_tmp32 = __cil_tmp31 + 11;
24031#line 116
24032 __cil_tmp33 = *((__u16 *)__cil_tmp32);
24033#line 116
24034 __cil_tmp34 = (int )__cil_tmp33;
24035#line 116
24036 result = snprintf(buf, __cil_tmp24, "REV=%02d SKU=%04X VER=%04X\n", __cil_tmp26,
24037 __cil_tmp30, __cil_tmp34);
24038#line 121
24039 __cil_tmp35 = (void *)swocInfo;
24040#line 121
24041 kfree(__cil_tmp35);
24042 }
24043 }
24044 }
24045#line 123
24046 return ((ssize_t )result);
24047}
24048}
24049#line 125 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
24050static struct device_attribute dev_attr_truinst = {{"truinst", (umode_t )292}, & show_truinst, (ssize_t (*)(struct device *dev ,
24051 struct device_attribute *attr ,
24052 char *buf , size_t count ))((void *)0)};
24053#line 127 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/sierra_ms.c"
24054int sierra_ms_init(struct us_data *us )
24055{ int result ;
24056 int retries ;
24057 struct swoc_info *swocInfo ;
24058 struct usb_device *udev ;
24059 struct Scsi_Host *sh ;
24060 struct scsi_device *sd ;
24061 void *tmp___7 ;
24062 bool tmp___8 ;
24063 unsigned long __cil_tmp10 ;
24064 unsigned long __cil_tmp11 ;
24065 unsigned int *__cil_tmp12 ;
24066 unsigned int __cil_tmp13 ;
24067 __u16 __cil_tmp14 ;
24068 unsigned int *__cil_tmp15 ;
24069 unsigned int __cil_tmp16 ;
24070 void *__cil_tmp17 ;
24071 __u16 __cil_tmp18 ;
24072 void *__cil_tmp19 ;
24073 void *__cil_tmp20 ;
24074 unsigned long __cil_tmp21 ;
24075 unsigned long __cil_tmp22 ;
24076 struct usb_interface *__cil_tmp23 ;
24077 unsigned long __cil_tmp24 ;
24078 unsigned long __cil_tmp25 ;
24079 struct device *__cil_tmp26 ;
24080 struct device_attribute *__cil_tmp27 ;
24081
24082 {
24083 {
24084#line 135
24085 retries = 3;
24086#line 136
24087 result = 0;
24088#line 137
24089 __cil_tmp10 = (unsigned long )us;
24090#line 137
24091 __cil_tmp11 = __cil_tmp10 + 72;
24092#line 137
24093 udev = *((struct usb_device **)__cil_tmp11);
24094#line 139
24095 sh = us_to_host(us);
24096#line 140
24097 sd = scsi_get_host_dev(sh);
24098#line 142
24099 printk("<7>usb-storage: SWIMS: sierra_ms_init called\n");
24100 }
24101 {
24102#line 145
24103 __cil_tmp12 = & swi_tru_install;
24104#line 145
24105 __cil_tmp13 = *__cil_tmp12;
24106#line 145
24107 if (__cil_tmp13 == 3U) {
24108 {
24109#line 146
24110 printk("<7>usb-storage: SWIMS: %s", "Forcing Modem Mode\n");
24111#line 147
24112 __cil_tmp14 = (__u16 )1;
24113#line 147
24114 result = sierra_set_ms_mode(udev, __cil_tmp14);
24115 }
24116#line 148
24117 if (result < 0) {
24118 {
24119#line 149
24120 printk("<7>usb-storage: SWIMS: Failed to switch to modem mode.\n");
24121 }
24122 } else {
24123
24124 }
24125#line 150
24126 return (-5);
24127 } else {
24128 {
24129#line 153
24130 __cil_tmp15 = & swi_tru_install;
24131#line 153
24132 __cil_tmp16 = *__cil_tmp15;
24133#line 153
24134 if (__cil_tmp16 == 2U) {
24135 {
24136#line 154
24137 printk("<7>usb-storage: SWIMS: %s", "Forcing Mass Storage Mode\n");
24138 }
24139#line 155
24140 goto complete;
24141 } else {
24142 {
24143#line 159
24144 printk("<7>usb-storage: SWIMS: %s", "Normal SWoC Logic\n");
24145#line 161
24146 tmp___7 = kmalloc(60UL, 208U);
24147#line 161
24148 swocInfo = (struct swoc_info *)tmp___7;
24149 }
24150#line 163
24151 if (! swocInfo) {
24152 {
24153#line 164
24154 printk("<7>usb-storage: SWIMS: %s", "Allocation failure\n");
24155 }
24156#line 165
24157 return (-12);
24158 } else {
24159
24160 }
24161#line 168
24162 retries = 3;
24163 {
24164#line 169
24165 while (1) {
24166 while_continue: ;
24167 {
24168#line 170
24169 retries = retries - 1;
24170#line 171
24171 result = sierra_get_swoc_info(udev, swocInfo);
24172 }
24173#line 172
24174 if (result < 0) {
24175 {
24176#line 173
24177 printk("<7>usb-storage: SWIMS: %s", "Failed SWoC query\n");
24178#line 174
24179 schedule_timeout_uninterruptible(500L);
24180 }
24181 } else {
24182
24183 }
24184#line 169
24185 if (retries) {
24186#line 169
24187 if (result < 0) {
24188
24189 } else {
24190#line 169
24191 goto while_break;
24192 }
24193 } else {
24194#line 169
24195 goto while_break;
24196 }
24197 }
24198 while_break: ;
24199 }
24200#line 178
24201 if (result < 0) {
24202 {
24203#line 179
24204 printk("<7>usb-storage: SWIMS: %s", "Completely failed SWoC query\n");
24205#line 181
24206 __cil_tmp17 = (void *)swocInfo;
24207#line 181
24208 kfree(__cil_tmp17);
24209 }
24210#line 182
24211 return (-5);
24212 } else {
24213
24214 }
24215 {
24216#line 185
24217 debug_swoc(swocInfo);
24218#line 190
24219 tmp___8 = containsFullLinuxPackage(swocInfo);
24220 }
24221#line 190
24222 if (tmp___8) {
24223
24224 } else {
24225 {
24226#line 191
24227 printk("<7>usb-storage: SWIMS: %s", "Switching to Modem Mode\n");
24228#line 193
24229 __cil_tmp18 = (__u16 )1;
24230#line 193
24231 result = sierra_set_ms_mode(udev, __cil_tmp18);
24232 }
24233#line 195
24234 if (result < 0) {
24235 {
24236#line 196
24237 printk("<7>usb-storage: SWIMS: Failed to switch modem\n");
24238 }
24239 } else {
24240
24241 }
24242 {
24243#line 197
24244 __cil_tmp19 = (void *)swocInfo;
24245#line 197
24246 kfree(__cil_tmp19);
24247 }
24248#line 198
24249 return (-5);
24250 }
24251 {
24252#line 200
24253 __cil_tmp20 = (void *)swocInfo;
24254#line 200
24255 kfree(__cil_tmp20);
24256 }
24257 }
24258 }
24259 }
24260 }
24261 complete:
24262 {
24263#line 203
24264 __cil_tmp21 = (unsigned long )us;
24265#line 203
24266 __cil_tmp22 = __cil_tmp21 + 80;
24267#line 203
24268 __cil_tmp23 = *((struct usb_interface **)__cil_tmp22);
24269#line 203
24270 __cil_tmp24 = (unsigned long )__cil_tmp23;
24271#line 203
24272 __cil_tmp25 = __cil_tmp24 + 48;
24273#line 203
24274 __cil_tmp26 = (struct device *)__cil_tmp25;
24275#line 203
24276 __cil_tmp27 = (struct device_attribute *)(& dev_attr_truinst);
24277#line 203
24278 result = device_create_file(__cil_tmp26, __cil_tmp27);
24279 }
24280#line 205
24281 return (0);
24282}
24283}
24284#line 60 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
24285extern int memcmp(void *cs , void *ct , unsigned long count ) ;
24286#line 349 "include/linux/slab.h"
24287__inline static void *kzalloc(size_t size , gfp_t flags ) __attribute__((__no_instrument_function__)) ;
24288#line 349 "include/linux/slab.h"
24289__inline static void *kzalloc(size_t size , gfp_t flags )
24290{ void *tmp___7 ;
24291 unsigned int __cil_tmp4 ;
24292
24293 {
24294 {
24295#line 351
24296 __cil_tmp4 = flags | 32768U;
24297#line 351
24298 tmp___7 = kmalloc(size, __cil_tmp4);
24299 }
24300#line 351
24301 return (tmp___7);
24302}
24303}
24304#line 35 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
24305static unsigned int option_zero_cd = 1U;
24306#line 36 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
24307static char __param_str_option_zero_cd[15] =
24308#line 36
24309 { (char )'o', (char )'p', (char const )'t', (char const )'i',
24310 (char )'o', (char )'n', (char const )'_', (char const )'z',
24311 (char )'e', (char )'r', (char const )'o', (char const )'_',
24312 (char )'c', (char )'d', (char const )'\000'};
24313#line 36 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
24314static struct kernel_param __param_option_zero_cd __attribute__((__used__,
24315__unused__, __section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_option_zero_cd, (struct kernel_param_ops *)(& param_ops_uint),
24316 (u16 )420, (s16 )0, {(void *)(& option_zero_cd)}};
24317#line 36 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
24318static char __mod_option_zero_cdtype36[29] __attribute__((__used__, __unused__,
24319__section__(".modinfo"), __aligned__(1))) =
24320#line 36
24321 { (char )'p', (char )'a', (char const )'r', (char const )'m',
24322 (char )'t', (char )'y', (char const )'p', (char const )'e',
24323 (char )'=', (char )'o', (char const )'p', (char const )'t',
24324 (char )'i', (char )'o', (char const )'n', (char const )'_',
24325 (char )'z', (char )'e', (char const )'r', (char const )'o',
24326 (char )'_', (char )'c', (char const )'d', (char const )':',
24327 (char )'u', (char )'i', (char const )'n', (char const )'t',
24328 (char )'\000'};
24329#line 37 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
24330static char __mod_option_zero_cd38[73] __attribute__((__used__, __unused__,
24331__section__(".modinfo"), __aligned__(1))) =
24332#line 37
24333 { (char )'p', (char )'a', (char const )'r', (char const )'m',
24334 (char )'=', (char )'o', (char const )'p', (char const )'t',
24335 (char )'i', (char )'o', (char const )'n', (char const )'_',
24336 (char )'z', (char )'e', (char const )'r', (char const )'o',
24337 (char )'_', (char )'c', (char const )'d', (char const )':',
24338 (char )'Z', (char )'e', (char const )'r', (char const )'o',
24339 (char )'C', (char )'D', (char const )' ', (char const )'m',
24340 (char )'o', (char )'d', (char const )'e', (char const )' ',
24341 (char )'(', (char )'1', (char const )'=', (char const )'F',
24342 (char )'o', (char )'r', (char const )'c', (char const )'e',
24343 (char )' ', (char )'M', (char const )'o', (char const )'d',
24344 (char )'e', (char )'m', (char const )' ', (char const )'(',
24345 (char )'d', (char )'e', (char const )'f', (char const )'a',
24346 (char )'u', (char )'l', (char const )'t', (char const )')',
24347 (char )',', (char )' ', (char const )'2', (char const )'=',
24348 (char )'A', (char )'l', (char const )'l', (char const )'o',
24349 (char )'w', (char )' ', (char const )'C', (char const )'D',
24350 (char )'-', (char )'R', (char const )'o', (char const )'m',
24351 (char )'\000'};
24352#line 42 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
24353static int option_rezero(struct us_data *us )
24354{ unsigned char rezero_msg[31] ;
24355 char *buffer ;
24356 int result ;
24357 void *tmp___7 ;
24358 size_t __len ;
24359 void *__ret ;
24360 unsigned long __cil_tmp8 ;
24361 unsigned long __cil_tmp9 ;
24362 unsigned long __cil_tmp10 ;
24363 unsigned long __cil_tmp11 ;
24364 unsigned long __cil_tmp12 ;
24365 unsigned long __cil_tmp13 ;
24366 unsigned long __cil_tmp14 ;
24367 unsigned long __cil_tmp15 ;
24368 unsigned long __cil_tmp16 ;
24369 unsigned long __cil_tmp17 ;
24370 unsigned long __cil_tmp18 ;
24371 unsigned long __cil_tmp19 ;
24372 unsigned long __cil_tmp20 ;
24373 unsigned long __cil_tmp21 ;
24374 unsigned long __cil_tmp22 ;
24375 unsigned long __cil_tmp23 ;
24376 unsigned long __cil_tmp24 ;
24377 unsigned long __cil_tmp25 ;
24378 unsigned long __cil_tmp26 ;
24379 unsigned long __cil_tmp27 ;
24380 unsigned long __cil_tmp28 ;
24381 unsigned long __cil_tmp29 ;
24382 unsigned long __cil_tmp30 ;
24383 unsigned long __cil_tmp31 ;
24384 unsigned long __cil_tmp32 ;
24385 unsigned long __cil_tmp33 ;
24386 unsigned long __cil_tmp34 ;
24387 unsigned long __cil_tmp35 ;
24388 unsigned long __cil_tmp36 ;
24389 unsigned long __cil_tmp37 ;
24390 unsigned long __cil_tmp38 ;
24391 unsigned long __cil_tmp39 ;
24392 unsigned long __cil_tmp40 ;
24393 unsigned long __cil_tmp41 ;
24394 unsigned long __cil_tmp42 ;
24395 unsigned long __cil_tmp43 ;
24396 unsigned long __cil_tmp44 ;
24397 unsigned long __cil_tmp45 ;
24398 unsigned long __cil_tmp46 ;
24399 unsigned long __cil_tmp47 ;
24400 unsigned long __cil_tmp48 ;
24401 unsigned long __cil_tmp49 ;
24402 unsigned long __cil_tmp50 ;
24403 unsigned long __cil_tmp51 ;
24404 unsigned long __cil_tmp52 ;
24405 unsigned long __cil_tmp53 ;
24406 unsigned long __cil_tmp54 ;
24407 unsigned long __cil_tmp55 ;
24408 unsigned long __cil_tmp56 ;
24409 unsigned long __cil_tmp57 ;
24410 unsigned long __cil_tmp58 ;
24411 unsigned long __cil_tmp59 ;
24412 unsigned long __cil_tmp60 ;
24413 unsigned long __cil_tmp61 ;
24414 unsigned long __cil_tmp62 ;
24415 unsigned long __cil_tmp63 ;
24416 unsigned long __cil_tmp64 ;
24417 unsigned long __cil_tmp65 ;
24418 unsigned long __cil_tmp66 ;
24419 unsigned long __cil_tmp67 ;
24420 unsigned long __cil_tmp68 ;
24421 unsigned long __cil_tmp69 ;
24422 size_t __cil_tmp70 ;
24423 void *__cil_tmp71 ;
24424 unsigned long __cil_tmp72 ;
24425 unsigned long __cil_tmp73 ;
24426 void *__cil_tmp74 ;
24427 unsigned long __cil_tmp75 ;
24428 unsigned long __cil_tmp76 ;
24429 unsigned char *__cil_tmp77 ;
24430 void *__cil_tmp78 ;
24431 void *__cil_tmp79 ;
24432 unsigned long __cil_tmp80 ;
24433 unsigned long __cil_tmp81 ;
24434 unsigned char *__cil_tmp82 ;
24435 void *__cil_tmp83 ;
24436 unsigned long __cil_tmp84 ;
24437 unsigned long __cil_tmp85 ;
24438 unsigned int __cil_tmp86 ;
24439 void *__cil_tmp87 ;
24440 unsigned int __cil_tmp88 ;
24441 void *__cil_tmp89 ;
24442 unsigned int *__cil_tmp90 ;
24443 unsigned long __cil_tmp91 ;
24444 unsigned long __cil_tmp92 ;
24445 unsigned int __cil_tmp93 ;
24446 void *__cil_tmp94 ;
24447 void *__cil_tmp95 ;
24448 unsigned int *__cil_tmp96 ;
24449 unsigned long __cil_tmp97 ;
24450 unsigned long __cil_tmp98 ;
24451 unsigned int __cil_tmp99 ;
24452 void *__cil_tmp100 ;
24453 void *__cil_tmp101 ;
24454 unsigned int *__cil_tmp102 ;
24455 void *__cil_tmp103 ;
24456
24457 {
24458 {
24459#line 44
24460 __cil_tmp8 = 0 * 1UL;
24461#line 44
24462 __cil_tmp9 = (unsigned long )(rezero_msg) + __cil_tmp8;
24463#line 44
24464 *((unsigned char *)__cil_tmp9) = (unsigned char)85;
24465#line 44
24466 __cil_tmp10 = 1 * 1UL;
24467#line 44
24468 __cil_tmp11 = (unsigned long )(rezero_msg) + __cil_tmp10;
24469#line 44
24470 *((unsigned char *)__cil_tmp11) = (unsigned char)83;
24471#line 44
24472 __cil_tmp12 = 2 * 1UL;
24473#line 44
24474 __cil_tmp13 = (unsigned long )(rezero_msg) + __cil_tmp12;
24475#line 44
24476 *((unsigned char *)__cil_tmp13) = (unsigned char)66;
24477#line 44
24478 __cil_tmp14 = 3 * 1UL;
24479#line 44
24480 __cil_tmp15 = (unsigned long )(rezero_msg) + __cil_tmp14;
24481#line 44
24482 *((unsigned char *)__cil_tmp15) = (unsigned char)67;
24483#line 44
24484 __cil_tmp16 = 4 * 1UL;
24485#line 44
24486 __cil_tmp17 = (unsigned long )(rezero_msg) + __cil_tmp16;
24487#line 44
24488 *((unsigned char *)__cil_tmp17) = (unsigned char)120;
24489#line 44
24490 __cil_tmp18 = 5 * 1UL;
24491#line 44
24492 __cil_tmp19 = (unsigned long )(rezero_msg) + __cil_tmp18;
24493#line 44
24494 *((unsigned char *)__cil_tmp19) = (unsigned char)86;
24495#line 44
24496 __cil_tmp20 = 6 * 1UL;
24497#line 44
24498 __cil_tmp21 = (unsigned long )(rezero_msg) + __cil_tmp20;
24499#line 44
24500 *((unsigned char *)__cil_tmp21) = (unsigned char)52;
24501#line 44
24502 __cil_tmp22 = 7 * 1UL;
24503#line 44
24504 __cil_tmp23 = (unsigned long )(rezero_msg) + __cil_tmp22;
24505#line 44
24506 *((unsigned char *)__cil_tmp23) = (unsigned char)18;
24507#line 44
24508 __cil_tmp24 = 8 * 1UL;
24509#line 44
24510 __cil_tmp25 = (unsigned long )(rezero_msg) + __cil_tmp24;
24511#line 44
24512 *((unsigned char *)__cil_tmp25) = (unsigned char)1;
24513#line 44
24514 __cil_tmp26 = 9 * 1UL;
24515#line 44
24516 __cil_tmp27 = (unsigned long )(rezero_msg) + __cil_tmp26;
24517#line 44
24518 *((unsigned char *)__cil_tmp27) = (unsigned char)0;
24519#line 44
24520 __cil_tmp28 = 10 * 1UL;
24521#line 44
24522 __cil_tmp29 = (unsigned long )(rezero_msg) + __cil_tmp28;
24523#line 44
24524 *((unsigned char *)__cil_tmp29) = (unsigned char)0;
24525#line 44
24526 __cil_tmp30 = 11 * 1UL;
24527#line 44
24528 __cil_tmp31 = (unsigned long )(rezero_msg) + __cil_tmp30;
24529#line 44
24530 *((unsigned char *)__cil_tmp31) = (unsigned char)0;
24531#line 44
24532 __cil_tmp32 = 12 * 1UL;
24533#line 44
24534 __cil_tmp33 = (unsigned long )(rezero_msg) + __cil_tmp32;
24535#line 44
24536 *((unsigned char *)__cil_tmp33) = (unsigned char)128;
24537#line 44
24538 __cil_tmp34 = 13 * 1UL;
24539#line 44
24540 __cil_tmp35 = (unsigned long )(rezero_msg) + __cil_tmp34;
24541#line 44
24542 *((unsigned char *)__cil_tmp35) = (unsigned char)0;
24543#line 44
24544 __cil_tmp36 = 14 * 1UL;
24545#line 44
24546 __cil_tmp37 = (unsigned long )(rezero_msg) + __cil_tmp36;
24547#line 44
24548 *((unsigned char *)__cil_tmp37) = (unsigned char)6;
24549#line 44
24550 __cil_tmp38 = 15 * 1UL;
24551#line 44
24552 __cil_tmp39 = (unsigned long )(rezero_msg) + __cil_tmp38;
24553#line 44
24554 *((unsigned char *)__cil_tmp39) = (unsigned char)1;
24555#line 44
24556 __cil_tmp40 = 16 * 1UL;
24557#line 44
24558 __cil_tmp41 = (unsigned long )(rezero_msg) + __cil_tmp40;
24559#line 44
24560 *((unsigned char *)__cil_tmp41) = (unsigned char)0;
24561#line 44
24562 __cil_tmp42 = 17 * 1UL;
24563#line 44
24564 __cil_tmp43 = (unsigned long )(rezero_msg) + __cil_tmp42;
24565#line 44
24566 *((unsigned char *)__cil_tmp43) = (unsigned char)0;
24567#line 44
24568 __cil_tmp44 = 18 * 1UL;
24569#line 44
24570 __cil_tmp45 = (unsigned long )(rezero_msg) + __cil_tmp44;
24571#line 44
24572 *((unsigned char *)__cil_tmp45) = (unsigned char)0;
24573#line 44
24574 __cil_tmp46 = 19 * 1UL;
24575#line 44
24576 __cil_tmp47 = (unsigned long )(rezero_msg) + __cil_tmp46;
24577#line 44
24578 *((unsigned char *)__cil_tmp47) = (unsigned char)0;
24579#line 44
24580 __cil_tmp48 = 20 * 1UL;
24581#line 44
24582 __cil_tmp49 = (unsigned long )(rezero_msg) + __cil_tmp48;
24583#line 44
24584 *((unsigned char *)__cil_tmp49) = (unsigned char)0;
24585#line 44
24586 __cil_tmp50 = 21 * 1UL;
24587#line 44
24588 __cil_tmp51 = (unsigned long )(rezero_msg) + __cil_tmp50;
24589#line 44
24590 *((unsigned char *)__cil_tmp51) = (unsigned char)0;
24591#line 44
24592 __cil_tmp52 = 22 * 1UL;
24593#line 44
24594 __cil_tmp53 = (unsigned long )(rezero_msg) + __cil_tmp52;
24595#line 44
24596 *((unsigned char *)__cil_tmp53) = (unsigned char)0;
24597#line 44
24598 __cil_tmp54 = 23 * 1UL;
24599#line 44
24600 __cil_tmp55 = (unsigned long )(rezero_msg) + __cil_tmp54;
24601#line 44
24602 *((unsigned char *)__cil_tmp55) = (unsigned char)0;
24603#line 44
24604 __cil_tmp56 = 24 * 1UL;
24605#line 44
24606 __cil_tmp57 = (unsigned long )(rezero_msg) + __cil_tmp56;
24607#line 44
24608 *((unsigned char *)__cil_tmp57) = (unsigned char)0;
24609#line 44
24610 __cil_tmp58 = 25 * 1UL;
24611#line 44
24612 __cil_tmp59 = (unsigned long )(rezero_msg) + __cil_tmp58;
24613#line 44
24614 *((unsigned char *)__cil_tmp59) = (unsigned char)0;
24615#line 44
24616 __cil_tmp60 = 26 * 1UL;
24617#line 44
24618 __cil_tmp61 = (unsigned long )(rezero_msg) + __cil_tmp60;
24619#line 44
24620 *((unsigned char *)__cil_tmp61) = (unsigned char)0;
24621#line 44
24622 __cil_tmp62 = 27 * 1UL;
24623#line 44
24624 __cil_tmp63 = (unsigned long )(rezero_msg) + __cil_tmp62;
24625#line 44
24626 *((unsigned char *)__cil_tmp63) = (unsigned char)0;
24627#line 44
24628 __cil_tmp64 = 28 * 1UL;
24629#line 44
24630 __cil_tmp65 = (unsigned long )(rezero_msg) + __cil_tmp64;
24631#line 44
24632 *((unsigned char *)__cil_tmp65) = (unsigned char)0;
24633#line 44
24634 __cil_tmp66 = 29 * 1UL;
24635#line 44
24636 __cil_tmp67 = (unsigned long )(rezero_msg) + __cil_tmp66;
24637#line 44
24638 *((unsigned char *)__cil_tmp67) = (unsigned char)0;
24639#line 44
24640 __cil_tmp68 = 30 * 1UL;
24641#line 44
24642 __cil_tmp69 = (unsigned long )(rezero_msg) + __cil_tmp68;
24643#line 44
24644 *((unsigned char *)__cil_tmp69) = (unsigned char)0;
24645#line 53
24646 printk("<7>usb-storage: Option MS: %s", "DEVICE MODE SWITCH\n");
24647#line 55
24648 __cil_tmp70 = (size_t )1024;
24649#line 55
24650 tmp___7 = kzalloc(__cil_tmp70, 208U);
24651#line 55
24652 buffer = (char *)tmp___7;
24653 }
24654 {
24655#line 56
24656 __cil_tmp71 = (void *)0;
24657#line 56
24658 __cil_tmp72 = (unsigned long )__cil_tmp71;
24659#line 56
24660 __cil_tmp73 = (unsigned long )buffer;
24661#line 56
24662 if (__cil_tmp73 == __cil_tmp72) {
24663#line 57
24664 return (3);
24665 } else {
24666
24667 }
24668 }
24669#line 59
24670 __len = 31UL;
24671#line 59
24672 if (__len >= 64UL) {
24673 {
24674#line 59
24675 __cil_tmp74 = (void *)buffer;
24676#line 59
24677 __cil_tmp75 = 0 * 1UL;
24678#line 59
24679 __cil_tmp76 = (unsigned long )(rezero_msg) + __cil_tmp75;
24680#line 59
24681 __cil_tmp77 = (unsigned char *)__cil_tmp76;
24682#line 59
24683 __cil_tmp78 = (void *)__cil_tmp77;
24684#line 59
24685 __ret = __memcpy(__cil_tmp74, __cil_tmp78, __len);
24686 }
24687 } else {
24688 {
24689#line 59
24690 __cil_tmp79 = (void *)buffer;
24691#line 59
24692 __cil_tmp80 = 0 * 1UL;
24693#line 59
24694 __cil_tmp81 = (unsigned long )(rezero_msg) + __cil_tmp80;
24695#line 59
24696 __cil_tmp82 = (unsigned char *)__cil_tmp81;
24697#line 59
24698 __cil_tmp83 = (void *)__cil_tmp82;
24699#line 59
24700 __ret = __builtin_memcpy(__cil_tmp79, __cil_tmp83, __len);
24701 }
24702 }
24703 {
24704#line 60
24705 __cil_tmp84 = (unsigned long )us;
24706#line 60
24707 __cil_tmp85 = __cil_tmp84 + 112;
24708#line 60
24709 __cil_tmp86 = *((unsigned int *)__cil_tmp85);
24710#line 60
24711 __cil_tmp87 = (void *)buffer;
24712#line 60
24713 __cil_tmp88 = (unsigned int )31UL;
24714#line 60
24715 __cil_tmp89 = (void *)0;
24716#line 60
24717 __cil_tmp90 = (unsigned int *)__cil_tmp89;
24718#line 60
24719 result = usb_stor_bulk_transfer_buf(us, __cil_tmp86, __cil_tmp87, __cil_tmp88, __cil_tmp90);
24720 }
24721#line 63
24722 if (result != 0) {
24723#line 64
24724 result = 4;
24725#line 65
24726 goto out;
24727 } else {
24728
24729 }
24730 {
24731#line 71
24732 __cil_tmp91 = (unsigned long )us;
24733#line 71
24734 __cil_tmp92 = __cil_tmp91 + 116;
24735#line 71
24736 __cil_tmp93 = *((unsigned int *)__cil_tmp92);
24737#line 71
24738 __cil_tmp94 = (void *)buffer;
24739#line 71
24740 __cil_tmp95 = (void *)0;
24741#line 71
24742 __cil_tmp96 = (unsigned int *)__cil_tmp95;
24743#line 71
24744 usb_stor_bulk_transfer_buf(us, __cil_tmp93, __cil_tmp94, 1024U, __cil_tmp96);
24745#line 76
24746 __cil_tmp97 = (unsigned long )us;
24747#line 76
24748 __cil_tmp98 = __cil_tmp97 + 116;
24749#line 76
24750 __cil_tmp99 = *((unsigned int *)__cil_tmp98);
24751#line 76
24752 __cil_tmp100 = (void *)buffer;
24753#line 76
24754 __cil_tmp101 = (void *)0;
24755#line 76
24756 __cil_tmp102 = (unsigned int *)__cil_tmp101;
24757#line 76
24758 usb_stor_bulk_transfer_buf(us, __cil_tmp99, __cil_tmp100, 13U, __cil_tmp102);
24759#line 80
24760 result = 0;
24761 }
24762 out:
24763 {
24764#line 83
24765 __cil_tmp103 = (void *)buffer;
24766#line 83
24767 kfree(__cil_tmp103);
24768 }
24769#line 84
24770 return (result);
24771}
24772}
24773#line 87 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
24774static int option_inquiry(struct us_data *us )
24775{ unsigned char inquiry_msg[31] ;
24776 char *buffer ;
24777 int result ;
24778 void *tmp___7 ;
24779 size_t __len ;
24780 void *__ret ;
24781 unsigned long __cil_tmp8 ;
24782 unsigned long __cil_tmp9 ;
24783 unsigned long __cil_tmp10 ;
24784 unsigned long __cil_tmp11 ;
24785 unsigned long __cil_tmp12 ;
24786 unsigned long __cil_tmp13 ;
24787 unsigned long __cil_tmp14 ;
24788 unsigned long __cil_tmp15 ;
24789 unsigned long __cil_tmp16 ;
24790 unsigned long __cil_tmp17 ;
24791 unsigned long __cil_tmp18 ;
24792 unsigned long __cil_tmp19 ;
24793 unsigned long __cil_tmp20 ;
24794 unsigned long __cil_tmp21 ;
24795 unsigned long __cil_tmp22 ;
24796 unsigned long __cil_tmp23 ;
24797 unsigned long __cil_tmp24 ;
24798 unsigned long __cil_tmp25 ;
24799 unsigned long __cil_tmp26 ;
24800 unsigned long __cil_tmp27 ;
24801 unsigned long __cil_tmp28 ;
24802 unsigned long __cil_tmp29 ;
24803 unsigned long __cil_tmp30 ;
24804 unsigned long __cil_tmp31 ;
24805 unsigned long __cil_tmp32 ;
24806 unsigned long __cil_tmp33 ;
24807 unsigned long __cil_tmp34 ;
24808 unsigned long __cil_tmp35 ;
24809 unsigned long __cil_tmp36 ;
24810 unsigned long __cil_tmp37 ;
24811 unsigned long __cil_tmp38 ;
24812 unsigned long __cil_tmp39 ;
24813 unsigned long __cil_tmp40 ;
24814 unsigned long __cil_tmp41 ;
24815 unsigned long __cil_tmp42 ;
24816 unsigned long __cil_tmp43 ;
24817 unsigned long __cil_tmp44 ;
24818 unsigned long __cil_tmp45 ;
24819 unsigned long __cil_tmp46 ;
24820 unsigned long __cil_tmp47 ;
24821 unsigned long __cil_tmp48 ;
24822 unsigned long __cil_tmp49 ;
24823 unsigned long __cil_tmp50 ;
24824 unsigned long __cil_tmp51 ;
24825 unsigned long __cil_tmp52 ;
24826 unsigned long __cil_tmp53 ;
24827 unsigned long __cil_tmp54 ;
24828 unsigned long __cil_tmp55 ;
24829 unsigned long __cil_tmp56 ;
24830 unsigned long __cil_tmp57 ;
24831 unsigned long __cil_tmp58 ;
24832 unsigned long __cil_tmp59 ;
24833 unsigned long __cil_tmp60 ;
24834 unsigned long __cil_tmp61 ;
24835 unsigned long __cil_tmp62 ;
24836 unsigned long __cil_tmp63 ;
24837 unsigned long __cil_tmp64 ;
24838 unsigned long __cil_tmp65 ;
24839 unsigned long __cil_tmp66 ;
24840 unsigned long __cil_tmp67 ;
24841 unsigned long __cil_tmp68 ;
24842 unsigned long __cil_tmp69 ;
24843 size_t __cil_tmp70 ;
24844 void *__cil_tmp71 ;
24845 unsigned long __cil_tmp72 ;
24846 unsigned long __cil_tmp73 ;
24847 void *__cil_tmp74 ;
24848 unsigned long __cil_tmp75 ;
24849 unsigned long __cil_tmp76 ;
24850 unsigned char *__cil_tmp77 ;
24851 void *__cil_tmp78 ;
24852 void *__cil_tmp79 ;
24853 unsigned long __cil_tmp80 ;
24854 unsigned long __cil_tmp81 ;
24855 unsigned char *__cil_tmp82 ;
24856 void *__cil_tmp83 ;
24857 unsigned long __cil_tmp84 ;
24858 unsigned long __cil_tmp85 ;
24859 unsigned int __cil_tmp86 ;
24860 void *__cil_tmp87 ;
24861 unsigned int __cil_tmp88 ;
24862 void *__cil_tmp89 ;
24863 unsigned int *__cil_tmp90 ;
24864 unsigned long __cil_tmp91 ;
24865 unsigned long __cil_tmp92 ;
24866 unsigned int __cil_tmp93 ;
24867 void *__cil_tmp94 ;
24868 void *__cil_tmp95 ;
24869 unsigned int *__cil_tmp96 ;
24870 char *__cil_tmp97 ;
24871 void *__cil_tmp98 ;
24872 void *__cil_tmp99 ;
24873 char *__cil_tmp100 ;
24874 void *__cil_tmp101 ;
24875 void *__cil_tmp102 ;
24876 unsigned long __cil_tmp103 ;
24877 unsigned long __cil_tmp104 ;
24878 unsigned int __cil_tmp105 ;
24879 void *__cil_tmp106 ;
24880 void *__cil_tmp107 ;
24881 unsigned int *__cil_tmp108 ;
24882 void *__cil_tmp109 ;
24883
24884 {
24885 {
24886#line 89
24887 __cil_tmp8 = 0 * 1UL;
24888#line 89
24889 __cil_tmp9 = (unsigned long )(inquiry_msg) + __cil_tmp8;
24890#line 89
24891 *((unsigned char *)__cil_tmp9) = (unsigned char)85;
24892#line 89
24893 __cil_tmp10 = 1 * 1UL;
24894#line 89
24895 __cil_tmp11 = (unsigned long )(inquiry_msg) + __cil_tmp10;
24896#line 89
24897 *((unsigned char *)__cil_tmp11) = (unsigned char)83;
24898#line 89
24899 __cil_tmp12 = 2 * 1UL;
24900#line 89
24901 __cil_tmp13 = (unsigned long )(inquiry_msg) + __cil_tmp12;
24902#line 89
24903 *((unsigned char *)__cil_tmp13) = (unsigned char)66;
24904#line 89
24905 __cil_tmp14 = 3 * 1UL;
24906#line 89
24907 __cil_tmp15 = (unsigned long )(inquiry_msg) + __cil_tmp14;
24908#line 89
24909 *((unsigned char *)__cil_tmp15) = (unsigned char)67;
24910#line 89
24911 __cil_tmp16 = 4 * 1UL;
24912#line 89
24913 __cil_tmp17 = (unsigned long )(inquiry_msg) + __cil_tmp16;
24914#line 89
24915 *((unsigned char *)__cil_tmp17) = (unsigned char)18;
24916#line 89
24917 __cil_tmp18 = 5 * 1UL;
24918#line 89
24919 __cil_tmp19 = (unsigned long )(inquiry_msg) + __cil_tmp18;
24920#line 89
24921 *((unsigned char *)__cil_tmp19) = (unsigned char)52;
24922#line 89
24923 __cil_tmp20 = 6 * 1UL;
24924#line 89
24925 __cil_tmp21 = (unsigned long )(inquiry_msg) + __cil_tmp20;
24926#line 89
24927 *((unsigned char *)__cil_tmp21) = (unsigned char)86;
24928#line 89
24929 __cil_tmp22 = 7 * 1UL;
24930#line 89
24931 __cil_tmp23 = (unsigned long )(inquiry_msg) + __cil_tmp22;
24932#line 89
24933 *((unsigned char *)__cil_tmp23) = (unsigned char)120;
24934#line 89
24935 __cil_tmp24 = 8 * 1UL;
24936#line 89
24937 __cil_tmp25 = (unsigned long )(inquiry_msg) + __cil_tmp24;
24938#line 89
24939 *((unsigned char *)__cil_tmp25) = (unsigned char)36;
24940#line 89
24941 __cil_tmp26 = 9 * 1UL;
24942#line 89
24943 __cil_tmp27 = (unsigned long )(inquiry_msg) + __cil_tmp26;
24944#line 89
24945 *((unsigned char *)__cil_tmp27) = (unsigned char)0;
24946#line 89
24947 __cil_tmp28 = 10 * 1UL;
24948#line 89
24949 __cil_tmp29 = (unsigned long )(inquiry_msg) + __cil_tmp28;
24950#line 89
24951 *((unsigned char *)__cil_tmp29) = (unsigned char)0;
24952#line 89
24953 __cil_tmp30 = 11 * 1UL;
24954#line 89
24955 __cil_tmp31 = (unsigned long )(inquiry_msg) + __cil_tmp30;
24956#line 89
24957 *((unsigned char *)__cil_tmp31) = (unsigned char)0;
24958#line 89
24959 __cil_tmp32 = 12 * 1UL;
24960#line 89
24961 __cil_tmp33 = (unsigned long )(inquiry_msg) + __cil_tmp32;
24962#line 89
24963 *((unsigned char *)__cil_tmp33) = (unsigned char)128;
24964#line 89
24965 __cil_tmp34 = 13 * 1UL;
24966#line 89
24967 __cil_tmp35 = (unsigned long )(inquiry_msg) + __cil_tmp34;
24968#line 89
24969 *((unsigned char *)__cil_tmp35) = (unsigned char)0;
24970#line 89
24971 __cil_tmp36 = 14 * 1UL;
24972#line 89
24973 __cil_tmp37 = (unsigned long )(inquiry_msg) + __cil_tmp36;
24974#line 89
24975 *((unsigned char *)__cil_tmp37) = (unsigned char)6;
24976#line 89
24977 __cil_tmp38 = 15 * 1UL;
24978#line 89
24979 __cil_tmp39 = (unsigned long )(inquiry_msg) + __cil_tmp38;
24980#line 89
24981 *((unsigned char *)__cil_tmp39) = (unsigned char)18;
24982#line 89
24983 __cil_tmp40 = 16 * 1UL;
24984#line 89
24985 __cil_tmp41 = (unsigned long )(inquiry_msg) + __cil_tmp40;
24986#line 89
24987 *((unsigned char *)__cil_tmp41) = (unsigned char)0;
24988#line 89
24989 __cil_tmp42 = 17 * 1UL;
24990#line 89
24991 __cil_tmp43 = (unsigned long )(inquiry_msg) + __cil_tmp42;
24992#line 89
24993 *((unsigned char *)__cil_tmp43) = (unsigned char)0;
24994#line 89
24995 __cil_tmp44 = 18 * 1UL;
24996#line 89
24997 __cil_tmp45 = (unsigned long )(inquiry_msg) + __cil_tmp44;
24998#line 89
24999 *((unsigned char *)__cil_tmp45) = (unsigned char)0;
25000#line 89
25001 __cil_tmp46 = 19 * 1UL;
25002#line 89
25003 __cil_tmp47 = (unsigned long )(inquiry_msg) + __cil_tmp46;
25004#line 89
25005 *((unsigned char *)__cil_tmp47) = (unsigned char)36;
25006#line 89
25007 __cil_tmp48 = 20 * 1UL;
25008#line 89
25009 __cil_tmp49 = (unsigned long )(inquiry_msg) + __cil_tmp48;
25010#line 89
25011 *((unsigned char *)__cil_tmp49) = (unsigned char)0;
25012#line 89
25013 __cil_tmp50 = 21 * 1UL;
25014#line 89
25015 __cil_tmp51 = (unsigned long )(inquiry_msg) + __cil_tmp50;
25016#line 89
25017 *((unsigned char *)__cil_tmp51) = (unsigned char)0;
25018#line 89
25019 __cil_tmp52 = 22 * 1UL;
25020#line 89
25021 __cil_tmp53 = (unsigned long )(inquiry_msg) + __cil_tmp52;
25022#line 89
25023 *((unsigned char *)__cil_tmp53) = (unsigned char)0;
25024#line 89
25025 __cil_tmp54 = 23 * 1UL;
25026#line 89
25027 __cil_tmp55 = (unsigned long )(inquiry_msg) + __cil_tmp54;
25028#line 89
25029 *((unsigned char *)__cil_tmp55) = (unsigned char)0;
25030#line 89
25031 __cil_tmp56 = 24 * 1UL;
25032#line 89
25033 __cil_tmp57 = (unsigned long )(inquiry_msg) + __cil_tmp56;
25034#line 89
25035 *((unsigned char *)__cil_tmp57) = (unsigned char)0;
25036#line 89
25037 __cil_tmp58 = 25 * 1UL;
25038#line 89
25039 __cil_tmp59 = (unsigned long )(inquiry_msg) + __cil_tmp58;
25040#line 89
25041 *((unsigned char *)__cil_tmp59) = (unsigned char)0;
25042#line 89
25043 __cil_tmp60 = 26 * 1UL;
25044#line 89
25045 __cil_tmp61 = (unsigned long )(inquiry_msg) + __cil_tmp60;
25046#line 89
25047 *((unsigned char *)__cil_tmp61) = (unsigned char)0;
25048#line 89
25049 __cil_tmp62 = 27 * 1UL;
25050#line 89
25051 __cil_tmp63 = (unsigned long )(inquiry_msg) + __cil_tmp62;
25052#line 89
25053 *((unsigned char *)__cil_tmp63) = (unsigned char)0;
25054#line 89
25055 __cil_tmp64 = 28 * 1UL;
25056#line 89
25057 __cil_tmp65 = (unsigned long )(inquiry_msg) + __cil_tmp64;
25058#line 89
25059 *((unsigned char *)__cil_tmp65) = (unsigned char)0;
25060#line 89
25061 __cil_tmp66 = 29 * 1UL;
25062#line 89
25063 __cil_tmp67 = (unsigned long )(inquiry_msg) + __cil_tmp66;
25064#line 89
25065 *((unsigned char *)__cil_tmp67) = (unsigned char)0;
25066#line 89
25067 __cil_tmp68 = 30 * 1UL;
25068#line 89
25069 __cil_tmp69 = (unsigned long )(inquiry_msg) + __cil_tmp68;
25070#line 89
25071 *((unsigned char *)__cil_tmp69) = (unsigned char)0;
25072#line 98
25073 printk("<7>usb-storage: Option MS: %s", "device inquiry for vendor name\n");
25074#line 100
25075 __cil_tmp70 = (size_t )36;
25076#line 100
25077 tmp___7 = kzalloc(__cil_tmp70, 208U);
25078#line 100
25079 buffer = (char *)tmp___7;
25080 }
25081 {
25082#line 101
25083 __cil_tmp71 = (void *)0;
25084#line 101
25085 __cil_tmp72 = (unsigned long )__cil_tmp71;
25086#line 101
25087 __cil_tmp73 = (unsigned long )buffer;
25088#line 101
25089 if (__cil_tmp73 == __cil_tmp72) {
25090#line 102
25091 return (3);
25092 } else {
25093
25094 }
25095 }
25096#line 104
25097 __len = 31UL;
25098#line 104
25099 if (__len >= 64UL) {
25100 {
25101#line 104
25102 __cil_tmp74 = (void *)buffer;
25103#line 104
25104 __cil_tmp75 = 0 * 1UL;
25105#line 104
25106 __cil_tmp76 = (unsigned long )(inquiry_msg) + __cil_tmp75;
25107#line 104
25108 __cil_tmp77 = (unsigned char *)__cil_tmp76;
25109#line 104
25110 __cil_tmp78 = (void *)__cil_tmp77;
25111#line 104
25112 __ret = __memcpy(__cil_tmp74, __cil_tmp78, __len);
25113 }
25114 } else {
25115 {
25116#line 104
25117 __cil_tmp79 = (void *)buffer;
25118#line 104
25119 __cil_tmp80 = 0 * 1UL;
25120#line 104
25121 __cil_tmp81 = (unsigned long )(inquiry_msg) + __cil_tmp80;
25122#line 104
25123 __cil_tmp82 = (unsigned char *)__cil_tmp81;
25124#line 104
25125 __cil_tmp83 = (void *)__cil_tmp82;
25126#line 104
25127 __ret = __builtin_memcpy(__cil_tmp79, __cil_tmp83, __len);
25128 }
25129 }
25130 {
25131#line 105
25132 __cil_tmp84 = (unsigned long )us;
25133#line 105
25134 __cil_tmp85 = __cil_tmp84 + 112;
25135#line 105
25136 __cil_tmp86 = *((unsigned int *)__cil_tmp85);
25137#line 105
25138 __cil_tmp87 = (void *)buffer;
25139#line 105
25140 __cil_tmp88 = (unsigned int )31UL;
25141#line 105
25142 __cil_tmp89 = (void *)0;
25143#line 105
25144 __cil_tmp90 = (unsigned int *)__cil_tmp89;
25145#line 105
25146 result = usb_stor_bulk_transfer_buf(us, __cil_tmp86, __cil_tmp87, __cil_tmp88, __cil_tmp90);
25147 }
25148#line 108
25149 if (result != 0) {
25150#line 109
25151 result = 4;
25152#line 110
25153 goto out;
25154 } else {
25155
25156 }
25157 {
25158#line 113
25159 __cil_tmp91 = (unsigned long )us;
25160#line 113
25161 __cil_tmp92 = __cil_tmp91 + 116;
25162#line 113
25163 __cil_tmp93 = *((unsigned int *)__cil_tmp92);
25164#line 113
25165 __cil_tmp94 = (void *)buffer;
25166#line 113
25167 __cil_tmp95 = (void *)0;
25168#line 113
25169 __cil_tmp96 = (unsigned int *)__cil_tmp95;
25170#line 113
25171 result = usb_stor_bulk_transfer_buf(us, __cil_tmp93, __cil_tmp94, 36U, __cil_tmp96);
25172 }
25173#line 116
25174 if (result != 0) {
25175#line 117
25176 result = 4;
25177#line 118
25178 goto out;
25179 } else {
25180
25181 }
25182 {
25183#line 121
25184 __cil_tmp97 = buffer + 8;
25185#line 121
25186 __cil_tmp98 = (void *)__cil_tmp97;
25187#line 121
25188 __cil_tmp99 = (void *)"Option";
25189#line 121
25190 result = memcmp(__cil_tmp98, __cil_tmp99, 6UL);
25191 }
25192#line 123
25193 if (result != 0) {
25194 {
25195#line 124
25196 __cil_tmp100 = buffer + 8;
25197#line 124
25198 __cil_tmp101 = (void *)__cil_tmp100;
25199#line 124
25200 __cil_tmp102 = (void *)"ZCOPTION";
25201#line 124
25202 result = memcmp(__cil_tmp101, __cil_tmp102, 8UL);
25203 }
25204 } else {
25205
25206 }
25207 {
25208#line 127
25209 __cil_tmp103 = (unsigned long )us;
25210#line 127
25211 __cil_tmp104 = __cil_tmp103 + 116;
25212#line 127
25213 __cil_tmp105 = *((unsigned int *)__cil_tmp104);
25214#line 127
25215 __cil_tmp106 = (void *)buffer;
25216#line 127
25217 __cil_tmp107 = (void *)0;
25218#line 127
25219 __cil_tmp108 = (unsigned int *)__cil_tmp107;
25220#line 127
25221 usb_stor_bulk_transfer_buf(us, __cil_tmp105, __cil_tmp106, 13U, __cil_tmp108);
25222 }
25223 out:
25224 {
25225#line 132
25226 __cil_tmp109 = (void *)buffer;
25227#line 132
25228 kfree(__cil_tmp109);
25229 }
25230#line 133
25231 return (result);
25232}
25233}
25234#line 137 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/option_ms.c"
25235int option_ms_init(struct us_data *us )
25236{ int result ;
25237 unsigned int *__cil_tmp3 ;
25238 unsigned int __cil_tmp4 ;
25239 unsigned int *__cil_tmp5 ;
25240 unsigned int __cil_tmp6 ;
25241
25242 {
25243 {
25244#line 141
25245 printk("<7>usb-storage: Option MS: option_ms_init called\n");
25246#line 146
25247 result = option_inquiry(us);
25248 }
25249#line 147
25250 if (result != 0) {
25251 {
25252#line 148
25253 printk("<7>usb-storage: Option MS: vendor is not Option or not determinable, no action taken\n");
25254 }
25255#line 150
25256 return (0);
25257 } else {
25258 {
25259#line 152
25260 printk("<7>usb-storage: Option MS: this is a genuine Option device, proceeding\n");
25261 }
25262 }
25263 {
25264#line 156
25265 __cil_tmp3 = & option_zero_cd;
25266#line 156
25267 __cil_tmp4 = *__cil_tmp3;
25268#line 156
25269 if (__cil_tmp4 == 1U) {
25270 {
25271#line 157
25272 printk("<7>usb-storage: Option MS: %s", "Forcing Modem Mode\n");
25273#line 158
25274 result = option_rezero(us);
25275 }
25276#line 159
25277 if (result != 0) {
25278 {
25279#line 160
25280 printk("<7>usb-storage: Option MS: Failed to switch to modem mode.\n");
25281 }
25282 } else {
25283
25284 }
25285#line 161
25286 return (-5);
25287 } else {
25288 {
25289#line 162
25290 __cil_tmp5 = & option_zero_cd;
25291#line 162
25292 __cil_tmp6 = *__cil_tmp5;
25293#line 162
25294 if (__cil_tmp6 == 2U) {
25295 {
25296#line 164
25297 printk("<7>usb-storage: Option MS: %s", "Allowing Mass Storage Mode if device requests it\n");
25298 }
25299 } else {
25300
25301 }
25302 }
25303 }
25304 }
25305#line 168
25306 return (0);
25307}
25308}
25309#line 21 "include/scsi/scsi_dbg.h"
25310extern char *scsi_sense_key_string(unsigned char ) ;
25311#line 22
25312extern char *scsi_extd_sense_format(unsigned char , unsigned char ) ;
25313#line 54 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/debug.c"
25314void usb_stor_show_command(struct scsi_cmnd *srb )
25315{ char *what ;
25316 int i ;
25317 void *__cil_tmp4 ;
25318 unsigned long __cil_tmp5 ;
25319 unsigned long __cil_tmp6 ;
25320 unsigned char *__cil_tmp7 ;
25321 unsigned char *__cil_tmp8 ;
25322 unsigned char __cil_tmp9 ;
25323 unsigned long __cil_tmp10 ;
25324 unsigned long __cil_tmp11 ;
25325 unsigned short __cil_tmp12 ;
25326 int __cil_tmp13 ;
25327 unsigned long __cil_tmp14 ;
25328 unsigned long __cil_tmp15 ;
25329 unsigned short __cil_tmp16 ;
25330 int __cil_tmp17 ;
25331 unsigned long __cil_tmp18 ;
25332 unsigned long __cil_tmp19 ;
25333 unsigned char *__cil_tmp20 ;
25334 unsigned char *__cil_tmp21 ;
25335 unsigned char __cil_tmp22 ;
25336 int __cil_tmp23 ;
25337
25338 {
25339#line 56
25340 __cil_tmp4 = (void *)0;
25341#line 56
25342 what = (char *)__cil_tmp4;
25343 {
25344#line 59
25345 __cil_tmp5 = (unsigned long )srb;
25346#line 59
25347 __cil_tmp6 = __cil_tmp5 + 80;
25348#line 59
25349 __cil_tmp7 = *((unsigned char **)__cil_tmp6);
25350#line 59
25351 __cil_tmp8 = __cil_tmp7 + 0;
25352#line 59
25353 __cil_tmp9 = *__cil_tmp8;
25354#line 60
25355 if ((int )__cil_tmp9 == 0) {
25356#line 60
25357 goto case_0;
25358 } else
25359#line 61
25360 if ((int )__cil_tmp9 == 1) {
25361#line 61
25362 goto case_1;
25363 } else
25364#line 62
25365 if ((int )__cil_tmp9 == 3) {
25366#line 62
25367 goto case_3;
25368 } else
25369#line 63
25370 if ((int )__cil_tmp9 == 4) {
25371#line 63
25372 goto case_4;
25373 } else
25374#line 64
25375 if ((int )__cil_tmp9 == 5) {
25376#line 64
25377 goto case_5;
25378 } else
25379#line 65
25380 if ((int )__cil_tmp9 == 7) {
25381#line 65
25382 goto case_7;
25383 } else
25384#line 66
25385 if ((int )__cil_tmp9 == 8) {
25386#line 66
25387 goto case_8;
25388 } else
25389#line 67
25390 if ((int )__cil_tmp9 == 10) {
25391#line 67
25392 goto case_10;
25393 } else
25394#line 68
25395 if ((int )__cil_tmp9 == 11) {
25396#line 68
25397 goto case_11;
25398 } else
25399#line 69
25400 if ((int )__cil_tmp9 == 15) {
25401#line 69
25402 goto case_15;
25403 } else
25404#line 70
25405 if ((int )__cil_tmp9 == 16) {
25406#line 70
25407 goto case_16;
25408 } else
25409#line 71
25410 if ((int )__cil_tmp9 == 17) {
25411#line 71
25412 goto case_17;
25413 } else
25414#line 72
25415 if ((int )__cil_tmp9 == 18) {
25416#line 72
25417 goto case_18;
25418 } else
25419#line 73
25420 if ((int )__cil_tmp9 == 20) {
25421#line 73
25422 goto case_20;
25423 } else
25424#line 74
25425 if ((int )__cil_tmp9 == 21) {
25426#line 74
25427 goto case_21;
25428 } else
25429#line 75
25430 if ((int )__cil_tmp9 == 22) {
25431#line 75
25432 goto case_22;
25433 } else
25434#line 76
25435 if ((int )__cil_tmp9 == 23) {
25436#line 76
25437 goto case_23;
25438 } else
25439#line 77
25440 if ((int )__cil_tmp9 == 24) {
25441#line 77
25442 goto case_24;
25443 } else
25444#line 78
25445 if ((int )__cil_tmp9 == 25) {
25446#line 78
25447 goto case_25;
25448 } else
25449#line 79
25450 if ((int )__cil_tmp9 == 26) {
25451#line 79
25452 goto case_26;
25453 } else
25454#line 80
25455 if ((int )__cil_tmp9 == 27) {
25456#line 80
25457 goto case_27;
25458 } else
25459#line 81
25460 if ((int )__cil_tmp9 == 28) {
25461#line 81
25462 goto case_28;
25463 } else
25464#line 82
25465 if ((int )__cil_tmp9 == 29) {
25466#line 82
25467 goto case_29;
25468 } else
25469#line 83
25470 if ((int )__cil_tmp9 == 30) {
25471#line 83
25472 goto case_30;
25473 } else
25474#line 84
25475 if ((int )__cil_tmp9 == 36) {
25476#line 84
25477 goto case_36;
25478 } else
25479#line 85
25480 if ((int )__cil_tmp9 == 37) {
25481#line 85
25482 goto case_37;
25483 } else
25484#line 86
25485 if ((int )__cil_tmp9 == 40) {
25486#line 86
25487 goto case_40;
25488 } else
25489#line 87
25490 if ((int )__cil_tmp9 == 42) {
25491#line 87
25492 goto case_42;
25493 } else
25494#line 88
25495 if ((int )__cil_tmp9 == 43) {
25496#line 88
25497 goto case_43;
25498 } else
25499#line 89
25500 if ((int )__cil_tmp9 == 46) {
25501#line 89
25502 goto case_46;
25503 } else
25504#line 90
25505 if ((int )__cil_tmp9 == 47) {
25506#line 90
25507 goto case_47;
25508 } else
25509#line 91
25510 if ((int )__cil_tmp9 == 48) {
25511#line 91
25512 goto case_48;
25513 } else
25514#line 92
25515 if ((int )__cil_tmp9 == 49) {
25516#line 92
25517 goto case_49;
25518 } else
25519#line 93
25520 if ((int )__cil_tmp9 == 50) {
25521#line 93
25522 goto case_50;
25523 } else
25524#line 94
25525 if ((int )__cil_tmp9 == 51) {
25526#line 94
25527 goto case_51;
25528 } else
25529#line 95
25530 if ((int )__cil_tmp9 == 52) {
25531#line 95
25532 goto case_52;
25533 } else
25534#line 96
25535 if ((int )__cil_tmp9 == 53) {
25536#line 96
25537 goto case_53;
25538 } else
25539#line 97
25540 if ((int )__cil_tmp9 == 54) {
25541#line 97
25542 goto case_54;
25543 } else
25544#line 98
25545 if ((int )__cil_tmp9 == 55) {
25546#line 98
25547 goto case_55;
25548 } else
25549#line 99
25550 if ((int )__cil_tmp9 == 56) {
25551#line 99
25552 goto case_56;
25553 } else
25554#line 100
25555 if ((int )__cil_tmp9 == 57) {
25556#line 100
25557 goto case_57;
25558 } else
25559#line 101
25560 if ((int )__cil_tmp9 == 58) {
25561#line 101
25562 goto case_58;
25563 } else
25564#line 102
25565 if ((int )__cil_tmp9 == 59) {
25566#line 102
25567 goto case_59;
25568 } else
25569#line 103
25570 if ((int )__cil_tmp9 == 60) {
25571#line 103
25572 goto case_60;
25573 } else
25574#line 104
25575 if ((int )__cil_tmp9 == 61) {
25576#line 104
25577 goto case_61;
25578 } else
25579#line 105
25580 if ((int )__cil_tmp9 == 62) {
25581#line 105
25582 goto case_62;
25583 } else
25584#line 106
25585 if ((int )__cil_tmp9 == 63) {
25586#line 106
25587 goto case_63;
25588 } else
25589#line 107
25590 if ((int )__cil_tmp9 == 64) {
25591#line 107
25592 goto case_64;
25593 } else
25594#line 108
25595 if ((int )__cil_tmp9 == 65) {
25596#line 108
25597 goto case_65;
25598 } else
25599#line 109
25600 if ((int )__cil_tmp9 == 66) {
25601#line 109
25602 goto case_66;
25603 } else
25604#line 110
25605 if ((int )__cil_tmp9 == 67) {
25606#line 110
25607 goto case_67;
25608 } else
25609#line 111
25610 if ((int )__cil_tmp9 == 68) {
25611#line 111
25612 goto case_68;
25613 } else
25614#line 112
25615 if ((int )__cil_tmp9 == 69) {
25616#line 112
25617 goto case_69;
25618 } else
25619#line 113
25620 if ((int )__cil_tmp9 == 71) {
25621#line 113
25622 goto case_71;
25623 } else
25624#line 114
25625 if ((int )__cil_tmp9 == 74) {
25626#line 114
25627 goto case_74;
25628 } else
25629#line 116
25630 if ((int )__cil_tmp9 == 75) {
25631#line 116
25632 goto case_75;
25633 } else
25634#line 117
25635 if ((int )__cil_tmp9 == 76) {
25636#line 117
25637 goto case_76;
25638 } else
25639#line 118
25640 if ((int )__cil_tmp9 == 77) {
25641#line 118
25642 goto case_77;
25643 } else
25644#line 119
25645 if ((int )__cil_tmp9 == 78) {
25646#line 119
25647 goto case_78;
25648 } else
25649#line 120
25650 if ((int )__cil_tmp9 == 81) {
25651#line 120
25652 goto case_81;
25653 } else
25654#line 121
25655 if ((int )__cil_tmp9 == 82) {
25656#line 121
25657 goto case_82;
25658 } else
25659#line 123
25660 if ((int )__cil_tmp9 == 83) {
25661#line 123
25662 goto case_83;
25663 } else
25664#line 124
25665 if ((int )__cil_tmp9 == 84) {
25666#line 124
25667 goto case_84;
25668 } else
25669#line 125
25670 if ((int )__cil_tmp9 == 85) {
25671#line 125
25672 goto case_85;
25673 } else
25674#line 126
25675 if ((int )__cil_tmp9 == 88) {
25676#line 126
25677 goto case_88;
25678 } else
25679#line 127
25680 if ((int )__cil_tmp9 == 89) {
25681#line 127
25682 goto case_89;
25683 } else
25684#line 128
25685 if ((int )__cil_tmp9 == 90) {
25686#line 128
25687 goto case_90;
25688 } else
25689#line 129
25690 if ((int )__cil_tmp9 == 91) {
25691#line 129
25692 goto case_91;
25693 } else
25694#line 130
25695 if ((int )__cil_tmp9 == 92) {
25696#line 130
25697 goto case_92;
25698 } else
25699#line 131
25700 if ((int )__cil_tmp9 == 93) {
25701#line 131
25702 goto case_93;
25703 } else
25704#line 132
25705 if ((int )__cil_tmp9 == 161) {
25706#line 132
25707 goto case_161;
25708 } else
25709#line 133
25710 if ((int )__cil_tmp9 == 160) {
25711#line 133
25712 goto case_160;
25713 } else
25714#line 134
25715 if ((int )__cil_tmp9 == 165) {
25716#line 134
25717 goto case_165;
25718 } else
25719#line 135
25720 if ((int )__cil_tmp9 == 168) {
25721#line 135
25722 goto case_168;
25723 } else
25724#line 136
25725 if ((int )__cil_tmp9 == 170) {
25726#line 136
25727 goto case_170;
25728 } else
25729#line 137
25730 if ((int )__cil_tmp9 == 174) {
25731#line 137
25732 goto case_174;
25733 } else
25734#line 138
25735 if ((int )__cil_tmp9 == 176) {
25736#line 138
25737 goto case_176;
25738 } else
25739#line 139
25740 if ((int )__cil_tmp9 == 177) {
25741#line 139
25742 goto case_177;
25743 } else
25744#line 140
25745 if ((int )__cil_tmp9 == 178) {
25746#line 140
25747 goto case_178;
25748 } else
25749#line 141
25750 if ((int )__cil_tmp9 == 182) {
25751#line 141
25752 goto case_182;
25753 } else
25754#line 142
25755 if ((int )__cil_tmp9 == 184) {
25756#line 142
25757 goto case_184;
25758 } else
25759#line 143
25760 if ((int )__cil_tmp9 == 185) {
25761#line 143
25762 goto case_185;
25763 } else
25764#line 144
25765 if ((int )__cil_tmp9 == 186) {
25766#line 144
25767 goto case_186;
25768 } else
25769#line 145
25770 if ((int )__cil_tmp9 == 187) {
25771#line 145
25772 goto case_187;
25773 } else
25774#line 146
25775 if ((int )__cil_tmp9 == 189) {
25776#line 146
25777 goto case_189;
25778 } else
25779#line 147
25780 if ((int )__cil_tmp9 == 190) {
25781#line 147
25782 goto case_190;
25783 } else
25784#line 148
25785 if ((int )__cil_tmp9 == 225) {
25786#line 148
25787 goto case_225;
25788 } else
25789#line 149
25790 if ((int )__cil_tmp9 == 234) {
25791#line 149
25792 goto case_234;
25793 } else {
25794 {
25795#line 150
25796 goto switch_default;
25797#line 59
25798 if (0) {
25799 case_0:
25800#line 60
25801 what = (char *)"TEST_UNIT_READY";
25802#line 60
25803 goto switch_break;
25804 case_1:
25805#line 61
25806 what = (char *)"REZERO_UNIT";
25807#line 61
25808 goto switch_break;
25809 case_3:
25810#line 62
25811 what = (char *)"REQUEST_SENSE";
25812#line 62
25813 goto switch_break;
25814 case_4:
25815#line 63
25816 what = (char *)"FORMAT_UNIT";
25817#line 63
25818 goto switch_break;
25819 case_5:
25820#line 64
25821 what = (char *)"READ_BLOCK_LIMITS";
25822#line 64
25823 goto switch_break;
25824 case_7:
25825#line 65
25826 what = (char *)"REASSIGN_BLOCKS";
25827#line 65
25828 goto switch_break;
25829 case_8:
25830#line 66
25831 what = (char *)"READ_6";
25832#line 66
25833 goto switch_break;
25834 case_10:
25835#line 67
25836 what = (char *)"WRITE_6";
25837#line 67
25838 goto switch_break;
25839 case_11:
25840#line 68
25841 what = (char *)"SEEK_6";
25842#line 68
25843 goto switch_break;
25844 case_15:
25845#line 69
25846 what = (char *)"READ_REVERSE";
25847#line 69
25848 goto switch_break;
25849 case_16:
25850#line 70
25851 what = (char *)"WRITE_FILEMARKS";
25852#line 70
25853 goto switch_break;
25854 case_17:
25855#line 71
25856 what = (char *)"SPACE";
25857#line 71
25858 goto switch_break;
25859 case_18:
25860#line 72
25861 what = (char *)"INQUIRY";
25862#line 72
25863 goto switch_break;
25864 case_20:
25865#line 73
25866 what = (char *)"RECOVER_BUFFERED_DATA";
25867#line 73
25868 goto switch_break;
25869 case_21:
25870#line 74
25871 what = (char *)"MODE_SELECT";
25872#line 74
25873 goto switch_break;
25874 case_22:
25875#line 75
25876 what = (char *)"RESERVE";
25877#line 75
25878 goto switch_break;
25879 case_23:
25880#line 76
25881 what = (char *)"RELEASE";
25882#line 76
25883 goto switch_break;
25884 case_24:
25885#line 77
25886 what = (char *)"COPY";
25887#line 77
25888 goto switch_break;
25889 case_25:
25890#line 78
25891 what = (char *)"ERASE";
25892#line 78
25893 goto switch_break;
25894 case_26:
25895#line 79
25896 what = (char *)"MODE_SENSE";
25897#line 79
25898 goto switch_break;
25899 case_27:
25900#line 80
25901 what = (char *)"START_STOP";
25902#line 80
25903 goto switch_break;
25904 case_28:
25905#line 81
25906 what = (char *)"RECEIVE_DIAGNOSTIC";
25907#line 81
25908 goto switch_break;
25909 case_29:
25910#line 82
25911 what = (char *)"SEND_DIAGNOSTIC";
25912#line 82
25913 goto switch_break;
25914 case_30:
25915#line 83
25916 what = (char *)"ALLOW_MEDIUM_REMOVAL";
25917#line 83
25918 goto switch_break;
25919 case_36:
25920#line 84
25921 what = (char *)"SET_WINDOW";
25922#line 84
25923 goto switch_break;
25924 case_37:
25925#line 85
25926 what = (char *)"READ_CAPACITY";
25927#line 85
25928 goto switch_break;
25929 case_40:
25930#line 86
25931 what = (char *)"READ_10";
25932#line 86
25933 goto switch_break;
25934 case_42:
25935#line 87
25936 what = (char *)"WRITE_10";
25937#line 87
25938 goto switch_break;
25939 case_43:
25940#line 88
25941 what = (char *)"SEEK_10";
25942#line 88
25943 goto switch_break;
25944 case_46:
25945#line 89
25946 what = (char *)"WRITE_VERIFY";
25947#line 89
25948 goto switch_break;
25949 case_47:
25950#line 90
25951 what = (char *)"VERIFY";
25952#line 90
25953 goto switch_break;
25954 case_48:
25955#line 91
25956 what = (char *)"SEARCH_HIGH";
25957#line 91
25958 goto switch_break;
25959 case_49:
25960#line 92
25961 what = (char *)"SEARCH_EQUAL";
25962#line 92
25963 goto switch_break;
25964 case_50:
25965#line 93
25966 what = (char *)"SEARCH_LOW";
25967#line 93
25968 goto switch_break;
25969 case_51:
25970#line 94
25971 what = (char *)"SET_LIMITS";
25972#line 94
25973 goto switch_break;
25974 case_52:
25975#line 95
25976 what = (char *)"READ_POSITION";
25977#line 95
25978 goto switch_break;
25979 case_53:
25980#line 96
25981 what = (char *)"SYNCHRONIZE_CACHE";
25982#line 96
25983 goto switch_break;
25984 case_54:
25985#line 97
25986 what = (char *)"LOCK_UNLOCK_CACHE";
25987#line 97
25988 goto switch_break;
25989 case_55:
25990#line 98
25991 what = (char *)"READ_DEFECT_DATA";
25992#line 98
25993 goto switch_break;
25994 case_56:
25995#line 99
25996 what = (char *)"MEDIUM_SCAN";
25997#line 99
25998 goto switch_break;
25999 case_57:
26000#line 100
26001 what = (char *)"COMPARE";
26002#line 100
26003 goto switch_break;
26004 case_58:
26005#line 101
26006 what = (char *)"COPY_VERIFY";
26007#line 101
26008 goto switch_break;
26009 case_59:
26010#line 102
26011 what = (char *)"WRITE_BUFFER";
26012#line 102
26013 goto switch_break;
26014 case_60:
26015#line 103
26016 what = (char *)"READ_BUFFER";
26017#line 103
26018 goto switch_break;
26019 case_61:
26020#line 104
26021 what = (char *)"UPDATE_BLOCK";
26022#line 104
26023 goto switch_break;
26024 case_62:
26025#line 105
26026 what = (char *)"READ_LONG";
26027#line 105
26028 goto switch_break;
26029 case_63:
26030#line 106
26031 what = (char *)"WRITE_LONG";
26032#line 106
26033 goto switch_break;
26034 case_64:
26035#line 107
26036 what = (char *)"CHANGE_DEFINITION";
26037#line 107
26038 goto switch_break;
26039 case_65:
26040#line 108
26041 what = (char *)"WRITE_SAME";
26042#line 108
26043 goto switch_break;
26044 case_66:
26045#line 109
26046 what = (char *)"READ SUBCHANNEL";
26047#line 109
26048 goto switch_break;
26049 case_67:
26050#line 110
26051 what = (char *)"READ_TOC";
26052#line 110
26053 goto switch_break;
26054 case_68:
26055#line 111
26056 what = (char *)"READ HEADER";
26057#line 111
26058 goto switch_break;
26059 case_69:
26060#line 112
26061 what = (char *)"PLAY AUDIO (10)";
26062#line 112
26063 goto switch_break;
26064 case_71:
26065#line 113
26066 what = (char *)"PLAY AUDIO MSF";
26067#line 113
26068 goto switch_break;
26069 case_74:
26070#line 115
26071 what = (char *)"GET EVENT/STATUS NOTIFICATION";
26072#line 115
26073 goto switch_break;
26074 case_75:
26075#line 116
26076 what = (char *)"PAUSE/RESUME";
26077#line 116
26078 goto switch_break;
26079 case_76:
26080#line 117
26081 what = (char *)"LOG_SELECT";
26082#line 117
26083 goto switch_break;
26084 case_77:
26085#line 118
26086 what = (char *)"LOG_SENSE";
26087#line 118
26088 goto switch_break;
26089 case_78:
26090#line 119
26091 what = (char *)"STOP PLAY/SCAN";
26092#line 119
26093 goto switch_break;
26094 case_81:
26095#line 120
26096 what = (char *)"READ DISC INFORMATION";
26097#line 120
26098 goto switch_break;
26099 case_82:
26100#line 122
26101 what = (char *)"READ TRACK INFORMATION";
26102#line 122
26103 goto switch_break;
26104 case_83:
26105#line 123
26106 what = (char *)"RESERVE TRACK";
26107#line 123
26108 goto switch_break;
26109 case_84:
26110#line 124
26111 what = (char *)"SEND OPC";
26112#line 124
26113 goto switch_break;
26114 case_85:
26115#line 125
26116 what = (char *)"MODE_SELECT_10";
26117#line 125
26118 goto switch_break;
26119 case_88:
26120#line 126
26121 what = (char *)"REPAIR TRACK";
26122#line 126
26123 goto switch_break;
26124 case_89:
26125#line 127
26126 what = (char *)"READ MASTER CUE";
26127#line 127
26128 goto switch_break;
26129 case_90:
26130#line 128
26131 what = (char *)"MODE_SENSE_10";
26132#line 128
26133 goto switch_break;
26134 case_91:
26135#line 129
26136 what = (char *)"CLOSE TRACK/SESSION";
26137#line 129
26138 goto switch_break;
26139 case_92:
26140#line 130
26141 what = (char *)"READ BUFFER CAPACITY";
26142#line 130
26143 goto switch_break;
26144 case_93:
26145#line 131
26146 what = (char *)"SEND CUE SHEET";
26147#line 131
26148 goto switch_break;
26149 case_161:
26150#line 132
26151 what = (char *)"BLANK";
26152#line 132
26153 goto switch_break;
26154 case_160:
26155#line 133
26156 what = (char *)"REPORT LUNS";
26157#line 133
26158 goto switch_break;
26159 case_165:
26160#line 134
26161 what = (char *)"MOVE_MEDIUM or PLAY AUDIO (12)";
26162#line 134
26163 goto switch_break;
26164 case_168:
26165#line 135
26166 what = (char *)"READ_12";
26167#line 135
26168 goto switch_break;
26169 case_170:
26170#line 136
26171 what = (char *)"WRITE_12";
26172#line 136
26173 goto switch_break;
26174 case_174:
26175#line 137
26176 what = (char *)"WRITE_VERIFY_12";
26177#line 137
26178 goto switch_break;
26179 case_176:
26180#line 138
26181 what = (char *)"SEARCH_HIGH_12";
26182#line 138
26183 goto switch_break;
26184 case_177:
26185#line 139
26186 what = (char *)"SEARCH_EQUAL_12";
26187#line 139
26188 goto switch_break;
26189 case_178:
26190#line 140
26191 what = (char *)"SEARCH_LOW_12";
26192#line 140
26193 goto switch_break;
26194 case_182:
26195#line 141
26196 what = (char *)"SEND_VOLUME_TAG";
26197#line 141
26198 goto switch_break;
26199 case_184:
26200#line 142
26201 what = (char *)"READ_ELEMENT_STATUS";
26202#line 142
26203 goto switch_break;
26204 case_185:
26205#line 143
26206 what = (char *)"READ CD MSF";
26207#line 143
26208 goto switch_break;
26209 case_186:
26210#line 144
26211 what = (char *)"SCAN";
26212#line 144
26213 goto switch_break;
26214 case_187:
26215#line 145
26216 what = (char *)"SET CD SPEED";
26217#line 145
26218 goto switch_break;
26219 case_189:
26220#line 146
26221 what = (char *)"MECHANISM STATUS";
26222#line 146
26223 goto switch_break;
26224 case_190:
26225#line 147
26226 what = (char *)"READ CD";
26227#line 147
26228 goto switch_break;
26229 case_225:
26230#line 148
26231 what = (char *)"WRITE CONTINUE";
26232#line 148
26233 goto switch_break;
26234 case_234:
26235#line 149
26236 what = (char *)"WRITE_LONG_2";
26237#line 149
26238 goto switch_break;
26239 switch_default:
26240#line 150
26241 what = (char *)"(unknown command)";
26242#line 150
26243 goto switch_break;
26244 } else {
26245 switch_break: ;
26246 }
26247 }
26248 }
26249 }
26250 {
26251#line 152
26252 __cil_tmp10 = (unsigned long )srb;
26253#line 152
26254 __cil_tmp11 = __cil_tmp10 + 74;
26255#line 152
26256 __cil_tmp12 = *((unsigned short *)__cil_tmp11);
26257#line 152
26258 __cil_tmp13 = (int )__cil_tmp12;
26259#line 152
26260 printk("<7>usb-storage: Command %s (%d bytes)\n", what, __cil_tmp13);
26261#line 153
26262 printk("<7>usb-storage: ");
26263#line 154
26264 i = 0;
26265 }
26266 {
26267#line 154
26268 while (1) {
26269 while_continue: ;
26270 {
26271#line 154
26272 __cil_tmp14 = (unsigned long )srb;
26273#line 154
26274 __cil_tmp15 = __cil_tmp14 + 74;
26275#line 154
26276 __cil_tmp16 = *((unsigned short *)__cil_tmp15);
26277#line 154
26278 __cil_tmp17 = (int )__cil_tmp16;
26279#line 154
26280 if (i < __cil_tmp17) {
26281#line 154
26282 if (i < 16) {
26283
26284 } else {
26285#line 154
26286 goto while_break;
26287 }
26288 } else {
26289#line 154
26290 goto while_break;
26291 }
26292 }
26293 {
26294#line 155
26295 __cil_tmp18 = (unsigned long )srb;
26296#line 155
26297 __cil_tmp19 = __cil_tmp18 + 80;
26298#line 155
26299 __cil_tmp20 = *((unsigned char **)__cil_tmp19);
26300#line 155
26301 __cil_tmp21 = __cil_tmp20 + i;
26302#line 155
26303 __cil_tmp22 = *__cil_tmp21;
26304#line 155
26305 __cil_tmp23 = (int )__cil_tmp22;
26306#line 155
26307 printk(" %02x", __cil_tmp23);
26308#line 154
26309 i = i + 1;
26310 }
26311 }
26312 while_break: ;
26313 }
26314 {
26315#line 156
26316 printk("\n");
26317 }
26318#line 157
26319 return;
26320}
26321}
26322#line 159 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7655/dscv_tempdir/dscv/ri/32_1/drivers/usb/storage/debug.c"
26323void usb_stor_show_sense(unsigned char key , unsigned char asc , unsigned char ascq )
26324{ char *what ;
26325 char *keystr ;
26326 void *__cil_tmp6 ;
26327 unsigned long __cil_tmp7 ;
26328 unsigned long __cil_tmp8 ;
26329 void *__cil_tmp9 ;
26330 unsigned long __cil_tmp10 ;
26331 unsigned long __cil_tmp11 ;
26332 int __cil_tmp12 ;
26333
26334 {
26335 {
26336#line 166
26337 keystr = scsi_sense_key_string(key);
26338#line 167
26339 what = scsi_extd_sense_format(asc, ascq);
26340 }
26341 {
26342#line 169
26343 __cil_tmp6 = (void *)0;
26344#line 169
26345 __cil_tmp7 = (unsigned long )__cil_tmp6;
26346#line 169
26347 __cil_tmp8 = (unsigned long )keystr;
26348#line 169
26349 if (__cil_tmp8 == __cil_tmp7) {
26350#line 170
26351 keystr = "(Unknown Key)";
26352 } else {
26353
26354 }
26355 }
26356 {
26357#line 171
26358 __cil_tmp9 = (void *)0;
26359#line 171
26360 __cil_tmp10 = (unsigned long )__cil_tmp9;
26361#line 171
26362 __cil_tmp11 = (unsigned long )what;
26363#line 171
26364 if (__cil_tmp11 == __cil_tmp10) {
26365#line 172
26366 what = "(unknown ASC/ASCQ)";
26367 } else {
26368
26369 }
26370 }
26371 {
26372#line 174
26373 printk("<7>usb-storage: %s: ", keystr);
26374#line 175
26375 __cil_tmp12 = (int )ascq;
26376#line 175
26377 printk(what, __cil_tmp12);
26378#line 176
26379 printk("\n");
26380 }
26381#line 177
26382 return;
26383}
26384}