Showing error 1139

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