Showing error 307

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


Source:

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