Showing error 1178

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