Showing error 704

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-linux-3.4/32_1_cilled_safe_ok_nondet_linux-3.4-32_1-drivers--usb--storage--ums-sddr09.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 12756
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

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