Showing error 277

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