Showing error 228

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--ads7871.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 3872
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 20 "include/asm-generic/int-ll64.h"
   5typedef unsigned char __u8;
   6#line 23 "include/asm-generic/int-ll64.h"
   7typedef unsigned short __u16;
   8#line 25 "include/asm-generic/int-ll64.h"
   9typedef int __s32;
  10#line 26 "include/asm-generic/int-ll64.h"
  11typedef unsigned int __u32;
  12#line 30 "include/asm-generic/int-ll64.h"
  13typedef unsigned long long __u64;
  14#line 43 "include/asm-generic/int-ll64.h"
  15typedef unsigned char u8;
  16#line 45 "include/asm-generic/int-ll64.h"
  17typedef short s16;
  18#line 46 "include/asm-generic/int-ll64.h"
  19typedef unsigned short u16;
  20#line 49 "include/asm-generic/int-ll64.h"
  21typedef unsigned int u32;
  22#line 51 "include/asm-generic/int-ll64.h"
  23typedef long long s64;
  24#line 52 "include/asm-generic/int-ll64.h"
  25typedef unsigned long long u64;
  26#line 14 "include/asm-generic/posix_types.h"
  27typedef long __kernel_long_t;
  28#line 15 "include/asm-generic/posix_types.h"
  29typedef unsigned long __kernel_ulong_t;
  30#line 31 "include/asm-generic/posix_types.h"
  31typedef int __kernel_pid_t;
  32#line 52 "include/asm-generic/posix_types.h"
  33typedef unsigned int __kernel_uid32_t;
  34#line 53 "include/asm-generic/posix_types.h"
  35typedef unsigned int __kernel_gid32_t;
  36#line 75 "include/asm-generic/posix_types.h"
  37typedef __kernel_ulong_t __kernel_size_t;
  38#line 76 "include/asm-generic/posix_types.h"
  39typedef __kernel_long_t __kernel_ssize_t;
  40#line 91 "include/asm-generic/posix_types.h"
  41typedef long long __kernel_loff_t;
  42#line 92 "include/asm-generic/posix_types.h"
  43typedef __kernel_long_t __kernel_time_t;
  44#line 93 "include/asm-generic/posix_types.h"
  45typedef __kernel_long_t __kernel_clock_t;
  46#line 94 "include/asm-generic/posix_types.h"
  47typedef int __kernel_timer_t;
  48#line 95 "include/asm-generic/posix_types.h"
  49typedef int __kernel_clockid_t;
  50#line 21 "include/linux/types.h"
  51typedef __u32 __kernel_dev_t;
  52#line 24 "include/linux/types.h"
  53typedef __kernel_dev_t dev_t;
  54#line 27 "include/linux/types.h"
  55typedef unsigned short umode_t;
  56#line 30 "include/linux/types.h"
  57typedef __kernel_pid_t pid_t;
  58#line 35 "include/linux/types.h"
  59typedef __kernel_clockid_t clockid_t;
  60#line 38 "include/linux/types.h"
  61typedef _Bool bool;
  62#line 40 "include/linux/types.h"
  63typedef __kernel_uid32_t uid_t;
  64#line 41 "include/linux/types.h"
  65typedef __kernel_gid32_t gid_t;
  66#line 54 "include/linux/types.h"
  67typedef __kernel_loff_t loff_t;
  68#line 63 "include/linux/types.h"
  69typedef __kernel_size_t size_t;
  70#line 68 "include/linux/types.h"
  71typedef __kernel_ssize_t ssize_t;
  72#line 78 "include/linux/types.h"
  73typedef __kernel_time_t time_t;
  74#line 111 "include/linux/types.h"
  75typedef __s32 int32_t;
  76#line 115 "include/linux/types.h"
  77typedef __u8 uint8_t;
  78#line 117 "include/linux/types.h"
  79typedef __u32 uint32_t;
  80#line 155 "include/linux/types.h"
  81typedef u64 dma_addr_t;
  82#line 202 "include/linux/types.h"
  83typedef unsigned int gfp_t;
  84#line 219 "include/linux/types.h"
  85struct __anonstruct_atomic_t_7 {
  86   int counter ;
  87};
  88#line 219 "include/linux/types.h"
  89typedef struct __anonstruct_atomic_t_7 atomic_t;
  90#line 224 "include/linux/types.h"
  91struct __anonstruct_atomic64_t_8 {
  92   long counter ;
  93};
  94#line 224 "include/linux/types.h"
  95typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  96#line 229 "include/linux/types.h"
  97struct list_head {
  98   struct list_head *next ;
  99   struct list_head *prev ;
 100};
 101#line 233
 102struct hlist_node;
 103#line 233 "include/linux/types.h"
 104struct hlist_head {
 105   struct hlist_node *first ;
 106};
 107#line 237 "include/linux/types.h"
 108struct hlist_node {
 109   struct hlist_node *next ;
 110   struct hlist_node **pprev ;
 111};
 112#line 253 "include/linux/types.h"
 113struct rcu_head {
 114   struct rcu_head *next ;
 115   void (*func)(struct rcu_head *head ) ;
 116};
 117#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 118struct module;
 119#line 56
 120struct module;
 121#line 146 "include/linux/init.h"
 122typedef void (*ctor_fn_t)(void);
 123#line 9 "include/linux/dynamic_debug.h"
 124struct _ddebug {
 125   char const   *modname ;
 126   char const   *function ;
 127   char const   *filename ;
 128   char const   *format ;
 129   unsigned int lineno : 18 ;
 130   unsigned int flags : 8 ;
 131} __attribute__((__aligned__(8))) ;
 132#line 47
 133struct device;
 134#line 47
 135struct device;
 136#line 135 "include/linux/kernel.h"
 137struct completion;
 138#line 135
 139struct completion;
 140#line 136
 141struct pt_regs;
 142#line 136
 143struct pt_regs;
 144#line 349
 145struct pid;
 146#line 349
 147struct pid;
 148#line 12 "include/linux/thread_info.h"
 149struct timespec;
 150#line 12
 151struct timespec;
 152#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
 153struct page;
 154#line 18
 155struct page;
 156#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 157struct task_struct;
 158#line 20
 159struct task_struct;
 160#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 161struct task_struct;
 162#line 8
 163struct mm_struct;
 164#line 8
 165struct mm_struct;
 166#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 167struct pt_regs {
 168   unsigned long r15 ;
 169   unsigned long r14 ;
 170   unsigned long r13 ;
 171   unsigned long r12 ;
 172   unsigned long bp ;
 173   unsigned long bx ;
 174   unsigned long r11 ;
 175   unsigned long r10 ;
 176   unsigned long r9 ;
 177   unsigned long r8 ;
 178   unsigned long ax ;
 179   unsigned long cx ;
 180   unsigned long dx ;
 181   unsigned long si ;
 182   unsigned long di ;
 183   unsigned long orig_ax ;
 184   unsigned long ip ;
 185   unsigned long cs ;
 186   unsigned long flags ;
 187   unsigned long sp ;
 188   unsigned long ss ;
 189};
 190#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 191struct __anonstruct____missing_field_name_15 {
 192   unsigned int a ;
 193   unsigned int b ;
 194};
 195#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 196struct __anonstruct____missing_field_name_16 {
 197   u16 limit0 ;
 198   u16 base0 ;
 199   unsigned int base1 : 8 ;
 200   unsigned int type : 4 ;
 201   unsigned int s : 1 ;
 202   unsigned int dpl : 2 ;
 203   unsigned int p : 1 ;
 204   unsigned int limit : 4 ;
 205   unsigned int avl : 1 ;
 206   unsigned int l : 1 ;
 207   unsigned int d : 1 ;
 208   unsigned int g : 1 ;
 209   unsigned int base2 : 8 ;
 210};
 211#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 212union __anonunion____missing_field_name_14 {
 213   struct __anonstruct____missing_field_name_15 __annonCompField5 ;
 214   struct __anonstruct____missing_field_name_16 __annonCompField6 ;
 215};
 216#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 217struct desc_struct {
 218   union __anonunion____missing_field_name_14 __annonCompField7 ;
 219} __attribute__((__packed__)) ;
 220#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 221typedef unsigned long pgdval_t;
 222#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 223typedef unsigned long pgprotval_t;
 224#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 225struct pgprot {
 226   pgprotval_t pgprot ;
 227};
 228#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 229typedef struct pgprot pgprot_t;
 230#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 231struct __anonstruct_pgd_t_20 {
 232   pgdval_t pgd ;
 233};
 234#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 235typedef struct __anonstruct_pgd_t_20 pgd_t;
 236#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 237typedef struct page *pgtable_t;
 238#line 295
 239struct file;
 240#line 295
 241struct file;
 242#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 243struct page;
 244#line 47
 245struct thread_struct;
 246#line 47
 247struct thread_struct;
 248#line 50
 249struct mm_struct;
 250#line 51
 251struct desc_struct;
 252#line 52
 253struct task_struct;
 254#line 53
 255struct cpumask;
 256#line 53
 257struct cpumask;
 258#line 329
 259struct arch_spinlock;
 260#line 329
 261struct arch_spinlock;
 262#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 263struct task_struct;
 264#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
 265struct kernel_vm86_regs {
 266   struct pt_regs pt ;
 267   unsigned short es ;
 268   unsigned short __esh ;
 269   unsigned short ds ;
 270   unsigned short __dsh ;
 271   unsigned short fs ;
 272   unsigned short __fsh ;
 273   unsigned short gs ;
 274   unsigned short __gsh ;
 275};
 276#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 277union __anonunion____missing_field_name_24 {
 278   struct pt_regs *regs ;
 279   struct kernel_vm86_regs *vm86 ;
 280};
 281#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 282struct math_emu_info {
 283   long ___orig_eip ;
 284   union __anonunion____missing_field_name_24 __annonCompField8 ;
 285};
 286#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 287struct task_struct;
 288#line 10 "include/asm-generic/bug.h"
 289struct bug_entry {
 290   int bug_addr_disp ;
 291   int file_disp ;
 292   unsigned short line ;
 293   unsigned short flags ;
 294};
 295#line 12 "include/linux/bug.h"
 296struct pt_regs;
 297#line 14 "include/linux/cpumask.h"
 298struct cpumask {
 299   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 300};
 301#line 14 "include/linux/cpumask.h"
 302typedef struct cpumask cpumask_t;
 303#line 637 "include/linux/cpumask.h"
 304typedef struct cpumask *cpumask_var_t;
 305#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 306struct static_key;
 307#line 234
 308struct static_key;
 309#line 11 "include/linux/personality.h"
 310struct pt_regs;
 311#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 312struct i387_fsave_struct {
 313   u32 cwd ;
 314   u32 swd ;
 315   u32 twd ;
 316   u32 fip ;
 317   u32 fcs ;
 318   u32 foo ;
 319   u32 fos ;
 320   u32 st_space[20] ;
 321   u32 status ;
 322};
 323#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 324struct __anonstruct____missing_field_name_31 {
 325   u64 rip ;
 326   u64 rdp ;
 327};
 328#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 329struct __anonstruct____missing_field_name_32 {
 330   u32 fip ;
 331   u32 fcs ;
 332   u32 foo ;
 333   u32 fos ;
 334};
 335#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 336union __anonunion____missing_field_name_30 {
 337   struct __anonstruct____missing_field_name_31 __annonCompField12 ;
 338   struct __anonstruct____missing_field_name_32 __annonCompField13 ;
 339};
 340#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 341union __anonunion____missing_field_name_33 {
 342   u32 padding1[12] ;
 343   u32 sw_reserved[12] ;
 344};
 345#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 346struct i387_fxsave_struct {
 347   u16 cwd ;
 348   u16 swd ;
 349   u16 twd ;
 350   u16 fop ;
 351   union __anonunion____missing_field_name_30 __annonCompField14 ;
 352   u32 mxcsr ;
 353   u32 mxcsr_mask ;
 354   u32 st_space[32] ;
 355   u32 xmm_space[64] ;
 356   u32 padding[12] ;
 357   union __anonunion____missing_field_name_33 __annonCompField15 ;
 358} __attribute__((__aligned__(16))) ;
 359#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 360struct i387_soft_struct {
 361   u32 cwd ;
 362   u32 swd ;
 363   u32 twd ;
 364   u32 fip ;
 365   u32 fcs ;
 366   u32 foo ;
 367   u32 fos ;
 368   u32 st_space[20] ;
 369   u8 ftop ;
 370   u8 changed ;
 371   u8 lookahead ;
 372   u8 no_update ;
 373   u8 rm ;
 374   u8 alimit ;
 375   struct math_emu_info *info ;
 376   u32 entry_eip ;
 377};
 378#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 379struct ymmh_struct {
 380   u32 ymmh_space[64] ;
 381};
 382#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 383struct xsave_hdr_struct {
 384   u64 xstate_bv ;
 385   u64 reserved1[2] ;
 386   u64 reserved2[5] ;
 387} __attribute__((__packed__)) ;
 388#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 389struct xsave_struct {
 390   struct i387_fxsave_struct i387 ;
 391   struct xsave_hdr_struct xsave_hdr ;
 392   struct ymmh_struct ymmh ;
 393} __attribute__((__packed__, __aligned__(64))) ;
 394#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 395union thread_xstate {
 396   struct i387_fsave_struct fsave ;
 397   struct i387_fxsave_struct fxsave ;
 398   struct i387_soft_struct soft ;
 399   struct xsave_struct xsave ;
 400};
 401#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 402struct fpu {
 403   unsigned int last_cpu ;
 404   unsigned int has_fpu ;
 405   union thread_xstate *state ;
 406};
 407#line 433
 408struct kmem_cache;
 409#line 435
 410struct perf_event;
 411#line 435
 412struct perf_event;
 413#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 414struct thread_struct {
 415   struct desc_struct tls_array[3] ;
 416   unsigned long sp0 ;
 417   unsigned long sp ;
 418   unsigned long usersp ;
 419   unsigned short es ;
 420   unsigned short ds ;
 421   unsigned short fsindex ;
 422   unsigned short gsindex ;
 423   unsigned long fs ;
 424   unsigned long gs ;
 425   struct perf_event *ptrace_bps[4] ;
 426   unsigned long debugreg6 ;
 427   unsigned long ptrace_dr7 ;
 428   unsigned long cr2 ;
 429   unsigned long trap_nr ;
 430   unsigned long error_code ;
 431   struct fpu fpu ;
 432   unsigned long *io_bitmap_ptr ;
 433   unsigned long iopl ;
 434   unsigned int io_bitmap_max ;
 435};
 436#line 23 "include/asm-generic/atomic-long.h"
 437typedef atomic64_t atomic_long_t;
 438#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 439typedef u16 __ticket_t;
 440#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 441typedef u32 __ticketpair_t;
 442#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 443struct __raw_tickets {
 444   __ticket_t head ;
 445   __ticket_t tail ;
 446};
 447#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 448union __anonunion____missing_field_name_36 {
 449   __ticketpair_t head_tail ;
 450   struct __raw_tickets tickets ;
 451};
 452#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 453struct arch_spinlock {
 454   union __anonunion____missing_field_name_36 __annonCompField17 ;
 455};
 456#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 457typedef struct arch_spinlock arch_spinlock_t;
 458#line 12 "include/linux/lockdep.h"
 459struct task_struct;
 460#line 20 "include/linux/spinlock_types.h"
 461struct raw_spinlock {
 462   arch_spinlock_t raw_lock ;
 463   unsigned int magic ;
 464   unsigned int owner_cpu ;
 465   void *owner ;
 466};
 467#line 20 "include/linux/spinlock_types.h"
 468typedef struct raw_spinlock raw_spinlock_t;
 469#line 64 "include/linux/spinlock_types.h"
 470union __anonunion____missing_field_name_39 {
 471   struct raw_spinlock rlock ;
 472};
 473#line 64 "include/linux/spinlock_types.h"
 474struct spinlock {
 475   union __anonunion____missing_field_name_39 __annonCompField19 ;
 476};
 477#line 64 "include/linux/spinlock_types.h"
 478typedef struct spinlock spinlock_t;
 479#line 119 "include/linux/seqlock.h"
 480struct seqcount {
 481   unsigned int sequence ;
 482};
 483#line 119 "include/linux/seqlock.h"
 484typedef struct seqcount seqcount_t;
 485#line 14 "include/linux/time.h"
 486struct timespec {
 487   __kernel_time_t tv_sec ;
 488   long tv_nsec ;
 489};
 490#line 49 "include/linux/wait.h"
 491struct __wait_queue_head {
 492   spinlock_t lock ;
 493   struct list_head task_list ;
 494};
 495#line 53 "include/linux/wait.h"
 496typedef struct __wait_queue_head wait_queue_head_t;
 497#line 55
 498struct task_struct;
 499#line 98 "include/linux/nodemask.h"
 500struct __anonstruct_nodemask_t_42 {
 501   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 502};
 503#line 98 "include/linux/nodemask.h"
 504typedef struct __anonstruct_nodemask_t_42 nodemask_t;
 505#line 60 "include/linux/pageblock-flags.h"
 506struct page;
 507#line 48 "include/linux/mutex.h"
 508struct mutex {
 509   atomic_t count ;
 510   spinlock_t wait_lock ;
 511   struct list_head wait_list ;
 512   struct task_struct *owner ;
 513   char const   *name ;
 514   void *magic ;
 515};
 516#line 69 "include/linux/mutex.h"
 517struct mutex_waiter {
 518   struct list_head list ;
 519   struct task_struct *task ;
 520   void *magic ;
 521};
 522#line 19 "include/linux/rwsem.h"
 523struct rw_semaphore;
 524#line 19
 525struct rw_semaphore;
 526#line 25 "include/linux/rwsem.h"
 527struct rw_semaphore {
 528   long count ;
 529   raw_spinlock_t wait_lock ;
 530   struct list_head wait_list ;
 531};
 532#line 25 "include/linux/completion.h"
 533struct completion {
 534   unsigned int done ;
 535   wait_queue_head_t wait ;
 536};
 537#line 9 "include/linux/memory_hotplug.h"
 538struct page;
 539#line 202 "include/linux/ioport.h"
 540struct device;
 541#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
 542struct device;
 543#line 46 "include/linux/ktime.h"
 544union ktime {
 545   s64 tv64 ;
 546};
 547#line 59 "include/linux/ktime.h"
 548typedef union ktime ktime_t;
 549#line 10 "include/linux/timer.h"
 550struct tvec_base;
 551#line 10
 552struct tvec_base;
 553#line 12 "include/linux/timer.h"
 554struct timer_list {
 555   struct list_head entry ;
 556   unsigned long expires ;
 557   struct tvec_base *base ;
 558   void (*function)(unsigned long  ) ;
 559   unsigned long data ;
 560   int slack ;
 561   int start_pid ;
 562   void *start_site ;
 563   char start_comm[16] ;
 564};
 565#line 289
 566struct hrtimer;
 567#line 289
 568struct hrtimer;
 569#line 290
 570enum hrtimer_restart;
 571#line 17 "include/linux/workqueue.h"
 572struct work_struct;
 573#line 17
 574struct work_struct;
 575#line 79 "include/linux/workqueue.h"
 576struct work_struct {
 577   atomic_long_t data ;
 578   struct list_head entry ;
 579   void (*func)(struct work_struct *work ) ;
 580};
 581#line 42 "include/linux/pm.h"
 582struct device;
 583#line 50 "include/linux/pm.h"
 584struct pm_message {
 585   int event ;
 586};
 587#line 50 "include/linux/pm.h"
 588typedef struct pm_message pm_message_t;
 589#line 264 "include/linux/pm.h"
 590struct dev_pm_ops {
 591   int (*prepare)(struct device *dev ) ;
 592   void (*complete)(struct device *dev ) ;
 593   int (*suspend)(struct device *dev ) ;
 594   int (*resume)(struct device *dev ) ;
 595   int (*freeze)(struct device *dev ) ;
 596   int (*thaw)(struct device *dev ) ;
 597   int (*poweroff)(struct device *dev ) ;
 598   int (*restore)(struct device *dev ) ;
 599   int (*suspend_late)(struct device *dev ) ;
 600   int (*resume_early)(struct device *dev ) ;
 601   int (*freeze_late)(struct device *dev ) ;
 602   int (*thaw_early)(struct device *dev ) ;
 603   int (*poweroff_late)(struct device *dev ) ;
 604   int (*restore_early)(struct device *dev ) ;
 605   int (*suspend_noirq)(struct device *dev ) ;
 606   int (*resume_noirq)(struct device *dev ) ;
 607   int (*freeze_noirq)(struct device *dev ) ;
 608   int (*thaw_noirq)(struct device *dev ) ;
 609   int (*poweroff_noirq)(struct device *dev ) ;
 610   int (*restore_noirq)(struct device *dev ) ;
 611   int (*runtime_suspend)(struct device *dev ) ;
 612   int (*runtime_resume)(struct device *dev ) ;
 613   int (*runtime_idle)(struct device *dev ) ;
 614};
 615#line 458
 616enum rpm_status {
 617    RPM_ACTIVE = 0,
 618    RPM_RESUMING = 1,
 619    RPM_SUSPENDED = 2,
 620    RPM_SUSPENDING = 3
 621} ;
 622#line 480
 623enum rpm_request {
 624    RPM_REQ_NONE = 0,
 625    RPM_REQ_IDLE = 1,
 626    RPM_REQ_SUSPEND = 2,
 627    RPM_REQ_AUTOSUSPEND = 3,
 628    RPM_REQ_RESUME = 4
 629} ;
 630#line 488
 631struct wakeup_source;
 632#line 488
 633struct wakeup_source;
 634#line 495 "include/linux/pm.h"
 635struct pm_subsys_data {
 636   spinlock_t lock ;
 637   unsigned int refcount ;
 638};
 639#line 506
 640struct dev_pm_qos_request;
 641#line 506
 642struct pm_qos_constraints;
 643#line 506 "include/linux/pm.h"
 644struct dev_pm_info {
 645   pm_message_t power_state ;
 646   unsigned int can_wakeup : 1 ;
 647   unsigned int async_suspend : 1 ;
 648   bool is_prepared : 1 ;
 649   bool is_suspended : 1 ;
 650   bool ignore_children : 1 ;
 651   spinlock_t lock ;
 652   struct list_head entry ;
 653   struct completion completion ;
 654   struct wakeup_source *wakeup ;
 655   bool wakeup_path : 1 ;
 656   struct timer_list suspend_timer ;
 657   unsigned long timer_expires ;
 658   struct work_struct work ;
 659   wait_queue_head_t wait_queue ;
 660   atomic_t usage_count ;
 661   atomic_t child_count ;
 662   unsigned int disable_depth : 3 ;
 663   unsigned int idle_notification : 1 ;
 664   unsigned int request_pending : 1 ;
 665   unsigned int deferred_resume : 1 ;
 666   unsigned int run_wake : 1 ;
 667   unsigned int runtime_auto : 1 ;
 668   unsigned int no_callbacks : 1 ;
 669   unsigned int irq_safe : 1 ;
 670   unsigned int use_autosuspend : 1 ;
 671   unsigned int timer_autosuspends : 1 ;
 672   enum rpm_request request ;
 673   enum rpm_status runtime_status ;
 674   int runtime_error ;
 675   int autosuspend_delay ;
 676   unsigned long last_busy ;
 677   unsigned long active_jiffies ;
 678   unsigned long suspended_jiffies ;
 679   unsigned long accounting_timestamp ;
 680   ktime_t suspend_time ;
 681   s64 max_time_suspended_ns ;
 682   struct dev_pm_qos_request *pq_req ;
 683   struct pm_subsys_data *subsys_data ;
 684   struct pm_qos_constraints *constraints ;
 685};
 686#line 564 "include/linux/pm.h"
 687struct dev_pm_domain {
 688   struct dev_pm_ops ops ;
 689};
 690#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 691struct __anonstruct_mm_context_t_112 {
 692   void *ldt ;
 693   int size ;
 694   unsigned short ia32_compat ;
 695   struct mutex lock ;
 696   void *vdso ;
 697};
 698#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 699typedef struct __anonstruct_mm_context_t_112 mm_context_t;
 700#line 8 "include/linux/vmalloc.h"
 701struct vm_area_struct;
 702#line 8
 703struct vm_area_struct;
 704#line 994 "include/linux/mmzone.h"
 705struct page;
 706#line 10 "include/linux/gfp.h"
 707struct vm_area_struct;
 708#line 29 "include/linux/sysctl.h"
 709struct completion;
 710#line 100 "include/linux/rbtree.h"
 711struct rb_node {
 712   unsigned long rb_parent_color ;
 713   struct rb_node *rb_right ;
 714   struct rb_node *rb_left ;
 715} __attribute__((__aligned__(sizeof(long )))) ;
 716#line 110 "include/linux/rbtree.h"
 717struct rb_root {
 718   struct rb_node *rb_node ;
 719};
 720#line 939 "include/linux/sysctl.h"
 721struct nsproxy;
 722#line 939
 723struct nsproxy;
 724#line 48 "include/linux/kmod.h"
 725struct cred;
 726#line 48
 727struct cred;
 728#line 49
 729struct file;
 730#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 731struct task_struct;
 732#line 18 "include/linux/elf.h"
 733typedef __u64 Elf64_Addr;
 734#line 19 "include/linux/elf.h"
 735typedef __u16 Elf64_Half;
 736#line 23 "include/linux/elf.h"
 737typedef __u32 Elf64_Word;
 738#line 24 "include/linux/elf.h"
 739typedef __u64 Elf64_Xword;
 740#line 194 "include/linux/elf.h"
 741struct elf64_sym {
 742   Elf64_Word st_name ;
 743   unsigned char st_info ;
 744   unsigned char st_other ;
 745   Elf64_Half st_shndx ;
 746   Elf64_Addr st_value ;
 747   Elf64_Xword st_size ;
 748};
 749#line 194 "include/linux/elf.h"
 750typedef struct elf64_sym Elf64_Sym;
 751#line 438
 752struct file;
 753#line 20 "include/linux/kobject_ns.h"
 754struct sock;
 755#line 20
 756struct sock;
 757#line 21
 758struct kobject;
 759#line 21
 760struct kobject;
 761#line 27
 762enum kobj_ns_type {
 763    KOBJ_NS_TYPE_NONE = 0,
 764    KOBJ_NS_TYPE_NET = 1,
 765    KOBJ_NS_TYPES = 2
 766} ;
 767#line 40 "include/linux/kobject_ns.h"
 768struct kobj_ns_type_operations {
 769   enum kobj_ns_type type ;
 770   void *(*grab_current_ns)(void) ;
 771   void const   *(*netlink_ns)(struct sock *sk ) ;
 772   void const   *(*initial_ns)(void) ;
 773   void (*drop_ns)(void * ) ;
 774};
 775#line 22 "include/linux/sysfs.h"
 776struct kobject;
 777#line 23
 778struct module;
 779#line 24
 780enum kobj_ns_type;
 781#line 26 "include/linux/sysfs.h"
 782struct attribute {
 783   char const   *name ;
 784   umode_t mode ;
 785};
 786#line 56 "include/linux/sysfs.h"
 787struct attribute_group {
 788   char const   *name ;
 789   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 790   struct attribute **attrs ;
 791};
 792#line 85
 793struct file;
 794#line 86
 795struct vm_area_struct;
 796#line 88 "include/linux/sysfs.h"
 797struct bin_attribute {
 798   struct attribute attr ;
 799   size_t size ;
 800   void *private ;
 801   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 802                   loff_t  , size_t  ) ;
 803   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 804                    loff_t  , size_t  ) ;
 805   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 806};
 807#line 112 "include/linux/sysfs.h"
 808struct sysfs_ops {
 809   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 810   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 811   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 812};
 813#line 118
 814struct sysfs_dirent;
 815#line 118
 816struct sysfs_dirent;
 817#line 22 "include/linux/kref.h"
 818struct kref {
 819   atomic_t refcount ;
 820};
 821#line 60 "include/linux/kobject.h"
 822struct kset;
 823#line 60
 824struct kobj_type;
 825#line 60 "include/linux/kobject.h"
 826struct kobject {
 827   char const   *name ;
 828   struct list_head entry ;
 829   struct kobject *parent ;
 830   struct kset *kset ;
 831   struct kobj_type *ktype ;
 832   struct sysfs_dirent *sd ;
 833   struct kref kref ;
 834   unsigned int state_initialized : 1 ;
 835   unsigned int state_in_sysfs : 1 ;
 836   unsigned int state_add_uevent_sent : 1 ;
 837   unsigned int state_remove_uevent_sent : 1 ;
 838   unsigned int uevent_suppress : 1 ;
 839};
 840#line 108 "include/linux/kobject.h"
 841struct kobj_type {
 842   void (*release)(struct kobject *kobj ) ;
 843   struct sysfs_ops  const  *sysfs_ops ;
 844   struct attribute **default_attrs ;
 845   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 846   void const   *(*namespace)(struct kobject *kobj ) ;
 847};
 848#line 116 "include/linux/kobject.h"
 849struct kobj_uevent_env {
 850   char *envp[32] ;
 851   int envp_idx ;
 852   char buf[2048] ;
 853   int buflen ;
 854};
 855#line 123 "include/linux/kobject.h"
 856struct kset_uevent_ops {
 857   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 858   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 859   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 860};
 861#line 140
 862struct sock;
 863#line 159 "include/linux/kobject.h"
 864struct kset {
 865   struct list_head list ;
 866   spinlock_t list_lock ;
 867   struct kobject kobj ;
 868   struct kset_uevent_ops  const  *uevent_ops ;
 869};
 870#line 39 "include/linux/moduleparam.h"
 871struct kernel_param;
 872#line 39
 873struct kernel_param;
 874#line 41 "include/linux/moduleparam.h"
 875struct kernel_param_ops {
 876   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 877   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 878   void (*free)(void *arg ) ;
 879};
 880#line 50
 881struct kparam_string;
 882#line 50
 883struct kparam_array;
 884#line 50 "include/linux/moduleparam.h"
 885union __anonunion____missing_field_name_199 {
 886   void *arg ;
 887   struct kparam_string  const  *str ;
 888   struct kparam_array  const  *arr ;
 889};
 890#line 50 "include/linux/moduleparam.h"
 891struct kernel_param {
 892   char const   *name ;
 893   struct kernel_param_ops  const  *ops ;
 894   u16 perm ;
 895   s16 level ;
 896   union __anonunion____missing_field_name_199 __annonCompField32 ;
 897};
 898#line 63 "include/linux/moduleparam.h"
 899struct kparam_string {
 900   unsigned int maxlen ;
 901   char *string ;
 902};
 903#line 69 "include/linux/moduleparam.h"
 904struct kparam_array {
 905   unsigned int max ;
 906   unsigned int elemsize ;
 907   unsigned int *num ;
 908   struct kernel_param_ops  const  *ops ;
 909   void *elem ;
 910};
 911#line 445
 912struct module;
 913#line 80 "include/linux/jump_label.h"
 914struct module;
 915#line 143 "include/linux/jump_label.h"
 916struct static_key {
 917   atomic_t enabled ;
 918};
 919#line 22 "include/linux/tracepoint.h"
 920struct module;
 921#line 23
 922struct tracepoint;
 923#line 23
 924struct tracepoint;
 925#line 25 "include/linux/tracepoint.h"
 926struct tracepoint_func {
 927   void *func ;
 928   void *data ;
 929};
 930#line 30 "include/linux/tracepoint.h"
 931struct tracepoint {
 932   char const   *name ;
 933   struct static_key key ;
 934   void (*regfunc)(void) ;
 935   void (*unregfunc)(void) ;
 936   struct tracepoint_func *funcs ;
 937};
 938#line 19 "include/linux/export.h"
 939struct kernel_symbol {
 940   unsigned long value ;
 941   char const   *name ;
 942};
 943#line 8 "include/asm-generic/module.h"
 944struct mod_arch_specific {
 945
 946};
 947#line 35 "include/linux/module.h"
 948struct module;
 949#line 37
 950struct module_param_attrs;
 951#line 37 "include/linux/module.h"
 952struct module_kobject {
 953   struct kobject kobj ;
 954   struct module *mod ;
 955   struct kobject *drivers_dir ;
 956   struct module_param_attrs *mp ;
 957};
 958#line 44 "include/linux/module.h"
 959struct module_attribute {
 960   struct attribute attr ;
 961   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 962   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 963                    size_t count ) ;
 964   void (*setup)(struct module * , char const   * ) ;
 965   int (*test)(struct module * ) ;
 966   void (*free)(struct module * ) ;
 967};
 968#line 71
 969struct exception_table_entry;
 970#line 71
 971struct exception_table_entry;
 972#line 199
 973enum module_state {
 974    MODULE_STATE_LIVE = 0,
 975    MODULE_STATE_COMING = 1,
 976    MODULE_STATE_GOING = 2
 977} ;
 978#line 215 "include/linux/module.h"
 979struct module_ref {
 980   unsigned long incs ;
 981   unsigned long decs ;
 982} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 983#line 220
 984struct module_sect_attrs;
 985#line 220
 986struct module_notes_attrs;
 987#line 220
 988struct ftrace_event_call;
 989#line 220 "include/linux/module.h"
 990struct module {
 991   enum module_state state ;
 992   struct list_head list ;
 993   char name[64UL - sizeof(unsigned long )] ;
 994   struct module_kobject mkobj ;
 995   struct module_attribute *modinfo_attrs ;
 996   char const   *version ;
 997   char const   *srcversion ;
 998   struct kobject *holders_dir ;
 999   struct kernel_symbol  const  *syms ;
1000   unsigned long const   *crcs ;
1001   unsigned int num_syms ;
1002   struct kernel_param *kp ;
1003   unsigned int num_kp ;
1004   unsigned int num_gpl_syms ;
1005   struct kernel_symbol  const  *gpl_syms ;
1006   unsigned long const   *gpl_crcs ;
1007   struct kernel_symbol  const  *unused_syms ;
1008   unsigned long const   *unused_crcs ;
1009   unsigned int num_unused_syms ;
1010   unsigned int num_unused_gpl_syms ;
1011   struct kernel_symbol  const  *unused_gpl_syms ;
1012   unsigned long const   *unused_gpl_crcs ;
1013   struct kernel_symbol  const  *gpl_future_syms ;
1014   unsigned long const   *gpl_future_crcs ;
1015   unsigned int num_gpl_future_syms ;
1016   unsigned int num_exentries ;
1017   struct exception_table_entry *extable ;
1018   int (*init)(void) ;
1019   void *module_init ;
1020   void *module_core ;
1021   unsigned int init_size ;
1022   unsigned int core_size ;
1023   unsigned int init_text_size ;
1024   unsigned int core_text_size ;
1025   unsigned int init_ro_size ;
1026   unsigned int core_ro_size ;
1027   struct mod_arch_specific arch ;
1028   unsigned int taints ;
1029   unsigned int num_bugs ;
1030   struct list_head bug_list ;
1031   struct bug_entry *bug_table ;
1032   Elf64_Sym *symtab ;
1033   Elf64_Sym *core_symtab ;
1034   unsigned int num_symtab ;
1035   unsigned int core_num_syms ;
1036   char *strtab ;
1037   char *core_strtab ;
1038   struct module_sect_attrs *sect_attrs ;
1039   struct module_notes_attrs *notes_attrs ;
1040   char *args ;
1041   void *percpu ;
1042   unsigned int percpu_size ;
1043   unsigned int num_tracepoints ;
1044   struct tracepoint * const  *tracepoints_ptrs ;
1045   unsigned int num_trace_bprintk_fmt ;
1046   char const   **trace_bprintk_fmt_start ;
1047   struct ftrace_event_call **trace_events ;
1048   unsigned int num_trace_events ;
1049   struct list_head source_list ;
1050   struct list_head target_list ;
1051   struct task_struct *waiter ;
1052   void (*exit)(void) ;
1053   struct module_ref *refptr ;
1054   ctor_fn_t *ctors ;
1055   unsigned int num_ctors ;
1056};
1057#line 19 "include/linux/klist.h"
1058struct klist_node;
1059#line 19
1060struct klist_node;
1061#line 39 "include/linux/klist.h"
1062struct klist_node {
1063   void *n_klist ;
1064   struct list_head n_node ;
1065   struct kref n_ref ;
1066};
1067#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1068struct dma_map_ops;
1069#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1070struct dev_archdata {
1071   void *acpi_handle ;
1072   struct dma_map_ops *dma_ops ;
1073   void *iommu ;
1074};
1075#line 28 "include/linux/device.h"
1076struct device;
1077#line 29
1078struct device_private;
1079#line 29
1080struct device_private;
1081#line 30
1082struct device_driver;
1083#line 30
1084struct device_driver;
1085#line 31
1086struct driver_private;
1087#line 31
1088struct driver_private;
1089#line 32
1090struct module;
1091#line 33
1092struct class;
1093#line 33
1094struct class;
1095#line 34
1096struct subsys_private;
1097#line 34
1098struct subsys_private;
1099#line 35
1100struct bus_type;
1101#line 35
1102struct bus_type;
1103#line 36
1104struct device_node;
1105#line 36
1106struct device_node;
1107#line 37
1108struct iommu_ops;
1109#line 37
1110struct iommu_ops;
1111#line 39 "include/linux/device.h"
1112struct bus_attribute {
1113   struct attribute attr ;
1114   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1115   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
1116};
1117#line 89
1118struct device_attribute;
1119#line 89
1120struct driver_attribute;
1121#line 89 "include/linux/device.h"
1122struct bus_type {
1123   char const   *name ;
1124   char const   *dev_name ;
1125   struct device *dev_root ;
1126   struct bus_attribute *bus_attrs ;
1127   struct device_attribute *dev_attrs ;
1128   struct driver_attribute *drv_attrs ;
1129   int (*match)(struct device *dev , struct device_driver *drv ) ;
1130   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1131   int (*probe)(struct device *dev ) ;
1132   int (*remove)(struct device *dev ) ;
1133   void (*shutdown)(struct device *dev ) ;
1134   int (*suspend)(struct device *dev , pm_message_t state ) ;
1135   int (*resume)(struct device *dev ) ;
1136   struct dev_pm_ops  const  *pm ;
1137   struct iommu_ops *iommu_ops ;
1138   struct subsys_private *p ;
1139};
1140#line 127
1141struct device_type;
1142#line 214
1143struct of_device_id;
1144#line 214 "include/linux/device.h"
1145struct device_driver {
1146   char const   *name ;
1147   struct bus_type *bus ;
1148   struct module *owner ;
1149   char const   *mod_name ;
1150   bool suppress_bind_attrs ;
1151   struct of_device_id  const  *of_match_table ;
1152   int (*probe)(struct device *dev ) ;
1153   int (*remove)(struct device *dev ) ;
1154   void (*shutdown)(struct device *dev ) ;
1155   int (*suspend)(struct device *dev , pm_message_t state ) ;
1156   int (*resume)(struct device *dev ) ;
1157   struct attribute_group  const  **groups ;
1158   struct dev_pm_ops  const  *pm ;
1159   struct driver_private *p ;
1160};
1161#line 249 "include/linux/device.h"
1162struct driver_attribute {
1163   struct attribute attr ;
1164   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1165   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
1166};
1167#line 330
1168struct class_attribute;
1169#line 330 "include/linux/device.h"
1170struct class {
1171   char const   *name ;
1172   struct module *owner ;
1173   struct class_attribute *class_attrs ;
1174   struct device_attribute *dev_attrs ;
1175   struct bin_attribute *dev_bin_attrs ;
1176   struct kobject *dev_kobj ;
1177   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1178   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1179   void (*class_release)(struct class *class ) ;
1180   void (*dev_release)(struct device *dev ) ;
1181   int (*suspend)(struct device *dev , pm_message_t state ) ;
1182   int (*resume)(struct device *dev ) ;
1183   struct kobj_ns_type_operations  const  *ns_type ;
1184   void const   *(*namespace)(struct device *dev ) ;
1185   struct dev_pm_ops  const  *pm ;
1186   struct subsys_private *p ;
1187};
1188#line 397 "include/linux/device.h"
1189struct class_attribute {
1190   struct attribute attr ;
1191   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1192   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
1193                    size_t count ) ;
1194   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
1195};
1196#line 465 "include/linux/device.h"
1197struct device_type {
1198   char const   *name ;
1199   struct attribute_group  const  **groups ;
1200   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1201   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1202   void (*release)(struct device *dev ) ;
1203   struct dev_pm_ops  const  *pm ;
1204};
1205#line 476 "include/linux/device.h"
1206struct device_attribute {
1207   struct attribute attr ;
1208   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1209   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
1210                    size_t count ) ;
1211};
1212#line 559 "include/linux/device.h"
1213struct device_dma_parameters {
1214   unsigned int max_segment_size ;
1215   unsigned long segment_boundary_mask ;
1216};
1217#line 627
1218struct dma_coherent_mem;
1219#line 627 "include/linux/device.h"
1220struct device {
1221   struct device *parent ;
1222   struct device_private *p ;
1223   struct kobject kobj ;
1224   char const   *init_name ;
1225   struct device_type  const  *type ;
1226   struct mutex mutex ;
1227   struct bus_type *bus ;
1228   struct device_driver *driver ;
1229   void *platform_data ;
1230   struct dev_pm_info power ;
1231   struct dev_pm_domain *pm_domain ;
1232   int numa_node ;
1233   u64 *dma_mask ;
1234   u64 coherent_dma_mask ;
1235   struct device_dma_parameters *dma_parms ;
1236   struct list_head dma_pools ;
1237   struct dma_coherent_mem *dma_mem ;
1238   struct dev_archdata archdata ;
1239   struct device_node *of_node ;
1240   dev_t devt ;
1241   u32 id ;
1242   spinlock_t devres_lock ;
1243   struct list_head devres_head ;
1244   struct klist_node knode_class ;
1245   struct class *class ;
1246   struct attribute_group  const  **groups ;
1247   void (*release)(struct device *dev ) ;
1248};
1249#line 43 "include/linux/pm_wakeup.h"
1250struct wakeup_source {
1251   char const   *name ;
1252   struct list_head entry ;
1253   spinlock_t lock ;
1254   struct timer_list timer ;
1255   unsigned long timer_expires ;
1256   ktime_t total_time ;
1257   ktime_t max_time ;
1258   ktime_t last_time ;
1259   unsigned long event_count ;
1260   unsigned long active_count ;
1261   unsigned long relax_count ;
1262   unsigned long hit_count ;
1263   unsigned int active : 1 ;
1264};
1265#line 12 "include/linux/mod_devicetable.h"
1266typedef unsigned long kernel_ulong_t;
1267#line 219 "include/linux/mod_devicetable.h"
1268struct of_device_id {
1269   char name[32] ;
1270   char type[32] ;
1271   char compatible[128] ;
1272   void *data ;
1273};
1274#line 442 "include/linux/mod_devicetable.h"
1275struct spi_device_id {
1276   char name[32] ;
1277   kernel_ulong_t driver_data  __attribute__((__aligned__(sizeof(kernel_ulong_t )))) ;
1278};
1279#line 46 "include/linux/slub_def.h"
1280struct kmem_cache_cpu {
1281   void **freelist ;
1282   unsigned long tid ;
1283   struct page *page ;
1284   struct page *partial ;
1285   int node ;
1286   unsigned int stat[26] ;
1287};
1288#line 57 "include/linux/slub_def.h"
1289struct kmem_cache_node {
1290   spinlock_t list_lock ;
1291   unsigned long nr_partial ;
1292   struct list_head partial ;
1293   atomic_long_t nr_slabs ;
1294   atomic_long_t total_objects ;
1295   struct list_head full ;
1296};
1297#line 73 "include/linux/slub_def.h"
1298struct kmem_cache_order_objects {
1299   unsigned long x ;
1300};
1301#line 80 "include/linux/slub_def.h"
1302struct kmem_cache {
1303   struct kmem_cache_cpu *cpu_slab ;
1304   unsigned long flags ;
1305   unsigned long min_partial ;
1306   int size ;
1307   int objsize ;
1308   int offset ;
1309   int cpu_partial ;
1310   struct kmem_cache_order_objects oo ;
1311   struct kmem_cache_order_objects max ;
1312   struct kmem_cache_order_objects min ;
1313   gfp_t allocflags ;
1314   int refcount ;
1315   void (*ctor)(void * ) ;
1316   int inuse ;
1317   int align ;
1318   int reserved ;
1319   char const   *name ;
1320   struct list_head list ;
1321   struct kobject kobj ;
1322   int remote_node_defrag_ratio ;
1323   struct kmem_cache_node *node[1 << 10] ;
1324};
1325#line 18 "include/linux/capability.h"
1326struct task_struct;
1327#line 94 "include/linux/capability.h"
1328struct kernel_cap_struct {
1329   __u32 cap[2] ;
1330};
1331#line 94 "include/linux/capability.h"
1332typedef struct kernel_cap_struct kernel_cap_t;
1333#line 378
1334struct user_namespace;
1335#line 378
1336struct user_namespace;
1337#line 14 "include/linux/prio_tree.h"
1338struct prio_tree_node;
1339#line 14 "include/linux/prio_tree.h"
1340struct raw_prio_tree_node {
1341   struct prio_tree_node *left ;
1342   struct prio_tree_node *right ;
1343   struct prio_tree_node *parent ;
1344};
1345#line 20 "include/linux/prio_tree.h"
1346struct prio_tree_node {
1347   struct prio_tree_node *left ;
1348   struct prio_tree_node *right ;
1349   struct prio_tree_node *parent ;
1350   unsigned long start ;
1351   unsigned long last ;
1352};
1353#line 23 "include/linux/mm_types.h"
1354struct address_space;
1355#line 23
1356struct address_space;
1357#line 40 "include/linux/mm_types.h"
1358union __anonunion____missing_field_name_204 {
1359   unsigned long index ;
1360   void *freelist ;
1361};
1362#line 40 "include/linux/mm_types.h"
1363struct __anonstruct____missing_field_name_208 {
1364   unsigned int inuse : 16 ;
1365   unsigned int objects : 15 ;
1366   unsigned int frozen : 1 ;
1367};
1368#line 40 "include/linux/mm_types.h"
1369union __anonunion____missing_field_name_207 {
1370   atomic_t _mapcount ;
1371   struct __anonstruct____missing_field_name_208 __annonCompField34 ;
1372};
1373#line 40 "include/linux/mm_types.h"
1374struct __anonstruct____missing_field_name_206 {
1375   union __anonunion____missing_field_name_207 __annonCompField35 ;
1376   atomic_t _count ;
1377};
1378#line 40 "include/linux/mm_types.h"
1379union __anonunion____missing_field_name_205 {
1380   unsigned long counters ;
1381   struct __anonstruct____missing_field_name_206 __annonCompField36 ;
1382};
1383#line 40 "include/linux/mm_types.h"
1384struct __anonstruct____missing_field_name_203 {
1385   union __anonunion____missing_field_name_204 __annonCompField33 ;
1386   union __anonunion____missing_field_name_205 __annonCompField37 ;
1387};
1388#line 40 "include/linux/mm_types.h"
1389struct __anonstruct____missing_field_name_210 {
1390   struct page *next ;
1391   int pages ;
1392   int pobjects ;
1393};
1394#line 40 "include/linux/mm_types.h"
1395union __anonunion____missing_field_name_209 {
1396   struct list_head lru ;
1397   struct __anonstruct____missing_field_name_210 __annonCompField39 ;
1398};
1399#line 40 "include/linux/mm_types.h"
1400union __anonunion____missing_field_name_211 {
1401   unsigned long private ;
1402   struct kmem_cache *slab ;
1403   struct page *first_page ;
1404};
1405#line 40 "include/linux/mm_types.h"
1406struct page {
1407   unsigned long flags ;
1408   struct address_space *mapping ;
1409   struct __anonstruct____missing_field_name_203 __annonCompField38 ;
1410   union __anonunion____missing_field_name_209 __annonCompField40 ;
1411   union __anonunion____missing_field_name_211 __annonCompField41 ;
1412   unsigned long debug_flags ;
1413} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
1414#line 200 "include/linux/mm_types.h"
1415struct __anonstruct_vm_set_213 {
1416   struct list_head list ;
1417   void *parent ;
1418   struct vm_area_struct *head ;
1419};
1420#line 200 "include/linux/mm_types.h"
1421union __anonunion_shared_212 {
1422   struct __anonstruct_vm_set_213 vm_set ;
1423   struct raw_prio_tree_node prio_tree_node ;
1424};
1425#line 200
1426struct anon_vma;
1427#line 200
1428struct vm_operations_struct;
1429#line 200
1430struct mempolicy;
1431#line 200 "include/linux/mm_types.h"
1432struct vm_area_struct {
1433   struct mm_struct *vm_mm ;
1434   unsigned long vm_start ;
1435   unsigned long vm_end ;
1436   struct vm_area_struct *vm_next ;
1437   struct vm_area_struct *vm_prev ;
1438   pgprot_t vm_page_prot ;
1439   unsigned long vm_flags ;
1440   struct rb_node vm_rb ;
1441   union __anonunion_shared_212 shared ;
1442   struct list_head anon_vma_chain ;
1443   struct anon_vma *anon_vma ;
1444   struct vm_operations_struct  const  *vm_ops ;
1445   unsigned long vm_pgoff ;
1446   struct file *vm_file ;
1447   void *vm_private_data ;
1448   struct mempolicy *vm_policy ;
1449};
1450#line 257 "include/linux/mm_types.h"
1451struct core_thread {
1452   struct task_struct *task ;
1453   struct core_thread *next ;
1454};
1455#line 262 "include/linux/mm_types.h"
1456struct core_state {
1457   atomic_t nr_threads ;
1458   struct core_thread dumper ;
1459   struct completion startup ;
1460};
1461#line 284 "include/linux/mm_types.h"
1462struct mm_rss_stat {
1463   atomic_long_t count[3] ;
1464};
1465#line 288
1466struct linux_binfmt;
1467#line 288
1468struct mmu_notifier_mm;
1469#line 288 "include/linux/mm_types.h"
1470struct mm_struct {
1471   struct vm_area_struct *mmap ;
1472   struct rb_root mm_rb ;
1473   struct vm_area_struct *mmap_cache ;
1474   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
1475                                      unsigned long pgoff , unsigned long flags ) ;
1476   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
1477   unsigned long mmap_base ;
1478   unsigned long task_size ;
1479   unsigned long cached_hole_size ;
1480   unsigned long free_area_cache ;
1481   pgd_t *pgd ;
1482   atomic_t mm_users ;
1483   atomic_t mm_count ;
1484   int map_count ;
1485   spinlock_t page_table_lock ;
1486   struct rw_semaphore mmap_sem ;
1487   struct list_head mmlist ;
1488   unsigned long hiwater_rss ;
1489   unsigned long hiwater_vm ;
1490   unsigned long total_vm ;
1491   unsigned long locked_vm ;
1492   unsigned long pinned_vm ;
1493   unsigned long shared_vm ;
1494   unsigned long exec_vm ;
1495   unsigned long stack_vm ;
1496   unsigned long reserved_vm ;
1497   unsigned long def_flags ;
1498   unsigned long nr_ptes ;
1499   unsigned long start_code ;
1500   unsigned long end_code ;
1501   unsigned long start_data ;
1502   unsigned long end_data ;
1503   unsigned long start_brk ;
1504   unsigned long brk ;
1505   unsigned long start_stack ;
1506   unsigned long arg_start ;
1507   unsigned long arg_end ;
1508   unsigned long env_start ;
1509   unsigned long env_end ;
1510   unsigned long saved_auxv[44] ;
1511   struct mm_rss_stat rss_stat ;
1512   struct linux_binfmt *binfmt ;
1513   cpumask_var_t cpu_vm_mask_var ;
1514   mm_context_t context ;
1515   unsigned int faultstamp ;
1516   unsigned int token_priority ;
1517   unsigned int last_interval ;
1518   unsigned long flags ;
1519   struct core_state *core_state ;
1520   spinlock_t ioctx_lock ;
1521   struct hlist_head ioctx_list ;
1522   struct task_struct *owner ;
1523   struct file *exe_file ;
1524   unsigned long num_exe_file_vmas ;
1525   struct mmu_notifier_mm *mmu_notifier_mm ;
1526   pgtable_t pmd_huge_pte ;
1527   struct cpumask cpumask_allocation ;
1528};
1529#line 7 "include/asm-generic/cputime.h"
1530typedef unsigned long cputime_t;
1531#line 84 "include/linux/sem.h"
1532struct task_struct;
1533#line 101
1534struct sem_undo_list;
1535#line 101 "include/linux/sem.h"
1536struct sysv_sem {
1537   struct sem_undo_list *undo_list ;
1538};
1539#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1540struct siginfo;
1541#line 10
1542struct siginfo;
1543#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1544struct __anonstruct_sigset_t_215 {
1545   unsigned long sig[1] ;
1546};
1547#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1548typedef struct __anonstruct_sigset_t_215 sigset_t;
1549#line 17 "include/asm-generic/signal-defs.h"
1550typedef void __signalfn_t(int  );
1551#line 18 "include/asm-generic/signal-defs.h"
1552typedef __signalfn_t *__sighandler_t;
1553#line 20 "include/asm-generic/signal-defs.h"
1554typedef void __restorefn_t(void);
1555#line 21 "include/asm-generic/signal-defs.h"
1556typedef __restorefn_t *__sigrestore_t;
1557#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1558struct sigaction {
1559   __sighandler_t sa_handler ;
1560   unsigned long sa_flags ;
1561   __sigrestore_t sa_restorer ;
1562   sigset_t sa_mask ;
1563};
1564#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1565struct k_sigaction {
1566   struct sigaction sa ;
1567};
1568#line 7 "include/asm-generic/siginfo.h"
1569union sigval {
1570   int sival_int ;
1571   void *sival_ptr ;
1572};
1573#line 7 "include/asm-generic/siginfo.h"
1574typedef union sigval sigval_t;
1575#line 48 "include/asm-generic/siginfo.h"
1576struct __anonstruct__kill_217 {
1577   __kernel_pid_t _pid ;
1578   __kernel_uid32_t _uid ;
1579};
1580#line 48 "include/asm-generic/siginfo.h"
1581struct __anonstruct__timer_218 {
1582   __kernel_timer_t _tid ;
1583   int _overrun ;
1584   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
1585   sigval_t _sigval ;
1586   int _sys_private ;
1587};
1588#line 48 "include/asm-generic/siginfo.h"
1589struct __anonstruct__rt_219 {
1590   __kernel_pid_t _pid ;
1591   __kernel_uid32_t _uid ;
1592   sigval_t _sigval ;
1593};
1594#line 48 "include/asm-generic/siginfo.h"
1595struct __anonstruct__sigchld_220 {
1596   __kernel_pid_t _pid ;
1597   __kernel_uid32_t _uid ;
1598   int _status ;
1599   __kernel_clock_t _utime ;
1600   __kernel_clock_t _stime ;
1601};
1602#line 48 "include/asm-generic/siginfo.h"
1603struct __anonstruct__sigfault_221 {
1604   void *_addr ;
1605   short _addr_lsb ;
1606};
1607#line 48 "include/asm-generic/siginfo.h"
1608struct __anonstruct__sigpoll_222 {
1609   long _band ;
1610   int _fd ;
1611};
1612#line 48 "include/asm-generic/siginfo.h"
1613union __anonunion__sifields_216 {
1614   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
1615   struct __anonstruct__kill_217 _kill ;
1616   struct __anonstruct__timer_218 _timer ;
1617   struct __anonstruct__rt_219 _rt ;
1618   struct __anonstruct__sigchld_220 _sigchld ;
1619   struct __anonstruct__sigfault_221 _sigfault ;
1620   struct __anonstruct__sigpoll_222 _sigpoll ;
1621};
1622#line 48 "include/asm-generic/siginfo.h"
1623struct siginfo {
1624   int si_signo ;
1625   int si_errno ;
1626   int si_code ;
1627   union __anonunion__sifields_216 _sifields ;
1628};
1629#line 48 "include/asm-generic/siginfo.h"
1630typedef struct siginfo siginfo_t;
1631#line 288
1632struct siginfo;
1633#line 10 "include/linux/signal.h"
1634struct task_struct;
1635#line 18
1636struct user_struct;
1637#line 28 "include/linux/signal.h"
1638struct sigpending {
1639   struct list_head list ;
1640   sigset_t signal ;
1641};
1642#line 239
1643struct timespec;
1644#line 240
1645struct pt_regs;
1646#line 50 "include/linux/pid.h"
1647struct pid_namespace;
1648#line 50 "include/linux/pid.h"
1649struct upid {
1650   int nr ;
1651   struct pid_namespace *ns ;
1652   struct hlist_node pid_chain ;
1653};
1654#line 57 "include/linux/pid.h"
1655struct pid {
1656   atomic_t count ;
1657   unsigned int level ;
1658   struct hlist_head tasks[3] ;
1659   struct rcu_head rcu ;
1660   struct upid numbers[1] ;
1661};
1662#line 69 "include/linux/pid.h"
1663struct pid_link {
1664   struct hlist_node node ;
1665   struct pid *pid ;
1666};
1667#line 100
1668struct pid_namespace;
1669#line 10 "include/linux/seccomp.h"
1670struct __anonstruct_seccomp_t_225 {
1671   int mode ;
1672};
1673#line 10 "include/linux/seccomp.h"
1674typedef struct __anonstruct_seccomp_t_225 seccomp_t;
1675#line 81 "include/linux/plist.h"
1676struct plist_head {
1677   struct list_head node_list ;
1678};
1679#line 85 "include/linux/plist.h"
1680struct plist_node {
1681   int prio ;
1682   struct list_head prio_list ;
1683   struct list_head node_list ;
1684};
1685#line 40 "include/linux/rtmutex.h"
1686struct rt_mutex_waiter;
1687#line 40
1688struct rt_mutex_waiter;
1689#line 42 "include/linux/resource.h"
1690struct rlimit {
1691   unsigned long rlim_cur ;
1692   unsigned long rlim_max ;
1693};
1694#line 81
1695struct task_struct;
1696#line 8 "include/linux/timerqueue.h"
1697struct timerqueue_node {
1698   struct rb_node node ;
1699   ktime_t expires ;
1700};
1701#line 13 "include/linux/timerqueue.h"
1702struct timerqueue_head {
1703   struct rb_root head ;
1704   struct timerqueue_node *next ;
1705};
1706#line 27 "include/linux/hrtimer.h"
1707struct hrtimer_clock_base;
1708#line 27
1709struct hrtimer_clock_base;
1710#line 28
1711struct hrtimer_cpu_base;
1712#line 28
1713struct hrtimer_cpu_base;
1714#line 44
1715enum hrtimer_restart {
1716    HRTIMER_NORESTART = 0,
1717    HRTIMER_RESTART = 1
1718} ;
1719#line 108 "include/linux/hrtimer.h"
1720struct hrtimer {
1721   struct timerqueue_node node ;
1722   ktime_t _softexpires ;
1723   enum hrtimer_restart (*function)(struct hrtimer * ) ;
1724   struct hrtimer_clock_base *base ;
1725   unsigned long state ;
1726   int start_pid ;
1727   void *start_site ;
1728   char start_comm[16] ;
1729};
1730#line 145 "include/linux/hrtimer.h"
1731struct hrtimer_clock_base {
1732   struct hrtimer_cpu_base *cpu_base ;
1733   int index ;
1734   clockid_t clockid ;
1735   struct timerqueue_head active ;
1736   ktime_t resolution ;
1737   ktime_t (*get_time)(void) ;
1738   ktime_t softirq_time ;
1739   ktime_t offset ;
1740};
1741#line 178 "include/linux/hrtimer.h"
1742struct hrtimer_cpu_base {
1743   raw_spinlock_t lock ;
1744   unsigned long active_bases ;
1745   ktime_t expires_next ;
1746   int hres_active ;
1747   int hang_detected ;
1748   unsigned long nr_events ;
1749   unsigned long nr_retries ;
1750   unsigned long nr_hangs ;
1751   ktime_t max_hang_time ;
1752   struct hrtimer_clock_base clock_base[3] ;
1753};
1754#line 11 "include/linux/task_io_accounting.h"
1755struct task_io_accounting {
1756   u64 rchar ;
1757   u64 wchar ;
1758   u64 syscr ;
1759   u64 syscw ;
1760   u64 read_bytes ;
1761   u64 write_bytes ;
1762   u64 cancelled_write_bytes ;
1763};
1764#line 13 "include/linux/latencytop.h"
1765struct task_struct;
1766#line 20 "include/linux/latencytop.h"
1767struct latency_record {
1768   unsigned long backtrace[12] ;
1769   unsigned int count ;
1770   unsigned long time ;
1771   unsigned long max ;
1772};
1773#line 29 "include/linux/key.h"
1774typedef int32_t key_serial_t;
1775#line 32 "include/linux/key.h"
1776typedef uint32_t key_perm_t;
1777#line 34
1778struct key;
1779#line 34
1780struct key;
1781#line 75
1782struct user_struct;
1783#line 76
1784struct signal_struct;
1785#line 76
1786struct signal_struct;
1787#line 77
1788struct cred;
1789#line 79
1790struct key_type;
1791#line 79
1792struct key_type;
1793#line 81
1794struct keyring_list;
1795#line 81
1796struct keyring_list;
1797#line 124
1798struct key_user;
1799#line 124 "include/linux/key.h"
1800union __anonunion____missing_field_name_226 {
1801   time_t expiry ;
1802   time_t revoked_at ;
1803};
1804#line 124 "include/linux/key.h"
1805union __anonunion_type_data_227 {
1806   struct list_head link ;
1807   unsigned long x[2] ;
1808   void *p[2] ;
1809   int reject_error ;
1810};
1811#line 124 "include/linux/key.h"
1812union __anonunion_payload_228 {
1813   unsigned long value ;
1814   void *rcudata ;
1815   void *data ;
1816   struct keyring_list *subscriptions ;
1817};
1818#line 124 "include/linux/key.h"
1819struct key {
1820   atomic_t usage ;
1821   key_serial_t serial ;
1822   struct rb_node serial_node ;
1823   struct key_type *type ;
1824   struct rw_semaphore sem ;
1825   struct key_user *user ;
1826   void *security ;
1827   union __anonunion____missing_field_name_226 __annonCompField42 ;
1828   uid_t uid ;
1829   gid_t gid ;
1830   key_perm_t perm ;
1831   unsigned short quotalen ;
1832   unsigned short datalen ;
1833   unsigned long flags ;
1834   char *description ;
1835   union __anonunion_type_data_227 type_data ;
1836   union __anonunion_payload_228 payload ;
1837};
1838#line 18 "include/linux/selinux.h"
1839struct audit_context;
1840#line 18
1841struct audit_context;
1842#line 21 "include/linux/cred.h"
1843struct user_struct;
1844#line 22
1845struct cred;
1846#line 31 "include/linux/cred.h"
1847struct group_info {
1848   atomic_t usage ;
1849   int ngroups ;
1850   int nblocks ;
1851   gid_t small_block[32] ;
1852   gid_t *blocks[0] ;
1853};
1854#line 83 "include/linux/cred.h"
1855struct thread_group_cred {
1856   atomic_t usage ;
1857   pid_t tgid ;
1858   spinlock_t lock ;
1859   struct key *session_keyring ;
1860   struct key *process_keyring ;
1861   struct rcu_head rcu ;
1862};
1863#line 116 "include/linux/cred.h"
1864struct cred {
1865   atomic_t usage ;
1866   atomic_t subscribers ;
1867   void *put_addr ;
1868   unsigned int magic ;
1869   uid_t uid ;
1870   gid_t gid ;
1871   uid_t suid ;
1872   gid_t sgid ;
1873   uid_t euid ;
1874   gid_t egid ;
1875   uid_t fsuid ;
1876   gid_t fsgid ;
1877   unsigned int securebits ;
1878   kernel_cap_t cap_inheritable ;
1879   kernel_cap_t cap_permitted ;
1880   kernel_cap_t cap_effective ;
1881   kernel_cap_t cap_bset ;
1882   unsigned char jit_keyring ;
1883   struct key *thread_keyring ;
1884   struct key *request_key_auth ;
1885   struct thread_group_cred *tgcred ;
1886   void *security ;
1887   struct user_struct *user ;
1888   struct user_namespace *user_ns ;
1889   struct group_info *group_info ;
1890   struct rcu_head rcu ;
1891};
1892#line 61 "include/linux/llist.h"
1893struct llist_node;
1894#line 65 "include/linux/llist.h"
1895struct llist_node {
1896   struct llist_node *next ;
1897};
1898#line 97 "include/linux/sched.h"
1899struct futex_pi_state;
1900#line 97
1901struct futex_pi_state;
1902#line 98
1903struct robust_list_head;
1904#line 98
1905struct robust_list_head;
1906#line 99
1907struct bio_list;
1908#line 99
1909struct bio_list;
1910#line 100
1911struct fs_struct;
1912#line 100
1913struct fs_struct;
1914#line 101
1915struct perf_event_context;
1916#line 101
1917struct perf_event_context;
1918#line 102
1919struct blk_plug;
1920#line 102
1921struct blk_plug;
1922#line 151
1923struct cfs_rq;
1924#line 151
1925struct cfs_rq;
1926#line 259
1927struct task_struct;
1928#line 366
1929struct nsproxy;
1930#line 367
1931struct user_namespace;
1932#line 214 "include/linux/aio.h"
1933struct mm_struct;
1934#line 443 "include/linux/sched.h"
1935struct sighand_struct {
1936   atomic_t count ;
1937   struct k_sigaction action[64] ;
1938   spinlock_t siglock ;
1939   wait_queue_head_t signalfd_wqh ;
1940};
1941#line 450 "include/linux/sched.h"
1942struct pacct_struct {
1943   int ac_flag ;
1944   long ac_exitcode ;
1945   unsigned long ac_mem ;
1946   cputime_t ac_utime ;
1947   cputime_t ac_stime ;
1948   unsigned long ac_minflt ;
1949   unsigned long ac_majflt ;
1950};
1951#line 458 "include/linux/sched.h"
1952struct cpu_itimer {
1953   cputime_t expires ;
1954   cputime_t incr ;
1955   u32 error ;
1956   u32 incr_error ;
1957};
1958#line 476 "include/linux/sched.h"
1959struct task_cputime {
1960   cputime_t utime ;
1961   cputime_t stime ;
1962   unsigned long long sum_exec_runtime ;
1963};
1964#line 512 "include/linux/sched.h"
1965struct thread_group_cputimer {
1966   struct task_cputime cputime ;
1967   int running ;
1968   raw_spinlock_t lock ;
1969};
1970#line 519
1971struct autogroup;
1972#line 519
1973struct autogroup;
1974#line 528
1975struct tty_struct;
1976#line 528
1977struct taskstats;
1978#line 528
1979struct tty_audit_buf;
1980#line 528 "include/linux/sched.h"
1981struct signal_struct {
1982   atomic_t sigcnt ;
1983   atomic_t live ;
1984   int nr_threads ;
1985   wait_queue_head_t wait_chldexit ;
1986   struct task_struct *curr_target ;
1987   struct sigpending shared_pending ;
1988   int group_exit_code ;
1989   int notify_count ;
1990   struct task_struct *group_exit_task ;
1991   int group_stop_count ;
1992   unsigned int flags ;
1993   unsigned int is_child_subreaper : 1 ;
1994   unsigned int has_child_subreaper : 1 ;
1995   struct list_head posix_timers ;
1996   struct hrtimer real_timer ;
1997   struct pid *leader_pid ;
1998   ktime_t it_real_incr ;
1999   struct cpu_itimer it[2] ;
2000   struct thread_group_cputimer cputimer ;
2001   struct task_cputime cputime_expires ;
2002   struct list_head cpu_timers[3] ;
2003   struct pid *tty_old_pgrp ;
2004   int leader ;
2005   struct tty_struct *tty ;
2006   struct autogroup *autogroup ;
2007   cputime_t utime ;
2008   cputime_t stime ;
2009   cputime_t cutime ;
2010   cputime_t cstime ;
2011   cputime_t gtime ;
2012   cputime_t cgtime ;
2013   cputime_t prev_utime ;
2014   cputime_t prev_stime ;
2015   unsigned long nvcsw ;
2016   unsigned long nivcsw ;
2017   unsigned long cnvcsw ;
2018   unsigned long cnivcsw ;
2019   unsigned long min_flt ;
2020   unsigned long maj_flt ;
2021   unsigned long cmin_flt ;
2022   unsigned long cmaj_flt ;
2023   unsigned long inblock ;
2024   unsigned long oublock ;
2025   unsigned long cinblock ;
2026   unsigned long coublock ;
2027   unsigned long maxrss ;
2028   unsigned long cmaxrss ;
2029   struct task_io_accounting ioac ;
2030   unsigned long long sum_sched_runtime ;
2031   struct rlimit rlim[16] ;
2032   struct pacct_struct pacct ;
2033   struct taskstats *stats ;
2034   unsigned int audit_tty ;
2035   struct tty_audit_buf *tty_audit_buf ;
2036   struct rw_semaphore group_rwsem ;
2037   int oom_adj ;
2038   int oom_score_adj ;
2039   int oom_score_adj_min ;
2040   struct mutex cred_guard_mutex ;
2041};
2042#line 703 "include/linux/sched.h"
2043struct user_struct {
2044   atomic_t __count ;
2045   atomic_t processes ;
2046   atomic_t files ;
2047   atomic_t sigpending ;
2048   atomic_t inotify_watches ;
2049   atomic_t inotify_devs ;
2050   atomic_t fanotify_listeners ;
2051   atomic_long_t epoll_watches ;
2052   unsigned long mq_bytes ;
2053   unsigned long locked_shm ;
2054   struct key *uid_keyring ;
2055   struct key *session_keyring ;
2056   struct hlist_node uidhash_node ;
2057   uid_t uid ;
2058   struct user_namespace *user_ns ;
2059   atomic_long_t locked_vm ;
2060};
2061#line 747
2062struct backing_dev_info;
2063#line 747
2064struct backing_dev_info;
2065#line 748
2066struct reclaim_state;
2067#line 748
2068struct reclaim_state;
2069#line 751 "include/linux/sched.h"
2070struct sched_info {
2071   unsigned long pcount ;
2072   unsigned long long run_delay ;
2073   unsigned long long last_arrival ;
2074   unsigned long long last_queued ;
2075};
2076#line 763 "include/linux/sched.h"
2077struct task_delay_info {
2078   spinlock_t lock ;
2079   unsigned int flags ;
2080   struct timespec blkio_start ;
2081   struct timespec blkio_end ;
2082   u64 blkio_delay ;
2083   u64 swapin_delay ;
2084   u32 blkio_count ;
2085   u32 swapin_count ;
2086   struct timespec freepages_start ;
2087   struct timespec freepages_end ;
2088   u64 freepages_delay ;
2089   u32 freepages_count ;
2090};
2091#line 1088
2092struct io_context;
2093#line 1088
2094struct io_context;
2095#line 1097
2096struct audit_context;
2097#line 1098
2098struct mempolicy;
2099#line 1099
2100struct pipe_inode_info;
2101#line 1099
2102struct pipe_inode_info;
2103#line 1102
2104struct rq;
2105#line 1102
2106struct rq;
2107#line 1122 "include/linux/sched.h"
2108struct sched_class {
2109   struct sched_class  const  *next ;
2110   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2111   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2112   void (*yield_task)(struct rq *rq ) ;
2113   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
2114   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
2115   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
2116   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
2117   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
2118   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
2119   void (*post_schedule)(struct rq *this_rq ) ;
2120   void (*task_waking)(struct task_struct *task ) ;
2121   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
2122   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask  const  *newmask ) ;
2123   void (*rq_online)(struct rq *rq ) ;
2124   void (*rq_offline)(struct rq *rq ) ;
2125   void (*set_curr_task)(struct rq *rq ) ;
2126   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
2127   void (*task_fork)(struct task_struct *p ) ;
2128   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
2129   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
2130   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
2131   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
2132   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
2133};
2134#line 1167 "include/linux/sched.h"
2135struct load_weight {
2136   unsigned long weight ;
2137   unsigned long inv_weight ;
2138};
2139#line 1172 "include/linux/sched.h"
2140struct sched_statistics {
2141   u64 wait_start ;
2142   u64 wait_max ;
2143   u64 wait_count ;
2144   u64 wait_sum ;
2145   u64 iowait_count ;
2146   u64 iowait_sum ;
2147   u64 sleep_start ;
2148   u64 sleep_max ;
2149   s64 sum_sleep_runtime ;
2150   u64 block_start ;
2151   u64 block_max ;
2152   u64 exec_max ;
2153   u64 slice_max ;
2154   u64 nr_migrations_cold ;
2155   u64 nr_failed_migrations_affine ;
2156   u64 nr_failed_migrations_running ;
2157   u64 nr_failed_migrations_hot ;
2158   u64 nr_forced_migrations ;
2159   u64 nr_wakeups ;
2160   u64 nr_wakeups_sync ;
2161   u64 nr_wakeups_migrate ;
2162   u64 nr_wakeups_local ;
2163   u64 nr_wakeups_remote ;
2164   u64 nr_wakeups_affine ;
2165   u64 nr_wakeups_affine_attempts ;
2166   u64 nr_wakeups_passive ;
2167   u64 nr_wakeups_idle ;
2168};
2169#line 1207 "include/linux/sched.h"
2170struct sched_entity {
2171   struct load_weight load ;
2172   struct rb_node run_node ;
2173   struct list_head group_node ;
2174   unsigned int on_rq ;
2175   u64 exec_start ;
2176   u64 sum_exec_runtime ;
2177   u64 vruntime ;
2178   u64 prev_sum_exec_runtime ;
2179   u64 nr_migrations ;
2180   struct sched_statistics statistics ;
2181   struct sched_entity *parent ;
2182   struct cfs_rq *cfs_rq ;
2183   struct cfs_rq *my_q ;
2184};
2185#line 1233
2186struct rt_rq;
2187#line 1233 "include/linux/sched.h"
2188struct sched_rt_entity {
2189   struct list_head run_list ;
2190   unsigned long timeout ;
2191   unsigned int time_slice ;
2192   int nr_cpus_allowed ;
2193   struct sched_rt_entity *back ;
2194   struct sched_rt_entity *parent ;
2195   struct rt_rq *rt_rq ;
2196   struct rt_rq *my_q ;
2197};
2198#line 1264
2199struct files_struct;
2200#line 1264
2201struct css_set;
2202#line 1264
2203struct compat_robust_list_head;
2204#line 1264
2205struct mem_cgroup;
2206#line 1264 "include/linux/sched.h"
2207struct memcg_batch_info {
2208   int do_batch ;
2209   struct mem_cgroup *memcg ;
2210   unsigned long nr_pages ;
2211   unsigned long memsw_nr_pages ;
2212};
2213#line 1264 "include/linux/sched.h"
2214struct task_struct {
2215   long volatile   state ;
2216   void *stack ;
2217   atomic_t usage ;
2218   unsigned int flags ;
2219   unsigned int ptrace ;
2220   struct llist_node wake_entry ;
2221   int on_cpu ;
2222   int on_rq ;
2223   int prio ;
2224   int static_prio ;
2225   int normal_prio ;
2226   unsigned int rt_priority ;
2227   struct sched_class  const  *sched_class ;
2228   struct sched_entity se ;
2229   struct sched_rt_entity rt ;
2230   struct hlist_head preempt_notifiers ;
2231   unsigned char fpu_counter ;
2232   unsigned int policy ;
2233   cpumask_t cpus_allowed ;
2234   struct sched_info sched_info ;
2235   struct list_head tasks ;
2236   struct plist_node pushable_tasks ;
2237   struct mm_struct *mm ;
2238   struct mm_struct *active_mm ;
2239   unsigned int brk_randomized : 1 ;
2240   int exit_state ;
2241   int exit_code ;
2242   int exit_signal ;
2243   int pdeath_signal ;
2244   unsigned int jobctl ;
2245   unsigned int personality ;
2246   unsigned int did_exec : 1 ;
2247   unsigned int in_execve : 1 ;
2248   unsigned int in_iowait : 1 ;
2249   unsigned int sched_reset_on_fork : 1 ;
2250   unsigned int sched_contributes_to_load : 1 ;
2251   unsigned int irq_thread : 1 ;
2252   pid_t pid ;
2253   pid_t tgid ;
2254   unsigned long stack_canary ;
2255   struct task_struct *real_parent ;
2256   struct task_struct *parent ;
2257   struct list_head children ;
2258   struct list_head sibling ;
2259   struct task_struct *group_leader ;
2260   struct list_head ptraced ;
2261   struct list_head ptrace_entry ;
2262   struct pid_link pids[3] ;
2263   struct list_head thread_group ;
2264   struct completion *vfork_done ;
2265   int *set_child_tid ;
2266   int *clear_child_tid ;
2267   cputime_t utime ;
2268   cputime_t stime ;
2269   cputime_t utimescaled ;
2270   cputime_t stimescaled ;
2271   cputime_t gtime ;
2272   cputime_t prev_utime ;
2273   cputime_t prev_stime ;
2274   unsigned long nvcsw ;
2275   unsigned long nivcsw ;
2276   struct timespec start_time ;
2277   struct timespec real_start_time ;
2278   unsigned long min_flt ;
2279   unsigned long maj_flt ;
2280   struct task_cputime cputime_expires ;
2281   struct list_head cpu_timers[3] ;
2282   struct cred  const  *real_cred ;
2283   struct cred  const  *cred ;
2284   struct cred *replacement_session_keyring ;
2285   char comm[16] ;
2286   int link_count ;
2287   int total_link_count ;
2288   struct sysv_sem sysvsem ;
2289   unsigned long last_switch_count ;
2290   struct thread_struct thread ;
2291   struct fs_struct *fs ;
2292   struct files_struct *files ;
2293   struct nsproxy *nsproxy ;
2294   struct signal_struct *signal ;
2295   struct sighand_struct *sighand ;
2296   sigset_t blocked ;
2297   sigset_t real_blocked ;
2298   sigset_t saved_sigmask ;
2299   struct sigpending pending ;
2300   unsigned long sas_ss_sp ;
2301   size_t sas_ss_size ;
2302   int (*notifier)(void *priv ) ;
2303   void *notifier_data ;
2304   sigset_t *notifier_mask ;
2305   struct audit_context *audit_context ;
2306   uid_t loginuid ;
2307   unsigned int sessionid ;
2308   seccomp_t seccomp ;
2309   u32 parent_exec_id ;
2310   u32 self_exec_id ;
2311   spinlock_t alloc_lock ;
2312   raw_spinlock_t pi_lock ;
2313   struct plist_head pi_waiters ;
2314   struct rt_mutex_waiter *pi_blocked_on ;
2315   struct mutex_waiter *blocked_on ;
2316   unsigned int irq_events ;
2317   unsigned long hardirq_enable_ip ;
2318   unsigned long hardirq_disable_ip ;
2319   unsigned int hardirq_enable_event ;
2320   unsigned int hardirq_disable_event ;
2321   int hardirqs_enabled ;
2322   int hardirq_context ;
2323   unsigned long softirq_disable_ip ;
2324   unsigned long softirq_enable_ip ;
2325   unsigned int softirq_disable_event ;
2326   unsigned int softirq_enable_event ;
2327   int softirqs_enabled ;
2328   int softirq_context ;
2329   void *journal_info ;
2330   struct bio_list *bio_list ;
2331   struct blk_plug *plug ;
2332   struct reclaim_state *reclaim_state ;
2333   struct backing_dev_info *backing_dev_info ;
2334   struct io_context *io_context ;
2335   unsigned long ptrace_message ;
2336   siginfo_t *last_siginfo ;
2337   struct task_io_accounting ioac ;
2338   u64 acct_rss_mem1 ;
2339   u64 acct_vm_mem1 ;
2340   cputime_t acct_timexpd ;
2341   nodemask_t mems_allowed ;
2342   seqcount_t mems_allowed_seq ;
2343   int cpuset_mem_spread_rotor ;
2344   int cpuset_slab_spread_rotor ;
2345   struct css_set *cgroups ;
2346   struct list_head cg_list ;
2347   struct robust_list_head *robust_list ;
2348   struct compat_robust_list_head *compat_robust_list ;
2349   struct list_head pi_state_list ;
2350   struct futex_pi_state *pi_state_cache ;
2351   struct perf_event_context *perf_event_ctxp[2] ;
2352   struct mutex perf_event_mutex ;
2353   struct list_head perf_event_list ;
2354   struct mempolicy *mempolicy ;
2355   short il_next ;
2356   short pref_node_fork ;
2357   struct rcu_head rcu ;
2358   struct pipe_inode_info *splice_pipe ;
2359   struct task_delay_info *delays ;
2360   int make_it_fail ;
2361   int nr_dirtied ;
2362   int nr_dirtied_pause ;
2363   unsigned long dirty_paused_when ;
2364   int latency_record_count ;
2365   struct latency_record latency_record[32] ;
2366   unsigned long timer_slack_ns ;
2367   unsigned long default_timer_slack_ns ;
2368   struct list_head *scm_work_list ;
2369   unsigned long trace ;
2370   unsigned long trace_recursion ;
2371   struct memcg_batch_info memcg_batch ;
2372   atomic_t ptrace_bp_refcnt ;
2373};
2374#line 1681
2375struct pid_namespace;
2376#line 55 "include/linux/kthread.h"
2377struct kthread_work;
2378#line 55
2379struct kthread_work;
2380#line 58 "include/linux/kthread.h"
2381struct kthread_worker {
2382   spinlock_t lock ;
2383   struct list_head work_list ;
2384   struct task_struct *task ;
2385};
2386#line 64 "include/linux/kthread.h"
2387struct kthread_work {
2388   struct list_head node ;
2389   void (*func)(struct kthread_work *work ) ;
2390   wait_queue_head_t done ;
2391   atomic_t flushing ;
2392   int queue_seq ;
2393   int done_seq ;
2394};
2395#line 70 "include/linux/spi/spi.h"
2396struct spi_master;
2397#line 70 "include/linux/spi/spi.h"
2398struct spi_device {
2399   struct device dev ;
2400   struct spi_master *master ;
2401   u32 max_speed_hz ;
2402   u8 chip_select ;
2403   u8 mode ;
2404   u8 bits_per_word ;
2405   int irq ;
2406   void *controller_state ;
2407   void *controller_data ;
2408   char modalias[32] ;
2409};
2410#line 145
2411struct spi_message;
2412#line 145
2413struct spi_message;
2414#line 176 "include/linux/spi/spi.h"
2415struct spi_driver {
2416   struct spi_device_id  const  *id_table ;
2417   int (*probe)(struct spi_device *spi ) ;
2418   int (*remove)(struct spi_device *spi ) ;
2419   void (*shutdown)(struct spi_device *spi ) ;
2420   int (*suspend)(struct spi_device *spi , pm_message_t mesg ) ;
2421   int (*resume)(struct spi_device *spi ) ;
2422   struct device_driver driver ;
2423};
2424#line 272 "include/linux/spi/spi.h"
2425struct spi_master {
2426   struct device dev ;
2427   struct list_head list ;
2428   s16 bus_num ;
2429   u16 num_chipselect ;
2430   u16 dma_alignment ;
2431   u16 mode_bits ;
2432   u16 flags ;
2433   spinlock_t bus_lock_spinlock ;
2434   struct mutex bus_lock_mutex ;
2435   bool bus_lock_flag ;
2436   int (*setup)(struct spi_device *spi ) ;
2437   int (*transfer)(struct spi_device *spi , struct spi_message *mesg ) ;
2438   void (*cleanup)(struct spi_device *spi ) ;
2439   bool queued ;
2440   struct kthread_worker kworker ;
2441   struct task_struct *kworker_task ;
2442   struct kthread_work pump_messages ;
2443   spinlock_t queue_lock ;
2444   struct list_head queue ;
2445   struct spi_message *cur_msg ;
2446   bool busy ;
2447   bool running ;
2448   bool rt ;
2449   int (*prepare_transfer_hardware)(struct spi_master *master ) ;
2450   int (*transfer_one_message)(struct spi_master *master , struct spi_message *mesg ) ;
2451   int (*unprepare_transfer_hardware)(struct spi_master *master ) ;
2452};
2453#line 492 "include/linux/spi/spi.h"
2454struct spi_transfer {
2455   void const   *tx_buf ;
2456   void *rx_buf ;
2457   unsigned int len ;
2458   dma_addr_t tx_dma ;
2459   dma_addr_t rx_dma ;
2460   unsigned int cs_change : 1 ;
2461   u8 bits_per_word ;
2462   u16 delay_usecs ;
2463   u32 speed_hz ;
2464   struct list_head transfer_list ;
2465};
2466#line 541 "include/linux/spi/spi.h"
2467struct spi_message {
2468   struct list_head transfers ;
2469   struct spi_device *spi ;
2470   unsigned int is_dma_mapped : 1 ;
2471   void (*complete)(void *context ) ;
2472   void *context ;
2473   unsigned int actual_length ;
2474   int status ;
2475   struct list_head queue ;
2476   void *state ;
2477};
2478#line 17 "include/linux/hwmon.h"
2479struct device;
2480#line 25 "include/linux/hwmon-sysfs.h"
2481struct sensor_device_attribute {
2482   struct device_attribute dev_attr ;
2483   int index ;
2484};
2485#line 75 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
2486struct ads7871_data {
2487   struct device *hwmon_dev ;
2488   struct mutex update_lock ;
2489};
2490#line 1 "<compiler builtins>"
2491long __builtin_expect(long val , long res ) ;
2492#line 24 "include/linux/list.h"
2493__inline static void INIT_LIST_HEAD(struct list_head *list )  __attribute__((__no_instrument_function__)) ;
2494#line 24 "include/linux/list.h"
2495__inline static void INIT_LIST_HEAD(struct list_head *list ) 
2496{ unsigned long __cil_tmp2 ;
2497  unsigned long __cil_tmp3 ;
2498
2499  {
2500#line 26
2501  *((struct list_head **)list) = list;
2502#line 27
2503  __cil_tmp2 = (unsigned long )list;
2504#line 27
2505  __cil_tmp3 = __cil_tmp2 + 8;
2506#line 27
2507  *((struct list_head **)__cil_tmp3) = list;
2508#line 28
2509  return;
2510}
2511}
2512#line 47
2513extern void __list_add(struct list_head *new , struct list_head *prev , struct list_head *next ) ;
2514#line 74
2515__inline static void list_add_tail(struct list_head *new , struct list_head *head )  __attribute__((__no_instrument_function__)) ;
2516#line 74 "include/linux/list.h"
2517__inline static void list_add_tail(struct list_head *new , struct list_head *head ) 
2518{ unsigned long __cil_tmp3 ;
2519  unsigned long __cil_tmp4 ;
2520  struct list_head *__cil_tmp5 ;
2521
2522  {
2523  {
2524#line 76
2525  __cil_tmp3 = (unsigned long )head;
2526#line 76
2527  __cil_tmp4 = __cil_tmp3 + 8;
2528#line 76
2529  __cil_tmp5 = *((struct list_head **)__cil_tmp4);
2530#line 76
2531  __list_add(new, __cil_tmp5, head);
2532  }
2533#line 77
2534  return;
2535}
2536}
2537#line 49 "include/linux/dynamic_debug.h"
2538extern int ( /* format attribute */  __dynamic_dev_dbg)(struct _ddebug *descriptor ,
2539                                                        struct device  const  *dev ,
2540                                                        char const   *fmt  , ...) ;
2541#line 320 "include/linux/kernel.h"
2542extern int ( /* format attribute */  sprintf)(char *buf , char const   *fmt  , ...) ;
2543#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
2544extern void *memset(void *s , int c , size_t n ) ;
2545#line 27 "include/linux/err.h"
2546__inline static long __attribute__((__warn_unused_result__))  PTR_ERR(void const   *ptr )  __attribute__((__no_instrument_function__)) ;
2547#line 27 "include/linux/err.h"
2548__inline static long __attribute__((__warn_unused_result__))  PTR_ERR(void const   *ptr ) 
2549{ 
2550
2551  {
2552#line 29
2553  return ((long )ptr);
2554}
2555}
2556#line 32
2557__inline static long __attribute__((__warn_unused_result__))  IS_ERR(void const   *ptr )  __attribute__((__no_instrument_function__)) ;
2558#line 32 "include/linux/err.h"
2559__inline static long __attribute__((__warn_unused_result__))  IS_ERR(void const   *ptr ) 
2560{ long tmp ;
2561  unsigned long __cil_tmp3 ;
2562  int __cil_tmp4 ;
2563  int __cil_tmp5 ;
2564  int __cil_tmp6 ;
2565  long __cil_tmp7 ;
2566
2567  {
2568  {
2569#line 34
2570  __cil_tmp3 = (unsigned long )ptr;
2571#line 34
2572  __cil_tmp4 = __cil_tmp3 >= 0xfffffffffffff001UL;
2573#line 34
2574  __cil_tmp5 = ! __cil_tmp4;
2575#line 34
2576  __cil_tmp6 = ! __cil_tmp5;
2577#line 34
2578  __cil_tmp7 = (long )__cil_tmp6;
2579#line 34
2580  tmp = __builtin_expect(__cil_tmp7, 0L);
2581  }
2582#line 34
2583  return (tmp);
2584}
2585}
2586#line 152 "include/linux/mutex.h"
2587void mutex_lock(struct mutex *lock ) ;
2588#line 153
2589int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
2590#line 154
2591int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
2592#line 168
2593int mutex_trylock(struct mutex *lock ) ;
2594#line 169
2595void mutex_unlock(struct mutex *lock ) ;
2596#line 170
2597int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
2598#line 158 "include/linux/sysfs.h"
2599extern int __attribute__((__warn_unused_result__))  sysfs_create_group(struct kobject *kobj ,
2600                                                                       struct attribute_group  const  *grp ) ;
2601#line 162
2602extern void sysfs_remove_group(struct kobject *kobj , struct attribute_group  const  *grp ) ;
2603#line 26 "include/linux/export.h"
2604extern struct module __this_module ;
2605#line 67 "include/linux/module.h"
2606int init_module(void) ;
2607#line 68
2608void cleanup_module(void) ;
2609#line 239 "include/linux/device.h"
2610extern void driver_unregister(struct device_driver *drv ) ;
2611#line 792
2612extern void *dev_get_drvdata(struct device  const  *dev ) ;
2613#line 793
2614extern int dev_set_drvdata(struct device *dev , void *data ) ;
2615#line 161 "include/linux/slab.h"
2616extern void kfree(void const   * ) ;
2617#line 221 "include/linux/slub_def.h"
2618extern void *__kmalloc(size_t size , gfp_t flags ) ;
2619#line 268
2620__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
2621                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
2622#line 268 "include/linux/slub_def.h"
2623__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
2624                                                                    gfp_t flags ) 
2625{ void *tmp___2 ;
2626
2627  {
2628  {
2629#line 283
2630  tmp___2 = __kmalloc(size, flags);
2631  }
2632#line 283
2633  return (tmp___2);
2634}
2635}
2636#line 349 "include/linux/slab.h"
2637__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
2638#line 349 "include/linux/slab.h"
2639__inline static void *kzalloc(size_t size , gfp_t flags ) 
2640{ void *tmp ;
2641  unsigned int __cil_tmp4 ;
2642
2643  {
2644  {
2645#line 351
2646  __cil_tmp4 = flags | 32768U;
2647#line 351
2648  tmp = kmalloc(size, __cil_tmp4);
2649  }
2650#line 351
2651  return (tmp);
2652}
2653}
2654#line 105 "include/linux/spi/spi.h"
2655__inline static struct spi_device *to_spi_device(struct device *dev )  __attribute__((__no_instrument_function__)) ;
2656#line 105 "include/linux/spi/spi.h"
2657__inline static struct spi_device *to_spi_device(struct device *dev ) 
2658{ struct device  const  *__mptr ;
2659  struct spi_device *tmp___7 ;
2660  struct spi_device *__cil_tmp4 ;
2661  struct device *__cil_tmp5 ;
2662  unsigned int __cil_tmp6 ;
2663  char *__cil_tmp7 ;
2664  char *__cil_tmp8 ;
2665  void *__cil_tmp9 ;
2666
2667  {
2668#line 107
2669  if (dev) {
2670#line 107
2671    __mptr = (struct device  const  *)dev;
2672#line 107
2673    __cil_tmp4 = (struct spi_device *)0;
2674#line 107
2675    __cil_tmp5 = (struct device *)__cil_tmp4;
2676#line 107
2677    __cil_tmp6 = (unsigned int )__cil_tmp5;
2678#line 107
2679    __cil_tmp7 = (char *)__mptr;
2680#line 107
2681    __cil_tmp8 = __cil_tmp7 - __cil_tmp6;
2682#line 107
2683    tmp___7 = (struct spi_device *)__cil_tmp8;
2684  } else {
2685#line 107
2686    __cil_tmp9 = (void *)0;
2687#line 107
2688    tmp___7 = (struct spi_device *)__cil_tmp9;
2689  }
2690#line 107
2691  return (tmp___7);
2692}
2693}
2694#line 135
2695__inline static void spi_set_drvdata(struct spi_device *spi , void *data )  __attribute__((__no_instrument_function__)) ;
2696#line 135 "include/linux/spi/spi.h"
2697__inline static void spi_set_drvdata(struct spi_device *spi , void *data ) 
2698{ struct device *__cil_tmp3 ;
2699
2700  {
2701  {
2702#line 137
2703  __cil_tmp3 = (struct device *)spi;
2704#line 137
2705  dev_set_drvdata(__cil_tmp3, data);
2706  }
2707#line 138
2708  return;
2709}
2710}
2711#line 140
2712__inline static void *spi_get_drvdata(struct spi_device *spi )  __attribute__((__no_instrument_function__)) ;
2713#line 140 "include/linux/spi/spi.h"
2714__inline static void *spi_get_drvdata(struct spi_device *spi ) 
2715{ void *tmp___7 ;
2716  struct device *__cil_tmp3 ;
2717  struct device  const  *__cil_tmp4 ;
2718
2719  {
2720  {
2721#line 142
2722  __cil_tmp3 = (struct device *)spi;
2723#line 142
2724  __cil_tmp4 = (struct device  const  *)__cil_tmp3;
2725#line 142
2726  tmp___7 = dev_get_drvdata(__cil_tmp4);
2727  }
2728#line 142
2729  return (tmp___7);
2730}
2731}
2732#line 191
2733extern int spi_register_driver(struct spi_driver *sdrv ) ;
2734#line 198
2735__inline static void spi_unregister_driver(struct spi_driver *sdrv )  __attribute__((__no_instrument_function__)) ;
2736#line 198 "include/linux/spi/spi.h"
2737__inline static void spi_unregister_driver(struct spi_driver *sdrv ) 
2738{ unsigned long __cil_tmp2 ;
2739  unsigned long __cil_tmp3 ;
2740  struct device_driver *__cil_tmp4 ;
2741
2742  {
2743#line 200
2744  if (sdrv) {
2745    {
2746#line 201
2747    __cil_tmp2 = (unsigned long )sdrv;
2748#line 201
2749    __cil_tmp3 = __cil_tmp2 + 48;
2750#line 201
2751    __cil_tmp4 = (struct device_driver *)__cil_tmp3;
2752#line 201
2753    driver_unregister(__cil_tmp4);
2754    }
2755  } else {
2756
2757  }
2758#line 202
2759  return;
2760}
2761}
2762#line 573
2763__inline static void spi_message_init(struct spi_message *m )  __attribute__((__no_instrument_function__)) ;
2764#line 573 "include/linux/spi/spi.h"
2765__inline static void spi_message_init(struct spi_message *m ) 
2766{ void *__cil_tmp2 ;
2767  struct list_head *__cil_tmp3 ;
2768
2769  {
2770  {
2771#line 575
2772  __cil_tmp2 = (void *)m;
2773#line 575
2774  memset(__cil_tmp2, 0, 80UL);
2775#line 576
2776  __cil_tmp3 = (struct list_head *)m;
2777#line 576
2778  INIT_LIST_HEAD(__cil_tmp3);
2779  }
2780#line 577
2781  return;
2782}
2783}
2784#line 579
2785__inline static void spi_message_add_tail(struct spi_transfer *t , struct spi_message *m )  __attribute__((__no_instrument_function__)) ;
2786#line 579 "include/linux/spi/spi.h"
2787__inline static void spi_message_add_tail(struct spi_transfer *t , struct spi_message *m ) 
2788{ unsigned long __cil_tmp3 ;
2789  unsigned long __cil_tmp4 ;
2790  struct list_head *__cil_tmp5 ;
2791  struct list_head *__cil_tmp6 ;
2792
2793  {
2794  {
2795#line 582
2796  __cil_tmp3 = (unsigned long )t;
2797#line 582
2798  __cil_tmp4 = __cil_tmp3 + 48;
2799#line 582
2800  __cil_tmp5 = (struct list_head *)__cil_tmp4;
2801#line 582
2802  __cil_tmp6 = (struct list_head *)m;
2803#line 582
2804  list_add_tail(__cil_tmp5, __cil_tmp6);
2805  }
2806#line 583
2807  return;
2808}
2809}
2810#line 618
2811extern int spi_setup(struct spi_device *spi ) ;
2812#line 630
2813extern int spi_sync(struct spi_device *spi , struct spi_message *message ) ;
2814#line 645
2815__inline static int spi_write(struct spi_device *spi , void const   *buf , size_t len )  __attribute__((__no_instrument_function__)) ;
2816#line 645 "include/linux/spi/spi.h"
2817__inline static int spi_write(struct spi_device *spi , void const   *buf , size_t len ) 
2818{ struct spi_transfer t ;
2819  struct spi_message m ;
2820  int tmp___7 ;
2821  struct spi_transfer *__cil_tmp7 ;
2822  unsigned long __cil_tmp8 ;
2823  unsigned long __cil_tmp9 ;
2824  unsigned long __cil_tmp10 ;
2825  unsigned long __cil_tmp11 ;
2826  unsigned long __cil_tmp12 ;
2827  unsigned long __cil_tmp13 ;
2828  unsigned long __cil_tmp14 ;
2829  unsigned long __cil_tmp15 ;
2830  unsigned long __cil_tmp16 ;
2831  unsigned long __cil_tmp17 ;
2832  unsigned long __cil_tmp18 ;
2833
2834  {
2835  {
2836#line 648
2837  __cil_tmp7 = & t;
2838#line 648
2839  *((void const   **)__cil_tmp7) = buf;
2840#line 648
2841  __cil_tmp8 = (unsigned long )(& t) + 8;
2842#line 648
2843  *((void **)__cil_tmp8) = (void *)0;
2844#line 648
2845  __cil_tmp9 = (unsigned long )(& t) + 16;
2846#line 648
2847  *((unsigned int *)__cil_tmp9) = (unsigned int )len;
2848#line 648
2849  __cil_tmp10 = (unsigned long )(& t) + 24;
2850#line 648
2851  *((dma_addr_t *)__cil_tmp10) = 0ULL;
2852#line 648
2853  __cil_tmp11 = (unsigned long )(& t) + 32;
2854#line 648
2855  *((dma_addr_t *)__cil_tmp11) = 0ULL;
2856#line 648
2857  __cil_tmp12 = (unsigned long )(& t) + 40;
2858#line 648
2859  *((unsigned int *)__cil_tmp12) = 0U;
2860#line 648
2861  __cil_tmp13 = (unsigned long )(& t) + 41;
2862#line 648
2863  *((u8 *)__cil_tmp13) = (unsigned char)0;
2864#line 648
2865  __cil_tmp14 = (unsigned long )(& t) + 42;
2866#line 648
2867  *((u16 *)__cil_tmp14) = (unsigned short)0;
2868#line 648
2869  __cil_tmp15 = (unsigned long )(& t) + 44;
2870#line 648
2871  *((u32 *)__cil_tmp15) = 0U;
2872#line 648
2873  __cil_tmp16 = (unsigned long )(& t) + 48;
2874#line 648
2875  *((struct list_head **)__cil_tmp16) = (struct list_head *)0;
2876#line 648
2877  __cil_tmp17 = 48 + 8;
2878#line 648
2879  __cil_tmp18 = (unsigned long )(& t) + __cil_tmp17;
2880#line 648
2881  *((struct list_head **)__cil_tmp18) = (struct list_head *)0;
2882#line 654
2883  spi_message_init(& m);
2884#line 655
2885  spi_message_add_tail(& t, & m);
2886#line 656
2887  tmp___7 = spi_sync(spi, & m);
2888  }
2889#line 656
2890  return (tmp___7);
2891}
2892}
2893#line 684
2894extern int spi_write_then_read(struct spi_device *spi , void const   *txbuf , unsigned int n_tx ,
2895                               void *rxbuf , unsigned int n_rx ) ;
2896#line 698
2897__inline static ssize_t spi_w8r8(struct spi_device *spi , u8 cmd )  __attribute__((__no_instrument_function__)) ;
2898#line 698 "include/linux/spi/spi.h"
2899__inline static ssize_t spi_w8r8(struct spi_device *spi , u8 cmd ) 
2900{ ssize_t status ;
2901  u8 result ;
2902  int tmp___7 ;
2903  ssize_t tmp___8 ;
2904  void const   *__cil_tmp7 ;
2905  void *__cil_tmp8 ;
2906  u8 *__cil_tmp9 ;
2907  u8 __cil_tmp10 ;
2908
2909  {
2910  {
2911#line 703
2912  __cil_tmp7 = (void const   *)(& cmd);
2913#line 703
2914  __cil_tmp8 = (void *)(& result);
2915#line 703
2916  tmp___7 = spi_write_then_read(spi, __cil_tmp7, 1U, __cil_tmp8, 1U);
2917#line 703
2918  status = (ssize_t )tmp___7;
2919  }
2920#line 706
2921  if (status < 0L) {
2922#line 706
2923    tmp___8 = status;
2924  } else {
2925#line 706
2926    __cil_tmp9 = & result;
2927#line 706
2928    __cil_tmp10 = *__cil_tmp9;
2929#line 706
2930    tmp___8 = (ssize_t )__cil_tmp10;
2931  }
2932#line 706
2933  return (tmp___8);
2934}
2935}
2936#line 722
2937__inline static ssize_t spi_w8r16(struct spi_device *spi , u8 cmd )  __attribute__((__no_instrument_function__)) ;
2938#line 722 "include/linux/spi/spi.h"
2939__inline static ssize_t spi_w8r16(struct spi_device *spi , u8 cmd ) 
2940{ ssize_t status ;
2941  u16 result ;
2942  int tmp___7 ;
2943  ssize_t tmp___8 ;
2944  void const   *__cil_tmp7 ;
2945  u8 *__cil_tmp8 ;
2946  void *__cil_tmp9 ;
2947  u16 *__cil_tmp10 ;
2948  u16 __cil_tmp11 ;
2949
2950  {
2951  {
2952#line 727
2953  __cil_tmp7 = (void const   *)(& cmd);
2954#line 727
2955  __cil_tmp8 = (u8 *)(& result);
2956#line 727
2957  __cil_tmp9 = (void *)__cil_tmp8;
2958#line 727
2959  tmp___7 = spi_write_then_read(spi, __cil_tmp7, 1U, __cil_tmp9, 2U);
2960#line 727
2961  status = (ssize_t )tmp___7;
2962  }
2963#line 730
2964  if (status < 0L) {
2965#line 730
2966    tmp___8 = status;
2967  } else {
2968#line 730
2969    __cil_tmp10 = & result;
2970#line 730
2971    __cil_tmp11 = *__cil_tmp10;
2972#line 730
2973    tmp___8 = (ssize_t )__cil_tmp11;
2974  }
2975#line 730
2976  return (tmp___8);
2977}
2978}
2979#line 19 "include/linux/hwmon.h"
2980extern struct device *hwmon_device_register(struct device *dev ) ;
2981#line 21
2982extern void hwmon_device_unregister(struct device *dev ) ;
2983#line 47 "include/linux/delay.h"
2984extern unsigned long msleep_interruptible(unsigned int msecs ) ;
2985#line 80 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
2986static int ads7871_read_reg8(struct spi_device *spi , int reg ) 
2987{ int ret ;
2988  ssize_t tmp___7 ;
2989  int __cil_tmp5 ;
2990  u8 __cil_tmp6 ;
2991
2992  {
2993  {
2994#line 83
2995  __cil_tmp5 = 1 << 6;
2996#line 83
2997  reg = reg | __cil_tmp5;
2998#line 84
2999  __cil_tmp6 = (u8 )reg;
3000#line 84
3001  tmp___7 = spi_w8r8(spi, __cil_tmp6);
3002#line 84
3003  ret = (int )tmp___7;
3004  }
3005#line 85
3006  return (ret);
3007}
3008}
3009#line 88 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3010static int ads7871_read_reg16(struct spi_device *spi , int reg ) 
3011{ int ret ;
3012  ssize_t tmp___7 ;
3013  int __cil_tmp5 ;
3014  int __cil_tmp6 ;
3015  int __cil_tmp7 ;
3016  u8 __cil_tmp8 ;
3017
3018  {
3019  {
3020#line 91
3021  __cil_tmp5 = 1 << 5;
3022#line 91
3023  __cil_tmp6 = 1 << 6;
3024#line 91
3025  __cil_tmp7 = reg | __cil_tmp6;
3026#line 91
3027  reg = __cil_tmp7 | __cil_tmp5;
3028#line 92
3029  __cil_tmp8 = (u8 )reg;
3030#line 92
3031  tmp___7 = spi_w8r16(spi, __cil_tmp8);
3032#line 92
3033  ret = (int )tmp___7;
3034  }
3035#line 93
3036  return (ret);
3037}
3038}
3039#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3040static int ads7871_write_reg8(struct spi_device *spi , int reg , u8 val ) 
3041{ u8 tmp___7[2] ;
3042  int tmp___8 ;
3043  unsigned long __cil_tmp6 ;
3044  unsigned long __cil_tmp7 ;
3045  unsigned long __cil_tmp8 ;
3046  unsigned long __cil_tmp9 ;
3047  unsigned long __cil_tmp10 ;
3048  unsigned long __cil_tmp11 ;
3049  u8 *__cil_tmp12 ;
3050  void const   *__cil_tmp13 ;
3051
3052  {
3053  {
3054#line 98
3055  __cil_tmp6 = 0 * 1UL;
3056#line 98
3057  __cil_tmp7 = (unsigned long )(tmp___7) + __cil_tmp6;
3058#line 98
3059  *((u8 *)__cil_tmp7) = (u8 )reg;
3060#line 98
3061  __cil_tmp8 = 1 * 1UL;
3062#line 98
3063  __cil_tmp9 = (unsigned long )(tmp___7) + __cil_tmp8;
3064#line 98
3065  *((u8 *)__cil_tmp9) = val;
3066#line 99
3067  __cil_tmp10 = 0 * 1UL;
3068#line 99
3069  __cil_tmp11 = (unsigned long )(tmp___7) + __cil_tmp10;
3070#line 99
3071  __cil_tmp12 = (u8 *)__cil_tmp11;
3072#line 99
3073  __cil_tmp13 = (void const   *)__cil_tmp12;
3074#line 99
3075  tmp___8 = spi_write(spi, __cil_tmp13, 2UL);
3076  }
3077#line 99
3078  return (tmp___8);
3079}
3080}
3081#line 102 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3082static ssize_t show_voltage(struct device *dev , struct device_attribute *da , char *buf ) 
3083{ struct spi_device *spi ;
3084  struct spi_device *tmp___7 ;
3085  struct sensor_device_attribute *attr ;
3086  struct device_attribute  const  *__mptr ;
3087  int ret ;
3088  int val ;
3089  int i ;
3090  uint8_t channel ;
3091  uint8_t mux_cnv ;
3092  int tmp___8 ;
3093  struct sensor_device_attribute *__cil_tmp14 ;
3094  struct device_attribute *__cil_tmp15 ;
3095  unsigned int __cil_tmp16 ;
3096  char *__cil_tmp17 ;
3097  char *__cil_tmp18 ;
3098  unsigned long __cil_tmp19 ;
3099  unsigned long __cil_tmp20 ;
3100  int __cil_tmp21 ;
3101  int __cil_tmp22 ;
3102  int __cil_tmp23 ;
3103  int __cil_tmp24 ;
3104  int __cil_tmp25 ;
3105  int __cil_tmp26 ;
3106  u8 __cil_tmp27 ;
3107  int __cil_tmp28 ;
3108  int __cil_tmp29 ;
3109  int __cil_tmp30 ;
3110  int __cil_tmp31 ;
3111  int __cil_tmp32 ;
3112  int __cil_tmp33 ;
3113  int __cil_tmp34 ;
3114  int __cil_tmp35 ;
3115  int __cil_tmp36 ;
3116
3117  {
3118  {
3119#line 105
3120  tmp___7 = to_spi_device(dev);
3121#line 105
3122  spi = tmp___7;
3123#line 106
3124  __mptr = (struct device_attribute  const  *)da;
3125#line 106
3126  __cil_tmp14 = (struct sensor_device_attribute *)0;
3127#line 106
3128  __cil_tmp15 = (struct device_attribute *)__cil_tmp14;
3129#line 106
3130  __cil_tmp16 = (unsigned int )__cil_tmp15;
3131#line 106
3132  __cil_tmp17 = (char *)__mptr;
3133#line 106
3134  __cil_tmp18 = __cil_tmp17 - __cil_tmp16;
3135#line 106
3136  attr = (struct sensor_device_attribute *)__cil_tmp18;
3137#line 107
3138  i = 0;
3139#line 110
3140  __cil_tmp19 = (unsigned long )attr;
3141#line 110
3142  __cil_tmp20 = __cil_tmp19 + 32;
3143#line 110
3144  __cil_tmp21 = *((int *)__cil_tmp20);
3145#line 110
3146  channel = (uint8_t )__cil_tmp21;
3147#line 117
3148  __cil_tmp22 = (int )channel;
3149#line 117
3150  __cil_tmp23 = 1 << 3;
3151#line 117
3152  __cil_tmp24 = 1 << 7;
3153#line 117
3154  __cil_tmp25 = __cil_tmp24 | __cil_tmp23;
3155#line 117
3156  __cil_tmp26 = __cil_tmp25 | __cil_tmp22;
3157#line 117
3158  __cil_tmp27 = (u8 )__cil_tmp26;
3159#line 117
3160  ads7871_write_reg8(spi, 4, __cil_tmp27);
3161#line 120
3162  ret = ads7871_read_reg8(spi, 4);
3163#line 121
3164  __cil_tmp28 = 1 << 7;
3165#line 121
3166  __cil_tmp29 = ret & __cil_tmp28;
3167#line 121
3168  __cil_tmp30 = __cil_tmp29 >> 7;
3169#line 121
3170  mux_cnv = (uint8_t )__cil_tmp30;
3171  }
3172  {
3173#line 126
3174  while (1) {
3175    while_continue: /* CIL Label */ ;
3176#line 126
3177    if (i < 2) {
3178#line 126
3179      if (mux_cnv) {
3180
3181      } else {
3182#line 126
3183        goto while_break;
3184      }
3185    } else {
3186#line 126
3187      goto while_break;
3188    }
3189    {
3190#line 127
3191    i = i + 1;
3192#line 128
3193    ret = ads7871_read_reg8(spi, 4);
3194#line 129
3195    __cil_tmp31 = 1 << 7;
3196#line 129
3197    __cil_tmp32 = ret & __cil_tmp31;
3198#line 129
3199    __cil_tmp33 = __cil_tmp32 >> 7;
3200#line 129
3201    mux_cnv = (uint8_t )__cil_tmp33;
3202#line 130
3203    msleep_interruptible(1U);
3204    }
3205  }
3206  while_break: /* CIL Label */ ;
3207  }
3208  {
3209#line 133
3210  __cil_tmp34 = (int )mux_cnv;
3211#line 133
3212  if (__cil_tmp34 == 0) {
3213    {
3214#line 134
3215    val = ads7871_read_reg16(spi, 0);
3216#line 136
3217    __cil_tmp35 = val >> 2;
3218#line 136
3219    __cil_tmp36 = __cil_tmp35 * 25000;
3220#line 136
3221    val = __cil_tmp36 / 8192;
3222#line 137
3223    tmp___8 = sprintf(buf, "%d\n", val);
3224    }
3225#line 137
3226    return ((ssize_t )tmp___8);
3227  } else {
3228#line 139
3229    return ((ssize_t )-1);
3230  }
3231  }
3232}
3233}
3234#line 143 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3235static struct sensor_device_attribute sensor_dev_attr_in0_input  =    {{{"in0_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3236                                                                struct device_attribute *attr ,
3237                                                                char const   *buf ,
3238                                                                size_t count ))((void *)0)},
3239    0};
3240#line 144 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3241static struct sensor_device_attribute sensor_dev_attr_in1_input  =    {{{"in1_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3242                                                                struct device_attribute *attr ,
3243                                                                char const   *buf ,
3244                                                                size_t count ))((void *)0)},
3245    1};
3246#line 145 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3247static struct sensor_device_attribute sensor_dev_attr_in2_input  =    {{{"in2_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3248                                                                struct device_attribute *attr ,
3249                                                                char const   *buf ,
3250                                                                size_t count ))((void *)0)},
3251    2};
3252#line 146 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3253static struct sensor_device_attribute sensor_dev_attr_in3_input  =    {{{"in3_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3254                                                                struct device_attribute *attr ,
3255                                                                char const   *buf ,
3256                                                                size_t count ))((void *)0)},
3257    3};
3258#line 147 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3259static struct sensor_device_attribute sensor_dev_attr_in4_input  =    {{{"in4_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3260                                                                struct device_attribute *attr ,
3261                                                                char const   *buf ,
3262                                                                size_t count ))((void *)0)},
3263    4};
3264#line 148 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3265static struct sensor_device_attribute sensor_dev_attr_in5_input  =    {{{"in5_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3266                                                                struct device_attribute *attr ,
3267                                                                char const   *buf ,
3268                                                                size_t count ))((void *)0)},
3269    5};
3270#line 149 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3271static struct sensor_device_attribute sensor_dev_attr_in6_input  =    {{{"in6_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3272                                                                struct device_attribute *attr ,
3273                                                                char const   *buf ,
3274                                                                size_t count ))((void *)0)},
3275    6};
3276#line 150 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3277static struct sensor_device_attribute sensor_dev_attr_in7_input  =    {{{"in7_input", (umode_t )292}, & show_voltage, (ssize_t (*)(struct device *dev ,
3278                                                                struct device_attribute *attr ,
3279                                                                char const   *buf ,
3280                                                                size_t count ))((void *)0)},
3281    7};
3282#line 152 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3283static struct attribute *ads7871_attributes[9]  = 
3284#line 152
3285  {      & sensor_dev_attr_in0_input.dev_attr.attr,      & sensor_dev_attr_in1_input.dev_attr.attr,      & sensor_dev_attr_in2_input.dev_attr.attr,      & sensor_dev_attr_in3_input.dev_attr.attr, 
3286        & sensor_dev_attr_in4_input.dev_attr.attr,      & sensor_dev_attr_in5_input.dev_attr.attr,      & sensor_dev_attr_in6_input.dev_attr.attr,      & sensor_dev_attr_in7_input.dev_attr.attr, 
3287        (struct attribute *)((void *)0)};
3288#line 164 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3289static struct attribute_group  const  ads7871_group  =    {(char const   *)0, (umode_t (*)(struct kobject * , struct attribute * , int  ))0,
3290    ads7871_attributes};
3291#line 174
3292static int ads7871_probe(struct spi_device *spi )  __attribute__((__section__(".devinit.text"),
3293__no_instrument_function__)) ;
3294#line 174 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3295static struct _ddebug  __attribute__((__aligned__(8))) descriptor  __attribute__((__used__,
3296__section__("__verbose")))  =    {"ads7871", "ads7871_probe", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c",
3297    "probe\n", 174U, 1U};
3298#line 188
3299static int ads7871_probe(struct spi_device *spi )  __attribute__((__section__(".devinit.text"),
3300__no_instrument_function__)) ;
3301#line 188 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3302static struct _ddebug  __attribute__((__aligned__(8))) descriptor___0  __attribute__((__used__,
3303__section__("__verbose")))  =    {"ads7871", "ads7871_probe", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c",
3304    "REG_OSC_CONTROL write:%x, read:%x\n", 188U, 1U};
3305#line 168
3306static int ads7871_probe(struct spi_device *spi )  __attribute__((__section__(".devinit.text"),
3307__no_instrument_function__)) ;
3308#line 168 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3309static int ads7871_probe(struct spi_device *spi ) 
3310{ int ret ;
3311  int err ;
3312  uint8_t val ;
3313  struct ads7871_data *pdata ;
3314  long tmp___7 ;
3315  long tmp___8 ;
3316  void *tmp___9 ;
3317  long tmp___10 ;
3318  long tmp___11 ;
3319  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp11 ;
3320  unsigned int __cil_tmp12 ;
3321  unsigned int __cil_tmp13 ;
3322  int __cil_tmp14 ;
3323  int __cil_tmp15 ;
3324  long __cil_tmp16 ;
3325  struct device *__cil_tmp17 ;
3326  struct device  const  *__cil_tmp18 ;
3327  unsigned long __cil_tmp19 ;
3328  unsigned long __cil_tmp20 ;
3329  unsigned long __cil_tmp21 ;
3330  unsigned long __cil_tmp22 ;
3331  u8 __cil_tmp23 ;
3332  u8 __cil_tmp24 ;
3333  int __cil_tmp25 ;
3334  int __cil_tmp26 ;
3335  int __cil_tmp27 ;
3336  int __cil_tmp28 ;
3337  int __cil_tmp29 ;
3338  int __cil_tmp30 ;
3339  int __cil_tmp31 ;
3340  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp32 ;
3341  unsigned int __cil_tmp33 ;
3342  unsigned int __cil_tmp34 ;
3343  int __cil_tmp35 ;
3344  int __cil_tmp36 ;
3345  long __cil_tmp37 ;
3346  struct device *__cil_tmp38 ;
3347  struct device  const  *__cil_tmp39 ;
3348  int __cil_tmp40 ;
3349  int __cil_tmp41 ;
3350  unsigned long __cil_tmp42 ;
3351  unsigned long __cil_tmp43 ;
3352  unsigned long __cil_tmp44 ;
3353  struct kobject *__cil_tmp45 ;
3354  void *__cil_tmp46 ;
3355  struct device *__cil_tmp47 ;
3356  struct device *__cil_tmp48 ;
3357  void const   *__cil_tmp49 ;
3358  struct device *__cil_tmp50 ;
3359  void const   *__cil_tmp51 ;
3360  unsigned long __cil_tmp52 ;
3361  unsigned long __cil_tmp53 ;
3362  unsigned long __cil_tmp54 ;
3363  struct kobject *__cil_tmp55 ;
3364  void const   *__cil_tmp56 ;
3365
3366  {
3367  {
3368#line 174
3369  while (1) {
3370    while_continue: /* CIL Label */ ;
3371    {
3372#line 174
3373    while (1) {
3374      while_continue___0: /* CIL Label */ ;
3375      {
3376#line 174
3377      __cil_tmp11 = & descriptor;
3378#line 174
3379      __cil_tmp12 = __cil_tmp11->flags;
3380#line 174
3381      __cil_tmp13 = __cil_tmp12 & 1U;
3382#line 174
3383      __cil_tmp14 = ! __cil_tmp13;
3384#line 174
3385      __cil_tmp15 = ! __cil_tmp14;
3386#line 174
3387      __cil_tmp16 = (long )__cil_tmp15;
3388#line 174
3389      tmp___7 = __builtin_expect(__cil_tmp16, 0L);
3390      }
3391#line 174
3392      if (tmp___7) {
3393        {
3394#line 174
3395        __cil_tmp17 = (struct device *)spi;
3396#line 174
3397        __cil_tmp18 = (struct device  const  *)__cil_tmp17;
3398#line 174
3399        __dynamic_dev_dbg(& descriptor, __cil_tmp18, "probe\n");
3400        }
3401      } else {
3402
3403      }
3404#line 174
3405      goto while_break___0;
3406    }
3407    while_break___0: /* CIL Label */ ;
3408    }
3409#line 174
3410    goto while_break;
3411  }
3412  while_break: /* CIL Label */ ;
3413  }
3414  {
3415#line 177
3416  __cil_tmp19 = (unsigned long )spi;
3417#line 177
3418  __cil_tmp20 = __cil_tmp19 + 781;
3419#line 177
3420  *((u8 *)__cil_tmp20) = (u8 )0;
3421#line 178
3422  __cil_tmp21 = (unsigned long )spi;
3423#line 178
3424  __cil_tmp22 = __cil_tmp21 + 782;
3425#line 178
3426  *((u8 *)__cil_tmp22) = (u8 )8;
3427#line 179
3428  spi_setup(spi);
3429#line 181
3430  __cil_tmp23 = (u8 )0;
3431#line 181
3432  ads7871_write_reg8(spi, 24, __cil_tmp23);
3433#line 182
3434  __cil_tmp24 = (u8 )0;
3435#line 182
3436  ads7871_write_reg8(spi, 3, __cil_tmp24);
3437#line 184
3438  __cil_tmp25 = 1 << 2;
3439#line 184
3440  __cil_tmp26 = 1 << 3;
3441#line 184
3442  __cil_tmp27 = 1 << 4;
3443#line 184
3444  __cil_tmp28 = 1 << 5;
3445#line 184
3446  __cil_tmp29 = __cil_tmp28 | __cil_tmp27;
3447#line 184
3448  __cil_tmp30 = __cil_tmp29 | __cil_tmp26;
3449#line 184
3450  __cil_tmp31 = __cil_tmp30 | __cil_tmp25;
3451#line 184
3452  val = (uint8_t )__cil_tmp31;
3453#line 185
3454  ads7871_write_reg8(spi, 7, val);
3455#line 186
3456  ret = ads7871_read_reg8(spi, 7);
3457  }
3458  {
3459#line 188
3460  while (1) {
3461    while_continue___1: /* CIL Label */ ;
3462    {
3463#line 188
3464    while (1) {
3465      while_continue___2: /* CIL Label */ ;
3466      {
3467#line 188
3468      __cil_tmp32 = & descriptor___0;
3469#line 188
3470      __cil_tmp33 = __cil_tmp32->flags;
3471#line 188
3472      __cil_tmp34 = __cil_tmp33 & 1U;
3473#line 188
3474      __cil_tmp35 = ! __cil_tmp34;
3475#line 188
3476      __cil_tmp36 = ! __cil_tmp35;
3477#line 188
3478      __cil_tmp37 = (long )__cil_tmp36;
3479#line 188
3480      tmp___8 = __builtin_expect(__cil_tmp37, 0L);
3481      }
3482#line 188
3483      if (tmp___8) {
3484        {
3485#line 188
3486        __cil_tmp38 = (struct device *)spi;
3487#line 188
3488        __cil_tmp39 = (struct device  const  *)__cil_tmp38;
3489#line 188
3490        __cil_tmp40 = (int )val;
3491#line 188
3492        __dynamic_dev_dbg(& descriptor___0, __cil_tmp39, "REG_OSC_CONTROL write:%x, read:%x\n",
3493                          __cil_tmp40, ret);
3494        }
3495      } else {
3496
3497      }
3498#line 188
3499      goto while_break___2;
3500    }
3501    while_break___2: /* CIL Label */ ;
3502    }
3503#line 188
3504    goto while_break___1;
3505  }
3506  while_break___1: /* CIL Label */ ;
3507  }
3508  {
3509#line 193
3510  __cil_tmp41 = (int )val;
3511#line 193
3512  if (__cil_tmp41 != ret) {
3513#line 194
3514    err = -19;
3515#line 195
3516    goto exit;
3517  } else {
3518
3519  }
3520  }
3521  {
3522#line 198
3523  tmp___9 = kzalloc(80UL, 208U);
3524#line 198
3525  pdata = (struct ads7871_data *)tmp___9;
3526  }
3527#line 199
3528  if (! pdata) {
3529#line 200
3530    err = -12;
3531#line 201
3532    goto exit;
3533  } else {
3534
3535  }
3536  {
3537#line 204
3538  __cil_tmp42 = 0 + 16;
3539#line 204
3540  __cil_tmp43 = (unsigned long )spi;
3541#line 204
3542  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
3543#line 204
3544  __cil_tmp45 = (struct kobject *)__cil_tmp44;
3545#line 204
3546  err = (int )sysfs_create_group(__cil_tmp45, & ads7871_group);
3547  }
3548#line 205
3549  if (err < 0) {
3550#line 206
3551    goto error_free;
3552  } else {
3553
3554  }
3555  {
3556#line 208
3557  __cil_tmp46 = (void *)pdata;
3558#line 208
3559  spi_set_drvdata(spi, __cil_tmp46);
3560#line 210
3561  __cil_tmp47 = (struct device *)spi;
3562#line 210
3563  *((struct device **)pdata) = hwmon_device_register(__cil_tmp47);
3564#line 211
3565  __cil_tmp48 = *((struct device **)pdata);
3566#line 211
3567  __cil_tmp49 = (void const   *)__cil_tmp48;
3568#line 211
3569  tmp___11 = (long )IS_ERR(__cil_tmp49);
3570  }
3571#line 211
3572  if (tmp___11) {
3573    {
3574#line 212
3575    __cil_tmp50 = *((struct device **)pdata);
3576#line 212
3577    __cil_tmp51 = (void const   *)__cil_tmp50;
3578#line 212
3579    tmp___10 = (long )PTR_ERR(__cil_tmp51);
3580#line 212
3581    err = (int )tmp___10;
3582    }
3583#line 213
3584    goto error_remove;
3585  } else {
3586
3587  }
3588#line 216
3589  return (0);
3590  error_remove: 
3591  {
3592#line 219
3593  __cil_tmp52 = 0 + 16;
3594#line 219
3595  __cil_tmp53 = (unsigned long )spi;
3596#line 219
3597  __cil_tmp54 = __cil_tmp53 + __cil_tmp52;
3598#line 219
3599  __cil_tmp55 = (struct kobject *)__cil_tmp54;
3600#line 219
3601  sysfs_remove_group(__cil_tmp55, & ads7871_group);
3602  }
3603  error_free: 
3604  {
3605#line 221
3606  __cil_tmp56 = (void const   *)pdata;
3607#line 221
3608  kfree(__cil_tmp56);
3609  }
3610  exit: 
3611#line 223
3612  return (err);
3613}
3614}
3615#line 226
3616static int ads7871_remove(struct spi_device *spi )  __attribute__((__section__(".devexit.text"),
3617__no_instrument_function__)) ;
3618#line 226 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3619static int ads7871_remove(struct spi_device *spi ) 
3620{ struct ads7871_data *pdata ;
3621  void *tmp___7 ;
3622  struct device *__cil_tmp4 ;
3623  unsigned long __cil_tmp5 ;
3624  unsigned long __cil_tmp6 ;
3625  unsigned long __cil_tmp7 ;
3626  struct kobject *__cil_tmp8 ;
3627  void const   *__cil_tmp9 ;
3628
3629  {
3630  {
3631#line 228
3632  tmp___7 = spi_get_drvdata(spi);
3633#line 228
3634  pdata = (struct ads7871_data *)tmp___7;
3635#line 230
3636  __cil_tmp4 = *((struct device **)pdata);
3637#line 230
3638  hwmon_device_unregister(__cil_tmp4);
3639#line 231
3640  __cil_tmp5 = 0 + 16;
3641#line 231
3642  __cil_tmp6 = (unsigned long )spi;
3643#line 231
3644  __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
3645#line 231
3646  __cil_tmp8 = (struct kobject *)__cil_tmp7;
3647#line 231
3648  sysfs_remove_group(__cil_tmp8, & ads7871_group);
3649#line 232
3650  __cil_tmp9 = (void const   *)pdata;
3651#line 232
3652  kfree(__cil_tmp9);
3653  }
3654#line 233
3655  return (0);
3656}
3657}
3658#line 236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3659static struct spi_driver ads7871_driver  =    {(struct spi_device_id  const  *)0, & ads7871_probe, & ads7871_remove, (void (*)(struct spi_device *spi ))0,
3660    (int (*)(struct spi_device *spi , pm_message_t mesg ))0, (int (*)(struct spi_device *spi ))0,
3661    {"ads7871", (struct bus_type *)0, & __this_module, (char const   *)0, (_Bool)0,
3662     (struct of_device_id  const  *)0, (int (*)(struct device *dev ))0, (int (*)(struct device *dev ))0,
3663     (void (*)(struct device *dev ))0, (int (*)(struct device *dev , pm_message_t state ))0,
3664     (int (*)(struct device *dev ))0, (struct attribute_group  const  **)0, (struct dev_pm_ops  const  *)0,
3665     (struct driver_private *)0}};
3666#line 246
3667static int ads7871_driver_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
3668#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3669static int ads7871_driver_init(void) 
3670{ int tmp___7 ;
3671
3672  {
3673  {
3674#line 246
3675  tmp___7 = spi_register_driver(& ads7871_driver);
3676  }
3677#line 246
3678  return (tmp___7);
3679}
3680}
3681#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3682int init_module(void) 
3683{ int tmp___7 ;
3684
3685  {
3686  {
3687#line 246
3688  tmp___7 = ads7871_driver_init();
3689  }
3690#line 246
3691  return (tmp___7);
3692}
3693}
3694#line 246
3695static void ads7871_driver_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
3696#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3697static void ads7871_driver_exit(void) 
3698{ 
3699
3700  {
3701  {
3702#line 246
3703  spi_unregister_driver(& ads7871_driver);
3704  }
3705#line 246
3706  return;
3707}
3708}
3709#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3710void cleanup_module(void) 
3711{ 
3712
3713  {
3714  {
3715#line 246
3716  ads7871_driver_exit();
3717  }
3718#line 246
3719  return;
3720}
3721}
3722#line 248 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3723static char const   __mod_author248[43]  __attribute__((__used__, __unused__, __section__(".modinfo"),
3724__aligned__(1)))  = 
3725#line 248
3726  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
3727        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'P', 
3728        (char const   )'a',      (char const   )'u',      (char const   )'l',      (char const   )' ', 
3729        (char const   )'T',      (char const   )'h',      (char const   )'o',      (char const   )'m', 
3730        (char const   )'a',      (char const   )'s',      (char const   )' ',      (char const   )'<', 
3731        (char const   )'p',      (char const   )'t',      (char const   )'h',      (char const   )'o', 
3732        (char const   )'m',      (char const   )'a',      (char const   )'s',      (char const   )'8', 
3733        (char const   )'5',      (char const   )'8',      (char const   )'9',      (char const   )'@', 
3734        (char const   )'g',      (char const   )'m',      (char const   )'a',      (char const   )'i', 
3735        (char const   )'l',      (char const   )'.',      (char const   )'c',      (char const   )'o', 
3736        (char const   )'m',      (char const   )'>',      (char const   )'\000'};
3737#line 249 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3738static char const   __mod_description249[34]  __attribute__((__used__, __unused__,
3739__section__(".modinfo"), __aligned__(1)))  = 
3740#line 249
3741  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
3742        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
3743        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
3744        (char const   )'T',      (char const   )'I',      (char const   )' ',      (char const   )'A', 
3745        (char const   )'D',      (char const   )'S',      (char const   )'7',      (char const   )'8', 
3746        (char const   )'7',      (char const   )'1',      (char const   )' ',      (char const   )'A', 
3747        (char const   )'/',      (char const   )'D',      (char const   )' ',      (char const   )'d', 
3748        (char const   )'r',      (char const   )'i',      (char const   )'v',      (char const   )'e', 
3749        (char const   )'r',      (char const   )'\000'};
3750#line 250 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3751static char const   __mod_license250[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
3752__aligned__(1)))  = 
3753#line 250
3754  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
3755        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
3756        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
3757#line 268
3758void ldv_check_final_state(void) ;
3759#line 271
3760extern void ldv_check_return_value(int res ) ;
3761#line 274
3762extern void ldv_initialize(void) ;
3763#line 277
3764extern int __VERIFIER_nondet_int(void) ;
3765#line 280 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3766int LDV_IN_INTERRUPT  ;
3767#line 320 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3768static int res_ads7871_probe_4  ;
3769#line 283 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
3770void main(void) 
3771{ struct spi_device *var_group1 ;
3772  int ldv_s_ads7871_driver_spi_driver ;
3773  int tmp___7 ;
3774  int tmp___8 ;
3775  int __cil_tmp5 ;
3776
3777  {
3778  {
3779#line 328
3780  LDV_IN_INTERRUPT = 1;
3781#line 337
3782  ldv_initialize();
3783#line 338
3784  ldv_s_ads7871_driver_spi_driver = 0;
3785  }
3786  {
3787#line 341
3788  while (1) {
3789    while_continue: /* CIL Label */ ;
3790    {
3791#line 341
3792    tmp___8 = __VERIFIER_nondet_int();
3793    }
3794#line 341
3795    if (tmp___8) {
3796
3797    } else {
3798      {
3799#line 341
3800      __cil_tmp5 = ldv_s_ads7871_driver_spi_driver == 0;
3801#line 341
3802      if (! __cil_tmp5) {
3803
3804      } else {
3805#line 341
3806        goto while_break;
3807      }
3808      }
3809    }
3810    {
3811#line 345
3812    tmp___7 = __VERIFIER_nondet_int();
3813    }
3814#line 347
3815    if (tmp___7 == 0) {
3816#line 347
3817      goto case_0;
3818    } else {
3819      {
3820#line 391
3821      goto switch_default;
3822#line 345
3823      if (0) {
3824        case_0: /* CIL Label */ 
3825#line 350
3826        if (ldv_s_ads7871_driver_spi_driver == 0) {
3827          {
3828#line 380
3829          res_ads7871_probe_4 = ads7871_probe(var_group1);
3830#line 381
3831          ldv_check_return_value(res_ads7871_probe_4);
3832          }
3833#line 382
3834          if (res_ads7871_probe_4) {
3835#line 383
3836            goto ldv_module_exit;
3837          } else {
3838
3839          }
3840#line 384
3841          ldv_s_ads7871_driver_spi_driver = 0;
3842        } else {
3843
3844        }
3845#line 390
3846        goto switch_break;
3847        switch_default: /* CIL Label */ 
3848#line 391
3849        goto switch_break;
3850      } else {
3851        switch_break: /* CIL Label */ ;
3852      }
3853      }
3854    }
3855  }
3856  while_break: /* CIL Label */ ;
3857  }
3858  ldv_module_exit: 
3859  {
3860#line 400
3861  ldv_check_final_state();
3862  }
3863#line 403
3864  return;
3865}
3866}
3867#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
3868void ldv_blast_assert(void) 
3869{ 
3870
3871  {
3872  ERROR: 
3873#line 6
3874  goto ERROR;
3875}
3876}
3877#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
3878extern int __VERIFIER_nondet_int(void) ;
3879#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3880int ldv_mutex  =    1;
3881#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3882int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
3883{ int nondetermined ;
3884
3885  {
3886#line 29
3887  if (ldv_mutex == 1) {
3888
3889  } else {
3890    {
3891#line 29
3892    ldv_blast_assert();
3893    }
3894  }
3895  {
3896#line 32
3897  nondetermined = __VERIFIER_nondet_int();
3898  }
3899#line 35
3900  if (nondetermined) {
3901#line 38
3902    ldv_mutex = 2;
3903#line 40
3904    return (0);
3905  } else {
3906#line 45
3907    return (-4);
3908  }
3909}
3910}
3911#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3912int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
3913{ int nondetermined ;
3914
3915  {
3916#line 57
3917  if (ldv_mutex == 1) {
3918
3919  } else {
3920    {
3921#line 57
3922    ldv_blast_assert();
3923    }
3924  }
3925  {
3926#line 60
3927  nondetermined = __VERIFIER_nondet_int();
3928  }
3929#line 63
3930  if (nondetermined) {
3931#line 66
3932    ldv_mutex = 2;
3933#line 68
3934    return (0);
3935  } else {
3936#line 73
3937    return (-4);
3938  }
3939}
3940}
3941#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3942int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
3943{ int atomic_value_after_dec ;
3944
3945  {
3946#line 83
3947  if (ldv_mutex == 1) {
3948
3949  } else {
3950    {
3951#line 83
3952    ldv_blast_assert();
3953    }
3954  }
3955  {
3956#line 86
3957  atomic_value_after_dec = __VERIFIER_nondet_int();
3958  }
3959#line 89
3960  if (atomic_value_after_dec == 0) {
3961#line 92
3962    ldv_mutex = 2;
3963#line 94
3964    return (1);
3965  } else {
3966
3967  }
3968#line 98
3969  return (0);
3970}
3971}
3972#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3973void mutex_lock(struct mutex *lock ) 
3974{ 
3975
3976  {
3977#line 108
3978  if (ldv_mutex == 1) {
3979
3980  } else {
3981    {
3982#line 108
3983    ldv_blast_assert();
3984    }
3985  }
3986#line 110
3987  ldv_mutex = 2;
3988#line 111
3989  return;
3990}
3991}
3992#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3993int mutex_trylock(struct mutex *lock ) 
3994{ int nondetermined ;
3995
3996  {
3997#line 121
3998  if (ldv_mutex == 1) {
3999
4000  } else {
4001    {
4002#line 121
4003    ldv_blast_assert();
4004    }
4005  }
4006  {
4007#line 124
4008  nondetermined = __VERIFIER_nondet_int();
4009  }
4010#line 127
4011  if (nondetermined) {
4012#line 130
4013    ldv_mutex = 2;
4014#line 132
4015    return (1);
4016  } else {
4017#line 137
4018    return (0);
4019  }
4020}
4021}
4022#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4023void mutex_unlock(struct mutex *lock ) 
4024{ 
4025
4026  {
4027#line 147
4028  if (ldv_mutex == 2) {
4029
4030  } else {
4031    {
4032#line 147
4033    ldv_blast_assert();
4034    }
4035  }
4036#line 149
4037  ldv_mutex = 1;
4038#line 150
4039  return;
4040}
4041}
4042#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4043void ldv_check_final_state(void) 
4044{ 
4045
4046  {
4047#line 156
4048  if (ldv_mutex == 1) {
4049
4050  } else {
4051    {
4052#line 156
4053    ldv_blast_assert();
4054    }
4055  }
4056#line 157
4057  return;
4058}
4059}
4060#line 412 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/6021/dscv_tempdir/dscv/ri/32_1/drivers/hwmon/ads7871.c.common.c"
4061long s__builtin_expect(long val , long res ) 
4062{ 
4063
4064  {
4065#line 413
4066  return (val);
4067}
4068}