Showing error 1071

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


Source:

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