Showing error 261

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--misc--apanel.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 5731
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 29 "include/asm-generic/int-ll64.h"
  17typedef long long __s64;
  18#line 30 "include/asm-generic/int-ll64.h"
  19typedef unsigned long long __u64;
  20#line 43 "include/asm-generic/int-ll64.h"
  21typedef unsigned char u8;
  22#line 45 "include/asm-generic/int-ll64.h"
  23typedef short s16;
  24#line 46 "include/asm-generic/int-ll64.h"
  25typedef unsigned short u16;
  26#line 48 "include/asm-generic/int-ll64.h"
  27typedef int s32;
  28#line 49 "include/asm-generic/int-ll64.h"
  29typedef unsigned int u32;
  30#line 51 "include/asm-generic/int-ll64.h"
  31typedef long long s64;
  32#line 52 "include/asm-generic/int-ll64.h"
  33typedef unsigned long long u64;
  34#line 14 "include/asm-generic/posix_types.h"
  35typedef long __kernel_long_t;
  36#line 15 "include/asm-generic/posix_types.h"
  37typedef unsigned long __kernel_ulong_t;
  38#line 31 "include/asm-generic/posix_types.h"
  39typedef int __kernel_pid_t;
  40#line 52 "include/asm-generic/posix_types.h"
  41typedef unsigned int __kernel_uid32_t;
  42#line 53 "include/asm-generic/posix_types.h"
  43typedef unsigned int __kernel_gid32_t;
  44#line 75 "include/asm-generic/posix_types.h"
  45typedef __kernel_ulong_t __kernel_size_t;
  46#line 76 "include/asm-generic/posix_types.h"
  47typedef __kernel_long_t __kernel_ssize_t;
  48#line 91 "include/asm-generic/posix_types.h"
  49typedef long long __kernel_loff_t;
  50#line 92 "include/asm-generic/posix_types.h"
  51typedef __kernel_long_t __kernel_time_t;
  52#line 93 "include/asm-generic/posix_types.h"
  53typedef __kernel_long_t __kernel_clock_t;
  54#line 94 "include/asm-generic/posix_types.h"
  55typedef int __kernel_timer_t;
  56#line 95 "include/asm-generic/posix_types.h"
  57typedef int __kernel_clockid_t;
  58#line 21 "include/linux/types.h"
  59typedef __u32 __kernel_dev_t;
  60#line 24 "include/linux/types.h"
  61typedef __kernel_dev_t dev_t;
  62#line 27 "include/linux/types.h"
  63typedef unsigned short umode_t;
  64#line 30 "include/linux/types.h"
  65typedef __kernel_pid_t pid_t;
  66#line 35 "include/linux/types.h"
  67typedef __kernel_clockid_t clockid_t;
  68#line 38 "include/linux/types.h"
  69typedef _Bool bool;
  70#line 40 "include/linux/types.h"
  71typedef __kernel_uid32_t uid_t;
  72#line 41 "include/linux/types.h"
  73typedef __kernel_gid32_t gid_t;
  74#line 54 "include/linux/types.h"
  75typedef __kernel_loff_t loff_t;
  76#line 63 "include/linux/types.h"
  77typedef __kernel_size_t size_t;
  78#line 68 "include/linux/types.h"
  79typedef __kernel_ssize_t ssize_t;
  80#line 78 "include/linux/types.h"
  81typedef __kernel_time_t time_t;
  82#line 111 "include/linux/types.h"
  83typedef __s32 int32_t;
  84#line 117 "include/linux/types.h"
  85typedef __u32 uint32_t;
  86#line 142 "include/linux/types.h"
  87typedef unsigned long sector_t;
  88#line 143 "include/linux/types.h"
  89typedef unsigned long blkcnt_t;
  90#line 202 "include/linux/types.h"
  91typedef unsigned int gfp_t;
  92#line 203 "include/linux/types.h"
  93typedef unsigned int fmode_t;
  94#line 206 "include/linux/types.h"
  95typedef u64 phys_addr_t;
  96#line 211 "include/linux/types.h"
  97typedef phys_addr_t resource_size_t;
  98#line 219 "include/linux/types.h"
  99struct __anonstruct_atomic_t_7 {
 100   int counter ;
 101};
 102#line 219 "include/linux/types.h"
 103typedef struct __anonstruct_atomic_t_7 atomic_t;
 104#line 224 "include/linux/types.h"
 105struct __anonstruct_atomic64_t_8 {
 106   long counter ;
 107};
 108#line 224 "include/linux/types.h"
 109typedef struct __anonstruct_atomic64_t_8 atomic64_t;
 110#line 229 "include/linux/types.h"
 111struct list_head {
 112   struct list_head *next ;
 113   struct list_head *prev ;
 114};
 115#line 233
 116struct hlist_node;
 117#line 233 "include/linux/types.h"
 118struct hlist_head {
 119   struct hlist_node *first ;
 120};
 121#line 237 "include/linux/types.h"
 122struct hlist_node {
 123   struct hlist_node *next ;
 124   struct hlist_node **pprev ;
 125};
 126#line 253 "include/linux/types.h"
 127struct rcu_head {
 128   struct rcu_head *next ;
 129   void (*func)(struct rcu_head *head ) ;
 130};
 131#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 132struct module;
 133#line 56
 134struct module;
 135#line 146 "include/linux/init.h"
 136typedef void (*ctor_fn_t)(void);
 137#line 9 "include/linux/dynamic_debug.h"
 138struct _ddebug {
 139   char const   *modname ;
 140   char const   *function ;
 141   char const   *filename ;
 142   char const   *format ;
 143   unsigned int lineno : 18 ;
 144   unsigned int flags : 8 ;
 145} __attribute__((__aligned__(8))) ;
 146#line 47
 147struct device;
 148#line 47
 149struct device;
 150#line 135 "include/linux/kernel.h"
 151struct completion;
 152#line 135
 153struct completion;
 154#line 136
 155struct pt_regs;
 156#line 136
 157struct pt_regs;
 158#line 349
 159struct pid;
 160#line 349
 161struct pid;
 162#line 12 "include/linux/thread_info.h"
 163struct timespec;
 164#line 12
 165struct timespec;
 166#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
 167struct page;
 168#line 18
 169struct page;
 170#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 171struct task_struct;
 172#line 20
 173struct task_struct;
 174#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 175struct task_struct;
 176#line 8
 177struct mm_struct;
 178#line 8
 179struct mm_struct;
 180#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 181struct pt_regs {
 182   unsigned long r15 ;
 183   unsigned long r14 ;
 184   unsigned long r13 ;
 185   unsigned long r12 ;
 186   unsigned long bp ;
 187   unsigned long bx ;
 188   unsigned long r11 ;
 189   unsigned long r10 ;
 190   unsigned long r9 ;
 191   unsigned long r8 ;
 192   unsigned long ax ;
 193   unsigned long cx ;
 194   unsigned long dx ;
 195   unsigned long si ;
 196   unsigned long di ;
 197   unsigned long orig_ax ;
 198   unsigned long ip ;
 199   unsigned long cs ;
 200   unsigned long flags ;
 201   unsigned long sp ;
 202   unsigned long ss ;
 203};
 204#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 205struct __anonstruct____missing_field_name_15 {
 206   unsigned int a ;
 207   unsigned int b ;
 208};
 209#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 210struct __anonstruct____missing_field_name_16 {
 211   u16 limit0 ;
 212   u16 base0 ;
 213   unsigned int base1 : 8 ;
 214   unsigned int type : 4 ;
 215   unsigned int s : 1 ;
 216   unsigned int dpl : 2 ;
 217   unsigned int p : 1 ;
 218   unsigned int limit : 4 ;
 219   unsigned int avl : 1 ;
 220   unsigned int l : 1 ;
 221   unsigned int d : 1 ;
 222   unsigned int g : 1 ;
 223   unsigned int base2 : 8 ;
 224};
 225#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 226union __anonunion____missing_field_name_14 {
 227   struct __anonstruct____missing_field_name_15 __annonCompField5 ;
 228   struct __anonstruct____missing_field_name_16 __annonCompField6 ;
 229};
 230#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 231struct desc_struct {
 232   union __anonunion____missing_field_name_14 __annonCompField7 ;
 233} __attribute__((__packed__)) ;
 234#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 235typedef unsigned long pgdval_t;
 236#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 237typedef unsigned long pgprotval_t;
 238#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 239struct pgprot {
 240   pgprotval_t pgprot ;
 241};
 242#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 243typedef struct pgprot pgprot_t;
 244#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 245struct __anonstruct_pgd_t_20 {
 246   pgdval_t pgd ;
 247};
 248#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 249typedef struct __anonstruct_pgd_t_20 pgd_t;
 250#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 251typedef struct page *pgtable_t;
 252#line 295
 253struct file;
 254#line 295
 255struct file;
 256#line 313
 257struct seq_file;
 258#line 313
 259struct seq_file;
 260#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 261struct page;
 262#line 47
 263struct thread_struct;
 264#line 47
 265struct thread_struct;
 266#line 50
 267struct mm_struct;
 268#line 51
 269struct desc_struct;
 270#line 52
 271struct task_struct;
 272#line 53
 273struct cpumask;
 274#line 53
 275struct cpumask;
 276#line 329
 277struct arch_spinlock;
 278#line 329
 279struct arch_spinlock;
 280#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 281struct task_struct;
 282#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
 283struct kernel_vm86_regs {
 284   struct pt_regs pt ;
 285   unsigned short es ;
 286   unsigned short __esh ;
 287   unsigned short ds ;
 288   unsigned short __dsh ;
 289   unsigned short fs ;
 290   unsigned short __fsh ;
 291   unsigned short gs ;
 292   unsigned short __gsh ;
 293};
 294#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 295union __anonunion____missing_field_name_24 {
 296   struct pt_regs *regs ;
 297   struct kernel_vm86_regs *vm86 ;
 298};
 299#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 300struct math_emu_info {
 301   long ___orig_eip ;
 302   union __anonunion____missing_field_name_24 __annonCompField8 ;
 303};
 304#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 305struct task_struct;
 306#line 10 "include/asm-generic/bug.h"
 307struct bug_entry {
 308   int bug_addr_disp ;
 309   int file_disp ;
 310   unsigned short line ;
 311   unsigned short flags ;
 312};
 313#line 12 "include/linux/bug.h"
 314struct pt_regs;
 315#line 14 "include/linux/cpumask.h"
 316struct cpumask {
 317   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 318};
 319#line 14 "include/linux/cpumask.h"
 320typedef struct cpumask cpumask_t;
 321#line 637 "include/linux/cpumask.h"
 322typedef struct cpumask *cpumask_var_t;
 323#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 324struct static_key;
 325#line 234
 326struct static_key;
 327#line 11 "include/linux/personality.h"
 328struct pt_regs;
 329#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 330struct i387_fsave_struct {
 331   u32 cwd ;
 332   u32 swd ;
 333   u32 twd ;
 334   u32 fip ;
 335   u32 fcs ;
 336   u32 foo ;
 337   u32 fos ;
 338   u32 st_space[20] ;
 339   u32 status ;
 340};
 341#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 342struct __anonstruct____missing_field_name_31 {
 343   u64 rip ;
 344   u64 rdp ;
 345};
 346#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 347struct __anonstruct____missing_field_name_32 {
 348   u32 fip ;
 349   u32 fcs ;
 350   u32 foo ;
 351   u32 fos ;
 352};
 353#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 354union __anonunion____missing_field_name_30 {
 355   struct __anonstruct____missing_field_name_31 __annonCompField12 ;
 356   struct __anonstruct____missing_field_name_32 __annonCompField13 ;
 357};
 358#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 359union __anonunion____missing_field_name_33 {
 360   u32 padding1[12] ;
 361   u32 sw_reserved[12] ;
 362};
 363#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 364struct i387_fxsave_struct {
 365   u16 cwd ;
 366   u16 swd ;
 367   u16 twd ;
 368   u16 fop ;
 369   union __anonunion____missing_field_name_30 __annonCompField14 ;
 370   u32 mxcsr ;
 371   u32 mxcsr_mask ;
 372   u32 st_space[32] ;
 373   u32 xmm_space[64] ;
 374   u32 padding[12] ;
 375   union __anonunion____missing_field_name_33 __annonCompField15 ;
 376} __attribute__((__aligned__(16))) ;
 377#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 378struct i387_soft_struct {
 379   u32 cwd ;
 380   u32 swd ;
 381   u32 twd ;
 382   u32 fip ;
 383   u32 fcs ;
 384   u32 foo ;
 385   u32 fos ;
 386   u32 st_space[20] ;
 387   u8 ftop ;
 388   u8 changed ;
 389   u8 lookahead ;
 390   u8 no_update ;
 391   u8 rm ;
 392   u8 alimit ;
 393   struct math_emu_info *info ;
 394   u32 entry_eip ;
 395};
 396#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 397struct ymmh_struct {
 398   u32 ymmh_space[64] ;
 399};
 400#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 401struct xsave_hdr_struct {
 402   u64 xstate_bv ;
 403   u64 reserved1[2] ;
 404   u64 reserved2[5] ;
 405} __attribute__((__packed__)) ;
 406#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 407struct xsave_struct {
 408   struct i387_fxsave_struct i387 ;
 409   struct xsave_hdr_struct xsave_hdr ;
 410   struct ymmh_struct ymmh ;
 411} __attribute__((__packed__, __aligned__(64))) ;
 412#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 413union thread_xstate {
 414   struct i387_fsave_struct fsave ;
 415   struct i387_fxsave_struct fxsave ;
 416   struct i387_soft_struct soft ;
 417   struct xsave_struct xsave ;
 418};
 419#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 420struct fpu {
 421   unsigned int last_cpu ;
 422   unsigned int has_fpu ;
 423   union thread_xstate *state ;
 424};
 425#line 433
 426struct kmem_cache;
 427#line 435
 428struct perf_event;
 429#line 435
 430struct perf_event;
 431#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 432struct thread_struct {
 433   struct desc_struct tls_array[3] ;
 434   unsigned long sp0 ;
 435   unsigned long sp ;
 436   unsigned long usersp ;
 437   unsigned short es ;
 438   unsigned short ds ;
 439   unsigned short fsindex ;
 440   unsigned short gsindex ;
 441   unsigned long fs ;
 442   unsigned long gs ;
 443   struct perf_event *ptrace_bps[4] ;
 444   unsigned long debugreg6 ;
 445   unsigned long ptrace_dr7 ;
 446   unsigned long cr2 ;
 447   unsigned long trap_nr ;
 448   unsigned long error_code ;
 449   struct fpu fpu ;
 450   unsigned long *io_bitmap_ptr ;
 451   unsigned long iopl ;
 452   unsigned int io_bitmap_max ;
 453};
 454#line 23 "include/asm-generic/atomic-long.h"
 455typedef atomic64_t atomic_long_t;
 456#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 457typedef u16 __ticket_t;
 458#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 459typedef u32 __ticketpair_t;
 460#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 461struct __raw_tickets {
 462   __ticket_t head ;
 463   __ticket_t tail ;
 464};
 465#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 466union __anonunion____missing_field_name_36 {
 467   __ticketpair_t head_tail ;
 468   struct __raw_tickets tickets ;
 469};
 470#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 471struct arch_spinlock {
 472   union __anonunion____missing_field_name_36 __annonCompField17 ;
 473};
 474#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 475typedef struct arch_spinlock arch_spinlock_t;
 476#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 477struct __anonstruct____missing_field_name_38 {
 478   u32 read ;
 479   s32 write ;
 480};
 481#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 482union __anonunion_arch_rwlock_t_37 {
 483   s64 lock ;
 484   struct __anonstruct____missing_field_name_38 __annonCompField18 ;
 485};
 486#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 487typedef union __anonunion_arch_rwlock_t_37 arch_rwlock_t;
 488#line 12 "include/linux/lockdep.h"
 489struct task_struct;
 490#line 391 "include/linux/lockdep.h"
 491struct lock_class_key {
 492
 493};
 494#line 20 "include/linux/spinlock_types.h"
 495struct raw_spinlock {
 496   arch_spinlock_t raw_lock ;
 497   unsigned int magic ;
 498   unsigned int owner_cpu ;
 499   void *owner ;
 500};
 501#line 20 "include/linux/spinlock_types.h"
 502typedef struct raw_spinlock raw_spinlock_t;
 503#line 64 "include/linux/spinlock_types.h"
 504union __anonunion____missing_field_name_39 {
 505   struct raw_spinlock rlock ;
 506};
 507#line 64 "include/linux/spinlock_types.h"
 508struct spinlock {
 509   union __anonunion____missing_field_name_39 __annonCompField19 ;
 510};
 511#line 64 "include/linux/spinlock_types.h"
 512typedef struct spinlock spinlock_t;
 513#line 11 "include/linux/rwlock_types.h"
 514struct __anonstruct_rwlock_t_40 {
 515   arch_rwlock_t raw_lock ;
 516   unsigned int magic ;
 517   unsigned int owner_cpu ;
 518   void *owner ;
 519};
 520#line 11 "include/linux/rwlock_types.h"
 521typedef struct __anonstruct_rwlock_t_40 rwlock_t;
 522#line 119 "include/linux/seqlock.h"
 523struct seqcount {
 524   unsigned int sequence ;
 525};
 526#line 119 "include/linux/seqlock.h"
 527typedef struct seqcount seqcount_t;
 528#line 14 "include/linux/time.h"
 529struct timespec {
 530   __kernel_time_t tv_sec ;
 531   long tv_nsec ;
 532};
 533#line 62 "include/linux/stat.h"
 534struct kstat {
 535   u64 ino ;
 536   dev_t dev ;
 537   umode_t mode ;
 538   unsigned int nlink ;
 539   uid_t uid ;
 540   gid_t gid ;
 541   dev_t rdev ;
 542   loff_t size ;
 543   struct timespec atime ;
 544   struct timespec mtime ;
 545   struct timespec ctime ;
 546   unsigned long blksize ;
 547   unsigned long long blocks ;
 548};
 549#line 49 "include/linux/wait.h"
 550struct __wait_queue_head {
 551   spinlock_t lock ;
 552   struct list_head task_list ;
 553};
 554#line 53 "include/linux/wait.h"
 555typedef struct __wait_queue_head wait_queue_head_t;
 556#line 55
 557struct task_struct;
 558#line 98 "include/linux/nodemask.h"
 559struct __anonstruct_nodemask_t_42 {
 560   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 561};
 562#line 98 "include/linux/nodemask.h"
 563typedef struct __anonstruct_nodemask_t_42 nodemask_t;
 564#line 60 "include/linux/pageblock-flags.h"
 565struct page;
 566#line 48 "include/linux/mutex.h"
 567struct mutex {
 568   atomic_t count ;
 569   spinlock_t wait_lock ;
 570   struct list_head wait_list ;
 571   struct task_struct *owner ;
 572   char const   *name ;
 573   void *magic ;
 574};
 575#line 69 "include/linux/mutex.h"
 576struct mutex_waiter {
 577   struct list_head list ;
 578   struct task_struct *task ;
 579   void *magic ;
 580};
 581#line 19 "include/linux/rwsem.h"
 582struct rw_semaphore;
 583#line 19
 584struct rw_semaphore;
 585#line 25 "include/linux/rwsem.h"
 586struct rw_semaphore {
 587   long count ;
 588   raw_spinlock_t wait_lock ;
 589   struct list_head wait_list ;
 590};
 591#line 25 "include/linux/completion.h"
 592struct completion {
 593   unsigned int done ;
 594   wait_queue_head_t wait ;
 595};
 596#line 9 "include/linux/memory_hotplug.h"
 597struct page;
 598#line 202 "include/linux/ioport.h"
 599struct device;
 600#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
 601struct device;
 602#line 46 "include/linux/ktime.h"
 603union ktime {
 604   s64 tv64 ;
 605};
 606#line 59 "include/linux/ktime.h"
 607typedef union ktime ktime_t;
 608#line 10 "include/linux/timer.h"
 609struct tvec_base;
 610#line 10
 611struct tvec_base;
 612#line 12 "include/linux/timer.h"
 613struct timer_list {
 614   struct list_head entry ;
 615   unsigned long expires ;
 616   struct tvec_base *base ;
 617   void (*function)(unsigned long  ) ;
 618   unsigned long data ;
 619   int slack ;
 620   int start_pid ;
 621   void *start_site ;
 622   char start_comm[16] ;
 623};
 624#line 289
 625struct hrtimer;
 626#line 289
 627struct hrtimer;
 628#line 290
 629enum hrtimer_restart;
 630#line 17 "include/linux/workqueue.h"
 631struct work_struct;
 632#line 17
 633struct work_struct;
 634#line 79 "include/linux/workqueue.h"
 635struct work_struct {
 636   atomic_long_t data ;
 637   struct list_head entry ;
 638   void (*func)(struct work_struct *work ) ;
 639};
 640#line 92 "include/linux/workqueue.h"
 641struct delayed_work {
 642   struct work_struct work ;
 643   struct timer_list timer ;
 644};
 645#line 42 "include/linux/pm.h"
 646struct device;
 647#line 50 "include/linux/pm.h"
 648struct pm_message {
 649   int event ;
 650};
 651#line 50 "include/linux/pm.h"
 652typedef struct pm_message pm_message_t;
 653#line 264 "include/linux/pm.h"
 654struct dev_pm_ops {
 655   int (*prepare)(struct device *dev ) ;
 656   void (*complete)(struct device *dev ) ;
 657   int (*suspend)(struct device *dev ) ;
 658   int (*resume)(struct device *dev ) ;
 659   int (*freeze)(struct device *dev ) ;
 660   int (*thaw)(struct device *dev ) ;
 661   int (*poweroff)(struct device *dev ) ;
 662   int (*restore)(struct device *dev ) ;
 663   int (*suspend_late)(struct device *dev ) ;
 664   int (*resume_early)(struct device *dev ) ;
 665   int (*freeze_late)(struct device *dev ) ;
 666   int (*thaw_early)(struct device *dev ) ;
 667   int (*poweroff_late)(struct device *dev ) ;
 668   int (*restore_early)(struct device *dev ) ;
 669   int (*suspend_noirq)(struct device *dev ) ;
 670   int (*resume_noirq)(struct device *dev ) ;
 671   int (*freeze_noirq)(struct device *dev ) ;
 672   int (*thaw_noirq)(struct device *dev ) ;
 673   int (*poweroff_noirq)(struct device *dev ) ;
 674   int (*restore_noirq)(struct device *dev ) ;
 675   int (*runtime_suspend)(struct device *dev ) ;
 676   int (*runtime_resume)(struct device *dev ) ;
 677   int (*runtime_idle)(struct device *dev ) ;
 678};
 679#line 458
 680enum rpm_status {
 681    RPM_ACTIVE = 0,
 682    RPM_RESUMING = 1,
 683    RPM_SUSPENDED = 2,
 684    RPM_SUSPENDING = 3
 685} ;
 686#line 480
 687enum rpm_request {
 688    RPM_REQ_NONE = 0,
 689    RPM_REQ_IDLE = 1,
 690    RPM_REQ_SUSPEND = 2,
 691    RPM_REQ_AUTOSUSPEND = 3,
 692    RPM_REQ_RESUME = 4
 693} ;
 694#line 488
 695struct wakeup_source;
 696#line 488
 697struct wakeup_source;
 698#line 495 "include/linux/pm.h"
 699struct pm_subsys_data {
 700   spinlock_t lock ;
 701   unsigned int refcount ;
 702};
 703#line 506
 704struct dev_pm_qos_request;
 705#line 506
 706struct pm_qos_constraints;
 707#line 506 "include/linux/pm.h"
 708struct dev_pm_info {
 709   pm_message_t power_state ;
 710   unsigned int can_wakeup : 1 ;
 711   unsigned int async_suspend : 1 ;
 712   bool is_prepared : 1 ;
 713   bool is_suspended : 1 ;
 714   bool ignore_children : 1 ;
 715   spinlock_t lock ;
 716   struct list_head entry ;
 717   struct completion completion ;
 718   struct wakeup_source *wakeup ;
 719   bool wakeup_path : 1 ;
 720   struct timer_list suspend_timer ;
 721   unsigned long timer_expires ;
 722   struct work_struct work ;
 723   wait_queue_head_t wait_queue ;
 724   atomic_t usage_count ;
 725   atomic_t child_count ;
 726   unsigned int disable_depth : 3 ;
 727   unsigned int idle_notification : 1 ;
 728   unsigned int request_pending : 1 ;
 729   unsigned int deferred_resume : 1 ;
 730   unsigned int run_wake : 1 ;
 731   unsigned int runtime_auto : 1 ;
 732   unsigned int no_callbacks : 1 ;
 733   unsigned int irq_safe : 1 ;
 734   unsigned int use_autosuspend : 1 ;
 735   unsigned int timer_autosuspends : 1 ;
 736   enum rpm_request request ;
 737   enum rpm_status runtime_status ;
 738   int runtime_error ;
 739   int autosuspend_delay ;
 740   unsigned long last_busy ;
 741   unsigned long active_jiffies ;
 742   unsigned long suspended_jiffies ;
 743   unsigned long accounting_timestamp ;
 744   ktime_t suspend_time ;
 745   s64 max_time_suspended_ns ;
 746   struct dev_pm_qos_request *pq_req ;
 747   struct pm_subsys_data *subsys_data ;
 748   struct pm_qos_constraints *constraints ;
 749};
 750#line 564 "include/linux/pm.h"
 751struct dev_pm_domain {
 752   struct dev_pm_ops ops ;
 753};
 754#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 755struct __anonstruct_mm_context_t_112 {
 756   void *ldt ;
 757   int size ;
 758   unsigned short ia32_compat ;
 759   struct mutex lock ;
 760   void *vdso ;
 761};
 762#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 763typedef struct __anonstruct_mm_context_t_112 mm_context_t;
 764#line 8 "include/linux/vmalloc.h"
 765struct vm_area_struct;
 766#line 8
 767struct vm_area_struct;
 768#line 994 "include/linux/mmzone.h"
 769struct page;
 770#line 10 "include/linux/gfp.h"
 771struct vm_area_struct;
 772#line 29 "include/linux/sysctl.h"
 773struct completion;
 774#line 100 "include/linux/rbtree.h"
 775struct rb_node {
 776   unsigned long rb_parent_color ;
 777   struct rb_node *rb_right ;
 778   struct rb_node *rb_left ;
 779} __attribute__((__aligned__(sizeof(long )))) ;
 780#line 110 "include/linux/rbtree.h"
 781struct rb_root {
 782   struct rb_node *rb_node ;
 783};
 784#line 939 "include/linux/sysctl.h"
 785struct nsproxy;
 786#line 939
 787struct nsproxy;
 788#line 48 "include/linux/kmod.h"
 789struct cred;
 790#line 48
 791struct cred;
 792#line 49
 793struct file;
 794#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 795struct task_struct;
 796#line 18 "include/linux/elf.h"
 797typedef __u64 Elf64_Addr;
 798#line 19 "include/linux/elf.h"
 799typedef __u16 Elf64_Half;
 800#line 23 "include/linux/elf.h"
 801typedef __u32 Elf64_Word;
 802#line 24 "include/linux/elf.h"
 803typedef __u64 Elf64_Xword;
 804#line 194 "include/linux/elf.h"
 805struct elf64_sym {
 806   Elf64_Word st_name ;
 807   unsigned char st_info ;
 808   unsigned char st_other ;
 809   Elf64_Half st_shndx ;
 810   Elf64_Addr st_value ;
 811   Elf64_Xword st_size ;
 812};
 813#line 194 "include/linux/elf.h"
 814typedef struct elf64_sym Elf64_Sym;
 815#line 438
 816struct file;
 817#line 20 "include/linux/kobject_ns.h"
 818struct sock;
 819#line 20
 820struct sock;
 821#line 21
 822struct kobject;
 823#line 21
 824struct kobject;
 825#line 27
 826enum kobj_ns_type {
 827    KOBJ_NS_TYPE_NONE = 0,
 828    KOBJ_NS_TYPE_NET = 1,
 829    KOBJ_NS_TYPES = 2
 830} ;
 831#line 40 "include/linux/kobject_ns.h"
 832struct kobj_ns_type_operations {
 833   enum kobj_ns_type type ;
 834   void *(*grab_current_ns)(void) ;
 835   void const   *(*netlink_ns)(struct sock *sk ) ;
 836   void const   *(*initial_ns)(void) ;
 837   void (*drop_ns)(void * ) ;
 838};
 839#line 22 "include/linux/sysfs.h"
 840struct kobject;
 841#line 23
 842struct module;
 843#line 24
 844enum kobj_ns_type;
 845#line 26 "include/linux/sysfs.h"
 846struct attribute {
 847   char const   *name ;
 848   umode_t mode ;
 849};
 850#line 56 "include/linux/sysfs.h"
 851struct attribute_group {
 852   char const   *name ;
 853   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 854   struct attribute **attrs ;
 855};
 856#line 85
 857struct file;
 858#line 86
 859struct vm_area_struct;
 860#line 88 "include/linux/sysfs.h"
 861struct bin_attribute {
 862   struct attribute attr ;
 863   size_t size ;
 864   void *private ;
 865   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 866                   loff_t  , size_t  ) ;
 867   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 868                    loff_t  , size_t  ) ;
 869   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 870};
 871#line 112 "include/linux/sysfs.h"
 872struct sysfs_ops {
 873   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 874   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 875   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 876};
 877#line 118
 878struct sysfs_dirent;
 879#line 118
 880struct sysfs_dirent;
 881#line 22 "include/linux/kref.h"
 882struct kref {
 883   atomic_t refcount ;
 884};
 885#line 60 "include/linux/kobject.h"
 886struct kset;
 887#line 60
 888struct kobj_type;
 889#line 60 "include/linux/kobject.h"
 890struct kobject {
 891   char const   *name ;
 892   struct list_head entry ;
 893   struct kobject *parent ;
 894   struct kset *kset ;
 895   struct kobj_type *ktype ;
 896   struct sysfs_dirent *sd ;
 897   struct kref kref ;
 898   unsigned int state_initialized : 1 ;
 899   unsigned int state_in_sysfs : 1 ;
 900   unsigned int state_add_uevent_sent : 1 ;
 901   unsigned int state_remove_uevent_sent : 1 ;
 902   unsigned int uevent_suppress : 1 ;
 903};
 904#line 108 "include/linux/kobject.h"
 905struct kobj_type {
 906   void (*release)(struct kobject *kobj ) ;
 907   struct sysfs_ops  const  *sysfs_ops ;
 908   struct attribute **default_attrs ;
 909   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 910   void const   *(*namespace)(struct kobject *kobj ) ;
 911};
 912#line 116 "include/linux/kobject.h"
 913struct kobj_uevent_env {
 914   char *envp[32] ;
 915   int envp_idx ;
 916   char buf[2048] ;
 917   int buflen ;
 918};
 919#line 123 "include/linux/kobject.h"
 920struct kset_uevent_ops {
 921   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 922   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 923   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 924};
 925#line 140
 926struct sock;
 927#line 159 "include/linux/kobject.h"
 928struct kset {
 929   struct list_head list ;
 930   spinlock_t list_lock ;
 931   struct kobject kobj ;
 932   struct kset_uevent_ops  const  *uevent_ops ;
 933};
 934#line 39 "include/linux/moduleparam.h"
 935struct kernel_param;
 936#line 39
 937struct kernel_param;
 938#line 41 "include/linux/moduleparam.h"
 939struct kernel_param_ops {
 940   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 941   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 942   void (*free)(void *arg ) ;
 943};
 944#line 50
 945struct kparam_string;
 946#line 50
 947struct kparam_array;
 948#line 50 "include/linux/moduleparam.h"
 949union __anonunion____missing_field_name_199 {
 950   void *arg ;
 951   struct kparam_string  const  *str ;
 952   struct kparam_array  const  *arr ;
 953};
 954#line 50 "include/linux/moduleparam.h"
 955struct kernel_param {
 956   char const   *name ;
 957   struct kernel_param_ops  const  *ops ;
 958   u16 perm ;
 959   s16 level ;
 960   union __anonunion____missing_field_name_199 __annonCompField32 ;
 961};
 962#line 63 "include/linux/moduleparam.h"
 963struct kparam_string {
 964   unsigned int maxlen ;
 965   char *string ;
 966};
 967#line 69 "include/linux/moduleparam.h"
 968struct kparam_array {
 969   unsigned int max ;
 970   unsigned int elemsize ;
 971   unsigned int *num ;
 972   struct kernel_param_ops  const  *ops ;
 973   void *elem ;
 974};
 975#line 445
 976struct module;
 977#line 80 "include/linux/jump_label.h"
 978struct module;
 979#line 143 "include/linux/jump_label.h"
 980struct static_key {
 981   atomic_t enabled ;
 982};
 983#line 22 "include/linux/tracepoint.h"
 984struct module;
 985#line 23
 986struct tracepoint;
 987#line 23
 988struct tracepoint;
 989#line 25 "include/linux/tracepoint.h"
 990struct tracepoint_func {
 991   void *func ;
 992   void *data ;
 993};
 994#line 30 "include/linux/tracepoint.h"
 995struct tracepoint {
 996   char const   *name ;
 997   struct static_key key ;
 998   void (*regfunc)(void) ;
 999   void (*unregfunc)(void) ;
1000   struct tracepoint_func *funcs ;
1001};
1002#line 19 "include/linux/export.h"
1003struct kernel_symbol {
1004   unsigned long value ;
1005   char const   *name ;
1006};
1007#line 8 "include/asm-generic/module.h"
1008struct mod_arch_specific {
1009
1010};
1011#line 35 "include/linux/module.h"
1012struct module;
1013#line 37
1014struct module_param_attrs;
1015#line 37 "include/linux/module.h"
1016struct module_kobject {
1017   struct kobject kobj ;
1018   struct module *mod ;
1019   struct kobject *drivers_dir ;
1020   struct module_param_attrs *mp ;
1021};
1022#line 44 "include/linux/module.h"
1023struct module_attribute {
1024   struct attribute attr ;
1025   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
1026   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
1027                    size_t count ) ;
1028   void (*setup)(struct module * , char const   * ) ;
1029   int (*test)(struct module * ) ;
1030   void (*free)(struct module * ) ;
1031};
1032#line 71
1033struct exception_table_entry;
1034#line 71
1035struct exception_table_entry;
1036#line 199
1037enum module_state {
1038    MODULE_STATE_LIVE = 0,
1039    MODULE_STATE_COMING = 1,
1040    MODULE_STATE_GOING = 2
1041} ;
1042#line 215 "include/linux/module.h"
1043struct module_ref {
1044   unsigned long incs ;
1045   unsigned long decs ;
1046} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
1047#line 220
1048struct module_sect_attrs;
1049#line 220
1050struct module_notes_attrs;
1051#line 220
1052struct ftrace_event_call;
1053#line 220 "include/linux/module.h"
1054struct module {
1055   enum module_state state ;
1056   struct list_head list ;
1057   char name[64UL - sizeof(unsigned long )] ;
1058   struct module_kobject mkobj ;
1059   struct module_attribute *modinfo_attrs ;
1060   char const   *version ;
1061   char const   *srcversion ;
1062   struct kobject *holders_dir ;
1063   struct kernel_symbol  const  *syms ;
1064   unsigned long const   *crcs ;
1065   unsigned int num_syms ;
1066   struct kernel_param *kp ;
1067   unsigned int num_kp ;
1068   unsigned int num_gpl_syms ;
1069   struct kernel_symbol  const  *gpl_syms ;
1070   unsigned long const   *gpl_crcs ;
1071   struct kernel_symbol  const  *unused_syms ;
1072   unsigned long const   *unused_crcs ;
1073   unsigned int num_unused_syms ;
1074   unsigned int num_unused_gpl_syms ;
1075   struct kernel_symbol  const  *unused_gpl_syms ;
1076   unsigned long const   *unused_gpl_crcs ;
1077   struct kernel_symbol  const  *gpl_future_syms ;
1078   unsigned long const   *gpl_future_crcs ;
1079   unsigned int num_gpl_future_syms ;
1080   unsigned int num_exentries ;
1081   struct exception_table_entry *extable ;
1082   int (*init)(void) ;
1083   void *module_init ;
1084   void *module_core ;
1085   unsigned int init_size ;
1086   unsigned int core_size ;
1087   unsigned int init_text_size ;
1088   unsigned int core_text_size ;
1089   unsigned int init_ro_size ;
1090   unsigned int core_ro_size ;
1091   struct mod_arch_specific arch ;
1092   unsigned int taints ;
1093   unsigned int num_bugs ;
1094   struct list_head bug_list ;
1095   struct bug_entry *bug_table ;
1096   Elf64_Sym *symtab ;
1097   Elf64_Sym *core_symtab ;
1098   unsigned int num_symtab ;
1099   unsigned int core_num_syms ;
1100   char *strtab ;
1101   char *core_strtab ;
1102   struct module_sect_attrs *sect_attrs ;
1103   struct module_notes_attrs *notes_attrs ;
1104   char *args ;
1105   void *percpu ;
1106   unsigned int percpu_size ;
1107   unsigned int num_tracepoints ;
1108   struct tracepoint * const  *tracepoints_ptrs ;
1109   unsigned int num_trace_bprintk_fmt ;
1110   char const   **trace_bprintk_fmt_start ;
1111   struct ftrace_event_call **trace_events ;
1112   unsigned int num_trace_events ;
1113   struct list_head source_list ;
1114   struct list_head target_list ;
1115   struct task_struct *waiter ;
1116   void (*exit)(void) ;
1117   struct module_ref *refptr ;
1118   ctor_fn_t *ctors ;
1119   unsigned int num_ctors ;
1120};
1121#line 25 "include/linux/io.h"
1122struct device;
1123#line 43 "include/linux/input.h"
1124struct input_id {
1125   __u16 bustype ;
1126   __u16 vendor ;
1127   __u16 product ;
1128   __u16 version ;
1129};
1130#line 69 "include/linux/input.h"
1131struct input_absinfo {
1132   __s32 value ;
1133   __s32 minimum ;
1134   __s32 maximum ;
1135   __s32 fuzz ;
1136   __s32 flat ;
1137   __s32 resolution ;
1138};
1139#line 93 "include/linux/input.h"
1140struct input_keymap_entry {
1141   __u8 flags ;
1142   __u8 len ;
1143   __u16 index ;
1144   __u32 keycode ;
1145   __u8 scancode[32] ;
1146};
1147#line 957 "include/linux/input.h"
1148struct ff_replay {
1149   __u16 length ;
1150   __u16 delay ;
1151};
1152#line 967 "include/linux/input.h"
1153struct ff_trigger {
1154   __u16 button ;
1155   __u16 interval ;
1156};
1157#line 984 "include/linux/input.h"
1158struct ff_envelope {
1159   __u16 attack_length ;
1160   __u16 attack_level ;
1161   __u16 fade_length ;
1162   __u16 fade_level ;
1163};
1164#line 996 "include/linux/input.h"
1165struct ff_constant_effect {
1166   __s16 level ;
1167   struct ff_envelope envelope ;
1168};
1169#line 1007 "include/linux/input.h"
1170struct ff_ramp_effect {
1171   __s16 start_level ;
1172   __s16 end_level ;
1173   struct ff_envelope envelope ;
1174};
1175#line 1023 "include/linux/input.h"
1176struct ff_condition_effect {
1177   __u16 right_saturation ;
1178   __u16 left_saturation ;
1179   __s16 right_coeff ;
1180   __s16 left_coeff ;
1181   __u16 deadband ;
1182   __s16 center ;
1183};
1184#line 1052 "include/linux/input.h"
1185struct ff_periodic_effect {
1186   __u16 waveform ;
1187   __u16 period ;
1188   __s16 magnitude ;
1189   __s16 offset ;
1190   __u16 phase ;
1191   struct ff_envelope envelope ;
1192   __u32 custom_len ;
1193   __s16 *custom_data ;
1194};
1195#line 1073 "include/linux/input.h"
1196struct ff_rumble_effect {
1197   __u16 strong_magnitude ;
1198   __u16 weak_magnitude ;
1199};
1200#line 1101 "include/linux/input.h"
1201union __anonunion_u_201 {
1202   struct ff_constant_effect constant ;
1203   struct ff_ramp_effect ramp ;
1204   struct ff_periodic_effect periodic ;
1205   struct ff_condition_effect condition[2] ;
1206   struct ff_rumble_effect rumble ;
1207};
1208#line 1101 "include/linux/input.h"
1209struct ff_effect {
1210   __u16 type ;
1211   __s16 id ;
1212   __u16 direction ;
1213   struct ff_trigger trigger ;
1214   struct ff_replay replay ;
1215   union __anonunion_u_201 u ;
1216};
1217#line 19 "include/linux/klist.h"
1218struct klist_node;
1219#line 19
1220struct klist_node;
1221#line 39 "include/linux/klist.h"
1222struct klist_node {
1223   void *n_klist ;
1224   struct list_head n_node ;
1225   struct kref n_ref ;
1226};
1227#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1228struct dma_map_ops;
1229#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1230struct dev_archdata {
1231   void *acpi_handle ;
1232   struct dma_map_ops *dma_ops ;
1233   void *iommu ;
1234};
1235#line 28 "include/linux/device.h"
1236struct device;
1237#line 29
1238struct device_private;
1239#line 29
1240struct device_private;
1241#line 30
1242struct device_driver;
1243#line 30
1244struct device_driver;
1245#line 31
1246struct driver_private;
1247#line 31
1248struct driver_private;
1249#line 32
1250struct module;
1251#line 33
1252struct class;
1253#line 33
1254struct class;
1255#line 34
1256struct subsys_private;
1257#line 34
1258struct subsys_private;
1259#line 35
1260struct bus_type;
1261#line 35
1262struct bus_type;
1263#line 36
1264struct device_node;
1265#line 36
1266struct device_node;
1267#line 37
1268struct iommu_ops;
1269#line 37
1270struct iommu_ops;
1271#line 39 "include/linux/device.h"
1272struct bus_attribute {
1273   struct attribute attr ;
1274   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1275   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
1276};
1277#line 89
1278struct device_attribute;
1279#line 89
1280struct driver_attribute;
1281#line 89 "include/linux/device.h"
1282struct bus_type {
1283   char const   *name ;
1284   char const   *dev_name ;
1285   struct device *dev_root ;
1286   struct bus_attribute *bus_attrs ;
1287   struct device_attribute *dev_attrs ;
1288   struct driver_attribute *drv_attrs ;
1289   int (*match)(struct device *dev , struct device_driver *drv ) ;
1290   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1291   int (*probe)(struct device *dev ) ;
1292   int (*remove)(struct device *dev ) ;
1293   void (*shutdown)(struct device *dev ) ;
1294   int (*suspend)(struct device *dev , pm_message_t state ) ;
1295   int (*resume)(struct device *dev ) ;
1296   struct dev_pm_ops  const  *pm ;
1297   struct iommu_ops *iommu_ops ;
1298   struct subsys_private *p ;
1299};
1300#line 127
1301struct device_type;
1302#line 214
1303struct of_device_id;
1304#line 214 "include/linux/device.h"
1305struct device_driver {
1306   char const   *name ;
1307   struct bus_type *bus ;
1308   struct module *owner ;
1309   char const   *mod_name ;
1310   bool suppress_bind_attrs ;
1311   struct of_device_id  const  *of_match_table ;
1312   int (*probe)(struct device *dev ) ;
1313   int (*remove)(struct device *dev ) ;
1314   void (*shutdown)(struct device *dev ) ;
1315   int (*suspend)(struct device *dev , pm_message_t state ) ;
1316   int (*resume)(struct device *dev ) ;
1317   struct attribute_group  const  **groups ;
1318   struct dev_pm_ops  const  *pm ;
1319   struct driver_private *p ;
1320};
1321#line 249 "include/linux/device.h"
1322struct driver_attribute {
1323   struct attribute attr ;
1324   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1325   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
1326};
1327#line 330
1328struct class_attribute;
1329#line 330 "include/linux/device.h"
1330struct class {
1331   char const   *name ;
1332   struct module *owner ;
1333   struct class_attribute *class_attrs ;
1334   struct device_attribute *dev_attrs ;
1335   struct bin_attribute *dev_bin_attrs ;
1336   struct kobject *dev_kobj ;
1337   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1338   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1339   void (*class_release)(struct class *class ) ;
1340   void (*dev_release)(struct device *dev ) ;
1341   int (*suspend)(struct device *dev , pm_message_t state ) ;
1342   int (*resume)(struct device *dev ) ;
1343   struct kobj_ns_type_operations  const  *ns_type ;
1344   void const   *(*namespace)(struct device *dev ) ;
1345   struct dev_pm_ops  const  *pm ;
1346   struct subsys_private *p ;
1347};
1348#line 397 "include/linux/device.h"
1349struct class_attribute {
1350   struct attribute attr ;
1351   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1352   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
1353                    size_t count ) ;
1354   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
1355};
1356#line 465 "include/linux/device.h"
1357struct device_type {
1358   char const   *name ;
1359   struct attribute_group  const  **groups ;
1360   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1361   char *(*devnode)(struct device *dev , umode_t *mode ) ;
1362   void (*release)(struct device *dev ) ;
1363   struct dev_pm_ops  const  *pm ;
1364};
1365#line 476 "include/linux/device.h"
1366struct device_attribute {
1367   struct attribute attr ;
1368   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1369   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
1370                    size_t count ) ;
1371};
1372#line 559 "include/linux/device.h"
1373struct device_dma_parameters {
1374   unsigned int max_segment_size ;
1375   unsigned long segment_boundary_mask ;
1376};
1377#line 627
1378struct dma_coherent_mem;
1379#line 627 "include/linux/device.h"
1380struct device {
1381   struct device *parent ;
1382   struct device_private *p ;
1383   struct kobject kobj ;
1384   char const   *init_name ;
1385   struct device_type  const  *type ;
1386   struct mutex mutex ;
1387   struct bus_type *bus ;
1388   struct device_driver *driver ;
1389   void *platform_data ;
1390   struct dev_pm_info power ;
1391   struct dev_pm_domain *pm_domain ;
1392   int numa_node ;
1393   u64 *dma_mask ;
1394   u64 coherent_dma_mask ;
1395   struct device_dma_parameters *dma_parms ;
1396   struct list_head dma_pools ;
1397   struct dma_coherent_mem *dma_mem ;
1398   struct dev_archdata archdata ;
1399   struct device_node *of_node ;
1400   dev_t devt ;
1401   u32 id ;
1402   spinlock_t devres_lock ;
1403   struct list_head devres_head ;
1404   struct klist_node knode_class ;
1405   struct class *class ;
1406   struct attribute_group  const  **groups ;
1407   void (*release)(struct device *dev ) ;
1408};
1409#line 43 "include/linux/pm_wakeup.h"
1410struct wakeup_source {
1411   char const   *name ;
1412   struct list_head entry ;
1413   spinlock_t lock ;
1414   struct timer_list timer ;
1415   unsigned long timer_expires ;
1416   ktime_t total_time ;
1417   ktime_t max_time ;
1418   ktime_t last_time ;
1419   unsigned long event_count ;
1420   unsigned long active_count ;
1421   unsigned long relax_count ;
1422   unsigned long hit_count ;
1423   unsigned int active : 1 ;
1424};
1425#line 15 "include/linux/blk_types.h"
1426struct page;
1427#line 16
1428struct block_device;
1429#line 16
1430struct block_device;
1431#line 33 "include/linux/list_bl.h"
1432struct hlist_bl_node;
1433#line 33 "include/linux/list_bl.h"
1434struct hlist_bl_head {
1435   struct hlist_bl_node *first ;
1436};
1437#line 37 "include/linux/list_bl.h"
1438struct hlist_bl_node {
1439   struct hlist_bl_node *next ;
1440   struct hlist_bl_node **pprev ;
1441};
1442#line 13 "include/linux/dcache.h"
1443struct nameidata;
1444#line 13
1445struct nameidata;
1446#line 14
1447struct path;
1448#line 14
1449struct path;
1450#line 15
1451struct vfsmount;
1452#line 15
1453struct vfsmount;
1454#line 35 "include/linux/dcache.h"
1455struct qstr {
1456   unsigned int hash ;
1457   unsigned int len ;
1458   unsigned char const   *name ;
1459};
1460#line 88
1461struct inode;
1462#line 88
1463struct dentry_operations;
1464#line 88
1465struct super_block;
1466#line 88 "include/linux/dcache.h"
1467union __anonunion_d_u_202 {
1468   struct list_head d_child ;
1469   struct rcu_head d_rcu ;
1470};
1471#line 88 "include/linux/dcache.h"
1472struct dentry {
1473   unsigned int d_flags ;
1474   seqcount_t d_seq ;
1475   struct hlist_bl_node d_hash ;
1476   struct dentry *d_parent ;
1477   struct qstr d_name ;
1478   struct inode *d_inode ;
1479   unsigned char d_iname[32] ;
1480   unsigned int d_count ;
1481   spinlock_t d_lock ;
1482   struct dentry_operations  const  *d_op ;
1483   struct super_block *d_sb ;
1484   unsigned long d_time ;
1485   void *d_fsdata ;
1486   struct list_head d_lru ;
1487   union __anonunion_d_u_202 d_u ;
1488   struct list_head d_subdirs ;
1489   struct list_head d_alias ;
1490};
1491#line 131 "include/linux/dcache.h"
1492struct dentry_operations {
1493   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1494   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
1495   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
1496                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
1497   int (*d_delete)(struct dentry  const  * ) ;
1498   void (*d_release)(struct dentry * ) ;
1499   void (*d_prune)(struct dentry * ) ;
1500   void (*d_iput)(struct dentry * , struct inode * ) ;
1501   char *(*d_dname)(struct dentry * , char * , int  ) ;
1502   struct vfsmount *(*d_automount)(struct path * ) ;
1503   int (*d_manage)(struct dentry * , bool  ) ;
1504} __attribute__((__aligned__((1) <<  (6) ))) ;
1505#line 4 "include/linux/path.h"
1506struct dentry;
1507#line 5
1508struct vfsmount;
1509#line 7 "include/linux/path.h"
1510struct path {
1511   struct vfsmount *mnt ;
1512   struct dentry *dentry ;
1513};
1514#line 64 "include/linux/radix-tree.h"
1515struct radix_tree_node;
1516#line 64 "include/linux/radix-tree.h"
1517struct radix_tree_root {
1518   unsigned int height ;
1519   gfp_t gfp_mask ;
1520   struct radix_tree_node *rnode ;
1521};
1522#line 14 "include/linux/prio_tree.h"
1523struct prio_tree_node;
1524#line 14 "include/linux/prio_tree.h"
1525struct raw_prio_tree_node {
1526   struct prio_tree_node *left ;
1527   struct prio_tree_node *right ;
1528   struct prio_tree_node *parent ;
1529};
1530#line 20 "include/linux/prio_tree.h"
1531struct prio_tree_node {
1532   struct prio_tree_node *left ;
1533   struct prio_tree_node *right ;
1534   struct prio_tree_node *parent ;
1535   unsigned long start ;
1536   unsigned long last ;
1537};
1538#line 28 "include/linux/prio_tree.h"
1539struct prio_tree_root {
1540   struct prio_tree_node *prio_tree_node ;
1541   unsigned short index_bits ;
1542   unsigned short raw ;
1543};
1544#line 6 "include/linux/pid.h"
1545enum pid_type {
1546    PIDTYPE_PID = 0,
1547    PIDTYPE_PGID = 1,
1548    PIDTYPE_SID = 2,
1549    PIDTYPE_MAX = 3
1550} ;
1551#line 50
1552struct pid_namespace;
1553#line 50 "include/linux/pid.h"
1554struct upid {
1555   int nr ;
1556   struct pid_namespace *ns ;
1557   struct hlist_node pid_chain ;
1558};
1559#line 57 "include/linux/pid.h"
1560struct pid {
1561   atomic_t count ;
1562   unsigned int level ;
1563   struct hlist_head tasks[3] ;
1564   struct rcu_head rcu ;
1565   struct upid numbers[1] ;
1566};
1567#line 69 "include/linux/pid.h"
1568struct pid_link {
1569   struct hlist_node node ;
1570   struct pid *pid ;
1571};
1572#line 100
1573struct pid_namespace;
1574#line 18 "include/linux/capability.h"
1575struct task_struct;
1576#line 94 "include/linux/capability.h"
1577struct kernel_cap_struct {
1578   __u32 cap[2] ;
1579};
1580#line 94 "include/linux/capability.h"
1581typedef struct kernel_cap_struct kernel_cap_t;
1582#line 377
1583struct dentry;
1584#line 378
1585struct user_namespace;
1586#line 378
1587struct user_namespace;
1588#line 16 "include/linux/fiemap.h"
1589struct fiemap_extent {
1590   __u64 fe_logical ;
1591   __u64 fe_physical ;
1592   __u64 fe_length ;
1593   __u64 fe_reserved64[2] ;
1594   __u32 fe_flags ;
1595   __u32 fe_reserved[3] ;
1596};
1597#line 8 "include/linux/shrinker.h"
1598struct shrink_control {
1599   gfp_t gfp_mask ;
1600   unsigned long nr_to_scan ;
1601};
1602#line 31 "include/linux/shrinker.h"
1603struct shrinker {
1604   int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
1605   int seeks ;
1606   long batch ;
1607   struct list_head list ;
1608   atomic_long_t nr_in_batch ;
1609};
1610#line 10 "include/linux/migrate_mode.h"
1611enum migrate_mode {
1612    MIGRATE_ASYNC = 0,
1613    MIGRATE_SYNC_LIGHT = 1,
1614    MIGRATE_SYNC = 2
1615} ;
1616#line 408 "include/linux/fs.h"
1617struct export_operations;
1618#line 408
1619struct export_operations;
1620#line 410
1621struct iovec;
1622#line 410
1623struct iovec;
1624#line 411
1625struct nameidata;
1626#line 412
1627struct kiocb;
1628#line 412
1629struct kiocb;
1630#line 413
1631struct kobject;
1632#line 414
1633struct pipe_inode_info;
1634#line 414
1635struct pipe_inode_info;
1636#line 415
1637struct poll_table_struct;
1638#line 415
1639struct poll_table_struct;
1640#line 416
1641struct kstatfs;
1642#line 416
1643struct kstatfs;
1644#line 417
1645struct vm_area_struct;
1646#line 418
1647struct vfsmount;
1648#line 419
1649struct cred;
1650#line 469 "include/linux/fs.h"
1651struct iattr {
1652   unsigned int ia_valid ;
1653   umode_t ia_mode ;
1654   uid_t ia_uid ;
1655   gid_t ia_gid ;
1656   loff_t ia_size ;
1657   struct timespec ia_atime ;
1658   struct timespec ia_mtime ;
1659   struct timespec ia_ctime ;
1660   struct file *ia_file ;
1661};
1662#line 129 "include/linux/quota.h"
1663struct if_dqinfo {
1664   __u64 dqi_bgrace ;
1665   __u64 dqi_igrace ;
1666   __u32 dqi_flags ;
1667   __u32 dqi_valid ;
1668};
1669#line 50 "include/linux/dqblk_xfs.h"
1670struct fs_disk_quota {
1671   __s8 d_version ;
1672   __s8 d_flags ;
1673   __u16 d_fieldmask ;
1674   __u32 d_id ;
1675   __u64 d_blk_hardlimit ;
1676   __u64 d_blk_softlimit ;
1677   __u64 d_ino_hardlimit ;
1678   __u64 d_ino_softlimit ;
1679   __u64 d_bcount ;
1680   __u64 d_icount ;
1681   __s32 d_itimer ;
1682   __s32 d_btimer ;
1683   __u16 d_iwarns ;
1684   __u16 d_bwarns ;
1685   __s32 d_padding2 ;
1686   __u64 d_rtb_hardlimit ;
1687   __u64 d_rtb_softlimit ;
1688   __u64 d_rtbcount ;
1689   __s32 d_rtbtimer ;
1690   __u16 d_rtbwarns ;
1691   __s16 d_padding3 ;
1692   char d_padding4[8] ;
1693};
1694#line 146 "include/linux/dqblk_xfs.h"
1695struct fs_qfilestat {
1696   __u64 qfs_ino ;
1697   __u64 qfs_nblks ;
1698   __u32 qfs_nextents ;
1699};
1700#line 146 "include/linux/dqblk_xfs.h"
1701typedef struct fs_qfilestat fs_qfilestat_t;
1702#line 152 "include/linux/dqblk_xfs.h"
1703struct fs_quota_stat {
1704   __s8 qs_version ;
1705   __u16 qs_flags ;
1706   __s8 qs_pad ;
1707   fs_qfilestat_t qs_uquota ;
1708   fs_qfilestat_t qs_gquota ;
1709   __u32 qs_incoredqs ;
1710   __s32 qs_btimelimit ;
1711   __s32 qs_itimelimit ;
1712   __s32 qs_rtbtimelimit ;
1713   __u16 qs_bwarnlimit ;
1714   __u16 qs_iwarnlimit ;
1715};
1716#line 17 "include/linux/dqblk_qtree.h"
1717struct dquot;
1718#line 17
1719struct dquot;
1720#line 185 "include/linux/quota.h"
1721typedef __kernel_uid32_t qid_t;
1722#line 186 "include/linux/quota.h"
1723typedef long long qsize_t;
1724#line 200 "include/linux/quota.h"
1725struct mem_dqblk {
1726   qsize_t dqb_bhardlimit ;
1727   qsize_t dqb_bsoftlimit ;
1728   qsize_t dqb_curspace ;
1729   qsize_t dqb_rsvspace ;
1730   qsize_t dqb_ihardlimit ;
1731   qsize_t dqb_isoftlimit ;
1732   qsize_t dqb_curinodes ;
1733   time_t dqb_btime ;
1734   time_t dqb_itime ;
1735};
1736#line 215
1737struct quota_format_type;
1738#line 215
1739struct quota_format_type;
1740#line 217 "include/linux/quota.h"
1741struct mem_dqinfo {
1742   struct quota_format_type *dqi_format ;
1743   int dqi_fmt_id ;
1744   struct list_head dqi_dirty_list ;
1745   unsigned long dqi_flags ;
1746   unsigned int dqi_bgrace ;
1747   unsigned int dqi_igrace ;
1748   qsize_t dqi_maxblimit ;
1749   qsize_t dqi_maxilimit ;
1750   void *dqi_priv ;
1751};
1752#line 230
1753struct super_block;
1754#line 288 "include/linux/quota.h"
1755struct dquot {
1756   struct hlist_node dq_hash ;
1757   struct list_head dq_inuse ;
1758   struct list_head dq_free ;
1759   struct list_head dq_dirty ;
1760   struct mutex dq_lock ;
1761   atomic_t dq_count ;
1762   wait_queue_head_t dq_wait_unused ;
1763   struct super_block *dq_sb ;
1764   unsigned int dq_id ;
1765   loff_t dq_off ;
1766   unsigned long dq_flags ;
1767   short dq_type ;
1768   struct mem_dqblk dq_dqb ;
1769};
1770#line 305 "include/linux/quota.h"
1771struct quota_format_ops {
1772   int (*check_quota_file)(struct super_block *sb , int type ) ;
1773   int (*read_file_info)(struct super_block *sb , int type ) ;
1774   int (*write_file_info)(struct super_block *sb , int type ) ;
1775   int (*free_file_info)(struct super_block *sb , int type ) ;
1776   int (*read_dqblk)(struct dquot *dquot ) ;
1777   int (*commit_dqblk)(struct dquot *dquot ) ;
1778   int (*release_dqblk)(struct dquot *dquot ) ;
1779};
1780#line 316 "include/linux/quota.h"
1781struct dquot_operations {
1782   int (*write_dquot)(struct dquot * ) ;
1783   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
1784   void (*destroy_dquot)(struct dquot * ) ;
1785   int (*acquire_dquot)(struct dquot * ) ;
1786   int (*release_dquot)(struct dquot * ) ;
1787   int (*mark_dirty)(struct dquot * ) ;
1788   int (*write_info)(struct super_block * , int  ) ;
1789   qsize_t *(*get_reserved_space)(struct inode * ) ;
1790};
1791#line 329
1792struct path;
1793#line 332 "include/linux/quota.h"
1794struct quotactl_ops {
1795   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
1796   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
1797   int (*quota_off)(struct super_block * , int  ) ;
1798   int (*quota_sync)(struct super_block * , int  , int  ) ;
1799   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1800   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1801   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1802   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1803   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1804   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
1805};
1806#line 345 "include/linux/quota.h"
1807struct quota_format_type {
1808   int qf_fmt_id ;
1809   struct quota_format_ops  const  *qf_ops ;
1810   struct module *qf_owner ;
1811   struct quota_format_type *qf_next ;
1812};
1813#line 399 "include/linux/quota.h"
1814struct quota_info {
1815   unsigned int flags ;
1816   struct mutex dqio_mutex ;
1817   struct mutex dqonoff_mutex ;
1818   struct rw_semaphore dqptr_sem ;
1819   struct inode *files[2] ;
1820   struct mem_dqinfo info[2] ;
1821   struct quota_format_ops  const  *ops[2] ;
1822};
1823#line 532 "include/linux/fs.h"
1824struct page;
1825#line 533
1826struct address_space;
1827#line 533
1828struct address_space;
1829#line 534
1830struct writeback_control;
1831#line 534
1832struct writeback_control;
1833#line 577 "include/linux/fs.h"
1834union __anonunion_arg_210 {
1835   char *buf ;
1836   void *data ;
1837};
1838#line 577 "include/linux/fs.h"
1839struct __anonstruct_read_descriptor_t_209 {
1840   size_t written ;
1841   size_t count ;
1842   union __anonunion_arg_210 arg ;
1843   int error ;
1844};
1845#line 577 "include/linux/fs.h"
1846typedef struct __anonstruct_read_descriptor_t_209 read_descriptor_t;
1847#line 590 "include/linux/fs.h"
1848struct address_space_operations {
1849   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
1850   int (*readpage)(struct file * , struct page * ) ;
1851   int (*writepages)(struct address_space * , struct writeback_control * ) ;
1852   int (*set_page_dirty)(struct page *page ) ;
1853   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
1854                    unsigned int nr_pages ) ;
1855   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
1856                      unsigned int len , unsigned int flags , struct page **pagep ,
1857                      void **fsdata ) ;
1858   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
1859                    unsigned int copied , struct page *page , void *fsdata ) ;
1860   sector_t (*bmap)(struct address_space * , sector_t  ) ;
1861   void (*invalidatepage)(struct page * , unsigned long  ) ;
1862   int (*releasepage)(struct page * , gfp_t  ) ;
1863   void (*freepage)(struct page * ) ;
1864   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  *iov , loff_t offset ,
1865                        unsigned long nr_segs ) ;
1866   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
1867   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
1868   int (*launder_page)(struct page * ) ;
1869   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
1870   int (*error_remove_page)(struct address_space * , struct page * ) ;
1871};
1872#line 645
1873struct backing_dev_info;
1874#line 645
1875struct backing_dev_info;
1876#line 646 "include/linux/fs.h"
1877struct address_space {
1878   struct inode *host ;
1879   struct radix_tree_root page_tree ;
1880   spinlock_t tree_lock ;
1881   unsigned int i_mmap_writable ;
1882   struct prio_tree_root i_mmap ;
1883   struct list_head i_mmap_nonlinear ;
1884   struct mutex i_mmap_mutex ;
1885   unsigned long nrpages ;
1886   unsigned long writeback_index ;
1887   struct address_space_operations  const  *a_ops ;
1888   unsigned long flags ;
1889   struct backing_dev_info *backing_dev_info ;
1890   spinlock_t private_lock ;
1891   struct list_head private_list ;
1892   struct address_space *assoc_mapping ;
1893} __attribute__((__aligned__(sizeof(long )))) ;
1894#line 669
1895struct request_queue;
1896#line 669
1897struct request_queue;
1898#line 671
1899struct hd_struct;
1900#line 671
1901struct gendisk;
1902#line 671 "include/linux/fs.h"
1903struct block_device {
1904   dev_t bd_dev ;
1905   int bd_openers ;
1906   struct inode *bd_inode ;
1907   struct super_block *bd_super ;
1908   struct mutex bd_mutex ;
1909   struct list_head bd_inodes ;
1910   void *bd_claiming ;
1911   void *bd_holder ;
1912   int bd_holders ;
1913   bool bd_write_holder ;
1914   struct list_head bd_holder_disks ;
1915   struct block_device *bd_contains ;
1916   unsigned int bd_block_size ;
1917   struct hd_struct *bd_part ;
1918   unsigned int bd_part_count ;
1919   int bd_invalidated ;
1920   struct gendisk *bd_disk ;
1921   struct request_queue *bd_queue ;
1922   struct list_head bd_list ;
1923   unsigned long bd_private ;
1924   int bd_fsfreeze_count ;
1925   struct mutex bd_fsfreeze_mutex ;
1926};
1927#line 749
1928struct posix_acl;
1929#line 749
1930struct posix_acl;
1931#line 761
1932struct inode_operations;
1933#line 761 "include/linux/fs.h"
1934union __anonunion____missing_field_name_211 {
1935   unsigned int const   i_nlink ;
1936   unsigned int __i_nlink ;
1937};
1938#line 761 "include/linux/fs.h"
1939union __anonunion____missing_field_name_212 {
1940   struct list_head i_dentry ;
1941   struct rcu_head i_rcu ;
1942};
1943#line 761
1944struct file_operations;
1945#line 761
1946struct file_lock;
1947#line 761
1948struct cdev;
1949#line 761 "include/linux/fs.h"
1950union __anonunion____missing_field_name_213 {
1951   struct pipe_inode_info *i_pipe ;
1952   struct block_device *i_bdev ;
1953   struct cdev *i_cdev ;
1954};
1955#line 761 "include/linux/fs.h"
1956struct inode {
1957   umode_t i_mode ;
1958   unsigned short i_opflags ;
1959   uid_t i_uid ;
1960   gid_t i_gid ;
1961   unsigned int i_flags ;
1962   struct posix_acl *i_acl ;
1963   struct posix_acl *i_default_acl ;
1964   struct inode_operations  const  *i_op ;
1965   struct super_block *i_sb ;
1966   struct address_space *i_mapping ;
1967   void *i_security ;
1968   unsigned long i_ino ;
1969   union __anonunion____missing_field_name_211 __annonCompField33 ;
1970   dev_t i_rdev ;
1971   struct timespec i_atime ;
1972   struct timespec i_mtime ;
1973   struct timespec i_ctime ;
1974   spinlock_t i_lock ;
1975   unsigned short i_bytes ;
1976   blkcnt_t i_blocks ;
1977   loff_t i_size ;
1978   unsigned long i_state ;
1979   struct mutex i_mutex ;
1980   unsigned long dirtied_when ;
1981   struct hlist_node i_hash ;
1982   struct list_head i_wb_list ;
1983   struct list_head i_lru ;
1984   struct list_head i_sb_list ;
1985   union __anonunion____missing_field_name_212 __annonCompField34 ;
1986   atomic_t i_count ;
1987   unsigned int i_blkbits ;
1988   u64 i_version ;
1989   atomic_t i_dio_count ;
1990   atomic_t i_writecount ;
1991   struct file_operations  const  *i_fop ;
1992   struct file_lock *i_flock ;
1993   struct address_space i_data ;
1994   struct dquot *i_dquot[2] ;
1995   struct list_head i_devices ;
1996   union __anonunion____missing_field_name_213 __annonCompField35 ;
1997   __u32 i_generation ;
1998   __u32 i_fsnotify_mask ;
1999   struct hlist_head i_fsnotify_marks ;
2000   atomic_t i_readcount ;
2001   void *i_private ;
2002};
2003#line 942 "include/linux/fs.h"
2004struct fown_struct {
2005   rwlock_t lock ;
2006   struct pid *pid ;
2007   enum pid_type pid_type ;
2008   uid_t uid ;
2009   uid_t euid ;
2010   int signum ;
2011};
2012#line 953 "include/linux/fs.h"
2013struct file_ra_state {
2014   unsigned long start ;
2015   unsigned int size ;
2016   unsigned int async_size ;
2017   unsigned int ra_pages ;
2018   unsigned int mmap_miss ;
2019   loff_t prev_pos ;
2020};
2021#line 976 "include/linux/fs.h"
2022union __anonunion_f_u_214 {
2023   struct list_head fu_list ;
2024   struct rcu_head fu_rcuhead ;
2025};
2026#line 976 "include/linux/fs.h"
2027struct file {
2028   union __anonunion_f_u_214 f_u ;
2029   struct path f_path ;
2030   struct file_operations  const  *f_op ;
2031   spinlock_t f_lock ;
2032   int f_sb_list_cpu ;
2033   atomic_long_t f_count ;
2034   unsigned int f_flags ;
2035   fmode_t f_mode ;
2036   loff_t f_pos ;
2037   struct fown_struct f_owner ;
2038   struct cred  const  *f_cred ;
2039   struct file_ra_state f_ra ;
2040   u64 f_version ;
2041   void *f_security ;
2042   void *private_data ;
2043   struct list_head f_ep_links ;
2044   struct list_head f_tfile_llink ;
2045   struct address_space *f_mapping ;
2046   unsigned long f_mnt_write_state ;
2047};
2048#line 1111
2049struct files_struct;
2050#line 1111 "include/linux/fs.h"
2051typedef struct files_struct *fl_owner_t;
2052#line 1113 "include/linux/fs.h"
2053struct file_lock_operations {
2054   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
2055   void (*fl_release_private)(struct file_lock * ) ;
2056};
2057#line 1118 "include/linux/fs.h"
2058struct lock_manager_operations {
2059   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
2060   void (*lm_notify)(struct file_lock * ) ;
2061   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
2062   void (*lm_release_private)(struct file_lock * ) ;
2063   void (*lm_break)(struct file_lock * ) ;
2064   int (*lm_change)(struct file_lock ** , int  ) ;
2065};
2066#line 4 "include/linux/nfs_fs_i.h"
2067struct nlm_lockowner;
2068#line 4
2069struct nlm_lockowner;
2070#line 9 "include/linux/nfs_fs_i.h"
2071struct nfs_lock_info {
2072   u32 state ;
2073   struct nlm_lockowner *owner ;
2074   struct list_head list ;
2075};
2076#line 15
2077struct nfs4_lock_state;
2078#line 15
2079struct nfs4_lock_state;
2080#line 16 "include/linux/nfs_fs_i.h"
2081struct nfs4_lock_info {
2082   struct nfs4_lock_state *owner ;
2083};
2084#line 1138 "include/linux/fs.h"
2085struct fasync_struct;
2086#line 1138 "include/linux/fs.h"
2087struct __anonstruct_afs_216 {
2088   struct list_head link ;
2089   int state ;
2090};
2091#line 1138 "include/linux/fs.h"
2092union __anonunion_fl_u_215 {
2093   struct nfs_lock_info nfs_fl ;
2094   struct nfs4_lock_info nfs4_fl ;
2095   struct __anonstruct_afs_216 afs ;
2096};
2097#line 1138 "include/linux/fs.h"
2098struct file_lock {
2099   struct file_lock *fl_next ;
2100   struct list_head fl_link ;
2101   struct list_head fl_block ;
2102   fl_owner_t fl_owner ;
2103   unsigned int fl_flags ;
2104   unsigned char fl_type ;
2105   unsigned int fl_pid ;
2106   struct pid *fl_nspid ;
2107   wait_queue_head_t fl_wait ;
2108   struct file *fl_file ;
2109   loff_t fl_start ;
2110   loff_t fl_end ;
2111   struct fasync_struct *fl_fasync ;
2112   unsigned long fl_break_time ;
2113   unsigned long fl_downgrade_time ;
2114   struct file_lock_operations  const  *fl_ops ;
2115   struct lock_manager_operations  const  *fl_lmops ;
2116   union __anonunion_fl_u_215 fl_u ;
2117};
2118#line 1378 "include/linux/fs.h"
2119struct fasync_struct {
2120   spinlock_t fa_lock ;
2121   int magic ;
2122   int fa_fd ;
2123   struct fasync_struct *fa_next ;
2124   struct file *fa_file ;
2125   struct rcu_head fa_rcu ;
2126};
2127#line 1418
2128struct file_system_type;
2129#line 1418
2130struct super_operations;
2131#line 1418
2132struct xattr_handler;
2133#line 1418
2134struct mtd_info;
2135#line 1418 "include/linux/fs.h"
2136struct super_block {
2137   struct list_head s_list ;
2138   dev_t s_dev ;
2139   unsigned char s_dirt ;
2140   unsigned char s_blocksize_bits ;
2141   unsigned long s_blocksize ;
2142   loff_t s_maxbytes ;
2143   struct file_system_type *s_type ;
2144   struct super_operations  const  *s_op ;
2145   struct dquot_operations  const  *dq_op ;
2146   struct quotactl_ops  const  *s_qcop ;
2147   struct export_operations  const  *s_export_op ;
2148   unsigned long s_flags ;
2149   unsigned long s_magic ;
2150   struct dentry *s_root ;
2151   struct rw_semaphore s_umount ;
2152   struct mutex s_lock ;
2153   int s_count ;
2154   atomic_t s_active ;
2155   void *s_security ;
2156   struct xattr_handler  const  **s_xattr ;
2157   struct list_head s_inodes ;
2158   struct hlist_bl_head s_anon ;
2159   struct list_head *s_files ;
2160   struct list_head s_mounts ;
2161   struct list_head s_dentry_lru ;
2162   int s_nr_dentry_unused ;
2163   spinlock_t s_inode_lru_lock  __attribute__((__aligned__((1) <<  (6) ))) ;
2164   struct list_head s_inode_lru ;
2165   int s_nr_inodes_unused ;
2166   struct block_device *s_bdev ;
2167   struct backing_dev_info *s_bdi ;
2168   struct mtd_info *s_mtd ;
2169   struct hlist_node s_instances ;
2170   struct quota_info s_dquot ;
2171   int s_frozen ;
2172   wait_queue_head_t s_wait_unfrozen ;
2173   char s_id[32] ;
2174   u8 s_uuid[16] ;
2175   void *s_fs_info ;
2176   unsigned int s_max_links ;
2177   fmode_t s_mode ;
2178   u32 s_time_gran ;
2179   struct mutex s_vfs_rename_mutex ;
2180   char *s_subtype ;
2181   char *s_options ;
2182   struct dentry_operations  const  *s_d_op ;
2183   int cleancache_poolid ;
2184   struct shrinker s_shrink ;
2185   atomic_long_t s_remove_count ;
2186   int s_readonly_remount ;
2187};
2188#line 1567 "include/linux/fs.h"
2189struct fiemap_extent_info {
2190   unsigned int fi_flags ;
2191   unsigned int fi_extents_mapped ;
2192   unsigned int fi_extents_max ;
2193   struct fiemap_extent *fi_extents_start ;
2194};
2195#line 1609 "include/linux/fs.h"
2196struct file_operations {
2197   struct module *owner ;
2198   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
2199   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
2200   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
2201   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
2202                       loff_t  ) ;
2203   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
2204                        loff_t  ) ;
2205   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
2206                                                   loff_t  , u64  , unsigned int  ) ) ;
2207   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
2208   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
2209   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
2210   int (*mmap)(struct file * , struct vm_area_struct * ) ;
2211   int (*open)(struct inode * , struct file * ) ;
2212   int (*flush)(struct file * , fl_owner_t id ) ;
2213   int (*release)(struct inode * , struct file * ) ;
2214   int (*fsync)(struct file * , loff_t  , loff_t  , int datasync ) ;
2215   int (*aio_fsync)(struct kiocb * , int datasync ) ;
2216   int (*fasync)(int  , struct file * , int  ) ;
2217   int (*lock)(struct file * , int  , struct file_lock * ) ;
2218   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
2219                       int  ) ;
2220   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
2221                                      unsigned long  , unsigned long  ) ;
2222   int (*check_flags)(int  ) ;
2223   int (*flock)(struct file * , int  , struct file_lock * ) ;
2224   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
2225                           unsigned int  ) ;
2226   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
2227                          unsigned int  ) ;
2228   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
2229   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
2230};
2231#line 1639 "include/linux/fs.h"
2232struct inode_operations {
2233   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
2234   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
2235   int (*permission)(struct inode * , int  ) ;
2236   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
2237   int (*readlink)(struct dentry * , char * , int  ) ;
2238   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
2239   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
2240   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
2241   int (*unlink)(struct inode * , struct dentry * ) ;
2242   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
2243   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
2244   int (*rmdir)(struct inode * , struct dentry * ) ;
2245   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
2246   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
2247   void (*truncate)(struct inode * ) ;
2248   int (*setattr)(struct dentry * , struct iattr * ) ;
2249   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
2250   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
2251   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
2252   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
2253   int (*removexattr)(struct dentry * , char const   * ) ;
2254   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
2255   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
2256} __attribute__((__aligned__((1) <<  (6) ))) ;
2257#line 1669
2258struct seq_file;
2259#line 1684 "include/linux/fs.h"
2260struct super_operations {
2261   struct inode *(*alloc_inode)(struct super_block *sb ) ;
2262   void (*destroy_inode)(struct inode * ) ;
2263   void (*dirty_inode)(struct inode * , int flags ) ;
2264   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
2265   int (*drop_inode)(struct inode * ) ;
2266   void (*evict_inode)(struct inode * ) ;
2267   void (*put_super)(struct super_block * ) ;
2268   void (*write_super)(struct super_block * ) ;
2269   int (*sync_fs)(struct super_block *sb , int wait ) ;
2270   int (*freeze_fs)(struct super_block * ) ;
2271   int (*unfreeze_fs)(struct super_block * ) ;
2272   int (*statfs)(struct dentry * , struct kstatfs * ) ;
2273   int (*remount_fs)(struct super_block * , int * , char * ) ;
2274   void (*umount_begin)(struct super_block * ) ;
2275   int (*show_options)(struct seq_file * , struct dentry * ) ;
2276   int (*show_devname)(struct seq_file * , struct dentry * ) ;
2277   int (*show_path)(struct seq_file * , struct dentry * ) ;
2278   int (*show_stats)(struct seq_file * , struct dentry * ) ;
2279   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
2280   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
2281                          loff_t  ) ;
2282   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
2283   int (*nr_cached_objects)(struct super_block * ) ;
2284   void (*free_cached_objects)(struct super_block * , int  ) ;
2285};
2286#line 1835 "include/linux/fs.h"
2287struct file_system_type {
2288   char const   *name ;
2289   int fs_flags ;
2290   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
2291   void (*kill_sb)(struct super_block * ) ;
2292   struct module *owner ;
2293   struct file_system_type *next ;
2294   struct hlist_head fs_supers ;
2295   struct lock_class_key s_lock_key ;
2296   struct lock_class_key s_umount_key ;
2297   struct lock_class_key s_vfs_rename_key ;
2298   struct lock_class_key i_lock_key ;
2299   struct lock_class_key i_mutex_key ;
2300   struct lock_class_key i_mutex_dir_key ;
2301};
2302#line 12 "include/linux/mod_devicetable.h"
2303typedef unsigned long kernel_ulong_t;
2304#line 219 "include/linux/mod_devicetable.h"
2305struct of_device_id {
2306   char name[32] ;
2307   char type[32] ;
2308   char compatible[128] ;
2309   void *data ;
2310};
2311#line 312 "include/linux/mod_devicetable.h"
2312struct input_device_id {
2313   kernel_ulong_t flags ;
2314   __u16 bustype ;
2315   __u16 vendor ;
2316   __u16 product ;
2317   __u16 version ;
2318   kernel_ulong_t evbit[1] ;
2319   kernel_ulong_t keybit[12] ;
2320   kernel_ulong_t relbit[1] ;
2321   kernel_ulong_t absbit[1] ;
2322   kernel_ulong_t mscbit[1] ;
2323   kernel_ulong_t ledbit[1] ;
2324   kernel_ulong_t sndbit[1] ;
2325   kernel_ulong_t ffbit[2] ;
2326   kernel_ulong_t swbit[1] ;
2327   kernel_ulong_t driver_info ;
2328};
2329#line 431 "include/linux/mod_devicetable.h"
2330struct i2c_device_id {
2331   char name[20] ;
2332   kernel_ulong_t driver_data  __attribute__((__aligned__(sizeof(kernel_ulong_t )))) ;
2333};
2334#line 1250 "include/linux/input.h"
2335struct ff_device;
2336#line 1250
2337struct input_mt_slot;
2338#line 1250
2339struct input_handle;
2340#line 1250 "include/linux/input.h"
2341struct input_dev {
2342   char const   *name ;
2343   char const   *phys ;
2344   char const   *uniq ;
2345   struct input_id id ;
2346   unsigned long propbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2347   unsigned long evbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2348   unsigned long keybit[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2349   unsigned long relbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2350   unsigned long absbit[((64UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2351   unsigned long mscbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2352   unsigned long ledbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2353   unsigned long sndbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2354   unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2355   unsigned long swbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2356   unsigned int hint_events_per_packet ;
2357   unsigned int keycodemax ;
2358   unsigned int keycodesize ;
2359   void *keycode ;
2360   int (*setkeycode)(struct input_dev *dev , struct input_keymap_entry  const  *ke ,
2361                     unsigned int *old_keycode ) ;
2362   int (*getkeycode)(struct input_dev *dev , struct input_keymap_entry *ke ) ;
2363   struct ff_device *ff ;
2364   unsigned int repeat_key ;
2365   struct timer_list timer ;
2366   int rep[2] ;
2367   struct input_mt_slot *mt ;
2368   int mtsize ;
2369   int slot ;
2370   int trkid ;
2371   struct input_absinfo *absinfo ;
2372   unsigned long key[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2373   unsigned long led[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2374   unsigned long snd[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2375   unsigned long sw[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2376   int (*open)(struct input_dev *dev ) ;
2377   void (*close)(struct input_dev *dev ) ;
2378   int (*flush)(struct input_dev *dev , struct file *file ) ;
2379   int (*event)(struct input_dev *dev , unsigned int type , unsigned int code , int value ) ;
2380   struct input_handle *grab ;
2381   spinlock_t event_lock ;
2382   struct mutex mutex ;
2383   unsigned int users ;
2384   bool going_away ;
2385   bool sync ;
2386   struct device dev ;
2387   struct list_head h_list ;
2388   struct list_head node ;
2389};
2390#line 1370
2391struct input_handle;
2392#line 1409 "include/linux/input.h"
2393struct input_handler {
2394   void *private ;
2395   void (*event)(struct input_handle *handle , unsigned int type , unsigned int code ,
2396                 int value ) ;
2397   bool (*filter)(struct input_handle *handle , unsigned int type , unsigned int code ,
2398                  int value ) ;
2399   bool (*match)(struct input_handler *handler , struct input_dev *dev ) ;
2400   int (*connect)(struct input_handler *handler , struct input_dev *dev , struct input_device_id  const  *id ) ;
2401   void (*disconnect)(struct input_handle *handle ) ;
2402   void (*start)(struct input_handle *handle ) ;
2403   struct file_operations  const  *fops ;
2404   int minor ;
2405   char const   *name ;
2406   struct input_device_id  const  *id_table ;
2407   struct list_head h_list ;
2408   struct list_head node ;
2409};
2410#line 1442 "include/linux/input.h"
2411struct input_handle {
2412   void *private ;
2413   int open ;
2414   char const   *name ;
2415   struct input_dev *dev ;
2416   struct input_handler *handler ;
2417   struct list_head d_node ;
2418   struct list_head h_node ;
2419};
2420#line 1619 "include/linux/input.h"
2421struct ff_device {
2422   int (*upload)(struct input_dev *dev , struct ff_effect *effect , struct ff_effect *old ) ;
2423   int (*erase)(struct input_dev *dev , int effect_id ) ;
2424   int (*playback)(struct input_dev *dev , int effect_id , int value ) ;
2425   void (*set_gain)(struct input_dev *dev , u16 gain ) ;
2426   void (*set_autocenter)(struct input_dev *dev , u16 magnitude ) ;
2427   void (*destroy)(struct ff_device * ) ;
2428   void *private ;
2429   unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
2430   struct mutex mutex ;
2431   int max_effects ;
2432   struct ff_effect *effects ;
2433   struct file *effect_owners[] ;
2434};
2435#line 37 "include/linux/input-polldev.h"
2436struct input_polled_dev {
2437   void *private ;
2438   void (*open)(struct input_polled_dev *dev ) ;
2439   void (*close)(struct input_polled_dev *dev ) ;
2440   void (*poll)(struct input_polled_dev *dev ) ;
2441   unsigned int poll_interval ;
2442   unsigned int poll_interval_max ;
2443   unsigned int poll_interval_min ;
2444   struct input_dev *input ;
2445   struct delayed_work work ;
2446};
2447#line 23 "include/linux/mm_types.h"
2448struct address_space;
2449#line 40 "include/linux/mm_types.h"
2450union __anonunion____missing_field_name_221 {
2451   unsigned long index ;
2452   void *freelist ;
2453};
2454#line 40 "include/linux/mm_types.h"
2455struct __anonstruct____missing_field_name_225 {
2456   unsigned int inuse : 16 ;
2457   unsigned int objects : 15 ;
2458   unsigned int frozen : 1 ;
2459};
2460#line 40 "include/linux/mm_types.h"
2461union __anonunion____missing_field_name_224 {
2462   atomic_t _mapcount ;
2463   struct __anonstruct____missing_field_name_225 __annonCompField37 ;
2464};
2465#line 40 "include/linux/mm_types.h"
2466struct __anonstruct____missing_field_name_223 {
2467   union __anonunion____missing_field_name_224 __annonCompField38 ;
2468   atomic_t _count ;
2469};
2470#line 40 "include/linux/mm_types.h"
2471union __anonunion____missing_field_name_222 {
2472   unsigned long counters ;
2473   struct __anonstruct____missing_field_name_223 __annonCompField39 ;
2474};
2475#line 40 "include/linux/mm_types.h"
2476struct __anonstruct____missing_field_name_220 {
2477   union __anonunion____missing_field_name_221 __annonCompField36 ;
2478   union __anonunion____missing_field_name_222 __annonCompField40 ;
2479};
2480#line 40 "include/linux/mm_types.h"
2481struct __anonstruct____missing_field_name_227 {
2482   struct page *next ;
2483   int pages ;
2484   int pobjects ;
2485};
2486#line 40 "include/linux/mm_types.h"
2487union __anonunion____missing_field_name_226 {
2488   struct list_head lru ;
2489   struct __anonstruct____missing_field_name_227 __annonCompField42 ;
2490};
2491#line 40 "include/linux/mm_types.h"
2492union __anonunion____missing_field_name_228 {
2493   unsigned long private ;
2494   struct kmem_cache *slab ;
2495   struct page *first_page ;
2496};
2497#line 40 "include/linux/mm_types.h"
2498struct page {
2499   unsigned long flags ;
2500   struct address_space *mapping ;
2501   struct __anonstruct____missing_field_name_220 __annonCompField41 ;
2502   union __anonunion____missing_field_name_226 __annonCompField43 ;
2503   union __anonunion____missing_field_name_228 __annonCompField44 ;
2504   unsigned long debug_flags ;
2505} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
2506#line 200 "include/linux/mm_types.h"
2507struct __anonstruct_vm_set_230 {
2508   struct list_head list ;
2509   void *parent ;
2510   struct vm_area_struct *head ;
2511};
2512#line 200 "include/linux/mm_types.h"
2513union __anonunion_shared_229 {
2514   struct __anonstruct_vm_set_230 vm_set ;
2515   struct raw_prio_tree_node prio_tree_node ;
2516};
2517#line 200
2518struct anon_vma;
2519#line 200
2520struct vm_operations_struct;
2521#line 200
2522struct mempolicy;
2523#line 200 "include/linux/mm_types.h"
2524struct vm_area_struct {
2525   struct mm_struct *vm_mm ;
2526   unsigned long vm_start ;
2527   unsigned long vm_end ;
2528   struct vm_area_struct *vm_next ;
2529   struct vm_area_struct *vm_prev ;
2530   pgprot_t vm_page_prot ;
2531   unsigned long vm_flags ;
2532   struct rb_node vm_rb ;
2533   union __anonunion_shared_229 shared ;
2534   struct list_head anon_vma_chain ;
2535   struct anon_vma *anon_vma ;
2536   struct vm_operations_struct  const  *vm_ops ;
2537   unsigned long vm_pgoff ;
2538   struct file *vm_file ;
2539   void *vm_private_data ;
2540   struct mempolicy *vm_policy ;
2541};
2542#line 257 "include/linux/mm_types.h"
2543struct core_thread {
2544   struct task_struct *task ;
2545   struct core_thread *next ;
2546};
2547#line 262 "include/linux/mm_types.h"
2548struct core_state {
2549   atomic_t nr_threads ;
2550   struct core_thread dumper ;
2551   struct completion startup ;
2552};
2553#line 284 "include/linux/mm_types.h"
2554struct mm_rss_stat {
2555   atomic_long_t count[3] ;
2556};
2557#line 288
2558struct linux_binfmt;
2559#line 288
2560struct mmu_notifier_mm;
2561#line 288 "include/linux/mm_types.h"
2562struct mm_struct {
2563   struct vm_area_struct *mmap ;
2564   struct rb_root mm_rb ;
2565   struct vm_area_struct *mmap_cache ;
2566   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
2567                                      unsigned long pgoff , unsigned long flags ) ;
2568   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
2569   unsigned long mmap_base ;
2570   unsigned long task_size ;
2571   unsigned long cached_hole_size ;
2572   unsigned long free_area_cache ;
2573   pgd_t *pgd ;
2574   atomic_t mm_users ;
2575   atomic_t mm_count ;
2576   int map_count ;
2577   spinlock_t page_table_lock ;
2578   struct rw_semaphore mmap_sem ;
2579   struct list_head mmlist ;
2580   unsigned long hiwater_rss ;
2581   unsigned long hiwater_vm ;
2582   unsigned long total_vm ;
2583   unsigned long locked_vm ;
2584   unsigned long pinned_vm ;
2585   unsigned long shared_vm ;
2586   unsigned long exec_vm ;
2587   unsigned long stack_vm ;
2588   unsigned long reserved_vm ;
2589   unsigned long def_flags ;
2590   unsigned long nr_ptes ;
2591   unsigned long start_code ;
2592   unsigned long end_code ;
2593   unsigned long start_data ;
2594   unsigned long end_data ;
2595   unsigned long start_brk ;
2596   unsigned long brk ;
2597   unsigned long start_stack ;
2598   unsigned long arg_start ;
2599   unsigned long arg_end ;
2600   unsigned long env_start ;
2601   unsigned long env_end ;
2602   unsigned long saved_auxv[44] ;
2603   struct mm_rss_stat rss_stat ;
2604   struct linux_binfmt *binfmt ;
2605   cpumask_var_t cpu_vm_mask_var ;
2606   mm_context_t context ;
2607   unsigned int faultstamp ;
2608   unsigned int token_priority ;
2609   unsigned int last_interval ;
2610   unsigned long flags ;
2611   struct core_state *core_state ;
2612   spinlock_t ioctx_lock ;
2613   struct hlist_head ioctx_list ;
2614   struct task_struct *owner ;
2615   struct file *exe_file ;
2616   unsigned long num_exe_file_vmas ;
2617   struct mmu_notifier_mm *mmu_notifier_mm ;
2618   pgtable_t pmd_huge_pte ;
2619   struct cpumask cpumask_allocation ;
2620};
2621#line 7 "include/asm-generic/cputime.h"
2622typedef unsigned long cputime_t;
2623#line 84 "include/linux/sem.h"
2624struct task_struct;
2625#line 101
2626struct sem_undo_list;
2627#line 101 "include/linux/sem.h"
2628struct sysv_sem {
2629   struct sem_undo_list *undo_list ;
2630};
2631#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2632struct siginfo;
2633#line 10
2634struct siginfo;
2635#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2636struct __anonstruct_sigset_t_232 {
2637   unsigned long sig[1] ;
2638};
2639#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2640typedef struct __anonstruct_sigset_t_232 sigset_t;
2641#line 17 "include/asm-generic/signal-defs.h"
2642typedef void __signalfn_t(int  );
2643#line 18 "include/asm-generic/signal-defs.h"
2644typedef __signalfn_t *__sighandler_t;
2645#line 20 "include/asm-generic/signal-defs.h"
2646typedef void __restorefn_t(void);
2647#line 21 "include/asm-generic/signal-defs.h"
2648typedef __restorefn_t *__sigrestore_t;
2649#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2650struct sigaction {
2651   __sighandler_t sa_handler ;
2652   unsigned long sa_flags ;
2653   __sigrestore_t sa_restorer ;
2654   sigset_t sa_mask ;
2655};
2656#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
2657struct k_sigaction {
2658   struct sigaction sa ;
2659};
2660#line 7 "include/asm-generic/siginfo.h"
2661union sigval {
2662   int sival_int ;
2663   void *sival_ptr ;
2664};
2665#line 7 "include/asm-generic/siginfo.h"
2666typedef union sigval sigval_t;
2667#line 48 "include/asm-generic/siginfo.h"
2668struct __anonstruct__kill_234 {
2669   __kernel_pid_t _pid ;
2670   __kernel_uid32_t _uid ;
2671};
2672#line 48 "include/asm-generic/siginfo.h"
2673struct __anonstruct__timer_235 {
2674   __kernel_timer_t _tid ;
2675   int _overrun ;
2676   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
2677   sigval_t _sigval ;
2678   int _sys_private ;
2679};
2680#line 48 "include/asm-generic/siginfo.h"
2681struct __anonstruct__rt_236 {
2682   __kernel_pid_t _pid ;
2683   __kernel_uid32_t _uid ;
2684   sigval_t _sigval ;
2685};
2686#line 48 "include/asm-generic/siginfo.h"
2687struct __anonstruct__sigchld_237 {
2688   __kernel_pid_t _pid ;
2689   __kernel_uid32_t _uid ;
2690   int _status ;
2691   __kernel_clock_t _utime ;
2692   __kernel_clock_t _stime ;
2693};
2694#line 48 "include/asm-generic/siginfo.h"
2695struct __anonstruct__sigfault_238 {
2696   void *_addr ;
2697   short _addr_lsb ;
2698};
2699#line 48 "include/asm-generic/siginfo.h"
2700struct __anonstruct__sigpoll_239 {
2701   long _band ;
2702   int _fd ;
2703};
2704#line 48 "include/asm-generic/siginfo.h"
2705union __anonunion__sifields_233 {
2706   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
2707   struct __anonstruct__kill_234 _kill ;
2708   struct __anonstruct__timer_235 _timer ;
2709   struct __anonstruct__rt_236 _rt ;
2710   struct __anonstruct__sigchld_237 _sigchld ;
2711   struct __anonstruct__sigfault_238 _sigfault ;
2712   struct __anonstruct__sigpoll_239 _sigpoll ;
2713};
2714#line 48 "include/asm-generic/siginfo.h"
2715struct siginfo {
2716   int si_signo ;
2717   int si_errno ;
2718   int si_code ;
2719   union __anonunion__sifields_233 _sifields ;
2720};
2721#line 48 "include/asm-generic/siginfo.h"
2722typedef struct siginfo siginfo_t;
2723#line 288
2724struct siginfo;
2725#line 10 "include/linux/signal.h"
2726struct task_struct;
2727#line 18
2728struct user_struct;
2729#line 28 "include/linux/signal.h"
2730struct sigpending {
2731   struct list_head list ;
2732   sigset_t signal ;
2733};
2734#line 239
2735struct timespec;
2736#line 240
2737struct pt_regs;
2738#line 10 "include/linux/seccomp.h"
2739struct __anonstruct_seccomp_t_242 {
2740   int mode ;
2741};
2742#line 10 "include/linux/seccomp.h"
2743typedef struct __anonstruct_seccomp_t_242 seccomp_t;
2744#line 81 "include/linux/plist.h"
2745struct plist_head {
2746   struct list_head node_list ;
2747};
2748#line 85 "include/linux/plist.h"
2749struct plist_node {
2750   int prio ;
2751   struct list_head prio_list ;
2752   struct list_head node_list ;
2753};
2754#line 28 "include/linux/rtmutex.h"
2755struct rt_mutex {
2756   raw_spinlock_t wait_lock ;
2757   struct plist_head wait_list ;
2758   struct task_struct *owner ;
2759   int save_state ;
2760   char const   *name ;
2761   char const   *file ;
2762   int line ;
2763   void *magic ;
2764};
2765#line 40
2766struct rt_mutex_waiter;
2767#line 40
2768struct rt_mutex_waiter;
2769#line 42 "include/linux/resource.h"
2770struct rlimit {
2771   unsigned long rlim_cur ;
2772   unsigned long rlim_max ;
2773};
2774#line 81
2775struct task_struct;
2776#line 8 "include/linux/timerqueue.h"
2777struct timerqueue_node {
2778   struct rb_node node ;
2779   ktime_t expires ;
2780};
2781#line 13 "include/linux/timerqueue.h"
2782struct timerqueue_head {
2783   struct rb_root head ;
2784   struct timerqueue_node *next ;
2785};
2786#line 27 "include/linux/hrtimer.h"
2787struct hrtimer_clock_base;
2788#line 27
2789struct hrtimer_clock_base;
2790#line 28
2791struct hrtimer_cpu_base;
2792#line 28
2793struct hrtimer_cpu_base;
2794#line 44
2795enum hrtimer_restart {
2796    HRTIMER_NORESTART = 0,
2797    HRTIMER_RESTART = 1
2798} ;
2799#line 108 "include/linux/hrtimer.h"
2800struct hrtimer {
2801   struct timerqueue_node node ;
2802   ktime_t _softexpires ;
2803   enum hrtimer_restart (*function)(struct hrtimer * ) ;
2804   struct hrtimer_clock_base *base ;
2805   unsigned long state ;
2806   int start_pid ;
2807   void *start_site ;
2808   char start_comm[16] ;
2809};
2810#line 145 "include/linux/hrtimer.h"
2811struct hrtimer_clock_base {
2812   struct hrtimer_cpu_base *cpu_base ;
2813   int index ;
2814   clockid_t clockid ;
2815   struct timerqueue_head active ;
2816   ktime_t resolution ;
2817   ktime_t (*get_time)(void) ;
2818   ktime_t softirq_time ;
2819   ktime_t offset ;
2820};
2821#line 178 "include/linux/hrtimer.h"
2822struct hrtimer_cpu_base {
2823   raw_spinlock_t lock ;
2824   unsigned long active_bases ;
2825   ktime_t expires_next ;
2826   int hres_active ;
2827   int hang_detected ;
2828   unsigned long nr_events ;
2829   unsigned long nr_retries ;
2830   unsigned long nr_hangs ;
2831   ktime_t max_hang_time ;
2832   struct hrtimer_clock_base clock_base[3] ;
2833};
2834#line 11 "include/linux/task_io_accounting.h"
2835struct task_io_accounting {
2836   u64 rchar ;
2837   u64 wchar ;
2838   u64 syscr ;
2839   u64 syscw ;
2840   u64 read_bytes ;
2841   u64 write_bytes ;
2842   u64 cancelled_write_bytes ;
2843};
2844#line 13 "include/linux/latencytop.h"
2845struct task_struct;
2846#line 20 "include/linux/latencytop.h"
2847struct latency_record {
2848   unsigned long backtrace[12] ;
2849   unsigned int count ;
2850   unsigned long time ;
2851   unsigned long max ;
2852};
2853#line 29 "include/linux/key.h"
2854typedef int32_t key_serial_t;
2855#line 32 "include/linux/key.h"
2856typedef uint32_t key_perm_t;
2857#line 34
2858struct key;
2859#line 34
2860struct key;
2861#line 74
2862struct seq_file;
2863#line 75
2864struct user_struct;
2865#line 76
2866struct signal_struct;
2867#line 76
2868struct signal_struct;
2869#line 77
2870struct cred;
2871#line 79
2872struct key_type;
2873#line 79
2874struct key_type;
2875#line 81
2876struct keyring_list;
2877#line 81
2878struct keyring_list;
2879#line 124
2880struct key_user;
2881#line 124 "include/linux/key.h"
2882union __anonunion____missing_field_name_243 {
2883   time_t expiry ;
2884   time_t revoked_at ;
2885};
2886#line 124 "include/linux/key.h"
2887union __anonunion_type_data_244 {
2888   struct list_head link ;
2889   unsigned long x[2] ;
2890   void *p[2] ;
2891   int reject_error ;
2892};
2893#line 124 "include/linux/key.h"
2894union __anonunion_payload_245 {
2895   unsigned long value ;
2896   void *rcudata ;
2897   void *data ;
2898   struct keyring_list *subscriptions ;
2899};
2900#line 124 "include/linux/key.h"
2901struct key {
2902   atomic_t usage ;
2903   key_serial_t serial ;
2904   struct rb_node serial_node ;
2905   struct key_type *type ;
2906   struct rw_semaphore sem ;
2907   struct key_user *user ;
2908   void *security ;
2909   union __anonunion____missing_field_name_243 __annonCompField45 ;
2910   uid_t uid ;
2911   gid_t gid ;
2912   key_perm_t perm ;
2913   unsigned short quotalen ;
2914   unsigned short datalen ;
2915   unsigned long flags ;
2916   char *description ;
2917   union __anonunion_type_data_244 type_data ;
2918   union __anonunion_payload_245 payload ;
2919};
2920#line 18 "include/linux/selinux.h"
2921struct audit_context;
2922#line 18
2923struct audit_context;
2924#line 21 "include/linux/cred.h"
2925struct user_struct;
2926#line 22
2927struct cred;
2928#line 23
2929struct inode;
2930#line 31 "include/linux/cred.h"
2931struct group_info {
2932   atomic_t usage ;
2933   int ngroups ;
2934   int nblocks ;
2935   gid_t small_block[32] ;
2936   gid_t *blocks[0] ;
2937};
2938#line 83 "include/linux/cred.h"
2939struct thread_group_cred {
2940   atomic_t usage ;
2941   pid_t tgid ;
2942   spinlock_t lock ;
2943   struct key *session_keyring ;
2944   struct key *process_keyring ;
2945   struct rcu_head rcu ;
2946};
2947#line 116 "include/linux/cred.h"
2948struct cred {
2949   atomic_t usage ;
2950   atomic_t subscribers ;
2951   void *put_addr ;
2952   unsigned int magic ;
2953   uid_t uid ;
2954   gid_t gid ;
2955   uid_t suid ;
2956   gid_t sgid ;
2957   uid_t euid ;
2958   gid_t egid ;
2959   uid_t fsuid ;
2960   gid_t fsgid ;
2961   unsigned int securebits ;
2962   kernel_cap_t cap_inheritable ;
2963   kernel_cap_t cap_permitted ;
2964   kernel_cap_t cap_effective ;
2965   kernel_cap_t cap_bset ;
2966   unsigned char jit_keyring ;
2967   struct key *thread_keyring ;
2968   struct key *request_key_auth ;
2969   struct thread_group_cred *tgcred ;
2970   void *security ;
2971   struct user_struct *user ;
2972   struct user_namespace *user_ns ;
2973   struct group_info *group_info ;
2974   struct rcu_head rcu ;
2975};
2976#line 61 "include/linux/llist.h"
2977struct llist_node;
2978#line 65 "include/linux/llist.h"
2979struct llist_node {
2980   struct llist_node *next ;
2981};
2982#line 97 "include/linux/sched.h"
2983struct futex_pi_state;
2984#line 97
2985struct futex_pi_state;
2986#line 98
2987struct robust_list_head;
2988#line 98
2989struct robust_list_head;
2990#line 99
2991struct bio_list;
2992#line 99
2993struct bio_list;
2994#line 100
2995struct fs_struct;
2996#line 100
2997struct fs_struct;
2998#line 101
2999struct perf_event_context;
3000#line 101
3001struct perf_event_context;
3002#line 102
3003struct blk_plug;
3004#line 102
3005struct blk_plug;
3006#line 150
3007struct seq_file;
3008#line 151
3009struct cfs_rq;
3010#line 151
3011struct cfs_rq;
3012#line 259
3013struct task_struct;
3014#line 366
3015struct nsproxy;
3016#line 367
3017struct user_namespace;
3018#line 58 "include/linux/aio_abi.h"
3019struct io_event {
3020   __u64 data ;
3021   __u64 obj ;
3022   __s64 res ;
3023   __s64 res2 ;
3024};
3025#line 16 "include/linux/uio.h"
3026struct iovec {
3027   void *iov_base ;
3028   __kernel_size_t iov_len ;
3029};
3030#line 15 "include/linux/aio.h"
3031struct kioctx;
3032#line 15
3033struct kioctx;
3034#line 87 "include/linux/aio.h"
3035union __anonunion_ki_obj_247 {
3036   void *user ;
3037   struct task_struct *tsk ;
3038};
3039#line 87
3040struct eventfd_ctx;
3041#line 87 "include/linux/aio.h"
3042struct kiocb {
3043   struct list_head ki_run_list ;
3044   unsigned long ki_flags ;
3045   int ki_users ;
3046   unsigned int ki_key ;
3047   struct file *ki_filp ;
3048   struct kioctx *ki_ctx ;
3049   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
3050   ssize_t (*ki_retry)(struct kiocb * ) ;
3051   void (*ki_dtor)(struct kiocb * ) ;
3052   union __anonunion_ki_obj_247 ki_obj ;
3053   __u64 ki_user_data ;
3054   loff_t ki_pos ;
3055   void *private ;
3056   unsigned short ki_opcode ;
3057   size_t ki_nbytes ;
3058   char *ki_buf ;
3059   size_t ki_left ;
3060   struct iovec ki_inline_vec ;
3061   struct iovec *ki_iovec ;
3062   unsigned long ki_nr_segs ;
3063   unsigned long ki_cur_seg ;
3064   struct list_head ki_list ;
3065   struct list_head ki_batch ;
3066   struct eventfd_ctx *ki_eventfd ;
3067};
3068#line 166 "include/linux/aio.h"
3069struct aio_ring_info {
3070   unsigned long mmap_base ;
3071   unsigned long mmap_size ;
3072   struct page **ring_pages ;
3073   spinlock_t ring_lock ;
3074   long nr_pages ;
3075   unsigned int nr ;
3076   unsigned int tail ;
3077   struct page *internal_pages[8] ;
3078};
3079#line 179 "include/linux/aio.h"
3080struct kioctx {
3081   atomic_t users ;
3082   int dead ;
3083   struct mm_struct *mm ;
3084   unsigned long user_id ;
3085   struct hlist_node list ;
3086   wait_queue_head_t wait ;
3087   spinlock_t ctx_lock ;
3088   int reqs_active ;
3089   struct list_head active_reqs ;
3090   struct list_head run_list ;
3091   unsigned int max_reqs ;
3092   struct aio_ring_info ring_info ;
3093   struct delayed_work wq ;
3094   struct rcu_head rcu_head ;
3095};
3096#line 214
3097struct mm_struct;
3098#line 443 "include/linux/sched.h"
3099struct sighand_struct {
3100   atomic_t count ;
3101   struct k_sigaction action[64] ;
3102   spinlock_t siglock ;
3103   wait_queue_head_t signalfd_wqh ;
3104};
3105#line 450 "include/linux/sched.h"
3106struct pacct_struct {
3107   int ac_flag ;
3108   long ac_exitcode ;
3109   unsigned long ac_mem ;
3110   cputime_t ac_utime ;
3111   cputime_t ac_stime ;
3112   unsigned long ac_minflt ;
3113   unsigned long ac_majflt ;
3114};
3115#line 458 "include/linux/sched.h"
3116struct cpu_itimer {
3117   cputime_t expires ;
3118   cputime_t incr ;
3119   u32 error ;
3120   u32 incr_error ;
3121};
3122#line 476 "include/linux/sched.h"
3123struct task_cputime {
3124   cputime_t utime ;
3125   cputime_t stime ;
3126   unsigned long long sum_exec_runtime ;
3127};
3128#line 512 "include/linux/sched.h"
3129struct thread_group_cputimer {
3130   struct task_cputime cputime ;
3131   int running ;
3132   raw_spinlock_t lock ;
3133};
3134#line 519
3135struct autogroup;
3136#line 519
3137struct autogroup;
3138#line 528
3139struct tty_struct;
3140#line 528
3141struct taskstats;
3142#line 528
3143struct tty_audit_buf;
3144#line 528 "include/linux/sched.h"
3145struct signal_struct {
3146   atomic_t sigcnt ;
3147   atomic_t live ;
3148   int nr_threads ;
3149   wait_queue_head_t wait_chldexit ;
3150   struct task_struct *curr_target ;
3151   struct sigpending shared_pending ;
3152   int group_exit_code ;
3153   int notify_count ;
3154   struct task_struct *group_exit_task ;
3155   int group_stop_count ;
3156   unsigned int flags ;
3157   unsigned int is_child_subreaper : 1 ;
3158   unsigned int has_child_subreaper : 1 ;
3159   struct list_head posix_timers ;
3160   struct hrtimer real_timer ;
3161   struct pid *leader_pid ;
3162   ktime_t it_real_incr ;
3163   struct cpu_itimer it[2] ;
3164   struct thread_group_cputimer cputimer ;
3165   struct task_cputime cputime_expires ;
3166   struct list_head cpu_timers[3] ;
3167   struct pid *tty_old_pgrp ;
3168   int leader ;
3169   struct tty_struct *tty ;
3170   struct autogroup *autogroup ;
3171   cputime_t utime ;
3172   cputime_t stime ;
3173   cputime_t cutime ;
3174   cputime_t cstime ;
3175   cputime_t gtime ;
3176   cputime_t cgtime ;
3177   cputime_t prev_utime ;
3178   cputime_t prev_stime ;
3179   unsigned long nvcsw ;
3180   unsigned long nivcsw ;
3181   unsigned long cnvcsw ;
3182   unsigned long cnivcsw ;
3183   unsigned long min_flt ;
3184   unsigned long maj_flt ;
3185   unsigned long cmin_flt ;
3186   unsigned long cmaj_flt ;
3187   unsigned long inblock ;
3188   unsigned long oublock ;
3189   unsigned long cinblock ;
3190   unsigned long coublock ;
3191   unsigned long maxrss ;
3192   unsigned long cmaxrss ;
3193   struct task_io_accounting ioac ;
3194   unsigned long long sum_sched_runtime ;
3195   struct rlimit rlim[16] ;
3196   struct pacct_struct pacct ;
3197   struct taskstats *stats ;
3198   unsigned int audit_tty ;
3199   struct tty_audit_buf *tty_audit_buf ;
3200   struct rw_semaphore group_rwsem ;
3201   int oom_adj ;
3202   int oom_score_adj ;
3203   int oom_score_adj_min ;
3204   struct mutex cred_guard_mutex ;
3205};
3206#line 703 "include/linux/sched.h"
3207struct user_struct {
3208   atomic_t __count ;
3209   atomic_t processes ;
3210   atomic_t files ;
3211   atomic_t sigpending ;
3212   atomic_t inotify_watches ;
3213   atomic_t inotify_devs ;
3214   atomic_t fanotify_listeners ;
3215   atomic_long_t epoll_watches ;
3216   unsigned long mq_bytes ;
3217   unsigned long locked_shm ;
3218   struct key *uid_keyring ;
3219   struct key *session_keyring ;
3220   struct hlist_node uidhash_node ;
3221   uid_t uid ;
3222   struct user_namespace *user_ns ;
3223   atomic_long_t locked_vm ;
3224};
3225#line 747
3226struct backing_dev_info;
3227#line 748
3228struct reclaim_state;
3229#line 748
3230struct reclaim_state;
3231#line 751 "include/linux/sched.h"
3232struct sched_info {
3233   unsigned long pcount ;
3234   unsigned long long run_delay ;
3235   unsigned long long last_arrival ;
3236   unsigned long long last_queued ;
3237};
3238#line 763 "include/linux/sched.h"
3239struct task_delay_info {
3240   spinlock_t lock ;
3241   unsigned int flags ;
3242   struct timespec blkio_start ;
3243   struct timespec blkio_end ;
3244   u64 blkio_delay ;
3245   u64 swapin_delay ;
3246   u32 blkio_count ;
3247   u32 swapin_count ;
3248   struct timespec freepages_start ;
3249   struct timespec freepages_end ;
3250   u64 freepages_delay ;
3251   u32 freepages_count ;
3252};
3253#line 1088
3254struct io_context;
3255#line 1088
3256struct io_context;
3257#line 1097
3258struct audit_context;
3259#line 1098
3260struct mempolicy;
3261#line 1099
3262struct pipe_inode_info;
3263#line 1102
3264struct rq;
3265#line 1102
3266struct rq;
3267#line 1122 "include/linux/sched.h"
3268struct sched_class {
3269   struct sched_class  const  *next ;
3270   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3271   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3272   void (*yield_task)(struct rq *rq ) ;
3273   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
3274   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
3275   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
3276   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
3277   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
3278   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
3279   void (*post_schedule)(struct rq *this_rq ) ;
3280   void (*task_waking)(struct task_struct *task ) ;
3281   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
3282   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask  const  *newmask ) ;
3283   void (*rq_online)(struct rq *rq ) ;
3284   void (*rq_offline)(struct rq *rq ) ;
3285   void (*set_curr_task)(struct rq *rq ) ;
3286   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
3287   void (*task_fork)(struct task_struct *p ) ;
3288   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
3289   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
3290   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
3291   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
3292   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
3293};
3294#line 1167 "include/linux/sched.h"
3295struct load_weight {
3296   unsigned long weight ;
3297   unsigned long inv_weight ;
3298};
3299#line 1172 "include/linux/sched.h"
3300struct sched_statistics {
3301   u64 wait_start ;
3302   u64 wait_max ;
3303   u64 wait_count ;
3304   u64 wait_sum ;
3305   u64 iowait_count ;
3306   u64 iowait_sum ;
3307   u64 sleep_start ;
3308   u64 sleep_max ;
3309   s64 sum_sleep_runtime ;
3310   u64 block_start ;
3311   u64 block_max ;
3312   u64 exec_max ;
3313   u64 slice_max ;
3314   u64 nr_migrations_cold ;
3315   u64 nr_failed_migrations_affine ;
3316   u64 nr_failed_migrations_running ;
3317   u64 nr_failed_migrations_hot ;
3318   u64 nr_forced_migrations ;
3319   u64 nr_wakeups ;
3320   u64 nr_wakeups_sync ;
3321   u64 nr_wakeups_migrate ;
3322   u64 nr_wakeups_local ;
3323   u64 nr_wakeups_remote ;
3324   u64 nr_wakeups_affine ;
3325   u64 nr_wakeups_affine_attempts ;
3326   u64 nr_wakeups_passive ;
3327   u64 nr_wakeups_idle ;
3328};
3329#line 1207 "include/linux/sched.h"
3330struct sched_entity {
3331   struct load_weight load ;
3332   struct rb_node run_node ;
3333   struct list_head group_node ;
3334   unsigned int on_rq ;
3335   u64 exec_start ;
3336   u64 sum_exec_runtime ;
3337   u64 vruntime ;
3338   u64 prev_sum_exec_runtime ;
3339   u64 nr_migrations ;
3340   struct sched_statistics statistics ;
3341   struct sched_entity *parent ;
3342   struct cfs_rq *cfs_rq ;
3343   struct cfs_rq *my_q ;
3344};
3345#line 1233
3346struct rt_rq;
3347#line 1233 "include/linux/sched.h"
3348struct sched_rt_entity {
3349   struct list_head run_list ;
3350   unsigned long timeout ;
3351   unsigned int time_slice ;
3352   int nr_cpus_allowed ;
3353   struct sched_rt_entity *back ;
3354   struct sched_rt_entity *parent ;
3355   struct rt_rq *rt_rq ;
3356   struct rt_rq *my_q ;
3357};
3358#line 1264
3359struct css_set;
3360#line 1264
3361struct compat_robust_list_head;
3362#line 1264
3363struct mem_cgroup;
3364#line 1264 "include/linux/sched.h"
3365struct memcg_batch_info {
3366   int do_batch ;
3367   struct mem_cgroup *memcg ;
3368   unsigned long nr_pages ;
3369   unsigned long memsw_nr_pages ;
3370};
3371#line 1264 "include/linux/sched.h"
3372struct task_struct {
3373   long volatile   state ;
3374   void *stack ;
3375   atomic_t usage ;
3376   unsigned int flags ;
3377   unsigned int ptrace ;
3378   struct llist_node wake_entry ;
3379   int on_cpu ;
3380   int on_rq ;
3381   int prio ;
3382   int static_prio ;
3383   int normal_prio ;
3384   unsigned int rt_priority ;
3385   struct sched_class  const  *sched_class ;
3386   struct sched_entity se ;
3387   struct sched_rt_entity rt ;
3388   struct hlist_head preempt_notifiers ;
3389   unsigned char fpu_counter ;
3390   unsigned int policy ;
3391   cpumask_t cpus_allowed ;
3392   struct sched_info sched_info ;
3393   struct list_head tasks ;
3394   struct plist_node pushable_tasks ;
3395   struct mm_struct *mm ;
3396   struct mm_struct *active_mm ;
3397   unsigned int brk_randomized : 1 ;
3398   int exit_state ;
3399   int exit_code ;
3400   int exit_signal ;
3401   int pdeath_signal ;
3402   unsigned int jobctl ;
3403   unsigned int personality ;
3404   unsigned int did_exec : 1 ;
3405   unsigned int in_execve : 1 ;
3406   unsigned int in_iowait : 1 ;
3407   unsigned int sched_reset_on_fork : 1 ;
3408   unsigned int sched_contributes_to_load : 1 ;
3409   unsigned int irq_thread : 1 ;
3410   pid_t pid ;
3411   pid_t tgid ;
3412   unsigned long stack_canary ;
3413   struct task_struct *real_parent ;
3414   struct task_struct *parent ;
3415   struct list_head children ;
3416   struct list_head sibling ;
3417   struct task_struct *group_leader ;
3418   struct list_head ptraced ;
3419   struct list_head ptrace_entry ;
3420   struct pid_link pids[3] ;
3421   struct list_head thread_group ;
3422   struct completion *vfork_done ;
3423   int *set_child_tid ;
3424   int *clear_child_tid ;
3425   cputime_t utime ;
3426   cputime_t stime ;
3427   cputime_t utimescaled ;
3428   cputime_t stimescaled ;
3429   cputime_t gtime ;
3430   cputime_t prev_utime ;
3431   cputime_t prev_stime ;
3432   unsigned long nvcsw ;
3433   unsigned long nivcsw ;
3434   struct timespec start_time ;
3435   struct timespec real_start_time ;
3436   unsigned long min_flt ;
3437   unsigned long maj_flt ;
3438   struct task_cputime cputime_expires ;
3439   struct list_head cpu_timers[3] ;
3440   struct cred  const  *real_cred ;
3441   struct cred  const  *cred ;
3442   struct cred *replacement_session_keyring ;
3443   char comm[16] ;
3444   int link_count ;
3445   int total_link_count ;
3446   struct sysv_sem sysvsem ;
3447   unsigned long last_switch_count ;
3448   struct thread_struct thread ;
3449   struct fs_struct *fs ;
3450   struct files_struct *files ;
3451   struct nsproxy *nsproxy ;
3452   struct signal_struct *signal ;
3453   struct sighand_struct *sighand ;
3454   sigset_t blocked ;
3455   sigset_t real_blocked ;
3456   sigset_t saved_sigmask ;
3457   struct sigpending pending ;
3458   unsigned long sas_ss_sp ;
3459   size_t sas_ss_size ;
3460   int (*notifier)(void *priv ) ;
3461   void *notifier_data ;
3462   sigset_t *notifier_mask ;
3463   struct audit_context *audit_context ;
3464   uid_t loginuid ;
3465   unsigned int sessionid ;
3466   seccomp_t seccomp ;
3467   u32 parent_exec_id ;
3468   u32 self_exec_id ;
3469   spinlock_t alloc_lock ;
3470   raw_spinlock_t pi_lock ;
3471   struct plist_head pi_waiters ;
3472   struct rt_mutex_waiter *pi_blocked_on ;
3473   struct mutex_waiter *blocked_on ;
3474   unsigned int irq_events ;
3475   unsigned long hardirq_enable_ip ;
3476   unsigned long hardirq_disable_ip ;
3477   unsigned int hardirq_enable_event ;
3478   unsigned int hardirq_disable_event ;
3479   int hardirqs_enabled ;
3480   int hardirq_context ;
3481   unsigned long softirq_disable_ip ;
3482   unsigned long softirq_enable_ip ;
3483   unsigned int softirq_disable_event ;
3484   unsigned int softirq_enable_event ;
3485   int softirqs_enabled ;
3486   int softirq_context ;
3487   void *journal_info ;
3488   struct bio_list *bio_list ;
3489   struct blk_plug *plug ;
3490   struct reclaim_state *reclaim_state ;
3491   struct backing_dev_info *backing_dev_info ;
3492   struct io_context *io_context ;
3493   unsigned long ptrace_message ;
3494   siginfo_t *last_siginfo ;
3495   struct task_io_accounting ioac ;
3496   u64 acct_rss_mem1 ;
3497   u64 acct_vm_mem1 ;
3498   cputime_t acct_timexpd ;
3499   nodemask_t mems_allowed ;
3500   seqcount_t mems_allowed_seq ;
3501   int cpuset_mem_spread_rotor ;
3502   int cpuset_slab_spread_rotor ;
3503   struct css_set *cgroups ;
3504   struct list_head cg_list ;
3505   struct robust_list_head *robust_list ;
3506   struct compat_robust_list_head *compat_robust_list ;
3507   struct list_head pi_state_list ;
3508   struct futex_pi_state *pi_state_cache ;
3509   struct perf_event_context *perf_event_ctxp[2] ;
3510   struct mutex perf_event_mutex ;
3511   struct list_head perf_event_list ;
3512   struct mempolicy *mempolicy ;
3513   short il_next ;
3514   short pref_node_fork ;
3515   struct rcu_head rcu ;
3516   struct pipe_inode_info *splice_pipe ;
3517   struct task_delay_info *delays ;
3518   int make_it_fail ;
3519   int nr_dirtied ;
3520   int nr_dirtied_pause ;
3521   unsigned long dirty_paused_when ;
3522   int latency_record_count ;
3523   struct latency_record latency_record[32] ;
3524   unsigned long timer_slack_ns ;
3525   unsigned long default_timer_slack_ns ;
3526   struct list_head *scm_work_list ;
3527   unsigned long trace ;
3528   unsigned long trace_recursion ;
3529   struct memcg_batch_info memcg_batch ;
3530   atomic_t ptrace_bp_refcnt ;
3531};
3532#line 1681
3533struct pid_namespace;
3534#line 28 "include/linux/of.h"
3535typedef u32 phandle;
3536#line 31 "include/linux/of.h"
3537struct property {
3538   char *name ;
3539   int length ;
3540   void *value ;
3541   struct property *next ;
3542   unsigned long _flags ;
3543   unsigned int unique_id ;
3544};
3545#line 44
3546struct proc_dir_entry;
3547#line 44 "include/linux/of.h"
3548struct device_node {
3549   char const   *name ;
3550   char const   *type ;
3551   phandle phandle ;
3552   char *full_name ;
3553   struct property *properties ;
3554   struct property *deadprops ;
3555   struct device_node *parent ;
3556   struct device_node *child ;
3557   struct device_node *sibling ;
3558   struct device_node *next ;
3559   struct device_node *allnext ;
3560   struct proc_dir_entry *pde ;
3561   struct kref kref ;
3562   unsigned long _flags ;
3563   void *data ;
3564};
3565#line 44 "include/linux/i2c.h"
3566struct i2c_msg;
3567#line 44
3568struct i2c_msg;
3569#line 45
3570struct i2c_algorithm;
3571#line 45
3572struct i2c_algorithm;
3573#line 46
3574struct i2c_adapter;
3575#line 46
3576struct i2c_adapter;
3577#line 47
3578struct i2c_client;
3579#line 47
3580struct i2c_client;
3581#line 48
3582struct i2c_driver;
3583#line 48
3584struct i2c_driver;
3585#line 49
3586union i2c_smbus_data;
3587#line 49
3588union i2c_smbus_data;
3589#line 50
3590struct i2c_board_info;
3591#line 50
3592struct i2c_board_info;
3593#line 52
3594struct module;
3595#line 161 "include/linux/i2c.h"
3596struct i2c_driver {
3597   unsigned int class ;
3598   int (*attach_adapter)(struct i2c_adapter * )  __attribute__((__deprecated__)) ;
3599   int (*detach_adapter)(struct i2c_adapter * )  __attribute__((__deprecated__)) ;
3600   int (*probe)(struct i2c_client * , struct i2c_device_id  const  * ) ;
3601   int (*remove)(struct i2c_client * ) ;
3602   void (*shutdown)(struct i2c_client * ) ;
3603   int (*suspend)(struct i2c_client * , pm_message_t mesg ) ;
3604   int (*resume)(struct i2c_client * ) ;
3605   void (*alert)(struct i2c_client * , unsigned int data ) ;
3606   int (*command)(struct i2c_client *client , unsigned int cmd , void *arg ) ;
3607   struct device_driver driver ;
3608   struct i2c_device_id  const  *id_table ;
3609   int (*detect)(struct i2c_client * , struct i2c_board_info * ) ;
3610   unsigned short const   *address_list ;
3611   struct list_head clients ;
3612};
3613#line 220 "include/linux/i2c.h"
3614struct i2c_client {
3615   unsigned short flags ;
3616   unsigned short addr ;
3617   char name[20] ;
3618   struct i2c_adapter *adapter ;
3619   struct i2c_driver *driver ;
3620   struct device dev ;
3621   int irq ;
3622   struct list_head detected ;
3623};
3624#line 273 "include/linux/i2c.h"
3625struct i2c_board_info {
3626   char type[20] ;
3627   unsigned short flags ;
3628   unsigned short addr ;
3629   void *platform_data ;
3630   struct dev_archdata *archdata ;
3631   struct device_node *of_node ;
3632   int irq ;
3633};
3634#line 352 "include/linux/i2c.h"
3635struct i2c_algorithm {
3636   int (*master_xfer)(struct i2c_adapter *adap , struct i2c_msg *msgs , int num ) ;
3637   int (*smbus_xfer)(struct i2c_adapter *adap , u16 addr , unsigned short flags ,
3638                     char read_write , u8 command , int size , union i2c_smbus_data *data ) ;
3639   u32 (*functionality)(struct i2c_adapter * ) ;
3640};
3641#line 373 "include/linux/i2c.h"
3642struct i2c_adapter {
3643   struct module *owner ;
3644   unsigned int class ;
3645   struct i2c_algorithm  const  *algo ;
3646   void *algo_data ;
3647   struct rt_mutex bus_lock ;
3648   int timeout ;
3649   int retries ;
3650   struct device dev ;
3651   int nr ;
3652   char name[48] ;
3653   struct completion dev_released ;
3654   struct mutex userspace_clients_lock ;
3655   struct list_head userspace_clients ;
3656};
3657#line 538 "include/linux/i2c.h"
3658struct i2c_msg {
3659   __u16 addr ;
3660   __u16 flags ;
3661   __u16 len ;
3662   __u8 *buf ;
3663};
3664#line 596 "include/linux/i2c.h"
3665union i2c_smbus_data {
3666   __u8 byte ;
3667   __u16 word ;
3668   __u8 block[34] ;
3669};
3670#line 20 "include/linux/leds.h"
3671struct device;
3672#line 25
3673enum led_brightness {
3674    LED_OFF = 0,
3675    LED_HALF = 127,
3676    LED_FULL = 255
3677} ;
3678#line 31
3679struct led_trigger;
3680#line 31 "include/linux/leds.h"
3681struct led_classdev {
3682   char const   *name ;
3683   int brightness ;
3684   int max_brightness ;
3685   int flags ;
3686   void (*brightness_set)(struct led_classdev *led_cdev , enum led_brightness brightness ) ;
3687   enum led_brightness (*brightness_get)(struct led_classdev *led_cdev ) ;
3688   int (*blink_set)(struct led_classdev *led_cdev , unsigned long *delay_on , unsigned long *delay_off ) ;
3689   struct device *dev ;
3690   struct list_head node ;
3691   char const   *default_trigger ;
3692   unsigned long blink_delay_on ;
3693   unsigned long blink_delay_off ;
3694   struct timer_list blink_timer ;
3695   int blink_brightness ;
3696   struct rw_semaphore trigger_lock ;
3697   struct led_trigger *trigger ;
3698   struct list_head trig_list ;
3699   void *trigger_data ;
3700};
3701#line 122 "include/linux/leds.h"
3702struct led_trigger {
3703   char const   *name ;
3704   void (*activate)(struct led_classdev *led_cdev ) ;
3705   void (*deactivate)(struct led_classdev *led_cdev ) ;
3706   rwlock_t leddev_list_lock ;
3707   struct list_head led_cdevs ;
3708   struct list_head next_trig ;
3709};
3710#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
3711enum apanel_chip {
3712    CHIP_NONE = 0,
3713    CHIP_OZ992C = 1,
3714    CHIP_OZ163T = 2,
3715    CHIP_OZ711M3 = 4
3716} ;
3717#line 59 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
3718struct apanel {
3719   struct input_polled_dev *ipdev ;
3720   struct i2c_client *client ;
3721   unsigned short keymap[12] ;
3722   u16 nkeys ;
3723   u16 led_bits ;
3724   struct work_struct led_work ;
3725   struct led_classdev mail_led ;
3726};
3727#line 1 "<compiler builtins>"
3728long __builtin_expect(long val , long res ) ;
3729#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
3730__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
3731                                                                   unsigned long volatile   *addr )  __attribute__((__no_instrument_function__)) ;
3732#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
3733__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
3734                                                                   unsigned long volatile   *addr ) 
3735{ long volatile   *__cil_tmp3 ;
3736
3737  {
3738#line 68
3739  __cil_tmp3 = (long volatile   *)addr;
3740#line 68
3741  __asm__  volatile   (".section .smp_locks,\"a\"\n"
3742                       ".balign 4\n"
3743                       ".long 671f - .\n"
3744                       ".previous\n"
3745                       "671:"
3746                       "\n\tlock; "
3747                       "bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
3748#line 71
3749  return;
3750}
3751}
3752#line 100 "include/linux/printk.h"
3753extern int ( /* format attribute */  printk)(char const   *fmt  , ...) ;
3754#line 44 "include/linux/dynamic_debug.h"
3755extern int ( /* format attribute */  __dynamic_pr_debug)(struct _ddebug *descriptor ,
3756                                                         char const   *fmt  , ...) ;
3757#line 49
3758extern int ( /* format attribute */  __dynamic_dev_dbg)(struct _ddebug *descriptor ,
3759                                                        struct device  const  *dev ,
3760                                                        char const   *fmt  , ...) ;
3761#line 24 "include/linux/list.h"
3762__inline static void INIT_LIST_HEAD(struct list_head *list )  __attribute__((__no_instrument_function__)) ;
3763#line 24 "include/linux/list.h"
3764__inline static void INIT_LIST_HEAD(struct list_head *list ) 
3765{ unsigned long __cil_tmp2 ;
3766  unsigned long __cil_tmp3 ;
3767
3768  {
3769#line 26
3770  *((struct list_head **)list) = list;
3771#line 27
3772  __cil_tmp2 = (unsigned long )list;
3773#line 27
3774  __cil_tmp3 = __cil_tmp2 + 8;
3775#line 27
3776  *((struct list_head **)__cil_tmp3) = list;
3777#line 28
3778  return;
3779}
3780}
3781#line 152 "include/linux/mutex.h"
3782void mutex_lock(struct mutex *lock ) ;
3783#line 153
3784int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
3785#line 154
3786int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
3787#line 168
3788int mutex_trylock(struct mutex *lock ) ;
3789#line 169
3790void mutex_unlock(struct mutex *lock ) ;
3791#line 170
3792int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
3793#line 156 "include/linux/workqueue.h"
3794extern void __init_work(struct work_struct *work , int onstack ) ;
3795#line 380
3796extern int schedule_work(struct work_struct *work ) ;
3797#line 53 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
3798__inline static unsigned char readb(void const volatile   *addr )  __attribute__((__no_instrument_function__)) ;
3799#line 53 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
3800__inline static unsigned char readb(void const volatile   *addr ) 
3801{ unsigned char ret ;
3802  unsigned char volatile   *__cil_tmp3 ;
3803
3804  {
3805#line 53
3806  __cil_tmp3 = (unsigned char volatile   *)addr;
3807#line 53
3808  __asm__  volatile   ("mov"
3809                       "b"
3810                       " %1,%0": "=q" (ret): "m" (*__cil_tmp3): "memory");
3811#line 53
3812  return (ret);
3813}
3814}
3815#line 174
3816extern void *ioremap_nocache(resource_size_t offset , unsigned long size ) ;
3817#line 182
3818__inline static void *ioremap(resource_size_t offset , unsigned long size )  __attribute__((__no_instrument_function__)) ;
3819#line 182 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
3820__inline static void *ioremap(resource_size_t offset , unsigned long size ) 
3821{ void *tmp ;
3822
3823  {
3824  {
3825#line 184
3826  tmp = ioremap_nocache(offset, size);
3827  }
3828#line 184
3829  return (tmp);
3830}
3831}
3832#line 187
3833extern void iounmap(void volatile   *addr ) ;
3834#line 26 "include/linux/export.h"
3835extern struct module __this_module ;
3836#line 67 "include/linux/module.h"
3837int init_module(void) ;
3838#line 68
3839void cleanup_module(void) ;
3840#line 66 "include/linux/io.h"
3841extern int check_signature(void const volatile   *io_addr , unsigned char const   *signature ,
3842                           int length ) ;
3843#line 792 "include/linux/device.h"
3844extern void *dev_get_drvdata(struct device  const  *dev ) ;
3845#line 793
3846extern int dev_set_drvdata(struct device *dev , void *data ) ;
3847#line 893
3848extern int ( /* format attribute */  dev_warn)(struct device  const  *dev , char const   *fmt 
3849                                               , ...) ;
3850#line 1502 "include/linux/input.h"
3851extern void input_event(struct input_dev *dev , unsigned int type , unsigned int code ,
3852                        int value ) ;
3853#line 1505
3854__inline static void input_report_key(struct input_dev *dev , unsigned int code ,
3855                                      int value )  __attribute__((__no_instrument_function__)) ;
3856#line 1505 "include/linux/input.h"
3857__inline static void input_report_key(struct input_dev *dev , unsigned int code ,
3858                                      int value ) 
3859{ int __cil_tmp4 ;
3860  int __cil_tmp5 ;
3861
3862  {
3863  {
3864#line 1507
3865  __cil_tmp4 = ! value;
3866#line 1507
3867  __cil_tmp5 = ! __cil_tmp4;
3868#line 1507
3869  input_event(dev, 1U, code, __cil_tmp5);
3870  }
3871#line 1508
3872  return;
3873}
3874}
3875#line 1530
3876__inline static void input_sync(struct input_dev *dev )  __attribute__((__no_instrument_function__)) ;
3877#line 1530 "include/linux/input.h"
3878__inline static void input_sync(struct input_dev *dev ) 
3879{ 
3880
3881  {
3882  {
3883#line 1532
3884  input_event(dev, 0U, 0U, 0);
3885  }
3886#line 1533
3887  return;
3888}
3889}
3890#line 53 "include/linux/input-polldev.h"
3891extern struct input_polled_dev *input_allocate_polled_device(void) ;
3892#line 54
3893extern void input_free_polled_device(struct input_polled_dev *dev ) ;
3894#line 55
3895extern int input_register_polled_device(struct input_polled_dev *dev ) ;
3896#line 56
3897extern void input_unregister_polled_device(struct input_polled_dev *dev ) ;
3898#line 90 "include/linux/i2c.h"
3899extern s32 i2c_smbus_read_word_data(struct i2c_client  const  *client , u8 command ) ;
3900#line 92
3901extern s32 i2c_smbus_write_word_data(struct i2c_client  const  *client , u8 command ,
3902                                     u16 value ) ;
3903#line 242
3904__inline static void *i2c_get_clientdata(struct i2c_client  const  *dev )  __attribute__((__no_instrument_function__)) ;
3905#line 242 "include/linux/i2c.h"
3906__inline static void *i2c_get_clientdata(struct i2c_client  const  *dev ) 
3907{ void *tmp___7 ;
3908  unsigned long __cil_tmp3 ;
3909  unsigned long __cil_tmp4 ;
3910  struct device  const  *__cil_tmp5 ;
3911
3912  {
3913  {
3914#line 244
3915  __cil_tmp3 = (unsigned long )dev;
3916#line 244
3917  __cil_tmp4 = __cil_tmp3 + 40;
3918#line 244
3919  __cil_tmp5 = (struct device  const  *)__cil_tmp4;
3920#line 244
3921  tmp___7 = dev_get_drvdata(__cil_tmp5);
3922  }
3923#line 244
3924  return (tmp___7);
3925}
3926}
3927#line 247
3928__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data )  __attribute__((__no_instrument_function__)) ;
3929#line 247 "include/linux/i2c.h"
3930__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data ) 
3931{ unsigned long __cil_tmp3 ;
3932  unsigned long __cil_tmp4 ;
3933  struct device *__cil_tmp5 ;
3934
3935  {
3936  {
3937#line 249
3938  __cil_tmp3 = (unsigned long )dev;
3939#line 249
3940  __cil_tmp4 = __cil_tmp3 + 40;
3941#line 249
3942  __cil_tmp5 = (struct device *)__cil_tmp4;
3943#line 249
3944  dev_set_drvdata(__cil_tmp5, data);
3945  }
3946#line 250
3947  return;
3948}
3949}
3950#line 450
3951extern int i2c_register_driver(struct module * , struct i2c_driver * ) ;
3952#line 451
3953extern void i2c_del_driver(struct i2c_driver * ) ;
3954#line 79 "include/linux/leds.h"
3955extern int led_classdev_register(struct device *parent , struct led_classdev *led_cdev ) ;
3956#line 81
3957extern void led_classdev_unregister(struct led_classdev *led_cdev ) ;
3958#line 55 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
3959static enum apanel_chip device_chip[5]  ;
3960#line 70
3961static int apanel_probe(struct i2c_client *client , struct i2c_device_id  const  *id ) ;
3962#line 74
3963static void report_key(struct input_dev *input , unsigned int keycode ) ;
3964#line 74 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
3965static struct _ddebug  __attribute__((__aligned__(8))) descriptor  __attribute__((__used__,
3966__section__("__verbose")))  =    {"apanel", "report_key", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c",
3967    "apanel: report key %#x\n", 74U, 0U};
3968#line 72 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
3969static void report_key(struct input_dev *input , unsigned int keycode ) 
3970{ long tmp___7 ;
3971  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp4 ;
3972  unsigned int __cil_tmp5 ;
3973  unsigned int __cil_tmp6 ;
3974  int __cil_tmp7 ;
3975  int __cil_tmp8 ;
3976  long __cil_tmp9 ;
3977
3978  {
3979  {
3980#line 74
3981  while (1) {
3982    while_continue: /* CIL Label */ ;
3983    {
3984#line 74
3985    __cil_tmp4 = & descriptor;
3986#line 74
3987    __cil_tmp5 = __cil_tmp4->flags;
3988#line 74
3989    __cil_tmp6 = __cil_tmp5 & 1U;
3990#line 74
3991    __cil_tmp7 = ! __cil_tmp6;
3992#line 74
3993    __cil_tmp8 = ! __cil_tmp7;
3994#line 74
3995    __cil_tmp9 = (long )__cil_tmp8;
3996#line 74
3997    tmp___7 = __builtin_expect(__cil_tmp9, 0L);
3998    }
3999#line 74
4000    if (tmp___7) {
4001      {
4002#line 74
4003      __dynamic_pr_debug(& descriptor, "apanel: report key %#x\n", keycode);
4004      }
4005    } else {
4006
4007    }
4008#line 74
4009    goto while_break;
4010  }
4011  while_break: /* CIL Label */ ;
4012  }
4013  {
4014#line 75
4015  input_report_key(input, keycode, 1);
4016#line 76
4017  input_sync(input);
4018#line 78
4019  input_report_key(input, keycode, 0);
4020#line 79
4021  input_sync(input);
4022  }
4023#line 80
4024  return;
4025}
4026}
4027#line 108
4028static void apanel_poll(struct input_polled_dev *ipdev ) ;
4029#line 108 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4030static struct _ddebug  __attribute__((__aligned__(8))) descriptor___0  __attribute__((__used__,
4031__section__("__verbose")))  =    {"apanel", "apanel_poll", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c",
4032    "apanel: data %#x\n", 108U, 0U};
4033#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4034static void apanel_poll(struct input_polled_dev *ipdev ) 
4035{ struct apanel *ap ;
4036  struct input_dev *idev ;
4037  u8 cmd ;
4038  int tmp___7 ;
4039  s32 data ;
4040  int i ;
4041  long tmp___8 ;
4042  void *__cil_tmp9 ;
4043  unsigned long __cil_tmp10 ;
4044  unsigned long __cil_tmp11 ;
4045  unsigned long __cil_tmp12 ;
4046  unsigned long __cil_tmp13 ;
4047  enum apanel_chip __cil_tmp14 ;
4048  unsigned int __cil_tmp15 ;
4049  unsigned long __cil_tmp16 ;
4050  unsigned long __cil_tmp17 ;
4051  struct i2c_client *__cil_tmp18 ;
4052  struct i2c_client  const  *__cil_tmp19 ;
4053  unsigned long __cil_tmp20 ;
4054  unsigned long __cil_tmp21 ;
4055  struct i2c_client *__cil_tmp22 ;
4056  struct i2c_client  const  *__cil_tmp23 ;
4057  u16 __cil_tmp24 ;
4058  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp25 ;
4059  unsigned int __cil_tmp26 ;
4060  unsigned int __cil_tmp27 ;
4061  int __cil_tmp28 ;
4062  int __cil_tmp29 ;
4063  long __cil_tmp30 ;
4064  unsigned long __cil_tmp31 ;
4065  unsigned long __cil_tmp32 ;
4066  struct device *__cil_tmp33 ;
4067  struct device  const  *__cil_tmp34 ;
4068  unsigned long __cil_tmp35 ;
4069  unsigned long __cil_tmp36 ;
4070  unsigned int __cil_tmp37 ;
4071  unsigned int __cil_tmp38 ;
4072  unsigned int __cil_tmp39 ;
4073  unsigned int __cil_tmp40 ;
4074  unsigned long __cil_tmp41 ;
4075  unsigned long __cil_tmp42 ;
4076  unsigned long __cil_tmp43 ;
4077  unsigned long __cil_tmp44 ;
4078  unsigned short __cil_tmp45 ;
4079  unsigned int __cil_tmp46 ;
4080
4081  {
4082#line 92
4083  __cil_tmp9 = *((void **)ipdev);
4084#line 92
4085  ap = (struct apanel *)__cil_tmp9;
4086#line 93
4087  __cil_tmp10 = (unsigned long )ipdev;
4088#line 93
4089  __cil_tmp11 = __cil_tmp10 + 48;
4090#line 93
4091  idev = *((struct input_dev **)__cil_tmp11);
4092  {
4093#line 94
4094  __cil_tmp12 = 1 * 4UL;
4095#line 94
4096  __cil_tmp13 = (unsigned long )(device_chip) + __cil_tmp12;
4097#line 94
4098  __cil_tmp14 = *((enum apanel_chip *)__cil_tmp13);
4099#line 94
4100  __cil_tmp15 = (unsigned int )__cil_tmp14;
4101#line 94
4102  if (__cil_tmp15 == 1U) {
4103#line 94
4104    tmp___7 = 0;
4105  } else {
4106#line 94
4107    tmp___7 = 8;
4108  }
4109  }
4110  {
4111#line 94
4112  cmd = (u8 )tmp___7;
4113#line 98
4114  __cil_tmp16 = (unsigned long )ap;
4115#line 98
4116  __cil_tmp17 = __cil_tmp16 + 8;
4117#line 98
4118  __cil_tmp18 = *((struct i2c_client **)__cil_tmp17);
4119#line 98
4120  __cil_tmp19 = (struct i2c_client  const  *)__cil_tmp18;
4121#line 98
4122  data = i2c_smbus_read_word_data(__cil_tmp19, cmd);
4123  }
4124#line 99
4125  if (data < 0) {
4126#line 100
4127    return;
4128  } else {
4129
4130  }
4131  {
4132#line 103
4133  __cil_tmp20 = (unsigned long )ap;
4134#line 103
4135  __cil_tmp21 = __cil_tmp20 + 8;
4136#line 103
4137  __cil_tmp22 = *((struct i2c_client **)__cil_tmp21);
4138#line 103
4139  __cil_tmp23 = (struct i2c_client  const  *)__cil_tmp22;
4140#line 103
4141  __cil_tmp24 = (u16 )0;
4142#line 103
4143  i2c_smbus_write_word_data(__cil_tmp23, cmd, __cil_tmp24);
4144  }
4145#line 105
4146  if (! data) {
4147#line 106
4148    return;
4149  } else {
4150
4151  }
4152  {
4153#line 108
4154  while (1) {
4155    while_continue: /* CIL Label */ ;
4156    {
4157#line 108
4158    while (1) {
4159      while_continue___0: /* CIL Label */ ;
4160      {
4161#line 108
4162      __cil_tmp25 = & descriptor___0;
4163#line 108
4164      __cil_tmp26 = __cil_tmp25->flags;
4165#line 108
4166      __cil_tmp27 = __cil_tmp26 & 1U;
4167#line 108
4168      __cil_tmp28 = ! __cil_tmp27;
4169#line 108
4170      __cil_tmp29 = ! __cil_tmp28;
4171#line 108
4172      __cil_tmp30 = (long )__cil_tmp29;
4173#line 108
4174      tmp___8 = __builtin_expect(__cil_tmp30, 0L);
4175      }
4176#line 108
4177      if (tmp___8) {
4178        {
4179#line 108
4180        __cil_tmp31 = (unsigned long )idev;
4181#line 108
4182        __cil_tmp32 = __cil_tmp31 + 648;
4183#line 108
4184        __cil_tmp33 = (struct device *)__cil_tmp32;
4185#line 108
4186        __cil_tmp34 = (struct device  const  *)__cil_tmp33;
4187#line 108
4188        __dynamic_dev_dbg(& descriptor___0, __cil_tmp34, "apanel: data %#x\n", data);
4189        }
4190      } else {
4191
4192      }
4193#line 108
4194      goto while_break___0;
4195    }
4196    while_break___0: /* CIL Label */ ;
4197    }
4198#line 108
4199    goto while_break;
4200  }
4201  while_break: /* CIL Label */ ;
4202  }
4203#line 109
4204  i = 0;
4205  {
4206#line 109
4207  while (1) {
4208    while_continue___1: /* CIL Label */ ;
4209    {
4210#line 109
4211    __cil_tmp35 = (unsigned long )idev;
4212#line 109
4213    __cil_tmp36 = __cil_tmp35 + 212;
4214#line 109
4215    __cil_tmp37 = *((unsigned int *)__cil_tmp36);
4216#line 109
4217    __cil_tmp38 = (unsigned int )i;
4218#line 109
4219    if (__cil_tmp38 < __cil_tmp37) {
4220
4221    } else {
4222#line 109
4223      goto while_break___1;
4224    }
4225    }
4226    {
4227#line 110
4228    __cil_tmp39 = (unsigned int )data;
4229#line 110
4230    __cil_tmp40 = 1U << i;
4231#line 110
4232    if (__cil_tmp40 & __cil_tmp39) {
4233      {
4234#line 111
4235      __cil_tmp41 = i * 2UL;
4236#line 111
4237      __cil_tmp42 = 16 + __cil_tmp41;
4238#line 111
4239      __cil_tmp43 = (unsigned long )ap;
4240#line 111
4241      __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
4242#line 111
4243      __cil_tmp45 = *((unsigned short *)__cil_tmp44);
4244#line 111
4245      __cil_tmp46 = (unsigned int )__cil_tmp45;
4246#line 111
4247      report_key(idev, __cil_tmp46);
4248      }
4249    } else {
4250
4251    }
4252    }
4253#line 109
4254    i = i + 1;
4255  }
4256  while_break___1: /* CIL Label */ ;
4257  }
4258#line 112
4259  return;
4260}
4261}
4262#line 115 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4263static void led_update(struct work_struct *work ) 
4264{ struct apanel *ap ;
4265  struct work_struct  const  *__mptr ;
4266  struct apanel *__cil_tmp4 ;
4267  unsigned long __cil_tmp5 ;
4268  unsigned long __cil_tmp6 ;
4269  struct work_struct *__cil_tmp7 ;
4270  unsigned int __cil_tmp8 ;
4271  char *__cil_tmp9 ;
4272  char *__cil_tmp10 ;
4273  unsigned long __cil_tmp11 ;
4274  unsigned long __cil_tmp12 ;
4275  struct i2c_client *__cil_tmp13 ;
4276  struct i2c_client  const  *__cil_tmp14 ;
4277  u8 __cil_tmp15 ;
4278  unsigned long __cil_tmp16 ;
4279  unsigned long __cil_tmp17 ;
4280  u16 __cil_tmp18 ;
4281
4282  {
4283  {
4284#line 117
4285  __mptr = (struct work_struct  const  *)work;
4286#line 117
4287  __cil_tmp4 = (struct apanel *)0;
4288#line 117
4289  __cil_tmp5 = (unsigned long )__cil_tmp4;
4290#line 117
4291  __cil_tmp6 = __cil_tmp5 + 48;
4292#line 117
4293  __cil_tmp7 = (struct work_struct *)__cil_tmp6;
4294#line 117
4295  __cil_tmp8 = (unsigned int )__cil_tmp7;
4296#line 117
4297  __cil_tmp9 = (char *)__mptr;
4298#line 117
4299  __cil_tmp10 = __cil_tmp9 - __cil_tmp8;
4300#line 117
4301  ap = (struct apanel *)__cil_tmp10;
4302#line 119
4303  __cil_tmp11 = (unsigned long )ap;
4304#line 119
4305  __cil_tmp12 = __cil_tmp11 + 8;
4306#line 119
4307  __cil_tmp13 = *((struct i2c_client **)__cil_tmp12);
4308#line 119
4309  __cil_tmp14 = (struct i2c_client  const  *)__cil_tmp13;
4310#line 119
4311  __cil_tmp15 = (u8 )16;
4312#line 119
4313  __cil_tmp16 = (unsigned long )ap;
4314#line 119
4315  __cil_tmp17 = __cil_tmp16 + 42;
4316#line 119
4317  __cil_tmp18 = *((u16 *)__cil_tmp17);
4318#line 119
4319  i2c_smbus_write_word_data(__cil_tmp14, __cil_tmp15, __cil_tmp18);
4320  }
4321#line 120
4322  return;
4323}
4324}
4325#line 122 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4326static void mail_led_set(struct led_classdev *led , enum led_brightness value ) 
4327{ struct apanel *ap ;
4328  struct led_classdev  const  *__mptr ;
4329  struct apanel *__cil_tmp5 ;
4330  unsigned long __cil_tmp6 ;
4331  unsigned long __cil_tmp7 ;
4332  struct led_classdev *__cil_tmp8 ;
4333  unsigned int __cil_tmp9 ;
4334  char *__cil_tmp10 ;
4335  char *__cil_tmp11 ;
4336  unsigned int __cil_tmp12 ;
4337  unsigned long __cil_tmp13 ;
4338  unsigned long __cil_tmp14 ;
4339  unsigned long __cil_tmp15 ;
4340  unsigned long __cil_tmp16 ;
4341  u16 __cil_tmp17 ;
4342  int __cil_tmp18 ;
4343  int __cil_tmp19 ;
4344  unsigned long __cil_tmp20 ;
4345  unsigned long __cil_tmp21 ;
4346  unsigned long __cil_tmp22 ;
4347  unsigned long __cil_tmp23 ;
4348  u16 __cil_tmp24 ;
4349  int __cil_tmp25 ;
4350  int __cil_tmp26 ;
4351  unsigned long __cil_tmp27 ;
4352  unsigned long __cil_tmp28 ;
4353  struct work_struct *__cil_tmp29 ;
4354
4355  {
4356#line 125
4357  __mptr = (struct led_classdev  const  *)led;
4358#line 125
4359  __cil_tmp5 = (struct apanel *)0;
4360#line 125
4361  __cil_tmp6 = (unsigned long )__cil_tmp5;
4362#line 125
4363  __cil_tmp7 = __cil_tmp6 + 80;
4364#line 125
4365  __cil_tmp8 = (struct led_classdev *)__cil_tmp7;
4366#line 125
4367  __cil_tmp9 = (unsigned int )__cil_tmp8;
4368#line 125
4369  __cil_tmp10 = (char *)__mptr;
4370#line 125
4371  __cil_tmp11 = __cil_tmp10 - __cil_tmp9;
4372#line 125
4373  ap = (struct apanel *)__cil_tmp11;
4374  {
4375#line 127
4376  __cil_tmp12 = (unsigned int )value;
4377#line 127
4378  if (__cil_tmp12 != 0U) {
4379#line 128
4380    __cil_tmp13 = (unsigned long )ap;
4381#line 128
4382    __cil_tmp14 = __cil_tmp13 + 42;
4383#line 128
4384    __cil_tmp15 = (unsigned long )ap;
4385#line 128
4386    __cil_tmp16 = __cil_tmp15 + 42;
4387#line 128
4388    __cil_tmp17 = *((u16 *)__cil_tmp16);
4389#line 128
4390    __cil_tmp18 = (int )__cil_tmp17;
4391#line 128
4392    __cil_tmp19 = __cil_tmp18 | 32768;
4393#line 128
4394    *((u16 *)__cil_tmp14) = (u16 )__cil_tmp19;
4395  } else {
4396#line 130
4397    __cil_tmp20 = (unsigned long )ap;
4398#line 130
4399    __cil_tmp21 = __cil_tmp20 + 42;
4400#line 130
4401    __cil_tmp22 = (unsigned long )ap;
4402#line 130
4403    __cil_tmp23 = __cil_tmp22 + 42;
4404#line 130
4405    __cil_tmp24 = *((u16 *)__cil_tmp23);
4406#line 130
4407    __cil_tmp25 = (int )__cil_tmp24;
4408#line 130
4409    __cil_tmp26 = __cil_tmp25 & -32769;
4410#line 130
4411    *((u16 *)__cil_tmp21) = (u16 )__cil_tmp26;
4412  }
4413  }
4414  {
4415#line 132
4416  __cil_tmp27 = (unsigned long )ap;
4417#line 132
4418  __cil_tmp28 = __cil_tmp27 + 48;
4419#line 132
4420  __cil_tmp29 = (struct work_struct *)__cil_tmp28;
4421#line 132
4422  schedule_work(__cil_tmp29);
4423  }
4424#line 133
4425  return;
4426}
4427}
4428#line 135 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4429static int apanel_remove(struct i2c_client *client ) 
4430{ struct apanel *ap ;
4431  void *tmp___7 ;
4432  struct i2c_client  const  *__cil_tmp4 ;
4433  unsigned long __cil_tmp5 ;
4434  unsigned long __cil_tmp6 ;
4435  enum apanel_chip __cil_tmp7 ;
4436  unsigned int __cil_tmp8 ;
4437  unsigned long __cil_tmp9 ;
4438  unsigned long __cil_tmp10 ;
4439  struct led_classdev *__cil_tmp11 ;
4440  struct input_polled_dev *__cil_tmp12 ;
4441  struct input_polled_dev *__cil_tmp13 ;
4442
4443  {
4444  {
4445#line 137
4446  __cil_tmp4 = (struct i2c_client  const  *)client;
4447#line 137
4448  tmp___7 = i2c_get_clientdata(__cil_tmp4);
4449#line 137
4450  ap = (struct apanel *)tmp___7;
4451  }
4452  {
4453#line 139
4454  __cil_tmp5 = 4 * 4UL;
4455#line 139
4456  __cil_tmp6 = (unsigned long )(device_chip) + __cil_tmp5;
4457#line 139
4458  __cil_tmp7 = *((enum apanel_chip *)__cil_tmp6);
4459#line 139
4460  __cil_tmp8 = (unsigned int )__cil_tmp7;
4461#line 139
4462  if (__cil_tmp8 != 0U) {
4463    {
4464#line 140
4465    __cil_tmp9 = (unsigned long )ap;
4466#line 140
4467    __cil_tmp10 = __cil_tmp9 + 80;
4468#line 140
4469    __cil_tmp11 = (struct led_classdev *)__cil_tmp10;
4470#line 140
4471    led_classdev_unregister(__cil_tmp11);
4472    }
4473  } else {
4474
4475  }
4476  }
4477  {
4478#line 142
4479  __cil_tmp12 = *((struct input_polled_dev **)ap);
4480#line 142
4481  input_unregister_polled_device(__cil_tmp12);
4482#line 143
4483  __cil_tmp13 = *((struct input_polled_dev **)ap);
4484#line 143
4485  input_free_polled_device(__cil_tmp13);
4486  }
4487#line 145
4488  return (0);
4489}
4490}
4491#line 148 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4492static void apanel_shutdown(struct i2c_client *client ) 
4493{ 
4494
4495  {
4496  {
4497#line 150
4498  apanel_remove(client);
4499  }
4500#line 151
4501  return;
4502}
4503}
4504#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4505static struct i2c_device_id  const  apanel_id[1]  = {      {{(char )'f', (char )'u', (char )'j', (char )'i', (char )'t', (char )'s', (char )'u',
4506       (char )'_', (char )'a', (char )'p', (char )'a', (char )'n', (char )'e', (char )'l',
4507       (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0}, (kernel_ulong_t )0}};
4508#line 157
4509extern struct i2c_device_id  const  __mod_i2c_device_table  __attribute__((__unused__,
4510__alias__("apanel_id"))) ;
4511#line 159 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4512static struct i2c_driver apanel_driver  = 
4513#line 159
4514     {0U, (int (*)(struct i2c_adapter * ))0, (int (*)(struct i2c_adapter * ))0, & apanel_probe,
4515    & apanel_remove, & apanel_shutdown, (int (*)(struct i2c_client * , pm_message_t mesg ))0,
4516    (int (*)(struct i2c_client * ))0, (void (*)(struct i2c_client * , unsigned int data ))0,
4517    (int (*)(struct i2c_client *client , unsigned int cmd , void *arg ))0, {"apanel",
4518                                                                            (struct bus_type *)0,
4519                                                                            (struct module *)0,
4520                                                                            (char const   *)0,
4521                                                                            (_Bool)0,
4522                                                                            (struct of_device_id  const  *)0,
4523                                                                            (int (*)(struct device *dev ))0,
4524                                                                            (int (*)(struct device *dev ))0,
4525                                                                            (void (*)(struct device *dev ))0,
4526                                                                            (int (*)(struct device *dev ,
4527                                                                                     pm_message_t state ))0,
4528                                                                            (int (*)(struct device *dev ))0,
4529                                                                            (struct attribute_group  const  **)0,
4530                                                                            (struct dev_pm_ops  const  *)0,
4531                                                                            (struct driver_private *)0},
4532    apanel_id, (int (*)(struct i2c_client * , struct i2c_board_info * ))0, (unsigned short const   *)0,
4533    {(struct list_head *)0, (struct list_head *)0}};
4534#line 169 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4535static struct apanel apanel  =    {(struct input_polled_dev *)0, (struct i2c_client *)0, {(unsigned short)155, (unsigned short)150,
4536                                                           (unsigned short)149, (unsigned short)148,
4537                                                           (unsigned short)0, (unsigned short)0,
4538                                                           (unsigned short)0, (unsigned short)0,
4539                                                           (unsigned short)159, (unsigned short)168,
4540                                                           (unsigned short)166, (unsigned short)164},
4541    (unsigned short)0, (unsigned short)0, {{0L}, {(struct list_head *)0, (struct list_head *)0},
4542                                           (void (*)(struct work_struct *work ))0},
4543    {"mail:blue", 0, 0, 0, & mail_led_set, (enum led_brightness (*)(struct led_classdev *led_cdev ))0,
4544     (int (*)(struct led_classdev *led_cdev , unsigned long *delay_on , unsigned long *delay_off ))0,
4545     (struct device *)0, {(struct list_head *)0, (struct list_head *)0}, (char const   *)0,
4546     0UL, 0UL, {{(struct list_head *)0, (struct list_head *)0}, 0UL, (struct tvec_base *)0,
4547                (void (*)(unsigned long  ))0, 0UL, 0, 0, (void *)0, {(char)0, (char)0,
4548                                                                     (char)0, (char)0,
4549                                                                     (char)0, (char)0,
4550                                                                     (char)0, (char)0,
4551                                                                     (char)0, (char)0,
4552                                                                     (char)0, (char)0,
4553                                                                     (char)0, (char)0,
4554                                                                     (char)0, (char)0}},
4555     0, {0L, {{{0U}}, 0U, 0U, (void *)0}, {(struct list_head *)0, (struct list_head *)0}},
4556     (struct led_trigger *)0, {(struct list_head *)0, (struct list_head *)0}, (void *)0}};
4557#line 189 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
4558static int apanel_probe(struct i2c_client *client , struct i2c_device_id  const  *id ) 
4559{ struct apanel *ap ;
4560  struct input_polled_dev *ipdev ;
4561  struct input_dev *idev ;
4562  u8 cmd ;
4563  int tmp___7 ;
4564  int i ;
4565  int err ;
4566  atomic_long_t __constr_expr_0 ;
4567  unsigned long __cil_tmp11 ;
4568  unsigned long __cil_tmp12 ;
4569  enum apanel_chip __cil_tmp13 ;
4570  unsigned int __cil_tmp14 ;
4571  unsigned long __cil_tmp15 ;
4572  unsigned long __cil_tmp16 ;
4573  void *__cil_tmp17 ;
4574  struct i2c_client  const  *__cil_tmp18 ;
4575  u16 __cil_tmp19 ;
4576  unsigned long __cil_tmp20 ;
4577  unsigned long __cil_tmp21 ;
4578  struct device *__cil_tmp22 ;
4579  struct device  const  *__cil_tmp23 ;
4580  unsigned long __cil_tmp24 ;
4581  unsigned long __cil_tmp25 ;
4582  unsigned long __cil_tmp26 ;
4583  unsigned long __cil_tmp27 ;
4584  unsigned long __cil_tmp28 ;
4585  unsigned long __cil_tmp29 ;
4586  unsigned long __cil_tmp30 ;
4587  unsigned long __cil_tmp31 ;
4588  unsigned long __cil_tmp32 ;
4589  unsigned long __cil_tmp33 ;
4590  unsigned long __cil_tmp34 ;
4591  unsigned long __cil_tmp35 ;
4592  unsigned long __cil_tmp36 ;
4593  unsigned long __cil_tmp37 ;
4594  unsigned long __cil_tmp38 ;
4595  unsigned long __cil_tmp39 ;
4596  unsigned long __cil_tmp40 ;
4597  unsigned long __cil_tmp41 ;
4598  unsigned long *__cil_tmp42 ;
4599  unsigned long volatile   *__cil_tmp43 ;
4600  unsigned long __cil_tmp44 ;
4601  unsigned long __cil_tmp45 ;
4602  unsigned long __cil_tmp46 ;
4603  unsigned long __cil_tmp47 ;
4604  unsigned long __cil_tmp48 ;
4605  unsigned long __cil_tmp49 ;
4606  unsigned short *__cil_tmp50 ;
4607  unsigned long __cil_tmp51 ;
4608  unsigned long __cil_tmp52 ;
4609  unsigned long __cil_tmp53 ;
4610  unsigned long __cil_tmp54 ;
4611  enum apanel_chip __cil_tmp55 ;
4612  unsigned int __cil_tmp56 ;
4613  unsigned long __cil_tmp57 ;
4614  unsigned long __cil_tmp58 ;
4615  unsigned long __cil_tmp59 ;
4616  unsigned long __cil_tmp60 ;
4617  unsigned long __cil_tmp61 ;
4618  unsigned long __cil_tmp62 ;
4619  unsigned int __cil_tmp63 ;
4620  unsigned int __cil_tmp64 ;
4621  unsigned long __cil_tmp65 ;
4622  unsigned long __cil_tmp66 ;
4623  unsigned long __cil_tmp67 ;
4624  unsigned long __cil_tmp68 ;
4625  unsigned long __cil_tmp69 ;
4626  unsigned long __cil_tmp70 ;
4627  unsigned long __cil_tmp71 ;
4628  unsigned long __cil_tmp72 ;
4629  unsigned short __cil_tmp73 ;
4630  unsigned int __cil_tmp74 ;
4631  unsigned long __cil_tmp75 ;
4632  unsigned long __cil_tmp76 ;
4633  unsigned long __cil_tmp77 ;
4634  unsigned long __cil_tmp78 ;
4635  unsigned long *__cil_tmp79 ;
4636  unsigned long volatile   *__cil_tmp80 ;
4637  unsigned long __cil_tmp81 ;
4638  unsigned long __cil_tmp82 ;
4639  struct work_struct *__cil_tmp83 ;
4640  unsigned long __cil_tmp84 ;
4641  unsigned long __cil_tmp85 ;
4642  unsigned long __cil_tmp86 ;
4643  unsigned long __cil_tmp87 ;
4644  unsigned long __cil_tmp88 ;
4645  struct list_head *__cil_tmp89 ;
4646  unsigned long __cil_tmp90 ;
4647  unsigned long __cil_tmp91 ;
4648  unsigned long __cil_tmp92 ;
4649  unsigned long __cil_tmp93 ;
4650  unsigned long __cil_tmp94 ;
4651  enum apanel_chip __cil_tmp95 ;
4652  unsigned int __cil_tmp96 ;
4653  unsigned long __cil_tmp97 ;
4654  unsigned long __cil_tmp98 ;
4655  struct device *__cil_tmp99 ;
4656  unsigned long __cil_tmp100 ;
4657  unsigned long __cil_tmp101 ;
4658  struct led_classdev *__cil_tmp102 ;
4659  long __constr_expr_0_counter103 ;
4660
4661  {
4662  {
4663#line 195
4664  __cil_tmp11 = 1 * 4UL;
4665#line 195
4666  __cil_tmp12 = (unsigned long )(device_chip) + __cil_tmp11;
4667#line 195
4668  __cil_tmp13 = *((enum apanel_chip *)__cil_tmp12);
4669#line 195
4670  __cil_tmp14 = (unsigned int )__cil_tmp13;
4671#line 195
4672  if (__cil_tmp14 == 1U) {
4673#line 195
4674    tmp___7 = 0;
4675  } else {
4676#line 195
4677    tmp___7 = 8;
4678  }
4679  }
4680  {
4681#line 195
4682  cmd = (u8 )tmp___7;
4683#line 196
4684  err = -12;
4685#line 198
4686  ap = & apanel;
4687#line 200
4688  ipdev = input_allocate_polled_device();
4689  }
4690#line 201
4691  if (! ipdev) {
4692#line 202
4693    goto out1;
4694  } else {
4695
4696  }
4697  {
4698#line 204
4699  *((struct input_polled_dev **)ap) = ipdev;
4700#line 205
4701  __cil_tmp15 = (unsigned long )ap;
4702#line 205
4703  __cil_tmp16 = __cil_tmp15 + 8;
4704#line 205
4705  *((struct i2c_client **)__cil_tmp16) = client;
4706#line 207
4707  __cil_tmp17 = (void *)ap;
4708#line 207
4709  i2c_set_clientdata(client, __cil_tmp17);
4710#line 209
4711  __cil_tmp18 = (struct i2c_client  const  *)client;
4712#line 209
4713  __cil_tmp19 = (u16 )0;
4714#line 209
4715  err = i2c_smbus_write_word_data(__cil_tmp18, cmd, __cil_tmp19);
4716  }
4717#line 210
4718  if (err) {
4719    {
4720#line 211
4721    __cil_tmp20 = (unsigned long )client;
4722#line 211
4723    __cil_tmp21 = __cil_tmp20 + 40;
4724#line 211
4725    __cil_tmp22 = (struct device *)__cil_tmp21;
4726#line 211
4727    __cil_tmp23 = (struct device  const  *)__cil_tmp22;
4728#line 211
4729    dev_warn(__cil_tmp23, "apanel: smbus write error %d\n", err);
4730    }
4731#line 213
4732    goto out3;
4733  } else {
4734
4735  }
4736  {
4737#line 216
4738  __cil_tmp24 = (unsigned long )ipdev;
4739#line 216
4740  __cil_tmp25 = __cil_tmp24 + 24;
4741#line 216
4742  *((void (**)(struct input_polled_dev *dev ))__cil_tmp25) = & apanel_poll;
4743#line 217
4744  __cil_tmp26 = (unsigned long )ipdev;
4745#line 217
4746  __cil_tmp27 = __cil_tmp26 + 32;
4747#line 217
4748  *((unsigned int *)__cil_tmp27) = 1000U;
4749#line 218
4750  *((void **)ipdev) = (void *)ap;
4751#line 220
4752  __cil_tmp28 = (unsigned long )ipdev;
4753#line 220
4754  __cil_tmp29 = __cil_tmp28 + 48;
4755#line 220
4756  idev = *((struct input_dev **)__cil_tmp29);
4757#line 221
4758  *((char const   **)idev) = "Fujitsu Application Panel buttons";
4759#line 222
4760  __cil_tmp30 = (unsigned long )idev;
4761#line 222
4762  __cil_tmp31 = __cil_tmp30 + 8;
4763#line 222
4764  *((char const   **)__cil_tmp31) = "apanel/input0";
4765#line 223
4766  __cil_tmp32 = (unsigned long )idev;
4767#line 223
4768  __cil_tmp33 = __cil_tmp32 + 24;
4769#line 223
4770  *((__u16 *)__cil_tmp33) = (__u16 )25;
4771#line 224
4772  __cil_tmp34 = (unsigned long )idev;
4773#line 224
4774  __cil_tmp35 = __cil_tmp34 + 648;
4775#line 224
4776  __cil_tmp36 = (unsigned long )client;
4777#line 224
4778  __cil_tmp37 = __cil_tmp36 + 40;
4779#line 224
4780  *((struct device **)__cil_tmp35) = (struct device *)__cil_tmp37;
4781#line 226
4782  __cil_tmp38 = 0 * 8UL;
4783#line 226
4784  __cil_tmp39 = 40 + __cil_tmp38;
4785#line 226
4786  __cil_tmp40 = (unsigned long )idev;
4787#line 226
4788  __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
4789#line 226
4790  __cil_tmp42 = (unsigned long *)__cil_tmp41;
4791#line 226
4792  __cil_tmp43 = (unsigned long volatile   *)__cil_tmp42;
4793#line 226
4794  set_bit(1U, __cil_tmp43);
4795#line 228
4796  __cil_tmp44 = (unsigned long )idev;
4797#line 228
4798  __cil_tmp45 = __cil_tmp44 + 224;
4799#line 228
4800  __cil_tmp46 = 0 * 2UL;
4801#line 228
4802  __cil_tmp47 = 16 + __cil_tmp46;
4803#line 228
4804  __cil_tmp48 = (unsigned long )ap;
4805#line 228
4806  __cil_tmp49 = __cil_tmp48 + __cil_tmp47;
4807#line 228
4808  __cil_tmp50 = (unsigned short *)__cil_tmp49;
4809#line 228
4810  *((void **)__cil_tmp45) = (void *)__cil_tmp50;
4811#line 229
4812  __cil_tmp51 = (unsigned long )idev;
4813#line 229
4814  __cil_tmp52 = __cil_tmp51 + 216;
4815#line 229
4816  *((unsigned int *)__cil_tmp52) = (unsigned int )2UL;
4817  }
4818  {
4819#line 230
4820  __cil_tmp53 = 2 * 4UL;
4821#line 230
4822  __cil_tmp54 = (unsigned long )(device_chip) + __cil_tmp53;
4823#line 230
4824  __cil_tmp55 = *((enum apanel_chip *)__cil_tmp54);
4825#line 230
4826  __cil_tmp56 = (unsigned int )__cil_tmp55;
4827#line 230
4828  if (__cil_tmp56 != 0U) {
4829#line 230
4830    __cil_tmp57 = (unsigned long )idev;
4831#line 230
4832    __cil_tmp58 = __cil_tmp57 + 212;
4833#line 230
4834    *((unsigned int *)__cil_tmp58) = 12U;
4835  } else {
4836#line 230
4837    __cil_tmp59 = (unsigned long )idev;
4838#line 230
4839    __cil_tmp60 = __cil_tmp59 + 212;
4840#line 230
4841    *((unsigned int *)__cil_tmp60) = 4U;
4842  }
4843  }
4844#line 232
4845  i = 0;
4846  {
4847#line 232
4848  while (1) {
4849    while_continue: /* CIL Label */ ;
4850    {
4851#line 232
4852    __cil_tmp61 = (unsigned long )idev;
4853#line 232
4854    __cil_tmp62 = __cil_tmp61 + 212;
4855#line 232
4856    __cil_tmp63 = *((unsigned int *)__cil_tmp62);
4857#line 232
4858    __cil_tmp64 = (unsigned int )i;
4859#line 232
4860    if (__cil_tmp64 < __cil_tmp63) {
4861
4862    } else {
4863#line 232
4864      goto while_break;
4865    }
4866    }
4867    {
4868#line 233
4869    __cil_tmp65 = i * 2UL;
4870#line 233
4871    __cil_tmp66 = 16 + __cil_tmp65;
4872#line 233
4873    __cil_tmp67 = (unsigned long )ap;
4874#line 233
4875    __cil_tmp68 = __cil_tmp67 + __cil_tmp66;
4876#line 233
4877    if (*((unsigned short *)__cil_tmp68)) {
4878      {
4879#line 234
4880      __cil_tmp69 = i * 2UL;
4881#line 234
4882      __cil_tmp70 = 16 + __cil_tmp69;
4883#line 234
4884      __cil_tmp71 = (unsigned long )ap;
4885#line 234
4886      __cil_tmp72 = __cil_tmp71 + __cil_tmp70;
4887#line 234
4888      __cil_tmp73 = *((unsigned short *)__cil_tmp72);
4889#line 234
4890      __cil_tmp74 = (unsigned int )__cil_tmp73;
4891#line 234
4892      __cil_tmp75 = 0 * 8UL;
4893#line 234
4894      __cil_tmp76 = 48 + __cil_tmp75;
4895#line 234
4896      __cil_tmp77 = (unsigned long )idev;
4897#line 234
4898      __cil_tmp78 = __cil_tmp77 + __cil_tmp76;
4899#line 234
4900      __cil_tmp79 = (unsigned long *)__cil_tmp78;
4901#line 234
4902      __cil_tmp80 = (unsigned long volatile   *)__cil_tmp79;
4903#line 234
4904      set_bit(__cil_tmp74, __cil_tmp80);
4905      }
4906    } else {
4907
4908    }
4909    }
4910#line 232
4911    i = i + 1;
4912  }
4913  while_break: /* CIL Label */ ;
4914  }
4915  {
4916#line 236
4917  err = input_register_polled_device(ipdev);
4918  }
4919#line 237
4920  if (err) {
4921#line 238
4922    goto out3;
4923  } else {
4924
4925  }
4926  {
4927#line 240
4928  while (1) {
4929    while_continue___0: /* CIL Label */ ;
4930    {
4931#line 240
4932    while (1) {
4933      while_continue___1: /* CIL Label */ ;
4934      {
4935#line 240
4936      __cil_tmp81 = (unsigned long )ap;
4937#line 240
4938      __cil_tmp82 = __cil_tmp81 + 48;
4939#line 240
4940      __cil_tmp83 = (struct work_struct *)__cil_tmp82;
4941#line 240
4942      __init_work(__cil_tmp83, 0);
4943#line 240
4944      __constr_expr_0_counter103 = 2097664L;
4945#line 240
4946      __cil_tmp84 = (unsigned long )ap;
4947#line 240
4948      __cil_tmp85 = __cil_tmp84 + 48;
4949#line 240
4950      ((atomic_long_t *)__cil_tmp85)->counter = __constr_expr_0_counter103;
4951#line 240
4952      __cil_tmp86 = 48 + 8;
4953#line 240
4954      __cil_tmp87 = (unsigned long )ap;
4955#line 240
4956      __cil_tmp88 = __cil_tmp87 + __cil_tmp86;
4957#line 240
4958      __cil_tmp89 = (struct list_head *)__cil_tmp88;
4959#line 240
4960      INIT_LIST_HEAD(__cil_tmp89);
4961      }
4962      {
4963#line 240
4964      while (1) {
4965        while_continue___2: /* CIL Label */ ;
4966#line 240
4967        __cil_tmp90 = 48 + 24;
4968#line 240
4969        __cil_tmp91 = (unsigned long )ap;
4970#line 240
4971        __cil_tmp92 = __cil_tmp91 + __cil_tmp90;
4972#line 240
4973        *((void (**)(struct work_struct *work ))__cil_tmp92) = & led_update;
4974#line 240
4975        goto while_break___2;
4976      }
4977      while_break___2: /* CIL Label */ ;
4978      }
4979#line 240
4980      goto while_break___1;
4981    }
4982    while_break___1: /* CIL Label */ ;
4983    }
4984#line 240
4985    goto while_break___0;
4986  }
4987  while_break___0: /* CIL Label */ ;
4988  }
4989  {
4990#line 241
4991  __cil_tmp93 = 4 * 4UL;
4992#line 241
4993  __cil_tmp94 = (unsigned long )(device_chip) + __cil_tmp93;
4994#line 241
4995  __cil_tmp95 = *((enum apanel_chip *)__cil_tmp94);
4996#line 241
4997  __cil_tmp96 = (unsigned int )__cil_tmp95;
4998#line 241
4999  if (__cil_tmp96 != 0U) {
5000    {
5001#line 242
5002    __cil_tmp97 = (unsigned long )client;
5003#line 242
5004    __cil_tmp98 = __cil_tmp97 + 40;
5005#line 242
5006    __cil_tmp99 = (struct device *)__cil_tmp98;
5007#line 242
5008    __cil_tmp100 = (unsigned long )ap;
5009#line 242
5010    __cil_tmp101 = __cil_tmp100 + 80;
5011#line 242
5012    __cil_tmp102 = (struct led_classdev *)__cil_tmp101;
5013#line 242
5014    err = led_classdev_register(__cil_tmp99, __cil_tmp102);
5015    }
5016#line 243
5017    if (err) {
5018#line 244
5019      goto out4;
5020    } else {
5021
5022    }
5023  } else {
5024
5025  }
5026  }
5027#line 247
5028  return (0);
5029  out4: 
5030  {
5031#line 249
5032  input_unregister_polled_device(ipdev);
5033  }
5034  out3: 
5035  {
5036#line 251
5037  input_free_polled_device(ipdev);
5038  }
5039  out1: 
5040#line 253
5041  return (err);
5042}
5043}
5044#line 257
5045static void const   *bios_signature(void const   *bios )  __attribute__((__section__(".init.text"),
5046__no_instrument_function__)) ;
5047#line 257 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5048static void const   *bios_signature(void const   *bios ) 
5049{ ssize_t offset ;
5050  unsigned char signature[9] ;
5051  int tmp___7 ;
5052  unsigned long __cil_tmp5 ;
5053  unsigned long __cil_tmp6 ;
5054  unsigned long __cil_tmp7 ;
5055  unsigned long __cil_tmp8 ;
5056  unsigned long __cil_tmp9 ;
5057  unsigned long __cil_tmp10 ;
5058  unsigned long __cil_tmp11 ;
5059  unsigned long __cil_tmp12 ;
5060  unsigned long __cil_tmp13 ;
5061  unsigned long __cil_tmp14 ;
5062  unsigned long __cil_tmp15 ;
5063  unsigned long __cil_tmp16 ;
5064  unsigned long __cil_tmp17 ;
5065  unsigned long __cil_tmp18 ;
5066  unsigned long __cil_tmp19 ;
5067  unsigned long __cil_tmp20 ;
5068  unsigned long __cil_tmp21 ;
5069  unsigned long __cil_tmp22 ;
5070  void const   *__cil_tmp23 ;
5071  void const volatile   *__cil_tmp24 ;
5072  unsigned long __cil_tmp25 ;
5073  unsigned long __cil_tmp26 ;
5074  unsigned char *__cil_tmp27 ;
5075  unsigned char const   *__cil_tmp28 ;
5076  unsigned long __cil_tmp29 ;
5077  int __cil_tmp30 ;
5078  unsigned long __cil_tmp31 ;
5079  unsigned long __cil_tmp32 ;
5080  unsigned char *__cil_tmp33 ;
5081  void *__cil_tmp34 ;
5082
5083  {
5084#line 260
5085  __cil_tmp5 = 0 * 1UL;
5086#line 260
5087  __cil_tmp6 = (unsigned long )(signature) + __cil_tmp5;
5088#line 260
5089  *((unsigned char *)__cil_tmp6) = (unsigned char )'F';
5090#line 260
5091  __cil_tmp7 = 1 * 1UL;
5092#line 260
5093  __cil_tmp8 = (unsigned long )(signature) + __cil_tmp7;
5094#line 260
5095  *((unsigned char *)__cil_tmp8) = (unsigned char )'J';
5096#line 260
5097  __cil_tmp9 = 2 * 1UL;
5098#line 260
5099  __cil_tmp10 = (unsigned long )(signature) + __cil_tmp9;
5100#line 260
5101  *((unsigned char *)__cil_tmp10) = (unsigned char )'K';
5102#line 260
5103  __cil_tmp11 = 3 * 1UL;
5104#line 260
5105  __cil_tmp12 = (unsigned long )(signature) + __cil_tmp11;
5106#line 260
5107  *((unsigned char *)__cil_tmp12) = (unsigned char )'E';
5108#line 260
5109  __cil_tmp13 = 4 * 1UL;
5110#line 260
5111  __cil_tmp14 = (unsigned long )(signature) + __cil_tmp13;
5112#line 260
5113  *((unsigned char *)__cil_tmp14) = (unsigned char )'Y';
5114#line 260
5115  __cil_tmp15 = 5 * 1UL;
5116#line 260
5117  __cil_tmp16 = (unsigned long )(signature) + __cil_tmp15;
5118#line 260
5119  *((unsigned char *)__cil_tmp16) = (unsigned char )'I';
5120#line 260
5121  __cil_tmp17 = 6 * 1UL;
5122#line 260
5123  __cil_tmp18 = (unsigned long )(signature) + __cil_tmp17;
5124#line 260
5125  *((unsigned char *)__cil_tmp18) = (unsigned char )'N';
5126#line 260
5127  __cil_tmp19 = 7 * 1UL;
5128#line 260
5129  __cil_tmp20 = (unsigned long )(signature) + __cil_tmp19;
5130#line 260
5131  *((unsigned char *)__cil_tmp20) = (unsigned char )'F';
5132#line 260
5133  __cil_tmp21 = 8 * 1UL;
5134#line 260
5135  __cil_tmp22 = (unsigned long )(signature) + __cil_tmp21;
5136#line 260
5137  *((unsigned char *)__cil_tmp22) = (unsigned char )'\000';
5138#line 262
5139  offset = (ssize_t )0;
5140  {
5141#line 262
5142  while (1) {
5143    while_continue: /* CIL Label */ ;
5144#line 262
5145    if (offset < 65536L) {
5146
5147    } else {
5148#line 262
5149      goto while_break;
5150    }
5151    {
5152#line 263
5153    __cil_tmp23 = bios + offset;
5154#line 263
5155    __cil_tmp24 = (void const volatile   *)__cil_tmp23;
5156#line 263
5157    __cil_tmp25 = 0 * 1UL;
5158#line 263
5159    __cil_tmp26 = (unsigned long )(signature) + __cil_tmp25;
5160#line 263
5161    __cil_tmp27 = (unsigned char *)__cil_tmp26;
5162#line 263
5163    __cil_tmp28 = (unsigned char const   *)__cil_tmp27;
5164#line 263
5165    __cil_tmp29 = 9UL - 1UL;
5166#line 263
5167    __cil_tmp30 = (int )__cil_tmp29;
5168#line 263
5169    tmp___7 = check_signature(__cil_tmp24, __cil_tmp28, __cil_tmp30);
5170    }
5171#line 263
5172    if (tmp___7) {
5173#line 265
5174      return (bios + offset);
5175    } else {
5176
5177    }
5178#line 262
5179    offset = offset + 16L;
5180  }
5181  while_break: /* CIL Label */ ;
5182  }
5183  {
5184#line 267
5185  __cil_tmp31 = 0 * 1UL;
5186#line 267
5187  __cil_tmp32 = (unsigned long )(signature) + __cil_tmp31;
5188#line 267
5189  __cil_tmp33 = (unsigned char *)__cil_tmp32;
5190#line 267
5191  printk("<5>apanel: Fujitsu BIOS signature \'%s\' not found...\n", __cil_tmp33);
5192  }
5193  {
5194#line 269
5195  __cil_tmp34 = (void *)0;
5196#line 269
5197  return ((void const   *)__cil_tmp34);
5198  }
5199}
5200}
5201#line 272
5202static int apanel_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
5203#line 272 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5204static int apanel_init(void) 
5205{ void *bios ;
5206  void const   *p ;
5207  u8 devno ;
5208  unsigned char i2c_addr ;
5209  int found ;
5210  unsigned char tmp___7 ;
5211  unsigned char method ;
5212  unsigned char slave ;
5213  unsigned char chip ;
5214  unsigned char tmp___8 ;
5215  int tmp___9 ;
5216  resource_size_t __cil_tmp12 ;
5217  void const   *__cil_tmp13 ;
5218  void volatile   *__cil_tmp14 ;
5219  void const   *__cil_tmp15 ;
5220  void const volatile   *__cil_tmp16 ;
5221  int __cil_tmp17 ;
5222  int __cil_tmp18 ;
5223  void const volatile   *__cil_tmp19 ;
5224  int __cil_tmp20 ;
5225  void const   *__cil_tmp21 ;
5226  void const volatile   *__cil_tmp22 ;
5227  void const   *__cil_tmp23 ;
5228  void const volatile   *__cil_tmp24 ;
5229  void const   *__cil_tmp25 ;
5230  void const volatile   *__cil_tmp26 ;
5231  int __cil_tmp27 ;
5232  int __cil_tmp28 ;
5233  int __cil_tmp29 ;
5234  int __cil_tmp30 ;
5235  int __cil_tmp31 ;
5236  int __cil_tmp32 ;
5237  unsigned long __cil_tmp33 ;
5238  unsigned long __cil_tmp34 ;
5239  enum apanel_chip __cil_tmp35 ;
5240  unsigned int __cil_tmp36 ;
5241  int __cil_tmp37 ;
5242  int __cil_tmp38 ;
5243  int __cil_tmp39 ;
5244  int __cil_tmp40 ;
5245  int __cil_tmp41 ;
5246  int __cil_tmp42 ;
5247  unsigned long __cil_tmp43 ;
5248  unsigned long __cil_tmp44 ;
5249  unsigned long __cil_tmp45 ;
5250  unsigned long __cil_tmp46 ;
5251  unsigned long __cil_tmp47 ;
5252  unsigned long __cil_tmp48 ;
5253  void volatile   *__cil_tmp49 ;
5254
5255  {
5256  {
5257#line 278
5258  found = 0;
5259#line 280
5260  __cil_tmp12 = (resource_size_t )983040;
5261#line 280
5262  bios = ioremap(__cil_tmp12, 65536UL);
5263#line 282
5264  __cil_tmp13 = (void const   *)bios;
5265#line 282
5266  p = bios_signature(__cil_tmp13);
5267  }
5268#line 283
5269  if (! p) {
5270    {
5271#line 284
5272    __cil_tmp14 = (void volatile   *)bios;
5273#line 284
5274    iounmap(__cil_tmp14);
5275    }
5276#line 285
5277    return (-19);
5278  } else {
5279
5280  }
5281  {
5282#line 289
5283  p = p + 8;
5284#line 290
5285  __cil_tmp15 = p + 3;
5286#line 290
5287  __cil_tmp16 = (void const volatile   *)__cil_tmp15;
5288#line 290
5289  tmp___7 = readb(__cil_tmp16);
5290#line 290
5291  __cil_tmp17 = (int )tmp___7;
5292#line 290
5293  __cil_tmp18 = __cil_tmp17 >> 1;
5294#line 290
5295  i2c_addr = (unsigned char )__cil_tmp18;
5296  }
5297  {
5298#line 292
5299  while (1) {
5300    while_continue: /* CIL Label */ ;
5301    {
5302#line 292
5303    __cil_tmp19 = (void const volatile   *)p;
5304#line 292
5305    devno = readb(__cil_tmp19);
5306    }
5307    {
5308#line 292
5309    __cil_tmp20 = (int )devno;
5310#line 292
5311    if (__cil_tmp20 & 127) {
5312
5313    } else {
5314#line 292
5315      goto while_break;
5316    }
5317    }
5318    {
5319#line 295
5320    __cil_tmp21 = p + 1;
5321#line 295
5322    __cil_tmp22 = (void const volatile   *)__cil_tmp21;
5323#line 295
5324    method = readb(__cil_tmp22);
5325#line 296
5326    __cil_tmp23 = p + 2;
5327#line 296
5328    __cil_tmp24 = (void const volatile   *)__cil_tmp23;
5329#line 296
5330    chip = readb(__cil_tmp24);
5331#line 297
5332    __cil_tmp25 = p + 3;
5333#line 297
5334    __cil_tmp26 = (void const volatile   *)__cil_tmp25;
5335#line 297
5336    tmp___8 = readb(__cil_tmp26);
5337#line 297
5338    __cil_tmp27 = (int )tmp___8;
5339#line 297
5340    __cil_tmp28 = __cil_tmp27 >> 1;
5341#line 297
5342    slave = (unsigned char )__cil_tmp28;
5343    }
5344    {
5345#line 299
5346    __cil_tmp29 = (int )i2c_addr;
5347#line 299
5348    __cil_tmp30 = (int )slave;
5349#line 299
5350    if (__cil_tmp30 != __cil_tmp29) {
5351      {
5352#line 300
5353      printk("<5>apanel: only one SMBus slave address supported, skiping device...\n");
5354      }
5355#line 302
5356      goto __Cont;
5357    } else {
5358
5359    }
5360    }
5361#line 307
5362    if ((int )devno == 6) {
5363#line 307
5364      goto case_6;
5365    } else
5366#line 310
5367    if ((int )devno == 7) {
5368#line 310
5369      goto case_7;
5370    } else
5371#line 306
5372    if (0) {
5373      case_6: /* CIL Label */ 
5374#line 308
5375      devno = (u8 )1;
5376#line 309
5377      goto switch_break;
5378      case_7: /* CIL Label */ 
5379#line 311
5380      devno = (u8 )4;
5381#line 312
5382      goto switch_break;
5383    } else {
5384      switch_break: /* CIL Label */ ;
5385    }
5386    {
5387#line 315
5388    __cil_tmp31 = (int )devno;
5389#line 315
5390    if (__cil_tmp31 >= 5) {
5391      {
5392#line 316
5393      __cil_tmp32 = (int )devno;
5394#line 316
5395      printk("<5>apanel: unknown device %u found\n", __cil_tmp32);
5396      }
5397    } else {
5398      {
5399#line 317
5400      __cil_tmp33 = devno * 4UL;
5401#line 317
5402      __cil_tmp34 = (unsigned long )(device_chip) + __cil_tmp33;
5403#line 317
5404      __cil_tmp35 = *((enum apanel_chip *)__cil_tmp34);
5405#line 317
5406      __cil_tmp36 = (unsigned int )__cil_tmp35;
5407#line 317
5408      if (__cil_tmp36 != 0U) {
5409        {
5410#line 318
5411        __cil_tmp37 = (int )devno;
5412#line 318
5413        printk("<4>apanel: duplicate entry for devno %u\n", __cil_tmp37);
5414        }
5415      } else {
5416        {
5417#line 320
5418        __cil_tmp38 = (int )method;
5419#line 320
5420        if (__cil_tmp38 != 1) {
5421          {
5422#line 320
5423          __cil_tmp39 = (int )method;
5424#line 320
5425          if (__cil_tmp39 != 2) {
5426            {
5427#line 320
5428            __cil_tmp40 = (int )method;
5429#line 320
5430            if (__cil_tmp40 != 4) {
5431              {
5432#line 321
5433              __cil_tmp41 = (int )method;
5434#line 321
5435              __cil_tmp42 = (int )devno;
5436#line 321
5437              printk("<5>apanel: unknown method %u for devno %u\n", __cil_tmp41, __cil_tmp42);
5438              }
5439            } else {
5440#line 324
5441              __cil_tmp43 = devno * 4UL;
5442#line 324
5443              __cil_tmp44 = (unsigned long )(device_chip) + __cil_tmp43;
5444#line 324
5445              *((enum apanel_chip *)__cil_tmp44) = (enum apanel_chip )chip;
5446#line 325
5447              found = found + 1;
5448            }
5449            }
5450          } else {
5451#line 324
5452            __cil_tmp45 = devno * 4UL;
5453#line 324
5454            __cil_tmp46 = (unsigned long )(device_chip) + __cil_tmp45;
5455#line 324
5456            *((enum apanel_chip *)__cil_tmp46) = (enum apanel_chip )chip;
5457#line 325
5458            found = found + 1;
5459          }
5460          }
5461        } else {
5462#line 324
5463          __cil_tmp47 = devno * 4UL;
5464#line 324
5465          __cil_tmp48 = (unsigned long )(device_chip) + __cil_tmp47;
5466#line 324
5467          *((enum apanel_chip *)__cil_tmp48) = (enum apanel_chip )chip;
5468#line 325
5469          found = found + 1;
5470        }
5471        }
5472      }
5473      }
5474    }
5475    }
5476    __Cont: /* CIL Label */ 
5477#line 292
5478    p = p + 4;
5479  }
5480  while_break: /* CIL Label */ ;
5481  }
5482  {
5483#line 328
5484  __cil_tmp49 = (void volatile   *)bios;
5485#line 328
5486  iounmap(__cil_tmp49);
5487  }
5488#line 330
5489  if (found == 0) {
5490    {
5491#line 331
5492    printk("<6>apanel: no input devices reported by BIOS\n");
5493    }
5494#line 332
5495    return (-5);
5496  } else {
5497
5498  }
5499  {
5500#line 335
5501  tmp___9 = i2c_register_driver(& __this_module, & apanel_driver);
5502  }
5503#line 335
5504  return (tmp___9);
5505}
5506}
5507#line 337 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5508int init_module(void) 
5509{ int tmp___7 ;
5510
5511  {
5512  {
5513#line 337
5514  tmp___7 = apanel_init();
5515  }
5516#line 337
5517  return (tmp___7);
5518}
5519}
5520#line 339
5521static void apanel_cleanup(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
5522#line 339 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5523static void apanel_cleanup(void) 
5524{ 
5525
5526  {
5527  {
5528#line 341
5529  i2c_del_driver(& apanel_driver);
5530  }
5531#line 342
5532  return;
5533}
5534}
5535#line 343 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5536void cleanup_module(void) 
5537{ 
5538
5539  {
5540  {
5541#line 343
5542  apanel_cleanup();
5543  }
5544#line 343
5545  return;
5546}
5547}
5548#line 345 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5549static char const   __mod_author345[59]  __attribute__((__used__, __unused__, __section__(".modinfo"),
5550__aligned__(1)))  = 
5551#line 345
5552  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
5553        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'S', 
5554        (char const   )'t',      (char const   )'e',      (char const   )'p',      (char const   )'h', 
5555        (char const   )'e',      (char const   )'n',      (char const   )' ',      (char const   )'H', 
5556        (char const   )'e',      (char const   )'m',      (char const   )'m',      (char const   )'i', 
5557        (char const   )'n',      (char const   )'g',      (char const   )'e',      (char const   )'r', 
5558        (char const   )' ',      (char const   )'<',      (char const   )'s',      (char const   )'h', 
5559        (char const   )'e',      (char const   )'m',      (char const   )'m',      (char const   )'i', 
5560        (char const   )'n',      (char const   )'g',      (char const   )'e',      (char const   )'r', 
5561        (char const   )'@',      (char const   )'l',      (char const   )'i',      (char const   )'n', 
5562        (char const   )'u',      (char const   )'x',      (char const   )'-',      (char const   )'f', 
5563        (char const   )'o',      (char const   )'u',      (char const   )'n',      (char const   )'d', 
5564        (char const   )'a',      (char const   )'t',      (char const   )'i',      (char const   )'o', 
5565        (char const   )'n',      (char const   )'.',      (char const   )'o',      (char const   )'r', 
5566        (char const   )'g',      (char const   )'>',      (char const   )'\000'};
5567#line 346 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5568static char const   __mod_description346[45]  __attribute__((__used__, __unused__,
5569__section__(".modinfo"), __aligned__(1)))  = 
5570#line 346
5571  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
5572        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
5573        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
5574        (char const   )'F',      (char const   )'u',      (char const   )'j',      (char const   )'i', 
5575        (char const   )'t',      (char const   )'s',      (char const   )'u',      (char const   )' ', 
5576        (char const   )'A',      (char const   )'p',      (char const   )'p',      (char const   )'l', 
5577        (char const   )'i',      (char const   )'c',      (char const   )'a',      (char const   )'t', 
5578        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )' ', 
5579        (char const   )'P',      (char const   )'a',      (char const   )'n',      (char const   )'e', 
5580        (char const   )'l',      (char const   )' ',      (char const   )'d',      (char const   )'r', 
5581        (char const   )'i',      (char const   )'v',      (char const   )'e',      (char const   )'r', 
5582        (char const   )'\000'};
5583#line 347 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5584static char const   __mod_license347[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
5585__aligned__(1)))  = 
5586#line 347
5587  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
5588        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
5589        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
5590#line 348 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5591static char const   __mod_version348[14]  __attribute__((__used__, __unused__, __section__(".modinfo"),
5592__aligned__(1)))  = 
5593#line 348
5594  {      (char const   )'v',      (char const   )'e',      (char const   )'r',      (char const   )'s', 
5595        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
5596        (char const   )'1',      (char const   )'.',      (char const   )'3',      (char const   )'.', 
5597        (char const   )'1',      (char const   )'\000'};
5598#line 350 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5599static char const   __mod_alias350[53]  __attribute__((__used__, __unused__, __section__(".modinfo"),
5600__aligned__(1)))  = 
5601#line 350
5602  {      (char const   )'a',      (char const   )'l',      (char const   )'i',      (char const   )'a', 
5603        (char const   )'s',      (char const   )'=',      (char const   )'d',      (char const   )'m', 
5604        (char const   )'i',      (char const   )':',      (char const   )'*',      (char const   )':', 
5605        (char const   )'s',      (char const   )'v',      (char const   )'n',      (char const   )'F', 
5606        (char const   )'U',      (char const   )'J',      (char const   )'I',      (char const   )'T', 
5607        (char const   )'S',      (char const   )'U',      (char const   )':',      (char const   )'p', 
5608        (char const   )'n',      (char const   )'L',      (char const   )'i',      (char const   )'f', 
5609        (char const   )'e',      (char const   )'B',      (char const   )'o',      (char const   )'o', 
5610        (char const   )'k',      (char const   )'*',      (char const   )':',      (char const   )'p', 
5611        (char const   )'v',      (char const   )'r',      (char const   )'*',      (char const   )':', 
5612        (char const   )'r',      (char const   )'v',      (char const   )'n',      (char const   )'F', 
5613        (char const   )'U',      (char const   )'J',      (char const   )'I',      (char const   )'T', 
5614        (char const   )'S',      (char const   )'U',      (char const   )':',      (char const   )'*', 
5615        (char const   )'\000'};
5616#line 351 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5617static char const   __mod_alias351[53]  __attribute__((__used__, __unused__, __section__(".modinfo"),
5618__aligned__(1)))  = 
5619#line 351
5620  {      (char const   )'a',      (char const   )'l',      (char const   )'i',      (char const   )'a', 
5621        (char const   )'s',      (char const   )'=',      (char const   )'d',      (char const   )'m', 
5622        (char const   )'i',      (char const   )':',      (char const   )'*',      (char const   )':', 
5623        (char const   )'s',      (char const   )'v',      (char const   )'n',      (char const   )'F', 
5624        (char const   )'U',      (char const   )'J',      (char const   )'I',      (char const   )'T', 
5625        (char const   )'S',      (char const   )'U',      (char const   )':',      (char const   )'p', 
5626        (char const   )'n',      (char const   )'L',      (char const   )'i',      (char const   )'f', 
5627        (char const   )'e',      (char const   )'b',      (char const   )'o',      (char const   )'o', 
5628        (char const   )'k',      (char const   )'*',      (char const   )':',      (char const   )'p', 
5629        (char const   )'v',      (char const   )'r',      (char const   )'*',      (char const   )':', 
5630        (char const   )'r',      (char const   )'v',      (char const   )'n',      (char const   )'F', 
5631        (char const   )'U',      (char const   )'J',      (char const   )'I',      (char const   )'T', 
5632        (char const   )'S',      (char const   )'U',      (char const   )':',      (char const   )'*', 
5633        (char const   )'\000'};
5634#line 369
5635void ldv_check_final_state(void) ;
5636#line 375
5637extern void ldv_initialize(void) ;
5638#line 378
5639extern int __VERIFIER_nondet_int(void) ;
5640#line 381 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5641int LDV_IN_INTERRUPT  ;
5642#line 384 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5643void main(void) 
5644{ struct led_classdev *var_group1 ;
5645  enum led_brightness var_mail_led_set_3_p1 ;
5646  int tmp___7 ;
5647  int tmp___8 ;
5648  int tmp___9 ;
5649
5650  {
5651  {
5652#line 410
5653  LDV_IN_INTERRUPT = 1;
5654#line 419
5655  ldv_initialize();
5656#line 431
5657  tmp___7 = apanel_init();
5658  }
5659#line 431
5660  if (tmp___7) {
5661#line 432
5662    goto ldv_final;
5663  } else {
5664
5665  }
5666  {
5667#line 436
5668  while (1) {
5669    while_continue: /* CIL Label */ ;
5670    {
5671#line 436
5672    tmp___9 = __VERIFIER_nondet_int();
5673    }
5674#line 436
5675    if (tmp___9) {
5676
5677    } else {
5678#line 436
5679      goto while_break;
5680    }
5681    {
5682#line 439
5683    tmp___8 = __VERIFIER_nondet_int();
5684    }
5685#line 441
5686    if (tmp___8 == 0) {
5687#line 441
5688      goto case_0;
5689    } else {
5690      {
5691#line 463
5692      goto switch_default;
5693#line 439
5694      if (0) {
5695        case_0: /* CIL Label */ 
5696        {
5697#line 455
5698        mail_led_set(var_group1, var_mail_led_set_3_p1);
5699        }
5700#line 462
5701        goto switch_break;
5702        switch_default: /* CIL Label */ 
5703#line 463
5704        goto switch_break;
5705      } else {
5706        switch_break: /* CIL Label */ ;
5707      }
5708      }
5709    }
5710  }
5711  while_break: /* CIL Label */ ;
5712  }
5713  {
5714#line 481
5715  apanel_cleanup();
5716  }
5717  ldv_final: 
5718  {
5719#line 484
5720  ldv_check_final_state();
5721  }
5722#line 487
5723  return;
5724}
5725}
5726#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
5727void ldv_blast_assert(void) 
5728{ 
5729
5730  {
5731  ERROR: 
5732#line 6
5733  goto ERROR;
5734}
5735}
5736#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
5737extern int __VERIFIER_nondet_int(void) ;
5738#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5739int ldv_mutex  =    1;
5740#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5741int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
5742{ int nondetermined ;
5743
5744  {
5745#line 29
5746  if (ldv_mutex == 1) {
5747
5748  } else {
5749    {
5750#line 29
5751    ldv_blast_assert();
5752    }
5753  }
5754  {
5755#line 32
5756  nondetermined = __VERIFIER_nondet_int();
5757  }
5758#line 35
5759  if (nondetermined) {
5760#line 38
5761    ldv_mutex = 2;
5762#line 40
5763    return (0);
5764  } else {
5765#line 45
5766    return (-4);
5767  }
5768}
5769}
5770#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5771int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
5772{ int nondetermined ;
5773
5774  {
5775#line 57
5776  if (ldv_mutex == 1) {
5777
5778  } else {
5779    {
5780#line 57
5781    ldv_blast_assert();
5782    }
5783  }
5784  {
5785#line 60
5786  nondetermined = __VERIFIER_nondet_int();
5787  }
5788#line 63
5789  if (nondetermined) {
5790#line 66
5791    ldv_mutex = 2;
5792#line 68
5793    return (0);
5794  } else {
5795#line 73
5796    return (-4);
5797  }
5798}
5799}
5800#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5801int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
5802{ int atomic_value_after_dec ;
5803
5804  {
5805#line 83
5806  if (ldv_mutex == 1) {
5807
5808  } else {
5809    {
5810#line 83
5811    ldv_blast_assert();
5812    }
5813  }
5814  {
5815#line 86
5816  atomic_value_after_dec = __VERIFIER_nondet_int();
5817  }
5818#line 89
5819  if (atomic_value_after_dec == 0) {
5820#line 92
5821    ldv_mutex = 2;
5822#line 94
5823    return (1);
5824  } else {
5825
5826  }
5827#line 98
5828  return (0);
5829}
5830}
5831#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5832void mutex_lock(struct mutex *lock ) 
5833{ 
5834
5835  {
5836#line 108
5837  if (ldv_mutex == 1) {
5838
5839  } else {
5840    {
5841#line 108
5842    ldv_blast_assert();
5843    }
5844  }
5845#line 110
5846  ldv_mutex = 2;
5847#line 111
5848  return;
5849}
5850}
5851#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5852int mutex_trylock(struct mutex *lock ) 
5853{ int nondetermined ;
5854
5855  {
5856#line 121
5857  if (ldv_mutex == 1) {
5858
5859  } else {
5860    {
5861#line 121
5862    ldv_blast_assert();
5863    }
5864  }
5865  {
5866#line 124
5867  nondetermined = __VERIFIER_nondet_int();
5868  }
5869#line 127
5870  if (nondetermined) {
5871#line 130
5872    ldv_mutex = 2;
5873#line 132
5874    return (1);
5875  } else {
5876#line 137
5877    return (0);
5878  }
5879}
5880}
5881#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5882void mutex_unlock(struct mutex *lock ) 
5883{ 
5884
5885  {
5886#line 147
5887  if (ldv_mutex == 2) {
5888
5889  } else {
5890    {
5891#line 147
5892    ldv_blast_assert();
5893    }
5894  }
5895#line 149
5896  ldv_mutex = 1;
5897#line 150
5898  return;
5899}
5900}
5901#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5902void ldv_check_final_state(void) 
5903{ 
5904
5905  {
5906#line 156
5907  if (ldv_mutex == 1) {
5908
5909  } else {
5910    {
5911#line 156
5912    ldv_blast_assert();
5913    }
5914  }
5915#line 157
5916  return;
5917}
5918}
5919#line 496 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4001/dscv_tempdir/dscv/ri/32_1/drivers/input/misc/apanel.c.common.c"
5920long s__builtin_expect(long val , long res ) 
5921{ 
5922
5923  {
5924#line 497
5925  return (val);
5926}
5927}