Showing error 1080

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