Showing error 218

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


Source:

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