Showing error 588

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--regulator--max8649.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 4778
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 117 "include/linux/types.h"
  77typedef __u32 uint32_t;
  78#line 202 "include/linux/types.h"
  79typedef unsigned int gfp_t;
  80#line 219 "include/linux/types.h"
  81struct __anonstruct_atomic_t_7 {
  82   int counter ;
  83};
  84#line 219 "include/linux/types.h"
  85typedef struct __anonstruct_atomic_t_7 atomic_t;
  86#line 224 "include/linux/types.h"
  87struct __anonstruct_atomic64_t_8 {
  88   long counter ;
  89};
  90#line 224 "include/linux/types.h"
  91typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  92#line 229 "include/linux/types.h"
  93struct list_head {
  94   struct list_head *next ;
  95   struct list_head *prev ;
  96};
  97#line 233
  98struct hlist_node;
  99#line 233 "include/linux/types.h"
 100struct hlist_head {
 101   struct hlist_node *first ;
 102};
 103#line 237 "include/linux/types.h"
 104struct hlist_node {
 105   struct hlist_node *next ;
 106   struct hlist_node **pprev ;
 107};
 108#line 253 "include/linux/types.h"
 109struct rcu_head {
 110   struct rcu_head *next ;
 111   void (*func)(struct rcu_head *head ) ;
 112};
 113#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 114struct module;
 115#line 56
 116struct module;
 117#line 146 "include/linux/init.h"
 118typedef void (*ctor_fn_t)(void);
 119#line 47 "include/linux/dynamic_debug.h"
 120struct device;
 121#line 47
 122struct device;
 123#line 135 "include/linux/kernel.h"
 124struct completion;
 125#line 135
 126struct completion;
 127#line 136
 128struct pt_regs;
 129#line 136
 130struct pt_regs;
 131#line 349
 132struct pid;
 133#line 349
 134struct pid;
 135#line 12 "include/linux/thread_info.h"
 136struct timespec;
 137#line 12
 138struct timespec;
 139#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
 140struct page;
 141#line 18
 142struct page;
 143#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 144struct task_struct;
 145#line 20
 146struct task_struct;
 147#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 148struct task_struct;
 149#line 8
 150struct mm_struct;
 151#line 8
 152struct mm_struct;
 153#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 154struct pt_regs {
 155   unsigned long r15 ;
 156   unsigned long r14 ;
 157   unsigned long r13 ;
 158   unsigned long r12 ;
 159   unsigned long bp ;
 160   unsigned long bx ;
 161   unsigned long r11 ;
 162   unsigned long r10 ;
 163   unsigned long r9 ;
 164   unsigned long r8 ;
 165   unsigned long ax ;
 166   unsigned long cx ;
 167   unsigned long dx ;
 168   unsigned long si ;
 169   unsigned long di ;
 170   unsigned long orig_ax ;
 171   unsigned long ip ;
 172   unsigned long cs ;
 173   unsigned long flags ;
 174   unsigned long sp ;
 175   unsigned long ss ;
 176};
 177#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 178struct __anonstruct____missing_field_name_15 {
 179   unsigned int a ;
 180   unsigned int b ;
 181};
 182#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 183struct __anonstruct____missing_field_name_16 {
 184   u16 limit0 ;
 185   u16 base0 ;
 186   unsigned int base1 : 8 ;
 187   unsigned int type : 4 ;
 188   unsigned int s : 1 ;
 189   unsigned int dpl : 2 ;
 190   unsigned int p : 1 ;
 191   unsigned int limit : 4 ;
 192   unsigned int avl : 1 ;
 193   unsigned int l : 1 ;
 194   unsigned int d : 1 ;
 195   unsigned int g : 1 ;
 196   unsigned int base2 : 8 ;
 197};
 198#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 199union __anonunion____missing_field_name_14 {
 200   struct __anonstruct____missing_field_name_15 __annonCompField5 ;
 201   struct __anonstruct____missing_field_name_16 __annonCompField6 ;
 202};
 203#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 204struct desc_struct {
 205   union __anonunion____missing_field_name_14 __annonCompField7 ;
 206} __attribute__((__packed__)) ;
 207#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 208typedef unsigned long pgdval_t;
 209#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 210typedef unsigned long pgprotval_t;
 211#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 212struct pgprot {
 213   pgprotval_t pgprot ;
 214};
 215#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 216typedef struct pgprot pgprot_t;
 217#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 218struct __anonstruct_pgd_t_20 {
 219   pgdval_t pgd ;
 220};
 221#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 222typedef struct __anonstruct_pgd_t_20 pgd_t;
 223#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 224typedef struct page *pgtable_t;
 225#line 295
 226struct file;
 227#line 295
 228struct file;
 229#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 230struct page;
 231#line 47
 232struct thread_struct;
 233#line 47
 234struct thread_struct;
 235#line 50
 236struct mm_struct;
 237#line 51
 238struct desc_struct;
 239#line 52
 240struct task_struct;
 241#line 53
 242struct cpumask;
 243#line 53
 244struct cpumask;
 245#line 329
 246struct arch_spinlock;
 247#line 329
 248struct arch_spinlock;
 249#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 250struct task_struct;
 251#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
 252struct kernel_vm86_regs {
 253   struct pt_regs pt ;
 254   unsigned short es ;
 255   unsigned short __esh ;
 256   unsigned short ds ;
 257   unsigned short __dsh ;
 258   unsigned short fs ;
 259   unsigned short __fsh ;
 260   unsigned short gs ;
 261   unsigned short __gsh ;
 262};
 263#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 264union __anonunion____missing_field_name_24 {
 265   struct pt_regs *regs ;
 266   struct kernel_vm86_regs *vm86 ;
 267};
 268#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 269struct math_emu_info {
 270   long ___orig_eip ;
 271   union __anonunion____missing_field_name_24 __annonCompField8 ;
 272};
 273#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 274struct task_struct;
 275#line 10 "include/asm-generic/bug.h"
 276struct bug_entry {
 277   int bug_addr_disp ;
 278   int file_disp ;
 279   unsigned short line ;
 280   unsigned short flags ;
 281};
 282#line 12 "include/linux/bug.h"
 283struct pt_regs;
 284#line 14 "include/linux/cpumask.h"
 285struct cpumask {
 286   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 287};
 288#line 14 "include/linux/cpumask.h"
 289typedef struct cpumask cpumask_t;
 290#line 637 "include/linux/cpumask.h"
 291typedef struct cpumask *cpumask_var_t;
 292#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 293struct static_key;
 294#line 234
 295struct static_key;
 296#line 11 "include/linux/personality.h"
 297struct pt_regs;
 298#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 299struct i387_fsave_struct {
 300   u32 cwd ;
 301   u32 swd ;
 302   u32 twd ;
 303   u32 fip ;
 304   u32 fcs ;
 305   u32 foo ;
 306   u32 fos ;
 307   u32 st_space[20] ;
 308   u32 status ;
 309};
 310#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 311struct __anonstruct____missing_field_name_31 {
 312   u64 rip ;
 313   u64 rdp ;
 314};
 315#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 316struct __anonstruct____missing_field_name_32 {
 317   u32 fip ;
 318   u32 fcs ;
 319   u32 foo ;
 320   u32 fos ;
 321};
 322#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 323union __anonunion____missing_field_name_30 {
 324   struct __anonstruct____missing_field_name_31 __annonCompField12 ;
 325   struct __anonstruct____missing_field_name_32 __annonCompField13 ;
 326};
 327#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 328union __anonunion____missing_field_name_33 {
 329   u32 padding1[12] ;
 330   u32 sw_reserved[12] ;
 331};
 332#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 333struct i387_fxsave_struct {
 334   u16 cwd ;
 335   u16 swd ;
 336   u16 twd ;
 337   u16 fop ;
 338   union __anonunion____missing_field_name_30 __annonCompField14 ;
 339   u32 mxcsr ;
 340   u32 mxcsr_mask ;
 341   u32 st_space[32] ;
 342   u32 xmm_space[64] ;
 343   u32 padding[12] ;
 344   union __anonunion____missing_field_name_33 __annonCompField15 ;
 345} __attribute__((__aligned__(16))) ;
 346#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 347struct i387_soft_struct {
 348   u32 cwd ;
 349   u32 swd ;
 350   u32 twd ;
 351   u32 fip ;
 352   u32 fcs ;
 353   u32 foo ;
 354   u32 fos ;
 355   u32 st_space[20] ;
 356   u8 ftop ;
 357   u8 changed ;
 358   u8 lookahead ;
 359   u8 no_update ;
 360   u8 rm ;
 361   u8 alimit ;
 362   struct math_emu_info *info ;
 363   u32 entry_eip ;
 364};
 365#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 366struct ymmh_struct {
 367   u32 ymmh_space[64] ;
 368};
 369#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 370struct xsave_hdr_struct {
 371   u64 xstate_bv ;
 372   u64 reserved1[2] ;
 373   u64 reserved2[5] ;
 374} __attribute__((__packed__)) ;
 375#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 376struct xsave_struct {
 377   struct i387_fxsave_struct i387 ;
 378   struct xsave_hdr_struct xsave_hdr ;
 379   struct ymmh_struct ymmh ;
 380} __attribute__((__packed__, __aligned__(64))) ;
 381#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 382union thread_xstate {
 383   struct i387_fsave_struct fsave ;
 384   struct i387_fxsave_struct fxsave ;
 385   struct i387_soft_struct soft ;
 386   struct xsave_struct xsave ;
 387};
 388#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 389struct fpu {
 390   unsigned int last_cpu ;
 391   unsigned int has_fpu ;
 392   union thread_xstate *state ;
 393};
 394#line 433
 395struct kmem_cache;
 396#line 435
 397struct perf_event;
 398#line 435
 399struct perf_event;
 400#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 401struct thread_struct {
 402   struct desc_struct tls_array[3] ;
 403   unsigned long sp0 ;
 404   unsigned long sp ;
 405   unsigned long usersp ;
 406   unsigned short es ;
 407   unsigned short ds ;
 408   unsigned short fsindex ;
 409   unsigned short gsindex ;
 410   unsigned long fs ;
 411   unsigned long gs ;
 412   struct perf_event *ptrace_bps[4] ;
 413   unsigned long debugreg6 ;
 414   unsigned long ptrace_dr7 ;
 415   unsigned long cr2 ;
 416   unsigned long trap_nr ;
 417   unsigned long error_code ;
 418   struct fpu fpu ;
 419   unsigned long *io_bitmap_ptr ;
 420   unsigned long iopl ;
 421   unsigned int io_bitmap_max ;
 422};
 423#line 23 "include/asm-generic/atomic-long.h"
 424typedef atomic64_t atomic_long_t;
 425#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 426typedef u16 __ticket_t;
 427#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 428typedef u32 __ticketpair_t;
 429#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 430struct __raw_tickets {
 431   __ticket_t head ;
 432   __ticket_t tail ;
 433};
 434#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 435union __anonunion____missing_field_name_36 {
 436   __ticketpair_t head_tail ;
 437   struct __raw_tickets tickets ;
 438};
 439#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 440struct arch_spinlock {
 441   union __anonunion____missing_field_name_36 __annonCompField17 ;
 442};
 443#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 444typedef struct arch_spinlock arch_spinlock_t;
 445#line 12 "include/linux/lockdep.h"
 446struct task_struct;
 447#line 20 "include/linux/spinlock_types.h"
 448struct raw_spinlock {
 449   arch_spinlock_t raw_lock ;
 450   unsigned int magic ;
 451   unsigned int owner_cpu ;
 452   void *owner ;
 453};
 454#line 20 "include/linux/spinlock_types.h"
 455typedef struct raw_spinlock raw_spinlock_t;
 456#line 64 "include/linux/spinlock_types.h"
 457union __anonunion____missing_field_name_39 {
 458   struct raw_spinlock rlock ;
 459};
 460#line 64 "include/linux/spinlock_types.h"
 461struct spinlock {
 462   union __anonunion____missing_field_name_39 __annonCompField19 ;
 463};
 464#line 64 "include/linux/spinlock_types.h"
 465typedef struct spinlock spinlock_t;
 466#line 119 "include/linux/seqlock.h"
 467struct seqcount {
 468   unsigned int sequence ;
 469};
 470#line 119 "include/linux/seqlock.h"
 471typedef struct seqcount seqcount_t;
 472#line 14 "include/linux/time.h"
 473struct timespec {
 474   __kernel_time_t tv_sec ;
 475   long tv_nsec ;
 476};
 477#line 49 "include/linux/wait.h"
 478struct __wait_queue_head {
 479   spinlock_t lock ;
 480   struct list_head task_list ;
 481};
 482#line 53 "include/linux/wait.h"
 483typedef struct __wait_queue_head wait_queue_head_t;
 484#line 55
 485struct task_struct;
 486#line 98 "include/linux/nodemask.h"
 487struct __anonstruct_nodemask_t_42 {
 488   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 489};
 490#line 98 "include/linux/nodemask.h"
 491typedef struct __anonstruct_nodemask_t_42 nodemask_t;
 492#line 60 "include/linux/pageblock-flags.h"
 493struct page;
 494#line 48 "include/linux/mutex.h"
 495struct mutex {
 496   atomic_t count ;
 497   spinlock_t wait_lock ;
 498   struct list_head wait_list ;
 499   struct task_struct *owner ;
 500   char const   *name ;
 501   void *magic ;
 502};
 503#line 69 "include/linux/mutex.h"
 504struct mutex_waiter {
 505   struct list_head list ;
 506   struct task_struct *task ;
 507   void *magic ;
 508};
 509#line 19 "include/linux/rwsem.h"
 510struct rw_semaphore;
 511#line 19
 512struct rw_semaphore;
 513#line 25 "include/linux/rwsem.h"
 514struct rw_semaphore {
 515   long count ;
 516   raw_spinlock_t wait_lock ;
 517   struct list_head wait_list ;
 518};
 519#line 25 "include/linux/completion.h"
 520struct completion {
 521   unsigned int done ;
 522   wait_queue_head_t wait ;
 523};
 524#line 188 "include/linux/rcupdate.h"
 525struct notifier_block;
 526#line 188
 527struct notifier_block;
 528#line 50 "include/linux/notifier.h"
 529struct notifier_block {
 530   int (*notifier_call)(struct notifier_block * , unsigned long  , void * ) ;
 531   struct notifier_block *next ;
 532   int priority ;
 533};
 534#line 61 "include/linux/notifier.h"
 535struct blocking_notifier_head {
 536   struct rw_semaphore rwsem ;
 537   struct notifier_block *head ;
 538};
 539#line 9 "include/linux/memory_hotplug.h"
 540struct page;
 541#line 202 "include/linux/ioport.h"
 542struct device;
 543#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
 544struct device;
 545#line 46 "include/linux/ktime.h"
 546union ktime {
 547   s64 tv64 ;
 548};
 549#line 59 "include/linux/ktime.h"
 550typedef union ktime ktime_t;
 551#line 10 "include/linux/timer.h"
 552struct tvec_base;
 553#line 10
 554struct tvec_base;
 555#line 12 "include/linux/timer.h"
 556struct timer_list {
 557   struct list_head entry ;
 558   unsigned long expires ;
 559   struct tvec_base *base ;
 560   void (*function)(unsigned long  ) ;
 561   unsigned long data ;
 562   int slack ;
 563   int start_pid ;
 564   void *start_site ;
 565   char start_comm[16] ;
 566};
 567#line 289
 568struct hrtimer;
 569#line 289
 570struct hrtimer;
 571#line 290
 572enum hrtimer_restart;
 573#line 17 "include/linux/workqueue.h"
 574struct work_struct;
 575#line 17
 576struct work_struct;
 577#line 79 "include/linux/workqueue.h"
 578struct work_struct {
 579   atomic_long_t data ;
 580   struct list_head entry ;
 581   void (*func)(struct work_struct *work ) ;
 582};
 583#line 92 "include/linux/workqueue.h"
 584struct delayed_work {
 585   struct work_struct work ;
 586   struct timer_list timer ;
 587};
 588#line 42 "include/linux/pm.h"
 589struct device;
 590#line 50 "include/linux/pm.h"
 591struct pm_message {
 592   int event ;
 593};
 594#line 50 "include/linux/pm.h"
 595typedef struct pm_message pm_message_t;
 596#line 264 "include/linux/pm.h"
 597struct dev_pm_ops {
 598   int (*prepare)(struct device *dev ) ;
 599   void (*complete)(struct device *dev ) ;
 600   int (*suspend)(struct device *dev ) ;
 601   int (*resume)(struct device *dev ) ;
 602   int (*freeze)(struct device *dev ) ;
 603   int (*thaw)(struct device *dev ) ;
 604   int (*poweroff)(struct device *dev ) ;
 605   int (*restore)(struct device *dev ) ;
 606   int (*suspend_late)(struct device *dev ) ;
 607   int (*resume_early)(struct device *dev ) ;
 608   int (*freeze_late)(struct device *dev ) ;
 609   int (*thaw_early)(struct device *dev ) ;
 610   int (*poweroff_late)(struct device *dev ) ;
 611   int (*restore_early)(struct device *dev ) ;
 612   int (*suspend_noirq)(struct device *dev ) ;
 613   int (*resume_noirq)(struct device *dev ) ;
 614   int (*freeze_noirq)(struct device *dev ) ;
 615   int (*thaw_noirq)(struct device *dev ) ;
 616   int (*poweroff_noirq)(struct device *dev ) ;
 617   int (*restore_noirq)(struct device *dev ) ;
 618   int (*runtime_suspend)(struct device *dev ) ;
 619   int (*runtime_resume)(struct device *dev ) ;
 620   int (*runtime_idle)(struct device *dev ) ;
 621};
 622#line 458
 623enum rpm_status {
 624    RPM_ACTIVE = 0,
 625    RPM_RESUMING = 1,
 626    RPM_SUSPENDED = 2,
 627    RPM_SUSPENDING = 3
 628} ;
 629#line 480
 630enum rpm_request {
 631    RPM_REQ_NONE = 0,
 632    RPM_REQ_IDLE = 1,
 633    RPM_REQ_SUSPEND = 2,
 634    RPM_REQ_AUTOSUSPEND = 3,
 635    RPM_REQ_RESUME = 4
 636} ;
 637#line 488
 638struct wakeup_source;
 639#line 488
 640struct wakeup_source;
 641#line 495 "include/linux/pm.h"
 642struct pm_subsys_data {
 643   spinlock_t lock ;
 644   unsigned int refcount ;
 645};
 646#line 506
 647struct dev_pm_qos_request;
 648#line 506
 649struct pm_qos_constraints;
 650#line 506 "include/linux/pm.h"
 651struct dev_pm_info {
 652   pm_message_t power_state ;
 653   unsigned int can_wakeup : 1 ;
 654   unsigned int async_suspend : 1 ;
 655   bool is_prepared : 1 ;
 656   bool is_suspended : 1 ;
 657   bool ignore_children : 1 ;
 658   spinlock_t lock ;
 659   struct list_head entry ;
 660   struct completion completion ;
 661   struct wakeup_source *wakeup ;
 662   bool wakeup_path : 1 ;
 663   struct timer_list suspend_timer ;
 664   unsigned long timer_expires ;
 665   struct work_struct work ;
 666   wait_queue_head_t wait_queue ;
 667   atomic_t usage_count ;
 668   atomic_t child_count ;
 669   unsigned int disable_depth : 3 ;
 670   unsigned int idle_notification : 1 ;
 671   unsigned int request_pending : 1 ;
 672   unsigned int deferred_resume : 1 ;
 673   unsigned int run_wake : 1 ;
 674   unsigned int runtime_auto : 1 ;
 675   unsigned int no_callbacks : 1 ;
 676   unsigned int irq_safe : 1 ;
 677   unsigned int use_autosuspend : 1 ;
 678   unsigned int timer_autosuspends : 1 ;
 679   enum rpm_request request ;
 680   enum rpm_status runtime_status ;
 681   int runtime_error ;
 682   int autosuspend_delay ;
 683   unsigned long last_busy ;
 684   unsigned long active_jiffies ;
 685   unsigned long suspended_jiffies ;
 686   unsigned long accounting_timestamp ;
 687   ktime_t suspend_time ;
 688   s64 max_time_suspended_ns ;
 689   struct dev_pm_qos_request *pq_req ;
 690   struct pm_subsys_data *subsys_data ;
 691   struct pm_qos_constraints *constraints ;
 692};
 693#line 564 "include/linux/pm.h"
 694struct dev_pm_domain {
 695   struct dev_pm_ops ops ;
 696};
 697#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 698struct __anonstruct_mm_context_t_112 {
 699   void *ldt ;
 700   int size ;
 701   unsigned short ia32_compat ;
 702   struct mutex lock ;
 703   void *vdso ;
 704};
 705#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 706typedef struct __anonstruct_mm_context_t_112 mm_context_t;
 707#line 8 "include/linux/vmalloc.h"
 708struct vm_area_struct;
 709#line 8
 710struct vm_area_struct;
 711#line 994 "include/linux/mmzone.h"
 712struct page;
 713#line 10 "include/linux/gfp.h"
 714struct vm_area_struct;
 715#line 29 "include/linux/sysctl.h"
 716struct completion;
 717#line 100 "include/linux/rbtree.h"
 718struct rb_node {
 719   unsigned long rb_parent_color ;
 720   struct rb_node *rb_right ;
 721   struct rb_node *rb_left ;
 722} __attribute__((__aligned__(sizeof(long )))) ;
 723#line 110 "include/linux/rbtree.h"
 724struct rb_root {
 725   struct rb_node *rb_node ;
 726};
 727#line 939 "include/linux/sysctl.h"
 728struct nsproxy;
 729#line 939
 730struct nsproxy;
 731#line 48 "include/linux/kmod.h"
 732struct cred;
 733#line 48
 734struct cred;
 735#line 49
 736struct file;
 737#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 738struct task_struct;
 739#line 18 "include/linux/elf.h"
 740typedef __u64 Elf64_Addr;
 741#line 19 "include/linux/elf.h"
 742typedef __u16 Elf64_Half;
 743#line 23 "include/linux/elf.h"
 744typedef __u32 Elf64_Word;
 745#line 24 "include/linux/elf.h"
 746typedef __u64 Elf64_Xword;
 747#line 194 "include/linux/elf.h"
 748struct elf64_sym {
 749   Elf64_Word st_name ;
 750   unsigned char st_info ;
 751   unsigned char st_other ;
 752   Elf64_Half st_shndx ;
 753   Elf64_Addr st_value ;
 754   Elf64_Xword st_size ;
 755};
 756#line 194 "include/linux/elf.h"
 757typedef struct elf64_sym Elf64_Sym;
 758#line 438
 759struct file;
 760#line 20 "include/linux/kobject_ns.h"
 761struct sock;
 762#line 20
 763struct sock;
 764#line 21
 765struct kobject;
 766#line 21
 767struct kobject;
 768#line 27
 769enum kobj_ns_type {
 770    KOBJ_NS_TYPE_NONE = 0,
 771    KOBJ_NS_TYPE_NET = 1,
 772    KOBJ_NS_TYPES = 2
 773} ;
 774#line 40 "include/linux/kobject_ns.h"
 775struct kobj_ns_type_operations {
 776   enum kobj_ns_type type ;
 777   void *(*grab_current_ns)(void) ;
 778   void const   *(*netlink_ns)(struct sock *sk ) ;
 779   void const   *(*initial_ns)(void) ;
 780   void (*drop_ns)(void * ) ;
 781};
 782#line 22 "include/linux/sysfs.h"
 783struct kobject;
 784#line 23
 785struct module;
 786#line 24
 787enum kobj_ns_type;
 788#line 26 "include/linux/sysfs.h"
 789struct attribute {
 790   char const   *name ;
 791   umode_t mode ;
 792};
 793#line 56 "include/linux/sysfs.h"
 794struct attribute_group {
 795   char const   *name ;
 796   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 797   struct attribute **attrs ;
 798};
 799#line 85
 800struct file;
 801#line 86
 802struct vm_area_struct;
 803#line 88 "include/linux/sysfs.h"
 804struct bin_attribute {
 805   struct attribute attr ;
 806   size_t size ;
 807   void *private ;
 808   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 809                   loff_t  , size_t  ) ;
 810   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 811                    loff_t  , size_t  ) ;
 812   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 813};
 814#line 112 "include/linux/sysfs.h"
 815struct sysfs_ops {
 816   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 817   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 818   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 819};
 820#line 118
 821struct sysfs_dirent;
 822#line 118
 823struct sysfs_dirent;
 824#line 22 "include/linux/kref.h"
 825struct kref {
 826   atomic_t refcount ;
 827};
 828#line 60 "include/linux/kobject.h"
 829struct kset;
 830#line 60
 831struct kobj_type;
 832#line 60 "include/linux/kobject.h"
 833struct kobject {
 834   char const   *name ;
 835   struct list_head entry ;
 836   struct kobject *parent ;
 837   struct kset *kset ;
 838   struct kobj_type *ktype ;
 839   struct sysfs_dirent *sd ;
 840   struct kref kref ;
 841   unsigned int state_initialized : 1 ;
 842   unsigned int state_in_sysfs : 1 ;
 843   unsigned int state_add_uevent_sent : 1 ;
 844   unsigned int state_remove_uevent_sent : 1 ;
 845   unsigned int uevent_suppress : 1 ;
 846};
 847#line 108 "include/linux/kobject.h"
 848struct kobj_type {
 849   void (*release)(struct kobject *kobj ) ;
 850   struct sysfs_ops  const  *sysfs_ops ;
 851   struct attribute **default_attrs ;
 852   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 853   void const   *(*namespace)(struct kobject *kobj ) ;
 854};
 855#line 116 "include/linux/kobject.h"
 856struct kobj_uevent_env {
 857   char *envp[32] ;
 858   int envp_idx ;
 859   char buf[2048] ;
 860   int buflen ;
 861};
 862#line 123 "include/linux/kobject.h"
 863struct kset_uevent_ops {
 864   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 865   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 866   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 867};
 868#line 140
 869struct sock;
 870#line 159 "include/linux/kobject.h"
 871struct kset {
 872   struct list_head list ;
 873   spinlock_t list_lock ;
 874   struct kobject kobj ;
 875   struct kset_uevent_ops  const  *uevent_ops ;
 876};
 877#line 39 "include/linux/moduleparam.h"
 878struct kernel_param;
 879#line 39
 880struct kernel_param;
 881#line 41 "include/linux/moduleparam.h"
 882struct kernel_param_ops {
 883   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 884   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 885   void (*free)(void *arg ) ;
 886};
 887#line 50
 888struct kparam_string;
 889#line 50
 890struct kparam_array;
 891#line 50 "include/linux/moduleparam.h"
 892union __anonunion____missing_field_name_199 {
 893   void *arg ;
 894   struct kparam_string  const  *str ;
 895   struct kparam_array  const  *arr ;
 896};
 897#line 50 "include/linux/moduleparam.h"
 898struct kernel_param {
 899   char const   *name ;
 900   struct kernel_param_ops  const  *ops ;
 901   u16 perm ;
 902   s16 level ;
 903   union __anonunion____missing_field_name_199 __annonCompField32 ;
 904};
 905#line 63 "include/linux/moduleparam.h"
 906struct kparam_string {
 907   unsigned int maxlen ;
 908   char *string ;
 909};
 910#line 69 "include/linux/moduleparam.h"
 911struct kparam_array {
 912   unsigned int max ;
 913   unsigned int elemsize ;
 914   unsigned int *num ;
 915   struct kernel_param_ops  const  *ops ;
 916   void *elem ;
 917};
 918#line 445
 919struct module;
 920#line 80 "include/linux/jump_label.h"
 921struct module;
 922#line 143 "include/linux/jump_label.h"
 923struct static_key {
 924   atomic_t enabled ;
 925};
 926#line 22 "include/linux/tracepoint.h"
 927struct module;
 928#line 23
 929struct tracepoint;
 930#line 23
 931struct tracepoint;
 932#line 25 "include/linux/tracepoint.h"
 933struct tracepoint_func {
 934   void *func ;
 935   void *data ;
 936};
 937#line 30 "include/linux/tracepoint.h"
 938struct tracepoint {
 939   char const   *name ;
 940   struct static_key key ;
 941   void (*regfunc)(void) ;
 942   void (*unregfunc)(void) ;
 943   struct tracepoint_func *funcs ;
 944};
 945#line 19 "include/linux/export.h"
 946struct kernel_symbol {
 947   unsigned long value ;
 948   char const   *name ;
 949};
 950#line 8 "include/asm-generic/module.h"
 951struct mod_arch_specific {
 952
 953};
 954#line 35 "include/linux/module.h"
 955struct module;
 956#line 37
 957struct module_param_attrs;
 958#line 37 "include/linux/module.h"
 959struct module_kobject {
 960   struct kobject kobj ;
 961   struct module *mod ;
 962   struct kobject *drivers_dir ;
 963   struct module_param_attrs *mp ;
 964};
 965#line 44 "include/linux/module.h"
 966struct module_attribute {
 967   struct attribute attr ;
 968   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 969   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 970                    size_t count ) ;
 971   void (*setup)(struct module * , char const   * ) ;
 972   int (*test)(struct module * ) ;
 973   void (*free)(struct module * ) ;
 974};
 975#line 71
 976struct exception_table_entry;
 977#line 71
 978struct exception_table_entry;
 979#line 182
 980struct notifier_block;
 981#line 199
 982enum module_state {
 983    MODULE_STATE_LIVE = 0,
 984    MODULE_STATE_COMING = 1,
 985    MODULE_STATE_GOING = 2
 986} ;
 987#line 215 "include/linux/module.h"
 988struct module_ref {
 989   unsigned long incs ;
 990   unsigned long decs ;
 991} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 992#line 220
 993struct module_sect_attrs;
 994#line 220
 995struct module_notes_attrs;
 996#line 220
 997struct ftrace_event_call;
 998#line 220 "include/linux/module.h"
 999struct module {
1000   enum module_state state ;
1001   struct list_head list ;
1002   char name[64UL - sizeof(unsigned long )] ;
1003   struct module_kobject mkobj ;
1004   struct module_attribute *modinfo_attrs ;
1005   char const   *version ;
1006   char const   *srcversion ;
1007   struct kobject *holders_dir ;
1008   struct kernel_symbol  const  *syms ;
1009   unsigned long const   *crcs ;
1010   unsigned int num_syms ;
1011   struct kernel_param *kp ;
1012   unsigned int num_kp ;
1013   unsigned int num_gpl_syms ;
1014   struct kernel_symbol  const  *gpl_syms ;
1015   unsigned long const   *gpl_crcs ;
1016   struct kernel_symbol  const  *unused_syms ;
1017   unsigned long const   *unused_crcs ;
1018   unsigned int num_unused_syms ;
1019   unsigned int num_unused_gpl_syms ;
1020   struct kernel_symbol  const  *unused_gpl_syms ;
1021   unsigned long const   *unused_gpl_crcs ;
1022   struct kernel_symbol  const  *gpl_future_syms ;
1023   unsigned long const   *gpl_future_crcs ;
1024   unsigned int num_gpl_future_syms ;
1025   unsigned int num_exentries ;
1026   struct exception_table_entry *extable ;
1027   int (*init)(void) ;
1028   void *module_init ;
1029   void *module_core ;
1030   unsigned int init_size ;
1031   unsigned int core_size ;
1032   unsigned int init_text_size ;
1033   unsigned int core_text_size ;
1034   unsigned int init_ro_size ;
1035   unsigned int core_ro_size ;
1036   struct mod_arch_specific arch ;
1037   unsigned int taints ;
1038   unsigned int num_bugs ;
1039   struct list_head bug_list ;
1040   struct bug_entry *bug_table ;
1041   Elf64_Sym *symtab ;
1042   Elf64_Sym *core_symtab ;
1043   unsigned int num_symtab ;
1044   unsigned int core_num_syms ;
1045   char *strtab ;
1046   char *core_strtab ;
1047   struct module_sect_attrs *sect_attrs ;
1048   struct module_notes_attrs *notes_attrs ;
1049   char *args ;
1050   void *percpu ;
1051   unsigned int percpu_size ;
1052   unsigned int num_tracepoints ;
1053   struct tracepoint * const  *tracepoints_ptrs ;
1054   unsigned int num_trace_bprintk_fmt ;
1055   char const   **trace_bprintk_fmt_start ;
1056   struct ftrace_event_call **trace_events ;
1057   unsigned int num_trace_events ;
1058   struct list_head source_list ;
1059   struct list_head target_list ;
1060   struct task_struct *waiter ;
1061   void (*exit)(void) ;
1062   struct module_ref *refptr ;
1063   ctor_fn_t *ctors ;
1064   unsigned int num_ctors ;
1065};
1066#line 12 "include/linux/mod_devicetable.h"
1067typedef unsigned long kernel_ulong_t;
1068#line 219 "include/linux/mod_devicetable.h"
1069struct of_device_id {
1070   char name[32] ;
1071   char type[32] ;
1072   char compatible[128] ;
1073   void *data ;
1074};
1075#line 431 "include/linux/mod_devicetable.h"
1076struct i2c_device_id {
1077   char name[20] ;
1078   kernel_ulong_t driver_data  __attribute__((__aligned__(sizeof(kernel_ulong_t )))) ;
1079};
1080#line 19 "include/linux/klist.h"
1081struct klist_node;
1082#line 19
1083struct klist_node;
1084#line 39 "include/linux/klist.h"
1085struct klist_node {
1086   void *n_klist ;
1087   struct list_head n_node ;
1088   struct kref n_ref ;
1089};
1090#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1091struct dma_map_ops;
1092#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1093struct dev_archdata {
1094   void *acpi_handle ;
1095   struct dma_map_ops *dma_ops ;
1096   void *iommu ;
1097};
1098#line 28 "include/linux/device.h"
1099struct device;
1100#line 29
1101struct device_private;
1102#line 29
1103struct device_private;
1104#line 30
1105struct device_driver;
1106#line 30
1107struct device_driver;
1108#line 31
1109struct driver_private;
1110#line 31
1111struct driver_private;
1112#line 32
1113struct module;
1114#line 33
1115struct class;
1116#line 33
1117struct class;
1118#line 34
1119struct subsys_private;
1120#line 34
1121struct subsys_private;
1122#line 35
1123struct bus_type;
1124#line 35
1125struct bus_type;
1126#line 36
1127struct device_node;
1128#line 36
1129struct device_node;
1130#line 37
1131struct iommu_ops;
1132#line 37
1133struct iommu_ops;
1134#line 39 "include/linux/device.h"
1135struct bus_attribute {
1136   struct attribute attr ;
1137   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1138   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
1139};
1140#line 89
1141struct device_attribute;
1142#line 89
1143struct driver_attribute;
1144#line 89 "include/linux/device.h"
1145struct bus_type {
1146   char const   *name ;
1147   char const   *dev_name ;
1148   struct device *dev_root ;
1149   struct bus_attribute *bus_attrs ;
1150   struct device_attribute *dev_attrs ;
1151   struct driver_attribute *drv_attrs ;
1152   int (*match)(struct device *dev , struct device_driver *drv ) ;
1153   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1154   int (*probe)(struct device *dev ) ;
1155   int (*remove)(struct device *dev ) ;
1156   void (*shutdown)(struct device *dev ) ;
1157   int (*suspend)(struct device *dev , pm_message_t state ) ;
1158   int (*resume)(struct device *dev ) ;
1159   struct dev_pm_ops  const  *pm ;
1160   struct iommu_ops *iommu_ops ;
1161   struct subsys_private *p ;
1162};
1163#line 127
1164struct device_type;
1165#line 159
1166struct notifier_block;
1167#line 214 "include/linux/device.h"
1168struct device_driver {
1169   char const   *name ;
1170   struct bus_type *bus ;
1171   struct module *owner ;
1172   char const   *mod_name ;
1173   bool suppress_bind_attrs ;
1174   struct of_device_id  const  *of_match_table ;
1175   int (*probe)(struct device *dev ) ;
1176   int (*remove)(struct device *dev ) ;
1177   void (*shutdown)(struct device *dev ) ;
1178   int (*suspend)(struct device *dev , pm_message_t state ) ;
1179   int (*resume)(struct device *dev ) ;
1180   struct attribute_group  const  **groups ;
1181   struct dev_pm_ops  const  *pm ;
1182   struct driver_private *p ;
1183};
1184#line 249 "include/linux/device.h"
1185struct driver_attribute {
1186   struct attribute attr ;
1187   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1188   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
1189};
1190#line 330
1191struct class_attribute;
1192#line 330 "include/linux/device.h"
1193struct class {
1194   char const   *name ;
1195   struct module *owner ;
1196   struct class_attribute *class_attrs ;
1197   struct device_attribute *dev_attrs ;
1198   struct bin_attribute *dev_bin_attrs ;
1199   struct kobject *dev_kobj ;
1200   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1201   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1202   void (*class_release)(struct class *class ) ;
1203   void (*dev_release)(struct device *dev ) ;
1204   int (*suspend)(struct device *dev , pm_message_t state ) ;
1205   int (*resume)(struct device *dev ) ;
1206   struct kobj_ns_type_operations  const  *ns_type ;
1207   void const   *(*namespace)(struct device *dev ) ;
1208   struct dev_pm_ops  const  *pm ;
1209   struct subsys_private *p ;
1210};
1211#line 397 "include/linux/device.h"
1212struct class_attribute {
1213   struct attribute attr ;
1214   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1215   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
1216                    size_t count ) ;
1217   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
1218};
1219#line 465 "include/linux/device.h"
1220struct device_type {
1221   char const   *name ;
1222   struct attribute_group  const  **groups ;
1223   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1224   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1225   void (*release)(struct device *dev ) ;
1226   struct dev_pm_ops  const  *pm ;
1227};
1228#line 476 "include/linux/device.h"
1229struct device_attribute {
1230   struct attribute attr ;
1231   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1232   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
1233                    size_t count ) ;
1234};
1235#line 559 "include/linux/device.h"
1236struct device_dma_parameters {
1237   unsigned int max_segment_size ;
1238   unsigned long segment_boundary_mask ;
1239};
1240#line 627
1241struct dma_coherent_mem;
1242#line 627 "include/linux/device.h"
1243struct device {
1244   struct device *parent ;
1245   struct device_private *p ;
1246   struct kobject kobj ;
1247   char const   *init_name ;
1248   struct device_type  const  *type ;
1249   struct mutex mutex ;
1250   struct bus_type *bus ;
1251   struct device_driver *driver ;
1252   void *platform_data ;
1253   struct dev_pm_info power ;
1254   struct dev_pm_domain *pm_domain ;
1255   int numa_node ;
1256   u64 *dma_mask ;
1257   u64 coherent_dma_mask ;
1258   struct device_dma_parameters *dma_parms ;
1259   struct list_head dma_pools ;
1260   struct dma_coherent_mem *dma_mem ;
1261   struct dev_archdata archdata ;
1262   struct device_node *of_node ;
1263   dev_t devt ;
1264   u32 id ;
1265   spinlock_t devres_lock ;
1266   struct list_head devres_head ;
1267   struct klist_node knode_class ;
1268   struct class *class ;
1269   struct attribute_group  const  **groups ;
1270   void (*release)(struct device *dev ) ;
1271};
1272#line 43 "include/linux/pm_wakeup.h"
1273struct wakeup_source {
1274   char const   *name ;
1275   struct list_head entry ;
1276   spinlock_t lock ;
1277   struct timer_list timer ;
1278   unsigned long timer_expires ;
1279   ktime_t total_time ;
1280   ktime_t max_time ;
1281   ktime_t last_time ;
1282   unsigned long event_count ;
1283   unsigned long active_count ;
1284   unsigned long relax_count ;
1285   unsigned long hit_count ;
1286   unsigned int active : 1 ;
1287};
1288#line 18 "include/linux/capability.h"
1289struct task_struct;
1290#line 94 "include/linux/capability.h"
1291struct kernel_cap_struct {
1292   __u32 cap[2] ;
1293};
1294#line 94 "include/linux/capability.h"
1295typedef struct kernel_cap_struct kernel_cap_t;
1296#line 377
1297struct dentry;
1298#line 377
1299struct dentry;
1300#line 378
1301struct user_namespace;
1302#line 378
1303struct user_namespace;
1304#line 14 "include/linux/prio_tree.h"
1305struct prio_tree_node;
1306#line 14 "include/linux/prio_tree.h"
1307struct raw_prio_tree_node {
1308   struct prio_tree_node *left ;
1309   struct prio_tree_node *right ;
1310   struct prio_tree_node *parent ;
1311};
1312#line 20 "include/linux/prio_tree.h"
1313struct prio_tree_node {
1314   struct prio_tree_node *left ;
1315   struct prio_tree_node *right ;
1316   struct prio_tree_node *parent ;
1317   unsigned long start ;
1318   unsigned long last ;
1319};
1320#line 23 "include/linux/mm_types.h"
1321struct address_space;
1322#line 23
1323struct address_space;
1324#line 40 "include/linux/mm_types.h"
1325union __anonunion____missing_field_name_204 {
1326   unsigned long index ;
1327   void *freelist ;
1328};
1329#line 40 "include/linux/mm_types.h"
1330struct __anonstruct____missing_field_name_208 {
1331   unsigned int inuse : 16 ;
1332   unsigned int objects : 15 ;
1333   unsigned int frozen : 1 ;
1334};
1335#line 40 "include/linux/mm_types.h"
1336union __anonunion____missing_field_name_207 {
1337   atomic_t _mapcount ;
1338   struct __anonstruct____missing_field_name_208 __annonCompField34 ;
1339};
1340#line 40 "include/linux/mm_types.h"
1341struct __anonstruct____missing_field_name_206 {
1342   union __anonunion____missing_field_name_207 __annonCompField35 ;
1343   atomic_t _count ;
1344};
1345#line 40 "include/linux/mm_types.h"
1346union __anonunion____missing_field_name_205 {
1347   unsigned long counters ;
1348   struct __anonstruct____missing_field_name_206 __annonCompField36 ;
1349};
1350#line 40 "include/linux/mm_types.h"
1351struct __anonstruct____missing_field_name_203 {
1352   union __anonunion____missing_field_name_204 __annonCompField33 ;
1353   union __anonunion____missing_field_name_205 __annonCompField37 ;
1354};
1355#line 40 "include/linux/mm_types.h"
1356struct __anonstruct____missing_field_name_210 {
1357   struct page *next ;
1358   int pages ;
1359   int pobjects ;
1360};
1361#line 40 "include/linux/mm_types.h"
1362union __anonunion____missing_field_name_209 {
1363   struct list_head lru ;
1364   struct __anonstruct____missing_field_name_210 __annonCompField39 ;
1365};
1366#line 40 "include/linux/mm_types.h"
1367union __anonunion____missing_field_name_211 {
1368   unsigned long private ;
1369   struct kmem_cache *slab ;
1370   struct page *first_page ;
1371};
1372#line 40 "include/linux/mm_types.h"
1373struct page {
1374   unsigned long flags ;
1375   struct address_space *mapping ;
1376   struct __anonstruct____missing_field_name_203 __annonCompField38 ;
1377   union __anonunion____missing_field_name_209 __annonCompField40 ;
1378   union __anonunion____missing_field_name_211 __annonCompField41 ;
1379   unsigned long debug_flags ;
1380} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
1381#line 200 "include/linux/mm_types.h"
1382struct __anonstruct_vm_set_213 {
1383   struct list_head list ;
1384   void *parent ;
1385   struct vm_area_struct *head ;
1386};
1387#line 200 "include/linux/mm_types.h"
1388union __anonunion_shared_212 {
1389   struct __anonstruct_vm_set_213 vm_set ;
1390   struct raw_prio_tree_node prio_tree_node ;
1391};
1392#line 200
1393struct anon_vma;
1394#line 200
1395struct vm_operations_struct;
1396#line 200
1397struct mempolicy;
1398#line 200 "include/linux/mm_types.h"
1399struct vm_area_struct {
1400   struct mm_struct *vm_mm ;
1401   unsigned long vm_start ;
1402   unsigned long vm_end ;
1403   struct vm_area_struct *vm_next ;
1404   struct vm_area_struct *vm_prev ;
1405   pgprot_t vm_page_prot ;
1406   unsigned long vm_flags ;
1407   struct rb_node vm_rb ;
1408   union __anonunion_shared_212 shared ;
1409   struct list_head anon_vma_chain ;
1410   struct anon_vma *anon_vma ;
1411   struct vm_operations_struct  const  *vm_ops ;
1412   unsigned long vm_pgoff ;
1413   struct file *vm_file ;
1414   void *vm_private_data ;
1415   struct mempolicy *vm_policy ;
1416};
1417#line 257 "include/linux/mm_types.h"
1418struct core_thread {
1419   struct task_struct *task ;
1420   struct core_thread *next ;
1421};
1422#line 262 "include/linux/mm_types.h"
1423struct core_state {
1424   atomic_t nr_threads ;
1425   struct core_thread dumper ;
1426   struct completion startup ;
1427};
1428#line 284 "include/linux/mm_types.h"
1429struct mm_rss_stat {
1430   atomic_long_t count[3] ;
1431};
1432#line 288
1433struct linux_binfmt;
1434#line 288
1435struct mmu_notifier_mm;
1436#line 288 "include/linux/mm_types.h"
1437struct mm_struct {
1438   struct vm_area_struct *mmap ;
1439   struct rb_root mm_rb ;
1440   struct vm_area_struct *mmap_cache ;
1441   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
1442                                      unsigned long pgoff , unsigned long flags ) ;
1443   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
1444   unsigned long mmap_base ;
1445   unsigned long task_size ;
1446   unsigned long cached_hole_size ;
1447   unsigned long free_area_cache ;
1448   pgd_t *pgd ;
1449   atomic_t mm_users ;
1450   atomic_t mm_count ;
1451   int map_count ;
1452   spinlock_t page_table_lock ;
1453   struct rw_semaphore mmap_sem ;
1454   struct list_head mmlist ;
1455   unsigned long hiwater_rss ;
1456   unsigned long hiwater_vm ;
1457   unsigned long total_vm ;
1458   unsigned long locked_vm ;
1459   unsigned long pinned_vm ;
1460   unsigned long shared_vm ;
1461   unsigned long exec_vm ;
1462   unsigned long stack_vm ;
1463   unsigned long reserved_vm ;
1464   unsigned long def_flags ;
1465   unsigned long nr_ptes ;
1466   unsigned long start_code ;
1467   unsigned long end_code ;
1468   unsigned long start_data ;
1469   unsigned long end_data ;
1470   unsigned long start_brk ;
1471   unsigned long brk ;
1472   unsigned long start_stack ;
1473   unsigned long arg_start ;
1474   unsigned long arg_end ;
1475   unsigned long env_start ;
1476   unsigned long env_end ;
1477   unsigned long saved_auxv[44] ;
1478   struct mm_rss_stat rss_stat ;
1479   struct linux_binfmt *binfmt ;
1480   cpumask_var_t cpu_vm_mask_var ;
1481   mm_context_t context ;
1482   unsigned int faultstamp ;
1483   unsigned int token_priority ;
1484   unsigned int last_interval ;
1485   unsigned long flags ;
1486   struct core_state *core_state ;
1487   spinlock_t ioctx_lock ;
1488   struct hlist_head ioctx_list ;
1489   struct task_struct *owner ;
1490   struct file *exe_file ;
1491   unsigned long num_exe_file_vmas ;
1492   struct mmu_notifier_mm *mmu_notifier_mm ;
1493   pgtable_t pmd_huge_pte ;
1494   struct cpumask cpumask_allocation ;
1495};
1496#line 7 "include/asm-generic/cputime.h"
1497typedef unsigned long cputime_t;
1498#line 84 "include/linux/sem.h"
1499struct task_struct;
1500#line 101
1501struct sem_undo_list;
1502#line 101 "include/linux/sem.h"
1503struct sysv_sem {
1504   struct sem_undo_list *undo_list ;
1505};
1506#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1507struct siginfo;
1508#line 10
1509struct siginfo;
1510#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1511struct __anonstruct_sigset_t_215 {
1512   unsigned long sig[1] ;
1513};
1514#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1515typedef struct __anonstruct_sigset_t_215 sigset_t;
1516#line 17 "include/asm-generic/signal-defs.h"
1517typedef void __signalfn_t(int  );
1518#line 18 "include/asm-generic/signal-defs.h"
1519typedef __signalfn_t *__sighandler_t;
1520#line 20 "include/asm-generic/signal-defs.h"
1521typedef void __restorefn_t(void);
1522#line 21 "include/asm-generic/signal-defs.h"
1523typedef __restorefn_t *__sigrestore_t;
1524#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1525struct sigaction {
1526   __sighandler_t sa_handler ;
1527   unsigned long sa_flags ;
1528   __sigrestore_t sa_restorer ;
1529   sigset_t sa_mask ;
1530};
1531#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1532struct k_sigaction {
1533   struct sigaction sa ;
1534};
1535#line 7 "include/asm-generic/siginfo.h"
1536union sigval {
1537   int sival_int ;
1538   void *sival_ptr ;
1539};
1540#line 7 "include/asm-generic/siginfo.h"
1541typedef union sigval sigval_t;
1542#line 48 "include/asm-generic/siginfo.h"
1543struct __anonstruct__kill_217 {
1544   __kernel_pid_t _pid ;
1545   __kernel_uid32_t _uid ;
1546};
1547#line 48 "include/asm-generic/siginfo.h"
1548struct __anonstruct__timer_218 {
1549   __kernel_timer_t _tid ;
1550   int _overrun ;
1551   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
1552   sigval_t _sigval ;
1553   int _sys_private ;
1554};
1555#line 48 "include/asm-generic/siginfo.h"
1556struct __anonstruct__rt_219 {
1557   __kernel_pid_t _pid ;
1558   __kernel_uid32_t _uid ;
1559   sigval_t _sigval ;
1560};
1561#line 48 "include/asm-generic/siginfo.h"
1562struct __anonstruct__sigchld_220 {
1563   __kernel_pid_t _pid ;
1564   __kernel_uid32_t _uid ;
1565   int _status ;
1566   __kernel_clock_t _utime ;
1567   __kernel_clock_t _stime ;
1568};
1569#line 48 "include/asm-generic/siginfo.h"
1570struct __anonstruct__sigfault_221 {
1571   void *_addr ;
1572   short _addr_lsb ;
1573};
1574#line 48 "include/asm-generic/siginfo.h"
1575struct __anonstruct__sigpoll_222 {
1576   long _band ;
1577   int _fd ;
1578};
1579#line 48 "include/asm-generic/siginfo.h"
1580union __anonunion__sifields_216 {
1581   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
1582   struct __anonstruct__kill_217 _kill ;
1583   struct __anonstruct__timer_218 _timer ;
1584   struct __anonstruct__rt_219 _rt ;
1585   struct __anonstruct__sigchld_220 _sigchld ;
1586   struct __anonstruct__sigfault_221 _sigfault ;
1587   struct __anonstruct__sigpoll_222 _sigpoll ;
1588};
1589#line 48 "include/asm-generic/siginfo.h"
1590struct siginfo {
1591   int si_signo ;
1592   int si_errno ;
1593   int si_code ;
1594   union __anonunion__sifields_216 _sifields ;
1595};
1596#line 48 "include/asm-generic/siginfo.h"
1597typedef struct siginfo siginfo_t;
1598#line 288
1599struct siginfo;
1600#line 10 "include/linux/signal.h"
1601struct task_struct;
1602#line 18
1603struct user_struct;
1604#line 28 "include/linux/signal.h"
1605struct sigpending {
1606   struct list_head list ;
1607   sigset_t signal ;
1608};
1609#line 239
1610struct timespec;
1611#line 240
1612struct pt_regs;
1613#line 50 "include/linux/pid.h"
1614struct pid_namespace;
1615#line 50 "include/linux/pid.h"
1616struct upid {
1617   int nr ;
1618   struct pid_namespace *ns ;
1619   struct hlist_node pid_chain ;
1620};
1621#line 57 "include/linux/pid.h"
1622struct pid {
1623   atomic_t count ;
1624   unsigned int level ;
1625   struct hlist_head tasks[3] ;
1626   struct rcu_head rcu ;
1627   struct upid numbers[1] ;
1628};
1629#line 69 "include/linux/pid.h"
1630struct pid_link {
1631   struct hlist_node node ;
1632   struct pid *pid ;
1633};
1634#line 100
1635struct pid_namespace;
1636#line 10 "include/linux/seccomp.h"
1637struct __anonstruct_seccomp_t_225 {
1638   int mode ;
1639};
1640#line 10 "include/linux/seccomp.h"
1641typedef struct __anonstruct_seccomp_t_225 seccomp_t;
1642#line 81 "include/linux/plist.h"
1643struct plist_head {
1644   struct list_head node_list ;
1645};
1646#line 85 "include/linux/plist.h"
1647struct plist_node {
1648   int prio ;
1649   struct list_head prio_list ;
1650   struct list_head node_list ;
1651};
1652#line 28 "include/linux/rtmutex.h"
1653struct rt_mutex {
1654   raw_spinlock_t wait_lock ;
1655   struct plist_head wait_list ;
1656   struct task_struct *owner ;
1657   int save_state ;
1658   char const   *name ;
1659   char const   *file ;
1660   int line ;
1661   void *magic ;
1662};
1663#line 40
1664struct rt_mutex_waiter;
1665#line 40
1666struct rt_mutex_waiter;
1667#line 42 "include/linux/resource.h"
1668struct rlimit {
1669   unsigned long rlim_cur ;
1670   unsigned long rlim_max ;
1671};
1672#line 81
1673struct task_struct;
1674#line 8 "include/linux/timerqueue.h"
1675struct timerqueue_node {
1676   struct rb_node node ;
1677   ktime_t expires ;
1678};
1679#line 13 "include/linux/timerqueue.h"
1680struct timerqueue_head {
1681   struct rb_root head ;
1682   struct timerqueue_node *next ;
1683};
1684#line 27 "include/linux/hrtimer.h"
1685struct hrtimer_clock_base;
1686#line 27
1687struct hrtimer_clock_base;
1688#line 28
1689struct hrtimer_cpu_base;
1690#line 28
1691struct hrtimer_cpu_base;
1692#line 44
1693enum hrtimer_restart {
1694    HRTIMER_NORESTART = 0,
1695    HRTIMER_RESTART = 1
1696} ;
1697#line 108 "include/linux/hrtimer.h"
1698struct hrtimer {
1699   struct timerqueue_node node ;
1700   ktime_t _softexpires ;
1701   enum hrtimer_restart (*function)(struct hrtimer * ) ;
1702   struct hrtimer_clock_base *base ;
1703   unsigned long state ;
1704   int start_pid ;
1705   void *start_site ;
1706   char start_comm[16] ;
1707};
1708#line 145 "include/linux/hrtimer.h"
1709struct hrtimer_clock_base {
1710   struct hrtimer_cpu_base *cpu_base ;
1711   int index ;
1712   clockid_t clockid ;
1713   struct timerqueue_head active ;
1714   ktime_t resolution ;
1715   ktime_t (*get_time)(void) ;
1716   ktime_t softirq_time ;
1717   ktime_t offset ;
1718};
1719#line 178 "include/linux/hrtimer.h"
1720struct hrtimer_cpu_base {
1721   raw_spinlock_t lock ;
1722   unsigned long active_bases ;
1723   ktime_t expires_next ;
1724   int hres_active ;
1725   int hang_detected ;
1726   unsigned long nr_events ;
1727   unsigned long nr_retries ;
1728   unsigned long nr_hangs ;
1729   ktime_t max_hang_time ;
1730   struct hrtimer_clock_base clock_base[3] ;
1731};
1732#line 11 "include/linux/task_io_accounting.h"
1733struct task_io_accounting {
1734   u64 rchar ;
1735   u64 wchar ;
1736   u64 syscr ;
1737   u64 syscw ;
1738   u64 read_bytes ;
1739   u64 write_bytes ;
1740   u64 cancelled_write_bytes ;
1741};
1742#line 13 "include/linux/latencytop.h"
1743struct task_struct;
1744#line 20 "include/linux/latencytop.h"
1745struct latency_record {
1746   unsigned long backtrace[12] ;
1747   unsigned int count ;
1748   unsigned long time ;
1749   unsigned long max ;
1750};
1751#line 29 "include/linux/key.h"
1752typedef int32_t key_serial_t;
1753#line 32 "include/linux/key.h"
1754typedef uint32_t key_perm_t;
1755#line 34
1756struct key;
1757#line 34
1758struct key;
1759#line 75
1760struct user_struct;
1761#line 76
1762struct signal_struct;
1763#line 76
1764struct signal_struct;
1765#line 77
1766struct cred;
1767#line 79
1768struct key_type;
1769#line 79
1770struct key_type;
1771#line 81
1772struct keyring_list;
1773#line 81
1774struct keyring_list;
1775#line 124
1776struct key_user;
1777#line 124 "include/linux/key.h"
1778union __anonunion____missing_field_name_226 {
1779   time_t expiry ;
1780   time_t revoked_at ;
1781};
1782#line 124 "include/linux/key.h"
1783union __anonunion_type_data_227 {
1784   struct list_head link ;
1785   unsigned long x[2] ;
1786   void *p[2] ;
1787   int reject_error ;
1788};
1789#line 124 "include/linux/key.h"
1790union __anonunion_payload_228 {
1791   unsigned long value ;
1792   void *rcudata ;
1793   void *data ;
1794   struct keyring_list *subscriptions ;
1795};
1796#line 124 "include/linux/key.h"
1797struct key {
1798   atomic_t usage ;
1799   key_serial_t serial ;
1800   struct rb_node serial_node ;
1801   struct key_type *type ;
1802   struct rw_semaphore sem ;
1803   struct key_user *user ;
1804   void *security ;
1805   union __anonunion____missing_field_name_226 __annonCompField42 ;
1806   uid_t uid ;
1807   gid_t gid ;
1808   key_perm_t perm ;
1809   unsigned short quotalen ;
1810   unsigned short datalen ;
1811   unsigned long flags ;
1812   char *description ;
1813   union __anonunion_type_data_227 type_data ;
1814   union __anonunion_payload_228 payload ;
1815};
1816#line 18 "include/linux/selinux.h"
1817struct audit_context;
1818#line 18
1819struct audit_context;
1820#line 21 "include/linux/cred.h"
1821struct user_struct;
1822#line 22
1823struct cred;
1824#line 31 "include/linux/cred.h"
1825struct group_info {
1826   atomic_t usage ;
1827   int ngroups ;
1828   int nblocks ;
1829   gid_t small_block[32] ;
1830   gid_t *blocks[0] ;
1831};
1832#line 83 "include/linux/cred.h"
1833struct thread_group_cred {
1834   atomic_t usage ;
1835   pid_t tgid ;
1836   spinlock_t lock ;
1837   struct key *session_keyring ;
1838   struct key *process_keyring ;
1839   struct rcu_head rcu ;
1840};
1841#line 116 "include/linux/cred.h"
1842struct cred {
1843   atomic_t usage ;
1844   atomic_t subscribers ;
1845   void *put_addr ;
1846   unsigned int magic ;
1847   uid_t uid ;
1848   gid_t gid ;
1849   uid_t suid ;
1850   gid_t sgid ;
1851   uid_t euid ;
1852   gid_t egid ;
1853   uid_t fsuid ;
1854   gid_t fsgid ;
1855   unsigned int securebits ;
1856   kernel_cap_t cap_inheritable ;
1857   kernel_cap_t cap_permitted ;
1858   kernel_cap_t cap_effective ;
1859   kernel_cap_t cap_bset ;
1860   unsigned char jit_keyring ;
1861   struct key *thread_keyring ;
1862   struct key *request_key_auth ;
1863   struct thread_group_cred *tgcred ;
1864   void *security ;
1865   struct user_struct *user ;
1866   struct user_namespace *user_ns ;
1867   struct group_info *group_info ;
1868   struct rcu_head rcu ;
1869};
1870#line 61 "include/linux/llist.h"
1871struct llist_node;
1872#line 65 "include/linux/llist.h"
1873struct llist_node {
1874   struct llist_node *next ;
1875};
1876#line 97 "include/linux/sched.h"
1877struct futex_pi_state;
1878#line 97
1879struct futex_pi_state;
1880#line 98
1881struct robust_list_head;
1882#line 98
1883struct robust_list_head;
1884#line 99
1885struct bio_list;
1886#line 99
1887struct bio_list;
1888#line 100
1889struct fs_struct;
1890#line 100
1891struct fs_struct;
1892#line 101
1893struct perf_event_context;
1894#line 101
1895struct perf_event_context;
1896#line 102
1897struct blk_plug;
1898#line 102
1899struct blk_plug;
1900#line 151
1901struct cfs_rq;
1902#line 151
1903struct cfs_rq;
1904#line 259
1905struct task_struct;
1906#line 366
1907struct nsproxy;
1908#line 367
1909struct user_namespace;
1910#line 214 "include/linux/aio.h"
1911struct mm_struct;
1912#line 443 "include/linux/sched.h"
1913struct sighand_struct {
1914   atomic_t count ;
1915   struct k_sigaction action[64] ;
1916   spinlock_t siglock ;
1917   wait_queue_head_t signalfd_wqh ;
1918};
1919#line 450 "include/linux/sched.h"
1920struct pacct_struct {
1921   int ac_flag ;
1922   long ac_exitcode ;
1923   unsigned long ac_mem ;
1924   cputime_t ac_utime ;
1925   cputime_t ac_stime ;
1926   unsigned long ac_minflt ;
1927   unsigned long ac_majflt ;
1928};
1929#line 458 "include/linux/sched.h"
1930struct cpu_itimer {
1931   cputime_t expires ;
1932   cputime_t incr ;
1933   u32 error ;
1934   u32 incr_error ;
1935};
1936#line 476 "include/linux/sched.h"
1937struct task_cputime {
1938   cputime_t utime ;
1939   cputime_t stime ;
1940   unsigned long long sum_exec_runtime ;
1941};
1942#line 512 "include/linux/sched.h"
1943struct thread_group_cputimer {
1944   struct task_cputime cputime ;
1945   int running ;
1946   raw_spinlock_t lock ;
1947};
1948#line 519
1949struct autogroup;
1950#line 519
1951struct autogroup;
1952#line 528
1953struct tty_struct;
1954#line 528
1955struct taskstats;
1956#line 528
1957struct tty_audit_buf;
1958#line 528 "include/linux/sched.h"
1959struct signal_struct {
1960   atomic_t sigcnt ;
1961   atomic_t live ;
1962   int nr_threads ;
1963   wait_queue_head_t wait_chldexit ;
1964   struct task_struct *curr_target ;
1965   struct sigpending shared_pending ;
1966   int group_exit_code ;
1967   int notify_count ;
1968   struct task_struct *group_exit_task ;
1969   int group_stop_count ;
1970   unsigned int flags ;
1971   unsigned int is_child_subreaper : 1 ;
1972   unsigned int has_child_subreaper : 1 ;
1973   struct list_head posix_timers ;
1974   struct hrtimer real_timer ;
1975   struct pid *leader_pid ;
1976   ktime_t it_real_incr ;
1977   struct cpu_itimer it[2] ;
1978   struct thread_group_cputimer cputimer ;
1979   struct task_cputime cputime_expires ;
1980   struct list_head cpu_timers[3] ;
1981   struct pid *tty_old_pgrp ;
1982   int leader ;
1983   struct tty_struct *tty ;
1984   struct autogroup *autogroup ;
1985   cputime_t utime ;
1986   cputime_t stime ;
1987   cputime_t cutime ;
1988   cputime_t cstime ;
1989   cputime_t gtime ;
1990   cputime_t cgtime ;
1991   cputime_t prev_utime ;
1992   cputime_t prev_stime ;
1993   unsigned long nvcsw ;
1994   unsigned long nivcsw ;
1995   unsigned long cnvcsw ;
1996   unsigned long cnivcsw ;
1997   unsigned long min_flt ;
1998   unsigned long maj_flt ;
1999   unsigned long cmin_flt ;
2000   unsigned long cmaj_flt ;
2001   unsigned long inblock ;
2002   unsigned long oublock ;
2003   unsigned long cinblock ;
2004   unsigned long coublock ;
2005   unsigned long maxrss ;
2006   unsigned long cmaxrss ;
2007   struct task_io_accounting ioac ;
2008   unsigned long long sum_sched_runtime ;
2009   struct rlimit rlim[16] ;
2010   struct pacct_struct pacct ;
2011   struct taskstats *stats ;
2012   unsigned int audit_tty ;
2013   struct tty_audit_buf *tty_audit_buf ;
2014   struct rw_semaphore group_rwsem ;
2015   int oom_adj ;
2016   int oom_score_adj ;
2017   int oom_score_adj_min ;
2018   struct mutex cred_guard_mutex ;
2019};
2020#line 703 "include/linux/sched.h"
2021struct user_struct {
2022   atomic_t __count ;
2023   atomic_t processes ;
2024   atomic_t files ;
2025   atomic_t sigpending ;
2026   atomic_t inotify_watches ;
2027   atomic_t inotify_devs ;
2028   atomic_t fanotify_listeners ;
2029   atomic_long_t epoll_watches ;
2030   unsigned long mq_bytes ;
2031   unsigned long locked_shm ;
2032   struct key *uid_keyring ;
2033   struct key *session_keyring ;
2034   struct hlist_node uidhash_node ;
2035   uid_t uid ;
2036   struct user_namespace *user_ns ;
2037   atomic_long_t locked_vm ;
2038};
2039#line 747
2040struct backing_dev_info;
2041#line 747
2042struct backing_dev_info;
2043#line 748
2044struct reclaim_state;
2045#line 748
2046struct reclaim_state;
2047#line 751 "include/linux/sched.h"
2048struct sched_info {
2049   unsigned long pcount ;
2050   unsigned long long run_delay ;
2051   unsigned long long last_arrival ;
2052   unsigned long long last_queued ;
2053};
2054#line 763 "include/linux/sched.h"
2055struct task_delay_info {
2056   spinlock_t lock ;
2057   unsigned int flags ;
2058   struct timespec blkio_start ;
2059   struct timespec blkio_end ;
2060   u64 blkio_delay ;
2061   u64 swapin_delay ;
2062   u32 blkio_count ;
2063   u32 swapin_count ;
2064   struct timespec freepages_start ;
2065   struct timespec freepages_end ;
2066   u64 freepages_delay ;
2067   u32 freepages_count ;
2068};
2069#line 1088
2070struct io_context;
2071#line 1088
2072struct io_context;
2073#line 1097
2074struct audit_context;
2075#line 1098
2076struct mempolicy;
2077#line 1099
2078struct pipe_inode_info;
2079#line 1099
2080struct pipe_inode_info;
2081#line 1102
2082struct rq;
2083#line 1102
2084struct rq;
2085#line 1122 "include/linux/sched.h"
2086struct sched_class {
2087   struct sched_class  const  *next ;
2088   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2089   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2090   void (*yield_task)(struct rq *rq ) ;
2091   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
2092   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
2093   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
2094   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
2095   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
2096   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
2097   void (*post_schedule)(struct rq *this_rq ) ;
2098   void (*task_waking)(struct task_struct *task ) ;
2099   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
2100   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask  const  *newmask ) ;
2101   void (*rq_online)(struct rq *rq ) ;
2102   void (*rq_offline)(struct rq *rq ) ;
2103   void (*set_curr_task)(struct rq *rq ) ;
2104   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
2105   void (*task_fork)(struct task_struct *p ) ;
2106   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
2107   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
2108   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
2109   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
2110   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
2111};
2112#line 1167 "include/linux/sched.h"
2113struct load_weight {
2114   unsigned long weight ;
2115   unsigned long inv_weight ;
2116};
2117#line 1172 "include/linux/sched.h"
2118struct sched_statistics {
2119   u64 wait_start ;
2120   u64 wait_max ;
2121   u64 wait_count ;
2122   u64 wait_sum ;
2123   u64 iowait_count ;
2124   u64 iowait_sum ;
2125   u64 sleep_start ;
2126   u64 sleep_max ;
2127   s64 sum_sleep_runtime ;
2128   u64 block_start ;
2129   u64 block_max ;
2130   u64 exec_max ;
2131   u64 slice_max ;
2132   u64 nr_migrations_cold ;
2133   u64 nr_failed_migrations_affine ;
2134   u64 nr_failed_migrations_running ;
2135   u64 nr_failed_migrations_hot ;
2136   u64 nr_forced_migrations ;
2137   u64 nr_wakeups ;
2138   u64 nr_wakeups_sync ;
2139   u64 nr_wakeups_migrate ;
2140   u64 nr_wakeups_local ;
2141   u64 nr_wakeups_remote ;
2142   u64 nr_wakeups_affine ;
2143   u64 nr_wakeups_affine_attempts ;
2144   u64 nr_wakeups_passive ;
2145   u64 nr_wakeups_idle ;
2146};
2147#line 1207 "include/linux/sched.h"
2148struct sched_entity {
2149   struct load_weight load ;
2150   struct rb_node run_node ;
2151   struct list_head group_node ;
2152   unsigned int on_rq ;
2153   u64 exec_start ;
2154   u64 sum_exec_runtime ;
2155   u64 vruntime ;
2156   u64 prev_sum_exec_runtime ;
2157   u64 nr_migrations ;
2158   struct sched_statistics statistics ;
2159   struct sched_entity *parent ;
2160   struct cfs_rq *cfs_rq ;
2161   struct cfs_rq *my_q ;
2162};
2163#line 1233
2164struct rt_rq;
2165#line 1233 "include/linux/sched.h"
2166struct sched_rt_entity {
2167   struct list_head run_list ;
2168   unsigned long timeout ;
2169   unsigned int time_slice ;
2170   int nr_cpus_allowed ;
2171   struct sched_rt_entity *back ;
2172   struct sched_rt_entity *parent ;
2173   struct rt_rq *rt_rq ;
2174   struct rt_rq *my_q ;
2175};
2176#line 1264
2177struct files_struct;
2178#line 1264
2179struct css_set;
2180#line 1264
2181struct compat_robust_list_head;
2182#line 1264
2183struct mem_cgroup;
2184#line 1264 "include/linux/sched.h"
2185struct memcg_batch_info {
2186   int do_batch ;
2187   struct mem_cgroup *memcg ;
2188   unsigned long nr_pages ;
2189   unsigned long memsw_nr_pages ;
2190};
2191#line 1264 "include/linux/sched.h"
2192struct task_struct {
2193   long volatile   state ;
2194   void *stack ;
2195   atomic_t usage ;
2196   unsigned int flags ;
2197   unsigned int ptrace ;
2198   struct llist_node wake_entry ;
2199   int on_cpu ;
2200   int on_rq ;
2201   int prio ;
2202   int static_prio ;
2203   int normal_prio ;
2204   unsigned int rt_priority ;
2205   struct sched_class  const  *sched_class ;
2206   struct sched_entity se ;
2207   struct sched_rt_entity rt ;
2208   struct hlist_head preempt_notifiers ;
2209   unsigned char fpu_counter ;
2210   unsigned int policy ;
2211   cpumask_t cpus_allowed ;
2212   struct sched_info sched_info ;
2213   struct list_head tasks ;
2214   struct plist_node pushable_tasks ;
2215   struct mm_struct *mm ;
2216   struct mm_struct *active_mm ;
2217   unsigned int brk_randomized : 1 ;
2218   int exit_state ;
2219   int exit_code ;
2220   int exit_signal ;
2221   int pdeath_signal ;
2222   unsigned int jobctl ;
2223   unsigned int personality ;
2224   unsigned int did_exec : 1 ;
2225   unsigned int in_execve : 1 ;
2226   unsigned int in_iowait : 1 ;
2227   unsigned int sched_reset_on_fork : 1 ;
2228   unsigned int sched_contributes_to_load : 1 ;
2229   unsigned int irq_thread : 1 ;
2230   pid_t pid ;
2231   pid_t tgid ;
2232   unsigned long stack_canary ;
2233   struct task_struct *real_parent ;
2234   struct task_struct *parent ;
2235   struct list_head children ;
2236   struct list_head sibling ;
2237   struct task_struct *group_leader ;
2238   struct list_head ptraced ;
2239   struct list_head ptrace_entry ;
2240   struct pid_link pids[3] ;
2241   struct list_head thread_group ;
2242   struct completion *vfork_done ;
2243   int *set_child_tid ;
2244   int *clear_child_tid ;
2245   cputime_t utime ;
2246   cputime_t stime ;
2247   cputime_t utimescaled ;
2248   cputime_t stimescaled ;
2249   cputime_t gtime ;
2250   cputime_t prev_utime ;
2251   cputime_t prev_stime ;
2252   unsigned long nvcsw ;
2253   unsigned long nivcsw ;
2254   struct timespec start_time ;
2255   struct timespec real_start_time ;
2256   unsigned long min_flt ;
2257   unsigned long maj_flt ;
2258   struct task_cputime cputime_expires ;
2259   struct list_head cpu_timers[3] ;
2260   struct cred  const  *real_cred ;
2261   struct cred  const  *cred ;
2262   struct cred *replacement_session_keyring ;
2263   char comm[16] ;
2264   int link_count ;
2265   int total_link_count ;
2266   struct sysv_sem sysvsem ;
2267   unsigned long last_switch_count ;
2268   struct thread_struct thread ;
2269   struct fs_struct *fs ;
2270   struct files_struct *files ;
2271   struct nsproxy *nsproxy ;
2272   struct signal_struct *signal ;
2273   struct sighand_struct *sighand ;
2274   sigset_t blocked ;
2275   sigset_t real_blocked ;
2276   sigset_t saved_sigmask ;
2277   struct sigpending pending ;
2278   unsigned long sas_ss_sp ;
2279   size_t sas_ss_size ;
2280   int (*notifier)(void *priv ) ;
2281   void *notifier_data ;
2282   sigset_t *notifier_mask ;
2283   struct audit_context *audit_context ;
2284   uid_t loginuid ;
2285   unsigned int sessionid ;
2286   seccomp_t seccomp ;
2287   u32 parent_exec_id ;
2288   u32 self_exec_id ;
2289   spinlock_t alloc_lock ;
2290   raw_spinlock_t pi_lock ;
2291   struct plist_head pi_waiters ;
2292   struct rt_mutex_waiter *pi_blocked_on ;
2293   struct mutex_waiter *blocked_on ;
2294   unsigned int irq_events ;
2295   unsigned long hardirq_enable_ip ;
2296   unsigned long hardirq_disable_ip ;
2297   unsigned int hardirq_enable_event ;
2298   unsigned int hardirq_disable_event ;
2299   int hardirqs_enabled ;
2300   int hardirq_context ;
2301   unsigned long softirq_disable_ip ;
2302   unsigned long softirq_enable_ip ;
2303   unsigned int softirq_disable_event ;
2304   unsigned int softirq_enable_event ;
2305   int softirqs_enabled ;
2306   int softirq_context ;
2307   void *journal_info ;
2308   struct bio_list *bio_list ;
2309   struct blk_plug *plug ;
2310   struct reclaim_state *reclaim_state ;
2311   struct backing_dev_info *backing_dev_info ;
2312   struct io_context *io_context ;
2313   unsigned long ptrace_message ;
2314   siginfo_t *last_siginfo ;
2315   struct task_io_accounting ioac ;
2316   u64 acct_rss_mem1 ;
2317   u64 acct_vm_mem1 ;
2318   cputime_t acct_timexpd ;
2319   nodemask_t mems_allowed ;
2320   seqcount_t mems_allowed_seq ;
2321   int cpuset_mem_spread_rotor ;
2322   int cpuset_slab_spread_rotor ;
2323   struct css_set *cgroups ;
2324   struct list_head cg_list ;
2325   struct robust_list_head *robust_list ;
2326   struct compat_robust_list_head *compat_robust_list ;
2327   struct list_head pi_state_list ;
2328   struct futex_pi_state *pi_state_cache ;
2329   struct perf_event_context *perf_event_ctxp[2] ;
2330   struct mutex perf_event_mutex ;
2331   struct list_head perf_event_list ;
2332   struct mempolicy *mempolicy ;
2333   short il_next ;
2334   short pref_node_fork ;
2335   struct rcu_head rcu ;
2336   struct pipe_inode_info *splice_pipe ;
2337   struct task_delay_info *delays ;
2338   int make_it_fail ;
2339   int nr_dirtied ;
2340   int nr_dirtied_pause ;
2341   unsigned long dirty_paused_when ;
2342   int latency_record_count ;
2343   struct latency_record latency_record[32] ;
2344   unsigned long timer_slack_ns ;
2345   unsigned long default_timer_slack_ns ;
2346   struct list_head *scm_work_list ;
2347   unsigned long trace ;
2348   unsigned long trace_recursion ;
2349   struct memcg_batch_info memcg_batch ;
2350   atomic_t ptrace_bp_refcnt ;
2351};
2352#line 1681
2353struct pid_namespace;
2354#line 28 "include/linux/of.h"
2355typedef u32 phandle;
2356#line 31 "include/linux/of.h"
2357struct property {
2358   char *name ;
2359   int length ;
2360   void *value ;
2361   struct property *next ;
2362   unsigned long _flags ;
2363   unsigned int unique_id ;
2364};
2365#line 44
2366struct proc_dir_entry;
2367#line 44 "include/linux/of.h"
2368struct device_node {
2369   char const   *name ;
2370   char const   *type ;
2371   phandle phandle ;
2372   char *full_name ;
2373   struct property *properties ;
2374   struct property *deadprops ;
2375   struct device_node *parent ;
2376   struct device_node *child ;
2377   struct device_node *sibling ;
2378   struct device_node *next ;
2379   struct device_node *allnext ;
2380   struct proc_dir_entry *pde ;
2381   struct kref kref ;
2382   unsigned long _flags ;
2383   void *data ;
2384};
2385#line 44 "include/linux/i2c.h"
2386struct i2c_msg;
2387#line 44
2388struct i2c_msg;
2389#line 45
2390struct i2c_algorithm;
2391#line 45
2392struct i2c_algorithm;
2393#line 46
2394struct i2c_adapter;
2395#line 46
2396struct i2c_adapter;
2397#line 47
2398struct i2c_client;
2399#line 47
2400struct i2c_client;
2401#line 48
2402struct i2c_driver;
2403#line 48
2404struct i2c_driver;
2405#line 49
2406union i2c_smbus_data;
2407#line 49
2408union i2c_smbus_data;
2409#line 50
2410struct i2c_board_info;
2411#line 50
2412struct i2c_board_info;
2413#line 52
2414struct module;
2415#line 161 "include/linux/i2c.h"
2416struct i2c_driver {
2417   unsigned int class ;
2418   int (*attach_adapter)(struct i2c_adapter * )  __attribute__((__deprecated__)) ;
2419   int (*detach_adapter)(struct i2c_adapter * )  __attribute__((__deprecated__)) ;
2420   int (*probe)(struct i2c_client * , struct i2c_device_id  const  * ) ;
2421   int (*remove)(struct i2c_client * ) ;
2422   void (*shutdown)(struct i2c_client * ) ;
2423   int (*suspend)(struct i2c_client * , pm_message_t mesg ) ;
2424   int (*resume)(struct i2c_client * ) ;
2425   void (*alert)(struct i2c_client * , unsigned int data ) ;
2426   int (*command)(struct i2c_client *client , unsigned int cmd , void *arg ) ;
2427   struct device_driver driver ;
2428   struct i2c_device_id  const  *id_table ;
2429   int (*detect)(struct i2c_client * , struct i2c_board_info * ) ;
2430   unsigned short const   *address_list ;
2431   struct list_head clients ;
2432};
2433#line 220 "include/linux/i2c.h"
2434struct i2c_client {
2435   unsigned short flags ;
2436   unsigned short addr ;
2437   char name[20] ;
2438   struct i2c_adapter *adapter ;
2439   struct i2c_driver *driver ;
2440   struct device dev ;
2441   int irq ;
2442   struct list_head detected ;
2443};
2444#line 273 "include/linux/i2c.h"
2445struct i2c_board_info {
2446   char type[20] ;
2447   unsigned short flags ;
2448   unsigned short addr ;
2449   void *platform_data ;
2450   struct dev_archdata *archdata ;
2451   struct device_node *of_node ;
2452   int irq ;
2453};
2454#line 352 "include/linux/i2c.h"
2455struct i2c_algorithm {
2456   int (*master_xfer)(struct i2c_adapter *adap , struct i2c_msg *msgs , int num ) ;
2457   int (*smbus_xfer)(struct i2c_adapter *adap , u16 addr , unsigned short flags ,
2458                     char read_write , u8 command , int size , union i2c_smbus_data *data ) ;
2459   u32 (*functionality)(struct i2c_adapter * ) ;
2460};
2461#line 373 "include/linux/i2c.h"
2462struct i2c_adapter {
2463   struct module *owner ;
2464   unsigned int class ;
2465   struct i2c_algorithm  const  *algo ;
2466   void *algo_data ;
2467   struct rt_mutex bus_lock ;
2468   int timeout ;
2469   int retries ;
2470   struct device dev ;
2471   int nr ;
2472   char name[48] ;
2473   struct completion dev_released ;
2474   struct mutex userspace_clients_lock ;
2475   struct list_head userspace_clients ;
2476};
2477#line 538 "include/linux/i2c.h"
2478struct i2c_msg {
2479   __u16 addr ;
2480   __u16 flags ;
2481   __u16 len ;
2482   __u8 *buf ;
2483};
2484#line 596 "include/linux/i2c.h"
2485union i2c_smbus_data {
2486   __u8 byte ;
2487   __u16 word ;
2488   __u8 block[34] ;
2489};
2490#line 38 "include/linux/regulator/consumer.h"
2491struct device;
2492#line 39
2493struct notifier_block;
2494#line 109
2495struct regulator;
2496#line 109
2497struct regulator;
2498#line 22 "include/linux/regulator/driver.h"
2499struct regulator_dev;
2500#line 22
2501struct regulator_dev;
2502#line 23
2503struct regulator_init_data;
2504#line 23
2505struct regulator_init_data;
2506#line 85 "include/linux/regulator/driver.h"
2507struct regulator_ops {
2508   int (*list_voltage)(struct regulator_dev * , unsigned int selector ) ;
2509   int (*set_voltage)(struct regulator_dev * , int min_uV , int max_uV , unsigned int *selector ) ;
2510   int (*set_voltage_sel)(struct regulator_dev * , unsigned int selector ) ;
2511   int (*get_voltage)(struct regulator_dev * ) ;
2512   int (*get_voltage_sel)(struct regulator_dev * ) ;
2513   int (*set_current_limit)(struct regulator_dev * , int min_uA , int max_uA ) ;
2514   int (*get_current_limit)(struct regulator_dev * ) ;
2515   int (*enable)(struct regulator_dev * ) ;
2516   int (*disable)(struct regulator_dev * ) ;
2517   int (*is_enabled)(struct regulator_dev * ) ;
2518   int (*set_mode)(struct regulator_dev * , unsigned int mode ) ;
2519   unsigned int (*get_mode)(struct regulator_dev * ) ;
2520   int (*enable_time)(struct regulator_dev * ) ;
2521   int (*set_voltage_time_sel)(struct regulator_dev * , unsigned int old_selector ,
2522                               unsigned int new_selector ) ;
2523   int (*get_status)(struct regulator_dev * ) ;
2524   unsigned int (*get_optimum_mode)(struct regulator_dev * , int input_uV , int output_uV ,
2525                                    int load_uA ) ;
2526   int (*set_suspend_voltage)(struct regulator_dev * , int uV ) ;
2527   int (*set_suspend_enable)(struct regulator_dev * ) ;
2528   int (*set_suspend_disable)(struct regulator_dev * ) ;
2529   int (*set_suspend_mode)(struct regulator_dev * , unsigned int mode ) ;
2530};
2531#line 145
2532enum regulator_type {
2533    REGULATOR_VOLTAGE = 0,
2534    REGULATOR_CURRENT = 1
2535} ;
2536#line 165 "include/linux/regulator/driver.h"
2537struct regulator_desc {
2538   char const   *name ;
2539   char const   *supply_name ;
2540   int id ;
2541   unsigned int n_voltages ;
2542   struct regulator_ops *ops ;
2543   int irq ;
2544   enum regulator_type type ;
2545   struct module *owner ;
2546};
2547#line 186
2548struct regulation_constraints;
2549#line 186 "include/linux/regulator/driver.h"
2550struct regulator_dev {
2551   struct regulator_desc *desc ;
2552   int exclusive ;
2553   u32 use_count ;
2554   u32 open_count ;
2555   struct list_head list ;
2556   struct list_head consumer_list ;
2557   struct blocking_notifier_head notifier ;
2558   struct mutex mutex ;
2559   struct module *owner ;
2560   struct device dev ;
2561   struct regulation_constraints *constraints ;
2562   struct regulator *supply ;
2563   struct delayed_work disable_work ;
2564   int deferred_disables ;
2565   void *reg_data ;
2566   struct dentry *debugfs ;
2567};
2568#line 46 "include/linux/slub_def.h"
2569struct kmem_cache_cpu {
2570   void **freelist ;
2571   unsigned long tid ;
2572   struct page *page ;
2573   struct page *partial ;
2574   int node ;
2575   unsigned int stat[26] ;
2576};
2577#line 57 "include/linux/slub_def.h"
2578struct kmem_cache_node {
2579   spinlock_t list_lock ;
2580   unsigned long nr_partial ;
2581   struct list_head partial ;
2582   atomic_long_t nr_slabs ;
2583   atomic_long_t total_objects ;
2584   struct list_head full ;
2585};
2586#line 73 "include/linux/slub_def.h"
2587struct kmem_cache_order_objects {
2588   unsigned long x ;
2589};
2590#line 80 "include/linux/slub_def.h"
2591struct kmem_cache {
2592   struct kmem_cache_cpu *cpu_slab ;
2593   unsigned long flags ;
2594   unsigned long min_partial ;
2595   int size ;
2596   int objsize ;
2597   int offset ;
2598   int cpu_partial ;
2599   struct kmem_cache_order_objects oo ;
2600   struct kmem_cache_order_objects max ;
2601   struct kmem_cache_order_objects min ;
2602   gfp_t allocflags ;
2603   int refcount ;
2604   void (*ctor)(void * ) ;
2605   int inuse ;
2606   int align ;
2607   int reserved ;
2608   char const   *name ;
2609   struct list_head list ;
2610   struct kobject kobj ;
2611   int remote_node_defrag_ratio ;
2612   struct kmem_cache_node *node[1 << 10] ;
2613};
2614#line 40 "include/linux/taskstats.h"
2615struct taskstats {
2616   __u16 version ;
2617   __u32 ac_exitcode ;
2618   __u8 ac_flag ;
2619   __u8 ac_nice ;
2620   __u64 cpu_count  __attribute__((__aligned__(8))) ;
2621   __u64 cpu_delay_total ;
2622   __u64 blkio_count ;
2623   __u64 blkio_delay_total ;
2624   __u64 swapin_count ;
2625   __u64 swapin_delay_total ;
2626   __u64 cpu_run_real_total ;
2627   __u64 cpu_run_virtual_total ;
2628   char ac_comm[32] ;
2629   __u8 ac_sched  __attribute__((__aligned__(8))) ;
2630   __u8 ac_pad[3] ;
2631   __u32 ac_uid  __attribute__((__aligned__(8))) ;
2632   __u32 ac_gid ;
2633   __u32 ac_pid ;
2634   __u32 ac_ppid ;
2635   __u32 ac_btime ;
2636   __u64 ac_etime  __attribute__((__aligned__(8))) ;
2637   __u64 ac_utime ;
2638   __u64 ac_stime ;
2639   __u64 ac_minflt ;
2640   __u64 ac_majflt ;
2641   __u64 coremem ;
2642   __u64 virtmem ;
2643   __u64 hiwater_rss ;
2644   __u64 hiwater_vm ;
2645   __u64 read_char ;
2646   __u64 write_char ;
2647   __u64 read_syscalls ;
2648   __u64 write_syscalls ;
2649   __u64 read_bytes ;
2650   __u64 write_bytes ;
2651   __u64 cancelled_write_bytes ;
2652   __u64 nvcsw ;
2653   __u64 nivcsw ;
2654   __u64 ac_utimescaled ;
2655   __u64 ac_stimescaled ;
2656   __u64 cpu_scaled_run_real_total ;
2657   __u64 freepages_count ;
2658   __u64 freepages_delay_total ;
2659};
2660#line 22 "include/linux/cgroup.h"
2661struct cgroupfs_root;
2662#line 22
2663struct cgroupfs_root;
2664#line 25
2665struct cgroup;
2666#line 25
2667struct cgroup;
2668#line 26
2669struct css_id;
2670#line 26
2671struct css_id;
2672#line 60 "include/linux/cgroup.h"
2673struct cgroup_subsys_state {
2674   struct cgroup *cgroup ;
2675   atomic_t refcnt ;
2676   unsigned long flags ;
2677   struct css_id *id ;
2678};
2679#line 163 "include/linux/cgroup.h"
2680struct cgroup {
2681   unsigned long flags ;
2682   atomic_t count ;
2683   struct list_head sibling ;
2684   struct list_head children ;
2685   struct cgroup *parent ;
2686   struct dentry *dentry ;
2687   struct cgroup_subsys_state *subsys[8UL * sizeof(unsigned long )] ;
2688   struct cgroupfs_root *root ;
2689   struct cgroup *top_cgroup ;
2690   struct list_head css_sets ;
2691   struct list_head release_list ;
2692   struct list_head pidlists ;
2693   struct mutex pidlist_mutex ;
2694   struct rcu_head rcu_head ;
2695   struct list_head event_list ;
2696   spinlock_t event_list_lock ;
2697};
2698#line 224 "include/linux/cgroup.h"
2699struct css_set {
2700   atomic_t refcount ;
2701   struct hlist_node hlist ;
2702   struct list_head tasks ;
2703   struct list_head cg_links ;
2704   struct cgroup_subsys_state *subsys[8UL * sizeof(unsigned long )] ;
2705   struct rcu_head rcu_head ;
2706};
2707#line 25 "include/linux/memcontrol.h"
2708struct mem_cgroup;
2709#line 27
2710struct page;
2711#line 28
2712struct mm_struct;
2713#line 439
2714struct sock;
2715#line 15 "include/linux/swap.h"
2716struct notifier_block;
2717#line 113 "include/linux/swap.h"
2718struct reclaim_state {
2719   unsigned long reclaimed_slab ;
2720};
2721#line 119
2722struct address_space;
2723#line 356
2724struct backing_dev_info;
2725#line 8 "include/linux/debug_locks.h"
2726struct task_struct;
2727#line 48
2728struct task_struct;
2729#line 22 "include/linux/mm.h"
2730struct mempolicy;
2731#line 23
2732struct anon_vma;
2733#line 25
2734struct user_struct;
2735#line 41 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64.h"
2736struct mm_struct;
2737#line 656 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable.h"
2738struct vm_area_struct;
2739#line 188 "include/linux/mm.h"
2740struct vm_fault {
2741   unsigned int flags ;
2742   unsigned long pgoff ;
2743   void *virtual_address ;
2744   struct page *page ;
2745};
2746#line 205 "include/linux/mm.h"
2747struct vm_operations_struct {
2748   void (*open)(struct vm_area_struct *area ) ;
2749   void (*close)(struct vm_area_struct *area ) ;
2750   int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
2751   int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
2752   int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
2753                 int write ) ;
2754   int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
2755   struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
2756   int (*migrate)(struct vm_area_struct *vma , nodemask_t const   *from , nodemask_t const   *to ,
2757                  unsigned long flags ) ;
2758};
2759#line 195 "include/linux/page-flags.h"
2760struct page;
2761#line 34 "include/linux/suspend.h"
2762typedef int suspend_state_t;
2763#line 21 "include/linux/regulator/machine.h"
2764struct regulator;
2765#line 55 "include/linux/regulator/machine.h"
2766struct regulator_state {
2767   int uV ;
2768   unsigned int mode ;
2769   int enabled ;
2770   int disabled ;
2771};
2772#line 96 "include/linux/regulator/machine.h"
2773struct regulation_constraints {
2774   char const   *name ;
2775   int min_uV ;
2776   int max_uV ;
2777   int uV_offset ;
2778   int min_uA ;
2779   int max_uA ;
2780   unsigned int valid_modes_mask ;
2781   unsigned int valid_ops_mask ;
2782   int input_uV ;
2783   struct regulator_state state_disk ;
2784   struct regulator_state state_mem ;
2785   struct regulator_state state_standby ;
2786   suspend_state_t initial_state ;
2787   unsigned int initial_mode ;
2788   unsigned int always_on : 1 ;
2789   unsigned int boot_on : 1 ;
2790   unsigned int apply_uV : 1 ;
2791};
2792#line 143 "include/linux/regulator/machine.h"
2793struct regulator_consumer_supply {
2794   char const   *dev_name ;
2795   char const   *supply ;
2796};
2797#line 172 "include/linux/regulator/machine.h"
2798struct regulator_init_data {
2799   char const   *supply_regulator ;
2800   struct regulation_constraints constraints ;
2801   int num_consumer_supplies ;
2802   struct regulator_consumer_supply *consumer_supplies ;
2803   int (*regulator_init)(void *driver_data ) ;
2804   void *driver_data ;
2805};
2806#line 34 "include/linux/regulator/max8649.h"
2807struct max8649_platform_data {
2808   struct regulator_init_data *regulator ;
2809   unsigned int mode : 2 ;
2810   unsigned int extclk_freq : 2 ;
2811   unsigned int extclk : 1 ;
2812   unsigned int ramp_timing : 3 ;
2813   unsigned int ramp_down : 1 ;
2814};
2815#line 18 "include/linux/regmap.h"
2816struct module;
2817#line 19
2818struct device;
2819#line 20
2820struct i2c_client;
2821#line 22
2822struct regmap;
2823#line 22
2824struct regmap;
2825#line 25
2826enum regcache_type {
2827    REGCACHE_NONE = 0,
2828    REGCACHE_RBTREE = 1,
2829    REGCACHE_COMPRESSED = 2
2830} ;
2831#line 39 "include/linux/regmap.h"
2832struct reg_default {
2833   unsigned int reg ;
2834   unsigned int def ;
2835};
2836#line 79 "include/linux/regmap.h"
2837struct regmap_config {
2838   int reg_bits ;
2839   int pad_bits ;
2840   int val_bits ;
2841   bool (*writeable_reg)(struct device *dev , unsigned int reg ) ;
2842   bool (*readable_reg)(struct device *dev , unsigned int reg ) ;
2843   bool (*volatile_reg)(struct device *dev , unsigned int reg ) ;
2844   bool (*precious_reg)(struct device *dev , unsigned int reg ) ;
2845   unsigned int max_register ;
2846   struct reg_default  const  *reg_defaults ;
2847   unsigned int num_reg_defaults ;
2848   enum regcache_type cache_type ;
2849   void const   *reg_defaults_raw ;
2850   unsigned int num_reg_defaults_raw ;
2851   u8 read_flag_mask ;
2852   u8 write_flag_mask ;
2853};
2854#line 52 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
2855struct max8649_regulator_info {
2856   struct regulator_dev *regulator ;
2857   struct device *dev ;
2858   struct regmap *regmap ;
2859   int vol_reg ;
2860   unsigned int mode : 2 ;
2861   unsigned int extclk_freq : 2 ;
2862   unsigned int extclk : 1 ;
2863   unsigned int ramp_timing : 3 ;
2864   unsigned int ramp_down : 1 ;
2865};
2866#line 1 "<compiler builtins>"
2867long __builtin_expect(long val , long res ) ;
2868#line 27 "include/linux/err.h"
2869__inline static long __attribute__((__warn_unused_result__))  PTR_ERR(void const   *ptr )  __attribute__((__no_instrument_function__)) ;
2870#line 27 "include/linux/err.h"
2871__inline static long __attribute__((__warn_unused_result__))  PTR_ERR(void const   *ptr ) 
2872{ 
2873
2874  {
2875#line 29
2876  return ((long )ptr);
2877}
2878}
2879#line 32
2880__inline static long __attribute__((__warn_unused_result__))  IS_ERR(void const   *ptr )  __attribute__((__no_instrument_function__)) ;
2881#line 32 "include/linux/err.h"
2882__inline static long __attribute__((__warn_unused_result__))  IS_ERR(void const   *ptr ) 
2883{ long tmp ;
2884  unsigned long __cil_tmp3 ;
2885  int __cil_tmp4 ;
2886  int __cil_tmp5 ;
2887  int __cil_tmp6 ;
2888  long __cil_tmp7 ;
2889
2890  {
2891  {
2892#line 34
2893  __cil_tmp3 = (unsigned long )ptr;
2894#line 34
2895  __cil_tmp4 = __cil_tmp3 >= 0xfffffffffffff001UL;
2896#line 34
2897  __cil_tmp5 = ! __cil_tmp4;
2898#line 34
2899  __cil_tmp6 = ! __cil_tmp5;
2900#line 34
2901  __cil_tmp7 = (long )__cil_tmp6;
2902#line 34
2903  tmp = __builtin_expect(__cil_tmp7, 0L);
2904  }
2905#line 34
2906  return (tmp);
2907}
2908}
2909#line 152 "include/linux/mutex.h"
2910void mutex_lock(struct mutex *lock ) ;
2911#line 153
2912int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
2913#line 154
2914int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
2915#line 168
2916int mutex_trylock(struct mutex *lock ) ;
2917#line 169
2918void mutex_unlock(struct mutex *lock ) ;
2919#line 170
2920int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
2921#line 26 "include/linux/export.h"
2922extern struct module __this_module ;
2923#line 67 "include/linux/module.h"
2924int init_module(void) ;
2925#line 68
2926void cleanup_module(void) ;
2927#line 792 "include/linux/device.h"
2928extern void *dev_get_drvdata(struct device  const  *dev ) ;
2929#line 793
2930extern int dev_set_drvdata(struct device *dev , void *data ) ;
2931#line 891
2932extern int ( /* format attribute */  dev_err)(struct device  const  *dev , char const   *fmt 
2933                                              , ...) ;
2934#line 897
2935extern int ( /* format attribute */  _dev_info)(struct device  const  *dev , char const   *fmt 
2936                                                , ...) ;
2937#line 242 "include/linux/i2c.h"
2938__inline static void *i2c_get_clientdata(struct i2c_client  const  *dev )  __attribute__((__no_instrument_function__)) ;
2939#line 242 "include/linux/i2c.h"
2940__inline static void *i2c_get_clientdata(struct i2c_client  const  *dev ) 
2941{ void *tmp___7 ;
2942  unsigned long __cil_tmp3 ;
2943  unsigned long __cil_tmp4 ;
2944  struct device  const  *__cil_tmp5 ;
2945
2946  {
2947  {
2948#line 244
2949  __cil_tmp3 = (unsigned long )dev;
2950#line 244
2951  __cil_tmp4 = __cil_tmp3 + 40;
2952#line 244
2953  __cil_tmp5 = (struct device  const  *)__cil_tmp4;
2954#line 244
2955  tmp___7 = dev_get_drvdata(__cil_tmp5);
2956  }
2957#line 244
2958  return (tmp___7);
2959}
2960}
2961#line 247
2962__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data )  __attribute__((__no_instrument_function__)) ;
2963#line 247 "include/linux/i2c.h"
2964__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data ) 
2965{ unsigned long __cil_tmp3 ;
2966  unsigned long __cil_tmp4 ;
2967  struct device *__cil_tmp5 ;
2968
2969  {
2970  {
2971#line 249
2972  __cil_tmp3 = (unsigned long )dev;
2973#line 249
2974  __cil_tmp4 = __cil_tmp3 + 40;
2975#line 249
2976  __cil_tmp5 = (struct device *)__cil_tmp4;
2977#line 249
2978  dev_set_drvdata(__cil_tmp5, data);
2979  }
2980#line 250
2981  return;
2982}
2983}
2984#line 450
2985extern int i2c_register_driver(struct module * , struct i2c_driver * ) ;
2986#line 451
2987extern void i2c_del_driver(struct i2c_driver * ) ;
2988#line 213 "include/linux/regulator/driver.h"
2989extern struct regulator_dev *regulator_register(struct regulator_desc *regulator_desc ,
2990                                                struct device *dev , struct regulator_init_data  const  *init_data ,
2991                                                void *driver_data , struct device_node *of_node ) ;
2992#line 216
2993extern void regulator_unregister(struct regulator_dev *rdev ) ;
2994#line 221
2995extern void *rdev_get_drvdata(struct regulator_dev *rdev ) ;
2996#line 161 "include/linux/slab.h"
2997extern void kfree(void const   * ) ;
2998#line 221 "include/linux/slub_def.h"
2999extern void *__kmalloc(size_t size , gfp_t flags ) ;
3000#line 268
3001__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
3002                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
3003#line 268 "include/linux/slub_def.h"
3004__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
3005                                                                    gfp_t flags ) 
3006{ void *tmp___10 ;
3007
3008  {
3009  {
3010#line 283
3011  tmp___10 = __kmalloc(size, flags);
3012  }
3013#line 283
3014  return (tmp___10);
3015}
3016}
3017#line 349 "include/linux/slab.h"
3018__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
3019#line 349 "include/linux/slab.h"
3020__inline static void *kzalloc(size_t size , gfp_t flags ) 
3021{ void *tmp___7 ;
3022  unsigned int __cil_tmp4 ;
3023
3024  {
3025  {
3026#line 351
3027  __cil_tmp4 = flags | 32768U;
3028#line 351
3029  tmp___7 = kmalloc(size, __cil_tmp4);
3030  }
3031#line 351
3032  return (tmp___7);
3033}
3034}
3035#line 130 "include/linux/regmap.h"
3036extern struct regmap *regmap_init_i2c(struct i2c_client *i2c , struct regmap_config  const  *config ) ;
3037#line 143
3038extern void regmap_exit(struct regmap *map ) ;
3039#line 151
3040extern int regmap_read(struct regmap *map , unsigned int reg , unsigned int *val ) ;
3041#line 156
3042extern int regmap_update_bits(struct regmap *map , unsigned int reg , unsigned int mask ,
3043                              unsigned int val ) ;
3044#line 67 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3045__inline static int check_range(int min_uV , int max_uV )  __attribute__((__no_instrument_function__)) ;
3046#line 67 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3047__inline static int check_range(int min_uV , int max_uV ) 
3048{ 
3049
3050  {
3051#line 69
3052  if (min_uV < 750000) {
3053#line 71
3054    return (-22);
3055  } else
3056#line 69
3057  if (max_uV > 1380000) {
3058#line 71
3059    return (-22);
3060  } else
3061#line 69
3062  if (min_uV > max_uV) {
3063#line 71
3064    return (-22);
3065  } else {
3066
3067  }
3068#line 72
3069  return (0);
3070}
3071}
3072#line 75 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3073static int max8649_list_voltage(struct regulator_dev *rdev , unsigned int index ) 
3074{ unsigned int __cil_tmp3 ;
3075  unsigned int __cil_tmp4 ;
3076
3077  {
3078  {
3079#line 77
3080  __cil_tmp3 = index * 10000U;
3081#line 77
3082  __cil_tmp4 = 750000U + __cil_tmp3;
3083#line 77
3084  return ((int )__cil_tmp4);
3085  }
3086}
3087}
3088#line 80 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3089static int max8649_get_voltage(struct regulator_dev *rdev ) 
3090{ struct max8649_regulator_info *info ;
3091  void *tmp___7 ;
3092  unsigned int val ;
3093  unsigned char data ;
3094  int ret ;
3095  int tmp___8 ;
3096  unsigned long __cil_tmp8 ;
3097  unsigned long __cil_tmp9 ;
3098  struct regmap *__cil_tmp10 ;
3099  unsigned long __cil_tmp11 ;
3100  unsigned long __cil_tmp12 ;
3101  int __cil_tmp13 ;
3102  unsigned int __cil_tmp14 ;
3103  unsigned int *__cil_tmp15 ;
3104  unsigned int __cil_tmp16 ;
3105  unsigned char __cil_tmp17 ;
3106  int __cil_tmp18 ;
3107  int __cil_tmp19 ;
3108  unsigned int __cil_tmp20 ;
3109
3110  {
3111  {
3112#line 82
3113  tmp___7 = rdev_get_drvdata(rdev);
3114#line 82
3115  info = (struct max8649_regulator_info *)tmp___7;
3116#line 87
3117  __cil_tmp8 = (unsigned long )info;
3118#line 87
3119  __cil_tmp9 = __cil_tmp8 + 16;
3120#line 87
3121  __cil_tmp10 = *((struct regmap **)__cil_tmp9);
3122#line 87
3123  __cil_tmp11 = (unsigned long )info;
3124#line 87
3125  __cil_tmp12 = __cil_tmp11 + 24;
3126#line 87
3127  __cil_tmp13 = *((int *)__cil_tmp12);
3128#line 87
3129  __cil_tmp14 = (unsigned int )__cil_tmp13;
3130#line 87
3131  ret = regmap_read(__cil_tmp10, __cil_tmp14, & val);
3132  }
3133#line 88
3134  if (ret != 0) {
3135#line 89
3136    return (ret);
3137  } else {
3138
3139  }
3140  {
3141#line 90
3142  __cil_tmp15 = & val;
3143#line 90
3144  __cil_tmp16 = *__cil_tmp15;
3145#line 90
3146  __cil_tmp17 = (unsigned char )__cil_tmp16;
3147#line 90
3148  __cil_tmp18 = (int )__cil_tmp17;
3149#line 90
3150  __cil_tmp19 = __cil_tmp18 & 63;
3151#line 90
3152  data = (unsigned char )__cil_tmp19;
3153#line 91
3154  __cil_tmp20 = (unsigned int )data;
3155#line 91
3156  tmp___8 = max8649_list_voltage(rdev, __cil_tmp20);
3157  }
3158#line 91
3159  return (tmp___8);
3160}
3161}
3162#line 94 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3163static int max8649_set_voltage(struct regulator_dev *rdev , int min_uV , int max_uV ,
3164                               unsigned int *selector ) 
3165{ struct max8649_regulator_info *info ;
3166  void *tmp___7 ;
3167  unsigned char data ;
3168  unsigned char mask ;
3169  int tmp___8 ;
3170  int tmp___9 ;
3171  unsigned long __cil_tmp11 ;
3172  unsigned long __cil_tmp12 ;
3173  struct device *__cil_tmp13 ;
3174  struct device  const  *__cil_tmp14 ;
3175  int __cil_tmp15 ;
3176  int __cil_tmp16 ;
3177  int __cil_tmp17 ;
3178  int __cil_tmp18 ;
3179  int __cil_tmp19 ;
3180  int __cil_tmp20 ;
3181  int __cil_tmp21 ;
3182  unsigned long __cil_tmp22 ;
3183  unsigned long __cil_tmp23 ;
3184  struct regmap *__cil_tmp24 ;
3185  unsigned long __cil_tmp25 ;
3186  unsigned long __cil_tmp26 ;
3187  int __cil_tmp27 ;
3188  unsigned int __cil_tmp28 ;
3189  unsigned int __cil_tmp29 ;
3190  unsigned int __cil_tmp30 ;
3191
3192  {
3193  {
3194#line 97
3195  tmp___7 = rdev_get_drvdata(rdev);
3196#line 97
3197  info = (struct max8649_regulator_info *)tmp___7;
3198#line 100
3199  tmp___8 = check_range(min_uV, max_uV);
3200  }
3201#line 100
3202  if (tmp___8) {
3203    {
3204#line 101
3205    __cil_tmp11 = (unsigned long )info;
3206#line 101
3207    __cil_tmp12 = __cil_tmp11 + 8;
3208#line 101
3209    __cil_tmp13 = *((struct device **)__cil_tmp12);
3210#line 101
3211    __cil_tmp14 = (struct device  const  *)__cil_tmp13;
3212#line 101
3213    dev_err(__cil_tmp14, "invalid voltage range (%d, %d) uV\n", min_uV, max_uV);
3214    }
3215#line 103
3216    return (-22);
3217  } else {
3218
3219  }
3220  {
3221#line 105
3222  __cil_tmp15 = min_uV - 750000;
3223#line 105
3224  __cil_tmp16 = __cil_tmp15 + 10000;
3225#line 105
3226  __cil_tmp17 = __cil_tmp16 - 1;
3227#line 105
3228  __cil_tmp18 = __cil_tmp17 / 10000;
3229#line 105
3230  data = (unsigned char )__cil_tmp18;
3231#line 106
3232  mask = (unsigned char)63;
3233#line 107
3234  __cil_tmp19 = (int )mask;
3235#line 107
3236  __cil_tmp20 = (int )data;
3237#line 107
3238  __cil_tmp21 = __cil_tmp20 & __cil_tmp19;
3239#line 107
3240  *selector = (unsigned int )__cil_tmp21;
3241#line 109
3242  __cil_tmp22 = (unsigned long )info;
3243#line 109
3244  __cil_tmp23 = __cil_tmp22 + 16;
3245#line 109
3246  __cil_tmp24 = *((struct regmap **)__cil_tmp23);
3247#line 109
3248  __cil_tmp25 = (unsigned long )info;
3249#line 109
3250  __cil_tmp26 = __cil_tmp25 + 24;
3251#line 109
3252  __cil_tmp27 = *((int *)__cil_tmp26);
3253#line 109
3254  __cil_tmp28 = (unsigned int )__cil_tmp27;
3255#line 109
3256  __cil_tmp29 = (unsigned int )mask;
3257#line 109
3258  __cil_tmp30 = (unsigned int )data;
3259#line 109
3260  tmp___9 = regmap_update_bits(__cil_tmp24, __cil_tmp28, __cil_tmp29, __cil_tmp30);
3261  }
3262#line 109
3263  return (tmp___9);
3264}
3265}
3266#line 113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3267static int max8649_enable(struct regulator_dev *rdev ) 
3268{ struct max8649_regulator_info *info ;
3269  void *tmp___7 ;
3270  int tmp___8 ;
3271  unsigned long __cil_tmp5 ;
3272  unsigned long __cil_tmp6 ;
3273  struct regmap *__cil_tmp7 ;
3274  int __cil_tmp8 ;
3275  unsigned int __cil_tmp9 ;
3276
3277  {
3278  {
3279#line 115
3280  tmp___7 = rdev_get_drvdata(rdev);
3281#line 115
3282  info = (struct max8649_regulator_info *)tmp___7;
3283#line 116
3284  __cil_tmp5 = (unsigned long )info;
3285#line 116
3286  __cil_tmp6 = __cil_tmp5 + 16;
3287#line 116
3288  __cil_tmp7 = *((struct regmap **)__cil_tmp6);
3289#line 116
3290  __cil_tmp8 = 1 << 7;
3291#line 116
3292  __cil_tmp9 = (unsigned int )__cil_tmp8;
3293#line 116
3294  tmp___8 = regmap_update_bits(__cil_tmp7, 4U, __cil_tmp9, 0U);
3295  }
3296#line 116
3297  return (tmp___8);
3298}
3299}
3300#line 123 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3301static int max8649_disable(struct regulator_dev *rdev ) 
3302{ struct max8649_regulator_info *info ;
3303  void *tmp___7 ;
3304  int tmp___8 ;
3305  unsigned long __cil_tmp5 ;
3306  unsigned long __cil_tmp6 ;
3307  struct regmap *__cil_tmp7 ;
3308  int __cil_tmp8 ;
3309  unsigned int __cil_tmp9 ;
3310  int __cil_tmp10 ;
3311  unsigned int __cil_tmp11 ;
3312
3313  {
3314  {
3315#line 125
3316  tmp___7 = rdev_get_drvdata(rdev);
3317#line 125
3318  info = (struct max8649_regulator_info *)tmp___7;
3319#line 126
3320  __cil_tmp5 = (unsigned long )info;
3321#line 126
3322  __cil_tmp6 = __cil_tmp5 + 16;
3323#line 126
3324  __cil_tmp7 = *((struct regmap **)__cil_tmp6);
3325#line 126
3326  __cil_tmp8 = 1 << 7;
3327#line 126
3328  __cil_tmp9 = (unsigned int )__cil_tmp8;
3329#line 126
3330  __cil_tmp10 = 1 << 7;
3331#line 126
3332  __cil_tmp11 = (unsigned int )__cil_tmp10;
3333#line 126
3334  tmp___8 = regmap_update_bits(__cil_tmp7, 4U, __cil_tmp9, __cil_tmp11);
3335  }
3336#line 126
3337  return (tmp___8);
3338}
3339}
3340#line 130 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3341static int max8649_is_enabled(struct regulator_dev *rdev ) 
3342{ struct max8649_regulator_info *info ;
3343  void *tmp___7 ;
3344  unsigned int val ;
3345  int ret ;
3346  unsigned long __cil_tmp6 ;
3347  unsigned long __cil_tmp7 ;
3348  struct regmap *__cil_tmp8 ;
3349  int __cil_tmp9 ;
3350  unsigned int *__cil_tmp10 ;
3351  unsigned int __cil_tmp11 ;
3352  unsigned char __cil_tmp12 ;
3353  int __cil_tmp13 ;
3354  int __cil_tmp14 ;
3355
3356  {
3357  {
3358#line 132
3359  tmp___7 = rdev_get_drvdata(rdev);
3360#line 132
3361  info = (struct max8649_regulator_info *)tmp___7;
3362#line 136
3363  __cil_tmp6 = (unsigned long )info;
3364#line 136
3365  __cil_tmp7 = __cil_tmp6 + 16;
3366#line 136
3367  __cil_tmp8 = *((struct regmap **)__cil_tmp7);
3368#line 136
3369  ret = regmap_read(__cil_tmp8, 4U, & val);
3370  }
3371#line 137
3372  if (ret != 0) {
3373#line 138
3374    return (ret);
3375  } else {
3376
3377  }
3378  {
3379#line 139
3380  __cil_tmp9 = 1 << 7;
3381#line 139
3382  __cil_tmp10 = & val;
3383#line 139
3384  __cil_tmp11 = *__cil_tmp10;
3385#line 139
3386  __cil_tmp12 = (unsigned char )__cil_tmp11;
3387#line 139
3388  __cil_tmp13 = (int )__cil_tmp12;
3389#line 139
3390  __cil_tmp14 = __cil_tmp13 & __cil_tmp9;
3391#line 139
3392  return (! __cil_tmp14);
3393  }
3394}
3395}
3396#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3397static int max8649_enable_time(struct regulator_dev *rdev ) 
3398{ struct max8649_regulator_info *info ;
3399  void *tmp___7 ;
3400  int voltage ;
3401  int rate ;
3402  int ret ;
3403  unsigned int val ;
3404  unsigned long __cil_tmp8 ;
3405  unsigned long __cil_tmp9 ;
3406  struct regmap *__cil_tmp10 ;
3407  unsigned long __cil_tmp11 ;
3408  unsigned long __cil_tmp12 ;
3409  int __cil_tmp13 ;
3410  unsigned int __cil_tmp14 ;
3411  unsigned int *__cil_tmp15 ;
3412  unsigned int *__cil_tmp16 ;
3413  unsigned int __cil_tmp17 ;
3414  unsigned int *__cil_tmp18 ;
3415  unsigned int __cil_tmp19 ;
3416  unsigned char __cil_tmp20 ;
3417  unsigned int __cil_tmp21 ;
3418  unsigned long __cil_tmp22 ;
3419  unsigned long __cil_tmp23 ;
3420  struct regmap *__cil_tmp24 ;
3421  int __cil_tmp25 ;
3422  unsigned int __cil_tmp26 ;
3423  unsigned int *__cil_tmp27 ;
3424  unsigned int __cil_tmp28 ;
3425  unsigned int __cil_tmp29 ;
3426  unsigned int __cil_tmp30 ;
3427  int __cil_tmp31 ;
3428  int __cil_tmp32 ;
3429
3430  {
3431  {
3432#line 144
3433  tmp___7 = rdev_get_drvdata(rdev);
3434#line 144
3435  info = (struct max8649_regulator_info *)tmp___7;
3436#line 149
3437  __cil_tmp8 = (unsigned long )info;
3438#line 149
3439  __cil_tmp9 = __cil_tmp8 + 16;
3440#line 149
3441  __cil_tmp10 = *((struct regmap **)__cil_tmp9);
3442#line 149
3443  __cil_tmp11 = (unsigned long )info;
3444#line 149
3445  __cil_tmp12 = __cil_tmp11 + 24;
3446#line 149
3447  __cil_tmp13 = *((int *)__cil_tmp12);
3448#line 149
3449  __cil_tmp14 = (unsigned int )__cil_tmp13;
3450#line 149
3451  ret = regmap_read(__cil_tmp10, __cil_tmp14, & val);
3452  }
3453#line 150
3454  if (ret != 0) {
3455#line 151
3456    return (ret);
3457  } else {
3458
3459  }
3460  {
3461#line 152
3462  __cil_tmp15 = & val;
3463#line 152
3464  __cil_tmp16 = & val;
3465#line 152
3466  __cil_tmp17 = *__cil_tmp16;
3467#line 152
3468  *__cil_tmp15 = __cil_tmp17 & 63U;
3469#line 153
3470  __cil_tmp18 = & val;
3471#line 153
3472  __cil_tmp19 = *__cil_tmp18;
3473#line 153
3474  __cil_tmp20 = (unsigned char )__cil_tmp19;
3475#line 153
3476  __cil_tmp21 = (unsigned int )__cil_tmp20;
3477#line 153
3478  voltage = max8649_list_voltage(rdev, __cil_tmp21);
3479#line 156
3480  __cil_tmp22 = (unsigned long )info;
3481#line 156
3482  __cil_tmp23 = __cil_tmp22 + 16;
3483#line 156
3484  __cil_tmp24 = *((struct regmap **)__cil_tmp23);
3485#line 156
3486  ret = regmap_read(__cil_tmp24, 6U, & val);
3487  }
3488#line 157
3489  if (ret != 0) {
3490#line 158
3491    return (ret);
3492  } else {
3493
3494  }
3495#line 159
3496  __cil_tmp25 = 7 << 5;
3497#line 159
3498  __cil_tmp26 = (unsigned int )__cil_tmp25;
3499#line 159
3500  __cil_tmp27 = & val;
3501#line 159
3502  __cil_tmp28 = *__cil_tmp27;
3503#line 159
3504  __cil_tmp29 = __cil_tmp28 & __cil_tmp26;
3505#line 159
3506  __cil_tmp30 = __cil_tmp29 >> 5;
3507#line 159
3508  ret = (int )__cil_tmp30;
3509#line 160
3510  rate = 32000 >> ret;
3511  {
3512#line 162
3513  __cil_tmp31 = voltage + rate;
3514#line 162
3515  __cil_tmp32 = __cil_tmp31 - 1;
3516#line 162
3517  return (__cil_tmp32 / rate);
3518  }
3519}
3520}
3521#line 165 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3522static int max8649_set_mode(struct regulator_dev *rdev , unsigned int mode ) 
3523{ struct max8649_regulator_info *info ;
3524  void *tmp___7 ;
3525  unsigned long __cil_tmp5 ;
3526  unsigned long __cil_tmp6 ;
3527  struct regmap *__cil_tmp7 ;
3528  unsigned long __cil_tmp8 ;
3529  unsigned long __cil_tmp9 ;
3530  int __cil_tmp10 ;
3531  unsigned int __cil_tmp11 ;
3532  int __cil_tmp12 ;
3533  unsigned int __cil_tmp13 ;
3534  int __cil_tmp14 ;
3535  unsigned int __cil_tmp15 ;
3536  unsigned long __cil_tmp16 ;
3537  unsigned long __cil_tmp17 ;
3538  struct regmap *__cil_tmp18 ;
3539  unsigned long __cil_tmp19 ;
3540  unsigned long __cil_tmp20 ;
3541  int __cil_tmp21 ;
3542  unsigned int __cil_tmp22 ;
3543  int __cil_tmp23 ;
3544  unsigned int __cil_tmp24 ;
3545
3546  {
3547  {
3548#line 167
3549  tmp___7 = rdev_get_drvdata(rdev);
3550#line 167
3551  info = (struct max8649_regulator_info *)tmp___7;
3552  }
3553#line 170
3554  if ((int )mode == 1) {
3555#line 170
3556    goto case_1;
3557  } else
3558#line 174
3559  if ((int )mode == 2) {
3560#line 174
3561    goto case_2;
3562  } else {
3563    {
3564#line 178
3565    goto switch_default;
3566#line 169
3567    if (0) {
3568      case_1: /* CIL Label */ 
3569      {
3570#line 171
3571      __cil_tmp5 = (unsigned long )info;
3572#line 171
3573      __cil_tmp6 = __cil_tmp5 + 16;
3574#line 171
3575      __cil_tmp7 = *((struct regmap **)__cil_tmp6);
3576#line 171
3577      __cil_tmp8 = (unsigned long )info;
3578#line 171
3579      __cil_tmp9 = __cil_tmp8 + 24;
3580#line 171
3581      __cil_tmp10 = *((int *)__cil_tmp9);
3582#line 171
3583      __cil_tmp11 = (unsigned int )__cil_tmp10;
3584#line 171
3585      __cil_tmp12 = 1 << 7;
3586#line 171
3587      __cil_tmp13 = (unsigned int )__cil_tmp12;
3588#line 171
3589      __cil_tmp14 = 1 << 7;
3590#line 171
3591      __cil_tmp15 = (unsigned int )__cil_tmp14;
3592#line 171
3593      regmap_update_bits(__cil_tmp7, __cil_tmp11, __cil_tmp13, __cil_tmp15);
3594      }
3595#line 173
3596      goto switch_break;
3597      case_2: /* CIL Label */ 
3598      {
3599#line 175
3600      __cil_tmp16 = (unsigned long )info;
3601#line 175
3602      __cil_tmp17 = __cil_tmp16 + 16;
3603#line 175
3604      __cil_tmp18 = *((struct regmap **)__cil_tmp17);
3605#line 175
3606      __cil_tmp19 = (unsigned long )info;
3607#line 175
3608      __cil_tmp20 = __cil_tmp19 + 24;
3609#line 175
3610      __cil_tmp21 = *((int *)__cil_tmp20);
3611#line 175
3612      __cil_tmp22 = (unsigned int )__cil_tmp21;
3613#line 175
3614      __cil_tmp23 = 1 << 7;
3615#line 175
3616      __cil_tmp24 = (unsigned int )__cil_tmp23;
3617#line 175
3618      regmap_update_bits(__cil_tmp18, __cil_tmp22, __cil_tmp24, 0U);
3619      }
3620#line 177
3621      goto switch_break;
3622      switch_default: /* CIL Label */ 
3623#line 179
3624      return (-22);
3625    } else {
3626      switch_break: /* CIL Label */ ;
3627    }
3628    }
3629  }
3630#line 181
3631  return (0);
3632}
3633}
3634#line 184 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3635static unsigned int max8649_get_mode(struct regulator_dev *rdev ) 
3636{ struct max8649_regulator_info *info ;
3637  void *tmp___7 ;
3638  unsigned int val ;
3639  int ret ;
3640  unsigned long __cil_tmp6 ;
3641  unsigned long __cil_tmp7 ;
3642  struct regmap *__cil_tmp8 ;
3643  unsigned long __cil_tmp9 ;
3644  unsigned long __cil_tmp10 ;
3645  int __cil_tmp11 ;
3646  unsigned int __cil_tmp12 ;
3647  int __cil_tmp13 ;
3648  unsigned int __cil_tmp14 ;
3649  unsigned int *__cil_tmp15 ;
3650  unsigned int __cil_tmp16 ;
3651
3652  {
3653  {
3654#line 186
3655  tmp___7 = rdev_get_drvdata(rdev);
3656#line 186
3657  info = (struct max8649_regulator_info *)tmp___7;
3658#line 190
3659  __cil_tmp6 = (unsigned long )info;
3660#line 190
3661  __cil_tmp7 = __cil_tmp6 + 16;
3662#line 190
3663  __cil_tmp8 = *((struct regmap **)__cil_tmp7);
3664#line 190
3665  __cil_tmp9 = (unsigned long )info;
3666#line 190
3667  __cil_tmp10 = __cil_tmp9 + 24;
3668#line 190
3669  __cil_tmp11 = *((int *)__cil_tmp10);
3670#line 190
3671  __cil_tmp12 = (unsigned int )__cil_tmp11;
3672#line 190
3673  ret = regmap_read(__cil_tmp8, __cil_tmp12, & val);
3674  }
3675#line 191
3676  if (ret != 0) {
3677#line 192
3678    return ((unsigned int )ret);
3679  } else {
3680
3681  }
3682  {
3683#line 193
3684  __cil_tmp13 = 1 << 7;
3685#line 193
3686  __cil_tmp14 = (unsigned int )__cil_tmp13;
3687#line 193
3688  __cil_tmp15 = & val;
3689#line 193
3690  __cil_tmp16 = *__cil_tmp15;
3691#line 193
3692  if (__cil_tmp16 & __cil_tmp14) {
3693#line 194
3694    return (1U);
3695  } else {
3696
3697  }
3698  }
3699#line 195
3700  return (2U);
3701}
3702}
3703#line 198 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3704static struct regulator_ops max8649_dcdc_ops  = 
3705#line 198
3706     {& max8649_list_voltage, & max8649_set_voltage, (int (*)(struct regulator_dev * ,
3707                                                            unsigned int selector ))0,
3708    & max8649_get_voltage, (int (*)(struct regulator_dev * ))0, (int (*)(struct regulator_dev * ,
3709                                                                         int min_uA ,
3710                                                                         int max_uA ))0,
3711    (int (*)(struct regulator_dev * ))0, & max8649_enable, & max8649_disable, & max8649_is_enabled,
3712    & max8649_set_mode, & max8649_get_mode, & max8649_enable_time, (int (*)(struct regulator_dev * ,
3713                                                                            unsigned int old_selector ,
3714                                                                            unsigned int new_selector ))0,
3715    (int (*)(struct regulator_dev * ))0, (unsigned int (*)(struct regulator_dev * ,
3716                                                           int input_uV , int output_uV ,
3717                                                           int load_uA ))0, (int (*)(struct regulator_dev * ,
3718                                                                                     int uV ))0,
3719    (int (*)(struct regulator_dev * ))0, (int (*)(struct regulator_dev * ))0, (int (*)(struct regulator_dev * ,
3720                                                                                       unsigned int mode ))0};
3721#line 211 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3722static struct regulator_desc dcdc_desc  = 
3723#line 211
3724     {"max8649", (char const   *)0, 0, (unsigned int )(1 << 6), & max8649_dcdc_ops,
3725    0, (enum regulator_type )0, & __this_module};
3726#line 219 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3727static struct regmap_config max8649_regmap_config  = 
3728#line 219
3729     {8, 0, 8, (bool (*)(struct device *dev , unsigned int reg ))0, (bool (*)(struct device *dev ,
3730                                                                            unsigned int reg ))0,
3731    (bool (*)(struct device *dev , unsigned int reg ))0, (bool (*)(struct device *dev ,
3732                                                                   unsigned int reg ))0,
3733    0U, (struct reg_default  const  *)0, 0U, 0, (void const   *)0, 0U, (unsigned char)0,
3734    (unsigned char)0};
3735#line 224
3736static int max8649_regulator_probe(struct i2c_client *client , struct i2c_device_id  const  *id )  __attribute__((__section__(".devinit.text"),
3737__no_instrument_function__)) ;
3738#line 224 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
3739static int max8649_regulator_probe(struct i2c_client *client , struct i2c_device_id  const  *id ) 
3740{ struct max8649_platform_data *pdata ;
3741  struct max8649_regulator_info *info ;
3742  unsigned int val ;
3743  unsigned char data ;
3744  int ret ;
3745  void *tmp___7 ;
3746  long tmp___8 ;
3747  long tmp___9 ;
3748  long tmp___10 ;
3749  long tmp___11 ;
3750  unsigned long __cil_tmp13 ;
3751  unsigned long __cil_tmp14 ;
3752  unsigned long __cil_tmp15 ;
3753  void *__cil_tmp16 ;
3754  void *__cil_tmp17 ;
3755  unsigned long __cil_tmp18 ;
3756  unsigned long __cil_tmp19 ;
3757  struct device *__cil_tmp20 ;
3758  struct device  const  *__cil_tmp21 ;
3759  unsigned long __cil_tmp22 ;
3760  unsigned long __cil_tmp23 ;
3761  struct regmap_config  const  *__cil_tmp24 ;
3762  unsigned long __cil_tmp25 ;
3763  unsigned long __cil_tmp26 ;
3764  struct regmap *__cil_tmp27 ;
3765  void const   *__cil_tmp28 ;
3766  unsigned long __cil_tmp29 ;
3767  unsigned long __cil_tmp30 ;
3768  struct regmap *__cil_tmp31 ;
3769  void const   *__cil_tmp32 ;
3770  unsigned long __cil_tmp33 ;
3771  unsigned long __cil_tmp34 ;
3772  struct device *__cil_tmp35 ;
3773  struct device  const  *__cil_tmp36 ;
3774  unsigned long __cil_tmp37 ;
3775  unsigned long __cil_tmp38 ;
3776  unsigned long __cil_tmp39 ;
3777  unsigned long __cil_tmp40 ;
3778  void *__cil_tmp41 ;
3779  unsigned long __cil_tmp42 ;
3780  unsigned long __cil_tmp43 ;
3781  unsigned long __cil_tmp44 ;
3782  unsigned long __cil_tmp45 ;
3783  unsigned long __cil_tmp46 ;
3784  unsigned long __cil_tmp47 ;
3785  unsigned int __cil_tmp48 ;
3786  unsigned long __cil_tmp49 ;
3787  unsigned long __cil_tmp50 ;
3788  unsigned long __cil_tmp51 ;
3789  unsigned long __cil_tmp52 ;
3790  unsigned long __cil_tmp53 ;
3791  unsigned long __cil_tmp54 ;
3792  unsigned long __cil_tmp55 ;
3793  unsigned long __cil_tmp56 ;
3794  unsigned long __cil_tmp57 ;
3795  unsigned long __cil_tmp58 ;
3796  struct regmap *__cil_tmp59 ;
3797  unsigned long __cil_tmp60 ;
3798  unsigned long __cil_tmp61 ;
3799  struct device *__cil_tmp62 ;
3800  struct device  const  *__cil_tmp63 ;
3801  unsigned long __cil_tmp64 ;
3802  unsigned long __cil_tmp65 ;
3803  struct device *__cil_tmp66 ;
3804  struct device  const  *__cil_tmp67 ;
3805  unsigned int *__cil_tmp68 ;
3806  unsigned int __cil_tmp69 ;
3807  unsigned long __cil_tmp70 ;
3808  unsigned long __cil_tmp71 ;
3809  struct regmap *__cil_tmp72 ;
3810  int __cil_tmp73 ;
3811  unsigned int __cil_tmp74 ;
3812  int __cil_tmp75 ;
3813  unsigned long __cil_tmp76 ;
3814  unsigned long __cil_tmp77 ;
3815  struct regmap *__cil_tmp78 ;
3816  unsigned long __cil_tmp79 ;
3817  unsigned long __cil_tmp80 ;
3818  int __cil_tmp81 ;
3819  unsigned int __cil_tmp82 ;
3820  int __cil_tmp83 ;
3821  unsigned int __cil_tmp84 ;
3822  unsigned int __cil_tmp85 ;
3823  unsigned long __cil_tmp86 ;
3824  unsigned long __cil_tmp87 ;
3825  struct regmap *__cil_tmp88 ;
3826  int __cil_tmp89 ;
3827  unsigned int __cil_tmp90 ;
3828  unsigned int __cil_tmp91 ;
3829  unsigned int __cil_tmp92 ;
3830  unsigned long __cil_tmp93 ;
3831  unsigned long __cil_tmp94 ;
3832  struct regmap *__cil_tmp95 ;
3833  int __cil_tmp96 ;
3834  unsigned int __cil_tmp97 ;
3835  unsigned int __cil_tmp98 ;
3836  unsigned int __cil_tmp99 ;
3837  unsigned long __cil_tmp100 ;
3838  unsigned long __cil_tmp101 ;
3839  unsigned long __cil_tmp102 ;
3840  unsigned long __cil_tmp103 ;
3841  unsigned long __cil_tmp104 ;
3842  unsigned long __cil_tmp105 ;
3843  unsigned long __cil_tmp106 ;
3844  unsigned long __cil_tmp107 ;
3845  struct regmap *__cil_tmp108 ;
3846  int __cil_tmp109 ;
3847  unsigned int __cil_tmp110 ;
3848  int __cil_tmp111 ;
3849  unsigned int __cil_tmp112 ;
3850  unsigned long __cil_tmp113 ;
3851  unsigned long __cil_tmp114 ;
3852  struct device *__cil_tmp115 ;
3853  struct regulator_init_data *__cil_tmp116 ;
3854  struct regulator_init_data  const  *__cil_tmp117 ;
3855  void *__cil_tmp118 ;
3856  void *__cil_tmp119 ;
3857  struct device_node *__cil_tmp120 ;
3858  struct regulator_dev *__cil_tmp121 ;
3859  void const   *__cil_tmp122 ;
3860  unsigned long __cil_tmp123 ;
3861  unsigned long __cil_tmp124 ;
3862  struct device *__cil_tmp125 ;
3863  struct device  const  *__cil_tmp126 ;
3864  struct regulator_desc *__cil_tmp127 ;
3865  char const   *__cil_tmp128 ;
3866  struct regulator_dev *__cil_tmp129 ;
3867  void const   *__cil_tmp130 ;
3868  unsigned long __cil_tmp131 ;
3869  unsigned long __cil_tmp132 ;
3870  struct device *__cil_tmp133 ;
3871  struct device  const  *__cil_tmp134 ;
3872  unsigned long __cil_tmp135 ;
3873  unsigned long __cil_tmp136 ;
3874  struct regmap *__cil_tmp137 ;
3875  void const   *__cil_tmp138 ;
3876
3877  {
3878  {
3879#line 227
3880  __cil_tmp13 = 40 + 184;
3881#line 227
3882  __cil_tmp14 = (unsigned long )client;
3883#line 227
3884  __cil_tmp15 = __cil_tmp14 + __cil_tmp13;
3885#line 227
3886  __cil_tmp16 = *((void **)__cil_tmp15);
3887#line 227
3888  pdata = (struct max8649_platform_data *)__cil_tmp16;
3889#line 228
3890  __cil_tmp17 = (void *)0;
3891#line 228
3892  info = (struct max8649_regulator_info *)__cil_tmp17;
3893#line 233
3894  tmp___7 = kzalloc(32UL, 208U);
3895#line 233
3896  info = (struct max8649_regulator_info *)tmp___7;
3897  }
3898#line 234
3899  if (! info) {
3900    {
3901#line 235
3902    __cil_tmp18 = (unsigned long )client;
3903#line 235
3904    __cil_tmp19 = __cil_tmp18 + 40;
3905#line 235
3906    __cil_tmp20 = (struct device *)__cil_tmp19;
3907#line 235
3908    __cil_tmp21 = (struct device  const  *)__cil_tmp20;
3909#line 235
3910    dev_err(__cil_tmp21, "No enough memory\n");
3911    }
3912#line 236
3913    return (-12);
3914  } else {
3915
3916  }
3917  {
3918#line 239
3919  __cil_tmp22 = (unsigned long )info;
3920#line 239
3921  __cil_tmp23 = __cil_tmp22 + 16;
3922#line 239
3923  __cil_tmp24 = (struct regmap_config  const  *)(& max8649_regmap_config);
3924#line 239
3925  *((struct regmap **)__cil_tmp23) = regmap_init_i2c(client, __cil_tmp24);
3926#line 240
3927  __cil_tmp25 = (unsigned long )info;
3928#line 240
3929  __cil_tmp26 = __cil_tmp25 + 16;
3930#line 240
3931  __cil_tmp27 = *((struct regmap **)__cil_tmp26);
3932#line 240
3933  __cil_tmp28 = (void const   *)__cil_tmp27;
3934#line 240
3935  tmp___9 = (long )IS_ERR(__cil_tmp28);
3936  }
3937#line 240
3938  if (tmp___9) {
3939    {
3940#line 241
3941    __cil_tmp29 = (unsigned long )info;
3942#line 241
3943    __cil_tmp30 = __cil_tmp29 + 16;
3944#line 241
3945    __cil_tmp31 = *((struct regmap **)__cil_tmp30);
3946#line 241
3947    __cil_tmp32 = (void const   *)__cil_tmp31;
3948#line 241
3949    tmp___8 = (long )PTR_ERR(__cil_tmp32);
3950#line 241
3951    ret = (int )tmp___8;
3952#line 242
3953    __cil_tmp33 = (unsigned long )client;
3954#line 242
3955    __cil_tmp34 = __cil_tmp33 + 40;
3956#line 242
3957    __cil_tmp35 = (struct device *)__cil_tmp34;
3958#line 242
3959    __cil_tmp36 = (struct device  const  *)__cil_tmp35;
3960#line 242
3961    dev_err(__cil_tmp36, "Failed to allocate register map: %d\n", ret);
3962    }
3963#line 243
3964    goto fail;
3965  } else {
3966
3967  }
3968  {
3969#line 246
3970  __cil_tmp37 = (unsigned long )info;
3971#line 246
3972  __cil_tmp38 = __cil_tmp37 + 8;
3973#line 246
3974  __cil_tmp39 = (unsigned long )client;
3975#line 246
3976  __cil_tmp40 = __cil_tmp39 + 40;
3977#line 246
3978  *((struct device **)__cil_tmp38) = (struct device *)__cil_tmp40;
3979#line 247
3980  __cil_tmp41 = (void *)info;
3981#line 247
3982  i2c_set_clientdata(client, __cil_tmp41);
3983#line 249
3984  __cil_tmp42 = (unsigned long )info;
3985#line 249
3986  __cil_tmp43 = __cil_tmp42 + 28;
3987#line 249
3988  __cil_tmp44 = (unsigned long )pdata;
3989#line 249
3990  __cil_tmp45 = __cil_tmp44 + 8;
3991#line 249
3992  *((unsigned int *)__cil_tmp43) = *((unsigned int *)__cil_tmp45);
3993  }
3994  {
3995#line 250
3996  __cil_tmp46 = (unsigned long )info;
3997#line 250
3998  __cil_tmp47 = __cil_tmp46 + 28;
3999#line 250
4000  __cil_tmp48 = *((unsigned int *)__cil_tmp47);
4001#line 251
4002  if ((int )__cil_tmp48 == 0) {
4003#line 251
4004    goto case_0;
4005  } else
4006#line 254
4007  if ((int )__cil_tmp48 == 1) {
4008#line 254
4009    goto case_1;
4010  } else
4011#line 257
4012  if ((int )__cil_tmp48 == 2) {
4013#line 257
4014    goto case_2;
4015  } else
4016#line 260
4017  if ((int )__cil_tmp48 == 3) {
4018#line 260
4019    goto case_3;
4020  } else {
4021    {
4022#line 263
4023    goto switch_default;
4024#line 250
4025    if (0) {
4026      case_0: /* CIL Label */ 
4027#line 252
4028      __cil_tmp49 = (unsigned long )info;
4029#line 252
4030      __cil_tmp50 = __cil_tmp49 + 24;
4031#line 252
4032      *((int *)__cil_tmp50) = 0;
4033#line 253
4034      goto switch_break;
4035      case_1: /* CIL Label */ 
4036#line 255
4037      __cil_tmp51 = (unsigned long )info;
4038#line 255
4039      __cil_tmp52 = __cil_tmp51 + 24;
4040#line 255
4041      *((int *)__cil_tmp52) = 1;
4042#line 256
4043      goto switch_break;
4044      case_2: /* CIL Label */ 
4045#line 258
4046      __cil_tmp53 = (unsigned long )info;
4047#line 258
4048      __cil_tmp54 = __cil_tmp53 + 24;
4049#line 258
4050      *((int *)__cil_tmp54) = 2;
4051#line 259
4052      goto switch_break;
4053      case_3: /* CIL Label */ 
4054#line 261
4055      __cil_tmp55 = (unsigned long )info;
4056#line 261
4057      __cil_tmp56 = __cil_tmp55 + 24;
4058#line 261
4059      *((int *)__cil_tmp56) = 3;
4060#line 262
4061      goto switch_break;
4062      switch_default: /* CIL Label */ 
4063#line 264
4064      goto switch_break;
4065    } else {
4066      switch_break: /* CIL Label */ ;
4067    }
4068    }
4069  }
4070  }
4071  {
4072#line 267
4073  __cil_tmp57 = (unsigned long )info;
4074#line 267
4075  __cil_tmp58 = __cil_tmp57 + 16;
4076#line 267
4077  __cil_tmp59 = *((struct regmap **)__cil_tmp58);
4078#line 267
4079  ret = regmap_read(__cil_tmp59, 8U, & val);
4080  }
4081#line 268
4082  if (ret != 0) {
4083    {
4084#line 269
4085    __cil_tmp60 = (unsigned long )info;
4086#line 269
4087    __cil_tmp61 = __cil_tmp60 + 8;
4088#line 269
4089    __cil_tmp62 = *((struct device **)__cil_tmp61);
4090#line 269
4091    __cil_tmp63 = (struct device  const  *)__cil_tmp62;
4092#line 269
4093    dev_err(__cil_tmp63, "Failed to detect ID of MAX8649:%d\n", ret);
4094    }
4095#line 271
4096    goto out;
4097  } else {
4098
4099  }
4100  {
4101#line 273
4102  __cil_tmp64 = (unsigned long )info;
4103#line 273
4104  __cil_tmp65 = __cil_tmp64 + 8;
4105#line 273
4106  __cil_tmp66 = *((struct device **)__cil_tmp65);
4107#line 273
4108  __cil_tmp67 = (struct device  const  *)__cil_tmp66;
4109#line 273
4110  __cil_tmp68 = & val;
4111#line 273
4112  __cil_tmp69 = *__cil_tmp68;
4113#line 273
4114  _dev_info(__cil_tmp67, "Detected MAX8649 (ID:%x)\n", __cil_tmp69);
4115#line 276
4116  __cil_tmp70 = (unsigned long )info;
4117#line 276
4118  __cil_tmp71 = __cil_tmp70 + 16;
4119#line 276
4120  __cil_tmp72 = *((struct regmap **)__cil_tmp71);
4121#line 276
4122  __cil_tmp73 = 3 << 5;
4123#line 276
4124  __cil_tmp74 = (unsigned int )__cil_tmp73;
4125#line 276
4126  regmap_update_bits(__cil_tmp72, 4U, __cil_tmp74, 0U);
4127#line 279
4128  info->extclk = pdata->extclk;
4129  }
4130#line 280
4131  if (info->extclk) {
4132#line 280
4133    __cil_tmp75 = 1 << 6;
4134#line 280
4135    data = (unsigned char )__cil_tmp75;
4136  } else {
4137#line 280
4138    data = (unsigned char)0;
4139  }
4140  {
4141#line 281
4142  __cil_tmp76 = (unsigned long )info;
4143#line 281
4144  __cil_tmp77 = __cil_tmp76 + 16;
4145#line 281
4146  __cil_tmp78 = *((struct regmap **)__cil_tmp77);
4147#line 281
4148  __cil_tmp79 = (unsigned long )info;
4149#line 281
4150  __cil_tmp80 = __cil_tmp79 + 24;
4151#line 281
4152  __cil_tmp81 = *((int *)__cil_tmp80);
4153#line 281
4154  __cil_tmp82 = (unsigned int )__cil_tmp81;
4155#line 281
4156  __cil_tmp83 = 1 << 6;
4157#line 281
4158  __cil_tmp84 = (unsigned int )__cil_tmp83;
4159#line 281
4160  __cil_tmp85 = (unsigned int )data;
4161#line 281
4162  regmap_update_bits(__cil_tmp78, __cil_tmp82, __cil_tmp84, __cil_tmp85);
4163  }
4164#line 282
4165  if (info->extclk) {
4166    {
4167#line 284
4168    info->extclk_freq = pdata->extclk_freq;
4169#line 285
4170    __cil_tmp86 = (unsigned long )info;
4171#line 285
4172    __cil_tmp87 = __cil_tmp86 + 16;
4173#line 285
4174    __cil_tmp88 = *((struct regmap **)__cil_tmp87);
4175#line 285
4176    __cil_tmp89 = 3 << 6;
4177#line 285
4178    __cil_tmp90 = (unsigned int )__cil_tmp89;
4179#line 285
4180    __cil_tmp91 = info->extclk_freq;
4181#line 285
4182    __cil_tmp92 = __cil_tmp91 << 6;
4183#line 285
4184    regmap_update_bits(__cil_tmp88, 5U, __cil_tmp90, __cil_tmp92);
4185    }
4186  } else {
4187
4188  }
4189#line 289
4190  if (pdata->ramp_timing) {
4191    {
4192#line 290
4193    info->ramp_timing = pdata->ramp_timing;
4194#line 291
4195    __cil_tmp93 = (unsigned long )info;
4196#line 291
4197    __cil_tmp94 = __cil_tmp93 + 16;
4198#line 291
4199    __cil_tmp95 = *((struct regmap **)__cil_tmp94);
4200#line 291
4201    __cil_tmp96 = 7 << 5;
4202#line 291
4203    __cil_tmp97 = (unsigned int )__cil_tmp96;
4204#line 291
4205    __cil_tmp98 = info->ramp_timing;
4206#line 291
4207    __cil_tmp99 = __cil_tmp98 << 5;
4208#line 291
4209    regmap_update_bits(__cil_tmp95, 6U, __cil_tmp97, __cil_tmp99);
4210    }
4211  } else {
4212
4213  }
4214#line 295
4215  __cil_tmp100 = (unsigned long )info;
4216#line 295
4217  __cil_tmp101 = __cil_tmp100 + 29;
4218#line 295
4219  __cil_tmp102 = (unsigned long )pdata;
4220#line 295
4221  __cil_tmp103 = __cil_tmp102 + 9;
4222#line 295
4223  *((unsigned int *)__cil_tmp101) = *((unsigned int *)__cil_tmp103);
4224  {
4225#line 296
4226  __cil_tmp104 = (unsigned long )info;
4227#line 296
4228  __cil_tmp105 = __cil_tmp104 + 29;
4229#line 296
4230  if (*((unsigned int *)__cil_tmp105)) {
4231    {
4232#line 297
4233    __cil_tmp106 = (unsigned long )info;
4234#line 297
4235    __cil_tmp107 = __cil_tmp106 + 16;
4236#line 297
4237    __cil_tmp108 = *((struct regmap **)__cil_tmp107);
4238#line 297
4239    __cil_tmp109 = 1 << 1;
4240#line 297
4241    __cil_tmp110 = (unsigned int )__cil_tmp109;
4242#line 297
4243    __cil_tmp111 = 1 << 1;
4244#line 297
4245    __cil_tmp112 = (unsigned int )__cil_tmp111;
4246#line 297
4247    regmap_update_bits(__cil_tmp108, 6U, __cil_tmp110, __cil_tmp112);
4248    }
4249  } else {
4250
4251  }
4252  }
4253  {
4254#line 301
4255  __cil_tmp113 = (unsigned long )client;
4256#line 301
4257  __cil_tmp114 = __cil_tmp113 + 40;
4258#line 301
4259  __cil_tmp115 = (struct device *)__cil_tmp114;
4260#line 301
4261  __cil_tmp116 = *((struct regulator_init_data **)pdata);
4262#line 301
4263  __cil_tmp117 = (struct regulator_init_data  const  *)__cil_tmp116;
4264#line 301
4265  __cil_tmp118 = (void *)info;
4266#line 301
4267  __cil_tmp119 = (void *)0;
4268#line 301
4269  __cil_tmp120 = (struct device_node *)__cil_tmp119;
4270#line 301
4271  *((struct regulator_dev **)info) = regulator_register(& dcdc_desc, __cil_tmp115,
4272                                                        __cil_tmp117, __cil_tmp118,
4273                                                        __cil_tmp120);
4274#line 303
4275  __cil_tmp121 = *((struct regulator_dev **)info);
4276#line 303
4277  __cil_tmp122 = (void const   *)__cil_tmp121;
4278#line 303
4279  tmp___11 = (long )IS_ERR(__cil_tmp122);
4280  }
4281#line 303
4282  if (tmp___11) {
4283    {
4284#line 304
4285    __cil_tmp123 = (unsigned long )info;
4286#line 304
4287    __cil_tmp124 = __cil_tmp123 + 8;
4288#line 304
4289    __cil_tmp125 = *((struct device **)__cil_tmp124);
4290#line 304
4291    __cil_tmp126 = (struct device  const  *)__cil_tmp125;
4292#line 304
4293    __cil_tmp127 = & dcdc_desc;
4294#line 304
4295    __cil_tmp128 = *((char const   **)__cil_tmp127);
4296#line 304
4297    dev_err(__cil_tmp126, "failed to register regulator %s\n", __cil_tmp128);
4298#line 306
4299    __cil_tmp129 = *((struct regulator_dev **)info);
4300#line 306
4301    __cil_tmp130 = (void const   *)__cil_tmp129;
4302#line 306
4303    tmp___10 = (long )PTR_ERR(__cil_tmp130);
4304#line 306
4305    ret = (int )tmp___10;
4306    }
4307#line 307
4308    goto out;
4309  } else {
4310
4311  }
4312  {
4313#line 310
4314  __cil_tmp131 = (unsigned long )info;
4315#line 310
4316  __cil_tmp132 = __cil_tmp131 + 8;
4317#line 310
4318  __cil_tmp133 = *((struct device **)__cil_tmp132);
4319#line 310
4320  __cil_tmp134 = (struct device  const  *)__cil_tmp133;
4321#line 310
4322  _dev_info(__cil_tmp134, "Max8649 regulator device is detected.\n");
4323  }
4324#line 311
4325  return (0);
4326  out: 
4327  {
4328#line 313
4329  __cil_tmp135 = (unsigned long )info;
4330#line 313
4331  __cil_tmp136 = __cil_tmp135 + 16;
4332#line 313
4333  __cil_tmp137 = *((struct regmap **)__cil_tmp136);
4334#line 313
4335  regmap_exit(__cil_tmp137);
4336  }
4337  fail: 
4338  {
4339#line 315
4340  __cil_tmp138 = (void const   *)info;
4341#line 315
4342  kfree(__cil_tmp138);
4343  }
4344#line 316
4345  return (ret);
4346}
4347}
4348#line 319
4349static int max8649_regulator_remove(struct i2c_client *client )  __attribute__((__section__(".devexit.text"),
4350__no_instrument_function__)) ;
4351#line 319 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4352static int max8649_regulator_remove(struct i2c_client *client ) 
4353{ struct max8649_regulator_info *info ;
4354  void *tmp___7 ;
4355  struct i2c_client  const  *__cil_tmp4 ;
4356  struct regulator_dev *__cil_tmp5 ;
4357  unsigned long __cil_tmp6 ;
4358  unsigned long __cil_tmp7 ;
4359  struct regmap *__cil_tmp8 ;
4360  void const   *__cil_tmp9 ;
4361
4362  {
4363  {
4364#line 321
4365  __cil_tmp4 = (struct i2c_client  const  *)client;
4366#line 321
4367  tmp___7 = i2c_get_clientdata(__cil_tmp4);
4368#line 321
4369  info = (struct max8649_regulator_info *)tmp___7;
4370  }
4371#line 323
4372  if (info) {
4373#line 324
4374    if (*((struct regulator_dev **)info)) {
4375      {
4376#line 325
4377      __cil_tmp5 = *((struct regulator_dev **)info);
4378#line 325
4379      regulator_unregister(__cil_tmp5);
4380      }
4381    } else {
4382
4383    }
4384    {
4385#line 326
4386    __cil_tmp6 = (unsigned long )info;
4387#line 326
4388    __cil_tmp7 = __cil_tmp6 + 16;
4389#line 326
4390    __cil_tmp8 = *((struct regmap **)__cil_tmp7);
4391#line 326
4392    regmap_exit(__cil_tmp8);
4393#line 327
4394    __cil_tmp9 = (void const   *)info;
4395#line 327
4396    kfree(__cil_tmp9);
4397    }
4398  } else {
4399
4400  }
4401#line 330
4402  return (0);
4403}
4404}
4405#line 333 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4406static struct i2c_device_id  const  max8649_id[1]  = {      {{(char )'m', (char )'a', (char )'x', (char )'8', (char )'6', (char )'4', (char )'9',
4407       (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4408       (char)0, (char)0, (char)0, (char)0, (char)0}, (kernel_ulong_t )0}};
4409#line 337
4410extern struct i2c_device_id  const  __mod_i2c_device_table  __attribute__((__unused__,
4411__alias__("max8649_id"))) ;
4412#line 339 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4413static struct i2c_driver max8649_driver  = 
4414#line 339
4415     {0U, (int (*)(struct i2c_adapter * ))0, (int (*)(struct i2c_adapter * ))0, & max8649_regulator_probe,
4416    & max8649_regulator_remove, (void (*)(struct i2c_client * ))0, (int (*)(struct i2c_client * ,
4417                                                                            pm_message_t mesg ))0,
4418    (int (*)(struct i2c_client * ))0, (void (*)(struct i2c_client * , unsigned int data ))0,
4419    (int (*)(struct i2c_client *client , unsigned int cmd , void *arg ))0, {"max8649",
4420                                                                            (struct bus_type *)0,
4421                                                                            (struct module *)0,
4422                                                                            (char const   *)0,
4423                                                                            (_Bool)0,
4424                                                                            (struct of_device_id  const  *)0,
4425                                                                            (int (*)(struct device *dev ))0,
4426                                                                            (int (*)(struct device *dev ))0,
4427                                                                            (void (*)(struct device *dev ))0,
4428                                                                            (int (*)(struct device *dev ,
4429                                                                                     pm_message_t state ))0,
4430                                                                            (int (*)(struct device *dev ))0,
4431                                                                            (struct attribute_group  const  **)0,
4432                                                                            (struct dev_pm_ops  const  *)0,
4433                                                                            (struct driver_private *)0},
4434    max8649_id, (int (*)(struct i2c_client * , struct i2c_board_info * ))0, (unsigned short const   *)0,
4435    {(struct list_head *)0, (struct list_head *)0}};
4436#line 348
4437static int max8649_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
4438#line 348 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4439static int max8649_init(void) 
4440{ int tmp___7 ;
4441
4442  {
4443  {
4444#line 350
4445  tmp___7 = i2c_register_driver(& __this_module, & max8649_driver);
4446  }
4447#line 350
4448  return (tmp___7);
4449}
4450}
4451#line 352 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4452int init_module(void) 
4453{ int tmp___7 ;
4454
4455  {
4456  {
4457#line 352
4458  tmp___7 = max8649_init();
4459  }
4460#line 352
4461  return (tmp___7);
4462}
4463}
4464#line 354
4465static void max8649_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
4466#line 354 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4467static void max8649_exit(void) 
4468{ 
4469
4470  {
4471  {
4472#line 356
4473  i2c_del_driver(& max8649_driver);
4474  }
4475#line 357
4476  return;
4477}
4478}
4479#line 358 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4480void cleanup_module(void) 
4481{ 
4482
4483  {
4484  {
4485#line 358
4486  max8649_exit();
4487  }
4488#line 358
4489  return;
4490}
4491}
4492#line 361 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4493static char const   __mod_description361[48]  __attribute__((__used__, __unused__,
4494__section__(".modinfo"), __aligned__(1)))  = 
4495#line 361
4496  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
4497        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
4498        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
4499        (char const   )'M',      (char const   )'A',      (char const   )'X',      (char const   )'I', 
4500        (char const   )'M',      (char const   )' ',      (char const   )'8',      (char const   )'6', 
4501        (char const   )'4',      (char const   )'9',      (char const   )' ',      (char const   )'v', 
4502        (char const   )'o',      (char const   )'l',      (char const   )'t',      (char const   )'a', 
4503        (char const   )'g',      (char const   )'e',      (char const   )' ',      (char const   )'r', 
4504        (char const   )'e',      (char const   )'g',      (char const   )'u',      (char const   )'l', 
4505        (char const   )'a',      (char const   )'t',      (char const   )'o',      (char const   )'r', 
4506        (char const   )' ',      (char const   )'d',      (char const   )'r',      (char const   )'i', 
4507        (char const   )'v',      (char const   )'e',      (char const   )'r',      (char const   )'\000'};
4508#line 362 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4509static char const   __mod_author362[51]  __attribute__((__used__, __unused__, __section__(".modinfo"),
4510__aligned__(1)))  = 
4511#line 362
4512  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
4513        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'H', 
4514        (char const   )'a',      (char const   )'o',      (char const   )'j',      (char const   )'i', 
4515        (char const   )'a',      (char const   )'n',      (char const   )' ',      (char const   )'Z', 
4516        (char const   )'h',      (char const   )'u',      (char const   )'a',      (char const   )'n', 
4517        (char const   )'g',      (char const   )' ',      (char const   )'<',      (char const   )'h', 
4518        (char const   )'a',      (char const   )'o',      (char const   )'j',      (char const   )'i', 
4519        (char const   )'a',      (char const   )'n',      (char const   )'.',      (char const   )'z', 
4520        (char const   )'h',      (char const   )'u',      (char const   )'a',      (char const   )'n', 
4521        (char const   )'g',      (char const   )'@',      (char const   )'m',      (char const   )'a', 
4522        (char const   )'r',      (char const   )'v',      (char const   )'e',      (char const   )'l', 
4523        (char const   )'l',      (char const   )'.',      (char const   )'c',      (char const   )'o', 
4524        (char const   )'m',      (char const   )'>',      (char const   )'\000'};
4525#line 363 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4526static char const   __mod_license363[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
4527__aligned__(1)))  = 
4528#line 363
4529  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
4530        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
4531        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
4532#line 382
4533void ldv_check_final_state(void) ;
4534#line 385
4535extern void ldv_check_return_value(int res ) ;
4536#line 388
4537extern void ldv_initialize(void) ;
4538#line 391
4539extern int __VERIFIER_nondet_int(void) ;
4540#line 394 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4541int LDV_IN_INTERRUPT  ;
4542#line 673 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4543static int res_max8649_regulator_probe_10  ;
4544#line 397 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4545void main(void) 
4546{ struct regulator_dev *var_group1 ;
4547  int var_max8649_set_voltage_3_p1 ;
4548  int var_max8649_set_voltage_3_p2 ;
4549  unsigned int *var_max8649_set_voltage_3_p3 ;
4550  unsigned int var_max8649_list_voltage_1_p1 ;
4551  unsigned int var_max8649_set_mode_8_p1 ;
4552  struct i2c_client *var_group2 ;
4553  struct i2c_device_id  const  *var_max8649_regulator_probe_10_p1 ;
4554  int tmp___7 ;
4555  int ldv_s_max8649_driver_i2c_driver ;
4556  int tmp___8 ;
4557  int tmp___9 ;
4558  int __cil_tmp13 ;
4559
4560  {
4561  {
4562#line 681
4563  LDV_IN_INTERRUPT = 1;
4564#line 690
4565  ldv_initialize();
4566#line 719
4567  tmp___7 = max8649_init();
4568  }
4569#line 719
4570  if (tmp___7) {
4571#line 720
4572    goto ldv_final;
4573  } else {
4574
4575  }
4576#line 723
4577  ldv_s_max8649_driver_i2c_driver = 0;
4578  {
4579#line 726
4580  while (1) {
4581    while_continue: /* CIL Label */ ;
4582    {
4583#line 726
4584    tmp___9 = __VERIFIER_nondet_int();
4585    }
4586#line 726
4587    if (tmp___9) {
4588
4589    } else {
4590      {
4591#line 726
4592      __cil_tmp13 = ldv_s_max8649_driver_i2c_driver == 0;
4593#line 726
4594      if (! __cil_tmp13) {
4595
4596      } else {
4597#line 726
4598        goto while_break;
4599      }
4600      }
4601    }
4602    {
4603#line 730
4604    tmp___8 = __VERIFIER_nondet_int();
4605    }
4606#line 732
4607    if (tmp___8 == 0) {
4608#line 732
4609      goto case_0;
4610    } else
4611#line 771
4612    if (tmp___8 == 1) {
4613#line 771
4614      goto case_1;
4615    } else
4616#line 810
4617    if (tmp___8 == 2) {
4618#line 810
4619      goto case_2;
4620    } else
4621#line 849
4622    if (tmp___8 == 3) {
4623#line 849
4624      goto case_3;
4625    } else
4626#line 888
4627    if (tmp___8 == 4) {
4628#line 888
4629      goto case_4;
4630    } else
4631#line 927
4632    if (tmp___8 == 5) {
4633#line 927
4634      goto case_5;
4635    } else
4636#line 966
4637    if (tmp___8 == 6) {
4638#line 966
4639      goto case_6;
4640    } else
4641#line 1005
4642    if (tmp___8 == 7) {
4643#line 1005
4644      goto case_7;
4645    } else
4646#line 1044
4647    if (tmp___8 == 8) {
4648#line 1044
4649      goto case_8;
4650    } else
4651#line 1083
4652    if (tmp___8 == 9) {
4653#line 1083
4654      goto case_9;
4655    } else {
4656      {
4657#line 1125
4658      goto switch_default;
4659#line 730
4660      if (0) {
4661        case_0: /* CIL Label */ 
4662        {
4663#line 763
4664        max8649_set_voltage(var_group1, var_max8649_set_voltage_3_p1, var_max8649_set_voltage_3_p2,
4665                            var_max8649_set_voltage_3_p3);
4666        }
4667#line 770
4668        goto switch_break;
4669        case_1: /* CIL Label */ 
4670        {
4671#line 802
4672        max8649_get_voltage(var_group1);
4673        }
4674#line 809
4675        goto switch_break;
4676        case_2: /* CIL Label */ 
4677        {
4678#line 841
4679        max8649_list_voltage(var_group1, var_max8649_list_voltage_1_p1);
4680        }
4681#line 848
4682        goto switch_break;
4683        case_3: /* CIL Label */ 
4684        {
4685#line 880
4686        max8649_enable(var_group1);
4687        }
4688#line 887
4689        goto switch_break;
4690        case_4: /* CIL Label */ 
4691        {
4692#line 919
4693        max8649_disable(var_group1);
4694        }
4695#line 926
4696        goto switch_break;
4697        case_5: /* CIL Label */ 
4698        {
4699#line 958
4700        max8649_is_enabled(var_group1);
4701        }
4702#line 965
4703        goto switch_break;
4704        case_6: /* CIL Label */ 
4705        {
4706#line 997
4707        max8649_enable_time(var_group1);
4708        }
4709#line 1004
4710        goto switch_break;
4711        case_7: /* CIL Label */ 
4712        {
4713#line 1036
4714        max8649_set_mode(var_group1, var_max8649_set_mode_8_p1);
4715        }
4716#line 1043
4717        goto switch_break;
4718        case_8: /* CIL Label */ 
4719        {
4720#line 1075
4721        max8649_get_mode(var_group1);
4722        }
4723#line 1082
4724        goto switch_break;
4725        case_9: /* CIL Label */ 
4726#line 1086
4727        if (ldv_s_max8649_driver_i2c_driver == 0) {
4728          {
4729#line 1114
4730          res_max8649_regulator_probe_10 = max8649_regulator_probe(var_group2, var_max8649_regulator_probe_10_p1);
4731#line 1115
4732          ldv_check_return_value(res_max8649_regulator_probe_10);
4733          }
4734#line 1116
4735          if (res_max8649_regulator_probe_10) {
4736#line 1117
4737            goto ldv_module_exit;
4738          } else {
4739
4740          }
4741#line 1118
4742          ldv_s_max8649_driver_i2c_driver = 0;
4743        } else {
4744
4745        }
4746#line 1124
4747        goto switch_break;
4748        switch_default: /* CIL Label */ 
4749#line 1125
4750        goto switch_break;
4751      } else {
4752        switch_break: /* CIL Label */ ;
4753      }
4754      }
4755    }
4756  }
4757  while_break: /* CIL Label */ ;
4758  }
4759  ldv_module_exit: 
4760  {
4761#line 1160
4762  max8649_exit();
4763  }
4764  ldv_final: 
4765  {
4766#line 1163
4767  ldv_check_final_state();
4768  }
4769#line 1166
4770  return;
4771}
4772}
4773#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
4774void ldv_blast_assert(void) 
4775{ 
4776
4777  {
4778  ERROR: 
4779#line 6
4780  goto ERROR;
4781}
4782}
4783#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
4784extern int __VERIFIER_nondet_int(void) ;
4785#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4786int ldv_mutex  =    1;
4787#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4788int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
4789{ int nondetermined ;
4790
4791  {
4792#line 29
4793  if (ldv_mutex == 1) {
4794
4795  } else {
4796    {
4797#line 29
4798    ldv_blast_assert();
4799    }
4800  }
4801  {
4802#line 32
4803  nondetermined = __VERIFIER_nondet_int();
4804  }
4805#line 35
4806  if (nondetermined) {
4807#line 38
4808    ldv_mutex = 2;
4809#line 40
4810    return (0);
4811  } else {
4812#line 45
4813    return (-4);
4814  }
4815}
4816}
4817#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4818int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
4819{ int nondetermined ;
4820
4821  {
4822#line 57
4823  if (ldv_mutex == 1) {
4824
4825  } else {
4826    {
4827#line 57
4828    ldv_blast_assert();
4829    }
4830  }
4831  {
4832#line 60
4833  nondetermined = __VERIFIER_nondet_int();
4834  }
4835#line 63
4836  if (nondetermined) {
4837#line 66
4838    ldv_mutex = 2;
4839#line 68
4840    return (0);
4841  } else {
4842#line 73
4843    return (-4);
4844  }
4845}
4846}
4847#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4848int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
4849{ int atomic_value_after_dec ;
4850
4851  {
4852#line 83
4853  if (ldv_mutex == 1) {
4854
4855  } else {
4856    {
4857#line 83
4858    ldv_blast_assert();
4859    }
4860  }
4861  {
4862#line 86
4863  atomic_value_after_dec = __VERIFIER_nondet_int();
4864  }
4865#line 89
4866  if (atomic_value_after_dec == 0) {
4867#line 92
4868    ldv_mutex = 2;
4869#line 94
4870    return (1);
4871  } else {
4872
4873  }
4874#line 98
4875  return (0);
4876}
4877}
4878#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4879void mutex_lock(struct mutex *lock ) 
4880{ 
4881
4882  {
4883#line 108
4884  if (ldv_mutex == 1) {
4885
4886  } else {
4887    {
4888#line 108
4889    ldv_blast_assert();
4890    }
4891  }
4892#line 110
4893  ldv_mutex = 2;
4894#line 111
4895  return;
4896}
4897}
4898#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4899int mutex_trylock(struct mutex *lock ) 
4900{ int nondetermined ;
4901
4902  {
4903#line 121
4904  if (ldv_mutex == 1) {
4905
4906  } else {
4907    {
4908#line 121
4909    ldv_blast_assert();
4910    }
4911  }
4912  {
4913#line 124
4914  nondetermined = __VERIFIER_nondet_int();
4915  }
4916#line 127
4917  if (nondetermined) {
4918#line 130
4919    ldv_mutex = 2;
4920#line 132
4921    return (1);
4922  } else {
4923#line 137
4924    return (0);
4925  }
4926}
4927}
4928#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4929void mutex_unlock(struct mutex *lock ) 
4930{ 
4931
4932  {
4933#line 147
4934  if (ldv_mutex == 2) {
4935
4936  } else {
4937    {
4938#line 147
4939    ldv_blast_assert();
4940    }
4941  }
4942#line 149
4943  ldv_mutex = 1;
4944#line 150
4945  return;
4946}
4947}
4948#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4949void ldv_check_final_state(void) 
4950{ 
4951
4952  {
4953#line 156
4954  if (ldv_mutex == 1) {
4955
4956  } else {
4957    {
4958#line 156
4959    ldv_blast_assert();
4960    }
4961  }
4962#line 157
4963  return;
4964}
4965}
4966#line 1175 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4575/dscv_tempdir/dscv/ri/32_1/drivers/regulator/max8649.c.common.c"
4967long s__builtin_expect(long val , long res ) 
4968{ 
4969
4970  {
4971#line 1176
4972  return (val);
4973}
4974}