Showing error 239

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