Showing error 738

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_7_cilled_unsafe_const_ok_linux-32_1-drivers--input--mousedev.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 12361
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

    1/* Generated by CIL v. 1.3.7 */
    2/* print_CIL_Input is true */
    3
    4#line 19 "include/asm-generic/int-ll64.h"
    5typedef signed char __s8;
    6#line 20 "include/asm-generic/int-ll64.h"
    7typedef unsigned char __u8;
    8#line 22 "include/asm-generic/int-ll64.h"
    9typedef short __s16;
   10#line 23 "include/asm-generic/int-ll64.h"
   11typedef unsigned short __u16;
   12#line 25 "include/asm-generic/int-ll64.h"
   13typedef int __s32;
   14#line 26 "include/asm-generic/int-ll64.h"
   15typedef unsigned int __u32;
   16#line 29 "include/asm-generic/int-ll64.h"
   17typedef long long __s64;
   18#line 30 "include/asm-generic/int-ll64.h"
   19typedef unsigned long long __u64;
   20#line 43 "include/asm-generic/int-ll64.h"
   21typedef unsigned char u8;
   22#line 45 "include/asm-generic/int-ll64.h"
   23typedef short s16;
   24#line 46 "include/asm-generic/int-ll64.h"
   25typedef unsigned short u16;
   26#line 48 "include/asm-generic/int-ll64.h"
   27typedef int s32;
   28#line 49 "include/asm-generic/int-ll64.h"
   29typedef unsigned int u32;
   30#line 51 "include/asm-generic/int-ll64.h"
   31typedef long long s64;
   32#line 52 "include/asm-generic/int-ll64.h"
   33typedef unsigned long long u64;
   34#line 14 "include/asm-generic/posix_types.h"
   35typedef long __kernel_long_t;
   36#line 15 "include/asm-generic/posix_types.h"
   37typedef unsigned long __kernel_ulong_t;
   38#line 31 "include/asm-generic/posix_types.h"
   39typedef int __kernel_pid_t;
   40#line 52 "include/asm-generic/posix_types.h"
   41typedef unsigned int __kernel_uid32_t;
   42#line 53 "include/asm-generic/posix_types.h"
   43typedef unsigned int __kernel_gid32_t;
   44#line 75 "include/asm-generic/posix_types.h"
   45typedef __kernel_ulong_t __kernel_size_t;
   46#line 76 "include/asm-generic/posix_types.h"
   47typedef __kernel_long_t __kernel_ssize_t;
   48#line 91 "include/asm-generic/posix_types.h"
   49typedef long long __kernel_loff_t;
   50#line 92 "include/asm-generic/posix_types.h"
   51typedef __kernel_long_t __kernel_time_t;
   52#line 93 "include/asm-generic/posix_types.h"
   53typedef __kernel_long_t __kernel_clock_t;
   54#line 94 "include/asm-generic/posix_types.h"
   55typedef int __kernel_timer_t;
   56#line 95 "include/asm-generic/posix_types.h"
   57typedef int __kernel_clockid_t;
   58#line 21 "include/linux/types.h"
   59typedef __u32 __kernel_dev_t;
   60#line 24 "include/linux/types.h"
   61typedef __kernel_dev_t dev_t;
   62#line 27 "include/linux/types.h"
   63typedef unsigned short umode_t;
   64#line 30 "include/linux/types.h"
   65typedef __kernel_pid_t pid_t;
   66#line 35 "include/linux/types.h"
   67typedef __kernel_clockid_t clockid_t;
   68#line 38 "include/linux/types.h"
   69typedef _Bool bool;
   70#line 40 "include/linux/types.h"
   71typedef __kernel_uid32_t uid_t;
   72#line 41 "include/linux/types.h"
   73typedef __kernel_gid32_t gid_t;
   74#line 54 "include/linux/types.h"
   75typedef __kernel_loff_t loff_t;
   76#line 63 "include/linux/types.h"
   77typedef __kernel_size_t size_t;
   78#line 68 "include/linux/types.h"
   79typedef __kernel_ssize_t ssize_t;
   80#line 78 "include/linux/types.h"
   81typedef __kernel_time_t time_t;
   82#line 111 "include/linux/types.h"
   83typedef __s32 int32_t;
   84#line 117 "include/linux/types.h"
   85typedef __u32 uint32_t;
   86#line 142 "include/linux/types.h"
   87typedef unsigned long sector_t;
   88#line 143 "include/linux/types.h"
   89typedef unsigned long blkcnt_t;
   90#line 202 "include/linux/types.h"
   91typedef unsigned int gfp_t;
   92#line 203 "include/linux/types.h"
   93typedef unsigned int fmode_t;
   94#line 219 "include/linux/types.h"
   95struct __anonstruct_atomic_t_7 {
   96   int counter ;
   97};
   98#line 219 "include/linux/types.h"
   99typedef struct __anonstruct_atomic_t_7 atomic_t;
  100#line 224 "include/linux/types.h"
  101struct __anonstruct_atomic64_t_8 {
  102   long counter ;
  103};
  104#line 224 "include/linux/types.h"
  105typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  106#line 229 "include/linux/types.h"
  107struct list_head {
  108   struct list_head *next ;
  109   struct list_head *prev ;
  110};
  111#line 233
  112struct hlist_node;
  113#line 233 "include/linux/types.h"
  114struct hlist_head {
  115   struct hlist_node *first ;
  116};
  117#line 237 "include/linux/types.h"
  118struct hlist_node {
  119   struct hlist_node *next ;
  120   struct hlist_node **pprev ;
  121};
  122#line 253 "include/linux/types.h"
  123struct rcu_head {
  124   struct rcu_head *next ;
  125   void (*func)(struct rcu_head *head ) ;
  126};
  127#line 18 "include/linux/capability.h"
  128struct task_struct;
  129#line 18
  130struct task_struct;
  131#line 94 "include/linux/capability.h"
  132struct kernel_cap_struct {
  133   __u32 cap[2] ;
  134};
  135#line 94 "include/linux/capability.h"
  136typedef struct kernel_cap_struct kernel_cap_t;
  137#line 377
  138struct dentry;
  139#line 377
  140struct dentry;
  141#line 378
  142struct user_namespace;
  143#line 378
  144struct user_namespace;
  145#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
  146struct module;
  147#line 56
  148struct module;
  149#line 146 "include/linux/init.h"
  150typedef void (*ctor_fn_t)(void);
  151#line 47 "include/linux/dynamic_debug.h"
  152struct device;
  153#line 47
  154struct device;
  155#line 135 "include/linux/kernel.h"
  156struct completion;
  157#line 135
  158struct completion;
  159#line 136
  160struct pt_regs;
  161#line 136
  162struct pt_regs;
  163#line 349
  164struct pid;
  165#line 349
  166struct pid;
  167#line 12 "include/linux/thread_info.h"
  168struct timespec;
  169#line 12
  170struct timespec;
  171#line 13
  172struct compat_timespec;
  173#line 13
  174struct compat_timespec;
  175#line 18 "include/linux/thread_info.h"
  176struct __anonstruct_futex_12 {
  177   u32 *uaddr ;
  178   u32 val ;
  179   u32 flags ;
  180   u32 bitset ;
  181   u64 time ;
  182   u32 *uaddr2 ;
  183};
  184#line 18 "include/linux/thread_info.h"
  185struct __anonstruct_nanosleep_13 {
  186   clockid_t clockid ;
  187   struct timespec *rmtp ;
  188   struct compat_timespec *compat_rmtp ;
  189   u64 expires ;
  190};
  191#line 18
  192struct pollfd;
  193#line 18 "include/linux/thread_info.h"
  194struct __anonstruct_poll_14 {
  195   struct pollfd *ufds ;
  196   int nfds ;
  197   int has_timeout ;
  198   unsigned long tv_sec ;
  199   unsigned long tv_nsec ;
  200};
  201#line 18 "include/linux/thread_info.h"
  202union __anonunion____missing_field_name_11 {
  203   struct __anonstruct_futex_12 futex ;
  204   struct __anonstruct_nanosleep_13 nanosleep ;
  205   struct __anonstruct_poll_14 poll ;
  206};
  207#line 18 "include/linux/thread_info.h"
  208struct restart_block {
  209   long (*fn)(struct restart_block * ) ;
  210   union __anonunion____missing_field_name_11 __annonCompField4 ;
  211};
  212#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
  213struct page;
  214#line 18
  215struct page;
  216#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
  217struct task_struct;
  218#line 21
  219struct exec_domain;
  220#line 21
  221struct exec_domain;
  222#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  223struct task_struct;
  224#line 8
  225struct mm_struct;
  226#line 8
  227struct mm_struct;
  228#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  229struct pt_regs {
  230   unsigned long r15 ;
  231   unsigned long r14 ;
  232   unsigned long r13 ;
  233   unsigned long r12 ;
  234   unsigned long bp ;
  235   unsigned long bx ;
  236   unsigned long r11 ;
  237   unsigned long r10 ;
  238   unsigned long r9 ;
  239   unsigned long r8 ;
  240   unsigned long ax ;
  241   unsigned long cx ;
  242   unsigned long dx ;
  243   unsigned long si ;
  244   unsigned long di ;
  245   unsigned long orig_ax ;
  246   unsigned long ip ;
  247   unsigned long cs ;
  248   unsigned long flags ;
  249   unsigned long sp ;
  250   unsigned long ss ;
  251};
  252#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  253struct __anonstruct____missing_field_name_16 {
  254   unsigned int a ;
  255   unsigned int b ;
  256};
  257#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  258struct __anonstruct____missing_field_name_17 {
  259   u16 limit0 ;
  260   u16 base0 ;
  261   unsigned int base1 : 8 ;
  262   unsigned int type : 4 ;
  263   unsigned int s : 1 ;
  264   unsigned int dpl : 2 ;
  265   unsigned int p : 1 ;
  266   unsigned int limit : 4 ;
  267   unsigned int avl : 1 ;
  268   unsigned int l : 1 ;
  269   unsigned int d : 1 ;
  270   unsigned int g : 1 ;
  271   unsigned int base2 : 8 ;
  272};
  273#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  274union __anonunion____missing_field_name_15 {
  275   struct __anonstruct____missing_field_name_16 __annonCompField5 ;
  276   struct __anonstruct____missing_field_name_17 __annonCompField6 ;
  277};
  278#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
  279struct desc_struct {
  280   union __anonunion____missing_field_name_15 __annonCompField7 ;
  281} __attribute__((__packed__)) ;
  282#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
  283typedef unsigned long pgdval_t;
  284#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
  285typedef unsigned long pgprotval_t;
  286#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  287struct pgprot {
  288   pgprotval_t pgprot ;
  289};
  290#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  291typedef struct pgprot pgprot_t;
  292#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  293struct __anonstruct_pgd_t_21 {
  294   pgdval_t pgd ;
  295};
  296#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  297typedef struct __anonstruct_pgd_t_21 pgd_t;
  298#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  299typedef struct page *pgtable_t;
  300#line 295
  301struct file;
  302#line 295
  303struct file;
  304#line 313
  305struct seq_file;
  306#line 313
  307struct seq_file;
  308#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
  309struct page;
  310#line 47
  311struct thread_struct;
  312#line 47
  313struct thread_struct;
  314#line 50
  315struct mm_struct;
  316#line 51
  317struct desc_struct;
  318#line 52
  319struct task_struct;
  320#line 53
  321struct cpumask;
  322#line 53
  323struct cpumask;
  324#line 329
  325struct arch_spinlock;
  326#line 329
  327struct arch_spinlock;
  328#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  329struct task_struct;
  330#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
  331struct kernel_vm86_regs {
  332   struct pt_regs pt ;
  333   unsigned short es ;
  334   unsigned short __esh ;
  335   unsigned short ds ;
  336   unsigned short __dsh ;
  337   unsigned short fs ;
  338   unsigned short __fsh ;
  339   unsigned short gs ;
  340   unsigned short __gsh ;
  341};
  342#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
  343union __anonunion____missing_field_name_25 {
  344   struct pt_regs *regs ;
  345   struct kernel_vm86_regs *vm86 ;
  346};
  347#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
  348struct math_emu_info {
  349   long ___orig_eip ;
  350   union __anonunion____missing_field_name_25 __annonCompField8 ;
  351};
  352#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
  353struct task_struct;
  354#line 10 "include/asm-generic/bug.h"
  355struct bug_entry {
  356   int bug_addr_disp ;
  357   int file_disp ;
  358   unsigned short line ;
  359   unsigned short flags ;
  360};
  361#line 12 "include/linux/bug.h"
  362struct pt_regs;
  363#line 14 "include/linux/cpumask.h"
  364struct cpumask {
  365   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
  366};
  367#line 14 "include/linux/cpumask.h"
  368typedef struct cpumask cpumask_t;
  369#line 637 "include/linux/cpumask.h"
  370typedef struct cpumask *cpumask_var_t;
  371#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
  372struct static_key;
  373#line 234
  374struct static_key;
  375#line 10 "include/linux/personality.h"
  376struct exec_domain;
  377#line 11
  378struct pt_regs;
  379#line 92
  380struct map_segment;
  381#line 92 "include/linux/personality.h"
  382struct exec_domain {
  383   char    *name ;
  384   void (*handler)(int  , struct pt_regs * ) ;
  385   unsigned char pers_low ;
  386   unsigned char pers_high ;
  387   unsigned long *signal_map ;
  388   unsigned long *signal_invmap ;
  389   struct map_segment *err_map ;
  390   struct map_segment *socktype_map ;
  391   struct map_segment *sockopt_map ;
  392   struct map_segment *af_map ;
  393   struct module *module ;
  394   struct exec_domain *next ;
  395};
  396#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  397struct i387_fsave_struct {
  398   u32 cwd ;
  399   u32 swd ;
  400   u32 twd ;
  401   u32 fip ;
  402   u32 fcs ;
  403   u32 foo ;
  404   u32 fos ;
  405   u32 st_space[20] ;
  406   u32 status ;
  407};
  408#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  409struct __anonstruct____missing_field_name_32 {
  410   u64 rip ;
  411   u64 rdp ;
  412};
  413#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  414struct __anonstruct____missing_field_name_33 {
  415   u32 fip ;
  416   u32 fcs ;
  417   u32 foo ;
  418   u32 fos ;
  419};
  420#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  421union __anonunion____missing_field_name_31 {
  422   struct __anonstruct____missing_field_name_32 __annonCompField12 ;
  423   struct __anonstruct____missing_field_name_33 __annonCompField13 ;
  424};
  425#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  426union __anonunion____missing_field_name_34 {
  427   u32 padding1[12] ;
  428   u32 sw_reserved[12] ;
  429};
  430#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  431struct i387_fxsave_struct {
  432   u16 cwd ;
  433   u16 swd ;
  434   u16 twd ;
  435   u16 fop ;
  436   union __anonunion____missing_field_name_31 __annonCompField14 ;
  437   u32 mxcsr ;
  438   u32 mxcsr_mask ;
  439   u32 st_space[32] ;
  440   u32 xmm_space[64] ;
  441   u32 padding[12] ;
  442   union __anonunion____missing_field_name_34 __annonCompField15 ;
  443} __attribute__((__aligned__(16))) ;
  444#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  445struct i387_soft_struct {
  446   u32 cwd ;
  447   u32 swd ;
  448   u32 twd ;
  449   u32 fip ;
  450   u32 fcs ;
  451   u32 foo ;
  452   u32 fos ;
  453   u32 st_space[20] ;
  454   u8 ftop ;
  455   u8 changed ;
  456   u8 lookahead ;
  457   u8 no_update ;
  458   u8 rm ;
  459   u8 alimit ;
  460   struct math_emu_info *info ;
  461   u32 entry_eip ;
  462};
  463#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  464struct ymmh_struct {
  465   u32 ymmh_space[64] ;
  466};
  467#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  468struct xsave_hdr_struct {
  469   u64 xstate_bv ;
  470   u64 reserved1[2] ;
  471   u64 reserved2[5] ;
  472} __attribute__((__packed__)) ;
  473#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  474struct xsave_struct {
  475   struct i387_fxsave_struct i387 ;
  476   struct xsave_hdr_struct xsave_hdr ;
  477   struct ymmh_struct ymmh ;
  478} __attribute__((__packed__, __aligned__(64))) ;
  479#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  480union thread_xstate {
  481   struct i387_fsave_struct fsave ;
  482   struct i387_fxsave_struct fxsave ;
  483   struct i387_soft_struct soft ;
  484   struct xsave_struct xsave ;
  485};
  486#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  487struct fpu {
  488   unsigned int last_cpu ;
  489   unsigned int has_fpu ;
  490   union thread_xstate *state ;
  491};
  492#line 433
  493struct kmem_cache;
  494#line 435
  495struct perf_event;
  496#line 435
  497struct perf_event;
  498#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  499struct thread_struct {
  500   struct desc_struct tls_array[3] ;
  501   unsigned long sp0 ;
  502   unsigned long sp ;
  503   unsigned long usersp ;
  504   unsigned short es ;
  505   unsigned short ds ;
  506   unsigned short fsindex ;
  507   unsigned short gsindex ;
  508   unsigned long fs ;
  509   unsigned long gs ;
  510   struct perf_event *ptrace_bps[4] ;
  511   unsigned long debugreg6 ;
  512   unsigned long ptrace_dr7 ;
  513   unsigned long cr2 ;
  514   unsigned long trap_nr ;
  515   unsigned long error_code ;
  516   struct fpu fpu ;
  517   unsigned long *io_bitmap_ptr ;
  518   unsigned long iopl ;
  519   unsigned int io_bitmap_max ;
  520};
  521#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  522struct __anonstruct_mm_segment_t_36 {
  523   unsigned long seg ;
  524};
  525#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  526typedef struct __anonstruct_mm_segment_t_36 mm_segment_t;
  527#line 23 "include/asm-generic/atomic-long.h"
  528typedef atomic64_t atomic_long_t;
  529#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
  530struct thread_info {
  531   struct task_struct *task ;
  532   struct exec_domain *exec_domain ;
  533   __u32 flags ;
  534   __u32 status ;
  535   __u32 cpu ;
  536   int preempt_count ;
  537   mm_segment_t addr_limit ;
  538   struct restart_block restart_block ;
  539   void *sysenter_return ;
  540   unsigned int sig_on_uaccess_error : 1 ;
  541   unsigned int uaccess_err : 1 ;
  542};
  543#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  544typedef u16 __ticket_t;
  545#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  546typedef u32 __ticketpair_t;
  547#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  548struct __raw_tickets {
  549   __ticket_t head ;
  550   __ticket_t tail ;
  551};
  552#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  553union __anonunion____missing_field_name_37 {
  554   __ticketpair_t head_tail ;
  555   struct __raw_tickets tickets ;
  556};
  557#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  558struct arch_spinlock {
  559   union __anonunion____missing_field_name_37 __annonCompField17 ;
  560};
  561#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  562typedef struct arch_spinlock arch_spinlock_t;
  563#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  564struct __anonstruct____missing_field_name_39 {
  565   u32 read ;
  566   s32 write ;
  567};
  568#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  569union __anonunion_arch_rwlock_t_38 {
  570   s64 lock ;
  571   struct __anonstruct____missing_field_name_39 __annonCompField18 ;
  572};
  573#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  574typedef union __anonunion_arch_rwlock_t_38 arch_rwlock_t;
  575#line 12 "include/linux/lockdep.h"
  576struct task_struct;
  577#line 391 "include/linux/lockdep.h"
  578struct lock_class_key {
  579
  580};
  581#line 20 "include/linux/spinlock_types.h"
  582struct raw_spinlock {
  583   arch_spinlock_t raw_lock ;
  584   unsigned int magic ;
  585   unsigned int owner_cpu ;
  586   void *owner ;
  587};
  588#line 20 "include/linux/spinlock_types.h"
  589typedef struct raw_spinlock raw_spinlock_t;
  590#line 64 "include/linux/spinlock_types.h"
  591union __anonunion____missing_field_name_40 {
  592   struct raw_spinlock rlock ;
  593};
  594#line 64 "include/linux/spinlock_types.h"
  595struct spinlock {
  596   union __anonunion____missing_field_name_40 __annonCompField19 ;
  597};
  598#line 64 "include/linux/spinlock_types.h"
  599typedef struct spinlock spinlock_t;
  600#line 11 "include/linux/rwlock_types.h"
  601struct __anonstruct_rwlock_t_41 {
  602   arch_rwlock_t raw_lock ;
  603   unsigned int magic ;
  604   unsigned int owner_cpu ;
  605   void *owner ;
  606};
  607#line 11 "include/linux/rwlock_types.h"
  608typedef struct __anonstruct_rwlock_t_41 rwlock_t;
  609#line 119 "include/linux/seqlock.h"
  610struct seqcount {
  611   unsigned int sequence ;
  612};
  613#line 119 "include/linux/seqlock.h"
  614typedef struct seqcount seqcount_t;
  615#line 14 "include/linux/time.h"
  616struct timespec {
  617   __kernel_time_t tv_sec ;
  618   long tv_nsec ;
  619};
  620#line 100 "include/linux/rbtree.h"
  621struct rb_node {
  622   unsigned long rb_parent_color ;
  623   struct rb_node *rb_right ;
  624   struct rb_node *rb_left ;
  625} __attribute__((__aligned__(sizeof(long )))) ;
  626#line 110 "include/linux/rbtree.h"
  627struct rb_root {
  628   struct rb_node *rb_node ;
  629};
  630#line 98 "include/linux/nodemask.h"
  631struct __anonstruct_nodemask_t_43 {
  632   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
  633};
  634#line 98 "include/linux/nodemask.h"
  635typedef struct __anonstruct_nodemask_t_43 nodemask_t;
  636#line 14 "include/linux/prio_tree.h"
  637struct prio_tree_node;
  638#line 14 "include/linux/prio_tree.h"
  639struct raw_prio_tree_node {
  640   struct prio_tree_node *left ;
  641   struct prio_tree_node *right ;
  642   struct prio_tree_node *parent ;
  643};
  644#line 20 "include/linux/prio_tree.h"
  645struct prio_tree_node {
  646   struct prio_tree_node *left ;
  647   struct prio_tree_node *right ;
  648   struct prio_tree_node *parent ;
  649   unsigned long start ;
  650   unsigned long last ;
  651};
  652#line 28 "include/linux/prio_tree.h"
  653struct prio_tree_root {
  654   struct prio_tree_node *prio_tree_node ;
  655   unsigned short index_bits ;
  656   unsigned short raw ;
  657};
  658#line 19 "include/linux/rwsem.h"
  659struct rw_semaphore;
  660#line 19
  661struct rw_semaphore;
  662#line 25 "include/linux/rwsem.h"
  663struct rw_semaphore {
  664   long count ;
  665   raw_spinlock_t wait_lock ;
  666   struct list_head wait_list ;
  667};
  668#line 27 "include/linux/wait.h"
  669struct __wait_queue;
  670#line 27 "include/linux/wait.h"
  671typedef struct __wait_queue wait_queue_t;
  672#line 31 "include/linux/wait.h"
  673struct __wait_queue {
  674   unsigned int flags ;
  675   void *private ;
  676   int (*func)(wait_queue_t *wait , unsigned int mode , int flags , void *key ) ;
  677   struct list_head task_list ;
  678};
  679#line 49 "include/linux/wait.h"
  680struct __wait_queue_head {
  681   spinlock_t lock ;
  682   struct list_head task_list ;
  683};
  684#line 53 "include/linux/wait.h"
  685typedef struct __wait_queue_head wait_queue_head_t;
  686#line 55
  687struct task_struct;
  688#line 25 "include/linux/completion.h"
  689struct completion {
  690   unsigned int done ;
  691   wait_queue_head_t wait ;
  692};
  693#line 48 "include/linux/mutex.h"
  694struct mutex {
  695   atomic_t count ;
  696   spinlock_t wait_lock ;
  697   struct list_head wait_list ;
  698   struct task_struct *owner ;
  699   char    *name ;
  700   void *magic ;
  701};
  702#line 69 "include/linux/mutex.h"
  703struct mutex_waiter {
  704   struct list_head list ;
  705   struct task_struct *task ;
  706   void *magic ;
  707};
  708#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
  709struct __anonstruct_mm_context_t_44 {
  710   void *ldt ;
  711   int size ;
  712   unsigned short ia32_compat ;
  713   struct mutex lock ;
  714   void *vdso ;
  715};
  716#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
  717typedef struct __anonstruct_mm_context_t_44 mm_context_t;
  718#line 23 "include/linux/mm_types.h"
  719struct address_space;
  720#line 23
  721struct address_space;
  722#line 40 "include/linux/mm_types.h"
  723union __anonunion____missing_field_name_46 {
  724   unsigned long index ;
  725   void *freelist ;
  726};
  727#line 40 "include/linux/mm_types.h"
  728struct __anonstruct____missing_field_name_50 {
  729   unsigned int inuse : 16 ;
  730   unsigned int objects : 15 ;
  731   unsigned int frozen : 1 ;
  732};
  733#line 40 "include/linux/mm_types.h"
  734union __anonunion____missing_field_name_49 {
  735   atomic_t _mapcount ;
  736   struct __anonstruct____missing_field_name_50 __annonCompField21 ;
  737};
  738#line 40 "include/linux/mm_types.h"
  739struct __anonstruct____missing_field_name_48 {
  740   union __anonunion____missing_field_name_49 __annonCompField22 ;
  741   atomic_t _count ;
  742};
  743#line 40 "include/linux/mm_types.h"
  744union __anonunion____missing_field_name_47 {
  745   unsigned long counters ;
  746   struct __anonstruct____missing_field_name_48 __annonCompField23 ;
  747};
  748#line 40 "include/linux/mm_types.h"
  749struct __anonstruct____missing_field_name_45 {
  750   union __anonunion____missing_field_name_46 __annonCompField20 ;
  751   union __anonunion____missing_field_name_47 __annonCompField24 ;
  752};
  753#line 40 "include/linux/mm_types.h"
  754struct __anonstruct____missing_field_name_52 {
  755   struct page *next ;
  756   int pages ;
  757   int pobjects ;
  758};
  759#line 40 "include/linux/mm_types.h"
  760union __anonunion____missing_field_name_51 {
  761   struct list_head lru ;
  762   struct __anonstruct____missing_field_name_52 __annonCompField26 ;
  763};
  764#line 40 "include/linux/mm_types.h"
  765union __anonunion____missing_field_name_53 {
  766   unsigned long private ;
  767   struct kmem_cache *slab ;
  768   struct page *first_page ;
  769};
  770#line 40 "include/linux/mm_types.h"
  771struct page {
  772   unsigned long flags ;
  773   struct address_space *mapping ;
  774   struct __anonstruct____missing_field_name_45 __annonCompField25 ;
  775   union __anonunion____missing_field_name_51 __annonCompField27 ;
  776   union __anonunion____missing_field_name_53 __annonCompField28 ;
  777   unsigned long debug_flags ;
  778} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
  779#line 200 "include/linux/mm_types.h"
  780struct __anonstruct_vm_set_55 {
  781   struct list_head list ;
  782   void *parent ;
  783   struct vm_area_struct *head ;
  784};
  785#line 200 "include/linux/mm_types.h"
  786union __anonunion_shared_54 {
  787   struct __anonstruct_vm_set_55 vm_set ;
  788   struct raw_prio_tree_node prio_tree_node ;
  789};
  790#line 200
  791struct anon_vma;
  792#line 200
  793struct vm_operations_struct;
  794#line 200
  795struct mempolicy;
  796#line 200 "include/linux/mm_types.h"
  797struct vm_area_struct {
  798   struct mm_struct *vm_mm ;
  799   unsigned long vm_start ;
  800   unsigned long vm_end ;
  801   struct vm_area_struct *vm_next ;
  802   struct vm_area_struct *vm_prev ;
  803   pgprot_t vm_page_prot ;
  804   unsigned long vm_flags ;
  805   struct rb_node vm_rb ;
  806   union __anonunion_shared_54 shared ;
  807   struct list_head anon_vma_chain ;
  808   struct anon_vma *anon_vma ;
  809   struct vm_operations_struct    *vm_ops ;
  810   unsigned long vm_pgoff ;
  811   struct file *vm_file ;
  812   void *vm_private_data ;
  813   struct mempolicy *vm_policy ;
  814};
  815#line 257 "include/linux/mm_types.h"
  816struct core_thread {
  817   struct task_struct *task ;
  818   struct core_thread *next ;
  819};
  820#line 262 "include/linux/mm_types.h"
  821struct core_state {
  822   atomic_t nr_threads ;
  823   struct core_thread dumper ;
  824   struct completion startup ;
  825};
  826#line 284 "include/linux/mm_types.h"
  827struct mm_rss_stat {
  828   atomic_long_t count[3] ;
  829};
  830#line 288
  831struct linux_binfmt;
  832#line 288
  833struct mmu_notifier_mm;
  834#line 288 "include/linux/mm_types.h"
  835struct mm_struct {
  836   struct vm_area_struct *mmap ;
  837   struct rb_root mm_rb ;
  838   struct vm_area_struct *mmap_cache ;
  839   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
  840                                      unsigned long pgoff , unsigned long flags ) ;
  841   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
  842   unsigned long mmap_base ;
  843   unsigned long task_size ;
  844   unsigned long cached_hole_size ;
  845   unsigned long free_area_cache ;
  846   pgd_t *pgd ;
  847   atomic_t mm_users ;
  848   atomic_t mm_count ;
  849   int map_count ;
  850   spinlock_t page_table_lock ;
  851   struct rw_semaphore mmap_sem ;
  852   struct list_head mmlist ;
  853   unsigned long hiwater_rss ;
  854   unsigned long hiwater_vm ;
  855   unsigned long total_vm ;
  856   unsigned long locked_vm ;
  857   unsigned long pinned_vm ;
  858   unsigned long shared_vm ;
  859   unsigned long exec_vm ;
  860   unsigned long stack_vm ;
  861   unsigned long reserved_vm ;
  862   unsigned long def_flags ;
  863   unsigned long nr_ptes ;
  864   unsigned long start_code ;
  865   unsigned long end_code ;
  866   unsigned long start_data ;
  867   unsigned long end_data ;
  868   unsigned long start_brk ;
  869   unsigned long brk ;
  870   unsigned long start_stack ;
  871   unsigned long arg_start ;
  872   unsigned long arg_end ;
  873   unsigned long env_start ;
  874   unsigned long env_end ;
  875   unsigned long saved_auxv[44] ;
  876   struct mm_rss_stat rss_stat ;
  877   struct linux_binfmt *binfmt ;
  878   cpumask_var_t cpu_vm_mask_var ;
  879   mm_context_t context ;
  880   unsigned int faultstamp ;
  881   unsigned int token_priority ;
  882   unsigned int last_interval ;
  883   unsigned long flags ;
  884   struct core_state *core_state ;
  885   spinlock_t ioctx_lock ;
  886   struct hlist_head ioctx_list ;
  887   struct task_struct *owner ;
  888   struct file *exe_file ;
  889   unsigned long num_exe_file_vmas ;
  890   struct mmu_notifier_mm *mmu_notifier_mm ;
  891   pgtable_t pmd_huge_pte ;
  892   struct cpumask cpumask_allocation ;
  893};
  894#line 7 "include/asm-generic/cputime.h"
  895typedef unsigned long cputime_t;
  896#line 202 "include/linux/ioport.h"
  897struct device;
  898#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
  899struct device;
  900#line 46 "include/linux/ktime.h"
  901union ktime {
  902   s64 tv64 ;
  903};
  904#line 59 "include/linux/ktime.h"
  905typedef union ktime ktime_t;
  906#line 10 "include/linux/timer.h"
  907struct tvec_base;
  908#line 10
  909struct tvec_base;
  910#line 12 "include/linux/timer.h"
  911struct timer_list {
  912   struct list_head entry ;
  913   unsigned long expires ;
  914   struct tvec_base *base ;
  915   void (*function)(unsigned long  ) ;
  916   unsigned long data ;
  917   int slack ;
  918   int start_pid ;
  919   void *start_site ;
  920   char start_comm[16] ;
  921};
  922#line 289
  923struct hrtimer;
  924#line 289
  925struct hrtimer;
  926#line 290
  927enum hrtimer_restart;
  928#line 17 "include/linux/workqueue.h"
  929struct work_struct;
  930#line 17
  931struct work_struct;
  932#line 79 "include/linux/workqueue.h"
  933struct work_struct {
  934   atomic_long_t data ;
  935   struct list_head entry ;
  936   void (*func)(struct work_struct *work ) ;
  937};
  938#line 92 "include/linux/workqueue.h"
  939struct delayed_work {
  940   struct work_struct work ;
  941   struct timer_list timer ;
  942};
  943#line 42 "include/linux/pm.h"
  944struct device;
  945#line 50 "include/linux/pm.h"
  946struct pm_message {
  947   int event ;
  948};
  949#line 50 "include/linux/pm.h"
  950typedef struct pm_message pm_message_t;
  951#line 264 "include/linux/pm.h"
  952struct dev_pm_ops {
  953   int (*prepare)(struct device *dev ) ;
  954   void (*complete)(struct device *dev ) ;
  955   int (*suspend)(struct device *dev ) ;
  956   int (*resume)(struct device *dev ) ;
  957   int (*freeze)(struct device *dev ) ;
  958   int (*thaw)(struct device *dev ) ;
  959   int (*poweroff)(struct device *dev ) ;
  960   int (*restore)(struct device *dev ) ;
  961   int (*suspend_late)(struct device *dev ) ;
  962   int (*resume_early)(struct device *dev ) ;
  963   int (*freeze_late)(struct device *dev ) ;
  964   int (*thaw_early)(struct device *dev ) ;
  965   int (*poweroff_late)(struct device *dev ) ;
  966   int (*restore_early)(struct device *dev ) ;
  967   int (*suspend_noirq)(struct device *dev ) ;
  968   int (*resume_noirq)(struct device *dev ) ;
  969   int (*freeze_noirq)(struct device *dev ) ;
  970   int (*thaw_noirq)(struct device *dev ) ;
  971   int (*poweroff_noirq)(struct device *dev ) ;
  972   int (*restore_noirq)(struct device *dev ) ;
  973   int (*runtime_suspend)(struct device *dev ) ;
  974   int (*runtime_resume)(struct device *dev ) ;
  975   int (*runtime_idle)(struct device *dev ) ;
  976};
  977#line 458
  978enum rpm_status {
  979    RPM_ACTIVE = 0,
  980    RPM_RESUMING = 1,
  981    RPM_SUSPENDED = 2,
  982    RPM_SUSPENDING = 3
  983} ;
  984#line 480
  985enum rpm_request {
  986    RPM_REQ_NONE = 0,
  987    RPM_REQ_IDLE = 1,
  988    RPM_REQ_SUSPEND = 2,
  989    RPM_REQ_AUTOSUSPEND = 3,
  990    RPM_REQ_RESUME = 4
  991} ;
  992#line 488
  993struct wakeup_source;
  994#line 488
  995struct wakeup_source;
  996#line 495 "include/linux/pm.h"
  997struct pm_subsys_data {
  998   spinlock_t lock ;
  999   unsigned int refcount ;
 1000};
 1001#line 506
 1002struct dev_pm_qos_request;
 1003#line 506
 1004struct pm_qos_raints;
 1005#line 506 "include/linux/pm.h"
 1006struct dev_pm_info {
 1007   pm_message_t power_state ;
 1008   unsigned int can_wakeup : 1 ;
 1009   unsigned int async_suspend : 1 ;
 1010   bool is_prepared : 1 ;
 1011   bool is_suspended : 1 ;
 1012   bool ignore_children : 1 ;
 1013   spinlock_t lock ;
 1014   struct list_head entry ;
 1015   struct completion completion ;
 1016   struct wakeup_source *wakeup ;
 1017   bool wakeup_path : 1 ;
 1018   struct timer_list suspend_timer ;
 1019   unsigned long timer_expires ;
 1020   struct work_struct work ;
 1021   wait_queue_head_t wait_queue ;
 1022   atomic_t usage_count ;
 1023   atomic_t child_count ;
 1024   unsigned int disable_depth : 3 ;
 1025   unsigned int idle_notification : 1 ;
 1026   unsigned int request_pending : 1 ;
 1027   unsigned int deferred_resume : 1 ;
 1028   unsigned int run_wake : 1 ;
 1029   unsigned int runtime_auto : 1 ;
 1030   unsigned int no_callbacks : 1 ;
 1031   unsigned int irq_safe : 1 ;
 1032   unsigned int use_autosuspend : 1 ;
 1033   unsigned int timer_autosuspends : 1 ;
 1034   enum rpm_request request ;
 1035   enum rpm_status runtime_status ;
 1036   int runtime_error ;
 1037   int autosuspend_delay ;
 1038   unsigned long last_busy ;
 1039   unsigned long active_jiffies ;
 1040   unsigned long suspended_jiffies ;
 1041   unsigned long accounting_timestamp ;
 1042   ktime_t suspend_time ;
 1043   s64 max_time_suspended_ns ;
 1044   struct dev_pm_qos_request *pq_req ;
 1045   struct pm_subsys_data *subsys_data ;
 1046   struct pm_qos_raints *raints ;
 1047};
 1048#line 564 "include/linux/pm.h"
 1049struct dev_pm_domain {
 1050   struct dev_pm_ops ops ;
 1051};
 1052#line 8 "include/linux/vmalloc.h"
 1053struct vm_area_struct;
 1054#line 84 "include/linux/sem.h"
 1055struct task_struct;
 1056#line 101
 1057struct sem_undo_list;
 1058#line 101 "include/linux/sem.h"
 1059struct sysv_sem {
 1060   struct sem_undo_list *undo_list ;
 1061};
 1062#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1063struct siginfo;
 1064#line 10
 1065struct siginfo;
 1066#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1067struct __anonstruct_sigset_t_150 {
 1068   unsigned long sig[1] ;
 1069};
 1070#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1071typedef struct __anonstruct_sigset_t_150 sigset_t;
 1072#line 17 "include/asm-generic/signal-defs.h"
 1073typedef void __signalfn_t(int  );
 1074#line 18 "include/asm-generic/signal-defs.h"
 1075typedef __signalfn_t *__sighandler_t;
 1076#line 20 "include/asm-generic/signal-defs.h"
 1077typedef void __restorefn_t(void);
 1078#line 21 "include/asm-generic/signal-defs.h"
 1079typedef __restorefn_t *__sigrestore_t;
 1080#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1081struct sigaction {
 1082   __sighandler_t sa_handler ;
 1083   unsigned long sa_flags ;
 1084   __sigrestore_t sa_restorer ;
 1085   sigset_t sa_mask ;
 1086};
 1087#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 1088struct k_sigaction {
 1089   struct sigaction sa ;
 1090};
 1091#line 7 "include/asm-generic/siginfo.h"
 1092union sigval {
 1093   int sival_int ;
 1094   void *sival_ptr ;
 1095};
 1096#line 7 "include/asm-generic/siginfo.h"
 1097typedef union sigval sigval_t;
 1098#line 48 "include/asm-generic/siginfo.h"
 1099struct __anonstruct__kill_152 {
 1100   __kernel_pid_t _pid ;
 1101   __kernel_uid32_t _uid ;
 1102};
 1103#line 48 "include/asm-generic/siginfo.h"
 1104struct __anonstruct__timer_153 {
 1105   __kernel_timer_t _tid ;
 1106   int _overrun ;
 1107   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
 1108   sigval_t _sigval ;
 1109   int _sys_private ;
 1110};
 1111#line 48 "include/asm-generic/siginfo.h"
 1112struct __anonstruct__rt_154 {
 1113   __kernel_pid_t _pid ;
 1114   __kernel_uid32_t _uid ;
 1115   sigval_t _sigval ;
 1116};
 1117#line 48 "include/asm-generic/siginfo.h"
 1118struct __anonstruct__sigchld_155 {
 1119   __kernel_pid_t _pid ;
 1120   __kernel_uid32_t _uid ;
 1121   int _status ;
 1122   __kernel_clock_t _utime ;
 1123   __kernel_clock_t _stime ;
 1124};
 1125#line 48 "include/asm-generic/siginfo.h"
 1126struct __anonstruct__sigfault_156 {
 1127   void *_addr ;
 1128   short _addr_lsb ;
 1129};
 1130#line 48 "include/asm-generic/siginfo.h"
 1131struct __anonstruct__sigpoll_157 {
 1132   long _band ;
 1133   int _fd ;
 1134};
 1135#line 48 "include/asm-generic/siginfo.h"
 1136union __anonunion__sifields_151 {
 1137   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
 1138   struct __anonstruct__kill_152 _kill ;
 1139   struct __anonstruct__timer_153 _timer ;
 1140   struct __anonstruct__rt_154 _rt ;
 1141   struct __anonstruct__sigchld_155 _sigchld ;
 1142   struct __anonstruct__sigfault_156 _sigfault ;
 1143   struct __anonstruct__sigpoll_157 _sigpoll ;
 1144};
 1145#line 48 "include/asm-generic/siginfo.h"
 1146struct siginfo {
 1147   int si_signo ;
 1148   int si_errno ;
 1149   int si_code ;
 1150   union __anonunion__sifields_151 _sifields ;
 1151};
 1152#line 48 "include/asm-generic/siginfo.h"
 1153typedef struct siginfo siginfo_t;
 1154#line 288
 1155struct siginfo;
 1156#line 10 "include/linux/signal.h"
 1157struct task_struct;
 1158#line 18
 1159struct user_struct;
 1160#line 28 "include/linux/signal.h"
 1161struct sigpending {
 1162   struct list_head list ;
 1163   sigset_t signal ;
 1164};
 1165#line 239
 1166struct timespec;
 1167#line 240
 1168struct pt_regs;
 1169#line 6 "include/linux/pid.h"
 1170enum pid_type {
 1171    PIDTYPE_PID = 0,
 1172    PIDTYPE_PGID = 1,
 1173    PIDTYPE_SID = 2,
 1174    PIDTYPE_MAX = 3
 1175} ;
 1176#line 50
 1177struct pid_namespace;
 1178#line 50 "include/linux/pid.h"
 1179struct upid {
 1180   int nr ;
 1181   struct pid_namespace *ns ;
 1182   struct hlist_node pid_chain ;
 1183};
 1184#line 57 "include/linux/pid.h"
 1185struct pid {
 1186   atomic_t count ;
 1187   unsigned int level ;
 1188   struct hlist_head tasks[3] ;
 1189   struct rcu_head rcu ;
 1190   struct upid numbers[1] ;
 1191};
 1192#line 69 "include/linux/pid.h"
 1193struct pid_link {
 1194   struct hlist_node node ;
 1195   struct pid *pid ;
 1196};
 1197#line 100
 1198struct pid_namespace;
 1199#line 60 "include/linux/pageblock-flags.h"
 1200struct page;
 1201#line 9 "include/linux/memory_hotplug.h"
 1202struct page;
 1203#line 994 "include/linux/mmzone.h"
 1204struct page;
 1205#line 10 "include/linux/seccomp.h"
 1206struct __anonstruct_seccomp_t_162 {
 1207   int mode ;
 1208};
 1209#line 10 "include/linux/seccomp.h"
 1210typedef struct __anonstruct_seccomp_t_162 seccomp_t;
 1211#line 81 "include/linux/plist.h"
 1212struct plist_head {
 1213   struct list_head node_list ;
 1214};
 1215#line 85 "include/linux/plist.h"
 1216struct plist_node {
 1217   int prio ;
 1218   struct list_head prio_list ;
 1219   struct list_head node_list ;
 1220};
 1221#line 40 "include/linux/rtmutex.h"
 1222struct rt_mutex_waiter;
 1223#line 40
 1224struct rt_mutex_waiter;
 1225#line 42 "include/linux/resource.h"
 1226struct rlimit {
 1227   unsigned long rlim_cur ;
 1228   unsigned long rlim_max ;
 1229};
 1230#line 81
 1231struct task_struct;
 1232#line 8 "include/linux/timerqueue.h"
 1233struct timerqueue_node {
 1234   struct rb_node node ;
 1235   ktime_t expires ;
 1236};
 1237#line 13 "include/linux/timerqueue.h"
 1238struct timerqueue_head {
 1239   struct rb_root head ;
 1240   struct timerqueue_node *next ;
 1241};
 1242#line 27 "include/linux/hrtimer.h"
 1243struct hrtimer_clock_base;
 1244#line 27
 1245struct hrtimer_clock_base;
 1246#line 28
 1247struct hrtimer_cpu_base;
 1248#line 28
 1249struct hrtimer_cpu_base;
 1250#line 44
 1251enum hrtimer_restart {
 1252    HRTIMER_NORESTART = 0,
 1253    HRTIMER_RESTART = 1
 1254} ;
 1255#line 108 "include/linux/hrtimer.h"
 1256struct hrtimer {
 1257   struct timerqueue_node node ;
 1258   ktime_t _softexpires ;
 1259   enum hrtimer_restart (*function)(struct hrtimer * ) ;
 1260   struct hrtimer_clock_base *base ;
 1261   unsigned long state ;
 1262   int start_pid ;
 1263   void *start_site ;
 1264   char start_comm[16] ;
 1265};
 1266#line 145 "include/linux/hrtimer.h"
 1267struct hrtimer_clock_base {
 1268   struct hrtimer_cpu_base *cpu_base ;
 1269   int index ;
 1270   clockid_t clockid ;
 1271   struct timerqueue_head active ;
 1272   ktime_t resolution ;
 1273   ktime_t (*get_time)(void) ;
 1274   ktime_t softirq_time ;
 1275   ktime_t offset ;
 1276};
 1277#line 178 "include/linux/hrtimer.h"
 1278struct hrtimer_cpu_base {
 1279   raw_spinlock_t lock ;
 1280   unsigned long active_bases ;
 1281   ktime_t expires_next ;
 1282   int hres_active ;
 1283   int hang_detected ;
 1284   unsigned long nr_events ;
 1285   unsigned long nr_retries ;
 1286   unsigned long nr_hangs ;
 1287   ktime_t max_hang_time ;
 1288   struct hrtimer_clock_base clock_base[3] ;
 1289};
 1290#line 11 "include/linux/task_io_accounting.h"
 1291struct task_io_accounting {
 1292   u64 rchar ;
 1293   u64 wchar ;
 1294   u64 syscr ;
 1295   u64 syscw ;
 1296   u64 read_bytes ;
 1297   u64 write_bytes ;
 1298   u64 cancelled_write_bytes ;
 1299};
 1300#line 13 "include/linux/latencytop.h"
 1301struct task_struct;
 1302#line 20 "include/linux/latencytop.h"
 1303struct latency_record {
 1304   unsigned long backtrace[12] ;
 1305   unsigned int count ;
 1306   unsigned long time ;
 1307   unsigned long max ;
 1308};
 1309#line 29 "include/linux/sysctl.h"
 1310struct completion;
 1311#line 939
 1312struct nsproxy;
 1313#line 939
 1314struct nsproxy;
 1315#line 29 "include/linux/key.h"
 1316typedef int32_t key_serial_t;
 1317#line 32 "include/linux/key.h"
 1318typedef uint32_t key_perm_t;
 1319#line 34
 1320struct key;
 1321#line 34
 1322struct key;
 1323#line 74
 1324struct seq_file;
 1325#line 75
 1326struct user_struct;
 1327#line 76
 1328struct signal_struct;
 1329#line 76
 1330struct signal_struct;
 1331#line 77
 1332struct cred;
 1333#line 77
 1334struct cred;
 1335#line 79
 1336struct key_type;
 1337#line 79
 1338struct key_type;
 1339#line 81
 1340struct keyring_list;
 1341#line 81
 1342struct keyring_list;
 1343#line 124
 1344struct key_user;
 1345#line 124 "include/linux/key.h"
 1346union __anonunion____missing_field_name_219 {
 1347   time_t expiry ;
 1348   time_t revoked_at ;
 1349};
 1350#line 124 "include/linux/key.h"
 1351union __anonunion_type_data_220 {
 1352   struct list_head link ;
 1353   unsigned long x[2] ;
 1354   void *p[2] ;
 1355   int reject_error ;
 1356};
 1357#line 124 "include/linux/key.h"
 1358union __anonunion_payload_221 {
 1359   unsigned long value ;
 1360   void *rcudata ;
 1361   void *data ;
 1362   struct keyring_list *subscriptions ;
 1363};
 1364#line 124 "include/linux/key.h"
 1365struct key {
 1366   atomic_t usage ;
 1367   key_serial_t serial ;
 1368   struct rb_node serial_node ;
 1369   struct key_type *type ;
 1370   struct rw_semaphore sem ;
 1371   struct key_user *user ;
 1372   void *security ;
 1373   union __anonunion____missing_field_name_219 __annonCompField41 ;
 1374   uid_t uid ;
 1375   gid_t gid ;
 1376   key_perm_t perm ;
 1377   unsigned short quotalen ;
 1378   unsigned short datalen ;
 1379   unsigned long flags ;
 1380   char *description ;
 1381   union __anonunion_type_data_220 type_data ;
 1382   union __anonunion_payload_221 payload ;
 1383};
 1384#line 18 "include/linux/selinux.h"
 1385struct audit_context;
 1386#line 18
 1387struct audit_context;
 1388#line 21 "include/linux/cred.h"
 1389struct user_struct;
 1390#line 22
 1391struct cred;
 1392#line 23
 1393struct inode;
 1394#line 23
 1395struct inode;
 1396#line 31 "include/linux/cred.h"
 1397struct group_info {
 1398   atomic_t usage ;
 1399   int ngroups ;
 1400   int nblocks ;
 1401   gid_t small_block[32] ;
 1402   gid_t *blocks[0] ;
 1403};
 1404#line 83 "include/linux/cred.h"
 1405struct thread_group_cred {
 1406   atomic_t usage ;
 1407   pid_t tgid ;
 1408   spinlock_t lock ;
 1409   struct key *session_keyring ;
 1410   struct key *process_keyring ;
 1411   struct rcu_head rcu ;
 1412};
 1413#line 116 "include/linux/cred.h"
 1414struct cred {
 1415   atomic_t usage ;
 1416   atomic_t subscribers ;
 1417   void *put_addr ;
 1418   unsigned int magic ;
 1419   uid_t uid ;
 1420   gid_t gid ;
 1421   uid_t suid ;
 1422   gid_t sgid ;
 1423   uid_t euid ;
 1424   gid_t egid ;
 1425   uid_t fsuid ;
 1426   gid_t fsgid ;
 1427   unsigned int securebits ;
 1428   kernel_cap_t cap_inheritable ;
 1429   kernel_cap_t cap_permitted ;
 1430   kernel_cap_t cap_effective ;
 1431   kernel_cap_t cap_bset ;
 1432   unsigned char jit_keyring ;
 1433   struct key *thread_keyring ;
 1434   struct key *request_key_auth ;
 1435   struct thread_group_cred *tgcred ;
 1436   void *security ;
 1437   struct user_struct *user ;
 1438   struct user_namespace *user_ns ;
 1439   struct group_info *group_info ;
 1440   struct rcu_head rcu ;
 1441};
 1442#line 61 "include/linux/llist.h"
 1443struct llist_node;
 1444#line 65 "include/linux/llist.h"
 1445struct llist_node {
 1446   struct llist_node *next ;
 1447};
 1448#line 96 "include/linux/sched.h"
 1449struct exec_domain;
 1450#line 97
 1451struct futex_pi_state;
 1452#line 97
 1453struct futex_pi_state;
 1454#line 98
 1455struct robust_list_head;
 1456#line 98
 1457struct robust_list_head;
 1458#line 99
 1459struct bio_list;
 1460#line 99
 1461struct bio_list;
 1462#line 100
 1463struct fs_struct;
 1464#line 100
 1465struct fs_struct;
 1466#line 101
 1467struct perf_event_context;
 1468#line 101
 1469struct perf_event_context;
 1470#line 102
 1471struct blk_plug;
 1472#line 102
 1473struct blk_plug;
 1474#line 150
 1475struct seq_file;
 1476#line 151
 1477struct cfs_rq;
 1478#line 151
 1479struct cfs_rq;
 1480#line 259
 1481struct task_struct;
 1482#line 366
 1483struct nsproxy;
 1484#line 367
 1485struct user_namespace;
 1486#line 58 "include/linux/aio_abi.h"
 1487struct io_event {
 1488   __u64 data ;
 1489   __u64 obj ;
 1490   __s64 res ;
 1491   __s64 res2 ;
 1492};
 1493#line 16 "include/linux/uio.h"
 1494struct iovec {
 1495   void *iov_base ;
 1496   __kernel_size_t iov_len ;
 1497};
 1498#line 15 "include/linux/aio.h"
 1499struct kioctx;
 1500#line 15
 1501struct kioctx;
 1502#line 87 "include/linux/aio.h"
 1503union __anonunion_ki_obj_223 {
 1504   void *user ;
 1505   struct task_struct *tsk ;
 1506};
 1507#line 87
 1508struct eventfd_ctx;
 1509#line 87 "include/linux/aio.h"
 1510struct kiocb {
 1511   struct list_head ki_run_list ;
 1512   unsigned long ki_flags ;
 1513   int ki_users ;
 1514   unsigned int ki_key ;
 1515   struct file *ki_filp ;
 1516   struct kioctx *ki_ctx ;
 1517   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
 1518   ssize_t (*ki_retry)(struct kiocb * ) ;
 1519   void (*ki_dtor)(struct kiocb * ) ;
 1520   union __anonunion_ki_obj_223 ki_obj ;
 1521   __u64 ki_user_data ;
 1522   loff_t ki_pos ;
 1523   void *private ;
 1524   unsigned short ki_opcode ;
 1525   size_t ki_nbytes ;
 1526   char *ki_buf ;
 1527   size_t ki_left ;
 1528   struct iovec ki_inline_vec ;
 1529   struct iovec *ki_iovec ;
 1530   unsigned long ki_nr_segs ;
 1531   unsigned long ki_cur_seg ;
 1532   struct list_head ki_list ;
 1533   struct list_head ki_batch ;
 1534   struct eventfd_ctx *ki_eventfd ;
 1535};
 1536#line 166 "include/linux/aio.h"
 1537struct aio_ring_info {
 1538   unsigned long mmap_base ;
 1539   unsigned long mmap_size ;
 1540   struct page **ring_pages ;
 1541   spinlock_t ring_lock ;
 1542   long nr_pages ;
 1543   unsigned int nr ;
 1544   unsigned int tail ;
 1545   struct page *internal_pages[8] ;
 1546};
 1547#line 179 "include/linux/aio.h"
 1548struct kioctx {
 1549   atomic_t users ;
 1550   int dead ;
 1551   struct mm_struct *mm ;
 1552   unsigned long user_id ;
 1553   struct hlist_node list ;
 1554   wait_queue_head_t wait ;
 1555   spinlock_t ctx_lock ;
 1556   int reqs_active ;
 1557   struct list_head active_reqs ;
 1558   struct list_head run_list ;
 1559   unsigned int max_reqs ;
 1560   struct aio_ring_info ring_info ;
 1561   struct delayed_work wq ;
 1562   struct rcu_head rcu_head ;
 1563};
 1564#line 214
 1565struct mm_struct;
 1566#line 443 "include/linux/sched.h"
 1567struct sighand_struct {
 1568   atomic_t count ;
 1569   struct k_sigaction action[64] ;
 1570   spinlock_t siglock ;
 1571   wait_queue_head_t signalfd_wqh ;
 1572};
 1573#line 450 "include/linux/sched.h"
 1574struct pacct_struct {
 1575   int ac_flag ;
 1576   long ac_exitcode ;
 1577   unsigned long ac_mem ;
 1578   cputime_t ac_utime ;
 1579   cputime_t ac_stime ;
 1580   unsigned long ac_minflt ;
 1581   unsigned long ac_majflt ;
 1582};
 1583#line 458 "include/linux/sched.h"
 1584struct cpu_itimer {
 1585   cputime_t expires ;
 1586   cputime_t incr ;
 1587   u32 error ;
 1588   u32 incr_error ;
 1589};
 1590#line 476 "include/linux/sched.h"
 1591struct task_cputime {
 1592   cputime_t utime ;
 1593   cputime_t stime ;
 1594   unsigned long long sum_exec_runtime ;
 1595};
 1596#line 512 "include/linux/sched.h"
 1597struct thread_group_cputimer {
 1598   struct task_cputime cputime ;
 1599   int running ;
 1600   raw_spinlock_t lock ;
 1601};
 1602#line 519
 1603struct autogroup;
 1604#line 519
 1605struct autogroup;
 1606#line 528
 1607struct tty_struct;
 1608#line 528
 1609struct taskstats;
 1610#line 528
 1611struct tty_audit_buf;
 1612#line 528 "include/linux/sched.h"
 1613struct signal_struct {
 1614   atomic_t sigcnt ;
 1615   atomic_t live ;
 1616   int nr_threads ;
 1617   wait_queue_head_t wait_chldexit ;
 1618   struct task_struct *curr_target ;
 1619   struct sigpending shared_pending ;
 1620   int group_exit_code ;
 1621   int notify_count ;
 1622   struct task_struct *group_exit_task ;
 1623   int group_stop_count ;
 1624   unsigned int flags ;
 1625   unsigned int is_child_subreaper : 1 ;
 1626   unsigned int has_child_subreaper : 1 ;
 1627   struct list_head posix_timers ;
 1628   struct hrtimer real_timer ;
 1629   struct pid *leader_pid ;
 1630   ktime_t it_real_incr ;
 1631   struct cpu_itimer it[2] ;
 1632   struct thread_group_cputimer cputimer ;
 1633   struct task_cputime cputime_expires ;
 1634   struct list_head cpu_timers[3] ;
 1635   struct pid *tty_old_pgrp ;
 1636   int leader ;
 1637   struct tty_struct *tty ;
 1638   struct autogroup *autogroup ;
 1639   cputime_t utime ;
 1640   cputime_t stime ;
 1641   cputime_t cutime ;
 1642   cputime_t cstime ;
 1643   cputime_t gtime ;
 1644   cputime_t cgtime ;
 1645   cputime_t prev_utime ;
 1646   cputime_t prev_stime ;
 1647   unsigned long nvcsw ;
 1648   unsigned long nivcsw ;
 1649   unsigned long cnvcsw ;
 1650   unsigned long cnivcsw ;
 1651   unsigned long min_flt ;
 1652   unsigned long maj_flt ;
 1653   unsigned long cmin_flt ;
 1654   unsigned long cmaj_flt ;
 1655   unsigned long inblock ;
 1656   unsigned long oublock ;
 1657   unsigned long cinblock ;
 1658   unsigned long coublock ;
 1659   unsigned long maxrss ;
 1660   unsigned long cmaxrss ;
 1661   struct task_io_accounting ioac ;
 1662   unsigned long long sum_sched_runtime ;
 1663   struct rlimit rlim[16] ;
 1664   struct pacct_struct pacct ;
 1665   struct taskstats *stats ;
 1666   unsigned int audit_tty ;
 1667   struct tty_audit_buf *tty_audit_buf ;
 1668   struct rw_semaphore group_rwsem ;
 1669   int oom_adj ;
 1670   int oom_score_adj ;
 1671   int oom_score_adj_min ;
 1672   struct mutex cred_guard_mutex ;
 1673};
 1674#line 703 "include/linux/sched.h"
 1675struct user_struct {
 1676   atomic_t __count ;
 1677   atomic_t processes ;
 1678   atomic_t files ;
 1679   atomic_t sigpending ;
 1680   atomic_t inotify_watches ;
 1681   atomic_t inotify_devs ;
 1682   atomic_t fanotify_listeners ;
 1683   atomic_long_t epoll_watches ;
 1684   unsigned long mq_bytes ;
 1685   unsigned long locked_shm ;
 1686   struct key *uid_keyring ;
 1687   struct key *session_keyring ;
 1688   struct hlist_node uidhash_node ;
 1689   uid_t uid ;
 1690   struct user_namespace *user_ns ;
 1691   atomic_long_t locked_vm ;
 1692};
 1693#line 747
 1694struct backing_dev_info;
 1695#line 747
 1696struct backing_dev_info;
 1697#line 748
 1698struct reclaim_state;
 1699#line 748
 1700struct reclaim_state;
 1701#line 751 "include/linux/sched.h"
 1702struct sched_info {
 1703   unsigned long pcount ;
 1704   unsigned long long run_delay ;
 1705   unsigned long long last_arrival ;
 1706   unsigned long long last_queued ;
 1707};
 1708#line 763 "include/linux/sched.h"
 1709struct task_delay_info {
 1710   spinlock_t lock ;
 1711   unsigned int flags ;
 1712   struct timespec blkio_start ;
 1713   struct timespec blkio_end ;
 1714   u64 blkio_delay ;
 1715   u64 swapin_delay ;
 1716   u32 blkio_count ;
 1717   u32 swapin_count ;
 1718   struct timespec freepages_start ;
 1719   struct timespec freepages_end ;
 1720   u64 freepages_delay ;
 1721   u32 freepages_count ;
 1722};
 1723#line 1088
 1724struct io_context;
 1725#line 1088
 1726struct io_context;
 1727#line 1097
 1728struct audit_context;
 1729#line 1098
 1730struct mempolicy;
 1731#line 1099
 1732struct pipe_inode_info;
 1733#line 1099
 1734struct pipe_inode_info;
 1735#line 1102
 1736struct rq;
 1737#line 1102
 1738struct rq;
 1739#line 1122 "include/linux/sched.h"
 1740struct sched_class {
 1741   struct sched_class    *next ;
 1742   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
 1743   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
 1744   void (*yield_task)(struct rq *rq ) ;
 1745   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
 1746   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
 1747   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
 1748   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
 1749   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
 1750   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
 1751   void (*post_schedule)(struct rq *this_rq ) ;
 1752   void (*task_waking)(struct task_struct *task ) ;
 1753   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
 1754   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask    *newmask ) ;
 1755   void (*rq_online)(struct rq *rq ) ;
 1756   void (*rq_offline)(struct rq *rq ) ;
 1757   void (*set_curr_task)(struct rq *rq ) ;
 1758   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
 1759   void (*task_fork)(struct task_struct *p ) ;
 1760   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
 1761   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
 1762   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
 1763   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
 1764   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
 1765};
 1766#line 1167 "include/linux/sched.h"
 1767struct load_weight {
 1768   unsigned long weight ;
 1769   unsigned long inv_weight ;
 1770};
 1771#line 1172 "include/linux/sched.h"
 1772struct sched_statistics {
 1773   u64 wait_start ;
 1774   u64 wait_max ;
 1775   u64 wait_count ;
 1776   u64 wait_sum ;
 1777   u64 iowait_count ;
 1778   u64 iowait_sum ;
 1779   u64 sleep_start ;
 1780   u64 sleep_max ;
 1781   s64 sum_sleep_runtime ;
 1782   u64 block_start ;
 1783   u64 block_max ;
 1784   u64 exec_max ;
 1785   u64 slice_max ;
 1786   u64 nr_migrations_cold ;
 1787   u64 nr_failed_migrations_affine ;
 1788   u64 nr_failed_migrations_running ;
 1789   u64 nr_failed_migrations_hot ;
 1790   u64 nr_forced_migrations ;
 1791   u64 nr_wakeups ;
 1792   u64 nr_wakeups_sync ;
 1793   u64 nr_wakeups_migrate ;
 1794   u64 nr_wakeups_local ;
 1795   u64 nr_wakeups_remote ;
 1796   u64 nr_wakeups_affine ;
 1797   u64 nr_wakeups_affine_attempts ;
 1798   u64 nr_wakeups_passive ;
 1799   u64 nr_wakeups_idle ;
 1800};
 1801#line 1207 "include/linux/sched.h"
 1802struct sched_entity {
 1803   struct load_weight load ;
 1804   struct rb_node run_node ;
 1805   struct list_head group_node ;
 1806   unsigned int on_rq ;
 1807   u64 exec_start ;
 1808   u64 sum_exec_runtime ;
 1809   u64 vruntime ;
 1810   u64 prev_sum_exec_runtime ;
 1811   u64 nr_migrations ;
 1812   struct sched_statistics statistics ;
 1813   struct sched_entity *parent ;
 1814   struct cfs_rq *cfs_rq ;
 1815   struct cfs_rq *my_q ;
 1816};
 1817#line 1233
 1818struct rt_rq;
 1819#line 1233 "include/linux/sched.h"
 1820struct sched_rt_entity {
 1821   struct list_head run_list ;
 1822   unsigned long timeout ;
 1823   unsigned int time_slice ;
 1824   int nr_cpus_allowed ;
 1825   struct sched_rt_entity *back ;
 1826   struct sched_rt_entity *parent ;
 1827   struct rt_rq *rt_rq ;
 1828   struct rt_rq *my_q ;
 1829};
 1830#line 1264
 1831struct files_struct;
 1832#line 1264
 1833struct css_set;
 1834#line 1264
 1835struct compat_robust_list_head;
 1836#line 1264
 1837struct mem_cgroup;
 1838#line 1264 "include/linux/sched.h"
 1839struct memcg_batch_info {
 1840   int do_batch ;
 1841   struct mem_cgroup *memcg ;
 1842   unsigned long nr_pages ;
 1843   unsigned long memsw_nr_pages ;
 1844};
 1845#line 1264 "include/linux/sched.h"
 1846struct task_struct {
 1847   long volatile   state ;
 1848   void *stack ;
 1849   atomic_t usage ;
 1850   unsigned int flags ;
 1851   unsigned int ptrace ;
 1852   struct llist_node wake_entry ;
 1853   int on_cpu ;
 1854   int on_rq ;
 1855   int prio ;
 1856   int static_prio ;
 1857   int normal_prio ;
 1858   unsigned int rt_priority ;
 1859   struct sched_class    *sched_class ;
 1860   struct sched_entity se ;
 1861   struct sched_rt_entity rt ;
 1862   struct hlist_head preempt_notifiers ;
 1863   unsigned char fpu_counter ;
 1864   unsigned int policy ;
 1865   cpumask_t cpus_allowed ;
 1866   struct sched_info sched_info ;
 1867   struct list_head tasks ;
 1868   struct plist_node pushable_tasks ;
 1869   struct mm_struct *mm ;
 1870   struct mm_struct *active_mm ;
 1871   unsigned int brk_randomized : 1 ;
 1872   int exit_state ;
 1873   int exit_code ;
 1874   int exit_signal ;
 1875   int pdeath_signal ;
 1876   unsigned int jobctl ;
 1877   unsigned int personality ;
 1878   unsigned int did_exec : 1 ;
 1879   unsigned int in_execve : 1 ;
 1880   unsigned int in_iowait : 1 ;
 1881   unsigned int sched_reset_on_fork : 1 ;
 1882   unsigned int sched_contributes_to_load : 1 ;
 1883   unsigned int irq_thread : 1 ;
 1884   pid_t pid ;
 1885   pid_t tgid ;
 1886   unsigned long stack_canary ;
 1887   struct task_struct *real_parent ;
 1888   struct task_struct *parent ;
 1889   struct list_head children ;
 1890   struct list_head sibling ;
 1891   struct task_struct *group_leader ;
 1892   struct list_head ptraced ;
 1893   struct list_head ptrace_entry ;
 1894   struct pid_link pids[3] ;
 1895   struct list_head thread_group ;
 1896   struct completion *vfork_done ;
 1897   int *set_child_tid ;
 1898   int *clear_child_tid ;
 1899   cputime_t utime ;
 1900   cputime_t stime ;
 1901   cputime_t utimescaled ;
 1902   cputime_t stimescaled ;
 1903   cputime_t gtime ;
 1904   cputime_t prev_utime ;
 1905   cputime_t prev_stime ;
 1906   unsigned long nvcsw ;
 1907   unsigned long nivcsw ;
 1908   struct timespec start_time ;
 1909   struct timespec real_start_time ;
 1910   unsigned long min_flt ;
 1911   unsigned long maj_flt ;
 1912   struct task_cputime cputime_expires ;
 1913   struct list_head cpu_timers[3] ;
 1914   struct cred    *real_cred ;
 1915   struct cred    *cred ;
 1916   struct cred *replacement_session_keyring ;
 1917   char comm[16] ;
 1918   int link_count ;
 1919   int total_link_count ;
 1920   struct sysv_sem sysvsem ;
 1921   unsigned long last_switch_count ;
 1922   struct thread_struct thread ;
 1923   struct fs_struct *fs ;
 1924   struct files_struct *files ;
 1925   struct nsproxy *nsproxy ;
 1926   struct signal_struct *signal ;
 1927   struct sighand_struct *sighand ;
 1928   sigset_t blocked ;
 1929   sigset_t real_blocked ;
 1930   sigset_t saved_sigmask ;
 1931   struct sigpending pending ;
 1932   unsigned long sas_ss_sp ;
 1933   size_t sas_ss_size ;
 1934   int (*notifier)(void *priv ) ;
 1935   void *notifier_data ;
 1936   sigset_t *notifier_mask ;
 1937   struct audit_context *audit_context ;
 1938   uid_t loginuid ;
 1939   unsigned int sessionid ;
 1940   seccomp_t seccomp ;
 1941   u32 parent_exec_id ;
 1942   u32 self_exec_id ;
 1943   spinlock_t alloc_lock ;
 1944   raw_spinlock_t pi_lock ;
 1945   struct plist_head pi_waiters ;
 1946   struct rt_mutex_waiter *pi_blocked_on ;
 1947   struct mutex_waiter *blocked_on ;
 1948   unsigned int irq_events ;
 1949   unsigned long hardirq_enable_ip ;
 1950   unsigned long hardirq_disable_ip ;
 1951   unsigned int hardirq_enable_event ;
 1952   unsigned int hardirq_disable_event ;
 1953   int hardirqs_enabled ;
 1954   int hardirq_context ;
 1955   unsigned long softirq_disable_ip ;
 1956   unsigned long softirq_enable_ip ;
 1957   unsigned int softirq_disable_event ;
 1958   unsigned int softirq_enable_event ;
 1959   int softirqs_enabled ;
 1960   int softirq_context ;
 1961   void *journal_info ;
 1962   struct bio_list *bio_list ;
 1963   struct blk_plug *plug ;
 1964   struct reclaim_state *reclaim_state ;
 1965   struct backing_dev_info *backing_dev_info ;
 1966   struct io_context *io_context ;
 1967   unsigned long ptrace_message ;
 1968   siginfo_t *last_siginfo ;
 1969   struct task_io_accounting ioac ;
 1970   u64 acct_rss_mem1 ;
 1971   u64 acct_vm_mem1 ;
 1972   cputime_t acct_timexpd ;
 1973   nodemask_t mems_allowed ;
 1974   seqcount_t mems_allowed_seq ;
 1975   int cpuset_mem_spread_rotor ;
 1976   int cpuset_slab_spread_rotor ;
 1977   struct css_set *cgroups ;
 1978   struct list_head cg_list ;
 1979   struct robust_list_head *robust_list ;
 1980   struct compat_robust_list_head *compat_robust_list ;
 1981   struct list_head pi_state_list ;
 1982   struct futex_pi_state *pi_state_cache ;
 1983   struct perf_event_context *perf_event_ctxp[2] ;
 1984   struct mutex perf_event_mutex ;
 1985   struct list_head perf_event_list ;
 1986   struct mempolicy *mempolicy ;
 1987   short il_next ;
 1988   short pref_node_fork ;
 1989   struct rcu_head rcu ;
 1990   struct pipe_inode_info *splice_pipe ;
 1991   struct task_delay_info *delays ;
 1992   int make_it_fail ;
 1993   int nr_dirtied ;
 1994   int nr_dirtied_pause ;
 1995   unsigned long dirty_paused_when ;
 1996   int latency_record_count ;
 1997   struct latency_record latency_record[32] ;
 1998   unsigned long timer_slack_ns ;
 1999   unsigned long default_timer_slack_ns ;
 2000   struct list_head *scm_work_list ;
 2001   unsigned long trace ;
 2002   unsigned long trace_recursion ;
 2003   struct memcg_batch_info memcg_batch ;
 2004   atomic_t ptrace_bp_refcnt ;
 2005};
 2006#line 1681
 2007struct pid_namespace;
 2008#line 10 "include/linux/gfp.h"
 2009struct vm_area_struct;
 2010#line 20 "include/linux/kobject_ns.h"
 2011struct sock;
 2012#line 20
 2013struct sock;
 2014#line 21
 2015struct kobject;
 2016#line 21
 2017struct kobject;
 2018#line 27
 2019enum kobj_ns_type {
 2020    KOBJ_NS_TYPE_NONE = 0,
 2021    KOBJ_NS_TYPE_NET = 1,
 2022    KOBJ_NS_TYPES = 2
 2023} ;
 2024#line 40 "include/linux/kobject_ns.h"
 2025struct kobj_ns_type_operations {
 2026   enum kobj_ns_type type ;
 2027   void *(*grab_current_ns)(void) ;
 2028   void    *(*netlink_ns)(struct sock *sk ) ;
 2029   void    *(*initial_ns)(void) ;
 2030   void (*drop_ns)(void * ) ;
 2031};
 2032#line 22 "include/linux/sysfs.h"
 2033struct kobject;
 2034#line 23
 2035struct module;
 2036#line 24
 2037enum kobj_ns_type;
 2038#line 26 "include/linux/sysfs.h"
 2039struct attribute {
 2040   char    *name ;
 2041   umode_t mode ;
 2042};
 2043#line 56 "include/linux/sysfs.h"
 2044struct attribute_group {
 2045   char    *name ;
 2046   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 2047   struct attribute **attrs ;
 2048};
 2049#line 85
 2050struct file;
 2051#line 86
 2052struct vm_area_struct;
 2053#line 88 "include/linux/sysfs.h"
 2054struct bin_attribute {
 2055   struct attribute attr ;
 2056   size_t size ;
 2057   void *private ;
 2058   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 2059                   loff_t  , size_t  ) ;
 2060   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 2061                    loff_t  , size_t  ) ;
 2062   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 2063};
 2064#line 112 "include/linux/sysfs.h"
 2065struct sysfs_ops {
 2066   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 2067   ssize_t (*store)(struct kobject * , struct attribute * , char    * , size_t  ) ;
 2068   void    *(*namespace)(struct kobject * , struct attribute    * ) ;
 2069};
 2070#line 118
 2071struct sysfs_dirent;
 2072#line 118
 2073struct sysfs_dirent;
 2074#line 22 "include/linux/kref.h"
 2075struct kref {
 2076   atomic_t refcount ;
 2077};
 2078#line 60 "include/linux/kobject.h"
 2079struct kset;
 2080#line 60
 2081struct kobj_type;
 2082#line 60 "include/linux/kobject.h"
 2083struct kobject {
 2084   char    *name ;
 2085   struct list_head entry ;
 2086   struct kobject *parent ;
 2087   struct kset *kset ;
 2088   struct kobj_type *ktype ;
 2089   struct sysfs_dirent *sd ;
 2090   struct kref kref ;
 2091   unsigned int state_initialized : 1 ;
 2092   unsigned int state_in_sysfs : 1 ;
 2093   unsigned int state_add_uevent_sent : 1 ;
 2094   unsigned int state_remove_uevent_sent : 1 ;
 2095   unsigned int uevent_suppress : 1 ;
 2096};
 2097#line 108 "include/linux/kobject.h"
 2098struct kobj_type {
 2099   void (*release)(struct kobject *kobj ) ;
 2100   struct sysfs_ops    *sysfs_ops ;
 2101   struct attribute **default_attrs ;
 2102   struct kobj_ns_type_operations    *(*child_ns_type)(struct kobject *kobj ) ;
 2103   void    *(*namespace)(struct kobject *kobj ) ;
 2104};
 2105#line 116 "include/linux/kobject.h"
 2106struct kobj_uevent_env {
 2107   char *envp[32] ;
 2108   int envp_idx ;
 2109   char buf[2048] ;
 2110   int buflen ;
 2111};
 2112#line 123 "include/linux/kobject.h"
 2113struct kset_uevent_ops {
 2114   int (*   filter)(struct kset *kset , struct kobject *kobj ) ;
 2115   char    *(*   name)(struct kset *kset , struct kobject *kobj ) ;
 2116   int (*   uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 2117};
 2118#line 140
 2119struct sock;
 2120#line 159 "include/linux/kobject.h"
 2121struct kset {
 2122   struct list_head list ;
 2123   spinlock_t list_lock ;
 2124   struct kobject kobj ;
 2125   struct kset_uevent_ops    *uevent_ops ;
 2126};
 2127#line 46 "include/linux/slub_def.h"
 2128struct kmem_cache_cpu {
 2129   void **freelist ;
 2130   unsigned long tid ;
 2131   struct page *page ;
 2132   struct page *partial ;
 2133   int node ;
 2134   unsigned int stat[26] ;
 2135};
 2136#line 57 "include/linux/slub_def.h"
 2137struct kmem_cache_node {
 2138   spinlock_t list_lock ;
 2139   unsigned long nr_partial ;
 2140   struct list_head partial ;
 2141   atomic_long_t nr_slabs ;
 2142   atomic_long_t total_objects ;
 2143   struct list_head full ;
 2144};
 2145#line 73 "include/linux/slub_def.h"
 2146struct kmem_cache_order_objects {
 2147   unsigned long x ;
 2148};
 2149#line 80 "include/linux/slub_def.h"
 2150struct kmem_cache {
 2151   struct kmem_cache_cpu *cpu_slab ;
 2152   unsigned long flags ;
 2153   unsigned long min_partial ;
 2154   int size ;
 2155   int objsize ;
 2156   int offset ;
 2157   int cpu_partial ;
 2158   struct kmem_cache_order_objects oo ;
 2159   struct kmem_cache_order_objects max ;
 2160   struct kmem_cache_order_objects min ;
 2161   gfp_t allocflags ;
 2162   int refcount ;
 2163   void (*ctor)(void * ) ;
 2164   int inuse ;
 2165   int align ;
 2166   int reserved ;
 2167   char    *name ;
 2168   struct list_head list ;
 2169   struct kobject kobj ;
 2170   int remote_node_defrag_ratio ;
 2171   struct kmem_cache_node *node[1 << 10] ;
 2172};
 2173#line 33 "include/asm-generic/poll.h"
 2174struct pollfd {
 2175   int fd ;
 2176   short events ;
 2177   short revents ;
 2178};
 2179#line 15 "include/linux/blk_types.h"
 2180struct page;
 2181#line 16
 2182struct block_device;
 2183#line 16
 2184struct block_device;
 2185#line 33 "include/linux/list_bl.h"
 2186struct hlist_bl_node;
 2187#line 33 "include/linux/list_bl.h"
 2188struct hlist_bl_head {
 2189   struct hlist_bl_node *first ;
 2190};
 2191#line 37 "include/linux/list_bl.h"
 2192struct hlist_bl_node {
 2193   struct hlist_bl_node *next ;
 2194   struct hlist_bl_node **pprev ;
 2195};
 2196#line 13 "include/linux/dcache.h"
 2197struct nameidata;
 2198#line 13
 2199struct nameidata;
 2200#line 14
 2201struct path;
 2202#line 14
 2203struct path;
 2204#line 15
 2205struct vfsmount;
 2206#line 15
 2207struct vfsmount;
 2208#line 35 "include/linux/dcache.h"
 2209struct qstr {
 2210   unsigned int hash ;
 2211   unsigned int len ;
 2212   unsigned char    *name ;
 2213};
 2214#line 88
 2215struct dentry_operations;
 2216#line 88
 2217struct super_block;
 2218#line 88 "include/linux/dcache.h"
 2219union __anonunion_d_u_225 {
 2220   struct list_head d_child ;
 2221   struct rcu_head d_rcu ;
 2222};
 2223#line 88 "include/linux/dcache.h"
 2224struct dentry {
 2225   unsigned int d_flags ;
 2226   seqcount_t d_seq ;
 2227   struct hlist_bl_node d_hash ;
 2228   struct dentry *d_parent ;
 2229   struct qstr d_name ;
 2230   struct inode *d_inode ;
 2231   unsigned char d_iname[32] ;
 2232   unsigned int d_count ;
 2233   spinlock_t d_lock ;
 2234   struct dentry_operations    *d_op ;
 2235   struct super_block *d_sb ;
 2236   unsigned long d_time ;
 2237   void *d_fsdata ;
 2238   struct list_head d_lru ;
 2239   union __anonunion_d_u_225 d_u ;
 2240   struct list_head d_subdirs ;
 2241   struct list_head d_alias ;
 2242};
 2243#line 131 "include/linux/dcache.h"
 2244struct dentry_operations {
 2245   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
 2246   int (*d_hash)(struct dentry    * , struct inode    * , struct qstr * ) ;
 2247   int (*d_compare)(struct dentry    * , struct inode    * , struct dentry  const  * ,
 2248                    struct inode    * , unsigned int  , char    * , struct qstr  const  * ) ;
 2249   int (*d_delete)(struct dentry    * ) ;
 2250   void (*d_release)(struct dentry * ) ;
 2251   void (*d_prune)(struct dentry * ) ;
 2252   void (*d_iput)(struct dentry * , struct inode * ) ;
 2253   char *(*d_dname)(struct dentry * , char * , int  ) ;
 2254   struct vfsmount *(*d_automount)(struct path * ) ;
 2255   int (*d_manage)(struct dentry * , bool  ) ;
 2256} __attribute__((__aligned__((1) <<  (6) ))) ;
 2257#line 4 "include/linux/path.h"
 2258struct dentry;
 2259#line 5
 2260struct vfsmount;
 2261#line 7 "include/linux/path.h"
 2262struct path {
 2263   struct vfsmount *mnt ;
 2264   struct dentry *dentry ;
 2265};
 2266#line 62 "include/linux/stat.h"
 2267struct kstat {
 2268   u64 ino ;
 2269   dev_t dev ;
 2270   umode_t mode ;
 2271   unsigned int nlink ;
 2272   uid_t uid ;
 2273   gid_t gid ;
 2274   dev_t rdev ;
 2275   loff_t size ;
 2276   struct timespec atime ;
 2277   struct timespec mtime ;
 2278   struct timespec ctime ;
 2279   unsigned long blksize ;
 2280   unsigned long long blocks ;
 2281};
 2282#line 64 "include/linux/radix-tree.h"
 2283struct radix_tree_node;
 2284#line 64 "include/linux/radix-tree.h"
 2285struct radix_tree_root {
 2286   unsigned int height ;
 2287   gfp_t gfp_mask ;
 2288   struct radix_tree_node *rnode ;
 2289};
 2290#line 16 "include/linux/fiemap.h"
 2291struct fiemap_extent {
 2292   __u64 fe_logical ;
 2293   __u64 fe_physical ;
 2294   __u64 fe_length ;
 2295   __u64 fe_reserved64[2] ;
 2296   __u32 fe_flags ;
 2297   __u32 fe_reserved[3] ;
 2298};
 2299#line 8 "include/linux/shrinker.h"
 2300struct shrink_control {
 2301   gfp_t gfp_mask ;
 2302   unsigned long nr_to_scan ;
 2303};
 2304#line 31 "include/linux/shrinker.h"
 2305struct shrinker {
 2306   int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
 2307   int seeks ;
 2308   long batch ;
 2309   struct list_head list ;
 2310   atomic_long_t nr_in_batch ;
 2311};
 2312#line 10 "include/linux/migrate_mode.h"
 2313enum migrate_mode {
 2314    MIGRATE_ASYNC = 0,
 2315    MIGRATE_SYNC_LIGHT = 1,
 2316    MIGRATE_SYNC = 2
 2317} ;
 2318#line 408 "include/linux/fs.h"
 2319struct export_operations;
 2320#line 408
 2321struct export_operations;
 2322#line 410
 2323struct iovec;
 2324#line 411
 2325struct nameidata;
 2326#line 412
 2327struct kiocb;
 2328#line 413
 2329struct kobject;
 2330#line 414
 2331struct pipe_inode_info;
 2332#line 415
 2333struct poll_table_struct;
 2334#line 415
 2335struct poll_table_struct;
 2336#line 416
 2337struct kstatfs;
 2338#line 416
 2339struct kstatfs;
 2340#line 417
 2341struct vm_area_struct;
 2342#line 418
 2343struct vfsmount;
 2344#line 419
 2345struct cred;
 2346#line 469 "include/linux/fs.h"
 2347struct iattr {
 2348   unsigned int ia_valid ;
 2349   umode_t ia_mode ;
 2350   uid_t ia_uid ;
 2351   gid_t ia_gid ;
 2352   loff_t ia_size ;
 2353   struct timespec ia_atime ;
 2354   struct timespec ia_mtime ;
 2355   struct timespec ia_ctime ;
 2356   struct file *ia_file ;
 2357};
 2358#line 129 "include/linux/quota.h"
 2359struct if_dqinfo {
 2360   __u64 dqi_bgrace ;
 2361   __u64 dqi_igrace ;
 2362   __u32 dqi_flags ;
 2363   __u32 dqi_valid ;
 2364};
 2365#line 50 "include/linux/dqblk_xfs.h"
 2366struct fs_disk_quota {
 2367   __s8 d_version ;
 2368   __s8 d_flags ;
 2369   __u16 d_fieldmask ;
 2370   __u32 d_id ;
 2371   __u64 d_blk_hardlimit ;
 2372   __u64 d_blk_softlimit ;
 2373   __u64 d_ino_hardlimit ;
 2374   __u64 d_ino_softlimit ;
 2375   __u64 d_bcount ;
 2376   __u64 d_icount ;
 2377   __s32 d_itimer ;
 2378   __s32 d_btimer ;
 2379   __u16 d_iwarns ;
 2380   __u16 d_bwarns ;
 2381   __s32 d_padding2 ;
 2382   __u64 d_rtb_hardlimit ;
 2383   __u64 d_rtb_softlimit ;
 2384   __u64 d_rtbcount ;
 2385   __s32 d_rtbtimer ;
 2386   __u16 d_rtbwarns ;
 2387   __s16 d_padding3 ;
 2388   char d_padding4[8] ;
 2389};
 2390#line 146 "include/linux/dqblk_xfs.h"
 2391struct fs_qfilestat {
 2392   __u64 qfs_ino ;
 2393   __u64 qfs_nblks ;
 2394   __u32 qfs_nextents ;
 2395};
 2396#line 146 "include/linux/dqblk_xfs.h"
 2397typedef struct fs_qfilestat fs_qfilestat_t;
 2398#line 152 "include/linux/dqblk_xfs.h"
 2399struct fs_quota_stat {
 2400   __s8 qs_version ;
 2401   __u16 qs_flags ;
 2402   __s8 qs_pad ;
 2403   fs_qfilestat_t qs_uquota ;
 2404   fs_qfilestat_t qs_gquota ;
 2405   __u32 qs_incoredqs ;
 2406   __s32 qs_btimelimit ;
 2407   __s32 qs_itimelimit ;
 2408   __s32 qs_rtbtimelimit ;
 2409   __u16 qs_bwarnlimit ;
 2410   __u16 qs_iwarnlimit ;
 2411};
 2412#line 17 "include/linux/dqblk_qtree.h"
 2413struct dquot;
 2414#line 17
 2415struct dquot;
 2416#line 185 "include/linux/quota.h"
 2417typedef __kernel_uid32_t qid_t;
 2418#line 186 "include/linux/quota.h"
 2419typedef long long qsize_t;
 2420#line 200 "include/linux/quota.h"
 2421struct mem_dqblk {
 2422   qsize_t dqb_bhardlimit ;
 2423   qsize_t dqb_bsoftlimit ;
 2424   qsize_t dqb_curspace ;
 2425   qsize_t dqb_rsvspace ;
 2426   qsize_t dqb_ihardlimit ;
 2427   qsize_t dqb_isoftlimit ;
 2428   qsize_t dqb_curinodes ;
 2429   time_t dqb_btime ;
 2430   time_t dqb_itime ;
 2431};
 2432#line 215
 2433struct quota_format_type;
 2434#line 215
 2435struct quota_format_type;
 2436#line 217 "include/linux/quota.h"
 2437struct mem_dqinfo {
 2438   struct quota_format_type *dqi_format ;
 2439   int dqi_fmt_id ;
 2440   struct list_head dqi_dirty_list ;
 2441   unsigned long dqi_flags ;
 2442   unsigned int dqi_bgrace ;
 2443   unsigned int dqi_igrace ;
 2444   qsize_t dqi_maxblimit ;
 2445   qsize_t dqi_maxilimit ;
 2446   void *dqi_priv ;
 2447};
 2448#line 230
 2449struct super_block;
 2450#line 288 "include/linux/quota.h"
 2451struct dquot {
 2452   struct hlist_node dq_hash ;
 2453   struct list_head dq_inuse ;
 2454   struct list_head dq_free ;
 2455   struct list_head dq_dirty ;
 2456   struct mutex dq_lock ;
 2457   atomic_t dq_count ;
 2458   wait_queue_head_t dq_wait_unused ;
 2459   struct super_block *dq_sb ;
 2460   unsigned int dq_id ;
 2461   loff_t dq_off ;
 2462   unsigned long dq_flags ;
 2463   short dq_type ;
 2464   struct mem_dqblk dq_dqb ;
 2465};
 2466#line 305 "include/linux/quota.h"
 2467struct quota_format_ops {
 2468   int (*check_quota_file)(struct super_block *sb , int type ) ;
 2469   int (*read_file_info)(struct super_block *sb , int type ) ;
 2470   int (*write_file_info)(struct super_block *sb , int type ) ;
 2471   int (*free_file_info)(struct super_block *sb , int type ) ;
 2472   int (*read_dqblk)(struct dquot *dquot ) ;
 2473   int (*commit_dqblk)(struct dquot *dquot ) ;
 2474   int (*release_dqblk)(struct dquot *dquot ) ;
 2475};
 2476#line 316 "include/linux/quota.h"
 2477struct dquot_operations {
 2478   int (*write_dquot)(struct dquot * ) ;
 2479   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
 2480   void (*destroy_dquot)(struct dquot * ) ;
 2481   int (*acquire_dquot)(struct dquot * ) ;
 2482   int (*release_dquot)(struct dquot * ) ;
 2483   int (*mark_dirty)(struct dquot * ) ;
 2484   int (*write_info)(struct super_block * , int  ) ;
 2485   qsize_t *(*get_reserved_space)(struct inode * ) ;
 2486};
 2487#line 329
 2488struct path;
 2489#line 332 "include/linux/quota.h"
 2490struct quotactl_ops {
 2491   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
 2492   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
 2493   int (*quota_off)(struct super_block * , int  ) ;
 2494   int (*quota_sync)(struct super_block * , int  , int  ) ;
 2495   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 2496   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 2497   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 2498   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 2499   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
 2500   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
 2501};
 2502#line 345 "include/linux/quota.h"
 2503struct quota_format_type {
 2504   int qf_fmt_id ;
 2505   struct quota_format_ops    *qf_ops ;
 2506   struct module *qf_owner ;
 2507   struct quota_format_type *qf_next ;
 2508};
 2509#line 399 "include/linux/quota.h"
 2510struct quota_info {
 2511   unsigned int flags ;
 2512   struct mutex dqio_mutex ;
 2513   struct mutex dqonoff_mutex ;
 2514   struct rw_semaphore dqptr_sem ;
 2515   struct inode *files[2] ;
 2516   struct mem_dqinfo info[2] ;
 2517   struct quota_format_ops    *ops[2] ;
 2518};
 2519#line 532 "include/linux/fs.h"
 2520struct page;
 2521#line 533
 2522struct address_space;
 2523#line 534
 2524struct writeback_control;
 2525#line 534
 2526struct writeback_control;
 2527#line 577 "include/linux/fs.h"
 2528union __anonunion_arg_232 {
 2529   char *buf ;
 2530   void *data ;
 2531};
 2532#line 577 "include/linux/fs.h"
 2533struct __anonstruct_read_descriptor_t_231 {
 2534   size_t written ;
 2535   size_t count ;
 2536   union __anonunion_arg_232 arg ;
 2537   int error ;
 2538};
 2539#line 577 "include/linux/fs.h"
 2540typedef struct __anonstruct_read_descriptor_t_231 read_descriptor_t;
 2541#line 590 "include/linux/fs.h"
 2542struct address_space_operations {
 2543   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
 2544   int (*readpage)(struct file * , struct page * ) ;
 2545   int (*writepages)(struct address_space * , struct writeback_control * ) ;
 2546   int (*set_page_dirty)(struct page *page ) ;
 2547   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
 2548                    unsigned int nr_pages ) ;
 2549   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
 2550                      unsigned int len , unsigned int flags , struct page **pagep ,
 2551                      void **fsdata ) ;
 2552   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
 2553                    unsigned int copied , struct page *page , void *fsdata ) ;
 2554   sector_t (*bmap)(struct address_space * , sector_t  ) ;
 2555   void (*invalidatepage)(struct page * , unsigned long  ) ;
 2556   int (*releasepage)(struct page * , gfp_t  ) ;
 2557   void (*freepage)(struct page * ) ;
 2558   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec    *iov , loff_t offset ,
 2559                        unsigned long nr_segs ) ;
 2560   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
 2561   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
 2562   int (*launder_page)(struct page * ) ;
 2563   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
 2564   int (*error_remove_page)(struct address_space * , struct page * ) ;
 2565};
 2566#line 645
 2567struct backing_dev_info;
 2568#line 646 "include/linux/fs.h"
 2569struct address_space {
 2570   struct inode *host ;
 2571   struct radix_tree_root page_tree ;
 2572   spinlock_t tree_lock ;
 2573   unsigned int i_mmap_writable ;
 2574   struct prio_tree_root i_mmap ;
 2575   struct list_head i_mmap_nonlinear ;
 2576   struct mutex i_mmap_mutex ;
 2577   unsigned long nrpages ;
 2578   unsigned long writeback_index ;
 2579   struct address_space_operations    *a_ops ;
 2580   unsigned long flags ;
 2581   struct backing_dev_info *backing_dev_info ;
 2582   spinlock_t private_lock ;
 2583   struct list_head private_list ;
 2584   struct address_space *assoc_mapping ;
 2585} __attribute__((__aligned__(sizeof(long )))) ;
 2586#line 669
 2587struct request_queue;
 2588#line 669
 2589struct request_queue;
 2590#line 671
 2591struct hd_struct;
 2592#line 671
 2593struct gendisk;
 2594#line 671 "include/linux/fs.h"
 2595struct block_device {
 2596   dev_t bd_dev ;
 2597   int bd_openers ;
 2598   struct inode *bd_inode ;
 2599   struct super_block *bd_super ;
 2600   struct mutex bd_mutex ;
 2601   struct list_head bd_inodes ;
 2602   void *bd_claiming ;
 2603   void *bd_holder ;
 2604   int bd_holders ;
 2605   bool bd_write_holder ;
 2606   struct list_head bd_holder_disks ;
 2607   struct block_device *bd_contains ;
 2608   unsigned int bd_block_size ;
 2609   struct hd_struct *bd_part ;
 2610   unsigned int bd_part_count ;
 2611   int bd_invalidated ;
 2612   struct gendisk *bd_disk ;
 2613   struct request_queue *bd_queue ;
 2614   struct list_head bd_list ;
 2615   unsigned long bd_private ;
 2616   int bd_fsfreeze_count ;
 2617   struct mutex bd_fsfreeze_mutex ;
 2618};
 2619#line 749
 2620struct posix_acl;
 2621#line 749
 2622struct posix_acl;
 2623#line 761
 2624struct inode_operations;
 2625#line 761 "include/linux/fs.h"
 2626union __anonunion____missing_field_name_233 {
 2627   unsigned int    i_nlink ;
 2628   unsigned int __i_nlink ;
 2629};
 2630#line 761 "include/linux/fs.h"
 2631union __anonunion____missing_field_name_234 {
 2632   struct list_head i_dentry ;
 2633   struct rcu_head i_rcu ;
 2634};
 2635#line 761
 2636struct file_operations;
 2637#line 761
 2638struct file_lock;
 2639#line 761
 2640struct cdev;
 2641#line 761 "include/linux/fs.h"
 2642union __anonunion____missing_field_name_235 {
 2643   struct pipe_inode_info *i_pipe ;
 2644   struct block_device *i_bdev ;
 2645   struct cdev *i_cdev ;
 2646};
 2647#line 761 "include/linux/fs.h"
 2648struct inode {
 2649   umode_t i_mode ;
 2650   unsigned short i_opflags ;
 2651   uid_t i_uid ;
 2652   gid_t i_gid ;
 2653   unsigned int i_flags ;
 2654   struct posix_acl *i_acl ;
 2655   struct posix_acl *i_default_acl ;
 2656   struct inode_operations    *i_op ;
 2657   struct super_block *i_sb ;
 2658   struct address_space *i_mapping ;
 2659   void *i_security ;
 2660   unsigned long i_ino ;
 2661   union __anonunion____missing_field_name_233 __annonCompField43 ;
 2662   dev_t i_rdev ;
 2663   struct timespec i_atime ;
 2664   struct timespec i_mtime ;
 2665   struct timespec i_ctime ;
 2666   spinlock_t i_lock ;
 2667   unsigned short i_bytes ;
 2668   blkcnt_t i_blocks ;
 2669   loff_t i_size ;
 2670   unsigned long i_state ;
 2671   struct mutex i_mutex ;
 2672   unsigned long dirtied_when ;
 2673   struct hlist_node i_hash ;
 2674   struct list_head i_wb_list ;
 2675   struct list_head i_lru ;
 2676   struct list_head i_sb_list ;
 2677   union __anonunion____missing_field_name_234 __annonCompField44 ;
 2678   atomic_t i_count ;
 2679   unsigned int i_blkbits ;
 2680   u64 i_version ;
 2681   atomic_t i_dio_count ;
 2682   atomic_t i_writecount ;
 2683   struct file_operations    *i_fop ;
 2684   struct file_lock *i_flock ;
 2685   struct address_space i_data ;
 2686   struct dquot *i_dquot[2] ;
 2687   struct list_head i_devices ;
 2688   union __anonunion____missing_field_name_235 __annonCompField45 ;
 2689   __u32 i_generation ;
 2690   __u32 i_fsnotify_mask ;
 2691   struct hlist_head i_fsnotify_marks ;
 2692   atomic_t i_readcount ;
 2693   void *i_private ;
 2694};
 2695#line 942 "include/linux/fs.h"
 2696struct fown_struct {
 2697   rwlock_t lock ;
 2698   struct pid *pid ;
 2699   enum pid_type pid_type ;
 2700   uid_t uid ;
 2701   uid_t euid ;
 2702   int signum ;
 2703};
 2704#line 953 "include/linux/fs.h"
 2705struct file_ra_state {
 2706   unsigned long start ;
 2707   unsigned int size ;
 2708   unsigned int async_size ;
 2709   unsigned int ra_pages ;
 2710   unsigned int mmap_miss ;
 2711   loff_t prev_pos ;
 2712};
 2713#line 976 "include/linux/fs.h"
 2714union __anonunion_f_u_236 {
 2715   struct list_head fu_list ;
 2716   struct rcu_head fu_rcuhead ;
 2717};
 2718#line 976 "include/linux/fs.h"
 2719struct file {
 2720   union __anonunion_f_u_236 f_u ;
 2721   struct path f_path ;
 2722   struct file_operations    *f_op ;
 2723   spinlock_t f_lock ;
 2724   int f_sb_list_cpu ;
 2725   atomic_long_t f_count ;
 2726   unsigned int f_flags ;
 2727   fmode_t f_mode ;
 2728   loff_t f_pos ;
 2729   struct fown_struct f_owner ;
 2730   struct cred    *f_cred ;
 2731   struct file_ra_state f_ra ;
 2732   u64 f_version ;
 2733   void *f_security ;
 2734   void *private_data ;
 2735   struct list_head f_ep_links ;
 2736   struct list_head f_tfile_llink ;
 2737   struct address_space *f_mapping ;
 2738   unsigned long f_mnt_write_state ;
 2739};
 2740#line 1111 "include/linux/fs.h"
 2741typedef struct files_struct *fl_owner_t;
 2742#line 1113 "include/linux/fs.h"
 2743struct file_lock_operations {
 2744   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
 2745   void (*fl_release_private)(struct file_lock * ) ;
 2746};
 2747#line 1118 "include/linux/fs.h"
 2748struct lock_manager_operations {
 2749   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
 2750   void (*lm_notify)(struct file_lock * ) ;
 2751   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
 2752   void (*lm_release_private)(struct file_lock * ) ;
 2753   void (*lm_break)(struct file_lock * ) ;
 2754   int (*lm_change)(struct file_lock ** , int  ) ;
 2755};
 2756#line 4 "include/linux/nfs_fs_i.h"
 2757struct nlm_lockowner;
 2758#line 4
 2759struct nlm_lockowner;
 2760#line 9 "include/linux/nfs_fs_i.h"
 2761struct nfs_lock_info {
 2762   u32 state ;
 2763   struct nlm_lockowner *owner ;
 2764   struct list_head list ;
 2765};
 2766#line 15
 2767struct nfs4_lock_state;
 2768#line 15
 2769struct nfs4_lock_state;
 2770#line 16 "include/linux/nfs_fs_i.h"
 2771struct nfs4_lock_info {
 2772   struct nfs4_lock_state *owner ;
 2773};
 2774#line 1138 "include/linux/fs.h"
 2775struct fasync_struct;
 2776#line 1138 "include/linux/fs.h"
 2777struct __anonstruct_afs_238 {
 2778   struct list_head link ;
 2779   int state ;
 2780};
 2781#line 1138 "include/linux/fs.h"
 2782union __anonunion_fl_u_237 {
 2783   struct nfs_lock_info nfs_fl ;
 2784   struct nfs4_lock_info nfs4_fl ;
 2785   struct __anonstruct_afs_238 afs ;
 2786};
 2787#line 1138 "include/linux/fs.h"
 2788struct file_lock {
 2789   struct file_lock *fl_next ;
 2790   struct list_head fl_link ;
 2791   struct list_head fl_block ;
 2792   fl_owner_t fl_owner ;
 2793   unsigned int fl_flags ;
 2794   unsigned char fl_type ;
 2795   unsigned int fl_pid ;
 2796   struct pid *fl_nspid ;
 2797   wait_queue_head_t fl_wait ;
 2798   struct file *fl_file ;
 2799   loff_t fl_start ;
 2800   loff_t fl_end ;
 2801   struct fasync_struct *fl_fasync ;
 2802   unsigned long fl_break_time ;
 2803   unsigned long fl_downgrade_time ;
 2804   struct file_lock_operations    *fl_ops ;
 2805   struct lock_manager_operations    *fl_lmops ;
 2806   union __anonunion_fl_u_237 fl_u ;
 2807};
 2808#line 1378 "include/linux/fs.h"
 2809struct fasync_struct {
 2810   spinlock_t fa_lock ;
 2811   int magic ;
 2812   int fa_fd ;
 2813   struct fasync_struct *fa_next ;
 2814   struct file *fa_file ;
 2815   struct rcu_head fa_rcu ;
 2816};
 2817#line 1418
 2818struct file_system_type;
 2819#line 1418
 2820struct super_operations;
 2821#line 1418
 2822struct xattr_handler;
 2823#line 1418
 2824struct mtd_info;
 2825#line 1418 "include/linux/fs.h"
 2826struct super_block {
 2827   struct list_head s_list ;
 2828   dev_t s_dev ;
 2829   unsigned char s_dirt ;
 2830   unsigned char s_blocksize_bits ;
 2831   unsigned long s_blocksize ;
 2832   loff_t s_maxbytes ;
 2833   struct file_system_type *s_type ;
 2834   struct super_operations    *s_op ;
 2835   struct dquot_operations    *dq_op ;
 2836   struct quotactl_ops    *s_qcop ;
 2837   struct export_operations    *s_export_op ;
 2838   unsigned long s_flags ;
 2839   unsigned long s_magic ;
 2840   struct dentry *s_root ;
 2841   struct rw_semaphore s_umount ;
 2842   struct mutex s_lock ;
 2843   int s_count ;
 2844   atomic_t s_active ;
 2845   void *s_security ;
 2846   struct xattr_handler    **s_xattr ;
 2847   struct list_head s_inodes ;
 2848   struct hlist_bl_head s_anon ;
 2849   struct list_head *s_files ;
 2850   struct list_head s_mounts ;
 2851   struct list_head s_dentry_lru ;
 2852   int s_nr_dentry_unused ;
 2853   spinlock_t s_inode_lru_lock  __attribute__((__aligned__((1) <<  (6) ))) ;
 2854   struct list_head s_inode_lru ;
 2855   int s_nr_inodes_unused ;
 2856   struct block_device *s_bdev ;
 2857   struct backing_dev_info *s_bdi ;
 2858   struct mtd_info *s_mtd ;
 2859   struct hlist_node s_instances ;
 2860   struct quota_info s_dquot ;
 2861   int s_frozen ;
 2862   wait_queue_head_t s_wait_unfrozen ;
 2863   char s_id[32] ;
 2864   u8 s_uuid[16] ;
 2865   void *s_fs_info ;
 2866   unsigned int s_max_links ;
 2867   fmode_t s_mode ;
 2868   u32 s_time_gran ;
 2869   struct mutex s_vfs_rename_mutex ;
 2870   char *s_subtype ;
 2871   char *s_options ;
 2872   struct dentry_operations    *s_d_op ;
 2873   int cleancache_poolid ;
 2874   struct shrinker s_shrink ;
 2875   atomic_long_t s_remove_count ;
 2876   int s_readonly_remount ;
 2877};
 2878#line 1567 "include/linux/fs.h"
 2879struct fiemap_extent_info {
 2880   unsigned int fi_flags ;
 2881   unsigned int fi_extents_mapped ;
 2882   unsigned int fi_extents_max ;
 2883   struct fiemap_extent *fi_extents_start ;
 2884};
 2885#line 1609 "include/linux/fs.h"
 2886struct file_operations {
 2887   struct module *owner ;
 2888   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
 2889   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
 2890   ssize_t (*write)(struct file * , char    * , size_t  , loff_t * ) ;
 2891   ssize_t (*aio_read)(struct kiocb * , struct iovec    * , unsigned long  ,
 2892                       loff_t  ) ;
 2893   ssize_t (*aio_write)(struct kiocb * , struct iovec    * , unsigned long  ,
 2894                        loff_t  ) ;
 2895   int (*readdir)(struct file * , void * , int (*)(void * , char    * , int  ,
 2896                                                   loff_t  , u64  , unsigned int  ) ) ;
 2897   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
 2898   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 2899   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 2900   int (*mmap)(struct file * , struct vm_area_struct * ) ;
 2901   int (*open)(struct inode * , struct file * ) ;
 2902   int (*flush)(struct file * , fl_owner_t id ) ;
 2903   int (*release)(struct inode * , struct file * ) ;
 2904   int (*fsync)(struct file * , loff_t  , loff_t  , int datasync ) ;
 2905   int (*aio_fsync)(struct kiocb * , int datasync ) ;
 2906   int (*fasync)(int  , struct file * , int  ) ;
 2907   int (*lock)(struct file * , int  , struct file_lock * ) ;
 2908   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
 2909                       int  ) ;
 2910   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
 2911                                      unsigned long  , unsigned long  ) ;
 2912   int (*check_flags)(int  ) ;
 2913   int (*flock)(struct file * , int  , struct file_lock * ) ;
 2914   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
 2915                           unsigned int  ) ;
 2916   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
 2917                          unsigned int  ) ;
 2918   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
 2919   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
 2920};
 2921#line 1639 "include/linux/fs.h"
 2922struct inode_operations {
 2923   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
 2924   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
 2925   int (*permission)(struct inode * , int  ) ;
 2926   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
 2927   int (*readlink)(struct dentry * , char * , int  ) ;
 2928   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
 2929   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
 2930   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
 2931   int (*unlink)(struct inode * , struct dentry * ) ;
 2932   int (*symlink)(struct inode * , struct dentry * , char    * ) ;
 2933   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
 2934   int (*rmdir)(struct inode * , struct dentry * ) ;
 2935   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
 2936   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
 2937   void (*truncate)(struct inode * ) ;
 2938   int (*setattr)(struct dentry * , struct iattr * ) ;
 2939   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
 2940   int (*setxattr)(struct dentry * , char    * , void    * , size_t  , int  ) ;
 2941   ssize_t (*getxattr)(struct dentry * , char    * , void * , size_t  ) ;
 2942   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
 2943   int (*removexattr)(struct dentry * , char    * ) ;
 2944   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
 2945   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
 2946} __attribute__((__aligned__((1) <<  (6) ))) ;
 2947#line 1669
 2948struct seq_file;
 2949#line 1684 "include/linux/fs.h"
 2950struct super_operations {
 2951   struct inode *(*alloc_inode)(struct super_block *sb ) ;
 2952   void (*destroy_inode)(struct inode * ) ;
 2953   void (*dirty_inode)(struct inode * , int flags ) ;
 2954   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
 2955   int (*drop_inode)(struct inode * ) ;
 2956   void (*evict_inode)(struct inode * ) ;
 2957   void (*put_super)(struct super_block * ) ;
 2958   void (*write_super)(struct super_block * ) ;
 2959   int (*sync_fs)(struct super_block *sb , int wait ) ;
 2960   int (*freeze_fs)(struct super_block * ) ;
 2961   int (*unfreeze_fs)(struct super_block * ) ;
 2962   int (*statfs)(struct dentry * , struct kstatfs * ) ;
 2963   int (*remount_fs)(struct super_block * , int * , char * ) ;
 2964   void (*umount_begin)(struct super_block * ) ;
 2965   int (*show_options)(struct seq_file * , struct dentry * ) ;
 2966   int (*show_devname)(struct seq_file * , struct dentry * ) ;
 2967   int (*show_path)(struct seq_file * , struct dentry * ) ;
 2968   int (*show_stats)(struct seq_file * , struct dentry * ) ;
 2969   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
 2970   ssize_t (*quota_write)(struct super_block * , int  , char    * , size_t  ,
 2971                          loff_t  ) ;
 2972   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
 2973   int (*nr_cached_objects)(struct super_block * ) ;
 2974   void (*free_cached_objects)(struct super_block * , int  ) ;
 2975};
 2976#line 1835 "include/linux/fs.h"
 2977struct file_system_type {
 2978   char    *name ;
 2979   int fs_flags ;
 2980   struct dentry *(*mount)(struct file_system_type * , int  , char    * , void * ) ;
 2981   void (*kill_sb)(struct super_block * ) ;
 2982   struct module *owner ;
 2983   struct file_system_type *next ;
 2984   struct hlist_head fs_supers ;
 2985   struct lock_class_key s_lock_key ;
 2986   struct lock_class_key s_umount_key ;
 2987   struct lock_class_key s_vfs_rename_key ;
 2988   struct lock_class_key i_lock_key ;
 2989   struct lock_class_key i_mutex_key ;
 2990   struct lock_class_key i_mutex_dir_key ;
 2991};
 2992#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
 2993struct exception_table_entry {
 2994   unsigned long insn ;
 2995   unsigned long fixup ;
 2996};
 2997#line 28 "include/linux/poll.h"
 2998struct poll_table_struct;
 2999#line 39 "include/linux/poll.h"
 3000struct poll_table_struct {
 3001   void (*_qproc)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
 3002   unsigned long _key ;
 3003};
 3004#line 39 "include/linux/poll.h"
 3005typedef struct poll_table_struct poll_table;
 3006#line 48 "include/linux/kmod.h"
 3007struct cred;
 3008#line 49
 3009struct file;
 3010#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 3011struct task_struct;
 3012#line 18 "include/linux/elf.h"
 3013typedef __u64 Elf64_Addr;
 3014#line 19 "include/linux/elf.h"
 3015typedef __u16 Elf64_Half;
 3016#line 23 "include/linux/elf.h"
 3017typedef __u32 Elf64_Word;
 3018#line 24 "include/linux/elf.h"
 3019typedef __u64 Elf64_Xword;
 3020#line 194 "include/linux/elf.h"
 3021struct elf64_sym {
 3022   Elf64_Word st_name ;
 3023   unsigned char st_info ;
 3024   unsigned char st_other ;
 3025   Elf64_Half st_shndx ;
 3026   Elf64_Addr st_value ;
 3027   Elf64_Xword st_size ;
 3028};
 3029#line 194 "include/linux/elf.h"
 3030typedef struct elf64_sym Elf64_Sym;
 3031#line 438
 3032struct file;
 3033#line 39 "include/linux/moduleparam.h"
 3034struct kernel_param;
 3035#line 39
 3036struct kernel_param;
 3037#line 41 "include/linux/moduleparam.h"
 3038struct kernel_param_ops {
 3039   int (*set)(char    *val , struct kernel_param    *kp ) ;
 3040   int (*get)(char *buffer , struct kernel_param    *kp ) ;
 3041   void (*free)(void *arg ) ;
 3042};
 3043#line 50
 3044struct kparam_string;
 3045#line 50
 3046struct kparam_array;
 3047#line 50 "include/linux/moduleparam.h"
 3048union __anonunion____missing_field_name_246 {
 3049   void *arg ;
 3050   struct kparam_string    *str ;
 3051   struct kparam_array    *arr ;
 3052};
 3053#line 50 "include/linux/moduleparam.h"
 3054struct kernel_param {
 3055   char    *name ;
 3056   struct kernel_param_ops    *ops ;
 3057   u16 perm ;
 3058   s16 level ;
 3059   union __anonunion____missing_field_name_246 __annonCompField46 ;
 3060};
 3061#line 63 "include/linux/moduleparam.h"
 3062struct kparam_string {
 3063   unsigned int maxlen ;
 3064   char *string ;
 3065};
 3066#line 69 "include/linux/moduleparam.h"
 3067struct kparam_array {
 3068   unsigned int max ;
 3069   unsigned int elemsize ;
 3070   unsigned int *num ;
 3071   struct kernel_param_ops    *ops ;
 3072   void *elem ;
 3073};
 3074#line 445
 3075struct module;
 3076#line 80 "include/linux/jump_label.h"
 3077struct module;
 3078#line 143 "include/linux/jump_label.h"
 3079struct static_key {
 3080   atomic_t enabled ;
 3081};
 3082#line 22 "include/linux/tracepoint.h"
 3083struct module;
 3084#line 23
 3085struct tracepoint;
 3086#line 23
 3087struct tracepoint;
 3088#line 25 "include/linux/tracepoint.h"
 3089struct tracepoint_func {
 3090   void *func ;
 3091   void *data ;
 3092};
 3093#line 30 "include/linux/tracepoint.h"
 3094struct tracepoint {
 3095   char    *name ;
 3096   struct static_key key ;
 3097   void (*regfunc)(void) ;
 3098   void (*unregfunc)(void) ;
 3099   struct tracepoint_func *funcs ;
 3100};
 3101#line 19 "include/linux/export.h"
 3102struct kernel_symbol {
 3103   unsigned long value ;
 3104   char    *name ;
 3105};
 3106#line 8 "include/asm-generic/module.h"
 3107struct mod_arch_specific {
 3108
 3109};
 3110#line 35 "include/linux/module.h"
 3111struct module;
 3112#line 37
 3113struct module_param_attrs;
 3114#line 37 "include/linux/module.h"
 3115struct module_kobject {
 3116   struct kobject kobj ;
 3117   struct module *mod ;
 3118   struct kobject *drivers_dir ;
 3119   struct module_param_attrs *mp ;
 3120};
 3121#line 44 "include/linux/module.h"
 3122struct module_attribute {
 3123   struct attribute attr ;
 3124   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 3125   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char    * ,
 3126                    size_t count ) ;
 3127   void (*setup)(struct module * , char    * ) ;
 3128   int (*test)(struct module * ) ;
 3129   void (*free)(struct module * ) ;
 3130};
 3131#line 71
 3132struct exception_table_entry;
 3133#line 199
 3134enum module_state {
 3135    MODULE_STATE_LIVE = 0,
 3136    MODULE_STATE_COMING = 1,
 3137    MODULE_STATE_GOING = 2
 3138} ;
 3139#line 215 "include/linux/module.h"
 3140struct module_ref {
 3141   unsigned long incs ;
 3142   unsigned long decs ;
 3143} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 3144#line 220
 3145struct module_sect_attrs;
 3146#line 220
 3147struct module_notes_attrs;
 3148#line 220
 3149struct ftrace_event_call;
 3150#line 220 "include/linux/module.h"
 3151struct module {
 3152   enum module_state state ;
 3153   struct list_head list ;
 3154   char name[64UL - sizeof(unsigned long )] ;
 3155   struct module_kobject mkobj ;
 3156   struct module_attribute *modinfo_attrs ;
 3157   char    *version ;
 3158   char    *srcversion ;
 3159   struct kobject *holders_dir ;
 3160   struct kernel_symbol    *syms ;
 3161   unsigned long    *crcs ;
 3162   unsigned int num_syms ;
 3163   struct kernel_param *kp ;
 3164   unsigned int num_kp ;
 3165   unsigned int num_gpl_syms ;
 3166   struct kernel_symbol    *gpl_syms ;
 3167   unsigned long    *gpl_crcs ;
 3168   struct kernel_symbol    *unused_syms ;
 3169   unsigned long    *unused_crcs ;
 3170   unsigned int num_unused_syms ;
 3171   unsigned int num_unused_gpl_syms ;
 3172   struct kernel_symbol    *unused_gpl_syms ;
 3173   unsigned long    *unused_gpl_crcs ;
 3174   struct kernel_symbol    *gpl_future_syms ;
 3175   unsigned long    *gpl_future_crcs ;
 3176   unsigned int num_gpl_future_syms ;
 3177   unsigned int num_exentries ;
 3178   struct exception_table_entry *extable ;
 3179   int (*init)(void) ;
 3180   void *module_init ;
 3181   void *module_core ;
 3182   unsigned int init_size ;
 3183   unsigned int core_size ;
 3184   unsigned int init_text_size ;
 3185   unsigned int core_text_size ;
 3186   unsigned int init_ro_size ;
 3187   unsigned int core_ro_size ;
 3188   struct mod_arch_specific arch ;
 3189   unsigned int taints ;
 3190   unsigned int num_bugs ;
 3191   struct list_head bug_list ;
 3192   struct bug_entry *bug_table ;
 3193   Elf64_Sym *symtab ;
 3194   Elf64_Sym *core_symtab ;
 3195   unsigned int num_symtab ;
 3196   unsigned int core_num_syms ;
 3197   char *strtab ;
 3198   char *core_strtab ;
 3199   struct module_sect_attrs *sect_attrs ;
 3200   struct module_notes_attrs *notes_attrs ;
 3201   char *args ;
 3202   void *percpu ;
 3203   unsigned int percpu_size ;
 3204   unsigned int num_tracepoints ;
 3205   struct tracepoint *   *tracepoints_ptrs ;
 3206   unsigned int num_trace_bprintk_fmt ;
 3207   char    **trace_bprintk_fmt_start ;
 3208   struct ftrace_event_call **trace_events ;
 3209   unsigned int num_trace_events ;
 3210   struct list_head source_list ;
 3211   struct list_head target_list ;
 3212   struct task_struct *waiter ;
 3213   void (*exit)(void) ;
 3214   struct module_ref *refptr ;
 3215   ctor_fn_t *ctors ;
 3216   unsigned int num_ctors ;
 3217};
 3218#line 43 "include/linux/input.h"
 3219struct input_id {
 3220   __u16 bustype ;
 3221   __u16 vendor ;
 3222   __u16 product ;
 3223   __u16 version ;
 3224};
 3225#line 69 "include/linux/input.h"
 3226struct input_absinfo {
 3227   __s32 value ;
 3228   __s32 minimum ;
 3229   __s32 maximum ;
 3230   __s32 fuzz ;
 3231   __s32 flat ;
 3232   __s32 resolution ;
 3233};
 3234#line 93 "include/linux/input.h"
 3235struct input_keymap_entry {
 3236   __u8 flags ;
 3237   __u8 len ;
 3238   __u16 index ;
 3239   __u32 keycode ;
 3240   __u8 scancode[32] ;
 3241};
 3242#line 957 "include/linux/input.h"
 3243struct ff_replay {
 3244   __u16 length ;
 3245   __u16 delay ;
 3246};
 3247#line 967 "include/linux/input.h"
 3248struct ff_trigger {
 3249   __u16 button ;
 3250   __u16 interval ;
 3251};
 3252#line 984 "include/linux/input.h"
 3253struct ff_envelope {
 3254   __u16 attack_length ;
 3255   __u16 attack_level ;
 3256   __u16 fade_length ;
 3257   __u16 fade_level ;
 3258};
 3259#line 996 "include/linux/input.h"
 3260struct ff_ant_effect {
 3261   __s16 level ;
 3262   struct ff_envelope envelope ;
 3263};
 3264#line 1007 "include/linux/input.h"
 3265struct ff_ramp_effect {
 3266   __s16 start_level ;
 3267   __s16 end_level ;
 3268   struct ff_envelope envelope ;
 3269};
 3270#line 1023 "include/linux/input.h"
 3271struct ff_condition_effect {
 3272   __u16 right_saturation ;
 3273   __u16 left_saturation ;
 3274   __s16 right_coeff ;
 3275   __s16 left_coeff ;
 3276   __u16 deadband ;
 3277   __s16 center ;
 3278};
 3279#line 1052 "include/linux/input.h"
 3280struct ff_periodic_effect {
 3281   __u16 waveform ;
 3282   __u16 period ;
 3283   __s16 magnitude ;
 3284   __s16 offset ;
 3285   __u16 phase ;
 3286   struct ff_envelope envelope ;
 3287   __u32 custom_len ;
 3288   __s16 *custom_data ;
 3289};
 3290#line 1073 "include/linux/input.h"
 3291struct ff_rumble_effect {
 3292   __u16 strong_magnitude ;
 3293   __u16 weak_magnitude ;
 3294};
 3295#line 1101 "include/linux/input.h"
 3296union __anonunion_u_248 {
 3297   struct ff_ant_effect ant ;
 3298   struct ff_ramp_effect ramp ;
 3299   struct ff_periodic_effect periodic ;
 3300   struct ff_condition_effect condition[2] ;
 3301   struct ff_rumble_effect rumble ;
 3302};
 3303#line 1101 "include/linux/input.h"
 3304struct ff_effect {
 3305   __u16 type ;
 3306   __s16 id ;
 3307   __u16 direction ;
 3308   struct ff_trigger trigger ;
 3309   struct ff_replay replay ;
 3310   union __anonunion_u_248 u ;
 3311};
 3312#line 19 "include/linux/klist.h"
 3313struct klist_node;
 3314#line 19
 3315struct klist_node;
 3316#line 39 "include/linux/klist.h"
 3317struct klist_node {
 3318   void *n_klist ;
 3319   struct list_head n_node ;
 3320   struct kref n_ref ;
 3321};
 3322#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 3323struct dma_map_ops;
 3324#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 3325struct dev_archdata {
 3326   void *acpi_handle ;
 3327   struct dma_map_ops *dma_ops ;
 3328   void *iommu ;
 3329};
 3330#line 28 "include/linux/device.h"
 3331struct device;
 3332#line 29
 3333struct device_private;
 3334#line 29
 3335struct device_private;
 3336#line 30
 3337struct device_driver;
 3338#line 30
 3339struct device_driver;
 3340#line 31
 3341struct driver_private;
 3342#line 31
 3343struct driver_private;
 3344#line 32
 3345struct module;
 3346#line 33
 3347struct class;
 3348#line 33
 3349struct class;
 3350#line 34
 3351struct subsys_private;
 3352#line 34
 3353struct subsys_private;
 3354#line 35
 3355struct bus_type;
 3356#line 35
 3357struct bus_type;
 3358#line 36
 3359struct device_node;
 3360#line 36
 3361struct device_node;
 3362#line 37
 3363struct iommu_ops;
 3364#line 37
 3365struct iommu_ops;
 3366#line 39 "include/linux/device.h"
 3367struct bus_attribute {
 3368   struct attribute attr ;
 3369   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
 3370   ssize_t (*store)(struct bus_type *bus , char    *buf , size_t count ) ;
 3371};
 3372#line 89
 3373struct device_attribute;
 3374#line 89
 3375struct driver_attribute;
 3376#line 89 "include/linux/device.h"
 3377struct bus_type {
 3378   char    *name ;
 3379   char    *dev_name ;
 3380   struct device *dev_root ;
 3381   struct bus_attribute *bus_attrs ;
 3382   struct device_attribute *dev_attrs ;
 3383   struct driver_attribute *drv_attrs ;
 3384   int (*match)(struct device *dev , struct device_driver *drv ) ;
 3385   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 3386   int (*probe)(struct device *dev ) ;
 3387   int (*remove)(struct device *dev ) ;
 3388   void (*shutdown)(struct device *dev ) ;
 3389   int (*suspend)(struct device *dev , pm_message_t state ) ;
 3390   int (*resume)(struct device *dev ) ;
 3391   struct dev_pm_ops    *pm ;
 3392   struct iommu_ops *iommu_ops ;
 3393   struct subsys_private *p ;
 3394};
 3395#line 127
 3396struct device_type;
 3397#line 214
 3398struct of_device_id;
 3399#line 214 "include/linux/device.h"
 3400struct device_driver {
 3401   char    *name ;
 3402   struct bus_type *bus ;
 3403   struct module *owner ;
 3404   char    *mod_name ;
 3405   bool suppress_bind_attrs ;
 3406   struct of_device_id    *of_match_table ;
 3407   int (*probe)(struct device *dev ) ;
 3408   int (*remove)(struct device *dev ) ;
 3409   void (*shutdown)(struct device *dev ) ;
 3410   int (*suspend)(struct device *dev , pm_message_t state ) ;
 3411   int (*resume)(struct device *dev ) ;
 3412   struct attribute_group    **groups ;
 3413   struct dev_pm_ops    *pm ;
 3414   struct driver_private *p ;
 3415};
 3416#line 249 "include/linux/device.h"
 3417struct driver_attribute {
 3418   struct attribute attr ;
 3419   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
 3420   ssize_t (*store)(struct device_driver *driver , char    *buf , size_t count ) ;
 3421};
 3422#line 330
 3423struct class_attribute;
 3424#line 330 "include/linux/device.h"
 3425struct class {
 3426   char    *name ;
 3427   struct module *owner ;
 3428   struct class_attribute *class_attrs ;
 3429   struct device_attribute *dev_attrs ;
 3430   struct bin_attribute *dev_bin_attrs ;
 3431   struct kobject *dev_kobj ;
 3432   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 3433   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 3434   void (*class_release)(struct class *class ) ;
 3435   void (*dev_release)(struct device *dev ) ;
 3436   int (*suspend)(struct device *dev , pm_message_t state ) ;
 3437   int (*resume)(struct device *dev ) ;
 3438   struct kobj_ns_type_operations    *ns_type ;
 3439   void    *(*namespace)(struct device *dev ) ;
 3440   struct dev_pm_ops    *pm ;
 3441   struct subsys_private *p ;
 3442};
 3443#line 397 "include/linux/device.h"
 3444struct class_attribute {
 3445   struct attribute attr ;
 3446   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
 3447   ssize_t (*store)(struct class *class , struct class_attribute *attr , char    *buf ,
 3448                    size_t count ) ;
 3449   void    *(*namespace)(struct class *class , struct class_attribute    *attr ) ;
 3450};
 3451#line 465 "include/linux/device.h"
 3452struct device_type {
 3453   char    *name ;
 3454   struct attribute_group    **groups ;
 3455   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 3456   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 3457   void (*release)(struct device *dev ) ;
 3458   struct dev_pm_ops    *pm ;
 3459};
 3460#line 476 "include/linux/device.h"
 3461struct device_attribute {
 3462   struct attribute attr ;
 3463   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
 3464   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char    *buf ,
 3465                    size_t count ) ;
 3466};
 3467#line 559 "include/linux/device.h"
 3468struct device_dma_parameters {
 3469   unsigned int max_segment_size ;
 3470   unsigned long segment_boundary_mask ;
 3471};
 3472#line 627
 3473struct dma_coherent_mem;
 3474#line 627 "include/linux/device.h"
 3475struct device {
 3476   struct device *parent ;
 3477   struct device_private *p ;
 3478   struct kobject kobj ;
 3479   char    *init_name ;
 3480   struct device_type    *type ;
 3481   struct mutex mutex ;
 3482   struct bus_type *bus ;
 3483   struct device_driver *driver ;
 3484   void *platform_data ;
 3485   struct dev_pm_info power ;
 3486   struct dev_pm_domain *pm_domain ;
 3487   int numa_node ;
 3488   u64 *dma_mask ;
 3489   u64 coherent_dma_mask ;
 3490   struct device_dma_parameters *dma_parms ;
 3491   struct list_head dma_pools ;
 3492   struct dma_coherent_mem *dma_mem ;
 3493   struct dev_archdata archdata ;
 3494   struct device_node *of_node ;
 3495   dev_t devt ;
 3496   u32 id ;
 3497   spinlock_t devres_lock ;
 3498   struct list_head devres_head ;
 3499   struct klist_node knode_class ;
 3500   struct class *class ;
 3501   struct attribute_group    **groups ;
 3502   void (*release)(struct device *dev ) ;
 3503};
 3504#line 43 "include/linux/pm_wakeup.h"
 3505struct wakeup_source {
 3506   char    *name ;
 3507   struct list_head entry ;
 3508   spinlock_t lock ;
 3509   struct timer_list timer ;
 3510   unsigned long timer_expires ;
 3511   ktime_t total_time ;
 3512   ktime_t max_time ;
 3513   ktime_t last_time ;
 3514   unsigned long event_count ;
 3515   unsigned long active_count ;
 3516   unsigned long relax_count ;
 3517   unsigned long hit_count ;
 3518   unsigned int active : 1 ;
 3519};
 3520#line 12 "include/linux/mod_devicetable.h"
 3521typedef unsigned long kernel_ulong_t;
 3522#line 219 "include/linux/mod_devicetable.h"
 3523struct of_device_id {
 3524   char name[32] ;
 3525   char type[32] ;
 3526   char compatible[128] ;
 3527   void *data ;
 3528};
 3529#line 312 "include/linux/mod_devicetable.h"
 3530struct input_device_id {
 3531   kernel_ulong_t flags ;
 3532   __u16 bustype ;
 3533   __u16 vendor ;
 3534   __u16 product ;
 3535   __u16 version ;
 3536   kernel_ulong_t evbit[1] ;
 3537   kernel_ulong_t keybit[12] ;
 3538   kernel_ulong_t relbit[1] ;
 3539   kernel_ulong_t absbit[1] ;
 3540   kernel_ulong_t mscbit[1] ;
 3541   kernel_ulong_t ledbit[1] ;
 3542   kernel_ulong_t sndbit[1] ;
 3543   kernel_ulong_t ffbit[2] ;
 3544   kernel_ulong_t swbit[1] ;
 3545   kernel_ulong_t driver_info ;
 3546};
 3547#line 1250 "include/linux/input.h"
 3548struct ff_device;
 3549#line 1250
 3550struct input_mt_slot;
 3551#line 1250
 3552struct input_handle;
 3553#line 1250 "include/linux/input.h"
 3554struct input_dev {
 3555   char    *name ;
 3556   char    *phys ;
 3557   char    *uniq ;
 3558   struct input_id id ;
 3559   unsigned long propbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3560   unsigned long evbit[((32UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3561   unsigned long keybit[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3562   unsigned long relbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3563   unsigned long absbit[((64UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3564   unsigned long mscbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3565   unsigned long ledbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3566   unsigned long sndbit[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3567   unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3568   unsigned long swbit[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3569   unsigned int hint_events_per_packet ;
 3570   unsigned int keycodemax ;
 3571   unsigned int keycodesize ;
 3572   void *keycode ;
 3573   int (*setkeycode)(struct input_dev *dev , struct input_keymap_entry    *ke ,
 3574                     unsigned int *old_keycode ) ;
 3575   int (*getkeycode)(struct input_dev *dev , struct input_keymap_entry *ke ) ;
 3576   struct ff_device *ff ;
 3577   unsigned int repeat_key ;
 3578   struct timer_list timer ;
 3579   int rep[2] ;
 3580   struct input_mt_slot *mt ;
 3581   int mtsize ;
 3582   int slot ;
 3583   int trkid ;
 3584   struct input_absinfo *absinfo ;
 3585   unsigned long key[((768UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3586   unsigned long led[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3587   unsigned long snd[((8UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3588   unsigned long sw[((16UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3589   int (*open)(struct input_dev *dev ) ;
 3590   void (*close)(struct input_dev *dev ) ;
 3591   int (*flush)(struct input_dev *dev , struct file *file ) ;
 3592   int (*event)(struct input_dev *dev , unsigned int type , unsigned int code , int value ) ;
 3593   struct input_handle *grab ;
 3594   spinlock_t event_lock ;
 3595   struct mutex mutex ;
 3596   unsigned int users ;
 3597   bool going_away ;
 3598   bool sync ;
 3599   struct device dev ;
 3600   struct list_head h_list ;
 3601   struct list_head node ;
 3602};
 3603#line 1370
 3604struct input_handle;
 3605#line 1409 "include/linux/input.h"
 3606struct input_handler {
 3607   void *private ;
 3608   void (*event)(struct input_handle *handle , unsigned int type , unsigned int code ,
 3609                 int value ) ;
 3610   bool (*filter)(struct input_handle *handle , unsigned int type , unsigned int code ,
 3611                  int value ) ;
 3612   bool (*match)(struct input_handler *handler , struct input_dev *dev ) ;
 3613   int (*connect)(struct input_handler *handler , struct input_dev *dev , struct input_device_id    *id ) ;
 3614   void (*disconnect)(struct input_handle *handle ) ;
 3615   void (*start)(struct input_handle *handle ) ;
 3616   struct file_operations    *fops ;
 3617   int minor ;
 3618   char    *name ;
 3619   struct input_device_id    *id_table ;
 3620   struct list_head h_list ;
 3621   struct list_head node ;
 3622};
 3623#line 1442 "include/linux/input.h"
 3624struct input_handle {
 3625   void *private ;
 3626   int open ;
 3627   char    *name ;
 3628   struct input_dev *dev ;
 3629   struct input_handler *handler ;
 3630   struct list_head d_node ;
 3631   struct list_head h_node ;
 3632};
 3633#line 1619 "include/linux/input.h"
 3634struct ff_device {
 3635   int (*upload)(struct input_dev *dev , struct ff_effect *effect , struct ff_effect *old ) ;
 3636   int (*erase)(struct input_dev *dev , int effect_id ) ;
 3637   int (*playback)(struct input_dev *dev , int effect_id , int value ) ;
 3638   void (*set_gain)(struct input_dev *dev , u16 gain ) ;
 3639   void (*set_autocenter)(struct input_dev *dev , u16 magnitude ) ;
 3640   void (*destroy)(struct ff_device * ) ;
 3641   void *private ;
 3642   unsigned long ffbit[((128UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 3643   struct mutex mutex ;
 3644   int max_effects ;
 3645   struct ff_effect *effects ;
 3646   struct file *effect_owners[] ;
 3647};
 3648#line 48 "include/linux/miscdevice.h"
 3649struct device;
 3650#line 50 "include/linux/miscdevice.h"
 3651struct miscdevice {
 3652   int minor ;
 3653   char    *name ;
 3654   struct file_operations    *fops ;
 3655   struct list_head list ;
 3656   struct device *parent ;
 3657   struct device *this_device ;
 3658   char    *nodename ;
 3659   umode_t mode ;
 3660};
 3661#line 56 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 3662struct mousedev_hw_data {
 3663   int dx ;
 3664   int dy ;
 3665   int dz ;
 3666   int x ;
 3667   int y ;
 3668   int abs_event ;
 3669   unsigned long buttons ;
 3670};
 3671#line 63 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 3672struct mousedev {
 3673   int open ;
 3674   int minor ;
 3675   struct input_handle handle ;
 3676   wait_queue_head_t wait ;
 3677   struct list_head client_list ;
 3678   spinlock_t client_lock ;
 3679   struct mutex mutex ;
 3680   struct device dev ;
 3681   bool exist ;
 3682   struct list_head mixdev_node ;
 3683   int mixdev_open ;
 3684   struct mousedev_hw_data packet ;
 3685   unsigned int pkt_count ;
 3686   int old_x[4] ;
 3687   int old_y[4] ;
 3688   int frac_dx ;
 3689   int frac_dy ;
 3690   unsigned long touch ;
 3691};
 3692#line 84
 3693enum mousedev_emul {
 3694    MOUSEDEV_EMUL_PS2 = 0,
 3695    MOUSEDEV_EMUL_IMPS = 1,
 3696    MOUSEDEV_EMUL_EXPS = 2
 3697} ;
 3698#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 3699struct mousedev_motion {
 3700   int dx ;
 3701   int dy ;
 3702   int dz ;
 3703   unsigned long buttons ;
 3704};
 3705#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 3706struct mousedev_client {
 3707   struct fasync_struct *fasync ;
 3708   struct mousedev *mousedev ;
 3709   struct list_head node ;
 3710   struct mousedev_motion packets[16] ;
 3711   unsigned int head ;
 3712   unsigned int tail ;
 3713   spinlock_t packet_lock ;
 3714   int pos_x ;
 3715   int pos_y ;
 3716   signed char ps2[6] ;
 3717   unsigned char ready ;
 3718   unsigned char buffer ;
 3719   unsigned char bufsiz ;
 3720   unsigned char imexseq ;
 3721   unsigned char impsseq ;
 3722   enum mousedev_emul mode ;
 3723   unsigned long last_buttons ;
 3724};
 3725#line 1 "<compiler builtins>"
 3726
 3727#line 1
 3728long __builtin_expect(long val , long res ) ;
 3729#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
 3730__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
 3731                                                                   unsigned long volatile   *addr )  __attribute__((__no_instrument_function__)) ;
 3732#line 59 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
 3733__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
 3734                                                                   unsigned long volatile   *addr ) 
 3735{ long volatile   *__cil_tmp3 ;
 3736
 3737  {
 3738#line 68
 3739  __cil_tmp3 = (long volatile   *)addr;
 3740#line 68
 3741  __asm__  volatile   (".section .smp_locks,\"a\"\n"
 3742                       ".balign 4\n"
 3743                       ".long 671f - .\n"
 3744                       ".previous\n"
 3745                       "671:"
 3746                       "\n\tlock; "
 3747                       "bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
 3748#line 71
 3749  return;
 3750}
 3751}
 3752#line 97
 3753__inline static void ( __attribute__((__always_inline__)) clear_bit)(int nr , unsigned long volatile   *addr )  __attribute__((__no_instrument_function__)) ;
 3754#line 97 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
 3755__inline static void ( __attribute__((__always_inline__)) clear_bit)(int nr , unsigned long volatile   *addr ) 
 3756{ long volatile   *__cil_tmp3 ;
 3757
 3758  {
 3759#line 105
 3760  __cil_tmp3 = (long volatile   *)addr;
 3761#line 105
 3762  __asm__  volatile   (".section .smp_locks,\"a\"\n"
 3763                       ".balign 4\n"
 3764                       ".long 671f - .\n"
 3765                       ".previous\n"
 3766                       "671:"
 3767                       "\n\tlock; "
 3768                       "btr %1,%0": "+m" (*__cil_tmp3): "Ir" (nr));
 3769#line 109
 3770  return;
 3771}
 3772}
 3773#line 309
 3774__inline static int ( __attribute__((__always_inline__)) ant_test_bit)(unsigned int nr ,
 3775                                                                            unsigned long  volatile   *addr )  __attribute__((__no_instrument_function__)) ;
 3776#line 309 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
 3777__inline static int ( __attribute__((__always_inline__)) ant_test_bit)(unsigned int nr ,
 3778                                                                            unsigned long  volatile   *addr ) 
 3779{ unsigned int __cil_tmp3 ;
 3780  unsigned long  volatile   *__cil_tmp4 ;
 3781  unsigned long  volatile   __cil_tmp5 ;
 3782  unsigned long __cil_tmp6 ;
 3783  unsigned int __cil_tmp7 ;
 3784  unsigned long __cil_tmp8 ;
 3785  unsigned long __cil_tmp9 ;
 3786
 3787  {
 3788  {
 3789#line 311
 3790  __cil_tmp3 = nr / 64U;
 3791#line 311
 3792  __cil_tmp4 = addr + __cil_tmp3;
 3793#line 311
 3794  __cil_tmp5 = *__cil_tmp4;
 3795#line 311
 3796  __cil_tmp6 = (unsigned long )__cil_tmp5;
 3797#line 311
 3798  __cil_tmp7 = nr % 64U;
 3799#line 311
 3800  __cil_tmp8 = 1UL << __cil_tmp7;
 3801#line 311
 3802  __cil_tmp9 = __cil_tmp8 & __cil_tmp6;
 3803#line 311
 3804  return (__cil_tmp9 != 0UL);
 3805  }
 3806}
 3807}
 3808#line 315
 3809__inline static int variable_test_bit(int nr , unsigned long  volatile   *addr )  __attribute__((__no_instrument_function__)) ;
 3810#line 315 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
 3811__inline static int variable_test_bit(int nr , unsigned long  volatile   *addr ) 
 3812{ int oldbit ;
 3813  unsigned long *__cil_tmp4 ;
 3814
 3815  {
 3816#line 319
 3817  __cil_tmp4 = (unsigned long *)addr;
 3818#line 319
 3819  __asm__  volatile   ("bt %2,%1\n\t"
 3820                       "sbb %0,%0": "=r" (oldbit): "m" (*__cil_tmp4), "Ir" (nr));
 3821#line 324
 3822  return (oldbit);
 3823}
 3824}
 3825#line 100 "include/linux/printk.h"
 3826extern int ( /* format attribute */  printk)(char    *fmt  , ...) ;
 3827#line 147 "include/linux/kernel.h"
 3828extern void __might_sleep(char    *file , int line , int preempt_offset ) ;
 3829#line 194
 3830__inline static void might_fault(void)  __attribute__((__no_instrument_function__)) ;
 3831#line 194 "include/linux/kernel.h"
 3832__inline static void might_fault(void) 
 3833{ 
 3834
 3835  {
 3836  {
 3837#line 196
 3838  while (1) {
 3839    while_continue: /* CIL Label */ ;
 3840    {
 3841#line 196
 3842    __might_sleep("include/linux/kernel.h", 196, 0);
 3843    }
 3844    {
 3845#line 196
 3846    while (1) {
 3847      while_continue___0: /* CIL Label */ ;
 3848#line 196
 3849      goto while_break___0;
 3850    }
 3851    while_break___0: /* CIL Label */ ;
 3852    }
 3853#line 196
 3854    goto while_break;
 3855  }
 3856  while_break: /* CIL Label */ ;
 3857  }
 3858#line 197
 3859  return;
 3860}
 3861}
 3862#line 88 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/percpu.h"
 3863extern void __bad_percpu_size(void) ;
 3864#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 3865extern struct task_struct *current_task  __attribute__((__section__(".data..percpu"))) ;
 3866#line 12
 3867__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void)  __attribute__((__no_instrument_function__)) ;
 3868#line 12 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 3869__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void) 
 3870{ struct task_struct *pfo_ret__ ;
 3871
 3872  {
 3873#line 14
 3874  if ((int )8UL == 1) {
 3875#line 14
 3876    goto case_1;
 3877  } else
 3878#line 14
 3879  if ((int )8UL == 2) {
 3880#line 14
 3881    goto case_2;
 3882  } else
 3883#line 14
 3884  if ((int )8UL == 4) {
 3885#line 14
 3886    goto case_4;
 3887  } else
 3888#line 14
 3889  if ((int )8UL == 8) {
 3890#line 14
 3891    goto case_8;
 3892  } else {
 3893    {
 3894#line 14
 3895    goto switch_default;
 3896#line 14
 3897    if (0) {
 3898      case_1: /* CIL Label */ 
 3899#line 14
 3900      __asm__  ("mov"
 3901                "b "
 3902                "%%"
 3903                "gs"
 3904                ":"
 3905                "%P"
 3906                "1"
 3907                ",%0": "=q" (pfo_ret__): "p" (& current_task));
 3908#line 14
 3909      goto switch_break;
 3910      case_2: /* CIL Label */ 
 3911#line 14
 3912      __asm__  ("mov"
 3913                "w "
 3914                "%%"
 3915                "gs"
 3916                ":"
 3917                "%P"
 3918                "1"
 3919                ",%0": "=r" (pfo_ret__): "p" (& current_task));
 3920#line 14
 3921      goto switch_break;
 3922      case_4: /* CIL Label */ 
 3923#line 14
 3924      __asm__  ("mov"
 3925                "l "
 3926                "%%"
 3927                "gs"
 3928                ":"
 3929                "%P"
 3930                "1"
 3931                ",%0": "=r" (pfo_ret__): "p" (& current_task));
 3932#line 14
 3933      goto switch_break;
 3934      case_8: /* CIL Label */ 
 3935#line 14
 3936      __asm__  ("mov"
 3937                "q "
 3938                "%%"
 3939                "gs"
 3940                ":"
 3941                "%P"
 3942                "1"
 3943                ",%0": "=r" (pfo_ret__): "p" (& current_task));
 3944#line 14
 3945      goto switch_break;
 3946      switch_default: /* CIL Label */ 
 3947      {
 3948#line 14
 3949      __bad_percpu_size();
 3950      }
 3951    } else {
 3952      switch_break: /* CIL Label */ ;
 3953    }
 3954    }
 3955  }
 3956#line 14
 3957  return (pfo_ret__);
 3958}
 3959}
 3960#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
 3961extern void *memset(void *s , int c , size_t n ) ;
 3962#line 22 "include/linux/err.h"
 3963__inline static void * __attribute__((__warn_unused_result__)) ERR_PTR(long error )  __attribute__((__no_instrument_function__)) ;
 3964#line 22 "include/linux/err.h"
 3965__inline static void * __attribute__((__warn_unused_result__)) ERR_PTR(long error ) 
 3966{ 
 3967
 3968  {
 3969#line 24
 3970  return ((void *)error);
 3971}
 3972}
 3973#line 27
 3974__inline static long __attribute__((__warn_unused_result__))  PTR_ERR(void    *ptr )  __attribute__((__no_instrument_function__)) ;
 3975#line 27 "include/linux/err.h"
 3976__inline static long __attribute__((__warn_unused_result__))  PTR_ERR(void    *ptr ) 
 3977{ 
 3978
 3979  {
 3980#line 29
 3981  return ((long )ptr);
 3982}
 3983}
 3984#line 32
 3985__inline static long __attribute__((__warn_unused_result__))  IS_ERR(void    *ptr )  __attribute__((__no_instrument_function__)) ;
 3986#line 32 "include/linux/err.h"
 3987__inline static long __attribute__((__warn_unused_result__))  IS_ERR(void    *ptr ) 
 3988{ long tmp ;
 3989  unsigned long __cil_tmp3 ;
 3990  int __cil_tmp4 ;
 3991  int __cil_tmp5 ;
 3992  int __cil_tmp6 ;
 3993  long __cil_tmp7 ;
 3994
 3995  {
 3996  {
 3997#line 34
 3998  __cil_tmp3 = (unsigned long )ptr;
 3999#line 34
 4000  __cil_tmp4 = __cil_tmp3 >= 0xfffffffffffff001UL;
 4001#line 34
 4002  __cil_tmp5 = ! __cil_tmp4;
 4003#line 34
 4004  __cil_tmp6 = ! __cil_tmp5;
 4005#line 34
 4006  __cil_tmp7 = (long )__cil_tmp6;
 4007#line 34
 4008  tmp = __builtin_expect(__cil_tmp7, 0L);
 4009  }
 4010#line 34
 4011  return (tmp);
 4012}
 4013}
 4014#line 220 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 4015extern unsigned long kernel_stack  __attribute__((__section__(".data..percpu"))) ;
 4016#line 222
 4017__inline static struct thread_info *current_thread_info(void)  __attribute__((__no_instrument_function__)) ;
 4018#line 222 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 4019__inline static struct thread_info *current_thread_info(void) 
 4020{ struct thread_info *ti ;
 4021  unsigned long pfo_ret__ ;
 4022  unsigned long __cil_tmp3 ;
 4023  unsigned long __cil_tmp4 ;
 4024  unsigned long __cil_tmp5 ;
 4025  unsigned long __cil_tmp6 ;
 4026  void *__cil_tmp7 ;
 4027
 4028  {
 4029#line 225
 4030  if ((int )8UL == 1) {
 4031#line 225
 4032    goto case_1;
 4033  } else
 4034#line 225
 4035  if ((int )8UL == 2) {
 4036#line 225
 4037    goto case_2;
 4038  } else
 4039#line 225
 4040  if ((int )8UL == 4) {
 4041#line 225
 4042    goto case_4;
 4043  } else
 4044#line 225
 4045  if ((int )8UL == 8) {
 4046#line 225
 4047    goto case_8;
 4048  } else {
 4049    {
 4050#line 225
 4051    goto switch_default;
 4052#line 225
 4053    if (0) {
 4054      case_1: /* CIL Label */ 
 4055#line 225
 4056      __asm__  ("mov"
 4057                "b "
 4058                "%%"
 4059                "gs"
 4060                ":"
 4061                "%P"
 4062                "1"
 4063                ",%0": "=q" (pfo_ret__): "p" (& kernel_stack));
 4064#line 225
 4065      goto switch_break;
 4066      case_2: /* CIL Label */ 
 4067#line 225
 4068      __asm__  ("mov"
 4069                "w "
 4070                "%%"
 4071                "gs"
 4072                ":"
 4073                "%P"
 4074                "1"
 4075                ",%0": "=r" (pfo_ret__): "p" (& kernel_stack));
 4076#line 225
 4077      goto switch_break;
 4078      case_4: /* CIL Label */ 
 4079#line 225
 4080      __asm__  ("mov"
 4081                "l "
 4082                "%%"
 4083                "gs"
 4084                ":"
 4085                "%P"
 4086                "1"
 4087                ",%0": "=r" (pfo_ret__): "p" (& kernel_stack));
 4088#line 225
 4089      goto switch_break;
 4090      case_8: /* CIL Label */ 
 4091#line 225
 4092      __asm__  ("mov"
 4093                "q "
 4094                "%%"
 4095                "gs"
 4096                ":"
 4097                "%P"
 4098                "1"
 4099                ",%0": "=r" (pfo_ret__): "p" (& kernel_stack));
 4100#line 225
 4101      goto switch_break;
 4102      switch_default: /* CIL Label */ 
 4103      {
 4104#line 225
 4105      __bad_percpu_size();
 4106      }
 4107    } else {
 4108      switch_break: /* CIL Label */ ;
 4109    }
 4110    }
 4111  }
 4112#line 225
 4113  __cil_tmp3 = 1UL << 12;
 4114#line 225
 4115  __cil_tmp4 = __cil_tmp3 << 1;
 4116#line 225
 4117  __cil_tmp5 = pfo_ret__ + 40UL;
 4118#line 225
 4119  __cil_tmp6 = __cil_tmp5 - __cil_tmp4;
 4120#line 225
 4121  __cil_tmp7 = (void *)__cil_tmp6;
 4122#line 225
 4123  ti = (struct thread_info *)__cil_tmp7;
 4124#line 227
 4125  return (ti);
 4126}
 4127}
 4128#line 82 "include/linux/thread_info.h"
 4129__inline static int test_ti_thread_flag(struct thread_info *ti , int flag )  __attribute__((__no_instrument_function__)) ;
 4130#line 82 "include/linux/thread_info.h"
 4131__inline static int test_ti_thread_flag(struct thread_info *ti , int flag ) 
 4132{ int tmp___0 ;
 4133  unsigned long __cil_tmp5 ;
 4134  unsigned long __cil_tmp6 ;
 4135  __u32 *__cil_tmp7 ;
 4136  unsigned long *__cil_tmp8 ;
 4137  unsigned long  volatile   *__cil_tmp9 ;
 4138
 4139  {
 4140  {
 4141#line 84
 4142  __cil_tmp5 = (unsigned long )ti;
 4143#line 84
 4144  __cil_tmp6 = __cil_tmp5 + 16;
 4145#line 84
 4146  __cil_tmp7 = (__u32 *)__cil_tmp6;
 4147#line 84
 4148  __cil_tmp8 = (unsigned long *)__cil_tmp7;
 4149#line 84
 4150  __cil_tmp9 = (unsigned long  volatile   *)__cil_tmp8;
 4151#line 84
 4152  tmp___0 = variable_test_bit(flag, __cil_tmp9);
 4153  }
 4154#line 84
 4155  return (tmp___0);
 4156}
 4157}
 4158#line 24 "include/linux/list.h"
 4159__inline static void INIT_LIST_HEAD(struct list_head *list )  __attribute__((__no_instrument_function__)) ;
 4160#line 24 "include/linux/list.h"
 4161__inline static void INIT_LIST_HEAD(struct list_head *list ) 
 4162{ unsigned long __cil_tmp2 ;
 4163  unsigned long __cil_tmp3 ;
 4164
 4165  {
 4166#line 26
 4167  *((struct list_head **)list) = list;
 4168#line 27
 4169  __cil_tmp2 = (unsigned long )list;
 4170#line 27
 4171  __cil_tmp3 = __cil_tmp2 + 8;
 4172#line 27
 4173  *((struct list_head **)__cil_tmp3) = list;
 4174#line 28
 4175  return;
 4176}
 4177}
 4178#line 47
 4179extern void __list_add(struct list_head *new , struct list_head *prev , struct list_head *next ) ;
 4180#line 74
 4181__inline static void list_add_tail(struct list_head *new , struct list_head *head )  __attribute__((__no_instrument_function__)) ;
 4182#line 74 "include/linux/list.h"
 4183__inline static void list_add_tail(struct list_head *new , struct list_head *head ) 
 4184{ unsigned long __cil_tmp3 ;
 4185  unsigned long __cil_tmp4 ;
 4186  struct list_head *__cil_tmp5 ;
 4187
 4188  {
 4189  {
 4190#line 76
 4191  __cil_tmp3 = (unsigned long )head;
 4192#line 76
 4193  __cil_tmp4 = __cil_tmp3 + 8;
 4194#line 76
 4195  __cil_tmp5 = *((struct list_head **)__cil_tmp4);
 4196#line 76
 4197  __list_add(new, __cil_tmp5, head);
 4198  }
 4199#line 77
 4200  return;
 4201}
 4202}
 4203#line 86
 4204__inline static void __list_del(struct list_head *prev , struct list_head *next )  __attribute__((__no_instrument_function__)) ;
 4205#line 86 "include/linux/list.h"
 4206__inline static void __list_del(struct list_head *prev , struct list_head *next ) 
 4207{ unsigned long __cil_tmp3 ;
 4208  unsigned long __cil_tmp4 ;
 4209
 4210  {
 4211#line 88
 4212  __cil_tmp3 = (unsigned long )next;
 4213#line 88
 4214  __cil_tmp4 = __cil_tmp3 + 8;
 4215#line 88
 4216  *((struct list_head **)__cil_tmp4) = prev;
 4217#line 89
 4218  *((struct list_head **)prev) = next;
 4219#line 90
 4220  return;
 4221}
 4222}
 4223#line 111
 4224extern void __list_del_entry(struct list_head *entry ) ;
 4225#line 142
 4226__inline static void list_del_init(struct list_head *entry )  __attribute__((__no_instrument_function__)) ;
 4227#line 142 "include/linux/list.h"
 4228__inline static void list_del_init(struct list_head *entry ) 
 4229{ 
 4230
 4231  {
 4232  {
 4233#line 144
 4234  __list_del_entry(entry);
 4235#line 145
 4236  INIT_LIST_HEAD(entry);
 4237  }
 4238#line 146
 4239  return;
 4240}
 4241}
 4242#line 93 "include/linux/spinlock.h"
 4243extern void __raw_spin_lock_init(raw_spinlock_t *lock , char    *name , struct lock_class_key *key ) ;
 4244#line 22 "include/linux/spinlock_api_smp.h"
 4245extern void _raw_spin_lock(raw_spinlock_t *lock )  __attribute__((__section__(".spinlock.text"))) ;
 4246#line 29
 4247extern void _raw_spin_lock_irq(raw_spinlock_t *lock )  __attribute__((__section__(".spinlock.text"))) ;
 4248#line 39
 4249extern void _raw_spin_unlock(raw_spinlock_t *lock )  __attribute__((__section__(".spinlock.text"))) ;
 4250#line 41
 4251extern void _raw_spin_unlock_irq(raw_spinlock_t *lock )  __attribute__((__section__(".spinlock.text"))) ;
 4252#line 272 "include/linux/spinlock.h"
 4253__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )  __attribute__((__no_instrument_function__)) ;
 4254#line 272 "include/linux/spinlock.h"
 4255__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) 
 4256{ 
 4257
 4258  {
 4259#line 274
 4260  return ((struct raw_spinlock *)lock);
 4261}
 4262}
 4263#line 283
 4264__inline static void spin_lock(spinlock_t *lock )  __attribute__((__no_instrument_function__)) ;
 4265#line 283 "include/linux/spinlock.h"
 4266__inline static void spin_lock(spinlock_t *lock ) 
 4267{ struct raw_spinlock *__cil_tmp2 ;
 4268
 4269  {
 4270  {
 4271#line 285
 4272  __cil_tmp2 = (struct raw_spinlock *)lock;
 4273#line 285
 4274  _raw_spin_lock(__cil_tmp2);
 4275  }
 4276#line 286
 4277  return;
 4278}
 4279}
 4280#line 308
 4281__inline static void spin_lock_irq(spinlock_t *lock )  __attribute__((__no_instrument_function__)) ;
 4282#line 308 "include/linux/spinlock.h"
 4283__inline static void spin_lock_irq(spinlock_t *lock ) 
 4284{ struct raw_spinlock *__cil_tmp2 ;
 4285
 4286  {
 4287  {
 4288#line 310
 4289  __cil_tmp2 = (struct raw_spinlock *)lock;
 4290#line 310
 4291  _raw_spin_lock_irq(__cil_tmp2);
 4292  }
 4293#line 311
 4294  return;
 4295}
 4296}
 4297#line 323
 4298__inline static void spin_unlock(spinlock_t *lock )  __attribute__((__no_instrument_function__)) ;
 4299#line 323 "include/linux/spinlock.h"
 4300__inline static void spin_unlock(spinlock_t *lock ) 
 4301{ struct raw_spinlock *__cil_tmp2 ;
 4302
 4303  {
 4304  {
 4305#line 325
 4306  __cil_tmp2 = (struct raw_spinlock *)lock;
 4307#line 325
 4308  _raw_spin_unlock(__cil_tmp2);
 4309  }
 4310#line 326
 4311  return;
 4312}
 4313}
 4314#line 333
 4315__inline static void spin_unlock_irq(spinlock_t *lock )  __attribute__((__no_instrument_function__)) ;
 4316#line 333 "include/linux/spinlock.h"
 4317__inline static void spin_unlock_irq(spinlock_t *lock ) 
 4318{ struct raw_spinlock *__cil_tmp2 ;
 4319
 4320  {
 4321  {
 4322#line 335
 4323  __cil_tmp2 = (struct raw_spinlock *)lock;
 4324#line 335
 4325  _raw_spin_unlock_irq(__cil_tmp2);
 4326  }
 4327#line 336
 4328  return;
 4329}
 4330}
 4331#line 82 "include/linux/jiffies.h"
 4332extern unsigned long volatile   jiffies  __attribute__((__section__(".data"))) ;
 4333#line 298
 4334extern unsigned long msecs_to_jiffies(unsigned int    m ) ;
 4335#line 79 "include/linux/wait.h"
 4336extern void __init_waitqueue_head(wait_queue_head_t *q , char    *name , struct lock_class_key * ) ;
 4337#line 155
 4338extern void __wake_up(wait_queue_head_t *q , unsigned int mode , int nr , void *key ) ;
 4339#line 584
 4340extern void prepare_to_wait(wait_queue_head_t *q , wait_queue_t *wait , int state ) ;
 4341#line 586
 4342extern void finish_wait(wait_queue_head_t *q , wait_queue_t *wait ) ;
 4343#line 589
 4344extern int autoremove_wake_function(wait_queue_t *wait , unsigned int mode , int sync ,
 4345                                    void *key ) ;
 4346#line 115 "include/linux/mutex.h"
 4347extern void __mutex_init(struct mutex *lock , char    *name , struct lock_class_key *key ) ;
 4348#line 152
 4349void mutex_lock(struct mutex *lock ) ;
 4350#line 153
 4351int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
 4352#line 154
 4353int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
 4354#line 168
 4355int mutex_trylock(struct mutex *lock ) ;
 4356#line 169
 4357void mutex_unlock(struct mutex *lock ) ;
 4358#line 170
 4359int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
 4360#line 144 "include/linux/rcupdate.h"
 4361extern void synchronize_sched(void) ;
 4362#line 162
 4363__inline static void __rcu_read_lock(void)  __attribute__((__no_instrument_function__)) ;
 4364#line 162 "include/linux/rcupdate.h"
 4365__inline static void __rcu_read_lock(void) 
 4366{ struct thread_info *tmp ;
 4367  unsigned long __cil_tmp2 ;
 4368  unsigned long __cil_tmp3 ;
 4369  unsigned long __cil_tmp4 ;
 4370  unsigned long __cil_tmp5 ;
 4371  int __cil_tmp6 ;
 4372
 4373  {
 4374  {
 4375#line 164
 4376  while (1) {
 4377    while_continue: /* CIL Label */ ;
 4378    {
 4379#line 164
 4380    while (1) {
 4381      while_continue___0: /* CIL Label */ ;
 4382      {
 4383#line 164
 4384      tmp = current_thread_info();
 4385#line 164
 4386      __cil_tmp2 = (unsigned long )tmp;
 4387#line 164
 4388      __cil_tmp3 = __cil_tmp2 + 28;
 4389#line 164
 4390      __cil_tmp4 = (unsigned long )tmp;
 4391#line 164
 4392      __cil_tmp5 = __cil_tmp4 + 28;
 4393#line 164
 4394      __cil_tmp6 = *((int *)__cil_tmp5);
 4395#line 164
 4396      *((int *)__cil_tmp3) = __cil_tmp6 + 1;
 4397      }
 4398#line 164
 4399      goto while_break___0;
 4400    }
 4401    while_break___0: /* CIL Label */ ;
 4402    }
 4403#line 164
 4404    __asm__  volatile   ("": : : "memory");
 4405#line 164
 4406    goto while_break;
 4407  }
 4408  while_break: /* CIL Label */ ;
 4409  }
 4410#line 165
 4411  return;
 4412}
 4413}
 4414#line 167
 4415__inline static void __rcu_read_unlock(void)  __attribute__((__no_instrument_function__)) ;
 4416#line 167 "include/linux/rcupdate.h"
 4417__inline static void __rcu_read_unlock(void) 
 4418{ struct thread_info *tmp ;
 4419  unsigned long __cil_tmp2 ;
 4420  unsigned long __cil_tmp3 ;
 4421  unsigned long __cil_tmp4 ;
 4422  unsigned long __cil_tmp5 ;
 4423  int __cil_tmp6 ;
 4424
 4425  {
 4426  {
 4427#line 169
 4428  while (1) {
 4429    while_continue: /* CIL Label */ ;
 4430    {
 4431#line 169
 4432    while (1) {
 4433      while_continue___0: /* CIL Label */ ;
 4434#line 169
 4435      __asm__  volatile   ("": : : "memory");
 4436      {
 4437#line 169
 4438      while (1) {
 4439        while_continue___1: /* CIL Label */ ;
 4440        {
 4441#line 169
 4442        tmp = current_thread_info();
 4443#line 169
 4444        __cil_tmp2 = (unsigned long )tmp;
 4445#line 169
 4446        __cil_tmp3 = __cil_tmp2 + 28;
 4447#line 169
 4448        __cil_tmp4 = (unsigned long )tmp;
 4449#line 169
 4450        __cil_tmp5 = __cil_tmp4 + 28;
 4451#line 169
 4452        __cil_tmp6 = *((int *)__cil_tmp5);
 4453#line 169
 4454        *((int *)__cil_tmp3) = __cil_tmp6 - 1;
 4455        }
 4456#line 169
 4457        goto while_break___1;
 4458      }
 4459      while_break___1: /* CIL Label */ ;
 4460      }
 4461#line 169
 4462      goto while_break___0;
 4463    }
 4464    while_break___0: /* CIL Label */ ;
 4465    }
 4466#line 169
 4467    __asm__  volatile   ("": : : "memory");
 4468    {
 4469#line 169
 4470    while (1) {
 4471      while_continue___2: /* CIL Label */ ;
 4472#line 169
 4473      goto while_break___2;
 4474    }
 4475    while_break___2: /* CIL Label */ ;
 4476    }
 4477#line 169
 4478    goto while_break;
 4479  }
 4480  while_break: /* CIL Label */ ;
 4481  }
 4482#line 170
 4483  return;
 4484}
 4485}
 4486#line 172
 4487__inline static void synchronize_rcu(void)  __attribute__((__no_instrument_function__)) ;
 4488#line 172 "include/linux/rcupdate.h"
 4489__inline static void synchronize_rcu(void) 
 4490{ 
 4491
 4492  {
 4493  {
 4494#line 174
 4495  synchronize_sched();
 4496  }
 4497#line 175
 4498  return;
 4499}
 4500}
 4501#line 723
 4502__inline static void rcu_read_lock(void)  __attribute__((__no_instrument_function__)) ;
 4503#line 723 "include/linux/rcupdate.h"
 4504__inline static void rcu_read_lock(void) 
 4505{ 
 4506
 4507  {
 4508  {
 4509#line 725
 4510  __rcu_read_lock();
 4511  }
 4512  {
 4513#line 727
 4514  while (1) {
 4515    while_continue: /* CIL Label */ ;
 4516#line 727
 4517    goto while_break;
 4518  }
 4519  while_break: /* CIL Label */ ;
 4520  }
 4521  {
 4522#line 728
 4523  while (1) {
 4524    while_continue___0: /* CIL Label */ ;
 4525#line 728
 4526    goto while_break___0;
 4527  }
 4528  while_break___0: /* CIL Label */ ;
 4529  }
 4530#line 730
 4531  return;
 4532}
 4533}
 4534#line 747
 4535__inline static void rcu_read_unlock(void)  __attribute__((__no_instrument_function__)) ;
 4536#line 747 "include/linux/rcupdate.h"
 4537__inline static void rcu_read_unlock(void) 
 4538{ 
 4539
 4540  {
 4541  {
 4542#line 749
 4543  while (1) {
 4544    while_continue: /* CIL Label */ ;
 4545#line 749
 4546    goto while_break;
 4547  }
 4548  while_break: /* CIL Label */ ;
 4549  }
 4550  {
 4551#line 751
 4552  while (1) {
 4553    while_continue___0: /* CIL Label */ ;
 4554#line 751
 4555    goto while_break___0;
 4556  }
 4557  while_break___0: /* CIL Label */ ;
 4558  }
 4559  {
 4560#line 753
 4561  __rcu_read_unlock();
 4562  }
 4563#line 754
 4564  return;
 4565}
 4566}
 4567#line 33 "include/linux/rculist.h"
 4568__inline static void __list_add_rcu(struct list_head *new , struct list_head *prev ,
 4569                                    struct list_head *next )  __attribute__((__no_instrument_function__)) ;
 4570#line 33 "include/linux/rculist.h"
 4571__inline static void __list_add_rcu(struct list_head *new , struct list_head *prev ,
 4572                                    struct list_head *next ) 
 4573{ unsigned long __cil_tmp4 ;
 4574  unsigned long __cil_tmp5 ;
 4575  unsigned long __cil_tmp6 ;
 4576  unsigned long __cil_tmp7 ;
 4577
 4578  {
 4579#line 36
 4580  *((struct list_head **)new) = next;
 4581#line 37
 4582  __cil_tmp4 = (unsigned long )new;
 4583#line 37
 4584  __cil_tmp5 = __cil_tmp4 + 8;
 4585#line 37
 4586  *((struct list_head **)__cil_tmp5) = prev;
 4587#line 38
 4588  __asm__  volatile   ("": : : "memory");
 4589#line 38
 4590  *((struct list_head **)prev) = new;
 4591#line 39
 4592  __cil_tmp6 = (unsigned long )next;
 4593#line 39
 4594  __cil_tmp7 = __cil_tmp6 + 8;
 4595#line 39
 4596  *((struct list_head **)__cil_tmp7) = new;
 4597#line 40
 4598  return;
 4599}
 4600}
 4601#line 79
 4602__inline static void list_add_tail_rcu(struct list_head *new , struct list_head *head )  __attribute__((__no_instrument_function__)) ;
 4603#line 79 "include/linux/rculist.h"
 4604__inline static void list_add_tail_rcu(struct list_head *new , struct list_head *head ) 
 4605{ unsigned long __cil_tmp3 ;
 4606  unsigned long __cil_tmp4 ;
 4607  struct list_head *__cil_tmp5 ;
 4608
 4609  {
 4610  {
 4611#line 82
 4612  __cil_tmp3 = (unsigned long )head;
 4613#line 82
 4614  __cil_tmp4 = __cil_tmp3 + 8;
 4615#line 82
 4616  __cil_tmp5 = *((struct list_head **)__cil_tmp4);
 4617#line 82
 4618  __list_add_rcu(new, __cil_tmp5, head);
 4619  }
 4620#line 83
 4621  return;
 4622}
 4623}
 4624#line 109
 4625__inline static void list_del_rcu(struct list_head *entry )  __attribute__((__no_instrument_function__)) ;
 4626#line 109 "include/linux/rculist.h"
 4627__inline static void list_del_rcu(struct list_head *entry ) 
 4628{ unsigned long __cil_tmp2 ;
 4629  unsigned long __cil_tmp3 ;
 4630  struct list_head *__cil_tmp4 ;
 4631  struct list_head *__cil_tmp5 ;
 4632  unsigned long __cil_tmp6 ;
 4633  unsigned long __cil_tmp7 ;
 4634  void *__cil_tmp8 ;
 4635  void *__cil_tmp9 ;
 4636
 4637  {
 4638  {
 4639#line 111
 4640  __cil_tmp2 = (unsigned long )entry;
 4641#line 111
 4642  __cil_tmp3 = __cil_tmp2 + 8;
 4643#line 111
 4644  __cil_tmp4 = *((struct list_head **)__cil_tmp3);
 4645#line 111
 4646  __cil_tmp5 = *((struct list_head **)entry);
 4647#line 111
 4648  __list_del(__cil_tmp4, __cil_tmp5);
 4649#line 112
 4650  __cil_tmp6 = (unsigned long )entry;
 4651#line 112
 4652  __cil_tmp7 = __cil_tmp6 + 8;
 4653#line 112
 4654  __cil_tmp8 = (void *)2097664;
 4655#line 112
 4656  __cil_tmp9 = __cil_tmp8 + 0xdead000000000000UL;
 4657#line 112
 4658  *((struct list_head **)__cil_tmp7) = (struct list_head *)__cil_tmp9;
 4659  }
 4660#line 113
 4661  return;
 4662}
 4663}
 4664#line 362 "include/linux/sched.h"
 4665extern void schedule(void) ;
 4666#line 2563
 4667__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag )  __attribute__((__no_instrument_function__)) ;
 4668#line 2563 "include/linux/sched.h"
 4669__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag ) 
 4670{ int tmp___7 ;
 4671  unsigned long __cil_tmp4 ;
 4672  unsigned long __cil_tmp5 ;
 4673  void *__cil_tmp6 ;
 4674  struct thread_info *__cil_tmp7 ;
 4675
 4676  {
 4677  {
 4678#line 2565
 4679  __cil_tmp4 = (unsigned long )tsk;
 4680#line 2565
 4681  __cil_tmp5 = __cil_tmp4 + 8;
 4682#line 2565
 4683  __cil_tmp6 = *((void **)__cil_tmp5);
 4684#line 2565
 4685  __cil_tmp7 = (struct thread_info *)__cil_tmp6;
 4686#line 2565
 4687  tmp___7 = test_ti_thread_flag(__cil_tmp7, flag);
 4688  }
 4689#line 2565
 4690  return (tmp___7);
 4691}
 4692}
 4693#line 2589
 4694__inline static int signal_pending(struct task_struct *p )  __attribute__((__no_instrument_function__)) ;
 4695#line 2589 "include/linux/sched.h"
 4696__inline static int signal_pending(struct task_struct *p ) 
 4697{ int tmp___7 ;
 4698  int tmp___8 ;
 4699  long tmp___9 ;
 4700  long __cil_tmp5 ;
 4701
 4702  {
 4703  {
 4704#line 2591
 4705  tmp___7 = test_tsk_thread_flag(p, 2);
 4706  }
 4707#line 2591
 4708  if (tmp___7) {
 4709#line 2591
 4710    tmp___8 = 1;
 4711  } else {
 4712#line 2591
 4713    tmp___8 = 0;
 4714  }
 4715  {
 4716#line 2591
 4717  __cil_tmp5 = (long )tmp___8;
 4718#line 2591
 4719  tmp___9 = __builtin_expect(__cil_tmp5, 0L);
 4720  }
 4721#line 2591
 4722  return ((int )tmp___9);
 4723}
 4724}
 4725#line 161 "include/linux/slab.h"
 4726extern void kfree(void    * ) ;
 4727#line 80 "include/linux/kobject.h"
 4728__inline static char    *kobject_name(struct kobject    *kobj )  __attribute__((__no_instrument_function__)) ;
 4729#line 80 "include/linux/kobject.h"
 4730__inline static char    *kobject_name(struct kobject    *kobj ) 
 4731{ char    *   __cil_tmp2 ;
 4732
 4733  {
 4734  {
 4735#line 82
 4736  __cil_tmp2 = *((char    *   *)kobj);
 4737#line 82
 4738  return ((char    *)__cil_tmp2);
 4739  }
 4740}
 4741}
 4742#line 221 "include/linux/slub_def.h"
 4743extern void *__kmalloc(size_t size , gfp_t flags ) ;
 4744#line 268
 4745__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
 4746                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
 4747#line 268 "include/linux/slub_def.h"
 4748__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
 4749                                                                    gfp_t flags ) 
 4750{ void *tmp___10 ;
 4751
 4752  {
 4753  {
 4754#line 283
 4755  tmp___10 = __kmalloc(size, flags);
 4756  }
 4757#line 283
 4758  return (tmp___10);
 4759}
 4760}
 4761#line 349 "include/linux/slab.h"
 4762__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
 4763#line 349 "include/linux/slab.h"
 4764__inline static void *kzalloc(size_t size , gfp_t flags ) 
 4765{ void *tmp___7 ;
 4766  unsigned int __cil_tmp4 ;
 4767
 4768  {
 4769  {
 4770#line 351
 4771  __cil_tmp4 = flags | 32768U;
 4772#line 351
 4773  tmp___7 = kmalloc(size, __cil_tmp4);
 4774  }
 4775#line 351
 4776  return (tmp___7);
 4777}
 4778}
 4779#line 930 "include/linux/fs.h"
 4780__inline static unsigned int iminor(struct inode    *inode )  __attribute__((__no_instrument_function__)) ;
 4781#line 930 "include/linux/fs.h"
 4782__inline static unsigned int iminor(struct inode    *inode ) 
 4783{ unsigned int __cil_tmp2 ;
 4784  unsigned int __cil_tmp3 ;
 4785  unsigned int    __cil_tmp4 ;
 4786  unsigned long __cil_tmp5 ;
 4787  unsigned long __cil_tmp6 ;
 4788  dev_t    __cil_tmp7 ;
 4789  unsigned int    __cil_tmp8 ;
 4790
 4791  {
 4792  {
 4793#line 932
 4794  __cil_tmp2 = 1U << 20;
 4795#line 932
 4796  __cil_tmp3 = __cil_tmp2 - 1U;
 4797#line 932
 4798  __cil_tmp4 = (unsigned int    )__cil_tmp3;
 4799#line 932
 4800  __cil_tmp5 = (unsigned long )inode;
 4801#line 932
 4802  __cil_tmp6 = __cil_tmp5 + 76;
 4803#line 932
 4804  __cil_tmp7 = *((dev_t    *)__cil_tmp6);
 4805#line 932
 4806  __cil_tmp8 = __cil_tmp7 & __cil_tmp4;
 4807#line 932
 4808  return ((unsigned int )__cil_tmp8);
 4809  }
 4810}
 4811}
 4812#line 935
 4813__inline static unsigned int imajor(struct inode    *inode )  __attribute__((__no_instrument_function__)) ;
 4814#line 935 "include/linux/fs.h"
 4815__inline static unsigned int imajor(struct inode    *inode ) 
 4816{ unsigned long __cil_tmp2 ;
 4817  unsigned long __cil_tmp3 ;
 4818  dev_t    __cil_tmp4 ;
 4819  dev_t    __cil_tmp5 ;
 4820
 4821  {
 4822  {
 4823#line 937
 4824  __cil_tmp2 = (unsigned long )inode;
 4825#line 937
 4826  __cil_tmp3 = __cil_tmp2 + 76;
 4827#line 937
 4828  __cil_tmp4 = *((dev_t    *)__cil_tmp3);
 4829#line 937
 4830  __cil_tmp5 = __cil_tmp4 >> 20;
 4831#line 937
 4832  return ((unsigned int )__cil_tmp5);
 4833  }
 4834}
 4835}
 4836#line 1390
 4837extern int fasync_helper(int  , struct file * , int  , struct fasync_struct ** ) ;
 4838#line 1397
 4839extern void kill_fasync(struct fasync_struct ** , int  , int  ) ;
 4840#line 2401
 4841extern loff_t noop_llseek(struct file *file , loff_t offset , int origin ) ;
 4842#line 39 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
 4843extern unsigned long __attribute__((__warn_unused_result__))  _copy_to_user(void *to ,
 4844                                                                            void    *from ,
 4845                                                                            unsigned int len ) ;
 4846#line 62
 4847__inline static int __attribute__((__warn_unused_result__))  ( __attribute__((__always_inline__)) copy_to_user)(void *dst ,
 4848                                                                                                                void    *src ,
 4849                                                                                                                unsigned int size )  __attribute__((__no_instrument_function__)) ;
 4850#line 62 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
 4851__inline static int __attribute__((__warn_unused_result__))  ( __attribute__((__always_inline__)) copy_to_user)(void *dst ,
 4852                                                                                                                void    *src ,
 4853                                                                                                                unsigned int size ) 
 4854{ unsigned long tmp___7 ;
 4855
 4856  {
 4857  {
 4858#line 65
 4859  might_fault();
 4860#line 67
 4861  tmp___7 = (unsigned long )_copy_to_user(dst, src, size);
 4862  }
 4863#line 67
 4864  return ((int )tmp___7);
 4865}
 4866}
 4867#line 44 "include/linux/poll.h"
 4868__inline static void poll_wait(struct file *filp , wait_queue_head_t *wait_address ,
 4869                               poll_table *p )  __attribute__((__no_instrument_function__)) ;
 4870#line 44 "include/linux/poll.h"
 4871__inline static void poll_wait(struct file *filp , wait_queue_head_t *wait_address ,
 4872                               poll_table *p ) 
 4873{ void (*__cil_tmp4)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
 4874
 4875  {
 4876#line 46
 4877  if (p) {
 4878#line 46
 4879    if (*((void (**)(struct file * , wait_queue_head_t * , struct poll_table_struct * ))p)) {
 4880#line 46
 4881      if (wait_address) {
 4882        {
 4883#line 47
 4884        __cil_tmp4 = *((void (**)(struct file * , wait_queue_head_t * , struct poll_table_struct * ))p);
 4885#line 47
 4886        (*__cil_tmp4)(filp, wait_address, p);
 4887        }
 4888      } else {
 4889
 4890      }
 4891    } else {
 4892
 4893    }
 4894  } else {
 4895
 4896  }
 4897#line 48
 4898  return;
 4899}
 4900}
 4901#line 361 "include/linux/moduleparam.h"
 4902extern struct kernel_param_ops param_ops_uint ;
 4903#line 26 "include/linux/export.h"
 4904extern struct module __this_module ;
 4905#line 67 "include/linux/module.h"
 4906int init_module(void) ;
 4907#line 68
 4908void cleanup_module(void) ;
 4909#line 685 "include/linux/device.h"
 4910__inline static char    *dev_name(struct device    *dev )  __attribute__((__no_instrument_function__)) ;
 4911#line 685 "include/linux/device.h"
 4912__inline static char    *dev_name(struct device    *dev ) 
 4913{ char    *tmp___7 ;
 4914  unsigned long __cil_tmp3 ;
 4915  unsigned long __cil_tmp4 ;
 4916  unsigned long __cil_tmp5 ;
 4917  unsigned long __cil_tmp6 ;
 4918  char    *   __cil_tmp7 ;
 4919  unsigned long __cil_tmp8 ;
 4920  unsigned long __cil_tmp9 ;
 4921  struct kobject    *__cil_tmp10 ;
 4922
 4923  {
 4924  {
 4925#line 688
 4926  __cil_tmp3 = (unsigned long )dev;
 4927#line 688
 4928  __cil_tmp4 = __cil_tmp3 + 80;
 4929#line 688
 4930  if (*((char    *   *)__cil_tmp4)) {
 4931    {
 4932#line 689
 4933    __cil_tmp5 = (unsigned long )dev;
 4934#line 689
 4935    __cil_tmp6 = __cil_tmp5 + 80;
 4936#line 689
 4937    __cil_tmp7 = *((char    *   *)__cil_tmp6);
 4938#line 689
 4939    return ((char    *)__cil_tmp7);
 4940    }
 4941  } else {
 4942
 4943  }
 4944  }
 4945  {
 4946#line 691
 4947  __cil_tmp8 = (unsigned long )dev;
 4948#line 691
 4949  __cil_tmp9 = __cil_tmp8 + 16;
 4950#line 691
 4951  __cil_tmp10 = (struct kobject    *)__cil_tmp9;
 4952#line 691
 4953  tmp___7 = kobject_name(__cil_tmp10);
 4954  }
 4955#line 691
 4956  return (tmp___7);
 4957}
 4958}
 4959#line 694
 4960extern int ( /* format attribute */  dev_set_name)(struct device *dev , char    *name 
 4961                                                   , ...) ;
 4962#line 780
 4963extern void device_initialize(struct device *dev ) ;
 4964#line 781
 4965extern int __attribute__((__warn_unused_result__))  device_add(struct device *dev ) ;
 4966#line 782
 4967extern void device_del(struct device *dev ) ;
 4968#line 855
 4969extern struct device *get_device(struct device *dev ) ;
 4970#line 856
 4971extern void put_device(struct device *dev ) ;
 4972#line 1459 "include/linux/input.h"
 4973__inline static struct input_dev *input_get_device(struct input_dev *dev )  __attribute__((__no_instrument_function__)) ;
 4974#line 1459 "include/linux/input.h"
 4975__inline static struct input_dev *input_get_device(struct input_dev *dev ) 
 4976{ struct device    *__mptr ;
 4977  struct device *tmp___7 ;
 4978  struct input_dev *tmp___8 ;
 4979  unsigned long __cil_tmp5 ;
 4980  unsigned long __cil_tmp6 ;
 4981  struct device *__cil_tmp7 ;
 4982  struct input_dev *__cil_tmp8 ;
 4983  unsigned long __cil_tmp9 ;
 4984  unsigned long __cil_tmp10 ;
 4985  struct device *__cil_tmp11 ;
 4986  unsigned int __cil_tmp12 ;
 4987  char *__cil_tmp13 ;
 4988  char *__cil_tmp14 ;
 4989  void *__cil_tmp15 ;
 4990
 4991  {
 4992#line 1461
 4993  if (dev) {
 4994    {
 4995#line 1461
 4996    __cil_tmp5 = (unsigned long )dev;
 4997#line 1461
 4998    __cil_tmp6 = __cil_tmp5 + 648;
 4999#line 1461
 5000    __cil_tmp7 = (struct device *)__cil_tmp6;
 5001#line 1461
 5002    tmp___7 = get_device(__cil_tmp7);
 5003#line 1461
 5004    __mptr = (struct device    *)tmp___7;
 5005#line 1461
 5006    __cil_tmp8 = (struct input_dev *)0;
 5007#line 1461
 5008    __cil_tmp9 = (unsigned long )__cil_tmp8;
 5009#line 1461
 5010    __cil_tmp10 = __cil_tmp9 + 648;
 5011#line 1461
 5012    __cil_tmp11 = (struct device *)__cil_tmp10;
 5013#line 1461
 5014    __cil_tmp12 = (unsigned int )__cil_tmp11;
 5015#line 1461
 5016    __cil_tmp13 = (char *)__mptr;
 5017#line 1461
 5018    __cil_tmp14 = __cil_tmp13 - __cil_tmp12;
 5019#line 1461
 5020    tmp___8 = (struct input_dev *)__cil_tmp14;
 5021    }
 5022  } else {
 5023#line 1461
 5024    __cil_tmp15 = (void *)0;
 5025#line 1461
 5026    tmp___8 = (struct input_dev *)__cil_tmp15;
 5027  }
 5028#line 1461
 5029  return (tmp___8);
 5030}
 5031}
 5032#line 1464
 5033__inline static void input_put_device(struct input_dev *dev )  __attribute__((__no_instrument_function__)) ;
 5034#line 1464 "include/linux/input.h"
 5035__inline static void input_put_device(struct input_dev *dev ) 
 5036{ unsigned long __cil_tmp2 ;
 5037  unsigned long __cil_tmp3 ;
 5038  struct device *__cil_tmp4 ;
 5039
 5040  {
 5041#line 1466
 5042  if (dev) {
 5043    {
 5044#line 1467
 5045    __cil_tmp2 = (unsigned long )dev;
 5046#line 1467
 5047    __cil_tmp3 = __cil_tmp2 + 648;
 5048#line 1467
 5049    __cil_tmp4 = (struct device *)__cil_tmp3;
 5050#line 1467
 5051    put_device(__cil_tmp4);
 5052    }
 5053  } else {
 5054
 5055  }
 5056#line 1468
 5057  return;
 5058}
 5059}
 5060#line 1485
 5061extern int __attribute__((__warn_unused_result__))  input_register_handler(struct input_handler * ) ;
 5062#line 1486
 5063extern void input_unregister_handler(struct input_handler * ) ;
 5064#line 1491
 5065extern int input_register_handle(struct input_handle * ) ;
 5066#line 1492
 5067extern void input_unregister_handle(struct input_handle * ) ;
 5068#line 1497
 5069extern int input_open_device(struct input_handle * ) ;
 5070#line 1498
 5071extern void input_close_device(struct input_handle * ) ;
 5072#line 1577
 5073__inline static int input_abs_get_min(struct input_dev *dev , unsigned int axis )  __attribute__((__no_instrument_function__)) ;
 5074#line 1577 "include/linux/input.h"
 5075__inline static int input_abs_get_min(struct input_dev *dev , unsigned int axis ) 
 5076{ __s32 tmp___7 ;
 5077  unsigned long __cil_tmp4 ;
 5078  unsigned long __cil_tmp5 ;
 5079  unsigned long __cil_tmp6 ;
 5080  unsigned long __cil_tmp7 ;
 5081  struct input_absinfo *__cil_tmp8 ;
 5082  struct input_absinfo *__cil_tmp9 ;
 5083  unsigned long __cil_tmp10 ;
 5084  unsigned long __cil_tmp11 ;
 5085
 5086  {
 5087  {
 5088#line 1577
 5089  __cil_tmp4 = (unsigned long )dev;
 5090#line 1577
 5091  __cil_tmp5 = __cil_tmp4 + 376;
 5092#line 1577
 5093  if (*((struct input_absinfo **)__cil_tmp5)) {
 5094#line 1577
 5095    __cil_tmp6 = (unsigned long )dev;
 5096#line 1577
 5097    __cil_tmp7 = __cil_tmp6 + 376;
 5098#line 1577
 5099    __cil_tmp8 = *((struct input_absinfo **)__cil_tmp7);
 5100#line 1577
 5101    __cil_tmp9 = __cil_tmp8 + axis;
 5102#line 1577
 5103    __cil_tmp10 = (unsigned long )__cil_tmp9;
 5104#line 1577
 5105    __cil_tmp11 = __cil_tmp10 + 4;
 5106#line 1577
 5107    tmp___7 = *((__s32 *)__cil_tmp11);
 5108  } else {
 5109#line 1577
 5110    tmp___7 = 0;
 5111  }
 5112  }
 5113#line 1577
 5114  return (tmp___7);
 5115}
 5116}
 5117#line 1578
 5118__inline static int input_abs_get_max(struct input_dev *dev , unsigned int axis )  __attribute__((__no_instrument_function__)) ;
 5119#line 1578 "include/linux/input.h"
 5120__inline static int input_abs_get_max(struct input_dev *dev , unsigned int axis ) 
 5121{ __s32 tmp___7 ;
 5122  unsigned long __cil_tmp4 ;
 5123  unsigned long __cil_tmp5 ;
 5124  unsigned long __cil_tmp6 ;
 5125  unsigned long __cil_tmp7 ;
 5126  struct input_absinfo *__cil_tmp8 ;
 5127  struct input_absinfo *__cil_tmp9 ;
 5128  unsigned long __cil_tmp10 ;
 5129  unsigned long __cil_tmp11 ;
 5130
 5131  {
 5132  {
 5133#line 1578
 5134  __cil_tmp4 = (unsigned long )dev;
 5135#line 1578
 5136  __cil_tmp5 = __cil_tmp4 + 376;
 5137#line 1578
 5138  if (*((struct input_absinfo **)__cil_tmp5)) {
 5139#line 1578
 5140    __cil_tmp6 = (unsigned long )dev;
 5141#line 1578
 5142    __cil_tmp7 = __cil_tmp6 + 376;
 5143#line 1578
 5144    __cil_tmp8 = *((struct input_absinfo **)__cil_tmp7);
 5145#line 1578
 5146    __cil_tmp9 = __cil_tmp8 + axis;
 5147#line 1578
 5148    __cil_tmp10 = (unsigned long )__cil_tmp9;
 5149#line 1578
 5150    __cil_tmp11 = __cil_tmp10 + 8;
 5151#line 1578
 5152    tmp___7 = *((__s32 *)__cil_tmp11);
 5153  } else {
 5154#line 1578
 5155    tmp___7 = 0;
 5156  }
 5157  }
 5158#line 1578
 5159  return (tmp___7);
 5160}
 5161}
 5162#line 1590
 5163extern struct class input_class ;
 5164#line 61 "include/linux/miscdevice.h"
 5165extern int misc_register(struct miscdevice *misc ) ;
 5166#line 62
 5167extern int misc_deregister(struct miscdevice *misc ) ;
 5168#line 33 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5169static char    __mod_author33[39]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 5170__aligned__(1)))  = 
 5171#line 33 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5172  {      (char    )'a',      (char    )'u',      (char const   )'t',      (char const   )'h', 
 5173        (char    )'o',      (char    )'r',      (char const   )'=',      (char const   )'V', 
 5174        (char    )'o',      (char    )'j',      (char const   )'t',      (char const   )'e', 
 5175        (char    )'c',      (char    )'h',      (char const   )' ',      (char const   )'P', 
 5176        (char    )'a',      (char    )'v',      (char const   )'l',      (char const   )'i', 
 5177        (char    )'k',      (char    )' ',      (char const   )'<',      (char const   )'v', 
 5178        (char    )'o',      (char    )'j',      (char const   )'t',      (char const   )'e', 
 5179        (char    )'c',      (char    )'h',      (char const   )'@',      (char const   )'u', 
 5180        (char    )'c',      (char    )'w',      (char const   )'.',      (char const   )'c', 
 5181        (char    )'z',      (char    )'>',      (char const   )'\000'};
 5182#line 34 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5183static char    __mod_description34[51]  __attribute__((__used__, __unused__,
 5184__section__(".modinfo"), __aligned__(1)))  = 
 5185#line 34
 5186  {      (char    )'d',      (char    )'e',      (char const   )'s',      (char const   )'c', 
 5187        (char    )'r',      (char    )'i',      (char const   )'p',      (char const   )'t', 
 5188        (char    )'i',      (char    )'o',      (char const   )'n',      (char const   )'=', 
 5189        (char    )'M',      (char    )'o',      (char const   )'u',      (char const   )'s', 
 5190        (char    )'e',      (char    )' ',      (char const   )'(',      (char const   )'E', 
 5191        (char    )'x',      (char    )'p',      (char const   )'l',      (char const   )'o', 
 5192        (char    )'r',      (char    )'e',      (char const   )'r',      (char const   )'P', 
 5193        (char    )'S',      (char    )'/',      (char const   )'2',      (char const   )')', 
 5194        (char    )' ',      (char    )'d',      (char const   )'e',      (char const   )'v', 
 5195        (char    )'i',      (char    )'c',      (char const   )'e',      (char const   )' ', 
 5196        (char    )'i',      (char    )'n',      (char const   )'t',      (char const   )'e', 
 5197        (char    )'r',      (char    )'f',      (char const   )'a',      (char const   )'c', 
 5198        (char    )'e',      (char    )'s',      (char const   )'\000'};
 5199#line 35 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5200static char    __mod_license35[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 5201__aligned__(1)))  = 
 5202#line 35
 5203  {      (char    )'l',      (char    )'i',      (char const   )'c',      (char const   )'e', 
 5204        (char    )'n',      (char    )'s',      (char const   )'e',      (char const   )'=', 
 5205        (char    )'G',      (char    )'P',      (char const   )'L',      (char const   )'\000'};
 5206#line 44 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5207static int xres  =    1024;
 5208#line 45 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5209static char    __param_str_xres[5]  = {      (char    )'x',      (char const   )'r',      (char const   )'e',      (char const   )'s', 
 5210        (char    )'\000'};
 5211#line 45 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5212static struct kernel_param    __param_xres  __attribute__((__used__, __unused__,
 5213__section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_xres, (struct kernel_param_ops    *)(& param_ops_uint), (u16 )420,
 5214    (s16 )0, {(void *)(& xres)}};
 5215#line 45 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5216static char    __mod_xrestype45[19]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 5217__aligned__(1)))  = 
 5218#line 45
 5219  {      (char    )'p',      (char    )'a',      (char const   )'r',      (char const   )'m', 
 5220        (char    )'t',      (char    )'y',      (char const   )'p',      (char const   )'e', 
 5221        (char    )'=',      (char    )'x',      (char const   )'r',      (char const   )'e', 
 5222        (char    )'s',      (char    )':',      (char const   )'u',      (char const   )'i', 
 5223        (char    )'n',      (char    )'t',      (char const   )'\000'};
 5224#line 46 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5225static char    __mod_xres46[39]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 5226__aligned__(1)))  = 
 5227#line 46
 5228  {      (char    )'p',      (char    )'a',      (char const   )'r',      (char const   )'m', 
 5229        (char    )'=',      (char    )'x',      (char const   )'r',      (char const   )'e', 
 5230        (char    )'s',      (char    )':',      (char const   )'H',      (char const   )'o', 
 5231        (char    )'r',      (char    )'i',      (char const   )'z',      (char const   )'o', 
 5232        (char    )'n',      (char    )'t',      (char const   )'a',      (char const   )'l', 
 5233        (char    )' ',      (char    )'s',      (char const   )'c',      (char const   )'r', 
 5234        (char    )'e',      (char    )'e',      (char const   )'n',      (char const   )' ', 
 5235        (char    )'r',      (char    )'e',      (char const   )'s',      (char const   )'o', 
 5236        (char    )'l',      (char    )'u',      (char const   )'t',      (char const   )'i', 
 5237        (char    )'o',      (char    )'n',      (char const   )'\000'};
 5238#line 48 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5239static int yres  =    768;
 5240#line 49 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5241static char    __param_str_yres[5]  = {      (char    )'y',      (char const   )'r',      (char const   )'e',      (char const   )'s', 
 5242        (char    )'\000'};
 5243#line 49 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5244static struct kernel_param    __param_yres  __attribute__((__used__, __unused__,
 5245__section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_yres, (struct kernel_param_ops    *)(& param_ops_uint), (u16 )420,
 5246    (s16 )0, {(void *)(& yres)}};
 5247#line 49 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5248static char    __mod_yrestype49[19]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 5249__aligned__(1)))  = 
 5250#line 49
 5251  {      (char    )'p',      (char    )'a',      (char const   )'r',      (char const   )'m', 
 5252        (char    )'t',      (char    )'y',      (char const   )'p',      (char const   )'e', 
 5253        (char    )'=',      (char    )'y',      (char const   )'r',      (char const   )'e', 
 5254        (char    )'s',      (char    )':',      (char const   )'u',      (char const   )'i', 
 5255        (char    )'n',      (char    )'t',      (char const   )'\000'};
 5256#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5257static char    __mod_yres50[37]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 5258__aligned__(1)))  = 
 5259#line 50
 5260  {      (char    )'p',      (char    )'a',      (char const   )'r',      (char const   )'m', 
 5261        (char    )'=',      (char    )'y',      (char const   )'r',      (char const   )'e', 
 5262        (char    )'s',      (char    )':',      (char const   )'V',      (char const   )'e', 
 5263        (char    )'r',      (char    )'t',      (char const   )'i',      (char const   )'c', 
 5264        (char    )'a',      (char    )'l',      (char const   )' ',      (char const   )'s', 
 5265        (char    )'c',      (char    )'r',      (char const   )'e',      (char const   )'e', 
 5266        (char    )'n',      (char    )' ',      (char const   )'r',      (char const   )'e', 
 5267        (char    )'s',      (char    )'o',      (char const   )'l',      (char const   )'u', 
 5268        (char    )'t',      (char    )'i',      (char const   )'o',      (char const   )'n', 
 5269        (char    )'\000'};
 5270#line 52 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5271static unsigned int tap_time  =    200U;
 5272#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5273static char    __param_str_tap_time[9]  = 
 5274#line 53
 5275  {      (char    )'t',      (char    )'a',      (char const   )'p',      (char const   )'_', 
 5276        (char    )'t',      (char    )'i',      (char const   )'m',      (char const   )'e', 
 5277        (char    )'\000'};
 5278#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5279static struct kernel_param    __param_tap_time  __attribute__((__used__, __unused__,
 5280__section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_tap_time, (struct kernel_param_ops    *)(& param_ops_uint), (u16 )420,
 5281    (s16 )0, {(void *)(& tap_time)}};
 5282#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5283static char    __mod_tap_timetype53[23]  __attribute__((__used__, __unused__,
 5284__section__(".modinfo"), __aligned__(1)))  = 
 5285#line 53
 5286  {      (char    )'p',      (char    )'a',      (char const   )'r',      (char const   )'m', 
 5287        (char    )'t',      (char    )'y',      (char const   )'p',      (char const   )'e', 
 5288        (char    )'=',      (char    )'t',      (char const   )'a',      (char const   )'p', 
 5289        (char    )'_',      (char    )'t',      (char const   )'i',      (char const   )'m', 
 5290        (char    )'e',      (char    )':',      (char const   )'u',      (char const   )'i', 
 5291        (char    )'n',      (char    )'t',      (char const   )'\000'};
 5292#line 54 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5293static char    __mod_tap_time54[62]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 5294__aligned__(1)))  = 
 5295#line 54
 5296  {      (char    )'p',      (char    )'a',      (char const   )'r',      (char const   )'m', 
 5297        (char    )'=',      (char    )'t',      (char const   )'a',      (char const   )'p', 
 5298        (char    )'_',      (char    )'t',      (char const   )'i',      (char const   )'m', 
 5299        (char    )'e',      (char    )':',      (char const   )'T',      (char const   )'a', 
 5300        (char    )'p',      (char    )' ',      (char const   )'t',      (char const   )'i', 
 5301        (char    )'m',      (char    )'e',      (char const   )' ',      (char const   )'f', 
 5302        (char    )'o',      (char    )'r',      (char const   )' ',      (char const   )'t', 
 5303        (char    )'o',      (char    )'u',      (char const   )'c',      (char const   )'h', 
 5304        (char    )'p',      (char    )'a',      (char const   )'d',      (char const   )'s', 
 5305        (char    )' ',      (char    )'i',      (char const   )'n',      (char const   )' ', 
 5306        (char    )'a',      (char    )'b',      (char const   )'s',      (char const   )'o', 
 5307        (char    )'l',      (char    )'u',      (char const   )'t',      (char const   )'e', 
 5308        (char    )' ',      (char    )'m',      (char const   )'o',      (char const   )'d', 
 5309        (char    )'e',      (char    )' ',      (char const   )'(',      (char const   )'m', 
 5310        (char    )'s',      (char    )'e',      (char const   )'c',      (char const   )'s', 
 5311        (char    )')',      (char    )'\000'};
 5312#line 115 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5313static unsigned char mousedev_imps_seq[6]  = {      (unsigned char)243,      (unsigned char)200,      (unsigned char)243,      (unsigned char)100, 
 5314        (unsigned char)243,      (unsigned char)80};
 5315#line 116 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5316static unsigned char mousedev_imex_seq[6]  = {      (unsigned char)243,      (unsigned char)200,      (unsigned char)243,      (unsigned char)200, 
 5317        (unsigned char)243,      (unsigned char)80};
 5318#line 118
 5319static struct input_handler mousedev_handler ;
 5320#line 120 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5321static struct mousedev *mousedev_table[32]  ;
 5322#line 121 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5323static struct mutex mousedev_table_mutex  =    {{1}, {{{{{(__ticketpair_t )0}}, 3735899821U, 4294967295U, (void *)-1L}}}, {& mousedev_table_mutex.wait_list,
 5324                                                                               & mousedev_table_mutex.wait_list},
 5325    (struct task_struct *)0, (char    *)0, (void *)(& mousedev_table_mutex)};
 5326#line 122 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5327static struct mousedev *mousedev_mix  ;
 5328#line 123 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5329static struct list_head mousedev_mix_list  =    {& mousedev_mix_list, & mousedev_mix_list};
 5330#line 125
 5331static void mixdev_open_devices(void) ;
 5332#line 126
 5333static void mixdev_close_devices(void) ;
 5334#line 131 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5335static void mousedev_touchpad_event(struct input_dev *dev , struct mousedev *mousedev ,
 5336                                    unsigned int code , int value ) 
 5337{ int size ;
 5338  int tmp___7 ;
 5339  int tmp___8 ;
 5340  int tmp___9 ;
 5341  int tmp___10 ;
 5342  int tmp___11 ;
 5343  unsigned long __cil_tmp11 ;
 5344  unsigned long __cil_tmp12 ;
 5345  unsigned int __cil_tmp13 ;
 5346  unsigned int __cil_tmp14 ;
 5347  unsigned long __cil_tmp15 ;
 5348  unsigned long __cil_tmp16 ;
 5349  unsigned long __cil_tmp17 ;
 5350  unsigned long __cil_tmp18 ;
 5351  unsigned long __cil_tmp19 ;
 5352  unsigned long __cil_tmp20 ;
 5353  unsigned long __cil_tmp21 ;
 5354  unsigned long __cil_tmp22 ;
 5355  unsigned int __cil_tmp23 ;
 5356  unsigned long __cil_tmp24 ;
 5357  unsigned long __cil_tmp25 ;
 5358  unsigned int __cil_tmp26 ;
 5359  unsigned int __cil_tmp27 ;
 5360  unsigned int __cil_tmp28 ;
 5361  unsigned long __cil_tmp29 ;
 5362  unsigned long __cil_tmp30 ;
 5363  unsigned long __cil_tmp31 ;
 5364  unsigned long __cil_tmp32 ;
 5365  int __cil_tmp33 ;
 5366  int __cil_tmp34 ;
 5367  int __cil_tmp35 ;
 5368  int __cil_tmp36 ;
 5369  unsigned long __cil_tmp37 ;
 5370  unsigned long __cil_tmp38 ;
 5371  int __cil_tmp39 ;
 5372  unsigned long __cil_tmp40 ;
 5373  unsigned long __cil_tmp41 ;
 5374  unsigned long __cil_tmp42 ;
 5375  unsigned long __cil_tmp43 ;
 5376  unsigned long __cil_tmp44 ;
 5377  unsigned long __cil_tmp45 ;
 5378  int __cil_tmp46 ;
 5379  int __cil_tmp47 ;
 5380  unsigned long __cil_tmp48 ;
 5381  unsigned long __cil_tmp49 ;
 5382  unsigned int __cil_tmp50 ;
 5383  unsigned int __cil_tmp51 ;
 5384  unsigned long __cil_tmp52 ;
 5385  unsigned long __cil_tmp53 ;
 5386  unsigned long __cil_tmp54 ;
 5387  unsigned long __cil_tmp55 ;
 5388  unsigned long __cil_tmp56 ;
 5389  unsigned long __cil_tmp57 ;
 5390  unsigned long __cil_tmp58 ;
 5391  unsigned long __cil_tmp59 ;
 5392  unsigned int __cil_tmp60 ;
 5393  unsigned long __cil_tmp61 ;
 5394  unsigned long __cil_tmp62 ;
 5395  unsigned int __cil_tmp63 ;
 5396  unsigned int __cil_tmp64 ;
 5397  unsigned int __cil_tmp65 ;
 5398  unsigned long __cil_tmp66 ;
 5399  unsigned long __cil_tmp67 ;
 5400  unsigned long __cil_tmp68 ;
 5401  unsigned long __cil_tmp69 ;
 5402  int __cil_tmp70 ;
 5403  int __cil_tmp71 ;
 5404  int __cil_tmp72 ;
 5405  int __cil_tmp73 ;
 5406  int __cil_tmp74 ;
 5407  unsigned long __cil_tmp75 ;
 5408  unsigned long __cil_tmp76 ;
 5409  int __cil_tmp77 ;
 5410  unsigned long __cil_tmp78 ;
 5411  unsigned long __cil_tmp79 ;
 5412  unsigned long __cil_tmp80 ;
 5413  unsigned long __cil_tmp81 ;
 5414  unsigned long __cil_tmp82 ;
 5415  unsigned long __cil_tmp83 ;
 5416  unsigned long __cil_tmp84 ;
 5417  unsigned long __cil_tmp85 ;
 5418  int __cil_tmp86 ;
 5419  int __cil_tmp87 ;
 5420
 5421  {
 5422#line 140
 5423  if ((int )code == 0) {
 5424#line 140
 5425    goto case_0;
 5426  } else
 5427#line 157
 5428  if ((int )code == 1) {
 5429#line 157
 5430    goto case_1;
 5431  } else
 5432#line 138
 5433  if (0) {
 5434    case_0: /* CIL Label */ 
 5435#line 142
 5436    __cil_tmp11 = (unsigned long )mousedev;
 5437#line 142
 5438    __cil_tmp12 = __cil_tmp11 + 1064;
 5439#line 142
 5440    __cil_tmp13 = *((unsigned int *)__cil_tmp12);
 5441#line 142
 5442    __cil_tmp14 = __cil_tmp13 & 3U;
 5443#line 142
 5444    __cil_tmp15 = __cil_tmp14 * 4UL;
 5445#line 142
 5446    __cil_tmp16 = 1068 + __cil_tmp15;
 5447#line 142
 5448    __cil_tmp17 = (unsigned long )mousedev;
 5449#line 142
 5450    __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
 5451#line 142
 5452    *((int *)__cil_tmp18) = value;
 5453    {
 5454#line 143
 5455    __cil_tmp19 = (unsigned long )mousedev;
 5456#line 143
 5457    __cil_tmp20 = __cil_tmp19 + 1112;
 5458#line 143
 5459    if (*((unsigned long *)__cil_tmp20)) {
 5460      {
 5461#line 143
 5462      __cil_tmp21 = (unsigned long )mousedev;
 5463#line 143
 5464      __cil_tmp22 = __cil_tmp21 + 1064;
 5465#line 143
 5466      __cil_tmp23 = *((unsigned int *)__cil_tmp22);
 5467#line 143
 5468      if (__cil_tmp23 >= 2U) {
 5469        {
 5470#line 144
 5471        tmp___8 = input_abs_get_max(dev, 0U);
 5472#line 144
 5473        tmp___9 = input_abs_get_min(dev, 0U);
 5474#line 144
 5475        size = tmp___8 - tmp___9;
 5476        }
 5477#line 146
 5478        if (size == 0) {
 5479#line 147
 5480          size = 512;
 5481        } else {
 5482
 5483        }
 5484#line 149
 5485        __cil_tmp24 = (unsigned long )mousedev;
 5486#line 149
 5487        __cil_tmp25 = __cil_tmp24 + 1064;
 5488#line 149
 5489        __cil_tmp26 = *((unsigned int *)__cil_tmp25);
 5490#line 149
 5491        __cil_tmp27 = __cil_tmp26 - 2U;
 5492#line 149
 5493        __cil_tmp28 = __cil_tmp27 & 3U;
 5494#line 149
 5495        __cil_tmp29 = __cil_tmp28 * 4UL;
 5496#line 149
 5497        __cil_tmp30 = 1068 + __cil_tmp29;
 5498#line 149
 5499        __cil_tmp31 = (unsigned long )mousedev;
 5500#line 149
 5501        __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
 5502#line 149
 5503        __cil_tmp33 = *((int *)__cil_tmp32);
 5504#line 149
 5505        __cil_tmp34 = value - __cil_tmp33;
 5506#line 149
 5507        __cil_tmp35 = __cil_tmp34 * 256;
 5508#line 149
 5509        __cil_tmp36 = __cil_tmp35 * 128;
 5510#line 149
 5511        tmp___7 = __cil_tmp36 / size;
 5512#line 150
 5513        __cil_tmp37 = (unsigned long )mousedev;
 5514#line 150
 5515        __cil_tmp38 = __cil_tmp37 + 1100;
 5516#line 150
 5517        __cil_tmp39 = *((int *)__cil_tmp38);
 5518#line 150
 5519        tmp___7 = tmp___7 + __cil_tmp39;
 5520#line 151
 5521        __cil_tmp40 = (unsigned long )mousedev;
 5522#line 151
 5523        __cil_tmp41 = __cil_tmp40 + 1032;
 5524#line 151
 5525        *((int *)__cil_tmp41) = tmp___7 / 128;
 5526#line 152
 5527        __cil_tmp42 = (unsigned long )mousedev;
 5528#line 152
 5529        __cil_tmp43 = __cil_tmp42 + 1100;
 5530#line 152
 5531        __cil_tmp44 = (unsigned long )mousedev;
 5532#line 152
 5533        __cil_tmp45 = __cil_tmp44 + 1032;
 5534#line 152
 5535        __cil_tmp46 = *((int *)__cil_tmp45);
 5536#line 152
 5537        __cil_tmp47 = __cil_tmp46 * 128;
 5538#line 152
 5539        *((int *)__cil_tmp43) = tmp___7 - __cil_tmp47;
 5540      } else {
 5541
 5542      }
 5543      }
 5544    } else {
 5545
 5546    }
 5547    }
 5548#line 155
 5549    goto switch_break;
 5550    case_1: /* CIL Label */ 
 5551#line 158
 5552    __cil_tmp48 = (unsigned long )mousedev;
 5553#line 158
 5554    __cil_tmp49 = __cil_tmp48 + 1064;
 5555#line 158
 5556    __cil_tmp50 = *((unsigned int *)__cil_tmp49);
 5557#line 158
 5558    __cil_tmp51 = __cil_tmp50 & 3U;
 5559#line 158
 5560    __cil_tmp52 = __cil_tmp51 * 4UL;
 5561#line 158
 5562    __cil_tmp53 = 1084 + __cil_tmp52;
 5563#line 158
 5564    __cil_tmp54 = (unsigned long )mousedev;
 5565#line 158
 5566    __cil_tmp55 = __cil_tmp54 + __cil_tmp53;
 5567#line 158
 5568    *((int *)__cil_tmp55) = value;
 5569    {
 5570#line 159
 5571    __cil_tmp56 = (unsigned long )mousedev;
 5572#line 159
 5573    __cil_tmp57 = __cil_tmp56 + 1112;
 5574#line 159
 5575    if (*((unsigned long *)__cil_tmp57)) {
 5576      {
 5577#line 159
 5578      __cil_tmp58 = (unsigned long )mousedev;
 5579#line 159
 5580      __cil_tmp59 = __cil_tmp58 + 1064;
 5581#line 159
 5582      __cil_tmp60 = *((unsigned int *)__cil_tmp59);
 5583#line 159
 5584      if (__cil_tmp60 >= 2U) {
 5585        {
 5586#line 161
 5587        tmp___10 = input_abs_get_max(dev, 0U);
 5588#line 161
 5589        tmp___11 = input_abs_get_min(dev, 0U);
 5590#line 161
 5591        size = tmp___10 - tmp___11;
 5592        }
 5593#line 163
 5594        if (size == 0) {
 5595#line 164
 5596          size = 512;
 5597        } else {
 5598
 5599        }
 5600#line 166
 5601        __cil_tmp61 = (unsigned long )mousedev;
 5602#line 166
 5603        __cil_tmp62 = __cil_tmp61 + 1064;
 5604#line 166
 5605        __cil_tmp63 = *((unsigned int *)__cil_tmp62);
 5606#line 166
 5607        __cil_tmp64 = __cil_tmp63 - 2U;
 5608#line 166
 5609        __cil_tmp65 = __cil_tmp64 & 3U;
 5610#line 166
 5611        __cil_tmp66 = __cil_tmp65 * 4UL;
 5612#line 166
 5613        __cil_tmp67 = 1084 + __cil_tmp66;
 5614#line 166
 5615        __cil_tmp68 = (unsigned long )mousedev;
 5616#line 166
 5617        __cil_tmp69 = __cil_tmp68 + __cil_tmp67;
 5618#line 166
 5619        __cil_tmp70 = *((int *)__cil_tmp69);
 5620#line 166
 5621        __cil_tmp71 = value - __cil_tmp70;
 5622#line 166
 5623        __cil_tmp72 = __cil_tmp71 * 256;
 5624#line 166
 5625        __cil_tmp73 = __cil_tmp72 * 128;
 5626#line 166
 5627        __cil_tmp74 = - __cil_tmp73;
 5628#line 166
 5629        tmp___7 = __cil_tmp74 / size;
 5630#line 167
 5631        __cil_tmp75 = (unsigned long )mousedev;
 5632#line 167
 5633        __cil_tmp76 = __cil_tmp75 + 1104;
 5634#line 167
 5635        __cil_tmp77 = *((int *)__cil_tmp76);
 5636#line 167
 5637        tmp___7 = tmp___7 + __cil_tmp77;
 5638#line 168
 5639        __cil_tmp78 = 1032 + 4;
 5640#line 168
 5641        __cil_tmp79 = (unsigned long )mousedev;
 5642#line 168
 5643        __cil_tmp80 = __cil_tmp79 + __cil_tmp78;
 5644#line 168
 5645        *((int *)__cil_tmp80) = tmp___7 / 128;
 5646#line 169
 5647        __cil_tmp81 = (unsigned long )mousedev;
 5648#line 169
 5649        __cil_tmp82 = __cil_tmp81 + 1104;
 5650#line 169
 5651        __cil_tmp83 = 1032 + 4;
 5652#line 169
 5653        __cil_tmp84 = (unsigned long )mousedev;
 5654#line 169
 5655        __cil_tmp85 = __cil_tmp84 + __cil_tmp83;
 5656#line 169
 5657        __cil_tmp86 = *((int *)__cil_tmp85);
 5658#line 169
 5659        __cil_tmp87 = __cil_tmp86 * 128;
 5660#line 169
 5661        *((int *)__cil_tmp82) = tmp___7 - __cil_tmp87;
 5662      } else {
 5663
 5664      }
 5665      }
 5666    } else {
 5667
 5668    }
 5669    }
 5670#line 172
 5671    goto switch_break;
 5672  } else {
 5673    switch_break: /* CIL Label */ ;
 5674  }
 5675#line 174
 5676  return;
 5677}
 5678}
 5679#line 176 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 5680static void mousedev_abs_event(struct input_dev *dev , struct mousedev *mousedev ,
 5681                               unsigned int code , int value ) 
 5682{ int min ;
 5683  int max ;
 5684  int size ;
 5685  int tmp___7 ;
 5686  int __val ;
 5687  int __min ;
 5688  int __max ;
 5689  int tmp___8 ;
 5690  int tmp___9 ;
 5691  int __val___0 ;
 5692  int __min___0 ;
 5693  int __max___0 ;
 5694  int tmp___10 ;
 5695  int *__cil_tmp18 ;
 5696  int *__cil_tmp19 ;
 5697  int *__cil_tmp20 ;
 5698  int *__cil_tmp21 ;
 5699  int *__cil_tmp22 ;
 5700  int __cil_tmp23 ;
 5701  int *__cil_tmp24 ;
 5702  int __cil_tmp25 ;
 5703  int *__cil_tmp26 ;
 5704  int *__cil_tmp27 ;
 5705  int *__cil_tmp28 ;
 5706  int *__cil_tmp29 ;
 5707  int *__cil_tmp30 ;
 5708  int __cil_tmp31 ;
 5709  int *__cil_tmp32 ;
 5710  int __cil_tmp33 ;
 5711  int *__cil_tmp34 ;
 5712  int *__cil_tmp35 ;
 5713  unsigned long __cil_tmp36 ;
 5714  unsigned long __cil_tmp37 ;
 5715  unsigned long __cil_tmp38 ;
 5716  int *__cil_tmp39 ;
 5717  int __cil_tmp40 ;
 5718  int __cil_tmp41 ;
 5719  int __cil_tmp42 ;
 5720  unsigned long __cil_tmp43 ;
 5721  unsigned long __cil_tmp44 ;
 5722  unsigned long __cil_tmp45 ;
 5723  int *__cil_tmp46 ;
 5724  int *__cil_tmp47 ;
 5725  int *__cil_tmp48 ;
 5726  int *__cil_tmp49 ;
 5727  int *__cil_tmp50 ;
 5728  int __cil_tmp51 ;
 5729  int *__cil_tmp52 ;
 5730  int __cil_tmp53 ;
 5731  int *__cil_tmp54 ;
 5732  int *__cil_tmp55 ;
 5733  int *__cil_tmp56 ;
 5734  int *__cil_tmp57 ;
 5735  int *__cil_tmp58 ;
 5736  int __cil_tmp59 ;
 5737  int *__cil_tmp60 ;
 5738  int __cil_tmp61 ;
 5739  int *__cil_tmp62 ;
 5740  int *__cil_tmp63 ;
 5741  unsigned long __cil_tmp64 ;
 5742  unsigned long __cil_tmp65 ;
 5743  unsigned long __cil_tmp66 ;
 5744  int *__cil_tmp67 ;
 5745  int __cil_tmp68 ;
 5746  int __cil_tmp69 ;
 5747  int __cil_tmp70 ;
 5748  int __cil_tmp71 ;
 5749  int *__cil_tmp72 ;
 5750  int __cil_tmp73 ;
 5751  unsigned long __cil_tmp74 ;
 5752  unsigned long __cil_tmp75 ;
 5753  unsigned long __cil_tmp76 ;
 5754
 5755  {
 5756#line 183
 5757  if ((int )code == 0) {
 5758#line 183
 5759    goto case_0;
 5760  } else
 5761#line 197
 5762  if ((int )code == 1) {
 5763#line 197
 5764    goto case_1;
 5765  } else
 5766#line 181
 5767  if (0) {
 5768    case_0: /* CIL Label */ 
 5769    {
 5770#line 184
 5771    min = input_abs_get_min(dev, 0U);
 5772#line 185
 5773    max = input_abs_get_max(dev, 0U);
 5774#line 187
 5775    size = max - min;
 5776    }
 5777#line 188
 5778    if (size == 0) {
 5779#line 189
 5780      __cil_tmp18 = & xres;
 5781#line 189
 5782      tmp___7 = *__cil_tmp18;
 5783#line 189
 5784      if (tmp___7) {
 5785
 5786      } else {
 5787#line 189
 5788        tmp___7 = 1;
 5789      }
 5790#line 189
 5791      size = tmp___7;
 5792    } else {
 5793
 5794    }
 5795#line 191
 5796    __cil_tmp19 = & __val;
 5797#line 191
 5798    *__cil_tmp19 = value;
 5799#line 191
 5800    __cil_tmp20 = & __min;
 5801#line 191
 5802    *__cil_tmp20 = min;
 5803#line 191
 5804    __cil_tmp21 = & __max;
 5805#line 191
 5806    *__cil_tmp21 = max;
 5807    {
 5808#line 191
 5809    __cil_tmp22 = & __min;
 5810#line 191
 5811    __cil_tmp23 = *__cil_tmp22;
 5812#line 191
 5813    __cil_tmp24 = & __val;
 5814#line 191
 5815    __cil_tmp25 = *__cil_tmp24;
 5816#line 191
 5817    if (__cil_tmp25 < __cil_tmp23) {
 5818#line 191
 5819      __cil_tmp26 = & __val;
 5820#line 191
 5821      __cil_tmp27 = & __min;
 5822#line 191
 5823      *__cil_tmp26 = *__cil_tmp27;
 5824    } else {
 5825#line 191
 5826      __cil_tmp28 = & __val;
 5827#line 191
 5828      __cil_tmp29 = & __val;
 5829#line 191
 5830      *__cil_tmp28 = *__cil_tmp29;
 5831    }
 5832    }
 5833    {
 5834#line 191
 5835    __cil_tmp30 = & __max;
 5836#line 191
 5837    __cil_tmp31 = *__cil_tmp30;
 5838#line 191
 5839    __cil_tmp32 = & __val;
 5840#line 191
 5841    __cil_tmp33 = *__cil_tmp32;
 5842#line 191
 5843    if (__cil_tmp33 > __cil_tmp31) {
 5844#line 191
 5845      __cil_tmp34 = & __max;
 5846#line 191
 5847      tmp___8 = *__cil_tmp34;
 5848    } else {
 5849#line 191
 5850      __cil_tmp35 = & __val;
 5851#line 191
 5852      tmp___8 = *__cil_tmp35;
 5853    }
 5854    }
 5855#line 191
 5856    value = tmp___8;
 5857#line 193
 5858    __cil_tmp36 = 1032 + 12;
 5859#line 193
 5860    __cil_tmp37 = (unsigned long )mousedev;
 5861#line 193
 5862    __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
 5863#line 193
 5864    __cil_tmp39 = & xres;
 5865#line 193
 5866    __cil_tmp40 = *__cil_tmp39;
 5867#line 193
 5868    __cil_tmp41 = value - min;
 5869#line 193
 5870    __cil_tmp42 = __cil_tmp41 * __cil_tmp40;
 5871#line 193
 5872    *((int *)__cil_tmp38) = __cil_tmp42 / size;
 5873#line 194
 5874    __cil_tmp43 = 1032 + 20;
 5875#line 194
 5876    __cil_tmp44 = (unsigned long )mousedev;
 5877#line 194
 5878    __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
 5879#line 194
 5880    *((int *)__cil_tmp45) = 1;
 5881#line 195
 5882    goto switch_break;
 5883    case_1: /* CIL Label */ 
 5884    {
 5885#line 198
 5886    min = input_abs_get_min(dev, 1U);
 5887#line 199
 5888    max = input_abs_get_max(dev, 1U);
 5889#line 201
 5890    size = max - min;
 5891    }
 5892#line 202
 5893    if (size == 0) {
 5894#line 203
 5895      __cil_tmp46 = & yres;
 5896#line 203
 5897      tmp___9 = *__cil_tmp46;
 5898#line 203
 5899      if (tmp___9) {
 5900
 5901      } else {
 5902#line 203
 5903        tmp___9 = 1;
 5904      }
 5905#line 203
 5906      size = tmp___9;
 5907    } else {
 5908
 5909    }
 5910#line 205
 5911    __cil_tmp47 = & __val___0;
 5912#line 205
 5913    *__cil_tmp47 = value;
 5914#line 205
 5915    __cil_tmp48 = & __min___0;
 5916#line 205
 5917    *__cil_tmp48 = min;
 5918#line 205
 5919    __cil_tmp49 = & __max___0;
 5920#line 205
 5921    *__cil_tmp49 = max;
 5922    {
 5923#line 205
 5924    __cil_tmp50 = & __min___0;
 5925#line 205
 5926    __cil_tmp51 = *__cil_tmp50;
 5927#line 205
 5928    __cil_tmp52 = & __val___0;
 5929#line 205
 5930    __cil_tmp53 = *__cil_tmp52;
 5931#line 205
 5932    if (__cil_tmp53 < __cil_tmp51) {
 5933#line 205
 5934      __cil_tmp54 = & __val___0;
 5935#line 205
 5936      __cil_tmp55 = & __min___0;
 5937#line 205
 5938      *__cil_tmp54 = *__cil_tmp55;
 5939    } else {
 5940#line 205
 5941      __cil_tmp56 = & __val___0;
 5942#line 205
 5943      __cil_tmp57 = & __val___0;
 5944#line 205
 5945      *__cil_tmp56 = *__cil_tmp57;
 5946    }
 5947    }
 5948    {
 5949#line 205
 5950    __cil_tmp58 = & __max___0;
 5951#line 205
 5952    __cil_tmp59 = *__cil_tmp58;
 5953#line 205
 5954    __cil_tmp60 = & __val___0;
 5955#line 205
 5956    __cil_tmp61 = *__cil_tmp60;
 5957#line 205
 5958    if (__cil_tmp61 > __cil_tmp59) {
 5959#line 205
 5960      __cil_tmp62 = & __max___0;
 5961#line 205
 5962      tmp___10 = *__cil_tmp62;
 5963    } else {
 5964#line 205
 5965      __cil_tmp63 = & __val___0;
 5966#line 205
 5967      tmp___10 = *__cil_tmp63;
 5968    }
 5969    }
 5970#line 205
 5971    value = tmp___10;
 5972#line 207
 5973    __cil_tmp64 = 1032 + 16;
 5974#line 207
 5975    __cil_tmp65 = (unsigned long )mousedev;
 5976#line 207
 5977    __cil_tmp66 = __cil_tmp65 + __cil_tmp64;
 5978#line 207
 5979    __cil_tmp67 = & yres;
 5980#line 207
 5981    __cil_tmp68 = *__cil_tmp67;
 5982#line 207
 5983    __cil_tmp69 = value - min;
 5984#line 207
 5985    __cil_tmp70 = __cil_tmp69 * __cil_tmp68;
 5986#line 207
 5987    __cil_tmp71 = __cil_tmp70 / size;
 5988#line 207
 5989    __cil_tmp72 = & yres;
 5990#line 207
 5991    __cil_tmp73 = *__cil_tmp72;
 5992#line 207
 5993    *((int *)__cil_tmp66) = __cil_tmp73 - __cil_tmp71;
 5994#line 208
 5995    __cil_tmp74 = 1032 + 20;
 5996#line 208
 5997    __cil_tmp75 = (unsigned long )mousedev;
 5998#line 208
 5999    __cil_tmp76 = __cil_tmp75 + __cil_tmp74;
 6000#line 208
 6001    *((int *)__cil_tmp76) = 1;
 6002#line 209
 6003    goto switch_break;
 6004  } else {
 6005    switch_break: /* CIL Label */ ;
 6006  }
 6007#line 211
 6008  return;
 6009}
 6010}
 6011#line 213 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 6012static void mousedev_rel_event(struct mousedev *mousedev , unsigned int code , int value ) 
 6013{ unsigned long __cil_tmp4 ;
 6014  unsigned long __cil_tmp5 ;
 6015  unsigned long __cil_tmp6 ;
 6016  unsigned long __cil_tmp7 ;
 6017  int __cil_tmp8 ;
 6018  unsigned long __cil_tmp9 ;
 6019  unsigned long __cil_tmp10 ;
 6020  unsigned long __cil_tmp11 ;
 6021  unsigned long __cil_tmp12 ;
 6022  unsigned long __cil_tmp13 ;
 6023  unsigned long __cil_tmp14 ;
 6024  int __cil_tmp15 ;
 6025  unsigned long __cil_tmp16 ;
 6026  unsigned long __cil_tmp17 ;
 6027  unsigned long __cil_tmp18 ;
 6028  unsigned long __cil_tmp19 ;
 6029  unsigned long __cil_tmp20 ;
 6030  unsigned long __cil_tmp21 ;
 6031  int __cil_tmp22 ;
 6032
 6033  {
 6034#line 217
 6035  if ((int )code == 0) {
 6036#line 217
 6037    goto case_0;
 6038  } else
 6039#line 221
 6040  if ((int )code == 1) {
 6041#line 221
 6042    goto case_1;
 6043  } else
 6044#line 225
 6045  if ((int )code == 8) {
 6046#line 225
 6047    goto case_8;
 6048  } else
 6049#line 216
 6050  if (0) {
 6051    case_0: /* CIL Label */ 
 6052#line 218
 6053    __cil_tmp4 = (unsigned long )mousedev;
 6054#line 218
 6055    __cil_tmp5 = __cil_tmp4 + 1032;
 6056#line 218
 6057    __cil_tmp6 = (unsigned long )mousedev;
 6058#line 218
 6059    __cil_tmp7 = __cil_tmp6 + 1032;
 6060#line 218
 6061    __cil_tmp8 = *((int *)__cil_tmp7);
 6062#line 218
 6063    *((int *)__cil_tmp5) = __cil_tmp8 + value;
 6064#line 219
 6065    goto switch_break;
 6066    case_1: /* CIL Label */ 
 6067#line 222
 6068    __cil_tmp9 = 1032 + 4;
 6069#line 222
 6070    __cil_tmp10 = (unsigned long )mousedev;
 6071#line 222
 6072    __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
 6073#line 222
 6074    __cil_tmp12 = 1032 + 4;
 6075#line 222
 6076    __cil_tmp13 = (unsigned long )mousedev;
 6077#line 222
 6078    __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
 6079#line 222
 6080    __cil_tmp15 = *((int *)__cil_tmp14);
 6081#line 222
 6082    *((int *)__cil_tmp11) = __cil_tmp15 - value;
 6083#line 223
 6084    goto switch_break;
 6085    case_8: /* CIL Label */ 
 6086#line 226
 6087    __cil_tmp16 = 1032 + 8;
 6088#line 226
 6089    __cil_tmp17 = (unsigned long )mousedev;
 6090#line 226
 6091    __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
 6092#line 226
 6093    __cil_tmp19 = 1032 + 8;
 6094#line 226
 6095    __cil_tmp20 = (unsigned long )mousedev;
 6096#line 226
 6097    __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
 6098#line 226
 6099    __cil_tmp22 = *((int *)__cil_tmp21);
 6100#line 226
 6101    *((int *)__cil_tmp18) = __cil_tmp22 - value;
 6102#line 227
 6103    goto switch_break;
 6104  } else {
 6105    switch_break: /* CIL Label */ ;
 6106  }
 6107#line 229
 6108  return;
 6109}
 6110}
 6111#line 231 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 6112static void mousedev_key_event(struct mousedev *mousedev , unsigned int code , int value ) 
 6113{ int index ;
 6114  unsigned int __cil_tmp5 ;
 6115  unsigned long __cil_tmp6 ;
 6116  unsigned long __cil_tmp7 ;
 6117  unsigned long __cil_tmp8 ;
 6118  unsigned long *__cil_tmp9 ;
 6119  unsigned long volatile   *__cil_tmp10 ;
 6120  unsigned int __cil_tmp11 ;
 6121  unsigned long __cil_tmp12 ;
 6122  unsigned long __cil_tmp13 ;
 6123  unsigned long __cil_tmp14 ;
 6124  unsigned long *__cil_tmp15 ;
 6125  unsigned long volatile   *__cil_tmp16 ;
 6126  unsigned long __cil_tmp17 ;
 6127  unsigned long __cil_tmp18 ;
 6128  unsigned long __cil_tmp19 ;
 6129  unsigned long *__cil_tmp20 ;
 6130  unsigned long volatile   *__cil_tmp21 ;
 6131  unsigned long __cil_tmp22 ;
 6132  unsigned long __cil_tmp23 ;
 6133  unsigned long __cil_tmp24 ;
 6134  unsigned long *__cil_tmp25 ;
 6135  unsigned long volatile   *__cil_tmp26 ;
 6136
 6137  {
 6138#line 238
 6139  if ((int )code == 330) {
 6140#line 238
 6141    goto case_330;
 6142  } else
 6143#line 239
 6144  if ((int )code == 256) {
 6145#line 239
 6146    goto case_330;
 6147  } else
 6148#line 240
 6149  if ((int )code == 272) {
 6150#line 240
 6151    goto case_330;
 6152  } else
 6153#line 242
 6154  if ((int )code == 331) {
 6155#line 242
 6156    goto case_331;
 6157  } else
 6158#line 243
 6159  if ((int )code == 257) {
 6160#line 243
 6161    goto case_331;
 6162  } else
 6163#line 244
 6164  if ((int )code == 273) {
 6165#line 244
 6166    goto case_331;
 6167  } else
 6168#line 246
 6169  if ((int )code == 258) {
 6170#line 246
 6171    goto case_258;
 6172  } else
 6173#line 247
 6174  if ((int )code == 277) {
 6175#line 247
 6176    goto case_258;
 6177  } else
 6178#line 248
 6179  if ((int )code == 332) {
 6180#line 248
 6181    goto case_258;
 6182  } else
 6183#line 249
 6184  if ((int )code == 274) {
 6185#line 249
 6186    goto case_258;
 6187  } else
 6188#line 251
 6189  if ((int )code == 259) {
 6190#line 251
 6191    goto case_259;
 6192  } else
 6193#line 252
 6194  if ((int )code == 278) {
 6195#line 252
 6196    goto case_259;
 6197  } else
 6198#line 253
 6199  if ((int )code == 275) {
 6200#line 253
 6201    goto case_259;
 6202  } else
 6203#line 255
 6204  if ((int )code == 260) {
 6205#line 255
 6206    goto case_260;
 6207  } else
 6208#line 256
 6209  if ((int )code == 276) {
 6210#line 256
 6211    goto case_260;
 6212  } else {
 6213    {
 6214#line 258
 6215    goto switch_default;
 6216#line 236
 6217    if (0) {
 6218      case_330: /* CIL Label */ 
 6219      case_256: /* CIL Label */ 
 6220      case_272: /* CIL Label */ 
 6221#line 240
 6222      index = 0;
 6223#line 240
 6224      goto switch_break;
 6225      case_331: /* CIL Label */ 
 6226      case_257: /* CIL Label */ 
 6227      case_273: /* CIL Label */ 
 6228#line 244
 6229      index = 1;
 6230#line 244
 6231      goto switch_break;
 6232      case_258: /* CIL Label */ 
 6233      case_277: /* CIL Label */ 
 6234      case_332: /* CIL Label */ 
 6235      case_274: /* CIL Label */ 
 6236#line 249
 6237      index = 2;
 6238#line 249
 6239      goto switch_break;
 6240      case_259: /* CIL Label */ 
 6241      case_278: /* CIL Label */ 
 6242      case_275: /* CIL Label */ 
 6243#line 253
 6244      index = 3;
 6245#line 253
 6246      goto switch_break;
 6247      case_260: /* CIL Label */ 
 6248      case_276: /* CIL Label */ 
 6249#line 256
 6250      index = 4;
 6251#line 256
 6252      goto switch_break;
 6253      switch_default: /* CIL Label */ 
 6254#line 258
 6255      return;
 6256    } else {
 6257      switch_break: /* CIL Label */ ;
 6258    }
 6259    }
 6260  }
 6261#line 261
 6262  if (value) {
 6263    {
 6264#line 262
 6265    __cil_tmp5 = (unsigned int )index;
 6266#line 262
 6267    __cil_tmp6 = 1032 + 24;
 6268#line 262
 6269    __cil_tmp7 = (unsigned long )mousedev;
 6270#line 262
 6271    __cil_tmp8 = __cil_tmp7 + __cil_tmp6;
 6272#line 262
 6273    __cil_tmp9 = (unsigned long *)__cil_tmp8;
 6274#line 262
 6275    __cil_tmp10 = (unsigned long volatile   *)__cil_tmp9;
 6276#line 262
 6277    set_bit(__cil_tmp5, __cil_tmp10);
 6278#line 263
 6279    __cil_tmp11 = (unsigned int )index;
 6280#line 263
 6281    __cil_tmp12 = 1032 + 24;
 6282#line 263
 6283    __cil_tmp13 = (unsigned long )mousedev_mix;
 6284#line 263
 6285    __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
 6286#line 263
 6287    __cil_tmp15 = (unsigned long *)__cil_tmp14;
 6288#line 263
 6289    __cil_tmp16 = (unsigned long volatile   *)__cil_tmp15;
 6290#line 263
 6291    set_bit(__cil_tmp11, __cil_tmp16);
 6292    }
 6293  } else {
 6294    {
 6295#line 265
 6296    __cil_tmp17 = 1032 + 24;
 6297#line 265
 6298    __cil_tmp18 = (unsigned long )mousedev;
 6299#line 265
 6300    __cil_tmp19 = __cil_tmp18 + __cil_tmp17;
 6301#line 265
 6302    __cil_tmp20 = (unsigned long *)__cil_tmp19;
 6303#line 265
 6304    __cil_tmp21 = (unsigned long volatile   *)__cil_tmp20;
 6305#line 265
 6306    clear_bit(index, __cil_tmp21);
 6307#line 266
 6308    __cil_tmp22 = 1032 + 24;
 6309#line 266
 6310    __cil_tmp23 = (unsigned long )mousedev_mix;
 6311#line 266
 6312    __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
 6313#line 266
 6314    __cil_tmp25 = (unsigned long *)__cil_tmp24;
 6315#line 266
 6316    __cil_tmp26 = (unsigned long volatile   *)__cil_tmp25;
 6317#line 266
 6318    clear_bit(index, __cil_tmp26);
 6319    }
 6320  }
 6321#line 268
 6322  return;
 6323}
 6324}
 6325#line 270 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 6326static void mousedev_notify_readers(struct mousedev *mousedev , struct mousedev_hw_data *packet ) 
 6327{ struct mousedev_client *client ;
 6328  struct mousedev_motion *p ;
 6329  unsigned int new_head ;
 6330  int wake_readers ;
 6331  struct list_head *__ptr ;
 6332  struct list_head    *__mptr ;
 6333  struct list_head *_________p1 ;
 6334  struct list_head *__ptr___0 ;
 6335  struct list_head    *__mptr___0 ;
 6336  struct list_head *_________p1___0 ;
 6337  unsigned int tmp___7 ;
 6338  int tmp___8 ;
 6339  int tmp___9 ;
 6340  struct list_head **__cil_tmp16 ;
 6341  unsigned long __cil_tmp17 ;
 6342  unsigned long __cil_tmp18 ;
 6343  struct list_head * volatile  *__cil_tmp19 ;
 6344  struct list_head * volatile  __cil_tmp20 ;
 6345  struct mousedev_client *__cil_tmp21 ;
 6346  unsigned long __cil_tmp22 ;
 6347  unsigned long __cil_tmp23 ;
 6348  struct list_head *__cil_tmp24 ;
 6349  unsigned int __cil_tmp25 ;
 6350  char *__cil_tmp26 ;
 6351  char *__cil_tmp27 ;
 6352  unsigned long __cil_tmp28 ;
 6353  unsigned long __cil_tmp29 ;
 6354  struct list_head *__cil_tmp30 ;
 6355  unsigned long __cil_tmp31 ;
 6356  unsigned long __cil_tmp32 ;
 6357  unsigned long __cil_tmp33 ;
 6358  struct list_head *__cil_tmp34 ;
 6359  unsigned long __cil_tmp35 ;
 6360  unsigned long __cil_tmp36 ;
 6361  unsigned long __cil_tmp37 ;
 6362  spinlock_t *__cil_tmp38 ;
 6363  unsigned long __cil_tmp39 ;
 6364  unsigned long __cil_tmp40 ;
 6365  unsigned int __cil_tmp41 ;
 6366  unsigned long __cil_tmp42 ;
 6367  unsigned long __cil_tmp43 ;
 6368  unsigned long __cil_tmp44 ;
 6369  unsigned long __cil_tmp45 ;
 6370  unsigned long __cil_tmp46 ;
 6371  unsigned long __cil_tmp47 ;
 6372  unsigned long __cil_tmp48 ;
 6373  unsigned long __cil_tmp49 ;
 6374  unsigned long __cil_tmp50 ;
 6375  unsigned long __cil_tmp51 ;
 6376  unsigned long __cil_tmp52 ;
 6377  unsigned long __cil_tmp53 ;
 6378  unsigned long __cil_tmp54 ;
 6379  unsigned long __cil_tmp55 ;
 6380  unsigned long __cil_tmp56 ;
 6381  unsigned int __cil_tmp57 ;
 6382  unsigned int __cil_tmp58 ;
 6383  unsigned long __cil_tmp59 ;
 6384  unsigned long __cil_tmp60 ;
 6385  unsigned int __cil_tmp61 ;
 6386  unsigned long __cil_tmp62 ;
 6387  unsigned long __cil_tmp63 ;
 6388  unsigned long __cil_tmp64 ;
 6389  unsigned long __cil_tmp65 ;
 6390  unsigned long __cil_tmp66 ;
 6391  unsigned long __cil_tmp67 ;
 6392  void *__cil_tmp68 ;
 6393  unsigned long __cil_tmp69 ;
 6394  unsigned long __cil_tmp70 ;
 6395  unsigned long __cil_tmp71 ;
 6396  unsigned long __cil_tmp72 ;
 6397  int __cil_tmp73 ;
 6398  unsigned long __cil_tmp74 ;
 6399  unsigned long __cil_tmp75 ;
 6400  int __cil_tmp76 ;
 6401  int __cil_tmp77 ;
 6402  int __cil_tmp78 ;
 6403  unsigned long __cil_tmp79 ;
 6404  unsigned long __cil_tmp80 ;
 6405  unsigned long __cil_tmp81 ;
 6406  unsigned long __cil_tmp82 ;
 6407  int __cil_tmp83 ;
 6408  unsigned long __cil_tmp84 ;
 6409  unsigned long __cil_tmp85 ;
 6410  int __cil_tmp86 ;
 6411  int __cil_tmp87 ;
 6412  unsigned long __cil_tmp88 ;
 6413  unsigned long __cil_tmp89 ;
 6414  int __cil_tmp90 ;
 6415  unsigned long __cil_tmp91 ;
 6416  unsigned long __cil_tmp92 ;
 6417  unsigned long __cil_tmp93 ;
 6418  unsigned long __cil_tmp94 ;
 6419  unsigned long __cil_tmp95 ;
 6420  unsigned long __cil_tmp96 ;
 6421  unsigned long __cil_tmp97 ;
 6422  unsigned long __cil_tmp98 ;
 6423  unsigned long __cil_tmp99 ;
 6424  unsigned long __cil_tmp100 ;
 6425  int __cil_tmp101 ;
 6426  unsigned long __cil_tmp102 ;
 6427  unsigned long __cil_tmp103 ;
 6428  int __cil_tmp104 ;
 6429  unsigned long __cil_tmp105 ;
 6430  unsigned long __cil_tmp106 ;
 6431  int __cil_tmp107 ;
 6432  unsigned long __cil_tmp108 ;
 6433  unsigned long __cil_tmp109 ;
 6434  int *__cil_tmp110 ;
 6435  int __cil_tmp111 ;
 6436  unsigned long __cil_tmp112 ;
 6437  unsigned long __cil_tmp113 ;
 6438  int __cil_tmp114 ;
 6439  int *__cil_tmp115 ;
 6440  unsigned long __cil_tmp116 ;
 6441  unsigned long __cil_tmp117 ;
 6442  unsigned long __cil_tmp118 ;
 6443  unsigned long __cil_tmp119 ;
 6444  unsigned long __cil_tmp120 ;
 6445  unsigned long __cil_tmp121 ;
 6446  unsigned long __cil_tmp122 ;
 6447  unsigned long __cil_tmp123 ;
 6448  int __cil_tmp124 ;
 6449  unsigned long __cil_tmp125 ;
 6450  unsigned long __cil_tmp126 ;
 6451  int __cil_tmp127 ;
 6452  unsigned long __cil_tmp128 ;
 6453  unsigned long __cil_tmp129 ;
 6454  int __cil_tmp130 ;
 6455  unsigned long __cil_tmp131 ;
 6456  unsigned long __cil_tmp132 ;
 6457  int *__cil_tmp133 ;
 6458  int __cil_tmp134 ;
 6459  unsigned long __cil_tmp135 ;
 6460  unsigned long __cil_tmp136 ;
 6461  int __cil_tmp137 ;
 6462  int *__cil_tmp138 ;
 6463  unsigned long __cil_tmp139 ;
 6464  unsigned long __cil_tmp140 ;
 6465  unsigned long __cil_tmp141 ;
 6466  unsigned long __cil_tmp142 ;
 6467  int __cil_tmp143 ;
 6468  int __cil_tmp144 ;
 6469  unsigned long __cil_tmp145 ;
 6470  unsigned long __cil_tmp146 ;
 6471  unsigned long __cil_tmp147 ;
 6472  unsigned long __cil_tmp148 ;
 6473  int __cil_tmp149 ;
 6474  unsigned long __cil_tmp150 ;
 6475  unsigned long __cil_tmp151 ;
 6476  int __cil_tmp152 ;
 6477  unsigned long __cil_tmp153 ;
 6478  unsigned long __cil_tmp154 ;
 6479  unsigned long __cil_tmp155 ;
 6480  unsigned long __cil_tmp156 ;
 6481  int __cil_tmp157 ;
 6482  unsigned long __cil_tmp158 ;
 6483  unsigned long __cil_tmp159 ;
 6484  int __cil_tmp160 ;
 6485  unsigned long __cil_tmp161 ;
 6486  unsigned long __cil_tmp162 ;
 6487  unsigned long __cil_tmp163 ;
 6488  unsigned long __cil_tmp164 ;
 6489  unsigned long __cil_tmp165 ;
 6490  unsigned long __cil_tmp166 ;
 6491  unsigned long __cil_tmp167 ;
 6492  unsigned long __cil_tmp168 ;
 6493  unsigned long __cil_tmp169 ;
 6494  unsigned long __cil_tmp170 ;
 6495  unsigned long __cil_tmp171 ;
 6496  unsigned long __cil_tmp172 ;
 6497  unsigned long __cil_tmp173 ;
 6498  unsigned long __cil_tmp174 ;
 6499  unsigned long __cil_tmp175 ;
 6500  unsigned long __cil_tmp176 ;
 6501  unsigned long __cil_tmp177 ;
 6502  unsigned long __cil_tmp178 ;
 6503  unsigned long __cil_tmp179 ;
 6504  unsigned long __cil_tmp180 ;
 6505  unsigned long __cil_tmp181 ;
 6506  unsigned long __cil_tmp182 ;
 6507  unsigned long __cil_tmp183 ;
 6508  unsigned long __cil_tmp184 ;
 6509  unsigned long __cil_tmp185 ;
 6510  spinlock_t *__cil_tmp186 ;
 6511  unsigned long __cil_tmp187 ;
 6512  unsigned long __cil_tmp188 ;
 6513  struct fasync_struct **__cil_tmp189 ;
 6514  int __cil_tmp190 ;
 6515  int __cil_tmp191 ;
 6516  struct list_head **__cil_tmp192 ;
 6517  unsigned long __cil_tmp193 ;
 6518  unsigned long __cil_tmp194 ;
 6519  struct list_head * volatile  *__cil_tmp195 ;
 6520  struct list_head * volatile  __cil_tmp196 ;
 6521  struct mousedev_client *__cil_tmp197 ;
 6522  unsigned long __cil_tmp198 ;
 6523  unsigned long __cil_tmp199 ;
 6524  struct list_head *__cil_tmp200 ;
 6525  unsigned int __cil_tmp201 ;
 6526  char *__cil_tmp202 ;
 6527  char *__cil_tmp203 ;
 6528  unsigned long __cil_tmp204 ;
 6529  unsigned long __cil_tmp205 ;
 6530  wait_queue_head_t *__cil_tmp206 ;
 6531  void *__cil_tmp207 ;
 6532
 6533  {
 6534  {
 6535#line 276
 6536  wake_readers = 0;
 6537#line 278
 6538  rcu_read_lock();
 6539#line 279
 6540  __cil_tmp16 = & __ptr;
 6541#line 279
 6542  __cil_tmp17 = (unsigned long )mousedev;
 6543#line 279
 6544  __cil_tmp18 = __cil_tmp17 + 120;
 6545#line 279
 6546  *__cil_tmp16 = *((struct list_head **)__cil_tmp18);
 6547#line 279
 6548  __cil_tmp19 = (struct list_head * volatile  *)(& __ptr);
 6549#line 279
 6550  __cil_tmp20 = *__cil_tmp19;
 6551#line 279
 6552  _________p1 = (struct list_head *)__cil_tmp20;
 6553  }
 6554  {
 6555#line 279
 6556  while (1) {
 6557    while_continue: /* CIL Label */ ;
 6558#line 279
 6559    goto while_break;
 6560  }
 6561  while_break: /* CIL Label */ ;
 6562  }
 6563  {
 6564#line 279
 6565  while (1) {
 6566    while_continue___0: /* CIL Label */ ;
 6567#line 279
 6568    goto while_break___0;
 6569  }
 6570  while_break___0: /* CIL Label */ ;
 6571  }
 6572#line 279
 6573  __mptr = (struct list_head    *)_________p1;
 6574#line 279
 6575  __cil_tmp21 = (struct mousedev_client *)0;
 6576#line 279
 6577  __cil_tmp22 = (unsigned long )__cil_tmp21;
 6578#line 279
 6579  __cil_tmp23 = __cil_tmp22 + 16;
 6580#line 279
 6581  __cil_tmp24 = (struct list_head *)__cil_tmp23;
 6582#line 279
 6583  __cil_tmp25 = (unsigned int )__cil_tmp24;
 6584#line 279
 6585  __cil_tmp26 = (char *)__mptr;
 6586#line 279
 6587  __cil_tmp27 = __cil_tmp26 - __cil_tmp25;
 6588#line 279
 6589  client = (struct mousedev_client *)__cil_tmp27;
 6590  {
 6591#line 279
 6592  while (1) {
 6593    while_continue___1: /* CIL Label */ ;
 6594    {
 6595#line 279
 6596    __cil_tmp28 = (unsigned long )mousedev;
 6597#line 279
 6598    __cil_tmp29 = __cil_tmp28 + 120;
 6599#line 279
 6600    __cil_tmp30 = (struct list_head *)__cil_tmp29;
 6601#line 279
 6602    __cil_tmp31 = (unsigned long )__cil_tmp30;
 6603#line 279
 6604    __cil_tmp32 = (unsigned long )client;
 6605#line 279
 6606    __cil_tmp33 = __cil_tmp32 + 16;
 6607#line 279
 6608    __cil_tmp34 = (struct list_head *)__cil_tmp33;
 6609#line 279
 6610    __cil_tmp35 = (unsigned long )__cil_tmp34;
 6611#line 279
 6612    if (__cil_tmp35 != __cil_tmp31) {
 6613
 6614    } else {
 6615#line 279
 6616      goto while_break___1;
 6617    }
 6618    }
 6619    {
 6620#line 282
 6621    __cil_tmp36 = (unsigned long )client;
 6622#line 282
 6623    __cil_tmp37 = __cil_tmp36 + 424;
 6624#line 282
 6625    __cil_tmp38 = (spinlock_t *)__cil_tmp37;
 6626#line 282
 6627    spin_lock(__cil_tmp38);
 6628#line 284
 6629    __cil_tmp39 = (unsigned long )client;
 6630#line 284
 6631    __cil_tmp40 = __cil_tmp39 + 416;
 6632#line 284
 6633    __cil_tmp41 = *((unsigned int *)__cil_tmp40);
 6634#line 284
 6635    __cil_tmp42 = __cil_tmp41 * 24UL;
 6636#line 284
 6637    __cil_tmp43 = 32 + __cil_tmp42;
 6638#line 284
 6639    __cil_tmp44 = (unsigned long )client;
 6640#line 284
 6641    __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
 6642#line 284
 6643    p = (struct mousedev_motion *)__cil_tmp45;
 6644    }
 6645    {
 6646#line 285
 6647    __cil_tmp46 = (unsigned long )client;
 6648#line 285
 6649    __cil_tmp47 = __cil_tmp46 + 462;
 6650#line 285
 6651    if (*((unsigned char *)__cil_tmp47)) {
 6652      {
 6653#line 285
 6654      __cil_tmp48 = 1032 + 24;
 6655#line 285
 6656      __cil_tmp49 = (unsigned long )mousedev;
 6657#line 285
 6658      __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
 6659#line 285
 6660      __cil_tmp51 = *((unsigned long *)__cil_tmp50);
 6661#line 285
 6662      __cil_tmp52 = (unsigned long )p;
 6663#line 285
 6664      __cil_tmp53 = __cil_tmp52 + 16;
 6665#line 285
 6666      __cil_tmp54 = *((unsigned long *)__cil_tmp53);
 6667#line 285
 6668      if (__cil_tmp54 != __cil_tmp51) {
 6669#line 286
 6670        __cil_tmp55 = (unsigned long )client;
 6671#line 286
 6672        __cil_tmp56 = __cil_tmp55 + 416;
 6673#line 286
 6674        __cil_tmp57 = *((unsigned int *)__cil_tmp56);
 6675#line 286
 6676        __cil_tmp58 = __cil_tmp57 + 1U;
 6677#line 286
 6678        new_head = __cil_tmp58 % 16U;
 6679        {
 6680#line 287
 6681        __cil_tmp59 = (unsigned long )client;
 6682#line 287
 6683        __cil_tmp60 = __cil_tmp59 + 420;
 6684#line 287
 6685        __cil_tmp61 = *((unsigned int *)__cil_tmp60);
 6686#line 287
 6687        if (new_head != __cil_tmp61) {
 6688          {
 6689#line 288
 6690          tmp___7 = new_head;
 6691#line 288
 6692          __cil_tmp62 = (unsigned long )client;
 6693#line 288
 6694          __cil_tmp63 = __cil_tmp62 + 416;
 6695#line 288
 6696          *((unsigned int *)__cil_tmp63) = tmp___7;
 6697#line 288
 6698          __cil_tmp64 = tmp___7 * 24UL;
 6699#line 288
 6700          __cil_tmp65 = 32 + __cil_tmp64;
 6701#line 288
 6702          __cil_tmp66 = (unsigned long )client;
 6703#line 288
 6704          __cil_tmp67 = __cil_tmp66 + __cil_tmp65;
 6705#line 288
 6706          p = (struct mousedev_motion *)__cil_tmp67;
 6707#line 289
 6708          __cil_tmp68 = (void *)p;
 6709#line 289
 6710          memset(__cil_tmp68, 0, 24UL);
 6711          }
 6712        } else {
 6713
 6714        }
 6715        }
 6716      } else {
 6717
 6718      }
 6719      }
 6720    } else {
 6721
 6722    }
 6723    }
 6724    {
 6725#line 293
 6726    __cil_tmp69 = (unsigned long )packet;
 6727#line 293
 6728    __cil_tmp70 = __cil_tmp69 + 20;
 6729#line 293
 6730    if (*((int *)__cil_tmp70)) {
 6731#line 294
 6732      __cil_tmp71 = (unsigned long )client;
 6733#line 294
 6734      __cil_tmp72 = __cil_tmp71 + 448;
 6735#line 294
 6736      __cil_tmp73 = *((int *)__cil_tmp72);
 6737#line 294
 6738      __cil_tmp74 = (unsigned long )packet;
 6739#line 294
 6740      __cil_tmp75 = __cil_tmp74 + 12;
 6741#line 294
 6742      __cil_tmp76 = *((int *)__cil_tmp75);
 6743#line 294
 6744      __cil_tmp77 = __cil_tmp76 - __cil_tmp73;
 6745#line 294
 6746      __cil_tmp78 = *((int *)p);
 6747#line 294
 6748      *((int *)p) = __cil_tmp78 + __cil_tmp77;
 6749#line 295
 6750      __cil_tmp79 = (unsigned long )p;
 6751#line 295
 6752      __cil_tmp80 = __cil_tmp79 + 4;
 6753#line 295
 6754      __cil_tmp81 = (unsigned long )client;
 6755#line 295
 6756      __cil_tmp82 = __cil_tmp81 + 452;
 6757#line 295
 6758      __cil_tmp83 = *((int *)__cil_tmp82);
 6759#line 295
 6760      __cil_tmp84 = (unsigned long )packet;
 6761#line 295
 6762      __cil_tmp85 = __cil_tmp84 + 16;
 6763#line 295
 6764      __cil_tmp86 = *((int *)__cil_tmp85);
 6765#line 295
 6766      __cil_tmp87 = __cil_tmp86 - __cil_tmp83;
 6767#line 295
 6768      __cil_tmp88 = (unsigned long )p;
 6769#line 295
 6770      __cil_tmp89 = __cil_tmp88 + 4;
 6771#line 295
 6772      __cil_tmp90 = *((int *)__cil_tmp89);
 6773#line 295
 6774      *((int *)__cil_tmp80) = __cil_tmp90 + __cil_tmp87;
 6775#line 296
 6776      __cil_tmp91 = (unsigned long )client;
 6777#line 296
 6778      __cil_tmp92 = __cil_tmp91 + 448;
 6779#line 296
 6780      __cil_tmp93 = (unsigned long )packet;
 6781#line 296
 6782      __cil_tmp94 = __cil_tmp93 + 12;
 6783#line 296
 6784      *((int *)__cil_tmp92) = *((int *)__cil_tmp94);
 6785#line 297
 6786      __cil_tmp95 = (unsigned long )client;
 6787#line 297
 6788      __cil_tmp96 = __cil_tmp95 + 452;
 6789#line 297
 6790      __cil_tmp97 = (unsigned long )packet;
 6791#line 297
 6792      __cil_tmp98 = __cil_tmp97 + 16;
 6793#line 297
 6794      *((int *)__cil_tmp96) = *((int *)__cil_tmp98);
 6795    } else {
 6796
 6797    }
 6798    }
 6799#line 300
 6800    __cil_tmp99 = (unsigned long )client;
 6801#line 300
 6802    __cil_tmp100 = __cil_tmp99 + 448;
 6803#line 300
 6804    __cil_tmp101 = *((int *)packet);
 6805#line 300
 6806    __cil_tmp102 = (unsigned long )client;
 6807#line 300
 6808    __cil_tmp103 = __cil_tmp102 + 448;
 6809#line 300
 6810    __cil_tmp104 = *((int *)__cil_tmp103);
 6811#line 300
 6812    *((int *)__cil_tmp100) = __cil_tmp104 + __cil_tmp101;
 6813    {
 6814#line 301
 6815    __cil_tmp105 = (unsigned long )client;
 6816#line 301
 6817    __cil_tmp106 = __cil_tmp105 + 448;
 6818#line 301
 6819    __cil_tmp107 = *((int *)__cil_tmp106);
 6820#line 301
 6821    if (__cil_tmp107 < 0) {
 6822#line 301
 6823      __cil_tmp108 = (unsigned long )client;
 6824#line 301
 6825      __cil_tmp109 = __cil_tmp108 + 448;
 6826#line 301
 6827      *((int *)__cil_tmp109) = 0;
 6828    } else {
 6829      {
 6830#line 301
 6831      __cil_tmp110 = & xres;
 6832#line 301
 6833      __cil_tmp111 = *__cil_tmp110;
 6834#line 301
 6835      __cil_tmp112 = (unsigned long )client;
 6836#line 301
 6837      __cil_tmp113 = __cil_tmp112 + 448;
 6838#line 301
 6839      __cil_tmp114 = *((int *)__cil_tmp113);
 6840#line 301
 6841      if (__cil_tmp114 >= __cil_tmp111) {
 6842#line 301
 6843        __cil_tmp115 = & xres;
 6844#line 301
 6845        tmp___8 = *__cil_tmp115;
 6846      } else {
 6847#line 301
 6848        __cil_tmp116 = (unsigned long )client;
 6849#line 301
 6850        __cil_tmp117 = __cil_tmp116 + 448;
 6851#line 301
 6852        tmp___8 = *((int *)__cil_tmp117);
 6853      }
 6854      }
 6855#line 301
 6856      __cil_tmp118 = (unsigned long )client;
 6857#line 301
 6858      __cil_tmp119 = __cil_tmp118 + 448;
 6859#line 301
 6860      *((int *)__cil_tmp119) = tmp___8;
 6861    }
 6862    }
 6863#line 303
 6864    __cil_tmp120 = (unsigned long )client;
 6865#line 303
 6866    __cil_tmp121 = __cil_tmp120 + 452;
 6867#line 303
 6868    __cil_tmp122 = (unsigned long )packet;
 6869#line 303
 6870    __cil_tmp123 = __cil_tmp122 + 4;
 6871#line 303
 6872    __cil_tmp124 = *((int *)__cil_tmp123);
 6873#line 303
 6874    __cil_tmp125 = (unsigned long )client;
 6875#line 303
 6876    __cil_tmp126 = __cil_tmp125 + 452;
 6877#line 303
 6878    __cil_tmp127 = *((int *)__cil_tmp126);
 6879#line 303
 6880    *((int *)__cil_tmp121) = __cil_tmp127 + __cil_tmp124;
 6881    {
 6882#line 304
 6883    __cil_tmp128 = (unsigned long )client;
 6884#line 304
 6885    __cil_tmp129 = __cil_tmp128 + 452;
 6886#line 304
 6887    __cil_tmp130 = *((int *)__cil_tmp129);
 6888#line 304
 6889    if (__cil_tmp130 < 0) {
 6890#line 304
 6891      __cil_tmp131 = (unsigned long )client;
 6892#line 304
 6893      __cil_tmp132 = __cil_tmp131 + 452;
 6894#line 304
 6895      *((int *)__cil_tmp132) = 0;
 6896    } else {
 6897      {
 6898#line 304
 6899      __cil_tmp133 = & yres;
 6900#line 304
 6901      __cil_tmp134 = *__cil_tmp133;
 6902#line 304
 6903      __cil_tmp135 = (unsigned long )client;
 6904#line 304
 6905      __cil_tmp136 = __cil_tmp135 + 452;
 6906#line 304
 6907      __cil_tmp137 = *((int *)__cil_tmp136);
 6908#line 304
 6909      if (__cil_tmp137 >= __cil_tmp134) {
 6910#line 304
 6911        __cil_tmp138 = & yres;
 6912#line 304
 6913        tmp___9 = *__cil_tmp138;
 6914      } else {
 6915#line 304
 6916        __cil_tmp139 = (unsigned long )client;
 6917#line 304
 6918        __cil_tmp140 = __cil_tmp139 + 452;
 6919#line 304
 6920        tmp___9 = *((int *)__cil_tmp140);
 6921      }
 6922      }
 6923#line 304
 6924      __cil_tmp141 = (unsigned long )client;
 6925#line 304
 6926      __cil_tmp142 = __cil_tmp141 + 452;
 6927#line 304
 6928      *((int *)__cil_tmp142) = tmp___9;
 6929    }
 6930    }
 6931#line 307
 6932    __cil_tmp143 = *((int *)packet);
 6933#line 307
 6934    __cil_tmp144 = *((int *)p);
 6935#line 307
 6936    *((int *)p) = __cil_tmp144 + __cil_tmp143;
 6937#line 308
 6938    __cil_tmp145 = (unsigned long )p;
 6939#line 308
 6940    __cil_tmp146 = __cil_tmp145 + 4;
 6941#line 308
 6942    __cil_tmp147 = (unsigned long )packet;
 6943#line 308
 6944    __cil_tmp148 = __cil_tmp147 + 4;
 6945#line 308
 6946    __cil_tmp149 = *((int *)__cil_tmp148);
 6947#line 308
 6948    __cil_tmp150 = (unsigned long )p;
 6949#line 308
 6950    __cil_tmp151 = __cil_tmp150 + 4;
 6951#line 308
 6952    __cil_tmp152 = *((int *)__cil_tmp151);
 6953#line 308
 6954    *((int *)__cil_tmp146) = __cil_tmp152 + __cil_tmp149;
 6955#line 309
 6956    __cil_tmp153 = (unsigned long )p;
 6957#line 309
 6958    __cil_tmp154 = __cil_tmp153 + 8;
 6959#line 309
 6960    __cil_tmp155 = (unsigned long )packet;
 6961#line 309
 6962    __cil_tmp156 = __cil_tmp155 + 8;
 6963#line 309
 6964    __cil_tmp157 = *((int *)__cil_tmp156);
 6965#line 309
 6966    __cil_tmp158 = (unsigned long )p;
 6967#line 309
 6968    __cil_tmp159 = __cil_tmp158 + 8;
 6969#line 309
 6970    __cil_tmp160 = *((int *)__cil_tmp159);
 6971#line 309
 6972    *((int *)__cil_tmp154) = __cil_tmp160 + __cil_tmp157;
 6973#line 310
 6974    __cil_tmp161 = (unsigned long )p;
 6975#line 310
 6976    __cil_tmp162 = __cil_tmp161 + 16;
 6977#line 310
 6978    __cil_tmp163 = 1032 + 24;
 6979#line 310
 6980    __cil_tmp164 = (unsigned long )mousedev;
 6981#line 310
 6982    __cil_tmp165 = __cil_tmp164 + __cil_tmp163;
 6983#line 310
 6984    *((unsigned long *)__cil_tmp162) = *((unsigned long *)__cil_tmp165);
 6985#line 312
 6986    if (*((int *)p)) {
 6987#line 314
 6988      __cil_tmp166 = (unsigned long )client;
 6989#line 314
 6990      __cil_tmp167 = __cil_tmp166 + 462;
 6991#line 314
 6992      *((unsigned char *)__cil_tmp167) = (unsigned char)1;
 6993    } else {
 6994      {
 6995#line 312
 6996      __cil_tmp168 = (unsigned long )p;
 6997#line 312
 6998      __cil_tmp169 = __cil_tmp168 + 4;
 6999#line 312
 7000      if (*((int *)__cil_tmp169)) {
 7001#line 314
 7002        __cil_tmp170 = (unsigned long )client;
 7003#line 314
 7004        __cil_tmp171 = __cil_tmp170 + 462;
 7005#line 314
 7006        *((unsigned char *)__cil_tmp171) = (unsigned char)1;
 7007      } else {
 7008        {
 7009#line 312
 7010        __cil_tmp172 = (unsigned long )p;
 7011#line 312
 7012        __cil_tmp173 = __cil_tmp172 + 8;
 7013#line 312
 7014        if (*((int *)__cil_tmp173)) {
 7015#line 314
 7016          __cil_tmp174 = (unsigned long )client;
 7017#line 314
 7018          __cil_tmp175 = __cil_tmp174 + 462;
 7019#line 314
 7020          *((unsigned char *)__cil_tmp175) = (unsigned char)1;
 7021        } else {
 7022          {
 7023#line 312
 7024          __cil_tmp176 = (unsigned long )client;
 7025#line 312
 7026          __cil_tmp177 = __cil_tmp176 + 472;
 7027#line 312
 7028          __cil_tmp178 = *((unsigned long *)__cil_tmp177);
 7029#line 312
 7030          __cil_tmp179 = (unsigned long )p;
 7031#line 312
 7032          __cil_tmp180 = __cil_tmp179 + 16;
 7033#line 312
 7034          __cil_tmp181 = *((unsigned long *)__cil_tmp180);
 7035#line 312
 7036          if (__cil_tmp181 != __cil_tmp178) {
 7037#line 314
 7038            __cil_tmp182 = (unsigned long )client;
 7039#line 314
 7040            __cil_tmp183 = __cil_tmp182 + 462;
 7041#line 314
 7042            *((unsigned char *)__cil_tmp183) = (unsigned char)1;
 7043          } else {
 7044
 7045          }
 7046          }
 7047        }
 7048        }
 7049      }
 7050      }
 7051    }
 7052    {
 7053#line 316
 7054    __cil_tmp184 = (unsigned long )client;
 7055#line 316
 7056    __cil_tmp185 = __cil_tmp184 + 424;
 7057#line 316
 7058    __cil_tmp186 = (spinlock_t *)__cil_tmp185;
 7059#line 316
 7060    spin_unlock(__cil_tmp186);
 7061    }
 7062    {
 7063#line 318
 7064    __cil_tmp187 = (unsigned long )client;
 7065#line 318
 7066    __cil_tmp188 = __cil_tmp187 + 462;
 7067#line 318
 7068    if (*((unsigned char *)__cil_tmp188)) {
 7069      {
 7070#line 319
 7071      __cil_tmp189 = (struct fasync_struct **)client;
 7072#line 319
 7073      __cil_tmp190 = 2 << 16;
 7074#line 319
 7075      __cil_tmp191 = __cil_tmp190 | 1;
 7076#line 319
 7077      kill_fasync(__cil_tmp189, 29, __cil_tmp191);
 7078#line 320
 7079      wake_readers = 1;
 7080      }
 7081    } else {
 7082
 7083    }
 7084    }
 7085#line 279
 7086    __cil_tmp192 = & __ptr___0;
 7087#line 279
 7088    __cil_tmp193 = (unsigned long )client;
 7089#line 279
 7090    __cil_tmp194 = __cil_tmp193 + 16;
 7091#line 279
 7092    *__cil_tmp192 = *((struct list_head **)__cil_tmp194);
 7093#line 279
 7094    __cil_tmp195 = (struct list_head * volatile  *)(& __ptr___0);
 7095#line 279
 7096    __cil_tmp196 = *__cil_tmp195;
 7097#line 279
 7098    _________p1___0 = (struct list_head *)__cil_tmp196;
 7099    {
 7100#line 279
 7101    while (1) {
 7102      while_continue___2: /* CIL Label */ ;
 7103#line 279
 7104      goto while_break___2;
 7105    }
 7106    while_break___2: /* CIL Label */ ;
 7107    }
 7108    {
 7109#line 279
 7110    while (1) {
 7111      while_continue___3: /* CIL Label */ ;
 7112#line 279
 7113      goto while_break___3;
 7114    }
 7115    while_break___3: /* CIL Label */ ;
 7116    }
 7117#line 279
 7118    __mptr___0 = (struct list_head    *)_________p1___0;
 7119#line 279
 7120    __cil_tmp197 = (struct mousedev_client *)0;
 7121#line 279
 7122    __cil_tmp198 = (unsigned long )__cil_tmp197;
 7123#line 279
 7124    __cil_tmp199 = __cil_tmp198 + 16;
 7125#line 279
 7126    __cil_tmp200 = (struct list_head *)__cil_tmp199;
 7127#line 279
 7128    __cil_tmp201 = (unsigned int )__cil_tmp200;
 7129#line 279
 7130    __cil_tmp202 = (char *)__mptr___0;
 7131#line 279
 7132    __cil_tmp203 = __cil_tmp202 - __cil_tmp201;
 7133#line 279
 7134    client = (struct mousedev_client *)__cil_tmp203;
 7135  }
 7136  while_break___1: /* CIL Label */ ;
 7137  }
 7138  {
 7139#line 323
 7140  rcu_read_unlock();
 7141  }
 7142#line 325
 7143  if (wake_readers) {
 7144    {
 7145#line 326
 7146    __cil_tmp204 = (unsigned long )mousedev;
 7147#line 326
 7148    __cil_tmp205 = __cil_tmp204 + 80;
 7149#line 326
 7150    __cil_tmp206 = (wait_queue_head_t *)__cil_tmp205;
 7151#line 326
 7152    __cil_tmp207 = (void *)0;
 7153#line 326
 7154    __wake_up(__cil_tmp206, 1U, 1, __cil_tmp207);
 7155    }
 7156  } else {
 7157
 7158  }
 7159#line 327
 7160  return;
 7161}
 7162}
 7163#line 329 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 7164static void mousedev_touchpad_touch(struct mousedev *mousedev , int value ) 
 7165{ unsigned long tmp___8 ;
 7166  unsigned int tmp___9 ;
 7167  unsigned long __cil_tmp10 ;
 7168  unsigned long __cil_tmp11 ;
 7169  unsigned int *__cil_tmp12 ;
 7170  unsigned int __cil_tmp13 ;
 7171  unsigned int    __cil_tmp14 ;
 7172  unsigned long __cil_tmp15 ;
 7173  unsigned long __cil_tmp16 ;
 7174  unsigned long __cil_tmp17 ;
 7175  unsigned long __cil_tmp18 ;
 7176  long __cil_tmp19 ;
 7177  long __cil_tmp20 ;
 7178  long __cil_tmp21 ;
 7179  unsigned long __cil_tmp22 ;
 7180  unsigned long __cil_tmp23 ;
 7181  unsigned long __cil_tmp24 ;
 7182  unsigned long *__cil_tmp25 ;
 7183  unsigned long volatile   *__cil_tmp26 ;
 7184  unsigned long __cil_tmp27 ;
 7185  unsigned long __cil_tmp28 ;
 7186  unsigned long __cil_tmp29 ;
 7187  unsigned long *__cil_tmp30 ;
 7188  unsigned long volatile   *__cil_tmp31 ;
 7189  unsigned long __cil_tmp32 ;
 7190  unsigned long __cil_tmp33 ;
 7191  struct mousedev_hw_data *__cil_tmp34 ;
 7192  unsigned long __cil_tmp35 ;
 7193  unsigned long __cil_tmp36 ;
 7194  struct mousedev_hw_data *__cil_tmp37 ;
 7195  unsigned long __cil_tmp38 ;
 7196  unsigned long __cil_tmp39 ;
 7197  unsigned long __cil_tmp40 ;
 7198  unsigned long *__cil_tmp41 ;
 7199  unsigned long volatile   *__cil_tmp42 ;
 7200  unsigned long __cil_tmp43 ;
 7201  unsigned long __cil_tmp44 ;
 7202  unsigned long __cil_tmp45 ;
 7203  unsigned long *__cil_tmp46 ;
 7204  unsigned long volatile   *__cil_tmp47 ;
 7205  unsigned long __cil_tmp48 ;
 7206  unsigned long __cil_tmp49 ;
 7207  unsigned long __cil_tmp50 ;
 7208  unsigned long __cil_tmp51 ;
 7209  unsigned long __cil_tmp52 ;
 7210  unsigned long __cil_tmp53 ;
 7211  unsigned long __cil_tmp54 ;
 7212  unsigned long __cil_tmp55 ;
 7213  unsigned long __cil_tmp56 ;
 7214  unsigned long __cil_tmp57 ;
 7215  unsigned long __cil_tmp58 ;
 7216  unsigned long __cil_tmp59 ;
 7217  unsigned long __cil_tmp60 ;
 7218
 7219  {
 7220#line 331
 7221  if (! value) {
 7222    {
 7223#line 333
 7224    __cil_tmp10 = (unsigned long )mousedev;
 7225#line 333
 7226    __cil_tmp11 = __cil_tmp10 + 1112;
 7227#line 333
 7228    if (*((unsigned long *)__cil_tmp11)) {
 7229      {
 7230#line 333
 7231      __cil_tmp12 = & tap_time;
 7232#line 333
 7233      __cil_tmp13 = *__cil_tmp12;
 7234#line 333
 7235      __cil_tmp14 = (unsigned int    )__cil_tmp13;
 7236#line 333
 7237      tmp___8 = msecs_to_jiffies(__cil_tmp14);
 7238      }
 7239      {
 7240#line 333
 7241      __cil_tmp15 = (unsigned long )mousedev;
 7242#line 333
 7243      __cil_tmp16 = __cil_tmp15 + 1112;
 7244#line 333
 7245      __cil_tmp17 = *((unsigned long *)__cil_tmp16);
 7246#line 333
 7247      __cil_tmp18 = __cil_tmp17 + tmp___8;
 7248#line 333
 7249      __cil_tmp19 = (long )__cil_tmp18;
 7250#line 333
 7251      __cil_tmp20 = (long )jiffies;
 7252#line 333
 7253      __cil_tmp21 = __cil_tmp20 - __cil_tmp19;
 7254#line 333
 7255      if (__cil_tmp21 < 0L) {
 7256        {
 7257#line 340
 7258        __cil_tmp22 = 1032 + 24;
 7259#line 340
 7260        __cil_tmp23 = (unsigned long )mousedev;
 7261#line 340
 7262        __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
 7263#line 340
 7264        __cil_tmp25 = (unsigned long *)__cil_tmp24;
 7265#line 340
 7266        __cil_tmp26 = (unsigned long volatile   *)__cil_tmp25;
 7267#line 340
 7268        set_bit(0U, __cil_tmp26);
 7269#line 341
 7270        __cil_tmp27 = 1032 + 24;
 7271#line 341
 7272        __cil_tmp28 = (unsigned long )mousedev_mix;
 7273#line 341
 7274        __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
 7275#line 341
 7276        __cil_tmp30 = (unsigned long *)__cil_tmp29;
 7277#line 341
 7278        __cil_tmp31 = (unsigned long volatile   *)__cil_tmp30;
 7279#line 341
 7280        set_bit(0U, __cil_tmp31);
 7281#line 342
 7282        __cil_tmp32 = (unsigned long )mousedev_mix;
 7283#line 342
 7284        __cil_tmp33 = __cil_tmp32 + 1032;
 7285#line 342
 7286        __cil_tmp34 = (struct mousedev_hw_data *)__cil_tmp33;
 7287#line 342
 7288        mousedev_notify_readers(mousedev, __cil_tmp34);
 7289#line 343
 7290        __cil_tmp35 = (unsigned long )mousedev_mix;
 7291#line 343
 7292        __cil_tmp36 = __cil_tmp35 + 1032;
 7293#line 343
 7294        __cil_tmp37 = (struct mousedev_hw_data *)__cil_tmp36;
 7295#line 343
 7296        mousedev_notify_readers(mousedev_mix, __cil_tmp37);
 7297#line 345
 7298        __cil_tmp38 = 1032 + 24;
 7299#line 345
 7300        __cil_tmp39 = (unsigned long )mousedev;
 7301#line 345
 7302        __cil_tmp40 = __cil_tmp39 + __cil_tmp38;
 7303#line 345
 7304        __cil_tmp41 = (unsigned long *)__cil_tmp40;
 7305#line 345
 7306        __cil_tmp42 = (unsigned long volatile   *)__cil_tmp41;
 7307#line 345
 7308        clear_bit(0, __cil_tmp42);
 7309#line 346
 7310        __cil_tmp43 = 1032 + 24;
 7311#line 346
 7312        __cil_tmp44 = (unsigned long )mousedev_mix;
 7313#line 346
 7314        __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
 7315#line 346
 7316        __cil_tmp46 = (unsigned long *)__cil_tmp45;
 7317#line 346
 7318        __cil_tmp47 = (unsigned long volatile   *)__cil_tmp46;
 7319#line 346
 7320        clear_bit(0, __cil_tmp47);
 7321        }
 7322      } else {
 7323
 7324      }
 7325      }
 7326    } else {
 7327
 7328    }
 7329    }
 7330#line 348
 7331    tmp___9 = 0U;
 7332#line 348
 7333    __cil_tmp48 = (unsigned long )mousedev;
 7334#line 348
 7335    __cil_tmp49 = __cil_tmp48 + 1064;
 7336#line 348
 7337    *((unsigned int *)__cil_tmp49) = tmp___9;
 7338#line 348
 7339    __cil_tmp50 = (unsigned long )mousedev;
 7340#line 348
 7341    __cil_tmp51 = __cil_tmp50 + 1112;
 7342#line 348
 7343    *((unsigned long *)__cil_tmp51) = (unsigned long )tmp___9;
 7344#line 349
 7345    __cil_tmp52 = (unsigned long )mousedev;
 7346#line 349
 7347    __cil_tmp53 = __cil_tmp52 + 1100;
 7348#line 349
 7349    *((int *)__cil_tmp53) = 0;
 7350#line 350
 7351    __cil_tmp54 = (unsigned long )mousedev;
 7352#line 350
 7353    __cil_tmp55 = __cil_tmp54 + 1104;
 7354#line 350
 7355    *((int *)__cil_tmp55) = 0;
 7356  } else {
 7357    {
 7358#line 352
 7359    __cil_tmp56 = (unsigned long )mousedev;
 7360#line 352
 7361    __cil_tmp57 = __cil_tmp56 + 1112;
 7362#line 352
 7363    __cil_tmp58 = *((unsigned long *)__cil_tmp57);
 7364#line 352
 7365    if (! __cil_tmp58) {
 7366#line 353
 7367      __cil_tmp59 = (unsigned long )mousedev;
 7368#line 353
 7369      __cil_tmp60 = __cil_tmp59 + 1112;
 7370#line 353
 7371      *((unsigned long *)__cil_tmp60) = (unsigned long )jiffies;
 7372    } else {
 7373
 7374    }
 7375    }
 7376  }
 7377#line 354
 7378  return;
 7379}
 7380}
 7381#line 356 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 7382static void mousedev_event(struct input_handle *handle , unsigned int type , unsigned int code ,
 7383                           int value ) 
 7384{ struct mousedev *mousedev ;
 7385  int tmp___7 ;
 7386  int tmp___9 ;
 7387  int tmp___11 ;
 7388  int tmp___13 ;
 7389  int tmp___14 ;
 7390  void *__cil_tmp14 ;
 7391  unsigned long __cil_tmp15 ;
 7392  unsigned long __cil_tmp16 ;
 7393  unsigned long __cil_tmp17 ;
 7394  unsigned long __cil_tmp18 ;
 7395  struct input_dev *__cil_tmp19 ;
 7396  unsigned long __cil_tmp20 ;
 7397  unsigned long __cil_tmp21 ;
 7398  unsigned long *__cil_tmp22 ;
 7399  unsigned long  volatile   *__cil_tmp23 ;
 7400  unsigned long __cil_tmp24 ;
 7401  unsigned long __cil_tmp25 ;
 7402  unsigned long __cil_tmp26 ;
 7403  unsigned long __cil_tmp27 ;
 7404  struct input_dev *__cil_tmp28 ;
 7405  unsigned long __cil_tmp29 ;
 7406  unsigned long __cil_tmp30 ;
 7407  unsigned long *__cil_tmp31 ;
 7408  unsigned long  volatile   *__cil_tmp32 ;
 7409  unsigned long __cil_tmp33 ;
 7410  unsigned long __cil_tmp34 ;
 7411  struct input_dev *__cil_tmp35 ;
 7412  unsigned long __cil_tmp36 ;
 7413  unsigned long __cil_tmp37 ;
 7414  struct input_dev *__cil_tmp38 ;
 7415  unsigned long __cil_tmp39 ;
 7416  unsigned long __cil_tmp40 ;
 7417  unsigned long __cil_tmp41 ;
 7418  unsigned long __cil_tmp42 ;
 7419  struct input_dev *__cil_tmp43 ;
 7420  unsigned long __cil_tmp44 ;
 7421  unsigned long __cil_tmp45 ;
 7422  unsigned long *__cil_tmp46 ;
 7423  unsigned long  volatile   *__cil_tmp47 ;
 7424  unsigned long __cil_tmp48 ;
 7425  unsigned long __cil_tmp49 ;
 7426  unsigned long __cil_tmp50 ;
 7427  unsigned long __cil_tmp51 ;
 7428  unsigned long __cil_tmp52 ;
 7429  unsigned long __cil_tmp53 ;
 7430  unsigned int __cil_tmp54 ;
 7431  unsigned long __cil_tmp55 ;
 7432  unsigned long __cil_tmp56 ;
 7433  unsigned int __cil_tmp57 ;
 7434  unsigned int __cil_tmp58 ;
 7435  unsigned long __cil_tmp59 ;
 7436  unsigned long __cil_tmp60 ;
 7437  unsigned long __cil_tmp61 ;
 7438  unsigned long __cil_tmp62 ;
 7439  unsigned long __cil_tmp63 ;
 7440  unsigned long __cil_tmp64 ;
 7441  unsigned int __cil_tmp65 ;
 7442  unsigned int __cil_tmp66 ;
 7443  unsigned int __cil_tmp67 ;
 7444  unsigned long __cil_tmp68 ;
 7445  unsigned long __cil_tmp69 ;
 7446  unsigned long __cil_tmp70 ;
 7447  unsigned long __cil_tmp71 ;
 7448  unsigned long __cil_tmp72 ;
 7449  unsigned long __cil_tmp73 ;
 7450  unsigned int __cil_tmp74 ;
 7451  unsigned int __cil_tmp75 ;
 7452  unsigned long __cil_tmp76 ;
 7453  unsigned long __cil_tmp77 ;
 7454  unsigned long __cil_tmp78 ;
 7455  unsigned long __cil_tmp79 ;
 7456  unsigned long __cil_tmp80 ;
 7457  unsigned long __cil_tmp81 ;
 7458  unsigned int __cil_tmp82 ;
 7459  unsigned int __cil_tmp83 ;
 7460  unsigned int __cil_tmp84 ;
 7461  unsigned long __cil_tmp85 ;
 7462  unsigned long __cil_tmp86 ;
 7463  unsigned long __cil_tmp87 ;
 7464  unsigned long __cil_tmp88 ;
 7465  unsigned long __cil_tmp89 ;
 7466  unsigned long __cil_tmp90 ;
 7467  struct mousedev_hw_data *__cil_tmp91 ;
 7468  unsigned long __cil_tmp92 ;
 7469  unsigned long __cil_tmp93 ;
 7470  struct mousedev_hw_data *__cil_tmp94 ;
 7471  unsigned long __cil_tmp95 ;
 7472  unsigned long __cil_tmp96 ;
 7473  unsigned long __cil_tmp97 ;
 7474  unsigned long __cil_tmp98 ;
 7475  unsigned long __cil_tmp99 ;
 7476  unsigned long __cil_tmp100 ;
 7477  unsigned long __cil_tmp101 ;
 7478  unsigned long __cil_tmp102 ;
 7479  unsigned long __cil_tmp103 ;
 7480  unsigned long __cil_tmp104 ;
 7481  unsigned long __cil_tmp105 ;
 7482
 7483  {
 7484#line 359
 7485  __cil_tmp14 = *((void **)handle);
 7486#line 359
 7487  mousedev = (struct mousedev *)__cil_tmp14;
 7488#line 363
 7489  if ((int )type == 3) {
 7490#line 363
 7491    goto case_3;
 7492  } else
 7493#line 376
 7494  if ((int )type == 2) {
 7495#line 376
 7496    goto case_2;
 7497  } else
 7498#line 380
 7499  if ((int )type == 1) {
 7500#line 380
 7501    goto case_1;
 7502  } else
 7503#line 390
 7504  if ((int )type == 0) {
 7505#line 390
 7506    goto case_0;
 7507  } else
 7508#line 361
 7509  if (0) {
 7510    case_3: /* CIL Label */ 
 7511    {
 7512#line 365
 7513    __cil_tmp15 = 0 * 8UL;
 7514#line 365
 7515    __cil_tmp16 = 48 + __cil_tmp15;
 7516#line 365
 7517    __cil_tmp17 = (unsigned long )handle;
 7518#line 365
 7519    __cil_tmp18 = __cil_tmp17 + 24;
 7520#line 365
 7521    __cil_tmp19 = *((struct input_dev **)__cil_tmp18);
 7522#line 365
 7523    __cil_tmp20 = (unsigned long )__cil_tmp19;
 7524#line 365
 7525    __cil_tmp21 = __cil_tmp20 + __cil_tmp16;
 7526#line 365
 7527    __cil_tmp22 = (unsigned long *)__cil_tmp21;
 7528#line 365
 7529    __cil_tmp23 = (unsigned long  volatile   *)__cil_tmp22;
 7530#line 365
 7531    tmp___7 = ant_test_bit(288U, __cil_tmp23);
 7532    }
 7533#line 365
 7534    if (tmp___7) {
 7535#line 366
 7536      return;
 7537    } else {
 7538
 7539    }
 7540    {
 7541#line 368
 7542    __cil_tmp24 = 0 * 8UL;
 7543#line 368
 7544    __cil_tmp25 = 48 + __cil_tmp24;
 7545#line 368
 7546    __cil_tmp26 = (unsigned long )handle;
 7547#line 368
 7548    __cil_tmp27 = __cil_tmp26 + 24;
 7549#line 368
 7550    __cil_tmp28 = *((struct input_dev **)__cil_tmp27);
 7551#line 368
 7552    __cil_tmp29 = (unsigned long )__cil_tmp28;
 7553#line 368
 7554    __cil_tmp30 = __cil_tmp29 + __cil_tmp25;
 7555#line 368
 7556    __cil_tmp31 = (unsigned long *)__cil_tmp30;
 7557#line 368
 7558    __cil_tmp32 = (unsigned long  volatile   *)__cil_tmp31;
 7559#line 368
 7560    tmp___9 = ant_test_bit(325U, __cil_tmp32);
 7561    }
 7562#line 368
 7563    if (tmp___9) {
 7564      {
 7565#line 369
 7566      __cil_tmp33 = (unsigned long )handle;
 7567#line 369
 7568      __cil_tmp34 = __cil_tmp33 + 24;
 7569#line 369
 7570      __cil_tmp35 = *((struct input_dev **)__cil_tmp34);
 7571#line 369
 7572      mousedev_touchpad_event(__cil_tmp35, mousedev, code, value);
 7573      }
 7574    } else {
 7575      {
 7576#line 372
 7577      __cil_tmp36 = (unsigned long )handle;
 7578#line 372
 7579      __cil_tmp37 = __cil_tmp36 + 24;
 7580#line 372
 7581      __cil_tmp38 = *((struct input_dev **)__cil_tmp37);
 7582#line 372
 7583      mousedev_abs_event(__cil_tmp38, mousedev, code, value);
 7584      }
 7585    }
 7586#line 374
 7587    goto switch_break;
 7588    case_2: /* CIL Label */ 
 7589    {
 7590#line 377
 7591    mousedev_rel_event(mousedev, code, value);
 7592    }
 7593#line 378
 7594    goto switch_break;
 7595    case_1: /* CIL Label */ 
 7596#line 381
 7597    if (value != 2) {
 7598#line 382
 7599      if (code == 330U) {
 7600        {
 7601#line 382
 7602        __cil_tmp39 = 0 * 8UL;
 7603#line 382
 7604        __cil_tmp40 = 48 + __cil_tmp39;
 7605#line 382
 7606        __cil_tmp41 = (unsigned long )handle;
 7607#line 382
 7608        __cil_tmp42 = __cil_tmp41 + 24;
 7609#line 382
 7610        __cil_tmp43 = *((struct input_dev **)__cil_tmp42);
 7611#line 382
 7612        __cil_tmp44 = (unsigned long )__cil_tmp43;
 7613#line 382
 7614        __cil_tmp45 = __cil_tmp44 + __cil_tmp40;
 7615#line 382
 7616        __cil_tmp46 = (unsigned long *)__cil_tmp45;
 7617#line 382
 7618        __cil_tmp47 = (unsigned long  volatile   *)__cil_tmp46;
 7619#line 382
 7620        tmp___11 = ant_test_bit(325U, __cil_tmp47);
 7621        }
 7622#line 382
 7623        if (tmp___11) {
 7624          {
 7625#line 384
 7626          mousedev_touchpad_touch(mousedev, value);
 7627          }
 7628        } else {
 7629          {
 7630#line 386
 7631          mousedev_key_event(mousedev, code, value);
 7632          }
 7633        }
 7634      } else {
 7635        {
 7636#line 386
 7637        mousedev_key_event(mousedev, code, value);
 7638        }
 7639      }
 7640    } else {
 7641
 7642    }
 7643#line 388
 7644    goto switch_break;
 7645    case_0: /* CIL Label */ 
 7646#line 391
 7647    if (code == 0U) {
 7648      {
 7649#line 392
 7650      __cil_tmp48 = (unsigned long )mousedev;
 7651#line 392
 7652      __cil_tmp49 = __cil_tmp48 + 1112;
 7653#line 392
 7654      if (*((unsigned long *)__cil_tmp49)) {
 7655#line 393
 7656        __cil_tmp50 = (unsigned long )mousedev;
 7657#line 393
 7658        __cil_tmp51 = __cil_tmp50 + 1064;
 7659#line 393
 7660        __cil_tmp52 = (unsigned long )mousedev;
 7661#line 393
 7662        __cil_tmp53 = __cil_tmp52 + 1064;
 7663#line 393
 7664        __cil_tmp54 = *((unsigned int *)__cil_tmp53);
 7665#line 393
 7666        *((unsigned int *)__cil_tmp51) = __cil_tmp54 + 1U;
 7667#line 399
 7668        __cil_tmp55 = (unsigned long )mousedev;
 7669#line 399
 7670        __cil_tmp56 = __cil_tmp55 + 1064;
 7671#line 399
 7672        __cil_tmp57 = *((unsigned int *)__cil_tmp56);
 7673#line 399
 7674        __cil_tmp58 = __cil_tmp57 & 3U;
 7675#line 399
 7676        __cil_tmp59 = __cil_tmp58 * 4UL;
 7677#line 399
 7678        __cil_tmp60 = 1068 + __cil_tmp59;
 7679#line 399
 7680        __cil_tmp61 = (unsigned long )mousedev;
 7681#line 399
 7682        __cil_tmp62 = __cil_tmp61 + __cil_tmp60;
 7683#line 399
 7684        __cil_tmp63 = (unsigned long )mousedev;
 7685#line 399
 7686        __cil_tmp64 = __cil_tmp63 + 1064;
 7687#line 399
 7688        __cil_tmp65 = *((unsigned int *)__cil_tmp64);
 7689#line 399
 7690        __cil_tmp66 = __cil_tmp65 - 1U;
 7691#line 399
 7692        __cil_tmp67 = __cil_tmp66 & 3U;
 7693#line 399
 7694        __cil_tmp68 = __cil_tmp67 * 4UL;
 7695#line 399
 7696        __cil_tmp69 = 1068 + __cil_tmp68;
 7697#line 399
 7698        __cil_tmp70 = (unsigned long )mousedev;
 7699#line 399
 7700        __cil_tmp71 = __cil_tmp70 + __cil_tmp69;
 7701#line 399
 7702        *((int *)__cil_tmp62) = *((int *)__cil_tmp71);
 7703#line 400
 7704        __cil_tmp72 = (unsigned long )mousedev;
 7705#line 400
 7706        __cil_tmp73 = __cil_tmp72 + 1064;
 7707#line 400
 7708        __cil_tmp74 = *((unsigned int *)__cil_tmp73);
 7709#line 400
 7710        __cil_tmp75 = __cil_tmp74 & 3U;
 7711#line 400
 7712        __cil_tmp76 = __cil_tmp75 * 4UL;
 7713#line 400
 7714        __cil_tmp77 = 1084 + __cil_tmp76;
 7715#line 400
 7716        __cil_tmp78 = (unsigned long )mousedev;
 7717#line 400
 7718        __cil_tmp79 = __cil_tmp78 + __cil_tmp77;
 7719#line 400
 7720        __cil_tmp80 = (unsigned long )mousedev;
 7721#line 400
 7722        __cil_tmp81 = __cil_tmp80 + 1064;
 7723#line 400
 7724        __cil_tmp82 = *((unsigned int *)__cil_tmp81);
 7725#line 400
 7726        __cil_tmp83 = __cil_tmp82 - 1U;
 7727#line 400
 7728        __cil_tmp84 = __cil_tmp83 & 3U;
 7729#line 400
 7730        __cil_tmp85 = __cil_tmp84 * 4UL;
 7731#line 400
 7732        __cil_tmp86 = 1084 + __cil_tmp85;
 7733#line 400
 7734        __cil_tmp87 = (unsigned long )mousedev;
 7735#line 400
 7736        __cil_tmp88 = __cil_tmp87 + __cil_tmp86;
 7737#line 400
 7738        *((int *)__cil_tmp79) = *((int *)__cil_tmp88);
 7739      } else {
 7740
 7741      }
 7742      }
 7743      {
 7744#line 403
 7745      __cil_tmp89 = (unsigned long )mousedev;
 7746#line 403
 7747      __cil_tmp90 = __cil_tmp89 + 1032;
 7748#line 403
 7749      __cil_tmp91 = (struct mousedev_hw_data *)__cil_tmp90;
 7750#line 403
 7751      mousedev_notify_readers(mousedev, __cil_tmp91);
 7752#line 404
 7753      __cil_tmp92 = (unsigned long )mousedev;
 7754#line 404
 7755      __cil_tmp93 = __cil_tmp92 + 1032;
 7756#line 404
 7757      __cil_tmp94 = (struct mousedev_hw_data *)__cil_tmp93;
 7758#line 404
 7759      mousedev_notify_readers(mousedev_mix, __cil_tmp94);
 7760#line 406
 7761      tmp___14 = 0;
 7762#line 406
 7763      __cil_tmp95 = 1032 + 8;
 7764#line 406
 7765      __cil_tmp96 = (unsigned long )mousedev;
 7766#line 406
 7767      __cil_tmp97 = __cil_tmp96 + __cil_tmp95;
 7768#line 406
 7769      *((int *)__cil_tmp97) = tmp___14;
 7770#line 406
 7771      tmp___13 = tmp___14;
 7772#line 406
 7773      __cil_tmp98 = 1032 + 4;
 7774#line 406
 7775      __cil_tmp99 = (unsigned long )mousedev;
 7776#line 406
 7777      __cil_tmp100 = __cil_tmp99 + __cil_tmp98;
 7778#line 406
 7779      *((int *)__cil_tmp100) = tmp___13;
 7780#line 406
 7781      __cil_tmp101 = (unsigned long )mousedev;
 7782#line 406
 7783      __cil_tmp102 = __cil_tmp101 + 1032;
 7784#line 406
 7785      *((int *)__cil_tmp102) = tmp___13;
 7786#line 408
 7787      __cil_tmp103 = 1032 + 20;
 7788#line 408
 7789      __cil_tmp104 = (unsigned long )mousedev;
 7790#line 408
 7791      __cil_tmp105 = __cil_tmp104 + __cil_tmp103;
 7792#line 408
 7793      *((int *)__cil_tmp105) = 0;
 7794      }
 7795    } else {
 7796
 7797    }
 7798#line 410
 7799    goto switch_break;
 7800  } else {
 7801    switch_break: /* CIL Label */ ;
 7802  }
 7803#line 412
 7804  return;
 7805}
 7806}
 7807#line 414 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 7808static int mousedev_fasync(int fd , struct file *file , int on ) 
 7809{ struct mousedev_client *client ;
 7810  int tmp___7 ;
 7811  unsigned long __cil_tmp6 ;
 7812  unsigned long __cil_tmp7 ;
 7813  void *__cil_tmp8 ;
 7814  struct fasync_struct **__cil_tmp9 ;
 7815
 7816  {
 7817  {
 7818#line 416
 7819  __cil_tmp6 = (unsigned long )file;
 7820#line 416
 7821  __cil_tmp7 = __cil_tmp6 + 200;
 7822#line 416
 7823  __cil_tmp8 = *((void **)__cil_tmp7);
 7824#line 416
 7825  client = (struct mousedev_client *)__cil_tmp8;
 7826#line 418
 7827  __cil_tmp9 = (struct fasync_struct **)client;
 7828#line 418
 7829  tmp___7 = fasync_helper(fd, file, on, __cil_tmp9);
 7830  }
 7831#line 418
 7832  return (tmp___7);
 7833}
 7834}
 7835#line 421 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 7836static void mousedev_free(struct device *dev ) 
 7837{ struct mousedev *mousedev ;
 7838  struct device    *__mptr ;
 7839  struct mousedev *__cil_tmp4 ;
 7840  unsigned long __cil_tmp5 ;
 7841  unsigned long __cil_tmp6 ;
 7842  struct device *__cil_tmp7 ;
 7843  unsigned int __cil_tmp8 ;
 7844  char *__cil_tmp9 ;
 7845  char *__cil_tmp10 ;
 7846  unsigned long __cil_tmp11 ;
 7847  unsigned long __cil_tmp12 ;
 7848  unsigned long __cil_tmp13 ;
 7849  struct input_dev *__cil_tmp14 ;
 7850  void    *__cil_tmp15 ;
 7851
 7852  {
 7853  {
 7854#line 423
 7855  __mptr = (struct device    *)dev;
 7856#line 423
 7857  __cil_tmp4 = (struct mousedev *)0;
 7858#line 423
 7859  __cil_tmp5 = (unsigned long )__cil_tmp4;
 7860#line 423
 7861  __cil_tmp6 = __cil_tmp5 + 232;
 7862#line 423
 7863  __cil_tmp7 = (struct device *)__cil_tmp6;
 7864#line 423
 7865  __cil_tmp8 = (unsigned int )__cil_tmp7;
 7866#line 423
 7867  __cil_tmp9 = (char *)__mptr;
 7868#line 423
 7869  __cil_tmp10 = __cil_tmp9 - __cil_tmp8;
 7870#line 423
 7871  mousedev = (struct mousedev *)__cil_tmp10;
 7872#line 425
 7873  __cil_tmp11 = 8 + 24;
 7874#line 425
 7875  __cil_tmp12 = (unsigned long )mousedev;
 7876#line 425
 7877  __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
 7878#line 425
 7879  __cil_tmp14 = *((struct input_dev **)__cil_tmp13);
 7880#line 425
 7881  input_put_device(__cil_tmp14);
 7882#line 426
 7883  __cil_tmp15 = (void    *)mousedev;
 7884#line 426
 7885  kfree(__cil_tmp15);
 7886  }
 7887#line 427
 7888  return;
 7889}
 7890}
 7891#line 429 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 7892static int mousedev_open_device(struct mousedev *mousedev ) 
 7893{ int retval ;
 7894  int tmp___7 ;
 7895  unsigned long __cil_tmp4 ;
 7896  unsigned long __cil_tmp5 ;
 7897  struct mutex *__cil_tmp6 ;
 7898  unsigned long __cil_tmp7 ;
 7899  unsigned long __cil_tmp8 ;
 7900  int __cil_tmp9 ;
 7901  unsigned long __cil_tmp10 ;
 7902  unsigned long __cil_tmp11 ;
 7903  bool __cil_tmp12 ;
 7904  int __cil_tmp13 ;
 7905  unsigned long __cil_tmp14 ;
 7906  unsigned long __cil_tmp15 ;
 7907  struct input_handle *__cil_tmp16 ;
 7908  int __cil_tmp17 ;
 7909  unsigned long __cil_tmp18 ;
 7910  unsigned long __cil_tmp19 ;
 7911  struct mutex *__cil_tmp20 ;
 7912
 7913  {
 7914  {
 7915#line 433
 7916  __cil_tmp4 = (unsigned long )mousedev;
 7917#line 433
 7918  __cil_tmp5 = __cil_tmp4 + 160;
 7919#line 433
 7920  __cil_tmp6 = (struct mutex *)__cil_tmp5;
 7921#line 433
 7922  retval = (int )mutex_lock_interruptible(__cil_tmp6);
 7923  }
 7924#line 434
 7925  if (retval) {
 7926#line 435
 7927    return (retval);
 7928  } else {
 7929
 7930  }
 7931  {
 7932#line 437
 7933  __cil_tmp7 = (unsigned long )mousedev;
 7934#line 437
 7935  __cil_tmp8 = __cil_tmp7 + 4;
 7936#line 437
 7937  __cil_tmp9 = *((int *)__cil_tmp8);
 7938#line 437
 7939  if (__cil_tmp9 == 31) {
 7940    {
 7941#line 438
 7942    mixdev_open_devices();
 7943    }
 7944  } else {
 7945    {
 7946#line 439
 7947    __cil_tmp10 = (unsigned long )mousedev;
 7948#line 439
 7949    __cil_tmp11 = __cil_tmp10 + 1000;
 7950#line 439
 7951    __cil_tmp12 = *((bool *)__cil_tmp11);
 7952#line 439
 7953    if (! __cil_tmp12) {
 7954#line 440
 7955      retval = -19;
 7956    } else {
 7957#line 441
 7958      tmp___7 = *((int *)mousedev);
 7959#line 441
 7960      __cil_tmp13 = *((int *)mousedev);
 7961#line 441
 7962      *((int *)mousedev) = __cil_tmp13 + 1;
 7963#line 441
 7964      if (tmp___7) {
 7965
 7966      } else {
 7967        {
 7968#line 442
 7969        __cil_tmp14 = (unsigned long )mousedev;
 7970#line 442
 7971        __cil_tmp15 = __cil_tmp14 + 8;
 7972#line 442
 7973        __cil_tmp16 = (struct input_handle *)__cil_tmp15;
 7974#line 442
 7975        retval = input_open_device(__cil_tmp16);
 7976        }
 7977#line 443
 7978        if (retval) {
 7979#line 444
 7980          __cil_tmp17 = *((int *)mousedev);
 7981#line 444
 7982          *((int *)mousedev) = __cil_tmp17 - 1;
 7983        } else {
 7984
 7985        }
 7986      }
 7987    }
 7988    }
 7989  }
 7990  }
 7991  {
 7992#line 447
 7993  __cil_tmp18 = (unsigned long )mousedev;
 7994#line 447
 7995  __cil_tmp19 = __cil_tmp18 + 160;
 7996#line 447
 7997  __cil_tmp20 = (struct mutex *)__cil_tmp19;
 7998#line 447
 7999  mutex_unlock(__cil_tmp20);
 8000  }
 8001#line 448
 8002  return (retval);
 8003}
 8004}
 8005#line 451 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8006static void mousedev_close_device(struct mousedev *mousedev ) 
 8007{ unsigned long __cil_tmp2 ;
 8008  unsigned long __cil_tmp3 ;
 8009  struct mutex *__cil_tmp4 ;
 8010  unsigned long __cil_tmp5 ;
 8011  unsigned long __cil_tmp6 ;
 8012  int __cil_tmp7 ;
 8013  unsigned long __cil_tmp8 ;
 8014  unsigned long __cil_tmp9 ;
 8015  int __cil_tmp10 ;
 8016  unsigned long __cil_tmp11 ;
 8017  unsigned long __cil_tmp12 ;
 8018  struct input_handle *__cil_tmp13 ;
 8019  unsigned long __cil_tmp14 ;
 8020  unsigned long __cil_tmp15 ;
 8021  struct mutex *__cil_tmp16 ;
 8022
 8023  {
 8024  {
 8025#line 453
 8026  __cil_tmp2 = (unsigned long )mousedev;
 8027#line 453
 8028  __cil_tmp3 = __cil_tmp2 + 160;
 8029#line 453
 8030  __cil_tmp4 = (struct mutex *)__cil_tmp3;
 8031#line 453
 8032  mutex_lock(__cil_tmp4);
 8033  }
 8034  {
 8035#line 455
 8036  __cil_tmp5 = (unsigned long )mousedev;
 8037#line 455
 8038  __cil_tmp6 = __cil_tmp5 + 4;
 8039#line 455
 8040  __cil_tmp7 = *((int *)__cil_tmp6);
 8041#line 455
 8042  if (__cil_tmp7 == 31) {
 8043    {
 8044#line 456
 8045    mixdev_close_devices();
 8046    }
 8047  } else {
 8048    {
 8049#line 457
 8050    __cil_tmp8 = (unsigned long )mousedev;
 8051#line 457
 8052    __cil_tmp9 = __cil_tmp8 + 1000;
 8053#line 457
 8054    if (*((bool *)__cil_tmp9)) {
 8055#line 457
 8056      __cil_tmp10 = *((int *)mousedev);
 8057#line 457
 8058      *((int *)mousedev) = __cil_tmp10 - 1;
 8059#line 457
 8060      if (*((int *)mousedev)) {
 8061
 8062      } else {
 8063        {
 8064#line 458
 8065        __cil_tmp11 = (unsigned long )mousedev;
 8066#line 458
 8067        __cil_tmp12 = __cil_tmp11 + 8;
 8068#line 458
 8069        __cil_tmp13 = (struct input_handle *)__cil_tmp12;
 8070#line 458
 8071        input_close_device(__cil_tmp13);
 8072        }
 8073      }
 8074    } else {
 8075
 8076    }
 8077    }
 8078  }
 8079  }
 8080  {
 8081#line 460
 8082  __cil_tmp14 = (unsigned long )mousedev;
 8083#line 460
 8084  __cil_tmp15 = __cil_tmp14 + 160;
 8085#line 460
 8086  __cil_tmp16 = (struct mutex *)__cil_tmp15;
 8087#line 460
 8088  mutex_unlock(__cil_tmp16);
 8089  }
 8090#line 461
 8091  return;
 8092}
 8093}
 8094#line 468 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8095static void mixdev_open_devices(void) 
 8096{ struct mousedev *mousedev ;
 8097  int tmp___7 ;
 8098  struct list_head    *__mptr ;
 8099  struct list_head    *__mptr___0 ;
 8100  int tmp___8 ;
 8101  int __cil_tmp6 ;
 8102  struct list_head *__cil_tmp7 ;
 8103  struct list_head *__cil_tmp8 ;
 8104  struct mousedev *__cil_tmp9 ;
 8105  unsigned long __cil_tmp10 ;
 8106  unsigned long __cil_tmp11 ;
 8107  struct list_head *__cil_tmp12 ;
 8108  unsigned int __cil_tmp13 ;
 8109  char *__cil_tmp14 ;
 8110  char *__cil_tmp15 ;
 8111  unsigned long __cil_tmp16 ;
 8112  unsigned long __cil_tmp17 ;
 8113  unsigned long __cil_tmp18 ;
 8114  struct list_head *__cil_tmp19 ;
 8115  unsigned long __cil_tmp20 ;
 8116  unsigned long __cil_tmp21 ;
 8117  unsigned long __cil_tmp22 ;
 8118  int __cil_tmp23 ;
 8119  unsigned long __cil_tmp24 ;
 8120  unsigned long __cil_tmp25 ;
 8121  unsigned long __cil_tmp26 ;
 8122  unsigned long __cil_tmp27 ;
 8123  struct list_head *__cil_tmp28 ;
 8124  struct mousedev *__cil_tmp29 ;
 8125  unsigned long __cil_tmp30 ;
 8126  unsigned long __cil_tmp31 ;
 8127  struct list_head *__cil_tmp32 ;
 8128  unsigned int __cil_tmp33 ;
 8129  char *__cil_tmp34 ;
 8130  char *__cil_tmp35 ;
 8131
 8132  {
 8133#line 472
 8134  tmp___7 = *((int *)mousedev_mix);
 8135#line 472
 8136  __cil_tmp6 = *((int *)mousedev_mix);
 8137#line 472
 8138  *((int *)mousedev_mix) = __cil_tmp6 + 1;
 8139#line 472
 8140  if (tmp___7) {
 8141#line 473
 8142    return;
 8143  } else {
 8144
 8145  }
 8146#line 475
 8147  __cil_tmp7 = & mousedev_mix_list;
 8148#line 475
 8149  __cil_tmp8 = *((struct list_head **)__cil_tmp7);
 8150#line 475
 8151  __mptr = (struct list_head    *)__cil_tmp8;
 8152#line 475
 8153  __cil_tmp9 = (struct mousedev *)0;
 8154#line 475
 8155  __cil_tmp10 = (unsigned long )__cil_tmp9;
 8156#line 475
 8157  __cil_tmp11 = __cil_tmp10 + 1008;
 8158#line 475
 8159  __cil_tmp12 = (struct list_head *)__cil_tmp11;
 8160#line 475
 8161  __cil_tmp13 = (unsigned int )__cil_tmp12;
 8162#line 475
 8163  __cil_tmp14 = (char *)__mptr;
 8164#line 475
 8165  __cil_tmp15 = __cil_tmp14 - __cil_tmp13;
 8166#line 475
 8167  mousedev = (struct mousedev *)__cil_tmp15;
 8168  {
 8169#line 475
 8170  while (1) {
 8171    while_continue: /* CIL Label */ ;
 8172    {
 8173#line 475
 8174    __cil_tmp16 = (unsigned long )(& mousedev_mix_list);
 8175#line 475
 8176    __cil_tmp17 = (unsigned long )mousedev;
 8177#line 475
 8178    __cil_tmp18 = __cil_tmp17 + 1008;
 8179#line 475
 8180    __cil_tmp19 = (struct list_head *)__cil_tmp18;
 8181#line 475
 8182    __cil_tmp20 = (unsigned long )__cil_tmp19;
 8183#line 475
 8184    if (__cil_tmp20 != __cil_tmp16) {
 8185
 8186    } else {
 8187#line 475
 8188      goto while_break;
 8189    }
 8190    }
 8191    {
 8192#line 476
 8193    __cil_tmp21 = (unsigned long )mousedev;
 8194#line 476
 8195    __cil_tmp22 = __cil_tmp21 + 1024;
 8196#line 476
 8197    __cil_tmp23 = *((int *)__cil_tmp22);
 8198#line 476
 8199    if (! __cil_tmp23) {
 8200      {
 8201#line 477
 8202      tmp___8 = mousedev_open_device(mousedev);
 8203      }
 8204#line 477
 8205      if (tmp___8) {
 8206#line 478
 8207        goto __Cont;
 8208      } else {
 8209
 8210      }
 8211#line 480
 8212      __cil_tmp24 = (unsigned long )mousedev;
 8213#line 480
 8214      __cil_tmp25 = __cil_tmp24 + 1024;
 8215#line 480
 8216      *((int *)__cil_tmp25) = 1;
 8217    } else {
 8218
 8219    }
 8220    }
 8221    __Cont: /* CIL Label */ 
 8222#line 475
 8223    __cil_tmp26 = (unsigned long )mousedev;
 8224#line 475
 8225    __cil_tmp27 = __cil_tmp26 + 1008;
 8226#line 475
 8227    __cil_tmp28 = *((struct list_head **)__cil_tmp27);
 8228#line 475
 8229    __mptr___0 = (struct list_head    *)__cil_tmp28;
 8230#line 475
 8231    __cil_tmp29 = (struct mousedev *)0;
 8232#line 475
 8233    __cil_tmp30 = (unsigned long )__cil_tmp29;
 8234#line 475
 8235    __cil_tmp31 = __cil_tmp30 + 1008;
 8236#line 475
 8237    __cil_tmp32 = (struct list_head *)__cil_tmp31;
 8238#line 475
 8239    __cil_tmp33 = (unsigned int )__cil_tmp32;
 8240#line 475
 8241    __cil_tmp34 = (char *)__mptr___0;
 8242#line 475
 8243    __cil_tmp35 = __cil_tmp34 - __cil_tmp33;
 8244#line 475
 8245    mousedev = (struct mousedev *)__cil_tmp35;
 8246  }
 8247  while_break: /* CIL Label */ ;
 8248  }
 8249#line 483
 8250  return;
 8251}
 8252}
 8253#line 490 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8254static void mixdev_close_devices(void) 
 8255{ struct mousedev *mousedev ;
 8256  struct list_head    *__mptr ;
 8257  struct list_head    *__mptr___0 ;
 8258  int __cil_tmp4 ;
 8259  struct list_head *__cil_tmp5 ;
 8260  struct list_head *__cil_tmp6 ;
 8261  struct mousedev *__cil_tmp7 ;
 8262  unsigned long __cil_tmp8 ;
 8263  unsigned long __cil_tmp9 ;
 8264  struct list_head *__cil_tmp10 ;
 8265  unsigned int __cil_tmp11 ;
 8266  char *__cil_tmp12 ;
 8267  char *__cil_tmp13 ;
 8268  unsigned long __cil_tmp14 ;
 8269  unsigned long __cil_tmp15 ;
 8270  unsigned long __cil_tmp16 ;
 8271  struct list_head *__cil_tmp17 ;
 8272  unsigned long __cil_tmp18 ;
 8273  unsigned long __cil_tmp19 ;
 8274  unsigned long __cil_tmp20 ;
 8275  unsigned long __cil_tmp21 ;
 8276  unsigned long __cil_tmp22 ;
 8277  unsigned long __cil_tmp23 ;
 8278  unsigned long __cil_tmp24 ;
 8279  struct list_head *__cil_tmp25 ;
 8280  struct mousedev *__cil_tmp26 ;
 8281  unsigned long __cil_tmp27 ;
 8282  unsigned long __cil_tmp28 ;
 8283  struct list_head *__cil_tmp29 ;
 8284  unsigned int __cil_tmp30 ;
 8285  char *__cil_tmp31 ;
 8286  char *__cil_tmp32 ;
 8287
 8288  {
 8289#line 494
 8290  __cil_tmp4 = *((int *)mousedev_mix);
 8291#line 494
 8292  *((int *)mousedev_mix) = __cil_tmp4 - 1;
 8293#line 494
 8294  if (*((int *)mousedev_mix)) {
 8295#line 495
 8296    return;
 8297  } else {
 8298
 8299  }
 8300#line 497
 8301  __cil_tmp5 = & mousedev_mix_list;
 8302#line 497
 8303  __cil_tmp6 = *((struct list_head **)__cil_tmp5);
 8304#line 497
 8305  __mptr = (struct list_head    *)__cil_tmp6;
 8306#line 497
 8307  __cil_tmp7 = (struct mousedev *)0;
 8308#line 497
 8309  __cil_tmp8 = (unsigned long )__cil_tmp7;
 8310#line 497
 8311  __cil_tmp9 = __cil_tmp8 + 1008;
 8312#line 497
 8313  __cil_tmp10 = (struct list_head *)__cil_tmp9;
 8314#line 497
 8315  __cil_tmp11 = (unsigned int )__cil_tmp10;
 8316#line 497
 8317  __cil_tmp12 = (char *)__mptr;
 8318#line 497
 8319  __cil_tmp13 = __cil_tmp12 - __cil_tmp11;
 8320#line 497
 8321  mousedev = (struct mousedev *)__cil_tmp13;
 8322  {
 8323#line 497
 8324  while (1) {
 8325    while_continue: /* CIL Label */ ;
 8326    {
 8327#line 497
 8328    __cil_tmp14 = (unsigned long )(& mousedev_mix_list);
 8329#line 497
 8330    __cil_tmp15 = (unsigned long )mousedev;
 8331#line 497
 8332    __cil_tmp16 = __cil_tmp15 + 1008;
 8333#line 497
 8334    __cil_tmp17 = (struct list_head *)__cil_tmp16;
 8335#line 497
 8336    __cil_tmp18 = (unsigned long )__cil_tmp17;
 8337#line 497
 8338    if (__cil_tmp18 != __cil_tmp14) {
 8339
 8340    } else {
 8341#line 497
 8342      goto while_break;
 8343    }
 8344    }
 8345    {
 8346#line 498
 8347    __cil_tmp19 = (unsigned long )mousedev;
 8348#line 498
 8349    __cil_tmp20 = __cil_tmp19 + 1024;
 8350#line 498
 8351    if (*((int *)__cil_tmp20)) {
 8352      {
 8353#line 499
 8354      __cil_tmp21 = (unsigned long )mousedev;
 8355#line 499
 8356      __cil_tmp22 = __cil_tmp21 + 1024;
 8357#line 499
 8358      *((int *)__cil_tmp22) = 0;
 8359#line 500
 8360      mousedev_close_device(mousedev);
 8361      }
 8362    } else {
 8363
 8364    }
 8365    }
 8366#line 497
 8367    __cil_tmp23 = (unsigned long )mousedev;
 8368#line 497
 8369    __cil_tmp24 = __cil_tmp23 + 1008;
 8370#line 497
 8371    __cil_tmp25 = *((struct list_head **)__cil_tmp24);
 8372#line 497
 8373    __mptr___0 = (struct list_head    *)__cil_tmp25;
 8374#line 497
 8375    __cil_tmp26 = (struct mousedev *)0;
 8376#line 497
 8377    __cil_tmp27 = (unsigned long )__cil_tmp26;
 8378#line 497
 8379    __cil_tmp28 = __cil_tmp27 + 1008;
 8380#line 497
 8381    __cil_tmp29 = (struct list_head *)__cil_tmp28;
 8382#line 497
 8383    __cil_tmp30 = (unsigned int )__cil_tmp29;
 8384#line 497
 8385    __cil_tmp31 = (char *)__mptr___0;
 8386#line 497
 8387    __cil_tmp32 = __cil_tmp31 - __cil_tmp30;
 8388#line 497
 8389    mousedev = (struct mousedev *)__cil_tmp32;
 8390  }
 8391  while_break: /* CIL Label */ ;
 8392  }
 8393#line 503
 8394  return;
 8395}
 8396}
 8397#line 506 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8398static void mousedev_attach_client(struct mousedev *mousedev , struct mousedev_client *client ) 
 8399{ unsigned long __cil_tmp3 ;
 8400  unsigned long __cil_tmp4 ;
 8401  spinlock_t *__cil_tmp5 ;
 8402  unsigned long __cil_tmp6 ;
 8403  unsigned long __cil_tmp7 ;
 8404  struct list_head *__cil_tmp8 ;
 8405  unsigned long __cil_tmp9 ;
 8406  unsigned long __cil_tmp10 ;
 8407  struct list_head *__cil_tmp11 ;
 8408  unsigned long __cil_tmp12 ;
 8409  unsigned long __cil_tmp13 ;
 8410  spinlock_t *__cil_tmp14 ;
 8411
 8412  {
 8413  {
 8414#line 509
 8415  __cil_tmp3 = (unsigned long )mousedev;
 8416#line 509
 8417  __cil_tmp4 = __cil_tmp3 + 136;
 8418#line 509
 8419  __cil_tmp5 = (spinlock_t *)__cil_tmp4;
 8420#line 509
 8421  spin_lock(__cil_tmp5);
 8422#line 510
 8423  __cil_tmp6 = (unsigned long )client;
 8424#line 510
 8425  __cil_tmp7 = __cil_tmp6 + 16;
 8426#line 510
 8427  __cil_tmp8 = (struct list_head *)__cil_tmp7;
 8428#line 510
 8429  __cil_tmp9 = (unsigned long )mousedev;
 8430#line 510
 8431  __cil_tmp10 = __cil_tmp9 + 120;
 8432#line 510
 8433  __cil_tmp11 = (struct list_head *)__cil_tmp10;
 8434#line 510
 8435  list_add_tail_rcu(__cil_tmp8, __cil_tmp11);
 8436#line 511
 8437  __cil_tmp12 = (unsigned long )mousedev;
 8438#line 511
 8439  __cil_tmp13 = __cil_tmp12 + 136;
 8440#line 511
 8441  __cil_tmp14 = (spinlock_t *)__cil_tmp13;
 8442#line 511
 8443  spin_unlock(__cil_tmp14);
 8444  }
 8445#line 512
 8446  return;
 8447}
 8448}
 8449#line 514 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8450static void mousedev_detach_client(struct mousedev *mousedev , struct mousedev_client *client ) 
 8451{ unsigned long __cil_tmp3 ;
 8452  unsigned long __cil_tmp4 ;
 8453  spinlock_t *__cil_tmp5 ;
 8454  unsigned long __cil_tmp6 ;
 8455  unsigned long __cil_tmp7 ;
 8456  struct list_head *__cil_tmp8 ;
 8457  unsigned long __cil_tmp9 ;
 8458  unsigned long __cil_tmp10 ;
 8459  spinlock_t *__cil_tmp11 ;
 8460
 8461  {
 8462  {
 8463#line 517
 8464  __cil_tmp3 = (unsigned long )mousedev;
 8465#line 517
 8466  __cil_tmp4 = __cil_tmp3 + 136;
 8467#line 517
 8468  __cil_tmp5 = (spinlock_t *)__cil_tmp4;
 8469#line 517
 8470  spin_lock(__cil_tmp5);
 8471#line 518
 8472  __cil_tmp6 = (unsigned long )client;
 8473#line 518
 8474  __cil_tmp7 = __cil_tmp6 + 16;
 8475#line 518
 8476  __cil_tmp8 = (struct list_head *)__cil_tmp7;
 8477#line 518
 8478  list_del_rcu(__cil_tmp8);
 8479#line 519
 8480  __cil_tmp9 = (unsigned long )mousedev;
 8481#line 519
 8482  __cil_tmp10 = __cil_tmp9 + 136;
 8483#line 519
 8484  __cil_tmp11 = (spinlock_t *)__cil_tmp10;
 8485#line 519
 8486  spin_unlock(__cil_tmp11);
 8487#line 520
 8488  synchronize_rcu();
 8489  }
 8490#line 521
 8491  return;
 8492}
 8493}
 8494#line 523 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8495static int mousedev_release(struct inode *inode , struct file *file ) 
 8496{ struct mousedev_client *client ;
 8497  struct mousedev *mousedev ;
 8498  unsigned long __cil_tmp5 ;
 8499  unsigned long __cil_tmp6 ;
 8500  void *__cil_tmp7 ;
 8501  unsigned long __cil_tmp8 ;
 8502  unsigned long __cil_tmp9 ;
 8503  void    *__cil_tmp10 ;
 8504  unsigned long __cil_tmp11 ;
 8505  unsigned long __cil_tmp12 ;
 8506  struct device *__cil_tmp13 ;
 8507
 8508  {
 8509  {
 8510#line 525
 8511  __cil_tmp5 = (unsigned long )file;
 8512#line 525
 8513  __cil_tmp6 = __cil_tmp5 + 200;
 8514#line 525
 8515  __cil_tmp7 = *((void **)__cil_tmp6);
 8516#line 525
 8517  client = (struct mousedev_client *)__cil_tmp7;
 8518#line 526
 8519  __cil_tmp8 = (unsigned long )client;
 8520#line 526
 8521  __cil_tmp9 = __cil_tmp8 + 8;
 8522#line 526
 8523  mousedev = *((struct mousedev **)__cil_tmp9);
 8524#line 528
 8525  mousedev_detach_client(mousedev, client);
 8526#line 529
 8527  __cil_tmp10 = (void    *)client;
 8528#line 529
 8529  kfree(__cil_tmp10);
 8530#line 531
 8531  mousedev_close_device(mousedev);
 8532#line 532
 8533  __cil_tmp11 = (unsigned long )mousedev;
 8534#line 532
 8535  __cil_tmp12 = __cil_tmp11 + 232;
 8536#line 532
 8537  __cil_tmp13 = (struct device *)__cil_tmp12;
 8538#line 532
 8539  put_device(__cil_tmp13);
 8540  }
 8541#line 534
 8542  return (0);
 8543}
 8544}
 8545#line 573 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8546static struct lock_class_key __key___4  ;
 8547#line 537 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8548static int mousedev_open(struct inode *inode , struct file *file ) 
 8549{ struct mousedev_client *client ;
 8550  struct mousedev *mousedev ;
 8551  int error ;
 8552  int i ;
 8553  unsigned int tmp___7 ;
 8554  unsigned int tmp___8 ;
 8555  void *tmp___9 ;
 8556  struct inode    *__cil_tmp10 ;
 8557  struct inode    *__cil_tmp11 ;
 8558  unsigned int __cil_tmp12 ;
 8559  unsigned long __cil_tmp13 ;
 8560  unsigned long __cil_tmp14 ;
 8561  unsigned long __cil_tmp15 ;
 8562  unsigned long __cil_tmp16 ;
 8563  struct device *__cil_tmp17 ;
 8564  unsigned long __cil_tmp18 ;
 8565  unsigned long __cil_tmp19 ;
 8566  spinlock_t *__cil_tmp20 ;
 8567  unsigned long __cil_tmp21 ;
 8568  unsigned long __cil_tmp22 ;
 8569  struct raw_spinlock *__cil_tmp23 ;
 8570  unsigned long __cil_tmp24 ;
 8571  unsigned long __cil_tmp25 ;
 8572  int *__cil_tmp26 ;
 8573  int __cil_tmp27 ;
 8574  unsigned long __cil_tmp28 ;
 8575  unsigned long __cil_tmp29 ;
 8576  int *__cil_tmp30 ;
 8577  int __cil_tmp31 ;
 8578  unsigned long __cil_tmp32 ;
 8579  unsigned long __cil_tmp33 ;
 8580  unsigned long __cil_tmp34 ;
 8581  unsigned long __cil_tmp35 ;
 8582  void    *__cil_tmp36 ;
 8583  unsigned long __cil_tmp37 ;
 8584  unsigned long __cil_tmp38 ;
 8585  struct device *__cil_tmp39 ;
 8586
 8587  {
 8588  {
 8589#line 545
 8590  __cil_tmp10 = (struct inode    *)inode;
 8591#line 545
 8592  tmp___8 = imajor(__cil_tmp10);
 8593  }
 8594#line 545
 8595  if (tmp___8 == 10U) {
 8596#line 546
 8597    i = 31;
 8598  } else {
 8599    {
 8600#line 549
 8601    __cil_tmp11 = (struct inode    *)inode;
 8602#line 549
 8603    tmp___7 = iminor(__cil_tmp11);
 8604#line 549
 8605    __cil_tmp12 = tmp___7 - 32U;
 8606#line 549
 8607    i = (int )__cil_tmp12;
 8608    }
 8609  }
 8610#line 551
 8611  if (i >= 32) {
 8612#line 552
 8613    return (-19);
 8614  } else {
 8615
 8616  }
 8617  {
 8618#line 554
 8619  error = (int )mutex_lock_interruptible(& mousedev_table_mutex);
 8620  }
 8621#line 555
 8622  if (error) {
 8623#line 556
 8624    return (error);
 8625  } else {
 8626
 8627  }
 8628#line 558
 8629  __cil_tmp13 = i * 8UL;
 8630#line 558
 8631  __cil_tmp14 = (unsigned long )(mousedev_table) + __cil_tmp13;
 8632#line 558
 8633  mousedev = *((struct mousedev **)__cil_tmp14);
 8634#line 559
 8635  if (mousedev) {
 8636    {
 8637#line 560
 8638    __cil_tmp15 = (unsigned long )mousedev;
 8639#line 560
 8640    __cil_tmp16 = __cil_tmp15 + 232;
 8641#line 560
 8642    __cil_tmp17 = (struct device *)__cil_tmp16;
 8643#line 560
 8644    get_device(__cil_tmp17);
 8645    }
 8646  } else {
 8647
 8648  }
 8649  {
 8650#line 561
 8651  mutex_unlock(& mousedev_table_mutex);
 8652  }
 8653#line 563
 8654  if (! mousedev) {
 8655#line 564
 8656    return (-19);
 8657  } else {
 8658
 8659  }
 8660  {
 8661#line 567
 8662  tmp___9 = kzalloc(480UL, 208U);
 8663#line 567
 8664  client = (struct mousedev_client *)tmp___9;
 8665  }
 8666#line 568
 8667  if (! client) {
 8668#line 569
 8669    error = -12;
 8670#line 570
 8671    goto err_put_mousedev;
 8672  } else {
 8673
 8674  }
 8675  {
 8676#line 573
 8677  while (1) {
 8678    while_continue: /* CIL Label */ ;
 8679    {
 8680#line 573
 8681    __cil_tmp18 = (unsigned long )client;
 8682#line 573
 8683    __cil_tmp19 = __cil_tmp18 + 424;
 8684#line 573
 8685    __cil_tmp20 = (spinlock_t *)__cil_tmp19;
 8686#line 573
 8687    spinlock_check(__cil_tmp20);
 8688    }
 8689    {
 8690#line 573
 8691    while (1) {
 8692      while_continue___0: /* CIL Label */ ;
 8693      {
 8694#line 573
 8695      __cil_tmp21 = (unsigned long )client;
 8696#line 573
 8697      __cil_tmp22 = __cil_tmp21 + 424;
 8698#line 573
 8699      __cil_tmp23 = (struct raw_spinlock *)__cil_tmp22;
 8700#line 573
 8701      __raw_spin_lock_init(__cil_tmp23, "&(&client->packet_lock)->rlock", & __key___4);
 8702      }
 8703#line 573
 8704      goto while_break___0;
 8705    }
 8706    while_break___0: /* CIL Label */ ;
 8707    }
 8708#line 573
 8709    goto while_break;
 8710  }
 8711  while_break: /* CIL Label */ ;
 8712  }
 8713  {
 8714#line 574
 8715  __cil_tmp24 = (unsigned long )client;
 8716#line 574
 8717  __cil_tmp25 = __cil_tmp24 + 448;
 8718#line 574
 8719  __cil_tmp26 = & xres;
 8720#line 574
 8721  __cil_tmp27 = *__cil_tmp26;
 8722#line 574
 8723  *((int *)__cil_tmp25) = __cil_tmp27 / 2;
 8724#line 575
 8725  __cil_tmp28 = (unsigned long )client;
 8726#line 575
 8727  __cil_tmp29 = __cil_tmp28 + 452;
 8728#line 575
 8729  __cil_tmp30 = & yres;
 8730#line 575
 8731  __cil_tmp31 = *__cil_tmp30;
 8732#line 575
 8733  *((int *)__cil_tmp29) = __cil_tmp31 / 2;
 8734#line 576
 8735  __cil_tmp32 = (unsigned long )client;
 8736#line 576
 8737  __cil_tmp33 = __cil_tmp32 + 8;
 8738#line 576
 8739  *((struct mousedev **)__cil_tmp33) = mousedev;
 8740#line 577
 8741  mousedev_attach_client(mousedev, client);
 8742#line 579
 8743  error = mousedev_open_device(mousedev);
 8744  }
 8745#line 580
 8746  if (error) {
 8747#line 581
 8748    goto err_free_client;
 8749  } else {
 8750
 8751  }
 8752#line 583
 8753  __cil_tmp34 = (unsigned long )file;
 8754#line 583
 8755  __cil_tmp35 = __cil_tmp34 + 200;
 8756#line 583
 8757  *((void **)__cil_tmp35) = (void *)client;
 8758#line 584
 8759  return (0);
 8760  err_free_client: 
 8761  {
 8762#line 587
 8763  mousedev_detach_client(mousedev, client);
 8764#line 588
 8765  __cil_tmp36 = (void    *)client;
 8766#line 588
 8767  kfree(__cil_tmp36);
 8768  }
 8769  err_put_mousedev: 
 8770  {
 8771#line 590
 8772  __cil_tmp37 = (unsigned long )mousedev;
 8773#line 590
 8774  __cil_tmp38 = __cil_tmp37 + 232;
 8775#line 590
 8776  __cil_tmp39 = (struct device *)__cil_tmp38;
 8777#line 590
 8778  put_device(__cil_tmp39);
 8779  }
 8780#line 591
 8781  return (error);
 8782}
 8783}
 8784#line 594
 8785__inline static int mousedev_limit_delta(int delta , int limit )  __attribute__((__no_instrument_function__)) ;
 8786#line 594 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8787__inline static int mousedev_limit_delta(int delta , int limit ) 
 8788{ int tmp___7 ;
 8789  int tmp___8 ;
 8790  int __cil_tmp5 ;
 8791
 8792  {
 8793#line 596
 8794  if (delta > limit) {
 8795#line 596
 8796    tmp___8 = limit;
 8797  } else {
 8798    {
 8799#line 596
 8800    __cil_tmp5 = - limit;
 8801#line 596
 8802    if (delta < __cil_tmp5) {
 8803#line 596
 8804      tmp___7 = - limit;
 8805    } else {
 8806#line 596
 8807      tmp___7 = delta;
 8808    }
 8809    }
 8810#line 596
 8811    tmp___8 = tmp___7;
 8812  }
 8813#line 596
 8814  return (tmp___8);
 8815}
 8816}
 8817#line 599 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 8818static void mousedev_packet(struct mousedev_client *client , signed char *ps2_data ) 
 8819{ struct mousedev_motion *p ;
 8820  int tmp___7 ;
 8821  int tmp___8 ;
 8822  int tmp___9 ;
 8823  int tmp___10 ;
 8824  unsigned long __cil_tmp8 ;
 8825  unsigned long __cil_tmp9 ;
 8826  unsigned int __cil_tmp10 ;
 8827  unsigned long __cil_tmp11 ;
 8828  unsigned long __cil_tmp12 ;
 8829  unsigned long __cil_tmp13 ;
 8830  unsigned long __cil_tmp14 ;
 8831  signed char *__cil_tmp15 ;
 8832  unsigned long __cil_tmp16 ;
 8833  unsigned long __cil_tmp17 ;
 8834  unsigned long __cil_tmp18 ;
 8835  unsigned long __cil_tmp19 ;
 8836  unsigned long __cil_tmp20 ;
 8837  unsigned long __cil_tmp21 ;
 8838  int __cil_tmp22 ;
 8839  int __cil_tmp23 ;
 8840  int __cil_tmp24 ;
 8841  int __cil_tmp25 ;
 8842  int __cil_tmp26 ;
 8843  int __cil_tmp27 ;
 8844  int __cil_tmp28 ;
 8845  int __cil_tmp29 ;
 8846  unsigned long __cil_tmp30 ;
 8847  unsigned long __cil_tmp31 ;
 8848  int __cil_tmp32 ;
 8849  signed char *__cil_tmp33 ;
 8850  unsigned long __cil_tmp34 ;
 8851  unsigned long __cil_tmp35 ;
 8852  int __cil_tmp36 ;
 8853  signed char *__cil_tmp37 ;
 8854  signed char *__cil_tmp38 ;
 8855  signed char __cil_tmp39 ;
 8856  int __cil_tmp40 ;
 8857  int __cil_tmp41 ;
 8858  unsigned long __cil_tmp42 ;
 8859  unsigned long __cil_tmp43 ;
 8860  signed char *__cil_tmp44 ;
 8861  signed char __cil_tmp45 ;
 8862  int __cil_tmp46 ;
 8863  unsigned long __cil_tmp47 ;
 8864  unsigned long __cil_tmp48 ;
 8865  int __cil_tmp49 ;
 8866  unsigned long __cil_tmp50 ;
 8867  unsigned long __cil_tmp51 ;
 8868  enum mousedev_emul __cil_tmp52 ;
 8869  unsigned long __cil_tmp53 ;
 8870  unsigned long __cil_tmp54 ;
 8871  int __cil_tmp55 ;
 8872  signed char *__cil_tmp56 ;
 8873  unsigned long __cil_tmp57 ;
 8874  unsigned long __cil_tmp58 ;
 8875  signed char *__cil_tmp59 ;
 8876  signed char __cil_tmp60 ;
 8877  int __cil_tmp61 ;
 8878  unsigned long __cil_tmp62 ;
 8879  unsigned long __cil_tmp63 ;
 8880  int __cil_tmp64 ;
 8881  signed char *__cil_tmp65 ;
 8882  unsigned long __cil_tmp66 ;
 8883  unsigned long __cil_tmp67 ;
 8884  unsigned long __cil_tmp68 ;
 8885  unsigned long __cil_tmp69 ;
 8886  unsigned long __cil_tmp70 ;
 8887  signed char *__cil_tmp71 ;
 8888  signed char __cil_tmp72 ;
 8889  int __cil_tmp73 ;
 8890  int __cil_tmp74 ;
 8891  unsigned long __cil_tmp75 ;
 8892  unsigned long __cil_tmp76 ;
 8893  unsigned long __cil_tmp77 ;
 8894  unsigned long __cil_tmp78 ;
 8895  signed char *__cil_tmp79 ;
 8896  unsigned long __cil_tmp80 ;
 8897  unsigned long __cil_tmp81 ;
 8898  unsigned long __cil_tmp82 ;
 8899  unsigned long __cil_tmp83 ;
 8900  unsigned long __cil_tmp84 ;
 8901  unsigned long __cil_tmp85 ;
 8902  unsigned long __cil_tmp86 ;
 8903  unsigned long __cil_tmp87 ;
 8904  unsigned long __cil_tmp88 ;
 8905  unsigned long __cil_tmp89 ;
 8906  unsigned long __cil_tmp90 ;
 8907  signed char *__cil_tmp91 ;
 8908  signed char __cil_tmp92 ;
 8909  unsigned long __cil_tmp93 ;
 8910  unsigned long __cil_tmp94 ;
 8911  unsigned long __cil_tmp95 ;
 8912  unsigned long __cil_tmp96 ;
 8913  int __cil_tmp97 ;
 8914  signed char *__cil_tmp98 ;
 8915  unsigned long __cil_tmp99 ;
 8916  unsigned long __cil_tmp100 ;
 8917  signed char *__cil_tmp101 ;
 8918  signed char __cil_tmp102 ;
 8919  int __cil_tmp103 ;
 8920  unsigned long __cil_tmp104 ;
 8921  unsigned long __cil_tmp105 ;
 8922  int __cil_tmp106 ;
 8923  unsigned long __cil_tmp107 ;
 8924  unsigned long __cil_tmp108 ;
 8925  signed char *__cil_tmp109 ;
 8926  unsigned long __cil_tmp110 ;
 8927  unsigned long __cil_tmp111 ;
 8928  unsigned long __cil_tmp112 ;
 8929  unsigned long __cil_tmp113 ;
 8930  unsigned long __cil_tmp114 ;
 8931  unsigned long __cil_tmp115 ;
 8932  unsigned long __cil_tmp116 ;
 8933  unsigned long __cil_tmp117 ;
 8934  unsigned long __cil_tmp118 ;
 8935  unsigned long __cil_tmp119 ;
 8936  unsigned long __cil_tmp120 ;
 8937  signed char *__cil_tmp121 ;
 8938  signed char __cil_tmp122 ;
 8939  unsigned long __cil_tmp123 ;
 8940  unsigned long __cil_tmp124 ;
 8941  unsigned long __cil_tmp125 ;
 8942  unsigned long __cil_tmp126 ;
 8943  unsigned long __cil_tmp127 ;
 8944  unsigned long __cil_tmp128 ;
 8945  int __cil_tmp129 ;
 8946  unsigned long __cil_tmp130 ;
 8947  unsigned long __cil_tmp131 ;
 8948  int __cil_tmp132 ;
 8949  unsigned long __cil_tmp133 ;
 8950  unsigned long __cil_tmp134 ;
 8951  int __cil_tmp135 ;
 8952  unsigned long __cil_tmp136 ;
 8953  unsigned long __cil_tmp137 ;
 8954  unsigned int __cil_tmp138 ;
 8955  unsigned long __cil_tmp139 ;
 8956  unsigned long __cil_tmp140 ;
 8957  unsigned int __cil_tmp141 ;
 8958  unsigned long __cil_tmp142 ;
 8959  unsigned long __cil_tmp143 ;
 8960  unsigned long __cil_tmp144 ;
 8961  unsigned long __cil_tmp145 ;
 8962  unsigned long __cil_tmp146 ;
 8963  unsigned long __cil_tmp147 ;
 8964  unsigned long __cil_tmp148 ;
 8965  unsigned long __cil_tmp149 ;
 8966  unsigned long __cil_tmp150 ;
 8967  unsigned long __cil_tmp151 ;
 8968  unsigned int __cil_tmp152 ;
 8969  unsigned int __cil_tmp153 ;
 8970
 8971  {
 8972  {
 8973#line 602
 8974  __cil_tmp8 = (unsigned long )client;
 8975#line 602
 8976  __cil_tmp9 = __cil_tmp8 + 420;
 8977#line 602
 8978  __cil_tmp10 = *((unsigned int *)__cil_tmp9);
 8979#line 602
 8980  __cil_tmp11 = __cil_tmp10 * 24UL;
 8981#line 602
 8982  __cil_tmp12 = 32 + __cil_tmp11;
 8983#line 602
 8984  __cil_tmp13 = (unsigned long )client;
 8985#line 602
 8986  __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
 8987#line 602
 8988  p = (struct mousedev_motion *)__cil_tmp14;
 8989#line 604
 8990  __cil_tmp15 = ps2_data + 0;
 8991#line 604
 8992  __cil_tmp16 = (unsigned long )p;
 8993#line 604
 8994  __cil_tmp17 = __cil_tmp16 + 16;
 8995#line 604
 8996  __cil_tmp18 = *((unsigned long *)__cil_tmp17);
 8997#line 604
 8998  __cil_tmp19 = __cil_tmp18 & 7UL;
 8999#line 604
 9000  __cil_tmp20 = (unsigned long )p;
 9001#line 604
 9002  __cil_tmp21 = __cil_tmp20 + 4;
 9003#line 604
 9004  __cil_tmp22 = *((int *)__cil_tmp21);
 9005#line 604
 9006  __cil_tmp23 = __cil_tmp22 < 0;
 9007#line 604
 9008  __cil_tmp24 = __cil_tmp23 << 5;
 9009#line 604
 9010  __cil_tmp25 = *((int *)p);
 9011#line 604
 9012  __cil_tmp26 = __cil_tmp25 < 0;
 9013#line 604
 9014  __cil_tmp27 = __cil_tmp26 << 4;
 9015#line 604
 9016  __cil_tmp28 = 8 | __cil_tmp27;
 9017#line 604
 9018  __cil_tmp29 = __cil_tmp28 | __cil_tmp24;
 9019#line 604
 9020  __cil_tmp30 = (unsigned long )__cil_tmp29;
 9021#line 604
 9022  __cil_tmp31 = __cil_tmp30 | __cil_tmp19;
 9023#line 604
 9024  *__cil_tmp15 = (signed char )__cil_tmp31;
 9025#line 606
 9026  __cil_tmp32 = *((int *)p);
 9027#line 606
 9028  tmp___7 = mousedev_limit_delta(__cil_tmp32, 127);
 9029#line 606
 9030  __cil_tmp33 = ps2_data + 1;
 9031#line 606
 9032  *__cil_tmp33 = (signed char )tmp___7;
 9033#line 607
 9034  __cil_tmp34 = (unsigned long )p;
 9035#line 607
 9036  __cil_tmp35 = __cil_tmp34 + 4;
 9037#line 607
 9038  __cil_tmp36 = *((int *)__cil_tmp35);
 9039#line 607
 9040  tmp___8 = mousedev_limit_delta(__cil_tmp36, 127);
 9041#line 607
 9042  __cil_tmp37 = ps2_data + 2;
 9043#line 607
 9044  *__cil_tmp37 = (signed char )tmp___8;
 9045#line 608
 9046  __cil_tmp38 = ps2_data + 1;
 9047#line 608
 9048  __cil_tmp39 = *__cil_tmp38;
 9049#line 608
 9050  __cil_tmp40 = (int )__cil_tmp39;
 9051#line 608
 9052  __cil_tmp41 = *((int *)p);
 9053#line 608
 9054  *((int *)p) = __cil_tmp41 - __cil_tmp40;
 9055#line 609
 9056  __cil_tmp42 = (unsigned long )p;
 9057#line 609
 9058  __cil_tmp43 = __cil_tmp42 + 4;
 9059#line 609
 9060  __cil_tmp44 = ps2_data + 2;
 9061#line 609
 9062  __cil_tmp45 = *__cil_tmp44;
 9063#line 609
 9064  __cil_tmp46 = (int )__cil_tmp45;
 9065#line 609
 9066  __cil_tmp47 = (unsigned long )p;
 9067#line 609
 9068  __cil_tmp48 = __cil_tmp47 + 4;
 9069#line 609
 9070  __cil_tmp49 = *((int *)__cil_tmp48);
 9071#line 609
 9072  *((int *)__cil_tmp43) = __cil_tmp49 - __cil_tmp46;
 9073  }
 9074  {
 9075#line 611
 9076  __cil_tmp50 = (unsigned long )client;
 9077#line 611
 9078  __cil_tmp51 = __cil_tmp50 + 468;
 9079#line 611
 9080  __cil_tmp52 = *((enum mousedev_emul *)__cil_tmp51);
 9081#line 612
 9082  if ((int )__cil_tmp52 == 2) {
 9083#line 612
 9084    goto case_2;
 9085  } else
 9086#line 619
 9087  if ((int )__cil_tmp52 == 1) {
 9088#line 619
 9089    goto case_1;
 9090  } else {
 9091    {
 9092#line 628
 9093    goto switch_default;
 9094#line 611
 9095    if (0) {
 9096      case_2: /* CIL Label */ 
 9097      {
 9098#line 613
 9099      __cil_tmp53 = (unsigned long )p;
 9100#line 613
 9101      __cil_tmp54 = __cil_tmp53 + 8;
 9102#line 613
 9103      __cil_tmp55 = *((int *)__cil_tmp54);
 9104#line 613
 9105      tmp___9 = mousedev_limit_delta(__cil_tmp55, 7);
 9106#line 613
 9107      __cil_tmp56 = ps2_data + 3;
 9108#line 613
 9109      *__cil_tmp56 = (signed char )tmp___9;
 9110#line 614
 9111      __cil_tmp57 = (unsigned long )p;
 9112#line 614
 9113      __cil_tmp58 = __cil_tmp57 + 8;
 9114#line 614
 9115      __cil_tmp59 = ps2_data + 3;
 9116#line 614
 9117      __cil_tmp60 = *__cil_tmp59;
 9118#line 614
 9119      __cil_tmp61 = (int )__cil_tmp60;
 9120#line 614
 9121      __cil_tmp62 = (unsigned long )p;
 9122#line 614
 9123      __cil_tmp63 = __cil_tmp62 + 8;
 9124#line 614
 9125      __cil_tmp64 = *((int *)__cil_tmp63);
 9126#line 614
 9127      *((int *)__cil_tmp58) = __cil_tmp64 - __cil_tmp61;
 9128#line 615
 9129      __cil_tmp65 = ps2_data + 3;
 9130#line 615
 9131      __cil_tmp66 = (unsigned long )p;
 9132#line 615
 9133      __cil_tmp67 = __cil_tmp66 + 16;
 9134#line 615
 9135      __cil_tmp68 = *((unsigned long *)__cil_tmp67);
 9136#line 615
 9137      __cil_tmp69 = __cil_tmp68 & 24UL;
 9138#line 615
 9139      __cil_tmp70 = __cil_tmp69 << 1;
 9140#line 615
 9141      __cil_tmp71 = ps2_data + 3;
 9142#line 615
 9143      __cil_tmp72 = *__cil_tmp71;
 9144#line 615
 9145      __cil_tmp73 = (int )__cil_tmp72;
 9146#line 615
 9147      __cil_tmp74 = __cil_tmp73 & 15;
 9148#line 615
 9149      __cil_tmp75 = (unsigned long )__cil_tmp74;
 9150#line 615
 9151      __cil_tmp76 = __cil_tmp75 | __cil_tmp70;
 9152#line 615
 9153      *__cil_tmp65 = (signed char )__cil_tmp76;
 9154#line 616
 9155      __cil_tmp77 = (unsigned long )client;
 9156#line 616
 9157      __cil_tmp78 = __cil_tmp77 + 464;
 9158#line 616
 9159      *((unsigned char *)__cil_tmp78) = (unsigned char)4;
 9160      }
 9161#line 617
 9162      goto switch_break;
 9163      case_1: /* CIL Label */ 
 9164      {
 9165#line 620
 9166      __cil_tmp79 = ps2_data + 0;
 9167#line 620
 9168      __cil_tmp80 = (unsigned long )p;
 9169#line 620
 9170      __cil_tmp81 = __cil_tmp80 + 16;
 9171#line 620
 9172      __cil_tmp82 = *((unsigned long *)__cil_tmp81);
 9173#line 620
 9174      __cil_tmp83 = __cil_tmp82 & 8UL;
 9175#line 620
 9176      __cil_tmp84 = __cil_tmp83 >> 1;
 9177#line 620
 9178      __cil_tmp85 = (unsigned long )p;
 9179#line 620
 9180      __cil_tmp86 = __cil_tmp85 + 16;
 9181#line 620
 9182      __cil_tmp87 = *((unsigned long *)__cil_tmp86);
 9183#line 620
 9184      __cil_tmp88 = __cil_tmp87 & 16UL;
 9185#line 620
 9186      __cil_tmp89 = __cil_tmp88 >> 3;
 9187#line 620
 9188      __cil_tmp90 = __cil_tmp89 | __cil_tmp84;
 9189#line 620
 9190      __cil_tmp91 = ps2_data + 0;
 9191#line 620
 9192      __cil_tmp92 = *__cil_tmp91;
 9193#line 620
 9194      __cil_tmp93 = (unsigned long )__cil_tmp92;
 9195#line 620
 9196      __cil_tmp94 = __cil_tmp93 | __cil_tmp90;
 9197#line 620
 9198      *__cil_tmp79 = (signed char )__cil_tmp94;
 9199#line 622
 9200      __cil_tmp95 = (unsigned long )p;
 9201#line 622
 9202      __cil_tmp96 = __cil_tmp95 + 8;
 9203#line 622
 9204      __cil_tmp97 = *((int *)__cil_tmp96);
 9205#line 622
 9206      tmp___10 = mousedev_limit_delta(__cil_tmp97, 127);
 9207#line 622
 9208      __cil_tmp98 = ps2_data + 3;
 9209#line 622
 9210      *__cil_tmp98 = (signed char )tmp___10;
 9211#line 623
 9212      __cil_tmp99 = (unsigned long )p;
 9213#line 623
 9214      __cil_tmp100 = __cil_tmp99 + 8;
 9215#line 623
 9216      __cil_tmp101 = ps2_data + 3;
 9217#line 623
 9218      __cil_tmp102 = *__cil_tmp101;
 9219#line 623
 9220      __cil_tmp103 = (int )__cil_tmp102;
 9221#line 623
 9222      __cil_tmp104 = (unsigned long )p;
 9223#line 623
 9224      __cil_tmp105 = __cil_tmp104 + 8;
 9225#line 623
 9226      __cil_tmp106 = *((int *)__cil_tmp105);
 9227#line 623
 9228      *((int *)__cil_tmp100) = __cil_tmp106 - __cil_tmp103;
 9229#line 624
 9230      __cil_tmp107 = (unsigned long )client;
 9231#line 624
 9232      __cil_tmp108 = __cil_tmp107 + 464;
 9233#line 624
 9234      *((unsigned char *)__cil_tmp108) = (unsigned char)4;
 9235      }
 9236#line 625
 9237      goto switch_break;
 9238      switch_default: /* CIL Label */ 
 9239#line 629
 9240      __cil_tmp109 = ps2_data + 0;
 9241#line 629
 9242      __cil_tmp110 = (unsigned long )p;
 9243#line 629
 9244      __cil_tmp111 = __cil_tmp110 + 16;
 9245#line 629
 9246      __cil_tmp112 = *((unsigned long *)__cil_tmp111);
 9247#line 629
 9248      __cil_tmp113 = __cil_tmp112 & 8UL;
 9249#line 629
 9250      __cil_tmp114 = __cil_tmp113 >> 1;
 9251#line 629
 9252      __cil_tmp115 = (unsigned long )p;
 9253#line 629
 9254      __cil_tmp116 = __cil_tmp115 + 16;
 9255#line 629
 9256      __cil_tmp117 = *((unsigned long *)__cil_tmp116);
 9257#line 629
 9258      __cil_tmp118 = __cil_tmp117 & 16UL;
 9259#line 629
 9260      __cil_tmp119 = __cil_tmp118 >> 3;
 9261#line 629
 9262      __cil_tmp120 = __cil_tmp119 | __cil_tmp114;
 9263#line 629
 9264      __cil_tmp121 = ps2_data + 0;
 9265#line 629
 9266      __cil_tmp122 = *__cil_tmp121;
 9267#line 629
 9268      __cil_tmp123 = (unsigned long )__cil_tmp122;
 9269#line 629
 9270      __cil_tmp124 = __cil_tmp123 | __cil_tmp120;
 9271#line 629
 9272      *__cil_tmp109 = (signed char )__cil_tmp124;
 9273#line 631
 9274      __cil_tmp125 = (unsigned long )p;
 9275#line 631
 9276      __cil_tmp126 = __cil_tmp125 + 8;
 9277#line 631
 9278      *((int *)__cil_tmp126) = 0;
 9279#line 632
 9280      __cil_tmp127 = (unsigned long )client;
 9281#line 632
 9282      __cil_tmp128 = __cil_tmp127 + 464;
 9283#line 632
 9284      *((unsigned char *)__cil_tmp128) = (unsigned char)3;
 9285#line 633
 9286      goto switch_break;
 9287    } else {
 9288      switch_break: /* CIL Label */ ;
 9289    }
 9290    }
 9291  }
 9292  }
 9293  {
 9294#line 636
 9295  __cil_tmp129 = *((int *)p);
 9296#line 636
 9297  if (! __cil_tmp129) {
 9298    {
 9299#line 636
 9300    __cil_tmp130 = (unsigned long )p;
 9301#line 636
 9302    __cil_tmp131 = __cil_tmp130 + 4;
 9303#line 636
 9304    __cil_tmp132 = *((int *)__cil_tmp131);
 9305#line 636
 9306    if (! __cil_tmp132) {
 9307      {
 9308#line 636
 9309      __cil_tmp133 = (unsigned long )p;
 9310#line 636
 9311      __cil_tmp134 = __cil_tmp133 + 8;
 9312#line 636
 9313      __cil_tmp135 = *((int *)__cil_tmp134);
 9314#line 636
 9315      if (! __cil_tmp135) {
 9316        {
 9317#line 637
 9318        __cil_tmp136 = (unsigned long )client;
 9319#line 637
 9320        __cil_tmp137 = __cil_tmp136 + 416;
 9321#line 637
 9322        __cil_tmp138 = *((unsigned int *)__cil_tmp137);
 9323#line 637
 9324        __cil_tmp139 = (unsigned long )client;
 9325#line 637
 9326        __cil_tmp140 = __cil_tmp139 + 420;
 9327#line 637
 9328        __cil_tmp141 = *((unsigned int *)__cil_tmp140);
 9329#line 637
 9330        if (__cil_tmp141 == __cil_tmp138) {
 9331#line 638
 9332          __cil_tmp142 = (unsigned long )client;
 9333#line 638
 9334          __cil_tmp143 = __cil_tmp142 + 462;
 9335#line 638
 9336          *((unsigned char *)__cil_tmp143) = (unsigned char)0;
 9337#line 639
 9338          __cil_tmp144 = (unsigned long )client;
 9339#line 639
 9340          __cil_tmp145 = __cil_tmp144 + 472;
 9341#line 639
 9342          __cil_tmp146 = (unsigned long )p;
 9343#line 639
 9344          __cil_tmp147 = __cil_tmp146 + 16;
 9345#line 639
 9346          *((unsigned long *)__cil_tmp145) = *((unsigned long *)__cil_tmp147);
 9347        } else {
 9348#line 641
 9349          __cil_tmp148 = (unsigned long )client;
 9350#line 641
 9351          __cil_tmp149 = __cil_tmp148 + 420;
 9352#line 641
 9353          __cil_tmp150 = (unsigned long )client;
 9354#line 641
 9355          __cil_tmp151 = __cil_tmp150 + 420;
 9356#line 641
 9357          __cil_tmp152 = *((unsigned int *)__cil_tmp151);
 9358#line 641
 9359          __cil_tmp153 = __cil_tmp152 + 1U;
 9360#line 641
 9361          *((unsigned int *)__cil_tmp149) = __cil_tmp153 % 16U;
 9362        }
 9363        }
 9364      } else {
 9365
 9366      }
 9367      }
 9368    } else {
 9369
 9370    }
 9371    }
 9372  } else {
 9373
 9374  }
 9375  }
 9376#line 643
 9377  return;
 9378}
 9379}
 9380#line 645 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 9381static void mousedev_generate_response(struct mousedev_client *client , int command ) 
 9382{ unsigned char tmp___7 ;
 9383  unsigned long __cil_tmp4 ;
 9384  unsigned long __cil_tmp5 ;
 9385  unsigned long __cil_tmp6 ;
 9386  unsigned long __cil_tmp7 ;
 9387  unsigned long __cil_tmp8 ;
 9388  unsigned long __cil_tmp9 ;
 9389  unsigned long __cil_tmp10 ;
 9390  unsigned long __cil_tmp11 ;
 9391  signed char *__cil_tmp12 ;
 9392  unsigned long __cil_tmp13 ;
 9393  unsigned long __cil_tmp14 ;
 9394  unsigned long __cil_tmp15 ;
 9395  unsigned long __cil_tmp16 ;
 9396  unsigned char __cil_tmp17 ;
 9397  int __cil_tmp18 ;
 9398  int __cil_tmp19 ;
 9399  unsigned long __cil_tmp20 ;
 9400  unsigned long __cil_tmp21 ;
 9401  enum mousedev_emul __cil_tmp22 ;
 9402  unsigned long __cil_tmp23 ;
 9403  unsigned long __cil_tmp24 ;
 9404  unsigned long __cil_tmp25 ;
 9405  unsigned long __cil_tmp26 ;
 9406  unsigned long __cil_tmp27 ;
 9407  unsigned long __cil_tmp28 ;
 9408  unsigned long __cil_tmp29 ;
 9409  unsigned long __cil_tmp30 ;
 9410  unsigned long __cil_tmp31 ;
 9411  unsigned long __cil_tmp32 ;
 9412  unsigned long __cil_tmp33 ;
 9413  unsigned long __cil_tmp34 ;
 9414  unsigned long __cil_tmp35 ;
 9415  unsigned long __cil_tmp36 ;
 9416  unsigned long __cil_tmp37 ;
 9417  unsigned long __cil_tmp38 ;
 9418  unsigned long __cil_tmp39 ;
 9419  unsigned long __cil_tmp40 ;
 9420  unsigned long __cil_tmp41 ;
 9421  unsigned long __cil_tmp42 ;
 9422  unsigned long __cil_tmp43 ;
 9423  unsigned long __cil_tmp44 ;
 9424  unsigned long __cil_tmp45 ;
 9425  unsigned long __cil_tmp46 ;
 9426  unsigned long __cil_tmp47 ;
 9427  unsigned long __cil_tmp48 ;
 9428  unsigned long __cil_tmp49 ;
 9429  unsigned long __cil_tmp50 ;
 9430  unsigned long __cil_tmp51 ;
 9431  unsigned long __cil_tmp52 ;
 9432  unsigned long __cil_tmp53 ;
 9433  unsigned long __cil_tmp54 ;
 9434  unsigned long __cil_tmp55 ;
 9435  unsigned long __cil_tmp56 ;
 9436  unsigned long __cil_tmp57 ;
 9437  unsigned long __cil_tmp58 ;
 9438  unsigned long __cil_tmp59 ;
 9439  unsigned long __cil_tmp60 ;
 9440  unsigned long __cil_tmp61 ;
 9441  unsigned long __cil_tmp62 ;
 9442  unsigned long __cil_tmp63 ;
 9443  unsigned long __cil_tmp64 ;
 9444  unsigned long __cil_tmp65 ;
 9445  unsigned long __cil_tmp66 ;
 9446  unsigned long __cil_tmp67 ;
 9447  unsigned long __cil_tmp68 ;
 9448  unsigned long __cil_tmp69 ;
 9449  unsigned long __cil_tmp70 ;
 9450  unsigned long __cil_tmp71 ;
 9451  unsigned long __cil_tmp72 ;
 9452
 9453  {
 9454#line 648
 9455  __cil_tmp4 = 0 * 1UL;
 9456#line 648
 9457  __cil_tmp5 = 456 + __cil_tmp4;
 9458#line 648
 9459  __cil_tmp6 = (unsigned long )client;
 9460#line 648
 9461  __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
 9462#line 648
 9463  *((signed char *)__cil_tmp7) = (signed char)-6;
 9464#line 652
 9465  if (command == 235) {
 9466#line 652
 9467    goto case_235;
 9468  } else
 9469#line 657
 9470  if (command == 242) {
 9471#line 657
 9472    goto case_242;
 9473  } else
 9474#line 672
 9475  if (command == 233) {
 9476#line 672
 9477    goto case_233;
 9478  } else
 9479#line 677
 9480  if (command == 255) {
 9481#line 677
 9482    goto case_255;
 9483  } else {
 9484    {
 9485#line 684
 9486    goto switch_default;
 9487#line 650
 9488    if (0) {
 9489      case_235: /* CIL Label */ 
 9490      {
 9491#line 653
 9492      __cil_tmp8 = 1 * 1UL;
 9493#line 653
 9494      __cil_tmp9 = 456 + __cil_tmp8;
 9495#line 653
 9496      __cil_tmp10 = (unsigned long )client;
 9497#line 653
 9498      __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
 9499#line 653
 9500      __cil_tmp12 = (signed char *)__cil_tmp11;
 9501#line 653
 9502      mousedev_packet(client, __cil_tmp12);
 9503#line 654
 9504      __cil_tmp13 = (unsigned long )client;
 9505#line 654
 9506      __cil_tmp14 = __cil_tmp13 + 464;
 9507#line 654
 9508      __cil_tmp15 = (unsigned long )client;
 9509#line 654
 9510      __cil_tmp16 = __cil_tmp15 + 464;
 9511#line 654
 9512      __cil_tmp17 = *((unsigned char *)__cil_tmp16);
 9513#line 654
 9514      __cil_tmp18 = (int )__cil_tmp17;
 9515#line 654
 9516      __cil_tmp19 = __cil_tmp18 + 1;
 9517#line 654
 9518      *((unsigned char *)__cil_tmp14) = (unsigned char )__cil_tmp19;
 9519      }
 9520#line 655
 9521      goto switch_break;
 9522      case_242: /* CIL Label */ 
 9523      {
 9524#line 658
 9525      __cil_tmp20 = (unsigned long )client;
 9526#line 658
 9527      __cil_tmp21 = __cil_tmp20 + 468;
 9528#line 658
 9529      __cil_tmp22 = *((enum mousedev_emul *)__cil_tmp21);
 9530#line 659
 9531      if ((int )__cil_tmp22 == 0) {
 9532#line 659
 9533        goto case_0;
 9534      } else
 9535#line 662
 9536      if ((int )__cil_tmp22 == 1) {
 9537#line 662
 9538        goto case_1;
 9539      } else
 9540#line 665
 9541      if ((int )__cil_tmp22 == 2) {
 9542#line 665
 9543        goto case_2;
 9544      } else
 9545#line 658
 9546      if (0) {
 9547        case_0: /* CIL Label */ 
 9548#line 660
 9549        __cil_tmp23 = 1 * 1UL;
 9550#line 660
 9551        __cil_tmp24 = 456 + __cil_tmp23;
 9552#line 660
 9553        __cil_tmp25 = (unsigned long )client;
 9554#line 660
 9555        __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
 9556#line 660
 9557        *((signed char *)__cil_tmp26) = (signed char)0;
 9558#line 661
 9559        goto switch_break___0;
 9560        case_1: /* CIL Label */ 
 9561#line 663
 9562        __cil_tmp27 = 1 * 1UL;
 9563#line 663
 9564        __cil_tmp28 = 456 + __cil_tmp27;
 9565#line 663
 9566        __cil_tmp29 = (unsigned long )client;
 9567#line 663
 9568        __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
 9569#line 663
 9570        *((signed char *)__cil_tmp30) = (signed char)3;
 9571#line 664
 9572        goto switch_break___0;
 9573        case_2: /* CIL Label */ 
 9574#line 666
 9575        __cil_tmp31 = 1 * 1UL;
 9576#line 666
 9577        __cil_tmp32 = 456 + __cil_tmp31;
 9578#line 666
 9579        __cil_tmp33 = (unsigned long )client;
 9580#line 666
 9581        __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
 9582#line 666
 9583        *((signed char *)__cil_tmp34) = (signed char)4;
 9584#line 667
 9585        goto switch_break___0;
 9586      } else {
 9587        switch_break___0: /* CIL Label */ ;
 9588      }
 9589      }
 9590#line 669
 9591      __cil_tmp35 = (unsigned long )client;
 9592#line 669
 9593      __cil_tmp36 = __cil_tmp35 + 464;
 9594#line 669
 9595      *((unsigned char *)__cil_tmp36) = (unsigned char)2;
 9596#line 670
 9597      goto switch_break;
 9598      case_233: /* CIL Label */ 
 9599#line 673
 9600      __cil_tmp37 = 1 * 1UL;
 9601#line 673
 9602      __cil_tmp38 = 456 + __cil_tmp37;
 9603#line 673
 9604      __cil_tmp39 = (unsigned long )client;
 9605#line 673
 9606      __cil_tmp40 = __cil_tmp39 + __cil_tmp38;
 9607#line 673
 9608      *((signed char *)__cil_tmp40) = (signed char)96;
 9609#line 673
 9610      __cil_tmp41 = 2 * 1UL;
 9611#line 673
 9612      __cil_tmp42 = 456 + __cil_tmp41;
 9613#line 673
 9614      __cil_tmp43 = (unsigned long )client;
 9615#line 673
 9616      __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
 9617#line 673
 9618      *((signed char *)__cil_tmp44) = (signed char)3;
 9619#line 673
 9620      __cil_tmp45 = 3 * 1UL;
 9621#line 673
 9622      __cil_tmp46 = 456 + __cil_tmp45;
 9623#line 673
 9624      __cil_tmp47 = (unsigned long )client;
 9625#line 673
 9626      __cil_tmp48 = __cil_tmp47 + __cil_tmp46;
 9627#line 673
 9628      *((signed char *)__cil_tmp48) = (signed char)-56;
 9629#line 674
 9630      __cil_tmp49 = (unsigned long )client;
 9631#line 674
 9632      __cil_tmp50 = __cil_tmp49 + 464;
 9633#line 674
 9634      *((unsigned char *)__cil_tmp50) = (unsigned char)4;
 9635#line 675
 9636      goto switch_break;
 9637      case_255: /* CIL Label */ 
 9638#line 678
 9639      tmp___7 = (unsigned char)0;
 9640#line 678
 9641      __cil_tmp51 = (unsigned long )client;
 9642#line 678
 9643      __cil_tmp52 = __cil_tmp51 + 465;
 9644#line 678
 9645      *((unsigned char *)__cil_tmp52) = tmp___7;
 9646#line 678
 9647      __cil_tmp53 = (unsigned long )client;
 9648#line 678
 9649      __cil_tmp54 = __cil_tmp53 + 466;
 9650#line 678
 9651      *((unsigned char *)__cil_tmp54) = tmp___7;
 9652#line 679
 9653      __cil_tmp55 = (unsigned long )client;
 9654#line 679
 9655      __cil_tmp56 = __cil_tmp55 + 468;
 9656#line 679
 9657      *((enum mousedev_emul *)__cil_tmp56) = (enum mousedev_emul )0;
 9658#line 680
 9659      __cil_tmp57 = 1 * 1UL;
 9660#line 680
 9661      __cil_tmp58 = 456 + __cil_tmp57;
 9662#line 680
 9663      __cil_tmp59 = (unsigned long )client;
 9664#line 680
 9665      __cil_tmp60 = __cil_tmp59 + __cil_tmp58;
 9666#line 680
 9667      *((signed char *)__cil_tmp60) = (signed char)-86;
 9668#line 680
 9669      __cil_tmp61 = 2 * 1UL;
 9670#line 680
 9671      __cil_tmp62 = 456 + __cil_tmp61;
 9672#line 680
 9673      __cil_tmp63 = (unsigned long )client;
 9674#line 680
 9675      __cil_tmp64 = __cil_tmp63 + __cil_tmp62;
 9676#line 680
 9677      *((signed char *)__cil_tmp64) = (signed char)0;
 9678#line 681
 9679      __cil_tmp65 = (unsigned long )client;
 9680#line 681
 9681      __cil_tmp66 = __cil_tmp65 + 464;
 9682#line 681
 9683      *((unsigned char *)__cil_tmp66) = (unsigned char)3;
 9684#line 682
 9685      goto switch_break;
 9686      switch_default: /* CIL Label */ 
 9687#line 685
 9688      __cil_tmp67 = (unsigned long )client;
 9689#line 685
 9690      __cil_tmp68 = __cil_tmp67 + 464;
 9691#line 685
 9692      *((unsigned char *)__cil_tmp68) = (unsigned char)1;
 9693#line 686
 9694      goto switch_break;
 9695    } else {
 9696      switch_break: /* CIL Label */ ;
 9697    }
 9698    }
 9699  }
 9700#line 688
 9701  __cil_tmp69 = (unsigned long )client;
 9702#line 688
 9703  __cil_tmp70 = __cil_tmp69 + 463;
 9704#line 688
 9705  __cil_tmp71 = (unsigned long )client;
 9706#line 688
 9707  __cil_tmp72 = __cil_tmp71 + 464;
 9708#line 688
 9709  *((unsigned char *)__cil_tmp70) = *((unsigned char *)__cil_tmp72);
 9710#line 689
 9711  return;
 9712}
 9713}
 9714#line 691 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
 9715static ssize_t mousedev_write(struct file *file , char    *buffer , size_t count ,
 9716                              loff_t *ppos ) 
 9717{ struct mousedev_client *client ;
 9718  unsigned char c ;
 9719  unsigned int i ;
 9720  int __ret_gu ;
 9721  unsigned long __val_gu ;
 9722  unsigned long __cil_tmp10 ;
 9723  unsigned long __cil_tmp11 ;
 9724  void *__cil_tmp12 ;
 9725  size_t __cil_tmp13 ;
 9726  char    __cil_tmp14 ;
 9727  unsigned long __cil_tmp15 ;
 9728  unsigned long __cil_tmp16 ;
 9729  spinlock_t *__cil_tmp17 ;
 9730  unsigned long __cil_tmp18 ;
 9731  unsigned long __cil_tmp19 ;
 9732  unsigned char __cil_tmp20 ;
 9733  unsigned long __cil_tmp21 ;
 9734  unsigned long __cil_tmp22 ;
 9735  unsigned char __cil_tmp23 ;
 9736  int __cil_tmp24 ;
 9737  int __cil_tmp25 ;
 9738  unsigned long __cil_tmp26 ;
 9739  unsigned long __cil_tmp27 ;
 9740  unsigned long __cil_tmp28 ;
 9741  unsigned long __cil_tmp29 ;
 9742  unsigned char __cil_tmp30 ;
 9743  int __cil_tmp31 ;
 9744  int __cil_tmp32 ;
 9745  unsigned long __cil_tmp33 ;
 9746  unsigned long __cil_tmp34 ;
 9747  unsigned char __cil_tmp35 ;
 9748  unsigned long __cil_tmp36 ;
 9749  unsigned long __cil_tmp37 ;
 9750  unsigned long __cil_tmp38 ;
 9751  unsigned long __cil_tmp39 ;
 9752  unsigned long __cil_tmp40 ;
 9753  unsigned long __cil_tmp41 ;
 9754  unsigned long __cil_tmp42 ;
 9755  unsigned long __cil_tmp43 ;
 9756  unsigned char __cil_tmp44 ;
 9757  unsigned long __cil_tmp45 ;
 9758  unsigned long __cil_tmp46 ;
 9759  unsigned char __cil_tmp47 ;
 9760  int __cil_tmp48 ;
 9761  int __cil_tmp49 ;
 9762  unsigned long __cil_tmp50 ;
 9763  unsigned long __cil_tmp51 ;
 9764  unsigned long __cil_tmp52 ;
 9765  unsigned long __cil_tmp53 ;
 9766  unsigned char __cil_tmp54 ;
 9767  int __cil_tmp55 ;
 9768  int __cil_tmp56 ;
 9769  unsigned long __cil_tmp57 ;
 9770  unsigned long __cil_tmp58 ;
 9771  unsigned char __cil_tmp59 ;
 9772  unsigned long __cil_tmp60 ;
 9773  unsigned long __cil_tmp61 ;
 9774  unsigned long __cil_tmp62 ;
 9775  unsigned long __cil_tmp63 ;
 9776  unsigned long __cil_tmp64 ;
 9777  unsigned long __cil_tmp65 ;
 9778  int __cil_tmp66 ;
 9779  unsigned long __cil_tmp67 ;
 9780  unsigned long __cil_tmp68 ;
 9781  spinlock_t *__cil_tmp69 ;
 9782  struct fasync_struct **__cil_tmp70 ;
 9783  int __cil_tmp71 ;
 9784  int __cil_tmp72 ;
 9785  unsigned long __cil_tmp73 ;
 9786  unsigned long __cil_tmp74 ;
 9787  struct mousedev *__cil_tmp75 ;
 9788  unsigned long __cil_tmp76 ;
 9789  unsigned long __cil_tmp77 ;
 9790  wait_queue_head_t *__cil_tmp78 ;
 9791  void *__cil_tmp79 ;
 9792
 9793  {
 9794#line 694
 9795  __cil_tmp10 = (unsigned long )file;
 9796#line 694
 9797  __cil_tmp11 = __cil_tmp10 + 200;
 9798#line 694
 9799  __cil_tmp12 = *((void **)__cil_tmp11);
 9800#line 694
 9801  client = (struct mousedev_client *)__cil_tmp12;
 9802#line 698
 9803  i = 0U;
 9804  {
 9805#line 698
 9806  while (1) {
 9807    while_continue: /* CIL Label */ ;
 9808    {
 9809#line 698
 9810    __cil_tmp13 = (size_t )i;
 9811#line 698
 9812    if (__cil_tmp13 < count) {
 9813
 9814    } else {
 9815#line 698
 9816      goto while_break;
 9817    }
 9818    }
 9819    {
 9820#line 700
 9821    might_fault();
 9822    }
 9823#line 700
 9824    if ((int )1UL == 1) {
 9825#line 700
 9826      goto case_1;
 9827    } else
 9828#line 700
 9829    if ((int )1UL == 2) {
 9830#line 700
 9831      goto case_2;
 9832    } else
 9833#line 700
 9834    if ((int )1UL == 4) {
 9835#line 700
 9836      goto case_4;
 9837    } else
 9838#line 700
 9839    if ((int )1UL == 8) {
 9840#line 700
 9841      goto case_8;
 9842    } else {
 9843      {
 9844#line 700
 9845      goto switch_default;
 9846#line 700
 9847      if (0) {
 9848        case_1: /* CIL Label */ 
 9849#line 700
 9850        __asm__  volatile   ("call __get_user_"
 9851                             "1": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
 9852#line 700
 9853        goto switch_break;
 9854        case_2: /* CIL Label */ 
 9855#line 700
 9856        __asm__  volatile   ("call __get_user_"
 9857                             "2": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
 9858#line 700
 9859        goto switch_break;
 9860        case_4: /* CIL Label */ 
 9861#line 700
 9862        __asm__  volatile   ("call __get_user_"
 9863                             "4": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
 9864#line 700
 9865        goto switch_break;
 9866        case_8: /* CIL Label */ 
 9867#line 700
 9868        __asm__  volatile   ("call __get_user_"
 9869                             "8": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
 9870#line 700
 9871        goto switch_break;
 9872        switch_default: /* CIL Label */ 
 9873#line 700
 9874        __asm__  volatile   ("call __get_user_"
 9875                             "X": "=a" (__ret_gu), "=d" (__val_gu): "0" (buffer + i));
 9876#line 700
 9877        goto switch_break;
 9878      } else {
 9879        switch_break: /* CIL Label */ ;
 9880      }
 9881      }
 9882    }
 9883#line 700
 9884    __cil_tmp14 = (char    )__val_gu;
 9885#line 700
 9886    c = (unsigned char )__cil_tmp14;
 9887#line 700
 9888    if (__ret_gu) {
 9889#line 701
 9890      return ((ssize_t )-14);
 9891    } else {
 9892
 9893    }
 9894    {
 9895#line 703
 9896    __cil_tmp15 = (unsigned long )client;
 9897#line 703
 9898    __cil_tmp16 = __cil_tmp15 + 424;
 9899#line 703
 9900    __cil_tmp17 = (spinlock_t *)__cil_tmp16;
 9901#line 703
 9902    spin_lock_irq(__cil_tmp17);
 9903    }
 9904    {
 9905#line 705
 9906    __cil_tmp18 = (unsigned long )client;
 9907#line 705
 9908    __cil_tmp19 = __cil_tmp18 + 465;
 9909#line 705
 9910    __cil_tmp20 = *((unsigned char *)__cil_tmp19);
 9911#line 705
 9912    __cil_tmp21 = __cil_tmp20 * 1UL;
 9913#line 705
 9914    __cil_tmp22 = (unsigned long )(mousedev_imex_seq) + __cil_tmp21;
 9915#line 705
 9916    __cil_tmp23 = *((unsigned char *)__cil_tmp22);
 9917#line 705
 9918    __cil_tmp24 = (int )__cil_tmp23;
 9919#line 705
 9920    __cil_tmp25 = (int )c;
 9921#line 705
 9922    if (__cil_tmp25 == __cil_tmp24) {
 9923#line 706
 9924      __cil_tmp26 = (unsigned long )client;
 9925#line 706
 9926      __cil_tmp27 = __cil_tmp26 + 465;
 9927#line 706
 9928      __cil_tmp28 = (unsigned long )client;
 9929#line 706
 9930      __cil_tmp29 = __cil_tmp28 + 465;
 9931#line 706
 9932      __cil_tmp30 = *((unsigned char *)__cil_tmp29);
 9933#line 706
 9934      __cil_tmp31 = (int )__cil_tmp30;
 9935#line 706
 9936      __cil_tmp32 = __cil_tmp31 + 1;
 9937#line 706
 9938      *((unsigned char *)__cil_tmp27) = (unsigned char )__cil_tmp32;
 9939      {
 9940#line 706
 9941      __cil_tmp33 = (unsigned long )client;
 9942#line 706
 9943      __cil_tmp34 = __cil_tmp33 + 465;
 9944#line 706
 9945      __cil_tmp35 = *((unsigned char *)__cil_tmp34);
 9946#line 706
 9947      if (__cil_tmp35 == 6) {
 9948#line 707
 9949        __cil_tmp36 = (unsigned long )client;
 9950#line 707
 9951        __cil_tmp37 = __cil_tmp36 + 465;
 9952#line 707
 9953        *((unsigned char *)__cil_tmp37) = (unsigned char)0;
 9954#line 708
 9955        __cil_tmp38 = (unsigned long )client;
 9956#line 708
 9957        __cil_tmp39 = __cil_tmp38 + 468;
 9958#line 708
 9959        *((enum mousedev_emul *)__cil_tmp39) = (enum mousedev_emul )2;
 9960      } else {
 9961
 9962      }
 9963      }
 9964    } else {
 9965#line 711
 9966      __cil_tmp40 = (unsigned long )client;
 9967#line 711
 9968      __cil_tmp41 = __cil_tmp40 + 465;
 9969#line 711
 9970      *((unsigned char *)__cil_tmp41) = (unsigned char)0;
 9971    }
 9972    }
 9973    {
 9974#line 713
 9975    __cil_tmp42 = (unsigned long )client;
 9976#line 713
 9977    __cil_tmp43 = __cil_tmp42 + 466;
 9978#line 713
 9979    __cil_tmp44 = *((unsigned char *)__cil_tmp43);
 9980#line 713
 9981    __cil_tmp45 = __cil_tmp44 * 1UL;
 9982#line 713
 9983    __cil_tmp46 = (unsigned long )(mousedev_imps_seq) + __cil_tmp45;
 9984#line 713
 9985    __cil_tmp47 = *((unsigned char *)__cil_tmp46);
 9986#line 713
 9987    __cil_tmp48 = (int )__cil_tmp47;
 9988#line 713
 9989    __cil_tmp49 = (int )c;
 9990#line 713
 9991    if (__cil_tmp49 == __cil_tmp48) {
 9992#line 714
 9993      __cil_tmp50 = (unsigned long )client;
 9994#line 714
 9995      __cil_tmp51 = __cil_tmp50 + 466;
 9996#line 714
 9997      __cil_tmp52 = (unsigned long )client;
 9998#line 714
 9999      __cil_tmp53 = __cil_tmp52 + 466;
10000#line 714
10001      __cil_tmp54 = *((unsigned char *)__cil_tmp53);
10002#line 714
10003      __cil_tmp55 = (int )__cil_tmp54;
10004#line 714
10005      __cil_tmp56 = __cil_tmp55 + 1;
10006#line 714
10007      *((unsigned char *)__cil_tmp51) = (unsigned char )__cil_tmp56;
10008      {
10009#line 714
10010      __cil_tmp57 = (unsigned long )client;
10011#line 714
10012      __cil_tmp58 = __cil_tmp57 + 466;
10013#line 714
10014      __cil_tmp59 = *((unsigned char *)__cil_tmp58);
10015#line 714
10016      if (__cil_tmp59 == 6) {
10017#line 715
10018        __cil_tmp60 = (unsigned long )client;
10019#line 715
10020        __cil_tmp61 = __cil_tmp60 + 466;
10021#line 715
10022        *((unsigned char *)__cil_tmp61) = (unsigned char)0;
10023#line 716
10024        __cil_tmp62 = (unsigned long )client;
10025#line 716
10026        __cil_tmp63 = __cil_tmp62 + 468;
10027#line 716
10028        *((enum mousedev_emul *)__cil_tmp63) = (enum mousedev_emul )1;
10029      } else {
10030
10031      }
10032      }
10033    } else {
10034#line 719
10035      __cil_tmp64 = (unsigned long )client;
10036#line 719
10037      __cil_tmp65 = __cil_tmp64 + 466;
10038#line 719
10039      *((unsigned char *)__cil_tmp65) = (unsigned char)0;
10040    }
10041    }
10042    {
10043#line 721
10044    __cil_tmp66 = (int )c;
10045#line 721
10046    mousedev_generate_response(client, __cil_tmp66);
10047#line 723
10048    __cil_tmp67 = (unsigned long )client;
10049#line 723
10050    __cil_tmp68 = __cil_tmp67 + 424;
10051#line 723
10052    __cil_tmp69 = (spinlock_t *)__cil_tmp68;
10053#line 723
10054    spin_unlock_irq(__cil_tmp69);
10055#line 698
10056    i = i + 1U;
10057    }
10058  }
10059  while_break: /* CIL Label */ ;
10060  }
10061  {
10062#line 726
10063  __cil_tmp70 = (struct fasync_struct **)client;
10064#line 726
10065  __cil_tmp71 = 2 << 16;
10066#line 726
10067  __cil_tmp72 = __cil_tmp71 | 1;
10068#line 726
10069  kill_fasync(__cil_tmp70, 29, __cil_tmp72);
10070#line 727
10071  __cil_tmp73 = (unsigned long )client;
10072#line 727
10073  __cil_tmp74 = __cil_tmp73 + 8;
10074#line 727
10075  __cil_tmp75 = *((struct mousedev **)__cil_tmp74);
10076#line 727
10077  __cil_tmp76 = (unsigned long )__cil_tmp75;
10078#line 727
10079  __cil_tmp77 = __cil_tmp76 + 80;
10080#line 727
10081  __cil_tmp78 = (wait_queue_head_t *)__cil_tmp77;
10082#line 727
10083  __cil_tmp79 = (void *)0;
10084#line 727
10085  __wake_up(__cil_tmp78, 1U, 1, __cil_tmp79);
10086  }
10087#line 729
10088  return ((ssize_t )count);
10089}
10090}
10091#line 732 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10092static ssize_t mousedev_read(struct file *file , char *buffer , size_t count , loff_t *ppos ) 
10093{ struct mousedev_client *client ;
10094  struct mousedev *mousedev ;
10095  signed char data[sizeof(client->ps2)] ;
10096  int retval ;
10097  int __ret ;
10098  wait_queue_t __wait ;
10099  struct task_struct *tmp___7 ;
10100  struct task_struct *tmp___8 ;
10101  int tmp___9 ;
10102  size_t __len ;
10103  void *__ret___0 ;
10104  int tmp___10 ;
10105  unsigned long __cil_tmp17 ;
10106  unsigned long __cil_tmp18 ;
10107  void *__cil_tmp19 ;
10108  unsigned long __cil_tmp20 ;
10109  unsigned long __cil_tmp21 ;
10110  unsigned long __cil_tmp22 ;
10111  unsigned long __cil_tmp23 ;
10112  unsigned char __cil_tmp24 ;
10113  unsigned long __cil_tmp25 ;
10114  unsigned long __cil_tmp26 ;
10115  unsigned char __cil_tmp27 ;
10116  unsigned long __cil_tmp28 ;
10117  unsigned long __cil_tmp29 ;
10118  unsigned long __cil_tmp30 ;
10119  unsigned long __cil_tmp31 ;
10120  unsigned int __cil_tmp32 ;
10121  unsigned long __cil_tmp33 ;
10122  unsigned long __cil_tmp34 ;
10123  bool __cil_tmp35 ;
10124  unsigned long __cil_tmp36 ;
10125  unsigned long __cil_tmp37 ;
10126  unsigned long __cil_tmp38 ;
10127  unsigned long __cil_tmp39 ;
10128  wait_queue_t *__cil_tmp40 ;
10129  unsigned long __cil_tmp41 ;
10130  unsigned long __cil_tmp42 ;
10131  unsigned long __cil_tmp43 ;
10132  unsigned long __cil_tmp44 ;
10133  unsigned long __cil_tmp45 ;
10134  unsigned long __cil_tmp46 ;
10135  unsigned long __cil_tmp47 ;
10136  unsigned long __cil_tmp48 ;
10137  unsigned long __cil_tmp49 ;
10138  wait_queue_head_t *__cil_tmp50 ;
10139  unsigned long __cil_tmp51 ;
10140  unsigned long __cil_tmp52 ;
10141  bool __cil_tmp53 ;
10142  unsigned long __cil_tmp54 ;
10143  unsigned long __cil_tmp55 ;
10144  unsigned long __cil_tmp56 ;
10145  unsigned long __cil_tmp57 ;
10146  unsigned long __cil_tmp58 ;
10147  unsigned long __cil_tmp59 ;
10148  wait_queue_head_t *__cil_tmp60 ;
10149  unsigned long __cil_tmp61 ;
10150  unsigned long __cil_tmp62 ;
10151  bool __cil_tmp63 ;
10152  unsigned long __cil_tmp64 ;
10153  unsigned long __cil_tmp65 ;
10154  spinlock_t *__cil_tmp66 ;
10155  unsigned long __cil_tmp67 ;
10156  unsigned long __cil_tmp68 ;
10157  unsigned char __cil_tmp69 ;
10158  unsigned long __cil_tmp70 ;
10159  unsigned long __cil_tmp71 ;
10160  unsigned long __cil_tmp72 ;
10161  unsigned long __cil_tmp73 ;
10162  unsigned long __cil_tmp74 ;
10163  unsigned long __cil_tmp75 ;
10164  signed char *__cil_tmp76 ;
10165  unsigned long __cil_tmp77 ;
10166  unsigned long __cil_tmp78 ;
10167  unsigned long __cil_tmp79 ;
10168  unsigned long __cil_tmp80 ;
10169  unsigned long __cil_tmp81 ;
10170  unsigned long __cil_tmp82 ;
10171  unsigned char __cil_tmp83 ;
10172  size_t __cil_tmp84 ;
10173  unsigned long __cil_tmp85 ;
10174  unsigned long __cil_tmp86 ;
10175  unsigned char __cil_tmp87 ;
10176  unsigned long __cil_tmp88 ;
10177  unsigned long __cil_tmp89 ;
10178  signed char *__cil_tmp90 ;
10179  void *__cil_tmp91 ;
10180  unsigned long __cil_tmp92 ;
10181  unsigned long __cil_tmp93 ;
10182  unsigned char __cil_tmp94 ;
10183  int __cil_tmp95 ;
10184  unsigned long __cil_tmp96 ;
10185  unsigned long __cil_tmp97 ;
10186  unsigned char __cil_tmp98 ;
10187  int __cil_tmp99 ;
10188  unsigned long __cil_tmp100 ;
10189  unsigned long __cil_tmp101 ;
10190  unsigned long __cil_tmp102 ;
10191  unsigned long __cil_tmp103 ;
10192  signed char *__cil_tmp104 ;
10193  signed char *__cil_tmp105 ;
10194  signed char *__cil_tmp106 ;
10195  void    *__cil_tmp107 ;
10196  unsigned long __cil_tmp108 ;
10197  unsigned long __cil_tmp109 ;
10198  unsigned long __cil_tmp110 ;
10199  unsigned long __cil_tmp111 ;
10200  unsigned char __cil_tmp112 ;
10201  size_t __cil_tmp113 ;
10202  size_t __cil_tmp114 ;
10203  unsigned long __cil_tmp115 ;
10204  unsigned long __cil_tmp116 ;
10205  spinlock_t *__cil_tmp117 ;
10206  void *__cil_tmp118 ;
10207  unsigned long __cil_tmp119 ;
10208  unsigned long __cil_tmp120 ;
10209  signed char *__cil_tmp121 ;
10210  void    *__cil_tmp122 ;
10211  unsigned int __cil_tmp123 ;
10212
10213  {
10214#line 735
10215  __cil_tmp17 = (unsigned long )file;
10216#line 735
10217  __cil_tmp18 = __cil_tmp17 + 200;
10218#line 735
10219  __cil_tmp19 = *((void **)__cil_tmp18);
10220#line 735
10221  client = (struct mousedev_client *)__cil_tmp19;
10222#line 736
10223  __cil_tmp20 = (unsigned long )client;
10224#line 736
10225  __cil_tmp21 = __cil_tmp20 + 8;
10226#line 736
10227  mousedev = *((struct mousedev **)__cil_tmp21);
10228#line 738
10229  retval = 0;
10230  {
10231#line 740
10232  __cil_tmp22 = (unsigned long )client;
10233#line 740
10234  __cil_tmp23 = __cil_tmp22 + 462;
10235#line 740
10236  __cil_tmp24 = *((unsigned char *)__cil_tmp23);
10237#line 740
10238  if (! __cil_tmp24) {
10239    {
10240#line 740
10241    __cil_tmp25 = (unsigned long )client;
10242#line 740
10243    __cil_tmp26 = __cil_tmp25 + 463;
10244#line 740
10245    __cil_tmp27 = *((unsigned char *)__cil_tmp26);
10246#line 740
10247    if (! __cil_tmp27) {
10248      {
10249#line 740
10250      __cil_tmp28 = (unsigned long )mousedev;
10251#line 740
10252      __cil_tmp29 = __cil_tmp28 + 1000;
10253#line 740
10254      if (*((bool *)__cil_tmp29)) {
10255        {
10256#line 740
10257        __cil_tmp30 = (unsigned long )file;
10258#line 740
10259        __cil_tmp31 = __cil_tmp30 + 80;
10260#line 740
10261        __cil_tmp32 = *((unsigned int *)__cil_tmp31);
10262#line 740
10263        if (__cil_tmp32 & 2048U) {
10264#line 742
10265          return ((ssize_t )-11);
10266        } else {
10267
10268        }
10269        }
10270      } else {
10271
10272      }
10273      }
10274    } else {
10275
10276    }
10277    }
10278  } else {
10279
10280  }
10281  }
10282#line 744
10283  __ret = 0;
10284  {
10285#line 744
10286  __cil_tmp33 = (unsigned long )mousedev;
10287#line 744
10288  __cil_tmp34 = __cil_tmp33 + 1000;
10289#line 744
10290  __cil_tmp35 = *((bool *)__cil_tmp34);
10291#line 744
10292  if (! __cil_tmp35) {
10293
10294  } else {
10295    {
10296#line 744
10297    __cil_tmp36 = (unsigned long )client;
10298#line 744
10299    __cil_tmp37 = __cil_tmp36 + 462;
10300#line 744
10301    if (*((unsigned char *)__cil_tmp37)) {
10302
10303    } else {
10304      {
10305#line 744
10306      __cil_tmp38 = (unsigned long )client;
10307#line 744
10308      __cil_tmp39 = __cil_tmp38 + 463;
10309#line 744
10310      if (*((unsigned char *)__cil_tmp39)) {
10311
10312      } else {
10313        {
10314#line 744
10315        while (1) {
10316          while_continue: /* CIL Label */ ;
10317          {
10318#line 744
10319          tmp___7 = get_current();
10320#line 744
10321          __cil_tmp40 = & __wait;
10322#line 744
10323          *((unsigned int *)__cil_tmp40) = 0U;
10324#line 744
10325          __cil_tmp41 = (unsigned long )(& __wait) + 8;
10326#line 744
10327          *((void **)__cil_tmp41) = (void *)tmp___7;
10328#line 744
10329          __cil_tmp42 = (unsigned long )(& __wait) + 16;
10330#line 744
10331          *((int (**)(wait_queue_t *wait , unsigned int mode , int flags , void *key ))__cil_tmp42) = & autoremove_wake_function;
10332#line 744
10333          __cil_tmp43 = (unsigned long )(& __wait) + 24;
10334#line 744
10335          __cil_tmp44 = (unsigned long )(& __wait) + 24;
10336#line 744
10337          *((struct list_head **)__cil_tmp43) = (struct list_head *)__cil_tmp44;
10338#line 744
10339          __cil_tmp45 = 24 + 8;
10340#line 744
10341          __cil_tmp46 = (unsigned long )(& __wait) + __cil_tmp45;
10342#line 744
10343          __cil_tmp47 = (unsigned long )(& __wait) + 24;
10344#line 744
10345          *((struct list_head **)__cil_tmp46) = (struct list_head *)__cil_tmp47;
10346          }
10347          {
10348#line 744
10349          while (1) {
10350            while_continue___0: /* CIL Label */ ;
10351            {
10352#line 744
10353            __cil_tmp48 = (unsigned long )mousedev;
10354#line 744
10355            __cil_tmp49 = __cil_tmp48 + 80;
10356#line 744
10357            __cil_tmp50 = (wait_queue_head_t *)__cil_tmp49;
10358#line 744
10359            prepare_to_wait(__cil_tmp50, & __wait, 1);
10360            }
10361            {
10362#line 744
10363            __cil_tmp51 = (unsigned long )mousedev;
10364#line 744
10365            __cil_tmp52 = __cil_tmp51 + 1000;
10366#line 744
10367            __cil_tmp53 = *((bool *)__cil_tmp52);
10368#line 744
10369            if (! __cil_tmp53) {
10370#line 744
10371              goto while_break___0;
10372            } else {
10373              {
10374#line 744
10375              __cil_tmp54 = (unsigned long )client;
10376#line 744
10377              __cil_tmp55 = __cil_tmp54 + 462;
10378#line 744
10379              if (*((unsigned char *)__cil_tmp55)) {
10380#line 744
10381                goto while_break___0;
10382              } else {
10383                {
10384#line 744
10385                __cil_tmp56 = (unsigned long )client;
10386#line 744
10387                __cil_tmp57 = __cil_tmp56 + 463;
10388#line 744
10389                if (*((unsigned char *)__cil_tmp57)) {
10390#line 744
10391                  goto while_break___0;
10392                } else {
10393
10394                }
10395                }
10396              }
10397              }
10398            }
10399            }
10400            {
10401#line 744
10402            tmp___8 = get_current();
10403#line 744
10404            tmp___9 = signal_pending(tmp___8);
10405            }
10406#line 744
10407            if (tmp___9) {
10408
10409            } else {
10410              {
10411#line 744
10412              schedule();
10413              }
10414#line 744
10415              goto __Cont;
10416            }
10417#line 744
10418            __ret = -512;
10419#line 744
10420            goto while_break___0;
10421            __Cont: /* CIL Label */ ;
10422          }
10423          while_break___0: /* CIL Label */ ;
10424          }
10425          {
10426#line 744
10427          __cil_tmp58 = (unsigned long )mousedev;
10428#line 744
10429          __cil_tmp59 = __cil_tmp58 + 80;
10430#line 744
10431          __cil_tmp60 = (wait_queue_head_t *)__cil_tmp59;
10432#line 744
10433          finish_wait(__cil_tmp60, & __wait);
10434          }
10435#line 744
10436          goto while_break;
10437        }
10438        while_break: /* CIL Label */ ;
10439        }
10440      }
10441      }
10442    }
10443    }
10444  }
10445  }
10446#line 744
10447  retval = __ret;
10448#line 746
10449  if (retval) {
10450#line 747
10451    return ((ssize_t )retval);
10452  } else {
10453
10454  }
10455  {
10456#line 749
10457  __cil_tmp61 = (unsigned long )mousedev;
10458#line 749
10459  __cil_tmp62 = __cil_tmp61 + 1000;
10460#line 749
10461  __cil_tmp63 = *((bool *)__cil_tmp62);
10462#line 749
10463  if (! __cil_tmp63) {
10464#line 750
10465    return ((ssize_t )-19);
10466  } else {
10467
10468  }
10469  }
10470  {
10471#line 752
10472  __cil_tmp64 = (unsigned long )client;
10473#line 752
10474  __cil_tmp65 = __cil_tmp64 + 424;
10475#line 752
10476  __cil_tmp66 = (spinlock_t *)__cil_tmp65;
10477#line 752
10478  spin_lock_irq(__cil_tmp66);
10479  }
10480  {
10481#line 754
10482  __cil_tmp67 = (unsigned long )client;
10483#line 754
10484  __cil_tmp68 = __cil_tmp67 + 463;
10485#line 754
10486  __cil_tmp69 = *((unsigned char *)__cil_tmp68);
10487#line 754
10488  if (! __cil_tmp69) {
10489    {
10490#line 754
10491    __cil_tmp70 = (unsigned long )client;
10492#line 754
10493    __cil_tmp71 = __cil_tmp70 + 462;
10494#line 754
10495    if (*((unsigned char *)__cil_tmp71)) {
10496      {
10497#line 755
10498      __cil_tmp72 = 0 * 1UL;
10499#line 755
10500      __cil_tmp73 = 456 + __cil_tmp72;
10501#line 755
10502      __cil_tmp74 = (unsigned long )client;
10503#line 755
10504      __cil_tmp75 = __cil_tmp74 + __cil_tmp73;
10505#line 755
10506      __cil_tmp76 = (signed char *)__cil_tmp75;
10507#line 755
10508      mousedev_packet(client, __cil_tmp76);
10509#line 756
10510      __cil_tmp77 = (unsigned long )client;
10511#line 756
10512      __cil_tmp78 = __cil_tmp77 + 463;
10513#line 756
10514      __cil_tmp79 = (unsigned long )client;
10515#line 756
10516      __cil_tmp80 = __cil_tmp79 + 464;
10517#line 756
10518      *((unsigned char *)__cil_tmp78) = *((unsigned char *)__cil_tmp80);
10519      }
10520    } else {
10521
10522    }
10523    }
10524  } else {
10525
10526  }
10527  }
10528  {
10529#line 759
10530  __cil_tmp81 = (unsigned long )client;
10531#line 759
10532  __cil_tmp82 = __cil_tmp81 + 463;
10533#line 759
10534  __cil_tmp83 = *((unsigned char *)__cil_tmp82);
10535#line 759
10536  __cil_tmp84 = (size_t )__cil_tmp83;
10537#line 759
10538  if (count > __cil_tmp84) {
10539#line 760
10540    __cil_tmp85 = (unsigned long )client;
10541#line 760
10542    __cil_tmp86 = __cil_tmp85 + 463;
10543#line 760
10544    __cil_tmp87 = *((unsigned char *)__cil_tmp86);
10545#line 760
10546    count = (size_t )__cil_tmp87;
10547  } else {
10548
10549  }
10550  }
10551  {
10552#line 762
10553  __len = count;
10554#line 762
10555  __cil_tmp88 = 0 * 1UL;
10556#line 762
10557  __cil_tmp89 = (unsigned long )(data) + __cil_tmp88;
10558#line 762
10559  __cil_tmp90 = (signed char *)__cil_tmp89;
10560#line 762
10561  __cil_tmp91 = (void *)__cil_tmp90;
10562#line 762
10563  __cil_tmp92 = (unsigned long )client;
10564#line 762
10565  __cil_tmp93 = __cil_tmp92 + 463;
10566#line 762
10567  __cil_tmp94 = *((unsigned char *)__cil_tmp93);
10568#line 762
10569  __cil_tmp95 = (int )__cil_tmp94;
10570#line 762
10571  __cil_tmp96 = (unsigned long )client;
10572#line 762
10573  __cil_tmp97 = __cil_tmp96 + 464;
10574#line 762
10575  __cil_tmp98 = *((unsigned char *)__cil_tmp97);
10576#line 762
10577  __cil_tmp99 = (int )__cil_tmp98;
10578#line 762
10579  __cil_tmp100 = 0 * 1UL;
10580#line 762
10581  __cil_tmp101 = 456 + __cil_tmp100;
10582#line 762
10583  __cil_tmp102 = (unsigned long )client;
10584#line 762
10585  __cil_tmp103 = __cil_tmp102 + __cil_tmp101;
10586#line 762
10587  __cil_tmp104 = (signed char *)__cil_tmp103;
10588#line 762
10589  __cil_tmp105 = __cil_tmp104 + __cil_tmp99;
10590#line 762
10591  __cil_tmp106 = __cil_tmp105 - __cil_tmp95;
10592#line 762
10593  __cil_tmp107 = (void    *)__cil_tmp106;
10594#line 762
10595  __ret___0 = __builtin_memcpy(__cil_tmp91, __cil_tmp107, __len);
10596#line 763
10597  __cil_tmp108 = (unsigned long )client;
10598#line 763
10599  __cil_tmp109 = __cil_tmp108 + 463;
10600#line 763
10601  __cil_tmp110 = (unsigned long )client;
10602#line 763
10603  __cil_tmp111 = __cil_tmp110 + 463;
10604#line 763
10605  __cil_tmp112 = *((unsigned char *)__cil_tmp111);
10606#line 763
10607  __cil_tmp113 = (size_t )__cil_tmp112;
10608#line 763
10609  __cil_tmp114 = __cil_tmp113 - count;
10610#line 763
10611  *((unsigned char *)__cil_tmp109) = (unsigned char )__cil_tmp114;
10612#line 765
10613  __cil_tmp115 = (unsigned long )client;
10614#line 765
10615  __cil_tmp116 = __cil_tmp115 + 424;
10616#line 765
10617  __cil_tmp117 = (spinlock_t *)__cil_tmp116;
10618#line 765
10619  spin_unlock_irq(__cil_tmp117);
10620#line 767
10621  __cil_tmp118 = (void *)buffer;
10622#line 767
10623  __cil_tmp119 = 0 * 1UL;
10624#line 767
10625  __cil_tmp120 = (unsigned long )(data) + __cil_tmp119;
10626#line 767
10627  __cil_tmp121 = (signed char *)__cil_tmp120;
10628#line 767
10629  __cil_tmp122 = (void    *)__cil_tmp121;
10630#line 767
10631  __cil_tmp123 = (unsigned int )count;
10632#line 767
10633  tmp___10 = (int )copy_to_user(__cil_tmp118, __cil_tmp122, __cil_tmp123);
10634  }
10635#line 767
10636  if (tmp___10) {
10637#line 768
10638    return ((ssize_t )-14);
10639  } else {
10640
10641  }
10642#line 770
10643  return ((ssize_t )count);
10644}
10645}
10646#line 774 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10647static unsigned int mousedev_poll(struct file *file , poll_table *wait ) 
10648{ struct mousedev_client *client ;
10649  struct mousedev *mousedev ;
10650  unsigned int mask ;
10651  unsigned long __cil_tmp6 ;
10652  unsigned long __cil_tmp7 ;
10653  void *__cil_tmp8 ;
10654  unsigned long __cil_tmp9 ;
10655  unsigned long __cil_tmp10 ;
10656  unsigned long __cil_tmp11 ;
10657  unsigned long __cil_tmp12 ;
10658  wait_queue_head_t *__cil_tmp13 ;
10659  unsigned long __cil_tmp14 ;
10660  unsigned long __cil_tmp15 ;
10661  unsigned long __cil_tmp16 ;
10662  unsigned long __cil_tmp17 ;
10663  unsigned long __cil_tmp18 ;
10664  unsigned long __cil_tmp19 ;
10665
10666  {
10667  {
10668#line 776
10669  __cil_tmp6 = (unsigned long )file;
10670#line 776
10671  __cil_tmp7 = __cil_tmp6 + 200;
10672#line 776
10673  __cil_tmp8 = *((void **)__cil_tmp7);
10674#line 776
10675  client = (struct mousedev_client *)__cil_tmp8;
10676#line 777
10677  __cil_tmp9 = (unsigned long )client;
10678#line 777
10679  __cil_tmp10 = __cil_tmp9 + 8;
10680#line 777
10681  mousedev = *((struct mousedev **)__cil_tmp10);
10682#line 780
10683  __cil_tmp11 = (unsigned long )mousedev;
10684#line 780
10685  __cil_tmp12 = __cil_tmp11 + 80;
10686#line 780
10687  __cil_tmp13 = (wait_queue_head_t *)__cil_tmp12;
10688#line 780
10689  poll_wait(file, __cil_tmp13, wait);
10690  }
10691  {
10692#line 782
10693  __cil_tmp14 = (unsigned long )mousedev;
10694#line 782
10695  __cil_tmp15 = __cil_tmp14 + 1000;
10696#line 782
10697  if (*((bool *)__cil_tmp15)) {
10698#line 782
10699    mask = 260U;
10700  } else {
10701#line 782
10702    mask = 24U;
10703  }
10704  }
10705  {
10706#line 783
10707  __cil_tmp16 = (unsigned long )client;
10708#line 783
10709  __cil_tmp17 = __cil_tmp16 + 462;
10710#line 783
10711  if (*((unsigned char *)__cil_tmp17)) {
10712#line 784
10713    mask = mask | 65U;
10714  } else {
10715    {
10716#line 783
10717    __cil_tmp18 = (unsigned long )client;
10718#line 783
10719    __cil_tmp19 = __cil_tmp18 + 463;
10720#line 783
10721    if (*((unsigned char *)__cil_tmp19)) {
10722#line 784
10723      mask = mask | 65U;
10724    } else {
10725
10726    }
10727    }
10728  }
10729  }
10730#line 786
10731  return (mask);
10732}
10733}
10734#line 789 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10735static struct file_operations    mousedev_fops  = 
10736#line 789
10737     {& __this_module, & noop_llseek, & mousedev_read, & mousedev_write, (ssize_t (*)(struct kiocb * ,
10738                                                                                    struct iovec    * ,
10739                                                                                    unsigned long  ,
10740                                                                                    loff_t  ))0,
10741    (ssize_t (*)(struct kiocb * , struct iovec    * , unsigned long  , loff_t  ))0,
10742    (int (*)(struct file * , void * , int (*)(void * , char    * , int  , loff_t  ,
10743                                              u64  , unsigned int  ) ))0, & mousedev_poll,
10744    (long (*)(struct file * , unsigned int  , unsigned long  ))0, (long (*)(struct file * ,
10745                                                                            unsigned int  ,
10746                                                                            unsigned long  ))0,
10747    (int (*)(struct file * , struct vm_area_struct * ))0, & mousedev_open, (int (*)(struct file * ,
10748                                                                                    fl_owner_t id ))0,
10749    & mousedev_release, (int (*)(struct file * , loff_t  , loff_t  , int datasync ))0,
10750    (int (*)(struct kiocb * , int datasync ))0, & mousedev_fasync, (int (*)(struct file * ,
10751                                                                            int  ,
10752                                                                            struct file_lock * ))0,
10753    (ssize_t (*)(struct file * , struct page * , int  , size_t  , loff_t * , int  ))0,
10754    (unsigned long (*)(struct file * , unsigned long  , unsigned long  , unsigned long  ,
10755                       unsigned long  ))0, (int (*)(int  ))0, (int (*)(struct file * ,
10756                                                                       int  , struct file_lock * ))0,
10757    (ssize_t (*)(struct pipe_inode_info * , struct file * , loff_t * , size_t  , unsigned int  ))0,
10758    (ssize_t (*)(struct file * , loff_t * , struct pipe_inode_info * , size_t  , unsigned int  ))0,
10759    (int (*)(struct file * , long  , struct file_lock ** ))0, (long (*)(struct file *file ,
10760                                                                        int mode ,
10761                                                                        loff_t offset ,
10762                                                                        loff_t len ))0};
10763#line 800 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10764static int mousedev_install_chrdev(struct mousedev *mousedev ) 
10765{ unsigned long __cil_tmp2 ;
10766  unsigned long __cil_tmp3 ;
10767  int __cil_tmp4 ;
10768  unsigned long __cil_tmp5 ;
10769  unsigned long __cil_tmp6 ;
10770
10771  {
10772#line 802
10773  __cil_tmp2 = (unsigned long )mousedev;
10774#line 802
10775  __cil_tmp3 = __cil_tmp2 + 4;
10776#line 802
10777  __cil_tmp4 = *((int *)__cil_tmp3);
10778#line 802
10779  __cil_tmp5 = __cil_tmp4 * 8UL;
10780#line 802
10781  __cil_tmp6 = (unsigned long )(mousedev_table) + __cil_tmp5;
10782#line 802
10783  *((struct mousedev **)__cil_tmp6) = mousedev;
10784#line 803
10785  return (0);
10786}
10787}
10788#line 806 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10789static void mousedev_remove_chrdev(struct mousedev *mousedev ) 
10790{ unsigned long __cil_tmp2 ;
10791  unsigned long __cil_tmp3 ;
10792  int __cil_tmp4 ;
10793  unsigned long __cil_tmp5 ;
10794  unsigned long __cil_tmp6 ;
10795  void *__cil_tmp7 ;
10796
10797  {
10798  {
10799#line 808
10800  mutex_lock(& mousedev_table_mutex);
10801#line 809
10802  __cil_tmp2 = (unsigned long )mousedev;
10803#line 809
10804  __cil_tmp3 = __cil_tmp2 + 4;
10805#line 809
10806  __cil_tmp4 = *((int *)__cil_tmp3);
10807#line 809
10808  __cil_tmp5 = __cil_tmp4 * 8UL;
10809#line 809
10810  __cil_tmp6 = (unsigned long )(mousedev_table) + __cil_tmp5;
10811#line 809
10812  __cil_tmp7 = (void *)0;
10813#line 809
10814  *((struct mousedev **)__cil_tmp6) = (struct mousedev *)__cil_tmp7;
10815#line 810
10816  mutex_unlock(& mousedev_table_mutex);
10817  }
10818#line 811
10819  return;
10820}
10821}
10822#line 818 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10823static void mousedev_mark_dead(struct mousedev *mousedev ) 
10824{ unsigned long __cil_tmp2 ;
10825  unsigned long __cil_tmp3 ;
10826  struct mutex *__cil_tmp4 ;
10827  unsigned long __cil_tmp5 ;
10828  unsigned long __cil_tmp6 ;
10829  unsigned long __cil_tmp7 ;
10830  unsigned long __cil_tmp8 ;
10831  struct mutex *__cil_tmp9 ;
10832
10833  {
10834  {
10835#line 820
10836  __cil_tmp2 = (unsigned long )mousedev;
10837#line 820
10838  __cil_tmp3 = __cil_tmp2 + 160;
10839#line 820
10840  __cil_tmp4 = (struct mutex *)__cil_tmp3;
10841#line 820
10842  mutex_lock(__cil_tmp4);
10843#line 821
10844  __cil_tmp5 = (unsigned long )mousedev;
10845#line 821
10846  __cil_tmp6 = __cil_tmp5 + 1000;
10847#line 821
10848  *((bool *)__cil_tmp6) = (bool )0;
10849#line 822
10850  __cil_tmp7 = (unsigned long )mousedev;
10851#line 822
10852  __cil_tmp8 = __cil_tmp7 + 160;
10853#line 822
10854  __cil_tmp9 = (struct mutex *)__cil_tmp8;
10855#line 822
10856  mutex_unlock(__cil_tmp9);
10857  }
10858#line 823
10859  return;
10860}
10861}
10862#line 829 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
10863static void mousedev_hangup(struct mousedev *mousedev ) 
10864{ struct mousedev_client *client ;
10865  struct list_head    *__mptr ;
10866  struct list_head    *__mptr___0 ;
10867  unsigned long __cil_tmp5 ;
10868  unsigned long __cil_tmp6 ;
10869  spinlock_t *__cil_tmp7 ;
10870  unsigned long __cil_tmp8 ;
10871  unsigned long __cil_tmp9 ;
10872  struct list_head *__cil_tmp10 ;
10873  struct mousedev_client *__cil_tmp11 ;
10874  unsigned long __cil_tmp12 ;
10875  unsigned long __cil_tmp13 ;
10876  struct list_head *__cil_tmp14 ;
10877  unsigned int __cil_tmp15 ;
10878  char *__cil_tmp16 ;
10879  char *__cil_tmp17 ;
10880  unsigned long __cil_tmp18 ;
10881  unsigned long __cil_tmp19 ;
10882  struct list_head *__cil_tmp20 ;
10883  unsigned long __cil_tmp21 ;
10884  unsigned long __cil_tmp22 ;
10885  unsigned long __cil_tmp23 ;
10886  struct list_head *__cil_tmp24 ;
10887  unsigned long __cil_tmp25 ;
10888  struct fasync_struct **__cil_tmp26 ;
10889  int __cil_tmp27 ;
10890  int __cil_tmp28 ;
10891  unsigned long __cil_tmp29 ;
10892  unsigned long __cil_tmp30 ;
10893  struct list_head *__cil_tmp31 ;
10894  struct mousedev_client *__cil_tmp32 ;
10895  unsigned long __cil_tmp33 ;
10896  unsigned long __cil_tmp34 ;
10897  struct list_head *__cil_tmp35 ;
10898  unsigned int __cil_tmp36 ;
10899  char *__cil_tmp37 ;
10900  char *__cil_tmp38 ;
10901  unsigned long __cil_tmp39 ;
10902  unsigned long __cil_tmp40 ;
10903  spinlock_t *__cil_tmp41 ;
10904  unsigned long __cil_tmp42 ;
10905  unsigned long __cil_tmp43 ;
10906  wait_queue_head_t *__cil_tmp44 ;
10907  void *__cil_tmp45 ;
10908
10909  {
10910  {
10911#line 833
10912  __cil_tmp5 = (unsigned long )mousedev;
10913#line 833
10914  __cil_tmp6 = __cil_tmp5 + 136;
10915#line 833
10916  __cil_tmp7 = (spinlock_t *)__cil_tmp6;
10917#line 833
10918  spin_lock(__cil_tmp7);
10919#line 834
10920  __cil_tmp8 = (unsigned long )mousedev;
10921#line 834
10922  __cil_tmp9 = __cil_tmp8 + 120;
10923#line 834
10924  __cil_tmp10 = *((struct list_head **)__cil_tmp9);
10925#line 834
10926  __mptr = (struct list_head    *)__cil_tmp10;
10927#line 834
10928  __cil_tmp11 = (struct mousedev_client *)0;
10929#line 834
10930  __cil_tmp12 = (unsigned long )__cil_tmp11;
10931#line 834
10932  __cil_tmp13 = __cil_tmp12 + 16;
10933#line 834
10934  __cil_tmp14 = (struct list_head *)__cil_tmp13;
10935#line 834
10936  __cil_tmp15 = (unsigned int )__cil_tmp14;
10937#line 834
10938  __cil_tmp16 = (char *)__mptr;
10939#line 834
10940  __cil_tmp17 = __cil_tmp16 - __cil_tmp15;
10941#line 834
10942  client = (struct mousedev_client *)__cil_tmp17;
10943  }
10944  {
10945#line 834
10946  while (1) {
10947    while_continue: /* CIL Label */ ;
10948    {
10949#line 834
10950    __cil_tmp18 = (unsigned long )mousedev;
10951#line 834
10952    __cil_tmp19 = __cil_tmp18 + 120;
10953#line 834
10954    __cil_tmp20 = (struct list_head *)__cil_tmp19;
10955#line 834
10956    __cil_tmp21 = (unsigned long )__cil_tmp20;
10957#line 834
10958    __cil_tmp22 = (unsigned long )client;
10959#line 834
10960    __cil_tmp23 = __cil_tmp22 + 16;
10961#line 834
10962    __cil_tmp24 = (struct list_head *)__cil_tmp23;
10963#line 834
10964    __cil_tmp25 = (unsigned long )__cil_tmp24;
10965#line 834
10966    if (__cil_tmp25 != __cil_tmp21) {
10967
10968    } else {
10969#line 834
10970      goto while_break;
10971    }
10972    }
10973    {
10974#line 835
10975    __cil_tmp26 = (struct fasync_struct **)client;
10976#line 835
10977    __cil_tmp27 = 2 << 16;
10978#line 835
10979    __cil_tmp28 = __cil_tmp27 | 6;
10980#line 835
10981    kill_fasync(__cil_tmp26, 29, __cil_tmp28);
10982#line 834
10983    __cil_tmp29 = (unsigned long )client;
10984#line 834
10985    __cil_tmp30 = __cil_tmp29 + 16;
10986#line 834
10987    __cil_tmp31 = *((struct list_head **)__cil_tmp30);
10988#line 834
10989    __mptr___0 = (struct list_head    *)__cil_tmp31;
10990#line 834
10991    __cil_tmp32 = (struct mousedev_client *)0;
10992#line 834
10993    __cil_tmp33 = (unsigned long )__cil_tmp32;
10994#line 834
10995    __cil_tmp34 = __cil_tmp33 + 16;
10996#line 834
10997    __cil_tmp35 = (struct list_head *)__cil_tmp34;
10998#line 834
10999    __cil_tmp36 = (unsigned int )__cil_tmp35;
11000#line 834
11001    __cil_tmp37 = (char *)__mptr___0;
11002#line 834
11003    __cil_tmp38 = __cil_tmp37 - __cil_tmp36;
11004#line 834
11005    client = (struct mousedev_client *)__cil_tmp38;
11006    }
11007  }
11008  while_break: /* CIL Label */ ;
11009  }
11010  {
11011#line 836
11012  __cil_tmp39 = (unsigned long )mousedev;
11013#line 836
11014  __cil_tmp40 = __cil_tmp39 + 136;
11015#line 836
11016  __cil_tmp41 = (spinlock_t *)__cil_tmp40;
11017#line 836
11018  spin_unlock(__cil_tmp41);
11019#line 838
11020  __cil_tmp42 = (unsigned long )mousedev;
11021#line 838
11022  __cil_tmp43 = __cil_tmp42 + 80;
11023#line 838
11024  __cil_tmp44 = (wait_queue_head_t *)__cil_tmp43;
11025#line 838
11026  __cil_tmp45 = (void *)0;
11027#line 838
11028  __wake_up(__cil_tmp44, 1U, 1, __cil_tmp45);
11029  }
11030#line 839
11031  return;
11032}
11033}
11034#line 841 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11035static void mousedev_cleanup(struct mousedev *mousedev ) 
11036{ struct input_handle *handle ;
11037  unsigned long __cil_tmp3 ;
11038  unsigned long __cil_tmp4 ;
11039
11040  {
11041  {
11042#line 843
11043  __cil_tmp3 = (unsigned long )mousedev;
11044#line 843
11045  __cil_tmp4 = __cil_tmp3 + 8;
11046#line 843
11047  handle = (struct input_handle *)__cil_tmp4;
11048#line 845
11049  mousedev_mark_dead(mousedev);
11050#line 846
11051  mousedev_hangup(mousedev);
11052#line 847
11053  mousedev_remove_chrdev(mousedev);
11054  }
11055#line 850
11056  if (*((int *)mousedev)) {
11057    {
11058#line 851
11059    input_close_device(handle);
11060    }
11061  } else {
11062
11063  }
11064#line 852
11065  return;
11066}
11067}
11068#line 869 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11069static struct lock_class_key __key___5  ;
11070#line 870 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11071static struct lock_class_key __key___6  ;
11072#line 873 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11073static struct lock_class_key __key___7  ;
11074#line 854 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11075static struct mousedev *mousedev_create(struct input_dev *dev , struct input_handler *handler ,
11076                                        int minor ) 
11077{ struct mousedev *mousedev ;
11078  int error ;
11079  void *tmp___7 ;
11080  void *tmp___8 ;
11081  unsigned long __cil_tmp8 ;
11082  unsigned long __cil_tmp9 ;
11083  struct list_head *__cil_tmp10 ;
11084  unsigned long __cil_tmp11 ;
11085  unsigned long __cil_tmp12 ;
11086  struct list_head *__cil_tmp13 ;
11087  unsigned long __cil_tmp14 ;
11088  unsigned long __cil_tmp15 ;
11089  spinlock_t *__cil_tmp16 ;
11090  unsigned long __cil_tmp17 ;
11091  unsigned long __cil_tmp18 ;
11092  struct raw_spinlock *__cil_tmp19 ;
11093  unsigned long __cil_tmp20 ;
11094  unsigned long __cil_tmp21 ;
11095  struct mutex *__cil_tmp22 ;
11096  unsigned long __cil_tmp23 ;
11097  unsigned long __cil_tmp24 ;
11098  wait_queue_head_t *__cil_tmp25 ;
11099  unsigned long __cil_tmp26 ;
11100  unsigned long __cil_tmp27 ;
11101  struct device *__cil_tmp28 ;
11102  unsigned long __cil_tmp29 ;
11103  unsigned long __cil_tmp30 ;
11104  struct device *__cil_tmp31 ;
11105  unsigned long __cil_tmp32 ;
11106  unsigned long __cil_tmp33 ;
11107  unsigned long __cil_tmp34 ;
11108  unsigned long __cil_tmp35 ;
11109  unsigned long __cil_tmp36 ;
11110  unsigned long __cil_tmp37 ;
11111  unsigned long __cil_tmp38 ;
11112  unsigned long __cil_tmp39 ;
11113  unsigned long __cil_tmp40 ;
11114  unsigned long __cil_tmp41 ;
11115  unsigned long __cil_tmp42 ;
11116  unsigned long __cil_tmp43 ;
11117  struct device *__cil_tmp44 ;
11118  struct device    *__cil_tmp45 ;
11119  unsigned long __cil_tmp46 ;
11120  unsigned long __cil_tmp47 ;
11121  unsigned long __cil_tmp48 ;
11122  unsigned long __cil_tmp49 ;
11123  unsigned long __cil_tmp50 ;
11124  unsigned long __cil_tmp51 ;
11125  unsigned long __cil_tmp52 ;
11126  unsigned long __cil_tmp53 ;
11127  unsigned long __cil_tmp54 ;
11128  unsigned long __cil_tmp55 ;
11129  unsigned long __cil_tmp56 ;
11130  unsigned long __cil_tmp57 ;
11131  unsigned long __cil_tmp58 ;
11132  unsigned long __cil_tmp59 ;
11133  unsigned long __cil_tmp60 ;
11134  int __cil_tmp61 ;
11135  int __cil_tmp62 ;
11136  int __cil_tmp63 ;
11137  unsigned long __cil_tmp64 ;
11138  unsigned long __cil_tmp65 ;
11139  unsigned long __cil_tmp66 ;
11140  unsigned long __cil_tmp67 ;
11141  unsigned long __cil_tmp68 ;
11142  struct device *__cil_tmp69 ;
11143  unsigned long __cil_tmp70 ;
11144  unsigned long __cil_tmp71 ;
11145  struct input_handle *__cil_tmp72 ;
11146  unsigned long __cil_tmp73 ;
11147  unsigned long __cil_tmp74 ;
11148  struct device *__cil_tmp75 ;
11149  unsigned long __cil_tmp76 ;
11150  unsigned long __cil_tmp77 ;
11151  struct input_handle *__cil_tmp78 ;
11152  unsigned long __cil_tmp79 ;
11153  unsigned long __cil_tmp80 ;
11154  struct device *__cil_tmp81 ;
11155  long __cil_tmp82 ;
11156
11157  {
11158  {
11159#line 861
11160  tmp___7 = kzalloc(1120UL, 208U);
11161#line 861
11162  mousedev = (struct mousedev *)tmp___7;
11163  }
11164#line 862
11165  if (! mousedev) {
11166#line 863
11167    error = -12;
11168#line 864
11169    goto err_out;
11170  } else {
11171
11172  }
11173  {
11174#line 867
11175  __cil_tmp8 = (unsigned long )mousedev;
11176#line 867
11177  __cil_tmp9 = __cil_tmp8 + 120;
11178#line 867
11179  __cil_tmp10 = (struct list_head *)__cil_tmp9;
11180#line 867
11181  INIT_LIST_HEAD(__cil_tmp10);
11182#line 868
11183  __cil_tmp11 = (unsigned long )mousedev;
11184#line 868
11185  __cil_tmp12 = __cil_tmp11 + 1008;
11186#line 868
11187  __cil_tmp13 = (struct list_head *)__cil_tmp12;
11188#line 868
11189  INIT_LIST_HEAD(__cil_tmp13);
11190  }
11191  {
11192#line 869
11193  while (1) {
11194    while_continue: /* CIL Label */ ;
11195    {
11196#line 869
11197    __cil_tmp14 = (unsigned long )mousedev;
11198#line 869
11199    __cil_tmp15 = __cil_tmp14 + 136;
11200#line 869
11201    __cil_tmp16 = (spinlock_t *)__cil_tmp15;
11202#line 869
11203    spinlock_check(__cil_tmp16);
11204    }
11205    {
11206#line 869
11207    while (1) {
11208      while_continue___0: /* CIL Label */ ;
11209      {
11210#line 869
11211      __cil_tmp17 = (unsigned long )mousedev;
11212#line 869
11213      __cil_tmp18 = __cil_tmp17 + 136;
11214#line 869
11215      __cil_tmp19 = (struct raw_spinlock *)__cil_tmp18;
11216#line 869
11217      __raw_spin_lock_init(__cil_tmp19, "&(&mousedev->client_lock)->rlock", & __key___5);
11218      }
11219#line 869
11220      goto while_break___0;
11221    }
11222    while_break___0: /* CIL Label */ ;
11223    }
11224#line 869
11225    goto while_break;
11226  }
11227  while_break: /* CIL Label */ ;
11228  }
11229  {
11230#line 870
11231  while (1) {
11232    while_continue___1: /* CIL Label */ ;
11233    {
11234#line 870
11235    __cil_tmp20 = (unsigned long )mousedev;
11236#line 870
11237    __cil_tmp21 = __cil_tmp20 + 160;
11238#line 870
11239    __cil_tmp22 = (struct mutex *)__cil_tmp21;
11240#line 870
11241    __mutex_init(__cil_tmp22, "&mousedev->mutex", & __key___6);
11242    }
11243#line 870
11244    goto while_break___1;
11245  }
11246  while_break___1: /* CIL Label */ ;
11247  }
11248  {
11249#line 871
11250  while (1) {
11251    while_continue___2: /* CIL Label */ ;
11252#line 871
11253    goto while_break___2;
11254  }
11255  while_break___2: /* CIL Label */ ;
11256  }
11257  {
11258#line 873
11259  while (1) {
11260    while_continue___3: /* CIL Label */ ;
11261    {
11262#line 873
11263    __cil_tmp23 = (unsigned long )mousedev;
11264#line 873
11265    __cil_tmp24 = __cil_tmp23 + 80;
11266#line 873
11267    __cil_tmp25 = (wait_queue_head_t *)__cil_tmp24;
11268#line 873
11269    __init_waitqueue_head(__cil_tmp25, "&mousedev->wait", & __key___7);
11270    }
11271#line 873
11272    goto while_break___3;
11273  }
11274  while_break___3: /* CIL Label */ ;
11275  }
11276#line 875
11277  if (minor == 31) {
11278    {
11279#line 876
11280    __cil_tmp26 = (unsigned long )mousedev;
11281#line 876
11282    __cil_tmp27 = __cil_tmp26 + 232;
11283#line 876
11284    __cil_tmp28 = (struct device *)__cil_tmp27;
11285#line 876
11286    dev_set_name(__cil_tmp28, "mice");
11287    }
11288  } else {
11289    {
11290#line 878
11291    __cil_tmp29 = (unsigned long )mousedev;
11292#line 878
11293    __cil_tmp30 = __cil_tmp29 + 232;
11294#line 878
11295    __cil_tmp31 = (struct device *)__cil_tmp30;
11296#line 878
11297    dev_set_name(__cil_tmp31, "mouse%d", minor);
11298    }
11299  }
11300  {
11301#line 880
11302  __cil_tmp32 = (unsigned long )mousedev;
11303#line 880
11304  __cil_tmp33 = __cil_tmp32 + 4;
11305#line 880
11306  *((int *)__cil_tmp33) = minor;
11307#line 881
11308  __cil_tmp34 = (unsigned long )mousedev;
11309#line 881
11310  __cil_tmp35 = __cil_tmp34 + 1000;
11311#line 881
11312  *((bool *)__cil_tmp35) = (bool )1;
11313#line 882
11314  __cil_tmp36 = 8 + 24;
11315#line 882
11316  __cil_tmp37 = (unsigned long )mousedev;
11317#line 882
11318  __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
11319#line 882
11320  *((struct input_dev **)__cil_tmp38) = input_get_device(dev);
11321#line 883
11322  __cil_tmp39 = 8 + 16;
11323#line 883
11324  __cil_tmp40 = (unsigned long )mousedev;
11325#line 883
11326  __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
11327#line 883
11328  __cil_tmp42 = (unsigned long )mousedev;
11329#line 883
11330  __cil_tmp43 = __cil_tmp42 + 232;
11331#line 883
11332  __cil_tmp44 = (struct device *)__cil_tmp43;
11333#line 883
11334  __cil_tmp45 = (struct device    *)__cil_tmp44;
11335#line 883
11336  *((char    **)__cil_tmp41) = dev_name(__cil_tmp45);
11337#line 884
11338  __cil_tmp46 = 8 + 32;
11339#line 884
11340  __cil_tmp47 = (unsigned long )mousedev;
11341#line 884
11342  __cil_tmp48 = __cil_tmp47 + __cil_tmp46;
11343#line 884
11344  *((struct input_handler **)__cil_tmp48) = handler;
11345#line 885
11346  __cil_tmp49 = (unsigned long )mousedev;
11347#line 885
11348  __cil_tmp50 = __cil_tmp49 + 8;
11349#line 885
11350  *((void **)__cil_tmp50) = (void *)mousedev;
11351#line 887
11352  __cil_tmp51 = 232 + 744;
11353#line 887
11354  __cil_tmp52 = (unsigned long )mousedev;
11355#line 887
11356  __cil_tmp53 = __cil_tmp52 + __cil_tmp51;
11357#line 887
11358  *((struct class **)__cil_tmp53) = & input_class;
11359  }
11360#line 888
11361  if (dev) {
11362#line 889
11363    __cil_tmp54 = (unsigned long )mousedev;
11364#line 889
11365    __cil_tmp55 = __cil_tmp54 + 232;
11366#line 889
11367    __cil_tmp56 = (unsigned long )dev;
11368#line 889
11369    __cil_tmp57 = __cil_tmp56 + 648;
11370#line 889
11371    *((struct device **)__cil_tmp55) = (struct device *)__cil_tmp57;
11372  } else {
11373
11374  }
11375  {
11376#line 890
11377  __cil_tmp58 = 232 + 664;
11378#line 890
11379  __cil_tmp59 = (unsigned long )mousedev;
11380#line 890
11381  __cil_tmp60 = __cil_tmp59 + __cil_tmp58;
11382#line 890
11383  __cil_tmp61 = 32 + minor;
11384#line 890
11385  __cil_tmp62 = 13 << 20;
11386#line 890
11387  __cil_tmp63 = __cil_tmp62 | __cil_tmp61;
11388#line 890
11389  *((dev_t *)__cil_tmp60) = (dev_t )__cil_tmp63;
11390#line 891
11391  __cil_tmp64 = 232 + 760;
11392#line 891
11393  __cil_tmp65 = (unsigned long )mousedev;
11394#line 891
11395  __cil_tmp66 = __cil_tmp65 + __cil_tmp64;
11396#line 891
11397  *((void (**)(struct device *dev ))__cil_tmp66) = & mousedev_free;
11398#line 892
11399  __cil_tmp67 = (unsigned long )mousedev;
11400#line 892
11401  __cil_tmp68 = __cil_tmp67 + 232;
11402#line 892
11403  __cil_tmp69 = (struct device *)__cil_tmp68;
11404#line 892
11405  device_initialize(__cil_tmp69);
11406  }
11407#line 894
11408  if (minor != 31) {
11409    {
11410#line 895
11411    __cil_tmp70 = (unsigned long )mousedev;
11412#line 895
11413    __cil_tmp71 = __cil_tmp70 + 8;
11414#line 895
11415    __cil_tmp72 = (struct input_handle *)__cil_tmp71;
11416#line 895
11417    error = input_register_handle(__cil_tmp72);
11418    }
11419#line 896
11420    if (error) {
11421#line 897
11422      goto err_free_mousedev;
11423    } else {
11424
11425    }
11426  } else {
11427
11428  }
11429  {
11430#line 900
11431  error = mousedev_install_chrdev(mousedev);
11432  }
11433#line 901
11434  if (error) {
11435#line 902
11436    goto err_unregister_handle;
11437  } else {
11438
11439  }
11440  {
11441#line 904
11442  __cil_tmp73 = (unsigned long )mousedev;
11443#line 904
11444  __cil_tmp74 = __cil_tmp73 + 232;
11445#line 904
11446  __cil_tmp75 = (struct device *)__cil_tmp74;
11447#line 904
11448  error = (int )device_add(__cil_tmp75);
11449  }
11450#line 905
11451  if (error) {
11452#line 906
11453    goto err_cleanup_mousedev;
11454  } else {
11455
11456  }
11457#line 908
11458  return (mousedev);
11459  err_cleanup_mousedev: 
11460  {
11461#line 911
11462  mousedev_cleanup(mousedev);
11463  }
11464  err_unregister_handle: 
11465#line 913
11466  if (minor != 31) {
11467    {
11468#line 914
11469    __cil_tmp76 = (unsigned long )mousedev;
11470#line 914
11471    __cil_tmp77 = __cil_tmp76 + 8;
11472#line 914
11473    __cil_tmp78 = (struct input_handle *)__cil_tmp77;
11474#line 914
11475    input_unregister_handle(__cil_tmp78);
11476    }
11477  } else {
11478
11479  }
11480  err_free_mousedev: 
11481  {
11482#line 916
11483  __cil_tmp79 = (unsigned long )mousedev;
11484#line 916
11485  __cil_tmp80 = __cil_tmp79 + 232;
11486#line 916
11487  __cil_tmp81 = (struct device *)__cil_tmp80;
11488#line 916
11489  put_device(__cil_tmp81);
11490  }
11491  err_out: 
11492  {
11493#line 918
11494  __cil_tmp82 = (long )error;
11495#line 918
11496  tmp___8 = (void *)ERR_PTR(__cil_tmp82);
11497  }
11498#line 918
11499  return ((struct mousedev *)tmp___8);
11500}
11501}
11502#line 921 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11503static void mousedev_destroy(struct mousedev *mousedev ) 
11504{ unsigned long __cil_tmp2 ;
11505  unsigned long __cil_tmp3 ;
11506  struct device *__cil_tmp4 ;
11507  unsigned long __cil_tmp5 ;
11508  unsigned long __cil_tmp6 ;
11509  int __cil_tmp7 ;
11510  unsigned long __cil_tmp8 ;
11511  unsigned long __cil_tmp9 ;
11512  struct input_handle *__cil_tmp10 ;
11513  unsigned long __cil_tmp11 ;
11514  unsigned long __cil_tmp12 ;
11515  struct device *__cil_tmp13 ;
11516
11517  {
11518  {
11519#line 923
11520  __cil_tmp2 = (unsigned long )mousedev;
11521#line 923
11522  __cil_tmp3 = __cil_tmp2 + 232;
11523#line 923
11524  __cil_tmp4 = (struct device *)__cil_tmp3;
11525#line 923
11526  device_del(__cil_tmp4);
11527#line 924
11528  mousedev_cleanup(mousedev);
11529  }
11530  {
11531#line 925
11532  __cil_tmp5 = (unsigned long )mousedev;
11533#line 925
11534  __cil_tmp6 = __cil_tmp5 + 4;
11535#line 925
11536  __cil_tmp7 = *((int *)__cil_tmp6);
11537#line 925
11538  if (__cil_tmp7 != 31) {
11539    {
11540#line 926
11541    __cil_tmp8 = (unsigned long )mousedev;
11542#line 926
11543    __cil_tmp9 = __cil_tmp8 + 8;
11544#line 926
11545    __cil_tmp10 = (struct input_handle *)__cil_tmp9;
11546#line 926
11547    input_unregister_handle(__cil_tmp10);
11548    }
11549  } else {
11550
11551  }
11552  }
11553  {
11554#line 927
11555  __cil_tmp11 = (unsigned long )mousedev;
11556#line 927
11557  __cil_tmp12 = __cil_tmp11 + 232;
11558#line 927
11559  __cil_tmp13 = (struct device *)__cil_tmp12;
11560#line 927
11561  put_device(__cil_tmp13);
11562  }
11563#line 928
11564  return;
11565}
11566}
11567#line 930 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11568static int mixdev_add_device(struct mousedev *mousedev ) 
11569{ int retval ;
11570  unsigned long __cil_tmp3 ;
11571  unsigned long __cil_tmp4 ;
11572  struct mutex *__cil_tmp5 ;
11573  unsigned long __cil_tmp6 ;
11574  unsigned long __cil_tmp7 ;
11575  unsigned long __cil_tmp8 ;
11576  unsigned long __cil_tmp9 ;
11577  struct device *__cil_tmp10 ;
11578  unsigned long __cil_tmp11 ;
11579  unsigned long __cil_tmp12 ;
11580  struct list_head *__cil_tmp13 ;
11581  unsigned long __cil_tmp14 ;
11582  unsigned long __cil_tmp15 ;
11583  struct mutex *__cil_tmp16 ;
11584
11585  {
11586  {
11587#line 934
11588  __cil_tmp3 = (unsigned long )mousedev_mix;
11589#line 934
11590  __cil_tmp4 = __cil_tmp3 + 160;
11591#line 934
11592  __cil_tmp5 = (struct mutex *)__cil_tmp4;
11593#line 934
11594  retval = (int )mutex_lock_interruptible(__cil_tmp5);
11595  }
11596#line 935
11597  if (retval) {
11598#line 936
11599    return (retval);
11600  } else {
11601
11602  }
11603#line 938
11604  if (*((int *)mousedev_mix)) {
11605    {
11606#line 939
11607    retval = mousedev_open_device(mousedev);
11608    }
11609#line 940
11610    if (retval) {
11611#line 941
11612      goto out;
11613    } else {
11614
11615    }
11616#line 943
11617    __cil_tmp6 = (unsigned long )mousedev;
11618#line 943
11619    __cil_tmp7 = __cil_tmp6 + 1024;
11620#line 943
11621    *((int *)__cil_tmp7) = 1;
11622  } else {
11623
11624  }
11625  {
11626#line 946
11627  __cil_tmp8 = (unsigned long )mousedev;
11628#line 946
11629  __cil_tmp9 = __cil_tmp8 + 232;
11630#line 946
11631  __cil_tmp10 = (struct device *)__cil_tmp9;
11632#line 946
11633  get_device(__cil_tmp10);
11634#line 947
11635  __cil_tmp11 = (unsigned long )mousedev;
11636#line 947
11637  __cil_tmp12 = __cil_tmp11 + 1008;
11638#line 947
11639  __cil_tmp13 = (struct list_head *)__cil_tmp12;
11640#line 947
11641  list_add_tail(__cil_tmp13, & mousedev_mix_list);
11642  }
11643  out: 
11644  {
11645#line 950
11646  __cil_tmp14 = (unsigned long )mousedev_mix;
11647#line 950
11648  __cil_tmp15 = __cil_tmp14 + 160;
11649#line 950
11650  __cil_tmp16 = (struct mutex *)__cil_tmp15;
11651#line 950
11652  mutex_unlock(__cil_tmp16);
11653  }
11654#line 951
11655  return (retval);
11656}
11657}
11658#line 954 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11659static void mixdev_remove_device(struct mousedev *mousedev ) 
11660{ unsigned long __cil_tmp2 ;
11661  unsigned long __cil_tmp3 ;
11662  struct mutex *__cil_tmp4 ;
11663  unsigned long __cil_tmp5 ;
11664  unsigned long __cil_tmp6 ;
11665  unsigned long __cil_tmp7 ;
11666  unsigned long __cil_tmp8 ;
11667  unsigned long __cil_tmp9 ;
11668  unsigned long __cil_tmp10 ;
11669  struct list_head *__cil_tmp11 ;
11670  unsigned long __cil_tmp12 ;
11671  unsigned long __cil_tmp13 ;
11672  struct mutex *__cil_tmp14 ;
11673  unsigned long __cil_tmp15 ;
11674  unsigned long __cil_tmp16 ;
11675  struct device *__cil_tmp17 ;
11676
11677  {
11678  {
11679#line 956
11680  __cil_tmp2 = (unsigned long )mousedev_mix;
11681#line 956
11682  __cil_tmp3 = __cil_tmp2 + 160;
11683#line 956
11684  __cil_tmp4 = (struct mutex *)__cil_tmp3;
11685#line 956
11686  mutex_lock(__cil_tmp4);
11687  }
11688  {
11689#line 958
11690  __cil_tmp5 = (unsigned long )mousedev;
11691#line 958
11692  __cil_tmp6 = __cil_tmp5 + 1024;
11693#line 958
11694  if (*((int *)__cil_tmp6)) {
11695    {
11696#line 959
11697    __cil_tmp7 = (unsigned long )mousedev;
11698#line 959
11699    __cil_tmp8 = __cil_tmp7 + 1024;
11700#line 959
11701    *((int *)__cil_tmp8) = 0;
11702#line 960
11703    mousedev_close_device(mousedev);
11704    }
11705  } else {
11706
11707  }
11708  }
11709  {
11710#line 963
11711  __cil_tmp9 = (unsigned long )mousedev;
11712#line 963
11713  __cil_tmp10 = __cil_tmp9 + 1008;
11714#line 963
11715  __cil_tmp11 = (struct list_head *)__cil_tmp10;
11716#line 963
11717  list_del_init(__cil_tmp11);
11718#line 964
11719  __cil_tmp12 = (unsigned long )mousedev_mix;
11720#line 964
11721  __cil_tmp13 = __cil_tmp12 + 160;
11722#line 964
11723  __cil_tmp14 = (struct mutex *)__cil_tmp13;
11724#line 964
11725  mutex_unlock(__cil_tmp14);
11726#line 966
11727  __cil_tmp15 = (unsigned long )mousedev;
11728#line 966
11729  __cil_tmp16 = __cil_tmp15 + 232;
11730#line 966
11731  __cil_tmp17 = (struct device *)__cil_tmp16;
11732#line 966
11733  put_device(__cil_tmp17);
11734  }
11735#line 967
11736  return;
11737}
11738}
11739#line 969 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11740static int mousedev_connect(struct input_handler *handler , struct input_dev *dev ,
11741                            struct input_device_id    *id ) 
11742{ struct mousedev *mousedev ;
11743  int minor ;
11744  int error ;
11745  long tmp___7 ;
11746  long tmp___8 ;
11747  unsigned long __cil_tmp9 ;
11748  unsigned long __cil_tmp10 ;
11749  struct mousedev *__cil_tmp11 ;
11750  void    *__cil_tmp12 ;
11751  void    *__cil_tmp13 ;
11752
11753  {
11754#line 977
11755  minor = 0;
11756  {
11757#line 977
11758  while (1) {
11759    while_continue: /* CIL Label */ ;
11760#line 977
11761    if (minor < 32) {
11762
11763    } else {
11764#line 977
11765      goto while_break;
11766    }
11767    {
11768#line 978
11769    __cil_tmp9 = minor * 8UL;
11770#line 978
11771    __cil_tmp10 = (unsigned long )(mousedev_table) + __cil_tmp9;
11772#line 978
11773    __cil_tmp11 = *((struct mousedev **)__cil_tmp10);
11774#line 978
11775    if (! __cil_tmp11) {
11776#line 979
11777      goto while_break;
11778    } else {
11779
11780    }
11781    }
11782#line 977
11783    minor = minor + 1;
11784  }
11785  while_break: /* CIL Label */ ;
11786  }
11787#line 981
11788  if (minor == 32) {
11789    {
11790#line 982
11791    printk("<3>mousedev: no more free mousedev devices\n");
11792    }
11793#line 983
11794    return (-23);
11795  } else {
11796
11797  }
11798  {
11799#line 986
11800  mousedev = mousedev_create(dev, handler, minor);
11801#line 987
11802  __cil_tmp12 = (void    *)mousedev;
11803#line 987
11804  tmp___8 = (long )IS_ERR(__cil_tmp12);
11805  }
11806#line 987
11807  if (tmp___8) {
11808    {
11809#line 988
11810    __cil_tmp13 = (void    *)mousedev;
11811#line 988
11812    tmp___7 = (long )PTR_ERR(__cil_tmp13);
11813    }
11814#line 988
11815    return ((int )tmp___7);
11816  } else {
11817
11818  }
11819  {
11820#line 990
11821  error = mixdev_add_device(mousedev);
11822  }
11823#line 991
11824  if (error) {
11825    {
11826#line 992
11827    mousedev_destroy(mousedev);
11828    }
11829#line 993
11830    return (error);
11831  } else {
11832
11833  }
11834#line 996
11835  return (0);
11836}
11837}
11838#line 999 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11839static void mousedev_disconnect(struct input_handle *handle ) 
11840{ struct mousedev *mousedev ;
11841  void *__cil_tmp3 ;
11842
11843  {
11844  {
11845#line 1001
11846  __cil_tmp3 = *((void **)handle);
11847#line 1001
11848  mousedev = (struct mousedev *)__cil_tmp3;
11849#line 1003
11850  mixdev_remove_device(mousedev);
11851#line 1004
11852  mousedev_destroy(mousedev);
11853  }
11854#line 1005
11855  return;
11856}
11857}
11858#line 1007 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11859static struct input_device_id    mousedev_ids[5]  = {      {(kernel_ulong_t )112, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11860      (unsigned short)0, {(1UL << 1) | (1UL << 2)}, {0UL, 0UL, 0UL, 0UL, 1UL << 16,
11861                                                     0UL, 0UL, 0UL, 0UL, 0UL, 0UL,
11862                                                     0UL}, {1UL | (1UL << 1)}, {0UL},
11863      {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL}, 
11864        {(kernel_ulong_t )80, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11865      (unsigned short)0, {(1UL << 1) | (1UL << 2)}, {0UL, 0UL, 0UL, 0UL, 0UL, 0UL,
11866                                                     0UL, 0UL, 0UL, 0UL, 0UL, 0UL},
11867      {1UL << 8}, {0UL}, {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL}, 
11868        {(kernel_ulong_t )176, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11869      (unsigned short)0, {(1UL << 1) | (1UL << 3)}, {0UL, 0UL, 0UL, 0UL, 0UL, 1UL << 10,
11870                                                     0UL, 0UL, 0UL, 0UL, 0UL, 0UL},
11871      {0UL}, {1UL | (1UL << 1)}, {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL}, 
11872        {(kernel_ulong_t )176, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11873      (unsigned short)0, {(1UL << 1) | (1UL << 3)}, {0UL, 0UL, 0UL, 0UL, 0UL, 1UL << 5,
11874                                                     0UL, 0UL, 0UL, 0UL, 0UL, 0UL},
11875      {0UL}, {((1UL | (1UL << 1)) | (1UL << 24)) | (1UL << 28)}, {0UL}, {0UL}, {0UL},
11876      {0UL, 0UL}, {0UL}, 0UL}, 
11877        {(kernel_ulong_t )176, (unsigned short)0, (unsigned short)0, (unsigned short)0,
11878      (unsigned short)0, {(1UL << 1) | (1UL << 3)}, {0UL, 0UL, 0UL, 0UL, 1UL << 16,
11879                                                     0UL, 0UL, 0UL, 0UL, 0UL, 0UL,
11880                                                     0UL}, {0UL}, {1UL | (1UL << 1)},
11881      {0UL}, {0UL}, {0UL}, {0UL, 0UL}, {0UL}, 0UL}};
11882#line 1056
11883extern struct input_device_id    __mod_input_device_table  __attribute__((__unused__,
11884__alias__("mousedev_ids"))) ;
11885#line 1058 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11886static struct input_handler mousedev_handler  = 
11887#line 1058
11888     {(void *)0, & mousedev_event, (bool (*)(struct input_handle *handle , unsigned int type ,
11889                                           unsigned int code , int value ))0, (bool (*)(struct input_handler *handler ,
11890                                                                                        struct input_dev *dev ))0,
11891    & mousedev_connect, & mousedev_disconnect, (void (*)(struct input_handle *handle ))0,
11892    & mousedev_fops, 32, "mousedev", mousedev_ids, {(struct list_head *)0, (struct list_head *)0},
11893    {(struct list_head *)0, (struct list_head *)0}};
11894#line 1069 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11895static struct miscdevice psaux_mouse  = 
11896#line 1069
11897     {1, "psaux", & mousedev_fops, {(struct list_head *)0, (struct list_head *)0}, (struct device *)0,
11898    (struct device *)0, (char    *)0, (unsigned short)0};
11899#line 1072 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11900static int psaux_registered  ;
11901#line 1075
11902static int mousedev_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
11903#line 1075 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11904static int mousedev_init(void) 
11905{ int error ;
11906  long tmp___7 ;
11907  long tmp___8 ;
11908  void *__cil_tmp4 ;
11909  struct input_dev *__cil_tmp5 ;
11910  void    *__cil_tmp6 ;
11911  void    *__cil_tmp7 ;
11912
11913  {
11914  {
11915#line 1079
11916  __cil_tmp4 = (void *)0;
11917#line 1079
11918  __cil_tmp5 = (struct input_dev *)__cil_tmp4;
11919#line 1079
11920  mousedev_mix = mousedev_create(__cil_tmp5, & mousedev_handler, 31);
11921#line 1080
11922  __cil_tmp6 = (void    *)mousedev_mix;
11923#line 1080
11924  tmp___8 = (long )IS_ERR(__cil_tmp6);
11925  }
11926#line 1080
11927  if (tmp___8) {
11928    {
11929#line 1081
11930    __cil_tmp7 = (void    *)mousedev_mix;
11931#line 1081
11932    tmp___7 = (long )PTR_ERR(__cil_tmp7);
11933    }
11934#line 1081
11935    return ((int )tmp___7);
11936  } else {
11937
11938  }
11939  {
11940#line 1083
11941  error = (int )input_register_handler(& mousedev_handler);
11942  }
11943#line 1084
11944  if (error) {
11945    {
11946#line 1085
11947    mousedev_destroy(mousedev_mix);
11948    }
11949#line 1086
11950    return (error);
11951  } else {
11952
11953  }
11954  {
11955#line 1090
11956  error = misc_register(& psaux_mouse);
11957  }
11958#line 1091
11959  if (error) {
11960    {
11961#line 1092
11962    printk("<4>mousedev: could not register psaux device, error: %d\n", error);
11963    }
11964  } else {
11965#line 1095
11966    psaux_registered = 1;
11967  }
11968  {
11969#line 1098
11970  printk("<6>mousedev: PS/2 mouse device common for all mice\n");
11971  }
11972#line 1100
11973  return (0);
11974}
11975}
11976#line 1103
11977static void mousedev_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
11978#line 1103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
11979static void mousedev_exit(void) 
11980{ 
11981
11982  {
11983#line 1106
11984  if (psaux_registered) {
11985    {
11986#line 1107
11987    misc_deregister(& psaux_mouse);
11988    }
11989  } else {
11990
11991  }
11992  {
11993#line 1109
11994  input_unregister_handler(& mousedev_handler);
11995#line 1110
11996  mousedev_destroy(mousedev_mix);
11997  }
11998#line 1111
11999  return;
12000}
12001}
12002#line 1113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12003int init_module(void) 
12004{ int tmp___7 ;
12005
12006  {
12007  {
12008#line 1113
12009  tmp___7 = mousedev_init();
12010  }
12011#line 1113
12012  return (tmp___7);
12013}
12014}
12015#line 1114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12016void cleanup_module(void) 
12017{ 
12018
12019  {
12020  {
12021#line 1114
12022  mousedev_exit();
12023  }
12024#line 1114
12025  return;
12026}
12027}
12028#line 1132
12029void ldv_check_final_state(void) ;
12030#line 1135
12031extern void ldv_check_return_value(int res ) ;
12032#line 1138
12033extern void ldv_initialize(void) ;
12034#line 1141
12035extern int __VERIFIER_nondet_int(void) ;
12036#line 1144 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12037int LDV_IN_INTERRUPT  ;
12038#line 1184 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12039static ssize_t res_mousedev_read_21  ;
12040#line 1221 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12041static ssize_t res_mousedev_write_20  ;
12042#line 1283 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12043static int res_mousedev_open_16  ;
12044#line 1421 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12045static int res_mousedev_connect_32  ;
12046#line 1147 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12047void main(void) 
12048{ struct file *var_group1 ;
12049  char *var_mousedev_read_21_p1 ;
12050  size_t var_mousedev_read_21_p2 ;
12051  loff_t *var_mousedev_read_21_p3 ;
12052  char    *var_mousedev_write_20_p1 ;
12053  size_t var_mousedev_write_20_p2 ;
12054  loff_t *var_mousedev_write_20_p3 ;
12055  poll_table *var_mousedev_poll_22_p1 ;
12056  struct inode *var_group2 ;
12057  int var_mousedev_fasync_7_p0 ;
12058  int var_mousedev_fasync_7_p2 ;
12059  struct input_handle *var_group3 ;
12060  unsigned int var_mousedev_event_6_p1 ;
12061  unsigned int var_mousedev_event_6_p2 ;
12062  int var_mousedev_event_6_p3 ;
12063  struct input_handler *var_group4 ;
12064  struct input_dev *var_group5 ;
12065  struct input_device_id    *var_mousedev_connect_32_p2 ;
12066  int tmp___7 ;
12067  int ldv_s_mousedev_fops_file_operations ;
12068  int ldv_s_mousedev_handler_input_handler ;
12069  int tmp___8 ;
12070  int tmp___9 ;
12071  int __cil_tmp24 ;
12072  int __cil_tmp25 ;
12073  int __cil_tmp26 ;
12074  int __cil_tmp27 ;
12075
12076  {
12077  {
12078#line 1466
12079  LDV_IN_INTERRUPT = 1;
12080#line 1475
12081  ldv_initialize();
12082#line 1502
12083  tmp___7 = mousedev_init();
12084  }
12085#line 1502
12086  if (tmp___7) {
12087#line 1503
12088    goto ldv_final;
12089  } else {
12090
12091  }
12092#line 1508
12093  ldv_s_mousedev_fops_file_operations = 0;
12094#line 1511
12095  ldv_s_mousedev_handler_input_handler = 0;
12096  {
12097#line 1515
12098  while (1) {
12099    while_continue: /* CIL Label */ ;
12100    {
12101#line 1515
12102    tmp___9 = __VERIFIER_nondet_int();
12103    }
12104#line 1515
12105    if (tmp___9) {
12106
12107    } else {
12108      {
12109#line 1515
12110      __cil_tmp24 = ldv_s_mousedev_fops_file_operations == 0;
12111#line 1515
12112      if (! __cil_tmp24) {
12113
12114      } else {
12115        {
12116#line 1515
12117        __cil_tmp25 = ldv_s_mousedev_handler_input_handler == 0;
12118#line 1515
12119        if (! __cil_tmp25) {
12120
12121        } else {
12122#line 1515
12123          goto while_break;
12124        }
12125        }
12126      }
12127      }
12128    }
12129    {
12130#line 1520
12131    tmp___8 = __VERIFIER_nondet_int();
12132    }
12133#line 1522
12134    if (tmp___8 == 0) {
12135#line 1522
12136      goto case_0;
12137    } else
12138#line 1566
12139    if (tmp___8 == 1) {
12140#line 1566
12141      goto case_1;
12142    } else
12143#line 1612
12144    if (tmp___8 == 2) {
12145#line 1612
12146      goto case_2;
12147    } else
12148#line 1658
12149    if (tmp___8 == 3) {
12150#line 1658
12151      goto case_3;
12152    } else
12153#line 1701
12154    if (tmp___8 == 4) {
12155#line 1701
12156      goto case_4;
12157    } else
12158#line 1744
12159    if (tmp___8 == 5) {
12160#line 1744
12161      goto case_5;
12162    } else
12163#line 1787
12164    if (tmp___8 == 6) {
12165#line 1787
12166      goto case_6;
12167    } else
12168#line 1833
12169    if (tmp___8 == 7) {
12170#line 1833
12171      goto case_7;
12172    } else
12173#line 1876
12174    if (tmp___8 == 8) {
12175#line 1876
12176      goto case_8;
12177    } else {
12178      {
12179#line 1919
12180      goto switch_default;
12181#line 1520
12182      if (0) {
12183        case_0: /* CIL Label */ 
12184#line 1525
12185        if (ldv_s_mousedev_fops_file_operations == 0) {
12186          {
12187#line 1547
12188          res_mousedev_open_16 = mousedev_open(var_group2, var_group1);
12189#line 1548
12190          ldv_check_return_value(res_mousedev_open_16);
12191          }
12192#line 1549
12193          if (res_mousedev_open_16) {
12194#line 1550
12195            goto ldv_module_exit;
12196          } else {
12197
12198          }
12199#line 1559
12200          ldv_s_mousedev_fops_file_operations = ldv_s_mousedev_fops_file_operations + 1;
12201        } else {
12202
12203        }
12204#line 1565
12205        goto switch_break;
12206        case_1: /* CIL Label */ 
12207#line 1569
12208        if (ldv_s_mousedev_fops_file_operations == 1) {
12209          {
12210#line 1593
12211          res_mousedev_read_21 = mousedev_read(var_group1, var_mousedev_read_21_p1,
12212                                               var_mousedev_read_21_p2, var_mousedev_read_21_p3);
12213#line 1594
12214          __cil_tmp26 = (int )res_mousedev_read_21;
12215#line 1594
12216          ldv_check_return_value(__cil_tmp26);
12217          }
12218#line 1595
12219          if (res_mousedev_read_21 < 0L) {
12220#line 1596
12221            goto ldv_module_exit;
12222          } else {
12223
12224          }
12225#line 1605
12226          ldv_s_mousedev_fops_file_operations = ldv_s_mousedev_fops_file_operations + 1;
12227        } else {
12228
12229        }
12230#line 1611
12231        goto switch_break;
12232        case_2: /* CIL Label */ 
12233#line 1615
12234        if (ldv_s_mousedev_fops_file_operations == 2) {
12235          {
12236#line 1639
12237          res_mousedev_write_20 = mousedev_write(var_group1, var_mousedev_write_20_p1,
12238                                                 var_mousedev_write_20_p2, var_mousedev_write_20_p3);
12239#line 1640
12240          __cil_tmp27 = (int )res_mousedev_write_20;
12241#line 1640
12242          ldv_check_return_value(__cil_tmp27);
12243          }
12244#line 1641
12245          if (res_mousedev_write_20 < 0L) {
12246#line 1642
12247            goto ldv_module_exit;
12248          } else {
12249
12250          }
12251#line 1651
12252          ldv_s_mousedev_fops_file_operations = ldv_s_mousedev_fops_file_operations + 1;
12253        } else {
12254
12255        }
12256#line 1657
12257        goto switch_break;
12258        case_3: /* CIL Label */ 
12259#line 1661
12260        if (ldv_s_mousedev_fops_file_operations == 3) {
12261          {
12262#line 1683
12263          mousedev_release(var_group2, var_group1);
12264#line 1694
12265          ldv_s_mousedev_fops_file_operations = 0;
12266          }
12267        } else {
12268
12269        }
12270#line 1700
12271        goto switch_break;
12272        case_4: /* CIL Label */ 
12273        {
12274#line 1728
12275        mousedev_poll(var_group1, var_mousedev_poll_22_p1);
12276        }
12277#line 1743
12278        goto switch_break;
12279        case_5: /* CIL Label */ 
12280        {
12281#line 1769
12282        mousedev_fasync(var_mousedev_fasync_7_p0, var_group1, var_mousedev_fasync_7_p2);
12283        }
12284#line 1786
12285        goto switch_break;
12286        case_6: /* CIL Label */ 
12287#line 1790
12288        if (ldv_s_mousedev_handler_input_handler == 0) {
12289          {
12290#line 1814
12291          res_mousedev_connect_32 = mousedev_connect(var_group4, var_group5, var_mousedev_connect_32_p2);
12292#line 1815
12293          ldv_check_return_value(res_mousedev_connect_32);
12294          }
12295#line 1816
12296          if (res_mousedev_connect_32) {
12297#line 1817
12298            goto ldv_module_exit;
12299          } else {
12300
12301          }
12302#line 1826
12303          ldv_s_mousedev_handler_input_handler = ldv_s_mousedev_handler_input_handler + 1;
12304        } else {
12305
12306        }
12307#line 1832
12308        goto switch_break;
12309        case_7: /* CIL Label */ 
12310#line 1836
12311        if (ldv_s_mousedev_handler_input_handler == 1) {
12312          {
12313#line 1860
12314          mousedev_disconnect(var_group3);
12315#line 1869
12316          ldv_s_mousedev_handler_input_handler = 0;
12317          }
12318        } else {
12319
12320        }
12321#line 1875
12322        goto switch_break;
12323        case_8: /* CIL Label */ 
12324        {
12325#line 1901
12326        mousedev_event(var_group3, var_mousedev_event_6_p1, var_mousedev_event_6_p2,
12327                       var_mousedev_event_6_p3);
12328        }
12329#line 1918
12330        goto switch_break;
12331        switch_default: /* CIL Label */ 
12332#line 1919
12333        goto switch_break;
12334      } else {
12335        switch_break: /* CIL Label */ ;
12336      }
12337      }
12338    }
12339  }
12340  while_break: /* CIL Label */ ;
12341  }
12342  ldv_module_exit: 
12343  {
12344#line 1954
12345  mousedev_exit();
12346  }
12347  ldv_final: 
12348  {
12349#line 1957
12350  ldv_check_final_state();
12351  }
12352#line 1960
12353  return;
12354}
12355}
12356#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
12357void ldv_blast_assert(void) 
12358{ 
12359
12360  {
12361  ERROR: 
12362#line 6
12363  goto ERROR;
12364}
12365}
12366#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
12367extern int __VERIFIER_nondet_int(void) ;
12368#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12369int ldv_mutex  =    1;
12370#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12371int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
12372{ int nondetermined ;
12373
12374  {
12375#line 29
12376  if (ldv_mutex == 1) {
12377
12378  } else {
12379    {
12380#line 29
12381    ldv_blast_assert();
12382    }
12383  }
12384  {
12385#line 32
12386  nondetermined = __VERIFIER_nondet_int();
12387  }
12388#line 35
12389  if (nondetermined) {
12390#line 38
12391    ldv_mutex = 2;
12392#line 40
12393    return (0);
12394  } else {
12395#line 45
12396    return (-4);
12397  }
12398}
12399}
12400#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12401int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
12402{ int nondetermined ;
12403
12404  {
12405#line 57
12406  if (ldv_mutex == 1) {
12407
12408  } else {
12409    {
12410#line 57
12411    ldv_blast_assert();
12412    }
12413  }
12414  {
12415#line 60
12416  nondetermined = __VERIFIER_nondet_int();
12417  }
12418#line 63
12419  if (nondetermined) {
12420#line 66
12421    ldv_mutex = 2;
12422#line 68
12423    return (0);
12424  } else {
12425#line 73
12426    return (-4);
12427  }
12428}
12429}
12430#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12431int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
12432{ int atomic_value_after_dec ;
12433
12434  {
12435#line 83
12436  if (ldv_mutex == 1) {
12437
12438  } else {
12439    {
12440#line 83
12441    ldv_blast_assert();
12442    }
12443  }
12444  {
12445#line 86
12446  atomic_value_after_dec = __VERIFIER_nondet_int();
12447  }
12448#line 89
12449  if (atomic_value_after_dec == 0) {
12450#line 92
12451    ldv_mutex = 2;
12452#line 94
12453    return (1);
12454  } else {
12455
12456  }
12457#line 98
12458  return (0);
12459}
12460}
12461#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12462void mutex_lock(struct mutex *lock ) 
12463{ 
12464
12465  {
12466#line 108
12467  if (ldv_mutex == 1) {
12468
12469  } else {
12470    {
12471#line 108
12472    ldv_blast_assert();
12473    }
12474  }
12475#line 110
12476  ldv_mutex = 2;
12477#line 111
12478  return;
12479}
12480}
12481#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12482int mutex_trylock(struct mutex *lock ) 
12483{ int nondetermined ;
12484
12485  {
12486#line 121
12487  if (ldv_mutex == 1) {
12488
12489  } else {
12490    {
12491#line 121
12492    ldv_blast_assert();
12493    }
12494  }
12495  {
12496#line 124
12497  nondetermined = __VERIFIER_nondet_int();
12498  }
12499#line 127
12500  if (nondetermined) {
12501#line 130
12502    ldv_mutex = 2;
12503#line 132
12504    return (1);
12505  } else {
12506#line 137
12507    return (0);
12508  }
12509}
12510}
12511#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12512void mutex_unlock(struct mutex *lock ) 
12513{ 
12514
12515  {
12516#line 147
12517  if (ldv_mutex == 2) {
12518
12519  } else {
12520    {
12521#line 147
12522    ldv_blast_assert();
12523    }
12524  }
12525#line 149
12526  ldv_mutex = 1;
12527#line 150
12528  return;
12529}
12530}
12531#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
12532void ldv_check_final_state(void) 
12533{ 
12534
12535  {
12536#line 156
12537  if (ldv_mutex == 1) {
12538
12539  } else {
12540    {
12541#line 156
12542    ldv_blast_assert();
12543    }
12544  }
12545#line 157
12546  return;
12547}
12548}
12549#line 1969 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/4489/dscv_tempdir/dscv/ri/32_1/drivers/input/mousedev.c.common.c"
12550long s__builtin_expect(long val , long res ) 
12551{ 
12552
12553  {
12554#line 1970
12555  return (val);
12556}
12557}