Showing error 702

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