Showing error 236

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--hwmon--smsc47b397.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 5469
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

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