Showing error 1162

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