Showing error 680

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--usb--otg--nop-usb-xceiv.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 2536
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 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
  83struct module;
  84#line 56
  85struct module;
  86#line 146 "include/linux/init.h"
  87typedef void (*ctor_fn_t)(void);
  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 200
  97struct atomic_notifier_head;
  98#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
  99struct page;
 100#line 18
 101struct page;
 102#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 103struct task_struct;
 104#line 20
 105struct task_struct;
 106#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 107struct task_struct;
 108#line 8
 109struct mm_struct;
 110#line 8
 111struct mm_struct;
 112#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 113typedef unsigned long pgdval_t;
 114#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 115typedef unsigned long pgprotval_t;
 116#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 117struct pgprot {
 118   pgprotval_t pgprot ;
 119};
 120#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 121typedef struct pgprot pgprot_t;
 122#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 123struct __anonstruct_pgd_t_20 {
 124   pgdval_t pgd ;
 125};
 126#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 127typedef struct __anonstruct_pgd_t_20 pgd_t;
 128#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 129typedef struct page *pgtable_t;
 130#line 295
 131struct file;
 132#line 295
 133struct file;
 134#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 135struct page;
 136#line 50
 137struct mm_struct;
 138#line 52
 139struct task_struct;
 140#line 53
 141struct cpumask;
 142#line 53
 143struct cpumask;
 144#line 329
 145struct arch_spinlock;
 146#line 329
 147struct arch_spinlock;
 148#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 149struct task_struct;
 150#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 151struct task_struct;
 152#line 10 "include/asm-generic/bug.h"
 153struct bug_entry {
 154   int bug_addr_disp ;
 155   int file_disp ;
 156   unsigned short line ;
 157   unsigned short flags ;
 158};
 159#line 14 "include/linux/cpumask.h"
 160struct cpumask {
 161   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 162};
 163#line 637 "include/linux/cpumask.h"
 164typedef struct cpumask *cpumask_var_t;
 165#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 166struct static_key;
 167#line 234
 168struct static_key;
 169#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 170struct kmem_cache;
 171#line 23 "include/asm-generic/atomic-long.h"
 172typedef atomic64_t atomic_long_t;
 173#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 174typedef u16 __ticket_t;
 175#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 176typedef u32 __ticketpair_t;
 177#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 178struct __raw_tickets {
 179   __ticket_t head ;
 180   __ticket_t tail ;
 181};
 182#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 183union __anonunion____missing_field_name_36 {
 184   __ticketpair_t head_tail ;
 185   struct __raw_tickets tickets ;
 186};
 187#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 188struct arch_spinlock {
 189   union __anonunion____missing_field_name_36 __annonCompField17 ;
 190};
 191#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 192typedef struct arch_spinlock arch_spinlock_t;
 193#line 12 "include/linux/lockdep.h"
 194struct task_struct;
 195#line 391 "include/linux/lockdep.h"
 196struct lock_class_key {
 197
 198};
 199#line 20 "include/linux/spinlock_types.h"
 200struct raw_spinlock {
 201   arch_spinlock_t raw_lock ;
 202   unsigned int magic ;
 203   unsigned int owner_cpu ;
 204   void *owner ;
 205};
 206#line 20 "include/linux/spinlock_types.h"
 207typedef struct raw_spinlock raw_spinlock_t;
 208#line 64 "include/linux/spinlock_types.h"
 209union __anonunion____missing_field_name_39 {
 210   struct raw_spinlock rlock ;
 211};
 212#line 64 "include/linux/spinlock_types.h"
 213struct spinlock {
 214   union __anonunion____missing_field_name_39 __annonCompField19 ;
 215};
 216#line 64 "include/linux/spinlock_types.h"
 217typedef struct spinlock spinlock_t;
 218#line 49 "include/linux/wait.h"
 219struct __wait_queue_head {
 220   spinlock_t lock ;
 221   struct list_head task_list ;
 222};
 223#line 53 "include/linux/wait.h"
 224typedef struct __wait_queue_head wait_queue_head_t;
 225#line 55
 226struct task_struct;
 227#line 98 "include/linux/nodemask.h"
 228struct __anonstruct_nodemask_t_42 {
 229   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 230};
 231#line 98 "include/linux/nodemask.h"
 232typedef struct __anonstruct_nodemask_t_42 nodemask_t;
 233#line 60 "include/linux/pageblock-flags.h"
 234struct page;
 235#line 48 "include/linux/mutex.h"
 236struct mutex {
 237   atomic_t count ;
 238   spinlock_t wait_lock ;
 239   struct list_head wait_list ;
 240   struct task_struct *owner ;
 241   char const   *name ;
 242   void *magic ;
 243};
 244#line 19 "include/linux/rwsem.h"
 245struct rw_semaphore;
 246#line 19
 247struct rw_semaphore;
 248#line 25 "include/linux/rwsem.h"
 249struct rw_semaphore {
 250   long count ;
 251   raw_spinlock_t wait_lock ;
 252   struct list_head wait_list ;
 253};
 254#line 25 "include/linux/completion.h"
 255struct completion {
 256   unsigned int done ;
 257   wait_queue_head_t wait ;
 258};
 259#line 188 "include/linux/rcupdate.h"
 260struct notifier_block;
 261#line 188
 262struct notifier_block;
 263#line 50 "include/linux/notifier.h"
 264struct notifier_block {
 265   int (*notifier_call)(struct notifier_block * , unsigned long  , void * ) ;
 266   struct notifier_block *next ;
 267   int priority ;
 268};
 269#line 56 "include/linux/notifier.h"
 270struct atomic_notifier_head {
 271   spinlock_t lock ;
 272   struct notifier_block *head ;
 273};
 274#line 9 "include/linux/memory_hotplug.h"
 275struct page;
 276#line 18 "include/linux/ioport.h"
 277struct resource {
 278   resource_size_t start ;
 279   resource_size_t end ;
 280   char const   *name ;
 281   unsigned long flags ;
 282   struct resource *parent ;
 283   struct resource *sibling ;
 284   struct resource *child ;
 285};
 286#line 202
 287struct device;
 288#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
 289struct device;
 290#line 46 "include/linux/ktime.h"
 291union ktime {
 292   s64 tv64 ;
 293};
 294#line 59 "include/linux/ktime.h"
 295typedef union ktime ktime_t;
 296#line 10 "include/linux/timer.h"
 297struct tvec_base;
 298#line 10
 299struct tvec_base;
 300#line 12 "include/linux/timer.h"
 301struct timer_list {
 302   struct list_head entry ;
 303   unsigned long expires ;
 304   struct tvec_base *base ;
 305   void (*function)(unsigned long  ) ;
 306   unsigned long data ;
 307   int slack ;
 308   int start_pid ;
 309   void *start_site ;
 310   char start_comm[16] ;
 311};
 312#line 17 "include/linux/workqueue.h"
 313struct work_struct;
 314#line 17
 315struct work_struct;
 316#line 79 "include/linux/workqueue.h"
 317struct work_struct {
 318   atomic_long_t data ;
 319   struct list_head entry ;
 320   void (*func)(struct work_struct *work ) ;
 321};
 322#line 42 "include/linux/pm.h"
 323struct device;
 324#line 50 "include/linux/pm.h"
 325struct pm_message {
 326   int event ;
 327};
 328#line 50 "include/linux/pm.h"
 329typedef struct pm_message pm_message_t;
 330#line 264 "include/linux/pm.h"
 331struct dev_pm_ops {
 332   int (*prepare)(struct device *dev ) ;
 333   void (*complete)(struct device *dev ) ;
 334   int (*suspend)(struct device *dev ) ;
 335   int (*resume)(struct device *dev ) ;
 336   int (*freeze)(struct device *dev ) ;
 337   int (*thaw)(struct device *dev ) ;
 338   int (*poweroff)(struct device *dev ) ;
 339   int (*restore)(struct device *dev ) ;
 340   int (*suspend_late)(struct device *dev ) ;
 341   int (*resume_early)(struct device *dev ) ;
 342   int (*freeze_late)(struct device *dev ) ;
 343   int (*thaw_early)(struct device *dev ) ;
 344   int (*poweroff_late)(struct device *dev ) ;
 345   int (*restore_early)(struct device *dev ) ;
 346   int (*suspend_noirq)(struct device *dev ) ;
 347   int (*resume_noirq)(struct device *dev ) ;
 348   int (*freeze_noirq)(struct device *dev ) ;
 349   int (*thaw_noirq)(struct device *dev ) ;
 350   int (*poweroff_noirq)(struct device *dev ) ;
 351   int (*restore_noirq)(struct device *dev ) ;
 352   int (*runtime_suspend)(struct device *dev ) ;
 353   int (*runtime_resume)(struct device *dev ) ;
 354   int (*runtime_idle)(struct device *dev ) ;
 355};
 356#line 458
 357enum rpm_status {
 358    RPM_ACTIVE = 0,
 359    RPM_RESUMING = 1,
 360    RPM_SUSPENDED = 2,
 361    RPM_SUSPENDING = 3
 362} ;
 363#line 480
 364enum rpm_request {
 365    RPM_REQ_NONE = 0,
 366    RPM_REQ_IDLE = 1,
 367    RPM_REQ_SUSPEND = 2,
 368    RPM_REQ_AUTOSUSPEND = 3,
 369    RPM_REQ_RESUME = 4
 370} ;
 371#line 488
 372struct wakeup_source;
 373#line 488
 374struct wakeup_source;
 375#line 495 "include/linux/pm.h"
 376struct pm_subsys_data {
 377   spinlock_t lock ;
 378   unsigned int refcount ;
 379};
 380#line 506
 381struct dev_pm_qos_request;
 382#line 506
 383struct pm_qos_constraints;
 384#line 506 "include/linux/pm.h"
 385struct dev_pm_info {
 386   pm_message_t power_state ;
 387   unsigned int can_wakeup : 1 ;
 388   unsigned int async_suspend : 1 ;
 389   bool is_prepared : 1 ;
 390   bool is_suspended : 1 ;
 391   bool ignore_children : 1 ;
 392   spinlock_t lock ;
 393   struct list_head entry ;
 394   struct completion completion ;
 395   struct wakeup_source *wakeup ;
 396   bool wakeup_path : 1 ;
 397   struct timer_list suspend_timer ;
 398   unsigned long timer_expires ;
 399   struct work_struct work ;
 400   wait_queue_head_t wait_queue ;
 401   atomic_t usage_count ;
 402   atomic_t child_count ;
 403   unsigned int disable_depth : 3 ;
 404   unsigned int idle_notification : 1 ;
 405   unsigned int request_pending : 1 ;
 406   unsigned int deferred_resume : 1 ;
 407   unsigned int run_wake : 1 ;
 408   unsigned int runtime_auto : 1 ;
 409   unsigned int no_callbacks : 1 ;
 410   unsigned int irq_safe : 1 ;
 411   unsigned int use_autosuspend : 1 ;
 412   unsigned int timer_autosuspends : 1 ;
 413   enum rpm_request request ;
 414   enum rpm_status runtime_status ;
 415   int runtime_error ;
 416   int autosuspend_delay ;
 417   unsigned long last_busy ;
 418   unsigned long active_jiffies ;
 419   unsigned long suspended_jiffies ;
 420   unsigned long accounting_timestamp ;
 421   ktime_t suspend_time ;
 422   s64 max_time_suspended_ns ;
 423   struct dev_pm_qos_request *pq_req ;
 424   struct pm_subsys_data *subsys_data ;
 425   struct pm_qos_constraints *constraints ;
 426};
 427#line 564 "include/linux/pm.h"
 428struct dev_pm_domain {
 429   struct dev_pm_ops ops ;
 430};
 431#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 432struct __anonstruct_mm_context_t_112 {
 433   void *ldt ;
 434   int size ;
 435   unsigned short ia32_compat ;
 436   struct mutex lock ;
 437   void *vdso ;
 438};
 439#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 440typedef struct __anonstruct_mm_context_t_112 mm_context_t;
 441#line 8 "include/linux/vmalloc.h"
 442struct vm_area_struct;
 443#line 8
 444struct vm_area_struct;
 445#line 994 "include/linux/mmzone.h"
 446struct page;
 447#line 10 "include/linux/gfp.h"
 448struct vm_area_struct;
 449#line 29 "include/linux/sysctl.h"
 450struct completion;
 451#line 100 "include/linux/rbtree.h"
 452struct rb_node {
 453   unsigned long rb_parent_color ;
 454   struct rb_node *rb_right ;
 455   struct rb_node *rb_left ;
 456} __attribute__((__aligned__(sizeof(long )))) ;
 457#line 110 "include/linux/rbtree.h"
 458struct rb_root {
 459   struct rb_node *rb_node ;
 460};
 461#line 49 "include/linux/kmod.h"
 462struct file;
 463#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 464struct task_struct;
 465#line 18 "include/linux/elf.h"
 466typedef __u64 Elf64_Addr;
 467#line 19 "include/linux/elf.h"
 468typedef __u16 Elf64_Half;
 469#line 23 "include/linux/elf.h"
 470typedef __u32 Elf64_Word;
 471#line 24 "include/linux/elf.h"
 472typedef __u64 Elf64_Xword;
 473#line 194 "include/linux/elf.h"
 474struct elf64_sym {
 475   Elf64_Word st_name ;
 476   unsigned char st_info ;
 477   unsigned char st_other ;
 478   Elf64_Half st_shndx ;
 479   Elf64_Addr st_value ;
 480   Elf64_Xword st_size ;
 481};
 482#line 194 "include/linux/elf.h"
 483typedef struct elf64_sym Elf64_Sym;
 484#line 438
 485struct file;
 486#line 20 "include/linux/kobject_ns.h"
 487struct sock;
 488#line 20
 489struct sock;
 490#line 21
 491struct kobject;
 492#line 21
 493struct kobject;
 494#line 27
 495enum kobj_ns_type {
 496    KOBJ_NS_TYPE_NONE = 0,
 497    KOBJ_NS_TYPE_NET = 1,
 498    KOBJ_NS_TYPES = 2
 499} ;
 500#line 40 "include/linux/kobject_ns.h"
 501struct kobj_ns_type_operations {
 502   enum kobj_ns_type type ;
 503   void *(*grab_current_ns)(void) ;
 504   void const   *(*netlink_ns)(struct sock *sk ) ;
 505   void const   *(*initial_ns)(void) ;
 506   void (*drop_ns)(void * ) ;
 507};
 508#line 22 "include/linux/sysfs.h"
 509struct kobject;
 510#line 23
 511struct module;
 512#line 24
 513enum kobj_ns_type;
 514#line 26 "include/linux/sysfs.h"
 515struct attribute {
 516   char const   *name ;
 517   umode_t mode ;
 518};
 519#line 56 "include/linux/sysfs.h"
 520struct attribute_group {
 521   char const   *name ;
 522   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 523   struct attribute **attrs ;
 524};
 525#line 85
 526struct file;
 527#line 86
 528struct vm_area_struct;
 529#line 88 "include/linux/sysfs.h"
 530struct bin_attribute {
 531   struct attribute attr ;
 532   size_t size ;
 533   void *private ;
 534   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 535                   loff_t  , size_t  ) ;
 536   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 537                    loff_t  , size_t  ) ;
 538   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 539};
 540#line 112 "include/linux/sysfs.h"
 541struct sysfs_ops {
 542   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 543   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 544   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 545};
 546#line 118
 547struct sysfs_dirent;
 548#line 118
 549struct sysfs_dirent;
 550#line 22 "include/linux/kref.h"
 551struct kref {
 552   atomic_t refcount ;
 553};
 554#line 60 "include/linux/kobject.h"
 555struct kset;
 556#line 60
 557struct kobj_type;
 558#line 60 "include/linux/kobject.h"
 559struct kobject {
 560   char const   *name ;
 561   struct list_head entry ;
 562   struct kobject *parent ;
 563   struct kset *kset ;
 564   struct kobj_type *ktype ;
 565   struct sysfs_dirent *sd ;
 566   struct kref kref ;
 567   unsigned int state_initialized : 1 ;
 568   unsigned int state_in_sysfs : 1 ;
 569   unsigned int state_add_uevent_sent : 1 ;
 570   unsigned int state_remove_uevent_sent : 1 ;
 571   unsigned int uevent_suppress : 1 ;
 572};
 573#line 108 "include/linux/kobject.h"
 574struct kobj_type {
 575   void (*release)(struct kobject *kobj ) ;
 576   struct sysfs_ops  const  *sysfs_ops ;
 577   struct attribute **default_attrs ;
 578   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 579   void const   *(*namespace)(struct kobject *kobj ) ;
 580};
 581#line 116 "include/linux/kobject.h"
 582struct kobj_uevent_env {
 583   char *envp[32] ;
 584   int envp_idx ;
 585   char buf[2048] ;
 586   int buflen ;
 587};
 588#line 123 "include/linux/kobject.h"
 589struct kset_uevent_ops {
 590   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 591   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 592   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 593};
 594#line 140
 595struct sock;
 596#line 159 "include/linux/kobject.h"
 597struct kset {
 598   struct list_head list ;
 599   spinlock_t list_lock ;
 600   struct kobject kobj ;
 601   struct kset_uevent_ops  const  *uevent_ops ;
 602};
 603#line 39 "include/linux/moduleparam.h"
 604struct kernel_param;
 605#line 39
 606struct kernel_param;
 607#line 41 "include/linux/moduleparam.h"
 608struct kernel_param_ops {
 609   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 610   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 611   void (*free)(void *arg ) ;
 612};
 613#line 50
 614struct kparam_string;
 615#line 50
 616struct kparam_array;
 617#line 50 "include/linux/moduleparam.h"
 618union __anonunion____missing_field_name_199 {
 619   void *arg ;
 620   struct kparam_string  const  *str ;
 621   struct kparam_array  const  *arr ;
 622};
 623#line 50 "include/linux/moduleparam.h"
 624struct kernel_param {
 625   char const   *name ;
 626   struct kernel_param_ops  const  *ops ;
 627   u16 perm ;
 628   s16 level ;
 629   union __anonunion____missing_field_name_199 __annonCompField32 ;
 630};
 631#line 63 "include/linux/moduleparam.h"
 632struct kparam_string {
 633   unsigned int maxlen ;
 634   char *string ;
 635};
 636#line 69 "include/linux/moduleparam.h"
 637struct kparam_array {
 638   unsigned int max ;
 639   unsigned int elemsize ;
 640   unsigned int *num ;
 641   struct kernel_param_ops  const  *ops ;
 642   void *elem ;
 643};
 644#line 445
 645struct module;
 646#line 80 "include/linux/jump_label.h"
 647struct module;
 648#line 143 "include/linux/jump_label.h"
 649struct static_key {
 650   atomic_t enabled ;
 651};
 652#line 22 "include/linux/tracepoint.h"
 653struct module;
 654#line 23
 655struct tracepoint;
 656#line 23
 657struct tracepoint;
 658#line 25 "include/linux/tracepoint.h"
 659struct tracepoint_func {
 660   void *func ;
 661   void *data ;
 662};
 663#line 30 "include/linux/tracepoint.h"
 664struct tracepoint {
 665   char const   *name ;
 666   struct static_key key ;
 667   void (*regfunc)(void) ;
 668   void (*unregfunc)(void) ;
 669   struct tracepoint_func *funcs ;
 670};
 671#line 19 "include/linux/export.h"
 672struct kernel_symbol {
 673   unsigned long value ;
 674   char const   *name ;
 675};
 676#line 8 "include/asm-generic/module.h"
 677struct mod_arch_specific {
 678
 679};
 680#line 35 "include/linux/module.h"
 681struct module;
 682#line 37
 683struct module_param_attrs;
 684#line 37 "include/linux/module.h"
 685struct module_kobject {
 686   struct kobject kobj ;
 687   struct module *mod ;
 688   struct kobject *drivers_dir ;
 689   struct module_param_attrs *mp ;
 690};
 691#line 44 "include/linux/module.h"
 692struct module_attribute {
 693   struct attribute attr ;
 694   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 695   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 696                    size_t count ) ;
 697   void (*setup)(struct module * , char const   * ) ;
 698   int (*test)(struct module * ) ;
 699   void (*free)(struct module * ) ;
 700};
 701#line 71
 702struct exception_table_entry;
 703#line 71
 704struct exception_table_entry;
 705#line 182
 706struct notifier_block;
 707#line 199
 708enum module_state {
 709    MODULE_STATE_LIVE = 0,
 710    MODULE_STATE_COMING = 1,
 711    MODULE_STATE_GOING = 2
 712} ;
 713#line 215 "include/linux/module.h"
 714struct module_ref {
 715   unsigned long incs ;
 716   unsigned long decs ;
 717} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 718#line 220
 719struct module_sect_attrs;
 720#line 220
 721struct module_notes_attrs;
 722#line 220
 723struct ftrace_event_call;
 724#line 220 "include/linux/module.h"
 725struct module {
 726   enum module_state state ;
 727   struct list_head list ;
 728   char name[64UL - sizeof(unsigned long )] ;
 729   struct module_kobject mkobj ;
 730   struct module_attribute *modinfo_attrs ;
 731   char const   *version ;
 732   char const   *srcversion ;
 733   struct kobject *holders_dir ;
 734   struct kernel_symbol  const  *syms ;
 735   unsigned long const   *crcs ;
 736   unsigned int num_syms ;
 737   struct kernel_param *kp ;
 738   unsigned int num_kp ;
 739   unsigned int num_gpl_syms ;
 740   struct kernel_symbol  const  *gpl_syms ;
 741   unsigned long const   *gpl_crcs ;
 742   struct kernel_symbol  const  *unused_syms ;
 743   unsigned long const   *unused_crcs ;
 744   unsigned int num_unused_syms ;
 745   unsigned int num_unused_gpl_syms ;
 746   struct kernel_symbol  const  *unused_gpl_syms ;
 747   unsigned long const   *unused_gpl_crcs ;
 748   struct kernel_symbol  const  *gpl_future_syms ;
 749   unsigned long const   *gpl_future_crcs ;
 750   unsigned int num_gpl_future_syms ;
 751   unsigned int num_exentries ;
 752   struct exception_table_entry *extable ;
 753   int (*init)(void) ;
 754   void *module_init ;
 755   void *module_core ;
 756   unsigned int init_size ;
 757   unsigned int core_size ;
 758   unsigned int init_text_size ;
 759   unsigned int core_text_size ;
 760   unsigned int init_ro_size ;
 761   unsigned int core_ro_size ;
 762   struct mod_arch_specific arch ;
 763   unsigned int taints ;
 764   unsigned int num_bugs ;
 765   struct list_head bug_list ;
 766   struct bug_entry *bug_table ;
 767   Elf64_Sym *symtab ;
 768   Elf64_Sym *core_symtab ;
 769   unsigned int num_symtab ;
 770   unsigned int core_num_syms ;
 771   char *strtab ;
 772   char *core_strtab ;
 773   struct module_sect_attrs *sect_attrs ;
 774   struct module_notes_attrs *notes_attrs ;
 775   char *args ;
 776   void *percpu ;
 777   unsigned int percpu_size ;
 778   unsigned int num_tracepoints ;
 779   struct tracepoint * const  *tracepoints_ptrs ;
 780   unsigned int num_trace_bprintk_fmt ;
 781   char const   **trace_bprintk_fmt_start ;
 782   struct ftrace_event_call **trace_events ;
 783   unsigned int num_trace_events ;
 784   struct list_head source_list ;
 785   struct list_head target_list ;
 786   struct task_struct *waiter ;
 787   void (*exit)(void) ;
 788   struct module_ref *refptr ;
 789   ctor_fn_t *ctors ;
 790   unsigned int num_ctors ;
 791};
 792#line 19 "include/linux/klist.h"
 793struct klist_node;
 794#line 19
 795struct klist_node;
 796#line 39 "include/linux/klist.h"
 797struct klist_node {
 798   void *n_klist ;
 799   struct list_head n_node ;
 800   struct kref n_ref ;
 801};
 802#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 803struct dma_map_ops;
 804#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 805struct dev_archdata {
 806   void *acpi_handle ;
 807   struct dma_map_ops *dma_ops ;
 808   void *iommu ;
 809};
 810#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 811struct pdev_archdata {
 812
 813};
 814#line 28 "include/linux/device.h"
 815struct device;
 816#line 29
 817struct device_private;
 818#line 29
 819struct device_private;
 820#line 30
 821struct device_driver;
 822#line 30
 823struct device_driver;
 824#line 31
 825struct driver_private;
 826#line 31
 827struct driver_private;
 828#line 32
 829struct module;
 830#line 33
 831struct class;
 832#line 33
 833struct class;
 834#line 34
 835struct subsys_private;
 836#line 34
 837struct subsys_private;
 838#line 35
 839struct bus_type;
 840#line 35
 841struct bus_type;
 842#line 36
 843struct device_node;
 844#line 36
 845struct device_node;
 846#line 37
 847struct iommu_ops;
 848#line 37
 849struct iommu_ops;
 850#line 39 "include/linux/device.h"
 851struct bus_attribute {
 852   struct attribute attr ;
 853   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
 854   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
 855};
 856#line 89
 857struct device_attribute;
 858#line 89
 859struct driver_attribute;
 860#line 89 "include/linux/device.h"
 861struct bus_type {
 862   char const   *name ;
 863   char const   *dev_name ;
 864   struct device *dev_root ;
 865   struct bus_attribute *bus_attrs ;
 866   struct device_attribute *dev_attrs ;
 867   struct driver_attribute *drv_attrs ;
 868   int (*match)(struct device *dev , struct device_driver *drv ) ;
 869   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 870   int (*probe)(struct device *dev ) ;
 871   int (*remove)(struct device *dev ) ;
 872   void (*shutdown)(struct device *dev ) ;
 873   int (*suspend)(struct device *dev , pm_message_t state ) ;
 874   int (*resume)(struct device *dev ) ;
 875   struct dev_pm_ops  const  *pm ;
 876   struct iommu_ops *iommu_ops ;
 877   struct subsys_private *p ;
 878};
 879#line 127
 880struct device_type;
 881#line 159
 882struct notifier_block;
 883#line 214
 884struct of_device_id;
 885#line 214 "include/linux/device.h"
 886struct device_driver {
 887   char const   *name ;
 888   struct bus_type *bus ;
 889   struct module *owner ;
 890   char const   *mod_name ;
 891   bool suppress_bind_attrs ;
 892   struct of_device_id  const  *of_match_table ;
 893   int (*probe)(struct device *dev ) ;
 894   int (*remove)(struct device *dev ) ;
 895   void (*shutdown)(struct device *dev ) ;
 896   int (*suspend)(struct device *dev , pm_message_t state ) ;
 897   int (*resume)(struct device *dev ) ;
 898   struct attribute_group  const  **groups ;
 899   struct dev_pm_ops  const  *pm ;
 900   struct driver_private *p ;
 901};
 902#line 249 "include/linux/device.h"
 903struct driver_attribute {
 904   struct attribute attr ;
 905   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
 906   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
 907};
 908#line 330
 909struct class_attribute;
 910#line 330 "include/linux/device.h"
 911struct class {
 912   char const   *name ;
 913   struct module *owner ;
 914   struct class_attribute *class_attrs ;
 915   struct device_attribute *dev_attrs ;
 916   struct bin_attribute *dev_bin_attrs ;
 917   struct kobject *dev_kobj ;
 918   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 919   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 920   void (*class_release)(struct class *class ) ;
 921   void (*dev_release)(struct device *dev ) ;
 922   int (*suspend)(struct device *dev , pm_message_t state ) ;
 923   int (*resume)(struct device *dev ) ;
 924   struct kobj_ns_type_operations  const  *ns_type ;
 925   void const   *(*namespace)(struct device *dev ) ;
 926   struct dev_pm_ops  const  *pm ;
 927   struct subsys_private *p ;
 928};
 929#line 397 "include/linux/device.h"
 930struct class_attribute {
 931   struct attribute attr ;
 932   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
 933   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
 934                    size_t count ) ;
 935   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
 936};
 937#line 465 "include/linux/device.h"
 938struct device_type {
 939   char const   *name ;
 940   struct attribute_group  const  **groups ;
 941   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 942   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 943   void (*release)(struct device *dev ) ;
 944   struct dev_pm_ops  const  *pm ;
 945};
 946#line 476 "include/linux/device.h"
 947struct device_attribute {
 948   struct attribute attr ;
 949   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
 950   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
 951                    size_t count ) ;
 952};
 953#line 559 "include/linux/device.h"
 954struct device_dma_parameters {
 955   unsigned int max_segment_size ;
 956   unsigned long segment_boundary_mask ;
 957};
 958#line 627
 959struct dma_coherent_mem;
 960#line 627 "include/linux/device.h"
 961struct device {
 962   struct device *parent ;
 963   struct device_private *p ;
 964   struct kobject kobj ;
 965   char const   *init_name ;
 966   struct device_type  const  *type ;
 967   struct mutex mutex ;
 968   struct bus_type *bus ;
 969   struct device_driver *driver ;
 970   void *platform_data ;
 971   struct dev_pm_info power ;
 972   struct dev_pm_domain *pm_domain ;
 973   int numa_node ;
 974   u64 *dma_mask ;
 975   u64 coherent_dma_mask ;
 976   struct device_dma_parameters *dma_parms ;
 977   struct list_head dma_pools ;
 978   struct dma_coherent_mem *dma_mem ;
 979   struct dev_archdata archdata ;
 980   struct device_node *of_node ;
 981   dev_t devt ;
 982   u32 id ;
 983   spinlock_t devres_lock ;
 984   struct list_head devres_head ;
 985   struct klist_node knode_class ;
 986   struct class *class ;
 987   struct attribute_group  const  **groups ;
 988   void (*release)(struct device *dev ) ;
 989};
 990#line 43 "include/linux/pm_wakeup.h"
 991struct wakeup_source {
 992   char const   *name ;
 993   struct list_head entry ;
 994   spinlock_t lock ;
 995   struct timer_list timer ;
 996   unsigned long timer_expires ;
 997   ktime_t total_time ;
 998   ktime_t max_time ;
 999   ktime_t last_time ;
1000   unsigned long event_count ;
1001   unsigned long active_count ;
1002   unsigned long relax_count ;
1003   unsigned long hit_count ;
1004   unsigned int active : 1 ;
1005};
1006#line 12 "include/linux/mod_devicetable.h"
1007typedef unsigned long kernel_ulong_t;
1008#line 219 "include/linux/mod_devicetable.h"
1009struct of_device_id {
1010   char name[32] ;
1011   char type[32] ;
1012   char compatible[128] ;
1013   void *data ;
1014};
1015#line 506 "include/linux/mod_devicetable.h"
1016struct platform_device_id {
1017   char name[20] ;
1018   kernel_ulong_t driver_data  __attribute__((__aligned__(sizeof(kernel_ulong_t )))) ;
1019};
1020#line 17 "include/linux/platform_device.h"
1021struct mfd_cell;
1022#line 17
1023struct mfd_cell;
1024#line 19 "include/linux/platform_device.h"
1025struct platform_device {
1026   char const   *name ;
1027   int id ;
1028   struct device dev ;
1029   u32 num_resources ;
1030   struct resource *resource ;
1031   struct platform_device_id  const  *id_entry ;
1032   struct mfd_cell *mfd_cell ;
1033   struct pdev_archdata archdata ;
1034};
1035#line 52 "include/linux/platform_device.h"
1036struct platform_device_info {
1037   struct device *parent ;
1038   char const   *name ;
1039   int id ;
1040   struct resource  const  *res ;
1041   unsigned int num_res ;
1042   void const   *data ;
1043   size_t size_data ;
1044   u64 dma_mask ;
1045};
1046#line 164 "include/linux/platform_device.h"
1047struct platform_driver {
1048   int (*probe)(struct platform_device * ) ;
1049   int (*remove)(struct platform_device * ) ;
1050   void (*shutdown)(struct platform_device * ) ;
1051   int (*suspend)(struct platform_device * , pm_message_t state ) ;
1052   int (*resume)(struct platform_device * ) ;
1053   struct device_driver driver ;
1054   struct platform_device_id  const  *id_table ;
1055};
1056#line 27 "include/linux/dma-attrs.h"
1057struct dma_attrs {
1058   unsigned long flags[((4UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
1059};
1060#line 7 "include/linux/dma-direction.h"
1061enum dma_data_direction {
1062    DMA_BIDIRECTIONAL = 0,
1063    DMA_TO_DEVICE = 1,
1064    DMA_FROM_DEVICE = 2,
1065    DMA_NONE = 3
1066} ;
1067#line 14 "include/linux/prio_tree.h"
1068struct prio_tree_node;
1069#line 14 "include/linux/prio_tree.h"
1070struct raw_prio_tree_node {
1071   struct prio_tree_node *left ;
1072   struct prio_tree_node *right ;
1073   struct prio_tree_node *parent ;
1074};
1075#line 20 "include/linux/prio_tree.h"
1076struct prio_tree_node {
1077   struct prio_tree_node *left ;
1078   struct prio_tree_node *right ;
1079   struct prio_tree_node *parent ;
1080   unsigned long start ;
1081   unsigned long last ;
1082};
1083#line 8 "include/linux/debug_locks.h"
1084struct task_struct;
1085#line 48
1086struct task_struct;
1087#line 23 "include/linux/mm_types.h"
1088struct address_space;
1089#line 23
1090struct address_space;
1091#line 40 "include/linux/mm_types.h"
1092union __anonunion____missing_field_name_203 {
1093   unsigned long index ;
1094   void *freelist ;
1095};
1096#line 40 "include/linux/mm_types.h"
1097struct __anonstruct____missing_field_name_207 {
1098   unsigned int inuse : 16 ;
1099   unsigned int objects : 15 ;
1100   unsigned int frozen : 1 ;
1101};
1102#line 40 "include/linux/mm_types.h"
1103union __anonunion____missing_field_name_206 {
1104   atomic_t _mapcount ;
1105   struct __anonstruct____missing_field_name_207 __annonCompField34 ;
1106};
1107#line 40 "include/linux/mm_types.h"
1108struct __anonstruct____missing_field_name_205 {
1109   union __anonunion____missing_field_name_206 __annonCompField35 ;
1110   atomic_t _count ;
1111};
1112#line 40 "include/linux/mm_types.h"
1113union __anonunion____missing_field_name_204 {
1114   unsigned long counters ;
1115   struct __anonstruct____missing_field_name_205 __annonCompField36 ;
1116};
1117#line 40 "include/linux/mm_types.h"
1118struct __anonstruct____missing_field_name_202 {
1119   union __anonunion____missing_field_name_203 __annonCompField33 ;
1120   union __anonunion____missing_field_name_204 __annonCompField37 ;
1121};
1122#line 40 "include/linux/mm_types.h"
1123struct __anonstruct____missing_field_name_209 {
1124   struct page *next ;
1125   int pages ;
1126   int pobjects ;
1127};
1128#line 40 "include/linux/mm_types.h"
1129union __anonunion____missing_field_name_208 {
1130   struct list_head lru ;
1131   struct __anonstruct____missing_field_name_209 __annonCompField39 ;
1132};
1133#line 40 "include/linux/mm_types.h"
1134union __anonunion____missing_field_name_210 {
1135   unsigned long private ;
1136   struct kmem_cache *slab ;
1137   struct page *first_page ;
1138};
1139#line 40 "include/linux/mm_types.h"
1140struct page {
1141   unsigned long flags ;
1142   struct address_space *mapping ;
1143   struct __anonstruct____missing_field_name_202 __annonCompField38 ;
1144   union __anonunion____missing_field_name_208 __annonCompField40 ;
1145   union __anonunion____missing_field_name_210 __annonCompField41 ;
1146   unsigned long debug_flags ;
1147} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
1148#line 200 "include/linux/mm_types.h"
1149struct __anonstruct_vm_set_212 {
1150   struct list_head list ;
1151   void *parent ;
1152   struct vm_area_struct *head ;
1153};
1154#line 200 "include/linux/mm_types.h"
1155union __anonunion_shared_211 {
1156   struct __anonstruct_vm_set_212 vm_set ;
1157   struct raw_prio_tree_node prio_tree_node ;
1158};
1159#line 200
1160struct anon_vma;
1161#line 200
1162struct vm_operations_struct;
1163#line 200
1164struct mempolicy;
1165#line 200 "include/linux/mm_types.h"
1166struct vm_area_struct {
1167   struct mm_struct *vm_mm ;
1168   unsigned long vm_start ;
1169   unsigned long vm_end ;
1170   struct vm_area_struct *vm_next ;
1171   struct vm_area_struct *vm_prev ;
1172   pgprot_t vm_page_prot ;
1173   unsigned long vm_flags ;
1174   struct rb_node vm_rb ;
1175   union __anonunion_shared_211 shared ;
1176   struct list_head anon_vma_chain ;
1177   struct anon_vma *anon_vma ;
1178   struct vm_operations_struct  const  *vm_ops ;
1179   unsigned long vm_pgoff ;
1180   struct file *vm_file ;
1181   void *vm_private_data ;
1182   struct mempolicy *vm_policy ;
1183};
1184#line 257 "include/linux/mm_types.h"
1185struct core_thread {
1186   struct task_struct *task ;
1187   struct core_thread *next ;
1188};
1189#line 262 "include/linux/mm_types.h"
1190struct core_state {
1191   atomic_t nr_threads ;
1192   struct core_thread dumper ;
1193   struct completion startup ;
1194};
1195#line 284 "include/linux/mm_types.h"
1196struct mm_rss_stat {
1197   atomic_long_t count[3] ;
1198};
1199#line 288
1200struct linux_binfmt;
1201#line 288
1202struct mmu_notifier_mm;
1203#line 288 "include/linux/mm_types.h"
1204struct mm_struct {
1205   struct vm_area_struct *mmap ;
1206   struct rb_root mm_rb ;
1207   struct vm_area_struct *mmap_cache ;
1208   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
1209                                      unsigned long pgoff , unsigned long flags ) ;
1210   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
1211   unsigned long mmap_base ;
1212   unsigned long task_size ;
1213   unsigned long cached_hole_size ;
1214   unsigned long free_area_cache ;
1215   pgd_t *pgd ;
1216   atomic_t mm_users ;
1217   atomic_t mm_count ;
1218   int map_count ;
1219   spinlock_t page_table_lock ;
1220   struct rw_semaphore mmap_sem ;
1221   struct list_head mmlist ;
1222   unsigned long hiwater_rss ;
1223   unsigned long hiwater_vm ;
1224   unsigned long total_vm ;
1225   unsigned long locked_vm ;
1226   unsigned long pinned_vm ;
1227   unsigned long shared_vm ;
1228   unsigned long exec_vm ;
1229   unsigned long stack_vm ;
1230   unsigned long reserved_vm ;
1231   unsigned long def_flags ;
1232   unsigned long nr_ptes ;
1233   unsigned long start_code ;
1234   unsigned long end_code ;
1235   unsigned long start_data ;
1236   unsigned long end_data ;
1237   unsigned long start_brk ;
1238   unsigned long brk ;
1239   unsigned long start_stack ;
1240   unsigned long arg_start ;
1241   unsigned long arg_end ;
1242   unsigned long env_start ;
1243   unsigned long env_end ;
1244   unsigned long saved_auxv[44] ;
1245   struct mm_rss_stat rss_stat ;
1246   struct linux_binfmt *binfmt ;
1247   cpumask_var_t cpu_vm_mask_var ;
1248   mm_context_t context ;
1249   unsigned int faultstamp ;
1250   unsigned int token_priority ;
1251   unsigned int last_interval ;
1252   unsigned long flags ;
1253   struct core_state *core_state ;
1254   spinlock_t ioctx_lock ;
1255   struct hlist_head ioctx_list ;
1256   struct task_struct *owner ;
1257   struct file *exe_file ;
1258   unsigned long num_exe_file_vmas ;
1259   struct mmu_notifier_mm *mmu_notifier_mm ;
1260   pgtable_t pmd_huge_pte ;
1261   struct cpumask cpumask_allocation ;
1262};
1263#line 22 "include/linux/mm.h"
1264struct mempolicy;
1265#line 23
1266struct anon_vma;
1267#line 41 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64.h"
1268struct mm_struct;
1269#line 656 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable.h"
1270struct vm_area_struct;
1271#line 188 "include/linux/mm.h"
1272struct vm_fault {
1273   unsigned int flags ;
1274   unsigned long pgoff ;
1275   void *virtual_address ;
1276   struct page *page ;
1277};
1278#line 205 "include/linux/mm.h"
1279struct vm_operations_struct {
1280   void (*open)(struct vm_area_struct *area ) ;
1281   void (*close)(struct vm_area_struct *area ) ;
1282   int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1283   int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1284   int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
1285                 int write ) ;
1286   int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
1287   struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
1288   int (*migrate)(struct vm_area_struct *vma , nodemask_t const   *from , nodemask_t const   *to ,
1289                  unsigned long flags ) ;
1290};
1291#line 195 "include/linux/page-flags.h"
1292struct page;
1293#line 6 "include/asm-generic/scatterlist.h"
1294struct scatterlist {
1295   unsigned long sg_magic ;
1296   unsigned long page_link ;
1297   unsigned int offset ;
1298   unsigned int length ;
1299   dma_addr_t dma_address ;
1300   unsigned int dma_length ;
1301};
1302#line 11 "include/linux/dma-mapping.h"
1303struct dma_map_ops {
1304   void *(*alloc)(struct device *dev , size_t size , dma_addr_t *dma_handle , gfp_t gfp ,
1305                  struct dma_attrs *attrs ) ;
1306   void (*free)(struct device *dev , size_t size , void *vaddr , dma_addr_t dma_handle ,
1307                struct dma_attrs *attrs ) ;
1308   int (*mmap)(struct device * , struct vm_area_struct * , void * , dma_addr_t  ,
1309               size_t  , struct dma_attrs *attrs ) ;
1310   dma_addr_t (*map_page)(struct device *dev , struct page *page , unsigned long offset ,
1311                          size_t size , enum dma_data_direction dir , struct dma_attrs *attrs ) ;
1312   void (*unmap_page)(struct device *dev , dma_addr_t dma_handle , size_t size , enum dma_data_direction dir ,
1313                      struct dma_attrs *attrs ) ;
1314   int (*map_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
1315                 struct dma_attrs *attrs ) ;
1316   void (*unmap_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
1317                    struct dma_attrs *attrs ) ;
1318   void (*sync_single_for_cpu)(struct device *dev , dma_addr_t dma_handle , size_t size ,
1319                               enum dma_data_direction dir ) ;
1320   void (*sync_single_for_device)(struct device *dev , dma_addr_t dma_handle , size_t size ,
1321                                  enum dma_data_direction dir ) ;
1322   void (*sync_sg_for_cpu)(struct device *dev , struct scatterlist *sg , int nents ,
1323                           enum dma_data_direction dir ) ;
1324   void (*sync_sg_for_device)(struct device *dev , struct scatterlist *sg , int nents ,
1325                              enum dma_data_direction dir ) ;
1326   int (*mapping_error)(struct device *dev , dma_addr_t dma_addr ) ;
1327   int (*dma_supported)(struct device *dev , u64 mask ) ;
1328   int (*set_dma_mask)(struct device *dev , u64 mask ) ;
1329   int is_phys ;
1330};
1331#line 25 "include/linux/dma-debug.h"
1332struct device;
1333#line 26
1334struct scatterlist;
1335#line 27
1336struct bus_type;
1337#line 6 "include/linux/swiotlb.h"
1338struct device;
1339#line 7
1340struct dma_attrs;
1341#line 8
1342struct scatterlist;
1343#line 15 "include/linux/usb/otg.h"
1344enum usb_otg_state {
1345    OTG_STATE_UNDEFINED = 0,
1346    OTG_STATE_B_IDLE = 1,
1347    OTG_STATE_B_SRP_INIT = 2,
1348    OTG_STATE_B_PERIPHERAL = 3,
1349    OTG_STATE_B_WAIT_ACON = 4,
1350    OTG_STATE_B_HOST = 5,
1351    OTG_STATE_A_IDLE = 6,
1352    OTG_STATE_A_WAIT_VRISE = 7,
1353    OTG_STATE_A_WAIT_BCON = 8,
1354    OTG_STATE_A_HOST = 9,
1355    OTG_STATE_A_SUSPEND = 10,
1356    OTG_STATE_A_PERIPHERAL = 11,
1357    OTG_STATE_A_WAIT_VFALL = 12,
1358    OTG_STATE_A_VBUS_ERR = 13
1359} ;
1360#line 38
1361enum usb_phy_events {
1362    USB_EVENT_NONE = 0,
1363    USB_EVENT_VBUS = 1,
1364    USB_EVENT_ID = 2,
1365    USB_EVENT_CHARGER = 3,
1366    USB_EVENT_ENUMERATED = 4
1367} ;
1368#line 46
1369struct usb_phy;
1370#line 46
1371struct usb_phy;
1372#line 51 "include/linux/usb/otg.h"
1373struct usb_phy_io_ops {
1374   int (*read)(struct usb_phy *x , u32 reg ) ;
1375   int (*write)(struct usb_phy *x , u32 val , u32 reg ) ;
1376};
1377#line 56
1378struct usb_bus;
1379#line 56
1380struct usb_gadget;
1381#line 56 "include/linux/usb/otg.h"
1382struct usb_otg {
1383   u8 default_a ;
1384   struct usb_phy *phy ;
1385   struct usb_bus *host ;
1386   struct usb_gadget *gadget ;
1387   int (*set_host)(struct usb_otg *otg , struct usb_bus *host ) ;
1388   int (*set_peripheral)(struct usb_otg *otg , struct usb_gadget *gadget ) ;
1389   int (*set_vbus)(struct usb_otg *otg , bool enabled ) ;
1390   int (*start_srp)(struct usb_otg *otg ) ;
1391   int (*start_hnp)(struct usb_otg *otg ) ;
1392};
1393#line 87 "include/linux/usb/otg.h"
1394struct usb_phy {
1395   struct device *dev ;
1396   char const   *label ;
1397   unsigned int flags ;
1398   enum usb_otg_state state ;
1399   enum usb_phy_events last_event ;
1400   struct usb_otg *otg ;
1401   struct device *io_dev ;
1402   struct usb_phy_io_ops *io_ops ;
1403   void *io_priv ;
1404   struct atomic_notifier_head notifier ;
1405   u16 port_status ;
1406   u16 port_change ;
1407   int (*init)(struct usb_phy *x ) ;
1408   void (*shutdown)(struct usb_phy *x ) ;
1409   int (*set_power)(struct usb_phy *x , unsigned int mA ) ;
1410   int (*set_suspend)(struct usb_phy *x , int suspend ) ;
1411};
1412#line 46 "include/linux/slub_def.h"
1413struct kmem_cache_cpu {
1414   void **freelist ;
1415   unsigned long tid ;
1416   struct page *page ;
1417   struct page *partial ;
1418   int node ;
1419   unsigned int stat[26] ;
1420};
1421#line 57 "include/linux/slub_def.h"
1422struct kmem_cache_node {
1423   spinlock_t list_lock ;
1424   unsigned long nr_partial ;
1425   struct list_head partial ;
1426   atomic_long_t nr_slabs ;
1427   atomic_long_t total_objects ;
1428   struct list_head full ;
1429};
1430#line 73 "include/linux/slub_def.h"
1431struct kmem_cache_order_objects {
1432   unsigned long x ;
1433};
1434#line 80 "include/linux/slub_def.h"
1435struct kmem_cache {
1436   struct kmem_cache_cpu *cpu_slab ;
1437   unsigned long flags ;
1438   unsigned long min_partial ;
1439   int size ;
1440   int objsize ;
1441   int offset ;
1442   int cpu_partial ;
1443   struct kmem_cache_order_objects oo ;
1444   struct kmem_cache_order_objects max ;
1445   struct kmem_cache_order_objects min ;
1446   gfp_t allocflags ;
1447   int refcount ;
1448   void (*ctor)(void * ) ;
1449   int inuse ;
1450   int align ;
1451   int reserved ;
1452   char const   *name ;
1453   struct list_head list ;
1454   struct kobject kobj ;
1455   int remote_node_defrag_ratio ;
1456   struct kmem_cache_node *node[1 << 10] ;
1457};
1458#line 36 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1459struct nop_usb_xceiv {
1460   struct usb_phy phy ;
1461   struct device *dev ;
1462};
1463#line 1 "<compiler builtins>"
1464long __builtin_expect(long val , long res ) ;
1465#line 100 "include/linux/printk.h"
1466extern int ( /* format attribute */  printk)(char const   *fmt  , ...) ;
1467#line 93 "include/linux/spinlock.h"
1468extern void __raw_spin_lock_init(raw_spinlock_t *lock , char const   *name , struct lock_class_key *key ) ;
1469#line 272
1470__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )  __attribute__((__no_instrument_function__)) ;
1471#line 272 "include/linux/spinlock.h"
1472__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) 
1473{ 
1474
1475  {
1476#line 274
1477  return ((struct raw_spinlock *)lock);
1478}
1479}
1480#line 152 "include/linux/mutex.h"
1481void mutex_lock(struct mutex *lock ) ;
1482#line 153
1483int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
1484#line 154
1485int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
1486#line 168
1487int mutex_trylock(struct mutex *lock ) ;
1488#line 169
1489void mutex_unlock(struct mutex *lock ) ;
1490#line 170
1491int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
1492#line 26 "include/linux/export.h"
1493extern struct module __this_module ;
1494#line 67 "include/linux/module.h"
1495int init_module(void) ;
1496#line 68
1497void cleanup_module(void) ;
1498#line 792 "include/linux/device.h"
1499extern void *dev_get_drvdata(struct device  const  *dev ) ;
1500#line 793
1501extern int dev_set_drvdata(struct device *dev , void *data ) ;
1502#line 891
1503extern int ( /* format attribute */  dev_err)(struct device  const  *dev , char const   *fmt 
1504                                              , ...) ;
1505#line 40 "include/linux/platform_device.h"
1506extern void platform_device_unregister(struct platform_device * ) ;
1507#line 65
1508extern struct platform_device *platform_device_register_full(struct platform_device_info  const  *pdevinfo ) ;
1509#line 82
1510__inline static struct platform_device *platform_device_register_resndata(struct device *parent ,
1511                                                                          char const   *name ,
1512                                                                          int id ,
1513                                                                          struct resource  const  *res ,
1514                                                                          unsigned int num ,
1515                                                                          void const   *data ,
1516                                                                          size_t size )  __attribute__((__no_instrument_function__)) ;
1517#line 82 "include/linux/platform_device.h"
1518__inline static struct platform_device *platform_device_register_resndata(struct device *parent ,
1519                                                                          char const   *name ,
1520                                                                          int id ,
1521                                                                          struct resource  const  *res ,
1522                                                                          unsigned int num ,
1523                                                                          void const   *data ,
1524                                                                          size_t size ) 
1525{ struct platform_device_info pdevinfo ;
1526  struct platform_device *tmp ;
1527  struct platform_device_info *__cil_tmp10 ;
1528  unsigned long __cil_tmp11 ;
1529  unsigned long __cil_tmp12 ;
1530  unsigned long __cil_tmp13 ;
1531  unsigned long __cil_tmp14 ;
1532  unsigned long __cil_tmp15 ;
1533  unsigned long __cil_tmp16 ;
1534  unsigned long __cil_tmp17 ;
1535  struct platform_device_info  const  *__cil_tmp18 ;
1536
1537  {
1538  {
1539#line 87
1540  __cil_tmp10 = & pdevinfo;
1541#line 87
1542  *((struct device **)__cil_tmp10) = parent;
1543#line 87
1544  __cil_tmp11 = (unsigned long )(& pdevinfo) + 8;
1545#line 87
1546  *((char const   **)__cil_tmp11) = name;
1547#line 87
1548  __cil_tmp12 = (unsigned long )(& pdevinfo) + 16;
1549#line 87
1550  *((int *)__cil_tmp12) = id;
1551#line 87
1552  __cil_tmp13 = (unsigned long )(& pdevinfo) + 24;
1553#line 87
1554  *((struct resource  const  **)__cil_tmp13) = res;
1555#line 87
1556  __cil_tmp14 = (unsigned long )(& pdevinfo) + 32;
1557#line 87
1558  *((unsigned int *)__cil_tmp14) = num;
1559#line 87
1560  __cil_tmp15 = (unsigned long )(& pdevinfo) + 40;
1561#line 87
1562  *((void const   **)__cil_tmp15) = data;
1563#line 87
1564  __cil_tmp16 = (unsigned long )(& pdevinfo) + 48;
1565#line 87
1566  *((size_t *)__cil_tmp16) = size;
1567#line 87
1568  __cil_tmp17 = (unsigned long )(& pdevinfo) + 56;
1569#line 87
1570  *((u64 *)__cil_tmp17) = (u64 )0;
1571#line 98
1572  __cil_tmp18 = (struct platform_device_info  const  *)(& pdevinfo);
1573#line 98
1574  tmp = platform_device_register_full(__cil_tmp18);
1575  }
1576#line 98
1577  return (tmp);
1578}
1579}
1580#line 123
1581__inline static struct platform_device *platform_device_register_simple(char const   *name ,
1582                                                                        int id , struct resource  const  *res ,
1583                                                                        unsigned int num )  __attribute__((__no_instrument_function__)) ;
1584#line 123 "include/linux/platform_device.h"
1585__inline static struct platform_device *platform_device_register_simple(char const   *name ,
1586                                                                        int id , struct resource  const  *res ,
1587                                                                        unsigned int num ) 
1588{ struct platform_device *tmp ;
1589  void *__cil_tmp6 ;
1590  struct device *__cil_tmp7 ;
1591  void *__cil_tmp8 ;
1592  void const   *__cil_tmp9 ;
1593  size_t __cil_tmp10 ;
1594
1595  {
1596  {
1597#line 127
1598  __cil_tmp6 = (void *)0;
1599#line 127
1600  __cil_tmp7 = (struct device *)__cil_tmp6;
1601#line 127
1602  __cil_tmp8 = (void *)0;
1603#line 127
1604  __cil_tmp9 = (void const   *)__cil_tmp8;
1605#line 127
1606  __cil_tmp10 = (size_t )0;
1607#line 127
1608  tmp = platform_device_register_resndata(__cil_tmp7, name, id, res, num, __cil_tmp9,
1609                                          __cil_tmp10);
1610  }
1611#line 127
1612  return (tmp);
1613}
1614}
1615#line 174
1616extern int platform_driver_register(struct platform_driver * ) ;
1617#line 175
1618extern void platform_driver_unregister(struct platform_driver * ) ;
1619#line 183
1620__inline static void *platform_get_drvdata(struct platform_device  const  *pdev )  __attribute__((__no_instrument_function__)) ;
1621#line 183 "include/linux/platform_device.h"
1622__inline static void *platform_get_drvdata(struct platform_device  const  *pdev ) 
1623{ void *tmp ;
1624  unsigned long __cil_tmp3 ;
1625  unsigned long __cil_tmp4 ;
1626  struct device  const  *__cil_tmp5 ;
1627
1628  {
1629  {
1630#line 185
1631  __cil_tmp3 = (unsigned long )pdev;
1632#line 185
1633  __cil_tmp4 = __cil_tmp3 + 16;
1634#line 185
1635  __cil_tmp5 = (struct device  const  *)__cil_tmp4;
1636#line 185
1637  tmp = dev_get_drvdata(__cil_tmp5);
1638  }
1639#line 185
1640  return (tmp);
1641}
1642}
1643#line 188
1644__inline static void platform_set_drvdata(struct platform_device *pdev , void *data )  __attribute__((__no_instrument_function__)) ;
1645#line 188 "include/linux/platform_device.h"
1646__inline static void platform_set_drvdata(struct platform_device *pdev , void *data ) 
1647{ unsigned long __cil_tmp3 ;
1648  unsigned long __cil_tmp4 ;
1649  struct device *__cil_tmp5 ;
1650
1651  {
1652  {
1653#line 190
1654  __cil_tmp3 = (unsigned long )pdev;
1655#line 190
1656  __cil_tmp4 = __cil_tmp3 + 16;
1657#line 190
1658  __cil_tmp5 = (struct device *)__cil_tmp4;
1659#line 190
1660  dev_set_drvdata(__cil_tmp5, data);
1661  }
1662#line 191
1663  return;
1664}
1665}
1666#line 124 "include/linux/usb/otg.h"
1667extern int usb_set_transceiver(struct usb_phy * ) ;
1668#line 128
1669void usb_nop_xceiv_register(void) ;
1670#line 129
1671void usb_nop_xceiv_unregister(void) ;
1672#line 161 "include/linux/slab.h"
1673extern void kfree(void const   * ) ;
1674#line 221 "include/linux/slub_def.h"
1675extern void *__kmalloc(size_t size , gfp_t flags ) ;
1676#line 268
1677__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
1678                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
1679#line 268 "include/linux/slub_def.h"
1680__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
1681                                                                    gfp_t flags ) 
1682{ void *tmp___2 ;
1683
1684  {
1685  {
1686#line 283
1687  tmp___2 = __kmalloc(size, flags);
1688  }
1689#line 283
1690  return (tmp___2);
1691}
1692}
1693#line 349 "include/linux/slab.h"
1694__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
1695#line 349 "include/linux/slab.h"
1696__inline static void *kzalloc(size_t size , gfp_t flags ) 
1697{ void *tmp ;
1698  unsigned int __cil_tmp4 ;
1699
1700  {
1701  {
1702#line 351
1703  __cil_tmp4 = flags | 32768U;
1704#line 351
1705  tmp = kmalloc(size, __cil_tmp4);
1706  }
1707#line 351
1708  return (tmp);
1709}
1710}
1711#line 41 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1712static struct platform_device *pd  ;
1713#line 43 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1714void usb_nop_xceiv_register(void) 
1715{ void *__cil_tmp1 ;
1716  struct resource  const  *__cil_tmp2 ;
1717
1718  {
1719#line 45
1720  if (pd) {
1721#line 46
1722    return;
1723  } else {
1724
1725  }
1726  {
1727#line 47
1728  __cil_tmp1 = (void *)0;
1729#line 47
1730  __cil_tmp2 = (struct resource  const  *)__cil_tmp1;
1731#line 47
1732  pd = platform_device_register_simple("nop_usb_xceiv", -1, __cil_tmp2, 0U);
1733  }
1734#line 48
1735  if (! pd) {
1736    {
1737#line 49
1738    printk("<3>Unable to register usb nop transceiver\n");
1739    }
1740#line 50
1741    return;
1742  } else {
1743
1744  }
1745#line 52
1746  return;
1747}
1748}
1749#line 53
1750extern void *__crc_usb_nop_xceiv_register  __attribute__((__weak__)) ;
1751#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1752static unsigned long const   __kcrctab_usb_nop_xceiv_register  __attribute__((__used__,
1753__unused__, __section__("___kcrctab+usb_nop_xceiv_register")))  =    (unsigned long const   )((unsigned long )(& __crc_usb_nop_xceiv_register));
1754#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1755static char const   __kstrtab_usb_nop_xceiv_register[23]  __attribute__((__section__("__ksymtab_strings"),
1756__aligned__(1)))  = 
1757#line 53
1758  {      (char const   )'u',      (char const   )'s',      (char const   )'b',      (char const   )'_', 
1759        (char const   )'n',      (char const   )'o',      (char const   )'p',      (char const   )'_', 
1760        (char const   )'x',      (char const   )'c',      (char const   )'e',      (char const   )'i', 
1761        (char const   )'v',      (char const   )'_',      (char const   )'r',      (char const   )'e', 
1762        (char const   )'g',      (char const   )'i',      (char const   )'s',      (char const   )'t', 
1763        (char const   )'e',      (char const   )'r',      (char const   )'\000'};
1764#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1765static struct kernel_symbol  const  __ksymtab_usb_nop_xceiv_register  __attribute__((__used__,
1766__unused__, __section__("___ksymtab+usb_nop_xceiv_register")))  =    {(unsigned long )(& usb_nop_xceiv_register), __kstrtab_usb_nop_xceiv_register};
1767#line 55 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1768void usb_nop_xceiv_unregister(void) 
1769{ void *__cil_tmp1 ;
1770
1771  {
1772  {
1773#line 57
1774  platform_device_unregister(pd);
1775#line 58
1776  __cil_tmp1 = (void *)0;
1777#line 58
1778  pd = (struct platform_device *)__cil_tmp1;
1779  }
1780#line 59
1781  return;
1782}
1783}
1784#line 60
1785extern void *__crc_usb_nop_xceiv_unregister  __attribute__((__weak__)) ;
1786#line 60 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1787static unsigned long const   __kcrctab_usb_nop_xceiv_unregister  __attribute__((__used__,
1788__unused__, __section__("___kcrctab+usb_nop_xceiv_unregister")))  =    (unsigned long const   )((unsigned long )(& __crc_usb_nop_xceiv_unregister));
1789#line 60 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1790static char const   __kstrtab_usb_nop_xceiv_unregister[25]  __attribute__((__section__("__ksymtab_strings"),
1791__aligned__(1)))  = 
1792#line 60
1793  {      (char const   )'u',      (char const   )'s',      (char const   )'b',      (char const   )'_', 
1794        (char const   )'n',      (char const   )'o',      (char const   )'p',      (char const   )'_', 
1795        (char const   )'x',      (char const   )'c',      (char const   )'e',      (char const   )'i', 
1796        (char const   )'v',      (char const   )'_',      (char const   )'u',      (char const   )'n', 
1797        (char const   )'r',      (char const   )'e',      (char const   )'g',      (char const   )'i', 
1798        (char const   )'s',      (char const   )'t',      (char const   )'e',      (char const   )'r', 
1799        (char const   )'\000'};
1800#line 60 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1801static struct kernel_symbol  const  __ksymtab_usb_nop_xceiv_unregister  __attribute__((__used__,
1802__unused__, __section__("___ksymtab+usb_nop_xceiv_unregister")))  =    {(unsigned long )(& usb_nop_xceiv_unregister), __kstrtab_usb_nop_xceiv_unregister};
1803#line 62 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1804static int nop_set_suspend(struct usb_phy *x , int suspend ) 
1805{ 
1806
1807  {
1808#line 64
1809  return (0);
1810}
1811}
1812#line 67 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1813static int nop_set_peripheral(struct usb_otg *otg , struct usb_gadget *gadget ) 
1814{ unsigned long __cil_tmp3 ;
1815  unsigned long __cil_tmp4 ;
1816  void *__cil_tmp5 ;
1817  unsigned long __cil_tmp6 ;
1818  unsigned long __cil_tmp7 ;
1819  unsigned long __cil_tmp8 ;
1820  unsigned long __cil_tmp9 ;
1821  struct usb_phy *__cil_tmp10 ;
1822  unsigned long __cil_tmp11 ;
1823  unsigned long __cil_tmp12 ;
1824
1825  {
1826#line 69
1827  if (! otg) {
1828#line 70
1829    return (-19);
1830  } else {
1831
1832  }
1833#line 72
1834  if (! gadget) {
1835#line 73
1836    __cil_tmp3 = (unsigned long )otg;
1837#line 73
1838    __cil_tmp4 = __cil_tmp3 + 24;
1839#line 73
1840    __cil_tmp5 = (void *)0;
1841#line 73
1842    *((struct usb_gadget **)__cil_tmp4) = (struct usb_gadget *)__cil_tmp5;
1843#line 74
1844    return (-19);
1845  } else {
1846
1847  }
1848#line 77
1849  __cil_tmp6 = (unsigned long )otg;
1850#line 77
1851  __cil_tmp7 = __cil_tmp6 + 24;
1852#line 77
1853  *((struct usb_gadget **)__cil_tmp7) = gadget;
1854#line 78
1855  __cil_tmp8 = (unsigned long )otg;
1856#line 78
1857  __cil_tmp9 = __cil_tmp8 + 8;
1858#line 78
1859  __cil_tmp10 = *((struct usb_phy **)__cil_tmp9);
1860#line 78
1861  __cil_tmp11 = (unsigned long )__cil_tmp10;
1862#line 78
1863  __cil_tmp12 = __cil_tmp11 + 20;
1864#line 78
1865  *((enum usb_otg_state *)__cil_tmp12) = (enum usb_otg_state )1;
1866#line 79
1867  return (0);
1868}
1869}
1870#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1871static int nop_set_host(struct usb_otg *otg , struct usb_bus *host ) 
1872{ unsigned long __cil_tmp3 ;
1873  unsigned long __cil_tmp4 ;
1874  void *__cil_tmp5 ;
1875  unsigned long __cil_tmp6 ;
1876  unsigned long __cil_tmp7 ;
1877
1878  {
1879#line 84
1880  if (! otg) {
1881#line 85
1882    return (-19);
1883  } else {
1884
1885  }
1886#line 87
1887  if (! host) {
1888#line 88
1889    __cil_tmp3 = (unsigned long )otg;
1890#line 88
1891    __cil_tmp4 = __cil_tmp3 + 16;
1892#line 88
1893    __cil_tmp5 = (void *)0;
1894#line 88
1895    *((struct usb_bus **)__cil_tmp4) = (struct usb_bus *)__cil_tmp5;
1896#line 89
1897    return (-19);
1898  } else {
1899
1900  }
1901#line 92
1902  __cil_tmp6 = (unsigned long )otg;
1903#line 92
1904  __cil_tmp7 = __cil_tmp6 + 16;
1905#line 92
1906  *((struct usb_bus **)__cil_tmp7) = host;
1907#line 93
1908  return (0);
1909}
1910}
1911#line 130 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1912static struct lock_class_key __key___2  ;
1913#line 96
1914static int nop_usb_xceiv_probe(struct platform_device *pdev )  __attribute__((__section__(".devinit.text"),
1915__no_instrument_function__)) ;
1916#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
1917static int nop_usb_xceiv_probe(struct platform_device *pdev ) 
1918{ struct nop_usb_xceiv *nop ;
1919  int err ;
1920  void *tmp ;
1921  void *tmp___0 ;
1922  unsigned long __cil_tmp6 ;
1923  unsigned long __cil_tmp7 ;
1924  unsigned long __cil_tmp8 ;
1925  unsigned long __cil_tmp9 ;
1926  unsigned long __cil_tmp10 ;
1927  unsigned long __cil_tmp11 ;
1928  struct usb_otg *__cil_tmp12 ;
1929  void const   *__cil_tmp13 ;
1930  unsigned long __cil_tmp14 ;
1931  unsigned long __cil_tmp15 ;
1932  unsigned long __cil_tmp16 ;
1933  unsigned long __cil_tmp17 ;
1934  unsigned long __cil_tmp18 ;
1935  unsigned long __cil_tmp19 ;
1936  unsigned long __cil_tmp20 ;
1937  unsigned long __cil_tmp21 ;
1938  unsigned long __cil_tmp22 ;
1939  unsigned long __cil_tmp23 ;
1940  unsigned long __cil_tmp24 ;
1941  unsigned long __cil_tmp25 ;
1942  unsigned long __cil_tmp26 ;
1943  unsigned long __cil_tmp27 ;
1944  unsigned long __cil_tmp28 ;
1945  unsigned long __cil_tmp29 ;
1946  unsigned long __cil_tmp30 ;
1947  unsigned long __cil_tmp31 ;
1948  struct usb_otg *__cil_tmp32 ;
1949  unsigned long __cil_tmp33 ;
1950  unsigned long __cil_tmp34 ;
1951  unsigned long __cil_tmp35 ;
1952  unsigned long __cil_tmp36 ;
1953  unsigned long __cil_tmp37 ;
1954  struct usb_otg *__cil_tmp38 ;
1955  unsigned long __cil_tmp39 ;
1956  unsigned long __cil_tmp40 ;
1957  unsigned long __cil_tmp41 ;
1958  unsigned long __cil_tmp42 ;
1959  unsigned long __cil_tmp43 ;
1960  struct usb_otg *__cil_tmp44 ;
1961  unsigned long __cil_tmp45 ;
1962  unsigned long __cil_tmp46 ;
1963  struct usb_phy *__cil_tmp47 ;
1964  unsigned long __cil_tmp48 ;
1965  unsigned long __cil_tmp49 ;
1966  struct device *__cil_tmp50 ;
1967  struct device  const  *__cil_tmp51 ;
1968  void *__cil_tmp52 ;
1969  unsigned long __cil_tmp53 ;
1970  unsigned long __cil_tmp54 ;
1971  unsigned long __cil_tmp55 ;
1972  spinlock_t *__cil_tmp56 ;
1973  unsigned long __cil_tmp57 ;
1974  unsigned long __cil_tmp58 ;
1975  unsigned long __cil_tmp59 ;
1976  struct raw_spinlock *__cil_tmp60 ;
1977  unsigned long __cil_tmp61 ;
1978  unsigned long __cil_tmp62 ;
1979  unsigned long __cil_tmp63 ;
1980  unsigned long __cil_tmp64 ;
1981  void *__cil_tmp65 ;
1982  unsigned long __cil_tmp66 ;
1983  unsigned long __cil_tmp67 ;
1984  unsigned long __cil_tmp68 ;
1985  struct usb_otg *__cil_tmp69 ;
1986  void const   *__cil_tmp70 ;
1987  void const   *__cil_tmp71 ;
1988
1989  {
1990  {
1991#line 101
1992  tmp = kzalloc(144UL, 208U);
1993#line 101
1994  nop = (struct nop_usb_xceiv *)tmp;
1995  }
1996#line 102
1997  if (! nop) {
1998#line 103
1999    return (-12);
2000  } else {
2001
2002  }
2003  {
2004#line 105
2005  tmp___0 = kzalloc(72UL, 208U);
2006#line 105
2007  __cil_tmp6 = 0 + 32;
2008#line 105
2009  __cil_tmp7 = (unsigned long )nop;
2010#line 105
2011  __cil_tmp8 = __cil_tmp7 + __cil_tmp6;
2012#line 105
2013  *((struct usb_otg **)__cil_tmp8) = (struct usb_otg *)tmp___0;
2014  }
2015  {
2016#line 106
2017  __cil_tmp9 = 0 + 32;
2018#line 106
2019  __cil_tmp10 = (unsigned long )nop;
2020#line 106
2021  __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
2022#line 106
2023  __cil_tmp12 = *((struct usb_otg **)__cil_tmp11);
2024#line 106
2025  if (! __cil_tmp12) {
2026    {
2027#line 107
2028    __cil_tmp13 = (void const   *)nop;
2029#line 107
2030    kfree(__cil_tmp13);
2031    }
2032#line 108
2033    return (-12);
2034  } else {
2035
2036  }
2037  }
2038  {
2039#line 111
2040  __cil_tmp14 = (unsigned long )nop;
2041#line 111
2042  __cil_tmp15 = __cil_tmp14 + 136;
2043#line 111
2044  __cil_tmp16 = (unsigned long )pdev;
2045#line 111
2046  __cil_tmp17 = __cil_tmp16 + 16;
2047#line 111
2048  *((struct device **)__cil_tmp15) = (struct device *)__cil_tmp17;
2049#line 112
2050  __cil_tmp18 = (unsigned long )nop;
2051#line 112
2052  __cil_tmp19 = __cil_tmp18 + 136;
2053#line 112
2054  *((struct device **)nop) = *((struct device **)__cil_tmp19);
2055#line 113
2056  __cil_tmp20 = 0 + 8;
2057#line 113
2058  __cil_tmp21 = (unsigned long )nop;
2059#line 113
2060  __cil_tmp22 = __cil_tmp21 + __cil_tmp20;
2061#line 113
2062  *((char const   **)__cil_tmp22) = "nop-xceiv";
2063#line 114
2064  __cil_tmp23 = 0 + 128;
2065#line 114
2066  __cil_tmp24 = (unsigned long )nop;
2067#line 114
2068  __cil_tmp25 = __cil_tmp24 + __cil_tmp23;
2069#line 114
2070  *((int (**)(struct usb_phy *x , int suspend ))__cil_tmp25) = & nop_set_suspend;
2071#line 115
2072  __cil_tmp26 = 0 + 20;
2073#line 115
2074  __cil_tmp27 = (unsigned long )nop;
2075#line 115
2076  __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
2077#line 115
2078  *((enum usb_otg_state *)__cil_tmp28) = (enum usb_otg_state )0;
2079#line 117
2080  __cil_tmp29 = 0 + 32;
2081#line 117
2082  __cil_tmp30 = (unsigned long )nop;
2083#line 117
2084  __cil_tmp31 = __cil_tmp30 + __cil_tmp29;
2085#line 117
2086  __cil_tmp32 = *((struct usb_otg **)__cil_tmp31);
2087#line 117
2088  __cil_tmp33 = (unsigned long )__cil_tmp32;
2089#line 117
2090  __cil_tmp34 = __cil_tmp33 + 8;
2091#line 117
2092  *((struct usb_phy **)__cil_tmp34) = (struct usb_phy *)nop;
2093#line 118
2094  __cil_tmp35 = 0 + 32;
2095#line 118
2096  __cil_tmp36 = (unsigned long )nop;
2097#line 118
2098  __cil_tmp37 = __cil_tmp36 + __cil_tmp35;
2099#line 118
2100  __cil_tmp38 = *((struct usb_otg **)__cil_tmp37);
2101#line 118
2102  __cil_tmp39 = (unsigned long )__cil_tmp38;
2103#line 118
2104  __cil_tmp40 = __cil_tmp39 + 32;
2105#line 118
2106  *((int (**)(struct usb_otg *otg , struct usb_bus *host ))__cil_tmp40) = & nop_set_host;
2107#line 119
2108  __cil_tmp41 = 0 + 32;
2109#line 119
2110  __cil_tmp42 = (unsigned long )nop;
2111#line 119
2112  __cil_tmp43 = __cil_tmp42 + __cil_tmp41;
2113#line 119
2114  __cil_tmp44 = *((struct usb_otg **)__cil_tmp43);
2115#line 119
2116  __cil_tmp45 = (unsigned long )__cil_tmp44;
2117#line 119
2118  __cil_tmp46 = __cil_tmp45 + 40;
2119#line 119
2120  *((int (**)(struct usb_otg *otg , struct usb_gadget *gadget ))__cil_tmp46) = & nop_set_peripheral;
2121#line 121
2122  __cil_tmp47 = (struct usb_phy *)nop;
2123#line 121
2124  err = usb_set_transceiver(__cil_tmp47);
2125  }
2126#line 122
2127  if (err) {
2128    {
2129#line 123
2130    __cil_tmp48 = (unsigned long )pdev;
2131#line 123
2132    __cil_tmp49 = __cil_tmp48 + 16;
2133#line 123
2134    __cil_tmp50 = (struct device *)__cil_tmp49;
2135#line 123
2136    __cil_tmp51 = (struct device  const  *)__cil_tmp50;
2137#line 123
2138    dev_err(__cil_tmp51, "can\'t register transceiver, err: %d\n", err);
2139    }
2140#line 125
2141    goto exit;
2142  } else {
2143
2144  }
2145  {
2146#line 128
2147  __cil_tmp52 = (void *)nop;
2148#line 128
2149  platform_set_drvdata(pdev, __cil_tmp52);
2150  }
2151  {
2152#line 130
2153  while (1) {
2154    while_continue: /* CIL Label */ ;
2155    {
2156#line 130
2157    while (1) {
2158      while_continue___0: /* CIL Label */ ;
2159      {
2160#line 130
2161      __cil_tmp53 = 0 + 64;
2162#line 130
2163      __cil_tmp54 = (unsigned long )nop;
2164#line 130
2165      __cil_tmp55 = __cil_tmp54 + __cil_tmp53;
2166#line 130
2167      __cil_tmp56 = (spinlock_t *)__cil_tmp55;
2168#line 130
2169      spinlock_check(__cil_tmp56);
2170      }
2171      {
2172#line 130
2173      while (1) {
2174        while_continue___1: /* CIL Label */ ;
2175        {
2176#line 130
2177        __cil_tmp57 = 0 + 64;
2178#line 130
2179        __cil_tmp58 = (unsigned long )nop;
2180#line 130
2181        __cil_tmp59 = __cil_tmp58 + __cil_tmp57;
2182#line 130
2183        __cil_tmp60 = (struct raw_spinlock *)__cil_tmp59;
2184#line 130
2185        __raw_spin_lock_init(__cil_tmp60, "&(&(&nop->phy.notifier)->lock)->rlock",
2186                             & __key___2);
2187        }
2188#line 130
2189        goto while_break___1;
2190      }
2191      while_break___1: /* CIL Label */ ;
2192      }
2193#line 130
2194      goto while_break___0;
2195    }
2196    while_break___0: /* CIL Label */ ;
2197    }
2198#line 130
2199    __cil_tmp61 = 64 + 24;
2200#line 130
2201    __cil_tmp62 = 0 + __cil_tmp61;
2202#line 130
2203    __cil_tmp63 = (unsigned long )nop;
2204#line 130
2205    __cil_tmp64 = __cil_tmp63 + __cil_tmp62;
2206#line 130
2207    __cil_tmp65 = (void *)0;
2208#line 130
2209    *((struct notifier_block **)__cil_tmp64) = (struct notifier_block *)__cil_tmp65;
2210#line 130
2211    goto while_break;
2212  }
2213  while_break: /* CIL Label */ ;
2214  }
2215#line 132
2216  return (0);
2217  exit: 
2218  {
2219#line 134
2220  __cil_tmp66 = 0 + 32;
2221#line 134
2222  __cil_tmp67 = (unsigned long )nop;
2223#line 134
2224  __cil_tmp68 = __cil_tmp67 + __cil_tmp66;
2225#line 134
2226  __cil_tmp69 = *((struct usb_otg **)__cil_tmp68);
2227#line 134
2228  __cil_tmp70 = (void const   *)__cil_tmp69;
2229#line 134
2230  kfree(__cil_tmp70);
2231#line 135
2232  __cil_tmp71 = (void const   *)nop;
2233#line 135
2234  kfree(__cil_tmp71);
2235  }
2236#line 136
2237  return (err);
2238}
2239}
2240#line 139
2241static int nop_usb_xceiv_remove(struct platform_device *pdev )  __attribute__((__section__(".devexit.text"),
2242__no_instrument_function__)) ;
2243#line 139 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2244static int nop_usb_xceiv_remove(struct platform_device *pdev ) 
2245{ struct nop_usb_xceiv *nop ;
2246  void *tmp ;
2247  struct platform_device  const  *__cil_tmp4 ;
2248  void *__cil_tmp5 ;
2249  struct usb_phy *__cil_tmp6 ;
2250  void *__cil_tmp7 ;
2251  unsigned long __cil_tmp8 ;
2252  unsigned long __cil_tmp9 ;
2253  unsigned long __cil_tmp10 ;
2254  struct usb_otg *__cil_tmp11 ;
2255  void const   *__cil_tmp12 ;
2256  void const   *__cil_tmp13 ;
2257
2258  {
2259  {
2260#line 141
2261  __cil_tmp4 = (struct platform_device  const  *)pdev;
2262#line 141
2263  tmp = platform_get_drvdata(__cil_tmp4);
2264#line 141
2265  nop = (struct nop_usb_xceiv *)tmp;
2266#line 143
2267  __cil_tmp5 = (void *)0;
2268#line 143
2269  __cil_tmp6 = (struct usb_phy *)__cil_tmp5;
2270#line 143
2271  usb_set_transceiver(__cil_tmp6);
2272#line 145
2273  __cil_tmp7 = (void *)0;
2274#line 145
2275  platform_set_drvdata(pdev, __cil_tmp7);
2276#line 146
2277  __cil_tmp8 = 0 + 32;
2278#line 146
2279  __cil_tmp9 = (unsigned long )nop;
2280#line 146
2281  __cil_tmp10 = __cil_tmp9 + __cil_tmp8;
2282#line 146
2283  __cil_tmp11 = *((struct usb_otg **)__cil_tmp10);
2284#line 146
2285  __cil_tmp12 = (void const   *)__cil_tmp11;
2286#line 146
2287  kfree(__cil_tmp12);
2288#line 147
2289  __cil_tmp13 = (void const   *)nop;
2290#line 147
2291  kfree(__cil_tmp13);
2292  }
2293#line 149
2294  return (0);
2295}
2296}
2297#line 152 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2298static struct platform_driver nop_usb_xceiv_driver  =    {& nop_usb_xceiv_probe, & nop_usb_xceiv_remove, (void (*)(struct platform_device * ))0,
2299    (int (*)(struct platform_device * , pm_message_t state ))0, (int (*)(struct platform_device * ))0,
2300    {"nop_usb_xceiv", (struct bus_type *)0, & __this_module, (char const   *)0, (_Bool)0,
2301     (struct of_device_id  const  *)0, (int (*)(struct device *dev ))0, (int (*)(struct device *dev ))0,
2302     (void (*)(struct device *dev ))0, (int (*)(struct device *dev , pm_message_t state ))0,
2303     (int (*)(struct device *dev ))0, (struct attribute_group  const  **)0, (struct dev_pm_ops  const  *)0,
2304     (struct driver_private *)0}, (struct platform_device_id  const  *)0};
2305#line 161
2306static int nop_usb_xceiv_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
2307#line 161 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2308static int nop_usb_xceiv_init(void) 
2309{ int tmp ;
2310
2311  {
2312  {
2313#line 163
2314  tmp = platform_driver_register(& nop_usb_xceiv_driver);
2315  }
2316#line 163
2317  return (tmp);
2318}
2319}
2320#line 165 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2321int init_module(void) 
2322{ int tmp ;
2323
2324  {
2325  {
2326#line 165
2327  tmp = nop_usb_xceiv_init();
2328  }
2329#line 165
2330  return (tmp);
2331}
2332}
2333#line 167
2334static void nop_usb_xceiv_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
2335#line 167 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2336static void nop_usb_xceiv_exit(void) 
2337{ 
2338
2339  {
2340  {
2341#line 169
2342  platform_driver_unregister(& nop_usb_xceiv_driver);
2343  }
2344#line 170
2345  return;
2346}
2347}
2348#line 171 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2349void cleanup_module(void) 
2350{ 
2351
2352  {
2353  {
2354#line 171
2355  nop_usb_xceiv_exit();
2356  }
2357#line 171
2358  return;
2359}
2360}
2361#line 173 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2362static char const   __mod_alias173[29]  __attribute__((__used__, __unused__, __section__(".modinfo"),
2363__aligned__(1)))  = 
2364#line 173
2365  {      (char const   )'a',      (char const   )'l',      (char const   )'i',      (char const   )'a', 
2366        (char const   )'s',      (char const   )'=',      (char const   )'p',      (char const   )'l', 
2367        (char const   )'a',      (char const   )'t',      (char const   )'f',      (char const   )'o', 
2368        (char const   )'r',      (char const   )'m',      (char const   )':',      (char const   )'n', 
2369        (char const   )'o',      (char const   )'p',      (char const   )'_',      (char const   )'u', 
2370        (char const   )'s',      (char const   )'b',      (char const   )'_',      (char const   )'x', 
2371        (char const   )'c',      (char const   )'e',      (char const   )'i',      (char const   )'v', 
2372        (char const   )'\000'};
2373#line 174 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2374static char const   __mod_author174[29]  __attribute__((__used__, __unused__, __section__(".modinfo"),
2375__aligned__(1)))  = 
2376#line 174
2377  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
2378        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'T', 
2379        (char const   )'e',      (char const   )'x',      (char const   )'a',      (char const   )'s', 
2380        (char const   )' ',      (char const   )'I',      (char const   )'n',      (char const   )'s', 
2381        (char const   )'t',      (char const   )'r',      (char const   )'u',      (char const   )'m', 
2382        (char const   )'e',      (char const   )'n',      (char const   )'t',      (char const   )'s', 
2383        (char const   )' ',      (char const   )'I',      (char const   )'n',      (char const   )'c', 
2384        (char const   )'\000'};
2385#line 175 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2386static char const   __mod_description175[39]  __attribute__((__used__, __unused__,
2387__section__(".modinfo"), __aligned__(1)))  = 
2388#line 175
2389  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
2390        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
2391        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
2392        (char const   )'N',      (char const   )'O',      (char const   )'P',      (char const   )' ', 
2393        (char const   )'U',      (char const   )'S',      (char const   )'B',      (char const   )' ', 
2394        (char const   )'T',      (char const   )'r',      (char const   )'a',      (char const   )'n', 
2395        (char const   )'s',      (char const   )'c',      (char const   )'e',      (char const   )'i', 
2396        (char const   )'v',      (char const   )'e',      (char const   )'r',      (char const   )' ', 
2397        (char const   )'d',      (char const   )'r',      (char const   )'i',      (char const   )'v', 
2398        (char const   )'e',      (char const   )'r',      (char const   )'\000'};
2399#line 176 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2400static char const   __mod_license176[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
2401__aligned__(1)))  = 
2402#line 176
2403  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
2404        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
2405        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
2406#line 194
2407void ldv_check_final_state(void) ;
2408#line 197
2409extern void ldv_check_return_value(int res ) ;
2410#line 200
2411extern void ldv_initialize(void) ;
2412#line 203
2413extern int __VERIFIER_nondet_int(void) ;
2414#line 206 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2415int LDV_IN_INTERRUPT  ;
2416#line 221 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2417static int res_nop_usb_xceiv_probe_5  ;
2418#line 209 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2419void main(void) 
2420{ struct platform_device *var_group1 ;
2421  int tmp ;
2422  int ldv_s_nop_usb_xceiv_driver_platform_driver ;
2423  int tmp___0 ;
2424  int tmp___1 ;
2425  int __cil_tmp6 ;
2426
2427  {
2428  {
2429#line 229
2430  LDV_IN_INTERRUPT = 1;
2431#line 238
2432  ldv_initialize();
2433#line 244
2434  tmp = nop_usb_xceiv_init();
2435  }
2436#line 244
2437  if (tmp) {
2438#line 245
2439    goto ldv_final;
2440  } else {
2441
2442  }
2443#line 246
2444  ldv_s_nop_usb_xceiv_driver_platform_driver = 0;
2445  {
2446#line 249
2447  while (1) {
2448    while_continue: /* CIL Label */ ;
2449    {
2450#line 249
2451    tmp___1 = __VERIFIER_nondet_int();
2452    }
2453#line 249
2454    if (tmp___1) {
2455
2456    } else {
2457      {
2458#line 249
2459      __cil_tmp6 = ldv_s_nop_usb_xceiv_driver_platform_driver == 0;
2460#line 249
2461      if (! __cil_tmp6) {
2462
2463      } else {
2464#line 249
2465        goto while_break;
2466      }
2467      }
2468    }
2469    {
2470#line 253
2471    tmp___0 = __VERIFIER_nondet_int();
2472    }
2473#line 255
2474    if (tmp___0 == 0) {
2475#line 255
2476      goto case_0;
2477    } else {
2478      {
2479#line 274
2480      goto switch_default;
2481#line 253
2482      if (0) {
2483        case_0: /* CIL Label */ 
2484#line 258
2485        if (ldv_s_nop_usb_xceiv_driver_platform_driver == 0) {
2486          {
2487#line 263
2488          res_nop_usb_xceiv_probe_5 = nop_usb_xceiv_probe(var_group1);
2489#line 264
2490          ldv_check_return_value(res_nop_usb_xceiv_probe_5);
2491          }
2492#line 265
2493          if (res_nop_usb_xceiv_probe_5) {
2494#line 266
2495            goto ldv_module_exit;
2496          } else {
2497
2498          }
2499#line 267
2500          ldv_s_nop_usb_xceiv_driver_platform_driver = 0;
2501        } else {
2502
2503        }
2504#line 273
2505        goto switch_break;
2506        switch_default: /* CIL Label */ 
2507#line 274
2508        goto switch_break;
2509      } else {
2510        switch_break: /* CIL Label */ ;
2511      }
2512      }
2513    }
2514  }
2515  while_break: /* CIL Label */ ;
2516  }
2517  ldv_module_exit: 
2518  {
2519#line 286
2520  nop_usb_xceiv_exit();
2521  }
2522  ldv_final: 
2523  {
2524#line 289
2525  ldv_check_final_state();
2526  }
2527#line 292
2528  return;
2529}
2530}
2531#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
2532void ldv_blast_assert(void) 
2533{ 
2534
2535  {
2536  ERROR: 
2537#line 6
2538  goto ERROR;
2539}
2540}
2541#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
2542extern int __VERIFIER_nondet_int(void) ;
2543#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2544int ldv_mutex  =    1;
2545#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2546int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
2547{ int nondetermined ;
2548
2549  {
2550#line 29
2551  if (ldv_mutex == 1) {
2552
2553  } else {
2554    {
2555#line 29
2556    ldv_blast_assert();
2557    }
2558  }
2559  {
2560#line 32
2561  nondetermined = __VERIFIER_nondet_int();
2562  }
2563#line 35
2564  if (nondetermined) {
2565#line 38
2566    ldv_mutex = 2;
2567#line 40
2568    return (0);
2569  } else {
2570#line 45
2571    return (-4);
2572  }
2573}
2574}
2575#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2576int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
2577{ int nondetermined ;
2578
2579  {
2580#line 57
2581  if (ldv_mutex == 1) {
2582
2583  } else {
2584    {
2585#line 57
2586    ldv_blast_assert();
2587    }
2588  }
2589  {
2590#line 60
2591  nondetermined = __VERIFIER_nondet_int();
2592  }
2593#line 63
2594  if (nondetermined) {
2595#line 66
2596    ldv_mutex = 2;
2597#line 68
2598    return (0);
2599  } else {
2600#line 73
2601    return (-4);
2602  }
2603}
2604}
2605#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2606int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
2607{ int atomic_value_after_dec ;
2608
2609  {
2610#line 83
2611  if (ldv_mutex == 1) {
2612
2613  } else {
2614    {
2615#line 83
2616    ldv_blast_assert();
2617    }
2618  }
2619  {
2620#line 86
2621  atomic_value_after_dec = __VERIFIER_nondet_int();
2622  }
2623#line 89
2624  if (atomic_value_after_dec == 0) {
2625#line 92
2626    ldv_mutex = 2;
2627#line 94
2628    return (1);
2629  } else {
2630
2631  }
2632#line 98
2633  return (0);
2634}
2635}
2636#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2637void mutex_lock(struct mutex *lock ) 
2638{ 
2639
2640  {
2641#line 108
2642  if (ldv_mutex == 1) {
2643
2644  } else {
2645    {
2646#line 108
2647    ldv_blast_assert();
2648    }
2649  }
2650#line 110
2651  ldv_mutex = 2;
2652#line 111
2653  return;
2654}
2655}
2656#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2657int mutex_trylock(struct mutex *lock ) 
2658{ int nondetermined ;
2659
2660  {
2661#line 121
2662  if (ldv_mutex == 1) {
2663
2664  } else {
2665    {
2666#line 121
2667    ldv_blast_assert();
2668    }
2669  }
2670  {
2671#line 124
2672  nondetermined = __VERIFIER_nondet_int();
2673  }
2674#line 127
2675  if (nondetermined) {
2676#line 130
2677    ldv_mutex = 2;
2678#line 132
2679    return (1);
2680  } else {
2681#line 137
2682    return (0);
2683  }
2684}
2685}
2686#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2687void mutex_unlock(struct mutex *lock ) 
2688{ 
2689
2690  {
2691#line 147
2692  if (ldv_mutex == 2) {
2693
2694  } else {
2695    {
2696#line 147
2697    ldv_blast_assert();
2698    }
2699  }
2700#line 149
2701  ldv_mutex = 1;
2702#line 150
2703  return;
2704}
2705}
2706#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
2707void ldv_check_final_state(void) 
2708{ 
2709
2710  {
2711#line 156
2712  if (ldv_mutex == 1) {
2713
2714  } else {
2715    {
2716#line 156
2717    ldv_blast_assert();
2718    }
2719  }
2720#line 157
2721  return;
2722}
2723}
2724#line 301 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7765/dscv_tempdir/dscv/ri/32_1/drivers/usb/otg/nop-usb-xceiv.c.common.c"
2725long s__builtin_expect(long val , long res ) 
2726{ 
2727
2728  {
2729#line 302
2730  return (val);
2731}
2732}