Showing error 507

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--ftl.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 10570
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 96 "include/asm-generic/posix_types.h"
   59typedef char *__kernel_caddr_t;
   60#line 21 "include/linux/types.h"
   61typedef __u32 __kernel_dev_t;
   62#line 24 "include/linux/types.h"
   63typedef __kernel_dev_t dev_t;
   64#line 27 "include/linux/types.h"
   65typedef unsigned short umode_t;
   66#line 30 "include/linux/types.h"
   67typedef __kernel_pid_t pid_t;
   68#line 35 "include/linux/types.h"
   69typedef __kernel_clockid_t clockid_t;
   70#line 38 "include/linux/types.h"
   71typedef _Bool bool;
   72#line 40 "include/linux/types.h"
   73typedef __kernel_uid32_t uid_t;
   74#line 41 "include/linux/types.h"
   75typedef __kernel_gid32_t gid_t;
   76#line 54 "include/linux/types.h"
   77typedef __kernel_loff_t loff_t;
   78#line 63 "include/linux/types.h"
   79typedef __kernel_size_t size_t;
   80#line 68 "include/linux/types.h"
   81typedef __kernel_ssize_t ssize_t;
   82#line 78 "include/linux/types.h"
   83typedef __kernel_time_t time_t;
   84#line 88 "include/linux/types.h"
   85typedef __kernel_caddr_t caddr_t;
   86#line 92 "include/linux/types.h"
   87typedef unsigned char u_char;
   88#line 95 "include/linux/types.h"
   89typedef unsigned long u_long;
   90#line 111 "include/linux/types.h"
   91typedef __s32 int32_t;
   92#line 115 "include/linux/types.h"
   93typedef __u8 uint8_t;
   94#line 116 "include/linux/types.h"
   95typedef __u16 uint16_t;
   96#line 117 "include/linux/types.h"
   97typedef __u32 uint32_t;
   98#line 120 "include/linux/types.h"
   99typedef __u64 uint64_t;
  100#line 142 "include/linux/types.h"
  101typedef unsigned long sector_t;
  102#line 143 "include/linux/types.h"
  103typedef unsigned long blkcnt_t;
  104#line 202 "include/linux/types.h"
  105typedef unsigned int gfp_t;
  106#line 203 "include/linux/types.h"
  107typedef unsigned int fmode_t;
  108#line 206 "include/linux/types.h"
  109typedef u64 phys_addr_t;
  110#line 211 "include/linux/types.h"
  111typedef phys_addr_t resource_size_t;
  112#line 219 "include/linux/types.h"
  113struct __anonstruct_atomic_t_7 {
  114   int counter ;
  115};
  116#line 219 "include/linux/types.h"
  117typedef struct __anonstruct_atomic_t_7 atomic_t;
  118#line 224 "include/linux/types.h"
  119struct __anonstruct_atomic64_t_8 {
  120   long counter ;
  121};
  122#line 224 "include/linux/types.h"
  123typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  124#line 229 "include/linux/types.h"
  125struct list_head {
  126   struct list_head *next ;
  127   struct list_head *prev ;
  128};
  129#line 233
  130struct hlist_node;
  131#line 233 "include/linux/types.h"
  132struct hlist_head {
  133   struct hlist_node *first ;
  134};
  135#line 237 "include/linux/types.h"
  136struct hlist_node {
  137   struct hlist_node *next ;
  138   struct hlist_node **pprev ;
  139};
  140#line 253 "include/linux/types.h"
  141struct rcu_head {
  142   struct rcu_head *next ;
  143   void (*func)(struct rcu_head *head ) ;
  144};
  145#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  146typedef u16 __ticket_t;
  147#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  148typedef u32 __ticketpair_t;
  149#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  150struct __raw_tickets {
  151   __ticket_t head ;
  152   __ticket_t tail ;
  153};
  154#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  155union __anonunion____missing_field_name_9 {
  156   __ticketpair_t head_tail ;
  157   struct __raw_tickets tickets ;
  158};
  159#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  160struct arch_spinlock {
  161   union __anonunion____missing_field_name_9 __annonCompField4 ;
  162};
  163#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  164typedef struct arch_spinlock arch_spinlock_t;
  165#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  166struct __anonstruct____missing_field_name_11 {
  167   u32 read ;
  168   s32 write ;
  169};
  170#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  171union __anonunion_arch_rwlock_t_10 {
  172   s64 lock ;
  173   struct __anonstruct____missing_field_name_11 __annonCompField5 ;
  174};
  175#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  176typedef union __anonunion_arch_rwlock_t_10 arch_rwlock_t;
  177#line 12 "include/linux/lockdep.h"
  178struct task_struct;
  179#line 12
  180struct task_struct;
  181#line 391 "include/linux/lockdep.h"
  182struct lock_class_key {
  183
  184};
  185#line 20 "include/linux/spinlock_types.h"
  186struct raw_spinlock {
  187   arch_spinlock_t raw_lock ;
  188   unsigned int magic ;
  189   unsigned int owner_cpu ;
  190   void *owner ;
  191};
  192#line 20 "include/linux/spinlock_types.h"
  193typedef struct raw_spinlock raw_spinlock_t;
  194#line 64 "include/linux/spinlock_types.h"
  195union __anonunion____missing_field_name_12 {
  196   struct raw_spinlock rlock ;
  197};
  198#line 64 "include/linux/spinlock_types.h"
  199struct spinlock {
  200   union __anonunion____missing_field_name_12 __annonCompField6 ;
  201};
  202#line 64 "include/linux/spinlock_types.h"
  203typedef struct spinlock spinlock_t;
  204#line 11 "include/linux/rwlock_types.h"
  205struct __anonstruct_rwlock_t_13 {
  206   arch_rwlock_t raw_lock ;
  207   unsigned int magic ;
  208   unsigned int owner_cpu ;
  209   void *owner ;
  210};
  211#line 11 "include/linux/rwlock_types.h"
  212typedef struct __anonstruct_rwlock_t_13 rwlock_t;
  213#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  214struct task_struct;
  215#line 8
  216struct mm_struct;
  217#line 8
  218struct mm_struct;
  219#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  220struct pt_regs {
  221   unsigned long r15 ;
  222   unsigned long r14 ;
  223   unsigned long r13 ;
  224   unsigned long r12 ;
  225   unsigned long bp ;
  226   unsigned long bx ;
  227   unsigned long r11 ;
  228   unsigned long r10 ;
  229   unsigned long r9 ;
  230   unsigned long r8 ;
  231   unsigned long ax ;
  232   unsigned long cx ;
  233   unsigned long dx ;
  234   unsigned long si ;
  235   unsigned long di ;
  236   unsigned long orig_ax ;
  237   unsigned long ip ;
  238   unsigned long cs ;
  239   unsigned long flags ;
  240   unsigned long sp ;
  241   unsigned long ss ;
  242};
  243#line 146 "include/linux/init.h"
  244typedef void (*ctor_fn_t)(void);
  245#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  246struct __anonstruct____missing_field_name_15 {
  247   unsigned int a ;
  248   unsigned int b ;
  249};
  250#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  251struct __anonstruct____missing_field_name_16 {
  252   u16 limit0 ;
  253   u16 base0 ;
  254   unsigned int base1 : 8 ;
  255   unsigned int type : 4 ;
  256   unsigned int s : 1 ;
  257   unsigned int dpl : 2 ;
  258   unsigned int p : 1 ;
  259   unsigned int limit : 4 ;
  260   unsigned int avl : 1 ;
  261   unsigned int l : 1 ;
  262   unsigned int d : 1 ;
  263   unsigned int g : 1 ;
  264   unsigned int base2 : 8 ;
  265};
  266#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  267union __anonunion____missing_field_name_14 {
  268   struct __anonstruct____missing_field_name_15 __annonCompField7 ;
  269   struct __anonstruct____missing_field_name_16 __annonCompField8 ;
  270};
  271#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  272struct desc_struct {
  273   union __anonunion____missing_field_name_14 __annonCompField9 ;
  274} __attribute__((__packed__)) ;
  275#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
  276typedef unsigned long pgdval_t;
  277#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
  278typedef unsigned long pgprotval_t;
  279#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  280struct pgprot {
  281   pgprotval_t pgprot ;
  282};
  283#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  284typedef struct pgprot pgprot_t;
  285#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  286struct __anonstruct_pgd_t_20 {
  287   pgdval_t pgd ;
  288};
  289#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  290typedef struct __anonstruct_pgd_t_20 pgd_t;
  291#line 282
  292struct page;
  293#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  294typedef struct page *pgtable_t;
  295#line 295
  296struct file;
  297#line 295
  298struct file;
  299#line 313
  300struct seq_file;
  301#line 313
  302struct seq_file;
  303#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
  304struct page;
  305#line 47
  306struct thread_struct;
  307#line 47
  308struct thread_struct;
  309#line 50
  310struct mm_struct;
  311#line 51
  312struct desc_struct;
  313#line 52
  314struct task_struct;
  315#line 53
  316struct cpumask;
  317#line 53
  318struct cpumask;
  319#line 329
  320struct arch_spinlock;
  321#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  322struct task_struct;
  323#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
  324struct kernel_vm86_regs {
  325   struct pt_regs pt ;
  326   unsigned short es ;
  327   unsigned short __esh ;
  328   unsigned short ds ;
  329   unsigned short __dsh ;
  330   unsigned short fs ;
  331   unsigned short __fsh ;
  332   unsigned short gs ;
  333   unsigned short __gsh ;
  334};
  335#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
  336union __anonunion____missing_field_name_24 {
  337   struct pt_regs *regs ;
  338   struct kernel_vm86_regs *vm86 ;
  339};
  340#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
  341struct math_emu_info {
  342   long ___orig_eip ;
  343   union __anonunion____missing_field_name_24 __annonCompField10 ;
  344};
  345#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
  346struct module;
  347#line 56
  348struct module;
  349#line 9 "include/linux/dynamic_debug.h"
  350struct _ddebug {
  351   char const   *modname ;
  352   char const   *function ;
  353   char const   *filename ;
  354   char const   *format ;
  355   unsigned int lineno : 18 ;
  356   unsigned int flags : 8 ;
  357} __attribute__((__aligned__(8))) ;
  358#line 47
  359struct device;
  360#line 47
  361struct device;
  362#line 135 "include/linux/kernel.h"
  363struct completion;
  364#line 135
  365struct completion;
  366#line 136
  367struct pt_regs;
  368#line 349
  369struct pid;
  370#line 349
  371struct pid;
  372#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
  373struct task_struct;
  374#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
  375struct page;
  376#line 10 "include/asm-generic/bug.h"
  377struct bug_entry {
  378   int bug_addr_disp ;
  379   int file_disp ;
  380   unsigned short line ;
  381   unsigned short flags ;
  382};
  383#line 12 "include/linux/bug.h"
  384struct pt_regs;
  385#line 14 "include/linux/cpumask.h"
  386struct cpumask {
  387   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
  388};
  389#line 14 "include/linux/cpumask.h"
  390typedef struct cpumask cpumask_t;
  391#line 637 "include/linux/cpumask.h"
  392typedef struct cpumask *cpumask_var_t;
  393#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
  394struct static_key;
  395#line 234
  396struct static_key;
  397#line 11 "include/linux/personality.h"
  398struct pt_regs;
  399#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  400struct i387_fsave_struct {
  401   u32 cwd ;
  402   u32 swd ;
  403   u32 twd ;
  404   u32 fip ;
  405   u32 fcs ;
  406   u32 foo ;
  407   u32 fos ;
  408   u32 st_space[20] ;
  409   u32 status ;
  410};
  411#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  412struct __anonstruct____missing_field_name_32 {
  413   u64 rip ;
  414   u64 rdp ;
  415};
  416#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  417struct __anonstruct____missing_field_name_33 {
  418   u32 fip ;
  419   u32 fcs ;
  420   u32 foo ;
  421   u32 fos ;
  422};
  423#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  424union __anonunion____missing_field_name_31 {
  425   struct __anonstruct____missing_field_name_32 __annonCompField14 ;
  426   struct __anonstruct____missing_field_name_33 __annonCompField15 ;
  427};
  428#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  429union __anonunion____missing_field_name_34 {
  430   u32 padding1[12] ;
  431   u32 sw_reserved[12] ;
  432};
  433#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  434struct i387_fxsave_struct {
  435   u16 cwd ;
  436   u16 swd ;
  437   u16 twd ;
  438   u16 fop ;
  439   union __anonunion____missing_field_name_31 __annonCompField16 ;
  440   u32 mxcsr ;
  441   u32 mxcsr_mask ;
  442   u32 st_space[32] ;
  443   u32 xmm_space[64] ;
  444   u32 padding[12] ;
  445   union __anonunion____missing_field_name_34 __annonCompField17 ;
  446} __attribute__((__aligned__(16))) ;
  447#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  448struct i387_soft_struct {
  449   u32 cwd ;
  450   u32 swd ;
  451   u32 twd ;
  452   u32 fip ;
  453   u32 fcs ;
  454   u32 foo ;
  455   u32 fos ;
  456   u32 st_space[20] ;
  457   u8 ftop ;
  458   u8 changed ;
  459   u8 lookahead ;
  460   u8 no_update ;
  461   u8 rm ;
  462   u8 alimit ;
  463   struct math_emu_info *info ;
  464   u32 entry_eip ;
  465};
  466#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  467struct ymmh_struct {
  468   u32 ymmh_space[64] ;
  469};
  470#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  471struct xsave_hdr_struct {
  472   u64 xstate_bv ;
  473   u64 reserved1[2] ;
  474   u64 reserved2[5] ;
  475} __attribute__((__packed__)) ;
  476#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  477struct xsave_struct {
  478   struct i387_fxsave_struct i387 ;
  479   struct xsave_hdr_struct xsave_hdr ;
  480   struct ymmh_struct ymmh ;
  481} __attribute__((__packed__, __aligned__(64))) ;
  482#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  483union thread_xstate {
  484   struct i387_fsave_struct fsave ;
  485   struct i387_fxsave_struct fxsave ;
  486   struct i387_soft_struct soft ;
  487   struct xsave_struct xsave ;
  488};
  489#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  490struct fpu {
  491   unsigned int last_cpu ;
  492   unsigned int has_fpu ;
  493   union thread_xstate *state ;
  494};
  495#line 433
  496struct kmem_cache;
  497#line 435
  498struct perf_event;
  499#line 435
  500struct perf_event;
  501#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  502struct thread_struct {
  503   struct desc_struct tls_array[3] ;
  504   unsigned long sp0 ;
  505   unsigned long sp ;
  506   unsigned long usersp ;
  507   unsigned short es ;
  508   unsigned short ds ;
  509   unsigned short fsindex ;
  510   unsigned short gsindex ;
  511   unsigned long fs ;
  512   unsigned long gs ;
  513   struct perf_event *ptrace_bps[4] ;
  514   unsigned long debugreg6 ;
  515   unsigned long ptrace_dr7 ;
  516   unsigned long cr2 ;
  517   unsigned long trap_nr ;
  518   unsigned long error_code ;
  519   struct fpu fpu ;
  520   unsigned long *io_bitmap_ptr ;
  521   unsigned long iopl ;
  522   unsigned int io_bitmap_max ;
  523};
  524#line 23 "include/asm-generic/atomic-long.h"
  525typedef atomic64_t atomic_long_t;
  526#line 48 "include/linux/mutex.h"
  527struct mutex {
  528   atomic_t count ;
  529   spinlock_t wait_lock ;
  530   struct list_head wait_list ;
  531   struct task_struct *owner ;
  532   char const   *name ;
  533   void *magic ;
  534};
  535#line 69 "include/linux/mutex.h"
  536struct mutex_waiter {
  537   struct list_head list ;
  538   struct task_struct *task ;
  539   void *magic ;
  540};
  541#line 22 "include/linux/kref.h"
  542struct kref {
  543   atomic_t refcount ;
  544};
  545#line 20 "include/linux/kobject_ns.h"
  546struct sock;
  547#line 20
  548struct sock;
  549#line 21
  550struct kobject;
  551#line 21
  552struct kobject;
  553#line 27
  554enum kobj_ns_type {
  555    KOBJ_NS_TYPE_NONE = 0,
  556    KOBJ_NS_TYPE_NET = 1,
  557    KOBJ_NS_TYPES = 2
  558} ;
  559#line 40 "include/linux/kobject_ns.h"
  560struct kobj_ns_type_operations {
  561   enum kobj_ns_type type ;
  562   void *(*grab_current_ns)(void) ;
  563   void const   *(*netlink_ns)(struct sock *sk ) ;
  564   void const   *(*initial_ns)(void) ;
  565   void (*drop_ns)(void * ) ;
  566};
  567#line 22 "include/linux/sysfs.h"
  568struct kobject;
  569#line 23
  570struct module;
  571#line 24
  572enum kobj_ns_type;
  573#line 26 "include/linux/sysfs.h"
  574struct attribute {
  575   char const   *name ;
  576   umode_t mode ;
  577};
  578#line 56 "include/linux/sysfs.h"
  579struct attribute_group {
  580   char const   *name ;
  581   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
  582   struct attribute **attrs ;
  583};
  584#line 85
  585struct file;
  586#line 86
  587struct vm_area_struct;
  588#line 86
  589struct vm_area_struct;
  590#line 88 "include/linux/sysfs.h"
  591struct bin_attribute {
  592   struct attribute attr ;
  593   size_t size ;
  594   void *private ;
  595   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
  596                   loff_t  , size_t  ) ;
  597   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
  598                    loff_t  , size_t  ) ;
  599   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
  600};
  601#line 112 "include/linux/sysfs.h"
  602struct sysfs_ops {
  603   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
  604   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
  605   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
  606};
  607#line 118
  608struct sysfs_dirent;
  609#line 118
  610struct sysfs_dirent;
  611#line 27 "include/linux/mtd/blktrans.h"
  612struct hd_geometry;
  613#line 27
  614struct hd_geometry;
  615#line 28
  616struct mtd_info;
  617#line 28
  618struct mtd_info;
  619#line 29
  620struct mtd_blktrans_ops;
  621#line 29
  622struct mtd_blktrans_ops;
  623#line 30
  624struct file;
  625#line 31
  626struct inode;
  627#line 31
  628struct inode;
  629#line 33
  630struct gendisk;
  631#line 33
  632struct request_queue;
  633#line 33 "include/linux/mtd/blktrans.h"
  634struct mtd_blktrans_dev {
  635   struct mtd_blktrans_ops *tr ;
  636   struct list_head list ;
  637   struct mtd_info *mtd ;
  638   struct mutex lock ;
  639   int devnum ;
  640   bool bg_stop ;
  641   unsigned long size ;
  642   int readonly ;
  643   int open ;
  644   struct kref ref ;
  645   struct gendisk *disk ;
  646   struct attribute_group *disk_attributes ;
  647   struct task_struct *thread ;
  648   struct request_queue *rq ;
  649   spinlock_t queue_lock ;
  650   void *priv ;
  651   fmode_t file_mode ;
  652};
  653#line 53 "include/linux/mtd/blktrans.h"
  654struct mtd_blktrans_ops {
  655   char *name ;
  656   int major ;
  657   int part_bits ;
  658   int blksize ;
  659   int blkshift ;
  660   int (*readsect)(struct mtd_blktrans_dev *dev , unsigned long block , char *buffer ) ;
  661   int (*writesect)(struct mtd_blktrans_dev *dev , unsigned long block , char *buffer ) ;
  662   int (*discard)(struct mtd_blktrans_dev *dev , unsigned long block , unsigned int nr_blocks ) ;
  663   void (*background)(struct mtd_blktrans_dev *dev ) ;
  664   int (*getgeo)(struct mtd_blktrans_dev *dev , struct hd_geometry *geo ) ;
  665   int (*flush)(struct mtd_blktrans_dev *dev ) ;
  666   int (*open)(struct mtd_blktrans_dev *dev ) ;
  667   int (*release)(struct mtd_blktrans_dev *dev ) ;
  668   void (*add_mtd)(struct mtd_blktrans_ops *tr , struct mtd_info *mtd ) ;
  669   void (*remove_dev)(struct mtd_blktrans_dev *dev ) ;
  670   struct list_head devs ;
  671   struct list_head list ;
  672   struct module *owner ;
  673};
  674#line 12 "include/linux/thread_info.h"
  675struct timespec;
  676#line 12
  677struct timespec;
  678#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
  679struct task_struct;
  680#line 119 "include/linux/seqlock.h"
  681struct seqcount {
  682   unsigned int sequence ;
  683};
  684#line 119 "include/linux/seqlock.h"
  685typedef struct seqcount seqcount_t;
  686#line 14 "include/linux/time.h"
  687struct timespec {
  688   __kernel_time_t tv_sec ;
  689   long tv_nsec ;
  690};
  691#line 62 "include/linux/stat.h"
  692struct kstat {
  693   u64 ino ;
  694   dev_t dev ;
  695   umode_t mode ;
  696   unsigned int nlink ;
  697   uid_t uid ;
  698   gid_t gid ;
  699   dev_t rdev ;
  700   loff_t size ;
  701   struct timespec atime ;
  702   struct timespec mtime ;
  703   struct timespec ctime ;
  704   unsigned long blksize ;
  705   unsigned long long blocks ;
  706};
  707#line 49 "include/linux/wait.h"
  708struct __wait_queue_head {
  709   spinlock_t lock ;
  710   struct list_head task_list ;
  711};
  712#line 53 "include/linux/wait.h"
  713typedef struct __wait_queue_head wait_queue_head_t;
  714#line 55
  715struct task_struct;
  716#line 98 "include/linux/nodemask.h"
  717struct __anonstruct_nodemask_t_42 {
  718   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
  719};
  720#line 98 "include/linux/nodemask.h"
  721typedef struct __anonstruct_nodemask_t_42 nodemask_t;
  722#line 60 "include/linux/pageblock-flags.h"
  723struct page;
  724#line 19 "include/linux/rwsem.h"
  725struct rw_semaphore;
  726#line 19
  727struct rw_semaphore;
  728#line 25 "include/linux/rwsem.h"
  729struct rw_semaphore {
  730   long count ;
  731   raw_spinlock_t wait_lock ;
  732   struct list_head wait_list ;
  733};
  734#line 25 "include/linux/completion.h"
  735struct completion {
  736   unsigned int done ;
  737   wait_queue_head_t wait ;
  738};
  739#line 188 "include/linux/rcupdate.h"
  740struct notifier_block;
  741#line 188
  742struct notifier_block;
  743#line 50 "include/linux/notifier.h"
  744struct notifier_block {
  745   int (*notifier_call)(struct notifier_block * , unsigned long  , void * ) ;
  746   struct notifier_block *next ;
  747   int priority ;
  748};
  749#line 9 "include/linux/memory_hotplug.h"
  750struct page;
  751#line 202 "include/linux/ioport.h"
  752struct device;
  753#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
  754struct device;
  755#line 46 "include/linux/ktime.h"
  756union ktime {
  757   s64 tv64 ;
  758};
  759#line 59 "include/linux/ktime.h"
  760typedef union ktime ktime_t;
  761#line 10 "include/linux/timer.h"
  762struct tvec_base;
  763#line 10
  764struct tvec_base;
  765#line 12 "include/linux/timer.h"
  766struct timer_list {
  767   struct list_head entry ;
  768   unsigned long expires ;
  769   struct tvec_base *base ;
  770   void (*function)(unsigned long  ) ;
  771   unsigned long data ;
  772   int slack ;
  773   int start_pid ;
  774   void *start_site ;
  775   char start_comm[16] ;
  776};
  777#line 289
  778struct hrtimer;
  779#line 289
  780struct hrtimer;
  781#line 290
  782enum hrtimer_restart;
  783#line 17 "include/linux/workqueue.h"
  784struct work_struct;
  785#line 17
  786struct work_struct;
  787#line 79 "include/linux/workqueue.h"
  788struct work_struct {
  789   atomic_long_t data ;
  790   struct list_head entry ;
  791   void (*func)(struct work_struct *work ) ;
  792};
  793#line 92 "include/linux/workqueue.h"
  794struct delayed_work {
  795   struct work_struct work ;
  796   struct timer_list timer ;
  797};
  798#line 42 "include/linux/pm.h"
  799struct device;
  800#line 50 "include/linux/pm.h"
  801struct pm_message {
  802   int event ;
  803};
  804#line 50 "include/linux/pm.h"
  805typedef struct pm_message pm_message_t;
  806#line 264 "include/linux/pm.h"
  807struct dev_pm_ops {
  808   int (*prepare)(struct device *dev ) ;
  809   void (*complete)(struct device *dev ) ;
  810   int (*suspend)(struct device *dev ) ;
  811   int (*resume)(struct device *dev ) ;
  812   int (*freeze)(struct device *dev ) ;
  813   int (*thaw)(struct device *dev ) ;
  814   int (*poweroff)(struct device *dev ) ;
  815   int (*restore)(struct device *dev ) ;
  816   int (*suspend_late)(struct device *dev ) ;
  817   int (*resume_early)(struct device *dev ) ;
  818   int (*freeze_late)(struct device *dev ) ;
  819   int (*thaw_early)(struct device *dev ) ;
  820   int (*poweroff_late)(struct device *dev ) ;
  821   int (*restore_early)(struct device *dev ) ;
  822   int (*suspend_noirq)(struct device *dev ) ;
  823   int (*resume_noirq)(struct device *dev ) ;
  824   int (*freeze_noirq)(struct device *dev ) ;
  825   int (*thaw_noirq)(struct device *dev ) ;
  826   int (*poweroff_noirq)(struct device *dev ) ;
  827   int (*restore_noirq)(struct device *dev ) ;
  828   int (*runtime_suspend)(struct device *dev ) ;
  829   int (*runtime_resume)(struct device *dev ) ;
  830   int (*runtime_idle)(struct device *dev ) ;
  831};
  832#line 458
  833enum rpm_status {
  834    RPM_ACTIVE = 0,
  835    RPM_RESUMING = 1,
  836    RPM_SUSPENDED = 2,
  837    RPM_SUSPENDING = 3
  838} ;
  839#line 480
  840enum rpm_request {
  841    RPM_REQ_NONE = 0,
  842    RPM_REQ_IDLE = 1,
  843    RPM_REQ_SUSPEND = 2,
  844    RPM_REQ_AUTOSUSPEND = 3,
  845    RPM_REQ_RESUME = 4
  846} ;
  847#line 488
  848struct wakeup_source;
  849#line 488
  850struct wakeup_source;
  851#line 495 "include/linux/pm.h"
  852struct pm_subsys_data {
  853   spinlock_t lock ;
  854   unsigned int refcount ;
  855};
  856#line 506
  857struct dev_pm_qos_request;
  858#line 506
  859struct pm_qos_constraints;
  860#line 506 "include/linux/pm.h"
  861struct dev_pm_info {
  862   pm_message_t power_state ;
  863   unsigned int can_wakeup : 1 ;
  864   unsigned int async_suspend : 1 ;
  865   bool is_prepared : 1 ;
  866   bool is_suspended : 1 ;
  867   bool ignore_children : 1 ;
  868   spinlock_t lock ;
  869   struct list_head entry ;
  870   struct completion completion ;
  871   struct wakeup_source *wakeup ;
  872   bool wakeup_path : 1 ;
  873   struct timer_list suspend_timer ;
  874   unsigned long timer_expires ;
  875   struct work_struct work ;
  876   wait_queue_head_t wait_queue ;
  877   atomic_t usage_count ;
  878   atomic_t child_count ;
  879   unsigned int disable_depth : 3 ;
  880   unsigned int idle_notification : 1 ;
  881   unsigned int request_pending : 1 ;
  882   unsigned int deferred_resume : 1 ;
  883   unsigned int run_wake : 1 ;
  884   unsigned int runtime_auto : 1 ;
  885   unsigned int no_callbacks : 1 ;
  886   unsigned int irq_safe : 1 ;
  887   unsigned int use_autosuspend : 1 ;
  888   unsigned int timer_autosuspends : 1 ;
  889   enum rpm_request request ;
  890   enum rpm_status runtime_status ;
  891   int runtime_error ;
  892   int autosuspend_delay ;
  893   unsigned long last_busy ;
  894   unsigned long active_jiffies ;
  895   unsigned long suspended_jiffies ;
  896   unsigned long accounting_timestamp ;
  897   ktime_t suspend_time ;
  898   s64 max_time_suspended_ns ;
  899   struct dev_pm_qos_request *pq_req ;
  900   struct pm_subsys_data *subsys_data ;
  901   struct pm_qos_constraints *constraints ;
  902};
  903#line 564 "include/linux/pm.h"
  904struct dev_pm_domain {
  905   struct dev_pm_ops ops ;
  906};
  907#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
  908struct __anonstruct_mm_context_t_112 {
  909   void *ldt ;
  910   int size ;
  911   unsigned short ia32_compat ;
  912   struct mutex lock ;
  913   void *vdso ;
  914};
  915#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
  916typedef struct __anonstruct_mm_context_t_112 mm_context_t;
  917#line 8 "include/linux/vmalloc.h"
  918struct vm_area_struct;
  919#line 994 "include/linux/mmzone.h"
  920struct page;
  921#line 10 "include/linux/gfp.h"
  922struct vm_area_struct;
  923#line 29 "include/linux/sysctl.h"
  924struct completion;
  925#line 100 "include/linux/rbtree.h"
  926struct rb_node {
  927   unsigned long rb_parent_color ;
  928   struct rb_node *rb_right ;
  929   struct rb_node *rb_left ;
  930} __attribute__((__aligned__(sizeof(long )))) ;
  931#line 110 "include/linux/rbtree.h"
  932struct rb_root {
  933   struct rb_node *rb_node ;
  934};
  935#line 939 "include/linux/sysctl.h"
  936struct nsproxy;
  937#line 939
  938struct nsproxy;
  939#line 48 "include/linux/kmod.h"
  940struct cred;
  941#line 48
  942struct cred;
  943#line 49
  944struct file;
  945#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
  946struct task_struct;
  947#line 18 "include/linux/elf.h"
  948typedef __u64 Elf64_Addr;
  949#line 19 "include/linux/elf.h"
  950typedef __u16 Elf64_Half;
  951#line 23 "include/linux/elf.h"
  952typedef __u32 Elf64_Word;
  953#line 24 "include/linux/elf.h"
  954typedef __u64 Elf64_Xword;
  955#line 194 "include/linux/elf.h"
  956struct elf64_sym {
  957   Elf64_Word st_name ;
  958   unsigned char st_info ;
  959   unsigned char st_other ;
  960   Elf64_Half st_shndx ;
  961   Elf64_Addr st_value ;
  962   Elf64_Xword st_size ;
  963};
  964#line 194 "include/linux/elf.h"
  965typedef struct elf64_sym Elf64_Sym;
  966#line 438
  967struct file;
  968#line 60 "include/linux/kobject.h"
  969struct kset;
  970#line 60
  971struct kobj_type;
  972#line 60 "include/linux/kobject.h"
  973struct kobject {
  974   char const   *name ;
  975   struct list_head entry ;
  976   struct kobject *parent ;
  977   struct kset *kset ;
  978   struct kobj_type *ktype ;
  979   struct sysfs_dirent *sd ;
  980   struct kref kref ;
  981   unsigned int state_initialized : 1 ;
  982   unsigned int state_in_sysfs : 1 ;
  983   unsigned int state_add_uevent_sent : 1 ;
  984   unsigned int state_remove_uevent_sent : 1 ;
  985   unsigned int uevent_suppress : 1 ;
  986};
  987#line 108 "include/linux/kobject.h"
  988struct kobj_type {
  989   void (*release)(struct kobject *kobj ) ;
  990   struct sysfs_ops  const  *sysfs_ops ;
  991   struct attribute **default_attrs ;
  992   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
  993   void const   *(*namespace)(struct kobject *kobj ) ;
  994};
  995#line 116 "include/linux/kobject.h"
  996struct kobj_uevent_env {
  997   char *envp[32] ;
  998   int envp_idx ;
  999   char buf[2048] ;
 1000   int buflen ;
 1001};
 1002#line 123 "include/linux/kobject.h"
 1003struct kset_uevent_ops {
 1004   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 1005   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 1006   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 1007};
 1008#line 140
 1009struct sock;
 1010#line 159 "include/linux/kobject.h"
 1011struct kset {
 1012   struct list_head list ;
 1013   spinlock_t list_lock ;
 1014   struct kobject kobj ;
 1015   struct kset_uevent_ops  const  *uevent_ops ;
 1016};
 1017#line 39 "include/linux/moduleparam.h"
 1018struct kernel_param;
 1019#line 39
 1020struct kernel_param;
 1021#line 41 "include/linux/moduleparam.h"
 1022struct kernel_param_ops {
 1023   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 1024   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 1025   void (*free)(void *arg ) ;
 1026};
 1027#line 50
 1028struct kparam_string;
 1029#line 50
 1030struct kparam_array;
 1031#line 50 "include/linux/moduleparam.h"
 1032union __anonunion____missing_field_name_199 {
 1033   void *arg ;
 1034   struct kparam_string  const  *str ;
 1035   struct kparam_array  const  *arr ;
 1036};
 1037#line 50 "include/linux/moduleparam.h"
 1038struct kernel_param {
 1039   char const   *name ;
 1040   struct kernel_param_ops  const  *ops ;
 1041   u16 perm ;
 1042   s16 level ;
 1043   union __anonunion____missing_field_name_199 __annonCompField32 ;
 1044};
 1045#line 63 "include/linux/moduleparam.h"
 1046struct kparam_string {
 1047   unsigned int maxlen ;
 1048   char *string ;
 1049};
 1050#line 69 "include/linux/moduleparam.h"
 1051struct kparam_array {
 1052   unsigned int max ;
 1053   unsigned int elemsize ;
 1054   unsigned int *num ;
 1055   struct kernel_param_ops  const  *ops ;
 1056   void *elem ;
 1057};
 1058#line 445
 1059struct module;
 1060#line 80 "include/linux/jump_label.h"
 1061struct module;
 1062#line 143 "include/linux/jump_label.h"
 1063struct static_key {
 1064   atomic_t enabled ;
 1065};
 1066#line 22 "include/linux/tracepoint.h"
 1067struct module;
 1068#line 23
 1069struct tracepoint;
 1070#line 23
 1071struct tracepoint;
 1072#line 25 "include/linux/tracepoint.h"
 1073struct tracepoint_func {
 1074   void *func ;
 1075   void *data ;
 1076};
 1077#line 30 "include/linux/tracepoint.h"
 1078struct tracepoint {
 1079   char const   *name ;
 1080   struct static_key key ;
 1081   void (*regfunc)(void) ;
 1082   void (*unregfunc)(void) ;
 1083   struct tracepoint_func *funcs ;
 1084};
 1085#line 19 "include/linux/export.h"
 1086struct kernel_symbol {
 1087   unsigned long value ;
 1088   char const   *name ;
 1089};
 1090#line 8 "include/asm-generic/module.h"
 1091struct mod_arch_specific {
 1092
 1093};
 1094#line 35 "include/linux/module.h"
 1095struct module;
 1096#line 37
 1097struct module_param_attrs;
 1098#line 37 "include/linux/module.h"
 1099struct module_kobject {
 1100   struct kobject kobj ;
 1101   struct module *mod ;
 1102   struct kobject *drivers_dir ;
 1103   struct module_param_attrs *mp ;
 1104};
 1105#line 44 "include/linux/module.h"
 1106struct module_attribute {
 1107   struct attribute attr ;
 1108   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 1109   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 1110                    size_t count ) ;
 1111   void (*setup)(struct module * , char const   * ) ;
 1112   int (*test)(struct module * ) ;
 1113   void (*free)(struct module * ) ;
 1114};
 1115#line 71
 1116struct exception_table_entry;
 1117#line 71
 1118struct exception_table_entry;
 1119#line 182
 1120struct notifier_block;
 1121#line 199
 1122enum module_state {
 1123    MODULE_STATE_LIVE = 0,
 1124    MODULE_STATE_COMING = 1,
 1125    MODULE_STATE_GOING = 2
 1126} ;
 1127#line 215 "include/linux/module.h"
 1128struct module_ref {
 1129   unsigned long incs ;
 1130   unsigned long decs ;
 1131} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 1132#line 220
 1133struct module_sect_attrs;
 1134#line 220
 1135struct module_notes_attrs;
 1136#line 220
 1137struct ftrace_event_call;
 1138#line 220 "include/linux/module.h"
 1139struct module {
 1140   enum module_state state ;
 1141   struct list_head list ;
 1142   char name[64UL - sizeof(unsigned long )] ;
 1143   struct module_kobject mkobj ;
 1144   struct module_attribute *modinfo_attrs ;
 1145   char const   *version ;
 1146   char const   *srcversion ;
 1147   struct kobject *holders_dir ;
 1148   struct kernel_symbol  const  *syms ;
 1149   unsigned long const   *crcs ;
 1150   unsigned int num_syms ;
 1151   struct kernel_param *kp ;
 1152   unsigned int num_kp ;
 1153   unsigned int num_gpl_syms ;
 1154   struct kernel_symbol  const  *gpl_syms ;
 1155   unsigned long const   *gpl_crcs ;
 1156   struct kernel_symbol  const  *unused_syms ;
 1157   unsigned long const   *unused_crcs ;
 1158   unsigned int num_unused_syms ;
 1159   unsigned int num_unused_gpl_syms ;
 1160   struct kernel_symbol  const  *unused_gpl_syms ;
 1161   unsigned long const   *unused_gpl_crcs ;
 1162   struct kernel_symbol  const  *gpl_future_syms ;
 1163   unsigned long const   *gpl_future_crcs ;
 1164   unsigned int num_gpl_future_syms ;
 1165   unsigned int num_exentries ;
 1166   struct exception_table_entry *extable ;
 1167   int (*init)(void) ;
 1168   void *module_init ;
 1169   void *module_core ;
 1170   unsigned int init_size ;
 1171   unsigned int core_size ;
 1172   unsigned int init_text_size ;
 1173   unsigned int core_text_size ;
 1174   unsigned int init_ro_size ;
 1175   unsigned int core_ro_size ;
 1176   struct mod_arch_specific arch ;
 1177   unsigned int taints ;
 1178   unsigned int num_bugs ;
 1179   struct list_head bug_list ;
 1180   struct bug_entry *bug_table ;
 1181   Elf64_Sym *symtab ;
 1182   Elf64_Sym *core_symtab ;
 1183   unsigned int num_symtab ;
 1184   unsigned int core_num_syms ;
 1185   char *strtab ;
 1186   char *core_strtab ;
 1187   struct module_sect_attrs *sect_attrs ;
 1188   struct module_notes_attrs *notes_attrs ;
 1189   char *args ;
 1190   void *percpu ;
 1191   unsigned int percpu_size ;
 1192   unsigned int num_tracepoints ;
 1193   struct tracepoint * const  *tracepoints_ptrs ;
 1194   unsigned int num_trace_bprintk_fmt ;
 1195   char const   **trace_bprintk_fmt_start ;
 1196   struct ftrace_event_call **trace_events ;
 1197   unsigned int num_trace_events ;
 1198   struct list_head source_list ;
 1199   struct list_head target_list ;
 1200   struct task_struct *waiter ;
 1201   void (*exit)(void) ;
 1202   struct module_ref *refptr ;
 1203   ctor_fn_t *ctors ;
 1204   unsigned int num_ctors ;
 1205};
 1206#line 16 "include/linux/uio.h"
 1207struct iovec {
 1208   void *iov_base ;
 1209   __kernel_size_t iov_len ;
 1210};
 1211#line 31 "include/linux/uio.h"
 1212struct kvec {
 1213   void *iov_base ;
 1214   size_t iov_len ;
 1215};
 1216#line 19 "include/linux/klist.h"
 1217struct klist_node;
 1218#line 19
 1219struct klist_node;
 1220#line 39 "include/linux/klist.h"
 1221struct klist_node {
 1222   void *n_klist ;
 1223   struct list_head n_node ;
 1224   struct kref n_ref ;
 1225};
 1226#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 1227struct dma_map_ops;
 1228#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 1229struct dev_archdata {
 1230   void *acpi_handle ;
 1231   struct dma_map_ops *dma_ops ;
 1232   void *iommu ;
 1233};
 1234#line 28 "include/linux/device.h"
 1235struct device;
 1236#line 29
 1237struct device_private;
 1238#line 29
 1239struct device_private;
 1240#line 30
 1241struct device_driver;
 1242#line 30
 1243struct device_driver;
 1244#line 31
 1245struct driver_private;
 1246#line 31
 1247struct driver_private;
 1248#line 32
 1249struct module;
 1250#line 33
 1251struct class;
 1252#line 33
 1253struct class;
 1254#line 34
 1255struct subsys_private;
 1256#line 34
 1257struct subsys_private;
 1258#line 35
 1259struct bus_type;
 1260#line 35
 1261struct bus_type;
 1262#line 36
 1263struct device_node;
 1264#line 36
 1265struct device_node;
 1266#line 37
 1267struct iommu_ops;
 1268#line 37
 1269struct iommu_ops;
 1270#line 39 "include/linux/device.h"
 1271struct bus_attribute {
 1272   struct attribute attr ;
 1273   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
 1274   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
 1275};
 1276#line 89
 1277struct device_attribute;
 1278#line 89
 1279struct driver_attribute;
 1280#line 89 "include/linux/device.h"
 1281struct bus_type {
 1282   char const   *name ;
 1283   char const   *dev_name ;
 1284   struct device *dev_root ;
 1285   struct bus_attribute *bus_attrs ;
 1286   struct device_attribute *dev_attrs ;
 1287   struct driver_attribute *drv_attrs ;
 1288   int (*match)(struct device *dev , struct device_driver *drv ) ;
 1289   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 1290   int (*probe)(struct device *dev ) ;
 1291   int (*remove)(struct device *dev ) ;
 1292   void (*shutdown)(struct device *dev ) ;
 1293   int (*suspend)(struct device *dev , pm_message_t state ) ;
 1294   int (*resume)(struct device *dev ) ;
 1295   struct dev_pm_ops  const  *pm ;
 1296   struct iommu_ops *iommu_ops ;
 1297   struct subsys_private *p ;
 1298};
 1299#line 127
 1300struct device_type;
 1301#line 159
 1302struct notifier_block;
 1303#line 214
 1304struct of_device_id;
 1305#line 214 "include/linux/device.h"
 1306struct device_driver {
 1307   char const   *name ;
 1308   struct bus_type *bus ;
 1309   struct module *owner ;
 1310   char const   *mod_name ;
 1311   bool suppress_bind_attrs ;
 1312   struct of_device_id  const  *of_match_table ;
 1313   int (*probe)(struct device *dev ) ;
 1314   int (*remove)(struct device *dev ) ;
 1315   void (*shutdown)(struct device *dev ) ;
 1316   int (*suspend)(struct device *dev , pm_message_t state ) ;
 1317   int (*resume)(struct device *dev ) ;
 1318   struct attribute_group  const  **groups ;
 1319   struct dev_pm_ops  const  *pm ;
 1320   struct driver_private *p ;
 1321};
 1322#line 249 "include/linux/device.h"
 1323struct driver_attribute {
 1324   struct attribute attr ;
 1325   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
 1326   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
 1327};
 1328#line 330
 1329struct class_attribute;
 1330#line 330 "include/linux/device.h"
 1331struct class {
 1332   char const   *name ;
 1333   struct module *owner ;
 1334   struct class_attribute *class_attrs ;
 1335   struct device_attribute *dev_attrs ;
 1336   struct bin_attribute *dev_bin_attrs ;
 1337   struct kobject *dev_kobj ;
 1338   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 1339   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 1340   void (*class_release)(struct class *class ) ;
 1341   void (*dev_release)(struct device *dev ) ;
 1342   int (*suspend)(struct device *dev , pm_message_t state ) ;
 1343   int (*resume)(struct device *dev ) ;
 1344   struct kobj_ns_type_operations  const  *ns_type ;
 1345   void const   *(*namespace)(struct device *dev ) ;
 1346   struct dev_pm_ops  const  *pm ;
 1347   struct subsys_private *p ;
 1348};
 1349#line 397 "include/linux/device.h"
 1350struct class_attribute {
 1351   struct attribute attr ;
 1352   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
 1353   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
 1354                    size_t count ) ;
 1355   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
 1356};
 1357#line 465 "include/linux/device.h"
 1358struct device_type {
 1359   char const   *name ;
 1360   struct attribute_group  const  **groups ;
 1361   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 1362   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 1363   void (*release)(struct device *dev ) ;
 1364   struct dev_pm_ops  const  *pm ;
 1365};
 1366#line 476 "include/linux/device.h"
 1367struct device_attribute {
 1368   struct attribute attr ;
 1369   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
 1370   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
 1371                    size_t count ) ;
 1372};
 1373#line 559 "include/linux/device.h"
 1374struct device_dma_parameters {
 1375   unsigned int max_segment_size ;
 1376   unsigned long segment_boundary_mask ;
 1377};
 1378#line 627
 1379struct dma_coherent_mem;
 1380#line 627 "include/linux/device.h"
 1381struct device {
 1382   struct device *parent ;
 1383   struct device_private *p ;
 1384   struct kobject kobj ;
 1385   char const   *init_name ;
 1386   struct device_type  const  *type ;
 1387   struct mutex mutex ;
 1388   struct bus_type *bus ;
 1389   struct device_driver *driver ;
 1390   void *platform_data ;
 1391   struct dev_pm_info power ;
 1392   struct dev_pm_domain *pm_domain ;
 1393   int numa_node ;
 1394   u64 *dma_mask ;
 1395   u64 coherent_dma_mask ;
 1396   struct device_dma_parameters *dma_parms ;
 1397   struct list_head dma_pools ;
 1398   struct dma_coherent_mem *dma_mem ;
 1399   struct dev_archdata archdata ;
 1400   struct device_node *of_node ;
 1401   dev_t devt ;
 1402   u32 id ;
 1403   spinlock_t devres_lock ;
 1404   struct list_head devres_head ;
 1405   struct klist_node knode_class ;
 1406   struct class *class ;
 1407   struct attribute_group  const  **groups ;
 1408   void (*release)(struct device *dev ) ;
 1409};
 1410#line 43 "include/linux/pm_wakeup.h"
 1411struct wakeup_source {
 1412   char const   *name ;
 1413   struct list_head entry ;
 1414   spinlock_t lock ;
 1415   struct timer_list timer ;
 1416   unsigned long timer_expires ;
 1417   ktime_t total_time ;
 1418   ktime_t max_time ;
 1419   ktime_t last_time ;
 1420   unsigned long event_count ;
 1421   unsigned long active_count ;
 1422   unsigned long relax_count ;
 1423   unsigned long hit_count ;
 1424   unsigned int active : 1 ;
 1425};
 1426#line 143 "include/mtd/mtd-abi.h"
 1427struct otp_info {
 1428   __u32 start ;
 1429   __u32 length ;
 1430   __u32 locked ;
 1431};
 1432#line 217 "include/mtd/mtd-abi.h"
 1433struct nand_oobfree {
 1434   __u32 offset ;
 1435   __u32 length ;
 1436};
 1437#line 247 "include/mtd/mtd-abi.h"
 1438struct mtd_ecc_stats {
 1439   __u32 corrected ;
 1440   __u32 failed ;
 1441   __u32 badblocks ;
 1442   __u32 bbtblocks ;
 1443};
 1444#line 48 "include/linux/mtd/mtd.h"
 1445struct erase_info {
 1446   struct mtd_info *mtd ;
 1447   uint64_t addr ;
 1448   uint64_t len ;
 1449   uint64_t fail_addr ;
 1450   u_long time ;
 1451   u_long retries ;
 1452   unsigned int dev ;
 1453   unsigned int cell ;
 1454   void (*callback)(struct erase_info *self ) ;
 1455   u_long priv ;
 1456   u_char state ;
 1457   struct erase_info *next ;
 1458};
 1459#line 63 "include/linux/mtd/mtd.h"
 1460struct mtd_erase_region_info {
 1461   uint64_t offset ;
 1462   uint32_t erasesize ;
 1463   uint32_t numblocks ;
 1464   unsigned long *lockmap ;
 1465};
 1466#line 89 "include/linux/mtd/mtd.h"
 1467struct mtd_oob_ops {
 1468   unsigned int mode ;
 1469   size_t len ;
 1470   size_t retlen ;
 1471   size_t ooblen ;
 1472   size_t oobretlen ;
 1473   uint32_t ooboffs ;
 1474   uint8_t *datbuf ;
 1475   uint8_t *oobbuf ;
 1476};
 1477#line 108 "include/linux/mtd/mtd.h"
 1478struct nand_ecclayout {
 1479   __u32 eccbytes ;
 1480   __u32 eccpos[448] ;
 1481   __u32 oobavail ;
 1482   struct nand_oobfree oobfree[32] ;
 1483};
 1484#line 115
 1485struct module;
 1486#line 117
 1487struct backing_dev_info;
 1488#line 117 "include/linux/mtd/mtd.h"
 1489struct mtd_info {
 1490   u_char type ;
 1491   uint32_t flags ;
 1492   uint64_t size ;
 1493   uint32_t erasesize ;
 1494   uint32_t writesize ;
 1495   uint32_t writebufsize ;
 1496   uint32_t oobsize ;
 1497   uint32_t oobavail ;
 1498   unsigned int erasesize_shift ;
 1499   unsigned int writesize_shift ;
 1500   unsigned int erasesize_mask ;
 1501   unsigned int writesize_mask ;
 1502   char const   *name ;
 1503   int index ;
 1504   struct nand_ecclayout *ecclayout ;
 1505   unsigned int ecc_strength ;
 1506   int numeraseregions ;
 1507   struct mtd_erase_region_info *eraseregions ;
 1508   int (*_erase)(struct mtd_info *mtd , struct erase_info *instr ) ;
 1509   int (*_point)(struct mtd_info *mtd , loff_t from , size_t len , size_t *retlen ,
 1510                 void **virt , resource_size_t *phys ) ;
 1511   int (*_unpoint)(struct mtd_info *mtd , loff_t from , size_t len ) ;
 1512   unsigned long (*_get_unmapped_area)(struct mtd_info *mtd , unsigned long len ,
 1513                                       unsigned long offset , unsigned long flags ) ;
 1514   int (*_read)(struct mtd_info *mtd , loff_t from , size_t len , size_t *retlen ,
 1515                u_char *buf ) ;
 1516   int (*_write)(struct mtd_info *mtd , loff_t to , size_t len , size_t *retlen ,
 1517                 u_char const   *buf ) ;
 1518   int (*_panic_write)(struct mtd_info *mtd , loff_t to , size_t len , size_t *retlen ,
 1519                       u_char const   *buf ) ;
 1520   int (*_read_oob)(struct mtd_info *mtd , loff_t from , struct mtd_oob_ops *ops ) ;
 1521   int (*_write_oob)(struct mtd_info *mtd , loff_t to , struct mtd_oob_ops *ops ) ;
 1522   int (*_get_fact_prot_info)(struct mtd_info *mtd , struct otp_info *buf , size_t len ) ;
 1523   int (*_read_fact_prot_reg)(struct mtd_info *mtd , loff_t from , size_t len , size_t *retlen ,
 1524                              u_char *buf ) ;
 1525   int (*_get_user_prot_info)(struct mtd_info *mtd , struct otp_info *buf , size_t len ) ;
 1526   int (*_read_user_prot_reg)(struct mtd_info *mtd , loff_t from , size_t len , size_t *retlen ,
 1527                              u_char *buf ) ;
 1528   int (*_write_user_prot_reg)(struct mtd_info *mtd , loff_t to , size_t len , size_t *retlen ,
 1529                               u_char *buf ) ;
 1530   int (*_lock_user_prot_reg)(struct mtd_info *mtd , loff_t from , size_t len ) ;
 1531   int (*_writev)(struct mtd_info *mtd , struct kvec  const  *vecs , unsigned long count ,
 1532                  loff_t to , size_t *retlen ) ;
 1533   void (*_sync)(struct mtd_info *mtd ) ;
 1534   int (*_lock)(struct mtd_info *mtd , loff_t ofs , uint64_t len ) ;
 1535   int (*_unlock)(struct mtd_info *mtd , loff_t ofs , uint64_t len ) ;
 1536   int (*_is_locked)(struct mtd_info *mtd , loff_t ofs , uint64_t len ) ;
 1537   int (*_block_isbad)(struct mtd_info *mtd , loff_t ofs ) ;
 1538   int (*_block_markbad)(struct mtd_info *mtd , loff_t ofs ) ;
 1539   int (*_suspend)(struct mtd_info *mtd ) ;
 1540   void (*_resume)(struct mtd_info *mtd ) ;
 1541   int (*_get_device)(struct mtd_info *mtd ) ;
 1542   void (*_put_device)(struct mtd_info *mtd ) ;
 1543   struct backing_dev_info *backing_dev_info ;
 1544   struct notifier_block reboot_notifier ;
 1545   struct mtd_ecc_stats ecc_stats ;
 1546   int subpage_sft ;
 1547   void *priv ;
 1548   struct module *owner ;
 1549   struct device dev ;
 1550   int usecount ;
 1551};
 1552#line 18 "include/linux/capability.h"
 1553struct task_struct;
 1554#line 94 "include/linux/capability.h"
 1555struct kernel_cap_struct {
 1556   __u32 cap[2] ;
 1557};
 1558#line 94 "include/linux/capability.h"
 1559typedef struct kernel_cap_struct kernel_cap_t;
 1560#line 377
 1561struct dentry;
 1562#line 377
 1563struct dentry;
 1564#line 378
 1565struct user_namespace;
 1566#line 378
 1567struct user_namespace;
 1568#line 14 "include/linux/prio_tree.h"
 1569struct prio_tree_node;
 1570#line 14 "include/linux/prio_tree.h"
 1571struct raw_prio_tree_node {
 1572   struct prio_tree_node *left ;
 1573   struct prio_tree_node *right ;
 1574   struct prio_tree_node *parent ;
 1575};
 1576#line 20 "include/linux/prio_tree.h"
 1577struct prio_tree_node {
 1578   struct prio_tree_node *left ;
 1579   struct prio_tree_node *right ;
 1580   struct prio_tree_node *parent ;
 1581   unsigned long start ;
 1582   unsigned long last ;
 1583};
 1584#line 28 "include/linux/prio_tree.h"
 1585struct prio_tree_root {
 1586   struct prio_tree_node *prio_tree_node ;
 1587   unsigned short index_bits ;
 1588   unsigned short raw ;
 1589};
 1590#line 23 "include/linux/mm_types.h"
 1591struct address_space;
 1592#line 23
 1593struct address_space;
 1594#line 40 "include/linux/mm_types.h"
 1595union __anonunion____missing_field_name_204 {
 1596   unsigned long index ;
 1597   void *freelist ;
 1598};
 1599#line 40 "include/linux/mm_types.h"
 1600struct __anonstruct____missing_field_name_208 {
 1601   unsigned int inuse : 16 ;
 1602   unsigned int objects : 15 ;
 1603   unsigned int frozen : 1 ;
 1604};
 1605#line 40 "include/linux/mm_types.h"
 1606union __anonunion____missing_field_name_207 {
 1607   atomic_t _mapcount ;
 1608   struct __anonstruct____missing_field_name_208 __annonCompField34 ;
 1609};
 1610#line 40 "include/linux/mm_types.h"
 1611struct __anonstruct____missing_field_name_206 {
 1612   union __anonunion____missing_field_name_207 __annonCompField35 ;
 1613   atomic_t _count ;
 1614};
 1615#line 40 "include/linux/mm_types.h"
 1616union __anonunion____missing_field_name_205 {
 1617   unsigned long counters ;
 1618   struct __anonstruct____missing_field_name_206 __annonCompField36 ;
 1619};
 1620#line 40 "include/linux/mm_types.h"
 1621struct __anonstruct____missing_field_name_203 {
 1622   union __anonunion____missing_field_name_204 __annonCompField33 ;
 1623   union __anonunion____missing_field_name_205 __annonCompField37 ;
 1624};
 1625#line 40 "include/linux/mm_types.h"
 1626struct __anonstruct____missing_field_name_210 {
 1627   struct page *next ;
 1628   int pages ;
 1629   int pobjects ;
 1630};
 1631#line 40 "include/linux/mm_types.h"
 1632union __anonunion____missing_field_name_209 {
 1633   struct list_head lru ;
 1634   struct __anonstruct____missing_field_name_210 __annonCompField39 ;
 1635};
 1636#line 40 "include/linux/mm_types.h"
 1637union __anonunion____missing_field_name_211 {
 1638   unsigned long private ;
 1639   struct kmem_cache *slab ;
 1640   struct page *first_page ;
 1641};
 1642#line 40 "include/linux/mm_types.h"
 1643struct page {
 1644   unsigned long flags ;
 1645   struct address_space *mapping ;
 1646   struct __anonstruct____missing_field_name_203 __annonCompField38 ;
 1647   union __anonunion____missing_field_name_209 __annonCompField40 ;
 1648   union __anonunion____missing_field_name_211 __annonCompField41 ;
 1649   unsigned long debug_flags ;
 1650} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 1651#line 200 "include/linux/mm_types.h"
 1652struct __anonstruct_vm_set_213 {
 1653   struct list_head list ;
 1654   void *parent ;
 1655   struct vm_area_struct *head ;
 1656};
 1657#line 200 "include/linux/mm_types.h"
 1658union __anonunion_shared_212 {
 1659   struct __anonstruct_vm_set_213 vm_set ;
 1660   struct raw_prio_tree_node prio_tree_node ;
 1661};
 1662#line 200
 1663struct anon_vma;
 1664#line 200
 1665struct vm_operations_struct;
 1666#line 200
 1667struct mempolicy;
 1668#line 200 "include/linux/mm_types.h"
 1669struct vm_area_struct {
 1670   struct mm_struct *vm_mm ;
 1671   unsigned long vm_start ;
 1672   unsigned long vm_end ;
 1673   struct vm_area_struct *vm_next ;
 1674   struct vm_area_struct *vm_prev ;
 1675   pgprot_t vm_page_prot ;
 1676   unsigned long vm_flags ;
 1677   struct rb_node vm_rb ;
 1678   union __anonunion_shared_212 shared ;
 1679   struct list_head anon_vma_chain ;
 1680   struct anon_vma *anon_vma ;
 1681   struct vm_operations_struct  const  *vm_ops ;
 1682   unsigned long vm_pgoff ;
 1683   struct file *vm_file ;
 1684   void *vm_private_data ;
 1685   struct mempolicy *vm_policy ;
 1686};
 1687#line 257 "include/linux/mm_types.h"
 1688struct core_thread {
 1689   struct task_struct *task ;
 1690   struct core_thread *next ;
 1691};
 1692#line 262 "include/linux/mm_types.h"
 1693struct core_state {
 1694   atomic_t nr_threads ;
 1695   struct core_thread dumper ;
 1696   struct completion startup ;
 1697};
 1698#line 284 "include/linux/mm_types.h"
 1699struct mm_rss_stat {
 1700   atomic_long_t count[3] ;
 1701};
 1702#line 288
 1703struct linux_binfmt;
 1704#line 288
 1705struct mmu_notifier_mm;
 1706#line 288 "include/linux/mm_types.h"
 1707struct mm_struct {
 1708   struct vm_area_struct *mmap ;
 1709   struct rb_root mm_rb ;
 1710   struct vm_area_struct *mmap_cache ;
 1711   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
 1712                                      unsigned long pgoff , unsigned long flags ) ;
 1713   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
 1714   unsigned long mmap_base ;
 1715   unsigned long task_size ;
 1716   unsigned long cached_hole_size ;
 1717   unsigned long free_area_cache ;
 1718   pgd_t *pgd ;
 1719   atomic_t mm_users ;
 1720   atomic_t mm_count ;
 1721   int map_count ;
 1722   spinlock_t page_table_lock ;
 1723   struct rw_semaphore mmap_sem ;
 1724   struct list_head mmlist ;
 1725   unsigned long hiwater_rss ;
 1726   unsigned long hiwater_vm ;
 1727   unsigned long total_vm ;
 1728   unsigned long locked_vm ;
 1729   unsigned long pinned_vm ;
 1730   unsigned long shared_vm ;
 1731   unsigned long exec_vm ;
 1732   unsigned long stack_vm ;
 1733   unsigned long reserved_vm ;
 1734   unsigned long def_flags ;
 1735   unsigned long nr_ptes ;
 1736   unsigned long start_code ;
 1737   unsigned long end_code ;
 1738   unsigned long start_data ;
 1739   unsigned long end_data ;
 1740   unsigned long start_brk ;
 1741   unsigned long brk ;
 1742   unsigned long start_stack ;
 1743   unsigned long arg_start ;
 1744   unsigned long arg_end ;
 1745   unsigned long env_start ;
 1746   unsigned long env_end ;
 1747   unsigned long saved_auxv[44] ;
 1748   struct mm_rss_stat rss_stat ;
 1749   struct linux_binfmt *binfmt ;
 1750   cpumask_var_t cpu_vm_mask_var ;
 1751   mm_context_t context ;
 1752   unsigned int faultstamp ;
 1753   unsigned int token_priority ;
 1754   unsigned int last_interval ;
 1755   unsigned long flags ;
 1756   struct core_state *core_state ;
 1757   spinlock_t ioctx_lock ;
 1758   struct hlist_head ioctx_list ;
 1759   struct task_struct *owner ;
 1760   struct file *exe_file ;
 1761   unsigned long num_exe_file_vmas ;
 1762   struct mmu_notifier_mm *mmu_notifier_mm ;
 1763   pgtable_t pmd_huge_pte ;
 1764   struct cpumask cpumask_allocation ;
 1765};
 1766#line 7 "include/asm-generic/cputime.h"
 1767typedef unsigned long cputime_t;
 1768#line 84 "include/linux/sem.h"
 1769struct task_struct;
 1770#line 101
 1771struct sem_undo_list;
 1772#line 101 "include/linux/sem.h"
 1773struct sysv_sem {
 1774   struct sem_undo_list *undo_list ;
 1775};
 1776#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1777struct siginfo;
 1778#line 10
 1779struct siginfo;
 1780#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1781struct __anonstruct_sigset_t_215 {
 1782   unsigned long sig[1] ;
 1783};
 1784#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1785typedef struct __anonstruct_sigset_t_215 sigset_t;
 1786#line 17 "include/asm-generic/signal-defs.h"
 1787typedef void __signalfn_t(int  );
 1788#line 18 "include/asm-generic/signal-defs.h"
 1789typedef __signalfn_t *__sighandler_t;
 1790#line 20 "include/asm-generic/signal-defs.h"
 1791typedef void __restorefn_t(void);
 1792#line 21 "include/asm-generic/signal-defs.h"
 1793typedef __restorefn_t *__sigrestore_t;
 1794#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1795struct sigaction {
 1796   __sighandler_t sa_handler ;
 1797   unsigned long sa_flags ;
 1798   __sigrestore_t sa_restorer ;
 1799   sigset_t sa_mask ;
 1800};
 1801#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1802struct k_sigaction {
 1803   struct sigaction sa ;
 1804};
 1805#line 7 "include/asm-generic/siginfo.h"
 1806union sigval {
 1807   int sival_int ;
 1808   void *sival_ptr ;
 1809};
 1810#line 7 "include/asm-generic/siginfo.h"
 1811typedef union sigval sigval_t;
 1812#line 48 "include/asm-generic/siginfo.h"
 1813struct __anonstruct__kill_217 {
 1814   __kernel_pid_t _pid ;
 1815   __kernel_uid32_t _uid ;
 1816};
 1817#line 48 "include/asm-generic/siginfo.h"
 1818struct __anonstruct__timer_218 {
 1819   __kernel_timer_t _tid ;
 1820   int _overrun ;
 1821   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
 1822   sigval_t _sigval ;
 1823   int _sys_private ;
 1824};
 1825#line 48 "include/asm-generic/siginfo.h"
 1826struct __anonstruct__rt_219 {
 1827   __kernel_pid_t _pid ;
 1828   __kernel_uid32_t _uid ;
 1829   sigval_t _sigval ;
 1830};
 1831#line 48 "include/asm-generic/siginfo.h"
 1832struct __anonstruct__sigchld_220 {
 1833   __kernel_pid_t _pid ;
 1834   __kernel_uid32_t _uid ;
 1835   int _status ;
 1836   __kernel_clock_t _utime ;
 1837   __kernel_clock_t _stime ;
 1838};
 1839#line 48 "include/asm-generic/siginfo.h"
 1840struct __anonstruct__sigfault_221 {
 1841   void *_addr ;
 1842   short _addr_lsb ;
 1843};
 1844#line 48 "include/asm-generic/siginfo.h"
 1845struct __anonstruct__sigpoll_222 {
 1846   long _band ;
 1847   int _fd ;
 1848};
 1849#line 48 "include/asm-generic/siginfo.h"
 1850union __anonunion__sifields_216 {
 1851   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
 1852   struct __anonstruct__kill_217 _kill ;
 1853   struct __anonstruct__timer_218 _timer ;
 1854   struct __anonstruct__rt_219 _rt ;
 1855   struct __anonstruct__sigchld_220 _sigchld ;
 1856   struct __anonstruct__sigfault_221 _sigfault ;
 1857   struct __anonstruct__sigpoll_222 _sigpoll ;
 1858};
 1859#line 48 "include/asm-generic/siginfo.h"
 1860struct siginfo {
 1861   int si_signo ;
 1862   int si_errno ;
 1863   int si_code ;
 1864   union __anonunion__sifields_216 _sifields ;
 1865};
 1866#line 48 "include/asm-generic/siginfo.h"
 1867typedef struct siginfo siginfo_t;
 1868#line 288
 1869struct siginfo;
 1870#line 10 "include/linux/signal.h"
 1871struct task_struct;
 1872#line 18
 1873struct user_struct;
 1874#line 28 "include/linux/signal.h"
 1875struct sigpending {
 1876   struct list_head list ;
 1877   sigset_t signal ;
 1878};
 1879#line 239
 1880struct timespec;
 1881#line 240
 1882struct pt_regs;
 1883#line 6 "include/linux/pid.h"
 1884enum pid_type {
 1885    PIDTYPE_PID = 0,
 1886    PIDTYPE_PGID = 1,
 1887    PIDTYPE_SID = 2,
 1888    PIDTYPE_MAX = 3
 1889} ;
 1890#line 50
 1891struct pid_namespace;
 1892#line 50 "include/linux/pid.h"
 1893struct upid {
 1894   int nr ;
 1895   struct pid_namespace *ns ;
 1896   struct hlist_node pid_chain ;
 1897};
 1898#line 57 "include/linux/pid.h"
 1899struct pid {
 1900   atomic_t count ;
 1901   unsigned int level ;
 1902   struct hlist_head tasks[3] ;
 1903   struct rcu_head rcu ;
 1904   struct upid numbers[1] ;
 1905};
 1906#line 69 "include/linux/pid.h"
 1907struct pid_link {
 1908   struct hlist_node node ;
 1909   struct pid *pid ;
 1910};
 1911#line 100
 1912struct pid_namespace;
 1913#line 10 "include/linux/seccomp.h"
 1914struct __anonstruct_seccomp_t_225 {
 1915   int mode ;
 1916};
 1917#line 10 "include/linux/seccomp.h"
 1918typedef struct __anonstruct_seccomp_t_225 seccomp_t;
 1919#line 81 "include/linux/plist.h"
 1920struct plist_head {
 1921   struct list_head node_list ;
 1922};
 1923#line 85 "include/linux/plist.h"
 1924struct plist_node {
 1925   int prio ;
 1926   struct list_head prio_list ;
 1927   struct list_head node_list ;
 1928};
 1929#line 40 "include/linux/rtmutex.h"
 1930struct rt_mutex_waiter;
 1931#line 40
 1932struct rt_mutex_waiter;
 1933#line 42 "include/linux/resource.h"
 1934struct rlimit {
 1935   unsigned long rlim_cur ;
 1936   unsigned long rlim_max ;
 1937};
 1938#line 81
 1939struct task_struct;
 1940#line 8 "include/linux/timerqueue.h"
 1941struct timerqueue_node {
 1942   struct rb_node node ;
 1943   ktime_t expires ;
 1944};
 1945#line 13 "include/linux/timerqueue.h"
 1946struct timerqueue_head {
 1947   struct rb_root head ;
 1948   struct timerqueue_node *next ;
 1949};
 1950#line 27 "include/linux/hrtimer.h"
 1951struct hrtimer_clock_base;
 1952#line 27
 1953struct hrtimer_clock_base;
 1954#line 28
 1955struct hrtimer_cpu_base;
 1956#line 28
 1957struct hrtimer_cpu_base;
 1958#line 44
 1959enum hrtimer_restart {
 1960    HRTIMER_NORESTART = 0,
 1961    HRTIMER_RESTART = 1
 1962} ;
 1963#line 108 "include/linux/hrtimer.h"
 1964struct hrtimer {
 1965   struct timerqueue_node node ;
 1966   ktime_t _softexpires ;
 1967   enum hrtimer_restart (*function)(struct hrtimer * ) ;
 1968   struct hrtimer_clock_base *base ;
 1969   unsigned long state ;
 1970   int start_pid ;
 1971   void *start_site ;
 1972   char start_comm[16] ;
 1973};
 1974#line 145 "include/linux/hrtimer.h"
 1975struct hrtimer_clock_base {
 1976   struct hrtimer_cpu_base *cpu_base ;
 1977   int index ;
 1978   clockid_t clockid ;
 1979   struct timerqueue_head active ;
 1980   ktime_t resolution ;
 1981   ktime_t (*get_time)(void) ;
 1982   ktime_t softirq_time ;
 1983   ktime_t offset ;
 1984};
 1985#line 178 "include/linux/hrtimer.h"
 1986struct hrtimer_cpu_base {
 1987   raw_spinlock_t lock ;
 1988   unsigned long active_bases ;
 1989   ktime_t expires_next ;
 1990   int hres_active ;
 1991   int hang_detected ;
 1992   unsigned long nr_events ;
 1993   unsigned long nr_retries ;
 1994   unsigned long nr_hangs ;
 1995   ktime_t max_hang_time ;
 1996   struct hrtimer_clock_base clock_base[3] ;
 1997};
 1998#line 11 "include/linux/task_io_accounting.h"
 1999struct task_io_accounting {
 2000   u64 rchar ;
 2001   u64 wchar ;
 2002   u64 syscr ;
 2003   u64 syscw ;
 2004   u64 read_bytes ;
 2005   u64 write_bytes ;
 2006   u64 cancelled_write_bytes ;
 2007};
 2008#line 13 "include/linux/latencytop.h"
 2009struct task_struct;
 2010#line 20 "include/linux/latencytop.h"
 2011struct latency_record {
 2012   unsigned long backtrace[12] ;
 2013   unsigned int count ;
 2014   unsigned long time ;
 2015   unsigned long max ;
 2016};
 2017#line 29 "include/linux/key.h"
 2018typedef int32_t key_serial_t;
 2019#line 32 "include/linux/key.h"
 2020typedef uint32_t key_perm_t;
 2021#line 34
 2022struct key;
 2023#line 34
 2024struct key;
 2025#line 74
 2026struct seq_file;
 2027#line 75
 2028struct user_struct;
 2029#line 76
 2030struct signal_struct;
 2031#line 76
 2032struct signal_struct;
 2033#line 77
 2034struct cred;
 2035#line 79
 2036struct key_type;
 2037#line 79
 2038struct key_type;
 2039#line 81
 2040struct keyring_list;
 2041#line 81
 2042struct keyring_list;
 2043#line 124
 2044struct key_user;
 2045#line 124 "include/linux/key.h"
 2046union __anonunion____missing_field_name_226 {
 2047   time_t expiry ;
 2048   time_t revoked_at ;
 2049};
 2050#line 124 "include/linux/key.h"
 2051union __anonunion_type_data_227 {
 2052   struct list_head link ;
 2053   unsigned long x[2] ;
 2054   void *p[2] ;
 2055   int reject_error ;
 2056};
 2057#line 124 "include/linux/key.h"
 2058union __anonunion_payload_228 {
 2059   unsigned long value ;
 2060   void *rcudata ;
 2061   void *data ;
 2062   struct keyring_list *subscriptions ;
 2063};
 2064#line 124 "include/linux/key.h"
 2065struct key {
 2066   atomic_t usage ;
 2067   key_serial_t serial ;
 2068   struct rb_node serial_node ;
 2069   struct key_type *type ;
 2070   struct rw_semaphore sem ;
 2071   struct key_user *user ;
 2072   void *security ;
 2073   union __anonunion____missing_field_name_226 __annonCompField42 ;
 2074   uid_t uid ;
 2075   gid_t gid ;
 2076   key_perm_t perm ;
 2077   unsigned short quotalen ;
 2078   unsigned short datalen ;
 2079   unsigned long flags ;
 2080   char *description ;
 2081   union __anonunion_type_data_227 type_data ;
 2082   union __anonunion_payload_228 payload ;
 2083};
 2084#line 18 "include/linux/selinux.h"
 2085struct audit_context;
 2086#line 18
 2087struct audit_context;
 2088#line 21 "include/linux/cred.h"
 2089struct user_struct;
 2090#line 22
 2091struct cred;
 2092#line 23
 2093struct inode;
 2094#line 31 "include/linux/cred.h"
 2095struct group_info {
 2096   atomic_t usage ;
 2097   int ngroups ;
 2098   int nblocks ;
 2099   gid_t small_block[32] ;
 2100   gid_t *blocks[0] ;
 2101};
 2102#line 83 "include/linux/cred.h"
 2103struct thread_group_cred {
 2104   atomic_t usage ;
 2105   pid_t tgid ;
 2106   spinlock_t lock ;
 2107   struct key *session_keyring ;
 2108   struct key *process_keyring ;
 2109   struct rcu_head rcu ;
 2110};
 2111#line 116 "include/linux/cred.h"
 2112struct cred {
 2113   atomic_t usage ;
 2114   atomic_t subscribers ;
 2115   void *put_addr ;
 2116   unsigned int magic ;
 2117   uid_t uid ;
 2118   gid_t gid ;
 2119   uid_t suid ;
 2120   gid_t sgid ;
 2121   uid_t euid ;
 2122   gid_t egid ;
 2123   uid_t fsuid ;
 2124   gid_t fsgid ;
 2125   unsigned int securebits ;
 2126   kernel_cap_t cap_inheritable ;
 2127   kernel_cap_t cap_permitted ;
 2128   kernel_cap_t cap_effective ;
 2129   kernel_cap_t cap_bset ;
 2130   unsigned char jit_keyring ;
 2131   struct key *thread_keyring ;
 2132   struct key *request_key_auth ;
 2133   struct thread_group_cred *tgcred ;
 2134   void *security ;
 2135   struct user_struct *user ;
 2136   struct user_namespace *user_ns ;
 2137   struct group_info *group_info ;
 2138   struct rcu_head rcu ;
 2139};
 2140#line 61 "include/linux/llist.h"
 2141struct llist_node;
 2142#line 65 "include/linux/llist.h"
 2143struct llist_node {
 2144   struct llist_node *next ;
 2145};
 2146#line 97 "include/linux/sched.h"
 2147struct futex_pi_state;
 2148#line 97
 2149struct futex_pi_state;
 2150#line 98
 2151struct robust_list_head;
 2152#line 98
 2153struct robust_list_head;
 2154#line 99
 2155struct bio_list;
 2156#line 99
 2157struct bio_list;
 2158#line 100
 2159struct fs_struct;
 2160#line 100
 2161struct fs_struct;
 2162#line 101
 2163struct perf_event_context;
 2164#line 101
 2165struct perf_event_context;
 2166#line 102
 2167struct blk_plug;
 2168#line 102
 2169struct blk_plug;
 2170#line 150
 2171struct seq_file;
 2172#line 151
 2173struct cfs_rq;
 2174#line 151
 2175struct cfs_rq;
 2176#line 259
 2177struct task_struct;
 2178#line 366
 2179struct nsproxy;
 2180#line 367
 2181struct user_namespace;
 2182#line 58 "include/linux/aio_abi.h"
 2183struct io_event {
 2184   __u64 data ;
 2185   __u64 obj ;
 2186   __s64 res ;
 2187   __s64 res2 ;
 2188};
 2189#line 15 "include/linux/aio.h"
 2190struct kioctx;
 2191#line 15
 2192struct kioctx;
 2193#line 87 "include/linux/aio.h"
 2194union __anonunion_ki_obj_230 {
 2195   void *user ;
 2196   struct task_struct *tsk ;
 2197};
 2198#line 87
 2199struct eventfd_ctx;
 2200#line 87 "include/linux/aio.h"
 2201struct kiocb {
 2202   struct list_head ki_run_list ;
 2203   unsigned long ki_flags ;
 2204   int ki_users ;
 2205   unsigned int ki_key ;
 2206   struct file *ki_filp ;
 2207   struct kioctx *ki_ctx ;
 2208   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
 2209   ssize_t (*ki_retry)(struct kiocb * ) ;
 2210   void (*ki_dtor)(struct kiocb * ) ;
 2211   union __anonunion_ki_obj_230 ki_obj ;
 2212   __u64 ki_user_data ;
 2213   loff_t ki_pos ;
 2214   void *private ;
 2215   unsigned short ki_opcode ;
 2216   size_t ki_nbytes ;
 2217   char *ki_buf ;
 2218   size_t ki_left ;
 2219   struct iovec ki_inline_vec ;
 2220   struct iovec *ki_iovec ;
 2221   unsigned long ki_nr_segs ;
 2222   unsigned long ki_cur_seg ;
 2223   struct list_head ki_list ;
 2224   struct list_head ki_batch ;
 2225   struct eventfd_ctx *ki_eventfd ;
 2226};
 2227#line 166 "include/linux/aio.h"
 2228struct aio_ring_info {
 2229   unsigned long mmap_base ;
 2230   unsigned long mmap_size ;
 2231   struct page **ring_pages ;
 2232   spinlock_t ring_lock ;
 2233   long nr_pages ;
 2234   unsigned int nr ;
 2235   unsigned int tail ;
 2236   struct page *internal_pages[8] ;
 2237};
 2238#line 179 "include/linux/aio.h"
 2239struct kioctx {
 2240   atomic_t users ;
 2241   int dead ;
 2242   struct mm_struct *mm ;
 2243   unsigned long user_id ;
 2244   struct hlist_node list ;
 2245   wait_queue_head_t wait ;
 2246   spinlock_t ctx_lock ;
 2247   int reqs_active ;
 2248   struct list_head active_reqs ;
 2249   struct list_head run_list ;
 2250   unsigned int max_reqs ;
 2251   struct aio_ring_info ring_info ;
 2252   struct delayed_work wq ;
 2253   struct rcu_head rcu_head ;
 2254};
 2255#line 214
 2256struct mm_struct;
 2257#line 443 "include/linux/sched.h"
 2258struct sighand_struct {
 2259   atomic_t count ;
 2260   struct k_sigaction action[64] ;
 2261   spinlock_t siglock ;
 2262   wait_queue_head_t signalfd_wqh ;
 2263};
 2264#line 450 "include/linux/sched.h"
 2265struct pacct_struct {
 2266   int ac_flag ;
 2267   long ac_exitcode ;
 2268   unsigned long ac_mem ;
 2269   cputime_t ac_utime ;
 2270   cputime_t ac_stime ;
 2271   unsigned long ac_minflt ;
 2272   unsigned long ac_majflt ;
 2273};
 2274#line 458 "include/linux/sched.h"
 2275struct cpu_itimer {
 2276   cputime_t expires ;
 2277   cputime_t incr ;
 2278   u32 error ;
 2279   u32 incr_error ;
 2280};
 2281#line 476 "include/linux/sched.h"
 2282struct task_cputime {
 2283   cputime_t utime ;
 2284   cputime_t stime ;
 2285   unsigned long long sum_exec_runtime ;
 2286};
 2287#line 512 "include/linux/sched.h"
 2288struct thread_group_cputimer {
 2289   struct task_cputime cputime ;
 2290   int running ;
 2291   raw_spinlock_t lock ;
 2292};
 2293#line 519
 2294struct autogroup;
 2295#line 519
 2296struct autogroup;
 2297#line 528
 2298struct tty_struct;
 2299#line 528
 2300struct taskstats;
 2301#line 528
 2302struct tty_audit_buf;
 2303#line 528 "include/linux/sched.h"
 2304struct signal_struct {
 2305   atomic_t sigcnt ;
 2306   atomic_t live ;
 2307   int nr_threads ;
 2308   wait_queue_head_t wait_chldexit ;
 2309   struct task_struct *curr_target ;
 2310   struct sigpending shared_pending ;
 2311   int group_exit_code ;
 2312   int notify_count ;
 2313   struct task_struct *group_exit_task ;
 2314   int group_stop_count ;
 2315   unsigned int flags ;
 2316   unsigned int is_child_subreaper : 1 ;
 2317   unsigned int has_child_subreaper : 1 ;
 2318   struct list_head posix_timers ;
 2319   struct hrtimer real_timer ;
 2320   struct pid *leader_pid ;
 2321   ktime_t it_real_incr ;
 2322   struct cpu_itimer it[2] ;
 2323   struct thread_group_cputimer cputimer ;
 2324   struct task_cputime cputime_expires ;
 2325   struct list_head cpu_timers[3] ;
 2326   struct pid *tty_old_pgrp ;
 2327   int leader ;
 2328   struct tty_struct *tty ;
 2329   struct autogroup *autogroup ;
 2330   cputime_t utime ;
 2331   cputime_t stime ;
 2332   cputime_t cutime ;
 2333   cputime_t cstime ;
 2334   cputime_t gtime ;
 2335   cputime_t cgtime ;
 2336   cputime_t prev_utime ;
 2337   cputime_t prev_stime ;
 2338   unsigned long nvcsw ;
 2339   unsigned long nivcsw ;
 2340   unsigned long cnvcsw ;
 2341   unsigned long cnivcsw ;
 2342   unsigned long min_flt ;
 2343   unsigned long maj_flt ;
 2344   unsigned long cmin_flt ;
 2345   unsigned long cmaj_flt ;
 2346   unsigned long inblock ;
 2347   unsigned long oublock ;
 2348   unsigned long cinblock ;
 2349   unsigned long coublock ;
 2350   unsigned long maxrss ;
 2351   unsigned long cmaxrss ;
 2352   struct task_io_accounting ioac ;
 2353   unsigned long long sum_sched_runtime ;
 2354   struct rlimit rlim[16] ;
 2355   struct pacct_struct pacct ;
 2356   struct taskstats *stats ;
 2357   unsigned int audit_tty ;
 2358   struct tty_audit_buf *tty_audit_buf ;
 2359   struct rw_semaphore group_rwsem ;
 2360   int oom_adj ;
 2361   int oom_score_adj ;
 2362   int oom_score_adj_min ;
 2363   struct mutex cred_guard_mutex ;
 2364};
 2365#line 703 "include/linux/sched.h"
 2366struct user_struct {
 2367   atomic_t __count ;
 2368   atomic_t processes ;
 2369   atomic_t files ;
 2370   atomic_t sigpending ;
 2371   atomic_t inotify_watches ;
 2372   atomic_t inotify_devs ;
 2373   atomic_t fanotify_listeners ;
 2374   atomic_long_t epoll_watches ;
 2375   unsigned long mq_bytes ;
 2376   unsigned long locked_shm ;
 2377   struct key *uid_keyring ;
 2378   struct key *session_keyring ;
 2379   struct hlist_node uidhash_node ;
 2380   uid_t uid ;
 2381   struct user_namespace *user_ns ;
 2382   atomic_long_t locked_vm ;
 2383};
 2384#line 747
 2385struct backing_dev_info;
 2386#line 748
 2387struct reclaim_state;
 2388#line 748
 2389struct reclaim_state;
 2390#line 751 "include/linux/sched.h"
 2391struct sched_info {
 2392   unsigned long pcount ;
 2393   unsigned long long run_delay ;
 2394   unsigned long long last_arrival ;
 2395   unsigned long long last_queued ;
 2396};
 2397#line 763 "include/linux/sched.h"
 2398struct task_delay_info {
 2399   spinlock_t lock ;
 2400   unsigned int flags ;
 2401   struct timespec blkio_start ;
 2402   struct timespec blkio_end ;
 2403   u64 blkio_delay ;
 2404   u64 swapin_delay ;
 2405   u32 blkio_count ;
 2406   u32 swapin_count ;
 2407   struct timespec freepages_start ;
 2408   struct timespec freepages_end ;
 2409   u64 freepages_delay ;
 2410   u32 freepages_count ;
 2411};
 2412#line 1088
 2413struct io_context;
 2414#line 1088
 2415struct io_context;
 2416#line 1097
 2417struct audit_context;
 2418#line 1098
 2419struct mempolicy;
 2420#line 1099
 2421struct pipe_inode_info;
 2422#line 1099
 2423struct pipe_inode_info;
 2424#line 1102
 2425struct rq;
 2426#line 1102
 2427struct rq;
 2428#line 1122 "include/linux/sched.h"
 2429struct sched_class {
 2430   struct sched_class  const  *next ;
 2431   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
 2432   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
 2433   void (*yield_task)(struct rq *rq ) ;
 2434   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
 2435   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
 2436   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
 2437   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
 2438   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
 2439   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
 2440   void (*post_schedule)(struct rq *this_rq ) ;
 2441   void (*task_waking)(struct task_struct *task ) ;
 2442   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
 2443   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask  const  *newmask ) ;
 2444   void (*rq_online)(struct rq *rq ) ;
 2445   void (*rq_offline)(struct rq *rq ) ;
 2446   void (*set_curr_task)(struct rq *rq ) ;
 2447   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
 2448   void (*task_fork)(struct task_struct *p ) ;
 2449   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
 2450   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
 2451   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
 2452   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
 2453   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
 2454};
 2455#line 1167 "include/linux/sched.h"
 2456struct load_weight {
 2457   unsigned long weight ;
 2458   unsigned long inv_weight ;
 2459};
 2460#line 1172 "include/linux/sched.h"
 2461struct sched_statistics {
 2462   u64 wait_start ;
 2463   u64 wait_max ;
 2464   u64 wait_count ;
 2465   u64 wait_sum ;
 2466   u64 iowait_count ;
 2467   u64 iowait_sum ;
 2468   u64 sleep_start ;
 2469   u64 sleep_max ;
 2470   s64 sum_sleep_runtime ;
 2471   u64 block_start ;
 2472   u64 block_max ;
 2473   u64 exec_max ;
 2474   u64 slice_max ;
 2475   u64 nr_migrations_cold ;
 2476   u64 nr_failed_migrations_affine ;
 2477   u64 nr_failed_migrations_running ;
 2478   u64 nr_failed_migrations_hot ;
 2479   u64 nr_forced_migrations ;
 2480   u64 nr_wakeups ;
 2481   u64 nr_wakeups_sync ;
 2482   u64 nr_wakeups_migrate ;
 2483   u64 nr_wakeups_local ;
 2484   u64 nr_wakeups_remote ;
 2485   u64 nr_wakeups_affine ;
 2486   u64 nr_wakeups_affine_attempts ;
 2487   u64 nr_wakeups_passive ;
 2488   u64 nr_wakeups_idle ;
 2489};
 2490#line 1207 "include/linux/sched.h"
 2491struct sched_entity {
 2492   struct load_weight load ;
 2493   struct rb_node run_node ;
 2494   struct list_head group_node ;
 2495   unsigned int on_rq ;
 2496   u64 exec_start ;
 2497   u64 sum_exec_runtime ;
 2498   u64 vruntime ;
 2499   u64 prev_sum_exec_runtime ;
 2500   u64 nr_migrations ;
 2501   struct sched_statistics statistics ;
 2502   struct sched_entity *parent ;
 2503   struct cfs_rq *cfs_rq ;
 2504   struct cfs_rq *my_q ;
 2505};
 2506#line 1233
 2507struct rt_rq;
 2508#line 1233 "include/linux/sched.h"
 2509struct sched_rt_entity {
 2510   struct list_head run_list ;
 2511   unsigned long timeout ;
 2512   unsigned int time_slice ;
 2513   int nr_cpus_allowed ;
 2514   struct sched_rt_entity *back ;
 2515   struct sched_rt_entity *parent ;
 2516   struct rt_rq *rt_rq ;
 2517   struct rt_rq *my_q ;
 2518};
 2519#line 1264
 2520struct files_struct;
 2521#line 1264
 2522struct css_set;
 2523#line 1264
 2524struct compat_robust_list_head;
 2525#line 1264
 2526struct mem_cgroup;
 2527#line 1264 "include/linux/sched.h"
 2528struct memcg_batch_info {
 2529   int do_batch ;
 2530   struct mem_cgroup *memcg ;
 2531   unsigned long nr_pages ;
 2532   unsigned long memsw_nr_pages ;
 2533};
 2534#line 1264 "include/linux/sched.h"
 2535struct task_struct {
 2536   long volatile   state ;
 2537   void *stack ;
 2538   atomic_t usage ;
 2539   unsigned int flags ;
 2540   unsigned int ptrace ;
 2541   struct llist_node wake_entry ;
 2542   int on_cpu ;
 2543   int on_rq ;
 2544   int prio ;
 2545   int static_prio ;
 2546   int normal_prio ;
 2547   unsigned int rt_priority ;
 2548   struct sched_class  const  *sched_class ;
 2549   struct sched_entity se ;
 2550   struct sched_rt_entity rt ;
 2551   struct hlist_head preempt_notifiers ;
 2552   unsigned char fpu_counter ;
 2553   unsigned int policy ;
 2554   cpumask_t cpus_allowed ;
 2555   struct sched_info sched_info ;
 2556   struct list_head tasks ;
 2557   struct plist_node pushable_tasks ;
 2558   struct mm_struct *mm ;
 2559   struct mm_struct *active_mm ;
 2560   unsigned int brk_randomized : 1 ;
 2561   int exit_state ;
 2562   int exit_code ;
 2563   int exit_signal ;
 2564   int pdeath_signal ;
 2565   unsigned int jobctl ;
 2566   unsigned int personality ;
 2567   unsigned int did_exec : 1 ;
 2568   unsigned int in_execve : 1 ;
 2569   unsigned int in_iowait : 1 ;
 2570   unsigned int sched_reset_on_fork : 1 ;
 2571   unsigned int sched_contributes_to_load : 1 ;
 2572   unsigned int irq_thread : 1 ;
 2573   pid_t pid ;
 2574   pid_t tgid ;
 2575   unsigned long stack_canary ;
 2576   struct task_struct *real_parent ;
 2577   struct task_struct *parent ;
 2578   struct list_head children ;
 2579   struct list_head sibling ;
 2580   struct task_struct *group_leader ;
 2581   struct list_head ptraced ;
 2582   struct list_head ptrace_entry ;
 2583   struct pid_link pids[3] ;
 2584   struct list_head thread_group ;
 2585   struct completion *vfork_done ;
 2586   int *set_child_tid ;
 2587   int *clear_child_tid ;
 2588   cputime_t utime ;
 2589   cputime_t stime ;
 2590   cputime_t utimescaled ;
 2591   cputime_t stimescaled ;
 2592   cputime_t gtime ;
 2593   cputime_t prev_utime ;
 2594   cputime_t prev_stime ;
 2595   unsigned long nvcsw ;
 2596   unsigned long nivcsw ;
 2597   struct timespec start_time ;
 2598   struct timespec real_start_time ;
 2599   unsigned long min_flt ;
 2600   unsigned long maj_flt ;
 2601   struct task_cputime cputime_expires ;
 2602   struct list_head cpu_timers[3] ;
 2603   struct cred  const  *real_cred ;
 2604   struct cred  const  *cred ;
 2605   struct cred *replacement_session_keyring ;
 2606   char comm[16] ;
 2607   int link_count ;
 2608   int total_link_count ;
 2609   struct sysv_sem sysvsem ;
 2610   unsigned long last_switch_count ;
 2611   struct thread_struct thread ;
 2612   struct fs_struct *fs ;
 2613   struct files_struct *files ;
 2614   struct nsproxy *nsproxy ;
 2615   struct signal_struct *signal ;
 2616   struct sighand_struct *sighand ;
 2617   sigset_t blocked ;
 2618   sigset_t real_blocked ;
 2619   sigset_t saved_sigmask ;
 2620   struct sigpending pending ;
 2621   unsigned long sas_ss_sp ;
 2622   size_t sas_ss_size ;
 2623   int (*notifier)(void *priv ) ;
 2624   void *notifier_data ;
 2625   sigset_t *notifier_mask ;
 2626   struct audit_context *audit_context ;
 2627   uid_t loginuid ;
 2628   unsigned int sessionid ;
 2629   seccomp_t seccomp ;
 2630   u32 parent_exec_id ;
 2631   u32 self_exec_id ;
 2632   spinlock_t alloc_lock ;
 2633   raw_spinlock_t pi_lock ;
 2634   struct plist_head pi_waiters ;
 2635   struct rt_mutex_waiter *pi_blocked_on ;
 2636   struct mutex_waiter *blocked_on ;
 2637   unsigned int irq_events ;
 2638   unsigned long hardirq_enable_ip ;
 2639   unsigned long hardirq_disable_ip ;
 2640   unsigned int hardirq_enable_event ;
 2641   unsigned int hardirq_disable_event ;
 2642   int hardirqs_enabled ;
 2643   int hardirq_context ;
 2644   unsigned long softirq_disable_ip ;
 2645   unsigned long softirq_enable_ip ;
 2646   unsigned int softirq_disable_event ;
 2647   unsigned int softirq_enable_event ;
 2648   int softirqs_enabled ;
 2649   int softirq_context ;
 2650   void *journal_info ;
 2651   struct bio_list *bio_list ;
 2652   struct blk_plug *plug ;
 2653   struct reclaim_state *reclaim_state ;
 2654   struct backing_dev_info *backing_dev_info ;
 2655   struct io_context *io_context ;
 2656   unsigned long ptrace_message ;
 2657   siginfo_t *last_siginfo ;
 2658   struct task_io_accounting ioac ;
 2659   u64 acct_rss_mem1 ;
 2660   u64 acct_vm_mem1 ;
 2661   cputime_t acct_timexpd ;
 2662   nodemask_t mems_allowed ;
 2663   seqcount_t mems_allowed_seq ;
 2664   int cpuset_mem_spread_rotor ;
 2665   int cpuset_slab_spread_rotor ;
 2666   struct css_set *cgroups ;
 2667   struct list_head cg_list ;
 2668   struct robust_list_head *robust_list ;
 2669   struct compat_robust_list_head *compat_robust_list ;
 2670   struct list_head pi_state_list ;
 2671   struct futex_pi_state *pi_state_cache ;
 2672   struct perf_event_context *perf_event_ctxp[2] ;
 2673   struct mutex perf_event_mutex ;
 2674   struct list_head perf_event_list ;
 2675   struct mempolicy *mempolicy ;
 2676   short il_next ;
 2677   short pref_node_fork ;
 2678   struct rcu_head rcu ;
 2679   struct pipe_inode_info *splice_pipe ;
 2680   struct task_delay_info *delays ;
 2681   int make_it_fail ;
 2682   int nr_dirtied ;
 2683   int nr_dirtied_pause ;
 2684   unsigned long dirty_paused_when ;
 2685   int latency_record_count ;
 2686   struct latency_record latency_record[32] ;
 2687   unsigned long timer_slack_ns ;
 2688   unsigned long default_timer_slack_ns ;
 2689   struct list_head *scm_work_list ;
 2690   unsigned long trace ;
 2691   unsigned long trace_recursion ;
 2692   struct memcg_batch_info memcg_batch ;
 2693   atomic_t ptrace_bp_refcnt ;
 2694};
 2695#line 1681
 2696struct pid_namespace;
 2697#line 46 "include/linux/slub_def.h"
 2698struct kmem_cache_cpu {
 2699   void **freelist ;
 2700   unsigned long tid ;
 2701   struct page *page ;
 2702   struct page *partial ;
 2703   int node ;
 2704   unsigned int stat[26] ;
 2705};
 2706#line 57 "include/linux/slub_def.h"
 2707struct kmem_cache_node {
 2708   spinlock_t list_lock ;
 2709   unsigned long nr_partial ;
 2710   struct list_head partial ;
 2711   atomic_long_t nr_slabs ;
 2712   atomic_long_t total_objects ;
 2713   struct list_head full ;
 2714};
 2715#line 73 "include/linux/slub_def.h"
 2716struct kmem_cache_order_objects {
 2717   unsigned long x ;
 2718};
 2719#line 80 "include/linux/slub_def.h"
 2720struct kmem_cache {
 2721   struct kmem_cache_cpu *cpu_slab ;
 2722   unsigned long flags ;
 2723   unsigned long min_partial ;
 2724   int size ;
 2725   int objsize ;
 2726   int offset ;
 2727   int cpu_partial ;
 2728   struct kmem_cache_order_objects oo ;
 2729   struct kmem_cache_order_objects max ;
 2730   struct kmem_cache_order_objects min ;
 2731   gfp_t allocflags ;
 2732   int refcount ;
 2733   void (*ctor)(void * ) ;
 2734   int inuse ;
 2735   int align ;
 2736   int reserved ;
 2737   char const   *name ;
 2738   struct list_head list ;
 2739   struct kobject kobj ;
 2740   int remote_node_defrag_ratio ;
 2741   struct kmem_cache_node *node[1 << 10] ;
 2742};
 2743#line 15 "include/linux/blk_types.h"
 2744struct page;
 2745#line 16
 2746struct block_device;
 2747#line 16
 2748struct block_device;
 2749#line 33 "include/linux/list_bl.h"
 2750struct hlist_bl_node;
 2751#line 33 "include/linux/list_bl.h"
 2752struct hlist_bl_head {
 2753   struct hlist_bl_node *first ;
 2754};
 2755#line 37 "include/linux/list_bl.h"
 2756struct hlist_bl_node {
 2757   struct hlist_bl_node *next ;
 2758   struct hlist_bl_node **pprev ;
 2759};
 2760#line 13 "include/linux/dcache.h"
 2761struct nameidata;
 2762#line 13
 2763struct nameidata;
 2764#line 14
 2765struct path;
 2766#line 14
 2767struct path;
 2768#line 15
 2769struct vfsmount;
 2770#line 15
 2771struct vfsmount;
 2772#line 35 "include/linux/dcache.h"
 2773struct qstr {
 2774   unsigned int hash ;
 2775   unsigned int len ;
 2776   unsigned char const   *name ;
 2777};
 2778#line 88
 2779struct dentry_operations;
 2780#line 88
 2781struct super_block;
 2782#line 88 "include/linux/dcache.h"
 2783union __anonunion_d_u_232 {
 2784   struct list_head d_child ;
 2785   struct rcu_head d_rcu ;
 2786};
 2787#line 88 "include/linux/dcache.h"
 2788struct dentry {
 2789   unsigned int d_flags ;
 2790   seqcount_t d_seq ;
 2791   struct hlist_bl_node d_hash ;
 2792   struct dentry *d_parent ;
 2793   struct qstr d_name ;
 2794   struct inode *d_inode ;
 2795   unsigned char d_iname[32] ;
 2796   unsigned int d_count ;
 2797   spinlock_t d_lock ;
 2798   struct dentry_operations  const  *d_op ;
 2799   struct super_block *d_sb ;
 2800   unsigned long d_time ;
 2801   void *d_fsdata ;
 2802   struct list_head d_lru ;
 2803   union __anonunion_d_u_232 d_u ;
 2804   struct list_head d_subdirs ;
 2805   struct list_head d_alias ;
 2806};
 2807#line 131 "include/linux/dcache.h"
 2808struct dentry_operations {
 2809   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
 2810   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
 2811   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
 2812                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
 2813   int (*d_delete)(struct dentry  const  * ) ;
 2814   void (*d_release)(struct dentry * ) ;
 2815   void (*d_prune)(struct dentry * ) ;
 2816   void (*d_iput)(struct dentry * , struct inode * ) ;
 2817   char *(*d_dname)(struct dentry * , char * , int  ) ;
 2818   struct vfsmount *(*d_automount)(struct path * ) ;
 2819   int (*d_manage)(struct dentry * , bool  ) ;
 2820} __attribute__((__aligned__((1) <<  (6) ))) ;
 2821#line 4 "include/linux/path.h"
 2822struct dentry;
 2823#line 5
 2824struct vfsmount;
 2825#line 7 "include/linux/path.h"
 2826struct path {
 2827   struct vfsmount *mnt ;
 2828   struct dentry *dentry ;
 2829};
 2830#line 64 "include/linux/radix-tree.h"
 2831struct radix_tree_node;
 2832#line 64 "include/linux/radix-tree.h"
 2833struct radix_tree_root {
 2834   unsigned int height ;
 2835   gfp_t gfp_mask ;
 2836   struct radix_tree_node *rnode ;
 2837};
 2838#line 16 "include/linux/fiemap.h"
 2839struct fiemap_extent {
 2840   __u64 fe_logical ;
 2841   __u64 fe_physical ;
 2842   __u64 fe_length ;
 2843   __u64 fe_reserved64[2] ;
 2844   __u32 fe_flags ;
 2845   __u32 fe_reserved[3] ;
 2846};
 2847#line 8 "include/linux/shrinker.h"
 2848struct shrink_control {
 2849   gfp_t gfp_mask ;
 2850   unsigned long nr_to_scan ;
 2851};
 2852#line 31 "include/linux/shrinker.h"
 2853struct shrinker {
 2854   int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
 2855   int seeks ;
 2856   long batch ;
 2857   struct list_head list ;
 2858   atomic_long_t nr_in_batch ;
 2859};
 2860#line 10 "include/linux/migrate_mode.h"
 2861enum migrate_mode {
 2862    MIGRATE_ASYNC = 0,
 2863    MIGRATE_SYNC_LIGHT = 1,
 2864    MIGRATE_SYNC = 2
 2865} ;
 2866#line 408 "include/linux/fs.h"
 2867struct export_operations;
 2868#line 408
 2869struct export_operations;
 2870#line 409
 2871struct hd_geometry;
 2872#line 410
 2873struct iovec;
 2874#line 411
 2875struct nameidata;
 2876#line 412
 2877struct kiocb;
 2878#line 413
 2879struct kobject;
 2880#line 414
 2881struct pipe_inode_info;
 2882#line 415
 2883struct poll_table_struct;
 2884#line 415
 2885struct poll_table_struct;
 2886#line 416
 2887struct kstatfs;
 2888#line 416
 2889struct kstatfs;
 2890#line 417
 2891struct vm_area_struct;
 2892#line 418
 2893struct vfsmount;
 2894#line 419
 2895struct cred;
 2896#line 469 "include/linux/fs.h"
 2897struct iattr {
 2898   unsigned int ia_valid ;
 2899   umode_t ia_mode ;
 2900   uid_t ia_uid ;
 2901   gid_t ia_gid ;
 2902   loff_t ia_size ;
 2903   struct timespec ia_atime ;
 2904   struct timespec ia_mtime ;
 2905   struct timespec ia_ctime ;
 2906   struct file *ia_file ;
 2907};
 2908#line 129 "include/linux/quota.h"
 2909struct if_dqinfo {
 2910   __u64 dqi_bgrace ;
 2911   __u64 dqi_igrace ;
 2912   __u32 dqi_flags ;
 2913   __u32 dqi_valid ;
 2914};
 2915#line 50 "include/linux/dqblk_xfs.h"
 2916struct fs_disk_quota {
 2917   __s8 d_version ;
 2918   __s8 d_flags ;
 2919   __u16 d_fieldmask ;
 2920   __u32 d_id ;
 2921   __u64 d_blk_hardlimit ;
 2922   __u64 d_blk_softlimit ;
 2923   __u64 d_ino_hardlimit ;
 2924   __u64 d_ino_softlimit ;
 2925   __u64 d_bcount ;
 2926   __u64 d_icount ;
 2927   __s32 d_itimer ;
 2928   __s32 d_btimer ;
 2929   __u16 d_iwarns ;
 2930   __u16 d_bwarns ;
 2931   __s32 d_padding2 ;
 2932   __u64 d_rtb_hardlimit ;
 2933   __u64 d_rtb_softlimit ;
 2934   __u64 d_rtbcount ;
 2935   __s32 d_rtbtimer ;
 2936   __u16 d_rtbwarns ;
 2937   __s16 d_padding3 ;
 2938   char d_padding4[8] ;
 2939};
 2940#line 146 "include/linux/dqblk_xfs.h"
 2941struct fs_qfilestat {
 2942   __u64 qfs_ino ;
 2943   __u64 qfs_nblks ;
 2944   __u32 qfs_nextents ;
 2945};
 2946#line 146 "include/linux/dqblk_xfs.h"
 2947typedef struct fs_qfilestat fs_qfilestat_t;
 2948#line 152 "include/linux/dqblk_xfs.h"
 2949struct fs_quota_stat {
 2950   __s8 qs_version ;
 2951   __u16 qs_flags ;
 2952   __s8 qs_pad ;
 2953   fs_qfilestat_t qs_uquota ;
 2954   fs_qfilestat_t qs_gquota ;
 2955   __u32 qs_incoredqs ;
 2956   __s32 qs_btimelimit ;
 2957   __s32 qs_itimelimit ;
 2958   __s32 qs_rtbtimelimit ;
 2959   __u16 qs_bwarnlimit ;
 2960   __u16 qs_iwarnlimit ;
 2961};
 2962#line 17 "include/linux/dqblk_qtree.h"
 2963struct dquot;
 2964#line 17
 2965struct dquot;
 2966#line 185 "include/linux/quota.h"
 2967typedef __kernel_uid32_t qid_t;
 2968#line 186 "include/linux/quota.h"
 2969typedef long long qsize_t;
 2970#line 200 "include/linux/quota.h"
 2971struct mem_dqblk {
 2972   qsize_t dqb_bhardlimit ;
 2973   qsize_t dqb_bsoftlimit ;
 2974   qsize_t dqb_curspace ;
 2975   qsize_t dqb_rsvspace ;
 2976   qsize_t dqb_ihardlimit ;
 2977   qsize_t dqb_isoftlimit ;
 2978   qsize_t dqb_curinodes ;
 2979   time_t dqb_btime ;
 2980   time_t dqb_itime ;
 2981};
 2982#line 215
 2983struct quota_format_type;
 2984#line 215
 2985struct quota_format_type;
 2986#line 217 "include/linux/quota.h"
 2987struct mem_dqinfo {
 2988   struct quota_format_type *dqi_format ;
 2989   int dqi_fmt_id ;
 2990   struct list_head dqi_dirty_list ;
 2991   unsigned long dqi_flags ;
 2992   unsigned int dqi_bgrace ;
 2993   unsigned int dqi_igrace ;
 2994   qsize_t dqi_maxblimit ;
 2995   qsize_t dqi_maxilimit ;
 2996   void *dqi_priv ;
 2997};
 2998#line 230
 2999struct super_block;
 3000#line 288 "include/linux/quota.h"
 3001struct dquot {
 3002   struct hlist_node dq_hash ;
 3003   struct list_head dq_inuse ;
 3004   struct list_head dq_free ;
 3005   struct list_head dq_dirty ;
 3006   struct mutex dq_lock ;
 3007   atomic_t dq_count ;
 3008   wait_queue_head_t dq_wait_unused ;
 3009   struct super_block *dq_sb ;
 3010   unsigned int dq_id ;
 3011   loff_t dq_off ;
 3012   unsigned long dq_flags ;
 3013   short dq_type ;
 3014   struct mem_dqblk dq_dqb ;
 3015};
 3016#line 305 "include/linux/quota.h"
 3017struct quota_format_ops {
 3018   int (*check_quota_file)(struct super_block *sb , int type ) ;
 3019   int (*read_file_info)(struct super_block *sb , int type ) ;
 3020   int (*write_file_info)(struct super_block *sb , int type ) ;
 3021   int (*free_file_info)(struct super_block *sb , int type ) ;
 3022   int (*read_dqblk)(struct dquot *dquot ) ;
 3023   int (*commit_dqblk)(struct dquot *dquot ) ;
 3024   int (*release_dqblk)(struct dquot *dquot ) ;
 3025};
 3026#line 316 "include/linux/quota.h"
 3027struct dquot_operations {
 3028   int (*write_dquot)(struct dquot * ) ;
 3029   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
 3030   void (*destroy_dquot)(struct dquot * ) ;
 3031   int (*acquire_dquot)(struct dquot * ) ;
 3032   int (*release_dquot)(struct dquot * ) ;
 3033   int (*mark_dirty)(struct dquot * ) ;
 3034   int (*write_info)(struct super_block * , int  ) ;
 3035   qsize_t *(*get_reserved_space)(struct inode * ) ;
 3036};
 3037#line 329
 3038struct path;
 3039#line 332 "include/linux/quota.h"
 3040struct quotactl_ops {
 3041   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
 3042   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
 3043   int (*quota_off)(struct super_block * , int  ) ;
 3044   int (*quota_sync)(struct super_block * , int  , int  ) ;
 3045   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 3046   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 3047   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 3048   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 3049   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
 3050   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
 3051};
 3052#line 345 "include/linux/quota.h"
 3053struct quota_format_type {
 3054   int qf_fmt_id ;
 3055   struct quota_format_ops  const  *qf_ops ;
 3056   struct module *qf_owner ;
 3057   struct quota_format_type *qf_next ;
 3058};
 3059#line 399 "include/linux/quota.h"
 3060struct quota_info {
 3061   unsigned int flags ;
 3062   struct mutex dqio_mutex ;
 3063   struct mutex dqonoff_mutex ;
 3064   struct rw_semaphore dqptr_sem ;
 3065   struct inode *files[2] ;
 3066   struct mem_dqinfo info[2] ;
 3067   struct quota_format_ops  const  *ops[2] ;
 3068};
 3069#line 532 "include/linux/fs.h"
 3070struct page;
 3071#line 533
 3072struct address_space;
 3073#line 534
 3074struct writeback_control;
 3075#line 534
 3076struct writeback_control;
 3077#line 577 "include/linux/fs.h"
 3078union __anonunion_arg_239 {
 3079   char *buf ;
 3080   void *data ;
 3081};
 3082#line 577 "include/linux/fs.h"
 3083struct __anonstruct_read_descriptor_t_238 {
 3084   size_t written ;
 3085   size_t count ;
 3086   union __anonunion_arg_239 arg ;
 3087   int error ;
 3088};
 3089#line 577 "include/linux/fs.h"
 3090typedef struct __anonstruct_read_descriptor_t_238 read_descriptor_t;
 3091#line 590 "include/linux/fs.h"
 3092struct address_space_operations {
 3093   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
 3094   int (*readpage)(struct file * , struct page * ) ;
 3095   int (*writepages)(struct address_space * , struct writeback_control * ) ;
 3096   int (*set_page_dirty)(struct page *page ) ;
 3097   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
 3098                    unsigned int nr_pages ) ;
 3099   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
 3100                      unsigned int len , unsigned int flags , struct page **pagep ,
 3101                      void **fsdata ) ;
 3102   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
 3103                    unsigned int copied , struct page *page , void *fsdata ) ;
 3104   sector_t (*bmap)(struct address_space * , sector_t  ) ;
 3105   void (*invalidatepage)(struct page * , unsigned long  ) ;
 3106   int (*releasepage)(struct page * , gfp_t  ) ;
 3107   void (*freepage)(struct page * ) ;
 3108   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  *iov , loff_t offset ,
 3109                        unsigned long nr_segs ) ;
 3110   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
 3111   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
 3112   int (*launder_page)(struct page * ) ;
 3113   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
 3114   int (*error_remove_page)(struct address_space * , struct page * ) ;
 3115};
 3116#line 645
 3117struct backing_dev_info;
 3118#line 646 "include/linux/fs.h"
 3119struct address_space {
 3120   struct inode *host ;
 3121   struct radix_tree_root page_tree ;
 3122   spinlock_t tree_lock ;
 3123   unsigned int i_mmap_writable ;
 3124   struct prio_tree_root i_mmap ;
 3125   struct list_head i_mmap_nonlinear ;
 3126   struct mutex i_mmap_mutex ;
 3127   unsigned long nrpages ;
 3128   unsigned long writeback_index ;
 3129   struct address_space_operations  const  *a_ops ;
 3130   unsigned long flags ;
 3131   struct backing_dev_info *backing_dev_info ;
 3132   spinlock_t private_lock ;
 3133   struct list_head private_list ;
 3134   struct address_space *assoc_mapping ;
 3135} __attribute__((__aligned__(sizeof(long )))) ;
 3136#line 669
 3137struct request_queue;
 3138#line 671
 3139struct hd_struct;
 3140#line 671 "include/linux/fs.h"
 3141struct block_device {
 3142   dev_t bd_dev ;
 3143   int bd_openers ;
 3144   struct inode *bd_inode ;
 3145   struct super_block *bd_super ;
 3146   struct mutex bd_mutex ;
 3147   struct list_head bd_inodes ;
 3148   void *bd_claiming ;
 3149   void *bd_holder ;
 3150   int bd_holders ;
 3151   bool bd_write_holder ;
 3152   struct list_head bd_holder_disks ;
 3153   struct block_device *bd_contains ;
 3154   unsigned int bd_block_size ;
 3155   struct hd_struct *bd_part ;
 3156   unsigned int bd_part_count ;
 3157   int bd_invalidated ;
 3158   struct gendisk *bd_disk ;
 3159   struct request_queue *bd_queue ;
 3160   struct list_head bd_list ;
 3161   unsigned long bd_private ;
 3162   int bd_fsfreeze_count ;
 3163   struct mutex bd_fsfreeze_mutex ;
 3164};
 3165#line 749
 3166struct posix_acl;
 3167#line 749
 3168struct posix_acl;
 3169#line 761
 3170struct inode_operations;
 3171#line 761 "include/linux/fs.h"
 3172union __anonunion____missing_field_name_240 {
 3173   unsigned int const   i_nlink ;
 3174   unsigned int __i_nlink ;
 3175};
 3176#line 761 "include/linux/fs.h"
 3177union __anonunion____missing_field_name_241 {
 3178   struct list_head i_dentry ;
 3179   struct rcu_head i_rcu ;
 3180};
 3181#line 761
 3182struct file_operations;
 3183#line 761
 3184struct file_lock;
 3185#line 761
 3186struct cdev;
 3187#line 761 "include/linux/fs.h"
 3188union __anonunion____missing_field_name_242 {
 3189   struct pipe_inode_info *i_pipe ;
 3190   struct block_device *i_bdev ;
 3191   struct cdev *i_cdev ;
 3192};
 3193#line 761 "include/linux/fs.h"
 3194struct inode {
 3195   umode_t i_mode ;
 3196   unsigned short i_opflags ;
 3197   uid_t i_uid ;
 3198   gid_t i_gid ;
 3199   unsigned int i_flags ;
 3200   struct posix_acl *i_acl ;
 3201   struct posix_acl *i_default_acl ;
 3202   struct inode_operations  const  *i_op ;
 3203   struct super_block *i_sb ;
 3204   struct address_space *i_mapping ;
 3205   void *i_security ;
 3206   unsigned long i_ino ;
 3207   union __anonunion____missing_field_name_240 __annonCompField44 ;
 3208   dev_t i_rdev ;
 3209   struct timespec i_atime ;
 3210   struct timespec i_mtime ;
 3211   struct timespec i_ctime ;
 3212   spinlock_t i_lock ;
 3213   unsigned short i_bytes ;
 3214   blkcnt_t i_blocks ;
 3215   loff_t i_size ;
 3216   unsigned long i_state ;
 3217   struct mutex i_mutex ;
 3218   unsigned long dirtied_when ;
 3219   struct hlist_node i_hash ;
 3220   struct list_head i_wb_list ;
 3221   struct list_head i_lru ;
 3222   struct list_head i_sb_list ;
 3223   union __anonunion____missing_field_name_241 __annonCompField45 ;
 3224   atomic_t i_count ;
 3225   unsigned int i_blkbits ;
 3226   u64 i_version ;
 3227   atomic_t i_dio_count ;
 3228   atomic_t i_writecount ;
 3229   struct file_operations  const  *i_fop ;
 3230   struct file_lock *i_flock ;
 3231   struct address_space i_data ;
 3232   struct dquot *i_dquot[2] ;
 3233   struct list_head i_devices ;
 3234   union __anonunion____missing_field_name_242 __annonCompField46 ;
 3235   __u32 i_generation ;
 3236   __u32 i_fsnotify_mask ;
 3237   struct hlist_head i_fsnotify_marks ;
 3238   atomic_t i_readcount ;
 3239   void *i_private ;
 3240};
 3241#line 942 "include/linux/fs.h"
 3242struct fown_struct {
 3243   rwlock_t lock ;
 3244   struct pid *pid ;
 3245   enum pid_type pid_type ;
 3246   uid_t uid ;
 3247   uid_t euid ;
 3248   int signum ;
 3249};
 3250#line 953 "include/linux/fs.h"
 3251struct file_ra_state {
 3252   unsigned long start ;
 3253   unsigned int size ;
 3254   unsigned int async_size ;
 3255   unsigned int ra_pages ;
 3256   unsigned int mmap_miss ;
 3257   loff_t prev_pos ;
 3258};
 3259#line 976 "include/linux/fs.h"
 3260union __anonunion_f_u_243 {
 3261   struct list_head fu_list ;
 3262   struct rcu_head fu_rcuhead ;
 3263};
 3264#line 976 "include/linux/fs.h"
 3265struct file {
 3266   union __anonunion_f_u_243 f_u ;
 3267   struct path f_path ;
 3268   struct file_operations  const  *f_op ;
 3269   spinlock_t f_lock ;
 3270   int f_sb_list_cpu ;
 3271   atomic_long_t f_count ;
 3272   unsigned int f_flags ;
 3273   fmode_t f_mode ;
 3274   loff_t f_pos ;
 3275   struct fown_struct f_owner ;
 3276   struct cred  const  *f_cred ;
 3277   struct file_ra_state f_ra ;
 3278   u64 f_version ;
 3279   void *f_security ;
 3280   void *private_data ;
 3281   struct list_head f_ep_links ;
 3282   struct list_head f_tfile_llink ;
 3283   struct address_space *f_mapping ;
 3284   unsigned long f_mnt_write_state ;
 3285};
 3286#line 1111 "include/linux/fs.h"
 3287typedef struct files_struct *fl_owner_t;
 3288#line 1113 "include/linux/fs.h"
 3289struct file_lock_operations {
 3290   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
 3291   void (*fl_release_private)(struct file_lock * ) ;
 3292};
 3293#line 1118 "include/linux/fs.h"
 3294struct lock_manager_operations {
 3295   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
 3296   void (*lm_notify)(struct file_lock * ) ;
 3297   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
 3298   void (*lm_release_private)(struct file_lock * ) ;
 3299   void (*lm_break)(struct file_lock * ) ;
 3300   int (*lm_change)(struct file_lock ** , int  ) ;
 3301};
 3302#line 4 "include/linux/nfs_fs_i.h"
 3303struct nlm_lockowner;
 3304#line 4
 3305struct nlm_lockowner;
 3306#line 9 "include/linux/nfs_fs_i.h"
 3307struct nfs_lock_info {
 3308   u32 state ;
 3309   struct nlm_lockowner *owner ;
 3310   struct list_head list ;
 3311};
 3312#line 15
 3313struct nfs4_lock_state;
 3314#line 15
 3315struct nfs4_lock_state;
 3316#line 16 "include/linux/nfs_fs_i.h"
 3317struct nfs4_lock_info {
 3318   struct nfs4_lock_state *owner ;
 3319};
 3320#line 1138 "include/linux/fs.h"
 3321struct fasync_struct;
 3322#line 1138 "include/linux/fs.h"
 3323struct __anonstruct_afs_245 {
 3324   struct list_head link ;
 3325   int state ;
 3326};
 3327#line 1138 "include/linux/fs.h"
 3328union __anonunion_fl_u_244 {
 3329   struct nfs_lock_info nfs_fl ;
 3330   struct nfs4_lock_info nfs4_fl ;
 3331   struct __anonstruct_afs_245 afs ;
 3332};
 3333#line 1138 "include/linux/fs.h"
 3334struct file_lock {
 3335   struct file_lock *fl_next ;
 3336   struct list_head fl_link ;
 3337   struct list_head fl_block ;
 3338   fl_owner_t fl_owner ;
 3339   unsigned int fl_flags ;
 3340   unsigned char fl_type ;
 3341   unsigned int fl_pid ;
 3342   struct pid *fl_nspid ;
 3343   wait_queue_head_t fl_wait ;
 3344   struct file *fl_file ;
 3345   loff_t fl_start ;
 3346   loff_t fl_end ;
 3347   struct fasync_struct *fl_fasync ;
 3348   unsigned long fl_break_time ;
 3349   unsigned long fl_downgrade_time ;
 3350   struct file_lock_operations  const  *fl_ops ;
 3351   struct lock_manager_operations  const  *fl_lmops ;
 3352   union __anonunion_fl_u_244 fl_u ;
 3353};
 3354#line 1378 "include/linux/fs.h"
 3355struct fasync_struct {
 3356   spinlock_t fa_lock ;
 3357   int magic ;
 3358   int fa_fd ;
 3359   struct fasync_struct *fa_next ;
 3360   struct file *fa_file ;
 3361   struct rcu_head fa_rcu ;
 3362};
 3363#line 1418
 3364struct file_system_type;
 3365#line 1418
 3366struct super_operations;
 3367#line 1418
 3368struct xattr_handler;
 3369#line 1418 "include/linux/fs.h"
 3370struct super_block {
 3371   struct list_head s_list ;
 3372   dev_t s_dev ;
 3373   unsigned char s_dirt ;
 3374   unsigned char s_blocksize_bits ;
 3375   unsigned long s_blocksize ;
 3376   loff_t s_maxbytes ;
 3377   struct file_system_type *s_type ;
 3378   struct super_operations  const  *s_op ;
 3379   struct dquot_operations  const  *dq_op ;
 3380   struct quotactl_ops  const  *s_qcop ;
 3381   struct export_operations  const  *s_export_op ;
 3382   unsigned long s_flags ;
 3383   unsigned long s_magic ;
 3384   struct dentry *s_root ;
 3385   struct rw_semaphore s_umount ;
 3386   struct mutex s_lock ;
 3387   int s_count ;
 3388   atomic_t s_active ;
 3389   void *s_security ;
 3390   struct xattr_handler  const  **s_xattr ;
 3391   struct list_head s_inodes ;
 3392   struct hlist_bl_head s_anon ;
 3393   struct list_head *s_files ;
 3394   struct list_head s_mounts ;
 3395   struct list_head s_dentry_lru ;
 3396   int s_nr_dentry_unused ;
 3397   spinlock_t s_inode_lru_lock  __attribute__((__aligned__((1) <<  (6) ))) ;
 3398   struct list_head s_inode_lru ;
 3399   int s_nr_inodes_unused ;
 3400   struct block_device *s_bdev ;
 3401   struct backing_dev_info *s_bdi ;
 3402   struct mtd_info *s_mtd ;
 3403   struct hlist_node s_instances ;
 3404   struct quota_info s_dquot ;
 3405   int s_frozen ;
 3406   wait_queue_head_t s_wait_unfrozen ;
 3407   char s_id[32] ;
 3408   u8 s_uuid[16] ;
 3409   void *s_fs_info ;
 3410   unsigned int s_max_links ;
 3411   fmode_t s_mode ;
 3412   u32 s_time_gran ;
 3413   struct mutex s_vfs_rename_mutex ;
 3414   char *s_subtype ;
 3415   char *s_options ;
 3416   struct dentry_operations  const  *s_d_op ;
 3417   int cleancache_poolid ;
 3418   struct shrinker s_shrink ;
 3419   atomic_long_t s_remove_count ;
 3420   int s_readonly_remount ;
 3421};
 3422#line 1567 "include/linux/fs.h"
 3423struct fiemap_extent_info {
 3424   unsigned int fi_flags ;
 3425   unsigned int fi_extents_mapped ;
 3426   unsigned int fi_extents_max ;
 3427   struct fiemap_extent *fi_extents_start ;
 3428};
 3429#line 1609 "include/linux/fs.h"
 3430struct file_operations {
 3431   struct module *owner ;
 3432   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
 3433   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
 3434   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
 3435   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 3436                       loff_t  ) ;
 3437   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 3438                        loff_t  ) ;
 3439   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
 3440                                                   loff_t  , u64  , unsigned int  ) ) ;
 3441   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
 3442   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 3443   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 3444   int (*mmap)(struct file * , struct vm_area_struct * ) ;
 3445   int (*open)(struct inode * , struct file * ) ;
 3446   int (*flush)(struct file * , fl_owner_t id ) ;
 3447   int (*release)(struct inode * , struct file * ) ;
 3448   int (*fsync)(struct file * , loff_t  , loff_t  , int datasync ) ;
 3449   int (*aio_fsync)(struct kiocb * , int datasync ) ;
 3450   int (*fasync)(int  , struct file * , int  ) ;
 3451   int (*lock)(struct file * , int  , struct file_lock * ) ;
 3452   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
 3453                       int  ) ;
 3454   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
 3455                                      unsigned long  , unsigned long  ) ;
 3456   int (*check_flags)(int  ) ;
 3457   int (*flock)(struct file * , int  , struct file_lock * ) ;
 3458   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
 3459                           unsigned int  ) ;
 3460   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
 3461                          unsigned int  ) ;
 3462   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
 3463   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
 3464};
 3465#line 1639 "include/linux/fs.h"
 3466struct inode_operations {
 3467   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
 3468   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
 3469   int (*permission)(struct inode * , int  ) ;
 3470   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
 3471   int (*readlink)(struct dentry * , char * , int  ) ;
 3472   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
 3473   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
 3474   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
 3475   int (*unlink)(struct inode * , struct dentry * ) ;
 3476   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
 3477   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
 3478   int (*rmdir)(struct inode * , struct dentry * ) ;
 3479   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
 3480   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
 3481   void (*truncate)(struct inode * ) ;
 3482   int (*setattr)(struct dentry * , struct iattr * ) ;
 3483   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
 3484   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
 3485   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
 3486   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
 3487   int (*removexattr)(struct dentry * , char const   * ) ;
 3488   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
 3489   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
 3490} __attribute__((__aligned__((1) <<  (6) ))) ;
 3491#line 1669
 3492struct seq_file;
 3493#line 1684 "include/linux/fs.h"
 3494struct super_operations {
 3495   struct inode *(*alloc_inode)(struct super_block *sb ) ;
 3496   void (*destroy_inode)(struct inode * ) ;
 3497   void (*dirty_inode)(struct inode * , int flags ) ;
 3498   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
 3499   int (*drop_inode)(struct inode * ) ;
 3500   void (*evict_inode)(struct inode * ) ;
 3501   void (*put_super)(struct super_block * ) ;
 3502   void (*write_super)(struct super_block * ) ;
 3503   int (*sync_fs)(struct super_block *sb , int wait ) ;
 3504   int (*freeze_fs)(struct super_block * ) ;
 3505   int (*unfreeze_fs)(struct super_block * ) ;
 3506   int (*statfs)(struct dentry * , struct kstatfs * ) ;
 3507   int (*remount_fs)(struct super_block * , int * , char * ) ;
 3508   void (*umount_begin)(struct super_block * ) ;
 3509   int (*show_options)(struct seq_file * , struct dentry * ) ;
 3510   int (*show_devname)(struct seq_file * , struct dentry * ) ;
 3511   int (*show_path)(struct seq_file * , struct dentry * ) ;
 3512   int (*show_stats)(struct seq_file * , struct dentry * ) ;
 3513   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
 3514   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
 3515                          loff_t  ) ;
 3516   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
 3517   int (*nr_cached_objects)(struct super_block * ) ;
 3518   void (*free_cached_objects)(struct super_block * , int  ) ;
 3519};
 3520#line 1835 "include/linux/fs.h"
 3521struct file_system_type {
 3522   char const   *name ;
 3523   int fs_flags ;
 3524   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
 3525   void (*kill_sb)(struct super_block * ) ;
 3526   struct module *owner ;
 3527   struct file_system_type *next ;
 3528   struct hlist_head fs_supers ;
 3529   struct lock_class_key s_lock_key ;
 3530   struct lock_class_key s_umount_key ;
 3531   struct lock_class_key s_vfs_rename_key ;
 3532   struct lock_class_key i_lock_key ;
 3533   struct lock_class_key i_mutex_key ;
 3534   struct lock_class_key i_mutex_dir_key ;
 3535};
 3536#line 323 "include/linux/hdreg.h"
 3537struct hd_geometry {
 3538   unsigned char heads ;
 3539   unsigned char sectors ;
 3540   unsigned short cylinders ;
 3541   unsigned long start ;
 3542};
 3543#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
 3544struct exception_table_entry {
 3545   unsigned long insn ;
 3546   unsigned long fixup ;
 3547};
 3548#line 34 "include/linux/mtd/ftl.h"
 3549struct erase_unit_header_t {
 3550   uint8_t LinkTargetTuple[5] ;
 3551   uint8_t DataOrgTuple[10] ;
 3552   uint8_t NumTransferUnits ;
 3553   uint32_t EraseCount ;
 3554   uint16_t LogicalEUN ;
 3555   uint8_t BlockSize ;
 3556   uint8_t EraseUnitSize ;
 3557   uint16_t FirstPhysicalEUN ;
 3558   uint16_t NumEraseUnits ;
 3559   uint32_t FormattedSize ;
 3560   uint32_t FirstVMAddress ;
 3561   uint16_t NumVMPages ;
 3562   uint8_t Flags ;
 3563   uint8_t Code ;
 3564   uint32_t SerialNumber ;
 3565   uint32_t AltEUHOffset ;
 3566   uint32_t BAMOffset ;
 3567   uint8_t Reserved[12] ;
 3568   uint8_t EndTuple[2] ;
 3569};
 3570#line 34 "include/linux/mtd/ftl.h"
 3571typedef struct erase_unit_header_t erase_unit_header_t;
 3572#line 111 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3573struct eun_info_t {
 3574   uint32_t Offset ;
 3575   uint32_t EraseCount ;
 3576   uint32_t Free ;
 3577   uint32_t Deleted ;
 3578};
 3579#line 111 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3580struct xfer_info_t {
 3581   uint32_t Offset ;
 3582   uint32_t EraseCount ;
 3583   uint16_t state ;
 3584};
 3585#line 111 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3586struct partition_t {
 3587   struct mtd_blktrans_dev mbd ;
 3588   uint32_t state ;
 3589   uint32_t *VirtualBlockMap ;
 3590   uint32_t *VirtualPageMap ;
 3591   uint32_t FreeTotal ;
 3592   struct eun_info_t *EUNInfo ;
 3593   struct xfer_info_t *XferInfo ;
 3594   uint16_t bam_index ;
 3595   uint32_t *bam_cache ;
 3596   uint16_t DataUnits ;
 3597   uint32_t BlocksPerUnit ;
 3598   erase_unit_header_t header ;
 3599};
 3600#line 111 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3601typedef struct partition_t partition_t;
 3602#line 1 "<compiler builtins>"
 3603long __builtin_expect(long val , long res ) ;
 3604#line 100 "include/linux/printk.h"
 3605extern int ( /* format attribute */  printk)(char const   *fmt  , ...) ;
 3606#line 44 "include/linux/dynamic_debug.h"
 3607extern int ( /* format attribute */  __dynamic_pr_debug)(struct _ddebug *descriptor ,
 3608                                                         char const   *fmt  , ...) ;
 3609#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
 3610extern void *memset(void *s , int c , size_t n ) ;
 3611#line 64
 3612extern int strcmp(char const   *cs , char const   *ct ) ;
 3613#line 152 "include/linux/mutex.h"
 3614void mutex_lock(struct mutex *lock ) ;
 3615#line 153
 3616int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
 3617#line 154
 3618int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
 3619#line 168
 3620int mutex_trylock(struct mutex *lock ) ;
 3621#line 169
 3622void mutex_unlock(struct mutex *lock ) ;
 3623#line 170
 3624int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
 3625#line 87 "include/linux/mtd/blktrans.h"
 3626extern int register_mtd_blktrans(struct mtd_blktrans_ops *tr ) ;
 3627#line 88
 3628extern int deregister_mtd_blktrans(struct mtd_blktrans_ops *tr ) ;
 3629#line 89
 3630extern int add_mtd_blktrans_dev(struct mtd_blktrans_dev *dev ) ;
 3631#line 90
 3632extern int del_mtd_blktrans_dev(struct mtd_blktrans_dev *dev ) ;
 3633#line 82 "include/linux/jiffies.h"
 3634extern unsigned long volatile   jiffies  __attribute__((__section__(".data"))) ;
 3635#line 54 "include/linux/vmalloc.h"
 3636extern void *vmalloc(unsigned long size ) ;
 3637#line 66
 3638extern void vfree(void const   *addr ) ;
 3639#line 356 "include/linux/moduleparam.h"
 3640extern struct kernel_param_ops param_ops_int ;
 3641#line 26 "include/linux/export.h"
 3642extern struct module __this_module ;
 3643#line 67 "include/linux/module.h"
 3644int init_module(void) ;
 3645#line 68
 3646void cleanup_module(void) ;
 3647#line 246 "include/linux/mtd/mtd.h"
 3648extern int mtd_erase(struct mtd_info *mtd , struct erase_info *instr ) ;
 3649#line 252
 3650extern int mtd_read(struct mtd_info *mtd , loff_t from , size_t len , size_t *retlen ,
 3651                    u_char *buf ) ;
 3652#line 254
 3653extern int mtd_write(struct mtd_info *mtd , loff_t to , size_t len , size_t *retlen ,
 3654                     u_char const   *buf ) ;
 3655#line 294
 3656__inline static void mtd_sync(struct mtd_info *mtd )  __attribute__((__no_instrument_function__)) ;
 3657#line 294 "include/linux/mtd/mtd.h"
 3658__inline static void mtd_sync(struct mtd_info *mtd ) 
 3659{ unsigned long __cil_tmp2 ;
 3660  unsigned long __cil_tmp3 ;
 3661  unsigned long __cil_tmp4 ;
 3662  unsigned long __cil_tmp5 ;
 3663  void (*__cil_tmp6)(struct mtd_info *mtd ) ;
 3664
 3665  {
 3666  {
 3667#line 296
 3668  __cil_tmp2 = (unsigned long )mtd;
 3669#line 296
 3670  __cil_tmp3 = __cil_tmp2 + 224;
 3671#line 296
 3672  if (*((void (**)(struct mtd_info *mtd ))__cil_tmp3)) {
 3673    {
 3674#line 297
 3675    __cil_tmp4 = (unsigned long )mtd;
 3676#line 297
 3677    __cil_tmp5 = __cil_tmp4 + 224;
 3678#line 297
 3679    __cil_tmp6 = *((void (**)(struct mtd_info *mtd ))__cil_tmp5);
 3680#line 297
 3681    (*__cil_tmp6)(mtd);
 3682    }
 3683  } else {
 3684
 3685  }
 3686  }
 3687#line 298
 3688  return;
 3689}
 3690}
 3691#line 161 "include/linux/slab.h"
 3692extern void kfree(void const   * ) ;
 3693#line 221 "include/linux/slub_def.h"
 3694extern void *__kmalloc(size_t size , gfp_t flags ) ;
 3695#line 268
 3696__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
 3697                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
 3698#line 268 "include/linux/slub_def.h"
 3699__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
 3700                                                                    gfp_t flags ) 
 3701{ void *tmp___10 ;
 3702
 3703  {
 3704  {
 3705#line 283
 3706  tmp___10 = __kmalloc(size, flags);
 3707  }
 3708#line 283
 3709  return (tmp___10);
 3710}
 3711}
 3712#line 349 "include/linux/slab.h"
 3713__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
 3714#line 349 "include/linux/slab.h"
 3715__inline static void *kzalloc(size_t size , gfp_t flags ) 
 3716{ void *tmp___7 ;
 3717  unsigned int __cil_tmp4 ;
 3718
 3719  {
 3720  {
 3721#line 351
 3722  __cil_tmp4 = flags | 32768U;
 3723#line 351
 3724  tmp___7 = kmalloc(size, __cil_tmp4);
 3725  }
 3726#line 351
 3727  return (tmp___7);
 3728}
 3729}
 3730#line 81 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3731static int shuffle_freq  =    50;
 3732#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3733static char const   __param_str_shuffle_freq[13]  = 
 3734#line 82
 3735  {      (char const   )'s',      (char const   )'h',      (char const   )'u',      (char const   )'f', 
 3736        (char const   )'f',      (char const   )'l',      (char const   )'e',      (char const   )'_', 
 3737        (char const   )'f',      (char const   )'r',      (char const   )'e',      (char const   )'q', 
 3738        (char const   )'\000'};
 3739#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3740static struct kernel_param  const  __param_shuffle_freq  __attribute__((__used__,
 3741__unused__, __section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_shuffle_freq, (struct kernel_param_ops  const  *)(& param_ops_int),
 3742    (u16 )0, (s16 )0, {(void *)(& shuffle_freq)}};
 3743#line 82 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3744static char const   __mod_shuffle_freqtype82[26]  __attribute__((__used__, __unused__,
 3745__section__(".modinfo"), __aligned__(1)))  = 
 3746#line 82
 3747  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
 3748        (char const   )'t',      (char const   )'y',      (char const   )'p',      (char const   )'e', 
 3749        (char const   )'=',      (char const   )'s',      (char const   )'h',      (char const   )'u', 
 3750        (char const   )'f',      (char const   )'f',      (char const   )'l',      (char const   )'e', 
 3751        (char const   )'_',      (char const   )'f',      (char const   )'r',      (char const   )'e', 
 3752        (char const   )'q',      (char const   )':',      (char const   )'i',      (char const   )'n', 
 3753        (char const   )'t',      (char const   )'\000'};
 3754#line 148
 3755static void ftl_erase_callback(struct erase_info *erase ) ;
 3756#line 159 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 3757static int scan_header(partition_t *part ) 
 3758{ erase_unit_header_t header ;
 3759  loff_t offset ;
 3760  loff_t max_offset ;
 3761  size_t ret ;
 3762  int err ;
 3763  uint32_t tmp___7 ;
 3764  int tmp___8 ;
 3765  unsigned long __cil_tmp9 ;
 3766  unsigned long __cil_tmp10 ;
 3767  unsigned long __cil_tmp11 ;
 3768  unsigned long __cil_tmp12 ;
 3769  unsigned long __cil_tmp13 ;
 3770  unsigned long __cil_tmp14 ;
 3771  struct mtd_info *__cil_tmp15 ;
 3772  unsigned long __cil_tmp16 ;
 3773  unsigned long __cil_tmp17 ;
 3774  uint64_t __cil_tmp18 ;
 3775  unsigned long __cil_tmp19 ;
 3776  unsigned long __cil_tmp20 ;
 3777  unsigned long __cil_tmp21 ;
 3778  struct mtd_info *__cil_tmp22 ;
 3779  unsigned long __cil_tmp23 ;
 3780  unsigned long __cil_tmp24 ;
 3781  uint64_t __cil_tmp25 ;
 3782  loff_t __cil_tmp26 ;
 3783  loff_t __cil_tmp27 ;
 3784  unsigned long __cil_tmp28 ;
 3785  unsigned long __cil_tmp29 ;
 3786  unsigned long __cil_tmp30 ;
 3787  struct mtd_info *__cil_tmp31 ;
 3788  unsigned char *__cil_tmp32 ;
 3789  unsigned long __cil_tmp33 ;
 3790  unsigned long __cil_tmp34 ;
 3791  unsigned long __cil_tmp35 ;
 3792  uint8_t *__cil_tmp36 ;
 3793  uint8_t *__cil_tmp37 ;
 3794  char const   *__cil_tmp38 ;
 3795  unsigned long __cil_tmp39 ;
 3796  unsigned long __cil_tmp40 ;
 3797  unsigned long __cil_tmp41 ;
 3798  struct mtd_info *__cil_tmp42 ;
 3799  unsigned long __cil_tmp43 ;
 3800  unsigned long __cil_tmp44 ;
 3801  loff_t __cil_tmp45 ;
 3802  unsigned long __cil_tmp46 ;
 3803  uint8_t __cil_tmp47 ;
 3804  int __cil_tmp48 ;
 3805  unsigned long __cil_tmp49 ;
 3806  uint8_t __cil_tmp50 ;
 3807  int __cil_tmp51 ;
 3808  unsigned long __cil_tmp52 ;
 3809  uint8_t __cil_tmp53 ;
 3810  int __cil_tmp54 ;
 3811  unsigned long __cil_tmp55 ;
 3812  uint16_t __cil_tmp56 ;
 3813  int __cil_tmp57 ;
 3814  unsigned long __cil_tmp58 ;
 3815  uint8_t __cil_tmp59 ;
 3816  int __cil_tmp60 ;
 3817  unsigned long __cil_tmp61 ;
 3818  unsigned long __cil_tmp62 ;
 3819  unsigned long __cil_tmp63 ;
 3820  struct mtd_info *__cil_tmp64 ;
 3821  unsigned long __cil_tmp65 ;
 3822  unsigned long __cil_tmp66 ;
 3823  uint32_t __cil_tmp67 ;
 3824  unsigned long __cil_tmp68 ;
 3825  uint8_t __cil_tmp69 ;
 3826  int __cil_tmp70 ;
 3827  int __cil_tmp71 ;
 3828  uint32_t __cil_tmp72 ;
 3829  unsigned long __cil_tmp73 ;
 3830  uint8_t __cil_tmp74 ;
 3831  int __cil_tmp75 ;
 3832  int __cil_tmp76 ;
 3833  unsigned long __cil_tmp77 ;
 3834  unsigned long __cil_tmp78 ;
 3835  unsigned long __cil_tmp79 ;
 3836  struct mtd_info *__cil_tmp80 ;
 3837  unsigned long __cil_tmp81 ;
 3838  unsigned long __cil_tmp82 ;
 3839  uint32_t __cil_tmp83 ;
 3840  unsigned long __cil_tmp84 ;
 3841  unsigned long __cil_tmp85 ;
 3842  erase_unit_header_t *__cil_tmp86 ;
 3843
 3844  {
 3845#line 165
 3846  __cil_tmp9 = 280 + 28;
 3847#line 165
 3848  __cil_tmp10 = (unsigned long )part;
 3849#line 165
 3850  __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
 3851#line 165
 3852  *((uint32_t *)__cil_tmp11) = (uint32_t )0;
 3853  {
 3854#line 166
 3855  __cil_tmp12 = 0 + 24;
 3856#line 166
 3857  __cil_tmp13 = (unsigned long )part;
 3858#line 166
 3859  __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
 3860#line 166
 3861  __cil_tmp15 = *((struct mtd_info **)__cil_tmp14);
 3862#line 166
 3863  __cil_tmp16 = (unsigned long )__cil_tmp15;
 3864#line 166
 3865  __cil_tmp17 = __cil_tmp16 + 8;
 3866#line 166
 3867  __cil_tmp18 = *((uint64_t *)__cil_tmp17);
 3868#line 166
 3869  if (1048576ULL < __cil_tmp18) {
 3870#line 166
 3871    max_offset = (loff_t )1048576;
 3872  } else {
 3873#line 166
 3874    __cil_tmp19 = 0 + 24;
 3875#line 166
 3876    __cil_tmp20 = (unsigned long )part;
 3877#line 166
 3878    __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
 3879#line 166
 3880    __cil_tmp22 = *((struct mtd_info **)__cil_tmp21);
 3881#line 166
 3882    __cil_tmp23 = (unsigned long )__cil_tmp22;
 3883#line 166
 3884    __cil_tmp24 = __cil_tmp23 + 8;
 3885#line 166
 3886    __cil_tmp25 = *((uint64_t *)__cil_tmp24);
 3887#line 166
 3888    max_offset = (loff_t )__cil_tmp25;
 3889  }
 3890  }
 3891#line 168
 3892  offset = (loff_t )0;
 3893  {
 3894#line 168
 3895  while (1) {
 3896    while_continue: /* CIL Label */ ;
 3897    {
 3898#line 168
 3899    __cil_tmp26 = (loff_t )68UL;
 3900#line 168
 3901    __cil_tmp27 = offset + __cil_tmp26;
 3902#line 168
 3903    if (__cil_tmp27 < max_offset) {
 3904
 3905    } else {
 3906#line 168
 3907      goto while_break;
 3908    }
 3909    }
 3910    {
 3911#line 172
 3912    __cil_tmp28 = 0 + 24;
 3913#line 172
 3914    __cil_tmp29 = (unsigned long )part;
 3915#line 172
 3916    __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
 3917#line 172
 3918    __cil_tmp31 = *((struct mtd_info **)__cil_tmp30);
 3919#line 172
 3920    __cil_tmp32 = (unsigned char *)(& header);
 3921#line 172
 3922    err = mtd_read(__cil_tmp31, offset, 68UL, & ret, __cil_tmp32);
 3923    }
 3924#line 175
 3925    if (err) {
 3926#line 176
 3927      return (err);
 3928    } else {
 3929
 3930    }
 3931    {
 3932#line 178
 3933    __cil_tmp33 = 0 * 1UL;
 3934#line 178
 3935    __cil_tmp34 = 5 + __cil_tmp33;
 3936#line 178
 3937    __cil_tmp35 = (unsigned long )(& header) + __cil_tmp34;
 3938#line 178
 3939    __cil_tmp36 = (uint8_t *)__cil_tmp35;
 3940#line 178
 3941    __cil_tmp37 = __cil_tmp36 + 3;
 3942#line 178
 3943    __cil_tmp38 = (char const   *)__cil_tmp37;
 3944#line 178
 3945    tmp___8 = strcmp(__cil_tmp38, "FTL100");
 3946    }
 3947#line 178
 3948    if (tmp___8 == 0) {
 3949#line 178
 3950      goto while_break;
 3951    } else {
 3952
 3953    }
 3954#line 168
 3955    __cil_tmp39 = 0 + 24;
 3956#line 168
 3957    __cil_tmp40 = (unsigned long )part;
 3958#line 168
 3959    __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
 3960#line 168
 3961    __cil_tmp42 = *((struct mtd_info **)__cil_tmp41);
 3962#line 168
 3963    __cil_tmp43 = (unsigned long )__cil_tmp42;
 3964#line 168
 3965    __cil_tmp44 = __cil_tmp43 + 16;
 3966#line 168
 3967    tmp___7 = *((uint32_t *)__cil_tmp44);
 3968#line 168
 3969    if (tmp___7) {
 3970
 3971    } else {
 3972#line 168
 3973      tmp___7 = (uint32_t )8192;
 3974    }
 3975#line 168
 3976    __cil_tmp45 = (loff_t )tmp___7;
 3977#line 168
 3978    offset = offset + __cil_tmp45;
 3979  }
 3980  while_break: /* CIL Label */ ;
 3981  }
 3982#line 181
 3983  if (offset == max_offset) {
 3984    {
 3985#line 182
 3986    printk("<5>ftl_cs: FTL header not found.\n");
 3987    }
 3988#line 183
 3989    return (-2);
 3990  } else {
 3991
 3992  }
 3993  {
 3994#line 185
 3995  __cil_tmp46 = (unsigned long )(& header) + 22;
 3996#line 185
 3997  __cil_tmp47 = *((uint8_t *)__cil_tmp46);
 3998#line 185
 3999  __cil_tmp48 = (int )__cil_tmp47;
 4000#line 185
 4001  if (__cil_tmp48 != 9) {
 4002    {
 4003#line 188
 4004    printk("<5>ftl_cs: FTL header corrupt!\n");
 4005    }
 4006#line 189
 4007    return (-1);
 4008  } else {
 4009    {
 4010#line 185
 4011    __cil_tmp49 = (unsigned long )(& header) + 23;
 4012#line 185
 4013    __cil_tmp50 = *((uint8_t *)__cil_tmp49);
 4014#line 185
 4015    __cil_tmp51 = (int )__cil_tmp50;
 4016#line 185
 4017    if (__cil_tmp51 < 10) {
 4018      {
 4019#line 188
 4020      printk("<5>ftl_cs: FTL header corrupt!\n");
 4021      }
 4022#line 189
 4023      return (-1);
 4024    } else {
 4025      {
 4026#line 185
 4027      __cil_tmp52 = (unsigned long )(& header) + 23;
 4028#line 185
 4029      __cil_tmp53 = *((uint8_t *)__cil_tmp52);
 4030#line 185
 4031      __cil_tmp54 = (int )__cil_tmp53;
 4032#line 185
 4033      if (__cil_tmp54 > 31) {
 4034        {
 4035#line 188
 4036        printk("<5>ftl_cs: FTL header corrupt!\n");
 4037        }
 4038#line 189
 4039        return (-1);
 4040      } else {
 4041        {
 4042#line 185
 4043        __cil_tmp55 = (unsigned long )(& header) + 26;
 4044#line 185
 4045        __cil_tmp56 = *((uint16_t *)__cil_tmp55);
 4046#line 185
 4047        __cil_tmp57 = (int )__cil_tmp56;
 4048#line 185
 4049        __cil_tmp58 = (unsigned long )(& header) + 15;
 4050#line 185
 4051        __cil_tmp59 = *((uint8_t *)__cil_tmp58);
 4052#line 185
 4053        __cil_tmp60 = (int )__cil_tmp59;
 4054#line 185
 4055        if (__cil_tmp60 >= __cil_tmp57) {
 4056          {
 4057#line 188
 4058          printk("<5>ftl_cs: FTL header corrupt!\n");
 4059          }
 4060#line 189
 4061          return (-1);
 4062        } else {
 4063
 4064        }
 4065        }
 4066      }
 4067      }
 4068    }
 4069    }
 4070  }
 4071  }
 4072  {
 4073#line 191
 4074  __cil_tmp61 = 0 + 24;
 4075#line 191
 4076  __cil_tmp62 = (unsigned long )part;
 4077#line 191
 4078  __cil_tmp63 = __cil_tmp62 + __cil_tmp61;
 4079#line 191
 4080  __cil_tmp64 = *((struct mtd_info **)__cil_tmp63);
 4081#line 191
 4082  __cil_tmp65 = (unsigned long )__cil_tmp64;
 4083#line 191
 4084  __cil_tmp66 = __cil_tmp65 + 16;
 4085#line 191
 4086  __cil_tmp67 = *((uint32_t *)__cil_tmp66);
 4087#line 191
 4088  __cil_tmp68 = (unsigned long )(& header) + 23;
 4089#line 191
 4090  __cil_tmp69 = *((uint8_t *)__cil_tmp68);
 4091#line 191
 4092  __cil_tmp70 = (int )__cil_tmp69;
 4093#line 191
 4094  __cil_tmp71 = 1 << __cil_tmp70;
 4095#line 191
 4096  __cil_tmp72 = (uint32_t )__cil_tmp71;
 4097#line 191
 4098  if (__cil_tmp72 != __cil_tmp67) {
 4099    {
 4100#line 192
 4101    __cil_tmp73 = (unsigned long )(& header) + 23;
 4102#line 192
 4103    __cil_tmp74 = *((uint8_t *)__cil_tmp73);
 4104#line 192
 4105    __cil_tmp75 = (int )__cil_tmp74;
 4106#line 192
 4107    __cil_tmp76 = 1 << __cil_tmp75;
 4108#line 192
 4109    __cil_tmp77 = 0 + 24;
 4110#line 192
 4111    __cil_tmp78 = (unsigned long )part;
 4112#line 192
 4113    __cil_tmp79 = __cil_tmp78 + __cil_tmp77;
 4114#line 192
 4115    __cil_tmp80 = *((struct mtd_info **)__cil_tmp79);
 4116#line 192
 4117    __cil_tmp81 = (unsigned long )__cil_tmp80;
 4118#line 192
 4119    __cil_tmp82 = __cil_tmp81 + 16;
 4120#line 192
 4121    __cil_tmp83 = *((uint32_t *)__cil_tmp82);
 4122#line 192
 4123    printk("<5>ftl: FTL EraseUnitSize %x != MTD erasesize %x\n", __cil_tmp76, __cil_tmp83);
 4124    }
 4125#line 194
 4126    return (-1);
 4127  } else {
 4128
 4129  }
 4130  }
 4131#line 196
 4132  __cil_tmp84 = (unsigned long )part;
 4133#line 196
 4134  __cil_tmp85 = __cil_tmp84 + 280;
 4135#line 196
 4136  __cil_tmp86 = & header;
 4137#line 196
 4138  *((erase_unit_header_t *)__cil_tmp85) = *__cil_tmp86;
 4139#line 197
 4140  return (0);
 4141}
 4142}
 4143#line 200 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 4144static int build_maps(partition_t *part ) 
 4145{ erase_unit_header_t header ;
 4146  uint16_t xvalid ;
 4147  uint16_t xtrans ;
 4148  uint16_t i ;
 4149  unsigned int blocks ;
 4150  unsigned int j ;
 4151  int hdr_ok ;
 4152  int ret ;
 4153  ssize_t retval ;
 4154  loff_t offset ;
 4155  void *tmp___7 ;
 4156  void *tmp___8 ;
 4157  int tmp___9 ;
 4158  void *tmp___10 ;
 4159  void *tmp___11 ;
 4160  unsigned long __cil_tmp17 ;
 4161  unsigned long __cil_tmp18 ;
 4162  unsigned long __cil_tmp19 ;
 4163  unsigned long __cil_tmp20 ;
 4164  unsigned long __cil_tmp21 ;
 4165  uint8_t __cil_tmp22 ;
 4166  int __cil_tmp23 ;
 4167  unsigned long __cil_tmp24 ;
 4168  unsigned long __cil_tmp25 ;
 4169  unsigned long __cil_tmp26 ;
 4170  uint16_t __cil_tmp27 ;
 4171  int __cil_tmp28 ;
 4172  int __cil_tmp29 ;
 4173  unsigned long __cil_tmp30 ;
 4174  unsigned long __cil_tmp31 ;
 4175  uint16_t __cil_tmp32 ;
 4176  unsigned long __cil_tmp33 ;
 4177  unsigned long __cil_tmp34 ;
 4178  unsigned long __cil_tmp35 ;
 4179  unsigned long __cil_tmp36 ;
 4180  unsigned long __cil_tmp37 ;
 4181  unsigned long __cil_tmp38 ;
 4182  struct eun_info_t *__cil_tmp39 ;
 4183  unsigned long __cil_tmp40 ;
 4184  unsigned long __cil_tmp41 ;
 4185  uint16_t __cil_tmp42 ;
 4186  int __cil_tmp43 ;
 4187  int __cil_tmp44 ;
 4188  unsigned long __cil_tmp45 ;
 4189  unsigned long __cil_tmp46 ;
 4190  struct eun_info_t *__cil_tmp47 ;
 4191  struct eun_info_t *__cil_tmp48 ;
 4192  int __cil_tmp49 ;
 4193  int __cil_tmp50 ;
 4194  unsigned long __cil_tmp51 ;
 4195  unsigned long __cil_tmp52 ;
 4196  unsigned long __cil_tmp53 ;
 4197  uint8_t __cil_tmp54 ;
 4198  unsigned long __cil_tmp55 ;
 4199  unsigned long __cil_tmp56 ;
 4200  unsigned long __cil_tmp57 ;
 4201  unsigned long __cil_tmp58 ;
 4202  unsigned long __cil_tmp59 ;
 4203  unsigned long __cil_tmp60 ;
 4204  struct xfer_info_t *__cil_tmp61 ;
 4205  unsigned long __cil_tmp62 ;
 4206  unsigned long __cil_tmp63 ;
 4207  unsigned long __cil_tmp64 ;
 4208  uint16_t __cil_tmp65 ;
 4209  int __cil_tmp66 ;
 4210  int __cil_tmp67 ;
 4211  unsigned long __cil_tmp68 ;
 4212  unsigned long __cil_tmp69 ;
 4213  unsigned long __cil_tmp70 ;
 4214  uint8_t __cil_tmp71 ;
 4215  int __cil_tmp72 ;
 4216  unsigned long __cil_tmp73 ;
 4217  unsigned long __cil_tmp74 ;
 4218  unsigned long __cil_tmp75 ;
 4219  uint16_t __cil_tmp76 ;
 4220  int __cil_tmp77 ;
 4221  int __cil_tmp78 ;
 4222  int __cil_tmp79 ;
 4223  int __cil_tmp80 ;
 4224  unsigned long __cil_tmp81 ;
 4225  unsigned long __cil_tmp82 ;
 4226  unsigned long __cil_tmp83 ;
 4227  struct mtd_info *__cil_tmp84 ;
 4228  size_t *__cil_tmp85 ;
 4229  unsigned char *__cil_tmp86 ;
 4230  unsigned long __cil_tmp87 ;
 4231  unsigned long __cil_tmp88 ;
 4232  unsigned long __cil_tmp89 ;
 4233  uint8_t *__cil_tmp90 ;
 4234  uint8_t *__cil_tmp91 ;
 4235  char const   *__cil_tmp92 ;
 4236  unsigned long __cil_tmp93 ;
 4237  unsigned long __cil_tmp94 ;
 4238  uint16_t __cil_tmp95 ;
 4239  int __cil_tmp96 ;
 4240  unsigned long __cil_tmp97 ;
 4241  uint16_t __cil_tmp98 ;
 4242  int __cil_tmp99 ;
 4243  unsigned long __cil_tmp100 ;
 4244  uint16_t __cil_tmp101 ;
 4245  unsigned long __cil_tmp102 ;
 4246  unsigned long __cil_tmp103 ;
 4247  struct eun_info_t *__cil_tmp104 ;
 4248  struct eun_info_t *__cil_tmp105 ;
 4249  uint32_t __cil_tmp106 ;
 4250  unsigned long __cil_tmp107 ;
 4251  uint16_t __cil_tmp108 ;
 4252  unsigned long __cil_tmp109 ;
 4253  unsigned long __cil_tmp110 ;
 4254  struct eun_info_t *__cil_tmp111 ;
 4255  struct eun_info_t *__cil_tmp112 ;
 4256  unsigned long __cil_tmp113 ;
 4257  uint16_t __cil_tmp114 ;
 4258  unsigned long __cil_tmp115 ;
 4259  unsigned long __cil_tmp116 ;
 4260  struct eun_info_t *__cil_tmp117 ;
 4261  struct eun_info_t *__cil_tmp118 ;
 4262  unsigned long __cil_tmp119 ;
 4263  unsigned long __cil_tmp120 ;
 4264  unsigned long __cil_tmp121 ;
 4265  int __cil_tmp122 ;
 4266  int __cil_tmp123 ;
 4267  unsigned long __cil_tmp124 ;
 4268  unsigned long __cil_tmp125 ;
 4269  unsigned long __cil_tmp126 ;
 4270  uint8_t __cil_tmp127 ;
 4271  int __cil_tmp128 ;
 4272  int __cil_tmp129 ;
 4273  unsigned long __cil_tmp130 ;
 4274  uint16_t __cil_tmp131 ;
 4275  int __cil_tmp132 ;
 4276  unsigned long __cil_tmp133 ;
 4277  unsigned long __cil_tmp134 ;
 4278  struct xfer_info_t *__cil_tmp135 ;
 4279  struct xfer_info_t *__cil_tmp136 ;
 4280  unsigned long __cil_tmp137 ;
 4281  unsigned long __cil_tmp138 ;
 4282  unsigned long __cil_tmp139 ;
 4283  unsigned long __cil_tmp140 ;
 4284  struct xfer_info_t *__cil_tmp141 ;
 4285  struct xfer_info_t *__cil_tmp142 ;
 4286  unsigned long __cil_tmp143 ;
 4287  unsigned long __cil_tmp144 ;
 4288  unsigned long __cil_tmp145 ;
 4289  unsigned long __cil_tmp146 ;
 4290  unsigned long __cil_tmp147 ;
 4291  struct xfer_info_t *__cil_tmp148 ;
 4292  struct xfer_info_t *__cil_tmp149 ;
 4293  unsigned long __cil_tmp150 ;
 4294  unsigned long __cil_tmp151 ;
 4295  unsigned long __cil_tmp152 ;
 4296  unsigned long __cil_tmp153 ;
 4297  struct xfer_info_t *__cil_tmp154 ;
 4298  struct xfer_info_t *__cil_tmp155 ;
 4299  unsigned long __cil_tmp156 ;
 4300  unsigned long __cil_tmp157 ;
 4301  unsigned long __cil_tmp158 ;
 4302  unsigned long __cil_tmp159 ;
 4303  unsigned long __cil_tmp160 ;
 4304  unsigned long __cil_tmp161 ;
 4305  unsigned long __cil_tmp162 ;
 4306  struct xfer_info_t *__cil_tmp163 ;
 4307  struct xfer_info_t *__cil_tmp164 ;
 4308  unsigned long __cil_tmp165 ;
 4309  unsigned long __cil_tmp166 ;
 4310  unsigned long __cil_tmp167 ;
 4311  unsigned long __cil_tmp168 ;
 4312  struct xfer_info_t *__cil_tmp169 ;
 4313  struct xfer_info_t *__cil_tmp170 ;
 4314  unsigned long __cil_tmp171 ;
 4315  unsigned long __cil_tmp172 ;
 4316  unsigned long __cil_tmp173 ;
 4317  unsigned long __cil_tmp174 ;
 4318  unsigned long __cil_tmp175 ;
 4319  unsigned long __cil_tmp176 ;
 4320  unsigned long __cil_tmp177 ;
 4321  struct xfer_info_t *__cil_tmp178 ;
 4322  struct xfer_info_t *__cil_tmp179 ;
 4323  int __cil_tmp180 ;
 4324  int __cil_tmp181 ;
 4325  int __cil_tmp182 ;
 4326  int __cil_tmp183 ;
 4327  erase_unit_header_t *__cil_tmp184 ;
 4328  unsigned long __cil_tmp185 ;
 4329  unsigned long __cil_tmp186 ;
 4330  unsigned long __cil_tmp187 ;
 4331  uint8_t __cil_tmp188 ;
 4332  int __cil_tmp189 ;
 4333  int __cil_tmp190 ;
 4334  unsigned long __cil_tmp191 ;
 4335  uint16_t __cil_tmp192 ;
 4336  int __cil_tmp193 ;
 4337  int __cil_tmp194 ;
 4338  int __cil_tmp195 ;
 4339  int __cil_tmp196 ;
 4340  unsigned long __cil_tmp197 ;
 4341  uint8_t __cil_tmp198 ;
 4342  int __cil_tmp199 ;
 4343  unsigned long __cil_tmp200 ;
 4344  uint32_t __cil_tmp201 ;
 4345  unsigned long __cil_tmp202 ;
 4346  unsigned long __cil_tmp203 ;
 4347  unsigned long __cil_tmp204 ;
 4348  unsigned long __cil_tmp205 ;
 4349  unsigned long __cil_tmp206 ;
 4350  unsigned long __cil_tmp207 ;
 4351  uint32_t *__cil_tmp208 ;
 4352  unsigned long __cil_tmp209 ;
 4353  unsigned long __cil_tmp210 ;
 4354  uint32_t *__cil_tmp211 ;
 4355  void *__cil_tmp212 ;
 4356  unsigned long __cil_tmp213 ;
 4357  unsigned long __cil_tmp214 ;
 4358  unsigned long __cil_tmp215 ;
 4359  unsigned long __cil_tmp216 ;
 4360  unsigned long __cil_tmp217 ;
 4361  uint8_t __cil_tmp218 ;
 4362  int __cil_tmp219 ;
 4363  unsigned long __cil_tmp220 ;
 4364  uint8_t __cil_tmp221 ;
 4365  int __cil_tmp222 ;
 4366  int __cil_tmp223 ;
 4367  int __cil_tmp224 ;
 4368  unsigned long __cil_tmp225 ;
 4369  unsigned long __cil_tmp226 ;
 4370  uint32_t __cil_tmp227 ;
 4371  unsigned long __cil_tmp228 ;
 4372  unsigned long __cil_tmp229 ;
 4373  unsigned long __cil_tmp230 ;
 4374  unsigned long __cil_tmp231 ;
 4375  unsigned long __cil_tmp232 ;
 4376  unsigned long __cil_tmp233 ;
 4377  uint32_t *__cil_tmp234 ;
 4378  unsigned long __cil_tmp235 ;
 4379  unsigned long __cil_tmp236 ;
 4380  unsigned long __cil_tmp237 ;
 4381  unsigned long __cil_tmp238 ;
 4382  unsigned long __cil_tmp239 ;
 4383  unsigned long __cil_tmp240 ;
 4384  uint16_t __cil_tmp241 ;
 4385  int __cil_tmp242 ;
 4386  int __cil_tmp243 ;
 4387  unsigned long __cil_tmp244 ;
 4388  unsigned long __cil_tmp245 ;
 4389  struct eun_info_t *__cil_tmp246 ;
 4390  struct eun_info_t *__cil_tmp247 ;
 4391  unsigned long __cil_tmp248 ;
 4392  unsigned long __cil_tmp249 ;
 4393  unsigned long __cil_tmp250 ;
 4394  unsigned long __cil_tmp251 ;
 4395  struct eun_info_t *__cil_tmp252 ;
 4396  struct eun_info_t *__cil_tmp253 ;
 4397  unsigned long __cil_tmp254 ;
 4398  unsigned long __cil_tmp255 ;
 4399  unsigned long __cil_tmp256 ;
 4400  uint32_t __cil_tmp257 ;
 4401  unsigned long __cil_tmp258 ;
 4402  unsigned long __cil_tmp259 ;
 4403  struct eun_info_t *__cil_tmp260 ;
 4404  struct eun_info_t *__cil_tmp261 ;
 4405  uint32_t __cil_tmp262 ;
 4406  uint32_t __cil_tmp263 ;
 4407  unsigned long __cil_tmp264 ;
 4408  unsigned long __cil_tmp265 ;
 4409  unsigned long __cil_tmp266 ;
 4410  struct mtd_info *__cil_tmp267 ;
 4411  unsigned long __cil_tmp268 ;
 4412  unsigned long __cil_tmp269 ;
 4413  uint32_t __cil_tmp270 ;
 4414  unsigned long __cil_tmp271 ;
 4415  unsigned long __cil_tmp272 ;
 4416  size_t *__cil_tmp273 ;
 4417  unsigned long __cil_tmp274 ;
 4418  unsigned long __cil_tmp275 ;
 4419  uint32_t *__cil_tmp276 ;
 4420  unsigned char *__cil_tmp277 ;
 4421  unsigned long __cil_tmp278 ;
 4422  unsigned long __cil_tmp279 ;
 4423  uint32_t __cil_tmp280 ;
 4424  unsigned long __cil_tmp281 ;
 4425  unsigned long __cil_tmp282 ;
 4426  uint32_t *__cil_tmp283 ;
 4427  uint32_t *__cil_tmp284 ;
 4428  uint32_t __cil_tmp285 ;
 4429  unsigned long __cil_tmp286 ;
 4430  unsigned long __cil_tmp287 ;
 4431  struct eun_info_t *__cil_tmp288 ;
 4432  struct eun_info_t *__cil_tmp289 ;
 4433  unsigned long __cil_tmp290 ;
 4434  unsigned long __cil_tmp291 ;
 4435  unsigned long __cil_tmp292 ;
 4436  unsigned long __cil_tmp293 ;
 4437  struct eun_info_t *__cil_tmp294 ;
 4438  struct eun_info_t *__cil_tmp295 ;
 4439  unsigned long __cil_tmp296 ;
 4440  unsigned long __cil_tmp297 ;
 4441  uint32_t __cil_tmp298 ;
 4442  unsigned long __cil_tmp299 ;
 4443  unsigned long __cil_tmp300 ;
 4444  unsigned long __cil_tmp301 ;
 4445  unsigned long __cil_tmp302 ;
 4446  uint32_t __cil_tmp303 ;
 4447  unsigned long __cil_tmp304 ;
 4448  unsigned long __cil_tmp305 ;
 4449  uint32_t *__cil_tmp306 ;
 4450  uint32_t *__cil_tmp307 ;
 4451  uint32_t __cil_tmp308 ;
 4452  unsigned int __cil_tmp309 ;
 4453  unsigned long __cil_tmp310 ;
 4454  unsigned long __cil_tmp311 ;
 4455  uint32_t *__cil_tmp312 ;
 4456  uint32_t *__cil_tmp313 ;
 4457  uint32_t __cil_tmp314 ;
 4458  __u32 __cil_tmp315 ;
 4459  unsigned long __cil_tmp316 ;
 4460  unsigned long __cil_tmp317 ;
 4461  uint32_t *__cil_tmp318 ;
 4462  uint32_t *__cil_tmp319 ;
 4463  uint32_t __cil_tmp320 ;
 4464  __u32 __cil_tmp321 ;
 4465  unsigned long __cil_tmp322 ;
 4466  unsigned long __cil_tmp323 ;
 4467  uint32_t *__cil_tmp324 ;
 4468  uint32_t *__cil_tmp325 ;
 4469  unsigned long __cil_tmp326 ;
 4470  uint8_t __cil_tmp327 ;
 4471  int __cil_tmp328 ;
 4472  unsigned int __cil_tmp329 ;
 4473  unsigned long __cil_tmp330 ;
 4474  uint8_t __cil_tmp331 ;
 4475  int __cil_tmp332 ;
 4476  int __cil_tmp333 ;
 4477  int __cil_tmp334 ;
 4478  unsigned int __cil_tmp335 ;
 4479  unsigned long __cil_tmp336 ;
 4480  unsigned long __cil_tmp337 ;
 4481  uint32_t *__cil_tmp338 ;
 4482  uint32_t *__cil_tmp339 ;
 4483  uint32_t __cil_tmp340 ;
 4484  unsigned long __cil_tmp341 ;
 4485  unsigned long __cil_tmp342 ;
 4486  struct eun_info_t *__cil_tmp343 ;
 4487  struct eun_info_t *__cil_tmp344 ;
 4488  unsigned long __cil_tmp345 ;
 4489  unsigned long __cil_tmp346 ;
 4490  unsigned long __cil_tmp347 ;
 4491  unsigned long __cil_tmp348 ;
 4492  struct eun_info_t *__cil_tmp349 ;
 4493  struct eun_info_t *__cil_tmp350 ;
 4494  unsigned long __cil_tmp351 ;
 4495  unsigned long __cil_tmp352 ;
 4496  uint32_t __cil_tmp353 ;
 4497  unsigned long __cil_tmp354 ;
 4498  unsigned long __cil_tmp355 ;
 4499  uint32_t *__cil_tmp356 ;
 4500  uint32_t *__cil_tmp357 ;
 4501  uint32_t __cil_tmp358 ;
 4502  unsigned long __cil_tmp359 ;
 4503  unsigned long __cil_tmp360 ;
 4504  struct eun_info_t *__cil_tmp361 ;
 4505  struct eun_info_t *__cil_tmp362 ;
 4506  unsigned long __cil_tmp363 ;
 4507  unsigned long __cil_tmp364 ;
 4508  unsigned long __cil_tmp365 ;
 4509  unsigned long __cil_tmp366 ;
 4510  struct eun_info_t *__cil_tmp367 ;
 4511  struct eun_info_t *__cil_tmp368 ;
 4512  unsigned long __cil_tmp369 ;
 4513  unsigned long __cil_tmp370 ;
 4514  uint32_t __cil_tmp371 ;
 4515  int __cil_tmp372 ;
 4516  int __cil_tmp373 ;
 4517  unsigned long __cil_tmp374 ;
 4518  unsigned long __cil_tmp375 ;
 4519  uint32_t *__cil_tmp376 ;
 4520  void const   *__cil_tmp377 ;
 4521  unsigned long __cil_tmp378 ;
 4522  unsigned long __cil_tmp379 ;
 4523  uint32_t *__cil_tmp380 ;
 4524  void const   *__cil_tmp381 ;
 4525  unsigned long __cil_tmp382 ;
 4526  unsigned long __cil_tmp383 ;
 4527  struct xfer_info_t *__cil_tmp384 ;
 4528  void const   *__cil_tmp385 ;
 4529  unsigned long __cil_tmp386 ;
 4530  unsigned long __cil_tmp387 ;
 4531  struct eun_info_t *__cil_tmp388 ;
 4532  void const   *__cil_tmp389 ;
 4533
 4534  {
 4535  {
 4536#line 205
 4537  ret = -1;
 4538#line 210
 4539  __cil_tmp17 = (unsigned long )part;
 4540#line 210
 4541  __cil_tmp18 = __cil_tmp17 + 272;
 4542#line 210
 4543  __cil_tmp19 = 280 + 15;
 4544#line 210
 4545  __cil_tmp20 = (unsigned long )part;
 4546#line 210
 4547  __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
 4548#line 210
 4549  __cil_tmp22 = *((uint8_t *)__cil_tmp21);
 4550#line 210
 4551  __cil_tmp23 = (int )__cil_tmp22;
 4552#line 210
 4553  __cil_tmp24 = 280 + 26;
 4554#line 210
 4555  __cil_tmp25 = (unsigned long )part;
 4556#line 210
 4557  __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
 4558#line 210
 4559  __cil_tmp27 = *((uint16_t *)__cil_tmp26);
 4560#line 210
 4561  __cil_tmp28 = (int )__cil_tmp27;
 4562#line 210
 4563  __cil_tmp29 = __cil_tmp28 - __cil_tmp23;
 4564#line 210
 4565  *((uint16_t *)__cil_tmp18) = (uint16_t )__cil_tmp29;
 4566#line 212
 4567  __cil_tmp30 = (unsigned long )part;
 4568#line 212
 4569  __cil_tmp31 = __cil_tmp30 + 272;
 4570#line 212
 4571  __cil_tmp32 = *((uint16_t *)__cil_tmp31);
 4572#line 212
 4573  __cil_tmp33 = (unsigned long )__cil_tmp32;
 4574#line 212
 4575  __cil_tmp34 = __cil_tmp33 * 16UL;
 4576#line 212
 4577  tmp___7 = kmalloc(__cil_tmp34, 208U);
 4578#line 212
 4579  __cil_tmp35 = (unsigned long )part;
 4580#line 212
 4581  __cil_tmp36 = __cil_tmp35 + 240;
 4582#line 212
 4583  *((struct eun_info_t **)__cil_tmp36) = (struct eun_info_t *)tmp___7;
 4584  }
 4585  {
 4586#line 214
 4587  __cil_tmp37 = (unsigned long )part;
 4588#line 214
 4589  __cil_tmp38 = __cil_tmp37 + 240;
 4590#line 214
 4591  __cil_tmp39 = *((struct eun_info_t **)__cil_tmp38);
 4592#line 214
 4593  if (! __cil_tmp39) {
 4594#line 215
 4595    goto out;
 4596  } else {
 4597
 4598  }
 4599  }
 4600#line 216
 4601  i = (uint16_t )0;
 4602  {
 4603#line 216
 4604  while (1) {
 4605    while_continue: /* CIL Label */ ;
 4606    {
 4607#line 216
 4608    __cil_tmp40 = (unsigned long )part;
 4609#line 216
 4610    __cil_tmp41 = __cil_tmp40 + 272;
 4611#line 216
 4612    __cil_tmp42 = *((uint16_t *)__cil_tmp41);
 4613#line 216
 4614    __cil_tmp43 = (int )__cil_tmp42;
 4615#line 216
 4616    __cil_tmp44 = (int )i;
 4617#line 216
 4618    if (__cil_tmp44 < __cil_tmp43) {
 4619
 4620    } else {
 4621#line 216
 4622      goto while_break;
 4623    }
 4624    }
 4625#line 217
 4626    __cil_tmp45 = (unsigned long )part;
 4627#line 217
 4628    __cil_tmp46 = __cil_tmp45 + 240;
 4629#line 217
 4630    __cil_tmp47 = *((struct eun_info_t **)__cil_tmp46);
 4631#line 217
 4632    __cil_tmp48 = __cil_tmp47 + i;
 4633#line 217
 4634    *((uint32_t *)__cil_tmp48) = 4294967295U;
 4635#line 216
 4636    __cil_tmp49 = (int )i;
 4637#line 216
 4638    __cil_tmp50 = __cil_tmp49 + 1;
 4639#line 216
 4640    i = (uint16_t )__cil_tmp50;
 4641  }
 4642  while_break: /* CIL Label */ ;
 4643  }
 4644  {
 4645#line 218
 4646  __cil_tmp51 = 280 + 15;
 4647#line 218
 4648  __cil_tmp52 = (unsigned long )part;
 4649#line 218
 4650  __cil_tmp53 = __cil_tmp52 + __cil_tmp51;
 4651#line 218
 4652  __cil_tmp54 = *((uint8_t *)__cil_tmp53);
 4653#line 218
 4654  __cil_tmp55 = (unsigned long )__cil_tmp54;
 4655#line 218
 4656  __cil_tmp56 = __cil_tmp55 * 12UL;
 4657#line 218
 4658  tmp___8 = kmalloc(__cil_tmp56, 208U);
 4659#line 218
 4660  __cil_tmp57 = (unsigned long )part;
 4661#line 218
 4662  __cil_tmp58 = __cil_tmp57 + 248;
 4663#line 218
 4664  *((struct xfer_info_t **)__cil_tmp58) = (struct xfer_info_t *)tmp___8;
 4665  }
 4666  {
 4667#line 221
 4668  __cil_tmp59 = (unsigned long )part;
 4669#line 221
 4670  __cil_tmp60 = __cil_tmp59 + 248;
 4671#line 221
 4672  __cil_tmp61 = *((struct xfer_info_t **)__cil_tmp60);
 4673#line 221
 4674  if (! __cil_tmp61) {
 4675#line 222
 4676    goto out_EUNInfo;
 4677  } else {
 4678
 4679  }
 4680  }
 4681#line 224
 4682  xtrans = (uint16_t )0;
 4683#line 224
 4684  xvalid = xtrans;
 4685#line 225
 4686  i = (uint16_t )0;
 4687  {
 4688#line 225
 4689  while (1) {
 4690    while_continue___0: /* CIL Label */ ;
 4691    {
 4692#line 225
 4693    __cil_tmp62 = 280 + 26;
 4694#line 225
 4695    __cil_tmp63 = (unsigned long )part;
 4696#line 225
 4697    __cil_tmp64 = __cil_tmp63 + __cil_tmp62;
 4698#line 225
 4699    __cil_tmp65 = *((uint16_t *)__cil_tmp64);
 4700#line 225
 4701    __cil_tmp66 = (int )__cil_tmp65;
 4702#line 225
 4703    __cil_tmp67 = (int )i;
 4704#line 225
 4705    if (__cil_tmp67 < __cil_tmp66) {
 4706
 4707    } else {
 4708#line 225
 4709      goto while_break___0;
 4710    }
 4711    }
 4712    {
 4713#line 226
 4714    __cil_tmp68 = 280 + 23;
 4715#line 226
 4716    __cil_tmp69 = (unsigned long )part;
 4717#line 226
 4718    __cil_tmp70 = __cil_tmp69 + __cil_tmp68;
 4719#line 226
 4720    __cil_tmp71 = *((uint8_t *)__cil_tmp70);
 4721#line 226
 4722    __cil_tmp72 = (int )__cil_tmp71;
 4723#line 226
 4724    __cil_tmp73 = 280 + 24;
 4725#line 226
 4726    __cil_tmp74 = (unsigned long )part;
 4727#line 226
 4728    __cil_tmp75 = __cil_tmp74 + __cil_tmp73;
 4729#line 226
 4730    __cil_tmp76 = *((uint16_t *)__cil_tmp75);
 4731#line 226
 4732    __cil_tmp77 = (int )__cil_tmp76;
 4733#line 226
 4734    __cil_tmp78 = (int )i;
 4735#line 226
 4736    __cil_tmp79 = __cil_tmp78 + __cil_tmp77;
 4737#line 226
 4738    __cil_tmp80 = __cil_tmp79 << __cil_tmp72;
 4739#line 226
 4740    offset = (loff_t )__cil_tmp80;
 4741#line 228
 4742    __cil_tmp81 = 0 + 24;
 4743#line 228
 4744    __cil_tmp82 = (unsigned long )part;
 4745#line 228
 4746    __cil_tmp83 = __cil_tmp82 + __cil_tmp81;
 4747#line 228
 4748    __cil_tmp84 = *((struct mtd_info **)__cil_tmp83);
 4749#line 228
 4750    __cil_tmp85 = (size_t *)(& retval);
 4751#line 228
 4752    __cil_tmp86 = (unsigned char *)(& header);
 4753#line 228
 4754    ret = mtd_read(__cil_tmp84, offset, 68UL, __cil_tmp85, __cil_tmp86);
 4755    }
 4756#line 231
 4757    if (ret) {
 4758#line 232
 4759      goto out_XferInfo;
 4760    } else {
 4761
 4762    }
 4763    {
 4764#line 234
 4765    ret = -1;
 4766#line 236
 4767    __cil_tmp87 = 0 * 1UL;
 4768#line 236
 4769    __cil_tmp88 = 5 + __cil_tmp87;
 4770#line 236
 4771    __cil_tmp89 = (unsigned long )(& header) + __cil_tmp88;
 4772#line 236
 4773    __cil_tmp90 = (uint8_t *)__cil_tmp89;
 4774#line 236
 4775    __cil_tmp91 = __cil_tmp90 + 3;
 4776#line 236
 4777    __cil_tmp92 = (char const   *)__cil_tmp91;
 4778#line 236
 4779    tmp___9 = strcmp(__cil_tmp92, "FTL100");
 4780#line 236
 4781    hdr_ok = tmp___9 == 0;
 4782    }
 4783#line 237
 4784    if (hdr_ok) {
 4785      {
 4786#line 237
 4787      __cil_tmp93 = (unsigned long )part;
 4788#line 237
 4789      __cil_tmp94 = __cil_tmp93 + 272;
 4790#line 237
 4791      __cil_tmp95 = *((uint16_t *)__cil_tmp94);
 4792#line 237
 4793      __cil_tmp96 = (int )__cil_tmp95;
 4794#line 237
 4795      __cil_tmp97 = (unsigned long )(& header) + 20;
 4796#line 237
 4797      __cil_tmp98 = *((uint16_t *)__cil_tmp97);
 4798#line 237
 4799      __cil_tmp99 = (int )__cil_tmp98;
 4800#line 237
 4801      if (__cil_tmp99 < __cil_tmp96) {
 4802        {
 4803#line 237
 4804        __cil_tmp100 = (unsigned long )(& header) + 20;
 4805#line 237
 4806        __cil_tmp101 = *((uint16_t *)__cil_tmp100);
 4807#line 237
 4808        __cil_tmp102 = (unsigned long )part;
 4809#line 237
 4810        __cil_tmp103 = __cil_tmp102 + 240;
 4811#line 237
 4812        __cil_tmp104 = *((struct eun_info_t **)__cil_tmp103);
 4813#line 237
 4814        __cil_tmp105 = __cil_tmp104 + __cil_tmp101;
 4815#line 237
 4816        __cil_tmp106 = *((uint32_t *)__cil_tmp105);
 4817#line 237
 4818        if (__cil_tmp106 == 4294967295U) {
 4819#line 239
 4820          __cil_tmp107 = (unsigned long )(& header) + 20;
 4821#line 239
 4822          __cil_tmp108 = *((uint16_t *)__cil_tmp107);
 4823#line 239
 4824          __cil_tmp109 = (unsigned long )part;
 4825#line 239
 4826          __cil_tmp110 = __cil_tmp109 + 240;
 4827#line 239
 4828          __cil_tmp111 = *((struct eun_info_t **)__cil_tmp110);
 4829#line 239
 4830          __cil_tmp112 = __cil_tmp111 + __cil_tmp108;
 4831#line 239
 4832          *((uint32_t *)__cil_tmp112) = (uint32_t )offset;
 4833#line 240
 4834          __cil_tmp113 = (unsigned long )(& header) + 20;
 4835#line 240
 4836          __cil_tmp114 = *((uint16_t *)__cil_tmp113);
 4837#line 240
 4838          __cil_tmp115 = (unsigned long )part;
 4839#line 240
 4840          __cil_tmp116 = __cil_tmp115 + 240;
 4841#line 240
 4842          __cil_tmp117 = *((struct eun_info_t **)__cil_tmp116);
 4843#line 240
 4844          __cil_tmp118 = __cil_tmp117 + __cil_tmp114;
 4845#line 240
 4846          __cil_tmp119 = (unsigned long )__cil_tmp118;
 4847#line 240
 4848          __cil_tmp120 = __cil_tmp119 + 4;
 4849#line 240
 4850          __cil_tmp121 = (unsigned long )(& header) + 16;
 4851#line 240
 4852          *((uint32_t *)__cil_tmp120) = *((uint32_t *)__cil_tmp121);
 4853#line 242
 4854          __cil_tmp122 = (int )xvalid;
 4855#line 242
 4856          __cil_tmp123 = __cil_tmp122 + 1;
 4857#line 242
 4858          xvalid = (uint16_t )__cil_tmp123;
 4859        } else {
 4860#line 237
 4861          goto _L___0;
 4862        }
 4863        }
 4864      } else {
 4865#line 237
 4866        goto _L___0;
 4867      }
 4868      }
 4869    } else {
 4870      _L___0: /* CIL Label */ 
 4871      {
 4872#line 244
 4873      __cil_tmp124 = 280 + 15;
 4874#line 244
 4875      __cil_tmp125 = (unsigned long )part;
 4876#line 244
 4877      __cil_tmp126 = __cil_tmp125 + __cil_tmp124;
 4878#line 244
 4879      __cil_tmp127 = *((uint8_t *)__cil_tmp126);
 4880#line 244
 4881      __cil_tmp128 = (int )__cil_tmp127;
 4882#line 244
 4883      __cil_tmp129 = (int )xtrans;
 4884#line 244
 4885      if (__cil_tmp129 == __cil_tmp128) {
 4886        {
 4887#line 245
 4888        printk("<5>ftl_cs: format error: too many transfer units!\n");
 4889        }
 4890#line 247
 4891        goto out_XferInfo;
 4892      } else {
 4893
 4894      }
 4895      }
 4896#line 249
 4897      if (hdr_ok) {
 4898        {
 4899#line 249
 4900        __cil_tmp130 = (unsigned long )(& header) + 20;
 4901#line 249
 4902        __cil_tmp131 = *((uint16_t *)__cil_tmp130);
 4903#line 249
 4904        __cil_tmp132 = (int )__cil_tmp131;
 4905#line 249
 4906        if (__cil_tmp132 == 65535) {
 4907#line 250
 4908          __cil_tmp133 = (unsigned long )part;
 4909#line 250
 4910          __cil_tmp134 = __cil_tmp133 + 248;
 4911#line 250
 4912          __cil_tmp135 = *((struct xfer_info_t **)__cil_tmp134);
 4913#line 250
 4914          __cil_tmp136 = __cil_tmp135 + xtrans;
 4915#line 250
 4916          __cil_tmp137 = (unsigned long )__cil_tmp136;
 4917#line 250
 4918          __cil_tmp138 = __cil_tmp137 + 8;
 4919#line 250
 4920          *((uint16_t *)__cil_tmp138) = (uint16_t )3;
 4921#line 251
 4922          __cil_tmp139 = (unsigned long )part;
 4923#line 251
 4924          __cil_tmp140 = __cil_tmp139 + 248;
 4925#line 251
 4926          __cil_tmp141 = *((struct xfer_info_t **)__cil_tmp140);
 4927#line 251
 4928          __cil_tmp142 = __cil_tmp141 + xtrans;
 4929#line 251
 4930          __cil_tmp143 = (unsigned long )__cil_tmp142;
 4931#line 251
 4932          __cil_tmp144 = __cil_tmp143 + 4;
 4933#line 251
 4934          __cil_tmp145 = (unsigned long )(& header) + 16;
 4935#line 251
 4936          *((uint32_t *)__cil_tmp144) = *((uint32_t *)__cil_tmp145);
 4937        } else {
 4938#line 253
 4939          __cil_tmp146 = (unsigned long )part;
 4940#line 253
 4941          __cil_tmp147 = __cil_tmp146 + 248;
 4942#line 253
 4943          __cil_tmp148 = *((struct xfer_info_t **)__cil_tmp147);
 4944#line 253
 4945          __cil_tmp149 = __cil_tmp148 + xtrans;
 4946#line 253
 4947          __cil_tmp150 = (unsigned long )__cil_tmp149;
 4948#line 253
 4949          __cil_tmp151 = __cil_tmp150 + 8;
 4950#line 253
 4951          *((uint16_t *)__cil_tmp151) = (uint16_t )0;
 4952#line 255
 4953          __cil_tmp152 = (unsigned long )part;
 4954#line 255
 4955          __cil_tmp153 = __cil_tmp152 + 248;
 4956#line 255
 4957          __cil_tmp154 = *((struct xfer_info_t **)__cil_tmp153);
 4958#line 255
 4959          __cil_tmp155 = __cil_tmp154 + xtrans;
 4960#line 255
 4961          __cil_tmp156 = (unsigned long )__cil_tmp155;
 4962#line 255
 4963          __cil_tmp157 = __cil_tmp156 + 4;
 4964#line 255
 4965          __cil_tmp158 = 280 + 16;
 4966#line 255
 4967          __cil_tmp159 = (unsigned long )part;
 4968#line 255
 4969          __cil_tmp160 = __cil_tmp159 + __cil_tmp158;
 4970#line 255
 4971          *((uint32_t *)__cil_tmp157) = *((uint32_t *)__cil_tmp160);
 4972        }
 4973        }
 4974      } else {
 4975#line 253
 4976        __cil_tmp161 = (unsigned long )part;
 4977#line 253
 4978        __cil_tmp162 = __cil_tmp161 + 248;
 4979#line 253
 4980        __cil_tmp163 = *((struct xfer_info_t **)__cil_tmp162);
 4981#line 253
 4982        __cil_tmp164 = __cil_tmp163 + xtrans;
 4983#line 253
 4984        __cil_tmp165 = (unsigned long )__cil_tmp164;
 4985#line 253
 4986        __cil_tmp166 = __cil_tmp165 + 8;
 4987#line 253
 4988        *((uint16_t *)__cil_tmp166) = (uint16_t )0;
 4989#line 255
 4990        __cil_tmp167 = (unsigned long )part;
 4991#line 255
 4992        __cil_tmp168 = __cil_tmp167 + 248;
 4993#line 255
 4994        __cil_tmp169 = *((struct xfer_info_t **)__cil_tmp168);
 4995#line 255
 4996        __cil_tmp170 = __cil_tmp169 + xtrans;
 4997#line 255
 4998        __cil_tmp171 = (unsigned long )__cil_tmp170;
 4999#line 255
 5000        __cil_tmp172 = __cil_tmp171 + 4;
 5001#line 255
 5002        __cil_tmp173 = 280 + 16;
 5003#line 255
 5004        __cil_tmp174 = (unsigned long )part;
 5005#line 255
 5006        __cil_tmp175 = __cil_tmp174 + __cil_tmp173;
 5007#line 255
 5008        *((uint32_t *)__cil_tmp172) = *((uint32_t *)__cil_tmp175);
 5009      }
 5010#line 258
 5011      __cil_tmp176 = (unsigned long )part;
 5012#line 258
 5013      __cil_tmp177 = __cil_tmp176 + 248;
 5014#line 258
 5015      __cil_tmp178 = *((struct xfer_info_t **)__cil_tmp177);
 5016#line 258
 5017      __cil_tmp179 = __cil_tmp178 + xtrans;
 5018#line 258
 5019      *((uint32_t *)__cil_tmp179) = (uint32_t )offset;
 5020#line 259
 5021      __cil_tmp180 = (int )xtrans;
 5022#line 259
 5023      __cil_tmp181 = __cil_tmp180 + 1;
 5024#line 259
 5025      xtrans = (uint16_t )__cil_tmp181;
 5026    }
 5027#line 225
 5028    __cil_tmp182 = (int )i;
 5029#line 225
 5030    __cil_tmp183 = __cil_tmp182 + 1;
 5031#line 225
 5032    i = (uint16_t )__cil_tmp183;
 5033  }
 5034  while_break___0: /* CIL Label */ ;
 5035  }
 5036#line 263
 5037  __cil_tmp184 = & header;
 5038#line 263
 5039  __cil_tmp185 = (unsigned long )part;
 5040#line 263
 5041  __cil_tmp186 = __cil_tmp185 + 280;
 5042#line 263
 5043  *__cil_tmp184 = *((erase_unit_header_t *)__cil_tmp186);
 5044  {
 5045#line 264
 5046  __cil_tmp187 = (unsigned long )(& header) + 15;
 5047#line 264
 5048  __cil_tmp188 = *((uint8_t *)__cil_tmp187);
 5049#line 264
 5050  __cil_tmp189 = (int )__cil_tmp188;
 5051#line 264
 5052  __cil_tmp190 = (int )xtrans;
 5053#line 264
 5054  if (__cil_tmp190 != __cil_tmp189) {
 5055    {
 5056#line 266
 5057    printk("<5>ftl_cs: format error: erase units don\'t add up!\n");
 5058    }
 5059#line 268
 5060    goto out_XferInfo;
 5061  } else {
 5062    {
 5063#line 264
 5064    __cil_tmp191 = (unsigned long )(& header) + 26;
 5065#line 264
 5066    __cil_tmp192 = *((uint16_t *)__cil_tmp191);
 5067#line 264
 5068    __cil_tmp193 = (int )__cil_tmp192;
 5069#line 264
 5070    __cil_tmp194 = (int )xtrans;
 5071#line 264
 5072    __cil_tmp195 = (int )xvalid;
 5073#line 264
 5074    __cil_tmp196 = __cil_tmp195 + __cil_tmp194;
 5075#line 264
 5076    if (__cil_tmp196 != __cil_tmp193) {
 5077      {
 5078#line 266
 5079      printk("<5>ftl_cs: format error: erase units don\'t add up!\n");
 5080      }
 5081#line 268
 5082      goto out_XferInfo;
 5083    } else {
 5084
 5085    }
 5086    }
 5087  }
 5088  }
 5089  {
 5090#line 272
 5091  __cil_tmp197 = (unsigned long )(& header) + 22;
 5092#line 272
 5093  __cil_tmp198 = *((uint8_t *)__cil_tmp197);
 5094#line 272
 5095  __cil_tmp199 = (int )__cil_tmp198;
 5096#line 272
 5097  __cil_tmp200 = (unsigned long )(& header) + 28;
 5098#line 272
 5099  __cil_tmp201 = *((uint32_t *)__cil_tmp200);
 5100#line 272
 5101  blocks = __cil_tmp201 >> __cil_tmp199;
 5102#line 273
 5103  __cil_tmp202 = (unsigned long )blocks;
 5104#line 273
 5105  __cil_tmp203 = __cil_tmp202 * 4UL;
 5106#line 273
 5107  tmp___10 = vmalloc(__cil_tmp203);
 5108#line 273
 5109  __cil_tmp204 = (unsigned long )part;
 5110#line 273
 5111  __cil_tmp205 = __cil_tmp204 + 216;
 5112#line 273
 5113  *((uint32_t **)__cil_tmp205) = (uint32_t *)tmp___10;
 5114  }
 5115  {
 5116#line 274
 5117  __cil_tmp206 = (unsigned long )part;
 5118#line 274
 5119  __cil_tmp207 = __cil_tmp206 + 216;
 5120#line 274
 5121  __cil_tmp208 = *((uint32_t **)__cil_tmp207);
 5122#line 274
 5123  if (! __cil_tmp208) {
 5124#line 275
 5125    goto out_XferInfo;
 5126  } else {
 5127
 5128  }
 5129  }
 5130  {
 5131#line 277
 5132  __cil_tmp209 = (unsigned long )part;
 5133#line 277
 5134  __cil_tmp210 = __cil_tmp209 + 216;
 5135#line 277
 5136  __cil_tmp211 = *((uint32_t **)__cil_tmp210);
 5137#line 277
 5138  __cil_tmp212 = (void *)__cil_tmp211;
 5139#line 277
 5140  __cil_tmp213 = (unsigned long )blocks;
 5141#line 277
 5142  __cil_tmp214 = __cil_tmp213 * 4UL;
 5143#line 277
 5144  memset(__cil_tmp212, 255, __cil_tmp214);
 5145#line 278
 5146  __cil_tmp215 = (unsigned long )part;
 5147#line 278
 5148  __cil_tmp216 = __cil_tmp215 + 276;
 5149#line 278
 5150  __cil_tmp217 = (unsigned long )(& header) + 22;
 5151#line 278
 5152  __cil_tmp218 = *((uint8_t *)__cil_tmp217);
 5153#line 278
 5154  __cil_tmp219 = (int )__cil_tmp218;
 5155#line 278
 5156  __cil_tmp220 = (unsigned long )(& header) + 23;
 5157#line 278
 5158  __cil_tmp221 = *((uint8_t *)__cil_tmp220);
 5159#line 278
 5160  __cil_tmp222 = (int )__cil_tmp221;
 5161#line 278
 5162  __cil_tmp223 = 1 << __cil_tmp222;
 5163#line 278
 5164  __cil_tmp224 = __cil_tmp223 >> __cil_tmp219;
 5165#line 278
 5166  *((uint32_t *)__cil_tmp216) = (uint32_t )__cil_tmp224;
 5167#line 280
 5168  __cil_tmp225 = (unsigned long )part;
 5169#line 280
 5170  __cil_tmp226 = __cil_tmp225 + 276;
 5171#line 280
 5172  __cil_tmp227 = *((uint32_t *)__cil_tmp226);
 5173#line 280
 5174  __cil_tmp228 = (unsigned long )__cil_tmp227;
 5175#line 280
 5176  __cil_tmp229 = __cil_tmp228 * 4UL;
 5177#line 280
 5178  tmp___11 = kmalloc(__cil_tmp229, 208U);
 5179#line 280
 5180  __cil_tmp230 = (unsigned long )part;
 5181#line 280
 5182  __cil_tmp231 = __cil_tmp230 + 264;
 5183#line 280
 5184  *((uint32_t **)__cil_tmp231) = (uint32_t *)tmp___11;
 5185  }
 5186  {
 5187#line 282
 5188  __cil_tmp232 = (unsigned long )part;
 5189#line 282
 5190  __cil_tmp233 = __cil_tmp232 + 264;
 5191#line 282
 5192  __cil_tmp234 = *((uint32_t **)__cil_tmp233);
 5193#line 282
 5194  if (! __cil_tmp234) {
 5195#line 283
 5196    goto out_VirtualBlockMap;
 5197  } else {
 5198
 5199  }
 5200  }
 5201#line 285
 5202  __cil_tmp235 = (unsigned long )part;
 5203#line 285
 5204  __cil_tmp236 = __cil_tmp235 + 256;
 5205#line 285
 5206  *((uint16_t *)__cil_tmp236) = (uint16_t )65535;
 5207#line 286
 5208  __cil_tmp237 = (unsigned long )part;
 5209#line 286
 5210  __cil_tmp238 = __cil_tmp237 + 232;
 5211#line 286
 5212  *((uint32_t *)__cil_tmp238) = (uint32_t )0;
 5213#line 288
 5214  i = (uint16_t )0;
 5215  {
 5216#line 288
 5217  while (1) {
 5218    while_continue___1: /* CIL Label */ ;
 5219    {
 5220#line 288
 5221    __cil_tmp239 = (unsigned long )part;
 5222#line 288
 5223    __cil_tmp240 = __cil_tmp239 + 272;
 5224#line 288
 5225    __cil_tmp241 = *((uint16_t *)__cil_tmp240);
 5226#line 288
 5227    __cil_tmp242 = (int )__cil_tmp241;
 5228#line 288
 5229    __cil_tmp243 = (int )i;
 5230#line 288
 5231    if (__cil_tmp243 < __cil_tmp242) {
 5232
 5233    } else {
 5234#line 288
 5235      goto while_break___1;
 5236    }
 5237    }
 5238    {
 5239#line 289
 5240    __cil_tmp244 = (unsigned long )part;
 5241#line 289
 5242    __cil_tmp245 = __cil_tmp244 + 240;
 5243#line 289
 5244    __cil_tmp246 = *((struct eun_info_t **)__cil_tmp245);
 5245#line 289
 5246    __cil_tmp247 = __cil_tmp246 + i;
 5247#line 289
 5248    __cil_tmp248 = (unsigned long )__cil_tmp247;
 5249#line 289
 5250    __cil_tmp249 = __cil_tmp248 + 8;
 5251#line 289
 5252    *((uint32_t *)__cil_tmp249) = (uint32_t )0;
 5253#line 290
 5254    __cil_tmp250 = (unsigned long )part;
 5255#line 290
 5256    __cil_tmp251 = __cil_tmp250 + 240;
 5257#line 290
 5258    __cil_tmp252 = *((struct eun_info_t **)__cil_tmp251);
 5259#line 290
 5260    __cil_tmp253 = __cil_tmp252 + i;
 5261#line 290
 5262    __cil_tmp254 = (unsigned long )__cil_tmp253;
 5263#line 290
 5264    __cil_tmp255 = __cil_tmp254 + 12;
 5265#line 290
 5266    *((uint32_t *)__cil_tmp255) = (uint32_t )0;
 5267#line 291
 5268    __cil_tmp256 = (unsigned long )(& header) + 48;
 5269#line 291
 5270    __cil_tmp257 = *((uint32_t *)__cil_tmp256);
 5271#line 291
 5272    __cil_tmp258 = (unsigned long )part;
 5273#line 291
 5274    __cil_tmp259 = __cil_tmp258 + 240;
 5275#line 291
 5276    __cil_tmp260 = *((struct eun_info_t **)__cil_tmp259);
 5277#line 291
 5278    __cil_tmp261 = __cil_tmp260 + i;
 5279#line 291
 5280    __cil_tmp262 = *((uint32_t *)__cil_tmp261);
 5281#line 291
 5282    __cil_tmp263 = __cil_tmp262 + __cil_tmp257;
 5283#line 291
 5284    offset = (loff_t )__cil_tmp263;
 5285#line 293
 5286    __cil_tmp264 = 0 + 24;
 5287#line 293
 5288    __cil_tmp265 = (unsigned long )part;
 5289#line 293
 5290    __cil_tmp266 = __cil_tmp265 + __cil_tmp264;
 5291#line 293
 5292    __cil_tmp267 = *((struct mtd_info **)__cil_tmp266);
 5293#line 293
 5294    __cil_tmp268 = (unsigned long )part;
 5295#line 293
 5296    __cil_tmp269 = __cil_tmp268 + 276;
 5297#line 293
 5298    __cil_tmp270 = *((uint32_t *)__cil_tmp269);
 5299#line 293
 5300    __cil_tmp271 = (unsigned long )__cil_tmp270;
 5301#line 293
 5302    __cil_tmp272 = __cil_tmp271 * 4UL;
 5303#line 293
 5304    __cil_tmp273 = (size_t *)(& retval);
 5305#line 293
 5306    __cil_tmp274 = (unsigned long )part;
 5307#line 293
 5308    __cil_tmp275 = __cil_tmp274 + 264;
 5309#line 293
 5310    __cil_tmp276 = *((uint32_t **)__cil_tmp275);
 5311#line 293
 5312    __cil_tmp277 = (unsigned char *)__cil_tmp276;
 5313#line 293
 5314    ret = mtd_read(__cil_tmp267, offset, __cil_tmp272, __cil_tmp273, __cil_tmp277);
 5315    }
 5316#line 297
 5317    if (ret) {
 5318#line 298
 5319      goto out_bam_cache;
 5320    } else {
 5321
 5322    }
 5323#line 300
 5324    j = 0U;
 5325    {
 5326#line 300
 5327    while (1) {
 5328      while_continue___2: /* CIL Label */ ;
 5329      {
 5330#line 300
 5331      __cil_tmp278 = (unsigned long )part;
 5332#line 300
 5333      __cil_tmp279 = __cil_tmp278 + 276;
 5334#line 300
 5335      __cil_tmp280 = *((uint32_t *)__cil_tmp279);
 5336#line 300
 5337      if (j < __cil_tmp280) {
 5338
 5339      } else {
 5340#line 300
 5341        goto while_break___2;
 5342      }
 5343      }
 5344      {
 5345#line 301
 5346      __cil_tmp281 = (unsigned long )part;
 5347#line 301
 5348      __cil_tmp282 = __cil_tmp281 + 264;
 5349#line 301
 5350      __cil_tmp283 = *((uint32_t **)__cil_tmp282);
 5351#line 301
 5352      __cil_tmp284 = __cil_tmp283 + j;
 5353#line 301
 5354      __cil_tmp285 = *__cil_tmp284;
 5355#line 301
 5356      if (__cil_tmp285 == 4294967295U) {
 5357#line 302
 5358        __cil_tmp286 = (unsigned long )part;
 5359#line 302
 5360        __cil_tmp287 = __cil_tmp286 + 240;
 5361#line 302
 5362        __cil_tmp288 = *((struct eun_info_t **)__cil_tmp287);
 5363#line 302
 5364        __cil_tmp289 = __cil_tmp288 + i;
 5365#line 302
 5366        __cil_tmp290 = (unsigned long )__cil_tmp289;
 5367#line 302
 5368        __cil_tmp291 = __cil_tmp290 + 8;
 5369#line 302
 5370        __cil_tmp292 = (unsigned long )part;
 5371#line 302
 5372        __cil_tmp293 = __cil_tmp292 + 240;
 5373#line 302
 5374        __cil_tmp294 = *((struct eun_info_t **)__cil_tmp293);
 5375#line 302
 5376        __cil_tmp295 = __cil_tmp294 + i;
 5377#line 302
 5378        __cil_tmp296 = (unsigned long )__cil_tmp295;
 5379#line 302
 5380        __cil_tmp297 = __cil_tmp296 + 8;
 5381#line 302
 5382        __cil_tmp298 = *((uint32_t *)__cil_tmp297);
 5383#line 302
 5384        *((uint32_t *)__cil_tmp291) = __cil_tmp298 + 1U;
 5385#line 303
 5386        __cil_tmp299 = (unsigned long )part;
 5387#line 303
 5388        __cil_tmp300 = __cil_tmp299 + 232;
 5389#line 303
 5390        __cil_tmp301 = (unsigned long )part;
 5391#line 303
 5392        __cil_tmp302 = __cil_tmp301 + 232;
 5393#line 303
 5394        __cil_tmp303 = *((uint32_t *)__cil_tmp302);
 5395#line 303
 5396        *((uint32_t *)__cil_tmp300) = __cil_tmp303 + 1U;
 5397      } else {
 5398        {
 5399#line 304
 5400        __cil_tmp304 = (unsigned long )part;
 5401#line 304
 5402        __cil_tmp305 = __cil_tmp304 + 264;
 5403#line 304
 5404        __cil_tmp306 = *((uint32_t **)__cil_tmp305);
 5405#line 304
 5406        __cil_tmp307 = __cil_tmp306 + j;
 5407#line 304
 5408        __cil_tmp308 = *__cil_tmp307;
 5409#line 304
 5410        __cil_tmp309 = __cil_tmp308 & 127U;
 5411#line 304
 5412        if (__cil_tmp309 == 64U) {
 5413          {
 5414#line 304
 5415          __cil_tmp310 = (unsigned long )part;
 5416#line 304
 5417          __cil_tmp311 = __cil_tmp310 + 264;
 5418#line 304
 5419          __cil_tmp312 = *((uint32_t **)__cil_tmp311);
 5420#line 304
 5421          __cil_tmp313 = __cil_tmp312 + j;
 5422#line 304
 5423          __cil_tmp314 = *__cil_tmp313;
 5424#line 304
 5425          __cil_tmp315 = __cil_tmp314 >> 9;
 5426#line 304
 5427          if (__cil_tmp315 < blocks) {
 5428#line 306
 5429            __cil_tmp316 = (unsigned long )part;
 5430#line 306
 5431            __cil_tmp317 = __cil_tmp316 + 264;
 5432#line 306
 5433            __cil_tmp318 = *((uint32_t **)__cil_tmp317);
 5434#line 306
 5435            __cil_tmp319 = __cil_tmp318 + j;
 5436#line 306
 5437            __cil_tmp320 = *__cil_tmp319;
 5438#line 306
 5439            __cil_tmp321 = __cil_tmp320 >> 9;
 5440#line 306
 5441            __cil_tmp322 = (unsigned long )part;
 5442#line 306
 5443            __cil_tmp323 = __cil_tmp322 + 216;
 5444#line 306
 5445            __cil_tmp324 = *((uint32_t **)__cil_tmp323);
 5446#line 306
 5447            __cil_tmp325 = __cil_tmp324 + __cil_tmp321;
 5448#line 306
 5449            __cil_tmp326 = (unsigned long )(& header) + 22;
 5450#line 306
 5451            __cil_tmp327 = *((uint8_t *)__cil_tmp326);
 5452#line 306
 5453            __cil_tmp328 = (int )__cil_tmp327;
 5454#line 306
 5455            __cil_tmp329 = j << __cil_tmp328;
 5456#line 306
 5457            __cil_tmp330 = (unsigned long )(& header) + 23;
 5458#line 306
 5459            __cil_tmp331 = *((uint8_t *)__cil_tmp330);
 5460#line 306
 5461            __cil_tmp332 = (int )__cil_tmp331;
 5462#line 306
 5463            __cil_tmp333 = (int )i;
 5464#line 306
 5465            __cil_tmp334 = __cil_tmp333 << __cil_tmp332;
 5466#line 306
 5467            __cil_tmp335 = (unsigned int )__cil_tmp334;
 5468#line 306
 5469            *__cil_tmp325 = __cil_tmp335 + __cil_tmp329;
 5470          } else {
 5471#line 304
 5472            goto _L___1;
 5473          }
 5474          }
 5475        } else {
 5476          _L___1: /* CIL Label */ 
 5477          {
 5478#line 308
 5479          __cil_tmp336 = (unsigned long )part;
 5480#line 308
 5481          __cil_tmp337 = __cil_tmp336 + 264;
 5482#line 308
 5483          __cil_tmp338 = *((uint32_t **)__cil_tmp337);
 5484#line 308
 5485          __cil_tmp339 = __cil_tmp338 + j;
 5486#line 308
 5487          __cil_tmp340 = *__cil_tmp339;
 5488#line 308
 5489          if (__cil_tmp340 == 0U) {
 5490#line 309
 5491            __cil_tmp341 = (unsigned long )part;
 5492#line 309
 5493            __cil_tmp342 = __cil_tmp341 + 240;
 5494#line 309
 5495            __cil_tmp343 = *((struct eun_info_t **)__cil_tmp342);
 5496#line 309
 5497            __cil_tmp344 = __cil_tmp343 + i;
 5498#line 309
 5499            __cil_tmp345 = (unsigned long )__cil_tmp344;
 5500#line 309
 5501            __cil_tmp346 = __cil_tmp345 + 12;
 5502#line 309
 5503            __cil_tmp347 = (unsigned long )part;
 5504#line 309
 5505            __cil_tmp348 = __cil_tmp347 + 240;
 5506#line 309
 5507            __cil_tmp349 = *((struct eun_info_t **)__cil_tmp348);
 5508#line 309
 5509            __cil_tmp350 = __cil_tmp349 + i;
 5510#line 309
 5511            __cil_tmp351 = (unsigned long )__cil_tmp350;
 5512#line 309
 5513            __cil_tmp352 = __cil_tmp351 + 12;
 5514#line 309
 5515            __cil_tmp353 = *((uint32_t *)__cil_tmp352);
 5516#line 309
 5517            *((uint32_t *)__cil_tmp346) = __cil_tmp353 + 1U;
 5518          } else {
 5519            {
 5520#line 308
 5521            __cil_tmp354 = (unsigned long )part;
 5522#line 308
 5523            __cil_tmp355 = __cil_tmp354 + 264;
 5524#line 308
 5525            __cil_tmp356 = *((uint32_t **)__cil_tmp355);
 5526#line 308
 5527            __cil_tmp357 = __cil_tmp356 + j;
 5528#line 308
 5529            __cil_tmp358 = *__cil_tmp357;
 5530#line 308
 5531            if (__cil_tmp358 == 4294967294U) {
 5532#line 309
 5533              __cil_tmp359 = (unsigned long )part;
 5534#line 309
 5535              __cil_tmp360 = __cil_tmp359 + 240;
 5536#line 309
 5537              __cil_tmp361 = *((struct eun_info_t **)__cil_tmp360);
 5538#line 309
 5539              __cil_tmp362 = __cil_tmp361 + i;
 5540#line 309
 5541              __cil_tmp363 = (unsigned long )__cil_tmp362;
 5542#line 309
 5543              __cil_tmp364 = __cil_tmp363 + 12;
 5544#line 309
 5545              __cil_tmp365 = (unsigned long )part;
 5546#line 309
 5547              __cil_tmp366 = __cil_tmp365 + 240;
 5548#line 309
 5549              __cil_tmp367 = *((struct eun_info_t **)__cil_tmp366);
 5550#line 309
 5551              __cil_tmp368 = __cil_tmp367 + i;
 5552#line 309
 5553              __cil_tmp369 = (unsigned long )__cil_tmp368;
 5554#line 309
 5555              __cil_tmp370 = __cil_tmp369 + 12;
 5556#line 309
 5557              __cil_tmp371 = *((uint32_t *)__cil_tmp370);
 5558#line 309
 5559              *((uint32_t *)__cil_tmp364) = __cil_tmp371 + 1U;
 5560            } else {
 5561
 5562            }
 5563            }
 5564          }
 5565          }
 5566        }
 5567        }
 5568      }
 5569      }
 5570#line 300
 5571      j = j + 1U;
 5572    }
 5573    while_break___2: /* CIL Label */ ;
 5574    }
 5575#line 288
 5576    __cil_tmp372 = (int )i;
 5577#line 288
 5578    __cil_tmp373 = __cil_tmp372 + 1;
 5579#line 288
 5580    i = (uint16_t )__cil_tmp373;
 5581  }
 5582  while_break___1: /* CIL Label */ ;
 5583  }
 5584#line 313
 5585  ret = 0;
 5586#line 314
 5587  goto out;
 5588  out_bam_cache: 
 5589  {
 5590#line 317
 5591  __cil_tmp374 = (unsigned long )part;
 5592#line 317
 5593  __cil_tmp375 = __cil_tmp374 + 264;
 5594#line 317
 5595  __cil_tmp376 = *((uint32_t **)__cil_tmp375);
 5596#line 317
 5597  __cil_tmp377 = (void const   *)__cil_tmp376;
 5598#line 317
 5599  kfree(__cil_tmp377);
 5600  }
 5601  out_VirtualBlockMap: 
 5602  {
 5603#line 319
 5604  __cil_tmp378 = (unsigned long )part;
 5605#line 319
 5606  __cil_tmp379 = __cil_tmp378 + 216;
 5607#line 319
 5608  __cil_tmp380 = *((uint32_t **)__cil_tmp379);
 5609#line 319
 5610  __cil_tmp381 = (void const   *)__cil_tmp380;
 5611#line 319
 5612  vfree(__cil_tmp381);
 5613  }
 5614  out_XferInfo: 
 5615  {
 5616#line 321
 5617  __cil_tmp382 = (unsigned long )part;
 5618#line 321
 5619  __cil_tmp383 = __cil_tmp382 + 248;
 5620#line 321
 5621  __cil_tmp384 = *((struct xfer_info_t **)__cil_tmp383);
 5622#line 321
 5623  __cil_tmp385 = (void const   *)__cil_tmp384;
 5624#line 321
 5625  kfree(__cil_tmp385);
 5626  }
 5627  out_EUNInfo: 
 5628  {
 5629#line 323
 5630  __cil_tmp386 = (unsigned long )part;
 5631#line 323
 5632  __cil_tmp387 = __cil_tmp386 + 240;
 5633#line 323
 5634  __cil_tmp388 = *((struct eun_info_t **)__cil_tmp387);
 5635#line 323
 5636  __cil_tmp389 = (void const   *)__cil_tmp388;
 5637#line 323
 5638  kfree(__cil_tmp389);
 5639  }
 5640  out: 
 5641#line 325
 5642  return (ret);
 5643}
 5644}
 5645#line 343
 5646static int erase_xfer(partition_t *part , uint16_t xfernum ) ;
 5647#line 343 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 5648static struct _ddebug  __attribute__((__aligned__(8))) descriptor  __attribute__((__used__,
 5649__section__("__verbose")))  =    {"ftl", "erase_xfer", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c",
 5650    "ftl_cs: erasing xfer unit at 0x%x\n", 343U, 0U};
 5651#line 335 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 5652static int erase_xfer(partition_t *part , uint16_t xfernum ) 
 5653{ int ret ;
 5654  struct xfer_info_t *xfer ;
 5655  struct erase_info *erase ;
 5656  long tmp___7 ;
 5657  void *tmp___8 ;
 5658  unsigned long __cil_tmp8 ;
 5659  unsigned long __cil_tmp9 ;
 5660  struct xfer_info_t *__cil_tmp10 ;
 5661  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp11 ;
 5662  unsigned int __cil_tmp12 ;
 5663  unsigned int __cil_tmp13 ;
 5664  int __cil_tmp14 ;
 5665  int __cil_tmp15 ;
 5666  long __cil_tmp16 ;
 5667  uint32_t __cil_tmp17 ;
 5668  unsigned long __cil_tmp18 ;
 5669  unsigned long __cil_tmp19 ;
 5670  unsigned long __cil_tmp20 ;
 5671  unsigned long __cil_tmp21 ;
 5672  unsigned long __cil_tmp22 ;
 5673  unsigned long __cil_tmp23 ;
 5674  unsigned long __cil_tmp24 ;
 5675  unsigned long __cil_tmp25 ;
 5676  unsigned long __cil_tmp26 ;
 5677  uint32_t __cil_tmp27 ;
 5678  unsigned long __cil_tmp28 ;
 5679  unsigned long __cil_tmp29 ;
 5680  unsigned long __cil_tmp30 ;
 5681  unsigned long __cil_tmp31 ;
 5682  unsigned long __cil_tmp32 ;
 5683  uint8_t __cil_tmp33 ;
 5684  int __cil_tmp34 ;
 5685  int __cil_tmp35 ;
 5686  unsigned long __cil_tmp36 ;
 5687  unsigned long __cil_tmp37 ;
 5688  unsigned long __cil_tmp38 ;
 5689  unsigned long __cil_tmp39 ;
 5690  unsigned long __cil_tmp40 ;
 5691  struct mtd_info *__cil_tmp41 ;
 5692  unsigned long __cil_tmp42 ;
 5693  unsigned long __cil_tmp43 ;
 5694  unsigned long __cil_tmp44 ;
 5695  unsigned long __cil_tmp45 ;
 5696  uint32_t __cil_tmp46 ;
 5697  void const   *__cil_tmp47 ;
 5698
 5699  {
 5700#line 342
 5701  __cil_tmp8 = (unsigned long )part;
 5702#line 342
 5703  __cil_tmp9 = __cil_tmp8 + 248;
 5704#line 342
 5705  __cil_tmp10 = *((struct xfer_info_t **)__cil_tmp9);
 5706#line 342
 5707  xfer = __cil_tmp10 + xfernum;
 5708  {
 5709#line 343
 5710  while (1) {
 5711    while_continue: /* CIL Label */ ;
 5712    {
 5713#line 343
 5714    __cil_tmp11 = & descriptor;
 5715#line 343
 5716    __cil_tmp12 = __cil_tmp11->flags;
 5717#line 343
 5718    __cil_tmp13 = __cil_tmp12 & 1U;
 5719#line 343
 5720    __cil_tmp14 = ! __cil_tmp13;
 5721#line 343
 5722    __cil_tmp15 = ! __cil_tmp14;
 5723#line 343
 5724    __cil_tmp16 = (long )__cil_tmp15;
 5725#line 343
 5726    tmp___7 = __builtin_expect(__cil_tmp16, 0L);
 5727    }
 5728#line 343
 5729    if (tmp___7) {
 5730      {
 5731#line 343
 5732      __cil_tmp17 = *((uint32_t *)xfer);
 5733#line 343
 5734      __dynamic_pr_debug(& descriptor, "ftl_cs: erasing xfer unit at 0x%x\n", __cil_tmp17);
 5735      }
 5736    } else {
 5737
 5738    }
 5739#line 343
 5740    goto while_break;
 5741  }
 5742  while_break: /* CIL Label */ ;
 5743  }
 5744  {
 5745#line 344
 5746  __cil_tmp18 = (unsigned long )xfer;
 5747#line 344
 5748  __cil_tmp19 = __cil_tmp18 + 8;
 5749#line 344
 5750  *((uint16_t *)__cil_tmp19) = (uint16_t )1;
 5751#line 349
 5752  tmp___8 = kmalloc(88UL, 208U);
 5753#line 349
 5754  erase = (struct erase_info *)tmp___8;
 5755  }
 5756#line 350
 5757  if (! erase) {
 5758#line 351
 5759    return (-12);
 5760  } else {
 5761
 5762  }
 5763  {
 5764#line 353
 5765  __cil_tmp20 = 0 + 24;
 5766#line 353
 5767  __cil_tmp21 = (unsigned long )part;
 5768#line 353
 5769  __cil_tmp22 = __cil_tmp21 + __cil_tmp20;
 5770#line 353
 5771  *((struct mtd_info **)erase) = *((struct mtd_info **)__cil_tmp22);
 5772#line 354
 5773  __cil_tmp23 = (unsigned long )erase;
 5774#line 354
 5775  __cil_tmp24 = __cil_tmp23 + 56;
 5776#line 354
 5777  *((void (**)(struct erase_info *self ))__cil_tmp24) = & ftl_erase_callback;
 5778#line 355
 5779  __cil_tmp25 = (unsigned long )erase;
 5780#line 355
 5781  __cil_tmp26 = __cil_tmp25 + 8;
 5782#line 355
 5783  __cil_tmp27 = *((uint32_t *)xfer);
 5784#line 355
 5785  *((uint64_t *)__cil_tmp26) = (uint64_t )__cil_tmp27;
 5786#line 356
 5787  __cil_tmp28 = (unsigned long )erase;
 5788#line 356
 5789  __cil_tmp29 = __cil_tmp28 + 16;
 5790#line 356
 5791  __cil_tmp30 = 280 + 23;
 5792#line 356
 5793  __cil_tmp31 = (unsigned long )part;
 5794#line 356
 5795  __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
 5796#line 356
 5797  __cil_tmp33 = *((uint8_t *)__cil_tmp32);
 5798#line 356
 5799  __cil_tmp34 = (int )__cil_tmp33;
 5800#line 356
 5801  __cil_tmp35 = 1 << __cil_tmp34;
 5802#line 356
 5803  *((uint64_t *)__cil_tmp29) = (uint64_t )__cil_tmp35;
 5804#line 357
 5805  __cil_tmp36 = (unsigned long )erase;
 5806#line 357
 5807  __cil_tmp37 = __cil_tmp36 + 64;
 5808#line 357
 5809  *((u_long *)__cil_tmp37) = (u_long )part;
 5810#line 359
 5811  __cil_tmp38 = 0 + 24;
 5812#line 359
 5813  __cil_tmp39 = (unsigned long )part;
 5814#line 359
 5815  __cil_tmp40 = __cil_tmp39 + __cil_tmp38;
 5816#line 359
 5817  __cil_tmp41 = *((struct mtd_info **)__cil_tmp40);
 5818#line 359
 5819  ret = mtd_erase(__cil_tmp41, erase);
 5820  }
 5821#line 361
 5822  if (! ret) {
 5823#line 362
 5824    __cil_tmp42 = (unsigned long )xfer;
 5825#line 362
 5826    __cil_tmp43 = __cil_tmp42 + 4;
 5827#line 362
 5828    __cil_tmp44 = (unsigned long )xfer;
 5829#line 362
 5830    __cil_tmp45 = __cil_tmp44 + 4;
 5831#line 362
 5832    __cil_tmp46 = *((uint32_t *)__cil_tmp45);
 5833#line 362
 5834    *((uint32_t *)__cil_tmp43) = __cil_tmp46 + 1U;
 5835  } else {
 5836    {
 5837#line 364
 5838    __cil_tmp47 = (void const   *)erase;
 5839#line 364
 5840    kfree(__cil_tmp47);
 5841    }
 5842  }
 5843#line 366
 5844  return (ret);
 5845}
 5846}
 5847#line 376 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 5848static void ftl_erase_callback(struct erase_info *erase ) 
 5849{ partition_t *part ;
 5850  struct xfer_info_t *xfer ;
 5851  int i ;
 5852  unsigned long __cil_tmp5 ;
 5853  unsigned long __cil_tmp6 ;
 5854  u_long __cil_tmp7 ;
 5855  unsigned long __cil_tmp8 ;
 5856  unsigned long __cil_tmp9 ;
 5857  unsigned long __cil_tmp10 ;
 5858  uint8_t __cil_tmp11 ;
 5859  int __cil_tmp12 ;
 5860  unsigned long __cil_tmp13 ;
 5861  unsigned long __cil_tmp14 ;
 5862  uint64_t __cil_tmp15 ;
 5863  unsigned long __cil_tmp16 ;
 5864  unsigned long __cil_tmp17 ;
 5865  struct xfer_info_t *__cil_tmp18 ;
 5866  struct xfer_info_t *__cil_tmp19 ;
 5867  uint32_t __cil_tmp20 ;
 5868  uint64_t __cil_tmp21 ;
 5869  unsigned long __cil_tmp22 ;
 5870  unsigned long __cil_tmp23 ;
 5871  unsigned long __cil_tmp24 ;
 5872  uint8_t __cil_tmp25 ;
 5873  int __cil_tmp26 ;
 5874  unsigned long __cil_tmp27 ;
 5875  unsigned long __cil_tmp28 ;
 5876  struct xfer_info_t *__cil_tmp29 ;
 5877  unsigned long __cil_tmp30 ;
 5878  unsigned long __cil_tmp31 ;
 5879  u_char __cil_tmp32 ;
 5880  int __cil_tmp33 ;
 5881  unsigned long __cil_tmp34 ;
 5882  unsigned long __cil_tmp35 ;
 5883  unsigned long __cil_tmp36 ;
 5884  unsigned long __cil_tmp37 ;
 5885  unsigned long __cil_tmp38 ;
 5886  unsigned long __cil_tmp39 ;
 5887  u_char __cil_tmp40 ;
 5888  int __cil_tmp41 ;
 5889  void const   *__cil_tmp42 ;
 5890
 5891  {
 5892#line 383
 5893  __cil_tmp5 = (unsigned long )erase;
 5894#line 383
 5895  __cil_tmp6 = __cil_tmp5 + 64;
 5896#line 383
 5897  __cil_tmp7 = *((u_long *)__cil_tmp6);
 5898#line 383
 5899  part = (partition_t *)__cil_tmp7;
 5900#line 385
 5901  i = 0;
 5902  {
 5903#line 385
 5904  while (1) {
 5905    while_continue: /* CIL Label */ ;
 5906    {
 5907#line 385
 5908    __cil_tmp8 = 280 + 15;
 5909#line 385
 5910    __cil_tmp9 = (unsigned long )part;
 5911#line 385
 5912    __cil_tmp10 = __cil_tmp9 + __cil_tmp8;
 5913#line 385
 5914    __cil_tmp11 = *((uint8_t *)__cil_tmp10);
 5915#line 385
 5916    __cil_tmp12 = (int )__cil_tmp11;
 5917#line 385
 5918    if (i < __cil_tmp12) {
 5919
 5920    } else {
 5921#line 385
 5922      goto while_break;
 5923    }
 5924    }
 5925    {
 5926#line 386
 5927    __cil_tmp13 = (unsigned long )erase;
 5928#line 386
 5929    __cil_tmp14 = __cil_tmp13 + 8;
 5930#line 386
 5931    __cil_tmp15 = *((uint64_t *)__cil_tmp14);
 5932#line 386
 5933    __cil_tmp16 = (unsigned long )part;
 5934#line 386
 5935    __cil_tmp17 = __cil_tmp16 + 248;
 5936#line 386
 5937    __cil_tmp18 = *((struct xfer_info_t **)__cil_tmp17);
 5938#line 386
 5939    __cil_tmp19 = __cil_tmp18 + i;
 5940#line 386
 5941    __cil_tmp20 = *((uint32_t *)__cil_tmp19);
 5942#line 386
 5943    __cil_tmp21 = (uint64_t )__cil_tmp20;
 5944#line 386
 5945    if (__cil_tmp21 == __cil_tmp15) {
 5946#line 386
 5947      goto while_break;
 5948    } else {
 5949
 5950    }
 5951    }
 5952#line 385
 5953    i = i + 1;
 5954  }
 5955  while_break: /* CIL Label */ ;
 5956  }
 5957  {
 5958#line 388
 5959  __cil_tmp22 = 280 + 15;
 5960#line 388
 5961  __cil_tmp23 = (unsigned long )part;
 5962#line 388
 5963  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
 5964#line 388
 5965  __cil_tmp25 = *((uint8_t *)__cil_tmp24);
 5966#line 388
 5967  __cil_tmp26 = (int )__cil_tmp25;
 5968#line 388
 5969  if (i == __cil_tmp26) {
 5970    {
 5971#line 389
 5972    printk("<5>ftl_cs: internal error: erase lookup failed!\n");
 5973    }
 5974#line 391
 5975    return;
 5976  } else {
 5977
 5978  }
 5979  }
 5980#line 394
 5981  __cil_tmp27 = (unsigned long )part;
 5982#line 394
 5983  __cil_tmp28 = __cil_tmp27 + 248;
 5984#line 394
 5985  __cil_tmp29 = *((struct xfer_info_t **)__cil_tmp28);
 5986#line 394
 5987  xfer = __cil_tmp29 + i;
 5988  {
 5989#line 395
 5990  __cil_tmp30 = (unsigned long )erase;
 5991#line 395
 5992  __cil_tmp31 = __cil_tmp30 + 72;
 5993#line 395
 5994  __cil_tmp32 = *((u_char *)__cil_tmp31);
 5995#line 395
 5996  __cil_tmp33 = (int )__cil_tmp32;
 5997#line 395
 5998  if (__cil_tmp33 == 8) {
 5999#line 396
 6000    __cil_tmp34 = (unsigned long )xfer;
 6001#line 396
 6002    __cil_tmp35 = __cil_tmp34 + 8;
 6003#line 396
 6004    *((uint16_t *)__cil_tmp35) = (uint16_t )2;
 6005  } else {
 6006    {
 6007#line 398
 6008    __cil_tmp36 = (unsigned long )xfer;
 6009#line 398
 6010    __cil_tmp37 = __cil_tmp36 + 8;
 6011#line 398
 6012    *((uint16_t *)__cil_tmp37) = (uint16_t )4;
 6013#line 399
 6014    __cil_tmp38 = (unsigned long )erase;
 6015#line 399
 6016    __cil_tmp39 = __cil_tmp38 + 72;
 6017#line 399
 6018    __cil_tmp40 = *((u_char *)__cil_tmp39);
 6019#line 399
 6020    __cil_tmp41 = (int )__cil_tmp40;
 6021#line 399
 6022    printk("<5>ftl_cs: erase failed: state = %d\n", __cil_tmp41);
 6023    }
 6024  }
 6025  }
 6026  {
 6027#line 403
 6028  __cil_tmp42 = (void const   *)erase;
 6029#line 403
 6030  kfree(__cil_tmp42);
 6031  }
 6032#line 405
 6033  return;
 6034}
 6035}
 6036#line 419
 6037static int prepare_xfer(partition_t *part , int i ) ;
 6038#line 419 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 6039static struct _ddebug  __attribute__((__aligned__(8))) descriptor___0  __attribute__((__used__,
 6040__section__("__verbose")))  =    {"ftl", "prepare_xfer", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c",
 6041    "ftl_cs: preparing xfer unit at 0x%x\n", 419U, 0U};
 6042#line 407 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 6043static int prepare_xfer(partition_t *part , int i ) 
 6044{ erase_unit_header_t header ;
 6045  struct xfer_info_t *xfer ;
 6046  int nbam ;
 6047  int ret ;
 6048  uint32_t ctl ;
 6049  ssize_t retlen ;
 6050  loff_t offset ;
 6051  long tmp___7 ;
 6052  unsigned long __cil_tmp11 ;
 6053  unsigned long __cil_tmp12 ;
 6054  struct xfer_info_t *__cil_tmp13 ;
 6055  unsigned long __cil_tmp14 ;
 6056  unsigned long __cil_tmp15 ;
 6057  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp16 ;
 6058  unsigned int __cil_tmp17 ;
 6059  unsigned int __cil_tmp18 ;
 6060  int __cil_tmp19 ;
 6061  int __cil_tmp20 ;
 6062  long __cil_tmp21 ;
 6063  uint32_t __cil_tmp22 ;
 6064  erase_unit_header_t *__cil_tmp23 ;
 6065  unsigned long __cil_tmp24 ;
 6066  unsigned long __cil_tmp25 ;
 6067  unsigned long __cil_tmp26 ;
 6068  unsigned long __cil_tmp27 ;
 6069  unsigned long __cil_tmp28 ;
 6070  unsigned long __cil_tmp29 ;
 6071  unsigned long __cil_tmp30 ;
 6072  unsigned long __cil_tmp31 ;
 6073  unsigned long __cil_tmp32 ;
 6074  struct mtd_info *__cil_tmp33 ;
 6075  uint32_t __cil_tmp34 ;
 6076  loff_t __cil_tmp35 ;
 6077  size_t *__cil_tmp36 ;
 6078  u_char *__cil_tmp37 ;
 6079  u_char const   *__cil_tmp38 ;
 6080  unsigned long __cil_tmp39 ;
 6081  unsigned long __cil_tmp40 ;
 6082  unsigned long __cil_tmp41 ;
 6083  uint32_t __cil_tmp42 ;
 6084  unsigned long __cil_tmp43 ;
 6085  unsigned long __cil_tmp44 ;
 6086  unsigned long __cil_tmp45 ;
 6087  uint32_t __cil_tmp46 ;
 6088  unsigned long __cil_tmp47 ;
 6089  unsigned long __cil_tmp48 ;
 6090  unsigned long __cil_tmp49 ;
 6091  unsigned long __cil_tmp50 ;
 6092  unsigned long __cil_tmp51 ;
 6093  unsigned long __cil_tmp52 ;
 6094  unsigned long __cil_tmp53 ;
 6095  unsigned long __cil_tmp54 ;
 6096  unsigned long __cil_tmp55 ;
 6097  uint32_t __cil_tmp56 ;
 6098  uint32_t __cil_tmp57 ;
 6099  uint32_t __cil_tmp58 ;
 6100  uint32_t *__cil_tmp59 ;
 6101  unsigned long __cil_tmp60 ;
 6102  unsigned long __cil_tmp61 ;
 6103  unsigned long __cil_tmp62 ;
 6104  struct mtd_info *__cil_tmp63 ;
 6105  size_t *__cil_tmp64 ;
 6106  u_char *__cil_tmp65 ;
 6107  u_char const   *__cil_tmp66 ;
 6108  loff_t __cil_tmp67 ;
 6109  unsigned long __cil_tmp68 ;
 6110  unsigned long __cil_tmp69 ;
 6111
 6112  {
 6113#line 416
 6114  __cil_tmp11 = (unsigned long )part;
 6115#line 416
 6116  __cil_tmp12 = __cil_tmp11 + 248;
 6117#line 416
 6118  __cil_tmp13 = *((struct xfer_info_t **)__cil_tmp12);
 6119#line 416
 6120  xfer = __cil_tmp13 + i;
 6121#line 417
 6122  __cil_tmp14 = (unsigned long )xfer;
 6123#line 417
 6124  __cil_tmp15 = __cil_tmp14 + 8;
 6125#line 417
 6126  *((uint16_t *)__cil_tmp15) = (uint16_t )4;
 6127  {
 6128#line 419
 6129  while (1) {
 6130    while_continue: /* CIL Label */ ;
 6131    {
 6132#line 419
 6133    __cil_tmp16 = & descriptor___0;
 6134#line 419
 6135    __cil_tmp17 = __cil_tmp16->flags;
 6136#line 419
 6137    __cil_tmp18 = __cil_tmp17 & 1U;
 6138#line 419
 6139    __cil_tmp19 = ! __cil_tmp18;
 6140#line 419
 6141    __cil_tmp20 = ! __cil_tmp19;
 6142#line 419
 6143    __cil_tmp21 = (long )__cil_tmp20;
 6144#line 419
 6145    tmp___7 = __builtin_expect(__cil_tmp21, 0L);
 6146    }
 6147#line 419
 6148    if (tmp___7) {
 6149      {
 6150#line 419
 6151      __cil_tmp22 = *((uint32_t *)xfer);
 6152#line 419
 6153      __dynamic_pr_debug(& descriptor___0, "ftl_cs: preparing xfer unit at 0x%x\n",
 6154                         __cil_tmp22);
 6155      }
 6156    } else {
 6157
 6158    }
 6159#line 419
 6160    goto while_break;
 6161  }
 6162  while_break: /* CIL Label */ ;
 6163  }
 6164  {
 6165#line 422
 6166  __cil_tmp23 = & header;
 6167#line 422
 6168  __cil_tmp24 = (unsigned long )part;
 6169#line 422
 6170  __cil_tmp25 = __cil_tmp24 + 280;
 6171#line 422
 6172  *__cil_tmp23 = *((erase_unit_header_t *)__cil_tmp25);
 6173#line 423
 6174  __cil_tmp26 = (unsigned long )(& header) + 20;
 6175#line 423
 6176  *((uint16_t *)__cil_tmp26) = (__u16 )65535;
 6177#line 424
 6178  __cil_tmp27 = (unsigned long )(& header) + 16;
 6179#line 424
 6180  __cil_tmp28 = (unsigned long )xfer;
 6181#line 424
 6182  __cil_tmp29 = __cil_tmp28 + 4;
 6183#line 424
 6184  *((uint32_t *)__cil_tmp27) = *((uint32_t *)__cil_tmp29);
 6185#line 426
 6186  __cil_tmp30 = 0 + 24;
 6187#line 426
 6188  __cil_tmp31 = (unsigned long )part;
 6189#line 426
 6190  __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
 6191#line 426
 6192  __cil_tmp33 = *((struct mtd_info **)__cil_tmp32);
 6193#line 426
 6194  __cil_tmp34 = *((uint32_t *)xfer);
 6195#line 426
 6196  __cil_tmp35 = (loff_t )__cil_tmp34;
 6197#line 426
 6198  __cil_tmp36 = (size_t *)(& retlen);
 6199#line 426
 6200  __cil_tmp37 = (u_char *)(& header);
 6201#line 426
 6202  __cil_tmp38 = (u_char const   *)__cil_tmp37;
 6203#line 426
 6204  ret = mtd_write(__cil_tmp33, __cil_tmp35, 68UL, __cil_tmp36, __cil_tmp38);
 6205  }
 6206#line 429
 6207  if (ret) {
 6208#line 430
 6209    return (ret);
 6210  } else {
 6211
 6212  }
 6213#line 434
 6214  __cil_tmp39 = 280 + 48;
 6215#line 434
 6216  __cil_tmp40 = (unsigned long )part;
 6217#line 434
 6218  __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
 6219#line 434
 6220  __cil_tmp42 = *((uint32_t *)__cil_tmp41);
 6221#line 434
 6222  __cil_tmp43 = (unsigned long )__cil_tmp42;
 6223#line 434
 6224  __cil_tmp44 = (unsigned long )part;
 6225#line 434
 6226  __cil_tmp45 = __cil_tmp44 + 276;
 6227#line 434
 6228  __cil_tmp46 = *((uint32_t *)__cil_tmp45);
 6229#line 434
 6230  __cil_tmp47 = (unsigned long )__cil_tmp46;
 6231#line 434
 6232  __cil_tmp48 = __cil_tmp47 * 4UL;
 6233#line 434
 6234  __cil_tmp49 = __cil_tmp48 + __cil_tmp43;
 6235#line 434
 6236  __cil_tmp50 = __cil_tmp49 + 512UL;
 6237#line 434
 6238  __cil_tmp51 = __cil_tmp50 - 1UL;
 6239#line 434
 6240  __cil_tmp52 = __cil_tmp51 / 512UL;
 6241#line 434
 6242  nbam = (int )__cil_tmp52;
 6243#line 437
 6244  __cil_tmp53 = 280 + 48;
 6245#line 437
 6246  __cil_tmp54 = (unsigned long )part;
 6247#line 437
 6248  __cil_tmp55 = __cil_tmp54 + __cil_tmp53;
 6249#line 437
 6250  __cil_tmp56 = *((uint32_t *)__cil_tmp55);
 6251#line 437
 6252  __cil_tmp57 = *((uint32_t *)xfer);
 6253#line 437
 6254  __cil_tmp58 = __cil_tmp57 + __cil_tmp56;
 6255#line 437
 6256  offset = (loff_t )__cil_tmp58;
 6257#line 438
 6258  __cil_tmp59 = & ctl;
 6259#line 438
 6260  *__cil_tmp59 = (__u32 )48;
 6261#line 440
 6262  i = 0;
 6263  {
 6264#line 440
 6265  while (1) {
 6266    while_continue___0: /* CIL Label */ ;
 6267#line 440
 6268    if (i < nbam) {
 6269
 6270    } else {
 6271#line 440
 6272      goto while_break___0;
 6273    }
 6274    {
 6275#line 442
 6276    __cil_tmp60 = 0 + 24;
 6277#line 442
 6278    __cil_tmp61 = (unsigned long )part;
 6279#line 442
 6280    __cil_tmp62 = __cil_tmp61 + __cil_tmp60;
 6281#line 442
 6282    __cil_tmp63 = *((struct mtd_info **)__cil_tmp62);
 6283#line 442
 6284    __cil_tmp64 = (size_t *)(& retlen);
 6285#line 442
 6286    __cil_tmp65 = (u_char *)(& ctl);
 6287#line 442
 6288    __cil_tmp66 = (u_char const   *)__cil_tmp65;
 6289#line 442
 6290    ret = mtd_write(__cil_tmp63, offset, 4UL, __cil_tmp64, __cil_tmp66);
 6291    }
 6292#line 445
 6293    if (ret) {
 6294#line 446
 6295      return (ret);
 6296    } else {
 6297
 6298    }
 6299#line 440
 6300    i = i + 1;
 6301#line 440
 6302    __cil_tmp67 = (loff_t )4UL;
 6303#line 440
 6304    offset = offset + __cil_tmp67;
 6305  }
 6306  while_break___0: /* CIL Label */ ;
 6307  }
 6308#line 448
 6309  __cil_tmp68 = (unsigned long )xfer;
 6310#line 448
 6311  __cil_tmp69 = __cil_tmp68 + 8;
 6312#line 448
 6313  *((uint16_t *)__cil_tmp69) = (uint16_t )3;
 6314#line 449
 6315  return (0);
 6316}
 6317}
 6318#line 480
 6319static int copy_erase_unit(partition_t *part , uint16_t srcunit , uint16_t xferunit ) ;
 6320#line 480 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 6321static struct _ddebug  __attribute__((__aligned__(8))) descriptor___1  __attribute__((__used__,
 6322__section__("__verbose")))  =    {"ftl", "copy_erase_unit", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c",
 6323    "ftl_cs: copying block 0x%x to 0x%x\n", 481U, 0U};
 6324#line 465 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/5616/dscv_tempdir/dscv/ri/32_1/drivers/mtd/ftl.c.common.c"
 6325static int copy_erase_unit(partition_t *part , uint16_t srcunit , uint16_t xferunit ) 
 6326{ u_char buf[512] ;
 6327  struct eun_info_t *eun ;
 6328  struct xfer_info_t *xfer ;
 6329  uint32_t src ;
 6330  uint32_t dest ;
 6331  uint32_t free ;
 6332  uint32_t i ;
 6333  uint16_t unit ;
 6334  int ret ;
 6335  ssize_t retlen ;
 6336  loff_t offset ;
 6337  uint16_t srcunitswap ;
 6338  long tmp___7 ;
 6339  uint16_t *__cil_tmp17 ;
 6340  unsigned long __cil_tmp18 ;
 6341  unsigned long __cil_tmp19 ;
 6342  struct eun_info_t *__cil_tmp20 ;
 6343  unsigned long __cil_tmp21 ;
 6344  unsigned long __cil_tmp22 ;
 6345  struct xfer_info_t *__cil_tmp23 ;
 6346  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp24 ;
 6347  unsigned int __cil_tmp25 ;
 6348  unsigned int __cil_tmp26 ;
 6349  int __cil_tmp27 ;
 6350  int __cil_tmp28 ;
 6351  long __cil_tmp29 ;
 6352  uint32_t __cil_tmp30 ;
 6353  uint32_t __cil_tmp31 ;
 6354  int __cil_tmp32 ;
 6355  unsigned long __cil_tmp33 ;
 6356  unsigned long __cil_tmp34 ;
 6357  uint16_t __cil_tmp35 ;
 6358  int __cil_tmp36 ;
 6359  unsigned long __cil_tmp37 ;
 6360  unsigned long __cil_tmp38 ;
 6361  unsigned long __cil_tmp39 ;
 6362  uint32_t __cil_tmp40 ;
 6363  uint32_t __cil_tmp41 ;
 6364  uint32_t __cil_tmp42 ;
 6365  unsigned long __cil_tmp43 ;
 6366  unsigned long __cil_tmp44 ;
 6367  unsigned long __cil_tmp45 ;
 6368  struct mtd_info *__cil_tmp46 ;
 6369  unsigned long __cil_tmp47 ;
 6370  unsigned long __cil_tmp48 ;
 6371  uint32_t __cil_tmp49 ;
 6372  unsigned long __cil_tmp50 ;
 6373  unsigned long __cil_tmp51 ;
 6374  size_t *__cil_tmp52 ;
 6375  unsigned long __cil_tmp53 ;
 6376  unsigned long __cil_tmp54 ;
 6377  uint32_t *__cil_tmp55 ;
 6378  u_char *__cil_tmp56 ;
 6379  unsigned long __cil_tmp57 ;
 6380  unsigned long __cil_tmp58 ;
 6381  unsigned long __cil_tmp59 ;
 6382  unsigned long __cil_tmp60 ;
 6383  uint32_t __cil_tmp61 ;
 6384  uint32_t __cil_tmp62 ;
 6385  uint16_t *__cil_tmp63 ;
 6386  unsigned long __cil_tmp64 ;
 6387  unsigned long __cil_tmp65 ;
 6388  unsigned long __cil_tmp66 ;
 6389  struct mtd_info *__cil_tmp67 ;
 6390  size_t *__cil_tmp68 ;
 6391  u_char *__cil_tmp69 ;
 6392  u_char const   *__cil_tmp70 ;
 6393  unsigned long __cil_tmp71 ;
 6394  unsigned long __cil_tmp72 ;
 6395  uint32_t __cil_tmp73 ;
 6396  unsigned long __cil_tmp74 ;
 6397  unsigned long __cil_tmp75 ;
 6398  uint32_t *__cil_tmp76 ;
 6399  uint32_t *__cil_tmp77 ;
 6400  uint32_t __cil_tmp78 ;
 6401  unsigned int __cil_tmp79 ;
 6402  unsigned long __cil_tmp80 ;
 6403  unsigned long __cil_tmp81 ;
 6404  unsigned long __cil_tmp82 ;
 6405  struct mtd_info *__cil_tmp83 ;
 6406  loff_t __cil_tmp84 ;
 6407  size_t __cil_tmp85 ;
 6408  size_t *__cil_tmp86 ;
 6409  unsigned long __cil_tmp87 ;
 6410  unsigned long __cil_tmp88 ;
 6411  u_char *__cil_tmp89 ;
 6412  unsigned long __cil_tmp90 ;
 6413  unsigned long __cil_tmp91 ;
 6414  unsigned long __cil_tmp92 ;
 6415  struct mtd_info *__cil_tmp93 ;
 6416  loff_t __cil_tmp94 ;
 6417  size_t __cil_tmp95 ;
 6418  size_t *__cil_tmp96 ;
 6419  unsigned long __cil_tmp97 ;
 6420  unsigned long __cil_tmp98 ;
 6421  u_char *__cil_tmp99 ;
 6422  u_char const   *__cil_tmp100 ;
 6423  unsigned long __cil_tmp101 ;
 6424  unsigned long __cil_tmp102 ;
 6425  uint32_t *__cil_tmp103 ;
 6426  uint32_t *__cil_tmp104 ;
 6427  unsigned long __cil_tmp105 ;
 6428  unsigned long __cil_tmp106 ;
 6429  unsigned long __cil_tmp107 ;
 6430  struct mtd_info *__cil_tmp108 ;
 6431  unsigned long __cil_tmp109 ;
 6432  unsigned long __cil_tmp110 ;
 6433  unsigned long __cil_tmp111 ;
 6434  uint32_t __cil_tmp112 ;
 6435  uint32_t __cil_tmp113 ;
 6436  uint32_t __cil_tmp114 ;
 6437  loff_t __cil_tmp115 ;
 6438  unsigned long __cil_tmp116 ;
 6439  unsigned long __cil_tmp117 ;
 6440  uint32_t __cil_tmp118 ;
 6441  unsigned long __cil_tmp119 ;
 6442  unsigned long __cil_tmp120 ;
 6443  size_t *__cil_tmp121 ;
 6444  unsigned long __cil_tmp122 ;
 6445  unsigned long __cil_tmp123 ;
 6446  uint32_t *__cil_tmp124 ;
 6447  u_char *__cil_tmp125 ;
 6448  u_char const   *__cil_tmp126 ;
 6449  unsigned long __cil_tmp127 ;
 6450  unsigned long __cil_tmp128 ;
 6451  unsigned long __cil_tmp129 ;
 6452  struct mtd_info *__cil_tmp130 ;
 6453  uint32_t __cil_tmp131 ;
 6454  uint32_t __cil_tmp132 ;
 6455  loff_t __cil_tmp133 ;
 6456  size_t *__cil_tmp134 ;
 6457  u_char *__cil_tmp135 ;
 6458  u_char const   *__cil_tmp136 ;
 6459  unsigned long __cil_tmp137 ;
 6460  unsigned long __cil_tmp138 ;
 6461  unsigned long __cil_tmp139 ;
 6462  unsigned long __cil_tmp140 ;
 6463  unsigned long __cil_tmp141 ;
 6464  unsigned long __cil_tmp142 ;
 6465  unsigned long __cil_tmp143 ;
 6466  unsigned long __cil_tmp144 ;
 6467  unsigned long __cil_tmp145 ;
 6468  unsigned long __cil_tmp146 ;
 6469  unsigned long __cil_tmp147 ;
 6470  unsigned long __cil_tmp148 ;
 6471  uint32_t __cil_tmp149 ;
 6472  unsigned long __cil_tmp150 ;
 6473  unsigned long __cil_tmp151 ;
 6474  uint32_t __cil_tmp152 ;
 6475  unsigned long __cil_tmp153 ;
 6476  unsigned long __cil_tmp154 ;
 6477  unsigned long __cil_tmp155 ;
 6478  unsigned long __cil_tmp156 ;
 6479  uint32_t __cil_tmp157 ;
 6480  unsigned long __cil_tmp158 ;
 6481  unsigned long __cil_tmp159 ;
 6482  unsigned long __cil_tmp160 ;
 6483  unsigned long __cil_tmp161 ;
 6484  unsigned long __cil_tmp162 ;
 6485  unsigned long __cil_tmp163 ;
 6486
 6487  {
 6488#line 476
 6489  __cil_tmp17 = & srcunitswap;
 6490#line 476
 6491  *__cil_tmp17 = srcunit;
 6492#line 478
 6493  __cil_tmp18 = (unsigned long )part;
 6494#line 478
 6495  __cil_tmp19 = __cil_tmp18 + 240;
 6496#line 478
 6497  __cil_tmp20 = *((struct eun_info_t **)__cil_tmp19);
 6498#line 478
 6499  eun = __cil_tmp20 + srcunit;
 6500#line 479
 6501  __cil_tmp21 = (unsigned long )part;
 6502#line 479
 6503  __cil_tmp22 = __cil_tmp21 + 248;
 6504#line 479
 6505  __cil_tmp23 = *((struct xfer_info_t **)__cil_tmp22);
 6506#line 479
 6507  xfer = __cil_tmp23 + xferunit;
 6508  {
 6509#line 480
 6510  while (1) {
 6511    while_continue: /* CIL Label */ ;
 6512    {
 6513#line 480
 6514    __cil_tmp24 = & descriptor___1;
 6515#line 480
 6516    __cil_tmp25 = __cil_tmp24->flags;
 6517#line 480
 6518    __cil_tmp26 = __cil_tmp25 & 1U;
 6519#line 480
 6520    __cil_tmp27 = ! __cil_tmp26;
 6521#line 480
 6522    __cil_tmp28 = ! __cil_tmp27;
 6523#line 480
 6524    __cil_tmp29 = (long )__cil_tmp28;
 6525#line 480
 6526    tmp___7 = __builtin_expect(__cil_tmp29, 0L);
 6527    }
 6528#line 480
 6529    if (tmp___7) {
 6530      {
 6531#line 480
 6532      __cil_tmp30 = *((uint32_t *)eun);
 6533#line 480
 6534      __cil_tmp31 = *((uint32_t *)xfer);
 6535#line 480
 6536      __dynamic_pr_debug(& descriptor___1, "ftl_cs: copying block 0x%x to 0x%x\n",
 6537                         __cil_tmp30, __cil_tmp31);
 6538      }
 6539    } else {
 6540
 6541    }
 6542#line 480
 6543    goto while_break;
 6544  }
 6545  while_break: /* CIL Label */ ;
 6546  }
 6547  {
 6548#line 485
 6549  __cil_tmp32 = (int )srcunit;
 6550#line 485
 6551  __cil_tmp33 = (unsigned long )part;
 6552#line 485
 6553  __cil_tmp34 = __cil_tmp33 + 256;
 6554#line 485
 6555  __cil_tmp35 = *((uint16_t *)__cil_tmp34);
 6556#line 485
 6557  __cil_tmp36 = (int )__cil_tmp35;
 6558#line 485
 6559  if (__cil_tmp36 != __cil_tmp32) {
 6560    {
 6561#line 487
 6562    __cil_tmp37 = 280 + 48;
 6563#line 487
 6564    __cil_tmp38 = (unsigned long )part;
 6565#line 487
 6566    __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
 6567#line 487
 6568    __cil_tmp40 = *((uint32_t *)__cil_tmp39);
 6569#line 487
 6570    __cil_tmp41 = *((uint32_t *)eun);
 6571#line 487
 6572    __cil_tmp42 = __cil_tmp41 + __cil_tmp40;
 6573#line 487
 6574    offset = (loff_t )__cil_tmp42;
 6575#line 489
 6576    __cil_tmp43 = 0 + 24;
 6577#line 489
 6578    __cil_tmp44 = (unsigned long )part;
 6579#line 489
 6580    __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
 6581#line 489
 6582    __cil_tmp46 = *((struct mtd_info **)__cil_tmp45);
 6583#line 489
 6584    __cil_tmp47 = (unsigned long )part;
 6585#line 489
 6586    __cil_tmp48 = __cil_tmp47 + 276;
 6587#line 489
 6588    __cil_tmp49 = *((uint32_t *)__cil_tmp48);
 6589#line 489
 6590    __cil_tmp50 = (unsigned long )__cil_tmp49;
 6591#line 489
 6592    __cil_tmp51 = __cil_tmp50 * 4UL;
 6593#line 489
 6594    __cil_tmp52 = (size_t *)(& retlen);
 6595#line 489
 6596    __cil_tmp53 = (unsigned long )part;
 6597#line 489
 6598    __cil_tmp54 = __cil_tmp53 + 264;
 6599#line 489
 6600    __cil_tmp55 = *((uint32_t **)__cil_tmp54);
 6601#line 489
 6602    __cil_tmp56 = (u_char *)__cil_tmp55;
 6603#line 489
 6604    ret = mtd_read(__cil_tmp46, offset, __cil_tmp51, __cil_tmp52, __cil_tmp56);
 6605#line 494
 6606    __cil_tmp57 = (unsigned long )part;
 6607#line 494
 6608    __cil_tmp58 = __cil_tmp57 + 256;
 6609#line 494
 6610    *((uint16_t *)__cil_tmp58) = (uint16_t )65535;
 6611    }
 6612#line 496
 6613    if (ret) {
 6614      {
 6615#line 497
 6616      printk("<4>ftl: Failed to read BAM cache in copy_erase_unit()!\n");
 6617      }
 6618#line 498
 6619      return (ret);
 6620    } else {
 6621
 6622    }
 6623  } else {
 6624
 6625  }
 6626  }
 6627  {
 6628#line 503
 6629  __cil_tmp59 = (unsigned long )xfer;
 6630#line 503
 6631  __cil_tmp60 = __cil_tmp59 + 8;
 6632#line 503
 6633  *((uint16_t *)__cil_tmp60) = (uint16_t )0;
 6634#line 504
 6635  __cil_tmp61 = *((uint32_t *)xfer);
 6636#line 504
 6637  __cil_tmp62 = __cil_tmp61 + 20U;
 6638#line 504
 6639  offset = (loff_t )__cil_tmp62;
 6640#line 505
 6641  __cil_tmp63 = & unit;
 6642#line 505
 6643  *__cil_tmp63 = (__u16 )32767;
 6644#line 507
 6645  __cil_tmp64 = 0 + 24;
 6646#line 507
 6647  __cil_tmp65 = (unsigned long )part;
 6648#line 507
 6649  __cil_tmp66 = __cil_tmp65 + __cil_tmp64;
 6650#line 507
 6651  __cil_tmp67 = *((struct mtd_info **)__cil_tmp66);
 6652#line 507
 6653  __cil_tmp68 = (size_t *)(& retlen);
 6654#line 507
 6655  __cil_tmp69 = (u_char *)(& unit);
 6656#line 507
 6657  __cil_tmp70 = (u_char const   *)__cil_tmp69;
 6658#line 507
 6659  ret = mtd_write(__cil_tmp67, offset, 2UL, __cil_tmp68, __cil_tmp70);
 6660  }
 6661#line 510
 6662  if (ret) {
 6663    {
 6664#line 511
 6665    printk("<4>ftl: Failed to write back to BAM cache in copy_erase_unit()!\n");
 6666    }
 6667#line 512
 6668    return (ret);
 6669  } else {
 6670
 6671  }
 6672#line 516
 6673  src = *((uint32_t *)eun);
 6674#line 516
 6675  dest = *((uint32_t *)xfer);
 6676#line 518
 6677  free = (uint32_t )0;
 6678#line 519
 6679  ret = 0;
 6680#line 520
 6681  i = (uint32_t )0;
 6682  {
 6683#line 520
 6684  while (1) {
 6685    while_continue___0: /* CIL Label */ ;
 6686    {
 6687#line 520
 6688    __cil_tmp71 = (unsigned long )part;
 6689#line 520
 6690    __cil_tmp72 = __cil_tmp71 + 276;
 6691#line 520
 6692    __cil_tmp73 = *((uint32_t *)__cil_tmp72);
 6693#line 520
 6694    if (i < __cil_tmp73) {
 6695
 6696    } else {
 6697#line 520
 6698      goto while_break___0;
 6699    }
 6700    }
 6701    {
 6702#line 521
 6703    __cil_tmp74 = (unsigned long )part;
 6704#line 521
 6705    __cil_tmp75 = __cil_tmp74 + 264;
 6706#line 521
 6707    __cil_tmp76 = *((uint32_t **)__cil_tmp75);
 6708#line 521
 6709    __cil_tmp77 = __cil_tmp76 + i;
 6710#line 521
 6711    __cil_tmp78 = *__cil_tmp77;
 6712#line 521
 6713    __cil_tmp79 = __cil_tmp78 & 127U;
 6714#line 522
 6715    if ((int )__cil_tmp79 == 48) {
 6716#line 522
 6717      goto case_48;
 6718    } else
 6719#line 525
 6720<