Showing error 485

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