Showing error 506

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