Showing error 268

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--pcspkr.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 3266
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

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