Showing error 146

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-drivers/usb_urb-drivers-usb-misc-iowarrior.ko_unsafe.cil.out.i.pp.i
Line in file: 7428
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

   1# 1 "ldv/68_1/drivers/usb/misc/iowarrior.ko/unsafe.cil.out.i"
   2# 1 "<built-in>"
   3# 1 "<command-line>"
   4# 1 "ldv/68_1/drivers/usb/misc/iowarrior.ko/unsafe.cil.out.i"
   5# 19 "include/asm-generic/int-ll64.h"
   6typedef signed char __s8;
   7# 20 "include/asm-generic/int-ll64.h"
   8typedef unsigned char __u8;
   9# 22 "include/asm-generic/int-ll64.h"
  10typedef short __s16;
  11# 23 "include/asm-generic/int-ll64.h"
  12typedef unsigned short __u16;
  13# 25 "include/asm-generic/int-ll64.h"
  14typedef int __s32;
  15# 26 "include/asm-generic/int-ll64.h"
  16typedef unsigned int __u32;
  17# 29 "include/asm-generic/int-ll64.h"
  18typedef long long __s64;
  19# 30 "include/asm-generic/int-ll64.h"
  20typedef unsigned long long __u64;
  21# 43 "include/asm-generic/int-ll64.h"
  22typedef unsigned char u8;
  23# 46 "include/asm-generic/int-ll64.h"
  24typedef unsigned short u16;
  25# 49 "include/asm-generic/int-ll64.h"
  26typedef unsigned int u32;
  27# 51 "include/asm-generic/int-ll64.h"
  28typedef long long s64;
  29# 52 "include/asm-generic/int-ll64.h"
  30typedef unsigned long long u64;
  31# 11 "include/asm-generic/types.h"
  32typedef unsigned short umode_t;
  33# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  34typedef unsigned int __kernel_mode_t;
  35# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  36typedef int __kernel_pid_t;
  37# 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  38typedef unsigned int __kernel_uid_t;
  39# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  40typedef unsigned int __kernel_gid_t;
  41# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  42typedef unsigned long __kernel_size_t;
  43# 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  44typedef long __kernel_ssize_t;
  45# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  46typedef long __kernel_time_t;
  47# 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  48typedef long __kernel_clock_t;
  49# 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  50typedef int __kernel_timer_t;
  51# 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  52typedef int __kernel_clockid_t;
  53# 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  54typedef long long __kernel_loff_t;
  55# 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  56typedef __kernel_uid_t __kernel_uid32_t;
  57# 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
  58typedef __kernel_gid_t __kernel_gid32_t;
  59# 21 "include/linux/types.h"
  60typedef __u32 __kernel_dev_t;
  61# 24 "include/linux/types.h"
  62typedef __kernel_dev_t dev_t;
  63# 26 "include/linux/types.h"
  64typedef __kernel_mode_t mode_t;
  65# 29 "include/linux/types.h"
  66typedef __kernel_pid_t pid_t;
  67# 34 "include/linux/types.h"
  68typedef __kernel_clockid_t clockid_t;
  69# 37 "include/linux/types.h"
  70typedef _Bool bool;
  71# 39 "include/linux/types.h"
  72typedef __kernel_uid32_t uid_t;
  73# 40 "include/linux/types.h"
  74typedef __kernel_gid32_t gid_t;
  75# 53 "include/linux/types.h"
  76typedef __kernel_loff_t loff_t;
  77# 62 "include/linux/types.h"
  78typedef __kernel_size_t size_t;
  79# 67 "include/linux/types.h"
  80typedef __kernel_ssize_t ssize_t;
  81# 77 "include/linux/types.h"
  82typedef __kernel_time_t time_t;
  83# 110 "include/linux/types.h"
  84typedef __s32 int32_t;
  85# 116 "include/linux/types.h"
  86typedef __u32 uint32_t;
  87# 141 "include/linux/types.h"
  88typedef unsigned long sector_t;
  89# 142 "include/linux/types.h"
  90typedef unsigned long blkcnt_t;
  91# 154 "include/linux/types.h"
  92typedef u64 dma_addr_t;
  93# 177 "include/linux/types.h"
  94typedef __u16 __le16;
  95# 201 "include/linux/types.h"
  96typedef unsigned int gfp_t;
  97# 202 "include/linux/types.h"
  98typedef unsigned int fmode_t;
  99# 212 "include/linux/types.h"
 100struct __anonstruct_atomic_t_7 {
 101   int counter ;
 102};
 103# 212 "include/linux/types.h"
 104typedef struct __anonstruct_atomic_t_7 atomic_t;
 105# 217 "include/linux/types.h"
 106struct __anonstruct_atomic64_t_8 {
 107   long counter ;
 108};
 109# 217 "include/linux/types.h"
 110typedef struct __anonstruct_atomic64_t_8 atomic64_t;
 111# 222 "include/linux/types.h"
 112struct list_head {
 113   struct list_head *next ;
 114   struct list_head *prev ;
 115};
 116# 226 "include/linux/types.h"
 117struct hlist_node;
 118# 226 "include/linux/types.h"
 119struct hlist_node;
 120# 226 "include/linux/types.h"
 121struct hlist_head {
 122   struct hlist_node *first ;
 123};
 124# 230 "include/linux/types.h"
 125struct hlist_node {
 126   struct hlist_node *next ;
 127   struct hlist_node **pprev ;
 128};
 129# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
 130struct module;
 131# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
 132struct module;
 133# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
 134struct module;
 135# 145 "include/linux/init.h"
 136typedef void (*ctor_fn_t)(void);
 137# 10 "include/asm-generic/bug.h"
 138struct bug_entry {
 139   int bug_addr_disp ;
 140   int file_disp ;
 141   unsigned short line ;
 142   unsigned short flags ;
 143};
 144# 113 "include/linux/kernel.h"
 145struct completion;
 146# 113 "include/linux/kernel.h"
 147struct completion;
 148# 113 "include/linux/kernel.h"
 149struct completion;
 150# 114 "include/linux/kernel.h"
 151struct pt_regs;
 152# 114 "include/linux/kernel.h"
 153struct pt_regs;
 154# 114 "include/linux/kernel.h"
 155struct pt_regs;
 156# 322 "include/linux/kernel.h"
 157struct pid;
 158# 322 "include/linux/kernel.h"
 159struct pid;
 160# 322 "include/linux/kernel.h"
 161struct pid;
 162# 12 "include/linux/thread_info.h"
 163struct timespec;
 164# 12 "include/linux/thread_info.h"
 165struct timespec;
 166# 12 "include/linux/thread_info.h"
 167struct timespec;
 168# 13 "include/linux/thread_info.h"
 169struct compat_timespec;
 170# 13 "include/linux/thread_info.h"
 171struct compat_timespec;
 172# 13 "include/linux/thread_info.h"
 173struct compat_timespec;
 174# 18 "include/linux/thread_info.h"
 175struct __anonstruct_futex_11 {
 176   u32 *uaddr ;
 177   u32 val ;
 178   u32 flags ;
 179   u32 bitset ;
 180   u64 time ;
 181   u32 *uaddr2 ;
 182};
 183# 18 "include/linux/thread_info.h"
 184struct __anonstruct_nanosleep_12 {
 185   clockid_t clockid ;
 186   struct timespec *rmtp ;
 187   struct compat_timespec *compat_rmtp ;
 188   u64 expires ;
 189};
 190# 18 "include/linux/thread_info.h"
 191struct pollfd;
 192# 18 "include/linux/thread_info.h"
 193struct pollfd;
 194# 18 "include/linux/thread_info.h"
 195struct __anonstruct_poll_13 {
 196   struct pollfd *ufds ;
 197   int nfds ;
 198   int has_timeout ;
 199   unsigned long tv_sec ;
 200   unsigned long tv_nsec ;
 201};
 202# 18 "include/linux/thread_info.h"
 203union __anonunion____missing_field_name_10 {
 204   struct __anonstruct_futex_11 futex ;
 205   struct __anonstruct_nanosleep_12 nanosleep ;
 206   struct __anonstruct_poll_13 poll ;
 207};
 208# 18 "include/linux/thread_info.h"
 209struct restart_block {
 210   long (*fn)(struct restart_block * ) ;
 211   union __anonunion____missing_field_name_10 __annonCompField4 ;
 212};
 213# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page.h"
 214struct page;
 215# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page.h"
 216struct page;
 217# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page.h"
 218struct page;
 219# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
 220struct task_struct;
 221# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
 222struct task_struct;
 223# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
 224struct task_struct;
 225# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
 226struct exec_domain;
 227# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
 228struct exec_domain;
 229# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
 230struct exec_domain;
 231# 7 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 232struct task_struct;
 233# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 234struct mm_struct;
 235# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 236struct mm_struct;
 237# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 238struct mm_struct;
 239# 99 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
 240struct pt_regs {
 241   unsigned long r15 ;
 242   unsigned long r14 ;
 243   unsigned long r13 ;
 244   unsigned long r12 ;
 245   unsigned long bp ;
 246   unsigned long bx ;
 247   unsigned long r11 ;
 248   unsigned long r10 ;
 249   unsigned long r9 ;
 250   unsigned long r8 ;
 251   unsigned long ax ;
 252   unsigned long cx ;
 253   unsigned long dx ;
 254   unsigned long si ;
 255   unsigned long di ;
 256   unsigned long orig_ax ;
 257   unsigned long ip ;
 258   unsigned long cs ;
 259   unsigned long flags ;
 260   unsigned long sp ;
 261   unsigned long ss ;
 262};
 263# 136 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
 264struct task_struct;
 265# 141 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
 266struct kernel_vm86_regs {
 267   struct pt_regs pt ;
 268   unsigned short es ;
 269   unsigned short __esh ;
 270   unsigned short ds ;
 271   unsigned short __dsh ;
 272   unsigned short fs ;
 273   unsigned short __fsh ;
 274   unsigned short gs ;
 275   unsigned short __gsh ;
 276};
 277# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/math_emu.h"
 278union __anonunion____missing_field_name_14 {
 279   struct pt_regs *regs ;
 280   struct kernel_vm86_regs *vm86 ;
 281};
 282# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/math_emu.h"
 283struct math_emu_info {
 284   long ___orig_eip ;
 285   union __anonunion____missing_field_name_14 __annonCompField5 ;
 286};
 287# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
 288struct task_struct;
 289# 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
 290typedef unsigned long pgdval_t;
 291# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
 292typedef unsigned long pgprotval_t;
 293# 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 294struct pgprot {
 295   pgprotval_t pgprot ;
 296};
 297# 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 298typedef struct pgprot pgprot_t;
 299# 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 300struct __anonstruct_pgd_t_17 {
 301   pgdval_t pgd ;
 302};
 303# 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 304typedef struct __anonstruct_pgd_t_17 pgd_t;
 305# 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 306typedef struct page *pgtable_t;
 307# 293 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 308struct file;
 309# 293 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 310struct file;
 311# 293 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 312struct file;
 313# 311 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 314struct seq_file;
 315# 311 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 316struct seq_file;
 317# 311 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
 318struct seq_file;
 319# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
 320struct __anonstruct____missing_field_name_22 {
 321   unsigned int a ;
 322   unsigned int b ;
 323};
 324# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
 325struct __anonstruct____missing_field_name_23 {
 326   u16 limit0 ;
 327   u16 base0 ;
 328   unsigned int base1 : 8 ;
 329   unsigned int type : 4 ;
 330   unsigned int s : 1 ;
 331   unsigned int dpl : 2 ;
 332   unsigned int p : 1 ;
 333   unsigned int limit : 4 ;
 334   unsigned int avl : 1 ;
 335   unsigned int l : 1 ;
 336   unsigned int d : 1 ;
 337   unsigned int g : 1 ;
 338   unsigned int base2 : 8 ;
 339};
 340# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
 341union __anonunion____missing_field_name_21 {
 342   struct __anonstruct____missing_field_name_22 __annonCompField7 ;
 343   struct __anonstruct____missing_field_name_23 __annonCompField8 ;
 344};
 345# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
 346struct desc_struct {
 347   union __anonunion____missing_field_name_21 __annonCompField9 ;
 348} __attribute__((__packed__)) ;
 349# 45 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 350struct page;
 351# 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 352struct thread_struct;
 353# 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 354struct thread_struct;
 355# 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 356struct thread_struct;
 357# 49 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 358struct mm_struct;
 359# 50 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 360struct desc_struct;
 361# 51 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 362struct task_struct;
 363# 52 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 364struct cpumask;
 365# 52 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 366struct cpumask;
 367# 52 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 368struct cpumask;
 369# 322 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 370struct arch_spinlock;
 371# 322 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 372struct arch_spinlock;
 373# 322 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 374struct arch_spinlock;
 375# 13 "include/linux/cpumask.h"
 376struct cpumask {
 377   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 378};
 379# 13 "include/linux/cpumask.h"
 380typedef struct cpumask cpumask_t;
 381# 622 "include/linux/cpumask.h"
 382typedef struct cpumask *cpumask_var_t;
 383# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/system.h"
 384struct task_struct;
 385# 10 "include/linux/personality.h"
 386struct exec_domain;
 387# 11 "include/linux/personality.h"
 388struct pt_regs;
 389# 91 "include/linux/personality.h"
 390struct map_segment;
 391# 91 "include/linux/personality.h"
 392struct map_segment;
 393# 91 "include/linux/personality.h"
 394struct exec_domain {
 395   char const *name ;
 396   void (*handler)(int , struct pt_regs * ) ;
 397   unsigned char pers_low ;
 398   unsigned char pers_high ;
 399   unsigned long *signal_map ;
 400   unsigned long *signal_invmap ;
 401   struct map_segment *err_map ;
 402   struct map_segment *socktype_map ;
 403   struct map_segment *sockopt_map ;
 404   struct map_segment *af_map ;
 405   struct module *module ;
 406   struct exec_domain *next ;
 407};
 408# 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 409struct i387_fsave_struct {
 410   u32 cwd ;
 411   u32 swd ;
 412   u32 twd ;
 413   u32 fip ;
 414   u32 fcs ;
 415   u32 foo ;
 416   u32 fos ;
 417   u32 st_space[20] ;
 418   u32 status ;
 419};
 420# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 421struct __anonstruct____missing_field_name_31 {
 422   u64 rip ;
 423   u64 rdp ;
 424};
 425# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 426struct __anonstruct____missing_field_name_32 {
 427   u32 fip ;
 428   u32 fcs ;
 429   u32 foo ;
 430   u32 fos ;
 431};
 432# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 433union __anonunion____missing_field_name_30 {
 434   struct __anonstruct____missing_field_name_31 __annonCompField12 ;
 435   struct __anonstruct____missing_field_name_32 __annonCompField13 ;
 436};
 437# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 438union __anonunion____missing_field_name_33 {
 439   u32 padding1[12] ;
 440   u32 sw_reserved[12] ;
 441};
 442# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 443struct i387_fxsave_struct {
 444   u16 cwd ;
 445   u16 swd ;
 446   u16 twd ;
 447   u16 fop ;
 448   union __anonunion____missing_field_name_30 __annonCompField14 ;
 449   u32 mxcsr ;
 450   u32 mxcsr_mask ;
 451   u32 st_space[32] ;
 452   u32 xmm_space[64] ;
 453   u32 padding[12] ;
 454   union __anonunion____missing_field_name_33 __annonCompField15 ;
 455} __attribute__((__aligned__(16))) ;
 456# 331 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 457struct i387_soft_struct {
 458   u32 cwd ;
 459   u32 swd ;
 460   u32 twd ;
 461   u32 fip ;
 462   u32 fcs ;
 463   u32 foo ;
 464   u32 fos ;
 465   u32 st_space[20] ;
 466   u8 ftop ;
 467   u8 changed ;
 468   u8 lookahead ;
 469   u8 no_update ;
 470   u8 rm ;
 471   u8 alimit ;
 472   struct math_emu_info *info ;
 473   u32 entry_eip ;
 474};
 475# 351 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 476struct ymmh_struct {
 477   u32 ymmh_space[64] ;
 478};
 479# 356 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 480struct xsave_hdr_struct {
 481   u64 xstate_bv ;
 482   u64 reserved1[2] ;
 483   u64 reserved2[5] ;
 484} __attribute__((__packed__)) ;
 485# 362 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 486struct xsave_struct {
 487   struct i387_fxsave_struct i387 ;
 488   struct xsave_hdr_struct xsave_hdr ;
 489   struct ymmh_struct ymmh ;
 490} __attribute__((__packed__, __aligned__(64))) ;
 491# 369 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 492union thread_xstate {
 493   struct i387_fsave_struct fsave ;
 494   struct i387_fxsave_struct fxsave ;
 495   struct i387_soft_struct soft ;
 496   struct xsave_struct xsave ;
 497};
 498# 376 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 499struct fpu {
 500   union thread_xstate *state ;
 501};
 502# 421 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 503struct kmem_cache;
 504# 421 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 505struct kmem_cache;
 506# 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 507struct perf_event;
 508# 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 509struct perf_event;
 510# 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 511struct perf_event;
 512# 425 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 513struct thread_struct {
 514   struct desc_struct tls_array[3] ;
 515   unsigned long sp0 ;
 516   unsigned long sp ;
 517   unsigned long usersp ;
 518   unsigned short es ;
 519   unsigned short ds ;
 520   unsigned short fsindex ;
 521   unsigned short gsindex ;
 522   unsigned long fs ;
 523   unsigned long gs ;
 524   struct perf_event *ptrace_bps[4] ;
 525   unsigned long debugreg6 ;
 526   unsigned long ptrace_dr7 ;
 527   unsigned long cr2 ;
 528   unsigned long trap_no ;
 529   unsigned long error_code ;
 530   struct fpu fpu ;
 531   unsigned long *io_bitmap_ptr ;
 532   unsigned long iopl ;
 533   unsigned int io_bitmap_max ;
 534};
 535# 620 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 536struct __anonstruct_mm_segment_t_35 {
 537   unsigned long seg ;
 538};
 539# 620 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
 540typedef struct __anonstruct_mm_segment_t_35 mm_segment_t;
 541# 23 "include/asm-generic/atomic-long.h"
 542typedef atomic64_t atomic_long_t;
 543# 26 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
 544struct thread_info {
 545   struct task_struct *task ;
 546   struct exec_domain *exec_domain ;
 547   __u32 flags ;
 548   __u32 status ;
 549   __u32 cpu ;
 550   int preempt_count ;
 551   mm_segment_t addr_limit ;
 552   struct restart_block restart_block ;
 553   void *sysenter_return ;
 554   int uaccess_err ;
 555};
 556# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
 557struct arch_spinlock {
 558   unsigned int slock ;
 559};
 560# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
 561typedef struct arch_spinlock arch_spinlock_t;
 562# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
 563struct __anonstruct_arch_rwlock_t_36 {
 564   unsigned int lock ;
 565};
 566# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
 567typedef struct __anonstruct_arch_rwlock_t_36 arch_rwlock_t;
 568# 12 "include/linux/lockdep.h"
 569struct task_struct;
 570# 13 "include/linux/lockdep.h"
 571struct lockdep_map;
 572# 13 "include/linux/lockdep.h"
 573struct lockdep_map;
 574# 13 "include/linux/lockdep.h"
 575struct lockdep_map;
 576# 8 "include/linux/debug_locks.h"
 577struct task_struct;
 578# 48 "include/linux/debug_locks.h"
 579struct task_struct;
 580# 4 "include/linux/stacktrace.h"
 581struct task_struct;
 582# 5 "include/linux/stacktrace.h"
 583struct pt_regs;
 584# 8 "include/linux/stacktrace.h"
 585struct task_struct;
 586# 10 "include/linux/stacktrace.h"
 587struct stack_trace {
 588   unsigned int nr_entries ;
 589   unsigned int max_entries ;
 590   unsigned long *entries ;
 591   int skip ;
 592};
 593# 50 "include/linux/lockdep.h"
 594struct lockdep_subclass_key {
 595   char __one_byte ;
 596} __attribute__((__packed__)) ;
 597# 54 "include/linux/lockdep.h"
 598struct lock_class_key {
 599   struct lockdep_subclass_key subkeys[8UL] ;
 600};
 601# 65 "include/linux/lockdep.h"
 602struct lock_class {
 603   struct list_head hash_entry ;
 604   struct list_head lock_entry ;
 605   struct lockdep_subclass_key *key ;
 606   unsigned int subclass ;
 607   unsigned int dep_gen_id ;
 608   unsigned long usage_mask ;
 609   struct stack_trace usage_traces[13] ;
 610   struct list_head locks_after ;
 611   struct list_head locks_before ;
 612   unsigned int version ;
 613   unsigned long ops ;
 614   char const *name ;
 615   int name_version ;
 616   unsigned long contention_point[4] ;
 617   unsigned long contending_point[4] ;
 618};
 619# 150 "include/linux/lockdep.h"
 620struct lockdep_map {
 621   struct lock_class_key *key ;
 622   struct lock_class *class_cache[2] ;
 623   char const *name ;
 624   int cpu ;
 625   unsigned long ip ;
 626};
 627# 196 "include/linux/lockdep.h"
 628struct held_lock {
 629   u64 prev_chain_key ;
 630   unsigned long acquire_ip ;
 631   struct lockdep_map *instance ;
 632   struct lockdep_map *nest_lock ;
 633   u64 waittime_stamp ;
 634   u64 holdtime_stamp ;
 635   unsigned int class_idx : 13 ;
 636   unsigned int irq_context : 2 ;
 637   unsigned int trylock : 1 ;
 638   unsigned int read : 2 ;
 639   unsigned int check : 2 ;
 640   unsigned int hardirqs_off : 1 ;
 641   unsigned int references : 11 ;
 642};
 643# 20 "include/linux/spinlock_types.h"
 644struct raw_spinlock {
 645   arch_spinlock_t raw_lock ;
 646   unsigned int magic ;
 647   unsigned int owner_cpu ;
 648   void *owner ;
 649   struct lockdep_map dep_map ;
 650};
 651# 20 "include/linux/spinlock_types.h"
 652typedef struct raw_spinlock raw_spinlock_t;
 653# 64 "include/linux/spinlock_types.h"
 654struct __anonstruct____missing_field_name_38 {
 655   u8 __padding[(unsigned int )(& ((struct raw_spinlock *)0)->dep_map)] ;
 656   struct lockdep_map dep_map ;
 657};
 658# 64 "include/linux/spinlock_types.h"
 659union __anonunion____missing_field_name_37 {
 660   struct raw_spinlock rlock ;
 661   struct __anonstruct____missing_field_name_38 __annonCompField17 ;
 662};
 663# 64 "include/linux/spinlock_types.h"
 664struct spinlock {
 665   union __anonunion____missing_field_name_37 __annonCompField18 ;
 666};
 667# 64 "include/linux/spinlock_types.h"
 668typedef struct spinlock spinlock_t;
 669# 11 "include/linux/rwlock_types.h"
 670struct __anonstruct_rwlock_t_39 {
 671   arch_rwlock_t raw_lock ;
 672   unsigned int magic ;
 673   unsigned int owner_cpu ;
 674   void *owner ;
 675   struct lockdep_map dep_map ;
 676};
 677# 11 "include/linux/rwlock_types.h"
 678typedef struct __anonstruct_rwlock_t_39 rwlock_t;
 679# 119 "include/linux/seqlock.h"
 680struct seqcount {
 681   unsigned int sequence ;
 682};
 683# 119 "include/linux/seqlock.h"
 684typedef struct seqcount seqcount_t;
 685# 14 "include/linux/time.h"
 686struct timespec {
 687   __kernel_time_t tv_sec ;
 688   long tv_nsec ;
 689};
 690# 62 "include/linux/stat.h"
 691struct kstat {
 692   u64 ino ;
 693   dev_t dev ;
 694   umode_t mode ;
 695   unsigned int nlink ;
 696   uid_t uid ;
 697   gid_t gid ;
 698   dev_t rdev ;
 699   loff_t size ;
 700   struct timespec atime ;
 701   struct timespec mtime ;
 702   struct timespec ctime ;
 703   unsigned long blksize ;
 704   unsigned long long blocks ;
 705};
 706# 28 "include/linux/wait.h"
 707struct __wait_queue;
 708# 28 "include/linux/wait.h"
 709struct __wait_queue;
 710# 28 "include/linux/wait.h"
 711typedef struct __wait_queue wait_queue_t;
 712# 32 "include/linux/wait.h"
 713struct __wait_queue {
 714   unsigned int flags ;
 715   void *private ;
 716   int (*func)(wait_queue_t *wait , unsigned int mode , int flags , void *key ) ;
 717   struct list_head task_list ;
 718};
 719# 50 "include/linux/wait.h"
 720struct __wait_queue_head {
 721   spinlock_t lock ;
 722   struct list_head task_list ;
 723};
 724# 54 "include/linux/wait.h"
 725typedef struct __wait_queue_head wait_queue_head_t;
 726# 56 "include/linux/wait.h"
 727struct task_struct;
 728# 96 "include/linux/nodemask.h"
 729struct __anonstruct_nodemask_t_41 {
 730   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 731};
 732# 96 "include/linux/nodemask.h"
 733typedef struct __anonstruct_nodemask_t_41 nodemask_t;
 734# 60 "include/linux/pageblock-flags.h"
 735struct page;
 736# 48 "include/linux/mutex.h"
 737struct mutex {
 738   atomic_t count ;
 739   spinlock_t wait_lock ;
 740   struct list_head wait_list ;
 741   struct task_struct *owner ;
 742   char const *name ;
 743   void *magic ;
 744   struct lockdep_map dep_map ;
 745};
 746# 69 "include/linux/mutex.h"
 747struct mutex_waiter {
 748   struct list_head list ;
 749   struct task_struct *task ;
 750   void *magic ;
 751};
 752# 20 "include/linux/rwsem.h"
 753struct rw_semaphore;
 754# 20 "include/linux/rwsem.h"
 755struct rw_semaphore;
 756# 20 "include/linux/rwsem.h"
 757struct rw_semaphore;
 758# 26 "include/linux/rwsem.h"
 759struct rw_semaphore {
 760   long count ;
 761   spinlock_t wait_lock ;
 762   struct list_head wait_list ;
 763   struct lockdep_map dep_map ;
 764};
 765# 8 "include/linux/memory_hotplug.h"
 766struct page;
 767# 177 "include/linux/ioport.h"
 768struct device;
 769# 177 "include/linux/ioport.h"
 770struct device;
 771# 177 "include/linux/ioport.h"
 772struct device;
 773# 103 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mpspec.h"
 774struct device;
 775# 46 "include/linux/ktime.h"
 776union ktime {
 777   s64 tv64 ;
 778};
 779# 59 "include/linux/ktime.h"
 780typedef union ktime ktime_t;
 781# 10 "include/linux/timer.h"
 782struct tvec_base;
 783# 10 "include/linux/timer.h"
 784struct tvec_base;
 785# 10 "include/linux/timer.h"
 786struct tvec_base;
 787# 12 "include/linux/timer.h"
 788struct timer_list {
 789   struct list_head entry ;
 790   unsigned long expires ;
 791   struct tvec_base *base ;
 792   void (*function)(unsigned long ) ;
 793   unsigned long data ;
 794   int slack ;
 795   int start_pid ;
 796   void *start_site ;
 797   char start_comm[16] ;
 798   struct lockdep_map lockdep_map ;
 799};
 800# 289 "include/linux/timer.h"
 801struct hrtimer;
 802# 289 "include/linux/timer.h"
 803struct hrtimer;
 804# 289 "include/linux/timer.h"
 805struct hrtimer;
 806# 290 "include/linux/timer.h"
 807enum hrtimer_restart;
 808# 290 "include/linux/timer.h"
 809enum hrtimer_restart;
 810# 17 "include/linux/workqueue.h"
 811struct work_struct;
 812# 17 "include/linux/workqueue.h"
 813struct work_struct;
 814# 17 "include/linux/workqueue.h"
 815struct work_struct;
 816# 79 "include/linux/workqueue.h"
 817struct work_struct {
 818   atomic_long_t data ;
 819   struct list_head entry ;
 820   void (*func)(struct work_struct *work ) ;
 821   struct lockdep_map lockdep_map ;
 822};
 823# 92 "include/linux/workqueue.h"
 824struct delayed_work {
 825   struct work_struct work ;
 826   struct timer_list timer ;
 827};
 828# 25 "include/linux/completion.h"
 829struct completion {
 830   unsigned int done ;
 831   wait_queue_head_t wait ;
 832};
 833# 42 "include/linux/pm.h"
 834struct device;
 835# 50 "include/linux/pm.h"
 836struct pm_message {
 837   int event ;
 838};
 839# 50 "include/linux/pm.h"
 840typedef struct pm_message pm_message_t;
 841# 204 "include/linux/pm.h"
 842struct dev_pm_ops {
 843   int (*prepare)(struct device *dev ) ;
 844   void (*complete)(struct device *dev ) ;
 845   int (*suspend)(struct device *dev ) ;
 846   int (*resume)(struct device *dev ) ;
 847   int (*freeze)(struct device *dev ) ;
 848   int (*thaw)(struct device *dev ) ;
 849   int (*poweroff)(struct device *dev ) ;
 850   int (*restore)(struct device *dev ) ;
 851   int (*suspend_noirq)(struct device *dev ) ;
 852   int (*resume_noirq)(struct device *dev ) ;
 853   int (*freeze_noirq)(struct device *dev ) ;
 854   int (*thaw_noirq)(struct device *dev ) ;
 855   int (*poweroff_noirq)(struct device *dev ) ;
 856   int (*restore_noirq)(struct device *dev ) ;
 857   int (*runtime_suspend)(struct device *dev ) ;
 858   int (*runtime_resume)(struct device *dev ) ;
 859   int (*runtime_idle)(struct device *dev ) ;
 860};
 861# 392 "include/linux/pm.h"
 862enum rpm_status {
 863    RPM_ACTIVE = 0,
 864    RPM_RESUMING = 1,
 865    RPM_SUSPENDED = 2,
 866    RPM_SUSPENDING = 3
 867} ;
 868# 414 "include/linux/pm.h"
 869enum rpm_request {
 870    RPM_REQ_NONE = 0,
 871    RPM_REQ_IDLE = 1,
 872    RPM_REQ_SUSPEND = 2,
 873    RPM_REQ_AUTOSUSPEND = 3,
 874    RPM_REQ_RESUME = 4
 875} ;
 876# 422 "include/linux/pm.h"
 877struct wakeup_source;
 878# 422 "include/linux/pm.h"
 879struct wakeup_source;
 880# 422 "include/linux/pm.h"
 881struct wakeup_source;
 882# 424 "include/linux/pm.h"
 883struct dev_pm_info {
 884   pm_message_t power_state ;
 885   unsigned int can_wakeup : 1 ;
 886   unsigned int async_suspend : 1 ;
 887   bool is_prepared : 1 ;
 888   bool is_suspended : 1 ;
 889   spinlock_t lock ;
 890   struct list_head entry ;
 891   struct completion completion ;
 892   struct wakeup_source *wakeup ;
 893   struct timer_list suspend_timer ;
 894   unsigned long timer_expires ;
 895   struct work_struct work ;
 896   wait_queue_head_t wait_queue ;
 897   atomic_t usage_count ;
 898   atomic_t child_count ;
 899   unsigned int disable_depth : 3 ;
 900   unsigned int ignore_children : 1 ;
 901   unsigned int idle_notification : 1 ;
 902   unsigned int request_pending : 1 ;
 903   unsigned int deferred_resume : 1 ;
 904   unsigned int run_wake : 1 ;
 905   unsigned int runtime_auto : 1 ;
 906   unsigned int no_callbacks : 1 ;
 907   unsigned int irq_safe : 1 ;
 908   unsigned int use_autosuspend : 1 ;
 909   unsigned int timer_autosuspends : 1 ;
 910   enum rpm_request request ;
 911   enum rpm_status runtime_status ;
 912   int runtime_error ;
 913   int autosuspend_delay ;
 914   unsigned long last_busy ;
 915   unsigned long active_jiffies ;
 916   unsigned long suspended_jiffies ;
 917   unsigned long accounting_timestamp ;
 918   void *subsys_data ;
 919};
 920# 475 "include/linux/pm.h"
 921struct dev_power_domain {
 922   struct dev_pm_ops ops ;
 923};
 924# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
 925struct __anonstruct_mm_context_t_111 {
 926   void *ldt ;
 927   int size ;
 928   unsigned short ia32_compat ;
 929   struct mutex lock ;
 930   void *vdso ;
 931};
 932# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
 933typedef struct __anonstruct_mm_context_t_111 mm_context_t;
 934# 8 "include/linux/vmalloc.h"
 935struct vm_area_struct;
 936# 8 "include/linux/vmalloc.h"
 937struct vm_area_struct;
 938# 8 "include/linux/vmalloc.h"
 939struct vm_area_struct;
 940# 964 "include/linux/mmzone.h"
 941struct page;
 942# 10 "include/linux/gfp.h"
 943struct vm_area_struct;
 944# 29 "include/linux/sysctl.h"
 945struct completion;
 946# 72 "include/linux/rcupdate.h"
 947struct rcu_head {
 948   struct rcu_head *next ;
 949   void (*func)(struct rcu_head *head ) ;
 950};
 951# 937 "include/linux/sysctl.h"
 952struct nsproxy;
 953# 937 "include/linux/sysctl.h"
 954struct nsproxy;
 955# 937 "include/linux/sysctl.h"
 956struct nsproxy;
 957# 48 "include/linux/kmod.h"
 958struct cred;
 959# 48 "include/linux/kmod.h"
 960struct cred;
 961# 48 "include/linux/kmod.h"
 962struct cred;
 963# 49 "include/linux/kmod.h"
 964struct file;
 965# 264 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/elf.h"
 966struct task_struct;
 967# 10 "include/linux/elf.h"
 968struct file;
 969# 27 "include/linux/elf.h"
 970typedef __u64 Elf64_Addr;
 971# 28 "include/linux/elf.h"
 972typedef __u16 Elf64_Half;
 973# 32 "include/linux/elf.h"
 974typedef __u32 Elf64_Word;
 975# 33 "include/linux/elf.h"
 976typedef __u64 Elf64_Xword;
 977# 203 "include/linux/elf.h"
 978struct elf64_sym {
 979   Elf64_Word st_name ;
 980   unsigned char st_info ;
 981   unsigned char st_other ;
 982   Elf64_Half st_shndx ;
 983   Elf64_Addr st_value ;
 984   Elf64_Xword st_size ;
 985};
 986# 203 "include/linux/elf.h"
 987typedef struct elf64_sym Elf64_Sym;
 988# 20 "include/linux/kobject_ns.h"
 989struct sock;
 990# 20 "include/linux/kobject_ns.h"
 991struct sock;
 992# 20 "include/linux/kobject_ns.h"
 993struct sock;
 994# 21 "include/linux/kobject_ns.h"
 995struct kobject;
 996# 21 "include/linux/kobject_ns.h"
 997struct kobject;
 998# 21 "include/linux/kobject_ns.h"
 999struct kobject;
1000# 27 "include/linux/kobject_ns.h"
1001enum kobj_ns_type {
1002    KOBJ_NS_TYPE_NONE = 0,
1003    KOBJ_NS_TYPE_NET = 1,
1004    KOBJ_NS_TYPES = 2
1005} ;
1006# 40 "include/linux/kobject_ns.h"
1007struct kobj_ns_type_operations {
1008   enum kobj_ns_type type ;
1009   void *(*grab_current_ns)(void) ;
1010   void const *(*netlink_ns)(struct sock *sk ) ;
1011   void const *(*initial_ns)(void) ;
1012   void (*drop_ns)(void * ) ;
1013};
1014# 22 "include/linux/sysfs.h"
1015struct kobject;
1016# 23 "include/linux/sysfs.h"
1017struct module;
1018# 24 "include/linux/sysfs.h"
1019enum kobj_ns_type;
1020# 26 "include/linux/sysfs.h"
1021struct attribute {
1022   char const *name ;
1023   mode_t mode ;
1024   struct lock_class_key *key ;
1025   struct lock_class_key skey ;
1026};
1027# 56 "include/linux/sysfs.h"
1028struct attribute_group {
1029   char const *name ;
1030   mode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
1031   struct attribute **attrs ;
1032};
1033# 85 "include/linux/sysfs.h"
1034struct file;
1035# 86 "include/linux/sysfs.h"
1036struct vm_area_struct;
1037# 88 "include/linux/sysfs.h"
1038struct bin_attribute {
1039   struct attribute attr ;
1040   size_t size ;
1041   void *private ;
1042   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1043                   loff_t , size_t ) ;
1044   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1045                    loff_t , size_t ) ;
1046   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
1047};
1048# 112 "include/linux/sysfs.h"
1049struct sysfs_ops {
1050   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
1051   ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
1052};
1053# 117 "include/linux/sysfs.h"
1054struct sysfs_dirent;
1055# 117 "include/linux/sysfs.h"
1056struct sysfs_dirent;
1057# 117 "include/linux/sysfs.h"
1058struct sysfs_dirent;
1059# 20 "include/linux/kref.h"
1060struct kref {
1061   atomic_t refcount ;
1062};
1063# 60 "include/linux/kobject.h"
1064struct kset;
1065# 60 "include/linux/kobject.h"
1066struct kset;
1067# 60 "include/linux/kobject.h"
1068struct kobj_type;
1069# 60 "include/linux/kobject.h"
1070struct kobj_type;
1071# 60 "include/linux/kobject.h"
1072struct kobject {
1073   char const *name ;
1074   struct list_head entry ;
1075   struct kobject *parent ;
1076   struct kset *kset ;
1077   struct kobj_type *ktype ;
1078   struct sysfs_dirent *sd ;
1079   struct kref kref ;
1080   unsigned int state_initialized : 1 ;
1081   unsigned int state_in_sysfs : 1 ;
1082   unsigned int state_add_uevent_sent : 1 ;
1083   unsigned int state_remove_uevent_sent : 1 ;
1084   unsigned int uevent_suppress : 1 ;
1085};
1086# 110 "include/linux/kobject.h"
1087struct kobj_type {
1088   void (*release)(struct kobject *kobj ) ;
1089   struct sysfs_ops const *sysfs_ops ;
1090   struct attribute **default_attrs ;
1091   struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject *kobj ) ;
1092   void const *(*namespace)(struct kobject *kobj ) ;
1093};
1094# 118 "include/linux/kobject.h"
1095struct kobj_uevent_env {
1096   char *envp[32] ;
1097   int envp_idx ;
1098   char buf[2048] ;
1099   int buflen ;
1100};
1101# 125 "include/linux/kobject.h"
1102struct kset_uevent_ops {
1103   int (* const filter)(struct kset *kset , struct kobject *kobj ) ;
1104   char const *(* const name)(struct kset *kset , struct kobject *kobj ) ;
1105   int (* const uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
1106};
1107# 142 "include/linux/kobject.h"
1108struct sock;
1109# 161 "include/linux/kobject.h"
1110struct kset {
1111   struct list_head list ;
1112   spinlock_t list_lock ;
1113   struct kobject kobj ;
1114   struct kset_uevent_ops const *uevent_ops ;
1115};
1116# 34 "include/linux/moduleparam.h"
1117struct kernel_param;
1118# 34 "include/linux/moduleparam.h"
1119struct kernel_param;
1120# 34 "include/linux/moduleparam.h"
1121struct kernel_param;
1122# 36 "include/linux/moduleparam.h"
1123struct kernel_param_ops {
1124   int (*set)(char const *val , struct kernel_param const *kp ) ;
1125   int (*get)(char *buffer , struct kernel_param const *kp ) ;
1126   void (*free)(void *arg ) ;
1127};
1128# 48 "include/linux/moduleparam.h"
1129struct kparam_string;
1130# 48 "include/linux/moduleparam.h"
1131struct kparam_string;
1132# 48 "include/linux/moduleparam.h"
1133struct kparam_array;
1134# 48 "include/linux/moduleparam.h"
1135struct kparam_array;
1136# 48 "include/linux/moduleparam.h"
1137union __anonunion____missing_field_name_195 {
1138   void *arg ;
1139   struct kparam_string const *str ;
1140   struct kparam_array const *arr ;
1141};
1142# 48 "include/linux/moduleparam.h"
1143struct kernel_param {
1144   char const *name ;
1145   struct kernel_param_ops const *ops ;
1146   u16 perm ;
1147   u16 flags ;
1148   union __anonunion____missing_field_name_195 __annonCompField31 ;
1149};
1150# 61 "include/linux/moduleparam.h"
1151struct kparam_string {
1152   unsigned int maxlen ;
1153   char *string ;
1154};
1155# 67 "include/linux/moduleparam.h"
1156struct kparam_array {
1157   unsigned int max ;
1158   unsigned int elemsize ;
1159   unsigned int *num ;
1160   struct kernel_param_ops const *ops ;
1161   void *elem ;
1162};
1163# 391 "include/linux/moduleparam.h"
1164struct module;
1165# 26 "include/linux/jump_label.h"
1166struct module;
1167# 61 "include/linux/jump_label.h"
1168struct jump_label_key {
1169   atomic_t enabled ;
1170};
1171# 22 "include/linux/tracepoint.h"
1172struct module;
1173# 23 "include/linux/tracepoint.h"
1174struct tracepoint;
1175# 23 "include/linux/tracepoint.h"
1176struct tracepoint;
1177# 23 "include/linux/tracepoint.h"
1178struct tracepoint;
1179# 25 "include/linux/tracepoint.h"
1180struct tracepoint_func {
1181   void *func ;
1182   void *data ;
1183};
1184# 30 "include/linux/tracepoint.h"
1185struct tracepoint {
1186   char const *name ;
1187   struct jump_label_key key ;
1188   void (*regfunc)(void) ;
1189   void (*unregfunc)(void) ;
1190   struct tracepoint_func *funcs ;
1191};
1192# 8 "include/asm-generic/module.h"
1193struct mod_arch_specific {
1194
1195};
1196# 21 "include/trace/events/module.h"
1197struct module;
1198# 37 "include/linux/module.h"
1199struct kernel_symbol {
1200   unsigned long value ;
1201   char const *name ;
1202};
1203# 49 "include/linux/module.h"
1204struct module;
1205# 51 "include/linux/module.h"
1206struct module_attribute {
1207   struct attribute attr ;
1208   ssize_t (*show)(struct module_attribute * , struct module * , char * ) ;
1209   ssize_t (*store)(struct module_attribute * , struct module * , char const * ,
1210                    size_t count ) ;
1211   void (*setup)(struct module * , char const * ) ;
1212   int (*test)(struct module * ) ;
1213   void (*free)(struct module * ) ;
1214};
1215# 70 "include/linux/module.h"
1216struct module_param_attrs;
1217# 70 "include/linux/module.h"
1218struct module_param_attrs;
1219# 70 "include/linux/module.h"
1220struct module_kobject {
1221   struct kobject kobj ;
1222   struct module *mod ;
1223   struct kobject *drivers_dir ;
1224   struct module_param_attrs *mp ;
1225};
1226# 83 "include/linux/module.h"
1227struct exception_table_entry;
1228# 83 "include/linux/module.h"
1229struct exception_table_entry;
1230# 83 "include/linux/module.h"
1231struct exception_table_entry;
1232# 265 "include/linux/module.h"
1233enum module_state {
1234    MODULE_STATE_LIVE = 0,
1235    MODULE_STATE_COMING = 1,
1236    MODULE_STATE_GOING = 2
1237} ;
1238# 272 "include/linux/module.h"
1239struct module_sect_attrs;
1240# 272 "include/linux/module.h"
1241struct module_sect_attrs;
1242# 272 "include/linux/module.h"
1243struct module_notes_attrs;
1244# 272 "include/linux/module.h"
1245struct module_notes_attrs;
1246# 272 "include/linux/module.h"
1247struct ftrace_event_call;
1248# 272 "include/linux/module.h"
1249struct ftrace_event_call;
1250# 272 "include/linux/module.h"
1251struct module_ref {
1252   unsigned int incs ;
1253   unsigned int decs ;
1254};
1255# 272 "include/linux/module.h"
1256struct module {
1257   enum module_state state ;
1258   struct list_head list ;
1259   char name[64UL - sizeof(unsigned long )] ;
1260   struct module_kobject mkobj ;
1261   struct module_attribute *modinfo_attrs ;
1262   char const *version ;
1263   char const *srcversion ;
1264   struct kobject *holders_dir ;
1265   struct kernel_symbol const *syms ;
1266   unsigned long const *crcs ;
1267   unsigned int num_syms ;
1268   struct kernel_param *kp ;
1269   unsigned int num_kp ;
1270   unsigned int num_gpl_syms ;
1271   struct kernel_symbol const *gpl_syms ;
1272   unsigned long const *gpl_crcs ;
1273   struct kernel_symbol const *unused_syms ;
1274   unsigned long const *unused_crcs ;
1275   unsigned int num_unused_syms ;
1276   unsigned int num_unused_gpl_syms ;
1277   struct kernel_symbol const *unused_gpl_syms ;
1278   unsigned long const *unused_gpl_crcs ;
1279   struct kernel_symbol const *gpl_future_syms ;
1280   unsigned long const *gpl_future_crcs ;
1281   unsigned int num_gpl_future_syms ;
1282   unsigned int num_exentries ;
1283   struct exception_table_entry *extable ;
1284   int (*init)(void) ;
1285   void *module_init ;
1286   void *module_core ;
1287   unsigned int init_size ;
1288   unsigned int core_size ;
1289   unsigned int init_text_size ;
1290   unsigned int core_text_size ;
1291   unsigned int init_ro_size ;
1292   unsigned int core_ro_size ;
1293   struct mod_arch_specific arch ;
1294   unsigned int taints ;
1295   unsigned int num_bugs ;
1296   struct list_head bug_list ;
1297   struct bug_entry *bug_table ;
1298   Elf64_Sym *symtab ;
1299   Elf64_Sym *core_symtab ;
1300   unsigned int num_symtab ;
1301   unsigned int core_num_syms ;
1302   char *strtab ;
1303   char *core_strtab ;
1304   struct module_sect_attrs *sect_attrs ;
1305   struct module_notes_attrs *notes_attrs ;
1306   char *args ;
1307   void *percpu ;
1308   unsigned int percpu_size ;
1309   unsigned int num_tracepoints ;
1310   struct tracepoint * const *tracepoints_ptrs ;
1311   unsigned int num_trace_bprintk_fmt ;
1312   char const **trace_bprintk_fmt_start ;
1313   struct ftrace_event_call **trace_events ;
1314   unsigned int num_trace_events ;
1315   unsigned int num_ftrace_callsites ;
1316   unsigned long *ftrace_callsites ;
1317   struct list_head source_list ;
1318   struct list_head target_list ;
1319   struct task_struct *waiter ;
1320   void (*exit)(void) ;
1321   struct module_ref *refptr ;
1322   ctor_fn_t *ctors ;
1323   unsigned int num_ctors ;
1324};
1325# 12 "include/linux/mod_devicetable.h"
1326typedef unsigned long kernel_ulong_t;
1327# 98 "include/linux/mod_devicetable.h"
1328struct usb_device_id {
1329   __u16 match_flags ;
1330   __u16 idVendor ;
1331   __u16 idProduct ;
1332   __u16 bcdDevice_lo ;
1333   __u16 bcdDevice_hi ;
1334   __u8 bDeviceClass ;
1335   __u8 bDeviceSubClass ;
1336   __u8 bDeviceProtocol ;
1337   __u8 bInterfaceClass ;
1338   __u8 bInterfaceSubClass ;
1339   __u8 bInterfaceProtocol ;
1340   kernel_ulong_t driver_info ;
1341};
1342# 219 "include/linux/mod_devicetable.h"
1343struct of_device_id {
1344   char name[32] ;
1345   char type[32] ;
1346   char compatible[128] ;
1347   void *data ;
1348};
1349# 244 "include/linux/usb/ch9.h"
1350struct usb_device_descriptor {
1351   __u8 bLength ;
1352   __u8 bDescriptorType ;
1353   __le16 bcdUSB ;
1354   __u8 bDeviceClass ;
1355   __u8 bDeviceSubClass ;
1356   __u8 bDeviceProtocol ;
1357   __u8 bMaxPacketSize0 ;
1358   __le16 idVendor ;
1359   __le16 idProduct ;
1360   __le16 bcdDevice ;
1361   __u8 iManufacturer ;
1362   __u8 iProduct ;
1363   __u8 iSerialNumber ;
1364   __u8 bNumConfigurations ;
1365} __attribute__((__packed__)) ;
1366# 300 "include/linux/usb/ch9.h"
1367struct usb_config_descriptor {
1368   __u8 bLength ;
1369   __u8 bDescriptorType ;
1370   __le16 wTotalLength ;
1371   __u8 bNumInterfaces ;
1372   __u8 bConfigurationValue ;
1373   __u8 iConfiguration ;
1374   __u8 bmAttributes ;
1375   __u8 bMaxPower ;
1376} __attribute__((__packed__)) ;
1377# 337 "include/linux/usb/ch9.h"
1378struct usb_interface_descriptor {
1379   __u8 bLength ;
1380   __u8 bDescriptorType ;
1381   __u8 bInterfaceNumber ;
1382   __u8 bAlternateSetting ;
1383   __u8 bNumEndpoints ;
1384   __u8 bInterfaceClass ;
1385   __u8 bInterfaceSubClass ;
1386   __u8 bInterfaceProtocol ;
1387   __u8 iInterface ;
1388} __attribute__((__packed__)) ;
1389# 355 "include/linux/usb/ch9.h"
1390struct usb_endpoint_descriptor {
1391   __u8 bLength ;
1392   __u8 bDescriptorType ;
1393   __u8 bEndpointAddress ;
1394   __u8 bmAttributes ;
1395   __le16 wMaxPacketSize ;
1396   __u8 bInterval ;
1397   __u8 bRefresh ;
1398   __u8 bSynchAddress ;
1399} __attribute__((__packed__)) ;
1400# 576 "include/linux/usb/ch9.h"
1401struct usb_ss_ep_comp_descriptor {
1402   __u8 bLength ;
1403   __u8 bDescriptorType ;
1404   __u8 bMaxBurst ;
1405   __u8 bmAttributes ;
1406   __le16 wBytesPerInterval ;
1407} __attribute__((__packed__)) ;
1408# 637 "include/linux/usb/ch9.h"
1409struct usb_interface_assoc_descriptor {
1410   __u8 bLength ;
1411   __u8 bDescriptorType ;
1412   __u8 bFirstInterface ;
1413   __u8 bInterfaceCount ;
1414   __u8 bFunctionClass ;
1415   __u8 bFunctionSubClass ;
1416   __u8 bFunctionProtocol ;
1417   __u8 iFunction ;
1418} __attribute__((__packed__)) ;
1419# 846 "include/linux/usb/ch9.h"
1420enum usb_device_speed {
1421    USB_SPEED_UNKNOWN = 0,
1422    USB_SPEED_LOW = 1,
1423    USB_SPEED_FULL = 2,
1424    USB_SPEED_HIGH = 3,
1425    USB_SPEED_WIRELESS = 4,
1426    USB_SPEED_SUPER = 5
1427} ;
1428# 854 "include/linux/usb/ch9.h"
1429enum usb_device_state {
1430    USB_STATE_NOTATTACHED = 0,
1431    USB_STATE_ATTACHED = 1,
1432    USB_STATE_POWERED = 2,
1433    USB_STATE_RECONNECTING = 3,
1434    USB_STATE_UNAUTHENTICATED = 4,
1435    USB_STATE_DEFAULT = 5,
1436    USB_STATE_ADDRESS = 6,
1437    USB_STATE_CONFIGURED = 7,
1438    USB_STATE_SUSPENDED = 8
1439} ;
1440# 10 "include/linux/irqreturn.h"
1441enum irqreturn {
1442    IRQ_NONE = 0,
1443    IRQ_HANDLED = 1,
1444    IRQ_WAKE_THREAD = 2
1445} ;
1446# 16 "include/linux/irqreturn.h"
1447typedef enum irqreturn irqreturn_t;
1448# 31 "include/linux/irq.h"
1449struct seq_file;
1450# 12 "include/linux/irqdesc.h"
1451struct proc_dir_entry;
1452# 12 "include/linux/irqdesc.h"
1453struct proc_dir_entry;
1454# 12 "include/linux/irqdesc.h"
1455struct proc_dir_entry;
1456# 39 "include/linux/irqdesc.h"
1457struct irqaction;
1458# 39 "include/linux/irqdesc.h"
1459struct irqaction;
1460# 16 "include/linux/profile.h"
1461struct proc_dir_entry;
1462# 17 "include/linux/profile.h"
1463struct pt_regs;
1464# 65 "include/linux/profile.h"
1465struct task_struct;
1466# 66 "include/linux/profile.h"
1467struct mm_struct;
1468# 88 "include/linux/profile.h"
1469struct pt_regs;
1470# 94 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess.h"
1471struct exception_table_entry {
1472   unsigned long insn ;
1473   unsigned long fixup ;
1474};
1475# 363 "include/linux/irq.h"
1476struct irqaction;
1477# 132 "include/linux/hardirq.h"
1478struct task_struct;
1479# 100 "include/linux/rbtree.h"
1480struct rb_node {
1481   unsigned long rb_parent_color ;
1482   struct rb_node *rb_right ;
1483   struct rb_node *rb_left ;
1484} __attribute__((__aligned__(sizeof(long )))) ;
1485# 110 "include/linux/rbtree.h"
1486struct rb_root {
1487   struct rb_node *rb_node ;
1488};
1489# 8 "include/linux/timerqueue.h"
1490struct timerqueue_node {
1491   struct rb_node node ;
1492   ktime_t expires ;
1493};
1494# 13 "include/linux/timerqueue.h"
1495struct timerqueue_head {
1496   struct rb_root head ;
1497   struct timerqueue_node *next ;
1498};
1499# 27 "include/linux/hrtimer.h"
1500struct hrtimer_clock_base;
1501# 27 "include/linux/hrtimer.h"
1502struct hrtimer_clock_base;
1503# 27 "include/linux/hrtimer.h"
1504struct hrtimer_clock_base;
1505# 28 "include/linux/hrtimer.h"
1506struct hrtimer_cpu_base;
1507# 28 "include/linux/hrtimer.h"
1508struct hrtimer_cpu_base;
1509# 28 "include/linux/hrtimer.h"
1510struct hrtimer_cpu_base;
1511# 44 "include/linux/hrtimer.h"
1512enum hrtimer_restart {
1513    HRTIMER_NORESTART = 0,
1514    HRTIMER_RESTART = 1
1515} ;
1516# 108 "include/linux/hrtimer.h"
1517struct hrtimer {
1518   struct timerqueue_node node ;
1519   ktime_t _softexpires ;
1520   enum hrtimer_restart (*function)(struct hrtimer * ) ;
1521   struct hrtimer_clock_base *base ;
1522   unsigned long state ;
1523   int start_pid ;
1524   void *start_site ;
1525   char start_comm[16] ;
1526};
1527# 145 "include/linux/hrtimer.h"
1528struct hrtimer_clock_base {
1529   struct hrtimer_cpu_base *cpu_base ;
1530   int index ;
1531   clockid_t clockid ;
1532   struct timerqueue_head active ;
1533   ktime_t resolution ;
1534   ktime_t (*get_time)(void) ;
1535   ktime_t softirq_time ;
1536   ktime_t offset ;
1537};
1538# 178 "include/linux/hrtimer.h"
1539struct hrtimer_cpu_base {
1540   raw_spinlock_t lock ;
1541   unsigned long active_bases ;
1542   ktime_t expires_next ;
1543   int hres_active ;
1544   int hang_detected ;
1545   unsigned long nr_events ;
1546   unsigned long nr_retries ;
1547   unsigned long nr_hangs ;
1548   ktime_t max_hang_time ;
1549   struct hrtimer_clock_base clock_base[3] ;
1550};
1551# 9 "include/trace/events/irq.h"
1552struct irqaction;
1553# 106 "include/linux/interrupt.h"
1554struct irqaction {
1555   irqreturn_t (*handler)(int , void * ) ;
1556   unsigned long flags ;
1557   void *dev_id ;
1558   struct irqaction *next ;
1559   int irq ;
1560   irqreturn_t (*thread_fn)(int , void * ) ;
1561   struct task_struct *thread ;
1562   unsigned long thread_flags ;
1563   unsigned long thread_mask ;
1564   char const *name ;
1565   struct proc_dir_entry *dir ;
1566} __attribute__((__aligned__((1) << (12) ))) ;
1567# 172 "include/linux/interrupt.h"
1568struct device;
1569# 682 "include/linux/interrupt.h"
1570struct seq_file;
1571# 19 "include/linux/klist.h"
1572struct klist_node;
1573# 19 "include/linux/klist.h"
1574struct klist_node;
1575# 19 "include/linux/klist.h"
1576struct klist_node;
1577# 39 "include/linux/klist.h"
1578struct klist_node {
1579   void *n_klist ;
1580   struct list_head n_node ;
1581   struct kref n_ref ;
1582};
1583# 4 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
1584struct dma_map_ops;
1585# 4 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
1586struct dma_map_ops;
1587# 4 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
1588struct dev_archdata {
1589   void *acpi_handle ;
1590   struct dma_map_ops *dma_ops ;
1591   void *iommu ;
1592};
1593# 28 "include/linux/device.h"
1594struct device;
1595# 29 "include/linux/device.h"
1596struct device_private;
1597# 29 "include/linux/device.h"
1598struct device_private;
1599# 29 "include/linux/device.h"
1600struct device_private;
1601# 30 "include/linux/device.h"
1602struct device_driver;
1603# 30 "include/linux/device.h"
1604struct device_driver;
1605# 30 "include/linux/device.h"
1606struct device_driver;
1607# 31 "include/linux/device.h"
1608struct driver_private;
1609# 31 "include/linux/device.h"
1610struct driver_private;
1611# 31 "include/linux/device.h"
1612struct driver_private;
1613# 32 "include/linux/device.h"
1614struct class;
1615# 32 "include/linux/device.h"
1616struct class;
1617# 32 "include/linux/device.h"
1618struct class;
1619# 33 "include/linux/device.h"
1620struct subsys_private;
1621# 33 "include/linux/device.h"
1622struct subsys_private;
1623# 33 "include/linux/device.h"
1624struct subsys_private;
1625# 34 "include/linux/device.h"
1626struct bus_type;
1627# 34 "include/linux/device.h"
1628struct bus_type;
1629# 34 "include/linux/device.h"
1630struct bus_type;
1631# 35 "include/linux/device.h"
1632struct device_node;
1633# 35 "include/linux/device.h"
1634struct device_node;
1635# 35 "include/linux/device.h"
1636struct device_node;
1637# 37 "include/linux/device.h"
1638struct bus_attribute {
1639   struct attribute attr ;
1640   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1641   ssize_t (*store)(struct bus_type *bus , char const *buf , size_t count ) ;
1642};
1643# 82 "include/linux/device.h"
1644struct device_attribute;
1645# 82 "include/linux/device.h"
1646struct device_attribute;
1647# 82 "include/linux/device.h"
1648struct driver_attribute;
1649# 82 "include/linux/device.h"
1650struct driver_attribute;
1651# 82 "include/linux/device.h"
1652struct bus_type {
1653   char const *name ;
1654   struct bus_attribute *bus_attrs ;
1655   struct device_attribute *dev_attrs ;
1656   struct driver_attribute *drv_attrs ;
1657   int (*match)(struct device *dev , struct device_driver *drv ) ;
1658   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1659   int (*probe)(struct device *dev ) ;
1660   int (*remove)(struct device *dev ) ;
1661   void (*shutdown)(struct device *dev ) ;
1662   int (*suspend)(struct device *dev , pm_message_t state ) ;
1663   int (*resume)(struct device *dev ) ;
1664   struct dev_pm_ops const *pm ;
1665   struct subsys_private *p ;
1666};
1667# 185 "include/linux/device.h"
1668struct device_driver {
1669   char const *name ;
1670   struct bus_type *bus ;
1671   struct module *owner ;
1672   char const *mod_name ;
1673   bool suppress_bind_attrs ;
1674   struct of_device_id const *of_match_table ;
1675   int (*probe)(struct device *dev ) ;
1676   int (*remove)(struct device *dev ) ;
1677   void (*shutdown)(struct device *dev ) ;
1678   int (*suspend)(struct device *dev , pm_message_t state ) ;
1679   int (*resume)(struct device *dev ) ;
1680   struct attribute_group const **groups ;
1681   struct dev_pm_ops const *pm ;
1682   struct driver_private *p ;
1683};
1684# 222 "include/linux/device.h"
1685struct driver_attribute {
1686   struct attribute attr ;
1687   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1688   ssize_t (*store)(struct device_driver *driver , char const *buf , size_t count ) ;
1689};
1690# 280 "include/linux/device.h"
1691struct class_attribute;
1692# 280 "include/linux/device.h"
1693struct class_attribute;
1694# 280 "include/linux/device.h"
1695struct class {
1696   char const *name ;
1697   struct module *owner ;
1698   struct class_attribute *class_attrs ;
1699   struct device_attribute *dev_attrs ;
1700   struct bin_attribute *dev_bin_attrs ;
1701   struct kobject *dev_kobj ;
1702   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1703   char *(*devnode)(struct device *dev , mode_t *mode ) ;
1704   void (*class_release)(struct class *class ) ;
1705   void (*dev_release)(struct device *dev ) ;
1706   int (*suspend)(struct device *dev , pm_message_t state ) ;
1707   int (*resume)(struct device *dev ) ;
1708   struct kobj_ns_type_operations const *ns_type ;
1709   void const *(*namespace)(struct device *dev ) ;
1710   struct dev_pm_ops const *pm ;
1711   struct subsys_private *p ;
1712};
1713# 306 "include/linux/device.h"
1714struct device_type;
1715# 306 "include/linux/device.h"
1716struct device_type;
1717# 347 "include/linux/device.h"
1718struct class_attribute {
1719   struct attribute attr ;
1720   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1721   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const *buf ,
1722                    size_t count ) ;
1723};
1724# 413 "include/linux/device.h"
1725struct device_type {
1726   char const *name ;
1727   struct attribute_group const **groups ;
1728   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1729   char *(*devnode)(struct device *dev , mode_t *mode ) ;
1730   void (*release)(struct device *dev ) ;
1731   struct dev_pm_ops const *pm ;
1732};
1733# 424 "include/linux/device.h"
1734struct device_attribute {
1735   struct attribute attr ;
1736   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1737   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const *buf ,
1738                    size_t count ) ;
1739};
1740# 484 "include/linux/device.h"
1741struct device_dma_parameters {
1742   unsigned int max_segment_size ;
1743   unsigned long segment_boundary_mask ;
1744};
1745# 551 "include/linux/device.h"
1746struct dma_coherent_mem;
1747# 551 "include/linux/device.h"
1748struct dma_coherent_mem;
1749# 551 "include/linux/device.h"
1750struct device {
1751   struct device *parent ;
1752   struct device_private *p ;
1753   struct kobject kobj ;
1754   char const *init_name ;
1755   struct device_type const *type ;
1756   struct mutex mutex ;
1757   struct bus_type *bus ;
1758   struct device_driver *driver ;
1759   void *platform_data ;
1760   struct dev_pm_info power ;
1761   struct dev_power_domain *pwr_domain ;
1762   int numa_node ;
1763   u64 *dma_mask ;
1764   u64 coherent_dma_mask ;
1765   struct device_dma_parameters *dma_parms ;
1766   struct list_head dma_pools ;
1767   struct dma_coherent_mem *dma_mem ;
1768   struct dev_archdata archdata ;
1769   struct device_node *of_node ;
1770   dev_t devt ;
1771   spinlock_t devres_lock ;
1772   struct list_head devres_head ;
1773   struct klist_node knode_class ;
1774   struct class *class ;
1775   struct attribute_group const **groups ;
1776   void (*release)(struct device *dev ) ;
1777};
1778# 43 "include/linux/pm_wakeup.h"
1779struct wakeup_source {
1780   char *name ;
1781   struct list_head entry ;
1782   spinlock_t lock ;
1783   struct timer_list timer ;
1784   unsigned long timer_expires ;
1785   ktime_t total_time ;
1786   ktime_t max_time ;
1787   ktime_t last_time ;
1788   unsigned long event_count ;
1789   unsigned long active_count ;
1790   unsigned long relax_count ;
1791   unsigned long hit_count ;
1792   unsigned int active : 1 ;
1793};
1794# 15 "include/linux/blk_types.h"
1795struct page;
1796# 16 "include/linux/blk_types.h"
1797struct block_device;
1798# 16 "include/linux/blk_types.h"
1799struct block_device;
1800# 16 "include/linux/blk_types.h"
1801struct block_device;
1802# 33 "include/linux/list_bl.h"
1803struct hlist_bl_node;
1804# 33 "include/linux/list_bl.h"
1805struct hlist_bl_node;
1806# 33 "include/linux/list_bl.h"
1807struct hlist_bl_head {
1808   struct hlist_bl_node *first ;
1809};
1810# 37 "include/linux/list_bl.h"
1811struct hlist_bl_node {
1812   struct hlist_bl_node *next ;
1813   struct hlist_bl_node **pprev ;
1814};
1815# 13 "include/linux/dcache.h"
1816struct nameidata;
1817# 13 "include/linux/dcache.h"
1818struct nameidata;
1819# 13 "include/linux/dcache.h"
1820struct nameidata;
1821# 14 "include/linux/dcache.h"
1822struct path;
1823# 14 "include/linux/dcache.h"
1824struct path;
1825# 14 "include/linux/dcache.h"
1826struct path;
1827# 15 "include/linux/dcache.h"
1828struct vfsmount;
1829# 15 "include/linux/dcache.h"
1830struct vfsmount;
1831# 15 "include/linux/dcache.h"
1832struct vfsmount;
1833# 35 "include/linux/dcache.h"
1834struct qstr {
1835   unsigned int hash ;
1836   unsigned int len ;
1837   unsigned char const *name ;
1838};
1839# 116 "include/linux/dcache.h"
1840struct inode;
1841# 116 "include/linux/dcache.h"
1842struct inode;
1843# 116 "include/linux/dcache.h"
1844struct dentry_operations;
1845# 116 "include/linux/dcache.h"
1846struct dentry_operations;
1847# 116 "include/linux/dcache.h"
1848struct super_block;
1849# 116 "include/linux/dcache.h"
1850struct super_block;
1851# 116 "include/linux/dcache.h"
1852union __anonunion_d_u_206 {
1853   struct list_head d_child ;
1854   struct rcu_head d_rcu ;
1855};
1856# 116 "include/linux/dcache.h"
1857struct dentry {
1858   unsigned int d_flags ;
1859   seqcount_t d_seq ;
1860   struct hlist_bl_node d_hash ;
1861   struct dentry *d_parent ;
1862   struct qstr d_name ;
1863   struct inode *d_inode ;
1864   unsigned char d_iname[32] ;
1865   unsigned int d_count ;
1866   spinlock_t d_lock ;
1867   struct dentry_operations const *d_op ;
1868   struct super_block *d_sb ;
1869   unsigned long d_time ;
1870   void *d_fsdata ;
1871   struct list_head d_lru ;
1872   union __anonunion_d_u_206 d_u ;
1873   struct list_head d_subdirs ;
1874   struct list_head d_alias ;
1875};
1876# 159 "include/linux/dcache.h"
1877struct dentry_operations {
1878   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1879   int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1880   int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1881                    struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1882   int (*d_delete)(struct dentry const * ) ;
1883   void (*d_release)(struct dentry * ) ;
1884   void (*d_iput)(struct dentry * , struct inode * ) ;
1885   char *(*d_dname)(struct dentry * , char * , int ) ;
1886   struct vfsmount *(*d_automount)(struct path * ) ;
1887   int (*d_manage)(struct dentry * , bool ) ;
1888} __attribute__((__aligned__((1) << (6) ))) ;
1889# 4 "include/linux/path.h"
1890struct dentry;
1891# 5 "include/linux/path.h"
1892struct vfsmount;
1893# 7 "include/linux/path.h"
1894struct path {
1895   struct vfsmount *mnt ;
1896   struct dentry *dentry ;
1897};
1898# 57 "include/linux/radix-tree.h"
1899struct radix_tree_node;
1900# 57 "include/linux/radix-tree.h"
1901struct radix_tree_node;
1902# 57 "include/linux/radix-tree.h"
1903struct radix_tree_root {
1904   unsigned int height ;
1905   gfp_t gfp_mask ;
1906   struct radix_tree_node *rnode ;
1907};
1908# 14 "include/linux/prio_tree.h"
1909struct prio_tree_node;
1910# 14 "include/linux/prio_tree.h"
1911struct prio_tree_node;
1912# 14 "include/linux/prio_tree.h"
1913struct raw_prio_tree_node {
1914   struct prio_tree_node *left ;
1915   struct prio_tree_node *right ;
1916   struct prio_tree_node *parent ;
1917};
1918# 20 "include/linux/prio_tree.h"
1919struct prio_tree_node {
1920   struct prio_tree_node *left ;
1921   struct prio_tree_node *right ;
1922   struct prio_tree_node *parent ;
1923   unsigned long start ;
1924   unsigned long last ;
1925};
1926# 28 "include/linux/prio_tree.h"
1927struct prio_tree_root {
1928   struct prio_tree_node *prio_tree_node ;
1929   unsigned short index_bits ;
1930   unsigned short raw ;
1931};
1932# 6 "include/linux/pid.h"
1933enum pid_type {
1934    PIDTYPE_PID = 0,
1935    PIDTYPE_PGID = 1,
1936    PIDTYPE_SID = 2,
1937    PIDTYPE_MAX = 3
1938} ;
1939# 50 "include/linux/pid.h"
1940struct pid_namespace;
1941# 50 "include/linux/pid.h"
1942struct pid_namespace;
1943# 50 "include/linux/pid.h"
1944struct upid {
1945   int nr ;
1946   struct pid_namespace *ns ;
1947   struct hlist_node pid_chain ;
1948};
1949# 57 "include/linux/pid.h"
1950struct pid {
1951   atomic_t count ;
1952   unsigned int level ;
1953   struct hlist_head tasks[3] ;
1954   struct rcu_head rcu ;
1955   struct upid numbers[1] ;
1956};
1957# 69 "include/linux/pid.h"
1958struct pid_link {
1959   struct hlist_node node ;
1960   struct pid *pid ;
1961};
1962# 100 "include/linux/pid.h"
1963struct pid_namespace;
1964# 18 "include/linux/capability.h"
1965struct task_struct;
1966# 94 "include/linux/capability.h"
1967struct kernel_cap_struct {
1968   __u32 cap[2] ;
1969};
1970# 94 "include/linux/capability.h"
1971typedef struct kernel_cap_struct kernel_cap_t;
1972# 376 "include/linux/capability.h"
1973struct dentry;
1974# 377 "include/linux/capability.h"
1975struct user_namespace;
1976# 377 "include/linux/capability.h"
1977struct user_namespace;
1978# 377 "include/linux/capability.h"
1979struct user_namespace;
1980# 16 "include/linux/fiemap.h"
1981struct fiemap_extent {
1982   __u64 fe_logical ;
1983   __u64 fe_physical ;
1984   __u64 fe_length ;
1985   __u64 fe_reserved64[2] ;
1986   __u32 fe_flags ;
1987   __u32 fe_reserved[3] ;
1988};
1989# 399 "include/linux/fs.h"
1990struct export_operations;
1991# 399 "include/linux/fs.h"
1992struct export_operations;
1993# 399 "include/linux/fs.h"
1994struct export_operations;
1995# 401 "include/linux/fs.h"
1996struct iovec;
1997# 401 "include/linux/fs.h"
1998struct iovec;
1999# 401 "include/linux/fs.h"
2000struct iovec;
2001# 402 "include/linux/fs.h"
2002struct nameidata;
2003# 403 "include/linux/fs.h"
2004struct kiocb;
2005# 403 "include/linux/fs.h"
2006struct kiocb;
2007# 403 "include/linux/fs.h"
2008struct kiocb;
2009# 404 "include/linux/fs.h"
2010struct kobject;
2011# 405 "include/linux/fs.h"
2012struct pipe_inode_info;
2013# 405 "include/linux/fs.h"
2014struct pipe_inode_info;
2015# 405 "include/linux/fs.h"
2016struct pipe_inode_info;
2017# 406 "include/linux/fs.h"
2018struct poll_table_struct;
2019# 406 "include/linux/fs.h"
2020struct poll_table_struct;
2021# 406 "include/linux/fs.h"
2022struct poll_table_struct;
2023# 407 "include/linux/fs.h"
2024struct kstatfs;
2025# 407 "include/linux/fs.h"
2026struct kstatfs;
2027# 407 "include/linux/fs.h"
2028struct kstatfs;
2029# 408 "include/linux/fs.h"
2030struct vm_area_struct;
2031# 409 "include/linux/fs.h"
2032struct vfsmount;
2033# 410 "include/linux/fs.h"
2034struct cred;
2035# 460 "include/linux/fs.h"
2036struct iattr {
2037   unsigned int ia_valid ;
2038   umode_t ia_mode ;
2039   uid_t ia_uid ;
2040   gid_t ia_gid ;
2041   loff_t ia_size ;
2042   struct timespec ia_atime ;
2043   struct timespec ia_mtime ;
2044   struct timespec ia_ctime ;
2045   struct file *ia_file ;
2046};
2047# 129 "include/linux/quota.h"
2048struct if_dqinfo {
2049   __u64 dqi_bgrace ;
2050   __u64 dqi_igrace ;
2051   __u32 dqi_flags ;
2052   __u32 dqi_valid ;
2053};
2054# 50 "include/linux/dqblk_xfs.h"
2055struct fs_disk_quota {
2056   __s8 d_version ;
2057   __s8 d_flags ;
2058   __u16 d_fieldmask ;
2059   __u32 d_id ;
2060   __u64 d_blk_hardlimit ;
2061   __u64 d_blk_softlimit ;
2062   __u64 d_ino_hardlimit ;
2063   __u64 d_ino_softlimit ;
2064   __u64 d_bcount ;
2065   __u64 d_icount ;
2066   __s32 d_itimer ;
2067   __s32 d_btimer ;
2068   __u16 d_iwarns ;
2069   __u16 d_bwarns ;
2070   __s32 d_padding2 ;
2071   __u64 d_rtb_hardlimit ;
2072   __u64 d_rtb_softlimit ;
2073   __u64 d_rtbcount ;
2074   __s32 d_rtbtimer ;
2075   __u16 d_rtbwarns ;
2076   __s16 d_padding3 ;
2077   char d_padding4[8] ;
2078};
2079# 146 "include/linux/dqblk_xfs.h"
2080struct fs_qfilestat {
2081   __u64 qfs_ino ;
2082   __u64 qfs_nblks ;
2083   __u32 qfs_nextents ;
2084};
2085# 146 "include/linux/dqblk_xfs.h"
2086typedef struct fs_qfilestat fs_qfilestat_t;
2087# 152 "include/linux/dqblk_xfs.h"
2088struct fs_quota_stat {
2089   __s8 qs_version ;
2090   __u16 qs_flags ;
2091   __s8 qs_pad ;
2092   fs_qfilestat_t qs_uquota ;
2093   fs_qfilestat_t qs_gquota ;
2094   __u32 qs_incoredqs ;
2095   __s32 qs_btimelimit ;
2096   __s32 qs_itimelimit ;
2097   __s32 qs_rtbtimelimit ;
2098   __u16 qs_bwarnlimit ;
2099   __u16 qs_iwarnlimit ;
2100};
2101# 17 "include/linux/dqblk_qtree.h"
2102struct dquot;
2103# 17 "include/linux/dqblk_qtree.h"
2104struct dquot;
2105# 17 "include/linux/dqblk_qtree.h"
2106struct dquot;
2107# 185 "include/linux/quota.h"
2108typedef __kernel_uid32_t qid_t;
2109# 186 "include/linux/quota.h"
2110typedef long long qsize_t;
2111# 200 "include/linux/quota.h"
2112struct mem_dqblk {
2113   qsize_t dqb_bhardlimit ;
2114   qsize_t dqb_bsoftlimit ;
2115   qsize_t dqb_curspace ;
2116   qsize_t dqb_rsvspace ;
2117   qsize_t dqb_ihardlimit ;
2118   qsize_t dqb_isoftlimit ;
2119   qsize_t dqb_curinodes ;
2120   time_t dqb_btime ;
2121   time_t dqb_itime ;
2122};
2123# 215 "include/linux/quota.h"
2124struct quota_format_type;
2125# 215 "include/linux/quota.h"
2126struct quota_format_type;
2127# 215 "include/linux/quota.h"
2128struct quota_format_type;
2129# 217 "include/linux/quota.h"
2130struct mem_dqinfo {
2131   struct quota_format_type *dqi_format ;
2132   int dqi_fmt_id ;
2133   struct list_head dqi_dirty_list ;
2134   unsigned long dqi_flags ;
2135   unsigned int dqi_bgrace ;
2136   unsigned int dqi_igrace ;
2137   qsize_t dqi_maxblimit ;
2138   qsize_t dqi_maxilimit ;
2139   void *dqi_priv ;
2140};
2141# 230 "include/linux/quota.h"
2142struct super_block;
2143# 284 "include/linux/quota.h"
2144struct dquot {
2145   struct hlist_node dq_hash ;
2146   struct list_head dq_inuse ;
2147   struct list_head dq_free ;
2148   struct list_head dq_dirty ;
2149   struct mutex dq_lock ;
2150   atomic_t dq_count ;
2151   wait_queue_head_t dq_wait_unused ;
2152   struct super_block *dq_sb ;
2153   unsigned int dq_id ;
2154   loff_t dq_off ;
2155   unsigned long dq_flags ;
2156   short dq_type ;
2157   struct mem_dqblk dq_dqb ;
2158};
2159# 301 "include/linux/quota.h"
2160struct quota_format_ops {
2161   int (*check_quota_file)(struct super_block *sb , int type ) ;
2162   int (*read_file_info)(struct super_block *sb , int type ) ;
2163   int (*write_file_info)(struct super_block *sb , int type ) ;
2164   int (*free_file_info)(struct super_block *sb , int type ) ;
2165   int (*read_dqblk)(struct dquot *dquot ) ;
2166   int (*commit_dqblk)(struct dquot *dquot ) ;
2167   int (*release_dqblk)(struct dquot *dquot ) ;
2168};
2169# 312 "include/linux/quota.h"
2170struct dquot_operations {
2171   int (*write_dquot)(struct dquot * ) ;
2172   struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
2173   void (*destroy_dquot)(struct dquot * ) ;
2174   int (*acquire_dquot)(struct dquot * ) ;
2175   int (*release_dquot)(struct dquot * ) ;
2176   int (*mark_dirty)(struct dquot * ) ;
2177   int (*write_info)(struct super_block * , int ) ;
2178   qsize_t *(*get_reserved_space)(struct inode * ) ;
2179};
2180# 325 "include/linux/quota.h"
2181struct path;
2182# 328 "include/linux/quota.h"
2183struct quotactl_ops {
2184   int (*quota_on)(struct super_block * , int , int , struct path * ) ;
2185   int (*quota_on_meta)(struct super_block * , int , int ) ;
2186   int (*quota_off)(struct super_block * , int ) ;
2187   int (*quota_sync)(struct super_block * , int , int ) ;
2188   int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
2189   int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
2190   int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2191   int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
2192   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
2193   int (*set_xstate)(struct super_block * , unsigned int , int ) ;
2194};
2195# 341 "include/linux/quota.h"
2196struct quota_format_type {
2197   int qf_fmt_id ;
2198   struct quota_format_ops const *qf_ops ;
2199   struct module *qf_owner ;
2200   struct quota_format_type *qf_next ;
2201};
2202# 395 "include/linux/quota.h"
2203struct quota_info {
2204   unsigned int flags ;
2205   struct mutex dqio_mutex ;
2206   struct mutex dqonoff_mutex ;
2207   struct rw_semaphore dqptr_sem ;
2208   struct inode *files[2] ;
2209   struct mem_dqinfo info[2] ;
2210   struct quota_format_ops const *ops[2] ;
2211};
2212# 523 "include/linux/fs.h"
2213struct page;
2214# 524 "include/linux/fs.h"
2215struct address_space;
2216# 524 "include/linux/fs.h"
2217struct address_space;
2218# 524 "include/linux/fs.h"
2219struct address_space;
2220# 525 "include/linux/fs.h"
2221struct writeback_control;
2222# 525 "include/linux/fs.h"
2223struct writeback_control;
2224# 525 "include/linux/fs.h"
2225struct writeback_control;
2226# 568 "include/linux/fs.h"
2227union __anonunion_arg_214 {
2228   char *buf ;
2229   void *data ;
2230};
2231# 568 "include/linux/fs.h"
2232struct __anonstruct_read_descriptor_t_213 {
2233   size_t written ;
2234   size_t count ;
2235   union __anonunion_arg_214 arg ;
2236   int error ;
2237};
2238# 568 "include/linux/fs.h"
2239typedef struct __anonstruct_read_descriptor_t_213 read_descriptor_t;
2240# 581 "include/linux/fs.h"
2241struct address_space_operations {
2242   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
2243   int (*readpage)(struct file * , struct page * ) ;
2244   int (*writepages)(struct address_space * , struct writeback_control * ) ;
2245   int (*set_page_dirty)(struct page *page ) ;
2246   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
2247                    unsigned int nr_pages ) ;
2248   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
2249                      unsigned int len , unsigned int flags , struct page **pagep ,
2250                      void **fsdata ) ;
2251   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
2252                    unsigned int copied , struct page *page , void *fsdata ) ;
2253   sector_t (*bmap)(struct address_space * , sector_t ) ;
2254   void (*invalidatepage)(struct page * , unsigned long ) ;
2255   int (*releasepage)(struct page * , gfp_t ) ;
2256   void (*freepage)(struct page * ) ;
2257   ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const *iov , loff_t offset ,
2258                        unsigned long nr_segs ) ;
2259   int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2260   int (*migratepage)(struct address_space * , struct page * , struct page * ) ;
2261   int (*launder_page)(struct page * ) ;
2262   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2263   int (*error_remove_page)(struct address_space * , struct page * ) ;
2264};
2265# 633 "include/linux/fs.h"
2266struct backing_dev_info;
2267# 633 "include/linux/fs.h"
2268struct backing_dev_info;
2269# 633 "include/linux/fs.h"
2270struct backing_dev_info;
2271# 634 "include/linux/fs.h"
2272struct address_space {
2273   struct inode *host ;
2274   struct radix_tree_root page_tree ;
2275   spinlock_t tree_lock ;
2276   unsigned int i_mmap_writable ;
2277   struct prio_tree_root i_mmap ;
2278   struct list_head i_mmap_nonlinear ;
2279   struct mutex i_mmap_mutex ;
2280   unsigned long nrpages ;
2281   unsigned long writeback_index ;
2282   struct address_space_operations const *a_ops ;
2283   unsigned long flags ;
2284   struct backing_dev_info *backing_dev_info ;
2285   spinlock_t private_lock ;
2286   struct list_head private_list ;
2287   struct address_space *assoc_mapping ;
2288} __attribute__((__aligned__(sizeof(long )))) ;
2289# 658 "include/linux/fs.h"
2290struct hd_struct;
2291# 658 "include/linux/fs.h"
2292struct hd_struct;
2293# 658 "include/linux/fs.h"
2294struct gendisk;
2295# 658 "include/linux/fs.h"
2296struct gendisk;
2297# 658 "include/linux/fs.h"
2298struct block_device {
2299   dev_t bd_dev ;
2300   int bd_openers ;
2301   struct inode *bd_inode ;
2302   struct super_block *bd_super ;
2303   struct mutex bd_mutex ;
2304   struct list_head bd_inodes ;
2305   void *bd_claiming ;
2306   void *bd_holder ;
2307   int bd_holders ;
2308   bool bd_write_holder ;
2309   struct list_head bd_holder_disks ;
2310   struct block_device *bd_contains ;
2311   unsigned int bd_block_size ;
2312   struct hd_struct *bd_part ;
2313   unsigned int bd_part_count ;
2314   int bd_invalidated ;
2315   struct gendisk *bd_disk ;
2316   struct list_head bd_list ;
2317   unsigned long bd_private ;
2318   int bd_fsfreeze_count ;
2319   struct mutex bd_fsfreeze_mutex ;
2320};
2321# 735 "include/linux/fs.h"
2322struct posix_acl;
2323# 735 "include/linux/fs.h"
2324struct posix_acl;
2325# 735 "include/linux/fs.h"
2326struct posix_acl;
2327# 738 "include/linux/fs.h"
2328struct inode_operations;
2329# 738 "include/linux/fs.h"
2330struct inode_operations;
2331# 738 "include/linux/fs.h"
2332union __anonunion____missing_field_name_215 {
2333   struct list_head i_dentry ;
2334   struct rcu_head i_rcu ;
2335};
2336# 738 "include/linux/fs.h"
2337struct file_operations;
2338# 738 "include/linux/fs.h"
2339struct file_operations;
2340# 738 "include/linux/fs.h"
2341struct file_lock;
2342# 738 "include/linux/fs.h"
2343struct file_lock;
2344# 738 "include/linux/fs.h"
2345struct cdev;
2346# 738 "include/linux/fs.h"
2347struct cdev;
2348# 738 "include/linux/fs.h"
2349union __anonunion____missing_field_name_216 {
2350   struct pipe_inode_info *i_pipe ;
2351   struct block_device *i_bdev ;
2352   struct cdev *i_cdev ;
2353};
2354# 738 "include/linux/fs.h"
2355struct inode {
2356   umode_t i_mode ;
2357   uid_t i_uid ;
2358   gid_t i_gid ;
2359   struct inode_operations const *i_op ;
2360   struct super_block *i_sb ;
2361   spinlock_t i_lock ;
2362   unsigned int i_flags ;
2363   unsigned long i_state ;
2364   void *i_security ;
2365   struct mutex i_mutex ;
2366   unsigned long dirtied_when ;
2367   struct hlist_node i_hash ;
2368   struct list_head i_wb_list ;
2369   struct list_head i_lru ;
2370   struct list_head i_sb_list ;
2371   union __anonunion____missing_field_name_215 __annonCompField32 ;
2372   unsigned long i_ino ;
2373   atomic_t i_count ;
2374   unsigned int i_nlink ;
2375   dev_t i_rdev ;
2376   unsigned int i_blkbits ;
2377   u64 i_version ;
2378   loff_t i_size ;
2379   struct timespec i_atime ;
2380   struct timespec i_mtime ;
2381   struct timespec i_ctime ;
2382   blkcnt_t i_blocks ;
2383   unsigned short i_bytes ;
2384   struct rw_semaphore i_alloc_sem ;
2385   struct file_operations const *i_fop ;
2386   struct file_lock *i_flock ;
2387   struct address_space *i_mapping ;
2388   struct address_space i_data ;
2389   struct dquot *i_dquot[2] ;
2390   struct list_head i_devices ;
2391   union __anonunion____missing_field_name_216 __annonCompField33 ;
2392   __u32 i_generation ;
2393   __u32 i_fsnotify_mask ;
2394   struct hlist_head i_fsnotify_marks ;
2395   atomic_t i_readcount ;
2396   atomic_t i_writecount ;
2397   struct posix_acl *i_acl ;
2398   struct posix_acl *i_default_acl ;
2399   void *i_private ;
2400};
2401# 903 "include/linux/fs.h"
2402struct fown_struct {
2403   rwlock_t lock ;
2404   struct pid *pid ;
2405   enum pid_type pid_type ;
2406   uid_t uid ;
2407   uid_t euid ;
2408   int signum ;
2409};
2410# 914 "include/linux/fs.h"
2411struct file_ra_state {
2412   unsigned long start ;
2413   unsigned int size ;
2414   unsigned int async_size ;
2415   unsigned int ra_pages ;
2416   unsigned int mmap_miss ;
2417   loff_t prev_pos ;
2418};
2419# 937 "include/linux/fs.h"
2420union __anonunion_f_u_217 {
2421   struct list_head fu_list ;
2422   struct rcu_head fu_rcuhead ;
2423};
2424# 937 "include/linux/fs.h"
2425struct file {
2426   union __anonunion_f_u_217 f_u ;
2427   struct path f_path ;
2428   struct file_operations const *f_op ;
2429   spinlock_t f_lock ;
2430   int f_sb_list_cpu ;
2431   atomic_long_t f_count ;
2432   unsigned int f_flags ;
2433   fmode_t f_mode ;
2434   loff_t f_pos ;
2435   struct fown_struct f_owner ;
2436   struct cred const *f_cred ;
2437   struct file_ra_state f_ra ;
2438   u64 f_version ;
2439   void *f_security ;
2440   void *private_data ;
2441   struct list_head f_ep_links ;
2442   struct address_space *f_mapping ;
2443   unsigned long f_mnt_write_state ;
2444};
2445# 1064 "include/linux/fs.h"
2446struct files_struct;
2447# 1064 "include/linux/fs.h"
2448struct files_struct;
2449# 1064 "include/linux/fs.h"
2450typedef struct files_struct *fl_owner_t;
2451# 1066 "include/linux/fs.h"
2452struct file_lock_operations {
2453   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
2454   void (*fl_release_private)(struct file_lock * ) ;
2455};
2456# 1071 "include/linux/fs.h"
2457struct lock_manager_operations {
2458   int (*fl_compare_owner)(struct file_lock * , struct file_lock * ) ;
2459   void (*fl_notify)(struct file_lock * ) ;
2460   int (*fl_grant)(struct file_lock * , struct file_lock * , int ) ;
2461   void (*fl_release_private)(struct file_lock * ) ;
2462   void (*fl_break)(struct file_lock * ) ;
2463   int (*fl_change)(struct file_lock ** , int ) ;
2464};
2465# 8 "include/linux/nfs_fs_i.h"
2466struct nlm_lockowner;
2467# 8 "include/linux/nfs_fs_i.h"
2468struct nlm_lockowner;
2469# 8 "include/linux/nfs_fs_i.h"
2470struct nlm_lockowner;
2471# 13 "include/linux/nfs_fs_i.h"
2472struct nfs_lock_info {
2473   u32 state ;
2474   struct nlm_lockowner *owner ;
2475   struct list_head list ;
2476};
2477# 19 "include/linux/nfs_fs_i.h"
2478struct nfs4_lock_state;
2479# 19 "include/linux/nfs_fs_i.h"
2480struct nfs4_lock_state;
2481# 19 "include/linux/nfs_fs_i.h"
2482struct nfs4_lock_state;
2483# 20 "include/linux/nfs_fs_i.h"
2484struct nfs4_lock_info {
2485   struct nfs4_lock_state *owner ;
2486};
2487# 1091 "include/linux/fs.h"
2488struct fasync_struct;
2489# 1091 "include/linux/fs.h"
2490struct fasync_struct;
2491# 1091 "include/linux/fs.h"
2492struct __anonstruct_afs_219 {
2493   struct list_head link ;
2494   int state ;
2495};
2496# 1091 "include/linux/fs.h"
2497union __anonunion_fl_u_218 {
2498   struct nfs_lock_info nfs_fl ;
2499   struct nfs4_lock_info nfs4_fl ;
2500   struct __anonstruct_afs_219 afs ;
2501};
2502# 1091 "include/linux/fs.h"
2503struct file_lock {
2504   struct file_lock *fl_next ;
2505   struct list_head fl_link ;
2506   struct list_head fl_block ;
2507   fl_owner_t fl_owner ;
2508   unsigned char fl_flags ;
2509   unsigned char fl_type ;
2510   unsigned int fl_pid ;
2511   struct pid *fl_nspid ;
2512   wait_queue_head_t fl_wait ;
2513   struct file *fl_file ;
2514   loff_t fl_start ;
2515   loff_t fl_end ;
2516   struct fasync_struct *fl_fasync ;
2517   unsigned long fl_break_time ;
2518   struct file_lock_operations const *fl_ops ;
2519   struct lock_manager_operations const *fl_lmops ;
2520   union __anonunion_fl_u_218 fl_u ;
2521};
2522# 1324 "include/linux/fs.h"
2523struct fasync_struct {
2524   spinlock_t fa_lock ;
2525   int magic ;
2526   int fa_fd ;
2527   struct fasync_struct *fa_next ;
2528   struct file *fa_file ;
2529   struct rcu_head fa_rcu ;
2530};
2531# 1364 "include/linux/fs.h"
2532struct file_system_type;
2533# 1364 "include/linux/fs.h"
2534struct file_system_type;
2535# 1364 "include/linux/fs.h"
2536struct super_operations;
2537# 1364 "include/linux/fs.h"
2538struct super_operations;
2539# 1364 "include/linux/fs.h"
2540struct xattr_handler;
2541# 1364 "include/linux/fs.h"
2542struct xattr_handler;
2543# 1364 "include/linux/fs.h"
2544struct mtd_info;
2545# 1364 "include/linux/fs.h"
2546struct mtd_info;
2547# 1364 "include/linux/fs.h"
2548struct super_block {
2549   struct list_head s_list ;
2550   dev_t s_dev ;
2551   unsigned char s_dirt ;
2552   unsigned char s_blocksize_bits ;
2553   unsigned long s_blocksize ;
2554   loff_t s_maxbytes ;
2555   struct file_system_type *s_type ;
2556   struct super_operations const *s_op ;
2557   struct dquot_operations const *dq_op ;
2558   struct quotactl_ops const *s_qcop ;
2559   struct export_operations const *s_export_op ;
2560   unsigned long s_flags ;
2561   unsigned long s_magic ;
2562   struct dentry *s_root ;
2563   struct rw_semaphore s_umount ;
2564   struct mutex s_lock ;
2565   int s_count ;
2566   atomic_t s_active ;
2567   void *s_security ;
2568   struct xattr_handler const **s_xattr ;
2569   struct list_head s_inodes ;
2570   struct hlist_bl_head s_anon ;
2571   struct list_head *s_files ;
2572   struct list_head s_dentry_lru ;
2573   int s_nr_dentry_unused ;
2574   struct block_device *s_bdev ;
2575   struct backing_dev_info *s_bdi ;
2576   struct mtd_info *s_mtd ;
2577   struct list_head s_instances ;
2578   struct quota_info s_dquot ;
2579   int s_frozen ;
2580   wait_queue_head_t s_wait_unfrozen ;
2581   char s_id[32] ;
2582   u8 s_uuid[16] ;
2583   void *s_fs_info ;
2584   fmode_t s_mode ;
2585   u32 s_time_gran ;
2586   struct mutex s_vfs_rename_mutex ;
2587   char *s_subtype ;
2588   char *s_options ;
2589   struct dentry_operations const *s_d_op ;
2590   int cleancache_poolid ;
2591};
2592# 1499 "include/linux/fs.h"
2593struct fiemap_extent_info {
2594   unsigned int fi_flags ;
2595   unsigned int fi_extents_mapped ;
2596   unsigned int fi_extents_max ;
2597   struct fiemap_extent *fi_extents_start ;
2598};
2599# 1546 "include/linux/fs.h"
2600struct file_operations {
2601   struct module *owner ;
2602   loff_t (*llseek)(struct file * , loff_t , int ) ;
2603   ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
2604   ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
2605   ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
2606                       loff_t ) ;
2607   ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
2608                        loff_t ) ;
2609   int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
2610                                                   loff_t , u64 , unsigned int ) ) ;
2611   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
2612   long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
2613   long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
2614   int (*mmap)(struct file * , struct vm_area_struct * ) ;
2615   int (*open)(struct inode * , struct file * ) ;
2616   int (*flush)(struct file * , fl_owner_t id ) ;
2617   int (*release)(struct inode * , struct file * ) ;
2618   int (*fsync)(struct file * , int datasync ) ;
2619   int (*aio_fsync)(struct kiocb * , int datasync ) ;
2620   int (*fasync)(int , struct file * , int ) ;
2621   int (*lock)(struct file * , int , struct file_lock * ) ;
2622   ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
2623                       int ) ;
2624   unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
2625                                      unsigned long , unsigned long ) ;
2626   int (*check_flags)(int ) ;
2627   int (*flock)(struct file * , int , struct file_lock * ) ;
2628   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
2629                           unsigned int ) ;
2630   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
2631                          unsigned int ) ;
2632   int (*setlease)(struct file * , long , struct file_lock ** ) ;
2633   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
2634};
2635# 1578 "include/linux/fs.h"
2636struct inode_operations {
2637   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
2638   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
2639   int (*permission)(struct inode * , int , unsigned int ) ;
2640   int (*check_acl)(struct inode * , int , unsigned int ) ;
2641   int (*readlink)(struct dentry * , char * , int ) ;
2642   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
2643   int (*create)(struct inode * , struct dentry * , int , struct nameidata * ) ;
2644   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
2645   int (*unlink)(struct inode * , struct dentry * ) ;
2646   int (*symlink)(struct inode * , struct dentry * , char const * ) ;
2647   int (*mkdir)(struct inode * , struct dentry * , int ) ;
2648   int (*rmdir)(struct inode * , struct dentry * ) ;
2649   int (*mknod)(struct inode * , struct dentry * , int , dev_t ) ;
2650   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
2651   void (*truncate)(struct inode * ) ;
2652   int (*setattr)(struct dentry * , struct iattr * ) ;
2653   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
2654   int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
2655   ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
2656   ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
2657   int (*removexattr)(struct dentry * , char const * ) ;
2658   void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
2659   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
2660} __attribute__((__aligned__((1) << (6) ))) ;
2661# 1608 "include/linux/fs.h"
2662struct seq_file;
2663# 1622 "include/linux/fs.h"
2664struct super_operations {
2665   struct inode *(*alloc_inode)(struct super_block *sb ) ;
2666   void (*destroy_inode)(struct inode * ) ;
2667   void (*dirty_inode)(struct inode * , int flags ) ;
2668   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
2669   int (*drop_inode)(struct inode * ) ;
2670   void (*evict_inode)(struct inode * ) ;
2671   void (*put_super)(struct super_block * ) ;
2672   void (*write_super)(struct super_block * ) ;
2673   int (*sync_fs)(struct super_block *sb , int wait ) ;
2674   int (*freeze_fs)(struct super_block * ) ;
2675   int (*unfreeze_fs)(struct super_block * ) ;
2676   int (*statfs)(struct dentry * , struct kstatfs * ) ;
2677   int (*remount_fs)(struct super_block * , int * , char * ) ;
2678   void (*umount_begin)(struct super_block * ) ;
2679   int (*show_options)(struct seq_file * , struct vfsmount * ) ;
2680   int (*show_devname)(struct seq_file * , struct vfsmount * ) ;
2681   int (*show_path)(struct seq_file * , struct vfsmount * ) ;
2682   int (*show_stats)(struct seq_file * , struct vfsmount * ) ;
2683   ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
2684   ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
2685                          loff_t ) ;
2686   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
2687};
2688# 1802 "include/linux/fs.h"
2689struct file_system_type {
2690   char const *name ;
2691   int fs_flags ;
2692   struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
2693   void (*kill_sb)(struct super_block * ) ;
2694   struct module *owner ;
2695   struct file_system_type *next ;
2696   struct list_head fs_supers ;
2697   struct lock_class_key s_lock_key ;
2698   struct lock_class_key s_umount_key ;
2699   struct lock_class_key s_vfs_rename_key ;
2700   struct lock_class_key i_lock_key ;
2701   struct lock_class_key i_mutex_key ;
2702   struct lock_class_key i_mutex_dir_key ;
2703   struct lock_class_key i_alloc_sem_key ;
2704};
2705# 23 "include/linux/mm_types.h"
2706struct address_space;
2707# 34 "include/linux/mm_types.h"
2708struct __anonstruct____missing_field_name_223 {
2709   u16 inuse ;
2710   u16 objects ;
2711};
2712# 34 "include/linux/mm_types.h"
2713union __anonunion____missing_field_name_222 {
2714   atomic_t _mapcount ;
2715   struct __anonstruct____missing_field_name_223 __annonCompField34 ;
2716};
2717# 34 "include/linux/mm_types.h"
2718struct __anonstruct____missing_field_name_225 {
2719   unsigned long private ;
2720   struct address_space *mapping ;
2721};
2722# 34 "include/linux/mm_types.h"
2723union __anonunion____missing_field_name_224 {
2724   struct __anonstruct____missing_field_name_225 __annonCompField36 ;
2725   struct kmem_cache *slab ;
2726   struct page *first_page ;
2727};
2728# 34 "include/linux/mm_types.h"
2729union __anonunion____missing_field_name_226 {
2730   unsigned long index ;
2731   void *freelist ;
2732};
2733# 34 "include/linux/mm_types.h"
2734struct page {
2735   unsigned long flags ;
2736   atomic_t _count ;
2737   union __anonunion____missing_field_name_222 __annonCompField35 ;
2738   union __anonunion____missing_field_name_224 __annonCompField37 ;
2739   union __anonunion____missing_field_name_226 __annonCompField38 ;
2740   struct list_head lru ;
2741};
2742# 132 "include/linux/mm_types.h"
2743struct __anonstruct_vm_set_228 {
2744   struct list_head list ;
2745   void *parent ;
2746   struct vm_area_struct *head ;
2747};
2748# 132 "include/linux/mm_types.h"
2749union __anonunion_shared_227 {
2750   struct __anonstruct_vm_set_228 vm_set ;
2751   struct raw_prio_tree_node prio_tree_node ;
2752};
2753# 132 "include/linux/mm_types.h"
2754struct anon_vma;
2755# 132 "include/linux/mm_types.h"
2756struct anon_vma;
2757# 132 "include/linux/mm_types.h"
2758struct vm_operations_struct;
2759# 132 "include/linux/mm_types.h"
2760struct vm_operations_struct;
2761# 132 "include/linux/mm_types.h"
2762struct mempolicy;
2763# 132 "include/linux/mm_types.h"
2764struct mempolicy;
2765# 132 "include/linux/mm_types.h"
2766struct vm_area_struct {
2767   struct mm_struct *vm_mm ;
2768   unsigned long vm_start ;
2769   unsigned long vm_end ;
2770   struct vm_area_struct *vm_next ;
2771   struct vm_area_struct *vm_prev ;
2772   pgprot_t vm_page_prot ;
2773   unsigned long vm_flags ;
2774   struct rb_node vm_rb ;
2775   union __anonunion_shared_227 shared ;
2776   struct list_head anon_vma_chain ;
2777   struct anon_vma *anon_vma ;
2778   struct vm_operations_struct const *vm_ops ;
2779   unsigned long vm_pgoff ;
2780   struct file *vm_file ;
2781   void *vm_private_data ;
2782   struct mempolicy *vm_policy ;
2783};
2784# 189 "include/linux/mm_types.h"
2785struct core_thread {
2786   struct task_struct *task ;
2787   struct core_thread *next ;
2788};
2789# 194 "include/linux/mm_types.h"
2790struct core_state {
2791   atomic_t nr_threads ;
2792   struct core_thread dumper ;
2793   struct completion startup ;
2794};
2795# 216 "include/linux/mm_types.h"
2796struct mm_rss_stat {
2797   atomic_long_t count[3] ;
2798};
2799# 220 "include/linux/mm_types.h"
2800struct linux_binfmt;
2801# 220 "include/linux/mm_types.h"
2802struct linux_binfmt;
2803# 220 "include/linux/mm_types.h"
2804struct mmu_notifier_mm;
2805# 220 "include/linux/mm_types.h"
2806struct mmu_notifier_mm;
2807# 220 "include/linux/mm_types.h"
2808struct mm_struct {
2809   struct vm_area_struct *mmap ;
2810   struct rb_root mm_rb ;
2811   struct vm_area_struct *mmap_cache ;
2812   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
2813                                      unsigned long pgoff , unsigned long flags ) ;
2814   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
2815   unsigned long mmap_base ;
2816   unsigned long task_size ;
2817   unsigned long cached_hole_size ;
2818   unsigned long free_area_cache ;
2819   pgd_t *pgd ;
2820   atomic_t mm_users ;
2821   atomic_t mm_count ;
2822   int map_count ;
2823   spinlock_t page_table_lock ;
2824   struct rw_semaphore mmap_sem ;
2825   struct list_head mmlist ;
2826   unsigned long hiwater_rss ;
2827   unsigned long hiwater_vm ;
2828   unsigned long total_vm ;
2829   unsigned long locked_vm ;
2830   unsigned long shared_vm ;
2831   unsigned long exec_vm ;
2832   unsigned long stack_vm ;
2833   unsigned long reserved_vm ;
2834   unsigned long def_flags ;
2835   unsigned long nr_ptes ;
2836   unsigned long start_code ;
2837   unsigned long end_code ;
2838   unsigned long start_data ;
2839   unsigned long end_data ;
2840   unsigned long start_brk ;
2841   unsigned long brk ;
2842   unsigned long start_stack ;
2843   unsigned long arg_start ;
2844   unsigned long arg_end ;
2845   unsigned long env_start ;
2846   unsigned long env_end ;
2847   unsigned long saved_auxv[44] ;
2848   struct mm_rss_stat rss_stat ;
2849   struct linux_binfmt *binfmt ;
2850   cpumask_var_t cpu_vm_mask_var ;
2851   mm_context_t context ;
2852   unsigned int faultstamp ;
2853   unsigned int token_priority ;
2854   unsigned int last_interval ;
2855   atomic_t oom_disable_count ;
2856   unsigned long flags ;
2857   struct core_state *core_state ;
2858   spinlock_t ioctx_lock ;
2859   struct hlist_head ioctx_list ;
2860   struct task_struct *owner ;
2861   struct file *exe_file ;
2862   unsigned long num_exe_file_vmas ;
2863   struct mmu_notifier_mm *mmu_notifier_mm ;
2864   pgtable_t pmd_huge_pte ;
2865   struct cpumask cpumask_allocation ;
2866};
2867# 7 "include/asm-generic/cputime.h"
2868typedef unsigned long cputime_t;
2869# 84 "include/linux/sem.h"
2870struct task_struct;
2871# 122 "include/linux/sem.h"
2872struct sem_undo_list;
2873# 122 "include/linux/sem.h"
2874struct sem_undo_list;
2875# 135 "include/linux/sem.h"
2876struct sem_undo_list {
2877   atomic_t refcnt ;
2878   spinlock_t lock ;
2879   struct list_head list_proc ;
2880};
2881# 141 "include/linux/sem.h"
2882struct sysv_sem {
2883   struct sem_undo_list *undo_list ;
2884};
2885# 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2886struct siginfo;
2887# 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2888struct siginfo;
2889# 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2890struct siginfo;
2891# 30 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2892struct __anonstruct_sigset_t_230 {
2893   unsigned long sig[1] ;
2894};
2895# 30 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2896typedef struct __anonstruct_sigset_t_230 sigset_t;
2897# 17 "include/asm-generic/signal-defs.h"
2898typedef void __signalfn_t(int );
2899# 18 "include/asm-generic/signal-defs.h"
2900typedef __signalfn_t *__sighandler_t;
2901# 20 "include/asm-generic/signal-defs.h"
2902typedef void __restorefn_t(void);
2903# 21 "include/asm-generic/signal-defs.h"
2904typedef __restorefn_t *__sigrestore_t;
2905# 167 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2906struct sigaction {
2907   __sighandler_t sa_handler ;
2908   unsigned long sa_flags ;
2909   __sigrestore_t sa_restorer ;
2910   sigset_t sa_mask ;
2911};
2912# 174 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2913struct k_sigaction {
2914   struct sigaction sa ;
2915};
2916# 7 "include/asm-generic/siginfo.h"
2917union sigval {
2918   int sival_int ;
2919   void *sival_ptr ;
2920};
2921# 7 "include/asm-generic/siginfo.h"
2922typedef union sigval sigval_t;
2923# 40 "include/asm-generic/siginfo.h"
2924struct __anonstruct__kill_232 {
2925   __kernel_pid_t _pid ;
2926   __kernel_uid32_t _uid ;
2927};
2928# 40 "include/asm-generic/siginfo.h"
2929struct __anonstruct__timer_233 {
2930   __kernel_timer_t _tid ;
2931   int _overrun ;
2932   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
2933   sigval_t _sigval ;
2934   int _sys_private ;
2935};
2936# 40 "include/asm-generic/siginfo.h"
2937struct __anonstruct__rt_234 {
2938   __kernel_pid_t _pid ;
2939   __kernel_uid32_t _uid ;
2940   sigval_t _sigval ;
2941};
2942# 40 "include/asm-generic/siginfo.h"
2943struct __anonstruct__sigchld_235 {
2944   __kernel_pid_t _pid ;
2945   __kernel_uid32_t _uid ;
2946   int _status ;
2947   __kernel_clock_t _utime ;
2948   __kernel_clock_t _stime ;
2949};
2950# 40 "include/asm-generic/siginfo.h"
2951struct __anonstruct__sigfault_236 {
2952   void *_addr ;
2953   short _addr_lsb ;
2954};
2955# 40 "include/asm-generic/siginfo.h"
2956struct __anonstruct__sigpoll_237 {
2957   long _band ;
2958   int _fd ;
2959};
2960# 40 "include/asm-generic/siginfo.h"
2961union __anonunion__sifields_231 {
2962   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
2963   struct __anonstruct__kill_232 _kill ;
2964   struct __anonstruct__timer_233 _timer ;
2965   struct __anonstruct__rt_234 _rt ;
2966   struct __anonstruct__sigchld_235 _sigchld ;
2967   struct __anonstruct__sigfault_236 _sigfault ;
2968   struct __anonstruct__sigpoll_237 _sigpoll ;
2969};
2970# 40 "include/asm-generic/siginfo.h"
2971struct siginfo {
2972   int si_signo ;
2973   int si_errno ;
2974   int si_code ;
2975   union __anonunion__sifields_231 _sifields ;
2976};
2977# 40 "include/asm-generic/siginfo.h"
2978typedef struct siginfo siginfo_t;
2979# 280 "include/asm-generic/siginfo.h"
2980struct siginfo;
2981# 10 "include/linux/signal.h"
2982struct task_struct;
2983# 18 "include/linux/signal.h"
2984struct user_struct;
2985# 18 "include/linux/signal.h"
2986struct user_struct;
2987# 28 "include/linux/signal.h"
2988struct sigpending {
2989   struct list_head list ;
2990   sigset_t signal ;
2991};
2992# 239 "include/linux/signal.h"
2993struct timespec;
2994# 240 "include/linux/signal.h"
2995struct pt_regs;
2996# 97 "include/linux/proportions.h"
2997struct prop_local_single {
2998   unsigned long events ;
2999   unsigned long period ;
3000   int shift ;
3001   spinlock_t lock ;
3002};
3003# 10 "include/linux/seccomp.h"
3004struct __anonstruct_seccomp_t_240 {
3005   int mode ;
3006};
3007# 10 "include/linux/seccomp.h"
3008typedef struct __anonstruct_seccomp_t_240 seccomp_t;
3009# 82 "include/linux/plist.h"
3010struct plist_head {
3011   struct list_head node_list ;
3012   raw_spinlock_t *rawlock ;
3013   spinlock_t *spinlock ;
3014};
3015# 90 "include/linux/plist.h"
3016struct plist_node {
3017   int prio ;
3018   struct list_head prio_list ;
3019   struct list_head node_list ;
3020};
3021# 40 "include/linux/rtmutex.h"
3022struct rt_mutex_waiter;
3023# 40 "include/linux/rtmutex.h"
3024struct rt_mutex_waiter;
3025# 40 "include/linux/rtmutex.h"
3026struct rt_mutex_waiter;
3027# 42 "include/linux/resource.h"
3028struct rlimit {
3029   unsigned long rlim_cur ;
3030   unsigned long rlim_max ;
3031};
3032# 81 "include/linux/resource.h"
3033struct task_struct;
3034# 11 "include/linux/task_io_accounting.h"
3035struct task_io_accounting {
3036   u64 rchar ;
3037   u64 wchar ;
3038   u64 syscr ;
3039   u64 syscw ;
3040   u64 read_bytes ;
3041   u64 write_bytes ;
3042   u64 cancelled_write_bytes ;
3043};
3044# 18 "include/linux/latencytop.h"
3045struct latency_record {
3046   unsigned long backtrace[12] ;
3047   unsigned int count ;
3048   unsigned long time ;
3049   unsigned long max ;
3050};
3051# 26 "include/linux/latencytop.h"
3052struct task_struct;
3053# 29 "include/linux/key.h"
3054typedef int32_t key_serial_t;
3055# 32 "include/linux/key.h"
3056typedef uint32_t key_perm_t;
3057# 34 "include/linux/key.h"
3058struct key;
3059# 34 "include/linux/key.h"
3060struct key;
3061# 34 "include/linux/key.h"
3062struct key;
3063# 74 "include/linux/key.h"
3064struct seq_file;
3065# 75 "include/linux/key.h"
3066struct user_struct;
3067# 76 "include/linux/key.h"
3068struct signal_struct;
3069# 76 "include/linux/key.h"
3070struct signal_struct;
3071# 76 "include/linux/key.h"
3072struct signal_struct;
3073# 77 "include/linux/key.h"
3074struct cred;
3075# 79 "include/linux/key.h"
3076struct key_type;
3077# 79 "include/linux/key.h"
3078struct key_type;
3079# 79 "include/linux/key.h"
3080struct key_type;
3081# 81 "include/linux/key.h"
3082struct keyring_list;
3083# 81 "include/linux/key.h"
3084struct keyring_list;
3085# 81 "include/linux/key.h"
3086struct keyring_list;
3087# 124 "include/linux/key.h"
3088struct key_user;
3089# 124 "include/linux/key.h"
3090struct key_user;
3091# 124 "include/linux/key.h"
3092union __anonunion____missing_field_name_241 {
3093   time_t expiry ;
3094   time_t revoked_at ;
3095};
3096# 124 "include/linux/key.h"
3097union __anonunion_type_data_242 {
3098   struct list_head link ;
3099   unsigned long x[2] ;
3100   void *p[2] ;
3101   int reject_error ;
3102};
3103# 124 "include/linux/key.h"
3104union __anonunion_payload_243 {
3105   unsigned long value ;
3106   void *rcudata ;
3107   void *data ;
3108   struct keyring_list *subscriptions ;
3109};
3110# 124 "include/linux/key.h"
3111struct key {
3112   atomic_t usage ;
3113   key_serial_t serial ;
3114   struct rb_node serial_node ;
3115   struct key_type *type ;
3116   struct rw_semaphore sem ;
3117   struct key_user *user ;
3118   void *security ;
3119   union __anonunion____missing_field_name_241 __annonCompField39 ;
3120   uid_t uid ;
3121   gid_t gid ;
3122   key_perm_t perm ;
3123   unsigned short quotalen ;
3124   unsigned short datalen ;
3125   unsigned long flags ;
3126   char *description ;
3127   union __anonunion_type_data_242 type_data ;
3128   union __anonunion_payload_243 payload ;
3129};
3130# 18 "include/linux/selinux.h"
3131struct audit_context;
3132# 18 "include/linux/selinux.h"
3133struct audit_context;
3134# 18 "include/linux/selinux.h"
3135struct audit_context;
3136# 21 "include/linux/cred.h"
3137struct user_struct;
3138# 22 "include/linux/cred.h"
3139struct cred;
3140# 23 "include/linux/cred.h"
3141struct inode;
3142# 31 "include/linux/cred.h"
3143struct group_info {
3144   atomic_t usage ;
3145   int ngroups ;
3146   int nblocks ;
3147   gid_t small_block[32] ;
3148   gid_t *blocks[0] ;
3149};
3150# 83 "include/linux/cred.h"
3151struct thread_group_cred {
3152   atomic_t usage ;
3153   pid_t tgid ;
3154   spinlock_t lock ;
3155   struct key *session_keyring ;
3156   struct key *process_keyring ;
3157   struct rcu_head rcu ;
3158};
3159# 116 "include/linux/cred.h"
3160struct cred {
3161   atomic_t usage ;
3162   atomic_t subscribers ;
3163   void *put_addr ;
3164   unsigned int magic ;
3165   uid_t uid ;
3166   gid_t gid ;
3167   uid_t suid ;
3168   gid_t sgid ;
3169   uid_t euid ;
3170   gid_t egid ;
3171   uid_t fsuid ;
3172   gid_t fsgid ;
3173   unsigned int securebits ;
3174   kernel_cap_t cap_inheritable ;
3175   kernel_cap_t cap_permitted ;
3176   kernel_cap_t cap_effective ;
3177   kernel_cap_t cap_bset ;
3178   unsigned char jit_keyring ;
3179   struct key *thread_keyring ;
3180   struct key *request_key_auth ;
3181   struct thread_group_cred *tgcred ;
3182   void *security ;
3183   struct user_struct *user ;
3184   struct user_namespace *user_ns ;
3185   struct group_info *group_info ;
3186   struct rcu_head rcu ;
3187};
3188# 96 "include/linux/sched.h"
3189struct exec_domain;
3190# 97 "include/linux/sched.h"
3191struct futex_pi_state;
3192# 97 "include/linux/sched.h"
3193struct futex_pi_state;
3194# 97 "include/linux/sched.h"
3195struct futex_pi_state;
3196# 98 "include/linux/sched.h"
3197struct robust_list_head;
3198# 98 "include/linux/sched.h"
3199struct robust_list_head;
3200# 98 "include/linux/sched.h"
3201struct robust_list_head;
3202# 99 "include/linux/sched.h"
3203struct bio_list;
3204# 99 "include/linux/sched.h"
3205struct bio_list;
3206# 99 "include/linux/sched.h"
3207struct bio_list;
3208# 100 "include/linux/sched.h"
3209struct fs_struct;
3210# 100 "include/linux/sched.h"
3211struct fs_struct;
3212# 100 "include/linux/sched.h"
3213struct fs_struct;
3214# 101 "include/linux/sched.h"
3215struct perf_event_context;
3216# 101 "include/linux/sched.h"
3217struct perf_event_context;
3218# 101 "include/linux/sched.h"
3219struct perf_event_context;
3220# 102 "include/linux/sched.h"
3221struct blk_plug;
3222# 102 "include/linux/sched.h"
3223struct blk_plug;
3224# 102 "include/linux/sched.h"
3225struct blk_plug;
3226# 150 "include/linux/sched.h"
3227struct seq_file;
3228# 151 "include/linux/sched.h"
3229struct cfs_rq;
3230# 151 "include/linux/sched.h"
3231struct cfs_rq;
3232# 151 "include/linux/sched.h"
3233struct cfs_rq;
3234# 259 "include/linux/sched.h"
3235struct task_struct;
3236# 364 "include/linux/sched.h"
3237struct nsproxy;
3238# 365 "include/linux/sched.h"
3239struct user_namespace;
3240# 58 "include/linux/aio_abi.h"
3241struct io_event {
3242   __u64 data ;
3243   __u64 obj ;
3244   __s64 res ;
3245   __s64 res2 ;
3246};
3247# 16 "include/linux/uio.h"
3248struct iovec {
3249   void *iov_base ;
3250   __kernel_size_t iov_len ;
3251};
3252# 15 "include/linux/aio.h"
3253struct kioctx;
3254# 15 "include/linux/aio.h"
3255struct kioctx;
3256# 15 "include/linux/aio.h"
3257struct kioctx;
3258# 87 "include/linux/aio.h"
3259union __anonunion_ki_obj_245 {
3260   void *user ;
3261   struct task_struct *tsk ;
3262};
3263# 87 "include/linux/aio.h"
3264struct eventfd_ctx;
3265# 87 "include/linux/aio.h"
3266struct eventfd_ctx;
3267# 87 "include/linux/aio.h"
3268struct kiocb {
3269   struct list_head ki_run_list ;
3270   unsigned long ki_flags ;
3271   int ki_users ;
3272   unsigned int ki_key ;
3273   struct file *ki_filp ;
3274   struct kioctx *ki_ctx ;
3275   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
3276   ssize_t (*ki_retry)(struct kiocb * ) ;
3277   void (*ki_dtor)(struct kiocb * ) ;
3278   union __anonunion_ki_obj_245 ki_obj ;
3279   __u64 ki_user_data ;
3280   loff_t ki_pos ;
3281   void *private ;
3282   unsigned short ki_opcode ;
3283   size_t ki_nbytes ;
3284   char *ki_buf ;
3285   size_t ki_left ;
3286   struct iovec ki_inline_vec ;
3287   struct iovec *ki_iovec ;
3288   unsigned long ki_nr_segs ;
3289   unsigned long ki_cur_seg ;
3290   struct list_head ki_list ;
3291   struct eventfd_ctx *ki_eventfd ;
3292};
3293# 165 "include/linux/aio.h"
3294struct aio_ring_info {
3295   unsigned long mmap_base ;
3296   unsigned long mmap_size ;
3297   struct page **ring_pages ;
3298   spinlock_t ring_lock ;
3299   long nr_pages ;
3300   unsigned int nr ;
3301   unsigned int tail ;
3302   struct page *internal_pages[8] ;
3303};
3304# 178 "include/linux/aio.h"
3305struct kioctx {
3306   atomic_t users ;
3307   int dead ;
3308   struct mm_struct *mm ;
3309   unsigned long user_id ;
3310   struct hlist_node list ;
3311   wait_queue_head_t wait ;
3312   spinlock_t ctx_lock ;
3313   int reqs_active ;
3314   struct list_head active_reqs ;
3315   struct list_head run_list ;
3316   unsigned int max_reqs ;
3317   struct aio_ring_info ring_info ;
3318   struct delayed_work wq ;
3319   struct rcu_head rcu_head ;
3320};
3321# 213 "include/linux/aio.h"
3322struct mm_struct;
3323# 441 "include/linux/sched.h"
3324struct sighand_struct {
3325   atomic_t count ;
3326   struct k_sigaction action[64] ;
3327   spinlock_t siglock ;
3328   wait_queue_head_t signalfd_wqh ;
3329};
3330# 448 "include/linux/sched.h"
3331struct pacct_struct {
3332   int ac_flag ;
3333   long ac_exitcode ;
3334   unsigned long ac_mem ;
3335   cputime_t ac_utime ;
3336   cputime_t ac_stime ;
3337   unsigned long ac_minflt ;
3338   unsigned long ac_majflt ;
3339};
3340# 456 "include/linux/sched.h"
3341struct cpu_itimer {
3342   cputime_t expires ;
3343   cputime_t incr ;
3344   u32 error ;
3345   u32 incr_error ;
3346};
3347# 474 "include/linux/sched.h"
3348struct task_cputime {
3349   cputime_t utime ;
3350   cputime_t stime ;
3351   unsigned long long sum_exec_runtime ;
3352};
3353# 510 "include/linux/sched.h"
3354struct thread_group_cputimer {
3355   struct task_cputime cputime ;
3356   int running ;
3357   spinlock_t lock ;
3358};
3359# 517 "include/linux/sched.h"
3360struct autogroup;
3361# 517 "include/linux/sched.h"
3362struct autogroup;
3363# 517 "include/linux/sched.h"
3364struct autogroup;
3365# 526 "include/linux/sched.h"
3366struct tty_struct;
3367# 526 "include/linux/sched.h"
3368struct tty_struct;
3369# 526 "include/linux/sched.h"
3370struct taskstats;
3371# 526 "include/linux/sched.h"
3372struct taskstats;
3373# 526 "include/linux/sched.h"
3374struct tty_audit_buf;
3375# 526 "include/linux/sched.h"
3376struct tty_audit_buf;
3377# 526 "include/linux/sched.h"
3378struct signal_struct {
3379   atomic_t sigcnt ;
3380   atomic_t live ;
3381   int nr_threads ;
3382   wait_queue_head_t wait_chldexit ;
3383   struct task_struct *curr_target ;
3384   struct sigpending shared_pending ;
3385   int group_exit_code ;
3386   int notify_count ;
3387   struct task_struct *group_exit_task ;
3388   int group_stop_count ;
3389   unsigned int flags ;
3390   struct list_head posix_timers ;
3391   struct hrtimer real_timer ;
3392   struct pid *leader_pid ;
3393   ktime_t it_real_incr ;
3394   struct cpu_itimer it[2] ;
3395   struct thread_group_cputimer cputimer ;
3396   struct task_cputime cputime_expires ;
3397   struct list_head cpu_timers[3] ;
3398   struct pid *tty_old_pgrp ;
3399   int leader ;
3400   struct tty_struct *tty ;
3401   struct autogroup *autogroup ;
3402   cputime_t utime ;
3403   cputime_t stime ;
3404   cputime_t cutime ;
3405   cputime_t cstime ;
3406   cputime_t gtime ;
3407   cputime_t cgtime ;
3408   cputime_t prev_utime ;
3409   cputime_t prev_stime ;
3410   unsigned long nvcsw ;
3411   unsigned long nivcsw ;
3412   unsigned long cnvcsw ;
3413   unsigned long cnivcsw ;
3414   unsigned long min_flt ;
3415   unsigned long maj_flt ;
3416   unsigned long cmin_flt ;
3417   unsigned long cmaj_flt ;
3418   unsigned long inblock ;
3419   unsigned long oublock ;
3420   unsigned long cinblock ;
3421   unsigned long coublock ;
3422   unsigned long maxrss ;
3423   unsigned long cmaxrss ;
3424   struct task_io_accounting ioac ;
3425   unsigned long long sum_sched_runtime ;
3426   struct rlimit rlim[16] ;
3427   struct pacct_struct pacct ;
3428   struct taskstats *stats ;
3429   unsigned int audit_tty ;
3430   struct tty_audit_buf *tty_audit_buf ;
3431   struct rw_semaphore threadgroup_fork_lock ;
3432   int oom_adj ;
3433   int oom_score_adj ;
3434   int oom_score_adj_min ;
3435   struct mutex cred_guard_mutex ;
3436};
3437# 687 "include/linux/sched.h"
3438struct user_struct {
3439   atomic_t __count ;
3440   atomic_t processes ;
3441   atomic_t files ;
3442   atomic_t sigpending ;
3443   atomic_t inotify_watches ;
3444   atomic_t inotify_devs ;
3445   atomic_t fanotify_listeners ;
3446   atomic_long_t epoll_watches ;
3447   unsigned long mq_bytes ;
3448   unsigned long locked_shm ;
3449   struct key *uid_keyring ;
3450   struct key *session_keyring ;
3451   struct hlist_node uidhash_node ;
3452   uid_t uid ;
3453   struct user_namespace *user_ns ;
3454   atomic_long_t locked_vm ;
3455};
3456# 731 "include/linux/sched.h"
3457struct backing_dev_info;
3458# 732 "include/linux/sched.h"
3459struct reclaim_state;
3460# 732 "include/linux/sched.h"
3461struct reclaim_state;
3462# 732 "include/linux/sched.h"
3463struct reclaim_state;
3464# 735 "include/linux/sched.h"
3465struct sched_info {
3466   unsigned long pcount ;
3467   unsigned long long run_delay ;
3468   unsigned long long last_arrival ;
3469   unsigned long long last_queued ;
3470};
3471# 747 "include/linux/sched.h"
3472struct task_delay_info {
3473   spinlock_t lock ;
3474   unsigned int flags ;
3475   struct timespec blkio_start ;
3476   struct timespec blkio_end ;
3477   u64 blkio_delay ;
3478   u64 swapin_delay ;
3479   u32 blkio_count ;
3480   u32 swapin_count ;
3481   struct timespec freepages_start ;
3482   struct timespec freepages_end ;
3483   u64 freepages_delay ;
3484   u32 freepages_count ;
3485};
3486# 1050 "include/linux/sched.h"
3487struct io_context;
3488# 1050 "include/linux/sched.h"
3489struct io_context;
3490# 1050 "include/linux/sched.h"
3491struct io_context;
3492# 1059 "include/linux/sched.h"
3493struct audit_context;
3494# 1060 "include/linux/sched.h"
3495struct mempolicy;
3496# 1061 "include/linux/sched.h"
3497struct pipe_inode_info;
3498# 1064 "include/linux/sched.h"
3499struct rq;
3500# 1064 "include/linux/sched.h"
3501struct rq;
3502# 1064 "include/linux/sched.h"
3503struct rq;
3504# 1084 "include/linux/sched.h"
3505struct sched_class {
3506   struct sched_class const *next ;
3507   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3508   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3509   void (*yield_task)(struct rq *rq ) ;
3510   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
3511   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
3512   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
3513   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
3514   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
3515   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
3516   void (*post_schedule)(struct rq *this_rq ) ;
3517   void (*task_waking)(struct task_struct *task ) ;
3518   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
3519   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask const *newmask ) ;
3520   void (*rq_online)(struct rq *rq ) ;
3521   void (*rq_offline)(struct rq *rq ) ;
3522   void (*set_curr_task)(struct rq *rq ) ;
3523   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
3524   void (*task_fork)(struct task_struct *p ) ;
3525   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
3526   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
3527   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
3528   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
3529   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
3530};
3531# 1129 "include/linux/sched.h"
3532struct load_weight {
3533   unsigned long weight ;
3534   unsigned long inv_weight ;
3535};
3536# 1134 "include/linux/sched.h"
3537struct sched_statistics {
3538   u64 wait_start ;
3539   u64 wait_max ;
3540   u64 wait_count ;
3541   u64 wait_sum ;
3542   u64 iowait_count ;
3543   u64 iowait_sum ;
3544   u64 sleep_start ;
3545   u64 sleep_max ;
3546   s64 sum_sleep_runtime ;
3547   u64 block_start ;
3548   u64 block_max ;
3549   u64 exec_max ;
3550   u64 slice_max ;
3551   u64 nr_migrations_cold ;
3552   u64 nr_failed_migrations_affine ;
3553   u64 nr_failed_migrations_running ;
3554   u64 nr_failed_migrations_hot ;
3555   u64 nr_forced_migrations ;
3556   u64 nr_wakeups ;
3557   u64 nr_wakeups_sync ;
3558   u64 nr_wakeups_migrate ;
3559   u64 nr_wakeups_local ;
3560   u64 nr_wakeups_remote ;
3561   u64 nr_wakeups_affine ;
3562   u64 nr_wakeups_affine_attempts ;
3563   u64 nr_wakeups_passive ;
3564   u64 nr_wakeups_idle ;
3565};
3566# 1169 "include/linux/sched.h"
3567struct sched_entity {
3568   struct load_weight load ;
3569   struct rb_node run_node ;
3570   struct list_head group_node ;
3571   unsigned int on_rq ;
3572   u64 exec_start ;
3573   u64 sum_exec_runtime ;
3574   u64 vruntime ;
3575   u64 prev_sum_exec_runtime ;
3576   u64 nr_migrations ;
3577   struct sched_statistics statistics ;
3578   struct sched_entity *parent ;
3579   struct cfs_rq *cfs_rq ;
3580   struct cfs_rq *my_q ;
3581};
3582# 1195 "include/linux/sched.h"
3583struct rt_rq;
3584# 1195 "include/linux/sched.h"
3585struct rt_rq;
3586# 1195 "include/linux/sched.h"
3587struct sched_rt_entity {
3588   struct list_head run_list ;
3589   unsigned long timeout ;
3590   unsigned int time_slice ;
3591   int nr_cpus_allowed ;
3592   struct sched_rt_entity *back ;
3593   struct sched_rt_entity *parent ;
3594   struct rt_rq *rt_rq ;
3595   struct rt_rq *my_q ;
3596};
3597# 1220 "include/linux/sched.h"
3598struct css_set;
3599# 1220 "include/linux/sched.h"
3600struct css_set;
3601# 1220 "include/linux/sched.h"
3602struct compat_robust_list_head;
3603# 1220 "include/linux/sched.h"
3604struct compat_robust_list_head;
3605# 1220 "include/linux/sched.h"
3606struct ftrace_ret_stack;
3607# 1220 "include/linux/sched.h"
3608struct ftrace_ret_stack;
3609# 1220 "include/linux/sched.h"
3610struct mem_cgroup;
3611# 1220 "include/linux/sched.h"
3612struct mem_cgroup;
3613# 1220 "include/linux/sched.h"
3614struct memcg_batch_info {
3615   int do_batch ;
3616   struct mem_cgroup *memcg ;
3617   unsigned long nr_pages ;
3618   unsigned long memsw_nr_pages ;
3619};
3620# 1220 "include/linux/sched.h"
3621struct task_struct {
3622   long volatile state ;
3623   void *stack ;
3624   atomic_t usage ;
3625   unsigned int flags ;
3626   unsigned int ptrace ;
3627   struct task_struct *wake_entry ;
3628   int on_cpu ;
3629   int on_rq ;
3630   int prio ;
3631   int static_prio ;
3632   int normal_prio ;
3633   unsigned int rt_priority ;
3634   struct sched_class const *sched_class ;
3635   struct sched_entity se ;
3636   struct sched_rt_entity rt ;
3637   struct hlist_head preempt_notifiers ;
3638   unsigned char fpu_counter ;
3639   unsigned int btrace_seq ;
3640   unsigned int policy ;
3641   cpumask_t cpus_allowed ;
3642   struct sched_info sched_info ;
3643   struct list_head tasks ;
3644   struct plist_node pushable_tasks ;
3645   struct mm_struct *mm ;
3646   struct mm_struct *active_mm ;
3647   unsigned int brk_randomized : 1 ;
3648   int exit_state ;
3649   int exit_code ;
3650   int exit_signal ;
3651   int pdeath_signal ;
3652   unsigned int group_stop ;
3653   unsigned int personality ;
3654   unsigned int did_exec : 1 ;
3655   unsigned int in_execve : 1 ;
3656   unsigned int in_iowait : 1 ;
3657   unsigned int sched_reset_on_fork : 1 ;
3658   unsigned int sched_contributes_to_load : 1 ;
3659   pid_t pid ;
3660   pid_t tgid ;
3661   unsigned long stack_canary ;
3662   struct task_struct *real_parent ;
3663   struct task_struct *parent ;
3664   struct list_head children ;
3665   struct list_head sibling ;
3666   struct task_struct *group_leader ;
3667   struct list_head ptraced ;
3668   struct list_head ptrace_entry ;
3669   struct pid_link pids[3] ;
3670   struct list_head thread_group ;
3671   struct completion *vfork_done ;
3672   int *set_child_tid ;
3673   int *clear_child_tid ;
3674   cputime_t utime ;
3675   cputime_t stime ;
3676   cputime_t utimescaled ;
3677   cputime_t stimescaled ;
3678   cputime_t gtime ;
3679   cputime_t prev_utime ;
3680   cputime_t prev_stime ;
3681   unsigned long nvcsw ;
3682   unsigned long nivcsw ;
3683   struct timespec start_time ;
3684   struct timespec real_start_time ;
3685   unsigned long min_flt ;
3686   unsigned long maj_flt ;
3687   struct task_cputime cputime_expires ;
3688   struct list_head cpu_timers[3] ;
3689   struct cred const *real_cred ;
3690   struct cred const *cred ;
3691   struct cred *replacement_session_keyring ;
3692   char comm[16] ;
3693   int link_count ;
3694   int total_link_count ;
3695   struct sysv_sem sysvsem ;
3696   unsigned long last_switch_count ;
3697   struct thread_struct thread ;
3698   struct fs_struct *fs ;
3699   struct files_struct *files ;
3700   struct nsproxy *nsproxy ;
3701   struct signal_struct *signal ;
3702   struct sighand_struct *sighand ;
3703   sigset_t blocked ;
3704   sigset_t real_blocked ;
3705   sigset_t saved_sigmask ;
3706   struct sigpending pending ;
3707   unsigned long sas_ss_sp ;
3708   size_t sas_ss_size ;
3709   int (*notifier)(void *priv ) ;
3710   void *notifier_data ;
3711   sigset_t *notifier_mask ;
3712   struct audit_context *audit_context ;
3713   uid_t loginuid ;
3714   unsigned int sessionid ;
3715   seccomp_t seccomp ;
3716   u32 parent_exec_id ;
3717   u32 self_exec_id ;
3718   spinlock_t alloc_lock ;
3719   struct irqaction *irqaction ;
3720   raw_spinlock_t pi_lock ;
3721   struct plist_head pi_waiters ;
3722   struct rt_mutex_waiter *pi_blocked_on ;
3723   struct mutex_waiter *blocked_on ;
3724   unsigned int irq_events ;
3725   unsigned long hardirq_enable_ip ;
3726   unsigned long hardirq_disable_ip ;
3727   unsigned int hardirq_enable_event ;
3728   unsigned int hardirq_disable_event ;
3729   int hardirqs_enabled ;
3730   int hardirq_context ;
3731   unsigned long softirq_disable_ip ;
3732   unsigned long softirq_enable_ip ;
3733   unsigned int softirq_disable_event ;
3734   unsigned int softirq_enable_event ;
3735   int softirqs_enabled ;
3736   int softirq_context ;
3737   u64 curr_chain_key ;
3738   int lockdep_depth ;
3739   unsigned int lockdep_recursion ;
3740   struct held_lock held_locks[48UL] ;
3741   gfp_t lockdep_reclaim_gfp ;
3742   void *journal_info ;
3743   struct bio_list *bio_list ;
3744   struct blk_plug *plug ;
3745   struct reclaim_state *reclaim_state ;
3746   struct backing_dev_info *backing_dev_info ;
3747   struct io_context *io_context ;
3748   unsigned long ptrace_message ;
3749   siginfo_t *last_siginfo ;
3750   struct task_io_accounting ioac ;
3751   u64 acct_rss_mem1 ;
3752   u64 acct_vm_mem1 ;
3753   cputime_t acct_timexpd ;
3754   nodemask_t mems_allowed ;
3755   int mems_allowed_change_disable ;
3756   int cpuset_mem_spread_rotor ;
3757   int cpuset_slab_spread_rotor ;
3758   struct css_set *cgroups ;
3759   struct list_head cg_list ;
3760   struct robust_list_head *robust_list ;
3761   struct compat_robust_list_head *compat_robust_list ;
3762   struct list_head pi_state_list ;
3763   struct futex_pi_state *pi_state_cache ;
3764   struct perf_event_context *perf_event_ctxp[2] ;
3765   struct mutex perf_event_mutex ;
3766   struct list_head perf_event_list ;
3767   struct mempolicy *mempolicy ;
3768   short il_next ;
3769   short pref_node_fork ;
3770   atomic_t fs_excl ;
3771   struct rcu_head rcu ;
3772   struct pipe_inode_info *splice_pipe ;
3773   struct task_delay_info *delays ;
3774   int make_it_fail ;
3775   struct prop_local_single dirties ;
3776   int latency_record_count ;
3777   struct latency_record latency_record[32] ;
3778   unsigned long timer_slack_ns ;
3779   unsigned long default_timer_slack_ns ;
3780   struct list_head *scm_work_list ;
3781   int curr_ret_stack ;
3782   struct ftrace_ret_stack *ret_stack ;
3783   unsigned long long ftrace_timestamp ;
3784   atomic_t trace_overrun ;
3785   atomic_t tracing_graph_pause ;
3786   unsigned long trace ;
3787   unsigned long trace_recursion ;
3788   struct memcg_batch_info memcg_batch ;
3789   atomic_t ptrace_bp_refcnt ;
3790};
3791# 1634 "include/linux/sched.h"
3792struct pid_namespace;
3793# 25 "include/linux/usb.h"
3794struct usb_device;
3795# 25 "include/linux/usb.h"
3796struct usb_device;
3797# 25 "include/linux/usb.h"
3798struct usb_device;
3799# 26 "include/linux/usb.h"
3800struct usb_driver;
3801# 26 "include/linux/usb.h"
3802struct usb_driver;
3803# 26 "include/linux/usb.h"
3804struct usb_driver;
3805# 27 "include/linux/usb.h"
3806struct wusb_dev;
3807# 27 "include/linux/usb.h"
3808struct wusb_dev;
3809# 27 "include/linux/usb.h"
3810struct wusb_dev;
3811# 47 "include/linux/usb.h"
3812struct ep_device;
3813# 47 "include/linux/usb.h"
3814struct ep_device;
3815# 47 "include/linux/usb.h"
3816struct ep_device;
3817# 64 "include/linux/usb.h"
3818struct usb_host_endpoint {
3819   struct usb_endpoint_descriptor desc ;
3820   struct usb_ss_ep_comp_descriptor ss_ep_comp ;
3821   struct list_head urb_list ;
3822   void *hcpriv ;
3823   struct ep_device *ep_dev ;
3824   unsigned char *extra ;
3825   int extralen ;
3826   int enabled ;
3827};
3828# 77 "include/linux/usb.h"
3829struct usb_host_interface {
3830   struct usb_interface_descriptor desc ;
3831   struct usb_host_endpoint *endpoint ;
3832   char *string ;
3833   unsigned char *extra ;
3834   int extralen ;
3835};
3836# 90 "include/linux/usb.h"
3837enum usb_interface_condition {
3838    USB_INTERFACE_UNBOUND = 0,
3839    USB_INTERFACE_BINDING = 1,
3840    USB_INTERFACE_BOUND = 2,
3841    USB_INTERFACE_UNBINDING = 3
3842} ;
3843# 159 "include/linux/usb.h"
3844struct usb_interface {
3845   struct usb_host_interface *altsetting ;
3846   struct usb_host_interface *cur_altsetting ;
3847   unsigned int num_altsetting ;
3848   struct usb_interface_assoc_descriptor *intf_assoc ;
3849   int minor ;
3850   enum usb_interface_condition condition ;
3851   unsigned int sysfs_files_created : 1 ;
3852   unsigned int ep_devs_created : 1 ;
3853   unsigned int unregistering : 1 ;
3854   unsigned int needs_remote_wakeup : 1 ;
3855   unsigned int needs_altsetting0 : 1 ;
3856   unsigned int needs_binding : 1 ;
3857   unsigned int reset_running : 1 ;
3858   unsigned int resetting_device : 1 ;
3859   struct device dev ;
3860   struct device *usb_dev ;
3861   atomic_t pm_usage_cnt ;
3862   struct work_struct reset_ws ;
3863};
3864# 222 "include/linux/usb.h"
3865struct usb_interface_cache {
3866   unsigned int num_altsetting ;
3867   struct kref ref ;
3868   struct usb_host_interface altsetting[0] ;
3869};
3870# 274 "include/linux/usb.h"
3871struct usb_host_config {
3872   struct usb_config_descriptor desc ;
3873   char *string ;
3874   struct usb_interface_assoc_descriptor *intf_assoc[16] ;
3875   struct usb_interface *interface[32] ;
3876   struct usb_interface_cache *intf_cache[32] ;
3877   unsigned char *extra ;
3878   int extralen ;
3879};
3880# 305 "include/linux/usb.h"
3881struct usb_devmap {
3882   unsigned long devicemap[128UL / (8UL * sizeof(unsigned long ))] ;
3883};
3884# 312 "include/linux/usb.h"
3885struct mon_bus;
3886# 312 "include/linux/usb.h"
3887struct mon_bus;
3888# 312 "include/linux/usb.h"
3889struct usb_bus {
3890   struct device *controller ;
3891   int busnum ;
3892   char const *bus_name ;
3893   u8 uses_dma ;
3894   u8 uses_pio_for_control ;
3895   u8 otg_port ;
3896   unsigned int is_b_host : 1 ;
3897   unsigned int b_hnp_enable : 1 ;
3898   unsigned int sg_tablesize ;
3899   int devnum_next ;
3900   struct usb_devmap devmap ;
3901   struct usb_device *root_hub ;
3902   struct usb_bus *hs_companion ;
3903   struct list_head bus_list ;
3904   int bandwidth_allocated ;
3905   int bandwidth_int_reqs ;
3906   int bandwidth_isoc_reqs ;
3907   struct dentry *usbfs_dentry ;
3908   struct mon_bus *mon_bus ;
3909   int monitored ;
3910};
3911# 367 "include/linux/usb.h"
3912struct usb_tt;
3913# 367 "include/linux/usb.h"
3914struct usb_tt;
3915# 367 "include/linux/usb.h"
3916struct usb_tt;
3917# 426 "include/linux/usb.h"
3918struct usb_device {
3919   int devnum ;
3920   char devpath[16] ;
3921   u32 route ;
3922   enum usb_device_state state ;
3923   enum usb_device_speed speed ;
3924   struct usb_tt *tt ;
3925   int ttport ;
3926   unsigned int toggle[2] ;
3927   struct usb_device *parent ;
3928   struct usb_bus *bus ;
3929   struct usb_host_endpoint ep0 ;
3930   struct device dev ;
3931   struct usb_device_descriptor descriptor ;
3932   struct usb_host_config *config ;
3933   struct usb_host_config *actconfig ;
3934   struct usb_host_endpoint *ep_in[16] ;
3935   struct usb_host_endpoint *ep_out[16] ;
3936   char **rawdescriptors ;
3937   unsigned short bus_mA ;
3938   u8 portnum ;
3939   u8 level ;
3940   unsigned int can_submit : 1 ;
3941   unsigned int persist_enabled : 1 ;
3942   unsigned int have_langid : 1 ;
3943   unsigned int authorized : 1 ;
3944   unsigned int authenticated : 1 ;
3945   unsigned int wusb : 1 ;
3946   int string_langid ;
3947   char *product ;
3948   char *manufacturer ;
3949   char *serial ;
3950   struct list_head filelist ;
3951   struct device *usb_classdev ;
3952   struct dentry *usbfs_dentry ;
3953   int maxchild ;
3954   struct usb_device *children[31] ;
3955   u32 quirks ;
3956   atomic_t urbnum ;
3957   unsigned long active_duration ;
3958   unsigned long connect_time ;
3959   unsigned int do_remote_wakeup : 1 ;
3960   unsigned int reset_resume : 1 ;
3961   struct wusb_dev *wusb_dev ;
3962   int slot_id ;
3963};
3964# 763 "include/linux/usb.h"
3965struct usb_dynids {
3966   spinlock_t lock ;
3967   struct list_head list ;
3968};
3969# 782 "include/linux/usb.h"
3970struct usbdrv_wrap {
3971   struct device_driver driver ;
3972   int for_devices ;
3973};
3974# 843 "include/linux/usb.h"
3975struct usb_driver {
3976   char const *name ;
3977   int (*probe)(struct usb_interface *intf , struct usb_device_id const *id ) ;
3978   void (*disconnect)(struct usb_interface *intf ) ;
3979   int (*unlocked_ioctl)(struct usb_interface *intf , unsigned int code , void *buf ) ;
3980   int (*suspend)(struct usb_interface *intf , pm_message_t message ) ;
3981   int (*resume)(struct usb_interface *intf ) ;
3982   int (*reset_resume)(struct usb_interface *intf ) ;
3983   int (*pre_reset)(struct usb_interface *intf ) ;
3984   int (*post_reset)(struct usb_interface *intf ) ;
3985   struct usb_device_id const *id_table ;
3986   struct usb_dynids dynids ;
3987   struct usbdrv_wrap drvwrap ;
3988   unsigned int no_dynamic_id : 1 ;
3989   unsigned int supports_autosuspend : 1 ;
3990   unsigned int soft_unbind : 1 ;
3991};
3992# 918 "include/linux/usb.h"
3993struct usb_class_driver {
3994   char *name ;
3995   char *(*devnode)(struct device *dev , mode_t *mode ) ;
3996   struct file_operations const *fops ;
3997   int minor_base ;
3998};
3999# 983 "include/linux/usb.h"
4000struct usb_iso_packet_descriptor {
4001   unsigned int offset ;
4002   unsigned int length ;
4003   unsigned int actual_length ;
4004   int status ;
4005};
4006# 990 "include/linux/usb.h"
4007struct urb;
4008# 990 "include/linux/usb.h"
4009struct urb;
4010# 990 "include/linux/usb.h"
4011struct urb;
4012# 992 "include/linux/usb.h"
4013struct usb_anchor {
4014   struct list_head urb_list ;
4015   wait_queue_head_t wait ;
4016   spinlock_t lock ;
4017   unsigned int poisoned : 1 ;
4018};
4019# 1183 "include/linux/usb.h"
4020struct scatterlist;
4021# 1183 "include/linux/usb.h"
4022struct scatterlist;
4023# 1183 "include/linux/usb.h"
4024struct urb {
4025   struct kref kref ;
4026   void *hcpriv ;
4027   atomic_t use_count ;
4028   atomic_t reject ;
4029   int unlinked ;
4030   struct list_head urb_list ;
4031   struct list_head anchor_list ;
4032   struct usb_anchor *anchor ;
4033   struct usb_device *dev ;
4034   struct usb_host_endpoint *ep ;
4035   unsigned int pipe ;
4036   unsigned int stream_id ;
4037   int status ;
4038   unsigned int transfer_flags ;
4039   void *transfer_buffer ;
4040   dma_addr_t transfer_dma ;
4041   struct scatterlist *sg ;
4042   int num_sgs ;
4043   u32 transfer_buffer_length ;
4044   u32 actual_length ;
4045   unsigned char *setup_packet ;
4046   dma_addr_t setup_dma ;
4047   int start_frame ;
4048   int number_of_packets ;
4049   int interval ;
4050   int error_count ;
4051   void *context ;
4052   void (*complete)(struct urb * ) ;
4053   struct usb_iso_packet_descriptor iso_frame_desc[0] ;
4054};
4055# 1388 "include/linux/usb.h"
4056struct scatterlist;
4057# 38 "include/linux/slub_def.h"
4058struct kmem_cache_cpu {
4059   void **freelist ;
4060   unsigned long tid ;
4061   struct page *page ;
4062   int node ;
4063   unsigned int stat[19] ;
4064};
4065# 48 "include/linux/slub_def.h"
4066struct kmem_cache_node {
4067   spinlock_t list_lock ;
4068   unsigned long nr_partial ;
4069   struct list_head partial ;
4070   atomic_long_t nr_slabs ;
4071   atomic_long_t total_objects ;
4072   struct list_head full ;
4073};
4074# 64 "include/linux/slub_def.h"
4075struct kmem_cache_order_objects {
4076   unsigned long x ;
4077};
4078# 71 "include/linux/slub_def.h"
4079struct kmem_cache {
4080   struct kmem_cache_cpu *cpu_slab ;
4081   unsigned long flags ;
4082   unsigned long min_partial ;
4083   int size ;
4084   int objsize ;
4085   int offset ;
4086   struct kmem_cache_order_objects oo ;
4087   struct kmem_cache_order_objects max ;
4088   struct kmem_cache_order_objects min ;
4089   gfp_t allocflags ;
4090   int refcount ;
4091   void (*ctor)(void * ) ;
4092   int inuse ;
4093   int align ;
4094   int reserved ;
4095   char const *name ;
4096   struct list_head list ;
4097   struct kobject kobj ;
4098   int remote_node_defrag_ratio ;
4099   struct kmem_cache_node *node[1 << 10] ;
4100};
4101# 31 "include/asm-generic/poll.h"
4102struct pollfd {
4103   int fd ;
4104   short events ;
4105   short revents ;
4106};
4107# 28 "include/linux/poll.h"
4108struct poll_table_struct;
4109# 35 "include/linux/poll.h"
4110struct poll_table_struct {
4111   void (*qproc)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
4112   unsigned long key ;
4113};
4114# 35 "include/linux/poll.h"
4115typedef struct poll_table_struct poll_table;
4116# 16 "include/linux/usb/iowarrior.h"
4117struct iowarrior_info {
4118   __u32 vendor ;
4119   __u32 product ;
4120   __u8 serial[9] ;
4121   __u32 revision ;
4122   __u32 speed ;
4123   __u32 power ;
4124   __u32 if_num ;
4125   __u32 report_size ;
4126};
4127# 78 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4128struct iowarrior {
4129   struct mutex mutex ;
4130   struct usb_device *udev ;
4131   struct usb_interface *interface ;
4132   unsigned char minor ;
4133   struct usb_endpoint_descriptor *int_out_endpoint ;
4134   struct usb_endpoint_descriptor *int_in_endpoint ;
4135   struct urb *int_in_urb ;
4136   unsigned char *int_in_buffer ;
4137   unsigned char serial_number ;
4138   unsigned char *read_queue ;
4139   wait_queue_head_t read_wait ;
4140   wait_queue_head_t write_wait ;
4141   atomic_t write_busy ;
4142   atomic_t read_idx ;
4143   atomic_t intr_idx ;
4144   spinlock_t intr_idx_lock ;
4145   atomic_t overflow_flag ;
4146   int present ;
4147   int opened ;
4148   char chip_serial[9] ;
4149   int report_size ;
4150   u16 product_id ;
4151};
4152# 1 "<compiler builtins>"
4153
4154# 1 "<compiler builtins>"
4155
4156# 1 "<compiler builtins>"
4157
4158# 315 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4159__inline static int variable_test_bit(int nr , unsigned long const volatile *addr )
4160{ int oldbit ;
4161
4162  {
4163# 319 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4164  __asm__ volatile ("bt %2,%1\n\t"
4165                       "sbb %0,%0": "=r" (oldbit): "m" (*((unsigned long *)addr)),
4166                       "Ir" (nr));
4167# 324 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
4168  return (oldbit);
4169}
4170}
4171# 100 "include/linux/printk.h"
4172extern int printk(char const *fmt , ...) ;
4173# 64 "include/asm-generic/bug.h"
4174extern void warn_slowpath_fmt(char const *file , int const line , char const *fmt
4175                              , ...) ;
4176# 170 "include/linux/kernel.h"
4177extern void might_fault(void) ;
4178# 303 "include/linux/kernel.h"
4179extern char *kasprintf(gfp_t gfp , char const *fmt , ...) ;
4180# 88 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/percpu.h"
4181extern void __bad_percpu_size(void) ;
4182# 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4183extern struct task_struct *current_task __attribute__((__section__(".data..percpu"))) ;
4184# 12 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4185__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void)
4186{ struct task_struct *pfo_ret__ ;
4187
4188  {
4189# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4190  if ((int )sizeof(current_task) == 1) {
4191# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4192    goto case_1;
4193  } else
4194# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4195  if ((int )sizeof(current_task) == 2) {
4196# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4197    goto case_2;
4198  } else
4199# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4200  if ((int )sizeof(current_task) == 4) {
4201# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4202    goto case_4;
4203  } else
4204# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4205  if ((int )sizeof(current_task) == 8) {
4206# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4207    goto case_8;
4208  } else {
4209# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4210    goto switch_default;
4211# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4212    if (0) {
4213      case_1:
4214# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4215      __asm__ ("mov"
4216                "b "
4217                "%%"
4218                "gs"
4219                ":"
4220                "%P"
4221                "1"
4222                ",%0": "=q" (pfo_ret__): "p" (& current_task));
4223# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4224      goto switch_break;
4225      case_2:
4226# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4227      __asm__ ("mov"
4228                "w "
4229                "%%"
4230                "gs"
4231                ":"
4232                "%P"
4233                "1"
4234                ",%0": "=r" (pfo_ret__): "p" (& current_task));
4235# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4236      goto switch_break;
4237      case_4:
4238# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4239      __asm__ ("mov"
4240                "l "
4241                "%%"
4242                "gs"
4243                ":"
4244                "%P"
4245                "1"
4246                ",%0": "=r" (pfo_ret__): "p" (& current_task));
4247# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4248      goto switch_break;
4249      case_8:
4250# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4251      __asm__ ("mov"
4252                "q "
4253                "%%"
4254                "gs"
4255                ":"
4256                "%P"
4257                "1"
4258                ",%0": "=r" (pfo_ret__): "p" (& current_task));
4259# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4260      goto switch_break;
4261      switch_default:
4262      {
4263# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4264      __bad_percpu_size();
4265      }
4266    } else {
4267      switch_break: ;
4268    }
4269  }
4270# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
4271  return (pfo_ret__);
4272}
4273}
4274# 34 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4275extern void *__memcpy(void *to , void const *from , size_t len ) ;
4276# 55 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4277extern void *memset(void *s , int c , size_t n ) ;
4278# 60 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4279extern int memcmp(void const *cs , void const *ct , unsigned long count ) ;
4280# 61 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4281extern unsigned long strlen(char const *s ) ;
4282# 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4283__inline static int atomic_read(atomic_t const *v )
4284{
4285
4286  {
4287# 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4288  return ((int )*((int volatile *)(& v->counter)));
4289}
4290}
4291# 35 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4292__inline static void atomic_set(atomic_t *v , int i )
4293{
4294
4295  {
4296# 37 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4297  v->counter = i;
4298# 38 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4299  return;
4300}
4301}
4302# 93 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4303__inline static void atomic_inc(atomic_t *v )
4304{
4305
4306  {
4307# 95 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4308  __asm__ volatile (".section .smp_locks,\"a\"\n"
4309                       ".balign 4\n"
4310                       ".long 671f - .\n"
4311                       ".previous\n"
4312                       "671:"
4313                       "\n\tlock; "
4314                       "incl %0": "+m" (v->counter));
4315# 97 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4316  return;
4317}
4318}
4319# 105 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4320__inline static void atomic_dec(atomic_t *v )
4321{
4322
4323  {
4324# 107 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4325  __asm__ volatile (".section .smp_locks,\"a\"\n"
4326                       ".balign 4\n"
4327                       ".long 671f - .\n"
4328                       ".previous\n"
4329                       "671:"
4330                       "\n\tlock; "
4331                       "decl %0": "+m" (v->counter));
4332# 109 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
4333  return;
4334}
4335}
4336# 82 "include/linux/thread_info.h"
4337__inline static int test_ti_thread_flag(struct thread_info *ti , int flag )
4338{ int tmp___0 ;
4339
4340  {
4341  {
4342# 84 "include/linux/thread_info.h"
4343  tmp___0 = variable_test_bit(flag, (unsigned long const volatile *)((unsigned long *)(& ti->flags)));
4344  }
4345# 84 "include/linux/thread_info.h"
4346  return (tmp___0);
4347}
4348}
4349# 93 "include/linux/spinlock.h"
4350extern void __raw_spin_lock_init(raw_spinlock_t *lock , char const *name , struct lock_class_key *key ) ;
4351# 22 "include/linux/spinlock_api_smp.h"
4352extern void _raw_spin_lock(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4353# 39 "include/linux/spinlock_api_smp.h"
4354extern void _raw_spin_unlock(raw_spinlock_t *lock ) __attribute__((__section__(".spinlock.text"))) ;
4355# 272 "include/linux/spinlock.h"
4356__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )
4357{
4358
4359  {
4360# 274 "include/linux/spinlock.h"
4361  return (& lock->__annonCompField18.rlock);
4362}
4363}
4364# 283 "include/linux/spinlock.h"
4365__inline static void spin_lock(spinlock_t *lock )
4366{
4367
4368  {
4369  {
4370# 285 "include/linux/spinlock.h"
4371  _raw_spin_lock(& lock->__annonCompField18.rlock);
4372  }
4373# 286 "include/linux/spinlock.h"
4374  return;
4375}
4376}
4377# 323 "include/linux/spinlock.h"
4378__inline static void spin_unlock(spinlock_t *lock )
4379{
4380
4381  {
4382  {
4383# 325 "include/linux/spinlock.h"
4384  _raw_spin_unlock(& lock->__annonCompField18.rlock);
4385  }
4386# 326 "include/linux/spinlock.h"
4387  return;
4388}
4389}
4390# 80 "include/linux/wait.h"
4391extern void __init_waitqueue_head(wait_queue_head_t *q , struct lock_class_key * ) ;
4392# 156 "include/linux/wait.h"
4393extern void __wake_up(wait_queue_head_t *q , unsigned int mode , int nr , void *key ) ;
4394# 584 "include/linux/wait.h"
4395extern void prepare_to_wait(wait_queue_head_t *q , wait_queue_t *wait , int state ) ;
4396# 586 "include/linux/wait.h"
4397extern void finish_wait(wait_queue_head_t *q , wait_queue_t *wait ) ;
4398# 589 "include/linux/wait.h"
4399extern int autoremove_wake_function(wait_queue_t *wait , unsigned int mode , int sync ,
4400                                    void *key ) ;
4401# 115 "include/linux/mutex.h"
4402extern void __mutex_init(struct mutex *lock , char const *name , struct lock_class_key *key ) ;
4403# 134 "include/linux/mutex.h"
4404extern void mutex_lock_nested(struct mutex *lock , unsigned int subclass ) ;
4405# 169 "include/linux/mutex.h"
4406extern void mutex_unlock(struct mutex *lock ) ;
4407# 830 "include/linux/rcupdate.h"
4408extern void kfree(void const * ) ;
4409# 80 "include/linux/kobject.h"
4410__inline static char const *kobject_name(struct kobject const *kobj )
4411{
4412
4413  {
4414# 82 "include/linux/kobject.h"
4415  return ((char const *)kobj->name);
4416}
4417}
4418# 329 "include/linux/moduleparam.h"
4419extern struct kernel_param_ops param_ops_bool ;
4420# 79 "include/linux/module.h"
4421int init_module(void) ;
4422# 80 "include/linux/module.h"
4423void cleanup_module(void) ;
4424# 99 "include/linux/module.h"
4425extern struct module __this_module ;
4426# 424 "include/linux/usb/ch9.h"
4427__inline static int usb_endpoint_dir_in(struct usb_endpoint_descriptor const *epd )
4428{
4429
4430  {
4431# 426 "include/linux/usb/ch9.h"
4432  return (((int const )epd->bEndpointAddress & 128) == 128);
4433}
4434}
4435# 435 "include/linux/usb/ch9.h"
4436__inline static int usb_endpoint_dir_out(struct usb_endpoint_descriptor const *epd )
4437{
4438
4439  {
4440# 438 "include/linux/usb/ch9.h"
4441  return (((int const )epd->bEndpointAddress & 128) == 0);
4442}
4443}
4444# 474 "include/linux/usb/ch9.h"
4445__inline static int usb_endpoint_xfer_int(struct usb_endpoint_descriptor const *epd )
4446{
4447
4448  {
4449# 477 "include/linux/usb/ch9.h"
4450  return (((int const )epd->bmAttributes & 3) == 3);
4451}
4452}
4453# 528 "include/linux/usb/ch9.h"
4454__inline static int usb_endpoint_is_int_in(struct usb_endpoint_descriptor const *epd )
4455{ int tmp ;
4456  int tmp___0 ;
4457  int tmp___1 ;
4458
4459  {
4460  {
4461# 531 "include/linux/usb/ch9.h"
4462  tmp = usb_endpoint_xfer_int(epd);
4463  }
4464# 531 "include/linux/usb/ch9.h"
4465  if (tmp) {
4466    {
4467# 531 "include/linux/usb/ch9.h"
4468    tmp___0 = usb_endpoint_dir_in(epd);
4469    }
4470# 531 "include/linux/usb/ch9.h"
4471    if (tmp___0) {
4472# 531 "include/linux/usb/ch9.h"
4473      tmp___1 = 1;
4474    } else {
4475# 531 "include/linux/usb/ch9.h"
4476      tmp___1 = 0;
4477    }
4478  } else {
4479# 531 "include/linux/usb/ch9.h"
4480    tmp___1 = 0;
4481  }
4482# 531 "include/linux/usb/ch9.h"
4483  return (tmp___1);
4484}
4485}
4486# 541 "include/linux/usb/ch9.h"
4487__inline static int usb_endpoint_is_int_out(struct usb_endpoint_descriptor const *epd )
4488{ int tmp ;
4489  int tmp___0 ;
4490  int tmp___1 ;
4491
4492  {
4493  {
4494# 544 "include/linux/usb/ch9.h"
4495  tmp = usb_endpoint_xfer_int(epd);
4496  }
4497# 544 "include/linux/usb/ch9.h"
4498  if (tmp) {
4499    {
4500# 544 "include/linux/usb/ch9.h"
4501    tmp___0 = usb_endpoint_dir_out(epd);
4502    }
4503# 544 "include/linux/usb/ch9.h"
4504    if (tmp___0) {
4505# 544 "include/linux/usb/ch9.h"
4506      tmp___1 = 1;
4507    } else {
4508# 544 "include/linux/usb/ch9.h"
4509      tmp___1 = 0;
4510    }
4511  } else {
4512# 544 "include/linux/usb/ch9.h"
4513    tmp___1 = 0;
4514  }
4515# 544 "include/linux/usb/ch9.h"
4516  return (tmp___1);
4517}
4518}
4519# 39 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4520extern unsigned long __attribute__((__warn_unused_result__)) _copy_to_user(void *to ,
4521                                                                            void const *from ,
4522                                                                            unsigned int len ) ;
4523# 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4524extern unsigned long __attribute__((__warn_unused_result__)) _copy_from_user(void *to ,
4525                                                                              void const *from ,
4526                                                                              unsigned int len ) ;
4527# 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4528__inline static unsigned long __attribute__((__warn_unused_result__)) copy_from_user(void *to ,
4529                                                                                      void const *from ,
4530                                                                                      unsigned long n )
4531{ int sz ;
4532  unsigned long tmp ;
4533  int __ret_warn_on ;
4534  long tmp___0 ;
4535  int tmp___1 ;
4536  long tmp___2 ;
4537  unsigned long tmp___3 ;
4538
4539  {
4540  {
4541# 50 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4542  tmp = __builtin_object_size(to, 0);
4543# 50 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4544  sz = (int )tmp;
4545# 52 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4546  might_fault();
4547  }
4548# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4549  if (sz == -1) {
4550# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4551    tmp___1 = 1;
4552  } else
4553# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4554  if ((unsigned long )sz >= n) {
4555# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4556    tmp___1 = 1;
4557  } else {
4558# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4559    tmp___1 = 0;
4560  }
4561  {
4562# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4563  tmp___2 = __builtin_expect((long )tmp___1, 1L);
4564  }
4565# 53 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4566  if (tmp___2) {
4567    {
4568# 54 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4569    tmp___3 = (unsigned long )_copy_from_user(to, from, (unsigned int )n);
4570# 54 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4571    n = tmp___3;
4572    }
4573  } else {
4574    {
4575# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4576    __ret_warn_on = 1;
4577# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4578    tmp___0 = __builtin_expect((long )(! (! __ret_warn_on)), 0L);
4579    }
4580# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4581    if (tmp___0) {
4582      {
4583# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4584      warn_slowpath_fmt("/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h",
4585                        (int const )57, "Buffer overflow detected!\n");
4586      }
4587    } else {
4588
4589    }
4590    {
4591# 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4592    __builtin_expect((long )(! (! __ret_warn_on)), 0L);
4593    }
4594  }
4595# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4596  return (n);
4597}
4598}
4599# 62 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4600__inline static int __attribute__((__warn_unused_result__)) ( __attribute__((__always_inline__)) copy_to_user)(void *dst ,
4601                                                                                                                void const *src ,
4602                                                                                                                unsigned int size )
4603{ unsigned long tmp ;
4604  unsigned long tmp___0 ;
4605
4606  {
4607  {
4608# 65 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4609  might_fault();
4610# 67 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4611  tmp___0 = (unsigned long )_copy_to_user(dst, src, size);
4612# 67 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4613  tmp = tmp___0;
4614  }
4615# 67 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
4616  return ((int )tmp);
4617}
4618}
4619# 608 "include/linux/device.h"
4620__inline static char const *dev_name(struct device const *dev )
4621{ char const *tmp ;
4622
4623  {
4624# 611 "include/linux/device.h"
4625  if (dev->init_name) {
4626# 612 "include/linux/device.h"
4627    return ((char const *)dev->init_name);
4628  } else {
4629
4630  }
4631  {
4632# 614 "include/linux/device.h"
4633  tmp = kobject_name(& dev->kobj);
4634  }
4635# 614 "include/linux/device.h"
4636  return (tmp);
4637}
4638}
4639# 705 "include/linux/device.h"
4640extern void *dev_get_drvdata(struct device const *dev ) __attribute__((__ldv_model__)) ;
4641# 706 "include/linux/device.h"
4642extern int dev_set_drvdata(struct device *dev , void *data ) ;
4643# 797 "include/linux/device.h"
4644extern int dev_err(struct device const *dev , char const *fmt , ...) ;
4645# 803 "include/linux/device.h"
4646extern int _dev_info(struct device const *dev , char const *fmt , ...) ;
4647# 891 "include/linux/fs.h"
4648__inline static unsigned int iminor(struct inode const *inode )
4649{
4650
4651  {
4652# 893 "include/linux/fs.h"
4653  return ((unsigned int )(inode->i_rdev & (unsigned int const )((1U << 20) - 1U)));
4654}
4655}
4656# 2336 "include/linux/fs.h"
4657extern loff_t noop_llseek(struct file *file , loff_t offset , int origin ) ;
4658# 361 "include/linux/sched.h"
4659extern void schedule(void) ;
4660# 2441 "include/linux/sched.h"
4661__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag )
4662{ int tmp___7 ;
4663
4664  {
4665  {
4666# 2443 "include/linux/sched.h"
4667  tmp___7 = test_ti_thread_flag((struct thread_info *)tsk->stack, flag);
4668  }
4669# 2443 "include/linux/sched.h"
4670  return (tmp___7);
4671}
4672}
4673# 2467 "include/linux/sched.h"
4674__inline static int signal_pending(struct task_struct *p )
4675{ int tmp___7 ;
4676  int tmp___8 ;
4677  long tmp___9 ;
4678
4679  {
4680  {
4681# 2469 "include/linux/sched.h"
4682  tmp___7 = test_tsk_thread_flag(p, 2);
4683  }
4684# 2469 "include/linux/sched.h"
4685  if (tmp___7) {
4686# 2469 "include/linux/sched.h"
4687    tmp___8 = 1;
4688  } else {
4689# 2469 "include/linux/sched.h"
4690    tmp___8 = 0;
4691  }
4692  {
4693# 2469 "include/linux/sched.h"
4694  tmp___9 = __builtin_expect((long )tmp___8, 0L);
4695  }
4696# 2469 "include/linux/sched.h"
4697  return ((int )tmp___9);
4698}
4699}
4700# 191 "include/linux/usb.h"
4701__inline static void *usb_get_intfdata(struct usb_interface *intf ) __attribute__((__ldv_model__)) ;
4702# 191 "include/linux/usb.h"
4703__inline static void *usb_get_intfdata(struct usb_interface *intf ) __attribute__((__ldv_model__)) ;
4704# 191 "include/linux/usb.h"
4705__inline static void *usb_get_intfdata(struct usb_interface *intf )
4706{ void *tmp___7 ;
4707
4708  {
4709  {
4710# 193 "include/linux/usb.h"
4711  tmp___7 = dev_get_drvdata((struct device const *)(& intf->dev));
4712  }
4713# 193 "include/linux/usb.h"
4714  return (tmp___7);
4715}
4716}
4717# 196 "include/linux/usb.h"
4718__inline static void usb_set_intfdata(struct usb_interface *intf , void *data ) __attribute__((__ldv_model__)) ;
4719# 196 "include/linux/usb.h"
4720__inline static void usb_set_intfdata(struct usb_interface *intf , void *data ) __attribute__((__ldv_model__)) ;
4721# 196 "include/linux/usb.h"
4722__inline static void usb_set_intfdata(struct usb_interface *intf , void *data )
4723{
4724
4725  {
4726  {
4727# 198 "include/linux/usb.h"
4728  dev_set_drvdata(& intf->dev, data);
4729  }
4730# 199 "include/linux/usb.h"
4731  return;
4732}
4733}
4734# 497 "include/linux/usb.h"
4735__inline static struct usb_device *interface_to_usbdev(struct usb_interface *intf )
4736{ struct device const *__mptr ;
4737
4738  {
4739# 499 "include/linux/usb.h"
4740  __mptr = (struct device const *)intf->dev.parent;
4741# 499 "include/linux/usb.h"
4742  return ((struct usb_device *)((char *)__mptr - (unsigned int )(& ((struct usb_device *)0)->dev)));
4743}
4744}
4745# 601 "include/linux/usb.h"
4746extern struct usb_interface *usb_find_interface(struct usb_driver *drv , int minor ) ;
4747# 929 "include/linux/usb.h"
4748extern int usb_register_driver(struct usb_driver * , struct module * , char const * ) ;
4749# 931 "include/linux/usb.h"
4750__inline static int usb_register(struct usb_driver *driver )
4751{ int tmp___7 ;
4752
4753  {
4754  {
4755# 933 "include/linux/usb.h"
4756  tmp___7 = usb_register_driver(driver, & __this_module, "iowarrior");
4757  }
4758# 933 "include/linux/usb.h"
4759  return (tmp___7);
4760}
4761}
4762# 935 "include/linux/usb.h"
4763extern void usb_deregister(struct usb_driver * ) ;
4764# 941 "include/linux/usb.h"
4765extern int usb_register_dev(struct usb_interface *intf , struct usb_class_driver *class_driver ) ;
4766# 943 "include/linux/usb.h"
4767extern void usb_deregister_dev(struct usb_interface *intf , struct usb_class_driver *class_driver ) ;
4768# 1309 "include/linux/usb.h"
4769__inline static void usb_fill_int_urb(struct urb *urb , struct usb_device *dev , unsigned int pipe ,
4770                                      void *transfer_buffer , int buffer_length ,
4771                                      void (*complete_fn)(struct urb * ) , void *context ,
4772                                      int interval )
4773{
4774
4775  {
4776# 1318 "include/linux/usb.h"
4777  urb->dev = dev;
4778# 1319 "include/linux/usb.h"
4779  urb->pipe = pipe;
4780# 1320 "include/linux/usb.h"
4781  urb->transfer_buffer = transfer_buffer;
4782# 1321 "include/linux/usb.h"
4783  urb->transfer_buffer_length = (u32 )buffer_length;
4784# 1322 "include/linux/usb.h"
4785  urb->complete = complete_fn;
4786# 1323 "include/linux/usb.h"
4787  urb->context = context;
4788# 1324 "include/linux/usb.h"
4789  if ((unsigned int )dev->speed == 3U) {
4790# 1325 "include/linux/usb.h"
4791    urb->interval = 1 << (interval - 1);
4792  } else
4793# 1324 "include/linux/usb.h"
4794  if ((unsigned int )dev->speed == 5U) {
4795# 1325 "include/linux/usb.h"
4796    urb->interval = 1 << (interval - 1);
4797  } else {
4798# 1327 "include/linux/usb.h"
4799    urb->interval = interval;
4800  }
4801# 1328 "include/linux/usb.h"
4802  urb->start_frame = -1;
4803# 1329 "include/linux/usb.h"
4804  return;
4805}
4806}
4807# 1332 "include/linux/usb.h"
4808struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags ) __attribute__((__ldv_model__)) ;
4809# 1333 "include/linux/usb.h"
4810void usb_free_urb(struct urb *urb ) __attribute__((__ldv_model__)) ;
4811# 1336 "include/linux/usb.h"
4812extern int usb_submit_urb(struct urb *urb , gfp_t mem_flags ) ;
4813# 1338 "include/linux/usb.h"
4814extern void usb_kill_urb(struct urb *urb ) ;
4815# 1377 "include/linux/usb.h"
4816void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
4817                         dma_addr_t *dma ) __attribute__((__ldv_model__)) ;
4818# 1379 "include/linux/usb.h"
4819void usb_free_coherent(struct usb_device *dev , size_t size , void *addr , dma_addr_t dma ) __attribute__((__ldv_model__)) ;
4820# 1402 "include/linux/usb.h"
4821extern int usb_control_msg(struct usb_device *dev , unsigned int pipe , __u8 request ,
4822                           __u8 requesttype , __u16 value , __u16 index , void *data ,
4823                           __u16 size , int timeout ) ;
4824# 1416 "include/linux/usb.h"
4825extern int usb_string(struct usb_device *dev , int index , char *buf , size_t size ) ;
4826# 1526 "include/linux/usb.h"
4827__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint )
4828{
4829
4830  {
4831# 1529 "include/linux/usb.h"
4832  return ((unsigned int )(dev->devnum << 8) | (endpoint << 15));
4833}
4834}
4835# 221 "include/linux/slub_def.h"
4836extern void *__kmalloc(size_t size , gfp_t flags ) ;
4837# 255 "include/linux/slub_def.h"
4838__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
4839                                                                    gfp_t flags )
4840{ void *tmp___10 ;
4841
4842  {
4843  {
4844# 270 "include/linux/slub_def.h"
4845  tmp___10 = __kmalloc(size, flags);
4846  }
4847# 270 "include/linux/slub_def.h"
4848  return (tmp___10);
4849}
4850}
4851# 318 "include/linux/slab.h"
4852__inline static void *kzalloc(size_t size , gfp_t flags )
4853{ void *tmp___7 ;
4854
4855  {
4856  {
4857# 320 "include/linux/slab.h"
4858  tmp___7 = kmalloc(size, flags | 32768U);
4859  }
4860# 320 "include/linux/slab.h"
4861  return (tmp___7);
4862}
4863}
4864# 40 "include/linux/poll.h"
4865__inline static void poll_wait(struct file *filp , wait_queue_head_t *wait_address ,
4866                               poll_table *p )
4867{
4868
4869  {
4870# 42 "include/linux/poll.h"
4871  if (p) {
4872# 42 "include/linux/poll.h"
4873    if (wait_address) {
4874      {
4875# 43 "include/linux/poll.h"
4876      (*(p->qproc))(filp, wait_address, p);
4877      }
4878    } else {
4879
4880    }
4881  } else {
4882
4883  }
4884# 44 "include/linux/poll.h"
4885  return;
4886}
4887}
4888# 60 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4889static char const __mod_author60[45] __attribute__((__used__, __unused__, __section__(".modinfo"),
4890__aligned__(1))) =
4891# 60 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4892  { (char const )'a', (char const )'u', (char const )'t', (char const )'h',
4893        (char const )'o', (char const )'r', (char const )'=', (char const )'C',
4894        (char const )'h', (char const )'r', (char const )'i', (char const )'s',
4895        (char const )'t', (char const )'i', (char const )'a', (char const )'n',
4896        (char const )' ', (char const )'L', (char const )'u', (char const )'c',
4897        (char const )'h', (char const )'t', (char const )' ', (char const )'<',
4898        (char const )'l', (char const )'u', (char const )'c', (char const )'h',
4899        (char const )'t', (char const )'@', (char const )'c', (char const )'o',
4900        (char const )'d', (char const )'e', (char const )'m', (char const )'e',
4901        (char const )'r', (char const )'c', (char const )'s', (char const )'.',
4902        (char const )'c', (char const )'o', (char const )'m', (char const )'>',
4903        (char const )'\000'};
4904# 61 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4905static char const __mod_description61[48] __attribute__((__used__, __unused__,
4906__section__(".modinfo"), __aligned__(1))) =
4907# 61 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4908  { (char const )'d', (char const )'e', (char const )'s', (char const )'c',
4909        (char const )'r', (char const )'i', (char const )'p', (char const )'t',
4910        (char const )'i', (char const )'o', (char const )'n', (char const )'=',
4911        (char const )'U', (char const )'S', (char const )'B', (char const )' ',
4912        (char const )'I', (char const )'O', (char const )'-', (char const )'W',
4913        (char const )'a', (char const )'r', (char const )'r', (char const )'i',
4914        (char const )'o', (char const )'r', (char const )' ', (char const )'d',
4915        (char const )'r', (char const )'i', (char const )'v', (char const )'e',
4916        (char const )'r', (char const )' ', (char const )'(', (char const )'L',
4917        (char const )'i', (char const )'n', (char const )'u', (char const )'x',
4918        (char const )' ', (char const )'2', (char const )'.', (char const )'6',
4919        (char const )'.', (char const )'x', (char const )')', (char const )'\000'};
4920# 62 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4921static char const __mod_license62[12] __attribute__((__used__, __unused__, __section__(".modinfo"),
4922__aligned__(1))) =
4923# 62 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4924  { (char const )'l', (char const )'i', (char const )'c', (char const )'e',
4925        (char const )'n', (char const )'s', (char const )'e', (char const )'=',
4926        (char const )'G', (char const )'P', (char const )'L', (char const )'\000'};
4927# 65 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4928static struct mutex iowarrior_mutex = {{1}, {{{{0U}, 3735899821U, 4294967295U, (void *)-1L, {(struct lock_class_key *)0,
4929                                                          {(struct lock_class *)0,
4930                                                           (struct lock_class *)0},
4931                                                          "iowarrior_mutex.wait_lock",
4932                                                          0, 0UL}}}}, {& iowarrior_mutex.wait_list,
4933                                                                       & iowarrior_mutex.wait_list},
4934    (struct task_struct *)0, (char const *)0, (void *)(& iowarrior_mutex), {(struct lock_class_key *)0,
4935                                                                              {(struct lock_class *)0,
4936                                                                               (struct lock_class *)0},
4937                                                                              "iowarrior_mutex",
4938                                                                              0, 0UL}};
4939# 66 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4940static int debug = 0;
4941# 67 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4942static char const __param_str_debug[6] = { (char const )'d', (char const )'e', (char const )'b', (char const )'u',
4943        (char const )'g', (char const )'\000'};
4944# 67 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4945static struct kernel_param const __param_debug __attribute__((__used__, __unused__,
4946__section__("__param"), __aligned__(sizeof(void *)))) = {__param_str_debug, (struct kernel_param_ops const *)(& param_ops_bool), (u16 )420,
4947    (u16 )0, {(void *)(& debug)}};
4948# 67 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4949static char const __mod_debugtype67[20] __attribute__((__used__, __unused__, __section__(".modinfo"),
4950__aligned__(1))) =
4951# 67 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4952  { (char const )'p', (char const )'a', (char const )'r', (char const )'m',
4953        (char const )'t', (char const )'y', (char const )'p', (char const )'e',
4954        (char const )'=', (char const )'d', (char const )'e', (char const )'b',
4955        (char const )'u', (char const )'g', (char const )':', (char const )'b',
4956        (char const )'o', (char const )'o', (char const )'l', (char const )'\000'};
4957# 68 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4958static char const __mod_debug68[46] __attribute__((__used__, __unused__, __section__(".modinfo"),
4959__aligned__(1))) =
4960# 68 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4961  { (char const )'p', (char const )'a', (char const )'r', (char const )'m',
4962        (char const )'=', (char const )'d', (char const )'e', (char const )'b',
4963        (char const )'u', (char const )'g', (char const )':', (char const )'d',
4964        (char const )'e', (char const )'b', (char const )'u', (char const )'g',
4965        (char const )'=', (char const )'1', (char const )' ', (char const )'e',
4966        (char const )'n', (char const )'a', (char const )'b', (char const )'l',
4967        (char const )'e', (char const )'s', (char const )' ', (char const )'d',
4968        (char const )'e', (char const )'b', (char const )'u', (char const )'g',
4969        (char const )'g', (char const )'i', (char const )'n', (char const )'g',
4970        (char const )' ', (char const )'m', (char const )'e', (char const )'s',
4971        (char const )'s', (char const )'a', (char const )'g', (char const )'e',
4972        (char const )'s', (char const )'\000'};
4973# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4974static struct usb_driver iowarrior_driver ;
4975# 71 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4976static struct mutex iowarrior_open_disc_lock = {{1}, {{{{0U}, 3735899821U, 4294967295U, (void *)-1L, {(struct lock_class_key *)0,
4977                                                          {(struct lock_class *)0,
4978                                                           (struct lock_class *)0},
4979                                                          "iowarrior_open_disc_lock.wait_lock",
4980                                                          0, 0UL}}}}, {& iowarrior_open_disc_lock.wait_list,
4981                                                                       & iowarrior_open_disc_lock.wait_list},
4982    (struct task_struct *)0, (char const *)0, (void *)(& iowarrior_open_disc_lock),
4983    {(struct lock_class_key *)0, {(struct lock_class *)0, (struct lock_class *)0},
4984     "iowarrior_open_disc_lock", 0, 0UL}};
4985# 113 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4986static int usb_get_report(struct usb_device *dev , struct usb_host_interface *inter ,
4987                          unsigned char type , unsigned char id , void *buf , int size )
4988{ unsigned int tmp___7 ;
4989  int tmp___8 ;
4990
4991  {
4992  {
4993# 117 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4994  tmp___7 = __create_pipe(dev, 0U);
4995# 117 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
4996  tmp___8 = usb_control_msg(dev, ((unsigned int )(2 << 30) | tmp___7) | 128U, (__u8 )1,
4997                            (__u8 )((128 | (1 << 5)) | 1), (__u16 )(((int )type << 8) + (int )id),
4998                            (__u16 )inter->desc.bInterfaceNumber, buf, (__u16 )size,
4999                            1250);
5000  }
5001# 117 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5002  return (tmp___8);
5003}
5004}
5005# 128 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5006static int usb_set_report(struct usb_interface *intf , unsigned char type , unsigned char id ,
5007                          void *buf , int size )
5008{ struct usb_device *tmp___7 ;
5009  unsigned int tmp___8 ;
5010  struct usb_device *tmp___9 ;
5011  int tmp___10 ;
5012
5013  {
5014  {
5015# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5016  tmp___7 = interface_to_usbdev(intf);
5017# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5018  tmp___8 = __create_pipe(tmp___7, 0U);
5019# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5020  tmp___9 = interface_to_usbdev(intf);
5021# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5022  tmp___10 = usb_control_msg(tmp___9, (unsigned int )(2 << 30) | tmp___8, (__u8 )9,
5023                             (__u8 )((1 << 5) | 1), (__u16 )(((int )type << 8) + (int )id),
5024                             (__u16 )(intf->cur_altsetting)->desc.bInterfaceNumber,
5025                             buf, (__u16 )size, 250);
5026  }
5027# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5028  return (tmp___10);
5029}
5030}
5031# 144 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5032static struct usb_device_id const iowarrior_ids[5] = { {(__u16 )3, (__u16 )1984, (__u16 )5376, (unsigned short)0, (unsigned short)0,
5033      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
5034      (unsigned char)0, 0UL},
5035        {(__u16 )3, (__u16 )1984, (__u16 )5377, (unsigned short)0, (unsigned short)0,
5036      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
5037      (unsigned char)0, 0UL},
5038        {(__u16 )3, (__u16 )1984, (__u16 )5393, (unsigned short)0, (unsigned short)0,
5039      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
5040      (unsigned char)0, 0UL},
5041        {(__u16 )3, (__u16 )1984, (__u16 )5394, (unsigned short)0, (unsigned short)0,
5042      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
5043      (unsigned char)0, 0UL},
5044        {(__u16 )3, (__u16 )1984, (__u16 )5379, (unsigned short)0, (unsigned short)0,
5045      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
5046      (unsigned char)0, 0UL}};
5047# 152 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5048extern struct usb_device_id const __mod_usb_device_table __attribute__((__unused__,
5049__alias__("iowarrior_ids"))) ;
5050# 157 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5051static void iowarrior_callback(struct urb *urb )
5052{ struct iowarrior *dev ;
5053  int intr_idx ;
5054  int read_idx ;
5055  int aux_idx ;
5056  int offset ;
5057  int status ;
5058  int retval ;
5059  int tmp___7 ;
5060  size_t __len ;
5061  void *__ret ;
5062  unsigned char tmp___8 ;
5063
5064  {
5065# 159 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5066  dev = (struct iowarrior *)urb->context;
5067# 164 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5068  status = urb->status;
5069# 168 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5070  if (status == 0) {
5071# 168 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5072    goto case_0;
5073  } else
5074# 171 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5075  if (status == -104) {
5076# 171 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5077    goto case_neg_104;
5078  } else
5079# 172 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5080  if (status == -2) {
5081# 172 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5082    goto case_neg_104;
5083  } else
5084# 173 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5085  if (status == -108) {
5086# 173 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5087    goto case_neg_104;
5088  } else {
5089# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5090    goto switch_default;
5091# 167 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5092    if (0) {
5093      case_0:
5094# 170 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5095      goto switch_break;
5096      case_neg_104:
5097# 174 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5098      return;
5099      switch_default:
5100# 176 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5101      goto exit;
5102    } else {
5103      switch_break: ;
5104    }
5105  }
5106  {
5107# 179 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5108  spin_lock(& dev->intr_idx_lock);
5109# 180 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5110  intr_idx = atomic_read((atomic_t const *)(& dev->intr_idx));
5111  }
5112# 182 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5113  if (intr_idx == 0) {
5114# 182 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5115    aux_idx = 15;
5116  } else {
5117# 182 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5118    aux_idx = intr_idx - 1;
5119  }
5120  {
5121# 183 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5122  read_idx = atomic_read((atomic_t const *)(& dev->read_idx));
5123  }
5124# 186 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5125  if (intr_idx != read_idx) {
5126# 186 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5127    if ((int )((dev->interface)->cur_altsetting)->desc.bInterfaceNumber == 0) {
5128      {
5129# 189 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5130      offset = aux_idx * (dev->report_size + 1);
5131# 190 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5132      tmp___7 = memcmp((void const *)(dev->read_queue + offset), (void const *)urb->transfer_buffer,
5133                       (unsigned long )dev->report_size);
5134      }
5135# 190 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5136      if (tmp___7) {
5137
5138      } else {
5139        {
5140# 194 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5141        spin_unlock(& dev->intr_idx_lock);
5142        }
5143# 195 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5144        goto exit;
5145      }
5146    } else {
5147
5148    }
5149  } else {
5150
5151  }
5152# 200 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5153  if (intr_idx == 15) {
5154# 200 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5155    aux_idx = 0;
5156  } else {
5157# 200 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5158    aux_idx = intr_idx + 1;
5159  }
5160# 201 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5161  if (read_idx == aux_idx) {
5162# 203 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5163    read_idx = read_idx + 1;
5164# 203 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5165    if (read_idx == 16) {
5166# 203 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5167      read_idx = 0;
5168    } else {
5169# 203 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5170      read_idx = read_idx;
5171    }
5172    {
5173# 204 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5174    atomic_set(& dev->read_idx, read_idx);
5175# 205 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5176    atomic_set(& dev->overflow_flag, 1);
5177    }
5178  } else {
5179
5180  }
5181  {
5182# 209 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5183  offset = intr_idx * (dev->report_size + 1);
5184# 210 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5185  __len = (size_t )dev->report_size;
5186# 210 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5187  __ret = __builtin_memcpy((void *)(dev->read_queue + offset), (void const *)urb->transfer_buffer,
5188                           __len);
5189# 212 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5190  tmp___8 = dev->serial_number;
5191# 212 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5192  dev->serial_number = (unsigned char )((int )dev->serial_number + 1);
5193# 212 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5194  *((dev->read_queue + offset) + dev->report_size) = tmp___8;
5195# 214 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5196  atomic_set(& dev->intr_idx, aux_idx);
5197# 215 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5198  spin_unlock(& dev->intr_idx_lock);
5199# 217 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5200  __wake_up(& dev->read_wait, 1U, 1, (void *)0);
5201  }
5202  exit:
5203  {
5204# 220 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5205  retval = usb_submit_urb(urb, 32U);
5206  }
5207# 221 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5208  if (retval) {
5209    {
5210# 222 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5211    dev_err((struct device const *)(& (dev->interface)->dev), "%s - usb_submit_urb failed with result %d\n",
5212            "iowarrior_callback", retval);
5213    }
5214  } else {
5215
5216  }
5217# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5218  return;
5219}
5220}
5221# 230 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5222static void iowarrior_write_callback(struct urb *urb )
5223{ struct iowarrior *dev ;
5224  int status ;
5225
5226  {
5227# 233 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5228  status = urb->status;
5229# 235 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5230  dev = (struct iowarrior *)urb->context;
5231# 237 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5232  if (status) {
5233# 237 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5234    if (status == -2) {
5235
5236    } else
5237# 237 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5238    if (status == -104) {
5239
5240    } else
5241# 237 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5242    if (status == -108) {
5243
5244    } else {
5245      {
5246# 240 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5247      while (1) {
5248        while_continue: ;
5249# 240 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5250        if (debug) {
5251          {
5252# 240 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5253          printk("<7>/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c: %s - nonzero write bulk status received: %d\n",
5254                 "iowarrior_write_callback", status);
5255          }
5256        } else {
5257
5258        }
5259# 240 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5260        goto while_break;
5261      }
5262      while_break___0: ;
5263      }
5264      while_break: ;
5265    }
5266  } else {
5267
5268  }
5269  {
5270# 244 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5271  usb_free_coherent(urb->dev, (size_t )urb->transfer_buffer_length, urb->transfer_buffer,
5272                    urb->transfer_dma);
5273# 247 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5274  atomic_dec(& dev->write_busy);
5275# 248 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5276  __wake_up(& dev->write_wait, 1U, 1, (void *)0);
5277  }
5278# 249 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5279  return;
5280}
5281}
5282# 254 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5283__inline static void iowarrior_delete(struct iowarrior *dev )
5284{
5285
5286  {
5287  {
5288# 256 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5289  while (1) {
5290    while_continue: ;
5291# 256 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5292    if (debug) {
5293      {
5294# 256 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5295      printk("<7>/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c: %s - minor %d\n",
5296             "iowarrior_delete", (int )dev->minor);
5297      }
5298    } else {
5299
5300    }
5301# 256 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5302    goto while_break;
5303  }
5304  while_break___0: ;
5305  }
5306  while_break:
5307  {
5308# 257 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5309  kfree((void const *)dev->int_in_buffer);
5310# 258 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5311  usb_free_urb(dev->int_in_urb);
5312# 259 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5313  kfree((void const *)dev->read_queue);
5314# 260 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5315  kfree((void const *)dev);
5316  }
5317# 261 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5318  return;
5319}
5320}
5321# 267 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5322static int read_index(struct iowarrior *dev )
5323{ int intr_idx ;
5324  int read_idx ;
5325  int tmp___7 ;
5326
5327  {
5328  {
5329# 271 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5330  read_idx = atomic_read((atomic_t const *)(& dev->read_idx));
5331# 272 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5332  intr_idx = atomic_read((atomic_t const *)(& dev->intr_idx));
5333  }
5334# 274 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5335  if (read_idx == intr_idx) {
5336# 274 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5337    tmp___7 = -1;
5338  } else {
5339# 274 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5340    tmp___7 = read_idx;
5341  }
5342# 274 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5343  return (tmp___7);
5344}
5345}
5346# 280 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5347static ssize_t iowarrior_read(struct file *file , char *buffer , size_t count , loff_t *ppos )
5348{ struct iowarrior *dev ;
5349  int read_idx ;
5350  int offset ;
5351  int r ;
5352  int __ret ;
5353  wait_queue_t __wait ;
5354  struct task_struct *tmp___7 ;
5355  struct task_struct *tmp___8 ;
5356  int tmp___9 ;
5357  int tmp___10 ;
5358  int tmp___11 ;
5359  int tmp ;
5360
5361  {
5362# 287 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5363  dev = (struct iowarrior *)file->private_data;
5364# 290 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5365  if ((unsigned long )dev == (unsigned long )((void *)0)) {
5366# 291 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5367    return ((ssize_t )-19);
5368  } else
5369# 290 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5370  if (! dev->present) {
5371# 291 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5372    return ((ssize_t )-19);
5373  } else {
5374
5375  }
5376  {
5377# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5378  while (1) {
5379    while_continue: ;
5380# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5381    if (debug) {
5382      {
5383# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5384      printk("<7>/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c: %s - minor %d, count = %zd\n",
5385             "iowarrior_read", (int )dev->minor, count);
5386      }
5387    } else {
5388
5389    }
5390# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5391    goto while_break;
5392  }
5393  while_break___3: ;
5394  }
5395  while_break: ;
5396# 296 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5397  if (count != (size_t )dev->report_size) {
5398# 296 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5399    if (count != (size_t )(dev->report_size + 1)) {
5400# 298 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5401      return ((ssize_t )-22);
5402    } else {
5403
5404    }
5405  } else {
5406
5407  }
5408  {
5409# 301 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5410  while (1) {
5411    while_continue___0: ;
5412    {
5413# 302 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5414    atomic_set(& dev->overflow_flag, 0);
5415# 303 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5416    read_idx = read_index(dev);
5417    }
5418# 303 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5419    if (read_idx == -1) {
5420# 305 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5421      if (file->f_flags & 2048U) {
5422# 306 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5423        return ((ssize_t )-11);
5424      } else {
5425# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5426        __ret = 0;
5427# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5428        if (! dev->present) {
5429
5430        } else {
5431          {
5432# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5433          read_idx = read_index(dev);
5434          }
5435# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5436          if (read_idx != -1) {
5437
5438          } else {
5439            {
5440# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5441            while (1) {
5442              while_continue___1: ;
5443              {
5444# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5445              tmp___7 = get_current();
5446# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5447              __wait.flags = 0U;
5448# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5449              __wait.private = (void *)tmp___7;
5450# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5451              __wait.func = & autoremove_wake_function;
5452# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5453              __wait.task_list.next = & __wait.task_list;
5454# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5455              __wait.task_list.prev = & __wait.task_list;
5456              }
5457              {
5458# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5459              while (1) {
5460                while_continue___2: ;
5461                {
5462# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5463                prepare_to_wait(& dev->read_wait, & __wait, 1);
5464                }
5465# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5466                if (! dev->present) {
5467# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5468                  goto while_break___2;
5469                } else {
5470                  {
5471# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5472                  read_idx = read_index(dev);
5473                  }
5474# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5475                  if (read_idx != -1) {
5476# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5477                    goto while_break___2;
5478                  } else {
5479
5480                  }
5481                }
5482                {
5483# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5484                tmp___8 = get_current();
5485# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5486                tmp___9 = signal_pending(tmp___8);
5487                }
5488# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5489                if (tmp___9) {
5490
5491                } else {
5492                  {
5493# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5494                  schedule();
5495                  }
5496# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5497                  goto __Cont;
5498                }
5499# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5500                __ret = -512;
5501# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5502                goto while_break___2;
5503                __Cont: ;
5504              }
5505              while_break___6: ;
5506              }
5507              while_break___2:
5508              {
5509# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5510              finish_wait(& dev->read_wait, & __wait);
5511              }
5512# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5513              goto while_break___1;
5514            }
5515            while_break___5: ;
5516            }
5517            while_break___1: ;
5518          }
5519        }
5520# 309 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5521        r = __ret;
5522# 315 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5523        if (r) {
5524# 317 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5525          return ((ssize_t )-85);
5526        } else {
5527
5528        }
5529# 319 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5530        if (! dev->present) {
5531# 321 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5532          return ((ssize_t )-19);
5533        } else {
5534
5535        }
5536# 323 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5537        if (read_idx == -1) {
5538# 325 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5539          return ((ssize_t )0);
5540        } else {
5541
5542        }
5543      }
5544    } else {
5545
5546    }
5547    {
5548# 330 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5549    offset = read_idx * (dev->report_size + 1);
5550# 331 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5551    tmp = (int )copy_to_user((void *)buffer, (void const *)(dev->read_queue + offset),
5552                             (unsigned int )count);
5553# 331 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5554    tmp___10 = tmp;
5555    }
5556# 331 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5557    if (tmp___10) {
5558# 332 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5559      return ((ssize_t )-14);
5560    } else {
5561
5562    }
5563    {
5564# 301 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5565    tmp___11 = atomic_read((atomic_t const *)(& dev->overflow_flag));
5566    }
5567# 301 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5568    if (tmp___11) {
5569
5570    } else {
5571# 301 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5572      goto while_break___0;
5573    }
5574  }
5575  while_break___4: ;
5576  }
5577  while_break___0:
5578# 336 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5579  read_idx = read_idx + 1;
5580# 336 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5581  if (read_idx == 16) {
5582# 336 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5583    read_idx = 0;
5584  } else {
5585# 336 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5586    read_idx = read_idx;
5587  }
5588  {
5589# 337 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5590  atomic_set(& dev->read_idx, read_idx);
5591  }
5592# 338 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5593  return ((ssize_t )count);
5594}
5595}
5596# 344 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5597static ssize_t iowarrior_write(struct file *file , char const *user_buffer , size_t count ,
5598                               loff_t *ppos )
5599{ struct iowarrior *dev ;
5600  int retval ;
5601  char *buf ;
5602  struct urb *int_out_urb ;
5603  void *tmp___7 ;
5604  unsigned long tmp___8 ;
5605  int __ret ;
5606  wait_queue_t __wait ;
5607  struct task_struct *tmp___9 ;
5608  int tmp___10 ;
5609  struct task_struct *tmp___11 ;
5610  int tmp___12 ;
5611  int tmp___13 ;
5612  int tmp___14 ;
5613  void *tmp___15 ;
5614  unsigned int tmp___16 ;
5615  unsigned long tmp___17 ;
5616  int tmp___18 ;
5617  unsigned long tmp ;
5618  unsigned long tmp___19 ;
5619
5620  {
5621  {
5622# 349 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5623  retval = 0;
5624# 350 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5625  buf = (char *)((void *)0);
5626# 351 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5627  int_out_urb = (struct urb *)((void *)0);
5628# 353 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5629  dev = (struct iowarrior *)file->private_data;
5630# 355 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5631  mutex_lock_nested(& dev->mutex, 0U);
5632  }
5633# 357 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5634  if (! dev->present) {
5635# 358 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5636    retval = -19;
5637# 359 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5638    goto exit;
5639  } else {
5640
5641  }
5642  {
5643# 361 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5644  while (1) {
5645    while_continue: ;
5646# 361 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5647    if (debug) {
5648      {
5649# 361 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5650      printk("<7>/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c: %s - minor %d, count = %zd\n",
5651             "iowarrior_write", (int )dev->minor, count);
5652      }
5653    } else {
5654
5655    }
5656# 361 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5657    goto while_break;
5658  }
5659  while_break___5: ;
5660  }
5661  while_break: ;
5662# 363 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5663  if (count == 0UL) {
5664# 364 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5665    retval = 0;
5666# 365 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5667    goto exit;
5668  } else {
5669
5670  }
5671# 368 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5672  if (count != (size_t )dev->report_size) {
5673# 369 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5674    retval = -22;
5675# 370 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5676    goto exit;
5677  } else {
5678
5679  }
5680# 373 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5681  if ((int )dev->product_id == 5377) {
5682# 373 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5683    goto case_5377;
5684  } else
5685# 374 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5686  if ((int )dev->product_id == 5393) {
5687# 374 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5688    goto case_5377;
5689  } else
5690# 375 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5691  if ((int )dev->product_id == 5394) {
5692# 375 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5693    goto case_5377;
5694  } else
5695# 376 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5696  if ((int )dev->product_id == 5376) {
5697# 376 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5698    goto case_5377;
5699  } else
5700# 392 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5701  if ((int )dev->product_id == 5379) {
5702# 392 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5703    goto case_5379;
5704  } else {
5705# 455 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5706    goto switch_default;
5707# 372 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5708    if (0) {
5709      case_5377:
5710      {
5711# 378 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5712      tmp___7 = kmalloc(count, 208U);
5713# 378 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5714      buf = (char *)tmp___7;
5715      }
5716# 379 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5717      if (! buf) {
5718# 380 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5719        retval = -12;
5720# 381 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5721        goto exit;
5722      } else {
5723
5724      }
5725      {
5726# 383 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5727      tmp = (unsigned long )copy_from_user((void *)buf, (void const *)user_buffer,
5728                                           count);
5729# 383 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5730      tmp___8 = tmp;
5731      }
5732# 383 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5733      if (tmp___8) {
5734        {
5735# 384 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5736        retval = -14;
5737# 385 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5738        kfree((void const *)buf);
5739        }
5740# 386 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5741        goto exit;
5742      } else {
5743
5744      }
5745      {
5746# 388 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5747      retval = usb_set_report(dev->interface, (unsigned char)2, (unsigned char)0,
5748                              (void *)buf, (int )count);
5749# 389 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5750      kfree((void const *)buf);
5751      }
5752# 390 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5753      goto exit;
5754# 391 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5755      goto switch_break;
5756      case_5379:
5757      {
5758# 394 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5759      tmp___14 = atomic_read((atomic_t const *)(& dev->write_busy));
5760      }
5761# 394 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5762      if (tmp___14 == 4) {
5763# 396 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5764        if (file->f_flags & 2048U) {
5765# 397 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5766          retval = -11;
5767# 398 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"
5768          goto exit;
5769        } else {
5770# 400 "/anthill/stuff/tacas-comp/work/current--X--drivers/usb/misc/iowarrior.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/usb/misc/iowarrior.c.common.c"