Showing error 577

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


Source:

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