Showing error 616

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