Showing error 646

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