Showing error 283

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--input--touchscreen--hampshire.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 3465
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 20 "include/asm-generic/int-ll64.h"
   7typedef unsigned char __u8;
   8#line 22 "include/asm-generic/int-ll64.h"
   9typedef short __s16;
  10#line 23 "include/asm-generic/int-ll64.h"
  11typedef unsigned short __u16;
  12#line 25 "include/asm-generic/int-ll64.h"
  13typedef int __s32;
  14#line 26 "include/asm-generic/int-ll64.h"
  15typedef unsigned int __u32;
  16#line 30 "include/asm-generic/int-ll64.h"
  17typedef unsigned long long __u64;
  18#line 43 "include/asm-generic/int-ll64.h"
  19typedef unsigned char u8;
  20#line 45 "include/asm-generic/int-ll64.h"
  21typedef short s16;
  22#line 46 "include/asm-generic/int-ll64.h"
  23typedef unsigned short u16;
  24#line 48 "include/asm-generic/int-ll64.h"
  25typedef int s32;
  26#line 49 "include/asm-generic/int-ll64.h"
  27typedef unsigned int u32;
  28#line 51 "include/asm-generic/int-ll64.h"
  29typedef long long s64;
  30#line 52 "include/asm-generic/int-ll64.h"
  31typedef unsigned long long u64;
  32#line 14 "include/asm-generic/posix_types.h"
  33typedef long __kernel_long_t;
  34#line 15 "include/asm-generic/posix_types.h"
  35typedef unsigned long __kernel_ulong_t;
  36#line 52 "include/asm-generic/posix_types.h"
  37typedef unsigned int __kernel_uid32_t;
  38#line 53 "include/asm-generic/posix_types.h"
  39typedef unsigned int __kernel_gid32_t;
  40#line 75 "include/asm-generic/posix_types.h"
  41typedef __kernel_ulong_t __kernel_size_t;
  42#line 76 "include/asm-generic/posix_types.h"
  43typedef __kernel_long_t __kernel_ssize_t;
  44#line 91 "include/asm-generic/posix_types.h"
  45typedef long long __kernel_loff_t;
  46#line 92 "include/asm-generic/posix_types.h"
  47typedef __kernel_long_t __kernel_time_t;
  48#line 21 "include/linux/types.h"
  49typedef __u32 __kernel_dev_t;
  50#line 24 "include/linux/types.h"
  51typedef __kernel_dev_t dev_t;
  52#line 27 "include/linux/types.h"
  53typedef unsigned short umode_t;
  54#line 38 "include/linux/types.h"
  55typedef _Bool bool;
  56#line 40 "include/linux/types.h"
  57typedef __kernel_uid32_t uid_t;
  58#line 41 "include/linux/types.h"
  59typedef __kernel_gid32_t gid_t;
  60#line 54 "include/linux/types.h"
  61typedef __kernel_loff_t loff_t;
  62#line 63 "include/linux/types.h"
  63typedef __kernel_size_t size_t;
  64#line 68 "include/linux/types.h"
  65typedef __kernel_ssize_t ssize_t;
  66#line 78 "include/linux/types.h"
  67typedef __kernel_time_t time_t;
  68#line 142 "include/linux/types.h"
  69typedef unsigned long sector_t;
  70#line 143 "include/linux/types.h"
  71typedef unsigned long blkcnt_t;
  72#line 202 "include/linux/types.h"
  73typedef unsigned int gfp_t;
  74#line 203 "include/linux/types.h"
  75typedef unsigned int fmode_t;
  76#line 219 "include/linux/types.h"
  77struct __anonstruct_atomic_t_7 {
  78   int counter ;
  79};
  80#line 219 "include/linux/types.h"
  81typedef struct __anonstruct_atomic_t_7 atomic_t;
  82#line 224 "include/linux/types.h"
  83struct __anonstruct_atomic64_t_8 {
  84   long counter ;
  85};
  86#line 224 "include/linux/types.h"
  87typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  88#line 229 "include/linux/types.h"
  89struct list_head {
  90   struct list_head *next ;
  91   struct list_head *prev ;
  92};
  93#line 233
  94struct hlist_node;
  95#line 233 "include/linux/types.h"
  96struct hlist_head {
  97   struct hlist_node *first ;
  98};
  99#line 237 "include/linux/types.h"
 100struct hlist_node {
 101   struct hlist_node *next ;
 102   struct hlist_node **pprev ;
 103};
 104#line 253 "include/linux/types.h"
 105struct rcu_head {
 106   struct rcu_head *next ;
 107   void (*func)(struct rcu_head *head ) ;
 108};
 109#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 110struct module;
 111#line 56
 112struct module;
 113#line 146 "include/linux/init.h"
 114typedef void (*ctor_fn_t)(void);
 115#line 9 "include/linux/dynamic_debug.h"
 116struct _ddebug {
 117   char const   *modname ;
 118   char const   *function ;
 119   char const   *filename ;
 120   char const   *format ;
 121   unsigned int lineno : 18 ;
 122   unsigned int flags : 8 ;
 123} __attribute__((__aligned__(8))) ;
 124#line 47
 125struct device;
 126#line 47
 127struct device;
 128#line 135 "include/linux/kernel.h"
 129struct completion;
 130#line 135
 131struct completion;
 132#line 349
 133struct pid;
 134#line 349
 135struct pid;
 136#line 12 "include/linux/thread_info.h"
 137struct timespec;
 138#line 12
 139struct timespec;
 140#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
 141struct page;
 142#line 18
 143struct page;
 144#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 145struct task_struct;
 146#line 20
 147struct task_struct;
 148#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 149struct task_struct;
 150#line 295 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 151struct file;
 152#line 295
 153struct file;
 154#line 313
 155struct seq_file;
 156#line 313
 157struct seq_file;
 158#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 159struct page;
 160#line 52
 161struct task_struct;
 162#line 329
 163struct arch_spinlock;
 164#line 329
 165struct arch_spinlock;
 166#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 167struct task_struct;
 168#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 169struct task_struct;
 170#line 10 "include/asm-generic/bug.h"
 171struct bug_entry {
 172   int bug_addr_disp ;
 173   int file_disp ;
 174   unsigned short line ;
 175   unsigned short flags ;
 176};
 177#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 178struct static_key;
 179#line 234
 180struct static_key;
 181#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 182struct kmem_cache;
 183#line 23 "include/asm-generic/atomic-long.h"
 184typedef atomic64_t atomic_long_t;
 185#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 186typedef u16 __ticket_t;
 187#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 188typedef u32 __ticketpair_t;
 189#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 190struct __raw_tickets {
 191   __ticket_t head ;
 192   __ticket_t tail ;
 193};
 194#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 195union __anonunion____missing_field_name_36 {
 196   __ticketpair_t head_tail ;
 197   struct __raw_tickets tickets ;
 198};
 199#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 200struct arch_spinlock {
 201   union __anonunion____missing_field_name_36 __annonCompField17 ;
 202};
 203#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 204typedef struct arch_spinlock arch_spinlock_t;
 205#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 206struct __anonstruct____missing_field_name_38 {
 207   u32 read ;
 208   s32 write ;
 209};
 210#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 211union __anonunion_arch_rwlock_t_37 {
 212   s64 lock ;
 213   struct __anonstruct____missing_field_name_38 __annonCompField18 ;
 214};
 215#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 216typedef union __anonunion_arch_rwlock_t_37 arch_rwlock_t;
 217#line 12 "include/linux/lockdep.h"
 218struct task_struct;
 219#line 391 "include/linux/lockdep.h"
 220struct lock_class_key {
 221
 222};
 223#line 20 "include/linux/spinlock_types.h"
 224struct raw_spinlock {
 225   arch_spinlock_t raw_lock ;
 226   unsigned int magic ;
 227   unsigned int owner_cpu ;
 228   void *owner ;
 229};
 230#line 20 "include/linux/spinlock_types.h"
 231typedef struct raw_spinlock raw_spinlock_t;
 232#line 64 "include/linux/spinlock_types.h"
 233union __anonunion____missing_field_name_39 {
 234   struct raw_spinlock rlock ;
 235};
 236#line 64 "include/linux/spinlock_types.h"
 237struct spinlock {
 238   union __anonunion____missing_field_name_39 __annonCompField19 ;
 239};
 240#line 64 "include/linux/spinlock_types.h"
 241typedef struct spinlock spinlock_t;
 242#line 11 "include/linux/rwlock_types.h"
 243struct __anonstruct_rwlock_t_40 {
 244   arch_rwlock_t raw_lock ;
 245   unsigned int magic ;
 246   unsigned int owner_cpu ;
 247   void *owner ;
 248};
 249#line 11 "include/linux/rwlock_types.h"
 250typedef struct __anonstruct_rwlock_t_40 rwlock_t;
 251#line 119 "include/linux/seqlock.h"
 252struct seqcount {
 253   unsigned int sequence ;
 254};
 255#line 119 "include/linux/seqlock.h"
 256typedef struct seqcount seqcount_t;
 257#line 14 "include/linux/time.h"
 258struct timespec {
 259   __kernel_time_t tv_sec ;
 260   long tv_nsec ;
 261};
 262#line 62 "include/linux/stat.h"
 263struct kstat {
 264   u64 ino ;
 265   dev_t dev ;
 266   umode_t mode ;
 267   unsigned int nlink ;
 268   uid_t uid ;
 269   gid_t gid ;
 270   dev_t rdev ;
 271   loff_t size ;
 272   struct timespec atime ;
 273   struct timespec mtime ;
 274   struct timespec ctime ;
 275   unsigned long blksize ;
 276   unsigned long long blocks ;
 277};
 278#line 49 "include/linux/wait.h"
 279struct __wait_queue_head {
 280   spinlock_t lock ;
 281   struct list_head task_list ;
 282};
 283#line 53 "include/linux/wait.h"
 284typedef struct __wait_queue_head wait_queue_head_t;
 285#line 55
 286struct task_struct;
 287#line 60 "include/linux/pageblock-flags.h"
 288struct page;
 289#line 48 "include/linux/mutex.h"
 290struct mutex {
 291   atomic_t count ;
 292   spinlock_t wait_lock ;
 293   struct list_head wait_list ;
 294   struct task_struct *owner ;
 295   char const   *name ;
 296   void *magic ;
 297};
 298#line 19 "include/linux/rwsem.h"
 299struct rw_semaphore;
 300#line 19
 301struct rw_semaphore;
 302#line 25 "include/linux/rwsem.h"
 303struct rw_semaphore {
 304   long count ;
 305   raw_spinlock_t wait_lock ;
 306   struct list_head wait_list ;
 307};
 308#line 25 "include/linux/completion.h"
 309struct completion {
 310   unsigned int done ;
 311   wait_queue_head_t wait ;
 312};
 313#line 9 "include/linux/memory_hotplug.h"
 314struct page;
 315#line 202 "include/linux/ioport.h"
 316struct device;
 317#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
 318struct device;
 319#line 46 "include/linux/ktime.h"
 320union ktime {
 321   s64 tv64 ;
 322};
 323#line 59 "include/linux/ktime.h"
 324typedef union ktime ktime_t;
 325#line 10 "include/linux/timer.h"
 326struct tvec_base;
 327#line 10
 328struct tvec_base;
 329#line 12 "include/linux/timer.h"
 330struct timer_list {
 331   struct list_head entry ;
 332   unsigned long expires ;
 333   struct tvec_base *base ;
 334   void (*function)(unsigned long  ) ;
 335   unsigned long data ;
 336   int slack ;
 337   int start_pid ;
 338   void *start_site ;
 339   char start_comm[16] ;
 340};
 341#line 17 "include/linux/workqueue.h"
 342struct work_struct;
 343#line 17
 344struct work_struct;
 345#line 79 "include/linux/workqueue.h"
 346struct work_struct {
 347   atomic_long_t data ;
 348   struct list_head entry ;
 349   void (*func)(struct work_struct *work ) ;
 350};
 351#line 42 "include/linux/pm.h"
 352struct device;
 353#line 50 "include/linux/pm.h"
 354struct pm_message {
 355   int event ;
 356};
 357#line 50 "include/linux/pm.h"
 358typedef struct pm_message pm_message_t;
 359#line 264 "include/linux/pm.h"
 360struct dev_pm_ops {
 361   int (*prepare)(struct device *dev ) ;
 362   void (*complete)(struct device *dev ) ;
 363   int (*suspend)(struct device *dev ) ;
 364   int (*resume)(struct device *dev ) ;
 365   int (*freeze)(struct device *dev ) ;
 366   int (*thaw)(struct device *dev ) ;
 367   int (*poweroff)(struct device *dev ) ;
 368   int (*restore)(struct device *dev ) ;
 369   int (*suspend_late)(struct device *dev ) ;
 370   int (*resume_early)(struct device *dev ) ;
 371   int (*freeze_late)(struct device *dev ) ;
 372   int (*thaw_early)(struct device *dev ) ;
 373   int (*poweroff_late)(struct device *dev ) ;
 374   int (*restore_early)(struct device *dev ) ;
 375   int (*suspend_noirq)(struct device *dev ) ;
 376   int (*resume_noirq)(struct device *dev ) ;
 377   int (*freeze_noirq)(struct device *dev ) ;
 378   int (*thaw_noirq)(struct device *dev ) ;
 379   int (*poweroff_noirq)(struct device *dev ) ;
 380   int (*restore_noirq)(struct device *dev ) ;
 381   int (*runtime_suspend)(struct device *dev ) ;
 382   int (*runtime_resume)(struct device *dev ) ;
 383   int (*runtime_idle)(struct device *dev ) ;
 384};
 385#line 458
 386enum rpm_status {
 387    RPM_ACTIVE = 0,
 388    RPM_RESUMING = 1,
 389    RPM_SUSPENDED = 2,
 390    RPM_SUSPENDING = 3
 391} ;
 392#line 480
 393enum rpm_request {
 394    RPM_REQ_NONE = 0,
 395    RPM_REQ_IDLE = 1,
 396    RPM_REQ_SUSPEND = 2,
 397    RPM_REQ_AUTOSUSPEND = 3,
 398    RPM_REQ_RESUME = 4
 399} ;
 400#line 488
 401struct wakeup_source;
 402#line 488
 403struct wakeup_source;
 404#line 495 "include/linux/pm.h"
 405struct pm_subsys_data {
 406   spinlock_t lock ;
 407   unsigned int refcount ;
 408};
 409#line 506
 410struct dev_pm_qos_request;
 411#line 506
 412struct pm_qos_constraints;
 413#line 506 "include/linux/pm.h"
 414struct dev_pm_info {
 415   pm_message_t power_state ;
 416   unsigned int can_wakeup : 1 ;
 417   unsigned int async_suspend : 1 ;
 418   bool is_prepared : 1 ;
 419   bool is_suspended : 1 ;
 420   bool ignore_children : 1 ;
 421   spinlock_t lock ;
 422   struct list_head entry ;
 423   struct completion completion ;
 424   struct wakeup_source *wakeup ;
 425   bool wakeup_path : 1 ;
 426   struct timer_list suspend_timer ;
 427   unsigned long timer_expires ;
 428   struct work_struct work ;
 429   wait_queue_head_t wait_queue ;
 430   atomic_t usage_count ;
 431   atomic_t child_count ;
 432   unsigned int disable_depth : 3 ;
 433   unsigned int idle_notification : 1 ;
 434   unsigned int request_pending : 1 ;
 435   unsigned int deferred_resume : 1 ;
 436   unsigned int run_wake : 1 ;
 437   unsigned int runtime_auto : 1 ;
 438   unsigned int no_callbacks : 1 ;
 439   unsigned int irq_safe : 1 ;
 440   unsigned int use_autosuspend : 1 ;
 441   unsigned int timer_autosuspends : 1 ;
 442   enum rpm_request request ;
 443   enum rpm_status runtime_status ;
 444   int runtime_error ;
 445   int autosuspend_delay ;
 446   unsigned long last_busy ;
 447   unsigned long active_jiffies ;
 448   unsigned long suspended_jiffies ;
 449   unsigned long accounting_timestamp ;
 450   ktime_t suspend_time ;
 451   s64 max_time_suspended_ns ;
 452   struct dev_pm_qos_request *pq_req ;
 453   struct pm_subsys_data *subsys_data ;
 454   struct pm_qos_constraints *constraints ;
 455};
 456#line 564 "include/linux/pm.h"
 457struct dev_pm_domain {
 458   struct dev_pm_ops ops ;
 459};
 460#line 8 "include/linux/vmalloc.h"
 461struct vm_area_struct;
 462#line 8
 463struct vm_area_struct;
 464#line 994 "include/linux/mmzone.h"
 465struct page;
 466#line 10 "include/linux/gfp.h"
 467struct vm_area_struct;
 468#line 29 "include/linux/sysctl.h"
 469struct completion;
 470#line 48 "include/linux/kmod.h"
 471struct cred;
 472#line 48
 473struct cred;
 474#line 49
 475struct file;
 476#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 477struct task_struct;
 478#line 18 "include/linux/elf.h"
 479typedef __u64 Elf64_Addr;
 480#line 19 "include/linux/elf.h"
 481typedef __u16 Elf64_Half;
 482#line 23 "include/linux/elf.h"
 483typedef __u32 Elf64_Word;
 484#line 24 "include/linux/elf.h"
 485typedef __u64 Elf64_Xword;
 486#line 194 "include/linux/elf.h"
 487struct elf64_sym {
 488   Elf64_Word st_name ;
 489   unsigned char st_info ;
 490   unsigned char st_other ;
 491   Elf64_Half st_shndx ;
 492   Elf64_Addr st_value ;
 493   Elf64_Xword st_size ;
 494};
 495#line 194 "include/linux/elf.h"
 496typedef struct elf64_sym Elf64_Sym;
 497#line 438
 498struct file;
 499#line 20 "include/linux/kobject_ns.h"
 500struct sock;
 501#line 20
 502struct sock;
 503#line 21
 504struct kobject;
 505#line 21
 506struct kobject;
 507#line 27
 508enum kobj_ns_type {
 509    KOBJ_NS_TYPE_NONE = 0,
 510    KOBJ_NS_TYPE_NET = 1,
 511    KOBJ_NS_TYPES = 2
 512} ;
 513#line 40 "include/linux/kobject_ns.h"
 514struct kobj_ns_type_operations {
 515   enum kobj_ns_type type ;
 516   void *(*grab_current_ns)(void) ;
 517   void const   *(*netlink_ns)(struct sock *sk ) ;
 518   void const   *(*initial_ns)(void) ;
 519   void (*drop_ns)(void * ) ;
 520};
 521#line 22 "include/linux/sysfs.h"
 522struct kobject;
 523#line 23
 524struct module;
 525#line 24
 526enum kobj_ns_type;
 527#line 26 "include/linux/sysfs.h"
 528struct attribute {
 529   char const   *name ;
 530   umode_t mode ;
 531};
 532#line 56 "include/linux/sysfs.h"
 533struct attribute_group {
 534   char const   *name ;
 535   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 536   struct attribute **attrs ;
 537};
 538#line 85
 539struct file;
 540#line 86
 541struct vm_area_struct;
 542#line 88 "include/linux/sysfs.h"
 543struct bin_attribute {
 544   struct attribute attr ;
 545   size_t size ;
 546   void *private ;
 547   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 548                   loff_t  , size_t  ) ;
 549   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 550                    loff_t  , size_t  ) ;
 551   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 552};
 553#line 112 "include/linux/sysfs.h"
 554struct sysfs_ops {
 555   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 556   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 557   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 558};
 559#line 118
 560struct sysfs_dirent;
 561#line 118
 562struct sysfs_dirent;
 563#line 22 "include/linux/kref.h"
 564struct kref {
 565   atomic_t refcount ;
 566};
 567#line 60 "include/linux/kobject.h"
 568struct kset;
 569#line 60
 570struct kobj_type;
 571#line 60 "include/linux/kobject.h"
 572struct kobject {
 573   char const   *name ;
 574   struct list_head entry ;
 575   struct kobject *parent ;
 576   struct kset *kset ;
 577   struct kobj_type *ktype ;
 578   struct sysfs_dirent *sd ;
 579   struct kref kref ;
 580   unsigned int state_initialized : 1 ;
 581   unsigned int state_in_sysfs : 1 ;
 582   unsigned int state_add_uevent_sent : 1 ;
 583   unsigned int state_remove_uevent_sent : 1 ;
 584   unsigned int uevent_suppress : 1 ;
 585};
 586#line 108 "include/linux/kobject.h"
 587struct kobj_type {
 588   void (*release)(struct kobject *kobj ) ;
 589   struct sysfs_ops  const  *sysfs_ops ;
 590   struct attribute **default_attrs ;
 591   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 592   void const   *(*namespace)(struct kobject *kobj ) ;
 593};
 594#line 116 "include/linux/kobject.h"
 595struct kobj_uevent_env {
 596   char *envp[32] ;
 597   int envp_idx ;
 598   char buf[2048] ;
 599   int buflen ;
 600};
 601#line 123 "include/linux/kobject.h"
 602struct kset_uevent_ops {
 603   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 604   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 605   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 606};
 607#line 140
 608struct sock;
 609#line 159 "include/linux/kobject.h"
 610struct kset {
 611   struct list_head list ;
 612   spinlock_t list_lock ;
 613   struct kobject kobj ;
 614   struct kset_uevent_ops  const  *uevent_ops ;
 615};
 616#line 39 "include/linux/moduleparam.h"
 617struct kernel_param;
 618#line 39
 619struct kernel_param;
 620#line 41 "include/linux/moduleparam.h"
 621struct kernel_param_ops {
 622   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 623   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 624   void (*free)(void *arg ) ;
 625};
 626#line 50
 627struct kparam_string;
 628#line 50
 629struct kparam_array;
 630#line 50 "include/linux/moduleparam.h"
 631union __anonunion____missing_field_name_199 {
 632   void *arg ;
 633   struct kparam_string  const  *str ;
 634   struct kparam_array  const  *arr ;
 635};
 636#line 50 "include/linux/moduleparam.h"
 637struct kernel_param {
 638   char const   *name ;
 639   struct kernel_param_ops  const  *ops ;
 640   u16 perm ;
 641   s16 level ;
 642   union __anonunion____missing_field_name_199 __annonCompField32 ;
 643};
 644#line 63 "include/linux/moduleparam.h"
 645struct kparam_string {
 646   unsigned int maxlen ;
 647   char *string ;
 648};
 649#line 69 "include/linux/moduleparam.h"
 650struct kparam_array {
 651   unsigned int max ;
 652   unsigned int elemsize ;
 653   unsigned int *num ;
 654   struct kernel_param_ops  const  *ops ;
 655   void *elem ;
 656};
 657#line 445
 658struct module;
 659#line 80 "include/linux/jump_label.h"
 660struct module;
 661#line 143 "include/linux/jump_label.h"
 662struct static_key {
 663   atomic_t enabled ;
 664};
 665#line 22 "include/linux/tracepoint.h"
 666struct module;
 667#line 23
 668struct tracepoint;
 669#line 23
 670struct tracepoint;
 671#line 25 "include/linux/tracepoint.h"
 672struct tracepoint_func {
 673   void *func ;
 674   void *data ;
 675};
 676#line 30 "include/linux/tracepoint.h"
 677struct tracepoint {
 678   char const   *name ;
 679   struct static_key key ;
 680   void (*regfunc)(void) ;
 681   void (*unregfunc)(void) ;
 682   struct tracepoint_func *funcs ;
 683};
 684#line 19 "include/linux/export.h"
 685struct kernel_symbol {
 686   unsigned long value ;
 687   char const   *name ;
 688};
 689#line 8 "include/asm-generic/module.h"
 690struct mod_arch_specific {
 691
 692};
 693#line 35 "include/linux/module.h"
 694struct module;
 695#line 37
 696struct module_param_attrs;
 697#line 37 "include/linux/module.h"
 698struct module_kobject {
 699   struct kobject kobj ;
 700   struct module *mod ;
 701   struct kobject *drivers_dir ;
 702   struct module_param_attrs *mp ;
 703};
 704#line 44 "include/linux/module.h"
 705struct module_attribute {
 706   struct attribute attr ;
 707   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 708   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 709                    size_t count ) ;
 710   void (*setup)(struct module * , char const   * ) ;
 711   int (*test)(struct module * ) ;
 712   void (*free)(struct module * ) ;
 713};
 714#line 71
 715struct exception_table_entry;
 716#line 71
 717struct exception_table_entry;
 718#line 199
 719enum module_state {
 720    MODULE_STATE_LIVE = 0,
 721    MODULE_STATE_COMING = 1,
 722    MODULE_STATE_GOING = 2
 723} ;
 724#line 215 "include/linux/module.h"
 725struct module_ref {
 726   unsigned long incs ;
 727   unsigned long decs ;
 728} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 729#line 220
 730struct module_sect_attrs;
 731#line 220
 732struct module_notes_attrs;
 733#line 220
 734struct ftrace_event_call;
 735#line 220 "include/linux/module.h"
 736struct module {
 737   enum module_state state ;
 738   struct list_head list ;
 739   char name[64UL - sizeof(unsigned long )] ;
 740   struct module_kobject mkobj ;
 741   struct module_attribute *modinfo_attrs ;
 742   char const   *version ;
 743   char const   *srcversion ;
 744   struct kobject *holders_dir ;
 745   struct kernel_symbol  const  *syms ;
 746   unsigned long const   *crcs ;
 747   unsigned int num_syms ;
 748   struct kernel_param *kp ;
 749   unsigned int num_kp ;
 750   unsigned int num_gpl_syms ;
 751   struct kernel_symbol  const  *gpl_syms ;
 752   unsigned long const   *gpl_crcs ;
 753   struct kernel_symbol  const  *unused_syms ;
 754   unsigned long const   *unused_crcs ;
 755   unsigned int num_unused_syms ;
 756   unsigned int num_unused_gpl_syms ;
 757   struct kernel_symbol  const  *unused_gpl_syms ;
 758   unsigned long const   *unused_gpl_crcs ;
 759   struct kernel_symbol  const  *gpl_future_syms ;
 760   unsigned long const   *gpl_future_crcs ;
 761   unsigned int num_gpl_future_syms ;
 762   unsigned int num_exentries ;
 763   struct exception_table_entry *extable ;
 764   int (*init)(void) ;
 765   void *module_init ;
 766   void *module_core ;
 767   unsigned int init_size ;
 768   unsigned int core_size ;
 769   unsigned int init_text_size ;
 770   unsigned int core_text_size ;
 771   unsigned int init_ro_size ;
 772   unsigned int core_ro_size ;
 773   struct mod_arch_specific arch ;
 774   unsigned int taints ;
 775   unsigned int num_bugs ;
 776   struct list_head bug_list ;
 777   struct bug_entry *bug_table ;
 778   Elf64_Sym *symtab ;
 779   Elf64_Sym *core_symtab ;
 780   unsigned int num_symtab ;
 781   unsigned int core_num_syms ;
 782   char *strtab ;
 783   char *core_strtab ;
 784   struct module_sect_attrs *sect_attrs ;
 785   struct module_notes_attrs *notes_attrs ;
 786   char *args ;
 787   void *percpu ;
 788   unsigned int percpu_size ;
 789   unsigned int num_tracepoints ;
 790   struct tracepoint * const  *tracepoints_ptrs ;
 791   unsigned int num_trace_bprintk_fmt ;
 792   char const   **trace_bprintk_fmt_start ;
 793   struct ftrace_event_call **trace_events ;
 794   unsigned int num_trace_events ;
 795   struct list_head source_list ;
 796   struct list_head target_list ;
 797   struct task_struct *waiter ;
 798   void (*exit)(void) ;
 799   struct module_ref *refptr ;
 800   ctor_fn_t *ctors ;
 801   unsigned int num_ctors ;
 802};
 803#line 46 "include/linux/slub_def.h"
 804struct kmem_cache_cpu {
 805   void **freelist ;
 806   unsigned long tid ;
 807   struct page *page ;
 808   struct page *partial ;
 809   int node ;
 810   unsigned int stat[26] ;
 811};
 812#line 57 "include/linux/slub_def.h"
 813struct kmem_cache_node {
 814   spinlock_t list_lock ;
 815   unsigned long nr_partial ;
 816   struct list_head partial ;
 817   atomic_long_t nr_slabs ;
 818   atomic_long_t total_objects ;
 819   struct list_head full ;
 820};
 821#line 73 "include/linux/slub_def.h"
 822struct kmem_cache_order_objects {
 823   unsigned long x ;
 824};
 825#line 80 "include/linux/slub_def.h"
 826struct kmem_cache {
 827   struct kmem_cache_cpu *cpu_slab ;
 828   unsigned long flags ;
 829   unsigned long min_partial ;
 830   int size ;
 831   int objsize ;
 832   int offset ;
 833   int cpu_partial ;
 834   struct kmem_cache_order_objects oo ;
 835   struct kmem_cache_order_objects max ;
 836   struct kmem_cache_order_objects min ;
 837   gfp_t allocflags ;
 838   int refcount ;
 839   void (*ctor)(void * ) ;
 840   int inuse ;
 841   int align ;
 842   int reserved ;
 843   char const   *name ;
 844   struct list_head list ;
 845   struct kobject kobj ;
 846   int remote_node_defrag_ratio ;
 847   struct kmem_cache_node *node[1 << 10] ;
 848};
 849#line 43 "include/linux/input.h"
 850struct input_id {
 851   __u16 bustype ;
 852   __u16 vendor ;
 853   __u16 product ;
 854   __u16 version ;
 855};
 856#line 69 "include/linux/input.h"
 857struct input_absinfo {
 858   __s32 value ;
 859   __s32 minimum ;
 860   __s32 maximum ;
 861   __s32 fuzz ;
 862   __s32 flat ;
 863   __s32 resolution ;
 864};
 865#line 93 "include/linux/input.h"
 866struct input_keymap_entry {
 867   __u8 flags ;
 868   __u8 len ;
 869   __u16 index ;
 870   __u32 keycode ;
 871   __u8 scancode[32] ;
 872};
 873#line 957 "include/linux/input.h"
 874struct ff_replay {
 875   __u16 length ;
 876   __u16 delay ;
 877};
 878#line 967 "include/linux/input.h"
 879struct ff_trigger {
 880   __u16 button ;
 881   __u16 interval ;
 882};
 883#line 984 "include/linux/input.h"
 884struct ff_envelope {
 885   __u16 attack_length ;
 886   __u16 attack_level ;
 887   __u16 fade_length ;
 888   __u16 fade_level ;
 889};
 890#line 996 "include/linux/input.h"
 891struct ff_constant_effect {
 892   __s16 level ;
 893   struct ff_envelope envelope ;
 894};
 895#line 1007 "include/linux/input.h"
 896struct ff_ramp_effect {
 897   __s16 start_level ;
 898   __s16 end_level ;
 899   struct ff_envelope envelope ;
 900};
 901#line 1023 "include/linux/input.h"
 902struct ff_condition_effect {
 903   __u16 right_saturation ;
 904   __u16 left_saturation ;
 905   __s16 right_coeff ;
 906   __s16 left_coeff ;
 907   __u16 deadband ;
 908   __s16 center ;
 909};
 910#line 1052 "include/linux/input.h"
 911struct ff_periodic_effect {
 912   __u16 waveform ;
 913   __u16 period ;
 914   __s16 magnitude ;
 915   __s16 offset ;
 916   __u16 phase ;
 917   struct ff_envelope envelope ;
 918   __u32 custom_len ;
 919   __s16 *custom_data ;
 920};
 921#line 1073 "include/linux/input.h"
 922struct ff_rumble_effect {
 923   __u16 strong_magnitude ;
 924   __u16 weak_magnitude ;
 925};
 926#line 1101 "include/linux/input.h"
 927union __anonunion_u_201 {
 928   struct ff_constant_effect constant ;
 929   struct ff_ramp_effect ramp ;
 930   struct ff_periodic_effect periodic ;
 931   struct ff_condition_effect condition[2] ;
 932   struct ff_rumble_effect rumble ;
 933};
 934#line 1101 "include/linux/input.h"
 935struct ff_effect {
 936   __u16 type ;
 937   __s16 id ;
 938   __u16 direction ;
 939   struct ff_trigger trigger ;
 940   struct ff_replay replay ;
 941   union __anonunion_u_201 u ;
 942};
 943#line 19 "include/linux/klist.h"
 944struct klist_node;
 945#line 19
 946struct klist_node;
 947#line 39 "include/linux/klist.h"
 948struct klist_node {
 949   void *n_klist ;
 950   struct list_head n_node ;
 951   struct kref n_ref ;
 952};
 953#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 954struct dma_map_ops;
 955#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 956struct dev_archdata {
 957   void *acpi_handle ;
 958   struct dma_map_ops *dma_ops ;
 959   void *iommu ;
 960};
 961#line 28 "include/linux/device.h"
 962struct device;
 963#line 29
 964struct device_private;
 965#line 29
 966struct device_private;
 967#line 30
 968struct device_driver;
 969#line 30
 970struct device_driver;
 971#line 31
 972struct driver_private;
 973#line 31
 974struct driver_private;
 975#line 32
 976struct module;
 977#line 33
 978struct class;
 979#line 33
 980struct class;
 981#line 34
 982struct subsys_private;
 983#line 34
 984struct subsys_private;
 985#line 35
 986struct bus_type;
 987#line 35
 988struct bus_type;
 989#line 36
 990struct device_node;
 991#line 36
 992struct device_node;
 993#line 37
 994struct iommu_ops;
 995#line 37
 996struct iommu_ops;
 997#line 39 "include/linux/device.h"
 998struct bus_attribute {
 999   struct attribute attr ;
1000   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1001   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
1002};
1003#line 89
1004struct device_attribute;
1005#line 89
1006struct driver_attribute;
1007#line 89 "include/linux/device.h"
1008struct bus_type {
1009   char const   *name ;
1010   char const   *dev_name ;
1011   struct device *dev_root ;
1012   struct bus_attribute *bus_attrs ;
1013   struct device_attribute *dev_attrs ;
1014   struct driver_attribute *drv_attrs ;
1015   int (*match)(struct device *dev , struct device_driver *drv ) ;
1016   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1017   int (*probe)(struct device *dev ) ;
1018   int (*remove)(struct device *dev ) ;
1019   void (*shutdown)(struct device *dev ) ;
1020   int (*suspend)(struct device *dev , pm_message_t state ) ;
1021   int (*resume)(struct device *dev ) ;
1022   struct dev_pm_ops  const  *pm ;
1023   struct iommu_ops *iommu_ops ;
1024   struct subsys_private *p ;
1025};
1026#line 127
1027struct device_type;
1028#line 214
1029struct of_device_id;
1030#line 214 "include/linux/device.h"
1031struct device_driver {
1032   char const   *name ;
1033   struct bus_type *bus ;
1034   struct module *owner ;
1035   char const   *mod_name ;
1036   bool suppress_bind_attrs ;
1037   struct of_device_id  const  *of_match_table ;
1038   int (*probe)(struct device *dev ) ;
1039   int (*remove)(struct device *dev ) ;
1040   void (*shutdown)(struct device *dev ) ;
1041   int (*suspend)(struct device *dev , pm_message_t state ) ;
1042   int (*resume)(struct device *dev ) ;
1043   struct attribute_group  const  **groups ;
1044   struct dev_pm_ops  const  *pm ;
1045   struct driver_private *p ;
1046};
1047#line 249 "include/linux/device.h"
1048struct driver_attribute {
1049   struct attribute attr ;
1050   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1051   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
1052};
1053#line 330
1054struct class_attribute;
1055#line 330 "include/linux/device.h"
1056struct class {
1057   char const   *name ;
1058   struct module *owner ;
1059   struct class_attribute *class_attrs ;
1060   struct device_attribute *dev_attrs ;
1061   struct bin_attribute *dev_bin_attrs ;
1062   struct kobject *dev_kobj ;
1063   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1064   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1065   void (*class_release)(struct class *class ) ;
1066   void (*dev_release)(struct device *dev ) ;
1067   int (*suspend)(struct device *dev , pm_message_t state ) ;
1068   int (*resume)(struct device *dev ) ;
1069   struct kobj_ns_type_operations  const  *ns_type ;
1070   void const   *(*namespace)(struct device *dev ) ;
1071   struct dev_pm_ops  const  *pm ;
1072   struct subsys_private *p ;
1073};
1074#line 397 "include/linux/device.h"
1075struct class_attribute {
1076   struct attribute attr ;
1077   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1078   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
1079                    size_t count ) ;
1080   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
1081};
1082#line 465 "include/linux/device.h"
1083struct device_type {
1084   char const   *name ;
1085   struct attribute_group  const  **groups ;
1086   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1087   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1088   void (*release)(struct device *dev ) ;
1089   struct dev_pm_ops  const  *pm ;
1090};
1091#line 476 "include/linux/device.h"
1092struct device_attribute {
1093   struct attribute attr ;
1094   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1095   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
1096                    size_t count ) ;
1097};
1098#line 559 "include/linux/device.h"
1099struct device_dma_parameters {
1100   unsigned int max_segment_size ;
1101   unsigned long segment_boundary_mask ;
1102};
1103#line 627
1104struct dma_coherent_mem;
1105#line 627 "include/linux/device.h"
1106struct device {
1107   struct device *parent ;
1108   struct device_private *p ;
1109   struct kobject kobj ;
1110   char const   *init_name ;
1111   struct device_type  const  *type ;
1112   struct mutex mutex ;
1113   struct bus_type *bus ;
1114   struct device_driver *driver ;
1115   void *platform_data ;
1116   struct dev_pm_info power ;
1117   struct dev_pm_domain *pm_domain ;
1118   int numa_node ;
1119   u64 *dma_mask ;
1120   u64 coherent_dma_mask ;
1121   struct device_dma_parameters *dma_parms ;
1122   struct list_head dma_pools ;
1123   struct dma_coherent_mem *dma_mem ;
1124   struct dev_archdata archdata ;
1125   struct device_node *of_node ;
1126   dev_t devt ;
1127   u32 id ;
1128   spinlock_t devres_lock ;
1129   struct list_head devres_head ;
1130   struct klist_node knode_class ;
1131   struct class *class ;
1132   struct attribute_group  const  **groups ;
1133   void (*release)(struct device *dev ) ;
1134};
1135#line 43 "include/linux/pm_wakeup.h"
1136struct wakeup_source {
1137   char const   *name ;
1138   struct list_head entry ;
1139   spinlock_t lock ;
1140   struct timer_list timer ;
1141   unsigned long timer_expires ;
1142   ktime_t total_time ;
1143   ktime_t max_time ;
1144   ktime_t last_time ;
1145   unsigned long event_count ;
1146   unsigned long active_count ;
1147   unsigned long relax_count ;
1148   unsigned long hit_count ;
1149   unsigned int active : 1 ;
1150};
1151#line 15 "include/linux/blk_types.h"
1152struct page;
1153#line 16
1154struct block_device;
1155#line 16
1156struct block_device;
1157#line 33 "include/linux/list_bl.h"
1158struct hlist_bl_node;
1159#line 33 "include/linux/list_bl.h"
1160struct hlist_bl_head {
1161   struct hlist_bl_node *first ;
1162};
1163#line 37 "include/linux/list_bl.h"
1164struct hlist_bl_node {
1165   struct hlist_bl_node *next ;
1166   struct hlist_bl_node **pprev ;
1167};
1168#line 13 "include/linux/dcache.h"
1169struct nameidata;
1170#line 13
1171struct nameidata;
1172#line 14
1173struct path;
1174#line 14
1175struct path;
1176#line 15
1177struct vfsmount;
1178#line 15
1179struct vfsmount;
1180#line 35 "include/linux/dcache.h"
1181struct qstr {
1182   unsigned int hash ;
1183   unsigned int len ;
1184   unsigned char const   *name ;
1185};
1186#line 88
1187struct inode;
1188#line 88
1189struct dentry_operations;
1190#line 88
1191struct super_block;
1192#line 88 "include/linux/dcache.h"
1193union __anonunion_d_u_202 {
1194   struct list_head d_child ;
1195   struct rcu_head d_rcu ;
1196};
1197#line 88 "include/linux/dcache.h"
1198struct dentry {
1199   unsigned int d_flags ;
1200   seqcount_t d_seq ;
1201   struct hlist_bl_node d_hash ;
1202   struct dentry *d_parent ;
1203   struct qstr d_name ;
1204   struct inode *d_inode ;
1205   unsigned char d_iname[32] ;
1206   unsigned int d_count ;
1207   spinlock_t d_lock ;
1208   struct dentry_operations  const  *d_op ;
1209   struct super_block *d_sb ;
1210   unsigned long d_time ;
1211   void *d_fsdata ;
1212   struct list_head d_lru ;
1213   union __anonunion_d_u_202 d_u ;
1214   struct list_head d_subdirs ;
1215   struct list_head d_alias ;
1216};
1217#line 131 "include/linux/dcache.h"
1218struct dentry_operations {
1219   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1220   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
1221   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
1222                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
1223   int (*d_delete)(struct dentry  const  * ) ;
1224   void (*d_release)(struct dentry * ) ;
1225   void (*d_prune)(struct dentry * ) ;
1226   void (*d_iput)(struct dentry * , struct inode * ) ;
1227   char *(*d_dname)(struct dentry * , char * , int  ) ;
1228   struct vfsmount *(*d_automount)(struct path * ) ;
1229   int (*d_manage)(struct dentry * , bool  ) ;
1230} __attribute__((__aligned__((1) <<  (6) ))) ;
1231#line 4 "include/linux/path.h"
1232struct dentry;
1233#line 5
1234struct vfsmount;
1235#line 7 "include/linux/path.h"
1236struct path {
1237   struct vfsmount *mnt ;
1238   struct dentry *dentry ;
1239};
1240#line 64 "include/linux/radix-tree.h"
1241struct radix_tree_node;
1242#line 64 "include/linux/radix-tree.h"
1243struct radix_tree_root {
1244   unsigned int height ;
1245   gfp_t gfp_mask ;
1246   struct radix_tree_node *rnode ;
1247};
1248#line 14 "include/linux/prio_tree.h"
1249struct prio_tree_node;
1250#line 20 "include/linux/prio_tree.h"
1251struct prio_tree_node {
1252   struct prio_tree_node *left ;
1253   struct prio_tree_node *right ;
1254   struct prio_tree_node *parent ;
1255   unsigned long start ;
1256   unsigned long last ;
1257};
1258#line 28 "include/linux/prio_tree.h"
1259struct prio_tree_root {
1260   struct prio_tree_node *prio_tree_node ;
1261   unsigned short index_bits ;
1262   unsigned short raw ;
1263};
1264#line 6 "include/linux/pid.h"
1265enum pid_type {
1266    PIDTYPE_PID = 0,
1267    PIDTYPE_PGID = 1,
1268    PIDTYPE_SID = 2,
1269    PIDTYPE_MAX = 3
1270} ;
1271#line 50
1272struct pid_namespace;
1273#line 50 "include/linux/pid.h"
1274struct upid {
1275   int nr ;
1276   struct pid_namespace *ns ;
1277   struct hlist_node pid_chain ;
1278};
1279#line 57 "include/linux/pid.h"
1280struct pid {
1281   atomic_t count ;
1282   unsigned int level ;
1283   struct hlist_head tasks[3] ;
1284   struct rcu_head rcu ;
1285   struct upid numbers[1] ;
1286};
1287#line 100
1288struct pid_namespace;
1289#line 18 "include/linux/capability.h"
1290struct task_struct;
1291#line 377
1292struct dentry;
1293#line 16 "include/linux/fiemap.h"
1294struct fiemap_extent {
1295   __u64 fe_logical ;
1296   __u64 fe_physical ;
1297   __u64 fe_length ;
1298   __u64 fe_reserved64[2] ;
1299   __u32 fe_flags ;
1300   __u32 fe_reserved[3] ;
1301};
1302#line 8 "include/linux/shrinker.h"
1303struct shrink_control {
1304   gfp_t gfp_mask ;
1305   unsigned long nr_to_scan ;
1306};
1307#line 31 "include/linux/shrinker.h"
1308struct shrinker {
1309   int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
1310   int seeks ;
1311   long batch ;
1312   struct list_head list ;
1313   atomic_long_t nr_in_batch ;
1314};
1315#line 10 "include/linux/migrate_mode.h"
1316enum migrate_mode {
1317    MIGRATE_ASYNC = 0,
1318    MIGRATE_SYNC_LIGHT = 1,
1319    MIGRATE_SYNC = 2
1320} ;
1321#line 408 "include/linux/fs.h"
1322struct export_operations;
1323#line 408
1324struct export_operations;
1325#line 410
1326struct iovec;
1327#line 410
1328struct iovec;
1329#line 411
1330struct nameidata;
1331#line 412
1332struct kiocb;
1333#line 412
1334struct kiocb;
1335#line 413
1336struct kobject;
1337#line 414
1338struct pipe_inode_info;
1339#line 414
1340struct pipe_inode_info;
1341#line 415
1342struct poll_table_struct;
1343#line 415
1344struct poll_table_struct;
1345#line 416
1346struct kstatfs;
1347#line 416
1348struct kstatfs;
1349#line 417
1350struct vm_area_struct;
1351#line 418
1352struct vfsmount;
1353#line 419
1354struct cred;
1355#line 469 "include/linux/fs.h"
1356struct iattr {
1357   unsigned int ia_valid ;
1358   umode_t ia_mode ;
1359   uid_t ia_uid ;
1360   gid_t ia_gid ;
1361   loff_t ia_size ;
1362   struct timespec ia_atime ;
1363   struct timespec ia_mtime ;
1364   struct timespec ia_ctime ;
1365   struct file *ia_file ;
1366};
1367#line 129 "include/linux/quota.h"
1368struct if_dqinfo {
1369   __u64 dqi_bgrace ;
1370   __u64 dqi_igrace ;
1371   __u32 dqi_flags ;
1372   __u32 dqi_valid ;
1373};
1374#line 50 "include/linux/dqblk_xfs.h"
1375struct fs_disk_quota {
1376   __s8 d_version ;
1377   __s8 d_flags ;
1378   __u16 d_fieldmask ;
1379   __u32 d_id ;
1380   __u64 d_blk_hardlimit ;
1381   __u64 d_blk_softlimit ;
1382   __u64 d_ino_hardlimit ;
1383   __u64 d_ino_softlimit ;
1384   __u64 d_bcount ;
1385   __u64 d_icount ;
1386   __s32 d_itimer ;
1387   __s32 d_btimer ;
1388   __u16 d_iwarns ;
1389   __u16 d_bwarns ;
1390   __s32 d_padding2 ;
1391   __u64 d_rtb_hardlimit ;
1392   __u64 d_rtb_softlimit ;
1393   __u64 d_rtbcount ;
1394   __s32 d_rtbtimer ;
1395   __u16 d_rtbwarns ;
1396   __s16 d_padding3 ;
1397   char d_padding4[8] ;
1398};
1399#line 146 "include/linux/dqblk_xfs.h"
1400struct fs_qfilestat {
1401   __u64 qfs_ino ;
1402   __u64 qfs_nblks ;
1403   __u32 qfs_nextents ;
1404};
1405#line 146 "include/linux/dqblk_xfs.h"
1406typedef struct fs_qfilestat fs_qfilestat_t;
1407#line 152 "include/linux/dqblk_xfs.h"
1408struct fs_quota_stat {
1409   __s8 qs_version ;
1410   __u16 qs_flags ;
1411   __s8 qs_pad ;
1412   fs_qfilestat_t qs_uquota ;
1413   fs_qfilestat_t qs_gquota ;
1414   __u32 qs_incoredqs ;
1415   __s32 qs_btimelimit ;
1416   __s32 qs_itimelimit ;
1417   __s32 qs_rtbtimelimit ;
1418   __u16 qs_bwarnlimit ;
1419   __u16 qs_iwarnlimit ;
1420};
1421#line 17 "include/linux/dqblk_qtree.h"
1422struct dquot;
1423#line 17
1424struct dquot;
1425#line 185 "include/linux/quota.h"
1426typedef __kernel_uid32_t qid_t;
1427#line 186 "include/linux/quota.h"
1428typedef long long qsize_t;
1429#line 200 "include/linux/quota.h"
1430struct mem_dqblk {
1431   qsize_t dqb_bhardlimit ;
1432   qsize_t dqb_bsoftlimit ;
1433   qsize_t dqb_curspace ;
1434   qsize_t dqb_rsvspace ;
1435   qsize_t dqb_ihardlimit ;
1436   qsize_t dqb_isoftlimit ;
1437   qsize_t dqb_curinodes ;
1438   time_t dqb_btime ;
1439   time_t dqb_itime ;
1440};
1441#line 215
1442struct quota_format_type;
1443#line 215
1444struct quota_format_type;
1445#line 217 "include/linux/quota.h"
1446struct mem_dqinfo {
1447   struct quota_format_type *dqi_format ;
1448   int dqi_fmt_id ;
1449   struct list_head dqi_dirty_list ;
1450   unsigned long dqi_flags ;
1451   unsigned int dqi_bgrace ;
1452   unsigned int dqi_igrace ;
1453   qsize_t dqi_maxblimit ;
1454   qsize_t dqi_maxilimit ;
1455   void *dqi_priv ;
1456};
1457#line 230
1458struct super_block;
1459#line 288 "include/linux/quota.h"
1460struct dquot {
1461   struct hlist_node dq_hash ;
1462   struct list_head dq_inuse ;
1463   struct list_head dq_free ;
1464   struct list_head dq_dirty ;
1465   struct mutex dq_lock ;
1466   atomic_t dq_count ;
1467   wait_queue_head_t dq_wait_unused ;
1468   struct super_block *dq_sb ;
1469   unsigned int dq_id ;
1470   loff_t dq_off ;
1471   unsigned long dq_flags ;
1472   short dq_type ;
1473   struct mem_dqblk dq_dqb ;
1474};
1475#line 305 "include/linux/quota.h"
1476struct quota_format_ops {
1477   int (*check_quota_file)(struct super_block *sb , int type ) ;
1478   int (*read_file_info)(struct super_block *sb , int type ) ;
1479   int (*write_file_info)(struct super_block *sb , int type ) ;
1480   int (*free_file_info)(struct super_block *sb , int type ) ;
1481   int (*read_dqblk)(struct dquot *dquot ) ;
1482   int (*commit_dqblk)(struct dquot *dquot ) ;
1483   int (*release_dqblk)(struct dquot *dquot ) ;
1484};
1485#line 316 "include/linux/quota.h"
1486struct dquot_operations {
1487   int (*write_dquot)(struct dquot * ) ;
1488   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
1489   void (*destroy_dquot)(struct dquot * ) ;
1490   int (*acquire_dquot)(struct dquot * ) ;
1491   int (*release_dquot)(struct dquot * ) ;
1492   int (*mark_dirty)(struct dquot * ) ;
1493   int (*write_info)(struct super_block * , int  ) ;
1494   qsize_t *(*get_reserved_space)(struct inode * ) ;
1495};
1496#line 329
1497struct path;
1498#line 332 "include/linux/quota.h"
1499struct quotactl_ops {
1500   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
1501   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
1502   int (*quota_off)(struct super_block * , int  ) ;
1503   int (*quota_sync)(struct super_block * , int  , int  ) ;
1504   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1505   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1506   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1507   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1508   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1509   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
1510};
1511#line 345 "include/linux/quota.h"
1512struct quota_format_type {
1513   int qf_fmt_id ;
1514   struct quota_format_ops  const  *qf_ops ;
1515   struct module *qf_owner ;
1516   struct quota_format_type *qf_next ;
1517};
1518#line 399 "include/linux/quota.h"
1519struct quota_info {
1520   unsigned int flags ;
1521   struct mutex dqio_mutex ;
1522   struct mutex dqonoff_mutex ;
1523   struct rw_semaphore dqptr_sem ;
1524   struct inode *files[2] ;
1525   struct mem_dqinfo info[2] ;
1526   struct quota_format_ops  const  *ops[2] ;
1527};
1528#line 532 "include/linux/fs.h"
1529struct page;
1530#line 533
1531struct address_space;
1532#line 533
1533struct address_space;
1534#line 534
1535struct writeback_control;
1536#line 534
1537struct writeback_control;
1538#line 577 "include/linux/fs.h"
1539union __anonunion_arg_210 {
1540   char *buf ;
1541   void *data ;
1542};
1543#line 577 "include/linux/fs.h"
1544struct __anonstruct_read_descriptor_t_209 {
1545   size_t written ;
1546   size_t count ;
1547   union __anonunion_arg_210 arg ;
1548   int error ;
1549};
1550#line 577 "include/linux/fs.h"
1551typedef struct __anonstruct_read_descriptor_t_209 read_descriptor_t;
1552#line 590 "include/linux/fs.h"
1553struct address_space_operations {
1554   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
1555   int (*readpage)(struct file * , struct page * ) ;
1556   int (*writepages)(struct address_space * , struct writeback_control * ) ;
1557   int (*set_page_dirty)(struct page *page ) ;
1558   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
1559                    unsigned int nr_pages ) ;
1560   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
1561                      unsigned int len , unsigned int flags , struct page **pagep ,
1562                      void **fsdata ) ;
1563   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
1564                    unsigned int copied , struct page *page , void *fsdata ) ;
1565   sector_t (*bmap)(struct address_space * , sector_t  ) ;
1566   void (*invalidatepage)(struct page * , unsigned long  ) ;
1567   int (*releasepage)(struct page * , gfp_t  ) ;
1568   void (*freepage)(struct page * ) ;
1569   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  *iov , loff_t offset ,
1570                        unsigned long nr_segs ) ;
1571   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
1572   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
1573   int (*launder_page)(struct page * ) ;
1574   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
1575   int (*error_remove_page)(struct address_space * , struct page * ) ;
1576};
1577#line 645
1578struct backing_dev_info;
1579#line 645
1580struct backing_dev_info;
1581#line 646 "include/linux/fs.h"
1582struct address_space {
1583   struct inode *host ;
1584   struct radix_tree_root page_tree ;
1585   spinlock_t tree_lock ;
1586   unsigned int i_mmap_writable ;
1587   struct prio_tree_root i_mmap ;
1588   struct list_head i_mmap_nonlinear ;
1589   struct mutex i_mmap_mutex ;
1590   unsigned long nrpages ;
1591   unsigned long writeback_index ;
1592   struct address_space_operations  const  *a_ops ;
1593   unsigned long flags ;
1594   struct backing_dev_info *backing_dev_info ;
1595   spinlock_t private_lock ;
1596   struct list_head private_list ;
1597   struct address_space *assoc_mapping ;
1598} __attribute__((__aligned__(sizeof(long )))) ;
1599#line 669
1600struct request_queue;
1601#line 669
1602struct request_queue;
1603#line 671
1604struct hd_struct;
1605#line 671
1606struct gendisk;
1607#line 671 "include/linux/fs.h"
1608struct block_device {
1609   dev_t bd_dev ;
1610   int bd_openers ;
1611   struct inode *bd_inode ;
1612   struct super_block *bd_super ;
1613   struct mutex bd_mutex ;
1614   struct list_head bd_inodes ;
1615   void *bd_claiming ;
1616   void *bd_holder ;
1617   int bd_holders ;
1618   bool bd_write_holder ;
1619   struct list_head bd_holder_disks ;
1620   struct block_device *bd_contains ;
1621   unsigned int bd_block_size ;
1622   struct hd_struct *bd_part ;
1623   unsigned int bd_part_count ;
1624   int bd_invalidated ;
1625   struct gendisk *bd_disk ;
1626   struct request_queue *bd_queue ;
1627   struct list_head bd_list ;
1628   unsigned long bd_private ;
1629   int bd_fsfreeze_count ;
1630   struct mutex bd_fsfreeze_mutex ;
1631};
1632#line 749
1633struct posix_acl;
1634#line 749
1635struct posix_acl;
1636#line 761
1637struct inode_operations;
1638#line 761 "include/linux/fs.h"
1639union __anonunion____missing_field_name_211 {
1640   unsigned int const   i_nlink ;
1641   unsigned int __i_nlink ;
1642};
1643#line 761 "include/linux/fs.h"
1644union __anonunion____missing_field_name_212 {
1645   struct list_head i_dentry ;
1646   struct rcu_head i_rcu ;
1647};
1648#line 761
1649struct file_operations;
1650#line 761
1651struct file_lock;
1652#line 761
1653struct cdev;
1654#line 761 "include/linux/fs.h"
1655union __anonunion____missing_field_name_213 {
1656   struct pipe_inode_info *i_pipe ;
1657   struct block_device *i_bdev ;
1658   struct cdev *i_cdev ;
1659};
1660#line 761 "include/linux/fs.h"
1661struct inode {
1662   umode_t i_mode ;
1663   unsigned short i_opflags ;
1664   uid_t i_uid ;
1665   gid_t i_gid ;
1666   unsigned int i_flags ;
1667   struct posix_acl *i_acl ;
1668   struct posix_acl *i_default_acl ;
1669   struct inode_operations  const  *i_op ;
1670   struct super_block *i_sb ;
1671   struct address_space *i_mapping ;
1672   void *i_security ;
1673   unsigned long i_ino ;
1674   union __anonunion____missing_field_name_211 __annonCompField33 ;
1675   dev_t i_rdev ;
1676   struct timespec i_atime ;
1677   struct timespec i_mtime ;
1678   struct timespec i_ctime ;
1679   spinlock_t i_lock ;
1680   unsigned short i_bytes ;
1681   blkcnt_t i_blocks ;
1682   loff_t i_size ;
1683   unsigned long i_state ;
1684   struct mutex i_mutex ;
1685   unsigned long dirtied_when ;
1686   struct hlist_node i_hash ;
1687   struct list_head i_wb_list ;
1688   struct list_head i_lru ;
1689   struct list_head i_sb_list ;
1690   union __anonunion____missing_field_name_212 __annonCompField34 ;
1691   atomic_t i_count ;
1692   unsigned int i_blkbits ;
1693   u64 i_version ;
1694   atomic_t i_dio_count ;
1695   atomic_t i_writecount ;
1696   struct file_operations  const  *i_fop ;
1697   struct file_lock *i_flock ;
1698   struct address_space i_data ;
1699   struct dquot *i_dquot[2] ;
1700   struct list_head i_devices ;
1701   union __anonunion____missing_field_name_213 __annonCompField35 ;
1702   __u32 i_generation ;
1703   __u32 i_fsnotify_mask ;
1704   struct hlist_head i_fsnotify_marks ;
1705   atomic_t i_readcount ;
1706   void *i_private ;
1707};
1708#line 942 "include/linux/fs.h"
1709struct fown_struct {
1710   rwlock_t lock ;
1711   struct pid *pid ;
1712   enum pid_type pid_type ;
1713   uid_t uid ;
1714   uid_t euid ;
1715   int signum ;
1716};
1717#line 953 "include/linux/fs.h"
1718struct file_ra_state {
1719   unsigned long start ;
1720   unsigned int size ;
1721   unsigned int async_size ;
1722   unsigned int ra_pages ;
1723   unsigned int mmap_miss ;
1724   loff_t prev_pos ;
1725};
1726#line 976 "include/linux/fs.h"
1727union __anonunion_f_u_214 {
1728   struct list_head fu_list ;
1729   struct rcu_head fu_rcuhead ;
1730};
1731#line 976 "include/linux/fs.h"
1732struct file {
1733   union __anonunion_f_u_214 f_u ;
1734   struct path f_path ;
1735   struct file_operations  const  *f_op ;
1736   spinlock_t f_lock ;
1737   int f_sb_list_cpu ;
1738   atomic_long_t f_count ;
1739   unsigned int f_flags ;
1740   fmode_t f_mode ;
1741   loff_t f_pos ;
1742   struct fown_struct f_owner ;
1743   struct cred  const  *f_cred ;
1744   struct file_ra_state f_ra ;
1745   u64 f_version ;
1746   void *f_security ;
1747   void *private_data ;
1748   struct list_head f_ep_links ;
1749   struct list_head f_tfile_llink ;
1750   struct address_space *f_mapping ;
1751   unsigned long f_mnt_write_state ;
1752};
1753#line 1111
1754struct files_struct;
1755#line 1111 "include/linux/fs.h"
1756typedef struct files_struct *fl_owner_t;
1757#line 1113 "include/linux/fs.h"
1758struct file_lock_operations {
1759   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1760   void (*fl_release_private)(struct file_lock * ) ;
1761};
1762#line 1118 "include/linux/fs.h"
1763struct lock_manager_operations {
1764   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1765   void (*lm_notify)(struct file_lock * ) ;
1766   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
1767   void (*lm_release_private)(struct file_lock * ) ;
1768   void (*lm_break)(struct file_lock * ) ;
1769   int (*lm_change)(struct file_lock ** , int  ) ;
1770};
1771#line 4 "include/linux/nfs_fs_i.h"
1772struct nlm_lockowner;
1773#line 4
1774struct nlm_lockowner;
1775#line 9 "include/linux/nfs_fs_i.h"
1776struct nfs_lock_info {
1777   u32 state ;
1778   struct nlm_lockowner *owner ;
1779   struct list_head list ;
1780};
1781#line 15
1782struct nfs4_lock_state;
1783#line 15
1784struct nfs4_lock_state;
1785#line 16 "include/linux/nfs_fs_i.h"
1786struct nfs4_lock_info {
1787   struct nfs4_lock_state *owner ;
1788};
1789#line 1138 "include/linux/fs.h"
1790struct fasync_struct;
1791#line 1138 "include/linux/fs.h"
1792struct __anonstruct_afs_216 {
1793   struct list_head link ;
1794   int state ;
1795};
1796#line 1138 "include/linux/fs.h"
1797union __anonunion_fl_u_215 {
1798   struct nfs_lock_info nfs_fl ;
1799   struct nfs4_lock_info nfs4_fl ;
1800   struct __anonstruct_afs_216 afs ;
1801};
1802#line 1138 "include/linux/fs.h"
1803struct file_lock {
1804   struct file_lock *fl_next ;
1805   struct list_head fl_link ;
1806   struct list_head fl_block ;
1807   fl_owner_t fl_owner ;
1808   unsigned int fl_flags ;
1809   unsigned char fl_type ;
1810   unsigned int fl_pid ;
1811   struct pid *fl_nspid ;
1812   wait_queue_head_t fl_wait ;
1813   struct file *fl_file ;
1814   loff_t fl_start ;
1815   loff_t fl_end ;
1816   struct fasync_struct *fl_fasync ;
1817   unsigned long fl_break_time ;
1818   unsigned long fl_downgrade_time ;
1819   struct file_lock_operations  const  *fl_ops ;
1820   struct lock_manager_operations  const  *fl_lmops ;
1821   union __anonunion_fl_u_215 fl_u ;
1822};
1823#line 1378 "include/linux/fs.h"
1824struct fasync_struct {
1825   spinlock_t fa_lock ;
1826   int magic ;
1827   int fa_fd ;
1828   struct fasync_struct *fa_next ;
1829   struct file *fa_file ;
1830   struct rcu_head fa_rcu ;
1831};
1832#line 1418
1833struct file_system_type;
1834#line 1418
1835struct super_operations;
1836#line 1418
1837struct xattr_handler;
1838#line 1418
1839struct mtd_info;
1840#line 1418 "include/linux/fs.h"
1841struct super_block {
1842   struct list_head s_list ;
1843   dev_t s_dev ;
1844   unsigned char s_dirt ;
1845   unsigned char s_blocksize_bits ;
1846   unsigned long s_blocksize ;
1847   loff_t s_maxbytes ;
1848   struct file_system_type *s_type ;
1849   struct super_operations  const  *s_op ;
1850   struct dquot_operations  const  *dq_op ;
1851   struct quotactl_ops  const  *s_qcop ;
1852   struct export_operations  const  *s_export_op ;
1853   unsigned long s_flags ;
1854   unsigned long s_magic ;
1855   struct dentry *s_root ;
1856   struct rw_semaphore s_umount ;
1857   struct mutex s_lock ;
1858   int s_count ;
1859   atomic_t s_active ;
1860   void *s_security ;
1861   struct xattr_handler  const  **s_xattr ;
1862   struct list_head s_inodes ;
1863   struct hlist_bl_head s_anon ;
1864   struct list_head *s_files ;
1865   struct list_head s_mounts ;
1866   struct list_head s_dentry_lru ;
1867   int s_nr_dentry_unused ;
1868   spinlock_t s_inode_lru_lock  __attribute__((__aligned__((1) <<  (6) ))) ;
1869   struct list_head s_inode_lru ;
1870   int s_nr_inodes_unused ;
1871   struct block_device *s_bdev ;
1872   struct backing_dev_info *s_bdi ;
1873   struct mtd_info *s_mtd ;
1874   struct hlist_node s_instances ;
1875   struct quota_info s_dquot ;
1876   int s_frozen ;
1877   wait_queue_head_t s_wait_unfrozen ;
1878   char s_id[32] ;
1879   u8 s_uuid[16] ;
1880   void *s_fs_info ;
1881   unsigned int s_max_links ;
1882   fmode_t s_mode ;
1883   u32 s_time_gran ;
1884   struct mutex s_vfs_rename_mutex ;
1885   char *s_subtype ;
1886   char *s_options ;
1887   struct dentry_operations  const  *s_d_op ;
1888   int cleancache_poolid ;
1889   struct shrinker s_shrink ;
1890   atomic_long_t s_remove_count ;
1891   int s_readonly_remount ;
1892};
1893#line 1567 "include/linux/fs.h"
1894struct fiemap_extent_info {
1895   unsigned int fi_flags ;
1896   unsigned int fi_extents_mapped ;
1897   unsigned int fi_extents_max ;
1898   struct fiemap_extent *fi_extents_start ;
1899};
1900#line 1609 "include/linux/fs.h"
1901struct file_operations {
1902   struct module *owner ;
1903   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
1904   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
1905   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
1906   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1907                       loff_t  ) ;
1908   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1909                        loff_t  ) ;
1910   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
1911                                                   loff_t  , u64  , unsigned int  ) ) ;
1912   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1913   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1914   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1915   int (*mmap)(struct file * , struct vm_area_struct * ) ;
1916   int (*open)(struct inode * , struct file * ) ;
1917   int (*flush)(struct file * , fl_owner_t id ) ;
1918   int (*release)(struct inode * , struct file * ) ;
1919   int (*fsync)(struct file * , loff_t  , loff_t  , int datasync ) ;
1920   int (*aio_fsync)(struct kiocb * , int datasync ) ;
1921   int (*fasync)(int  , struct file * , int  ) ;
1922   int (*lock)(struct file * , int  , struct file_lock * ) ;
1923   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
1924                       int  ) ;
1925   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
1926                                      unsigned long  , unsigned long  ) ;
1927   int (*check_flags)(int  ) ;
1928   int (*flock)(struct file * , int  , struct file_lock * ) ;
1929   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
1930                           unsigned int  ) ;
1931   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
1932                          unsigned int  ) ;
1933   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
1934   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
1935};
1936#line 1639 "include/linux/fs.h"
1937struct inode_operations {
1938   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1939   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1940   int (*permission)(struct inode * , int  ) ;
1941   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
1942   int (*readlink)(struct dentry * , char * , int  ) ;
1943   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1944   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
1945   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1946   int (*unlink)(struct inode * , struct dentry * ) ;
1947   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
1948   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
1949   int (*rmdir)(struct inode * , struct dentry * ) ;
1950   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
1951   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1952   void (*truncate)(struct inode * ) ;
1953   int (*setattr)(struct dentry * , struct iattr * ) ;
1954   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
1955   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
1956   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
1957   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
1958   int (*removexattr)(struct dentry * , char const   * ) ;
1959   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
1960   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
1961} __attribute__((__aligned__((1) <<  (6) ))) ;
1962#line 1669
1963struct seq_file;
1964#line 1684 "include/linux/fs.h"
1965struct super_operations {
1966   struct inode *(*alloc_inode)(struct super_block *sb ) ;
1967   void (*destroy_inode)(struct inode * ) ;
1968   void (*dirty_inode)(struct inode * , int flags ) ;
1969   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
1970   int (*drop_inode)(struct inode * ) ;
1971   void (*evict_inode)(struct inode * ) ;
1972   void (*put_super)(struct super_block * ) ;
1973   void (*write_super)(struct super_block * ) ;
1974   int (*sync_fs)(struct super_block *sb , int wait ) ;
1975   int (*freeze_fs)(struct super_block * ) ;
1976   int (*unfreeze_fs)(struct super_block * ) ;
1977   int (*statfs)(struct dentry * , struct kstatfs * ) ;
1978   int (*remount_fs)(struct super_block * , int * , char * ) ;
1979   void (*umount_begin)(struct super_block * ) ;
1980   int (*show_options)(struct seq_file * , struct dentry * ) ;
1981   int (*show_devname)(struct seq_file * , struct dentry * ) ;
1982   int (*show_path)(struct seq_file * , struct dentry * ) ;
1983   int (*show_stats)(struct seq_file * , struct dentry * ) ;
1984   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
1985   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
1986                          loff_t  ) ;
1987   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
1988   int (*nr_cached_objects)(struct super_block * ) ;
1989   void (*free_cached_objects)(struct super_block * , int  ) ;
1990};
1991#line 1835 "include/linux/fs.h"
1992struct file_system_type {
1993   char const   *name ;
1994   int fs_flags ;
1995   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
1996   void (*kill_sb)(struct super_block * ) ;
1997   struct module *owner ;
1998   struct file_system_type *next ;
1999   struct hlist_head fs_supers ;
2000   struct lock_class_key s_lock_key ;
2001   struct lock_class_key s_umount_key ;
2002   struct lock_class_key s_vfs_rename_key ;
2003   struct lock_class_key i_lock_key ;
2004   struct lock_class_key i_mutex_key ;
2005   struct lock_class_key i_mutex_dir_key ;
2006};
2007#line 12 "include/linux/mod_devicetable.h"
2008typedef unsigned long kernel_ulong_t;
2009#line 209 "include/linux/mod_devicetable.h"
2010struct serio_device_id {
2011   __u8 type ;
2012   __u8 extra ;
2013   __u8 id ;
2014   __u8 proto ;
2015};
2016#line 219 "include/linux/mod_devicetable.h"
2017struct of_device_id {
2018   char name[32] ;
2019   char type[32] ;
2020   char compatible[128] ;
2021   void *data ;
2022};
2023#line 312 "include/linux/mod_devicetable.h"
2024struct input_device_id {
2025   kernel_ulong_t flags ;
2026   __u16 bustype ;
2027   __u16 vendor ;
2028   __u16 product ;
2029   __u16 version ;
2030   kernel_ulong_t evbit[1] ;
2031   kernel_ulong_t keybit[12] ;
2032   kernel_ulong_t relbit[1] ;
2033   kernel_ulong_t absbit[1] ;
2034   kernel_ulong_t mscbit[1] ;
2035   kernel_ulong_t ledbit[1] ;
2036   kernel_ulong_t sndbit[1] ;
2037   kernel_ulong_t ffbit[2] ;
2038   kernel_ulong_t swbit[1] ;
2039   kernel_ulong_t driver_info ;
2040};
2041#line 1250 "include/linux/input.h"
2042struct ff_device;
2043#line 1250
2044struct input_mt_slot;
2045#line 1250
2046struct input_handle;
2047#line 1250 "include/linux/input.h"
2048struct input_dev {
2049   char const   *name ;
2050   char const   *phys ;
2051   char const   *uniq ;
2052   struct input_id id ;
2053   unsigned long propbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2054   unsigned long evbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2055   unsigned long keybit[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2056   unsigned long relbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2057   unsigned long absbit[((64UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2058   unsigned long mscbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2059   unsigned long ledbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2060   unsigned long sndbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2061   unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2062   unsigned long swbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2063   unsigned int hint_events_per_packet ;
2064   unsigned int keycodemax ;
2065   unsigned int keycodesize ;
2066   void *keycode ;
2067   int (*setkeycode)(struct input_dev *dev , struct input_keymap_entry  const  *ke ,
2068                     unsigned int *old_keycode ) ;
2069   int (*getkeycode)(struct input_dev *dev , struct input_keymap_entry *ke ) ;
2070   struct ff_device *ff ;
2071   unsigned int repeat_key ;
2072   struct timer_list timer ;
2073   int rep[2] ;
2074   struct input_mt_slot *mt ;
2075   int mtsize ;
2076   int slot ;
2077   int trkid ;
2078   struct input_absinfo *absinfo ;
2079   unsigned long key[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2080   unsigned long led[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2081   unsigned long snd[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2082   unsigned long sw[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2083   int (*open)(struct input_dev *dev ) ;
2084   void (*close)(struct input_dev *dev ) ;
2085   int (*flush)(struct input_dev *dev , struct file *file ) ;
2086   int (*event)(struct input_dev *dev , unsigned int type , unsigned int code , int value ) ;
2087   struct input_handle *grab ;
2088   spinlock_t event_lock ;
2089   struct mutex mutex ;
2090   unsigned int users ;
2091   bool going_away ;
2092   bool sync ;
2093   struct device dev ;
2094   struct list_head h_list ;
2095   struct list_head node ;
2096};
2097#line 1370
2098struct input_handle;
2099#line 1409 "include/linux/input.h"
2100struct input_handler {
2101   void *private ;
2102   void (*event)(struct input_handle *handle , unsigned int type , unsigned int code ,
2103                 int value ) ;
2104   bool (*filter)(struct input_handle *handle , unsigned int type , unsigned int code ,
2105                  int value ) ;
2106   bool (*match)(struct input_handler *handler , struct input_dev *dev ) ;
2107   int (*connect)(struct input_handler *handler , struct input_dev *dev , struct input_device_id  const  *id ) ;
2108   void (*disconnect)(struct input_handle *handle ) ;
2109   void (*start)(struct input_handle *handle ) ;
2110   struct file_operations  const  *fops ;
2111   int minor ;
2112   char const   *name ;
2113   struct input_device_id  const  *id_table ;
2114   struct list_head h_list ;
2115   struct list_head node ;
2116};
2117#line 1442 "include/linux/input.h"
2118struct input_handle {
2119   void *private ;
2120   int open ;
2121   char const   *name ;
2122   struct input_dev *dev ;
2123   struct input_handler *handler ;
2124   struct list_head d_node ;
2125   struct list_head h_node ;
2126};
2127#line 1619 "include/linux/input.h"
2128struct ff_device {
2129   int (*upload)(struct input_dev *dev , struct ff_effect *effect , struct ff_effect *old ) ;
2130   int (*erase)(struct input_dev *dev , int effect_id ) ;
2131   int (*playback)(struct input_dev *dev , int effect_id , int value ) ;
2132   void (*set_gain)(struct input_dev *dev , u16 gain ) ;
2133   void (*set_autocenter)(struct input_dev *dev , u16 magnitude ) ;
2134   void (*destroy)(struct ff_device * ) ;
2135   void *private ;
2136   unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2137   struct mutex mutex ;
2138   int max_effects ;
2139   struct ff_effect *effects ;
2140   struct file *effect_owners[] ;
2141};
2142#line 10 "include/linux/irqreturn.h"
2143enum irqreturn {
2144    IRQ_NONE = 0,
2145    IRQ_HANDLED = 1,
2146    IRQ_WAKE_THREAD = 2
2147} ;
2148#line 16 "include/linux/irqreturn.h"
2149typedef enum irqreturn irqreturn_t;
2150#line 31 "include/linux/irq.h"
2151struct seq_file;
2152#line 32
2153struct module;
2154#line 14 "include/linux/irqdesc.h"
2155struct module;
2156#line 65 "include/linux/profile.h"
2157struct task_struct;
2158#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
2159struct exception_table_entry {
2160   unsigned long insn ;
2161   unsigned long fixup ;
2162};
2163#line 132 "include/linux/hardirq.h"
2164struct task_struct;
2165#line 187 "include/linux/interrupt.h"
2166struct device;
2167#line 695
2168struct seq_file;
2169#line 26 "include/linux/serio.h"
2170struct serio_driver;
2171#line 26 "include/linux/serio.h"
2172struct serio {
2173   void *port_data ;
2174   char name[32] ;
2175   char phys[32] ;
2176   bool manual_bind ;
2177   struct serio_device_id id ;
2178   spinlock_t lock ;
2179   int (*write)(struct serio * , unsigned char  ) ;
2180   int (*open)(struct serio * ) ;
2181   void (*close)(struct serio * ) ;
2182   int (*start)(struct serio * ) ;
2183   void (*stop)(struct serio * ) ;
2184   struct serio *parent ;
2185   struct list_head child_node ;
2186   struct list_head children ;
2187   unsigned int depth ;
2188   struct serio_driver *drv ;
2189   struct mutex drv_mutex ;
2190   struct device dev ;
2191   struct list_head node ;
2192};
2193#line 58 "include/linux/serio.h"
2194struct serio_driver {
2195   char const   *description ;
2196   struct serio_device_id  const  *id_table ;
2197   bool manual_bind ;
2198   void (*write_wakeup)(struct serio * ) ;
2199   irqreturn_t (*interrupt)(struct serio * , unsigned char  , unsigned int  ) ;
2200   int (*connect)(struct serio * , struct serio_driver *drv ) ;
2201   int (*reconnect)(struct serio * ) ;
2202   void (*disconnect)(struct serio * ) ;
2203   void (*cleanup)(struct serio * ) ;
2204   struct device_driver driver ;
2205};
2206#line 56 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2207struct hampshire {
2208   struct input_dev *dev ;
2209   struct serio *serio ;
2210   int idx ;
2211   unsigned char data[4] ;
2212   char phys[32] ;
2213};
2214#line 1 "<compiler builtins>"
2215long __builtin_expect(long val , long res ) ;
2216#line 49 "include/linux/dynamic_debug.h"
2217extern int ( /* format attribute */  __dynamic_dev_dbg)(struct _ddebug *descriptor ,
2218                                                        struct device  const  *dev ,
2219                                                        char const   *fmt  , ...) ;
2220#line 322 "include/linux/kernel.h"
2221extern int ( /* format attribute */  snprintf)(char *buf , size_t size , char const   *fmt 
2222                                               , ...) ;
2223#line 152 "include/linux/mutex.h"
2224void mutex_lock(struct mutex *lock ) ;
2225#line 153
2226int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
2227#line 154
2228int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
2229#line 168
2230int mutex_trylock(struct mutex *lock ) ;
2231#line 169
2232void mutex_unlock(struct mutex *lock ) ;
2233#line 170
2234int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
2235#line 26 "include/linux/export.h"
2236extern struct module __this_module ;
2237#line 67 "include/linux/module.h"
2238int init_module(void) ;
2239#line 68
2240void cleanup_module(void) ;
2241#line 161 "include/linux/slab.h"
2242extern void kfree(void const   * ) ;
2243#line 221 "include/linux/slub_def.h"
2244extern void *__kmalloc(size_t size , gfp_t flags ) ;
2245#line 268
2246__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
2247                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
2248#line 268 "include/linux/slub_def.h"
2249__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
2250                                                                    gfp_t flags ) 
2251{ void *tmp___2 ;
2252
2253  {
2254  {
2255#line 283
2256  tmp___2 = __kmalloc(size, flags);
2257  }
2258#line 283
2259  return (tmp___2);
2260}
2261}
2262#line 349 "include/linux/slab.h"
2263__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
2264#line 349 "include/linux/slab.h"
2265__inline static void *kzalloc(size_t size , gfp_t flags ) 
2266{ void *tmp ;
2267  unsigned int __cil_tmp4 ;
2268
2269  {
2270  {
2271#line 351
2272  __cil_tmp4 = flags | 32768U;
2273#line 351
2274  tmp = kmalloc(size, __cil_tmp4);
2275  }
2276#line 351
2277  return (tmp);
2278}
2279}
2280#line 792 "include/linux/device.h"
2281extern void *dev_get_drvdata(struct device  const  *dev ) ;
2282#line 793
2283extern int dev_set_drvdata(struct device *dev , void *data ) ;
2284#line 855
2285extern struct device *get_device(struct device *dev ) ;
2286#line 856
2287extern void put_device(struct device *dev ) ;
2288#line 1456 "include/linux/input.h"
2289extern struct input_dev *input_allocate_device(void) ;
2290#line 1457
2291extern void input_free_device(struct input_dev *dev ) ;
2292#line 1459
2293__inline static struct input_dev *input_get_device(struct input_dev *dev )  __attribute__((__no_instrument_function__)) ;
2294#line 1459 "include/linux/input.h"
2295__inline static struct input_dev *input_get_device(struct input_dev *dev ) 
2296{ struct device  const  *__mptr ;
2297  struct device *tmp ;
2298  struct input_dev *tmp___0 ;
2299  unsigned long __cil_tmp5 ;
2300  unsigned long __cil_tmp6 ;
2301  struct device *__cil_tmp7 ;
2302  struct input_dev *__cil_tmp8 ;
2303  unsigned long __cil_tmp9 ;
2304  unsigned long __cil_tmp10 ;
2305  struct device *__cil_tmp11 ;
2306  unsigned int __cil_tmp12 ;
2307  char *__cil_tmp13 ;
2308  char *__cil_tmp14 ;
2309  void *__cil_tmp15 ;
2310
2311  {
2312#line 1461
2313  if (dev) {
2314    {
2315#line 1461
2316    __cil_tmp5 = (unsigned long )dev;
2317#line 1461
2318    __cil_tmp6 = __cil_tmp5 + 648;
2319#line 1461
2320    __cil_tmp7 = (struct device *)__cil_tmp6;
2321#line 1461
2322    tmp = get_device(__cil_tmp7);
2323#line 1461
2324    __mptr = (struct device  const  *)tmp;
2325#line 1461
2326    __cil_tmp8 = (struct input_dev *)0;
2327#line 1461
2328    __cil_tmp9 = (unsigned long )__cil_tmp8;
2329#line 1461
2330    __cil_tmp10 = __cil_tmp9 + 648;
2331#line 1461
2332    __cil_tmp11 = (struct device *)__cil_tmp10;
2333#line 1461
2334    __cil_tmp12 = (unsigned int )__cil_tmp11;
2335#line 1461
2336    __cil_tmp13 = (char *)__mptr;
2337#line 1461
2338    __cil_tmp14 = __cil_tmp13 - __cil_tmp12;
2339#line 1461
2340    tmp___0 = (struct input_dev *)__cil_tmp14;
2341    }
2342  } else {
2343#line 1461
2344    __cil_tmp15 = (void *)0;
2345#line 1461
2346    tmp___0 = (struct input_dev *)__cil_tmp15;
2347  }
2348#line 1461
2349  return (tmp___0);
2350}
2351}
2352#line 1464
2353__inline static void input_put_device(struct input_dev *dev )  __attribute__((__no_instrument_function__)) ;
2354#line 1464 "include/linux/input.h"
2355__inline static void input_put_device(struct input_dev *dev ) 
2356{ unsigned long __cil_tmp2 ;
2357  unsigned long __cil_tmp3 ;
2358  struct device *__cil_tmp4 ;
2359
2360  {
2361#line 1466
2362  if (dev) {
2363    {
2364#line 1467
2365    __cil_tmp2 = (unsigned long )dev;
2366#line 1467
2367    __cil_tmp3 = __cil_tmp2 + 648;
2368#line 1467
2369    __cil_tmp4 = (struct device *)__cil_tmp3;
2370#line 1467
2371    put_device(__cil_tmp4);
2372    }
2373  } else {
2374
2375  }
2376#line 1468
2377  return;
2378}
2379}
2380#line 1480
2381extern int __attribute__((__warn_unused_result__))  input_register_device(struct input_dev * ) ;
2382#line 1481
2383extern void input_unregister_device(struct input_dev * ) ;
2384#line 1502
2385extern void input_event(struct input_dev *dev , unsigned int type , unsigned int code ,
2386                        int value ) ;
2387#line 1505
2388__inline static void input_report_key(struct input_dev *dev , unsigned int code ,
2389                                      int value )  __attribute__((__no_instrument_function__)) ;
2390#line 1505 "include/linux/input.h"
2391__inline static void input_report_key(struct input_dev *dev , unsigned int code ,
2392                                      int value ) 
2393{ int __cil_tmp4 ;
2394  int __cil_tmp5 ;
2395
2396  {
2397  {
2398#line 1507
2399  __cil_tmp4 = ! value;
2400#line 1507
2401  __cil_tmp5 = ! __cil_tmp4;
2402#line 1507
2403  input_event(dev, 1U, code, __cil_tmp5);
2404  }
2405#line 1508
2406  return;
2407}
2408}
2409#line 1515
2410__inline static void input_report_abs(struct input_dev *dev , unsigned int code ,
2411                                      int value )  __attribute__((__no_instrument_function__)) ;
2412#line 1515 "include/linux/input.h"
2413__inline static void input_report_abs(struct input_dev *dev , unsigned int code ,
2414                                      int value ) 
2415{ 
2416
2417  {
2418  {
2419#line 1517
2420  input_event(dev, 3U, code, value);
2421  }
2422#line 1518
2423  return;
2424}
2425}
2426#line 1530
2427__inline static void input_sync(struct input_dev *dev )  __attribute__((__no_instrument_function__)) ;
2428#line 1530 "include/linux/input.h"
2429__inline static void input_sync(struct input_dev *dev ) 
2430{ 
2431
2432  {
2433  {
2434#line 1532
2435  input_event(dev, 0U, 0U, 0);
2436  }
2437#line 1533
2438  return;
2439}
2440}
2441#line 1558
2442extern void input_set_abs_params(struct input_dev *dev , unsigned int axis , int min ,
2443                                 int max , int fuzz , int flat ) ;
2444#line 75 "include/linux/serio.h"
2445extern int serio_open(struct serio *serio , struct serio_driver *drv ) ;
2446#line 76
2447extern void serio_close(struct serio *serio ) ;
2448#line 90
2449extern int __attribute__((__warn_unused_result__))  __serio_register_driver(struct serio_driver *drv ,
2450                                                                            struct module *owner ,
2451                                                                            char const   *mod_name ) ;
2452#line 97
2453extern void serio_unregister_driver(struct serio_driver *drv ) ;
2454#line 117
2455__inline static void *serio_get_drvdata(struct serio *serio )  __attribute__((__no_instrument_function__)) ;
2456#line 117 "include/linux/serio.h"
2457__inline static void *serio_get_drvdata(struct serio *serio ) 
2458{ void *tmp ;
2459  unsigned long __cil_tmp3 ;
2460  unsigned long __cil_tmp4 ;
2461  struct device *__cil_tmp5 ;
2462  struct device  const  *__cil_tmp6 ;
2463
2464  {
2465  {
2466#line 119
2467  __cil_tmp3 = (unsigned long )serio;
2468#line 119
2469  __cil_tmp4 = __cil_tmp3 + 272;
2470#line 119
2471  __cil_tmp5 = (struct device *)__cil_tmp4;
2472#line 119
2473  __cil_tmp6 = (struct device  const  *)__cil_tmp5;
2474#line 119
2475  tmp = dev_get_drvdata(__cil_tmp6);
2476  }
2477#line 119
2478  return (tmp);
2479}
2480}
2481#line 122
2482__inline static void serio_set_drvdata(struct serio *serio , void *data )  __attribute__((__no_instrument_function__)) ;
2483#line 122 "include/linux/serio.h"
2484__inline static void serio_set_drvdata(struct serio *serio , void *data ) 
2485{ unsigned long __cil_tmp3 ;
2486  unsigned long __cil_tmp4 ;
2487  struct device *__cil_tmp5 ;
2488
2489  {
2490  {
2491#line 124
2492  __cil_tmp3 = (unsigned long )serio;
2493#line 124
2494  __cil_tmp4 = __cil_tmp3 + 272;
2495#line 124
2496  __cil_tmp5 = (struct device *)__cil_tmp4;
2497#line 124
2498  dev_set_drvdata(__cil_tmp5, data);
2499  }
2500#line 125
2501  return;
2502}
2503}
2504#line 31 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2505static char const   __mod_author31[43]  __attribute__((__used__, __unused__, __section__(".modinfo"),
2506__aligned__(1)))  = 
2507#line 31 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2508  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
2509        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'A', 
2510        (char const   )'d',      (char const   )'a',      (char const   )'m',      (char const   )' ', 
2511        (char const   )'B',      (char const   )'e',      (char const   )'n',      (char const   )'n', 
2512        (char const   )'e',      (char const   )'t',      (char const   )'t',      (char const   )' ', 
2513        (char const   )'<',      (char const   )'a',      (char const   )'b',      (char const   )'e', 
2514        (char const   )'n',      (char const   )'n',      (char const   )'e',      (char const   )'t', 
2515        (char const   )'t',      (char const   )'7',      (char const   )'2',      (char const   )'@', 
2516        (char const   )'g',      (char const   )'m',      (char const   )'a',      (char const   )'i', 
2517        (char const   )'l',      (char const   )'.',      (char const   )'c',      (char const   )'o', 
2518        (char const   )'m',      (char const   )'>',      (char const   )'\000'};
2519#line 32 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2520static char const   __mod_description32[48]  __attribute__((__used__, __unused__,
2521__section__(".modinfo"), __aligned__(1)))  = 
2522#line 32
2523  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
2524        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
2525        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
2526        (char const   )'H',      (char const   )'a',      (char const   )'m',      (char const   )'p', 
2527        (char const   )'s',      (char const   )'h',      (char const   )'i',      (char const   )'r', 
2528        (char const   )'e',      (char const   )' ',      (char const   )'s',      (char const   )'e', 
2529        (char const   )'r',      (char const   )'i',      (char const   )'a',      (char const   )'l', 
2530        (char const   )' ',      (char const   )'t',      (char const   )'o',      (char const   )'u', 
2531        (char const   )'c',      (char const   )'h',      (char const   )'s',      (char const   )'c', 
2532        (char const   )'r',      (char const   )'e',      (char const   )'e',      (char const   )'n', 
2533        (char const   )' ',      (char const   )'d',      (char const   )'r',      (char const   )'i', 
2534        (char const   )'v',      (char const   )'e',      (char const   )'r',      (char const   )'\000'};
2535#line 33 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2536static char const   __mod_license33[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
2537__aligned__(1)))  = 
2538#line 33
2539  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
2540        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
2541        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
2542#line 64 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2543static void hampshire_process_data(struct hampshire *phampshire ) 
2544{ struct input_dev *dev ;
2545  unsigned long __cil_tmp3 ;
2546  unsigned long __cil_tmp4 ;
2547  unsigned long __cil_tmp5 ;
2548  unsigned long __cil_tmp6 ;
2549  int __cil_tmp7 ;
2550  unsigned long __cil_tmp8 ;
2551  unsigned long __cil_tmp9 ;
2552  int __cil_tmp10 ;
2553  unsigned long __cil_tmp11 ;
2554  unsigned long __cil_tmp12 ;
2555  unsigned long __cil_tmp13 ;
2556  unsigned long __cil_tmp14 ;
2557  unsigned char __cil_tmp15 ;
2558  int __cil_tmp16 ;
2559  int __cil_tmp17 ;
2560  int __cil_tmp18 ;
2561  unsigned long __cil_tmp19 ;
2562  unsigned long __cil_tmp20 ;
2563  unsigned long __cil_tmp21 ;
2564  unsigned long __cil_tmp22 ;
2565  unsigned char __cil_tmp23 ;
2566  int __cil_tmp24 ;
2567  int __cil_tmp25 ;
2568  unsigned long __cil_tmp26 ;
2569  unsigned long __cil_tmp27 ;
2570  unsigned long __cil_tmp28 ;
2571  unsigned long __cil_tmp29 ;
2572  unsigned char __cil_tmp30 ;
2573  int __cil_tmp31 ;
2574  int __cil_tmp32 ;
2575  int __cil_tmp33 ;
2576  int __cil_tmp34 ;
2577  int __cil_tmp35 ;
2578  unsigned long __cil_tmp36 ;
2579  unsigned long __cil_tmp37 ;
2580  unsigned long __cil_tmp38 ;
2581  unsigned long __cil_tmp39 ;
2582  unsigned char __cil_tmp40 ;
2583  int __cil_tmp41 ;
2584  int __cil_tmp42 ;
2585  int __cil_tmp43 ;
2586  unsigned long __cil_tmp44 ;
2587  unsigned long __cil_tmp45 ;
2588  unsigned long __cil_tmp46 ;
2589  unsigned long __cil_tmp47 ;
2590  unsigned char __cil_tmp48 ;
2591  int __cil_tmp49 ;
2592  int __cil_tmp50 ;
2593  unsigned long __cil_tmp51 ;
2594  unsigned long __cil_tmp52 ;
2595  unsigned long __cil_tmp53 ;
2596  unsigned long __cil_tmp54 ;
2597  unsigned char __cil_tmp55 ;
2598  int __cil_tmp56 ;
2599  int __cil_tmp57 ;
2600  int __cil_tmp58 ;
2601  int __cil_tmp59 ;
2602  unsigned long __cil_tmp60 ;
2603  unsigned long __cil_tmp61 ;
2604  unsigned long __cil_tmp62 ;
2605  unsigned long __cil_tmp63 ;
2606  unsigned char __cil_tmp64 ;
2607  int __cil_tmp65 ;
2608  int __cil_tmp66 ;
2609  unsigned long __cil_tmp67 ;
2610  unsigned long __cil_tmp68 ;
2611
2612  {
2613#line 66
2614  dev = *((struct input_dev **)phampshire);
2615#line 68
2616  __cil_tmp3 = (unsigned long )phampshire;
2617#line 68
2618  __cil_tmp4 = __cil_tmp3 + 16;
2619#line 68
2620  __cil_tmp5 = (unsigned long )phampshire;
2621#line 68
2622  __cil_tmp6 = __cil_tmp5 + 16;
2623#line 68
2624  __cil_tmp7 = *((int *)__cil_tmp6);
2625#line 68
2626  *((int *)__cil_tmp4) = __cil_tmp7 + 1;
2627  {
2628#line 68
2629  __cil_tmp8 = (unsigned long )phampshire;
2630#line 68
2631  __cil_tmp9 = __cil_tmp8 + 16;
2632#line 68
2633  __cil_tmp10 = *((int *)__cil_tmp9);
2634#line 68
2635  if (4 == __cil_tmp10) {
2636    {
2637#line 69
2638    __cil_tmp11 = 0 * 1UL;
2639#line 69
2640    __cil_tmp12 = 20 + __cil_tmp11;
2641#line 69
2642    __cil_tmp13 = (unsigned long )phampshire;
2643#line 69
2644    __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
2645#line 69
2646    __cil_tmp15 = *((unsigned char *)__cil_tmp14);
2647#line 69
2648    __cil_tmp16 = (int )__cil_tmp15;
2649#line 69
2650    __cil_tmp17 = __cil_tmp16 & 56;
2651#line 69
2652    __cil_tmp18 = __cil_tmp17 << 6;
2653#line 69
2654    __cil_tmp19 = 1 * 1UL;
2655#line 69
2656    __cil_tmp20 = 20 + __cil_tmp19;
2657#line 69
2658    __cil_tmp21 = (unsigned long )phampshire;
2659#line 69
2660    __cil_tmp22 = __cil_tmp21 + __cil_tmp20;
2661#line 69
2662    __cil_tmp23 = *((unsigned char *)__cil_tmp22);
2663#line 69
2664    __cil_tmp24 = (int )__cil_tmp23;
2665#line 69
2666    __cil_tmp25 = __cil_tmp24 << 2;
2667#line 69
2668    __cil_tmp26 = 3 * 1UL;
2669#line 69
2670    __cil_tmp27 = 20 + __cil_tmp26;
2671#line 69
2672    __cil_tmp28 = (unsigned long )phampshire;
2673#line 69
2674    __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
2675#line 69
2676    __cil_tmp30 = *((unsigned char *)__cil_tmp29);
2677#line 69
2678    __cil_tmp31 = (int )__cil_tmp30;
2679#line 69
2680    __cil_tmp32 = __cil_tmp31 & 12;
2681#line 69
2682    __cil_tmp33 = __cil_tmp32 >> 2;
2683#line 69
2684    __cil_tmp34 = __cil_tmp33 | __cil_tmp25;
2685#line 69
2686    __cil_tmp35 = __cil_tmp34 | __cil_tmp18;
2687#line 69
2688    input_report_abs(dev, 0U, __cil_tmp35);
2689#line 70
2690    __cil_tmp36 = 0 * 1UL;
2691#line 70
2692    __cil_tmp37 = 20 + __cil_tmp36;
2693#line 70
2694    __cil_tmp38 = (unsigned long )phampshire;
2695#line 70
2696    __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
2697#line 70
2698    __cil_tmp40 = *((unsigned char *)__cil_tmp39);
2699#line 70
2700    __cil_tmp41 = (int )__cil_tmp40;
2701#line 70
2702    __cil_tmp42 = __cil_tmp41 & 7;
2703#line 70
2704    __cil_tmp43 = __cil_tmp42 << 9;
2705#line 70
2706    __cil_tmp44 = 2 * 1UL;
2707#line 70
2708    __cil_tmp45 = 20 + __cil_tmp44;
2709#line 70
2710    __cil_tmp46 = (unsigned long )phampshire;
2711#line 70
2712    __cil_tmp47 = __cil_tmp46 + __cil_tmp45;
2713#line 70
2714    __cil_tmp48 = *((unsigned char *)__cil_tmp47);
2715#line 70
2716    __cil_tmp49 = (int )__cil_tmp48;
2717#line 70
2718    __cil_tmp50 = __cil_tmp49 << 2;
2719#line 70
2720    __cil_tmp51 = 3 * 1UL;
2721#line 70
2722    __cil_tmp52 = 20 + __cil_tmp51;
2723#line 70
2724    __cil_tmp53 = (unsigned long )phampshire;
2725#line 70
2726    __cil_tmp54 = __cil_tmp53 + __cil_tmp52;
2727#line 70
2728    __cil_tmp55 = *((unsigned char *)__cil_tmp54);
2729#line 70
2730    __cil_tmp56 = (int )__cil_tmp55;
2731#line 70
2732    __cil_tmp57 = __cil_tmp56 & 3;
2733#line 70
2734    __cil_tmp58 = __cil_tmp57 | __cil_tmp50;
2735#line 70
2736    __cil_tmp59 = __cil_tmp58 | __cil_tmp43;
2737#line 70
2738    input_report_abs(dev, 1U, __cil_tmp59);
2739#line 71
2740    __cil_tmp60 = 0 * 1UL;
2741#line 71
2742    __cil_tmp61 = 20 + __cil_tmp60;
2743#line 71
2744    __cil_tmp62 = (unsigned long )phampshire;
2745#line 71
2746    __cil_tmp63 = __cil_tmp62 + __cil_tmp61;
2747#line 71
2748    __cil_tmp64 = *((unsigned char *)__cil_tmp63);
2749#line 71
2750    __cil_tmp65 = (int )__cil_tmp64;
2751#line 71
2752    __cil_tmp66 = 64 & __cil_tmp65;
2753#line 71
2754    input_report_key(dev, 330U, __cil_tmp66);
2755#line 73
2756    input_sync(dev);
2757#line 75
2758    __cil_tmp67 = (unsigned long )phampshire;
2759#line 75
2760    __cil_tmp68 = __cil_tmp67 + 16;
2761#line 75
2762    *((int *)__cil_tmp68) = 0;
2763    }
2764  } else {
2765
2766  }
2767  }
2768#line 77
2769  return;
2770}
2771}
2772#line 89
2773static irqreturn_t hampshire_interrupt(struct serio *serio , unsigned char data ,
2774                                       unsigned int flags ) ;
2775#line 89 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2776static struct _ddebug  __attribute__((__aligned__(8))) descriptor  __attribute__((__used__,
2777__section__("__verbose")))  =    {"hampshire", "hampshire_interrupt", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c",
2778    "unknown/unsynchronized data: %x\n", 90U, 0U};
2779#line 79 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2780static irqreturn_t hampshire_interrupt(struct serio *serio , unsigned char data ,
2781                                       unsigned int flags ) 
2782{ struct hampshire *phampshire ;
2783  void *tmp ;
2784  long tmp___0 ;
2785  unsigned long __cil_tmp7 ;
2786  unsigned long __cil_tmp8 ;
2787  int __cil_tmp9 ;
2788  unsigned long __cil_tmp10 ;
2789  unsigned long __cil_tmp11 ;
2790  unsigned long __cil_tmp12 ;
2791  unsigned long __cil_tmp13 ;
2792  unsigned long __cil_tmp14 ;
2793  unsigned long __cil_tmp15 ;
2794  unsigned long __cil_tmp16 ;
2795  unsigned long __cil_tmp17 ;
2796  unsigned char __cil_tmp18 ;
2797  int __cil_tmp19 ;
2798  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp20 ;
2799  unsigned int __cil_tmp21 ;
2800  unsigned int __cil_tmp22 ;
2801  int __cil_tmp23 ;
2802  int __cil_tmp24 ;
2803  long __cil_tmp25 ;
2804  unsigned long __cil_tmp26 ;
2805  unsigned long __cil_tmp27 ;
2806  struct device *__cil_tmp28 ;
2807  struct device  const  *__cil_tmp29 ;
2808  unsigned long __cil_tmp30 ;
2809  unsigned long __cil_tmp31 ;
2810  unsigned long __cil_tmp32 ;
2811  unsigned long __cil_tmp33 ;
2812  unsigned char __cil_tmp34 ;
2813  int __cil_tmp35 ;
2814
2815  {
2816  {
2817#line 82
2818  tmp = serio_get_drvdata(serio);
2819#line 82
2820  phampshire = (struct hampshire *)tmp;
2821#line 84
2822  __cil_tmp7 = (unsigned long )phampshire;
2823#line 84
2824  __cil_tmp8 = __cil_tmp7 + 16;
2825#line 84
2826  __cil_tmp9 = *((int *)__cil_tmp8);
2827#line 84
2828  __cil_tmp10 = __cil_tmp9 * 1UL;
2829#line 84
2830  __cil_tmp11 = 20 + __cil_tmp10;
2831#line 84
2832  __cil_tmp12 = (unsigned long )phampshire;
2833#line 84
2834  __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
2835#line 84
2836  *((unsigned char *)__cil_tmp13) = data;
2837  }
2838  {
2839#line 86
2840  __cil_tmp14 = 0 * 1UL;
2841#line 86
2842  __cil_tmp15 = 20 + __cil_tmp14;
2843#line 86
2844  __cil_tmp16 = (unsigned long )phampshire;
2845#line 86
2846  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
2847#line 86
2848  __cil_tmp18 = *((unsigned char *)__cil_tmp17);
2849#line 86
2850  __cil_tmp19 = (int )__cil_tmp18;
2851#line 86
2852  if (128 & __cil_tmp19) {
2853    {
2854#line 87
2855    hampshire_process_data(phampshire);
2856    }
2857  } else {
2858    {
2859#line 89
2860    while (1) {
2861      while_continue: /* CIL Label */ ;
2862      {
2863#line 89
2864      while (1) {
2865        while_continue___0: /* CIL Label */ ;
2866        {
2867#line 89
2868        __cil_tmp20 = & descriptor;
2869#line 89
2870        __cil_tmp21 = __cil_tmp20->flags;
2871#line 89
2872        __cil_tmp22 = __cil_tmp21 & 1U;
2873#line 89
2874        __cil_tmp23 = ! __cil_tmp22;
2875#line 89
2876        __cil_tmp24 = ! __cil_tmp23;
2877#line 89
2878        __cil_tmp25 = (long )__cil_tmp24;
2879#line 89
2880        tmp___0 = __builtin_expect(__cil_tmp25, 0L);
2881        }
2882#line 89
2883        if (tmp___0) {
2884          {
2885#line 89
2886          __cil_tmp26 = (unsigned long )serio;
2887#line 89
2888          __cil_tmp27 = __cil_tmp26 + 272;
2889#line 89
2890          __cil_tmp28 = (struct device *)__cil_tmp27;
2891#line 89
2892          __cil_tmp29 = (struct device  const  *)__cil_tmp28;
2893#line 89
2894          __cil_tmp30 = 0 * 1UL;
2895#line 89
2896          __cil_tmp31 = 20 + __cil_tmp30;
2897#line 89
2898          __cil_tmp32 = (unsigned long )phampshire;
2899#line 89
2900          __cil_tmp33 = __cil_tmp32 + __cil_tmp31;
2901#line 89
2902          __cil_tmp34 = *((unsigned char *)__cil_tmp33);
2903#line 89
2904          __cil_tmp35 = (int )__cil_tmp34;
2905#line 89
2906          __dynamic_dev_dbg(& descriptor, __cil_tmp29, "unknown/unsynchronized data: %x\n",
2907                            __cil_tmp35);
2908          }
2909        } else {
2910
2911        }
2912#line 89
2913        goto while_break___0;
2914      }
2915      while_break___0: /* CIL Label */ ;
2916      }
2917#line 89
2918      goto while_break;
2919    }
2920    while_break: /* CIL Label */ ;
2921    }
2922  }
2923  }
2924#line 92
2925  return ((irqreturn_t )1);
2926}
2927}
2928#line 95 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2929static void hampshire_disconnect(struct serio *serio ) 
2930{ struct hampshire *phampshire ;
2931  void *tmp ;
2932  struct input_dev *__cil_tmp4 ;
2933  struct input_dev *__cil_tmp5 ;
2934  void *__cil_tmp6 ;
2935  struct input_dev *__cil_tmp7 ;
2936  void const   *__cil_tmp8 ;
2937
2938  {
2939  {
2940#line 97
2941  tmp = serio_get_drvdata(serio);
2942#line 97
2943  phampshire = (struct hampshire *)tmp;
2944#line 99
2945  __cil_tmp4 = *((struct input_dev **)phampshire);
2946#line 99
2947  input_get_device(__cil_tmp4);
2948#line 100
2949  __cil_tmp5 = *((struct input_dev **)phampshire);
2950#line 100
2951  input_unregister_device(__cil_tmp5);
2952#line 101
2953  serio_close(serio);
2954#line 102
2955  __cil_tmp6 = (void *)0;
2956#line 102
2957  serio_set_drvdata(serio, __cil_tmp6);
2958#line 103
2959  __cil_tmp7 = *((struct input_dev **)phampshire);
2960#line 103
2961  input_put_device(__cil_tmp7);
2962#line 104
2963  __cil_tmp8 = (void const   *)phampshire;
2964#line 104
2965  kfree(__cil_tmp8);
2966  }
2967#line 105
2968  return;
2969}
2970}
2971#line 113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
2972static int hampshire_connect(struct serio *serio , struct serio_driver *drv ) 
2973{ struct hampshire *phampshire ;
2974  struct input_dev *input_dev ;
2975  int err ;
2976  void *tmp ;
2977  unsigned long __cil_tmp7 ;
2978  unsigned long __cil_tmp8 ;
2979  unsigned long __cil_tmp9 ;
2980  unsigned long __cil_tmp10 ;
2981  unsigned long __cil_tmp11 ;
2982  unsigned long __cil_tmp12 ;
2983  char *__cil_tmp13 ;
2984  unsigned long __cil_tmp14 ;
2985  unsigned long __cil_tmp15 ;
2986  unsigned long __cil_tmp16 ;
2987  unsigned long __cil_tmp17 ;
2988  char *__cil_tmp18 ;
2989  unsigned long __cil_tmp19 ;
2990  unsigned long __cil_tmp20 ;
2991  unsigned long __cil_tmp21 ;
2992  unsigned long __cil_tmp22 ;
2993  unsigned long __cil_tmp23 ;
2994  unsigned long __cil_tmp24 ;
2995  char *__cil_tmp25 ;
2996  unsigned long __cil_tmp26 ;
2997  unsigned long __cil_tmp27 ;
2998  unsigned long __cil_tmp28 ;
2999  unsigned long __cil_tmp29 ;
3000  unsigned long __cil_tmp30 ;
3001  unsigned long __cil_tmp31 ;
3002  unsigned long __cil_tmp32 ;
3003  unsigned long __cil_tmp33 ;
3004  unsigned long __cil_tmp34 ;
3005  unsigned long __cil_tmp35 ;
3006  unsigned long __cil_tmp36 ;
3007  unsigned long __cil_tmp37 ;
3008  unsigned long __cil_tmp38 ;
3009  unsigned long __cil_tmp39 ;
3010  unsigned long __cil_tmp40 ;
3011  unsigned long __cil_tmp41 ;
3012  unsigned long __cil_tmp42 ;
3013  unsigned long __cil_tmp43 ;
3014  unsigned long __cil_tmp44 ;
3015  unsigned long __cil_tmp45 ;
3016  unsigned long __cil_tmp46 ;
3017  unsigned long __cil_tmp47 ;
3018  unsigned long __cil_tmp48 ;
3019  unsigned long __cil_tmp49 ;
3020  unsigned long __cil_tmp50 ;
3021  struct input_dev *__cil_tmp51 ;
3022  struct input_dev *__cil_tmp52 ;
3023  void *__cil_tmp53 ;
3024  struct input_dev *__cil_tmp54 ;
3025  void *__cil_tmp55 ;
3026  void const   *__cil_tmp56 ;
3027
3028  {
3029  {
3030#line 119
3031  tmp = kzalloc(56UL, 208U);
3032#line 119
3033  phampshire = (struct hampshire *)tmp;
3034#line 120
3035  input_dev = input_allocate_device();
3036  }
3037#line 121
3038  if (! phampshire) {
3039#line 122
3040    err = -12;
3041#line 123
3042    goto fail1;
3043  } else
3044#line 121
3045  if (! input_dev) {
3046#line 122
3047    err = -12;
3048#line 123
3049    goto fail1;
3050  } else {
3051
3052  }
3053  {
3054#line 126
3055  __cil_tmp7 = (unsigned long )phampshire;
3056#line 126
3057  __cil_tmp8 = __cil_tmp7 + 8;
3058#line 126
3059  *((struct serio **)__cil_tmp8) = serio;
3060#line 127
3061  *((struct input_dev **)phampshire) = input_dev;
3062#line 128
3063  __cil_tmp9 = 0 * 1UL;
3064#line 128
3065  __cil_tmp10 = 24 + __cil_tmp9;
3066#line 128
3067  __cil_tmp11 = (unsigned long )phampshire;
3068#line 128
3069  __cil_tmp12 = __cil_tmp11 + __cil_tmp10;
3070#line 128
3071  __cil_tmp13 = (char *)__cil_tmp12;
3072#line 128
3073  __cil_tmp14 = 0 * 1UL;
3074#line 128
3075  __cil_tmp15 = 40 + __cil_tmp14;
3076#line 128
3077  __cil_tmp16 = (unsigned long )serio;
3078#line 128
3079  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3080#line 128
3081  __cil_tmp18 = (char *)__cil_tmp17;
3082#line 128
3083  snprintf(__cil_tmp13, 32UL, "%s/input0", __cil_tmp18);
3084#line 131
3085  *((char const   **)input_dev) = "Hampshire Serial TouchScreen";
3086#line 132
3087  __cil_tmp19 = (unsigned long )input_dev;
3088#line 132
3089  __cil_tmp20 = __cil_tmp19 + 8;
3090#line 132
3091  __cil_tmp21 = 0 * 1UL;
3092#line 132
3093  __cil_tmp22 = 24 + __cil_tmp21;
3094#line 132
3095  __cil_tmp23 = (unsigned long )phampshire;
3096#line 132
3097  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
3098#line 132
3099  __cil_tmp25 = (char *)__cil_tmp24;
3100#line 132
3101  *((char const   **)__cil_tmp20) = (char const   *)__cil_tmp25;
3102#line 133
3103  __cil_tmp26 = (unsigned long )input_dev;
3104#line 133
3105  __cil_tmp27 = __cil_tmp26 + 24;
3106#line 133
3107  *((__u16 *)__cil_tmp27) = (__u16 )19;
3108#line 134
3109  __cil_tmp28 = 24 + 2;
3110#line 134
3111  __cil_tmp29 = (unsigned long )input_dev;
3112#line 134
3113  __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
3114#line 134
3115  *((__u16 *)__cil_tmp30) = (__u16 )59;
3116#line 135
3117  __cil_tmp31 = 24 + 4;
3118#line 135
3119  __cil_tmp32 = (unsigned long )input_dev;
3120#line 135
3121  __cil_tmp33 = __cil_tmp32 + __cil_tmp31;
3122#line 135
3123  *((__u16 *)__cil_tmp33) = (__u16 )0;
3124#line 136
3125  __cil_tmp34 = 24 + 6;
3126#line 136
3127  __cil_tmp35 = (unsigned long )input_dev;
3128#line 136
3129  __cil_tmp36 = __cil_tmp35 + __cil_tmp34;
3130#line 136
3131  *((__u16 *)__cil_tmp36) = (__u16 )1;
3132#line 137
3133  __cil_tmp37 = (unsigned long )input_dev;
3134#line 137
3135  __cil_tmp38 = __cil_tmp37 + 648;
3136#line 137
3137  __cil_tmp39 = (unsigned long )serio;
3138#line 137
3139  __cil_tmp40 = __cil_tmp39 + 272;
3140#line 137
3141  *((struct device **)__cil_tmp38) = (struct device *)__cil_tmp40;
3142#line 138
3143  __cil_tmp41 = 0 * 8UL;
3144#line 138
3145  __cil_tmp42 = 40 + __cil_tmp41;
3146#line 138
3147  __cil_tmp43 = (unsigned long )input_dev;
3148#line 138
3149  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
3150#line 138
3151  __cil_tmp45 = 1UL << 3;
3152#line 138
3153  __cil_tmp46 = 1UL << 1;
3154#line 138
3155  *((unsigned long *)__cil_tmp44) = __cil_tmp46 | __cil_tmp45;
3156#line 139
3157  __cil_tmp47 = 5 * 8UL;
3158#line 139
3159  __cil_tmp48 = 48 + __cil_tmp47;
3160#line 139
3161  __cil_tmp49 = (unsigned long )input_dev;
3162#line 139
3163  __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
3164#line 139
3165  *((unsigned long *)__cil_tmp50) = 1UL << 10;
3166#line 140
3167  __cil_tmp51 = *((struct input_dev **)phampshire);
3168#line 140
3169  input_set_abs_params(__cil_tmp51, 0U, 0, 4096, 0, 0);
3170#line 142
3171  __cil_tmp52 = *((struct input_dev **)phampshire);
3172#line 142
3173  input_set_abs_params(__cil_tmp52, 1U, 0, 4096, 0, 0);
3174#line 145
3175  __cil_tmp53 = (void *)phampshire;
3176#line 145
3177  serio_set_drvdata(serio, __cil_tmp53);
3178#line 147
3179  err = serio_open(serio, drv);
3180  }
3181#line 148
3182  if (err) {
3183#line 149
3184    goto fail2;
3185  } else {
3186
3187  }
3188  {
3189#line 151
3190  __cil_tmp54 = *((struct input_dev **)phampshire);
3191#line 151
3192  err = (int )input_register_device(__cil_tmp54);
3193  }
3194#line 152
3195  if (err) {
3196#line 153
3197    goto fail3;
3198  } else {
3199
3200  }
3201#line 155
3202  return (0);
3203  fail3: 
3204  {
3205#line 157
3206  serio_close(serio);
3207  }
3208  fail2: 
3209  {
3210#line 158
3211  __cil_tmp55 = (void *)0;
3212#line 158
3213  serio_set_drvdata(serio, __cil_tmp55);
3214  }
3215  fail1: 
3216  {
3217#line 159
3218  input_free_device(input_dev);
3219#line 160
3220  __cil_tmp56 = (void const   *)phampshire;
3221#line 160
3222  kfree(__cil_tmp56);
3223  }
3224#line 161
3225  return (err);
3226}
3227}
3228#line 168 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3229static struct serio_device_id hampshire_serio_ids[2]  = {      {(__u8 )2, (__u8 )255, (__u8 )255, (__u8 )59}, 
3230        {(__u8 )0, (unsigned char)0, (unsigned char)0, (unsigned char)0}};
3231#line 178
3232extern struct serio_device_id  const  __mod_serio_device_table  __attribute__((__unused__,
3233__alias__("hampshire_serio_ids"))) ;
3234#line 180 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3235static struct serio_driver hampshire_drv  = 
3236#line 180
3237     {"Hampshire serial touchscreen driver", (struct serio_device_id  const  *)(hampshire_serio_ids),
3238    (_Bool)0, (void (*)(struct serio * ))0, & hampshire_interrupt, & hampshire_connect,
3239    (int (*)(struct serio * ))0, & hampshire_disconnect, (void (*)(struct serio * ))0,
3240    {"hampshire", (struct bus_type *)0, (struct module *)0, (char const   *)0, (_Bool)0,
3241     (struct of_device_id  const  *)0, (int (*)(struct device *dev ))0, (int (*)(struct device *dev ))0,
3242     (void (*)(struct device *dev ))0, (int (*)(struct device *dev , pm_message_t state ))0,
3243     (int (*)(struct device *dev ))0, (struct attribute_group  const  **)0, (struct dev_pm_ops  const  *)0,
3244     (struct driver_private *)0}};
3245#line 195
3246static int hampshire_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
3247#line 195 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3248static int hampshire_init(void) 
3249{ int tmp ;
3250
3251  {
3252  {
3253#line 197
3254  tmp = (int )__serio_register_driver(& hampshire_drv, & __this_module, "hampshire");
3255  }
3256#line 197
3257  return (tmp);
3258}
3259}
3260#line 200
3261static void hampshire_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
3262#line 200 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3263static void hampshire_exit(void) 
3264{ 
3265
3266  {
3267  {
3268#line 202
3269  serio_unregister_driver(& hampshire_drv);
3270  }
3271#line 203
3272  return;
3273}
3274}
3275#line 205 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3276int init_module(void) 
3277{ int tmp ;
3278
3279  {
3280  {
3281#line 205
3282  tmp = hampshire_init();
3283  }
3284#line 205
3285  return (tmp);
3286}
3287}
3288#line 206 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3289void cleanup_module(void) 
3290{ 
3291
3292  {
3293  {
3294#line 206
3295  hampshire_exit();
3296  }
3297#line 206
3298  return;
3299}
3300}
3301#line 224
3302void ldv_check_final_state(void) ;
3303#line 227
3304extern void ldv_check_return_value(int res ) ;
3305#line 230
3306extern void ldv_initialize(void) ;
3307#line 233
3308extern int __VERIFIER_nondet_int(void) ;
3309#line 236 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3310int LDV_IN_INTERRUPT  ;
3311#line 283 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3312static int res_hampshire_connect_3  ;
3313#line 239 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3314void main(void) 
3315{ struct serio *var_group1 ;
3316  unsigned char var_hampshire_interrupt_1_p1 ;
3317  unsigned int var_hampshire_interrupt_1_p2 ;
3318  struct serio_driver *var_group2 ;
3319  int tmp ;
3320  int ldv_s_hampshire_drv_serio_driver ;
3321  int tmp___0 ;
3322  int tmp___1 ;
3323  int __cil_tmp9 ;
3324
3325  {
3326  {
3327#line 305
3328  LDV_IN_INTERRUPT = 1;
3329#line 314
3330  ldv_initialize();
3331#line 332
3332  tmp = hampshire_init();
3333  }
3334#line 332
3335  if (tmp) {
3336#line 333
3337    goto ldv_final;
3338  } else {
3339
3340  }
3341#line 334
3342  ldv_s_hampshire_drv_serio_driver = 0;
3343  {
3344#line 338
3345  while (1) {
3346    while_continue: /* CIL Label */ ;
3347    {
3348#line 338
3349    tmp___1 = __VERIFIER_nondet_int();
3350    }
3351#line 338
3352    if (tmp___1) {
3353
3354    } else {
3355      {
3356#line 338
3357      __cil_tmp9 = ldv_s_hampshire_drv_serio_driver == 0;
3358#line 338
3359      if (! __cil_tmp9) {
3360
3361      } else {
3362#line 338
3363        goto while_break;
3364      }
3365      }
3366    }
3367    {
3368#line 342
3369    tmp___0 = __VERIFIER_nondet_int();
3370    }
3371#line 344
3372    if (tmp___0 == 0) {
3373#line 344
3374      goto case_0;
3375    } else
3376#line 375
3377    if (tmp___0 == 1) {
3378#line 375
3379      goto case_1;
3380    } else
3381#line 403
3382    if (tmp___0 == 2) {
3383#line 403
3384      goto case_2;
3385    } else {
3386      {
3387#line 431
3388      goto switch_default;
3389#line 342
3390      if (0) {
3391        case_0: /* CIL Label */ 
3392#line 347
3393        if (ldv_s_hampshire_drv_serio_driver == 0) {
3394          {
3395#line 364
3396          res_hampshire_connect_3 = hampshire_connect(var_group1, var_group2);
3397#line 365
3398          ldv_check_return_value(res_hampshire_connect_3);
3399          }
3400#line 366
3401          if (res_hampshire_connect_3) {
3402#line 367
3403            goto ldv_module_exit;
3404          } else {
3405
3406          }
3407#line 368
3408          ldv_s_hampshire_drv_serio_driver = ldv_s_hampshire_drv_serio_driver + 1;
3409        } else {
3410
3411        }
3412#line 374
3413        goto switch_break;
3414        case_1: /* CIL Label */ 
3415#line 378
3416        if (ldv_s_hampshire_drv_serio_driver == 1) {
3417          {
3418#line 395
3419          hampshire_disconnect(var_group1);
3420#line 396
3421          ldv_s_hampshire_drv_serio_driver = 0;
3422          }
3423        } else {
3424
3425        }
3426#line 402
3427        goto switch_break;
3428        case_2: /* CIL Label */ 
3429        {
3430#line 423
3431        hampshire_interrupt(var_group1, var_hampshire_interrupt_1_p1, var_hampshire_interrupt_1_p2);
3432        }
3433#line 430
3434        goto switch_break;
3435        switch_default: /* CIL Label */ 
3436#line 431
3437        goto switch_break;
3438      } else {
3439        switch_break: /* CIL Label */ ;
3440      }
3441      }
3442    }
3443  }
3444  while_break: /* CIL Label */ ;
3445  }
3446  ldv_module_exit: 
3447  {
3448#line 455
3449  hampshire_exit();
3450  }
3451  ldv_final: 
3452  {
3453#line 458
3454  ldv_check_final_state();
3455  }
3456#line 461
3457  return;
3458}
3459}
3460#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
3461void ldv_blast_assert(void) 
3462{ 
3463
3464  {
3465  ERROR: 
3466#line 6
3467  goto ERROR;
3468}
3469}
3470#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
3471extern int __VERIFIER_nondet_int(void) ;
3472#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3473int ldv_mutex  =    1;
3474#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3475int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
3476{ int nondetermined ;
3477
3478  {
3479#line 29
3480  if (ldv_mutex == 1) {
3481
3482  } else {
3483    {
3484#line 29
3485    ldv_blast_assert();
3486    }
3487  }
3488  {
3489#line 32
3490  nondetermined = __VERIFIER_nondet_int();
3491  }
3492#line 35
3493  if (nondetermined) {
3494#line 38
3495    ldv_mutex = 2;
3496#line 40
3497    return (0);
3498  } else {
3499#line 45
3500    return (-4);
3501  }
3502}
3503}
3504#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3505int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
3506{ int nondetermined ;
3507
3508  {
3509#line 57
3510  if (ldv_mutex == 1) {
3511
3512  } else {
3513    {
3514#line 57
3515    ldv_blast_assert();
3516    }
3517  }
3518  {
3519#line 60
3520  nondetermined = __VERIFIER_nondet_int();
3521  }
3522#line 63
3523  if (nondetermined) {
3524#line 66
3525    ldv_mutex = 2;
3526#line 68
3527    return (0);
3528  } else {
3529#line 73
3530    return (-4);
3531  }
3532}
3533}
3534#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3535int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
3536{ int atomic_value_after_dec ;
3537
3538  {
3539#line 83
3540  if (ldv_mutex == 1) {
3541
3542  } else {
3543    {
3544#line 83
3545    ldv_blast_assert();
3546    }
3547  }
3548  {
3549#line 86
3550  atomic_value_after_dec = __VERIFIER_nondet_int();
3551  }
3552#line 89
3553  if (atomic_value_after_dec == 0) {
3554#line 92
3555    ldv_mutex = 2;
3556#line 94
3557    return (1);
3558  } else {
3559
3560  }
3561#line 98
3562  return (0);
3563}
3564}
3565#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3566void mutex_lock(struct mutex *lock ) 
3567{ 
3568
3569  {
3570#line 108
3571  if (ldv_mutex == 1) {
3572
3573  } else {
3574    {
3575#line 108
3576    ldv_blast_assert();
3577    }
3578  }
3579#line 110
3580  ldv_mutex = 2;
3581#line 111
3582  return;
3583}
3584}
3585#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3586int mutex_trylock(struct mutex *lock ) 
3587{ int nondetermined ;
3588
3589  {
3590#line 121
3591  if (ldv_mutex == 1) {
3592
3593  } else {
3594    {
3595#line 121
3596    ldv_blast_assert();
3597    }
3598  }
3599  {
3600#line 124
3601  nondetermined = __VERIFIER_nondet_int();
3602  }
3603#line 127
3604  if (nondetermined) {
3605#line 130
3606    ldv_mutex = 2;
3607#line 132
3608    return (1);
3609  } else {
3610#line 137
3611    return (0);
3612  }
3613}
3614}
3615#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3616void mutex_unlock(struct mutex *lock ) 
3617{ 
3618
3619  {
3620#line 147
3621  if (ldv_mutex == 2) {
3622
3623  } else {
3624    {
3625#line 147
3626    ldv_blast_assert();
3627    }
3628  }
3629#line 149
3630  ldv_mutex = 1;
3631#line 150
3632  return;
3633}
3634}
3635#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3636void ldv_check_final_state(void) 
3637{ 
3638
3639  {
3640#line 156
3641  if (ldv_mutex == 1) {
3642
3643  } else {
3644    {
3645#line 156
3646    ldv_blast_assert();
3647    }
3648  }
3649#line 157
3650  return;
3651}
3652}
3653#line 470 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4177/dscv_tempdir/dscv/ri/32_1/drivers/input/touchscreen/hampshire.c.common.c"
3654long s__builtin_expect(long val , long res ) 
3655{ 
3656
3657  {
3658#line 471
3659  return (val);
3660}
3661}