Showing error 484

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