Showing error 1075

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-linux-3.4/43_1a_cilled_safe_ok_nondet_linux-43_1a-drivers--mfd--wl1273-core.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 4319
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

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