Showing error 1293

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