Showing error 1066

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


Source:

   1/* Generated by CIL v. 1.3.7 */
   2/* print_CIL_Input is true */
   3
   4#line 20 "include/asm-generic/int-ll64.h"
   5typedef unsigned char __u8;
   6#line 23 "include/asm-generic/int-ll64.h"
   7typedef unsigned short __u16;
   8#line 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 75 "include/asm-generic/posix_types.h"
  29typedef __kernel_ulong_t __kernel_size_t;
  30#line 76 "include/asm-generic/posix_types.h"
  31typedef __kernel_long_t __kernel_ssize_t;
  32#line 91 "include/asm-generic/posix_types.h"
  33typedef long long __kernel_loff_t;
  34#line 21 "include/linux/types.h"
  35typedef __u32 __kernel_dev_t;
  36#line 24 "include/linux/types.h"
  37typedef __kernel_dev_t dev_t;
  38#line 27 "include/linux/types.h"
  39typedef unsigned short umode_t;
  40#line 38 "include/linux/types.h"
  41typedef _Bool bool;
  42#line 54 "include/linux/types.h"
  43typedef __kernel_loff_t loff_t;
  44#line 63 "include/linux/types.h"
  45typedef __kernel_size_t size_t;
  46#line 68 "include/linux/types.h"
  47typedef __kernel_ssize_t ssize_t;
  48#line 155 "include/linux/types.h"
  49typedef u64 dma_addr_t;
  50#line 202 "include/linux/types.h"
  51typedef unsigned int gfp_t;
  52#line 206 "include/linux/types.h"
  53typedef u64 phys_addr_t;
  54#line 211 "include/linux/types.h"
  55typedef phys_addr_t resource_size_t;
  56#line 221 "include/linux/types.h"
  57struct __anonstruct_atomic_t_6 {
  58   int counter ;
  59};
  60#line 221 "include/linux/types.h"
  61typedef struct __anonstruct_atomic_t_6 atomic_t;
  62#line 226 "include/linux/types.h"
  63struct __anonstruct_atomic64_t_7 {
  64   long counter ;
  65};
  66#line 226 "include/linux/types.h"
  67typedef struct __anonstruct_atomic64_t_7 atomic64_t;
  68#line 227 "include/linux/types.h"
  69struct list_head {
  70   struct list_head *next ;
  71   struct list_head *prev ;
  72};
  73#line 232
  74struct hlist_node;
  75#line 232 "include/linux/types.h"
  76struct hlist_head {
  77   struct hlist_node *first ;
  78};
  79#line 236 "include/linux/types.h"
  80struct hlist_node {
  81   struct hlist_node *next ;
  82   struct hlist_node **pprev ;
  83};
  84#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
  85struct module;
  86#line 55
  87struct module;
  88#line 146 "include/linux/init.h"
  89typedef void (*ctor_fn_t)(void);
  90#line 46 "include/linux/dynamic_debug.h"
  91struct device;
  92#line 46
  93struct device;
  94#line 57
  95struct completion;
  96#line 57
  97struct completion;
  98#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
  99struct page;
 100#line 58
 101struct page;
 102#line 26 "include/asm-generic/getorder.h"
 103struct task_struct;
 104#line 26
 105struct task_struct;
 106#line 28
 107struct mm_struct;
 108#line 28
 109struct mm_struct;
 110#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 111typedef unsigned long pgdval_t;
 112#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 113typedef unsigned long pgprotval_t;
 114#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 115struct pgprot {
 116   pgprotval_t pgprot ;
 117};
 118#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 119typedef struct pgprot pgprot_t;
 120#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 121struct __anonstruct_pgd_t_16 {
 122   pgdval_t pgd ;
 123};
 124#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 125typedef struct __anonstruct_pgd_t_16 pgd_t;
 126#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 127typedef struct page *pgtable_t;
 128#line 290
 129struct file;
 130#line 290
 131struct file;
 132#line 339
 133struct cpumask;
 134#line 339
 135struct cpumask;
 136#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 137struct arch_spinlock;
 138#line 327
 139struct arch_spinlock;
 140#line 306 "include/linux/bitmap.h"
 141struct bug_entry {
 142   int bug_addr_disp ;
 143   int file_disp ;
 144   unsigned short line ;
 145   unsigned short flags ;
 146};
 147#line 89 "include/linux/bug.h"
 148struct cpumask {
 149   unsigned long bits[64U] ;
 150};
 151#line 637 "include/linux/cpumask.h"
 152typedef struct cpumask *cpumask_var_t;
 153#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 154struct static_key;
 155#line 234
 156struct static_key;
 157#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 158struct kmem_cache;
 159#line 23 "include/asm-generic/atomic-long.h"
 160typedef atomic64_t atomic_long_t;
 161#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 162typedef u16 __ticket_t;
 163#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 164typedef u32 __ticketpair_t;
 165#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 166struct __raw_tickets {
 167   __ticket_t head ;
 168   __ticket_t tail ;
 169};
 170#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 171union __anonunion_ldv_5907_29 {
 172   __ticketpair_t head_tail ;
 173   struct __raw_tickets tickets ;
 174};
 175#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 176struct arch_spinlock {
 177   union __anonunion_ldv_5907_29 ldv_5907 ;
 178};
 179#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 180typedef struct arch_spinlock arch_spinlock_t;
 181#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 182struct lockdep_map;
 183#line 34
 184struct lockdep_map;
 185#line 55 "include/linux/debug_locks.h"
 186struct stack_trace {
 187   unsigned int nr_entries ;
 188   unsigned int max_entries ;
 189   unsigned long *entries ;
 190   int skip ;
 191};
 192#line 26 "include/linux/stacktrace.h"
 193struct lockdep_subclass_key {
 194   char __one_byte ;
 195};
 196#line 53 "include/linux/lockdep.h"
 197struct lock_class_key {
 198   struct lockdep_subclass_key subkeys[8U] ;
 199};
 200#line 59 "include/linux/lockdep.h"
 201struct lock_class {
 202   struct list_head hash_entry ;
 203   struct list_head lock_entry ;
 204   struct lockdep_subclass_key *key ;
 205   unsigned int subclass ;
 206   unsigned int dep_gen_id ;
 207   unsigned long usage_mask ;
 208   struct stack_trace usage_traces[13U] ;
 209   struct list_head locks_after ;
 210   struct list_head locks_before ;
 211   unsigned int version ;
 212   unsigned long ops ;
 213   char const   *name ;
 214   int name_version ;
 215   unsigned long contention_point[4U] ;
 216   unsigned long contending_point[4U] ;
 217};
 218#line 144 "include/linux/lockdep.h"
 219struct lockdep_map {
 220   struct lock_class_key *key ;
 221   struct lock_class *class_cache[2U] ;
 222   char const   *name ;
 223   int cpu ;
 224   unsigned long ip ;
 225};
 226#line 556 "include/linux/lockdep.h"
 227struct raw_spinlock {
 228   arch_spinlock_t raw_lock ;
 229   unsigned int magic ;
 230   unsigned int owner_cpu ;
 231   void *owner ;
 232   struct lockdep_map dep_map ;
 233};
 234#line 32 "include/linux/spinlock_types.h"
 235typedef struct raw_spinlock raw_spinlock_t;
 236#line 33 "include/linux/spinlock_types.h"
 237struct __anonstruct_ldv_6122_33 {
 238   u8 __padding[24U] ;
 239   struct lockdep_map dep_map ;
 240};
 241#line 33 "include/linux/spinlock_types.h"
 242union __anonunion_ldv_6123_32 {
 243   struct raw_spinlock rlock ;
 244   struct __anonstruct_ldv_6122_33 ldv_6122 ;
 245};
 246#line 33 "include/linux/spinlock_types.h"
 247struct spinlock {
 248   union __anonunion_ldv_6123_32 ldv_6123 ;
 249};
 250#line 76 "include/linux/spinlock_types.h"
 251typedef struct spinlock spinlock_t;
 252#line 48 "include/linux/wait.h"
 253struct __wait_queue_head {
 254   spinlock_t lock ;
 255   struct list_head task_list ;
 256};
 257#line 53 "include/linux/wait.h"
 258typedef struct __wait_queue_head wait_queue_head_t;
 259#line 98 "include/linux/nodemask.h"
 260struct __anonstruct_nodemask_t_36 {
 261   unsigned long bits[16U] ;
 262};
 263#line 98 "include/linux/nodemask.h"
 264typedef struct __anonstruct_nodemask_t_36 nodemask_t;
 265#line 670 "include/linux/mmzone.h"
 266struct mutex {
 267   atomic_t count ;
 268   spinlock_t wait_lock ;
 269   struct list_head wait_list ;
 270   struct task_struct *owner ;
 271   char const   *name ;
 272   void *magic ;
 273   struct lockdep_map dep_map ;
 274};
 275#line 171 "include/linux/mutex.h"
 276struct rw_semaphore;
 277#line 171
 278struct rw_semaphore;
 279#line 172 "include/linux/mutex.h"
 280struct rw_semaphore {
 281   long count ;
 282   raw_spinlock_t wait_lock ;
 283   struct list_head wait_list ;
 284   struct lockdep_map dep_map ;
 285};
 286#line 128 "include/linux/rwsem.h"
 287struct completion {
 288   unsigned int done ;
 289   wait_queue_head_t wait ;
 290};
 291#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/e820.h"
 292struct resource {
 293   resource_size_t start ;
 294   resource_size_t end ;
 295   char const   *name ;
 296   unsigned long flags ;
 297   struct resource *parent ;
 298   struct resource *sibling ;
 299   struct resource *child ;
 300};
 301#line 181 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/x86_init.h"
 302struct pci_dev;
 303#line 181
 304struct pci_dev;
 305#line 312 "include/linux/jiffies.h"
 306union ktime {
 307   s64 tv64 ;
 308};
 309#line 59 "include/linux/ktime.h"
 310typedef union ktime ktime_t;
 311#line 341
 312struct tvec_base;
 313#line 341
 314struct tvec_base;
 315#line 342 "include/linux/ktime.h"
 316struct timer_list {
 317   struct list_head entry ;
 318   unsigned long expires ;
 319   struct tvec_base *base ;
 320   void (*function)(unsigned long  ) ;
 321   unsigned long data ;
 322   int slack ;
 323   int start_pid ;
 324   void *start_site ;
 325   char start_comm[16U] ;
 326   struct lockdep_map lockdep_map ;
 327};
 328#line 301 "include/linux/timer.h"
 329struct workqueue_struct;
 330#line 301
 331struct workqueue_struct;
 332#line 302
 333struct work_struct;
 334#line 302
 335struct work_struct;
 336#line 45 "include/linux/workqueue.h"
 337struct work_struct {
 338   atomic_long_t data ;
 339   struct list_head entry ;
 340   void (*func)(struct work_struct * ) ;
 341   struct lockdep_map lockdep_map ;
 342};
 343#line 46 "include/linux/pm.h"
 344struct pm_message {
 345   int event ;
 346};
 347#line 52 "include/linux/pm.h"
 348typedef struct pm_message pm_message_t;
 349#line 53 "include/linux/pm.h"
 350struct dev_pm_ops {
 351   int (*prepare)(struct device * ) ;
 352   void (*complete)(struct device * ) ;
 353   int (*suspend)(struct device * ) ;
 354   int (*resume)(struct device * ) ;
 355   int (*freeze)(struct device * ) ;
 356   int (*thaw)(struct device * ) ;
 357   int (*poweroff)(struct device * ) ;
 358   int (*restore)(struct device * ) ;
 359   int (*suspend_late)(struct device * ) ;
 360   int (*resume_early)(struct device * ) ;
 361   int (*freeze_late)(struct device * ) ;
 362   int (*thaw_early)(struct device * ) ;
 363   int (*poweroff_late)(struct device * ) ;
 364   int (*restore_early)(struct device * ) ;
 365   int (*suspend_noirq)(struct device * ) ;
 366   int (*resume_noirq)(struct device * ) ;
 367   int (*freeze_noirq)(struct device * ) ;
 368   int (*thaw_noirq)(struct device * ) ;
 369   int (*poweroff_noirq)(struct device * ) ;
 370   int (*restore_noirq)(struct device * ) ;
 371   int (*runtime_suspend)(struct device * ) ;
 372   int (*runtime_resume)(struct device * ) ;
 373   int (*runtime_idle)(struct device * ) ;
 374};
 375#line 289
 376enum rpm_status {
 377    RPM_ACTIVE = 0,
 378    RPM_RESUMING = 1,
 379    RPM_SUSPENDED = 2,
 380    RPM_SUSPENDING = 3
 381} ;
 382#line 296
 383enum rpm_request {
 384    RPM_REQ_NONE = 0,
 385    RPM_REQ_IDLE = 1,
 386    RPM_REQ_SUSPEND = 2,
 387    RPM_REQ_AUTOSUSPEND = 3,
 388    RPM_REQ_RESUME = 4
 389} ;
 390#line 304
 391struct wakeup_source;
 392#line 304
 393struct wakeup_source;
 394#line 494 "include/linux/pm.h"
 395struct pm_subsys_data {
 396   spinlock_t lock ;
 397   unsigned int refcount ;
 398};
 399#line 499
 400struct dev_pm_qos_request;
 401#line 499
 402struct pm_qos_constraints;
 403#line 499 "include/linux/pm.h"
 404struct dev_pm_info {
 405   pm_message_t power_state ;
 406   unsigned char can_wakeup : 1 ;
 407   unsigned char async_suspend : 1 ;
 408   bool is_prepared ;
 409   bool is_suspended ;
 410   bool ignore_children ;
 411   spinlock_t lock ;
 412   struct list_head entry ;
 413   struct completion completion ;
 414   struct wakeup_source *wakeup ;
 415   bool wakeup_path ;
 416   struct timer_list suspend_timer ;
 417   unsigned long timer_expires ;
 418   struct work_struct work ;
 419   wait_queue_head_t wait_queue ;
 420   atomic_t usage_count ;
 421   atomic_t child_count ;
 422   unsigned char disable_depth : 3 ;
 423   unsigned char idle_notification : 1 ;
 424   unsigned char request_pending : 1 ;
 425   unsigned char deferred_resume : 1 ;
 426   unsigned char run_wake : 1 ;
 427   unsigned char runtime_auto : 1 ;
 428   unsigned char no_callbacks : 1 ;
 429   unsigned char irq_safe : 1 ;
 430   unsigned char use_autosuspend : 1 ;
 431   unsigned char timer_autosuspends : 1 ;
 432   enum rpm_request request ;
 433   enum rpm_status runtime_status ;
 434   int runtime_error ;
 435   int autosuspend_delay ;
 436   unsigned long last_busy ;
 437   unsigned long active_jiffies ;
 438   unsigned long suspended_jiffies ;
 439   unsigned long accounting_timestamp ;
 440   ktime_t suspend_time ;
 441   s64 max_time_suspended_ns ;
 442   struct dev_pm_qos_request *pq_req ;
 443   struct pm_subsys_data *subsys_data ;
 444   struct pm_qos_constraints *constraints ;
 445};
 446#line 558 "include/linux/pm.h"
 447struct dev_pm_domain {
 448   struct dev_pm_ops ops ;
 449};
 450#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/topology.h"
 451struct pci_bus;
 452#line 173
 453struct pci_bus;
 454#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 455struct __anonstruct_mm_context_t_101 {
 456   void *ldt ;
 457   int size ;
 458   unsigned short ia32_compat ;
 459   struct mutex lock ;
 460   void *vdso ;
 461};
 462#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 463typedef struct __anonstruct_mm_context_t_101 mm_context_t;
 464#line 18 "include/asm-generic/pci_iomap.h"
 465struct vm_area_struct;
 466#line 18
 467struct vm_area_struct;
 468#line 835 "include/linux/sysctl.h"
 469struct rb_node {
 470   unsigned long rb_parent_color ;
 471   struct rb_node *rb_right ;
 472   struct rb_node *rb_left ;
 473};
 474#line 108 "include/linux/rbtree.h"
 475struct rb_root {
 476   struct rb_node *rb_node ;
 477};
 478#line 18 "include/linux/elf.h"
 479typedef __u64 Elf64_Addr;
 480#line 19 "include/linux/elf.h"
 481typedef __u16 Elf64_Half;
 482#line 23 "include/linux/elf.h"
 483typedef __u32 Elf64_Word;
 484#line 24 "include/linux/elf.h"
 485typedef __u64 Elf64_Xword;
 486#line 193 "include/linux/elf.h"
 487struct elf64_sym {
 488   Elf64_Word st_name ;
 489   unsigned char st_info ;
 490   unsigned char st_other ;
 491   Elf64_Half st_shndx ;
 492   Elf64_Addr st_value ;
 493   Elf64_Xword st_size ;
 494};
 495#line 201 "include/linux/elf.h"
 496typedef struct elf64_sym Elf64_Sym;
 497#line 445
 498struct sock;
 499#line 445
 500struct sock;
 501#line 446
 502struct kobject;
 503#line 446
 504struct kobject;
 505#line 447
 506enum kobj_ns_type {
 507    KOBJ_NS_TYPE_NONE = 0,
 508    KOBJ_NS_TYPE_NET = 1,
 509    KOBJ_NS_TYPES = 2
 510} ;
 511#line 453 "include/linux/elf.h"
 512struct kobj_ns_type_operations {
 513   enum kobj_ns_type type ;
 514   void *(*grab_current_ns)(void) ;
 515   void const   *(*netlink_ns)(struct sock * ) ;
 516   void const   *(*initial_ns)(void) ;
 517   void (*drop_ns)(void * ) ;
 518};
 519#line 57 "include/linux/kobject_ns.h"
 520struct attribute {
 521   char const   *name ;
 522   umode_t mode ;
 523   struct lock_class_key *key ;
 524   struct lock_class_key skey ;
 525};
 526#line 33 "include/linux/sysfs.h"
 527struct attribute_group {
 528   char const   *name ;
 529   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 530   struct attribute **attrs ;
 531};
 532#line 62 "include/linux/sysfs.h"
 533struct bin_attribute {
 534   struct attribute attr ;
 535   size_t size ;
 536   void *private ;
 537   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 538                   loff_t  , size_t  ) ;
 539   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 540                    loff_t  , size_t  ) ;
 541   int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
 542};
 543#line 98 "include/linux/sysfs.h"
 544struct sysfs_ops {
 545   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 546   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 547   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 548};
 549#line 117
 550struct sysfs_dirent;
 551#line 117
 552struct sysfs_dirent;
 553#line 182 "include/linux/sysfs.h"
 554struct kref {
 555   atomic_t refcount ;
 556};
 557#line 49 "include/linux/kobject.h"
 558struct kset;
 559#line 49
 560struct kobj_type;
 561#line 49 "include/linux/kobject.h"
 562struct kobject {
 563   char const   *name ;
 564   struct list_head entry ;
 565   struct kobject *parent ;
 566   struct kset *kset ;
 567   struct kobj_type *ktype ;
 568   struct sysfs_dirent *sd ;
 569   struct kref kref ;
 570   unsigned char state_initialized : 1 ;
 571   unsigned char state_in_sysfs : 1 ;
 572   unsigned char state_add_uevent_sent : 1 ;
 573   unsigned char state_remove_uevent_sent : 1 ;
 574   unsigned char uevent_suppress : 1 ;
 575};
 576#line 107 "include/linux/kobject.h"
 577struct kobj_type {
 578   void (*release)(struct kobject * ) ;
 579   struct sysfs_ops  const  *sysfs_ops ;
 580   struct attribute **default_attrs ;
 581   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject * ) ;
 582   void const   *(*namespace)(struct kobject * ) ;
 583};
 584#line 115 "include/linux/kobject.h"
 585struct kobj_uevent_env {
 586   char *envp[32U] ;
 587   int envp_idx ;
 588   char buf[2048U] ;
 589   int buflen ;
 590};
 591#line 122 "include/linux/kobject.h"
 592struct kset_uevent_ops {
 593   int (* const  filter)(struct kset * , struct kobject * ) ;
 594   char const   *(* const  name)(struct kset * , struct kobject * ) ;
 595   int (* const  uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
 596};
 597#line 139 "include/linux/kobject.h"
 598struct kset {
 599   struct list_head list ;
 600   spinlock_t list_lock ;
 601   struct kobject kobj ;
 602   struct kset_uevent_ops  const  *uevent_ops ;
 603};
 604#line 215
 605struct kernel_param;
 606#line 215
 607struct kernel_param;
 608#line 216 "include/linux/kobject.h"
 609struct kernel_param_ops {
 610   int (*set)(char const   * , struct kernel_param  const  * ) ;
 611   int (*get)(char * , struct kernel_param  const  * ) ;
 612   void (*free)(void * ) ;
 613};
 614#line 49 "include/linux/moduleparam.h"
 615struct kparam_string;
 616#line 49
 617struct kparam_array;
 618#line 49 "include/linux/moduleparam.h"
 619union __anonunion_ldv_13363_134 {
 620   void *arg ;
 621   struct kparam_string  const  *str ;
 622   struct kparam_array  const  *arr ;
 623};
 624#line 49 "include/linux/moduleparam.h"
 625struct kernel_param {
 626   char const   *name ;
 627   struct kernel_param_ops  const  *ops ;
 628   u16 perm ;
 629   s16 level ;
 630   union __anonunion_ldv_13363_134 ldv_13363 ;
 631};
 632#line 61 "include/linux/moduleparam.h"
 633struct kparam_string {
 634   unsigned int maxlen ;
 635   char *string ;
 636};
 637#line 67 "include/linux/moduleparam.h"
 638struct kparam_array {
 639   unsigned int max ;
 640   unsigned int elemsize ;
 641   unsigned int *num ;
 642   struct kernel_param_ops  const  *ops ;
 643   void *elem ;
 644};
 645#line 458 "include/linux/moduleparam.h"
 646struct static_key {
 647   atomic_t enabled ;
 648};
 649#line 225 "include/linux/jump_label.h"
 650struct tracepoint;
 651#line 225
 652struct tracepoint;
 653#line 226 "include/linux/jump_label.h"
 654struct tracepoint_func {
 655   void *func ;
 656   void *data ;
 657};
 658#line 29 "include/linux/tracepoint.h"
 659struct tracepoint {
 660   char const   *name ;
 661   struct static_key key ;
 662   void (*regfunc)(void) ;
 663   void (*unregfunc)(void) ;
 664   struct tracepoint_func *funcs ;
 665};
 666#line 86 "include/linux/tracepoint.h"
 667struct kernel_symbol {
 668   unsigned long value ;
 669   char const   *name ;
 670};
 671#line 27 "include/linux/export.h"
 672struct mod_arch_specific {
 673
 674};
 675#line 34 "include/linux/module.h"
 676struct module_param_attrs;
 677#line 34 "include/linux/module.h"
 678struct module_kobject {
 679   struct kobject kobj ;
 680   struct module *mod ;
 681   struct kobject *drivers_dir ;
 682   struct module_param_attrs *mp ;
 683};
 684#line 43 "include/linux/module.h"
 685struct module_attribute {
 686   struct attribute attr ;
 687   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 688   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 689                    size_t  ) ;
 690   void (*setup)(struct module * , char const   * ) ;
 691   int (*test)(struct module * ) ;
 692   void (*free)(struct module * ) ;
 693};
 694#line 69
 695struct exception_table_entry;
 696#line 69
 697struct exception_table_entry;
 698#line 198
 699enum module_state {
 700    MODULE_STATE_LIVE = 0,
 701    MODULE_STATE_COMING = 1,
 702    MODULE_STATE_GOING = 2
 703} ;
 704#line 204 "include/linux/module.h"
 705struct module_ref {
 706   unsigned long incs ;
 707   unsigned long decs ;
 708};
 709#line 219
 710struct module_sect_attrs;
 711#line 219
 712struct module_notes_attrs;
 713#line 219
 714struct ftrace_event_call;
 715#line 219 "include/linux/module.h"
 716struct module {
 717   enum module_state state ;
 718   struct list_head list ;
 719   char name[56U] ;
 720   struct module_kobject mkobj ;
 721   struct module_attribute *modinfo_attrs ;
 722   char const   *version ;
 723   char const   *srcversion ;
 724   struct kobject *holders_dir ;
 725   struct kernel_symbol  const  *syms ;
 726   unsigned long const   *crcs ;
 727   unsigned int num_syms ;
 728   struct kernel_param *kp ;
 729   unsigned int num_kp ;
 730   unsigned int num_gpl_syms ;
 731   struct kernel_symbol  const  *gpl_syms ;
 732   unsigned long const   *gpl_crcs ;
 733   struct kernel_symbol  const  *unused_syms ;
 734   unsigned long const   *unused_crcs ;
 735   unsigned int num_unused_syms ;
 736   unsigned int num_unused_gpl_syms ;
 737   struct kernel_symbol  const  *unused_gpl_syms ;
 738   unsigned long const   *unused_gpl_crcs ;
 739   struct kernel_symbol  const  *gpl_future_syms ;
 740   unsigned long const   *gpl_future_crcs ;
 741   unsigned int num_gpl_future_syms ;
 742   unsigned int num_exentries ;
 743   struct exception_table_entry *extable ;
 744   int (*init)(void) ;
 745   void *module_init ;
 746   void *module_core ;
 747   unsigned int init_size ;
 748   unsigned int core_size ;
 749   unsigned int init_text_size ;
 750   unsigned int core_text_size ;
 751   unsigned int init_ro_size ;
 752   unsigned int core_ro_size ;
 753   struct mod_arch_specific arch ;
 754   unsigned int taints ;
 755   unsigned int num_bugs ;
 756   struct list_head bug_list ;
 757   struct bug_entry *bug_table ;
 758   Elf64_Sym *symtab ;
 759   Elf64_Sym *core_symtab ;
 760   unsigned int num_symtab ;
 761   unsigned int core_num_syms ;
 762   char *strtab ;
 763   char *core_strtab ;
 764   struct module_sect_attrs *sect_attrs ;
 765   struct module_notes_attrs *notes_attrs ;
 766   char *args ;
 767   void *percpu ;
 768   unsigned int percpu_size ;
 769   unsigned int num_tracepoints ;
 770   struct tracepoint * const  *tracepoints_ptrs ;
 771   unsigned int num_trace_bprintk_fmt ;
 772   char const   **trace_bprintk_fmt_start ;
 773   struct ftrace_event_call **trace_events ;
 774   unsigned int num_trace_events ;
 775   struct list_head source_list ;
 776   struct list_head target_list ;
 777   struct task_struct *waiter ;
 778   void (*exit)(void) ;
 779   struct module_ref *refptr ;
 780   ctor_fn_t (**ctors)(void) ;
 781   unsigned int num_ctors ;
 782};
 783#line 88 "include/linux/kmemleak.h"
 784struct kmem_cache_cpu {
 785   void **freelist ;
 786   unsigned long tid ;
 787   struct page *page ;
 788   struct page *partial ;
 789   int node ;
 790   unsigned int stat[26U] ;
 791};
 792#line 55 "include/linux/slub_def.h"
 793struct kmem_cache_node {
 794   spinlock_t list_lock ;
 795   unsigned long nr_partial ;
 796   struct list_head partial ;
 797   atomic_long_t nr_slabs ;
 798   atomic_long_t total_objects ;
 799   struct list_head full ;
 800};
 801#line 66 "include/linux/slub_def.h"
 802struct kmem_cache_order_objects {
 803   unsigned long x ;
 804};
 805#line 76 "include/linux/slub_def.h"
 806struct kmem_cache {
 807   struct kmem_cache_cpu *cpu_slab ;
 808   unsigned long flags ;
 809   unsigned long min_partial ;
 810   int size ;
 811   int objsize ;
 812   int offset ;
 813   int cpu_partial ;
 814   struct kmem_cache_order_objects oo ;
 815   struct kmem_cache_order_objects max ;
 816   struct kmem_cache_order_objects min ;
 817   gfp_t allocflags ;
 818   int refcount ;
 819   void (*ctor)(void * ) ;
 820   int inuse ;
 821   int align ;
 822   int reserved ;
 823   char const   *name ;
 824   struct list_head list ;
 825   struct kobject kobj ;
 826   int remote_node_defrag_ratio ;
 827   struct kmem_cache_node *node[1024U] ;
 828};
 829#line 199 "include/linux/i2o-dev.h"
 830struct _i2o_lct_entry {
 831   unsigned short entry_size ;
 832   unsigned short tid : 12 ;
 833   unsigned char reserved : 4 ;
 834   __u32 change_ind ;
 835   __u32 device_flags ;
 836   unsigned short class_id : 12 ;
 837   unsigned char version : 4 ;
 838   unsigned short vendor_id ;
 839   __u32 sub_class ;
 840   unsigned short user_tid : 12 ;
 841   unsigned short parent_tid : 12 ;
 842   unsigned char bios_info ;
 843   __u8 identity_tag[8U] ;
 844   __u32 event_capabilities ;
 845};
 846#line 215 "include/linux/i2o-dev.h"
 847typedef struct _i2o_lct_entry i2o_lct_entry;
 848#line 216 "include/linux/i2o-dev.h"
 849struct _i2o_lct {
 850   unsigned short table_size ;
 851   unsigned short boot_tid : 12 ;
 852   unsigned char lct_ver : 4 ;
 853   __u32 iop_flags ;
 854   __u32 change_ind ;
 855   i2o_lct_entry lct_entry[1U] ;
 856};
 857#line 224 "include/linux/i2o-dev.h"
 858typedef struct _i2o_lct i2o_lct;
 859#line 12 "include/linux/mod_devicetable.h"
 860typedef unsigned long kernel_ulong_t;
 861#line 13 "include/linux/mod_devicetable.h"
 862struct pci_device_id {
 863   __u32 vendor ;
 864   __u32 device ;
 865   __u32 subvendor ;
 866   __u32 subdevice ;
 867   __u32 class ;
 868   __u32 class_mask ;
 869   kernel_ulong_t driver_data ;
 870};
 871#line 215 "include/linux/mod_devicetable.h"
 872struct of_device_id {
 873   char name[32U] ;
 874   char type[32U] ;
 875   char compatible[128U] ;
 876   void *data ;
 877};
 878#line 584
 879struct klist_node;
 880#line 584
 881struct klist_node;
 882#line 37 "include/linux/klist.h"
 883struct klist_node {
 884   void *n_klist ;
 885   struct list_head n_node ;
 886   struct kref n_ref ;
 887};
 888#line 67
 889struct dma_map_ops;
 890#line 67 "include/linux/klist.h"
 891struct dev_archdata {
 892   void *acpi_handle ;
 893   struct dma_map_ops *dma_ops ;
 894   void *iommu ;
 895};
 896#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 897struct device_private;
 898#line 17
 899struct device_private;
 900#line 18
 901struct device_driver;
 902#line 18
 903struct device_driver;
 904#line 19
 905struct driver_private;
 906#line 19
 907struct driver_private;
 908#line 20
 909struct class;
 910#line 20
 911struct class;
 912#line 21
 913struct subsys_private;
 914#line 21
 915struct subsys_private;
 916#line 22
 917struct bus_type;
 918#line 22
 919struct bus_type;
 920#line 23
 921struct device_node;
 922#line 23
 923struct device_node;
 924#line 24
 925struct iommu_ops;
 926#line 24
 927struct iommu_ops;
 928#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 929struct bus_attribute {
 930   struct attribute attr ;
 931   ssize_t (*show)(struct bus_type * , char * ) ;
 932   ssize_t (*store)(struct bus_type * , char const   * , size_t  ) ;
 933};
 934#line 51 "include/linux/device.h"
 935struct device_attribute;
 936#line 51
 937struct driver_attribute;
 938#line 51 "include/linux/device.h"
 939struct bus_type {
 940   char const   *name ;
 941   char const   *dev_name ;
 942   struct device *dev_root ;
 943   struct bus_attribute *bus_attrs ;
 944   struct device_attribute *dev_attrs ;
 945   struct driver_attribute *drv_attrs ;
 946   int (*match)(struct device * , struct device_driver * ) ;
 947   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
 948   int (*probe)(struct device * ) ;
 949   int (*remove)(struct device * ) ;
 950   void (*shutdown)(struct device * ) ;
 951   int (*suspend)(struct device * , pm_message_t  ) ;
 952   int (*resume)(struct device * ) ;
 953   struct dev_pm_ops  const  *pm ;
 954   struct iommu_ops *iommu_ops ;
 955   struct subsys_private *p ;
 956};
 957#line 125
 958struct device_type;
 959#line 182 "include/linux/device.h"
 960struct device_driver {
 961   char const   *name ;
 962   struct bus_type *bus ;
 963   struct module *owner ;
 964   char const   *mod_name ;
 965   bool suppress_bind_attrs ;
 966   struct of_device_id  const  *of_match_table ;
 967   int (*probe)(struct device * ) ;
 968   int (*remove)(struct device * ) ;
 969   void (*shutdown)(struct device * ) ;
 970   int (*suspend)(struct device * , pm_message_t  ) ;
 971   int (*resume)(struct device * ) ;
 972   struct attribute_group  const  **groups ;
 973   struct dev_pm_ops  const  *pm ;
 974   struct driver_private *p ;
 975};
 976#line 245 "include/linux/device.h"
 977struct driver_attribute {
 978   struct attribute attr ;
 979   ssize_t (*show)(struct device_driver * , char * ) ;
 980   ssize_t (*store)(struct device_driver * , char const   * , size_t  ) ;
 981};
 982#line 299
 983struct class_attribute;
 984#line 299 "include/linux/device.h"
 985struct class {
 986   char const   *name ;
 987   struct module *owner ;
 988   struct class_attribute *class_attrs ;
 989   struct device_attribute *dev_attrs ;
 990   struct bin_attribute *dev_bin_attrs ;
 991   struct kobject *dev_kobj ;
 992   int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
 993   char *(*devnode)(struct device * , umode_t * ) ;
 994   void (*class_release)(struct class * ) ;
 995   void (*dev_release)(struct device * ) ;
 996   int (*suspend)(struct device * , pm_message_t  ) ;
 997   int (*resume)(struct device * ) ;
 998   struct kobj_ns_type_operations  const  *ns_type ;
 999   void const   *(*namespace)(struct device * ) ;
1000   struct dev_pm_ops  const  *pm ;
1001   struct subsys_private *p ;
1002};
1003#line 394 "include/linux/device.h"
1004struct class_attribute {
1005   struct attribute attr ;
1006   ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1007   ssize_t (*store)(struct class * , struct class_attribute * , char const   * , size_t  ) ;
1008   void const   *(*namespace)(struct class * , struct class_attribute  const  * ) ;
1009};
1010#line 447 "include/linux/device.h"
1011struct device_type {
1012   char const   *name ;
1013   struct attribute_group  const  **groups ;
1014   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1015   char *(*devnode)(struct device * , umode_t * ) ;
1016   void (*release)(struct device * ) ;
1017   struct dev_pm_ops  const  *pm ;
1018};
1019#line 474 "include/linux/device.h"
1020struct device_attribute {
1021   struct attribute attr ;
1022   ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1023   ssize_t (*store)(struct device * , struct device_attribute * , char const   * ,
1024                    size_t  ) ;
1025};
1026#line 557 "include/linux/device.h"
1027struct device_dma_parameters {
1028   unsigned int max_segment_size ;
1029   unsigned long segment_boundary_mask ;
1030};
1031#line 567
1032struct dma_coherent_mem;
1033#line 567 "include/linux/device.h"
1034struct device {
1035   struct device *parent ;
1036   struct device_private *p ;
1037   struct kobject kobj ;
1038   char const   *init_name ;
1039   struct device_type  const  *type ;
1040   struct mutex mutex ;
1041   struct bus_type *bus ;
1042   struct device_driver *driver ;
1043   void *platform_data ;
1044   struct dev_pm_info power ;
1045   struct dev_pm_domain *pm_domain ;
1046   int numa_node ;
1047   u64 *dma_mask ;
1048   u64 coherent_dma_mask ;
1049   struct device_dma_parameters *dma_parms ;
1050   struct list_head dma_pools ;
1051   struct dma_coherent_mem *dma_mem ;
1052   struct dev_archdata archdata ;
1053   struct device_node *of_node ;
1054   dev_t devt ;
1055   u32 id ;
1056   spinlock_t devres_lock ;
1057   struct list_head devres_head ;
1058   struct klist_node knode_class ;
1059   struct class *class ;
1060   struct attribute_group  const  **groups ;
1061   void (*release)(struct device * ) ;
1062};
1063#line 681 "include/linux/device.h"
1064struct wakeup_source {
1065   char const   *name ;
1066   struct list_head entry ;
1067   spinlock_t lock ;
1068   struct timer_list timer ;
1069   unsigned long timer_expires ;
1070   ktime_t total_time ;
1071   ktime_t max_time ;
1072   ktime_t last_time ;
1073   unsigned long event_count ;
1074   unsigned long active_count ;
1075   unsigned long relax_count ;
1076   unsigned long hit_count ;
1077   unsigned char active : 1 ;
1078};
1079#line 17 "include/linux/irqreturn.h"
1080struct hotplug_slot;
1081#line 17 "include/linux/irqreturn.h"
1082struct pci_slot {
1083   struct pci_bus *bus ;
1084   struct list_head list ;
1085   struct hotplug_slot *hotplug ;
1086   unsigned char number ;
1087   struct kobject kobj ;
1088};
1089#line 117 "include/linux/pci.h"
1090typedef int pci_power_t;
1091#line 143 "include/linux/pci.h"
1092typedef unsigned int pci_channel_state_t;
1093#line 144
1094enum pci_channel_state {
1095    pci_channel_io_normal = 1,
1096    pci_channel_io_frozen = 2,
1097    pci_channel_io_perm_failure = 3
1098} ;
1099#line 169 "include/linux/pci.h"
1100typedef unsigned short pci_dev_flags_t;
1101#line 186 "include/linux/pci.h"
1102typedef unsigned short pci_bus_flags_t;
1103#line 229
1104struct pcie_link_state;
1105#line 229
1106struct pcie_link_state;
1107#line 230
1108struct pci_vpd;
1109#line 230
1110struct pci_vpd;
1111#line 231
1112struct pci_sriov;
1113#line 231
1114struct pci_sriov;
1115#line 232
1116struct pci_ats;
1117#line 232
1118struct pci_ats;
1119#line 233
1120struct proc_dir_entry;
1121#line 233
1122struct pci_driver;
1123#line 233 "include/linux/pci.h"
1124union __anonunion_ldv_15471_137 {
1125   struct pci_sriov *sriov ;
1126   struct pci_dev *physfn ;
1127};
1128#line 233 "include/linux/pci.h"
1129struct pci_dev {
1130   struct list_head bus_list ;
1131   struct pci_bus *bus ;
1132   struct pci_bus *subordinate ;
1133   void *sysdata ;
1134   struct proc_dir_entry *procent ;
1135   struct pci_slot *slot ;
1136   unsigned int devfn ;
1137   unsigned short vendor ;
1138   unsigned short device ;
1139   unsigned short subsystem_vendor ;
1140   unsigned short subsystem_device ;
1141   unsigned int class ;
1142   u8 revision ;
1143   u8 hdr_type ;
1144   u8 pcie_cap ;
1145   unsigned char pcie_type : 4 ;
1146   unsigned char pcie_mpss : 3 ;
1147   u8 rom_base_reg ;
1148   u8 pin ;
1149   struct pci_driver *driver ;
1150   u64 dma_mask ;
1151   struct device_dma_parameters dma_parms ;
1152   pci_power_t current_state ;
1153   int pm_cap ;
1154   unsigned char pme_support : 5 ;
1155   unsigned char pme_interrupt : 1 ;
1156   unsigned char pme_poll : 1 ;
1157   unsigned char d1_support : 1 ;
1158   unsigned char d2_support : 1 ;
1159   unsigned char no_d1d2 : 1 ;
1160   unsigned char mmio_always_on : 1 ;
1161   unsigned char wakeup_prepared : 1 ;
1162   unsigned int d3_delay ;
1163   struct pcie_link_state *link_state ;
1164   pci_channel_state_t error_state ;
1165   struct device dev ;
1166   int cfg_size ;
1167   unsigned int irq ;
1168   struct resource resource[17U] ;
1169   unsigned char transparent : 1 ;
1170   unsigned char multifunction : 1 ;
1171   unsigned char is_added : 1 ;
1172   unsigned char is_busmaster : 1 ;
1173   unsigned char no_msi : 1 ;
1174   unsigned char block_cfg_access : 1 ;
1175   unsigned char broken_parity_status : 1 ;
1176   unsigned char irq_reroute_variant : 2 ;
1177   unsigned char msi_enabled : 1 ;
1178   unsigned char msix_enabled : 1 ;
1179   unsigned char ari_enabled : 1 ;
1180   unsigned char is_managed : 1 ;
1181   unsigned char is_pcie : 1 ;
1182   unsigned char needs_freset : 1 ;
1183   unsigned char state_saved : 1 ;
1184   unsigned char is_physfn : 1 ;
1185   unsigned char is_virtfn : 1 ;
1186   unsigned char reset_fn : 1 ;
1187   unsigned char is_hotplug_bridge : 1 ;
1188   unsigned char __aer_firmware_first_valid : 1 ;
1189   unsigned char __aer_firmware_first : 1 ;
1190   pci_dev_flags_t dev_flags ;
1191   atomic_t enable_cnt ;
1192   u32 saved_config_space[16U] ;
1193   struct hlist_head saved_cap_space ;
1194   struct bin_attribute *rom_attr ;
1195   int rom_attr_enabled ;
1196   struct bin_attribute *res_attr[17U] ;
1197   struct bin_attribute *res_attr_wc[17U] ;
1198   struct list_head msi_list ;
1199   struct kset *msi_kset ;
1200   struct pci_vpd *vpd ;
1201   union __anonunion_ldv_15471_137 ldv_15471 ;
1202   struct pci_ats *ats ;
1203};
1204#line 403
1205struct pci_ops;
1206#line 403 "include/linux/pci.h"
1207struct pci_bus {
1208   struct list_head node ;
1209   struct pci_bus *parent ;
1210   struct list_head children ;
1211   struct list_head devices ;
1212   struct pci_dev *self ;
1213   struct list_head slots ;
1214   struct resource *resource[4U] ;
1215   struct list_head resources ;
1216   struct pci_ops *ops ;
1217   void *sysdata ;
1218   struct proc_dir_entry *procdir ;
1219   unsigned char number ;
1220   unsigned char primary ;
1221   unsigned char secondary ;
1222   unsigned char subordinate ;
1223   unsigned char max_bus_speed ;
1224   unsigned char cur_bus_speed ;
1225   char name[48U] ;
1226   unsigned short bridge_ctl ;
1227   pci_bus_flags_t bus_flags ;
1228   struct device *bridge ;
1229   struct device dev ;
1230   struct bin_attribute *legacy_io ;
1231   struct bin_attribute *legacy_mem ;
1232   unsigned char is_added : 1 ;
1233};
1234#line 455 "include/linux/pci.h"
1235struct pci_ops {
1236   int (*read)(struct pci_bus * , unsigned int  , int  , int  , u32 * ) ;
1237   int (*write)(struct pci_bus * , unsigned int  , int  , int  , u32  ) ;
1238};
1239#line 490 "include/linux/pci.h"
1240struct pci_dynids {
1241   spinlock_t lock ;
1242   struct list_head list ;
1243};
1244#line 503 "include/linux/pci.h"
1245typedef unsigned int pci_ers_result_t;
1246#line 512 "include/linux/pci.h"
1247struct pci_error_handlers {
1248   pci_ers_result_t (*error_detected)(struct pci_dev * , enum pci_channel_state  ) ;
1249   pci_ers_result_t (*mmio_enabled)(struct pci_dev * ) ;
1250   pci_ers_result_t (*link_reset)(struct pci_dev * ) ;
1251   pci_ers_result_t (*slot_reset)(struct pci_dev * ) ;
1252   void (*resume)(struct pci_dev * ) ;
1253};
1254#line 540 "include/linux/pci.h"
1255struct pci_driver {
1256   struct list_head node ;
1257   char const   *name ;
1258   struct pci_device_id  const  *id_table ;
1259   int (*probe)(struct pci_dev * , struct pci_device_id  const  * ) ;
1260   void (*remove)(struct pci_dev * ) ;
1261   int (*suspend)(struct pci_dev * , pm_message_t  ) ;
1262   int (*suspend_late)(struct pci_dev * , pm_message_t  ) ;
1263   int (*resume_early)(struct pci_dev * ) ;
1264   int (*resume)(struct pci_dev * ) ;
1265   void (*shutdown)(struct pci_dev * ) ;
1266   struct pci_error_handlers *err_handler ;
1267   struct device_driver driver ;
1268   struct pci_dynids dynids ;
1269};
1270#line 986 "include/linux/pci.h"
1271struct scatterlist {
1272   unsigned long sg_magic ;
1273   unsigned long page_link ;
1274   unsigned int offset ;
1275   unsigned int length ;
1276   dma_addr_t dma_address ;
1277   unsigned int dma_length ;
1278};
1279#line 1134
1280struct prio_tree_node;
1281#line 1134 "include/linux/pci.h"
1282struct raw_prio_tree_node {
1283   struct prio_tree_node *left ;
1284   struct prio_tree_node *right ;
1285   struct prio_tree_node *parent ;
1286};
1287#line 19 "include/linux/prio_tree.h"
1288struct prio_tree_node {
1289   struct prio_tree_node *left ;
1290   struct prio_tree_node *right ;
1291   struct prio_tree_node *parent ;
1292   unsigned long start ;
1293   unsigned long last ;
1294};
1295#line 116
1296struct address_space;
1297#line 116
1298struct address_space;
1299#line 117 "include/linux/prio_tree.h"
1300union __anonunion_ldv_16343_139 {
1301   unsigned long index ;
1302   void *freelist ;
1303};
1304#line 117 "include/linux/prio_tree.h"
1305struct __anonstruct_ldv_16353_143 {
1306   unsigned short inuse ;
1307   unsigned short objects : 15 ;
1308   unsigned char frozen : 1 ;
1309};
1310#line 117 "include/linux/prio_tree.h"
1311union __anonunion_ldv_16354_142 {
1312   atomic_t _mapcount ;
1313   struct __anonstruct_ldv_16353_143 ldv_16353 ;
1314};
1315#line 117 "include/linux/prio_tree.h"
1316struct __anonstruct_ldv_16356_141 {
1317   union __anonunion_ldv_16354_142 ldv_16354 ;
1318   atomic_t _count ;
1319};
1320#line 117 "include/linux/prio_tree.h"
1321union __anonunion_ldv_16357_140 {
1322   unsigned long counters ;
1323   struct __anonstruct_ldv_16356_141 ldv_16356 ;
1324};
1325#line 117 "include/linux/prio_tree.h"
1326struct __anonstruct_ldv_16358_138 {
1327   union __anonunion_ldv_16343_139 ldv_16343 ;
1328   union __anonunion_ldv_16357_140 ldv_16357 ;
1329};
1330#line 117 "include/linux/prio_tree.h"
1331struct __anonstruct_ldv_16365_145 {
1332   struct page *next ;
1333   int pages ;
1334   int pobjects ;
1335};
1336#line 117 "include/linux/prio_tree.h"
1337union __anonunion_ldv_16366_144 {
1338   struct list_head lru ;
1339   struct __anonstruct_ldv_16365_145 ldv_16365 ;
1340};
1341#line 117 "include/linux/prio_tree.h"
1342union __anonunion_ldv_16371_146 {
1343   unsigned long private ;
1344   struct kmem_cache *slab ;
1345   struct page *first_page ;
1346};
1347#line 117 "include/linux/prio_tree.h"
1348struct page {
1349   unsigned long flags ;
1350   struct address_space *mapping ;
1351   struct __anonstruct_ldv_16358_138 ldv_16358 ;
1352   union __anonunion_ldv_16366_144 ldv_16366 ;
1353   union __anonunion_ldv_16371_146 ldv_16371 ;
1354   unsigned long debug_flags ;
1355};
1356#line 192 "include/linux/mm_types.h"
1357struct __anonstruct_vm_set_148 {
1358   struct list_head list ;
1359   void *parent ;
1360   struct vm_area_struct *head ;
1361};
1362#line 192 "include/linux/mm_types.h"
1363union __anonunion_shared_147 {
1364   struct __anonstruct_vm_set_148 vm_set ;
1365   struct raw_prio_tree_node prio_tree_node ;
1366};
1367#line 192
1368struct anon_vma;
1369#line 192
1370struct vm_operations_struct;
1371#line 192
1372struct mempolicy;
1373#line 192 "include/linux/mm_types.h"
1374struct vm_area_struct {
1375   struct mm_struct *vm_mm ;
1376   unsigned long vm_start ;
1377   unsigned long vm_end ;
1378   struct vm_area_struct *vm_next ;
1379   struct vm_area_struct *vm_prev ;
1380   pgprot_t vm_page_prot ;
1381   unsigned long vm_flags ;
1382   struct rb_node vm_rb ;
1383   union __anonunion_shared_147 shared ;
1384   struct list_head anon_vma_chain ;
1385   struct anon_vma *anon_vma ;
1386   struct vm_operations_struct  const  *vm_ops ;
1387   unsigned long vm_pgoff ;
1388   struct file *vm_file ;
1389   void *vm_private_data ;
1390   struct mempolicy *vm_policy ;
1391};
1392#line 255 "include/linux/mm_types.h"
1393struct core_thread {
1394   struct task_struct *task ;
1395   struct core_thread *next ;
1396};
1397#line 261 "include/linux/mm_types.h"
1398struct core_state {
1399   atomic_t nr_threads ;
1400   struct core_thread dumper ;
1401   struct completion startup ;
1402};
1403#line 274 "include/linux/mm_types.h"
1404struct mm_rss_stat {
1405   atomic_long_t count[3U] ;
1406};
1407#line 287
1408struct linux_binfmt;
1409#line 287
1410struct mmu_notifier_mm;
1411#line 287 "include/linux/mm_types.h"
1412struct mm_struct {
1413   struct vm_area_struct *mmap ;
1414   struct rb_root mm_rb ;
1415   struct vm_area_struct *mmap_cache ;
1416   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
1417                                      unsigned long  , unsigned long  ) ;
1418   void (*unmap_area)(struct mm_struct * , unsigned long  ) ;
1419   unsigned long mmap_base ;
1420   unsigned long task_size ;
1421   unsigned long cached_hole_size ;
1422   unsigned long free_area_cache ;
1423   pgd_t *pgd ;
1424   atomic_t mm_users ;
1425   atomic_t mm_count ;
1426   int map_count ;
1427   spinlock_t page_table_lock ;
1428   struct rw_semaphore mmap_sem ;
1429   struct list_head mmlist ;
1430   unsigned long hiwater_rss ;
1431   unsigned long hiwater_vm ;
1432   unsigned long total_vm ;
1433   unsigned long locked_vm ;
1434   unsigned long pinned_vm ;
1435   unsigned long shared_vm ;
1436   unsigned long exec_vm ;
1437   unsigned long stack_vm ;
1438   unsigned long reserved_vm ;
1439   unsigned long def_flags ;
1440   unsigned long nr_ptes ;
1441   unsigned long start_code ;
1442   unsigned long end_code ;
1443   unsigned long start_data ;
1444   unsigned long end_data ;
1445   unsigned long start_brk ;
1446   unsigned long brk ;
1447   unsigned long start_stack ;
1448   unsigned long arg_start ;
1449   unsigned long arg_end ;
1450   unsigned long env_start ;
1451   unsigned long env_end ;
1452   unsigned long saved_auxv[44U] ;
1453   struct mm_rss_stat rss_stat ;
1454   struct linux_binfmt *binfmt ;
1455   cpumask_var_t cpu_vm_mask_var ;
1456   mm_context_t context ;
1457   unsigned int faultstamp ;
1458   unsigned int token_priority ;
1459   unsigned int last_interval ;
1460   unsigned long flags ;
1461   struct core_state *core_state ;
1462   spinlock_t ioctx_lock ;
1463   struct hlist_head ioctx_list ;
1464   struct task_struct *owner ;
1465   struct file *exe_file ;
1466   unsigned long num_exe_file_vmas ;
1467   struct mmu_notifier_mm *mmu_notifier_mm ;
1468   pgtable_t pmd_huge_pte ;
1469   struct cpumask cpumask_allocation ;
1470};
1471#line 178 "include/linux/mm.h"
1472struct vm_fault {
1473   unsigned int flags ;
1474   unsigned long pgoff ;
1475   void *virtual_address ;
1476   struct page *page ;
1477};
1478#line 195 "include/linux/mm.h"
1479struct vm_operations_struct {
1480   void (*open)(struct vm_area_struct * ) ;
1481   void (*close)(struct vm_area_struct * ) ;
1482   int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
1483   int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
1484   int (*access)(struct vm_area_struct * , unsigned long  , void * , int  , int  ) ;
1485   int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
1486   struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long  ) ;
1487   int (*migrate)(struct vm_area_struct * , nodemask_t const   * , nodemask_t const   * ,
1488                  unsigned long  ) ;
1489};
1490#line 31 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pci_64.h"
1491struct dma_attrs {
1492   unsigned long flags[1U] ;
1493};
1494#line 67 "include/linux/dma-attrs.h"
1495enum dma_data_direction {
1496    DMA_BIDIRECTIONAL = 0,
1497    DMA_TO_DEVICE = 1,
1498    DMA_FROM_DEVICE = 2,
1499    DMA_NONE = 3
1500} ;
1501#line 268 "include/linux/scatterlist.h"
1502struct dma_map_ops {
1503   void *(*alloc)(struct device * , size_t  , dma_addr_t * , gfp_t  , struct dma_attrs * ) ;
1504   void (*free)(struct device * , size_t  , void * , dma_addr_t  , struct dma_attrs * ) ;
1505   int (*mmap)(struct device * , struct vm_area_struct * , void * , dma_addr_t  ,
1506               size_t  , struct dma_attrs * ) ;
1507   dma_addr_t (*map_page)(struct device * , struct page * , unsigned long  , size_t  ,
1508                          enum dma_data_direction  , struct dma_attrs * ) ;
1509   void (*unmap_page)(struct device * , dma_addr_t  , size_t  , enum dma_data_direction  ,
1510                      struct dma_attrs * ) ;
1511   int (*map_sg)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ,
1512                 struct dma_attrs * ) ;
1513   void (*unmap_sg)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ,
1514                    struct dma_attrs * ) ;
1515   void (*sync_single_for_cpu)(struct device * , dma_addr_t  , size_t  , enum dma_data_direction  ) ;
1516   void (*sync_single_for_device)(struct device * , dma_addr_t  , size_t  , enum dma_data_direction  ) ;
1517   void (*sync_sg_for_cpu)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ) ;
1518   void (*sync_sg_for_device)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ) ;
1519   int (*mapping_error)(struct device * , dma_addr_t  ) ;
1520   int (*dma_supported)(struct device * , u64  ) ;
1521   int (*set_dma_mask)(struct device * , u64  ) ;
1522   int is_phys ;
1523};
1524#line 11 "include/linux/mempool.h"
1525typedef void *mempool_alloc_t(gfp_t  , void * );
1526#line 12 "include/linux/mempool.h"
1527typedef void mempool_free_t(void * , void * );
1528#line 13 "include/linux/mempool.h"
1529struct mempool_s {
1530   spinlock_t lock ;
1531   int min_nr ;
1532   int curr_nr ;
1533   void **elements ;
1534   void *pool_data ;
1535   mempool_alloc_t *alloc ;
1536   mempool_free_t *free ;
1537   wait_queue_head_t wait ;
1538};
1539#line 24 "include/linux/mempool.h"
1540typedef struct mempool_s mempool_t;
1541#line 76 "include/linux/mempool.h"
1542struct semaphore {
1543   raw_spinlock_t lock ;
1544   unsigned int count ;
1545   struct list_head wait_list ;
1546};
1547#line 45 "include/linux/semaphore.h"
1548struct __anonstruct_s_150 {
1549   u8 version_offset ;
1550   u8 flags ;
1551   u16 size ;
1552   unsigned short target_tid : 12 ;
1553   unsigned short init_tid : 12 ;
1554   unsigned char function ;
1555   u32 icntxt ;
1556   u32 tcntxt ;
1557};
1558#line 45 "include/linux/semaphore.h"
1559union __anonunion_u_149 {
1560   struct __anonstruct_s_150 s ;
1561   u32 head[4U] ;
1562};
1563#line 45 "include/linux/semaphore.h"
1564struct i2o_message {
1565   union __anonunion_u_149 u ;
1566   u32 body[0U] ;
1567};
1568#line 417 "include/linux/i2o.h"
1569struct i2o_controller;
1570#line 417 "include/linux/i2o.h"
1571struct i2o_device {
1572   i2o_lct_entry lct_data ;
1573   struct i2o_controller *iop ;
1574   struct list_head list ;
1575   struct device device ;
1576   struct mutex lock ;
1577};
1578#line 445 "include/linux/i2o.h"
1579struct i2o_class_id {
1580   unsigned short class_id : 12 ;
1581};
1582#line 452 "include/linux/i2o.h"
1583struct i2o_driver {
1584   char *name ;
1585   int context ;
1586   struct i2o_class_id *classes ;
1587   int (*reply)(struct i2o_controller * , u32  , struct i2o_message * ) ;
1588   void (*event)(struct work_struct * ) ;
1589   struct workqueue_struct *event_queue ;
1590   struct device_driver driver ;
1591   void (*notify_controller_add)(struct i2o_controller * ) ;
1592   void (*notify_controller_remove)(struct i2o_controller * ) ;
1593   void (*notify_device_add)(struct i2o_device * ) ;
1594   void (*notify_device_remove)(struct i2o_device * ) ;
1595   struct semaphore lock ;
1596};
1597#line 479 "include/linux/i2o.h"
1598struct i2o_dma {
1599   void *virt ;
1600   dma_addr_t phys ;
1601   size_t len ;
1602};
1603#line 488 "include/linux/i2o.h"
1604struct i2o_pool {
1605   char *name ;
1606   struct kmem_cache *slab ;
1607   mempool_t *mempool ;
1608};
1609#line 497 "include/linux/i2o.h"
1610struct i2o_io {
1611   void *virt ;
1612   unsigned long phys ;
1613   unsigned long len ;
1614};
1615#line 516 "include/linux/i2o.h"
1616struct i2o_controller {
1617   char name[16U] ;
1618   int unit ;
1619   int type ;
1620   struct pci_dev *pdev ;
1621   unsigned char promise : 1 ;
1622   unsigned char adaptec : 1 ;
1623   unsigned char raptor : 1 ;
1624   unsigned char no_quiesce : 1 ;
1625   unsigned char short_req : 1 ;
1626   unsigned char limit_sectors : 1 ;
1627   unsigned char pae_support : 1 ;
1628   struct list_head devices ;
1629   struct list_head list ;
1630   void *in_port ;
1631   void *out_port ;
1632   void *irq_status ;
1633   void *irq_mask ;
1634   struct i2o_dma status ;
1635   struct i2o_dma hrt ;
1636   i2o_lct *lct ;
1637   struct i2o_dma dlct ;
1638   struct mutex lct_lock ;
1639   struct i2o_dma status_block ;
1640   struct i2o_io base ;
1641   struct i2o_io in_queue ;
1642   struct i2o_dma out_queue ;
1643   struct i2o_pool in_msg ;
1644   unsigned char battery : 1 ;
1645   unsigned char io_alloc : 1 ;
1646   unsigned char mem_alloc : 1 ;
1647   struct resource io_resource ;
1648   struct resource mem_resource ;
1649   struct device device ;
1650   struct i2o_device *exec ;
1651   spinlock_t context_list_lock ;
1652   atomic_t context_list_counter ;
1653   struct list_head context_list ;
1654   spinlock_t lock ;
1655   void *driver_data[8U] ;
1656};
1657#line 1 "<compiler builtins>"
1658long __builtin_expect(long  , long  ) ;
1659#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1660void ldv_spin_lock(void) ;
1661#line 3
1662void ldv_spin_unlock(void) ;
1663#line 4
1664int ldv_spin_trylock(void) ;
1665#line 101 "include/linux/printk.h"
1666extern int printk(char const   *  , ...) ;
1667#line 32 "include/linux/err.h"
1668__inline static long IS_ERR(void const   *ptr ) 
1669{ long tmp ;
1670  unsigned long __cil_tmp3 ;
1671  int __cil_tmp4 ;
1672  long __cil_tmp5 ;
1673
1674  {
1675  {
1676#line 34
1677  __cil_tmp3 = (unsigned long )ptr;
1678#line 34
1679  __cil_tmp4 = __cil_tmp3 > 0xfffffffffffff000UL;
1680#line 34
1681  __cil_tmp5 = (long )__cil_tmp4;
1682#line 34
1683  tmp = __builtin_expect(__cil_tmp5, 0L);
1684  }
1685#line 34
1686  return (tmp);
1687}
1688}
1689#line 220 "include/linux/slub_def.h"
1690extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t  ) ;
1691#line 223
1692void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
1693#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1694void ldv_check_alloc_flags(gfp_t flags ) ;
1695#line 12
1696void ldv_check_alloc_nonatomic(void) ;
1697#line 14
1698struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
1699#line 507 "include/linux/device.h"
1700extern int device_create_file(struct device * , struct device_attribute  const  * ) ;
1701#line 509
1702extern void device_remove_file(struct device * , struct device_attribute  const  * ) ;
1703#line 855
1704extern struct device *get_device(struct device * ) ;
1705#line 856
1706extern void put_device(struct device * ) ;
1707#line 33 "include/linux/mempool.h"
1708extern void *mempool_alloc(mempool_t * , gfp_t  ) ;
1709#line 36
1710void *ldv_mempool_alloc_19(mempool_t *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
1711#line 614 "include/linux/i2o.h"
1712extern struct i2o_message *i2o_msg_get_wait(struct i2o_controller * , int  ) ;
1713#line 615
1714extern int i2o_msg_post_wait_mem(struct i2o_controller * , struct i2o_message * ,
1715                                 unsigned long  , struct i2o_dma * ) ;
1716#line 711
1717extern int i2o_driver_register(struct i2o_driver * ) ;
1718#line 712
1719extern void i2o_driver_unregister(struct i2o_driver * ) ;
1720#line 890 "include/linux/i2o.h"
1721__inline static int i2o_msg_post_wait(struct i2o_controller *c , struct i2o_message *msg ,
1722                                      unsigned long timeout ) 
1723{ int tmp ;
1724  struct i2o_dma *__cil_tmp5 ;
1725
1726  {
1727  {
1728#line 894
1729  __cil_tmp5 = (struct i2o_dma *)0;
1730#line 894
1731  tmp = i2o_msg_post_wait_mem(c, msg, timeout, __cil_tmp5);
1732  }
1733#line 894
1734  return (tmp);
1735}
1736}
1737#line 38 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1738static struct i2o_driver i2o_bus_driver ;
1739#line 41 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1740static struct i2o_class_id i2o_bus_class_id[2U]  = {      {(unsigned short)128}, 
1741        {(unsigned short)4095}};
1742#line 55 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1743static int i2o_bus_scan(struct i2o_device *dev ) 
1744{ struct i2o_message *msg ;
1745  long tmp ;
1746  int tmp___0 ;
1747  unsigned long __cil_tmp5 ;
1748  unsigned long __cil_tmp6 ;
1749  struct i2o_controller *__cil_tmp7 ;
1750  void const   *__cil_tmp8 ;
1751  unsigned long __cil_tmp9 ;
1752  unsigned long __cil_tmp10 ;
1753  unsigned long __cil_tmp11 ;
1754  unsigned long __cil_tmp12 ;
1755  unsigned long __cil_tmp13 ;
1756  unsigned long __cil_tmp14 ;
1757  unsigned long __cil_tmp15 ;
1758  unsigned long __cil_tmp16 ;
1759  unsigned long __cil_tmp17 ;
1760  unsigned long __cil_tmp18 ;
1761  unsigned long __cil_tmp19 ;
1762  unsigned long __cil_tmp20 ;
1763  unsigned long __cil_tmp21 ;
1764  unsigned short __cil_tmp22 ;
1765  int __cil_tmp23 ;
1766  int __cil_tmp24 ;
1767  unsigned long __cil_tmp25 ;
1768  unsigned long __cil_tmp26 ;
1769  struct i2o_controller *__cil_tmp27 ;
1770
1771  {
1772  {
1773#line 59
1774  __cil_tmp5 = (unsigned long )dev;
1775#line 59
1776  __cil_tmp6 = __cil_tmp5 + 40;
1777#line 59
1778  __cil_tmp7 = *((struct i2o_controller **)__cil_tmp6);
1779#line 59
1780  msg = i2o_msg_get_wait(__cil_tmp7, 5);
1781#line 60
1782  __cil_tmp8 = (void const   *)msg;
1783#line 60
1784  tmp = IS_ERR(__cil_tmp8);
1785  }
1786#line 60
1787  if (tmp != 0L) {
1788#line 61
1789    return (-110);
1790  } else {
1791
1792  }
1793  {
1794#line 63
1795  __cil_tmp9 = 0 * 4UL;
1796#line 63
1797  __cil_tmp10 = 0 + __cil_tmp9;
1798#line 63
1799  __cil_tmp11 = 0 + __cil_tmp10;
1800#line 63
1801  __cil_tmp12 = (unsigned long )msg;
1802#line 63
1803  __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
1804#line 63
1805  *((u32 *)__cil_tmp13) = 327681U;
1806#line 64
1807  __cil_tmp14 = 1 * 4UL;
1808#line 64
1809  __cil_tmp15 = 0 + __cil_tmp14;
1810#line 64
1811  __cil_tmp16 = 0 + __cil_tmp15;
1812#line 64
1813  __cil_tmp17 = (unsigned long )msg;
1814#line 64
1815  __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
1816#line 64
1817  __cil_tmp19 = 0 + 2;
1818#line 64
1819  __cil_tmp20 = (unsigned long )dev;
1820#line 64
1821  __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
1822#line 64
1823  __cil_tmp22 = *((unsigned short *)__cil_tmp21);
1824#line 64
1825  __cil_tmp23 = (int )__cil_tmp22;
1826#line 64
1827  __cil_tmp24 = __cil_tmp23 | -1996484608;
1828#line 64
1829  *((u32 *)__cil_tmp18) = (unsigned int )__cil_tmp24;
1830#line 68
1831  __cil_tmp25 = (unsigned long )dev;
1832#line 68
1833  __cil_tmp26 = __cil_tmp25 + 40;
1834#line 68
1835  __cil_tmp27 = *((struct i2o_controller **)__cil_tmp26);
1836#line 68
1837  tmp___0 = i2o_msg_post_wait(__cil_tmp27, msg, 60UL);
1838  }
1839#line 68
1840  return (tmp___0);
1841}
1842}
1843#line 80 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1844static ssize_t i2o_bus_store_scan(struct device *d , struct device_attribute *attr ,
1845                                  char const   *buf , size_t count ) 
1846{ struct i2o_device *i2o_dev ;
1847  struct device  const  *__mptr ;
1848  int rc ;
1849  struct i2o_device *__cil_tmp8 ;
1850  char *__cil_tmp9 ;
1851
1852  {
1853  {
1854#line 84
1855  __mptr = (struct device  const  *)d;
1856#line 84
1857  __cil_tmp8 = (struct i2o_device *)__mptr;
1858#line 84
1859  i2o_dev = __cil_tmp8 + 0xffffffffffffffc0UL;
1860#line 87
1861  rc = i2o_bus_scan(i2o_dev);
1862  }
1863#line 87
1864  if (rc != 0) {
1865    {
1866#line 88
1867    __cil_tmp9 = (char *)"bus-osm";
1868#line 88
1869    printk("<4>%s: bus scan failed %d\n", __cil_tmp9, rc);
1870    }
1871  } else {
1872
1873  }
1874#line 90
1875  return ((ssize_t )count);
1876}
1877}
1878#line 94 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1879static struct device_attribute dev_attr_scan  =    {{"scan", (umode_t )128U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
1880                                                           {(char)0}, {(char)0}, {(char)0},
1881                                                           {(char)0}, {(char)0}}}},
1882    (ssize_t (*)(struct device * , struct device_attribute * , char * ))0, & i2o_bus_store_scan};
1883#line 105 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1884static int i2o_bus_probe(struct device *dev ) 
1885{ struct i2o_device *i2o_dev ;
1886  struct device  const  *__mptr ;
1887  struct device *tmp ;
1888  int rc ;
1889  struct i2o_device *__cil_tmp6 ;
1890  struct device_attribute  const  *__cil_tmp7 ;
1891  char *__cil_tmp8 ;
1892  unsigned long __cil_tmp9 ;
1893  unsigned long __cil_tmp10 ;
1894  unsigned long __cil_tmp11 ;
1895  unsigned short __cil_tmp12 ;
1896  int __cil_tmp13 ;
1897
1898  {
1899  {
1900#line 107
1901  tmp = get_device(dev);
1902#line 107
1903  __mptr = (struct device  const  *)tmp;
1904#line 107
1905  __cil_tmp6 = (struct i2o_device *)__mptr;
1906#line 107
1907  i2o_dev = __cil_tmp6 + 0xffffffffffffffc0UL;
1908#line 110
1909  __cil_tmp7 = (struct device_attribute  const  *)(& dev_attr_scan);
1910#line 110
1911  rc = device_create_file(dev, __cil_tmp7);
1912  }
1913#line 111
1914  if (rc != 0) {
1915#line 112
1916    goto err_out;
1917  } else {
1918
1919  }
1920  {
1921#line 114
1922  __cil_tmp8 = (char *)"bus-osm";
1923#line 114
1924  __cil_tmp9 = 0 + 2;
1925#line 114
1926  __cil_tmp10 = (unsigned long )i2o_dev;
1927#line 114
1928  __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
1929#line 114
1930  __cil_tmp12 = *((unsigned short *)__cil_tmp11);
1931#line 114
1932  __cil_tmp13 = (int )__cil_tmp12;
1933#line 114
1934  printk("<6>%s: device added (TID: %03x)\n", __cil_tmp8, __cil_tmp13);
1935  }
1936#line 116
1937  return (0);
1938  err_out: 
1939  {
1940#line 119
1941  put_device(dev);
1942  }
1943#line 120
1944  return (rc);
1945}
1946}
1947#line 129 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1948static int i2o_bus_remove(struct device *dev ) 
1949{ struct i2o_device *i2o_dev ;
1950  struct device  const  *__mptr ;
1951  struct i2o_device *__cil_tmp4 ;
1952  struct device_attribute  const  *__cil_tmp5 ;
1953  char *__cil_tmp6 ;
1954  unsigned long __cil_tmp7 ;
1955  unsigned long __cil_tmp8 ;
1956  unsigned long __cil_tmp9 ;
1957  unsigned short __cil_tmp10 ;
1958  int __cil_tmp11 ;
1959
1960  {
1961  {
1962#line 131
1963  __mptr = (struct device  const  *)dev;
1964#line 131
1965  __cil_tmp4 = (struct i2o_device *)__mptr;
1966#line 131
1967  i2o_dev = __cil_tmp4 + 0xffffffffffffffc0UL;
1968#line 133
1969  __cil_tmp5 = (struct device_attribute  const  *)(& dev_attr_scan);
1970#line 133
1971  device_remove_file(dev, __cil_tmp5);
1972#line 135
1973  put_device(dev);
1974#line 137
1975  __cil_tmp6 = (char *)"bus-osm";
1976#line 137
1977  __cil_tmp7 = 0 + 2;
1978#line 137
1979  __cil_tmp8 = (unsigned long )i2o_dev;
1980#line 137
1981  __cil_tmp9 = __cil_tmp8 + __cil_tmp7;
1982#line 137
1983  __cil_tmp10 = *((unsigned short *)__cil_tmp9);
1984#line 137
1985  __cil_tmp11 = (int )__cil_tmp10;
1986#line 137
1987  printk("<6>%s: device removed (TID: %03x)\n", __cil_tmp6, __cil_tmp11);
1988  }
1989#line 139
1990  return (0);
1991}
1992}
1993#line 143 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
1994static struct i2o_driver i2o_bus_driver  = 
1995#line 143
1996     {(char *)"bus-osm", 0, (struct i2o_class_id *)(& i2o_bus_class_id), (int (*)(struct i2o_controller * ,
1997                                                                                u32  ,
1998                                                                                struct i2o_message * ))0,
1999    (void (*)(struct work_struct * ))0, (struct workqueue_struct *)0, {(char const   *)0,
2000                                                                       (struct bus_type *)0,
2001                                                                       (struct module *)0,
2002                                                                       (char const   *)0,
2003                                                                       (_Bool)0, (struct of_device_id  const  *)0,
2004                                                                       & i2o_bus_probe,
2005                                                                       & i2o_bus_remove,
2006                                                                       (void (*)(struct device * ))0,
2007                                                                       (int (*)(struct device * ,
2008                                                                                pm_message_t  ))0,
2009                                                                       (int (*)(struct device * ))0,
2010                                                                       (struct attribute_group  const  **)0,
2011                                                                       (struct dev_pm_ops  const  *)0,
2012                                                                       (struct driver_private *)0},
2013    (void (*)(struct i2o_controller * ))0, (void (*)(struct i2o_controller * ))0,
2014    (void (*)(struct i2o_device * ))0, (void (*)(struct i2o_device * ))0, {{{{0U}},
2015                                                                            0U, 0U,
2016                                                                            (void *)0,
2017                                                                            {(struct lock_class_key *)0,
2018                                                                             {(struct lock_class *)0,
2019                                                                              (struct lock_class *)0},
2020                                                                             (char const   *)0,
2021                                                                             0, 0UL}},
2022                                                                           0U, {(struct list_head *)0,
2023                                                                                (struct list_head *)0}}};
2024#line 159 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2025static int i2o_bus_init(void) 
2026{ int rc ;
2027  char *__cil_tmp2 ;
2028
2029  {
2030  {
2031#line 163
2032  printk("<6>I2O Bus Adapter OSM v1.317\n");
2033#line 166
2034  rc = i2o_driver_register(& i2o_bus_driver);
2035  }
2036#line 167
2037  if (rc != 0) {
2038    {
2039#line 168
2040    __cil_tmp2 = (char *)"bus-osm";
2041#line 168
2042    printk("<3>%s: Could not register Bus Adapter OSM\n", __cil_tmp2);
2043    }
2044#line 169
2045    return (rc);
2046  } else {
2047
2048  }
2049#line 172
2050  return (0);
2051}
2052}
2053#line 180 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2054static void i2o_bus_exit(void) 
2055{ 
2056
2057  {
2058  {
2059#line 182
2060  i2o_driver_unregister(& i2o_bus_driver);
2061  }
2062#line 183
2063  return;
2064}
2065}
2066#line 209
2067extern void ldv_check_final_state(void) ;
2068#line 212
2069extern void ldv_check_return_value(int  ) ;
2070#line 215
2071extern void ldv_initialize(void) ;
2072#line 218
2073extern int __VERIFIER_nondet_int(void) ;
2074#line 221 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2075int LDV_IN_INTERRUPT  ;
2076#line 224 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2077void main(void) 
2078{ struct device *var_group1 ;
2079  int res_i2o_bus_probe_2 ;
2080  int ldv_s_i2o_bus_driver_i2o_driver ;
2081  int tmp ;
2082  int tmp___0 ;
2083  int tmp___1 ;
2084
2085  {
2086  {
2087#line 275
2088  ldv_s_i2o_bus_driver_i2o_driver = 0;
2089#line 254
2090  LDV_IN_INTERRUPT = 1;
2091#line 263
2092  ldv_initialize();
2093#line 273
2094  tmp = i2o_bus_init();
2095  }
2096#line 273
2097  if (tmp != 0) {
2098#line 274
2099    goto ldv_final;
2100  } else {
2101
2102  }
2103#line 279
2104  goto ldv_20482;
2105  ldv_20481: 
2106  {
2107#line 283
2108  tmp___0 = __VERIFIER_nondet_int();
2109  }
2110#line 285
2111  if (tmp___0 == 0) {
2112#line 285
2113    goto case_0;
2114  } else
2115#line 308
2116  if (tmp___0 == 1) {
2117#line 308
2118    goto case_1;
2119  } else {
2120    {
2121#line 328
2122    goto switch_default;
2123#line 283
2124    if (0) {
2125      case_0: /* CIL Label */ ;
2126#line 288
2127      if (ldv_s_i2o_bus_driver_i2o_driver == 0) {
2128        {
2129#line 297
2130        res_i2o_bus_probe_2 = i2o_bus_probe(var_group1);
2131#line 298
2132        ldv_check_return_value(res_i2o_bus_probe_2);
2133        }
2134#line 299
2135        if (res_i2o_bus_probe_2 != 0) {
2136#line 300
2137          goto ldv_module_exit;
2138        } else {
2139
2140        }
2141#line 301
2142        ldv_s_i2o_bus_driver_i2o_driver = 0;
2143      } else {
2144
2145      }
2146#line 307
2147      goto ldv_20478;
2148      case_1: /* CIL Label */ 
2149      {
2150#line 320
2151      i2o_bus_remove(var_group1);
2152      }
2153#line 327
2154      goto ldv_20478;
2155      switch_default: /* CIL Label */ ;
2156#line 328
2157      goto ldv_20478;
2158    } else {
2159      switch_break: /* CIL Label */ ;
2160    }
2161    }
2162  }
2163  ldv_20478: ;
2164  ldv_20482: 
2165  {
2166#line 279
2167  tmp___1 = __VERIFIER_nondet_int();
2168  }
2169#line 279
2170  if (tmp___1 != 0) {
2171#line 281
2172    goto ldv_20481;
2173  } else
2174#line 279
2175  if (ldv_s_i2o_bus_driver_i2o_driver != 0) {
2176#line 281
2177    goto ldv_20481;
2178  } else {
2179#line 283
2180    goto ldv_20483;
2181  }
2182  ldv_20483: ;
2183  ldv_module_exit: 
2184  {
2185#line 344
2186  i2o_bus_exit();
2187  }
2188  ldv_final: 
2189  {
2190#line 347
2191  ldv_check_final_state();
2192  }
2193#line 350
2194  return;
2195}
2196}
2197#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
2198void ldv_blast_assert(void) 
2199{ 
2200
2201  {
2202  ERROR: ;
2203#line 6
2204  goto ERROR;
2205}
2206}
2207#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
2208extern int __VERIFIER_nondet_int(void) ;
2209#line 371 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2210int ldv_spin  =    0;
2211#line 375 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2212void ldv_check_alloc_flags(gfp_t flags ) 
2213{ 
2214
2215  {
2216#line 378
2217  if (ldv_spin != 0) {
2218#line 378
2219    if (flags != 32U) {
2220      {
2221#line 378
2222      ldv_blast_assert();
2223      }
2224    } else {
2225
2226    }
2227  } else {
2228
2229  }
2230#line 381
2231  return;
2232}
2233}
2234#line 381
2235extern struct page *ldv_some_page(void) ;
2236#line 384 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2237struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) 
2238{ struct page *tmp ;
2239
2240  {
2241#line 387
2242  if (ldv_spin != 0) {
2243#line 387
2244    if (flags != 32U) {
2245      {
2246#line 387
2247      ldv_blast_assert();
2248      }
2249    } else {
2250
2251    }
2252  } else {
2253
2254  }
2255  {
2256#line 389
2257  tmp = ldv_some_page();
2258  }
2259#line 389
2260  return (tmp);
2261}
2262}
2263#line 393 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2264void ldv_check_alloc_nonatomic(void) 
2265{ 
2266
2267  {
2268#line 396
2269  if (ldv_spin != 0) {
2270    {
2271#line 396
2272    ldv_blast_assert();
2273    }
2274  } else {
2275
2276  }
2277#line 399
2278  return;
2279}
2280}
2281#line 400 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2282void ldv_spin_lock(void) 
2283{ 
2284
2285  {
2286#line 403
2287  ldv_spin = 1;
2288#line 404
2289  return;
2290}
2291}
2292#line 407 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2293void ldv_spin_unlock(void) 
2294{ 
2295
2296  {
2297#line 410
2298  ldv_spin = 0;
2299#line 411
2300  return;
2301}
2302}
2303#line 414 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2304int ldv_spin_trylock(void) 
2305{ int is_lock ;
2306
2307  {
2308  {
2309#line 419
2310  is_lock = __VERIFIER_nondet_int();
2311  }
2312#line 421
2313  if (is_lock != 0) {
2314#line 424
2315    return (0);
2316  } else {
2317#line 429
2318    ldv_spin = 1;
2319#line 431
2320    return (1);
2321  }
2322}
2323}
2324#line 598 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2325void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
2326{ 
2327
2328  {
2329  {
2330#line 604
2331  ldv_check_alloc_flags(ldv_func_arg2);
2332#line 606
2333  kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
2334  }
2335#line 607
2336  return ((void *)0);
2337}
2338}
2339#line 630 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/11974/dscv_tempdir/dscv/ri/43_1a/drivers/message/i2o/bus-osm.c.p"
2340void *ldv_mempool_alloc_19(mempool_t *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
2341{ 
2342
2343  {
2344  {
2345#line 636
2346  ldv_check_alloc_flags(ldv_func_arg2);
2347#line 638
2348  mempool_alloc(ldv_func_arg1, ldv_func_arg2);
2349  }
2350#line 639
2351  return ((void *)0);
2352}
2353}