Showing error 238

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--ipmi--ipmi_poweroff.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 4834
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 19 "include/asm-generic/int-ll64.h"
   5typedef signed char __s8;
   6#line 22 "include/asm-generic/int-ll64.h"
   7typedef short __s16;
   8#line 23 "include/asm-generic/int-ll64.h"
   9typedef unsigned short __u16;
  10#line 25 "include/asm-generic/int-ll64.h"
  11typedef int __s32;
  12#line 26 "include/asm-generic/int-ll64.h"
  13typedef unsigned int __u32;
  14#line 30 "include/asm-generic/int-ll64.h"
  15typedef unsigned long long __u64;
  16#line 43 "include/asm-generic/int-ll64.h"
  17typedef unsigned char u8;
  18#line 45 "include/asm-generic/int-ll64.h"
  19typedef short s16;
  20#line 46 "include/asm-generic/int-ll64.h"
  21typedef unsigned short u16;
  22#line 48 "include/asm-generic/int-ll64.h"
  23typedef int s32;
  24#line 49 "include/asm-generic/int-ll64.h"
  25typedef unsigned int u32;
  26#line 51 "include/asm-generic/int-ll64.h"
  27typedef long long s64;
  28#line 52 "include/asm-generic/int-ll64.h"
  29typedef unsigned long long u64;
  30#line 14 "include/asm-generic/posix_types.h"
  31typedef long __kernel_long_t;
  32#line 15 "include/asm-generic/posix_types.h"
  33typedef unsigned long __kernel_ulong_t;
  34#line 52 "include/asm-generic/posix_types.h"
  35typedef unsigned int __kernel_uid32_t;
  36#line 53 "include/asm-generic/posix_types.h"
  37typedef unsigned int __kernel_gid32_t;
  38#line 75 "include/asm-generic/posix_types.h"
  39typedef __kernel_ulong_t __kernel_size_t;
  40#line 76 "include/asm-generic/posix_types.h"
  41typedef __kernel_long_t __kernel_ssize_t;
  42#line 91 "include/asm-generic/posix_types.h"
  43typedef long long __kernel_loff_t;
  44#line 92 "include/asm-generic/posix_types.h"
  45typedef __kernel_long_t __kernel_time_t;
  46#line 21 "include/linux/types.h"
  47typedef __u32 __kernel_dev_t;
  48#line 24 "include/linux/types.h"
  49typedef __kernel_dev_t dev_t;
  50#line 27 "include/linux/types.h"
  51typedef unsigned short umode_t;
  52#line 38 "include/linux/types.h"
  53typedef _Bool bool;
  54#line 40 "include/linux/types.h"
  55typedef __kernel_uid32_t uid_t;
  56#line 41 "include/linux/types.h"
  57typedef __kernel_gid32_t gid_t;
  58#line 54 "include/linux/types.h"
  59typedef __kernel_loff_t loff_t;
  60#line 63 "include/linux/types.h"
  61typedef __kernel_size_t size_t;
  62#line 68 "include/linux/types.h"
  63typedef __kernel_ssize_t ssize_t;
  64#line 78 "include/linux/types.h"
  65typedef __kernel_time_t time_t;
  66#line 142 "include/linux/types.h"
  67typedef unsigned long sector_t;
  68#line 143 "include/linux/types.h"
  69typedef unsigned long blkcnt_t;
  70#line 202 "include/linux/types.h"
  71typedef unsigned int gfp_t;
  72#line 203 "include/linux/types.h"
  73typedef unsigned int fmode_t;
  74#line 219 "include/linux/types.h"
  75struct __anonstruct_atomic_t_7 {
  76   int counter ;
  77};
  78#line 219 "include/linux/types.h"
  79typedef struct __anonstruct_atomic_t_7 atomic_t;
  80#line 224 "include/linux/types.h"
  81struct __anonstruct_atomic64_t_8 {
  82   long counter ;
  83};
  84#line 224 "include/linux/types.h"
  85typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  86#line 229 "include/linux/types.h"
  87struct list_head {
  88   struct list_head *next ;
  89   struct list_head *prev ;
  90};
  91#line 233
  92struct hlist_node;
  93#line 233 "include/linux/types.h"
  94struct hlist_head {
  95   struct hlist_node *first ;
  96};
  97#line 237 "include/linux/types.h"
  98struct hlist_node {
  99   struct hlist_node *next ;
 100   struct hlist_node **pprev ;
 101};
 102#line 253 "include/linux/types.h"
 103struct rcu_head {
 104   struct rcu_head *next ;
 105   void (*func)(struct rcu_head *head ) ;
 106};
 107#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 108struct module;
 109#line 56
 110struct module;
 111#line 146 "include/linux/init.h"
 112typedef void (*ctor_fn_t)(void);
 113#line 47 "include/linux/dynamic_debug.h"
 114struct device;
 115#line 47
 116struct device;
 117#line 135 "include/linux/kernel.h"
 118struct completion;
 119#line 135
 120struct completion;
 121#line 349
 122struct pid;
 123#line 349
 124struct pid;
 125#line 12 "include/linux/thread_info.h"
 126struct timespec;
 127#line 12
 128struct timespec;
 129#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
 130struct page;
 131#line 18
 132struct page;
 133#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 134struct task_struct;
 135#line 20
 136struct task_struct;
 137#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 138struct task_struct;
 139#line 295 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 140struct file;
 141#line 295
 142struct file;
 143#line 313
 144struct seq_file;
 145#line 313
 146struct seq_file;
 147#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 148struct page;
 149#line 52
 150struct task_struct;
 151#line 329
 152struct arch_spinlock;
 153#line 329
 154struct arch_spinlock;
 155#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 156struct task_struct;
 157#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 158struct task_struct;
 159#line 10 "include/asm-generic/bug.h"
 160struct bug_entry {
 161   int bug_addr_disp ;
 162   int file_disp ;
 163   unsigned short line ;
 164   unsigned short flags ;
 165};
 166#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 167struct static_key;
 168#line 234
 169struct static_key;
 170#line 23 "include/asm-generic/atomic-long.h"
 171typedef atomic64_t atomic_long_t;
 172#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 173typedef u16 __ticket_t;
 174#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 175typedef u32 __ticketpair_t;
 176#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 177struct __raw_tickets {
 178   __ticket_t head ;
 179   __ticket_t tail ;
 180};
 181#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 182union __anonunion____missing_field_name_36 {
 183   __ticketpair_t head_tail ;
 184   struct __raw_tickets tickets ;
 185};
 186#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 187struct arch_spinlock {
 188   union __anonunion____missing_field_name_36 __annonCompField17 ;
 189};
 190#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 191typedef struct arch_spinlock arch_spinlock_t;
 192#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 193struct __anonstruct____missing_field_name_38 {
 194   u32 read ;
 195   s32 write ;
 196};
 197#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 198union __anonunion_arch_rwlock_t_37 {
 199   s64 lock ;
 200   struct __anonstruct____missing_field_name_38 __annonCompField18 ;
 201};
 202#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 203typedef union __anonunion_arch_rwlock_t_37 arch_rwlock_t;
 204#line 12 "include/linux/lockdep.h"
 205struct task_struct;
 206#line 391 "include/linux/lockdep.h"
 207struct lock_class_key {
 208
 209};
 210#line 20 "include/linux/spinlock_types.h"
 211struct raw_spinlock {
 212   arch_spinlock_t raw_lock ;
 213   unsigned int magic ;
 214   unsigned int owner_cpu ;
 215   void *owner ;
 216};
 217#line 20 "include/linux/spinlock_types.h"
 218typedef struct raw_spinlock raw_spinlock_t;
 219#line 64 "include/linux/spinlock_types.h"
 220union __anonunion____missing_field_name_39 {
 221   struct raw_spinlock rlock ;
 222};
 223#line 64 "include/linux/spinlock_types.h"
 224struct spinlock {
 225   union __anonunion____missing_field_name_39 __annonCompField19 ;
 226};
 227#line 64 "include/linux/spinlock_types.h"
 228typedef struct spinlock spinlock_t;
 229#line 11 "include/linux/rwlock_types.h"
 230struct __anonstruct_rwlock_t_40 {
 231   arch_rwlock_t raw_lock ;
 232   unsigned int magic ;
 233   unsigned int owner_cpu ;
 234   void *owner ;
 235};
 236#line 11 "include/linux/rwlock_types.h"
 237typedef struct __anonstruct_rwlock_t_40 rwlock_t;
 238#line 119 "include/linux/seqlock.h"
 239struct seqcount {
 240   unsigned int sequence ;
 241};
 242#line 119 "include/linux/seqlock.h"
 243typedef struct seqcount seqcount_t;
 244#line 14 "include/linux/time.h"
 245struct timespec {
 246   __kernel_time_t tv_sec ;
 247   long tv_nsec ;
 248};
 249#line 62 "include/linux/stat.h"
 250struct kstat {
 251   u64 ino ;
 252   dev_t dev ;
 253   umode_t mode ;
 254   unsigned int nlink ;
 255   uid_t uid ;
 256   gid_t gid ;
 257   dev_t rdev ;
 258   loff_t size ;
 259   struct timespec atime ;
 260   struct timespec mtime ;
 261   struct timespec ctime ;
 262   unsigned long blksize ;
 263   unsigned long long blocks ;
 264};
 265#line 49 "include/linux/wait.h"
 266struct __wait_queue_head {
 267   spinlock_t lock ;
 268   struct list_head task_list ;
 269};
 270#line 53 "include/linux/wait.h"
 271typedef struct __wait_queue_head wait_queue_head_t;
 272#line 55
 273struct task_struct;
 274#line 60 "include/linux/pageblock-flags.h"
 275struct page;
 276#line 48 "include/linux/mutex.h"
 277struct mutex {
 278   atomic_t count ;
 279   spinlock_t wait_lock ;
 280   struct list_head wait_list ;
 281   struct task_struct *owner ;
 282   char const   *name ;
 283   void *magic ;
 284};
 285#line 19 "include/linux/rwsem.h"
 286struct rw_semaphore;
 287#line 19
 288struct rw_semaphore;
 289#line 25 "include/linux/rwsem.h"
 290struct rw_semaphore {
 291   long count ;
 292   raw_spinlock_t wait_lock ;
 293   struct list_head wait_list ;
 294};
 295#line 25 "include/linux/completion.h"
 296struct completion {
 297   unsigned int done ;
 298   wait_queue_head_t wait ;
 299};
 300#line 9 "include/linux/memory_hotplug.h"
 301struct page;
 302#line 798 "include/linux/mmzone.h"
 303struct ctl_table;
 304#line 798
 305struct ctl_table;
 306#line 202 "include/linux/ioport.h"
 307struct device;
 308#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
 309struct device;
 310#line 46 "include/linux/ktime.h"
 311union ktime {
 312   s64 tv64 ;
 313};
 314#line 59 "include/linux/ktime.h"
 315typedef union ktime ktime_t;
 316#line 10 "include/linux/timer.h"
 317struct tvec_base;
 318#line 10
 319struct tvec_base;
 320#line 12 "include/linux/timer.h"
 321struct timer_list {
 322   struct list_head entry ;
 323   unsigned long expires ;
 324   struct tvec_base *base ;
 325   void (*function)(unsigned long  ) ;
 326   unsigned long data ;
 327   int slack ;
 328   int start_pid ;
 329   void *start_site ;
 330   char start_comm[16] ;
 331};
 332#line 17 "include/linux/workqueue.h"
 333struct work_struct;
 334#line 17
 335struct work_struct;
 336#line 79 "include/linux/workqueue.h"
 337struct work_struct {
 338   atomic_long_t data ;
 339   struct list_head entry ;
 340   void (*func)(struct work_struct *work ) ;
 341};
 342#line 42 "include/linux/pm.h"
 343struct device;
 344#line 50 "include/linux/pm.h"
 345struct pm_message {
 346   int event ;
 347};
 348#line 50 "include/linux/pm.h"
 349typedef struct pm_message pm_message_t;
 350#line 264 "include/linux/pm.h"
 351struct dev_pm_ops {
 352   int (*prepare)(struct device *dev ) ;
 353   void (*complete)(struct device *dev ) ;
 354   int (*suspend)(struct device *dev ) ;
 355   int (*resume)(struct device *dev ) ;
 356   int (*freeze)(struct device *dev ) ;
 357   int (*thaw)(struct device *dev ) ;
 358   int (*poweroff)(struct device *dev ) ;
 359   int (*restore)(struct device *dev ) ;
 360   int (*suspend_late)(struct device *dev ) ;
 361   int (*resume_early)(struct device *dev ) ;
 362   int (*freeze_late)(struct device *dev ) ;
 363   int (*thaw_early)(struct device *dev ) ;
 364   int (*poweroff_late)(struct device *dev ) ;
 365   int (*restore_early)(struct device *dev ) ;
 366   int (*suspend_noirq)(struct device *dev ) ;
 367   int (*resume_noirq)(struct device *dev ) ;
 368   int (*freeze_noirq)(struct device *dev ) ;
 369   int (*thaw_noirq)(struct device *dev ) ;
 370   int (*poweroff_noirq)(struct device *dev ) ;
 371   int (*restore_noirq)(struct device *dev ) ;
 372   int (*runtime_suspend)(struct device *dev ) ;
 373   int (*runtime_resume)(struct device *dev ) ;
 374   int (*runtime_idle)(struct device *dev ) ;
 375};
 376#line 458
 377enum rpm_status {
 378    RPM_ACTIVE = 0,
 379    RPM_RESUMING = 1,
 380    RPM_SUSPENDED = 2,
 381    RPM_SUSPENDING = 3
 382} ;
 383#line 480
 384enum rpm_request {
 385    RPM_REQ_NONE = 0,
 386    RPM_REQ_IDLE = 1,
 387    RPM_REQ_SUSPEND = 2,
 388    RPM_REQ_AUTOSUSPEND = 3,
 389    RPM_REQ_RESUME = 4
 390} ;
 391#line 488
 392struct wakeup_source;
 393#line 488
 394struct wakeup_source;
 395#line 495 "include/linux/pm.h"
 396struct pm_subsys_data {
 397   spinlock_t lock ;
 398   unsigned int refcount ;
 399};
 400#line 506
 401struct dev_pm_qos_request;
 402#line 506
 403struct pm_qos_constraints;
 404#line 506 "include/linux/pm.h"
 405struct dev_pm_info {
 406   pm_message_t power_state ;
 407   unsigned int can_wakeup : 1 ;
 408   unsigned int async_suspend : 1 ;
 409   bool is_prepared : 1 ;
 410   bool is_suspended : 1 ;
 411   bool ignore_children : 1 ;
 412   spinlock_t lock ;
 413   struct list_head entry ;
 414   struct completion completion ;
 415   struct wakeup_source *wakeup ;
 416   bool wakeup_path : 1 ;
 417   struct timer_list suspend_timer ;
 418   unsigned long timer_expires ;
 419   struct work_struct work ;
 420   wait_queue_head_t wait_queue ;
 421   atomic_t usage_count ;
 422   atomic_t child_count ;
 423   unsigned int disable_depth : 3 ;
 424   unsigned int idle_notification : 1 ;
 425   unsigned int request_pending : 1 ;
 426   unsigned int deferred_resume : 1 ;
 427   unsigned int run_wake : 1 ;
 428   unsigned int runtime_auto : 1 ;
 429   unsigned int no_callbacks : 1 ;
 430   unsigned int irq_safe : 1 ;
 431   unsigned int use_autosuspend : 1 ;
 432   unsigned int timer_autosuspends : 1 ;
 433   enum rpm_request request ;
 434   enum rpm_status runtime_status ;
 435   int runtime_error ;
 436   int autosuspend_delay ;
 437   unsigned long last_busy ;
 438   unsigned long active_jiffies ;
 439   unsigned long suspended_jiffies ;
 440   unsigned long accounting_timestamp ;
 441   ktime_t suspend_time ;
 442   s64 max_time_suspended_ns ;
 443   struct dev_pm_qos_request *pq_req ;
 444   struct pm_subsys_data *subsys_data ;
 445   struct pm_qos_constraints *constraints ;
 446};
 447#line 564 "include/linux/pm.h"
 448struct dev_pm_domain {
 449   struct dev_pm_ops ops ;
 450};
 451#line 8 "include/linux/vmalloc.h"
 452struct vm_area_struct;
 453#line 8
 454struct vm_area_struct;
 455#line 994 "include/linux/mmzone.h"
 456struct page;
 457#line 10 "include/linux/gfp.h"
 458struct vm_area_struct;
 459#line 29 "include/linux/sysctl.h"
 460struct completion;
 461#line 100 "include/linux/rbtree.h"
 462struct rb_node {
 463   unsigned long rb_parent_color ;
 464   struct rb_node *rb_right ;
 465   struct rb_node *rb_left ;
 466} __attribute__((__aligned__(sizeof(long )))) ;
 467#line 110 "include/linux/rbtree.h"
 468struct rb_root {
 469   struct rb_node *rb_node ;
 470};
 471#line 938 "include/linux/sysctl.h"
 472struct ctl_table;
 473#line 939
 474struct nsproxy;
 475#line 939
 476struct nsproxy;
 477#line 940
 478struct ctl_table_root;
 479#line 940
 480struct ctl_table_root;
 481#line 941
 482struct ctl_table_header;
 483#line 941
 484struct ctl_table_header;
 485#line 942
 486struct ctl_dir;
 487#line 942
 488struct ctl_dir;
 489#line 944 "include/linux/sysctl.h"
 490typedef struct ctl_table ctl_table;
 491#line 946 "include/linux/sysctl.h"
 492typedef int proc_handler(struct ctl_table *ctl , int write , void *buffer , size_t *lenp ,
 493                         loff_t *ppos );
 494#line 996 "include/linux/sysctl.h"
 495struct ctl_table_poll {
 496   atomic_t event ;
 497   wait_queue_head_t wait ;
 498};
 499#line 1014 "include/linux/sysctl.h"
 500struct ctl_table {
 501   char const   *procname ;
 502   void *data ;
 503   int maxlen ;
 504   umode_t mode ;
 505   struct ctl_table *child ;
 506   proc_handler *proc_handler ;
 507   struct ctl_table_poll *poll ;
 508   void *extra1 ;
 509   void *extra2 ;
 510};
 511#line 1027 "include/linux/sysctl.h"
 512struct ctl_node {
 513   struct rb_node node ;
 514   struct ctl_table_header *header ;
 515};
 516#line 1034 "include/linux/sysctl.h"
 517struct __anonstruct____missing_field_name_194 {
 518   struct ctl_table *ctl_table ;
 519   int used ;
 520   int count ;
 521   int nreg ;
 522};
 523#line 1034 "include/linux/sysctl.h"
 524union __anonunion____missing_field_name_193 {
 525   struct __anonstruct____missing_field_name_194 __annonCompField30 ;
 526   struct rcu_head rcu ;
 527};
 528#line 1034
 529struct ctl_table_set;
 530#line 1034 "include/linux/sysctl.h"
 531struct ctl_table_header {
 532   union __anonunion____missing_field_name_193 __annonCompField31 ;
 533   struct completion *unregistering ;
 534   struct ctl_table *ctl_table_arg ;
 535   struct ctl_table_root *root ;
 536   struct ctl_table_set *set ;
 537   struct ctl_dir *parent ;
 538   struct ctl_node *node ;
 539};
 540#line 1053 "include/linux/sysctl.h"
 541struct ctl_dir {
 542   struct ctl_table_header header ;
 543   struct rb_root root ;
 544};
 545#line 1059 "include/linux/sysctl.h"
 546struct ctl_table_set {
 547   int (*is_seen)(struct ctl_table_set * ) ;
 548   struct ctl_dir dir ;
 549};
 550#line 1064 "include/linux/sysctl.h"
 551struct ctl_table_root {
 552   struct ctl_table_set default_set ;
 553   struct ctl_table_set *(*lookup)(struct ctl_table_root *root , struct nsproxy *namespaces ) ;
 554   int (*permissions)(struct ctl_table_root *root , struct nsproxy *namespaces , struct ctl_table *table ) ;
 555};
 556#line 48 "include/linux/kmod.h"
 557struct cred;
 558#line 48
 559struct cred;
 560#line 49
 561struct file;
 562#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 563struct task_struct;
 564#line 18 "include/linux/elf.h"
 565typedef __u64 Elf64_Addr;
 566#line 19 "include/linux/elf.h"
 567typedef __u16 Elf64_Half;
 568#line 23 "include/linux/elf.h"
 569typedef __u32 Elf64_Word;
 570#line 24 "include/linux/elf.h"
 571typedef __u64 Elf64_Xword;
 572#line 194 "include/linux/elf.h"
 573struct elf64_sym {
 574   Elf64_Word st_name ;
 575   unsigned char st_info ;
 576   unsigned char st_other ;
 577   Elf64_Half st_shndx ;
 578   Elf64_Addr st_value ;
 579   Elf64_Xword st_size ;
 580};
 581#line 194 "include/linux/elf.h"
 582typedef struct elf64_sym Elf64_Sym;
 583#line 438
 584struct file;
 585#line 20 "include/linux/kobject_ns.h"
 586struct sock;
 587#line 20
 588struct sock;
 589#line 21
 590struct kobject;
 591#line 21
 592struct kobject;
 593#line 27
 594enum kobj_ns_type {
 595    KOBJ_NS_TYPE_NONE = 0,
 596    KOBJ_NS_TYPE_NET = 1,
 597    KOBJ_NS_TYPES = 2
 598} ;
 599#line 40 "include/linux/kobject_ns.h"
 600struct kobj_ns_type_operations {
 601   enum kobj_ns_type type ;
 602   void *(*grab_current_ns)(void) ;
 603   void const   *(*netlink_ns)(struct sock *sk ) ;
 604   void const   *(*initial_ns)(void) ;
 605   void (*drop_ns)(void * ) ;
 606};
 607#line 22 "include/linux/sysfs.h"
 608struct kobject;
 609#line 23
 610struct module;
 611#line 24
 612enum kobj_ns_type;
 613#line 26 "include/linux/sysfs.h"
 614struct attribute {
 615   char const   *name ;
 616   umode_t mode ;
 617};
 618#line 56 "include/linux/sysfs.h"
 619struct attribute_group {
 620   char const   *name ;
 621   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 622   struct attribute **attrs ;
 623};
 624#line 85
 625struct file;
 626#line 86
 627struct vm_area_struct;
 628#line 88 "include/linux/sysfs.h"
 629struct bin_attribute {
 630   struct attribute attr ;
 631   size_t size ;
 632   void *private ;
 633   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 634                   loff_t  , size_t  ) ;
 635   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 636                    loff_t  , size_t  ) ;
 637   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 638};
 639#line 112 "include/linux/sysfs.h"
 640struct sysfs_ops {
 641   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 642   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 643   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 644};
 645#line 118
 646struct sysfs_dirent;
 647#line 118
 648struct sysfs_dirent;
 649#line 22 "include/linux/kref.h"
 650struct kref {
 651   atomic_t refcount ;
 652};
 653#line 60 "include/linux/kobject.h"
 654struct kset;
 655#line 60
 656struct kobj_type;
 657#line 60 "include/linux/kobject.h"
 658struct kobject {
 659   char const   *name ;
 660   struct list_head entry ;
 661   struct kobject *parent ;
 662   struct kset *kset ;
 663   struct kobj_type *ktype ;
 664   struct sysfs_dirent *sd ;
 665   struct kref kref ;
 666   unsigned int state_initialized : 1 ;
 667   unsigned int state_in_sysfs : 1 ;
 668   unsigned int state_add_uevent_sent : 1 ;
 669   unsigned int state_remove_uevent_sent : 1 ;
 670   unsigned int uevent_suppress : 1 ;
 671};
 672#line 108 "include/linux/kobject.h"
 673struct kobj_type {
 674   void (*release)(struct kobject *kobj ) ;
 675   struct sysfs_ops  const  *sysfs_ops ;
 676   struct attribute **default_attrs ;
 677   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 678   void const   *(*namespace)(struct kobject *kobj ) ;
 679};
 680#line 116 "include/linux/kobject.h"
 681struct kobj_uevent_env {
 682   char *envp[32] ;
 683   int envp_idx ;
 684   char buf[2048] ;
 685   int buflen ;
 686};
 687#line 123 "include/linux/kobject.h"
 688struct kset_uevent_ops {
 689   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 690   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 691   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 692};
 693#line 140
 694struct sock;
 695#line 159 "include/linux/kobject.h"
 696struct kset {
 697   struct list_head list ;
 698   spinlock_t list_lock ;
 699   struct kobject kobj ;
 700   struct kset_uevent_ops  const  *uevent_ops ;
 701};
 702#line 39 "include/linux/moduleparam.h"
 703struct kernel_param;
 704#line 39
 705struct kernel_param;
 706#line 41 "include/linux/moduleparam.h"
 707struct kernel_param_ops {
 708   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 709   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 710   void (*free)(void *arg ) ;
 711};
 712#line 50
 713struct kparam_string;
 714#line 50
 715struct kparam_array;
 716#line 50 "include/linux/moduleparam.h"
 717union __anonunion____missing_field_name_199 {
 718   void *arg ;
 719   struct kparam_string  const  *str ;
 720   struct kparam_array  const  *arr ;
 721};
 722#line 50 "include/linux/moduleparam.h"
 723struct kernel_param {
 724   char const   *name ;
 725   struct kernel_param_ops  const  *ops ;
 726   u16 perm ;
 727   s16 level ;
 728   union __anonunion____missing_field_name_199 __annonCompField32 ;
 729};
 730#line 63 "include/linux/moduleparam.h"
 731struct kparam_string {
 732   unsigned int maxlen ;
 733   char *string ;
 734};
 735#line 69 "include/linux/moduleparam.h"
 736struct kparam_array {
 737   unsigned int max ;
 738   unsigned int elemsize ;
 739   unsigned int *num ;
 740   struct kernel_param_ops  const  *ops ;
 741   void *elem ;
 742};
 743#line 445
 744struct module;
 745#line 80 "include/linux/jump_label.h"
 746struct module;
 747#line 143 "include/linux/jump_label.h"
 748struct static_key {
 749   atomic_t enabled ;
 750};
 751#line 22 "include/linux/tracepoint.h"
 752struct module;
 753#line 23
 754struct tracepoint;
 755#line 23
 756struct tracepoint;
 757#line 25 "include/linux/tracepoint.h"
 758struct tracepoint_func {
 759   void *func ;
 760   void *data ;
 761};
 762#line 30 "include/linux/tracepoint.h"
 763struct tracepoint {
 764   char const   *name ;
 765   struct static_key key ;
 766   void (*regfunc)(void) ;
 767   void (*unregfunc)(void) ;
 768   struct tracepoint_func *funcs ;
 769};
 770#line 19 "include/linux/export.h"
 771struct kernel_symbol {
 772   unsigned long value ;
 773   char const   *name ;
 774};
 775#line 8 "include/asm-generic/module.h"
 776struct mod_arch_specific {
 777
 778};
 779#line 35 "include/linux/module.h"
 780struct module;
 781#line 37
 782struct module_param_attrs;
 783#line 37 "include/linux/module.h"
 784struct module_kobject {
 785   struct kobject kobj ;
 786   struct module *mod ;
 787   struct kobject *drivers_dir ;
 788   struct module_param_attrs *mp ;
 789};
 790#line 44 "include/linux/module.h"
 791struct module_attribute {
 792   struct attribute attr ;
 793   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 794   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 795                    size_t count ) ;
 796   void (*setup)(struct module * , char const   * ) ;
 797   int (*test)(struct module * ) ;
 798   void (*free)(struct module * ) ;
 799};
 800#line 71
 801struct exception_table_entry;
 802#line 71
 803struct exception_table_entry;
 804#line 199
 805enum module_state {
 806    MODULE_STATE_LIVE = 0,
 807    MODULE_STATE_COMING = 1,
 808    MODULE_STATE_GOING = 2
 809} ;
 810#line 215 "include/linux/module.h"
 811struct module_ref {
 812   unsigned long incs ;
 813   unsigned long decs ;
 814} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 815#line 220
 816struct module_sect_attrs;
 817#line 220
 818struct module_notes_attrs;
 819#line 220
 820struct ftrace_event_call;
 821#line 220 "include/linux/module.h"
 822struct module {
 823   enum module_state state ;
 824   struct list_head list ;
 825   char name[64UL - sizeof(unsigned long )] ;
 826   struct module_kobject mkobj ;
 827   struct module_attribute *modinfo_attrs ;
 828   char const   *version ;
 829   char const   *srcversion ;
 830   struct kobject *holders_dir ;
 831   struct kernel_symbol  const  *syms ;
 832   unsigned long const   *crcs ;
 833   unsigned int num_syms ;
 834   struct kernel_param *kp ;
 835   unsigned int num_kp ;
 836   unsigned int num_gpl_syms ;
 837   struct kernel_symbol  const  *gpl_syms ;
 838   unsigned long const   *gpl_crcs ;
 839   struct kernel_symbol  const  *unused_syms ;
 840   unsigned long const   *unused_crcs ;
 841   unsigned int num_unused_syms ;
 842   unsigned int num_unused_gpl_syms ;
 843   struct kernel_symbol  const  *unused_gpl_syms ;
 844   unsigned long const   *unused_gpl_crcs ;
 845   struct kernel_symbol  const  *gpl_future_syms ;
 846   unsigned long const   *gpl_future_crcs ;
 847   unsigned int num_gpl_future_syms ;
 848   unsigned int num_exentries ;
 849   struct exception_table_entry *extable ;
 850   int (*init)(void) ;
 851   void *module_init ;
 852   void *module_core ;
 853   unsigned int init_size ;
 854   unsigned int core_size ;
 855   unsigned int init_text_size ;
 856   unsigned int core_text_size ;
 857   unsigned int init_ro_size ;
 858   unsigned int core_ro_size ;
 859   struct mod_arch_specific arch ;
 860   unsigned int taints ;
 861   unsigned int num_bugs ;
 862   struct list_head bug_list ;
 863   struct bug_entry *bug_table ;
 864   Elf64_Sym *symtab ;
 865   Elf64_Sym *core_symtab ;
 866   unsigned int num_symtab ;
 867   unsigned int core_num_syms ;
 868   char *strtab ;
 869   char *core_strtab ;
 870   struct module_sect_attrs *sect_attrs ;
 871   struct module_notes_attrs *notes_attrs ;
 872   char *args ;
 873   void *percpu ;
 874   unsigned int percpu_size ;
 875   unsigned int num_tracepoints ;
 876   struct tracepoint * const  *tracepoints_ptrs ;
 877   unsigned int num_trace_bprintk_fmt ;
 878   char const   **trace_bprintk_fmt_start ;
 879   struct ftrace_event_call **trace_events ;
 880   unsigned int num_trace_events ;
 881   struct list_head source_list ;
 882   struct list_head target_list ;
 883   struct task_struct *waiter ;
 884   void (*exit)(void) ;
 885   struct module_ref *refptr ;
 886   ctor_fn_t *ctors ;
 887   unsigned int num_ctors ;
 888};
 889#line 15 "include/linux/blk_types.h"
 890struct page;
 891#line 16
 892struct block_device;
 893#line 16
 894struct block_device;
 895#line 33 "include/linux/list_bl.h"
 896struct hlist_bl_node;
 897#line 33 "include/linux/list_bl.h"
 898struct hlist_bl_head {
 899   struct hlist_bl_node *first ;
 900};
 901#line 37 "include/linux/list_bl.h"
 902struct hlist_bl_node {
 903   struct hlist_bl_node *next ;
 904   struct hlist_bl_node **pprev ;
 905};
 906#line 13 "include/linux/dcache.h"
 907struct nameidata;
 908#line 13
 909struct nameidata;
 910#line 14
 911struct path;
 912#line 14
 913struct path;
 914#line 15
 915struct vfsmount;
 916#line 15
 917struct vfsmount;
 918#line 35 "include/linux/dcache.h"
 919struct qstr {
 920   unsigned int hash ;
 921   unsigned int len ;
 922   unsigned char const   *name ;
 923};
 924#line 88
 925struct inode;
 926#line 88
 927struct dentry_operations;
 928#line 88
 929struct super_block;
 930#line 88 "include/linux/dcache.h"
 931union __anonunion_d_u_201 {
 932   struct list_head d_child ;
 933   struct rcu_head d_rcu ;
 934};
 935#line 88 "include/linux/dcache.h"
 936struct dentry {
 937   unsigned int d_flags ;
 938   seqcount_t d_seq ;
 939   struct hlist_bl_node d_hash ;
 940   struct dentry *d_parent ;
 941   struct qstr d_name ;
 942   struct inode *d_inode ;
 943   unsigned char d_iname[32] ;
 944   unsigned int d_count ;
 945   spinlock_t d_lock ;
 946   struct dentry_operations  const  *d_op ;
 947   struct super_block *d_sb ;
 948   unsigned long d_time ;
 949   void *d_fsdata ;
 950   struct list_head d_lru ;
 951   union __anonunion_d_u_201 d_u ;
 952   struct list_head d_subdirs ;
 953   struct list_head d_alias ;
 954};
 955#line 131 "include/linux/dcache.h"
 956struct dentry_operations {
 957   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
 958   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
 959   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
 960                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
 961   int (*d_delete)(struct dentry  const  * ) ;
 962   void (*d_release)(struct dentry * ) ;
 963   void (*d_prune)(struct dentry * ) ;
 964   void (*d_iput)(struct dentry * , struct inode * ) ;
 965   char *(*d_dname)(struct dentry * , char * , int  ) ;
 966   struct vfsmount *(*d_automount)(struct path * ) ;
 967   int (*d_manage)(struct dentry * , bool  ) ;
 968} __attribute__((__aligned__((1) <<  (6) ))) ;
 969#line 4 "include/linux/path.h"
 970struct dentry;
 971#line 5
 972struct vfsmount;
 973#line 7 "include/linux/path.h"
 974struct path {
 975   struct vfsmount *mnt ;
 976   struct dentry *dentry ;
 977};
 978#line 64 "include/linux/radix-tree.h"
 979struct radix_tree_node;
 980#line 64 "include/linux/radix-tree.h"
 981struct radix_tree_root {
 982   unsigned int height ;
 983   gfp_t gfp_mask ;
 984   struct radix_tree_node *rnode ;
 985};
 986#line 14 "include/linux/prio_tree.h"
 987struct prio_tree_node;
 988#line 20 "include/linux/prio_tree.h"
 989struct prio_tree_node {
 990   struct prio_tree_node *left ;
 991   struct prio_tree_node *right ;
 992   struct prio_tree_node *parent ;
 993   unsigned long start ;
 994   unsigned long last ;
 995};
 996#line 28 "include/linux/prio_tree.h"
 997struct prio_tree_root {
 998   struct prio_tree_node *prio_tree_node ;
 999   unsigned short index_bits ;
1000   unsigned short raw ;
1001};
1002#line 6 "include/linux/pid.h"
1003enum pid_type {
1004    PIDTYPE_PID = 0,
1005    PIDTYPE_PGID = 1,
1006    PIDTYPE_SID = 2,
1007    PIDTYPE_MAX = 3
1008} ;
1009#line 50
1010struct pid_namespace;
1011#line 50 "include/linux/pid.h"
1012struct upid {
1013   int nr ;
1014   struct pid_namespace *ns ;
1015   struct hlist_node pid_chain ;
1016};
1017#line 57 "include/linux/pid.h"
1018struct pid {
1019   atomic_t count ;
1020   unsigned int level ;
1021   struct hlist_head tasks[3] ;
1022   struct rcu_head rcu ;
1023   struct upid numbers[1] ;
1024};
1025#line 100
1026struct pid_namespace;
1027#line 18 "include/linux/capability.h"
1028struct task_struct;
1029#line 377
1030struct dentry;
1031#line 16 "include/linux/fiemap.h"
1032struct fiemap_extent {
1033   __u64 fe_logical ;
1034   __u64 fe_physical ;
1035   __u64 fe_length ;
1036   __u64 fe_reserved64[2] ;
1037   __u32 fe_flags ;
1038   __u32 fe_reserved[3] ;
1039};
1040#line 8 "include/linux/shrinker.h"
1041struct shrink_control {
1042   gfp_t gfp_mask ;
1043   unsigned long nr_to_scan ;
1044};
1045#line 31 "include/linux/shrinker.h"
1046struct shrinker {
1047   int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
1048   int seeks ;
1049   long batch ;
1050   struct list_head list ;
1051   atomic_long_t nr_in_batch ;
1052};
1053#line 10 "include/linux/migrate_mode.h"
1054enum migrate_mode {
1055    MIGRATE_ASYNC = 0,
1056    MIGRATE_SYNC_LIGHT = 1,
1057    MIGRATE_SYNC = 2
1058} ;
1059#line 408 "include/linux/fs.h"
1060struct export_operations;
1061#line 408
1062struct export_operations;
1063#line 410
1064struct iovec;
1065#line 410
1066struct iovec;
1067#line 411
1068struct nameidata;
1069#line 412
1070struct kiocb;
1071#line 412
1072struct kiocb;
1073#line 413
1074struct kobject;
1075#line 414
1076struct pipe_inode_info;
1077#line 414
1078struct pipe_inode_info;
1079#line 415
1080struct poll_table_struct;
1081#line 415
1082struct poll_table_struct;
1083#line 416
1084struct kstatfs;
1085#line 416
1086struct kstatfs;
1087#line 417
1088struct vm_area_struct;
1089#line 418
1090struct vfsmount;
1091#line 419
1092struct cred;
1093#line 469 "include/linux/fs.h"
1094struct iattr {
1095   unsigned int ia_valid ;
1096   umode_t ia_mode ;
1097   uid_t ia_uid ;
1098   gid_t ia_gid ;
1099   loff_t ia_size ;
1100   struct timespec ia_atime ;
1101   struct timespec ia_mtime ;
1102   struct timespec ia_ctime ;
1103   struct file *ia_file ;
1104};
1105#line 129 "include/linux/quota.h"
1106struct if_dqinfo {
1107   __u64 dqi_bgrace ;
1108   __u64 dqi_igrace ;
1109   __u32 dqi_flags ;
1110   __u32 dqi_valid ;
1111};
1112#line 50 "include/linux/dqblk_xfs.h"
1113struct fs_disk_quota {
1114   __s8 d_version ;
1115   __s8 d_flags ;
1116   __u16 d_fieldmask ;
1117   __u32 d_id ;
1118   __u64 d_blk_hardlimit ;
1119   __u64 d_blk_softlimit ;
1120   __u64 d_ino_hardlimit ;
1121   __u64 d_ino_softlimit ;
1122   __u64 d_bcount ;
1123   __u64 d_icount ;
1124   __s32 d_itimer ;
1125   __s32 d_btimer ;
1126   __u16 d_iwarns ;
1127   __u16 d_bwarns ;
1128   __s32 d_padding2 ;
1129   __u64 d_rtb_hardlimit ;
1130   __u64 d_rtb_softlimit ;
1131   __u64 d_rtbcount ;
1132   __s32 d_rtbtimer ;
1133   __u16 d_rtbwarns ;
1134   __s16 d_padding3 ;
1135   char d_padding4[8] ;
1136};
1137#line 146 "include/linux/dqblk_xfs.h"
1138struct fs_qfilestat {
1139   __u64 qfs_ino ;
1140   __u64 qfs_nblks ;
1141   __u32 qfs_nextents ;
1142};
1143#line 146 "include/linux/dqblk_xfs.h"
1144typedef struct fs_qfilestat fs_qfilestat_t;
1145#line 152 "include/linux/dqblk_xfs.h"
1146struct fs_quota_stat {
1147   __s8 qs_version ;
1148   __u16 qs_flags ;
1149   __s8 qs_pad ;
1150   fs_qfilestat_t qs_uquota ;
1151   fs_qfilestat_t qs_gquota ;
1152   __u32 qs_incoredqs ;
1153   __s32 qs_btimelimit ;
1154   __s32 qs_itimelimit ;
1155   __s32 qs_rtbtimelimit ;
1156   __u16 qs_bwarnlimit ;
1157   __u16 qs_iwarnlimit ;
1158};
1159#line 17 "include/linux/dqblk_qtree.h"
1160struct dquot;
1161#line 17
1162struct dquot;
1163#line 185 "include/linux/quota.h"
1164typedef __kernel_uid32_t qid_t;
1165#line 186 "include/linux/quota.h"
1166typedef long long qsize_t;
1167#line 200 "include/linux/quota.h"
1168struct mem_dqblk {
1169   qsize_t dqb_bhardlimit ;
1170   qsize_t dqb_bsoftlimit ;
1171   qsize_t dqb_curspace ;
1172   qsize_t dqb_rsvspace ;
1173   qsize_t dqb_ihardlimit ;
1174   qsize_t dqb_isoftlimit ;
1175   qsize_t dqb_curinodes ;
1176   time_t dqb_btime ;
1177   time_t dqb_itime ;
1178};
1179#line 215
1180struct quota_format_type;
1181#line 215
1182struct quota_format_type;
1183#line 217 "include/linux/quota.h"
1184struct mem_dqinfo {
1185   struct quota_format_type *dqi_format ;
1186   int dqi_fmt_id ;
1187   struct list_head dqi_dirty_list ;
1188   unsigned long dqi_flags ;
1189   unsigned int dqi_bgrace ;
1190   unsigned int dqi_igrace ;
1191   qsize_t dqi_maxblimit ;
1192   qsize_t dqi_maxilimit ;
1193   void *dqi_priv ;
1194};
1195#line 230
1196struct super_block;
1197#line 288 "include/linux/quota.h"
1198struct dquot {
1199   struct hlist_node dq_hash ;
1200   struct list_head dq_inuse ;
1201   struct list_head dq_free ;
1202   struct list_head dq_dirty ;
1203   struct mutex dq_lock ;
1204   atomic_t dq_count ;
1205   wait_queue_head_t dq_wait_unused ;
1206   struct super_block *dq_sb ;
1207   unsigned int dq_id ;
1208   loff_t dq_off ;
1209   unsigned long dq_flags ;
1210   short dq_type ;
1211   struct mem_dqblk dq_dqb ;
1212};
1213#line 305 "include/linux/quota.h"
1214struct quota_format_ops {
1215   int (*check_quota_file)(struct super_block *sb , int type ) ;
1216   int (*read_file_info)(struct super_block *sb , int type ) ;
1217   int (*write_file_info)(struct super_block *sb , int type ) ;
1218   int (*free_file_info)(struct super_block *sb , int type ) ;
1219   int (*read_dqblk)(struct dquot *dquot ) ;
1220   int (*commit_dqblk)(struct dquot *dquot ) ;
1221   int (*release_dqblk)(struct dquot *dquot ) ;
1222};
1223#line 316 "include/linux/quota.h"
1224struct dquot_operations {
1225   int (*write_dquot)(struct dquot * ) ;
1226   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
1227   void (*destroy_dquot)(struct dquot * ) ;
1228   int (*acquire_dquot)(struct dquot * ) ;
1229   int (*release_dquot)(struct dquot * ) ;
1230   int (*mark_dirty)(struct dquot * ) ;
1231   int (*write_info)(struct super_block * , int  ) ;
1232   qsize_t *(*get_reserved_space)(struct inode * ) ;
1233};
1234#line 329
1235struct path;
1236#line 332 "include/linux/quota.h"
1237struct quotactl_ops {
1238   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
1239   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
1240   int (*quota_off)(struct super_block * , int  ) ;
1241   int (*quota_sync)(struct super_block * , int  , int  ) ;
1242   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1243   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1244   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1245   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1246   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1247   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
1248};
1249#line 345 "include/linux/quota.h"
1250struct quota_format_type {
1251   int qf_fmt_id ;
1252   struct quota_format_ops  const  *qf_ops ;
1253   struct module *qf_owner ;
1254   struct quota_format_type *qf_next ;
1255};
1256#line 399 "include/linux/quota.h"
1257struct quota_info {
1258   unsigned int flags ;
1259   struct mutex dqio_mutex ;
1260   struct mutex dqonoff_mutex ;
1261   struct rw_semaphore dqptr_sem ;
1262   struct inode *files[2] ;
1263   struct mem_dqinfo info[2] ;
1264   struct quota_format_ops  const  *ops[2] ;
1265};
1266#line 532 "include/linux/fs.h"
1267struct page;
1268#line 533
1269struct address_space;
1270#line 533
1271struct address_space;
1272#line 534
1273struct writeback_control;
1274#line 534
1275struct writeback_control;
1276#line 577 "include/linux/fs.h"
1277union __anonunion_arg_209 {
1278   char *buf ;
1279   void *data ;
1280};
1281#line 577 "include/linux/fs.h"
1282struct __anonstruct_read_descriptor_t_208 {
1283   size_t written ;
1284   size_t count ;
1285   union __anonunion_arg_209 arg ;
1286   int error ;
1287};
1288#line 577 "include/linux/fs.h"
1289typedef struct __anonstruct_read_descriptor_t_208 read_descriptor_t;
1290#line 590 "include/linux/fs.h"
1291struct address_space_operations {
1292   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
1293   int (*readpage)(struct file * , struct page * ) ;
1294   int (*writepages)(struct address_space * , struct writeback_control * ) ;
1295   int (*set_page_dirty)(struct page *page ) ;
1296   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
1297                    unsigned int nr_pages ) ;
1298   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
1299                      unsigned int len , unsigned int flags , struct page **pagep ,
1300                      void **fsdata ) ;
1301   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
1302                    unsigned int copied , struct page *page , void *fsdata ) ;
1303   sector_t (*bmap)(struct address_space * , sector_t  ) ;
1304   void (*invalidatepage)(struct page * , unsigned long  ) ;
1305   int (*releasepage)(struct page * , gfp_t  ) ;
1306   void (*freepage)(struct page * ) ;
1307   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  *iov , loff_t offset ,
1308                        unsigned long nr_segs ) ;
1309   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
1310   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
1311   int (*launder_page)(struct page * ) ;
1312   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
1313   int (*error_remove_page)(struct address_space * , struct page * ) ;
1314};
1315#line 645
1316struct backing_dev_info;
1317#line 645
1318struct backing_dev_info;
1319#line 646 "include/linux/fs.h"
1320struct address_space {
1321   struct inode *host ;
1322   struct radix_tree_root page_tree ;
1323   spinlock_t tree_lock ;
1324   unsigned int i_mmap_writable ;
1325   struct prio_tree_root i_mmap ;
1326   struct list_head i_mmap_nonlinear ;
1327   struct mutex i_mmap_mutex ;
1328   unsigned long nrpages ;
1329   unsigned long writeback_index ;
1330   struct address_space_operations  const  *a_ops ;
1331   unsigned long flags ;
1332   struct backing_dev_info *backing_dev_info ;
1333   spinlock_t private_lock ;
1334   struct list_head private_list ;
1335   struct address_space *assoc_mapping ;
1336} __attribute__((__aligned__(sizeof(long )))) ;
1337#line 669
1338struct request_queue;
1339#line 669
1340struct request_queue;
1341#line 671
1342struct hd_struct;
1343#line 671
1344struct gendisk;
1345#line 671 "include/linux/fs.h"
1346struct block_device {
1347   dev_t bd_dev ;
1348   int bd_openers ;
1349   struct inode *bd_inode ;
1350   struct super_block *bd_super ;
1351   struct mutex bd_mutex ;
1352   struct list_head bd_inodes ;
1353   void *bd_claiming ;
1354   void *bd_holder ;
1355   int bd_holders ;
1356   bool bd_write_holder ;
1357   struct list_head bd_holder_disks ;
1358   struct block_device *bd_contains ;
1359   unsigned int bd_block_size ;
1360   struct hd_struct *bd_part ;
1361   unsigned int bd_part_count ;
1362   int bd_invalidated ;
1363   struct gendisk *bd_disk ;
1364   struct request_queue *bd_queue ;
1365   struct list_head bd_list ;
1366   unsigned long bd_private ;
1367   int bd_fsfreeze_count ;
1368   struct mutex bd_fsfreeze_mutex ;
1369};
1370#line 749
1371struct posix_acl;
1372#line 749
1373struct posix_acl;
1374#line 761
1375struct inode_operations;
1376#line 761 "include/linux/fs.h"
1377union __anonunion____missing_field_name_210 {
1378   unsigned int const   i_nlink ;
1379   unsigned int __i_nlink ;
1380};
1381#line 761 "include/linux/fs.h"
1382union __anonunion____missing_field_name_211 {
1383   struct list_head i_dentry ;
1384   struct rcu_head i_rcu ;
1385};
1386#line 761
1387struct file_operations;
1388#line 761
1389struct file_lock;
1390#line 761
1391struct cdev;
1392#line 761 "include/linux/fs.h"
1393union __anonunion____missing_field_name_212 {
1394   struct pipe_inode_info *i_pipe ;
1395   struct block_device *i_bdev ;
1396   struct cdev *i_cdev ;
1397};
1398#line 761 "include/linux/fs.h"
1399struct inode {
1400   umode_t i_mode ;
1401   unsigned short i_opflags ;
1402   uid_t i_uid ;
1403   gid_t i_gid ;
1404   unsigned int i_flags ;
1405   struct posix_acl *i_acl ;
1406   struct posix_acl *i_default_acl ;
1407   struct inode_operations  const  *i_op ;
1408   struct super_block *i_sb ;
1409   struct address_space *i_mapping ;
1410   void *i_security ;
1411   unsigned long i_ino ;
1412   union __anonunion____missing_field_name_210 __annonCompField33 ;
1413   dev_t i_rdev ;
1414   struct timespec i_atime ;
1415   struct timespec i_mtime ;
1416   struct timespec i_ctime ;
1417   spinlock_t i_lock ;
1418   unsigned short i_bytes ;
1419   blkcnt_t i_blocks ;
1420   loff_t i_size ;
1421   unsigned long i_state ;
1422   struct mutex i_mutex ;
1423   unsigned long dirtied_when ;
1424   struct hlist_node i_hash ;
1425   struct list_head i_wb_list ;
1426   struct list_head i_lru ;
1427   struct list_head i_sb_list ;
1428   union __anonunion____missing_field_name_211 __annonCompField34 ;
1429   atomic_t i_count ;
1430   unsigned int i_blkbits ;
1431   u64 i_version ;
1432   atomic_t i_dio_count ;
1433   atomic_t i_writecount ;
1434   struct file_operations  const  *i_fop ;
1435   struct file_lock *i_flock ;
1436   struct address_space i_data ;
1437   struct dquot *i_dquot[2] ;
1438   struct list_head i_devices ;
1439   union __anonunion____missing_field_name_212 __annonCompField35 ;
1440   __u32 i_generation ;
1441   __u32 i_fsnotify_mask ;
1442   struct hlist_head i_fsnotify_marks ;
1443   atomic_t i_readcount ;
1444   void *i_private ;
1445};
1446#line 942 "include/linux/fs.h"
1447struct fown_struct {
1448   rwlock_t lock ;
1449   struct pid *pid ;
1450   enum pid_type pid_type ;
1451   uid_t uid ;
1452   uid_t euid ;
1453   int signum ;
1454};
1455#line 953 "include/linux/fs.h"
1456struct file_ra_state {
1457   unsigned long start ;
1458   unsigned int size ;
1459   unsigned int async_size ;
1460   unsigned int ra_pages ;
1461   unsigned int mmap_miss ;
1462   loff_t prev_pos ;
1463};
1464#line 976 "include/linux/fs.h"
1465union __anonunion_f_u_213 {
1466   struct list_head fu_list ;
1467   struct rcu_head fu_rcuhead ;
1468};
1469#line 976 "include/linux/fs.h"
1470struct file {
1471   union __anonunion_f_u_213 f_u ;
1472   struct path f_path ;
1473   struct file_operations  const  *f_op ;
1474   spinlock_t f_lock ;
1475   int f_sb_list_cpu ;
1476   atomic_long_t f_count ;
1477   unsigned int f_flags ;
1478   fmode_t f_mode ;
1479   loff_t f_pos ;
1480   struct fown_struct f_owner ;
1481   struct cred  const  *f_cred ;
1482   struct file_ra_state f_ra ;
1483   u64 f_version ;
1484   void *f_security ;
1485   void *private_data ;
1486   struct list_head f_ep_links ;
1487   struct list_head f_tfile_llink ;
1488   struct address_space *f_mapping ;
1489   unsigned long f_mnt_write_state ;
1490};
1491#line 1111
1492struct files_struct;
1493#line 1111 "include/linux/fs.h"
1494typedef struct files_struct *fl_owner_t;
1495#line 1113 "include/linux/fs.h"
1496struct file_lock_operations {
1497   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1498   void (*fl_release_private)(struct file_lock * ) ;
1499};
1500#line 1118 "include/linux/fs.h"
1501struct lock_manager_operations {
1502   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1503   void (*lm_notify)(struct file_lock * ) ;
1504   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
1505   void (*lm_release_private)(struct file_lock * ) ;
1506   void (*lm_break)(struct file_lock * ) ;
1507   int (*lm_change)(struct file_lock ** , int  ) ;
1508};
1509#line 4 "include/linux/nfs_fs_i.h"
1510struct nlm_lockowner;
1511#line 4
1512struct nlm_lockowner;
1513#line 9 "include/linux/nfs_fs_i.h"
1514struct nfs_lock_info {
1515   u32 state ;
1516   struct nlm_lockowner *owner ;
1517   struct list_head list ;
1518};
1519#line 15
1520struct nfs4_lock_state;
1521#line 15
1522struct nfs4_lock_state;
1523#line 16 "include/linux/nfs_fs_i.h"
1524struct nfs4_lock_info {
1525   struct nfs4_lock_state *owner ;
1526};
1527#line 1138 "include/linux/fs.h"
1528struct fasync_struct;
1529#line 1138 "include/linux/fs.h"
1530struct __anonstruct_afs_215 {
1531   struct list_head link ;
1532   int state ;
1533};
1534#line 1138 "include/linux/fs.h"
1535union __anonunion_fl_u_214 {
1536   struct nfs_lock_info nfs_fl ;
1537   struct nfs4_lock_info nfs4_fl ;
1538   struct __anonstruct_afs_215 afs ;
1539};
1540#line 1138 "include/linux/fs.h"
1541struct file_lock {
1542   struct file_lock *fl_next ;
1543   struct list_head fl_link ;
1544   struct list_head fl_block ;
1545   fl_owner_t fl_owner ;
1546   unsigned int fl_flags ;
1547   unsigned char fl_type ;
1548   unsigned int fl_pid ;
1549   struct pid *fl_nspid ;
1550   wait_queue_head_t fl_wait ;
1551   struct file *fl_file ;
1552   loff_t fl_start ;
1553   loff_t fl_end ;
1554   struct fasync_struct *fl_fasync ;
1555   unsigned long fl_break_time ;
1556   unsigned long fl_downgrade_time ;
1557   struct file_lock_operations  const  *fl_ops ;
1558   struct lock_manager_operations  const  *fl_lmops ;
1559   union __anonunion_fl_u_214 fl_u ;
1560};
1561#line 1378 "include/linux/fs.h"
1562struct fasync_struct {
1563   spinlock_t fa_lock ;
1564   int magic ;
1565   int fa_fd ;
1566   struct fasync_struct *fa_next ;
1567   struct file *fa_file ;
1568   struct rcu_head fa_rcu ;
1569};
1570#line 1418
1571struct file_system_type;
1572#line 1418
1573struct super_operations;
1574#line 1418
1575struct xattr_handler;
1576#line 1418
1577struct mtd_info;
1578#line 1418 "include/linux/fs.h"
1579struct super_block {
1580   struct list_head s_list ;
1581   dev_t s_dev ;
1582   unsigned char s_dirt ;
1583   unsigned char s_blocksize_bits ;
1584   unsigned long s_blocksize ;
1585   loff_t s_maxbytes ;
1586   struct file_system_type *s_type ;
1587   struct super_operations  const  *s_op ;
1588   struct dquot_operations  const  *dq_op ;
1589   struct quotactl_ops  const  *s_qcop ;
1590   struct export_operations  const  *s_export_op ;
1591   unsigned long s_flags ;
1592   unsigned long s_magic ;
1593   struct dentry *s_root ;
1594   struct rw_semaphore s_umount ;
1595   struct mutex s_lock ;
1596   int s_count ;
1597   atomic_t s_active ;
1598   void *s_security ;
1599   struct xattr_handler  const  **s_xattr ;
1600   struct list_head s_inodes ;
1601   struct hlist_bl_head s_anon ;
1602   struct list_head *s_files ;
1603   struct list_head s_mounts ;
1604   struct list_head s_dentry_lru ;
1605   int s_nr_dentry_unused ;
1606   spinlock_t s_inode_lru_lock  __attribute__((__aligned__((1) <<  (6) ))) ;
1607   struct list_head s_inode_lru ;
1608   int s_nr_inodes_unused ;
1609   struct block_device *s_bdev ;
1610   struct backing_dev_info *s_bdi ;
1611   struct mtd_info *s_mtd ;
1612   struct hlist_node s_instances ;
1613   struct quota_info s_dquot ;
1614   int s_frozen ;
1615   wait_queue_head_t s_wait_unfrozen ;
1616   char s_id[32] ;
1617   u8 s_uuid[16] ;
1618   void *s_fs_info ;
1619   unsigned int s_max_links ;
1620   fmode_t s_mode ;
1621   u32 s_time_gran ;
1622   struct mutex s_vfs_rename_mutex ;
1623   char *s_subtype ;
1624   char *s_options ;
1625   struct dentry_operations  const  *s_d_op ;
1626   int cleancache_poolid ;
1627   struct shrinker s_shrink ;
1628   atomic_long_t s_remove_count ;
1629   int s_readonly_remount ;
1630};
1631#line 1567 "include/linux/fs.h"
1632struct fiemap_extent_info {
1633   unsigned int fi_flags ;
1634   unsigned int fi_extents_mapped ;
1635   unsigned int fi_extents_max ;
1636   struct fiemap_extent *fi_extents_start ;
1637};
1638#line 1609 "include/linux/fs.h"
1639struct file_operations {
1640   struct module *owner ;
1641   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
1642   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
1643   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
1644   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1645                       loff_t  ) ;
1646   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1647                        loff_t  ) ;
1648   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
1649                                                   loff_t  , u64  , unsigned int  ) ) ;
1650   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1651   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1652   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1653   int (*mmap)(struct file * , struct vm_area_struct * ) ;
1654   int (*open)(struct inode * , struct file * ) ;
1655   int (*flush)(struct file * , fl_owner_t id ) ;
1656   int (*release)(struct inode * , struct file * ) ;
1657   int (*fsync)(struct file * , loff_t  , loff_t  , int datasync ) ;
1658   int (*aio_fsync)(struct kiocb * , int datasync ) ;
1659   int (*fasync)(int  , struct file * , int  ) ;
1660   int (*lock)(struct file * , int  , struct file_lock * ) ;
1661   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
1662                       int  ) ;
1663   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
1664                                      unsigned long  , unsigned long  ) ;
1665   int (*check_flags)(int  ) ;
1666   int (*flock)(struct file * , int  , struct file_lock * ) ;
1667   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
1668                           unsigned int  ) ;
1669   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
1670                          unsigned int  ) ;
1671   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
1672   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
1673};
1674#line 1639 "include/linux/fs.h"
1675struct inode_operations {
1676   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1677   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1678   int (*permission)(struct inode * , int  ) ;
1679   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
1680   int (*readlink)(struct dentry * , char * , int  ) ;
1681   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1682   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
1683   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1684   int (*unlink)(struct inode * , struct dentry * ) ;
1685   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
1686   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
1687   int (*rmdir)(struct inode * , struct dentry * ) ;
1688   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
1689   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1690   void (*truncate)(struct inode * ) ;
1691   int (*setattr)(struct dentry * , struct iattr * ) ;
1692   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
1693   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
1694   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
1695   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
1696   int (*removexattr)(struct dentry * , char const   * ) ;
1697   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
1698   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
1699} __attribute__((__aligned__((1) <<  (6) ))) ;
1700#line 1669
1701struct seq_file;
1702#line 1684 "include/linux/fs.h"
1703struct super_operations {
1704   struct inode *(*alloc_inode)(struct super_block *sb ) ;
1705   void (*destroy_inode)(struct inode * ) ;
1706   void (*dirty_inode)(struct inode * , int flags ) ;
1707   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
1708   int (*drop_inode)(struct inode * ) ;
1709   void (*evict_inode)(struct inode * ) ;
1710   void (*put_super)(struct super_block * ) ;
1711   void (*write_super)(struct super_block * ) ;
1712   int (*sync_fs)(struct super_block *sb , int wait ) ;
1713   int (*freeze_fs)(struct super_block * ) ;
1714   int (*unfreeze_fs)(struct super_block * ) ;
1715   int (*statfs)(struct dentry * , struct kstatfs * ) ;
1716   int (*remount_fs)(struct super_block * , int * , char * ) ;
1717   void (*umount_begin)(struct super_block * ) ;
1718   int (*show_options)(struct seq_file * , struct dentry * ) ;
1719   int (*show_devname)(struct seq_file * , struct dentry * ) ;
1720   int (*show_path)(struct seq_file * , struct dentry * ) ;
1721   int (*show_stats)(struct seq_file * , struct dentry * ) ;
1722   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
1723   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
1724                          loff_t  ) ;
1725   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
1726   int (*nr_cached_objects)(struct super_block * ) ;
1727   void (*free_cached_objects)(struct super_block * , int  ) ;
1728};
1729#line 1835 "include/linux/fs.h"
1730struct file_system_type {
1731   char const   *name ;
1732   int fs_flags ;
1733   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
1734   void (*kill_sb)(struct super_block * ) ;
1735   struct module *owner ;
1736   struct file_system_type *next ;
1737   struct hlist_head fs_supers ;
1738   struct lock_class_key s_lock_key ;
1739   struct lock_class_key s_umount_key ;
1740   struct lock_class_key s_vfs_rename_key ;
1741   struct lock_class_key i_lock_key ;
1742   struct lock_class_key i_mutex_key ;
1743   struct lock_class_key i_mutex_dir_key ;
1744};
1745#line 2648
1746struct ctl_table;
1747#line 11 "include/linux/proc_fs.h"
1748struct completion;
1749#line 117
1750struct pid_namespace;
1751#line 243
1752struct nsproxy;
1753#line 263
1754struct ctl_table_header;
1755#line 264
1756struct ctl_table;
1757#line 78 "include/linux/ipmi.h"
1758struct ipmi_addr {
1759   int addr_type ;
1760   short channel ;
1761   char data[32] ;
1762};
1763#line 92 "include/linux/ipmi.h"
1764struct ipmi_system_interface_addr {
1765   int addr_type ;
1766   short channel ;
1767   unsigned char lun ;
1768};
1769#line 103 "include/linux/ipmi.h"
1770struct ipmi_ipmb_addr {
1771   int addr_type ;
1772   short channel ;
1773   unsigned char slave_addr ;
1774   unsigned char lun ;
1775};
1776#line 168 "include/linux/ipmi.h"
1777struct kernel_ipmi_msg {
1778   unsigned char netfn ;
1779   unsigned char cmd ;
1780   unsigned short data_len ;
1781   unsigned char *data ;
1782};
1783#line 225
1784struct module;
1785#line 226
1786struct device;
1787#line 230
1788struct ipmi_user;
1789#line 230 "include/linux/ipmi.h"
1790typedef struct ipmi_user *ipmi_user_t;
1791#line 239 "include/linux/ipmi.h"
1792struct ipmi_recv_msg {
1793   struct list_head link ;
1794   int recv_type ;
1795   ipmi_user_t user ;
1796   struct ipmi_addr addr ;
1797   long msgid ;
1798   struct kernel_ipmi_msg msg ;
1799   void *user_msg_data ;
1800   void (*done)(struct ipmi_recv_msg *msg ) ;
1801   unsigned char msg_data[272] ;
1802};
1803#line 270 "include/linux/ipmi.h"
1804struct ipmi_user_hndl {
1805   void (*ipmi_recv_hndl)(struct ipmi_recv_msg *msg , void *user_msg_data ) ;
1806   void (*ipmi_watchdog_pretimeout)(void *handler_data ) ;
1807};
1808#line 431 "include/linux/ipmi.h"
1809struct ipmi_smi_watcher {
1810   struct list_head link ;
1811   struct module *owner ;
1812   void (*new_smi)(int if_num , struct device *dev ) ;
1813   void (*smi_gone)(int if_num ) ;
1814};
1815#line 19 "include/linux/klist.h"
1816struct klist_node;
1817#line 19
1818struct klist_node;
1819#line 39 "include/linux/klist.h"
1820struct klist_node {
1821   void *n_klist ;
1822   struct list_head n_node ;
1823   struct kref n_ref ;
1824};
1825#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1826struct dma_map_ops;
1827#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1828struct dev_archdata {
1829   void *acpi_handle ;
1830   struct dma_map_ops *dma_ops ;
1831   void *iommu ;
1832};
1833#line 28 "include/linux/device.h"
1834struct device;
1835#line 29
1836struct device_private;
1837#line 29
1838struct device_private;
1839#line 30
1840struct device_driver;
1841#line 30
1842struct device_driver;
1843#line 31
1844struct driver_private;
1845#line 31
1846struct driver_private;
1847#line 32
1848struct module;
1849#line 33
1850struct class;
1851#line 33
1852struct class;
1853#line 34
1854struct subsys_private;
1855#line 34
1856struct subsys_private;
1857#line 35
1858struct bus_type;
1859#line 35
1860struct bus_type;
1861#line 36
1862struct device_node;
1863#line 36
1864struct device_node;
1865#line 37
1866struct iommu_ops;
1867#line 37
1868struct iommu_ops;
1869#line 39 "include/linux/device.h"
1870struct bus_attribute {
1871   struct attribute attr ;
1872   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1873   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
1874};
1875#line 89
1876struct device_attribute;
1877#line 89
1878struct driver_attribute;
1879#line 89 "include/linux/device.h"
1880struct bus_type {
1881   char const   *name ;
1882   char const   *dev_name ;
1883   struct device *dev_root ;
1884   struct bus_attribute *bus_attrs ;
1885   struct device_attribute *dev_attrs ;
1886   struct driver_attribute *drv_attrs ;
1887   int (*match)(struct device *dev , struct device_driver *drv ) ;
1888   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1889   int (*probe)(struct device *dev ) ;
1890   int (*remove)(struct device *dev ) ;
1891   void (*shutdown)(struct device *dev ) ;
1892   int (*suspend)(struct device *dev , pm_message_t state ) ;
1893   int (*resume)(struct device *dev ) ;
1894   struct dev_pm_ops  const  *pm ;
1895   struct iommu_ops *iommu_ops ;
1896   struct subsys_private *p ;
1897};
1898#line 127
1899struct device_type;
1900#line 214
1901struct of_device_id;
1902#line 214 "include/linux/device.h"
1903struct device_driver {
1904   char const   *name ;
1905   struct bus_type *bus ;
1906   struct module *owner ;
1907   char const   *mod_name ;
1908   bool suppress_bind_attrs ;
1909   struct of_device_id  const  *of_match_table ;
1910   int (*probe)(struct device *dev ) ;
1911   int (*remove)(struct device *dev ) ;
1912   void (*shutdown)(struct device *dev ) ;
1913   int (*suspend)(struct device *dev , pm_message_t state ) ;
1914   int (*resume)(struct device *dev ) ;
1915   struct attribute_group  const  **groups ;
1916   struct dev_pm_ops  const  *pm ;
1917   struct driver_private *p ;
1918};
1919#line 249 "include/linux/device.h"
1920struct driver_attribute {
1921   struct attribute attr ;
1922   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1923   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
1924};
1925#line 330
1926struct class_attribute;
1927#line 330 "include/linux/device.h"
1928struct class {
1929   char const   *name ;
1930   struct module *owner ;
1931   struct class_attribute *class_attrs ;
1932   struct device_attribute *dev_attrs ;
1933   struct bin_attribute *dev_bin_attrs ;
1934   struct kobject *dev_kobj ;
1935   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1936   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1937   void (*class_release)(struct class *class ) ;
1938   void (*dev_release)(struct device *dev ) ;
1939   int (*suspend)(struct device *dev , pm_message_t state ) ;
1940   int (*resume)(struct device *dev ) ;
1941   struct kobj_ns_type_operations  const  *ns_type ;
1942   void const   *(*namespace)(struct device *dev ) ;
1943   struct dev_pm_ops  const  *pm ;
1944   struct subsys_private *p ;
1945};
1946#line 397 "include/linux/device.h"
1947struct class_attribute {
1948   struct attribute attr ;
1949   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1950   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
1951                    size_t count ) ;
1952   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
1953};
1954#line 465 "include/linux/device.h"
1955struct device_type {
1956   char const   *name ;
1957   struct attribute_group  const  **groups ;
1958   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1959   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1960   void (*release)(struct device *dev ) ;
1961   struct dev_pm_ops  const  *pm ;
1962};
1963#line 476 "include/linux/device.h"
1964struct device_attribute {
1965   struct attribute attr ;
1966   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1967   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
1968                    size_t count ) ;
1969};
1970#line 559 "include/linux/device.h"
1971struct device_dma_parameters {
1972   unsigned int max_segment_size ;
1973   unsigned long segment_boundary_mask ;
1974};
1975#line 627
1976struct dma_coherent_mem;
1977#line 627 "include/linux/device.h"
1978struct device {
1979   struct device *parent ;
1980   struct device_private *p ;
1981   struct kobject kobj ;
1982   char const   *init_name ;
1983   struct device_type  const  *type ;
1984   struct mutex mutex ;
1985   struct bus_type *bus ;
1986   struct device_driver *driver ;
1987   void *platform_data ;
1988   struct dev_pm_info power ;
1989   struct dev_pm_domain *pm_domain ;
1990   int numa_node ;
1991   u64 *dma_mask ;
1992   u64 coherent_dma_mask ;
1993   struct device_dma_parameters *dma_parms ;
1994   struct list_head dma_pools ;
1995   struct dma_coherent_mem *dma_mem ;
1996   struct dev_archdata archdata ;
1997   struct device_node *of_node ;
1998   dev_t devt ;
1999   u32 id ;
2000   spinlock_t devres_lock ;
2001   struct list_head devres_head ;
2002   struct klist_node knode_class ;
2003   struct class *class ;
2004   struct attribute_group  const  **groups ;
2005   void (*release)(struct device *dev ) ;
2006};
2007#line 43 "include/linux/pm_wakeup.h"
2008struct wakeup_source {
2009   char const   *name ;
2010   struct list_head entry ;
2011   spinlock_t lock ;
2012   struct timer_list timer ;
2013   unsigned long timer_expires ;
2014   ktime_t total_time ;
2015   ktime_t max_time ;
2016   ktime_t last_time ;
2017   unsigned long event_count ;
2018   unsigned long active_count ;
2019   unsigned long relax_count ;
2020   unsigned long hit_count ;
2021   unsigned int active : 1 ;
2022};
2023#line 219 "include/linux/mod_devicetable.h"
2024struct of_device_id {
2025   char name[32] ;
2026   char type[32] ;
2027   char compatible[128] ;
2028   void *data ;
2029};
2030#line 42 "include/linux/ipmi_smi.h"
2031struct device;
2032#line 63 "include/linux/ipmi_smi.h"
2033struct ipmi_smi_msg {
2034   struct list_head link ;
2035   long msgid ;
2036   void *user_data ;
2037   int data_size ;
2038   unsigned char data[272] ;
2039   int rsp_size ;
2040   unsigned char rsp[272] ;
2041   void (*done)(struct ipmi_smi_msg *msg ) ;
2042};
2043#line 521 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2044struct poweroff_function {
2045   char *platform_type ;
2046   int (*detect)(ipmi_user_t user ) ;
2047   void (*poweroff_func)(ipmi_user_t user ) ;
2048};
2049#line 1 "<compiler builtins>"
2050long __builtin_expect(long val , long res ) ;
2051#line 100 "include/linux/printk.h"
2052extern int ( /* format attribute */  printk)(char const   *fmt  , ...) ;
2053#line 60 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
2054extern int memcmp(void const   *cs , void const   *ct , unsigned long count ) ;
2055#line 651 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
2056__inline static void rep_nop(void)  __attribute__((__no_instrument_function__)) ;
2057#line 651 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
2058__inline static void rep_nop(void) 
2059{ 
2060
2061  {
2062#line 653
2063  __asm__  volatile   ("rep; nop": : : "memory");
2064#line 654
2065  return;
2066}
2067}
2068#line 656
2069__inline static void cpu_relax(void)  __attribute__((__no_instrument_function__)) ;
2070#line 656 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
2071__inline static void cpu_relax(void) 
2072{ 
2073
2074  {
2075  {
2076#line 658
2077  rep_nop();
2078  }
2079#line 659
2080  return;
2081}
2082}
2083#line 23 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
2084__inline static int atomic_read(atomic_t const   *v )  __attribute__((__no_instrument_function__)) ;
2085#line 23 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
2086__inline static int atomic_read(atomic_t const   *v ) 
2087{ int const   *__cil_tmp2 ;
2088  int volatile   *__cil_tmp3 ;
2089  int volatile   __cil_tmp4 ;
2090
2091  {
2092  {
2093#line 25
2094  __cil_tmp2 = (int const   *)v;
2095#line 25
2096  __cil_tmp3 = (int volatile   *)__cil_tmp2;
2097#line 25
2098  __cil_tmp4 = *__cil_tmp3;
2099#line 25
2100  return ((int )__cil_tmp4);
2101  }
2102}
2103}
2104#line 35
2105__inline static void atomic_set(atomic_t *v , int i )  __attribute__((__no_instrument_function__)) ;
2106#line 35 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
2107__inline static void atomic_set(atomic_t *v , int i ) 
2108{ 
2109
2110  {
2111#line 37
2112  *((int *)v) = i;
2113#line 38
2114  return;
2115}
2116}
2117#line 105
2118__inline static void atomic_dec(atomic_t *v )  __attribute__((__no_instrument_function__)) ;
2119#line 105 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
2120__inline static void atomic_dec(atomic_t *v ) 
2121{ 
2122
2123  {
2124#line 107
2125  __asm__  volatile   (".section .smp_locks,\"a\"\n"
2126                       ".balign 4\n"
2127                       ".long 671f - .\n"
2128                       ".previous\n"
2129                       "671:"
2130                       "\n\tlock; "
2131                       "decl %0": "+m" (*((int *)v)));
2132#line 109
2133  return;
2134}
2135}
2136#line 79 "include/linux/wait.h"
2137extern void __init_waitqueue_head(wait_queue_head_t *q , char const   *name , struct lock_class_key * ) ;
2138#line 152 "include/linux/mutex.h"
2139void mutex_lock(struct mutex *lock ) ;
2140#line 153
2141int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
2142#line 154
2143int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
2144#line 168
2145int mutex_trylock(struct mutex *lock ) ;
2146#line 169
2147void mutex_unlock(struct mutex *lock ) ;
2148#line 170
2149int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
2150#line 76 "include/linux/completion.h"
2151static struct lock_class_key __key  ;
2152#line 73
2153__inline static void init_completion(struct completion *x )  __attribute__((__no_instrument_function__)) ;
2154#line 73 "include/linux/completion.h"
2155__inline static void init_completion(struct completion *x ) 
2156{ unsigned long __cil_tmp2 ;
2157  unsigned long __cil_tmp3 ;
2158  wait_queue_head_t *__cil_tmp4 ;
2159
2160  {
2161#line 75
2162  *((unsigned int *)x) = 0U;
2163  {
2164#line 76
2165  while (1) {
2166    while_continue: /* CIL Label */ ;
2167    {
2168#line 76
2169    __cil_tmp2 = (unsigned long )x;
2170#line 76
2171    __cil_tmp3 = __cil_tmp2 + 8;
2172#line 76
2173    __cil_tmp4 = (wait_queue_head_t *)__cil_tmp3;
2174#line 76
2175    __init_waitqueue_head(__cil_tmp4, "&x->wait", & __key);
2176    }
2177#line 76
2178    goto while_break;
2179  }
2180  while_break: /* CIL Label */ ;
2181  }
2182#line 77
2183  return;
2184}
2185}
2186#line 79
2187extern void wait_for_completion(struct completion * ) ;
2188#line 91
2189extern void complete(struct completion * ) ;
2190#line 35 "include/linux/pm.h"
2191extern void (*pm_power_off)(void) ;
2192#line 951 "include/linux/sysctl.h"
2193extern int proc_dointvec(struct ctl_table * , int  , void * , size_t * , loff_t * ) ;
2194#line 1094
2195extern struct ctl_table_header *register_sysctl_table(struct ctl_table *table ) ;
2196#line 1098
2197extern void unregister_sysctl_table(struct ctl_table_header *table ) ;
2198#line 356 "include/linux/moduleparam.h"
2199extern struct kernel_param_ops param_ops_int ;
2200#line 357
2201extern int param_set_int(char const   *val , struct kernel_param  const  *kp ) ;
2202#line 358
2203extern int param_get_int(char *buffer , struct kernel_param  const  *kp ) ;
2204#line 26 "include/linux/export.h"
2205extern struct module __this_module ;
2206#line 67 "include/linux/module.h"
2207int init_module(void) ;
2208#line 68
2209void cleanup_module(void) ;
2210#line 285 "include/linux/ipmi.h"
2211extern int ipmi_create_user(unsigned int if_num , struct ipmi_user_hndl *handler ,
2212                            void *handler_data , ipmi_user_t *user ) ;
2213#line 296
2214extern int ipmi_destroy_user(ipmi_user_t user ) ;
2215#line 353
2216extern int ipmi_request_supply_msgs(ipmi_user_t user , struct ipmi_addr *addr , long msgid ,
2217                                    struct kernel_ipmi_msg *msg , void *user_msg_data ,
2218                                    void *supplied_smi , struct ipmi_recv_msg *supplied_recv ,
2219                                    int priority ) ;
2220#line 369
2221extern void ipmi_poll_interface(ipmi_user_t user ) ;
2222#line 446
2223extern int ipmi_smi_watcher_register(struct ipmi_smi_watcher *watcher ) ;
2224#line 447
2225extern int ipmi_smi_watcher_unregister(struct ipmi_smi_watcher *watcher ) ;
2226#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2227static void ipmi_po_smi_gone(int if_num ) ;
2228#line 48
2229static void ipmi_po_new_smi(int if_num , struct device *device ) ;
2230#line 56 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2231static int poweroff_powercycle  ;
2232#line 59 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2233static int ifnum_to_use  =    -1;
2234#line 62 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2235static int ready  ;
2236#line 63 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2237static ipmi_user_t ipmi_user  ;
2238#line 64 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2239static int ipmi_ifnum  ;
2240#line 65 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2241static void (*specific_poweroff_func)(ipmi_user_t user )  ;
2242#line 68 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2243static void (*old_poweroff_func)(void)  ;
2244#line 70 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2245static int set_param_ifnum(char const   *val , struct kernel_param *kp ) 
2246{ int rv ;
2247  int tmp ;
2248  struct kernel_param  const  *__cil_tmp5 ;
2249  int *__cil_tmp6 ;
2250  int __cil_tmp7 ;
2251  int *__cil_tmp8 ;
2252  int __cil_tmp9 ;
2253  int *__cil_tmp10 ;
2254  int __cil_tmp11 ;
2255  void *__cil_tmp12 ;
2256  struct device *__cil_tmp13 ;
2257
2258  {
2259  {
2260#line 72
2261  __cil_tmp5 = (struct kernel_param  const  *)kp;
2262#line 72
2263  tmp = param_set_int(val, __cil_tmp5);
2264#line 72
2265  rv = tmp;
2266  }
2267#line 73
2268  if (rv) {
2269#line 74
2270    return (rv);
2271  } else {
2272
2273  }
2274  {
2275#line 75
2276  __cil_tmp6 = & ifnum_to_use;
2277#line 75
2278  __cil_tmp7 = *__cil_tmp6;
2279#line 75
2280  if (__cil_tmp7 < 0) {
2281#line 76
2282    return (0);
2283  } else {
2284    {
2285#line 75
2286    __cil_tmp8 = & ifnum_to_use;
2287#line 75
2288    __cil_tmp9 = *__cil_tmp8;
2289#line 75
2290    if (__cil_tmp9 == ipmi_ifnum) {
2291#line 76
2292      return (0);
2293    } else {
2294
2295    }
2296    }
2297  }
2298  }
2299  {
2300#line 78
2301  ipmi_po_smi_gone(ipmi_ifnum);
2302#line 79
2303  __cil_tmp10 = & ifnum_to_use;
2304#line 79
2305  __cil_tmp11 = *__cil_tmp10;
2306#line 79
2307  __cil_tmp12 = (void *)0;
2308#line 79
2309  __cil_tmp13 = (struct device *)__cil_tmp12;
2310#line 79
2311  ipmi_po_new_smi(__cil_tmp11, __cil_tmp13);
2312  }
2313#line 80
2314  return (0);
2315}
2316}
2317#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2318static struct kernel_param_ops __param_ops_ifnum_to_use  =    {(int (*)(char const   *val , struct kernel_param  const  *kp ))((void *)(& set_param_ifnum)),
2319    (int (*)(char *buffer , struct kernel_param  const  *kp ))((void *)(& param_get_int)),
2320    (void (*)(void *arg ))0};
2321#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2322static char const   __param_str_ifnum_to_use[13]  = 
2323#line 83
2324  {      (char const   )'i',      (char const   )'f',      (char const   )'n',      (char const   )'u', 
2325        (char const   )'m',      (char const   )'_',      (char const   )'t',      (char const   )'o', 
2326        (char const   )'_',      (char const   )'u',      (char const   )'s',      (char const   )'e', 
2327        (char const   )'\000'};
2328#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2329static struct kernel_param  const  __param_ifnum_to_use  __attribute__((__used__,
2330__unused__, __section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_ifnum_to_use, (struct kernel_param_ops  const  *)(& __param_ops_ifnum_to_use),
2331    (u16 )420UL, (s16 )0, {(void *)(& ifnum_to_use)}};
2332#line 85 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2333static char const   __mod_ifnum_to_use87[128]  __attribute__((__used__, __unused__,
2334__section__(".modinfo"), __aligned__(1)))  = 
2335#line 85
2336  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
2337        (char const   )'=',      (char const   )'i',      (char const   )'f',      (char const   )'n', 
2338        (char const   )'u',      (char const   )'m',      (char const   )'_',      (char const   )'t', 
2339        (char const   )'o',      (char const   )'_',      (char const   )'u',      (char const   )'s', 
2340        (char const   )'e',      (char const   )':',      (char const   )'T',      (char const   )'h', 
2341        (char const   )'e',      (char const   )' ',      (char const   )'i',      (char const   )'n', 
2342        (char const   )'t',      (char const   )'e',      (char const   )'r',      (char const   )'f', 
2343        (char const   )'a',      (char const   )'c',      (char const   )'e',      (char const   )' ', 
2344        (char const   )'n',      (char const   )'u',      (char const   )'m',      (char const   )'b', 
2345        (char const   )'e',      (char const   )'r',      (char const   )' ',      (char const   )'t', 
2346        (char const   )'o',      (char const   )' ',      (char const   )'u',      (char const   )'s', 
2347        (char const   )'e',      (char const   )' ',      (char const   )'f',      (char const   )'o', 
2348        (char const   )'r',      (char const   )' ',      (char const   )'t',      (char const   )'h', 
2349        (char const   )'e',      (char const   )' ',      (char const   )'w',      (char const   )'a', 
2350        (char const   )'t',      (char const   )'c',      (char const   )'h',      (char const   )'d', 
2351        (char const   )'o',      (char const   )'g',      (char const   )' ',      (char const   )'t', 
2352        (char const   )'i',      (char const   )'m',      (char const   )'e',      (char const   )'r', 
2353        (char const   )'.',      (char const   )' ',      (char const   )' ',      (char const   )'S', 
2354        (char const   )'e',      (char const   )'t',      (char const   )'t',      (char const   )'i', 
2355        (char const   )'n',      (char const   )'g',      (char const   )' ',      (char const   )'t', 
2356        (char const   )'o',      (char const   )' ',      (char const   )'-',      (char const   )'1', 
2357        (char const   )' ',      (char const   )'d',      (char const   )'e',      (char const   )'f', 
2358        (char const   )'a',      (char const   )'u',      (char const   )'l',      (char const   )'t', 
2359        (char const   )'s',      (char const   )' ',      (char const   )'t',      (char const   )'o', 
2360        (char const   )' ',      (char const   )'t',      (char const   )'h',      (char const   )'e', 
2361        (char const   )' ',      (char const   )'f',      (char const   )'i',      (char const   )'r', 
2362        (char const   )'s',      (char const   )'t',      (char const   )' ',      (char const   )'r', 
2363        (char const   )'e',      (char const   )'g',      (char const   )'i',      (char const   )'s', 
2364        (char const   )'t',      (char const   )'e',      (char const   )'r',      (char const   )'e', 
2365        (char const   )'d',      (char const   )' ',      (char const   )'i',      (char const   )'n', 
2366        (char const   )'t',      (char const   )'e',      (char const   )'r',      (char const   )'f', 
2367        (char const   )'a',      (char const   )'c',      (char const   )'e',      (char const   )'\000'};
2368#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2369static char const   __param_str_poweroff_powercycle[20]  = 
2370#line 90
2371  {      (char const   )'p',      (char const   )'o',      (char const   )'w',      (char const   )'e', 
2372        (char const   )'r',      (char const   )'o',      (char const   )'f',      (char const   )'f', 
2373        (char const   )'_',      (char const   )'p',      (char const   )'o',      (char const   )'w', 
2374        (char const   )'e',      (char const   )'r',      (char const   )'c',      (char const   )'y', 
2375        (char const   )'c',      (char const   )'l',      (char const   )'e',      (char const   )'\000'};
2376#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2377static struct kernel_param  const  __param_poweroff_powercycle  __attribute__((__used__,
2378__unused__, __section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_poweroff_powercycle, (struct kernel_param_ops  const  *)(& param_ops_int),
2379    (u16 )420, (s16 )0, {(void *)(& poweroff_powercycle)}};
2380#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2381static char const   __mod_poweroff_powercycletype90[33]  __attribute__((__used__,
2382__unused__, __section__(".modinfo"), __aligned__(1)))  = 
2383#line 90
2384  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
2385        (char const   )'t',      (char const   )'y',      (char const   )'p',      (char const   )'e', 
2386        (char const   )'=',      (char const   )'p',      (char const   )'o',      (char const   )'w', 
2387        (char const   )'e',      (char const   )'r',      (char const   )'o',      (char const   )'f', 
2388        (char const   )'f',      (char const   )'_',      (char const   )'p',      (char const   )'o', 
2389        (char const   )'w',      (char const   )'e',      (char const   )'r',      (char const   )'c', 
2390        (char const   )'y',      (char const   )'c',      (char const   )'l',      (char const   )'e', 
2391        (char const   )':',      (char const   )'i',      (char const   )'n',      (char const   )'t', 
2392        (char const   )'\000'};
2393#line 91 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2394static char const   __mod_poweroff_powercycle94[176]  __attribute__((__used__, __unused__,
2395__section__(".modinfo"), __aligned__(1)))  = 
2396#line 91
2397  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
2398        (char const   )'=',      (char const   )'p',      (char const   )'o',      (char const   )'w', 
2399        (char const   )'e',      (char const   )'r',      (char const   )'o',      (char const   )'f', 
2400        (char const   )'f',      (char const   )'_',      (char const   )'p',      (char const   )'o', 
2401        (char const   )'w',      (char const   )'e',      (char const   )'r',      (char const   )'c', 
2402        (char const   )'y',      (char const   )'c',      (char const   )'l',      (char const   )'e', 
2403        (char const   )':',      (char const   )' ',      (char const   )'S',      (char const   )'e', 
2404        (char const   )'t',      (char const   )' ',      (char const   )'t',      (char const   )'o', 
2405        (char const   )' ',      (char const   )'n',      (char const   )'o',      (char const   )'n', 
2406        (char const   )'-',      (char const   )'z',      (char const   )'e',      (char const   )'r', 
2407        (char const   )'o',      (char const   )' ',      (char const   )'t',      (char const   )'o', 
2408        (char const   )' ',      (char const   )'e',      (char const   )'n',      (char const   )'a', 
2409        (char const   )'b',      (char const   )'l',      (char const   )'e',      (char const   )' ', 
2410        (char const   )'p',      (char const   )'o',      (char const   )'w',      (char const   )'e', 
2411        (char const   )'r',      (char const   )' ',      (char const   )'c',      (char const   )'y', 
2412        (char const   )'c',      (char const   )'l',      (char const   )'e',      (char const   )' ', 
2413        (char const   )'i',      (char const   )'n',      (char const   )'s',      (char const   )'t', 
2414        (char const   )'e',      (char const   )'a',      (char const   )'d',      (char const   )' ', 
2415        (char const   )'o',      (char const   )'f',      (char const   )' ',      (char const   )'p', 
2416        (char const   )'o',      (char const   )'w',      (char const   )'e',      (char const   )'r', 
2417        (char const   )' ',      (char const   )'d',      (char const   )'o',      (char const   )'w', 
2418        (char const   )'n',      (char const   )'.',      (char const   )' ',      (char const   )'P', 
2419        (char const   )'o',      (char const   )'w',      (char const   )'e',      (char const   )'r', 
2420        (char const   )' ',      (char const   )'c',      (char const   )'y',      (char const   )'c', 
2421        (char const   )'l',      (char const   )'e',      (char const   )' ',      (char const   )'i', 
2422        (char const   )'s',      (char const   )' ',      (char const   )'c',      (char const   )'o', 
2423        (char const   )'n',      (char const   )'t',      (char const   )'i',      (char const   )'n', 
2424        (char const   )'g',      (char const   )'e',      (char const   )'n',      (char const   )'t', 
2425        (char const   )' ',      (char const   )'o',      (char const   )'n',      (char const   )' ', 
2426        (char const   )'h',      (char const   )'a',      (char const   )'r',      (char const   )'d', 
2427        (char const   )'w',      (char const   )'a',      (char const   )'r',      (char const   )'e', 
2428        (char const   )' ',      (char const   )'s',      (char const   )'u',      (char const   )'p', 
2429        (char const   )'p',      (char const   )'o',      (char const   )'r',      (char const   )'t', 
2430        (char const   )',',      (char const   )' ',      (char const   )'o',      (char const   )'t', 
2431        (char const   )'h',      (char const   )'e',      (char const   )'r',      (char const   )'w', 
2432        (char const   )'i',      (char const   )'s',      (char const   )'e',      (char const   )' ', 
2433        (char const   )'i',      (char const   )'t',      (char const   )' ',      (char const   )'d', 
2434        (char const   )'e',      (char const   )'f',      (char const   )'a',      (char const   )'u', 
2435        (char const   )'l',      (char const   )'t',      (char const   )'s',      (char const   )' ', 
2436        (char const   )'b',      (char const   )'a',      (char const   )'c',      (char const   )'k', 
2437        (char const   )' ',      (char const   )'t',      (char const   )'o',      (char const   )' ', 
2438        (char const   )'p',      (char const   )'o',      (char const   )'w',      (char const   )'e', 
2439        (char const   )'r',      (char const   )' ',      (char const   )'d',      (char const   )'o', 
2440        (char const   )'w',      (char const   )'n',      (char const   )'.',      (char const   )'\000'};
2441#line 97 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2442static unsigned int mfg_id  ;
2443#line 98 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2444static unsigned int prod_id  ;
2445#line 99 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2446static unsigned char capabilities  ;
2447#line 100 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2448static unsigned char ipmi_version  ;
2449#line 108 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2450static atomic_t dummy_count  =    {0};
2451#line 109 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2452static void dummy_smi_free(struct ipmi_smi_msg *msg ) 
2453{ 
2454
2455  {
2456  {
2457#line 111
2458  atomic_dec(& dummy_count);
2459  }
2460#line 112
2461  return;
2462}
2463}
2464#line 113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2465static void dummy_recv_free(struct ipmi_recv_msg *msg ) 
2466{ 
2467
2468  {
2469  {
2470#line 115
2471  atomic_dec(& dummy_count);
2472  }
2473#line 116
2474  return;
2475}
2476}
2477#line 117 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2478static struct ipmi_smi_msg halt_smi_msg  = 
2479#line 117
2480     {{(struct list_head *)0, (struct list_head *)0}, 0L, (void *)0, 0, {(unsigned char)0,
2481                                                                       (unsigned char)0,
2482                                                                       (unsigned char)0,
2483                                                                       (unsigned char)0,
2484                                                                       (unsigned char)0,
2485                                                                       (unsigned char)0,
2486                                                                       (unsigned char)0,
2487                                                                       (unsigned char)0,
2488                                                                       (unsigned char)0,
2489                                                                       (unsigned char)0,
2490                                                                       (unsigned char)0,
2491                                                                       (unsigned char)0,
2492                                                                       (unsigned char)0,
2493                                                                       (unsigned char)0,
2494                                                                       (unsigned char)0,
2495                                                                       (unsigned char)0,
2496                                                                       (unsigned char)0,
2497                                                                       (unsigned char)0,
2498                                                                       (unsigned char)0,
2499                                                                       (unsigned char)0,
2500                                                                       (unsigned char)0,
2501                                                                       (unsigned char)0,
2502                                                                       (unsigned char)0,
2503                                                                       (unsigned char)0,
2504                                                                       (unsigned char)0,
2505                                                                       (unsigned char)0,
2506                                                                       (unsigned char)0,
2507                                                                       (unsigned char)0,
2508                                                                       (unsigned char)0,
2509                                                                       (unsigned char)0,
2510                                                                       (unsigned char)0,
2511                                                                       (unsigned char)0,
2512                                                                       (unsigned char)0,
2513                                                                       (unsigned char)0,
2514                                                                       (unsigned char)0,
2515                                                                       (unsigned char)0,
2516                                                                       (unsigned char)0,
2517                                                                       (unsigned char)0,
2518                                                                       (unsigned char)0,
2519                                                                       (unsigned char)0,
2520                                                                       (unsigned char)0,
2521                                                                       (unsigned char)0,
2522                                                                       (unsigned char)0,
2523                                                                       (unsigned char)0,
2524                                                                       (unsigned char)0,
2525                                                                       (unsigned char)0,
2526                                                                       (unsigned char)0,
2527                                                                       (unsigned char)0,
2528                                                                       (unsigned char)0,
2529                                                                       (unsigned char)0,
2530                                                                       (unsigned char)0,
2531                                                                       (unsigned char)0,
2532                                                                       (unsigned char)0,
2533                                                                       (unsigned char)0,
2534                                                                       (unsigned char)0,
2535                                                                       (unsigned char)0,
2536                                                                       (unsigned char)0,
2537                                                                       (unsigned char)0,
2538                                                                       (unsigned char)0,
2539                                                                       (unsigned char)0,
2540                                                                       (unsigned char)0,
2541                                                                       (unsigned char)0,
2542                                                                       (unsigned char)0,
2543                                                                       (unsigned char)0,
2544                                                                       (unsigned char)0,
2545                                                                       (unsigned char)0,
2546                                                                       (unsigned char)0,
2547                                                                       (unsigned char)0,
2548                                                                       (unsigned char)0,
2549                                                                       (unsigned char)0,
2550                                                                       (unsigned char)0,
2551                                                                       (unsigned char)0,
2552                                                                       (unsigned char)0,
2553                                                                       (unsigned char)0,
2554                                                                       (unsigned char)0,
2555                                                                       (unsigned char)0,
2556                                                                       (unsigned char)0,
2557                                                                       (unsigned char)0,
2558                                                                       (unsigned char)0,
2559                                                                       (unsigned char)0,
2560                                                                       (unsigned char)0,
2561                                                                       (unsigned char)0,
2562                                                                       (unsigned char)0,
2563                                                                       (unsigned char)0,
2564                                                                       (unsigned char)0,
2565                                                                       (unsigned char)0,
2566                                                                       (unsigned char)0,
2567                                                                       (unsigned char)0,
2568                                                                       (unsigned char)0,
2569                                                                       (unsigned char)0,
2570                                                                       (unsigned char)0,
2571                                                                       (unsigned char)0,
2572                                                                       (unsigned char)0,
2573                                                                       (unsigned char)0,
2574                                                                       (unsigned char)0,
2575                                                                       (unsigned char)0,
2576                                                                       (unsigned char)0,
2577                                                                       (unsigned char)0,
2578                                                                       (unsigned char)0,
2579                                                                       (unsigned char)0,
2580                                                                       (unsigned char)0,
2581                                                                       (unsigned char)0,
2582                                                                       (unsigned char)0,
2583                                                                       (unsigned char)0,
2584                                                                       (unsigned char)0,
2585                                                                       (unsigned char)0,
2586                                                                       (unsigned char)0,
2587                                                                       (unsigned char)0,
2588                                                                       (unsigned char)0,
2589                                                                       (unsigned char)0,
2590                                                                       (unsigned char)0,
2591                                                                       (unsigned char)0,
2592                                                                       (unsigned char)0,
2593                                                                       (unsigned char)0,
2594                                                                       (unsigned char)0,
2595                                                                       (unsigned char)0,
2596                                                                       (unsigned char)0,
2597                                                                       (unsigned char)0,
2598                                                                       (unsigned char)0,
2599                                                                       (unsigned char)0,
2600                                                                       (unsigned char)0,
2601                                                                       (unsigned char)0,
2602                                                                       (unsigned char)0,
2603                                                                       (unsigned char)0,
2604                                                                       (unsigned char)0,
2605                                                                       (unsigned char)0,
2606                                                                       (unsigned char)0,
2607                                                                       (unsigned char)0,
2608                                                                       (unsigned char)0,
2609                                                                       (unsigned char)0,
2610                                                                       (unsigned char)0,
2611                                                                       (unsigned char)0,
2612                                                                       (unsigned char)0,
2613                                                                       (unsigned char)0,
2614                                                                       (unsigned char)0,
2615                                                                       (unsigned char)0,
2616                                                                       (unsigned char)0,
2617                                                                       (unsigned char)0,
2618                                                                       (unsigned char)0,
2619                                                                       (unsigned char)0,
2620                                                                       (unsigned char)0,
2621                                                                       (unsigned char)0,
2622                                                                       (unsigned char)0,
2623                                                                       (unsigned char)0,
2624                                                                       (unsigned char)0,
2625                                                                       (unsigned char)0,
2626                                                                       (unsigned char)0,
2627                                                                       (unsigned char)0,
2628                                                                       (unsigned char)0,
2629                                                                       (unsigned char)0,
2630                                                                       (unsigned char)0,
2631                                                                       (unsigned char)0,
2632                                                                       (unsigned char)0,
2633                                                                       (unsigned char)0,
2634                                                                       (unsigned char)0,
2635                                                                       (unsigned char)0,
2636                                                                       (unsigned char)0,
2637                                                                       (unsigned char)0,
2638                                                                       (unsigned char)0,
2639                                                                       (unsigned char)0,
2640                                                                       (unsigned char)0,
2641                                                                       (unsigned char)0,
2642                                                                       (unsigned char)0,
2643                                                                       (unsigned char)0,
2644                                                                       (unsigned char)0,
2645                                                                       (unsigned char)0,
2646                                                                       (unsigned char)0,
2647                                                                       (unsigned char)0,
2648                                                                       (unsigned char)0,
2649                                                                       (unsigned char)0,
2650                                                                       (unsigned char)0,
2651                                                                       (unsigned char)0,
2652                                                                       (unsigned char)0,
2653                                                                       (unsigned char)0,
2654                                                                       (unsigned char)0,
2655                                                                       (unsigned char)0,
2656                                                                       (unsigned char)0,
2657                                                                       (unsigned char)0,
2658                                                                       (unsigned char)0,
2659                                                                       (unsigned char)0,
2660                                                                       (unsigned char)0,
2661                                                                       (unsigned char)0,
2662                                                                       (unsigned char)0,
2663                                                                       (unsigned char)0,
2664                                                                       (unsigned char)0,
2665                                                                       (unsigned char)0,
2666                                                                       (unsigned char)0,
2667                                                                       (unsigned char)0,
2668                                                                       (unsigned char)0,
2669                                                                       (unsigned char)0,
2670                                                                       (unsigned char)0,
2671                                                                       (unsigned char)0,
2672                                                                       (unsigned char)0,
2673                                                                       (unsigned char)0,
2674                                                                       (unsigned char)0,
2675                                                                       (unsigned char)0,
2676                                                                       (unsigned char)0,
2677                                                                       (unsigned char)0,
2678                                                                       (unsigned char)0,
2679                                                                       (unsigned char)0,
2680                                                                       (unsigned char)0,
2681                                                                       (unsigned char)0,
2682                                                                       (unsigned char)0,
2683                                                                       (unsigned char)0,
2684                                                                       (unsigned char)0,
2685                                                                       (unsigned char)0,
2686                                                                       (unsigned char)0,
2687                                                                       (unsigned char)0,
2688                                                                       (unsigned char)0,
2689                                                                       (unsigned char)0,
2690                                                                       (unsigned char)0,
2691                                                                       (unsigned char)0,
2692                                                                       (unsigned char)0,
2693                                                                       (unsigned char)0,
2694                                                                       (unsigned char)0,
2695                                                                       (unsigned char)0,
2696                                                                       (unsigned char)0,
2697                                                                       (unsigned char)0,
2698                                                                       (unsigned char)0,
2699                                                                       (unsigned char)0,
2700                                                                       (unsigned char)0,
2701                                                                       (unsigned char)0,
2702                                                                       (unsigned char)0,
2703                                                                       (unsigned char)0,
2704                                                                       (unsigned char)0,
2705                                                                       (unsigned char)0,
2706                                                                       (unsigned char)0,
2707                                                                       (unsigned char)0,
2708                                                                       (unsigned char)0,
2709                                                                       (unsigned char)0,
2710                                                                       (unsigned char)0,
2711                                                                       (unsigned char)0,
2712                                                                       (unsigned char)0,
2713                                                                       (unsigned char)0,
2714                                                                       (unsigned char)0,
2715                                                                       (unsigned char)0,
2716                                                                       (unsigned char)0,
2717                                                                       (unsigned char)0,
2718                                                                       (unsigned char)0,
2719                                                                       (unsigned char)0,
2720                                                                       (unsigned char)0,
2721                                                                       (unsigned char)0,
2722                                                                       (unsigned char)0,
2723                                                                       (unsigned char)0,
2724                                                                       (unsigned char)0,
2725                                                                       (unsigned char)0,
2726                                                                       (unsigned char)0,
2727                                                                       (unsigned char)0,
2728                                                                       (unsigned char)0,
2729                                                                       (unsigned char)0,
2730                                                                       (unsigned char)0,
2731                                                                       (unsigned char)0,
2732                                                                       (unsigned char)0,
2733                                                                       (unsigned char)0,
2734                                                                       (unsigned char)0,
2735                                                                       (unsigned char)0,
2736                                                                       (unsigned char)0,
2737                                                                       (unsigned char)0,
2738                                                                       (unsigned char)0,
2739                                                                       (unsigned char)0,
2740                                                                       (unsigned char)0,
2741                                                                       (unsigned char)0,
2742                                                                       (unsigned char)0,
2743                                                                       (unsigned char)0,
2744                                                                       (unsigned char)0,
2745                                                                       (unsigned char)0,
2746                                                                       (unsigned char)0,
2747                                                                       (unsigned char)0,
2748                                                                       (unsigned char)0,
2749                                                                       (unsigned char)0,
2750                                                                       (unsigned char)0,
2751                                                                       (unsigned char)0},
2752    0, {(unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2753        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2754        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2755        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2756        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2757        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2758        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2759        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2760        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2761        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2762        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2763        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2764        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2765        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2766        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2767        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2768        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2769        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2770        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2771        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2772        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2773        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2774        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2775        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2776        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2777        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2778        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2779        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2780        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2781        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2782        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2783        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2784        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2785        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2786        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2787        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2788        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2789        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2790        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2791        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2792        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2793        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2794        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2795        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2796        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2797        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2798        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2799        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2800        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2801        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2802        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2803        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2804        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2805        (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2806        (unsigned char)0, (unsigned char)0}, & dummy_smi_free};
2807#line 120 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2808static struct ipmi_recv_msg halt_recv_msg  = 
2809#line 120
2810     {{(struct list_head *)0, (struct list_head *)0}, 0, (struct ipmi_user *)0, {0,
2811                                                                               (short)0,
2812                                                                               {(char)0,
2813                                                                                (char)0,
2814                                                                                (char)0,
2815                                                                                (char)0,
2816                                                                                (char)0,
2817                                                                                (char)0,
2818                                                                                (char)0,
2819                                                                                (char)0,
2820                                                                                (char)0,
2821                                                                                (char)0,
2822                                                                                (char)0,
2823                                                                                (char)0,
2824                                                                                (char)0,
2825                                                                                (char)0,
2826                                                                                (char)0,
2827                                                                                (char)0,
2828                                                                                (char)0,
2829                                                                                (char)0,
2830                                                                                (char)0,
2831                                                                                (char)0,
2832                                                                                (char)0,
2833                                                                                (char)0,
2834                                                                                (char)0,
2835                                                                                (char)0,
2836                                                                                (char)0,
2837                                                                                (char)0,
2838                                                                                (char)0,
2839                                                                                (char)0,
2840                                                                                (char)0,
2841                                                                                (char)0,
2842                                                                                (char)0,
2843                                                                                (char)0}},
2844    0L, {(unsigned char)0, (unsigned char)0, (unsigned short)0, (unsigned char *)0},
2845    (void *)0, & dummy_recv_free, {(unsigned char)0, (unsigned char)0, (unsigned char)0,
2846                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2847                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2848                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2849                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2850                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2851                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2852                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2853                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2854                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2855                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2856                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2857                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2858                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2859                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2860                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2861                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2862                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2863                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2864                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2865                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2866                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2867                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2868                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2869                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2870                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2871                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2872                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2873                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2874                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2875                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2876                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2877                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2878                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2879                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2880                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2881                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2882                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2883                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2884                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2885                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2886                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2887                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2888                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2889                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2890                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2891                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2892                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2893                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2894                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2895                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2896                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2897                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2898                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2899                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2900                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2901                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2902                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2903                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2904                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2905                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2906                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2907                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2908                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2909                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2910                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2911                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2912                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2913                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2914                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2915                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2916                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2917                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2918                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2919                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2920                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2921                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2922                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2923                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2924                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2925                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2926                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2927                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2928                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2929                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2930                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2931                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2932                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2933                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2934                                   (unsigned char)0, (unsigned char)0, (unsigned char)0,
2935                                   (unsigned char)0, (unsigned char)0}};
2936#line 129 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2937static void receive_handler(struct ipmi_recv_msg *recv_msg , void *handler_data ) 
2938{ struct completion *comp ;
2939  unsigned long __cil_tmp4 ;
2940  unsigned long __cil_tmp5 ;
2941  void *__cil_tmp6 ;
2942
2943  {
2944#line 131
2945  __cil_tmp4 = (unsigned long )recv_msg;
2946#line 131
2947  __cil_tmp5 = __cil_tmp4 + 96;
2948#line 131
2949  __cil_tmp6 = *((void **)__cil_tmp5);
2950#line 131
2951  comp = (struct completion *)__cil_tmp6;
2952#line 133
2953  if (comp) {
2954    {
2955#line 134
2956    complete(comp);
2957    }
2958  } else {
2959
2960  }
2961#line 135
2962  return;
2963}
2964}
2965#line 137 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2966static struct ipmi_user_hndl ipmi_poweroff_handler  =    {& receive_handler, (void (*)(void *handler_data ))0};
2967#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
2968static int ipmi_request_wait_for_response(ipmi_user_t user , struct ipmi_addr *addr ,
2969                                          struct kernel_ipmi_msg *send_msg ) 
2970{ int rv ;
2971  struct completion comp ;
2972  void *__cil_tmp6 ;
2973  void *__cil_tmp7 ;
2974  unsigned long __cil_tmp8 ;
2975  unsigned long __cil_tmp9 ;
2976  unsigned char *__cil_tmp10 ;
2977  unsigned char *__cil_tmp11 ;
2978  unsigned char __cil_tmp12 ;
2979
2980  {
2981  {
2982#line 149
2983  init_completion(& comp);
2984#line 151
2985  __cil_tmp6 = (void *)(& comp);
2986#line 151
2987  __cil_tmp7 = (void *)(& halt_smi_msg);
2988#line 151
2989  rv = ipmi_request_supply_msgs(user, addr, 0L, send_msg, __cil_tmp6, __cil_tmp7,
2990                                & halt_recv_msg, 0);
2991  }
2992#line 153
2993  if (rv) {
2994#line 154
2995    return (rv);
2996  } else {
2997
2998  }
2999  {
3000#line 156
3001  wait_for_completion(& comp);
3002  }
3003  {
3004#line 158
3005  __cil_tmp8 = 80 + 8;
3006#line 158
3007  __cil_tmp9 = (unsigned long )(& halt_recv_msg) + __cil_tmp8;
3008#line 158
3009  __cil_tmp10 = *((unsigned char **)__cil_tmp9);
3010#line 158
3011  __cil_tmp11 = __cil_tmp10 + 0;
3012#line 158
3013  __cil_tmp12 = *__cil_tmp11;
3014#line 158
3015  return ((int )__cil_tmp12);
3016  }
3017}
3018}
3019#line 162 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3020static int ipmi_request_in_rc_mode(ipmi_user_t user , struct ipmi_addr *addr , struct kernel_ipmi_msg *send_msg ) 
3021{ int rv ;
3022  int tmp___3 ;
3023  void *__cil_tmp6 ;
3024  void *__cil_tmp7 ;
3025  atomic_t const   *__cil_tmp8 ;
3026  unsigned long __cil_tmp9 ;
3027  unsigned long __cil_tmp10 ;
3028  unsigned char *__cil_tmp11 ;
3029  unsigned char *__cil_tmp12 ;
3030  unsigned char __cil_tmp13 ;
3031
3032  {
3033  {
3034#line 168
3035  atomic_set(& dummy_count, 2);
3036#line 169
3037  __cil_tmp6 = (void *)0;
3038#line 169
3039  __cil_tmp7 = (void *)(& halt_smi_msg);
3040#line 169
3041  rv = ipmi_request_supply_msgs(user, addr, 0L, send_msg, __cil_tmp6, __cil_tmp7,
3042                                & halt_recv_msg, 0);
3043  }
3044#line 171
3045  if (rv) {
3046    {
3047#line 172
3048    atomic_set(& dummy_count, 0);
3049    }
3050#line 173
3051    return (rv);
3052  } else {
3053
3054  }
3055  {
3056#line 179
3057  while (1) {
3058    while_continue: /* CIL Label */ ;
3059    {
3060#line 179
3061    __cil_tmp8 = (atomic_t const   *)(& dummy_count);
3062#line 179
3063    tmp___3 = atomic_read(__cil_tmp8);
3064    }
3065#line 179
3066    if (tmp___3 > 0) {
3067
3068    } else {
3069#line 179
3070      goto while_break;
3071    }
3072    {
3073#line 180
3074    ipmi_poll_interface(user);
3075#line 181
3076    cpu_relax();
3077    }
3078  }
3079  while_break: /* CIL Label */ ;
3080  }
3081  {
3082#line 184
3083  __cil_tmp9 = 80 + 8;
3084#line 184
3085  __cil_tmp10 = (unsigned long )(& halt_recv_msg) + __cil_tmp9;
3086#line 184
3087  __cil_tmp11 = *((unsigned char **)__cil_tmp10);
3088#line 184
3089  __cil_tmp12 = __cil_tmp11 + 0;
3090#line 184
3091  __cil_tmp13 = *__cil_tmp12;
3092#line 184
3093  return ((int )__cil_tmp13);
3094  }
3095}
3096}
3097#line 202 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3098static void (*atca_oem_poweroff_hook)(ipmi_user_t user )  ;
3099#line 204 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3100static void pps_poweroff_atca(ipmi_user_t user ) 
3101{ struct ipmi_system_interface_addr smi_addr ;
3102  struct kernel_ipmi_msg send_msg ;
3103  int rv ;
3104  struct ipmi_system_interface_addr *__cil_tmp5 ;
3105  unsigned long __cil_tmp6 ;
3106  unsigned long __cil_tmp7 ;
3107  struct kernel_ipmi_msg *__cil_tmp8 ;
3108  unsigned long __cil_tmp9 ;
3109  unsigned long __cil_tmp10 ;
3110  unsigned long __cil_tmp11 ;
3111  struct ipmi_addr *__cil_tmp12 ;
3112
3113  {
3114  {
3115#line 212
3116  __cil_tmp5 = & smi_addr;
3117#line 212
3118  *((int *)__cil_tmp5) = 12;
3119#line 213
3120  __cil_tmp6 = (unsigned long )(& smi_addr) + 4;
3121#line 213
3122  *((short *)__cil_tmp6) = (short)15;
3123#line 214
3124  __cil_tmp7 = (unsigned long )(& smi_addr) + 6;
3125#line 214
3126  *((unsigned char *)__cil_tmp7) = (unsigned char)0;
3127#line 216
3128  printk("<6>IPMI poweroff: PPS powerdown hook used");
3129#line 218
3130  __cil_tmp8 = & send_msg;
3131#line 218
3132  *((unsigned char *)__cil_tmp8) = (unsigned char)46;
3133#line 219
3134  __cil_tmp9 = (unsigned long )(& send_msg) + 1;
3135#line 219
3136  *((unsigned char *)__cil_tmp9) = (unsigned char)17;
3137#line 220
3138  __cil_tmp10 = (unsigned long )(& send_msg) + 8;
3139#line 220
3140  *((unsigned char **)__cil_tmp10) = (unsigned char *)"\000@\n";
3141#line 221
3142  __cil_tmp11 = (unsigned long )(& send_msg) + 2;
3143#line 221
3144  *((unsigned short *)__cil_tmp11) = (unsigned short)3;
3145#line 222
3146  __cil_tmp12 = (struct ipmi_addr *)(& smi_addr);
3147#line 222
3148  rv = ipmi_request_in_rc_mode(user, __cil_tmp12, & send_msg);
3149  }
3150#line 225
3151  if (rv) {
3152#line 225
3153    if (rv != 255) {
3154      {
3155#line 226
3156      printk("<3>IPMI poweroff: Unable to send ATCA , IPMI error 0x%x\n", rv);
3157      }
3158    } else {
3159
3160    }
3161  } else {
3162
3163  }
3164#line 229
3165  return;
3166}
3167}
3168#line 232 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3169static int ipmi_atca_detect(ipmi_user_t user ) 
3170{ struct ipmi_system_interface_addr smi_addr ;
3171  struct kernel_ipmi_msg send_msg ;
3172  int rv ;
3173  unsigned char data[1] ;
3174  struct ipmi_system_interface_addr *__cil_tmp6 ;
3175  unsigned long __cil_tmp7 ;
3176  unsigned long __cil_tmp8 ;
3177  struct kernel_ipmi_msg *__cil_tmp9 ;
3178  unsigned long __cil_tmp10 ;
3179  unsigned long __cil_tmp11 ;
3180  unsigned long __cil_tmp12 ;
3181  unsigned long __cil_tmp13 ;
3182  unsigned long __cil_tmp14 ;
3183  unsigned long __cil_tmp15 ;
3184  unsigned long __cil_tmp16 ;
3185  struct ipmi_addr *__cil_tmp17 ;
3186  unsigned int *__cil_tmp18 ;
3187  unsigned int __cil_tmp19 ;
3188  unsigned int *__cil_tmp20 ;
3189  unsigned int __cil_tmp21 ;
3190
3191  {
3192  {
3193#line 242
3194  __cil_tmp6 = & smi_addr;
3195#line 242
3196  *((int *)__cil_tmp6) = 12;
3197#line 243
3198  __cil_tmp7 = (unsigned long )(& smi_addr) + 4;
3199#line 243
3200  *((short *)__cil_tmp7) = (short)15;
3201#line 244
3202  __cil_tmp8 = (unsigned long )(& smi_addr) + 6;
3203#line 244
3204  *((unsigned char *)__cil_tmp8) = (unsigned char)0;
3205#line 249
3206  __cil_tmp9 = & send_msg;
3207#line 249
3208  *((unsigned char *)__cil_tmp9) = (unsigned char)44;
3209#line 250
3210  __cil_tmp10 = (unsigned long )(& send_msg) + 1;
3211#line 250
3212  *((unsigned char *)__cil_tmp10) = (unsigned char)1;
3213#line 251
3214  __cil_tmp11 = 0 * 1UL;
3215#line 251
3216  __cil_tmp12 = (unsigned long )(data) + __cil_tmp11;
3217#line 251
3218  *((unsigned char *)__cil_tmp12) = (unsigned char)0;
3219#line 252
3220  __cil_tmp13 = (unsigned long )(& send_msg) + 8;
3221#line 252
3222  __cil_tmp14 = 0 * 1UL;
3223#line 252
3224  __cil_tmp15 = (unsigned long )(data) + __cil_tmp14;
3225#line 252
3226  *((unsigned char **)__cil_tmp13) = (unsigned char *)__cil_tmp15;
3227#line 253
3228  __cil_tmp16 = (unsigned long )(& send_msg) + 2;
3229#line 253
3230  *((unsigned short *)__cil_tmp16) = (unsigned short )1UL;
3231#line 254
3232  __cil_tmp17 = (struct ipmi_addr *)(& smi_addr);
3233#line 254
3234  rv = ipmi_request_wait_for_response(user, __cil_tmp17, & send_msg);
3235#line 258
3236  __cil_tmp18 = & mfg_id;
3237#line 258
3238  __cil_tmp19 = *__cil_tmp18;
3239#line 258
3240  printk("<6>IPMI poweroff: ATCA Detect mfg 0x%X prod 0x%X\n", __cil_tmp19, prod_id);
3241  }
3242  {
3243#line 260
3244  __cil_tmp20 = & mfg_id;
3245#line 260
3246  __cil_tmp21 = *__cil_tmp20;
3247#line 260
3248  if (__cil_tmp21 == 161U) {
3249#line 260
3250    if (prod_id == 81U) {
3251      {
3252#line 262
3253      printk("<6>IPMI poweroff: Installing Pigeon Point Systems Poweroff Hook\n");
3254#line 264
3255      atca_oem_poweroff_hook = & pps_poweroff_atca;
3256      }
3257    } else {
3258
3259    }
3260  } else {
3261
3262  }
3263  }
3264#line 266
3265  return (! rv);
3266}
3267}
3268#line 269 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3269static void ipmi_poweroff_atca(ipmi_user_t user ) 
3270{ struct ipmi_system_interface_addr smi_addr ;
3271  struct kernel_ipmi_msg send_msg ;
3272  int rv ;
3273  unsigned char data[4] ;
3274  struct ipmi_system_interface_addr *__cil_tmp6 ;
3275  unsigned long __cil_tmp7 ;
3276  unsigned long __cil_tmp8 ;
3277  struct kernel_ipmi_msg *__cil_tmp9 ;
3278  unsigned long __cil_tmp10 ;
3279  unsigned long __cil_tmp11 ;
3280  unsigned long __cil_tmp12 ;
3281  unsigned long __cil_tmp13 ;
3282  unsigned long __cil_tmp14 ;
3283  unsigned long __cil_tmp15 ;
3284  unsigned long __cil_tmp16 ;
3285  unsigned long __cil_tmp17 ;
3286  unsigned long __cil_tmp18 ;
3287  unsigned long __cil_tmp19 ;
3288  unsigned long __cil_tmp20 ;
3289  unsigned long __cil_tmp21 ;
3290  unsigned long __cil_tmp22 ;
3291  struct ipmi_addr *__cil_tmp23 ;
3292
3293  {
3294  {
3295#line 279
3296  __cil_tmp6 = & smi_addr;
3297#line 279
3298  *((int *)__cil_tmp6) = 12;
3299#line 280
3300  __cil_tmp7 = (unsigned long )(& smi_addr) + 4;
3301#line 280
3302  *((short *)__cil_tmp7) = (short)15;
3303#line 281
3304  __cil_tmp8 = (unsigned long )(& smi_addr) + 6;
3305#line 281
3306  *((unsigned char *)__cil_tmp8) = (unsigned char)0;
3307#line 283
3308  printk("<6>IPMI poweroff: Powering down via ATCA power command\n");
3309#line 288
3310  __cil_tmp9 = & send_msg;
3311#line 288
3312  *((unsigned char *)__cil_tmp9) = (unsigned char)44;
3313#line 289
3314  __cil_tmp10 = (unsigned long )(& send_msg) + 1;
3315#line 289
3316  *((unsigned char *)__cil_tmp10) = (unsigned char)17;
3317#line 290
3318  __cil_tmp11 = 0 * 1UL;
3319#line 290
3320  __cil_tmp12 = (unsigned long )(data) + __cil_tmp11;
3321#line 290
3322  *((unsigned char *)__cil_tmp12) = (unsigned char)0;
3323#line 291
3324  __cil_tmp13 = 1 * 1UL;
3325#line 291
3326  __cil_tmp14 = (unsigned long )(data) + __cil_tmp13;
3327#line 291
3328  *((unsigned char *)__cil_tmp14) = (unsigned char)0;
3329#line 292
3330  __cil_tmp15 = 2 * 1UL;
3331#line 292
3332  __cil_tmp16 = (unsigned long )(data) + __cil_tmp15;
3333#line 292
3334  *((unsigned char *)__cil_tmp16) = (unsigned char)0;
3335#line 293
3336  __cil_tmp17 = 3 * 1UL;
3337#line 293
3338  __cil_tmp18 = (unsigned long )(data) + __cil_tmp17;
3339#line 293
3340  *((unsigned char *)__cil_tmp18) = (unsigned char)0;
3341#line 294
3342  __cil_tmp19 = (unsigned long )(& send_msg) + 8;
3343#line 294
3344  __cil_tmp20 = 0 * 1UL;
3345#line 294
3346  __cil_tmp21 = (unsigned long )(data) + __cil_tmp20;
3347#line 294
3348  *((unsigned char **)__cil_tmp19) = (unsigned char *)__cil_tmp21;
3349#line 295
3350  __cil_tmp22 = (unsigned long )(& send_msg) + 2;
3351#line 295
3352  *((unsigned short *)__cil_tmp22) = (unsigned short )4UL;
3353#line 296
3354  __cil_tmp23 = (struct ipmi_addr *)(& smi_addr);
3355#line 296
3356  rv = ipmi_request_in_rc_mode(user, __cil_tmp23, & send_msg);
3357  }
3358#line 305
3359  if (rv) {
3360#line 305
3361    if (rv != 255) {
3362      {
3363#line 306
3364      printk("<3>IPMI poweroff: Unable to send ATCA powerdown message, IPMI error 0x%x\n",
3365             rv);
3366      }
3367#line 308
3368      goto out;
3369    } else {
3370
3371    }
3372  } else {
3373
3374  }
3375#line 311
3376  if (atca_oem_poweroff_hook) {
3377    {
3378#line 312
3379    (*atca_oem_poweroff_hook)(user);
3380    }
3381  } else {
3382
3383  }
3384  out: 
3385#line 314
3386  return;
3387}
3388}
3389#line 333 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3390static int ipmi_cpi1_detect(ipmi_user_t user ) 
3391{ int tmp___3 ;
3392  unsigned int *__cil_tmp3 ;
3393  unsigned int __cil_tmp4 ;
3394
3395  {
3396  {
3397#line 335
3398  __cil_tmp3 = & mfg_id;
3399#line 335
3400  __cil_tmp4 = *__cil_tmp3;
3401#line 335
3402  if (__cil_tmp4 == 264U) {
3403#line 335
3404    if (prod_id == 343U) {
3405#line 335
3406      tmp___3 = 1;
3407    } else {
3408#line 335
3409      tmp___3 = 0;
3410    }
3411  } else {
3412#line 335
3413    tmp___3 = 0;
3414  }
3415  }
3416#line 335
3417  return (tmp___3);
3418}
3419}
3420#line 339 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3421static void ipmi_poweroff_cpi1(ipmi_user_t user ) 
3422{ struct ipmi_system_interface_addr smi_addr ;
3423  struct ipmi_ipmb_addr ipmb_addr ;
3424  struct kernel_ipmi_msg send_msg ;
3425  int rv ;
3426  unsigned char data[1] ;
3427  int slot ;
3428  unsigned char hotswap_ipmb ;
3429  unsigned char aer_addr ;
3430  unsigned char aer_lun ;
3431  struct ipmi_system_interface_addr *__cil_tmp11 ;
3432  unsigned long __cil_tmp12 ;
3433  unsigned long __cil_tmp13 ;
3434  struct kernel_ipmi_msg *__cil_tmp14 ;
3435  int __cil_tmp15 ;
3436  unsigned long __cil_tmp16 ;
3437  unsigned long __cil_tmp17 ;
3438  void *__cil_tmp18 ;
3439  unsigned long __cil_tmp19 ;
3440  struct ipmi_addr *__cil_tmp20 ;
3441  unsigned long __cil_tmp21 ;
3442  unsigned long __cil_tmp22 ;
3443  unsigned char *__cil_tmp23 ;
3444  unsigned char *__cil_tmp24 ;
3445  unsigned char __cil_tmp25 ;
3446  unsigned char *__cil_tmp26 ;
3447  int __cil_tmp27 ;
3448  int __cil_tmp28 ;
3449  unsigned char *__cil_tmp29 ;
3450  int __cil_tmp30 ;
3451  int __cil_tmp31 ;
3452  struct kernel_ipmi_msg *__cil_tmp32 ;
3453  int __cil_tmp33 ;
3454  unsigned long __cil_tmp34 ;
3455  unsigned long __cil_tmp35 ;
3456  void *__cil_tmp36 ;
3457  unsigned long __cil_tmp37 ;
3458  struct ipmi_addr *__cil_tmp38 ;
3459  unsigned long __cil_tmp39 ;
3460  unsigned long __cil_tmp40 ;
3461  unsigned char *__cil_tmp41 ;
3462  unsigned char *__cil_tmp42 ;
3463  unsigned long __cil_tmp43 ;
3464  unsigned long __cil_tmp44 ;
3465  unsigned char *__cil_tmp45 ;
3466  unsigned char *__cil_tmp46 ;
3467  struct ipmi_ipmb_addr *__cil_tmp47 ;
3468  unsigned long __cil_tmp48 ;
3469  unsigned long __cil_tmp49 ;
3470  unsigned long __cil_tmp50 ;
3471  struct kernel_ipmi_msg *__cil_tmp51 ;
3472  int __cil_tmp52 ;
3473  unsigned long __cil_tmp53 ;
3474  unsigned long __cil_tmp54 ;
3475  unsigned long __cil_tmp55 ;
3476  struct ipmi_addr *__cil_tmp56 ;
3477  struct kernel_ipmi_msg *__cil_tmp57 ;
3478  int __cil_tmp58 ;
3479  unsigned long __cil_tmp59 ;
3480  unsigned long __cil_tmp60 ;
3481  unsigned long __cil_tmp61 ;
3482  unsigned long __cil_tmp62 ;
3483  unsigned long __cil_tmp63 ;
3484  unsigned long __cil_tmp64 ;
3485  unsigned long __cil_tmp65 ;
3486  struct ipmi_addr *__cil_tmp66 ;
3487  struct kernel_ipmi_msg *__cil_tmp67 ;
3488  int __cil_tmp68 ;
3489  unsigned long __cil_tmp69 ;
3490  unsigned long __cil_tmp70 ;
3491  unsigned long __cil_tmp71 ;
3492  unsigned long __cil_tmp72 ;
3493  unsigned long __cil_tmp73 ;
3494  unsigned long __cil_tmp74 ;
3495  unsigned long __cil_tmp75 ;
3496  struct ipmi_addr *__cil_tmp76 ;
3497
3498  {
3499  {
3500#line 354
3501  __cil_tmp11 = & smi_addr;
3502#line 354
3503  *((int *)__cil_tmp11) = 12;
3504#line 355
3505  __cil_tmp12 = (unsigned long )(& smi_addr) + 4;
3506#line 355
3507  *((short *)__cil_tmp12) = (short)15;
3508#line 356
3509  __cil_tmp13 = (unsigned long )(& smi_addr) + 6;
3510#line 356
3511  *((unsigned char *)__cil_tmp13) = (unsigned char)0;
3512#line 358
3513  printk("<6>IPMI poweroff: Powering down via CPI1 power command\n");
3514#line 363
3515  __cil_tmp14 = & send_msg;
3516#line 363
3517  __cil_tmp15 = 248 >> 2;
3518#line 363
3519  *((unsigned char *)__cil_tmp14) = (unsigned char )__cil_tmp15;
3520#line 364
3521  __cil_tmp16 = (unsigned long )(& send_msg) + 1;
3522#line 364
3523  *((unsigned char *)__cil_tmp16) = (unsigned char)163;
3524#line 365
3525  __cil_tmp17 = (unsigned long )(& send_msg) + 8;
3526#line 365
3527  __cil_tmp18 = (void *)0;
3528#line 365
3529  *((unsigned char **)__cil_tmp17) = (unsigned char *)__cil_tmp18;
3530#line 366
3531  __cil_tmp19 = (unsigned long )(& send_msg) + 2;
3532#line 366
3533  *((unsigned short *)__cil_tmp19) = (unsigned short)0;
3534#line 367
3535  __cil_tmp20 = (struct ipmi_addr *)(& smi_addr);
3536#line 367
3537  rv = ipmi_request_in_rc_mode(user, __cil_tmp20, & send_msg);
3538  }
3539#line 370
3540  if (rv) {
3541#line 371
3542    goto out;
3543  } else {
3544
3545  }
3546#line 372
3547  __cil_tmp21 = 80 + 8;
3548#line 372
3549  __cil_tmp22 = (unsigned long )(& halt_recv_msg) + __cil_tmp21;
3550#line 372
3551  __cil_tmp23 = *((unsigned char **)__cil_tmp22);
3552#line 372
3553  __cil_tmp24 = __cil_tmp23 + 1;
3554#line 372
3555  __cil_tmp25 = *__cil_tmp24;
3556#line 372
3557  slot = (int )__cil_tmp25;
3558#line 373
3559  if (slot > 9) {
3560#line 373
3561    __cil_tmp26 = & hotswap_ipmb;
3562#line 373
3563    __cil_tmp27 = 2 * slot;
3564#line 373
3565    __cil_tmp28 = 176 + __cil_tmp27;
3566#line 373
3567    *__cil_tmp26 = (unsigned char )__cil_tmp28;
3568  } else {
3569#line 373
3570    __cil_tmp29 = & hotswap_ipmb;
3571#line 373
3572    __cil_tmp30 = 2 * slot;
3573#line 373
3574    __cil_tmp31 = 174 + __cil_tmp30;
3575#line 373
3576    *__cil_tmp29 = (unsigned char )__cil_tmp31;
3577  }
3578  {
3579#line 378
3580  __cil_tmp32 = & send_msg;
3581#line 378
3582  __cil_tmp33 = 16 >> 2;
3583#line 378
3584  *((unsigned char *)__cil_tmp32) = (unsigned char )__cil_tmp33;
3585#line 379
3586  __cil_tmp34 = (unsigned long )(& send_msg) + 1;
3587#line 379
3588  *((unsigned char *)__cil_tmp34) = (unsigned char)1;
3589#line 380
3590  __cil_tmp35 = (unsigned long )(& send_msg) + 8;
3591#line 380
3592  __cil_tmp36 = (void *)0;
3593#line 380
3594  *((unsigned char **)__cil_tmp35) = (unsigned char *)__cil_tmp36;
3595#line 381
3596  __cil_tmp37 = (unsigned long )(& send_msg) + 2;
3597#line 381
3598  *((unsigned short *)__cil_tmp37) = (unsigned short)0;
3599#line 382
3600  __cil_tmp38 = (struct ipmi_addr *)(& smi_addr);
3601#line 382
3602  rv = ipmi_request_in_rc_mode(user, __cil_tmp38, & send_msg);
3603  }
3604#line 385
3605  if (rv) {
3606#line 386
3607    goto out;
3608  } else {
3609
3610  }
3611  {
3612#line 387
3613  __cil_tmp39 = 80 + 8;
3614#line 387
3615  __cil_tmp40 = (unsigned long )(& halt_recv_msg) + __cil_tmp39;
3616#line 387
3617  __cil_tmp41 = *((unsigned char **)__cil_tmp40);
3618#line 387
3619  __cil_tmp42 = __cil_tmp41 + 1;
3620#line 387
3621  aer_addr = *__cil_tmp42;
3622#line 388
3623  __cil_tmp43 = 80 + 8;
3624#line 388
3625  __cil_tmp44 = (unsigned long )(& halt_recv_msg) + __cil_tmp43;
3626#line 388
3627  __cil_tmp45 = *((unsigned char **)__cil_tmp44);
3628#line 388
3629  __cil_tmp46 = __cil_tmp45 + 2;
3630#line 388
3631  aer_lun = *__cil_tmp46;
3632#line 393
3633  __cil_tmp47 = & ipmb_addr;
3634#line 393
3635  *((int *)__cil_tmp47) = 1;
3636#line 394
3637  __cil_tmp48 = (unsigned long )(& ipmb_addr) + 4;
3638#line 394
3639  *((short *)__cil_tmp48) = (short)0;
3640#line 395
3641  __cil_tmp49 = (unsigned long )(& ipmb_addr) + 6;
3642#line 395
3643  *((unsigned char *)__cil_tmp49) = aer_addr;
3644#line 396
3645  __cil_tmp50 = (unsigned long )(& ipmb_addr) + 7;
3646#line 396
3647  *((unsigned char *)__cil_tmp50) = aer_lun;
3648#line 401
3649  __cil_tmp51 = & send_msg;
3650#line 401
3651  __cil_tmp52 = 248 >> 2;
3652#line 401
3653  *((unsigned char *)__cil_tmp51) = (unsigned char )__cil_tmp52;
3654#line 402
3655  __cil_tmp53 = (unsigned long )(& send_msg) + 1;
3656#line 402
3657  *((unsigned char *)__cil_tmp53) = (unsigned char)128;
3658#line 403
3659  __cil_tmp54 = (unsigned long )(& send_msg) + 8;
3660#line 403
3661  *((unsigned char **)__cil_tmp54) = & hotswap_ipmb;
3662#line 404
3663  __cil_tmp55 = (unsigned long )(& send_msg) + 2;
3664#line 404
3665  *((unsigned short *)__cil_tmp55) = (unsigned short)1;
3666#line 405
3667  __cil_tmp56 = (struct ipmi_addr *)(& ipmb_addr);
3668#line 405
3669  ipmi_request_in_rc_mode(user, __cil_tmp56, & send_msg);
3670#line 412
3671  __cil_tmp57 = & send_msg;
3672#line 412
3673  __cil_tmp58 = 248 >> 2;
3674#line 412
3675  *((unsigned char *)__cil_tmp57) = (unsigned char )__cil_tmp58;
3676#line 413
3677  __cil_tmp59 = (unsigned long )(& send_msg) + 1;
3678#line 413
3679  *((unsigned char *)__cil_tmp59) = (unsigned char)132;
3680#line 414
3681  __cil_tmp60 = (unsigned long )(& send_msg) + 8;
3682#line 414
3683  __cil_tmp61 = 0 * 1UL;
3684#line 414
3685  __cil_tmp62 = (unsigned long )(data) + __cil_tmp61;
3686#line 414
3687  *((unsigned char **)__cil_tmp60) = (unsigned char *)__cil_tmp62;
3688#line 415
3689  __cil_tmp63 = 0 * 1UL;
3690#line 415
3691  __cil_tmp64 = (unsigned long )(data) + __cil_tmp63;
3692#line 415
3693  *((unsigned char *)__cil_tmp64) = (unsigned char)1;
3694#line 416
3695  __cil_tmp65 = (unsigned long )(& send_msg) + 2;
3696#line 416
3697  *((unsigned short *)__cil_tmp65) = (unsigned short)1;
3698#line 417
3699  __cil_tmp66 = (struct ipmi_addr *)(& smi_addr);
3700#line 417
3701  rv = ipmi_request_in_rc_mode(user, __cil_tmp66, & send_msg);
3702  }
3703#line 420
3704  if (rv) {
3705#line 421
3706    goto out;
3707  } else {
3708
3709  }
3710  {
3711#line 426
3712  __cil_tmp67 = & send_msg;
3713#line 426
3714  __cil_tmp68 = 248 >> 2;
3715#line 426
3716  *((unsigned char *)__cil_tmp67) = (unsigned char )__cil_tmp68;
3717#line 427
3718  __cil_tmp69 = (unsigned long )(& send_msg) + 1;
3719#line 427
3720  *((unsigned char *)__cil_tmp69) = (unsigned char)130;
3721#line 428
3722  __cil_tmp70 = (unsigned long )(& send_msg) + 8;
3723#line 428
3724  __cil_tmp71 = 0 * 1UL;
3725#line 428
3726  __cil_tmp72 = (unsigned long )(data) + __cil_tmp71;
3727#line 428
3728  *((unsigned char **)__cil_tmp70) = (unsigned char *)__cil_tmp72;
3729#line 429
3730  __cil_tmp73 = 0 * 1UL;
3731#line 429
3732  __cil_tmp74 = (unsigned long )(data) + __cil_tmp73;
3733#line 429
3734  *((unsigned char *)__cil_tmp74) = (unsigned char)1;
3735#line 430
3736  __cil_tmp75 = (unsigned long )(& send_msg) + 2;
3737#line 430
3738  *((unsigned short *)__cil_tmp75) = (unsigned short)1;
3739#line 431
3740  __cil_tmp76 = (struct ipmi_addr *)(& smi_addr);
3741#line 431
3742  rv = ipmi_request_in_rc_mode(user, __cil_tmp76, & send_msg);
3743  }
3744#line 434
3745  if (rv) {
3746#line 435
3747    goto out;
3748  } else {
3749
3750  }
3751  out: 
3752#line 438
3753  return;
3754}
3755}
3756#line 448 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3757static int ipmi_dell_chassis_detect(ipmi_user_t user ) 
3758{ char ipmi_version_major ;
3759  char ipmi_version_minor ;
3760  char mfr[3] ;
3761  int tmp___3 ;
3762  int __cil_tmp6 ;
3763  int __cil_tmp7 ;
3764  int __cil_tmp8 ;
3765  int __cil_tmp9 ;
3766  int __cil_tmp10 ;
3767  unsigned long __cil_tmp11 ;
3768  unsigned long __cil_tmp12 ;
3769  unsigned long __cil_tmp13 ;
3770  unsigned long __cil_tmp14 ;
3771  unsigned long __cil_tmp15 ;
3772  unsigned long __cil_tmp16 ;
3773  unsigned long __cil_tmp17 ;
3774  unsigned long __cil_tmp18 ;
3775  char *__cil_tmp19 ;
3776  void const   *__cil_tmp20 ;
3777  void const   *__cil_tmp21 ;
3778  int __cil_tmp22 ;
3779  int __cil_tmp23 ;
3780
3781  {
3782  {
3783#line 450
3784  __cil_tmp6 = (int )ipmi_version;
3785#line 450
3786  __cil_tmp7 = __cil_tmp6 & 15;
3787#line 450
3788  ipmi_version_major = (char )__cil_tmp7;
3789#line 451
3790  __cil_tmp8 = (int )ipmi_version;
3791#line 451
3792  __cil_tmp9 = __cil_tmp8 >> 4;
3793#line 451
3794  __cil_tmp10 = __cil_tmp9 & 15;
3795#line 451
3796  ipmi_version_minor = (char )__cil_tmp10;
3797#line 452
3798  __cil_tmp11 = 0 * 1UL;
3799#line 452
3800  __cil_tmp12 = (unsigned long )(mfr) + __cil_tmp11;
3801#line 452
3802  *((char *)__cil_tmp12) = (char)-94;
3803#line 452
3804  __cil_tmp13 = 1 * 1UL;
3805#line 452
3806  __cil_tmp14 = (unsigned long )(mfr) + __cil_tmp13;
3807#line 452
3808  *((char *)__cil_tmp14) = (char)2;
3809#line 452
3810  __cil_tmp15 = 2 * 1UL;
3811#line 452
3812  __cil_tmp16 = (unsigned long )(mfr) + __cil_tmp15;
3813#line 452
3814  *((char *)__cil_tmp16) = (char)0;
3815#line 453
3816  __cil_tmp17 = 0 * 1UL;
3817#line 453
3818  __cil_tmp18 = (unsigned long )(mfr) + __cil_tmp17;
3819#line 453
3820  __cil_tmp19 = (char *)__cil_tmp18;
3821#line 453
3822  __cil_tmp20 = (void const   *)__cil_tmp19;
3823#line 453
3824  __cil_tmp21 = (void const   *)(& mfg_id);
3825#line 453
3826  tmp___3 = memcmp(__cil_tmp20, __cil_tmp21, 3UL);
3827  }
3828#line 453
3829  if (tmp___3) {
3830
3831  } else {
3832    {
3833#line 453
3834    __cil_tmp22 = (int )ipmi_version_major;
3835#line 453
3836    if (__cil_tmp22 <= 1) {
3837      {
3838#line 453
3839      __cil_tmp23 = (int )ipmi_version_minor;
3840#line 453
3841      if (__cil_tmp23 < 5) {
3842#line 456
3843        return (1);
3844      } else {
3845
3846      }
3847      }
3848    } else {
3849
3850    }
3851    }
3852  }
3853#line 457
3854  return (0);
3855}
3856}
3857#line 467 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3858static int ipmi_chassis_detect(ipmi_user_t user ) 
3859{ int __cil_tmp2 ;
3860
3861  {
3862  {
3863#line 470
3864  __cil_tmp2 = (int )capabilities;
3865#line 470
3866  return (__cil_tmp2 & 128);
3867  }
3868}
3869}
3870#line 473 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
3871static void ipmi_poweroff_chassis(ipmi_user_t user ) 
3872{ struct ipmi_system_interface_addr smi_addr ;
3873  struct kernel_ipmi_msg send_msg ;
3874  int rv ;
3875  unsigned char data[1] ;
3876  char const   *tmp___3 ;
3877  struct ipmi_system_interface_addr *__cil_tmp7 ;
3878  unsigned long __cil_tmp8 ;
3879  unsigned long __cil_tmp9 ;
3880  int *__cil_tmp10 ;
3881  struct kernel_ipmi_msg *__cil_tmp11 ;
3882  unsigned long __cil_tmp12 ;
3883  int *__cil_tmp13 ;
3884  unsigned long __cil_tmp14 ;
3885  unsigned long __cil_tmp15 ;
3886  unsigned long __cil_tmp16 ;
3887  unsigned long __cil_tmp17 ;
3888  unsigned long __cil_tmp18 ;
3889  unsigned long __cil_tmp19 ;
3890  unsigned long __cil_tmp20 ;
3891  unsigned long __cil_tmp21 ;
3892  struct ipmi_addr *__cil_tmp22 ;
3893  int *__cil_tmp23 ;
3894  int *__cil_tmp24 ;
3895
3896  {
3897#line 483
3898  __cil_tmp7 = & smi_addr;
3899#line 483
3900  *((int *)__cil_tmp7) = 12;
3901#line 484
3902  __cil_tmp8 = (unsigned long )(& smi_addr) + 4;
3903#line 484
3904  *((short *)__cil_tmp8) = (short)15;
3905#line 485
3906  __cil_tmp9 = (unsigned long )(& smi_addr) + 6;
3907#line 485
3908  *((unsigned char *)__cil_tmp9) = (unsigned char)0;
3909  powercyclefailed: 
3910  {
3911#line 488
3912  __cil_tmp10 = & poweroff_powercycle;
3913#line 488
3914  if (*__cil_tmp10) {
3915#line 488
3916    tmp___3 = "cycle";
3917  } else {
3918#line 488
3919    tmp___3 = "down";
3920  }
3921  }
3922  {
3923#line 488
3924  printk("<6>IPMI poweroff: Powering %s via IPMI chassis control command\n", tmp___3);
3925#line 494
3926  __cil_tmp11 = & send_msg;
3927#line 494
3928  *((unsigned char *)__cil_tmp11) = (unsigned char)0;
3929#line 495
3930  __cil_tmp12 = (unsigned long )(& send_msg) + 1;
3931#line 495
3932  *((unsigned char *)__cil_tmp12) = (unsigned char)2;
3933  }
3934  {
3935#line 496
3936  __cil_tmp13 = & poweroff_powercycle;
3937#line 496
3938  if (*__cil_tmp13) {
3939#line 497
3940    __cil_tmp14 = 0 * 1UL;
3941#line 497
3942    __cil_tmp15 = (unsigned long )(data) + __cil_tmp14;
3943#line 497
3944    *((unsigned char *)__cil_tmp15) = (unsigned char)2;
3945  } else {
3946#line 499
3947    __cil_tmp16 = 0 * 1UL;
3948#line 499
3949    __cil_tmp17 = (unsigned long )(data) + __cil_tmp16;
3950#line 499
3951    *((unsigned char *)__cil_tmp17) = (unsigned char)0;
3952  }
3953  }
3954  {
3955#line 500
3956  __cil_tmp18 = (unsigned long )(& send_msg) + 8;
3957#line 500
3958  __cil_tmp19 = 0 * 1UL;
3959#line 500
3960  __cil_tmp20 = (unsigned long )(data) + __cil_tmp19;
3961#line 500
3962  *((unsigned char **)__cil_tmp18) = (unsigned char *)__cil_tmp20;
3963#line 501
3964  __cil_tmp21 = (unsigned long )(& send_msg) + 2;
3965#line 501
3966  *((unsigned short *)__cil_tmp21) = (unsigned short )1UL;
3967#line 502
3968  __cil_tmp22 = (struct ipmi_addr *)(& smi_addr);
3969#line 502
3970  rv = ipmi_request_in_rc_mode(user, __cil_tmp22, & send_msg);
3971  }
3972#line 505
3973  if (rv) {
3974    {
3975#line 506
3976    __cil_tmp23 = & poweroff_powercycle;
3977#line 506
3978    if (*__cil_tmp23) {
3979      {
3980#line 508
3981      printk("<3>IPMI poweroff: Unable to send chassis power cycle message, IPMI error 0x%x\n",
3982             rv);
3983#line 510
3984      __cil_tmp24 = & poweroff_powercycle;
3985#line 510
3986      *__cil_tmp24 = 0;
3987      }
3988#line 511
3989      goto powercyclefailed;
3990    } else {
3991
3992    }
3993    }
3994    {
3995#line 514
3996    printk("<3>IPMI poweroff: Unable to send chassis power down message, IPMI error 0x%x\n",
3997           rv);
3998    }
3999  } else {
4000
4001  }
4002#line 517
4003  return;
4004}
4005}
4006#line 527 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4007static struct poweroff_function poweroff_functions[4]  = {      {(char *)"ATCA", & ipmi_atca_detect, & ipmi_poweroff_atca}, 
4008        {(char *)"CPI1", & ipmi_cpi1_detect, & ipmi_poweroff_cpi1}, 
4009        {(char *)"chassis", & ipmi_dell_chassis_detect, & ipmi_poweroff_chassis}, 
4010        {(char *)"chassis", & ipmi_chassis_detect, & ipmi_poweroff_chassis}};
4011#line 548 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4012static void ipmi_poweroff_function(void) 
4013{ ipmi_user_t *__cil_tmp1 ;
4014  ipmi_user_t __cil_tmp2 ;
4015
4016  {
4017#line 550
4018  if (! ready) {
4019#line 551
4020    return;
4021  } else {
4022
4023  }
4024  {
4025#line 554
4026  __cil_tmp1 = & ipmi_user;
4027#line 554
4028  __cil_tmp2 = *__cil_tmp1;
4029#line 554
4030  (*specific_poweroff_func)(__cil_tmp2);
4031  }
4032#line 555
4033  return;
4034}
4035}
4036#line 559 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4037static void ipmi_po_new_smi(int if_num , struct device *device ) 
4038{ struct ipmi_system_interface_addr smi_addr ;
4039  struct kernel_ipmi_msg send_msg ;
4040  int rv ;
4041  int i ;
4042  int tmp___3 ;
4043  int *__cil_tmp8 ;
4044  int __cil_tmp9 ;
4045  int *__cil_tmp10 ;
4046  int __cil_tmp11 ;
4047  unsigned int __cil_tmp12 ;
4048  void *__cil_tmp13 ;
4049  struct ipmi_system_interface_addr *__cil_tmp14 ;
4050  unsigned long __cil_tmp15 ;
4051  unsigned long __cil_tmp16 ;
4052  struct kernel_ipmi_msg *__cil_tmp17 ;
4053  unsigned long __cil_tmp18 ;
4054  unsigned long __cil_tmp19 ;
4055  void *__cil_tmp20 ;
4056  unsigned long __cil_tmp21 ;
4057  ipmi_user_t *__cil_tmp22 ;
4058  ipmi_user_t __cil_tmp23 ;
4059  struct ipmi_addr *__cil_tmp24 ;
4060  unsigned long __cil_tmp25 ;
4061  unsigned long __cil_tmp26 ;
4062  unsigned short __cil_tmp27 ;
4063  int __cil_tmp28 ;
4064  unsigned long __cil_tmp29 ;
4065  unsigned long __cil_tmp30 ;
4066  unsigned short __cil_tmp31 ;
4067  int __cil_tmp32 ;
4068  unsigned int *__cil_tmp33 ;
4069  unsigned long __cil_tmp34 ;
4070  unsigned long __cil_tmp35 ;
4071  unsigned char *__cil_tmp36 ;
4072  unsigned char *__cil_tmp37 ;
4073  unsigned char __cil_tmp38 ;
4074  int __cil_tmp39 ;
4075  int __cil_tmp40 ;
4076  unsigned long __cil_tmp41 ;
4077  unsigned long __cil_tmp42 ;
4078  unsigned char *__cil_tmp43 ;
4079  unsigned char *__cil_tmp44 ;
4080  unsigned char __cil_tmp45 ;
4081  int __cil_tmp46 ;
4082  int __cil_tmp47 ;
4083  unsigned long __cil_tmp48 ;
4084  unsigned long __cil_tmp49 ;
4085  unsigned char *__cil_tmp50 ;
4086  unsigned char *__cil_tmp51 ;
4087  unsigned char __cil_tmp52 ;
4088  int __cil_tmp53 ;
4089  int __cil_tmp54 ;
4090  int __cil_tmp55 ;
4091  unsigned long __cil_tmp56 ;
4092  unsigned long __cil_tmp57 ;
4093  unsigned char *__cil_tmp58 ;
4094  unsigned char *__cil_tmp59 ;
4095  unsigned char __cil_tmp60 ;
4096  int __cil_tmp61 ;
4097  int __cil_tmp62 ;
4098  unsigned long __cil_tmp63 ;
4099  unsigned long __cil_tmp64 ;
4100  unsigned char *__cil_tmp65 ;
4101  unsigned char *__cil_tmp66 ;
4102  unsigned char __cil_tmp67 ;
4103  int __cil_tmp68 ;
4104  int __cil_tmp69 ;
4105  unsigned long __cil_tmp70 ;
4106  unsigned long __cil_tmp71 ;
4107  unsigned char *__cil_tmp72 ;
4108  unsigned char *__cil_tmp73 ;
4109  unsigned long __cil_tmp74 ;
4110  unsigned long __cil_tmp75 ;
4111  unsigned char *__cil_tmp76 ;
4112  unsigned char *__cil_tmp77 ;
4113  unsigned long __cil_tmp78 ;
4114  unsigned long __cil_tmp79 ;
4115  unsigned long __cil_tmp80 ;
4116  unsigned long __cil_tmp81 ;
4117  unsigned long __cil_tmp82 ;
4118  int (*__cil_tmp83)(ipmi_user_t user ) ;
4119  ipmi_user_t *__cil_tmp84 ;
4120  ipmi_user_t __cil_tmp85 ;
4121  ipmi_user_t *__cil_tmp86 ;
4122  ipmi_user_t __cil_tmp87 ;
4123  unsigned long __cil_tmp88 ;
4124  unsigned long __cil_tmp89 ;
4125  char *__cil_tmp90 ;
4126  unsigned long __cil_tmp91 ;
4127  unsigned long __cil_tmp92 ;
4128  unsigned long __cil_tmp93 ;
4129
4130  {
4131#line 566
4132  if (ready) {
4133#line 567
4134    return;
4135  } else {
4136
4137  }
4138  {
4139#line 569
4140  __cil_tmp8 = & ifnum_to_use;
4141#line 569
4142  __cil_tmp9 = *__cil_tmp8;
4143#line 569
4144  if (__cil_tmp9 >= 0) {
4145    {
4146#line 569
4147    __cil_tmp10 = & ifnum_to_use;
4148#line 569
4149    __cil_tmp11 = *__cil_tmp10;
4150#line 569
4151    if (__cil_tmp11 != if_num) {
4152#line 570
4153      return;
4154    } else {
4155
4156    }
4157    }
4158  } else {
4159
4160  }
4161  }
4162  {
4163#line 572
4164  __cil_tmp12 = (unsigned int )if_num;
4165#line 572
4166  __cil_tmp13 = (void *)0;
4167#line 572
4168  rv = ipmi_create_user(__cil_tmp12, & ipmi_poweroff_handler, __cil_tmp13, & ipmi_user);
4169  }
4170#line 574
4171  if (rv) {
4172    {
4173#line 575
4174    printk("<3>IPMI poweroff: could not create IPMI user, error %d\n", rv);
4175    }
4176#line 577
4177    return;
4178  } else {
4179
4180  }
4181  {
4182#line 580
4183  ipmi_ifnum = if_num;
4184#line 586
4185  __cil_tmp14 = & smi_addr;
4186#line 586
4187  *((int *)__cil_tmp14) = 12;
4188#line 587
4189  __cil_tmp15 = (unsigned long )(& smi_addr) + 4;
4190#line 587
4191  *((short *)__cil_tmp15) = (short)15;
4192#line 588
4193  __cil_tmp16 = (unsigned long )(& smi_addr) + 6;
4194#line 588
4195  *((unsigned char *)__cil_tmp16) = (unsigned char)0;
4196#line 590
4197  __cil_tmp17 = & send_msg;
4198#line 590
4199  *((unsigned char *)__cil_tmp17) = (unsigned char)6;
4200#line 591
4201  __cil_tmp18 = (unsigned long )(& send_msg) + 1;
4202#line 591
4203  *((unsigned char *)__cil_tmp18) = (unsigned char)1;
4204#line 592
4205  __cil_tmp19 = (unsigned long )(& send_msg) + 8;
4206#line 592
4207  __cil_tmp20 = (void *)0;
4208#line 592
4209  *((unsigned char **)__cil_tmp19) = (unsigned char *)__cil_tmp20;
4210#line 593
4211  __cil_tmp21 = (unsigned long )(& send_msg) + 2;
4212#line 593
4213  *((unsigned short *)__cil_tmp21) = (unsigned short)0;
4214#line 594
4215  __cil_tmp22 = & ipmi_user;
4216#line 594
4217  __cil_tmp23 = *__cil_tmp22;
4218#line 594
4219  __cil_tmp24 = (struct ipmi_addr *)(& smi_addr);
4220#line 594
4221  rv = ipmi_request_wait_for_response(__cil_tmp23, __cil_tmp24, & send_msg);
4222  }
4223#line 597
4224  if (rv) {
4225    {
4226#line 598
4227    printk("<3>IPMI poweroff: Unable to send IPMI get device id info, IPMI error 0x%x\n",
4228           rv);
4229    }
4230#line 600
4231    goto out_err;
4232  } else {
4233
4234  }
4235  {
4236#line 603
4237  __cil_tmp25 = 80 + 2;
4238#line 603
4239  __cil_tmp26 = (unsigned long )(& halt_recv_msg) + __cil_tmp25;
4240#line 603
4241  __cil_tmp27 = *((unsigned short *)__cil_tmp26);
4242#line 603
4243  __cil_tmp28 = (int )__cil_tmp27;
4244#line 603
4245  if (__cil_tmp28 < 12) {
4246    {
4247#line 604
4248    __cil_tmp29 = 80 + 2;
4249#line 604
4250    __cil_tmp30 = (unsigned long )(& halt_recv_msg) + __cil_tmp29;
4251#line 604
4252    __cil_tmp31 = *((unsigned short *)__cil_tmp30);
4253#line 604
4254    __cil_tmp32 = (int )__cil_tmp31;
4255#line 604
4256    printk("<3>IPMI poweroff: (chassis) IPMI get device id info too, short, was %d bytes, needed %d bytes\n",
4257           __cil_tmp32, 12);
4258    }
4259#line 607
4260    goto out_err;
4261  } else {
4262
4263  }
4264  }
4265#line 610
4266  __cil_tmp33 = & mfg_id;
4267#line 610
4268  __cil_tmp34 = 80 + 8;
4269#line 610
4270  __cil_tmp35 = (unsigned long )(& halt_recv_msg) + __cil_tmp34;
4271#line 610
4272  __cil_tmp36 = *((unsigned char **)__cil_tmp35);
4273#line 610
4274  __cil_tmp37 = __cil_tmp36 + 9;
4275#line 610
4276  __cil_tmp38 = *__cil_tmp37;
4277#line 610
4278  __cil_tmp39 = (int )__cil_tmp38;
4279#line 610
4280  __cil_tmp40 = __cil_tmp39 << 16;
4281#line 610
4282  __cil_tmp41 = 80 + 8;
4283#line 610
4284  __cil_tmp42 = (unsigned long )(& halt_recv_msg) + __cil_tmp41;
4285#line 610
4286  __cil_tmp43 = *((unsigned char **)__cil_tmp42);
4287#line 610
4288  __cil_tmp44 = __cil_tmp43 + 8;
4289#line 610
4290  __cil_tmp45 = *__cil_tmp44;
4291#line 610
4292  __cil_tmp46 = (int )__cil_tmp45;
4293#line 610
4294  __cil_tmp47 = __cil_tmp46 << 8;
4295#line 610
4296  __cil_tmp48 = 80 + 8;
4297#line 610
4298  __cil_tmp49 = (unsigned long )(& halt_recv_msg) + __cil_tmp48;
4299#line 610
4300  __cil_tmp50 = *((unsigned char **)__cil_tmp49);
4301#line 610
4302  __cil_tmp51 = __cil_tmp50 + 7;
4303#line 610
4304  __cil_tmp52 = *__cil_tmp51;
4305#line 610
4306  __cil_tmp53 = (int )__cil_tmp52;
4307#line 610
4308  __cil_tmp54 = __cil_tmp53 | __cil_tmp47;
4309#line 610
4310  __cil_tmp55 = __cil_tmp54 | __cil_tmp40;
4311#line 610
4312  *__cil_tmp33 = (unsigned int )__cil_tmp55;
4313#line 613
4314  __cil_tmp56 = 80 + 8;
4315#line 613
4316  __cil_tmp57 = (unsigned long )(& halt_recv_msg) + __cil_tmp56;
4317#line 613
4318  __cil_tmp58 = *((unsigned char **)__cil_tmp57);
4319#line 613
4320  __cil_tmp59 = __cil_tmp58 + 11;
4321#line 613
4322  __cil_tmp60 = *__cil_tmp59;
4323#line 613
4324  __cil_tmp61 = (int )__cil_tmp60;
4325#line 613
4326  __cil_tmp62 = __cil_tmp61 << 8;
4327#line 613
4328  __cil_tmp63 = 80 + 8;
4329#line 613
4330  __cil_tmp64 = (unsigned long )(& halt_recv_msg) + __cil_tmp63;
4331#line 613
4332  __cil_tmp65 = *((unsigned char **)__cil_tmp64);
4333#line 613
4334  __cil_tmp66 = __cil_tmp65 + 10;
4335#line 613
4336  __cil_tmp67 = *__cil_tmp66;
4337#line 613
4338  __cil_tmp68 = (int )__cil_tmp67;
4339#line 613
4340  __cil_tmp69 = __cil_tmp68 | __cil_tmp62;
4341#line 613
4342  prod_id = (unsigned int )__cil_tmp69;
4343#line 615
4344  __cil_tmp70 = 80 + 8;
4345#line 615
4346  __cil_tmp71 = (unsigned long )(& halt_recv_msg) + __cil_tmp70;
4347#line 615
4348  __cil_tmp72 = *((unsigned char **)__cil_tmp71);
4349#line 615
4350  __cil_tmp73 = __cil_tmp72 + 6;
4351#line 615
4352  capabilities = *__cil_tmp73;
4353#line 616
4354  __cil_tmp74 = 80 + 8;
4355#line 616
4356  __cil_tmp75 = (unsigned long )(& halt_recv_msg) + __cil_tmp74;
4357#line 616
4358  __cil_tmp76 = *((unsigned char **)__cil_tmp75);
4359#line 616
4360  __cil_tmp77 = __cil_tmp76 + 5;
4361#line 616
4362  ipmi_version = *__cil_tmp77;
4363#line 620
4364  i = 0;
4365  {
4366#line 620
4367  while (1) {
4368    while_continue: /* CIL Label */ ;
4369    {
4370#line 620
4371    __cil_tmp78 = 96UL / 24UL;
4372#line 620
4373    __cil_tmp79 = (unsigned long )i;
4374#line 620
4375    if (__cil_tmp79 < __cil_tmp78) {
4376
4377    } else {
4378#line 620
4379      goto while_break;
4380    }
4381    }
4382    {
4383#line 621
4384    __cil_tmp80 = i * 24UL;
4385#line 621
4386    __cil_tmp81 = __cil_tmp80 + 8;
4387#line 621
4388    __cil_tmp82 = (unsigned long )(poweroff_functions) + __cil_tmp81;
4389#line 621
4390    __cil_tmp83 = *((int (**)(ipmi_user_t user ))__cil_tmp82);
4391#line 621
4392    __cil_tmp84 = & ipmi_user;
4393#line 621
4394    __cil_tmp85 = *__cil_tmp84;
4395#line 621
4396    tmp___3 = (*__cil_tmp83)(__cil_tmp85);
4397    }
4398#line 621
4399    if (tmp___3) {
4400#line 622
4401      goto found;
4402    } else {
4403
4404    }
4405#line 620
4406    i = i + 1;
4407  }
4408  while_break: /* CIL Label */ ;
4409  }
4410  out_err: 
4411  {
4412#line 626
4413  printk("<3>IPMI poweroff: Unable to find a poweroff function that will work, giving up\n");
4414#line 628
4415  __cil_tmp86 = & ipmi_user;
4416#line 628
4417  __cil_tmp87 = *__cil_tmp86;
4418#line 628
4419  ipmi_destroy_user(__cil_tmp87);
4420  }
4421#line 629
4422  return;
4423  found: 
4424  {
4425#line 632
4426  __cil_tmp88 = i * 24UL;
4427#line 632
4428  __cil_tmp89 = (unsigned long )(poweroff_functions) + __cil_tmp88;
4429#line 632
4430  __cil_tmp90 = *((char **)__cil_tmp89);
4431#line 632
4432  printk("<6>IPMI poweroff: Found a %s style poweroff function\n", __cil_tmp90);
4433#line 634
4434  __cil_tmp91 = i * 24UL;
4435#line 634
4436  __cil_tmp92 = __cil_tmp91 + 16;
4437#line 634
4438  __cil_tmp93 = (unsigned long )(poweroff_functions) + __cil_tmp92;
4439#line 634
4440  specific_poweroff_func = *((void (**)(ipmi_user_t user ))__cil_tmp93);
4441#line 635
4442  old_poweroff_func = pm_power_off;
4443#line 636
4444  pm_power_off = & ipmi_poweroff_function;
4445#line 637
4446  ready = 1;
4447  }
4448#line 638
4449  return;
4450}
4451}
4452#line 640 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4453static void ipmi_po_smi_gone(int if_num ) 
4454{ ipmi_user_t *__cil_tmp2 ;
4455  ipmi_user_t __cil_tmp3 ;
4456
4457  {
4458#line 642
4459  if (! ready) {
4460#line 643
4461    return;
4462  } else {
4463
4464  }
4465#line 645
4466  if (ipmi_ifnum != if_num) {
4467#line 646
4468    return;
4469  } else {
4470
4471  }
4472  {
4473#line 648
4474  ready = 0;
4475#line 649
4476  __cil_tmp2 = & ipmi_user;
4477#line 649
4478  __cil_tmp3 = *__cil_tmp2;
4479#line 649
4480  ipmi_destroy_user(__cil_tmp3);
4481#line 650
4482  pm_power_off = old_poweroff_func;
4483  }
4484#line 651
4485  return;
4486}
4487}
4488#line 653 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4489static struct ipmi_smi_watcher smi_watcher  =    {{(struct list_head *)0, (struct list_head *)0}, & __this_module, & ipmi_po_new_smi,
4490    & ipmi_po_smi_gone};
4491#line 663 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4492static ctl_table ipmi_table[1]  = {      {"poweroff_powercycle", (void *)(& poweroff_powercycle), (int )sizeof(poweroff_powercycle),
4493      (umode_t )420, (struct ctl_table *)0, & proc_dointvec, (struct ctl_table_poll *)0,
4494      (void *)0, (void *)0}};
4495#line 672 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4496static ctl_table ipmi_dir_table[1]  = {      {"ipmi", (void *)0, 0, (umode_t )365, ipmi_table, (proc_handler *)0, (struct ctl_table_poll *)0,
4497      (void *)0, (void *)0}};
4498#line 679 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4499static ctl_table ipmi_root_table[1]  = {      {"dev", (void *)0, 0, (umode_t )365, ipmi_dir_table, (proc_handler *)0, (struct ctl_table_poll *)0,
4500      (void *)0, (void *)0}};
4501#line 686 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4502static struct ctl_table_header *ipmi_table_header  ;
4503#line 692
4504static int ipmi_poweroff_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
4505#line 692 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4506static int ipmi_poweroff_init(void) 
4507{ int rv ;
4508  int *__cil_tmp2 ;
4509  unsigned long __cil_tmp3 ;
4510  unsigned long __cil_tmp4 ;
4511  ctl_table *__cil_tmp5 ;
4512
4513  {
4514  {
4515#line 696
4516  printk("<6>Copyright (C) 2004 MontaVista Software - IPMI Powerdown via sys_reboot.\n");
4517  }
4518  {
4519#line 699
4520  __cil_tmp2 = & poweroff_powercycle;
4521#line 699
4522  if (*__cil_tmp2) {
4523    {
4524#line 700
4525    printk("<6>IPMI poweroff: Power cycle is enabled.\n");
4526    }
4527  } else {
4528
4529  }
4530  }
4531  {
4532#line 703
4533  __cil_tmp3 = 0 * 64UL;
4534#line 703
4535  __cil_tmp4 = (unsigned long )(ipmi_root_table) + __cil_tmp3;
4536#line 703
4537  __cil_tmp5 = (ctl_table *)__cil_tmp4;
4538#line 703
4539  ipmi_table_header = register_sysctl_table(__cil_tmp5);
4540  }
4541#line 704
4542  if (! ipmi_table_header) {
4543    {
4544#line 705
4545    printk("<3>IPMI poweroff: Unable to register powercycle sysctl\n");
4546#line 706
4547    rv = -12;
4548    }
4549#line 707
4550    goto out_err;
4551  } else {
4552
4553  }
4554  {
4555#line 711
4556  rv = ipmi_smi_watcher_register(& smi_watcher);
4557  }
4558#line 714
4559  if (rv) {
4560    {
4561#line 715
4562    unregister_sysctl_table(ipmi_table_header);
4563#line 716
4564    printk("<3>IPMI poweroff: Unable to register SMI watcher: %d\n", rv);
4565    }
4566#line 717
4567    goto out_err;
4568  } else {
4569
4570  }
4571  out_err: 
4572#line 722
4573  return (rv);
4574}
4575}
4576#line 726
4577static void ipmi_poweroff_cleanup(void)  __attribute__((__section__(".exit.text"),
4578__no_instrument_function__)) ;
4579#line 726 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4580static void ipmi_poweroff_cleanup(void) 
4581{ int rv ;
4582  ipmi_user_t *__cil_tmp2 ;
4583  ipmi_user_t __cil_tmp3 ;
4584
4585  {
4586  {
4587#line 731
4588  unregister_sysctl_table(ipmi_table_header);
4589#line 734
4590  ipmi_smi_watcher_unregister(& smi_watcher);
4591  }
4592#line 736
4593  if (ready) {
4594    {
4595#line 737
4596    __cil_tmp2 = & ipmi_user;
4597#line 737
4598    __cil_tmp3 = *__cil_tmp2;
4599#line 737
4600    rv = ipmi_destroy_user(__cil_tmp3);
4601    }
4602#line 738
4603    if (rv) {
4604      {
4605#line 739
4606      printk("<3>IPMI poweroff: could not cleanup the IPMI user: 0x%x\n", rv);
4607      }
4608    } else {
4609
4610    }
4611#line 741
4612    pm_power_off = old_poweroff_func;
4613  } else {
4614
4615  }
4616#line 743
4617  return;
4618}
4619}
4620#line 744 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4621void cleanup_module(void) 
4622{ 
4623
4624  {
4625  {
4626#line 744
4627  ipmi_poweroff_cleanup();
4628  }
4629#line 744
4630  return;
4631}
4632}
4633#line 747 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4634int init_module(void) 
4635{ int tmp___3 ;
4636
4637  {
4638  {
4639#line 747
4640  tmp___3 = ipmi_poweroff_init();
4641  }
4642#line 747
4643  return (tmp___3);
4644}
4645}
4646#line 748 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4647static char const   __mod_license748[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
4648__aligned__(1)))  = 
4649#line 748
4650  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
4651        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
4652        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
4653#line 749 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4654static char const   __mod_author749[42]  __attribute__((__used__, __unused__, __section__(".modinfo"),
4655__aligned__(1)))  = 
4656#line 749
4657  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
4658        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'C', 
4659        (char const   )'o',      (char const   )'r',      (char const   )'e',      (char const   )'y', 
4660        (char const   )' ',      (char const   )'M',      (char const   )'i',      (char const   )'n', 
4661        (char const   )'y',      (char const   )'a',      (char const   )'r',      (char const   )'d', 
4662        (char const   )' ',      (char const   )'<',      (char const   )'m',      (char const   )'i', 
4663        (char const   )'n',      (char const   )'y',      (char const   )'a',      (char const   )'r', 
4664        (char const   )'d',      (char const   )'@',      (char const   )'m',      (char const   )'v', 
4665        (char const   )'i',      (char const   )'s',      (char const   )'t',      (char const   )'a', 
4666        (char const   )'.',      (char const   )'c',      (char const   )'o',      (char const   )'m', 
4667        (char const   )'>',      (char const   )'\000'};
4668#line 750 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4669static char const   __mod_description750[50]  __attribute__((__used__, __unused__,
4670__section__(".modinfo"), __aligned__(1)))  = 
4671#line 750
4672  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
4673        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
4674        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
4675        (char const   )'I',      (char const   )'P',      (char const   )'M',      (char const   )'I', 
4676        (char const   )' ',      (char const   )'P',      (char const   )'o',      (char const   )'w', 
4677        (char const   )'e',      (char const   )'r',      (char const   )'o',      (char const   )'f', 
4678        (char const   )'f',      (char const   )' ',      (char const   )'e',      (char const   )'x', 
4679        (char const   )'t',      (char const   )'e',      (char const   )'n',      (char const   )'s', 
4680        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )' ', 
4681        (char const   )'t',      (char const   )'o',      (char const   )' ',      (char const   )'s', 
4682        (char const   )'y',      (char const   )'s',      (char const   )'_',      (char const   )'r', 
4683        (char const   )'e',      (char const   )'b',      (char const   )'o',      (char const   )'o', 
4684        (char const   )'t',      (char const   )'\000'};
4685#line 768
4686void ldv_check_final_state(void) ;
4687#line 774
4688extern void ldv_initialize(void) ;
4689#line 777
4690extern int __VERIFIER_nondet_int(void) ;
4691#line 780 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4692int LDV_IN_INTERRUPT  ;
4693#line 783 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
4694void main(void) 
4695{ struct ipmi_smi_msg *var_group1 ;
4696  struct ipmi_recv_msg *var_group2 ;
4697  void *var_receive_handler_3_p1 ;
4698  int var_ipmi_po_new_smi_15_p0 ;
4699  struct device *var_group3 ;
4700  int var_ipmi_po_smi_gone_16_p0 ;
4701  int tmp___3 ;
4702  int tmp___4 ;
4703  int tmp___5 ;
4704
4705  {
4706  {
4707#line 1025
4708  LDV_IN_INTERRUPT = 1;
4709#line 1034
4710  ldv_initialize();
4711#line 1070
4712  tmp___3 = ipmi_poweroff_init();
4713  }
4714#line 1070
4715  if (tmp___3) {
4716#line 1071
4717    goto ldv_final;
4718  } else {
4719
4720  }
4721  {
4722#line 1087
4723  while (1) {
4724    while_continue: /* CIL Label */ ;
4725    {
4726#line 1087
4727    tmp___5 = __VERIFIER_nondet_int();
4728    }
4729#line 1087
4730    if (tmp___5) {
4731
4732    } else {
4733#line 1087
4734      goto while_break;
4735    }
4736    {
4737#line 1090
4738    tmp___4 = __VERIFIER_nondet_int();
4739    }
4740#line 1092
4741    if (tmp___4 == 0) {
4742#line 1092
4743      goto case_0;
4744    } else
4745#line 1148
4746    if (tmp___4 == 1) {
4747#line 1148
4748      goto case_1;
4749    } else
4750#line 1204
4751    if (tmp___4 == 2) {
4752#line 1204
4753      goto case_2;
4754    } else
4755#line 1260
4756    if (tmp___4 == 3) {
4757#line 1260
4758      goto case_3;
4759    } else
4760#line 1316
4761    if (tmp___4 == 4) {
4762#line 1316
4763      goto case_4;
4764    } else {
4765      {
4766#line 1372
4767      goto switch_default;
4768#line 1090
4769      if (0) {
4770        case_0: /* CIL Label */ 
4771        {
4772#line 1104
4773        dummy_smi_free(var_group1);
4774        }
4775#line 1147
4776        goto switch_break;
4777        case_1: /* CIL Label */ 
4778        {
4779#line 1160
4780        dummy_recv_free(var_group2);
4781        }
4782#line 1203
4783        goto switch_break;
4784        case_2: /* CIL Label */ 
4785        {
4786#line 1216
4787        receive_handler(var_group2, var_receive_handler_3_p1);
4788        }
4789#line 1259
4790        goto switch_break;
4791        case_3: /* CIL Label */ 
4792        {
4793#line 1296
4794        ipmi_po_new_smi(var_ipmi_po_new_smi_15_p0, var_group3);
4795        }
4796#line 1315
4797        goto switch_break;
4798        case_4: /* CIL Label */ 
4799        {
4800#line 1352
4801        ipmi_po_smi_gone(var_ipmi_po_smi_gone_16_p0);
4802        }
4803#line 1371
4804        goto switch_break;
4805        switch_default: /* CIL Label */ 
4806#line 1372
4807        goto switch_break;
4808      } else {
4809        switch_break: /* CIL Label */ ;
4810      }
4811      }
4812    }
4813  }
4814  while_break: /* CIL Label */ ;
4815  }
4816  {
4817#line 1419
4818  ipmi_poweroff_cleanup();
4819  }
4820  ldv_final: 
4821  {
4822#line 1425
4823  ldv_check_final_state();
4824  }
4825#line 1428
4826  return;
4827}
4828}
4829#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
4830void ldv_blast_assert(void) 
4831{ 
4832
4833  {
4834  ERROR: 
4835#line 6
4836  goto ERROR;
4837}
4838}
4839#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
4840extern int __VERIFIER_nondet_int(void) ;
4841#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4842int ldv_mutex  =    1;
4843#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4844int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
4845{ int nondetermined ;
4846
4847  {
4848#line 29
4849  if (ldv_mutex == 1) {
4850
4851  } else {
4852    {
4853#line 29
4854    ldv_blast_assert();
4855    }
4856  }
4857  {
4858#line 32
4859  nondetermined = __VERIFIER_nondet_int();
4860  }
4861#line 35
4862  if (nondetermined) {
4863#line 38
4864    ldv_mutex = 2;
4865#line 40
4866    return (0);
4867  } else {
4868#line 45
4869    return (-4);
4870  }
4871}
4872}
4873#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4874int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
4875{ int nondetermined ;
4876
4877  {
4878#line 57
4879  if (ldv_mutex == 1) {
4880
4881  } else {
4882    {
4883#line 57
4884    ldv_blast_assert();
4885    }
4886  }
4887  {
4888#line 60
4889  nondetermined = __VERIFIER_nondet_int();
4890  }
4891#line 63
4892  if (nondetermined) {
4893#line 66
4894    ldv_mutex = 2;
4895#line 68
4896    return (0);
4897  } else {
4898#line 73
4899    return (-4);
4900  }
4901}
4902}
4903#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4904int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
4905{ int atomic_value_after_dec ;
4906
4907  {
4908#line 83
4909  if (ldv_mutex == 1) {
4910
4911  } else {
4912    {
4913#line 83
4914    ldv_blast_assert();
4915    }
4916  }
4917  {
4918#line 86
4919  atomic_value_after_dec = __VERIFIER_nondet_int();
4920  }
4921#line 89
4922  if (atomic_value_after_dec == 0) {
4923#line 92
4924    ldv_mutex = 2;
4925#line 94
4926    return (1);
4927  } else {
4928
4929  }
4930#line 98
4931  return (0);
4932}
4933}
4934#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4935void mutex_lock(struct mutex *lock ) 
4936{ 
4937
4938  {
4939#line 108
4940  if (ldv_mutex == 1) {
4941
4942  } else {
4943    {
4944#line 108
4945    ldv_blast_assert();
4946    }
4947  }
4948#line 110
4949  ldv_mutex = 2;
4950#line 111
4951  return;
4952}
4953}
4954#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4955int mutex_trylock(struct mutex *lock ) 
4956{ int nondetermined ;
4957
4958  {
4959#line 121
4960  if (ldv_mutex == 1) {
4961
4962  } else {
4963    {
4964#line 121
4965    ldv_blast_assert();
4966    }
4967  }
4968  {
4969#line 124
4970  nondetermined = __VERIFIER_nondet_int();
4971  }
4972#line 127
4973  if (nondetermined) {
4974#line 130
4975    ldv_mutex = 2;
4976#line 132
4977    return (1);
4978  } else {
4979#line 137
4980    return (0);
4981  }
4982}
4983}
4984#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4985void mutex_unlock(struct mutex *lock ) 
4986{ 
4987
4988  {
4989#line 147
4990  if (ldv_mutex == 2) {
4991
4992  } else {
4993    {
4994#line 147
4995    ldv_blast_assert();
4996    }
4997  }
4998#line 149
4999  ldv_mutex = 1;
5000#line 150
5001  return;
5002}
5003}
5004#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5005void ldv_check_final_state(void) 
5006{ 
5007
5008  {
5009#line 156
5010  if (ldv_mutex == 1) {
5011
5012  } else {
5013    {
5014#line 156
5015    ldv_blast_assert();
5016    }
5017  }
5018#line 157
5019  return;
5020}
5021}
5022#line 1437 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/16588/dscv_tempdir/dscv/ri/32_1/drivers/char/ipmi/ipmi_poweroff.c.common.c"
5023long s__builtin_expect(long val , long res ) 
5024{ 
5025
5026  {
5027#line 1438
5028  return (val);
5029}
5030}