Showing error 1177

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


Source:

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