Showing error 1279

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/43_1a_cilled_safe_ok_nondet_linux-43_1a-drivers--usb--serial--mos7840.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 21114
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

    1/* Generated by CIL v. 1.3.7 */
    2/* print_CIL_Input is true */
    3
    4#line 19 "include/asm-generic/int-ll64.h"
    5typedef signed char __s8;
    6#line 20 "include/asm-generic/int-ll64.h"
    7typedef unsigned char __u8;
    8#line 22 "include/asm-generic/int-ll64.h"
    9typedef short __s16;
   10#line 23 "include/asm-generic/int-ll64.h"
   11typedef unsigned short __u16;
   12#line 25 "include/asm-generic/int-ll64.h"
   13typedef int __s32;
   14#line 26 "include/asm-generic/int-ll64.h"
   15typedef unsigned int __u32;
   16#line 29 "include/asm-generic/int-ll64.h"
   17typedef long long __s64;
   18#line 30 "include/asm-generic/int-ll64.h"
   19typedef unsigned long long __u64;
   20#line 43 "include/asm-generic/int-ll64.h"
   21typedef unsigned char u8;
   22#line 45 "include/asm-generic/int-ll64.h"
   23typedef short s16;
   24#line 46 "include/asm-generic/int-ll64.h"
   25typedef unsigned short u16;
   26#line 48 "include/asm-generic/int-ll64.h"
   27typedef int s32;
   28#line 49 "include/asm-generic/int-ll64.h"
   29typedef unsigned int u32;
   30#line 51 "include/asm-generic/int-ll64.h"
   31typedef long long s64;
   32#line 52 "include/asm-generic/int-ll64.h"
   33typedef unsigned long long u64;
   34#line 14 "include/asm-generic/posix_types.h"
   35typedef long __kernel_long_t;
   36#line 15 "include/asm-generic/posix_types.h"
   37typedef unsigned long __kernel_ulong_t;
   38#line 31 "include/asm-generic/posix_types.h"
   39typedef int __kernel_pid_t;
   40#line 52 "include/asm-generic/posix_types.h"
   41typedef unsigned int __kernel_uid32_t;
   42#line 53 "include/asm-generic/posix_types.h"
   43typedef unsigned int __kernel_gid32_t;
   44#line 75 "include/asm-generic/posix_types.h"
   45typedef __kernel_ulong_t __kernel_size_t;
   46#line 76 "include/asm-generic/posix_types.h"
   47typedef __kernel_long_t __kernel_ssize_t;
   48#line 91 "include/asm-generic/posix_types.h"
   49typedef long long __kernel_loff_t;
   50#line 92 "include/asm-generic/posix_types.h"
   51typedef __kernel_long_t __kernel_time_t;
   52#line 93 "include/asm-generic/posix_types.h"
   53typedef __kernel_long_t __kernel_clock_t;
   54#line 94 "include/asm-generic/posix_types.h"
   55typedef int __kernel_timer_t;
   56#line 95 "include/asm-generic/posix_types.h"
   57typedef int __kernel_clockid_t;
   58#line 21 "include/linux/types.h"
   59typedef __u32 __kernel_dev_t;
   60#line 24 "include/linux/types.h"
   61typedef __kernel_dev_t dev_t;
   62#line 27 "include/linux/types.h"
   63typedef unsigned short umode_t;
   64#line 30 "include/linux/types.h"
   65typedef __kernel_pid_t pid_t;
   66#line 35 "include/linux/types.h"
   67typedef __kernel_clockid_t clockid_t;
   68#line 38 "include/linux/types.h"
   69typedef _Bool bool;
   70#line 40 "include/linux/types.h"
   71typedef __kernel_uid32_t uid_t;
   72#line 41 "include/linux/types.h"
   73typedef __kernel_gid32_t gid_t;
   74#line 54 "include/linux/types.h"
   75typedef __kernel_loff_t loff_t;
   76#line 63 "include/linux/types.h"
   77typedef __kernel_size_t size_t;
   78#line 68 "include/linux/types.h"
   79typedef __kernel_ssize_t ssize_t;
   80#line 78 "include/linux/types.h"
   81typedef __kernel_time_t time_t;
   82#line 111 "include/linux/types.h"
   83typedef __s32 int32_t;
   84#line 117 "include/linux/types.h"
   85typedef __u32 uint32_t;
   86#line 142 "include/linux/types.h"
   87typedef unsigned long sector_t;
   88#line 143 "include/linux/types.h"
   89typedef unsigned long blkcnt_t;
   90#line 155 "include/linux/types.h"
   91typedef u64 dma_addr_t;
   92#line 178 "include/linux/types.h"
   93typedef __u16 __le16;
   94#line 180 "include/linux/types.h"
   95typedef __u32 __le32;
   96#line 202 "include/linux/types.h"
   97typedef unsigned int gfp_t;
   98#line 203 "include/linux/types.h"
   99typedef unsigned int fmode_t;
  100#line 221 "include/linux/types.h"
  101struct __anonstruct_atomic_t_6 {
  102   int counter ;
  103};
  104#line 221 "include/linux/types.h"
  105typedef struct __anonstruct_atomic_t_6 atomic_t;
  106#line 226 "include/linux/types.h"
  107struct __anonstruct_atomic64_t_7 {
  108   long counter ;
  109};
  110#line 226 "include/linux/types.h"
  111typedef struct __anonstruct_atomic64_t_7 atomic64_t;
  112#line 227 "include/linux/types.h"
  113struct list_head {
  114   struct list_head *next ;
  115   struct list_head *prev ;
  116};
  117#line 232
  118struct hlist_node;
  119#line 232 "include/linux/types.h"
  120struct hlist_head {
  121   struct hlist_node *first ;
  122};
  123#line 236 "include/linux/types.h"
  124struct hlist_node {
  125   struct hlist_node *next ;
  126   struct hlist_node **pprev ;
  127};
  128#line 247 "include/linux/types.h"
  129struct rcu_head {
  130   struct rcu_head *next ;
  131   void (*func)(struct rcu_head * ) ;
  132};
  133#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
  134struct module;
  135#line 55
  136struct module;
  137#line 146 "include/linux/init.h"
  138typedef void (*ctor_fn_t)(void);
  139#line 46 "include/linux/dynamic_debug.h"
  140struct device;
  141#line 46
  142struct device;
  143#line 57
  144struct completion;
  145#line 57
  146struct completion;
  147#line 58
  148struct pt_regs;
  149#line 58
  150struct pt_regs;
  151#line 348 "include/linux/kernel.h"
  152struct pid;
  153#line 348
  154struct pid;
  155#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
  156struct timespec;
  157#line 112
  158struct timespec;
  159#line 113
  160struct compat_timespec;
  161#line 113
  162struct compat_timespec;
  163#line 114 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
  164struct __anonstruct_futex_9 {
  165   u32 *uaddr ;
  166   u32 val ;
  167   u32 flags ;
  168   u32 bitset ;
  169   u64 time ;
  170   u32 *uaddr2 ;
  171};
  172#line 114 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
  173struct __anonstruct_nanosleep_10 {
  174   clockid_t clockid ;
  175   struct timespec *rmtp ;
  176   struct compat_timespec *compat_rmtp ;
  177   u64 expires ;
  178};
  179#line 114
  180struct pollfd;
  181#line 114 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
  182struct __anonstruct_poll_11 {
  183   struct pollfd *ufds ;
  184   int nfds ;
  185   int has_timeout ;
  186   unsigned long tv_sec ;
  187   unsigned long tv_nsec ;
  188};
  189#line 114 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
  190union __anonunion_ldv_2046_8 {
  191   struct __anonstruct_futex_9 futex ;
  192   struct __anonstruct_nanosleep_10 nanosleep ;
  193   struct __anonstruct_poll_11 poll ;
  194};
  195#line 114 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
  196struct restart_block {
  197   long (*fn)(struct restart_block * ) ;
  198   union __anonunion_ldv_2046_8 ldv_2046 ;
  199};
  200#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
  201struct page;
  202#line 58
  203struct page;
  204#line 26 "include/asm-generic/getorder.h"
  205struct task_struct;
  206#line 26
  207struct task_struct;
  208#line 27
  209struct exec_domain;
  210#line 27
  211struct exec_domain;
  212#line 28
  213struct mm_struct;
  214#line 28
  215struct mm_struct;
  216#line 268 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/segment.h"
  217struct pt_regs {
  218   unsigned long r15 ;
  219   unsigned long r14 ;
  220   unsigned long r13 ;
  221   unsigned long r12 ;
  222   unsigned long bp ;
  223   unsigned long bx ;
  224   unsigned long r11 ;
  225   unsigned long r10 ;
  226   unsigned long r9 ;
  227   unsigned long r8 ;
  228   unsigned long ax ;
  229   unsigned long cx ;
  230   unsigned long dx ;
  231   unsigned long si ;
  232   unsigned long di ;
  233   unsigned long orig_ax ;
  234   unsigned long ip ;
  235   unsigned long cs ;
  236   unsigned long flags ;
  237   unsigned long sp ;
  238   unsigned long ss ;
  239};
  240#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  241struct __anonstruct_ldv_2180_13 {
  242   unsigned int a ;
  243   unsigned int b ;
  244};
  245#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  246struct __anonstruct_ldv_2195_14 {
  247   u16 limit0 ;
  248   u16 base0 ;
  249   unsigned char base1 ;
  250   unsigned char type : 4 ;
  251   unsigned char s : 1 ;
  252   unsigned char dpl : 2 ;
  253   unsigned char p : 1 ;
  254   unsigned char limit : 4 ;
  255   unsigned char avl : 1 ;
  256   unsigned char l : 1 ;
  257   unsigned char d : 1 ;
  258   unsigned char g : 1 ;
  259   unsigned char base2 ;
  260};
  261#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  262union __anonunion_ldv_2196_12 {
  263   struct __anonstruct_ldv_2180_13 ldv_2180 ;
  264   struct __anonstruct_ldv_2195_14 ldv_2195 ;
  265};
  266#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  267struct desc_struct {
  268   union __anonunion_ldv_2196_12 ldv_2196 ;
  269};
  270#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
  271typedef unsigned long pgdval_t;
  272#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
  273typedef unsigned long pgprotval_t;
  274#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
  275struct pgprot {
  276   pgprotval_t pgprot ;
  277};
  278#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  279typedef struct pgprot pgprot_t;
  280#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  281struct __anonstruct_pgd_t_16 {
  282   pgdval_t pgd ;
  283};
  284#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  285typedef struct __anonstruct_pgd_t_16 pgd_t;
  286#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
  287typedef struct page *pgtable_t;
  288#line 290
  289struct file;
  290#line 290
  291struct file;
  292#line 305
  293struct seq_file;
  294#line 305
  295struct seq_file;
  296#line 337
  297struct thread_struct;
  298#line 337
  299struct thread_struct;
  300#line 339
  301struct cpumask;
  302#line 339
  303struct cpumask;
  304#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
  305struct arch_spinlock;
  306#line 327
  307struct arch_spinlock;
  308#line 300 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  309struct kernel_vm86_regs {
  310   struct pt_regs pt ;
  311   unsigned short es ;
  312   unsigned short __esh ;
  313   unsigned short ds ;
  314   unsigned short __dsh ;
  315   unsigned short fs ;
  316   unsigned short __fsh ;
  317   unsigned short gs ;
  318   unsigned short __gsh ;
  319};
  320#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
  321union __anonunion_ldv_2824_19 {
  322   struct pt_regs *regs ;
  323   struct kernel_vm86_regs *vm86 ;
  324};
  325#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
  326struct math_emu_info {
  327   long ___orig_eip ;
  328   union __anonunion_ldv_2824_19 ldv_2824 ;
  329};
  330#line 306 "include/linux/bitmap.h"
  331struct bug_entry {
  332   int bug_addr_disp ;
  333   int file_disp ;
  334   unsigned short line ;
  335   unsigned short flags ;
  336};
  337#line 89 "include/linux/bug.h"
  338struct cpumask {
  339   unsigned long bits[64U] ;
  340};
  341#line 14 "include/linux/cpumask.h"
  342typedef struct cpumask cpumask_t;
  343#line 637 "include/linux/cpumask.h"
  344typedef struct cpumask *cpumask_var_t;
  345#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
  346struct static_key;
  347#line 234
  348struct static_key;
  349#line 91 "include/linux/personality.h"
  350struct map_segment;
  351#line 91 "include/linux/personality.h"
  352struct exec_domain {
  353   char const   *name ;
  354   void (*handler)(int  , struct pt_regs * ) ;
  355   unsigned char pers_low ;
  356   unsigned char pers_high ;
  357   unsigned long *signal_map ;
  358   unsigned long *signal_invmap ;
  359   struct map_segment *err_map ;
  360   struct map_segment *socktype_map ;
  361   struct map_segment *sockopt_map ;
  362   struct map_segment *af_map ;
  363   struct module *module ;
  364   struct exec_domain *next ;
  365};
  366#line 287 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  367struct i387_fsave_struct {
  368   u32 cwd ;
  369   u32 swd ;
  370   u32 twd ;
  371   u32 fip ;
  372   u32 fcs ;
  373   u32 foo ;
  374   u32 fos ;
  375   u32 st_space[20U] ;
  376   u32 status ;
  377};
  378#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  379struct __anonstruct_ldv_5180_24 {
  380   u64 rip ;
  381   u64 rdp ;
  382};
  383#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  384struct __anonstruct_ldv_5186_25 {
  385   u32 fip ;
  386   u32 fcs ;
  387   u32 foo ;
  388   u32 fos ;
  389};
  390#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  391union __anonunion_ldv_5187_23 {
  392   struct __anonstruct_ldv_5180_24 ldv_5180 ;
  393   struct __anonstruct_ldv_5186_25 ldv_5186 ;
  394};
  395#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  396union __anonunion_ldv_5196_26 {
  397   u32 padding1[12U] ;
  398   u32 sw_reserved[12U] ;
  399};
  400#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  401struct i387_fxsave_struct {
  402   u16 cwd ;
  403   u16 swd ;
  404   u16 twd ;
  405   u16 fop ;
  406   union __anonunion_ldv_5187_23 ldv_5187 ;
  407   u32 mxcsr ;
  408   u32 mxcsr_mask ;
  409   u32 st_space[32U] ;
  410   u32 xmm_space[64U] ;
  411   u32 padding[12U] ;
  412   union __anonunion_ldv_5196_26 ldv_5196 ;
  413};
  414#line 339 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  415struct i387_soft_struct {
  416   u32 cwd ;
  417   u32 swd ;
  418   u32 twd ;
  419   u32 fip ;
  420   u32 fcs ;
  421   u32 foo ;
  422   u32 fos ;
  423   u32 st_space[20U] ;
  424   u8 ftop ;
  425   u8 changed ;
  426   u8 lookahead ;
  427   u8 no_update ;
  428   u8 rm ;
  429   u8 alimit ;
  430   struct math_emu_info *info ;
  431   u32 entry_eip ;
  432};
  433#line 360 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  434struct ymmh_struct {
  435   u32 ymmh_space[64U] ;
  436};
  437#line 365 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  438struct xsave_hdr_struct {
  439   u64 xstate_bv ;
  440   u64 reserved1[2U] ;
  441   u64 reserved2[5U] ;
  442};
  443#line 371 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  444struct xsave_struct {
  445   struct i387_fxsave_struct i387 ;
  446   struct xsave_hdr_struct xsave_hdr ;
  447   struct ymmh_struct ymmh ;
  448};
  449#line 377 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  450union thread_xstate {
  451   struct i387_fsave_struct fsave ;
  452   struct i387_fxsave_struct fxsave ;
  453   struct i387_soft_struct soft ;
  454   struct xsave_struct xsave ;
  455};
  456#line 385 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  457struct fpu {
  458   unsigned int last_cpu ;
  459   unsigned int has_fpu ;
  460   union thread_xstate *state ;
  461};
  462#line 433
  463struct kmem_cache;
  464#line 434
  465struct perf_event;
  466#line 434
  467struct perf_event;
  468#line 435 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  469struct thread_struct {
  470   struct desc_struct tls_array[3U] ;
  471   unsigned long sp0 ;
  472   unsigned long sp ;
  473   unsigned long usersp ;
  474   unsigned short es ;
  475   unsigned short ds ;
  476   unsigned short fsindex ;
  477   unsigned short gsindex ;
  478   unsigned long fs ;
  479   unsigned long gs ;
  480   struct perf_event *ptrace_bps[4U] ;
  481   unsigned long debugreg6 ;
  482   unsigned long ptrace_dr7 ;
  483   unsigned long cr2 ;
  484   unsigned long trap_nr ;
  485   unsigned long error_code ;
  486   struct fpu fpu ;
  487   unsigned long *io_bitmap_ptr ;
  488   unsigned long iopl ;
  489   unsigned int io_bitmap_max ;
  490};
  491#line 571 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  492struct __anonstruct_mm_segment_t_28 {
  493   unsigned long seg ;
  494};
  495#line 571 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  496typedef struct __anonstruct_mm_segment_t_28 mm_segment_t;
  497#line 23 "include/asm-generic/atomic-long.h"
  498typedef atomic64_t atomic_long_t;
  499#line 131 "include/asm-generic/atomic-long.h"
  500struct thread_info {
  501   struct task_struct *task ;
  502   struct exec_domain *exec_domain ;
  503   __u32 flags ;
  504   __u32 status ;
  505   __u32 cpu ;
  506   int preempt_count ;
  507   mm_segment_t addr_limit ;
  508   struct restart_block restart_block ;
  509   void *sysenter_return ;
  510   unsigned char sig_on_uaccess_error : 1 ;
  511   unsigned char uaccess_err : 1 ;
  512};
  513#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  514typedef u16 __ticket_t;
  515#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  516typedef u32 __ticketpair_t;
  517#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  518struct __raw_tickets {
  519   __ticket_t head ;
  520   __ticket_t tail ;
  521};
  522#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  523union __anonunion_ldv_5907_29 {
  524   __ticketpair_t head_tail ;
  525   struct __raw_tickets tickets ;
  526};
  527#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  528struct arch_spinlock {
  529   union __anonunion_ldv_5907_29 ldv_5907 ;
  530};
  531#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  532typedef struct arch_spinlock arch_spinlock_t;
  533#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  534struct __anonstruct_ldv_5914_31 {
  535   u32 read ;
  536   s32 write ;
  537};
  538#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  539union __anonunion_arch_rwlock_t_30 {
  540   s64 lock ;
  541   struct __anonstruct_ldv_5914_31 ldv_5914 ;
  542};
  543#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
  544typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
  545#line 34
  546struct lockdep_map;
  547#line 34
  548struct lockdep_map;
  549#line 55 "include/linux/debug_locks.h"
  550struct stack_trace {
  551   unsigned int nr_entries ;
  552   unsigned int max_entries ;
  553   unsigned long *entries ;
  554   int skip ;
  555};
  556#line 26 "include/linux/stacktrace.h"
  557struct lockdep_subclass_key {
  558   char __one_byte ;
  559};
  560#line 53 "include/linux/lockdep.h"
  561struct lock_class_key {
  562   struct lockdep_subclass_key subkeys[8U] ;
  563};
  564#line 59 "include/linux/lockdep.h"
  565struct lock_class {
  566   struct list_head hash_entry ;
  567   struct list_head lock_entry ;
  568   struct lockdep_subclass_key *key ;
  569   unsigned int subclass ;
  570   unsigned int dep_gen_id ;
  571   unsigned long usage_mask ;
  572   struct stack_trace usage_traces[13U] ;
  573   struct list_head locks_after ;
  574   struct list_head locks_before ;
  575   unsigned int version ;
  576   unsigned long ops ;
  577   char const   *name ;
  578   int name_version ;
  579   unsigned long contention_point[4U] ;
  580   unsigned long contending_point[4U] ;
  581};
  582#line 144 "include/linux/lockdep.h"
  583struct lockdep_map {
  584   struct lock_class_key *key ;
  585   struct lock_class *class_cache[2U] ;
  586   char const   *name ;
  587   int cpu ;
  588   unsigned long ip ;
  589};
  590#line 187 "include/linux/lockdep.h"
  591struct held_lock {
  592   u64 prev_chain_key ;
  593   unsigned long acquire_ip ;
  594   struct lockdep_map *instance ;
  595   struct lockdep_map *nest_lock ;
  596   u64 waittime_stamp ;
  597   u64 holdtime_stamp ;
  598   unsigned short class_idx : 13 ;
  599   unsigned char irq_context : 2 ;
  600   unsigned char trylock : 1 ;
  601   unsigned char read : 2 ;
  602   unsigned char check : 2 ;
  603   unsigned char hardirqs_off : 1 ;
  604   unsigned short references : 11 ;
  605};
  606#line 556 "include/linux/lockdep.h"
  607struct raw_spinlock {
  608   arch_spinlock_t raw_lock ;
  609   unsigned int magic ;
  610   unsigned int owner_cpu ;
  611   void *owner ;
  612   struct lockdep_map dep_map ;
  613};
  614#line 32 "include/linux/spinlock_types.h"
  615typedef struct raw_spinlock raw_spinlock_t;
  616#line 33 "include/linux/spinlock_types.h"
  617struct __anonstruct_ldv_6122_33 {
  618   u8 __padding[24U] ;
  619   struct lockdep_map dep_map ;
  620};
  621#line 33 "include/linux/spinlock_types.h"
  622union __anonunion_ldv_6123_32 {
  623   struct raw_spinlock rlock ;
  624   struct __anonstruct_ldv_6122_33 ldv_6122 ;
  625};
  626#line 33 "include/linux/spinlock_types.h"
  627struct spinlock {
  628   union __anonunion_ldv_6123_32 ldv_6123 ;
  629};
  630#line 76 "include/linux/spinlock_types.h"
  631typedef struct spinlock spinlock_t;
  632#line 23 "include/linux/rwlock_types.h"
  633struct __anonstruct_rwlock_t_34 {
  634   arch_rwlock_t raw_lock ;
  635   unsigned int magic ;
  636   unsigned int owner_cpu ;
  637   void *owner ;
  638   struct lockdep_map dep_map ;
  639};
  640#line 23 "include/linux/rwlock_types.h"
  641typedef struct __anonstruct_rwlock_t_34 rwlock_t;
  642#line 110 "include/linux/seqlock.h"
  643struct seqcount {
  644   unsigned int sequence ;
  645};
  646#line 121 "include/linux/seqlock.h"
  647typedef struct seqcount seqcount_t;
  648#line 254 "include/linux/seqlock.h"
  649struct timespec {
  650   __kernel_time_t tv_sec ;
  651   long tv_nsec ;
  652};
  653#line 286 "include/linux/time.h"
  654struct kstat {
  655   u64 ino ;
  656   dev_t dev ;
  657   umode_t mode ;
  658   unsigned int nlink ;
  659   uid_t uid ;
  660   gid_t gid ;
  661   dev_t rdev ;
  662   loff_t size ;
  663   struct timespec atime ;
  664   struct timespec mtime ;
  665   struct timespec ctime ;
  666   unsigned long blksize ;
  667   unsigned long long blocks ;
  668};
  669#line 27 "include/linux/wait.h"
  670struct __wait_queue;
  671#line 27 "include/linux/wait.h"
  672typedef struct __wait_queue wait_queue_t;
  673#line 30 "include/linux/wait.h"
  674struct __wait_queue {
  675   unsigned int flags ;
  676   void *private ;
  677   int (*func)(wait_queue_t * , unsigned int  , int  , void * ) ;
  678   struct list_head task_list ;
  679};
  680#line 48 "include/linux/wait.h"
  681struct __wait_queue_head {
  682   spinlock_t lock ;
  683   struct list_head task_list ;
  684};
  685#line 53 "include/linux/wait.h"
  686typedef struct __wait_queue_head wait_queue_head_t;
  687#line 98 "include/linux/nodemask.h"
  688struct __anonstruct_nodemask_t_36 {
  689   unsigned long bits[16U] ;
  690};
  691#line 98 "include/linux/nodemask.h"
  692typedef struct __anonstruct_nodemask_t_36 nodemask_t;
  693#line 670 "include/linux/mmzone.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 const   *name ;
  700   void *magic ;
  701   struct lockdep_map dep_map ;
  702};
  703#line 63 "include/linux/mutex.h"
  704struct mutex_waiter {
  705   struct list_head list ;
  706   struct task_struct *task ;
  707   void *magic ;
  708};
  709#line 171
  710struct rw_semaphore;
  711#line 171
  712struct rw_semaphore;
  713#line 172 "include/linux/mutex.h"
  714struct rw_semaphore {
  715   long count ;
  716   raw_spinlock_t wait_lock ;
  717   struct list_head wait_list ;
  718   struct lockdep_map dep_map ;
  719};
  720#line 128 "include/linux/rwsem.h"
  721struct completion {
  722   unsigned int done ;
  723   wait_queue_head_t wait ;
  724};
  725#line 312 "include/linux/jiffies.h"
  726union ktime {
  727   s64 tv64 ;
  728};
  729#line 59 "include/linux/ktime.h"
  730typedef union ktime ktime_t;
  731#line 341
  732struct tvec_base;
  733#line 341
  734struct tvec_base;
  735#line 342 "include/linux/ktime.h"
  736struct timer_list {
  737   struct list_head entry ;
  738   unsigned long expires ;
  739   struct tvec_base *base ;
  740   void (*function)(unsigned long  ) ;
  741   unsigned long data ;
  742   int slack ;
  743   int start_pid ;
  744   void *start_site ;
  745   char start_comm[16U] ;
  746   struct lockdep_map lockdep_map ;
  747};
  748#line 289 "include/linux/timer.h"
  749struct hrtimer;
  750#line 289
  751struct hrtimer;
  752#line 290
  753enum hrtimer_restart;
  754#line 302
  755struct work_struct;
  756#line 302
  757struct work_struct;
  758#line 45 "include/linux/workqueue.h"
  759struct work_struct {
  760   atomic_long_t data ;
  761   struct list_head entry ;
  762   void (*func)(struct work_struct * ) ;
  763   struct lockdep_map lockdep_map ;
  764};
  765#line 86 "include/linux/workqueue.h"
  766struct delayed_work {
  767   struct work_struct work ;
  768   struct timer_list timer ;
  769};
  770#line 46 "include/linux/pm.h"
  771struct pm_message {
  772   int event ;
  773};
  774#line 52 "include/linux/pm.h"
  775typedef struct pm_message pm_message_t;
  776#line 53 "include/linux/pm.h"
  777struct dev_pm_ops {
  778   int (*prepare)(struct device * ) ;
  779   void (*complete)(struct device * ) ;
  780   int (*suspend)(struct device * ) ;
  781   int (*resume)(struct device * ) ;
  782   int (*freeze)(struct device * ) ;
  783   int (*thaw)(struct device * ) ;
  784   int (*poweroff)(struct device * ) ;
  785   int (*restore)(struct device * ) ;
  786   int (*suspend_late)(struct device * ) ;
  787   int (*resume_early)(struct device * ) ;
  788   int (*freeze_late)(struct device * ) ;
  789   int (*thaw_early)(struct device * ) ;
  790   int (*poweroff_late)(struct device * ) ;
  791   int (*restore_early)(struct device * ) ;
  792   int (*suspend_noirq)(struct device * ) ;
  793   int (*resume_noirq)(struct device * ) ;
  794   int (*freeze_noirq)(struct device * ) ;
  795   int (*thaw_noirq)(struct device * ) ;
  796   int (*poweroff_noirq)(struct device * ) ;
  797   int (*restore_noirq)(struct device * ) ;
  798   int (*runtime_suspend)(struct device * ) ;
  799   int (*runtime_resume)(struct device * ) ;
  800   int (*runtime_idle)(struct device * ) ;
  801};
  802#line 289
  803enum rpm_status {
  804    RPM_ACTIVE = 0,
  805    RPM_RESUMING = 1,
  806    RPM_SUSPENDED = 2,
  807    RPM_SUSPENDING = 3
  808} ;
  809#line 296
  810enum rpm_request {
  811    RPM_REQ_NONE = 0,
  812    RPM_REQ_IDLE = 1,
  813    RPM_REQ_SUSPEND = 2,
  814    RPM_REQ_AUTOSUSPEND = 3,
  815    RPM_REQ_RESUME = 4
  816} ;
  817#line 304
  818struct wakeup_source;
  819#line 304
  820struct wakeup_source;
  821#line 494 "include/linux/pm.h"
  822struct pm_subsys_data {
  823   spinlock_t lock ;
  824   unsigned int refcount ;
  825};
  826#line 499
  827struct dev_pm_qos_request;
  828#line 499
  829struct pm_qos_constraints;
  830#line 499 "include/linux/pm.h"
  831struct dev_pm_info {
  832   pm_message_t power_state ;
  833   unsigned char can_wakeup : 1 ;
  834   unsigned char async_suspend : 1 ;
  835   bool is_prepared ;
  836   bool is_suspended ;
  837   bool ignore_children ;
  838   spinlock_t lock ;
  839   struct list_head entry ;
  840   struct completion completion ;
  841   struct wakeup_source *wakeup ;
  842   bool wakeup_path ;
  843   struct timer_list suspend_timer ;
  844   unsigned long timer_expires ;
  845   struct work_struct work ;
  846   wait_queue_head_t wait_queue ;
  847   atomic_t usage_count ;
  848   atomic_t child_count ;
  849   unsigned char disable_depth : 3 ;
  850   unsigned char idle_notification : 1 ;
  851   unsigned char request_pending : 1 ;
  852   unsigned char deferred_resume : 1 ;
  853   unsigned char run_wake : 1 ;
  854   unsigned char runtime_auto : 1 ;
  855   unsigned char no_callbacks : 1 ;
  856   unsigned char irq_safe : 1 ;
  857   unsigned char use_autosuspend : 1 ;
  858   unsigned char timer_autosuspends : 1 ;
  859   enum rpm_request request ;
  860   enum rpm_status runtime_status ;
  861   int runtime_error ;
  862   int autosuspend_delay ;
  863   unsigned long last_busy ;
  864   unsigned long active_jiffies ;
  865   unsigned long suspended_jiffies ;
  866   unsigned long accounting_timestamp ;
  867   ktime_t suspend_time ;
  868   s64 max_time_suspended_ns ;
  869   struct dev_pm_qos_request *pq_req ;
  870   struct pm_subsys_data *subsys_data ;
  871   struct pm_qos_constraints *constraints ;
  872};
  873#line 558 "include/linux/pm.h"
  874struct dev_pm_domain {
  875   struct dev_pm_ops ops ;
  876};
  877#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
  878struct __anonstruct_mm_context_t_101 {
  879   void *ldt ;
  880   int size ;
  881   unsigned short ia32_compat ;
  882   struct mutex lock ;
  883   void *vdso ;
  884};
  885#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
  886typedef struct __anonstruct_mm_context_t_101 mm_context_t;
  887#line 18 "include/asm-generic/pci_iomap.h"
  888struct vm_area_struct;
  889#line 18
  890struct vm_area_struct;
  891#line 835 "include/linux/sysctl.h"
  892struct rb_node {
  893   unsigned long rb_parent_color ;
  894   struct rb_node *rb_right ;
  895   struct rb_node *rb_left ;
  896};
  897#line 108 "include/linux/rbtree.h"
  898struct rb_root {
  899   struct rb_node *rb_node ;
  900};
  901#line 176
  902struct nsproxy;
  903#line 176
  904struct nsproxy;
  905#line 37 "include/linux/kmod.h"
  906struct cred;
  907#line 37
  908struct cred;
  909#line 18 "include/linux/elf.h"
  910typedef __u64 Elf64_Addr;
  911#line 19 "include/linux/elf.h"
  912typedef __u16 Elf64_Half;
  913#line 23 "include/linux/elf.h"
  914typedef __u32 Elf64_Word;
  915#line 24 "include/linux/elf.h"
  916typedef __u64 Elf64_Xword;
  917#line 193 "include/linux/elf.h"
  918struct elf64_sym {
  919   Elf64_Word st_name ;
  920   unsigned char st_info ;
  921   unsigned char st_other ;
  922   Elf64_Half st_shndx ;
  923   Elf64_Addr st_value ;
  924   Elf64_Xword st_size ;
  925};
  926#line 201 "include/linux/elf.h"
  927typedef struct elf64_sym Elf64_Sym;
  928#line 445
  929struct sock;
  930#line 445
  931struct sock;
  932#line 446
  933struct kobject;
  934#line 446
  935struct kobject;
  936#line 447
  937enum kobj_ns_type {
  938    KOBJ_NS_TYPE_NONE = 0,
  939    KOBJ_NS_TYPE_NET = 1,
  940    KOBJ_NS_TYPES = 2
  941} ;
  942#line 453 "include/linux/elf.h"
  943struct kobj_ns_type_operations {
  944   enum kobj_ns_type type ;
  945   void *(*grab_current_ns)(void) ;
  946   void const   *(*netlink_ns)(struct sock * ) ;
  947   void const   *(*initial_ns)(void) ;
  948   void (*drop_ns)(void * ) ;
  949};
  950#line 57 "include/linux/kobject_ns.h"
  951struct attribute {
  952   char const   *name ;
  953   umode_t mode ;
  954   struct lock_class_key *key ;
  955   struct lock_class_key skey ;
  956};
  957#line 33 "include/linux/sysfs.h"
  958struct attribute_group {
  959   char const   *name ;
  960   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
  961   struct attribute **attrs ;
  962};
  963#line 62 "include/linux/sysfs.h"
  964struct bin_attribute {
  965   struct attribute attr ;
  966   size_t size ;
  967   void *private ;
  968   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
  969                   loff_t  , size_t  ) ;
  970   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
  971                    loff_t  , size_t  ) ;
  972   int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
  973};
  974#line 98 "include/linux/sysfs.h"
  975struct sysfs_ops {
  976   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
  977   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
  978   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
  979};
  980#line 117
  981struct sysfs_dirent;
  982#line 117
  983struct sysfs_dirent;
  984#line 182 "include/linux/sysfs.h"
  985struct kref {
  986   atomic_t refcount ;
  987};
  988#line 49 "include/linux/kobject.h"
  989struct kset;
  990#line 49
  991struct kobj_type;
  992#line 49 "include/linux/kobject.h"
  993struct kobject {
  994   char const   *name ;
  995   struct list_head entry ;
  996   struct kobject *parent ;
  997   struct kset *kset ;
  998   struct kobj_type *ktype ;
  999   struct sysfs_dirent *sd ;
 1000   struct kref kref ;
 1001   unsigned char state_initialized : 1 ;
 1002   unsigned char state_in_sysfs : 1 ;
 1003   unsigned char state_add_uevent_sent : 1 ;
 1004   unsigned char state_remove_uevent_sent : 1 ;
 1005   unsigned char uevent_suppress : 1 ;
 1006};
 1007#line 107 "include/linux/kobject.h"
 1008struct kobj_type {
 1009   void (*release)(struct kobject * ) ;
 1010   struct sysfs_ops  const  *sysfs_ops ;
 1011   struct attribute **default_attrs ;
 1012   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject * ) ;
 1013   void const   *(*namespace)(struct kobject * ) ;
 1014};
 1015#line 115 "include/linux/kobject.h"
 1016struct kobj_uevent_env {
 1017   char *envp[32U] ;
 1018   int envp_idx ;
 1019   char buf[2048U] ;
 1020   int buflen ;
 1021};
 1022#line 122 "include/linux/kobject.h"
 1023struct kset_uevent_ops {
 1024   int (* const  filter)(struct kset * , struct kobject * ) ;
 1025   char const   *(* const  name)(struct kset * , struct kobject * ) ;
 1026   int (* const  uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
 1027};
 1028#line 139 "include/linux/kobject.h"
 1029struct kset {
 1030   struct list_head list ;
 1031   spinlock_t list_lock ;
 1032   struct kobject kobj ;
 1033   struct kset_uevent_ops  const  *uevent_ops ;
 1034};
 1035#line 215
 1036struct kernel_param;
 1037#line 215
 1038struct kernel_param;
 1039#line 216 "include/linux/kobject.h"
 1040struct kernel_param_ops {
 1041   int (*set)(char const   * , struct kernel_param  const  * ) ;
 1042   int (*get)(char * , struct kernel_param  const  * ) ;
 1043   void (*free)(void * ) ;
 1044};
 1045#line 49 "include/linux/moduleparam.h"
 1046struct kparam_string;
 1047#line 49
 1048struct kparam_array;
 1049#line 49 "include/linux/moduleparam.h"
 1050union __anonunion_ldv_13363_134 {
 1051   void *arg ;
 1052   struct kparam_string  const  *str ;
 1053   struct kparam_array  const  *arr ;
 1054};
 1055#line 49 "include/linux/moduleparam.h"
 1056struct kernel_param {
 1057   char const   *name ;
 1058   struct kernel_param_ops  const  *ops ;
 1059   u16 perm ;
 1060   s16 level ;
 1061   union __anonunion_ldv_13363_134 ldv_13363 ;
 1062};
 1063#line 61 "include/linux/moduleparam.h"
 1064struct kparam_string {
 1065   unsigned int maxlen ;
 1066   char *string ;
 1067};
 1068#line 67 "include/linux/moduleparam.h"
 1069struct kparam_array {
 1070   unsigned int max ;
 1071   unsigned int elemsize ;
 1072   unsigned int *num ;
 1073   struct kernel_param_ops  const  *ops ;
 1074   void *elem ;
 1075};
 1076#line 458 "include/linux/moduleparam.h"
 1077struct static_key {
 1078   atomic_t enabled ;
 1079};
 1080#line 225 "include/linux/jump_label.h"
 1081struct tracepoint;
 1082#line 225
 1083struct tracepoint;
 1084#line 226 "include/linux/jump_label.h"
 1085struct tracepoint_func {
 1086   void *func ;
 1087   void *data ;
 1088};
 1089#line 29 "include/linux/tracepoint.h"
 1090struct tracepoint {
 1091   char const   *name ;
 1092   struct static_key key ;
 1093   void (*regfunc)(void) ;
 1094   void (*unregfunc)(void) ;
 1095   struct tracepoint_func *funcs ;
 1096};
 1097#line 86 "include/linux/tracepoint.h"
 1098struct kernel_symbol {
 1099   unsigned long value ;
 1100   char const   *name ;
 1101};
 1102#line 27 "include/linux/export.h"
 1103struct mod_arch_specific {
 1104
 1105};
 1106#line 34 "include/linux/module.h"
 1107struct module_param_attrs;
 1108#line 34 "include/linux/module.h"
 1109struct module_kobject {
 1110   struct kobject kobj ;
 1111   struct module *mod ;
 1112   struct kobject *drivers_dir ;
 1113   struct module_param_attrs *mp ;
 1114};
 1115#line 43 "include/linux/module.h"
 1116struct module_attribute {
 1117   struct attribute attr ;
 1118   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 1119   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 1120                    size_t  ) ;
 1121   void (*setup)(struct module * , char const   * ) ;
 1122   int (*test)(struct module * ) ;
 1123   void (*free)(struct module * ) ;
 1124};
 1125#line 69
 1126struct exception_table_entry;
 1127#line 69
 1128struct exception_table_entry;
 1129#line 198
 1130enum module_state {
 1131    MODULE_STATE_LIVE = 0,
 1132    MODULE_STATE_COMING = 1,
 1133    MODULE_STATE_GOING = 2
 1134} ;
 1135#line 204 "include/linux/module.h"
 1136struct module_ref {
 1137   unsigned long incs ;
 1138   unsigned long decs ;
 1139};
 1140#line 219
 1141struct module_sect_attrs;
 1142#line 219
 1143struct module_notes_attrs;
 1144#line 219
 1145struct ftrace_event_call;
 1146#line 219 "include/linux/module.h"
 1147struct module {
 1148   enum module_state state ;
 1149   struct list_head list ;
 1150   char name[56U] ;
 1151   struct module_kobject mkobj ;
 1152   struct module_attribute *modinfo_attrs ;
 1153   char const   *version ;
 1154   char const   *srcversion ;
 1155   struct kobject *holders_dir ;
 1156   struct kernel_symbol  const  *syms ;
 1157   unsigned long const   *crcs ;
 1158   unsigned int num_syms ;
 1159   struct kernel_param *kp ;
 1160   unsigned int num_kp ;
 1161   unsigned int num_gpl_syms ;
 1162   struct kernel_symbol  const  *gpl_syms ;
 1163   unsigned long const   *gpl_crcs ;
 1164   struct kernel_symbol  const  *unused_syms ;
 1165   unsigned long const   *unused_crcs ;
 1166   unsigned int num_unused_syms ;
 1167   unsigned int num_unused_gpl_syms ;
 1168   struct kernel_symbol  const  *unused_gpl_syms ;
 1169   unsigned long const   *unused_gpl_crcs ;
 1170   struct kernel_symbol  const  *gpl_future_syms ;
 1171   unsigned long const   *gpl_future_crcs ;
 1172   unsigned int num_gpl_future_syms ;
 1173   unsigned int num_exentries ;
 1174   struct exception_table_entry *extable ;
 1175   int (*init)(void) ;
 1176   void *module_init ;
 1177   void *module_core ;
 1178   unsigned int init_size ;
 1179   unsigned int core_size ;
 1180   unsigned int init_text_size ;
 1181   unsigned int core_text_size ;
 1182   unsigned int init_ro_size ;
 1183   unsigned int core_ro_size ;
 1184   struct mod_arch_specific arch ;
 1185   unsigned int taints ;
 1186   unsigned int num_bugs ;
 1187   struct list_head bug_list ;
 1188   struct bug_entry *bug_table ;
 1189   Elf64_Sym *symtab ;
 1190   Elf64_Sym *core_symtab ;
 1191   unsigned int num_symtab ;
 1192   unsigned int core_num_syms ;
 1193   char *strtab ;
 1194   char *core_strtab ;
 1195   struct module_sect_attrs *sect_attrs ;
 1196   struct module_notes_attrs *notes_attrs ;
 1197   char *args ;
 1198   void *percpu ;
 1199   unsigned int percpu_size ;
 1200   unsigned int num_tracepoints ;
 1201   struct tracepoint * const  *tracepoints_ptrs ;
 1202   unsigned int num_trace_bprintk_fmt ;
 1203   char const   **trace_bprintk_fmt_start ;
 1204   struct ftrace_event_call **trace_events ;
 1205   unsigned int num_trace_events ;
 1206   struct list_head source_list ;
 1207   struct list_head target_list ;
 1208   struct task_struct *waiter ;
 1209   void (*exit)(void) ;
 1210   struct module_ref *refptr ;
 1211   ctor_fn_t (**ctors)(void) ;
 1212   unsigned int num_ctors ;
 1213};
 1214#line 88 "include/linux/kmemleak.h"
 1215struct kmem_cache_cpu {
 1216   void **freelist ;
 1217   unsigned long tid ;
 1218   struct page *page ;
 1219   struct page *partial ;
 1220   int node ;
 1221   unsigned int stat[26U] ;
 1222};
 1223#line 55 "include/linux/slub_def.h"
 1224struct kmem_cache_node {
 1225   spinlock_t list_lock ;
 1226   unsigned long nr_partial ;
 1227   struct list_head partial ;
 1228   atomic_long_t nr_slabs ;
 1229   atomic_long_t total_objects ;
 1230   struct list_head full ;
 1231};
 1232#line 66 "include/linux/slub_def.h"
 1233struct kmem_cache_order_objects {
 1234   unsigned long x ;
 1235};
 1236#line 76 "include/linux/slub_def.h"
 1237struct kmem_cache {
 1238   struct kmem_cache_cpu *cpu_slab ;
 1239   unsigned long flags ;
 1240   unsigned long min_partial ;
 1241   int size ;
 1242   int objsize ;
 1243   int offset ;
 1244   int cpu_partial ;
 1245   struct kmem_cache_order_objects oo ;
 1246   struct kmem_cache_order_objects max ;
 1247   struct kmem_cache_order_objects min ;
 1248   gfp_t allocflags ;
 1249   int refcount ;
 1250   void (*ctor)(void * ) ;
 1251   int inuse ;
 1252   int align ;
 1253   int reserved ;
 1254   char const   *name ;
 1255   struct list_head list ;
 1256   struct kobject kobj ;
 1257   int remote_node_defrag_ratio ;
 1258   struct kmem_cache_node *node[1024U] ;
 1259};
 1260#line 18 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 1261struct block_device;
 1262#line 18
 1263struct block_device;
 1264#line 93 "include/linux/bit_spinlock.h"
 1265struct hlist_bl_node;
 1266#line 93 "include/linux/bit_spinlock.h"
 1267struct hlist_bl_head {
 1268   struct hlist_bl_node *first ;
 1269};
 1270#line 36 "include/linux/list_bl.h"
 1271struct hlist_bl_node {
 1272   struct hlist_bl_node *next ;
 1273   struct hlist_bl_node **pprev ;
 1274};
 1275#line 114 "include/linux/rculist_bl.h"
 1276struct nameidata;
 1277#line 114
 1278struct nameidata;
 1279#line 115
 1280struct path;
 1281#line 115
 1282struct path;
 1283#line 116
 1284struct vfsmount;
 1285#line 116
 1286struct vfsmount;
 1287#line 117 "include/linux/rculist_bl.h"
 1288struct qstr {
 1289   unsigned int hash ;
 1290   unsigned int len ;
 1291   unsigned char const   *name ;
 1292};
 1293#line 72 "include/linux/dcache.h"
 1294struct inode;
 1295#line 72
 1296struct dentry_operations;
 1297#line 72
 1298struct super_block;
 1299#line 72 "include/linux/dcache.h"
 1300union __anonunion_d_u_135 {
 1301   struct list_head d_child ;
 1302   struct rcu_head d_rcu ;
 1303};
 1304#line 72 "include/linux/dcache.h"
 1305struct dentry {
 1306   unsigned int d_flags ;
 1307   seqcount_t d_seq ;
 1308   struct hlist_bl_node d_hash ;
 1309   struct dentry *d_parent ;
 1310   struct qstr d_name ;
 1311   struct inode *d_inode ;
 1312   unsigned char d_iname[32U] ;
 1313   unsigned int d_count ;
 1314   spinlock_t d_lock ;
 1315   struct dentry_operations  const  *d_op ;
 1316   struct super_block *d_sb ;
 1317   unsigned long d_time ;
 1318   void *d_fsdata ;
 1319   struct list_head d_lru ;
 1320   union __anonunion_d_u_135 d_u ;
 1321   struct list_head d_subdirs ;
 1322   struct list_head d_alias ;
 1323};
 1324#line 123 "include/linux/dcache.h"
 1325struct dentry_operations {
 1326   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
 1327   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
 1328   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
 1329                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
 1330   int (*d_delete)(struct dentry  const  * ) ;
 1331   void (*d_release)(struct dentry * ) ;
 1332   void (*d_prune)(struct dentry * ) ;
 1333   void (*d_iput)(struct dentry * , struct inode * ) ;
 1334   char *(*d_dname)(struct dentry * , char * , int  ) ;
 1335   struct vfsmount *(*d_automount)(struct path * ) ;
 1336   int (*d_manage)(struct dentry * , bool  ) ;
 1337};
 1338#line 402 "include/linux/dcache.h"
 1339struct path {
 1340   struct vfsmount *mnt ;
 1341   struct dentry *dentry ;
 1342};
 1343#line 58 "include/linux/radix-tree.h"
 1344struct radix_tree_node;
 1345#line 58 "include/linux/radix-tree.h"
 1346struct radix_tree_root {
 1347   unsigned int height ;
 1348   gfp_t gfp_mask ;
 1349   struct radix_tree_node *rnode ;
 1350};
 1351#line 377
 1352struct prio_tree_node;
 1353#line 377 "include/linux/radix-tree.h"
 1354struct raw_prio_tree_node {
 1355   struct prio_tree_node *left ;
 1356   struct prio_tree_node *right ;
 1357   struct prio_tree_node *parent ;
 1358};
 1359#line 19 "include/linux/prio_tree.h"
 1360struct prio_tree_node {
 1361   struct prio_tree_node *left ;
 1362   struct prio_tree_node *right ;
 1363   struct prio_tree_node *parent ;
 1364   unsigned long start ;
 1365   unsigned long last ;
 1366};
 1367#line 27 "include/linux/prio_tree.h"
 1368struct prio_tree_root {
 1369   struct prio_tree_node *prio_tree_node ;
 1370   unsigned short index_bits ;
 1371   unsigned short raw ;
 1372};
 1373#line 111
 1374enum pid_type {
 1375    PIDTYPE_PID = 0,
 1376    PIDTYPE_PGID = 1,
 1377    PIDTYPE_SID = 2,
 1378    PIDTYPE_MAX = 3
 1379} ;
 1380#line 118
 1381struct pid_namespace;
 1382#line 118 "include/linux/prio_tree.h"
 1383struct upid {
 1384   int nr ;
 1385   struct pid_namespace *ns ;
 1386   struct hlist_node pid_chain ;
 1387};
 1388#line 56 "include/linux/pid.h"
 1389struct pid {
 1390   atomic_t count ;
 1391   unsigned int level ;
 1392   struct hlist_head tasks[3U] ;
 1393   struct rcu_head rcu ;
 1394   struct upid numbers[1U] ;
 1395};
 1396#line 68 "include/linux/pid.h"
 1397struct pid_link {
 1398   struct hlist_node node ;
 1399   struct pid *pid ;
 1400};
 1401#line 93 "include/linux/capability.h"
 1402struct kernel_cap_struct {
 1403   __u32 cap[2U] ;
 1404};
 1405#line 96 "include/linux/capability.h"
 1406typedef struct kernel_cap_struct kernel_cap_t;
 1407#line 104
 1408struct user_namespace;
 1409#line 104
 1410struct user_namespace;
 1411#line 45 "include/linux/semaphore.h"
 1412struct fiemap_extent {
 1413   __u64 fe_logical ;
 1414   __u64 fe_physical ;
 1415   __u64 fe_length ;
 1416   __u64 fe_reserved64[2U] ;
 1417   __u32 fe_flags ;
 1418   __u32 fe_reserved[3U] ;
 1419};
 1420#line 38 "include/linux/fiemap.h"
 1421struct shrink_control {
 1422   gfp_t gfp_mask ;
 1423   unsigned long nr_to_scan ;
 1424};
 1425#line 14 "include/linux/shrinker.h"
 1426struct shrinker {
 1427   int (*shrink)(struct shrinker * , struct shrink_control * ) ;
 1428   int seeks ;
 1429   long batch ;
 1430   struct list_head list ;
 1431   atomic_long_t nr_in_batch ;
 1432};
 1433#line 43
 1434enum migrate_mode {
 1435    MIGRATE_ASYNC = 0,
 1436    MIGRATE_SYNC_LIGHT = 1,
 1437    MIGRATE_SYNC = 2
 1438} ;
 1439#line 49
 1440struct export_operations;
 1441#line 49
 1442struct export_operations;
 1443#line 51
 1444struct iovec;
 1445#line 51
 1446struct iovec;
 1447#line 52
 1448struct kiocb;
 1449#line 52
 1450struct kiocb;
 1451#line 53
 1452struct pipe_inode_info;
 1453#line 53
 1454struct pipe_inode_info;
 1455#line 54
 1456struct poll_table_struct;
 1457#line 54
 1458struct poll_table_struct;
 1459#line 55
 1460struct kstatfs;
 1461#line 55
 1462struct kstatfs;
 1463#line 435 "include/linux/fs.h"
 1464struct iattr {
 1465   unsigned int ia_valid ;
 1466   umode_t ia_mode ;
 1467   uid_t ia_uid ;
 1468   gid_t ia_gid ;
 1469   loff_t ia_size ;
 1470   struct timespec ia_atime ;
 1471   struct timespec ia_mtime ;
 1472   struct timespec ia_ctime ;
 1473   struct file *ia_file ;
 1474};
 1475#line 119 "include/linux/quota.h"
 1476struct if_dqinfo {
 1477   __u64 dqi_bgrace ;
 1478   __u64 dqi_igrace ;
 1479   __u32 dqi_flags ;
 1480   __u32 dqi_valid ;
 1481};
 1482#line 176 "include/linux/percpu_counter.h"
 1483struct fs_disk_quota {
 1484   __s8 d_version ;
 1485   __s8 d_flags ;
 1486   __u16 d_fieldmask ;
 1487   __u32 d_id ;
 1488   __u64 d_blk_hardlimit ;
 1489   __u64 d_blk_softlimit ;
 1490   __u64 d_ino_hardlimit ;
 1491   __u64 d_ino_softlimit ;
 1492   __u64 d_bcount ;
 1493   __u64 d_icount ;
 1494   __s32 d_itimer ;
 1495   __s32 d_btimer ;
 1496   __u16 d_iwarns ;
 1497   __u16 d_bwarns ;
 1498   __s32 d_padding2 ;
 1499   __u64 d_rtb_hardlimit ;
 1500   __u64 d_rtb_softlimit ;
 1501   __u64 d_rtbcount ;
 1502   __s32 d_rtbtimer ;
 1503   __u16 d_rtbwarns ;
 1504   __s16 d_padding3 ;
 1505   char d_padding4[8U] ;
 1506};
 1507#line 75 "include/linux/dqblk_xfs.h"
 1508struct fs_qfilestat {
 1509   __u64 qfs_ino ;
 1510   __u64 qfs_nblks ;
 1511   __u32 qfs_nextents ;
 1512};
 1513#line 150 "include/linux/dqblk_xfs.h"
 1514typedef struct fs_qfilestat fs_qfilestat_t;
 1515#line 151 "include/linux/dqblk_xfs.h"
 1516struct fs_quota_stat {
 1517   __s8 qs_version ;
 1518   __u16 qs_flags ;
 1519   __s8 qs_pad ;
 1520   fs_qfilestat_t qs_uquota ;
 1521   fs_qfilestat_t qs_gquota ;
 1522   __u32 qs_incoredqs ;
 1523   __s32 qs_btimelimit ;
 1524   __s32 qs_itimelimit ;
 1525   __s32 qs_rtbtimelimit ;
 1526   __u16 qs_bwarnlimit ;
 1527   __u16 qs_iwarnlimit ;
 1528};
 1529#line 165
 1530struct dquot;
 1531#line 165
 1532struct dquot;
 1533#line 185 "include/linux/quota.h"
 1534typedef __kernel_uid32_t qid_t;
 1535#line 186 "include/linux/quota.h"
 1536typedef long long qsize_t;
 1537#line 189 "include/linux/quota.h"
 1538struct mem_dqblk {
 1539   qsize_t dqb_bhardlimit ;
 1540   qsize_t dqb_bsoftlimit ;
 1541   qsize_t dqb_curspace ;
 1542   qsize_t dqb_rsvspace ;
 1543   qsize_t dqb_ihardlimit ;
 1544   qsize_t dqb_isoftlimit ;
 1545   qsize_t dqb_curinodes ;
 1546   time_t dqb_btime ;
 1547   time_t dqb_itime ;
 1548};
 1549#line 211
 1550struct quota_format_type;
 1551#line 211
 1552struct quota_format_type;
 1553#line 212 "include/linux/quota.h"
 1554struct mem_dqinfo {
 1555   struct quota_format_type *dqi_format ;
 1556   int dqi_fmt_id ;
 1557   struct list_head dqi_dirty_list ;
 1558   unsigned long dqi_flags ;
 1559   unsigned int dqi_bgrace ;
 1560   unsigned int dqi_igrace ;
 1561   qsize_t dqi_maxblimit ;
 1562   qsize_t dqi_maxilimit ;
 1563   void *dqi_priv ;
 1564};
 1565#line 275 "include/linux/quota.h"
 1566struct dquot {
 1567   struct hlist_node dq_hash ;
 1568   struct list_head dq_inuse ;
 1569   struct list_head dq_free ;
 1570   struct list_head dq_dirty ;
 1571   struct mutex dq_lock ;
 1572   atomic_t dq_count ;
 1573   wait_queue_head_t dq_wait_unused ;
 1574   struct super_block *dq_sb ;
 1575   unsigned int dq_id ;
 1576   loff_t dq_off ;
 1577   unsigned long dq_flags ;
 1578   short dq_type ;
 1579   struct mem_dqblk dq_dqb ;
 1580};
 1581#line 303 "include/linux/quota.h"
 1582struct quota_format_ops {
 1583   int (*check_quota_file)(struct super_block * , int  ) ;
 1584   int (*read_file_info)(struct super_block * , int  ) ;
 1585   int (*write_file_info)(struct super_block * , int  ) ;
 1586   int (*free_file_info)(struct super_block * , int  ) ;
 1587   int (*read_dqblk)(struct dquot * ) ;
 1588   int (*commit_dqblk)(struct dquot * ) ;
 1589   int (*release_dqblk)(struct dquot * ) ;
 1590};
 1591#line 314 "include/linux/quota.h"
 1592struct dquot_operations {
 1593   int (*write_dquot)(struct dquot * ) ;
 1594   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
 1595   void (*destroy_dquot)(struct dquot * ) ;
 1596   int (*acquire_dquot)(struct dquot * ) ;
 1597   int (*release_dquot)(struct dquot * ) ;
 1598   int (*mark_dirty)(struct dquot * ) ;
 1599   int (*write_info)(struct super_block * , int  ) ;
 1600   qsize_t *(*get_reserved_space)(struct inode * ) ;
 1601};
 1602#line 328 "include/linux/quota.h"
 1603struct quotactl_ops {
 1604   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
 1605   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
 1606   int (*quota_off)(struct super_block * , int  ) ;
 1607   int (*quota_sync)(struct super_block * , int  , int  ) ;
 1608   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 1609   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 1610   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 1611   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 1612   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
 1613   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
 1614};
 1615#line 344 "include/linux/quota.h"
 1616struct quota_format_type {
 1617   int qf_fmt_id ;
 1618   struct quota_format_ops  const  *qf_ops ;
 1619   struct module *qf_owner ;
 1620   struct quota_format_type *qf_next ;
 1621};
 1622#line 390 "include/linux/quota.h"
 1623struct quota_info {
 1624   unsigned int flags ;
 1625   struct mutex dqio_mutex ;
 1626   struct mutex dqonoff_mutex ;
 1627   struct rw_semaphore dqptr_sem ;
 1628   struct inode *files[2U] ;
 1629   struct mem_dqinfo info[2U] ;
 1630   struct quota_format_ops  const  *ops[2U] ;
 1631};
 1632#line 421
 1633struct address_space;
 1634#line 421
 1635struct address_space;
 1636#line 422
 1637struct writeback_control;
 1638#line 422
 1639struct writeback_control;
 1640#line 585 "include/linux/fs.h"
 1641union __anonunion_arg_138 {
 1642   char *buf ;
 1643   void *data ;
 1644};
 1645#line 585 "include/linux/fs.h"
 1646struct __anonstruct_read_descriptor_t_137 {
 1647   size_t written ;
 1648   size_t count ;
 1649   union __anonunion_arg_138 arg ;
 1650   int error ;
 1651};
 1652#line 585 "include/linux/fs.h"
 1653typedef struct __anonstruct_read_descriptor_t_137 read_descriptor_t;
 1654#line 588 "include/linux/fs.h"
 1655struct address_space_operations {
 1656   int (*writepage)(struct page * , struct writeback_control * ) ;
 1657   int (*readpage)(struct file * , struct page * ) ;
 1658   int (*writepages)(struct address_space * , struct writeback_control * ) ;
 1659   int (*set_page_dirty)(struct page * ) ;
 1660   int (*readpages)(struct file * , struct address_space * , struct list_head * ,
 1661                    unsigned int  ) ;
 1662   int (*write_begin)(struct file * , struct address_space * , loff_t  , unsigned int  ,
 1663                      unsigned int  , struct page ** , void ** ) ;
 1664   int (*write_end)(struct file * , struct address_space * , loff_t  , unsigned int  ,
 1665                    unsigned int  , struct page * , void * ) ;
 1666   sector_t (*bmap)(struct address_space * , sector_t  ) ;
 1667   void (*invalidatepage)(struct page * , unsigned long  ) ;
 1668   int (*releasepage)(struct page * , gfp_t  ) ;
 1669   void (*freepage)(struct page * ) ;
 1670   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  * , loff_t  ,
 1671                        unsigned long  ) ;
 1672   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
 1673   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
 1674   int (*launder_page)(struct page * ) ;
 1675   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
 1676   int (*error_remove_page)(struct address_space * , struct page * ) ;
 1677};
 1678#line 642
 1679struct backing_dev_info;
 1680#line 642
 1681struct backing_dev_info;
 1682#line 643 "include/linux/fs.h"
 1683struct address_space {
 1684   struct inode *host ;
 1685   struct radix_tree_root page_tree ;
 1686   spinlock_t tree_lock ;
 1687   unsigned int i_mmap_writable ;
 1688   struct prio_tree_root i_mmap ;
 1689   struct list_head i_mmap_nonlinear ;
 1690   struct mutex i_mmap_mutex ;
 1691   unsigned long nrpages ;
 1692   unsigned long writeback_index ;
 1693   struct address_space_operations  const  *a_ops ;
 1694   unsigned long flags ;
 1695   struct backing_dev_info *backing_dev_info ;
 1696   spinlock_t private_lock ;
 1697   struct list_head private_list ;
 1698   struct address_space *assoc_mapping ;
 1699};
 1700#line 664
 1701struct request_queue;
 1702#line 664
 1703struct request_queue;
 1704#line 665
 1705struct hd_struct;
 1706#line 665
 1707struct gendisk;
 1708#line 665 "include/linux/fs.h"
 1709struct block_device {
 1710   dev_t bd_dev ;
 1711   int bd_openers ;
 1712   struct inode *bd_inode ;
 1713   struct super_block *bd_super ;
 1714   struct mutex bd_mutex ;
 1715   struct list_head bd_inodes ;
 1716   void *bd_claiming ;
 1717   void *bd_holder ;
 1718   int bd_holders ;
 1719   bool bd_write_holder ;
 1720   struct list_head bd_holder_disks ;
 1721   struct block_device *bd_contains ;
 1722   unsigned int bd_block_size ;
 1723   struct hd_struct *bd_part ;
 1724   unsigned int bd_part_count ;
 1725   int bd_invalidated ;
 1726   struct gendisk *bd_disk ;
 1727   struct request_queue *bd_queue ;
 1728   struct list_head bd_list ;
 1729   unsigned long bd_private ;
 1730   int bd_fsfreeze_count ;
 1731   struct mutex bd_fsfreeze_mutex ;
 1732};
 1733#line 737
 1734struct posix_acl;
 1735#line 737
 1736struct posix_acl;
 1737#line 738
 1738struct inode_operations;
 1739#line 738 "include/linux/fs.h"
 1740union __anonunion_ldv_15748_139 {
 1741   unsigned int const   i_nlink ;
 1742   unsigned int __i_nlink ;
 1743};
 1744#line 738 "include/linux/fs.h"
 1745union __anonunion_ldv_15767_140 {
 1746   struct list_head i_dentry ;
 1747   struct rcu_head i_rcu ;
 1748};
 1749#line 738
 1750struct file_operations;
 1751#line 738
 1752struct file_lock;
 1753#line 738
 1754struct cdev;
 1755#line 738 "include/linux/fs.h"
 1756union __anonunion_ldv_15785_141 {
 1757   struct pipe_inode_info *i_pipe ;
 1758   struct block_device *i_bdev ;
 1759   struct cdev *i_cdev ;
 1760};
 1761#line 738 "include/linux/fs.h"
 1762struct inode {
 1763   umode_t i_mode ;
 1764   unsigned short i_opflags ;
 1765   uid_t i_uid ;
 1766   gid_t i_gid ;
 1767   unsigned int i_flags ;
 1768   struct posix_acl *i_acl ;
 1769   struct posix_acl *i_default_acl ;
 1770   struct inode_operations  const  *i_op ;
 1771   struct super_block *i_sb ;
 1772   struct address_space *i_mapping ;
 1773   void *i_security ;
 1774   unsigned long i_ino ;
 1775   union __anonunion_ldv_15748_139 ldv_15748 ;
 1776   dev_t i_rdev ;
 1777   struct timespec i_atime ;
 1778   struct timespec i_mtime ;
 1779   struct timespec i_ctime ;
 1780   spinlock_t i_lock ;
 1781   unsigned short i_bytes ;
 1782   blkcnt_t i_blocks ;
 1783   loff_t i_size ;
 1784   unsigned long i_state ;
 1785   struct mutex i_mutex ;
 1786   unsigned long dirtied_when ;
 1787   struct hlist_node i_hash ;
 1788   struct list_head i_wb_list ;
 1789   struct list_head i_lru ;
 1790   struct list_head i_sb_list ;
 1791   union __anonunion_ldv_15767_140 ldv_15767 ;
 1792   atomic_t i_count ;
 1793   unsigned int i_blkbits ;
 1794   u64 i_version ;
 1795   atomic_t i_dio_count ;
 1796   atomic_t i_writecount ;
 1797   struct file_operations  const  *i_fop ;
 1798   struct file_lock *i_flock ;
 1799   struct address_space i_data ;
 1800   struct dquot *i_dquot[2U] ;
 1801   struct list_head i_devices ;
 1802   union __anonunion_ldv_15785_141 ldv_15785 ;
 1803   __u32 i_generation ;
 1804   __u32 i_fsnotify_mask ;
 1805   struct hlist_head i_fsnotify_marks ;
 1806   atomic_t i_readcount ;
 1807   void *i_private ;
 1808};
 1809#line 941 "include/linux/fs.h"
 1810struct fown_struct {
 1811   rwlock_t lock ;
 1812   struct pid *pid ;
 1813   enum pid_type pid_type ;
 1814   uid_t uid ;
 1815   uid_t euid ;
 1816   int signum ;
 1817};
 1818#line 949 "include/linux/fs.h"
 1819struct file_ra_state {
 1820   unsigned long start ;
 1821   unsigned int size ;
 1822   unsigned int async_size ;
 1823   unsigned int ra_pages ;
 1824   unsigned int mmap_miss ;
 1825   loff_t prev_pos ;
 1826};
 1827#line 972 "include/linux/fs.h"
 1828union __anonunion_f_u_142 {
 1829   struct list_head fu_list ;
 1830   struct rcu_head fu_rcuhead ;
 1831};
 1832#line 972 "include/linux/fs.h"
 1833struct file {
 1834   union __anonunion_f_u_142 f_u ;
 1835   struct path f_path ;
 1836   struct file_operations  const  *f_op ;
 1837   spinlock_t f_lock ;
 1838   int f_sb_list_cpu ;
 1839   atomic_long_t f_count ;
 1840   unsigned int f_flags ;
 1841   fmode_t f_mode ;
 1842   loff_t f_pos ;
 1843   struct fown_struct f_owner ;
 1844   struct cred  const  *f_cred ;
 1845   struct file_ra_state f_ra ;
 1846   u64 f_version ;
 1847   void *f_security ;
 1848   void *private_data ;
 1849   struct list_head f_ep_links ;
 1850   struct list_head f_tfile_llink ;
 1851   struct address_space *f_mapping ;
 1852   unsigned long f_mnt_write_state ;
 1853};
 1854#line 1111
 1855struct files_struct;
 1856#line 1111 "include/linux/fs.h"
 1857typedef struct files_struct *fl_owner_t;
 1858#line 1112 "include/linux/fs.h"
 1859struct file_lock_operations {
 1860   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
 1861   void (*fl_release_private)(struct file_lock * ) ;
 1862};
 1863#line 1117 "include/linux/fs.h"
 1864struct lock_manager_operations {
 1865   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
 1866   void (*lm_notify)(struct file_lock * ) ;
 1867   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
 1868   void (*lm_release_private)(struct file_lock * ) ;
 1869   void (*lm_break)(struct file_lock * ) ;
 1870   int (*lm_change)(struct file_lock ** , int  ) ;
 1871};
 1872#line 1134
 1873struct nlm_lockowner;
 1874#line 1134
 1875struct nlm_lockowner;
 1876#line 1135 "include/linux/fs.h"
 1877struct nfs_lock_info {
 1878   u32 state ;
 1879   struct nlm_lockowner *owner ;
 1880   struct list_head list ;
 1881};
 1882#line 14 "include/linux/nfs_fs_i.h"
 1883struct nfs4_lock_state;
 1884#line 14
 1885struct nfs4_lock_state;
 1886#line 15 "include/linux/nfs_fs_i.h"
 1887struct nfs4_lock_info {
 1888   struct nfs4_lock_state *owner ;
 1889};
 1890#line 19
 1891struct fasync_struct;
 1892#line 19 "include/linux/nfs_fs_i.h"
 1893struct __anonstruct_afs_144 {
 1894   struct list_head link ;
 1895   int state ;
 1896};
 1897#line 19 "include/linux/nfs_fs_i.h"
 1898union __anonunion_fl_u_143 {
 1899   struct nfs_lock_info nfs_fl ;
 1900   struct nfs4_lock_info nfs4_fl ;
 1901   struct __anonstruct_afs_144 afs ;
 1902};
 1903#line 19 "include/linux/nfs_fs_i.h"
 1904struct file_lock {
 1905   struct file_lock *fl_next ;
 1906   struct list_head fl_link ;
 1907   struct list_head fl_block ;
 1908   fl_owner_t fl_owner ;
 1909   unsigned int fl_flags ;
 1910   unsigned char fl_type ;
 1911   unsigned int fl_pid ;
 1912   struct pid *fl_nspid ;
 1913   wait_queue_head_t fl_wait ;
 1914   struct file *fl_file ;
 1915   loff_t fl_start ;
 1916   loff_t fl_end ;
 1917   struct fasync_struct *fl_fasync ;
 1918   unsigned long fl_break_time ;
 1919   unsigned long fl_downgrade_time ;
 1920   struct file_lock_operations  const  *fl_ops ;
 1921   struct lock_manager_operations  const  *fl_lmops ;
 1922   union __anonunion_fl_u_143 fl_u ;
 1923};
 1924#line 1221 "include/linux/fs.h"
 1925struct fasync_struct {
 1926   spinlock_t fa_lock ;
 1927   int magic ;
 1928   int fa_fd ;
 1929   struct fasync_struct *fa_next ;
 1930   struct file *fa_file ;
 1931   struct rcu_head fa_rcu ;
 1932};
 1933#line 1417
 1934struct file_system_type;
 1935#line 1417
 1936struct super_operations;
 1937#line 1417
 1938struct xattr_handler;
 1939#line 1417
 1940struct mtd_info;
 1941#line 1417 "include/linux/fs.h"
 1942struct super_block {
 1943   struct list_head s_list ;
 1944   dev_t s_dev ;
 1945   unsigned char s_dirt ;
 1946   unsigned char s_blocksize_bits ;
 1947   unsigned long s_blocksize ;
 1948   loff_t s_maxbytes ;
 1949   struct file_system_type *s_type ;
 1950   struct super_operations  const  *s_op ;
 1951   struct dquot_operations  const  *dq_op ;
 1952   struct quotactl_ops  const  *s_qcop ;
 1953   struct export_operations  const  *s_export_op ;
 1954   unsigned long s_flags ;
 1955   unsigned long s_magic ;
 1956   struct dentry *s_root ;
 1957   struct rw_semaphore s_umount ;
 1958   struct mutex s_lock ;
 1959   int s_count ;
 1960   atomic_t s_active ;
 1961   void *s_security ;
 1962   struct xattr_handler  const  **s_xattr ;
 1963   struct list_head s_inodes ;
 1964   struct hlist_bl_head s_anon ;
 1965   struct list_head *s_files ;
 1966   struct list_head s_mounts ;
 1967   struct list_head s_dentry_lru ;
 1968   int s_nr_dentry_unused ;
 1969   spinlock_t s_inode_lru_lock ;
 1970   struct list_head s_inode_lru ;
 1971   int s_nr_inodes_unused ;
 1972   struct block_device *s_bdev ;
 1973   struct backing_dev_info *s_bdi ;
 1974   struct mtd_info *s_mtd ;
 1975   struct hlist_node s_instances ;
 1976   struct quota_info s_dquot ;
 1977   int s_frozen ;
 1978   wait_queue_head_t s_wait_unfrozen ;
 1979   char s_id[32U] ;
 1980   u8 s_uuid[16U] ;
 1981   void *s_fs_info ;
 1982   unsigned int s_max_links ;
 1983   fmode_t s_mode ;
 1984   u32 s_time_gran ;
 1985   struct mutex s_vfs_rename_mutex ;
 1986   char *s_subtype ;
 1987   char *s_options ;
 1988   struct dentry_operations  const  *s_d_op ;
 1989   int cleancache_poolid ;
 1990   struct shrinker s_shrink ;
 1991   atomic_long_t s_remove_count ;
 1992   int s_readonly_remount ;
 1993};
 1994#line 1563 "include/linux/fs.h"
 1995struct fiemap_extent_info {
 1996   unsigned int fi_flags ;
 1997   unsigned int fi_extents_mapped ;
 1998   unsigned int fi_extents_max ;
 1999   struct fiemap_extent *fi_extents_start ;
 2000};
 2001#line 1602 "include/linux/fs.h"
 2002struct file_operations {
 2003   struct module *owner ;
 2004   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
 2005   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
 2006   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
 2007   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 2008                       loff_t  ) ;
 2009   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 2010                        loff_t  ) ;
 2011   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
 2012                                                   loff_t  , u64  , unsigned int  ) ) ;
 2013   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
 2014   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 2015   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 2016   int (*mmap)(struct file * , struct vm_area_struct * ) ;
 2017   int (*open)(struct inode * , struct file * ) ;
 2018   int (*flush)(struct file * , fl_owner_t  ) ;
 2019   int (*release)(struct inode * , struct file * ) ;
 2020   int (*fsync)(struct file * , loff_t  , loff_t  , int  ) ;
 2021   int (*aio_fsync)(struct kiocb * , int  ) ;
 2022   int (*fasync)(int  , struct file * , int  ) ;
 2023   int (*lock)(struct file * , int  , struct file_lock * ) ;
 2024   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
 2025                       int  ) ;
 2026   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
 2027                                      unsigned long  , unsigned long  ) ;
 2028   int (*check_flags)(int  ) ;
 2029   int (*flock)(struct file * , int  , struct file_lock * ) ;
 2030   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
 2031                           unsigned int  ) ;
 2032   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
 2033                          unsigned int  ) ;
 2034   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
 2035   long (*fallocate)(struct file * , int  , loff_t  , loff_t  ) ;
 2036};
 2037#line 1637 "include/linux/fs.h"
 2038struct inode_operations {
 2039   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
 2040   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
 2041   int (*permission)(struct inode * , int  ) ;
 2042   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
 2043   int (*readlink)(struct dentry * , char * , int  ) ;
 2044   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
 2045   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
 2046   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
 2047   int (*unlink)(struct inode * , struct dentry * ) ;
 2048   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
 2049   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
 2050   int (*rmdir)(struct inode * , struct dentry * ) ;
 2051   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
 2052   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
 2053   void (*truncate)(struct inode * ) ;
 2054   int (*setattr)(struct dentry * , struct iattr * ) ;
 2055   int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
 2056   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
 2057   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
 2058   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
 2059   int (*removexattr)(struct dentry * , char const   * ) ;
 2060   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
 2061   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64  , u64  ) ;
 2062};
 2063#line 1682 "include/linux/fs.h"
 2064struct super_operations {
 2065   struct inode *(*alloc_inode)(struct super_block * ) ;
 2066   void (*destroy_inode)(struct inode * ) ;
 2067   void (*dirty_inode)(struct inode * , int  ) ;
 2068   int (*write_inode)(struct inode * , struct writeback_control * ) ;
 2069   int (*drop_inode)(struct inode * ) ;
 2070   void (*evict_inode)(struct inode * ) ;
 2071   void (*put_super)(struct super_block * ) ;
 2072   void (*write_super)(struct super_block * ) ;
 2073   int (*sync_fs)(struct super_block * , int  ) ;
 2074   int (*freeze_fs)(struct super_block * ) ;
 2075   int (*unfreeze_fs)(struct super_block * ) ;
 2076   int (*statfs)(struct dentry * , struct kstatfs * ) ;
 2077   int (*remount_fs)(struct super_block * , int * , char * ) ;
 2078   void (*umount_begin)(struct super_block * ) ;
 2079   int (*show_options)(struct seq_file * , struct dentry * ) ;
 2080   int (*show_devname)(struct seq_file * , struct dentry * ) ;
 2081   int (*show_path)(struct seq_file * , struct dentry * ) ;
 2082   int (*show_stats)(struct seq_file * , struct dentry * ) ;
 2083   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
 2084   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
 2085                          loff_t  ) ;
 2086   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
 2087   int (*nr_cached_objects)(struct super_block * ) ;
 2088   void (*free_cached_objects)(struct super_block * , int  ) ;
 2089};
 2090#line 1834 "include/linux/fs.h"
 2091struct file_system_type {
 2092   char const   *name ;
 2093   int fs_flags ;
 2094   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
 2095   void (*kill_sb)(struct super_block * ) ;
 2096   struct module *owner ;
 2097   struct file_system_type *next ;
 2098   struct hlist_head fs_supers ;
 2099   struct lock_class_key s_lock_key ;
 2100   struct lock_class_key s_umount_key ;
 2101   struct lock_class_key s_vfs_rename_key ;
 2102   struct lock_class_key i_lock_key ;
 2103   struct lock_class_key i_mutex_key ;
 2104   struct lock_class_key i_mutex_dir_key ;
 2105};
 2106#line 6 "include/asm-generic/termbits.h"
 2107typedef unsigned char cc_t;
 2108#line 7 "include/asm-generic/termbits.h"
 2109typedef unsigned int speed_t;
 2110#line 8 "include/asm-generic/termbits.h"
 2111typedef unsigned int tcflag_t;
 2112#line 30 "include/asm-generic/termbits.h"
 2113struct ktermios {
 2114   tcflag_t c_iflag ;
 2115   tcflag_t c_oflag ;
 2116   tcflag_t c_cflag ;
 2117   tcflag_t c_lflag ;
 2118   cc_t c_line ;
 2119   cc_t c_cc[19U] ;
 2120   speed_t c_ispeed ;
 2121   speed_t c_ospeed ;
 2122};
 2123#line 41 "include/asm-generic/termbits.h"
 2124struct winsize {
 2125   unsigned short ws_row ;
 2126   unsigned short ws_col ;
 2127   unsigned short ws_xpixel ;
 2128   unsigned short ws_ypixel ;
 2129};
 2130#line 30 "include/asm-generic/termios.h"
 2131struct exception_table_entry {
 2132   unsigned long insn ;
 2133   unsigned long fixup ;
 2134};
 2135#line 138 "include/asm-generic/termios.h"
 2136struct termiox {
 2137   __u16 x_hflag ;
 2138   __u16 x_cflag ;
 2139   __u16 x_rflag[5U] ;
 2140   __u16 x_sflag ;
 2141};
 2142#line 16 "include/linux/termios.h"
 2143struct cdev {
 2144   struct kobject kobj ;
 2145   struct module *owner ;
 2146   struct file_operations  const  *ops ;
 2147   struct list_head list ;
 2148   dev_t dev ;
 2149   unsigned int count ;
 2150};
 2151#line 34 "include/linux/cdev.h"
 2152struct tty_struct;
 2153#line 34
 2154struct tty_struct;
 2155#line 35
 2156struct tty_driver;
 2157#line 35
 2158struct tty_driver;
 2159#line 36
 2160struct serial_icounter_struct;
 2161#line 36
 2162struct serial_icounter_struct;
 2163#line 37 "include/linux/cdev.h"
 2164struct tty_operations {
 2165   struct tty_struct *(*lookup)(struct tty_driver * , struct inode * , int  ) ;
 2166   int (*install)(struct tty_driver * , struct tty_struct * ) ;
 2167   void (*remove)(struct tty_driver * , struct tty_struct * ) ;
 2168   int (*open)(struct tty_struct * , struct file * ) ;
 2169   void (*close)(struct tty_struct * , struct file * ) ;
 2170   void (*shutdown)(struct tty_struct * ) ;
 2171   void (*cleanup)(struct tty_struct * ) ;
 2172   int (*write)(struct tty_struct * , unsigned char const   * , int  ) ;
 2173   int (*put_char)(struct tty_struct * , unsigned char  ) ;
 2174   void (*flush_chars)(struct tty_struct * ) ;
 2175   int (*write_room)(struct tty_struct * ) ;
 2176   int (*chars_in_buffer)(struct tty_struct * ) ;
 2177   int (*ioctl)(struct tty_struct * , unsigned int  , unsigned long  ) ;
 2178   long (*compat_ioctl)(struct tty_struct * , unsigned int  , unsigned long  ) ;
 2179   void (*set_termios)(struct tty_struct * , struct ktermios * ) ;
 2180   void (*throttle)(struct tty_struct * ) ;
 2181   void (*unthrottle)(struct tty_struct * ) ;
 2182   void (*stop)(struct tty_struct * ) ;
 2183   void (*start)(struct tty_struct * ) ;
 2184   void (*hangup)(struct tty_struct * ) ;
 2185   int (*break_ctl)(struct tty_struct * , int  ) ;
 2186   void (*flush_buffer)(struct tty_struct * ) ;
 2187   void (*set_ldisc)(struct tty_struct * ) ;
 2188   void (*wait_until_sent)(struct tty_struct * , int  ) ;
 2189   void (*send_xchar)(struct tty_struct * , char  ) ;
 2190   int (*tiocmget)(struct tty_struct * ) ;
 2191   int (*tiocmset)(struct tty_struct * , unsigned int  , unsigned int  ) ;
 2192   int (*resize)(struct tty_struct * , struct winsize * ) ;
 2193   int (*set_termiox)(struct tty_struct * , struct termiox * ) ;
 2194   int (*get_icount)(struct tty_struct * , struct serial_icounter_struct * ) ;
 2195   int (*poll_init)(struct tty_driver * , int  , char * ) ;
 2196   int (*poll_get_char)(struct tty_driver * , int  ) ;
 2197   void (*poll_put_char)(struct tty_driver * , int  , char  ) ;
 2198   struct file_operations  const  *proc_fops ;
 2199};
 2200#line 293 "include/linux/tty_driver.h"
 2201struct proc_dir_entry;
 2202#line 293 "include/linux/tty_driver.h"
 2203struct tty_driver {
 2204   int magic ;
 2205   struct kref kref ;
 2206   struct cdev cdev ;
 2207   struct module *owner ;
 2208   char const   *driver_name ;
 2209   char const   *name ;
 2210   int name_base ;
 2211   int major ;
 2212   int minor_start ;
 2213   int num ;
 2214   short type ;
 2215   short subtype ;
 2216   struct ktermios init_termios ;
 2217   int flags ;
 2218   struct proc_dir_entry *proc_entry ;
 2219   struct tty_driver *other ;
 2220   struct tty_struct **ttys ;
 2221   struct ktermios **termios ;
 2222   void *driver_state ;
 2223   struct tty_operations  const  *ops ;
 2224   struct list_head tty_drivers ;
 2225};
 2226#line 122 "include/linux/pps.h"
 2227struct klist_node;
 2228#line 122
 2229struct klist_node;
 2230#line 37 "include/linux/klist.h"
 2231struct klist_node {
 2232   void *n_klist ;
 2233   struct list_head n_node ;
 2234   struct kref n_ref ;
 2235};
 2236#line 67
 2237struct dma_map_ops;
 2238#line 67 "include/linux/klist.h"
 2239struct dev_archdata {
 2240   void *acpi_handle ;
 2241   struct dma_map_ops *dma_ops ;
 2242   void *iommu ;
 2243};
 2244#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 2245struct device_private;
 2246#line 17
 2247struct device_private;
 2248#line 18
 2249struct device_driver;
 2250#line 18
 2251struct device_driver;
 2252#line 19
 2253struct driver_private;
 2254#line 19
 2255struct driver_private;
 2256#line 20
 2257struct class;
 2258#line 20
 2259struct class;
 2260#line 21
 2261struct subsys_private;
 2262#line 21
 2263struct subsys_private;
 2264#line 22
 2265struct bus_type;
 2266#line 22
 2267struct bus_type;
 2268#line 23
 2269struct device_node;
 2270#line 23
 2271struct device_node;
 2272#line 24
 2273struct iommu_ops;
 2274#line 24
 2275struct iommu_ops;
 2276#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 2277struct bus_attribute {
 2278   struct attribute attr ;
 2279   ssize_t (*show)(struct bus_type * , char * ) ;
 2280   ssize_t (*store)(struct bus_type * , char const   * , size_t  ) ;
 2281};
 2282#line 51 "include/linux/device.h"
 2283struct device_attribute;
 2284#line 51
 2285struct driver_attribute;
 2286#line 51 "include/linux/device.h"
 2287struct bus_type {
 2288   char const   *name ;
 2289   char const   *dev_name ;
 2290   struct device *dev_root ;
 2291   struct bus_attribute *bus_attrs ;
 2292   struct device_attribute *dev_attrs ;
 2293   struct driver_attribute *drv_attrs ;
 2294   int (*match)(struct device * , struct device_driver * ) ;
 2295   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
 2296   int (*probe)(struct device * ) ;
 2297   int (*remove)(struct device * ) ;
 2298   void (*shutdown)(struct device * ) ;
 2299   int (*suspend)(struct device * , pm_message_t  ) ;
 2300   int (*resume)(struct device * ) ;
 2301   struct dev_pm_ops  const  *pm ;
 2302   struct iommu_ops *iommu_ops ;
 2303   struct subsys_private *p ;
 2304};
 2305#line 125
 2306struct device_type;
 2307#line 182
 2308struct of_device_id;
 2309#line 182 "include/linux/device.h"
 2310struct device_driver {
 2311   char const   *name ;
 2312   struct bus_type *bus ;
 2313   struct module *owner ;
 2314   char const   *mod_name ;
 2315   bool suppress_bind_attrs ;
 2316   struct of_device_id  const  *of_match_table ;
 2317   int (*probe)(struct device * ) ;
 2318   int (*remove)(struct device * ) ;
 2319   void (*shutdown)(struct device * ) ;
 2320   int (*suspend)(struct device * , pm_message_t  ) ;
 2321   int (*resume)(struct device * ) ;
 2322   struct attribute_group  const  **groups ;
 2323   struct dev_pm_ops  const  *pm ;
 2324   struct driver_private *p ;
 2325};
 2326#line 245 "include/linux/device.h"
 2327struct driver_attribute {
 2328   struct attribute attr ;
 2329   ssize_t (*show)(struct device_driver * , char * ) ;
 2330   ssize_t (*store)(struct device_driver * , char const   * , size_t  ) ;
 2331};
 2332#line 299
 2333struct class_attribute;
 2334#line 299 "include/linux/device.h"
 2335struct class {
 2336   char const   *name ;
 2337   struct module *owner ;
 2338   struct class_attribute *class_attrs ;
 2339   struct device_attribute *dev_attrs ;
 2340   struct bin_attribute *dev_bin_attrs ;
 2341   struct kobject *dev_kobj ;
 2342   int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
 2343   char *(*devnode)(struct device * , umode_t * ) ;
 2344   void (*class_release)(struct class * ) ;
 2345   void (*dev_release)(struct device * ) ;
 2346   int (*suspend)(struct device * , pm_message_t  ) ;
 2347   int (*resume)(struct device * ) ;
 2348   struct kobj_ns_type_operations  const  *ns_type ;
 2349   void const   *(*namespace)(struct device * ) ;
 2350   struct dev_pm_ops  const  *pm ;
 2351   struct subsys_private *p ;
 2352};
 2353#line 394 "include/linux/device.h"
 2354struct class_attribute {
 2355   struct attribute attr ;
 2356   ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
 2357   ssize_t (*store)(struct class * , struct class_attribute * , char const   * , size_t  ) ;
 2358   void const   *(*namespace)(struct class * , struct class_attribute  const  * ) ;
 2359};
 2360#line 447 "include/linux/device.h"
 2361struct device_type {
 2362   char const   *name ;
 2363   struct attribute_group  const  **groups ;
 2364   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
 2365   char *(*devnode)(struct device * , umode_t * ) ;
 2366   void (*release)(struct device * ) ;
 2367   struct dev_pm_ops  const  *pm ;
 2368};
 2369#line 474 "include/linux/device.h"
 2370struct device_attribute {
 2371   struct attribute attr ;
 2372   ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
 2373   ssize_t (*store)(struct device * , struct device_attribute * , char const   * ,
 2374                    size_t  ) ;
 2375};
 2376#line 557 "include/linux/device.h"
 2377struct device_dma_parameters {
 2378   unsigned int max_segment_size ;
 2379   unsigned long segment_boundary_mask ;
 2380};
 2381#line 567
 2382struct dma_coherent_mem;
 2383#line 567 "include/linux/device.h"
 2384struct device {
 2385   struct device *parent ;
 2386   struct device_private *p ;
 2387   struct kobject kobj ;
 2388   char const   *init_name ;
 2389   struct device_type  const  *type ;
 2390   struct mutex mutex ;
 2391   struct bus_type *bus ;
 2392   struct device_driver *driver ;
 2393   void *platform_data ;
 2394   struct dev_pm_info power ;
 2395   struct dev_pm_domain *pm_domain ;
 2396   int numa_node ;
 2397   u64 *dma_mask ;
 2398   u64 coherent_dma_mask ;
 2399   struct device_dma_parameters *dma_parms ;
 2400   struct list_head dma_pools ;
 2401   struct dma_coherent_mem *dma_mem ;
 2402   struct dev_archdata archdata ;
 2403   struct device_node *of_node ;
 2404   dev_t devt ;
 2405   u32 id ;
 2406   spinlock_t devres_lock ;
 2407   struct list_head devres_head ;
 2408   struct klist_node knode_class ;
 2409   struct class *class ;
 2410   struct attribute_group  const  **groups ;
 2411   void (*release)(struct device * ) ;
 2412};
 2413#line 681 "include/linux/device.h"
 2414struct wakeup_source {
 2415   char const   *name ;
 2416   struct list_head entry ;
 2417   spinlock_t lock ;
 2418   struct timer_list timer ;
 2419   unsigned long timer_expires ;
 2420   ktime_t total_time ;
 2421   ktime_t max_time ;
 2422   ktime_t last_time ;
 2423   unsigned long event_count ;
 2424   unsigned long active_count ;
 2425   unsigned long relax_count ;
 2426   unsigned long hit_count ;
 2427   unsigned char active : 1 ;
 2428};
 2429#line 48 "include/linux/pps_kernel.h"
 2430struct pps_event_time {
 2431   struct timespec ts_real ;
 2432};
 2433#line 116 "include/linux/pps_kernel.h"
 2434struct tty_ldisc_ops {
 2435   int magic ;
 2436   char *name ;
 2437   int num ;
 2438   int flags ;
 2439   int (*open)(struct tty_struct * ) ;
 2440   void (*close)(struct tty_struct * ) ;
 2441   void (*flush_buffer)(struct tty_struct * ) ;
 2442   ssize_t (*chars_in_buffer)(struct tty_struct * ) ;
 2443   ssize_t (*read)(struct tty_struct * , struct file * , unsigned char * , size_t  ) ;
 2444   ssize_t (*write)(struct tty_struct * , struct file * , unsigned char const   * ,
 2445                    size_t  ) ;
 2446   int (*ioctl)(struct tty_struct * , struct file * , unsigned int  , unsigned long  ) ;
 2447   long (*compat_ioctl)(struct tty_struct * , struct file * , unsigned int  , unsigned long  ) ;
 2448   void (*set_termios)(struct tty_struct * , struct ktermios * ) ;
 2449   unsigned int (*poll)(struct tty_struct * , struct file * , struct poll_table_struct * ) ;
 2450   int (*hangup)(struct tty_struct * ) ;
 2451   void (*receive_buf)(struct tty_struct * , unsigned char const   * , char * , int  ) ;
 2452   void (*write_wakeup)(struct tty_struct * ) ;
 2453   void (*dcd_change)(struct tty_struct * , unsigned int  , struct pps_event_time * ) ;
 2454   struct module *owner ;
 2455   int refcount ;
 2456};
 2457#line 153 "include/linux/tty_ldisc.h"
 2458struct tty_ldisc {
 2459   struct tty_ldisc_ops *ops ;
 2460   atomic_t users ;
 2461};
 2462#line 158 "include/linux/tty_ldisc.h"
 2463struct tty_buffer {
 2464   struct tty_buffer *next ;
 2465   char *char_buf_ptr ;
 2466   unsigned char *flag_buf_ptr ;
 2467   int used ;
 2468   int size ;
 2469   int commit ;
 2470   int read ;
 2471   unsigned long data[0U] ;
 2472};
 2473#line 75 "include/linux/tty.h"
 2474struct tty_bufhead {
 2475   struct work_struct work ;
 2476   spinlock_t lock ;
 2477   struct tty_buffer *head ;
 2478   struct tty_buffer *tail ;
 2479   struct tty_buffer *free ;
 2480   int memory_used ;
 2481};
 2482#line 95
 2483struct signal_struct;
 2484#line 95
 2485struct signal_struct;
 2486#line 96
 2487struct tty_port;
 2488#line 96
 2489struct tty_port;
 2490#line 97 "include/linux/tty.h"
 2491struct tty_port_operations {
 2492   int (*carrier_raised)(struct tty_port * ) ;
 2493   void (*dtr_rts)(struct tty_port * , int  ) ;
 2494   void (*shutdown)(struct tty_port * ) ;
 2495   void (*drop)(struct tty_port * ) ;
 2496   int (*activate)(struct tty_port * , struct tty_struct * ) ;
 2497   void (*destruct)(struct tty_port * ) ;
 2498};
 2499#line 222 "include/linux/tty.h"
 2500struct tty_port {
 2501   struct tty_struct *tty ;
 2502   struct tty_port_operations  const  *ops ;
 2503   spinlock_t lock ;
 2504   int blocked_open ;
 2505   int count ;
 2506   wait_queue_head_t open_wait ;
 2507   wait_queue_head_t close_wait ;
 2508   wait_queue_head_t delta_msr_wait ;
 2509   unsigned long flags ;
 2510   unsigned char console : 1 ;
 2511   struct mutex mutex ;
 2512   struct mutex buf_mutex ;
 2513   unsigned char *xmit_buf ;
 2514   unsigned int close_delay ;
 2515   unsigned int closing_wait ;
 2516   int drain_delay ;
 2517   struct kref kref ;
 2518};
 2519#line 244 "include/linux/tty.h"
 2520struct tty_struct {
 2521   int magic ;
 2522   struct kref kref ;
 2523   struct device *dev ;
 2524   struct tty_driver *driver ;
 2525   struct tty_operations  const  *ops ;
 2526   int index ;
 2527   struct mutex ldisc_mutex ;
 2528   struct tty_ldisc *ldisc ;
 2529   struct mutex termios_mutex ;
 2530   spinlock_t ctrl_lock ;
 2531   struct ktermios *termios ;
 2532   struct ktermios *termios_locked ;
 2533   struct termiox *termiox ;
 2534   char name[64U] ;
 2535   struct pid *pgrp ;
 2536   struct pid *session ;
 2537   unsigned long flags ;
 2538   int count ;
 2539   struct winsize winsize ;
 2540   unsigned char stopped : 1 ;
 2541   unsigned char hw_stopped : 1 ;
 2542   unsigned char flow_stopped : 1 ;
 2543   unsigned char packet : 1 ;
 2544   unsigned char low_latency : 1 ;
 2545   unsigned char warned : 1 ;
 2546   unsigned char ctrl_status ;
 2547   unsigned int receive_room ;
 2548   struct tty_struct *link ;
 2549   struct fasync_struct *fasync ;
 2550   struct tty_bufhead buf ;
 2551   int alt_speed ;
 2552   wait_queue_head_t write_wait ;
 2553   wait_queue_head_t read_wait ;
 2554   struct work_struct hangup_work ;
 2555   void *disc_data ;
 2556   void *driver_data ;
 2557   struct list_head tty_files ;
 2558   unsigned int column ;
 2559   unsigned char lnext : 1 ;
 2560   unsigned char erasing : 1 ;
 2561   unsigned char raw : 1 ;
 2562   unsigned char real_raw : 1 ;
 2563   unsigned char icanon : 1 ;
 2564   unsigned char closing : 1 ;
 2565   unsigned char echo_overrun : 1 ;
 2566   unsigned short minimum_to_wake ;
 2567   unsigned long overrun_time ;
 2568   int num_overrun ;
 2569   unsigned long process_char_map[4U] ;
 2570   char *read_buf ;
 2571   int read_head ;
 2572   int read_tail ;
 2573   int read_cnt ;
 2574   unsigned long read_flags[64U] ;
 2575   unsigned char *echo_buf ;
 2576   unsigned int echo_pos ;
 2577   unsigned int echo_cnt ;
 2578   int canon_data ;
 2579   unsigned long canon_head ;
 2580   unsigned int canon_column ;
 2581   struct mutex atomic_read_lock ;
 2582   struct mutex atomic_write_lock ;
 2583   struct mutex output_lock ;
 2584   struct mutex echo_lock ;
 2585   unsigned char *write_buf ;
 2586   int write_cnt ;
 2587   spinlock_t read_lock ;
 2588   struct work_struct SAK_work ;
 2589   struct tty_port *port ;
 2590};
 2591#line 27 "include/linux/tty_flip.h"
 2592struct async_icount {
 2593   __u32 cts ;
 2594   __u32 dsr ;
 2595   __u32 rng ;
 2596   __u32 dcd ;
 2597   __u32 tx ;
 2598   __u32 rx ;
 2599   __u32 frame ;
 2600   __u32 parity ;
 2601   __u32 overrun ;
 2602   __u32 brk ;
 2603   __u32 buf_overrun ;
 2604};
 2605#line 27 "include/linux/serial.h"
 2606struct serial_struct {
 2607   int type ;
 2608   int line ;
 2609   unsigned int port ;
 2610   int irq ;
 2611   int flags ;
 2612   int xmit_fifo_size ;
 2613   int custom_divisor ;
 2614   int baud_base ;
 2615   unsigned short close_delay ;
 2616   char io_type ;
 2617   char reserved_char[1U] ;
 2618   int hub6 ;
 2619   unsigned short closing_wait ;
 2620   unsigned short closing_wait2 ;
 2621   unsigned char *iomem_base ;
 2622   unsigned short iomem_reg_shift ;
 2623   unsigned int port_high ;
 2624   unsigned long iomap_base ;
 2625};
 2626#line 188 "include/linux/serial.h"
 2627struct serial_icounter_struct {
 2628   int cts ;
 2629   int dsr ;
 2630   int rng ;
 2631   int dcd ;
 2632   int rx ;
 2633   int tx ;
 2634   int frame ;
 2635   int overrun ;
 2636   int parity ;
 2637   int brk ;
 2638   int buf_overrun ;
 2639   int reserved[9U] ;
 2640};
 2641#line 12 "include/linux/mod_devicetable.h"
 2642typedef unsigned long kernel_ulong_t;
 2643#line 38 "include/linux/mod_devicetable.h"
 2644struct usb_device_id {
 2645   __u16 match_flags ;
 2646   __u16 idVendor ;
 2647   __u16 idProduct ;
 2648   __u16 bcdDevice_lo ;
 2649   __u16 bcdDevice_hi ;
 2650   __u8 bDeviceClass ;
 2651   __u8 bDeviceSubClass ;
 2652   __u8 bDeviceProtocol ;
 2653   __u8 bInterfaceClass ;
 2654   __u8 bInterfaceSubClass ;
 2655   __u8 bInterfaceProtocol ;
 2656   kernel_ulong_t driver_info ;
 2657};
 2658#line 215 "include/linux/mod_devicetable.h"
 2659struct of_device_id {
 2660   char name[32U] ;
 2661   char type[32U] ;
 2662   char compatible[128U] ;
 2663   void *data ;
 2664};
 2665#line 584 "include/linux/mod_devicetable.h"
 2666struct usb_ctrlrequest {
 2667   __u8 bRequestType ;
 2668   __u8 bRequest ;
 2669   __le16 wValue ;
 2670   __le16 wIndex ;
 2671   __le16 wLength ;
 2672};
 2673#line 245 "include/linux/usb/ch9.h"
 2674struct usb_device_descriptor {
 2675   __u8 bLength ;
 2676   __u8 bDescriptorType ;
 2677   __le16 bcdUSB ;
 2678   __u8 bDeviceClass ;
 2679   __u8 bDeviceSubClass ;
 2680   __u8 bDeviceProtocol ;
 2681   __u8 bMaxPacketSize0 ;
 2682   __le16 idVendor ;
 2683   __le16 idProduct ;
 2684   __le16 bcdDevice ;
 2685   __u8 iManufacturer ;
 2686   __u8 iProduct ;
 2687   __u8 iSerialNumber ;
 2688   __u8 bNumConfigurations ;
 2689};
 2690#line 267 "include/linux/usb/ch9.h"
 2691struct usb_config_descriptor {
 2692   __u8 bLength ;
 2693   __u8 bDescriptorType ;
 2694   __le16 wTotalLength ;
 2695   __u8 bNumInterfaces ;
 2696   __u8 bConfigurationValue ;
 2697   __u8 iConfiguration ;
 2698   __u8 bmAttributes ;
 2699   __u8 bMaxPower ;
 2700};
 2701#line 335 "include/linux/usb/ch9.h"
 2702struct usb_interface_descriptor {
 2703   __u8 bLength ;
 2704   __u8 bDescriptorType ;
 2705   __u8 bInterfaceNumber ;
 2706   __u8 bAlternateSetting ;
 2707   __u8 bNumEndpoints ;
 2708   __u8 bInterfaceClass ;
 2709   __u8 bInterfaceSubClass ;
 2710   __u8 bInterfaceProtocol ;
 2711   __u8 iInterface ;
 2712};
 2713#line 355 "include/linux/usb/ch9.h"
 2714struct usb_endpoint_descriptor {
 2715   __u8 bLength ;
 2716   __u8 bDescriptorType ;
 2717   __u8 bEndpointAddress ;
 2718   __u8 bmAttributes ;
 2719   __le16 wMaxPacketSize ;
 2720   __u8 bInterval ;
 2721   __u8 bRefresh ;
 2722   __u8 bSynchAddress ;
 2723};
 2724#line 594 "include/linux/usb/ch9.h"
 2725struct usb_ss_ep_comp_descriptor {
 2726   __u8 bLength ;
 2727   __u8 bDescriptorType ;
 2728   __u8 bMaxBurst ;
 2729   __u8 bmAttributes ;
 2730   __le16 wBytesPerInterval ;
 2731};
 2732#line 673 "include/linux/usb/ch9.h"
 2733struct usb_interface_assoc_descriptor {
 2734   __u8 bLength ;
 2735   __u8 bDescriptorType ;
 2736   __u8 bFirstInterface ;
 2737   __u8 bInterfaceCount ;
 2738   __u8 bFunctionClass ;
 2739   __u8 bFunctionSubClass ;
 2740   __u8 bFunctionProtocol ;
 2741   __u8 iFunction ;
 2742};
 2743#line 732 "include/linux/usb/ch9.h"
 2744struct usb_bos_descriptor {
 2745   __u8 bLength ;
 2746   __u8 bDescriptorType ;
 2747   __le16 wTotalLength ;
 2748   __u8 bNumDeviceCaps ;
 2749};
 2750#line 782 "include/linux/usb/ch9.h"
 2751struct usb_ext_cap_descriptor {
 2752   __u8 bLength ;
 2753   __u8 bDescriptorType ;
 2754   __u8 bDevCapabilityType ;
 2755   __le32 bmAttributes ;
 2756};
 2757#line 792 "include/linux/usb/ch9.h"
 2758struct usb_ss_cap_descriptor {
 2759   __u8 bLength ;
 2760   __u8 bDescriptorType ;
 2761   __u8 bDevCapabilityType ;
 2762   __u8 bmAttributes ;
 2763   __le16 wSpeedSupported ;
 2764   __u8 bFunctionalitySupport ;
 2765   __u8 bU1devExitLat ;
 2766   __le16 bU2DevExitLat ;
 2767};
 2768#line 821 "include/linux/usb/ch9.h"
 2769struct usb_ss_container_id_descriptor {
 2770   __u8 bLength ;
 2771   __u8 bDescriptorType ;
 2772   __u8 bDevCapabilityType ;
 2773   __u8 bReserved ;
 2774   __u8 ContainerID[16U] ;
 2775};
 2776#line 886
 2777enum usb_device_speed {
 2778    USB_SPEED_UNKNOWN = 0,
 2779    USB_SPEED_LOW = 1,
 2780    USB_SPEED_FULL = 2,
 2781    USB_SPEED_HIGH = 3,
 2782    USB_SPEED_WIRELESS = 4,
 2783    USB_SPEED_SUPER = 5
 2784} ;
 2785#line 908
 2786enum usb_device_state {
 2787    USB_STATE_NOTATTACHED = 0,
 2788    USB_STATE_ATTACHED = 1,
 2789    USB_STATE_POWERED = 2,
 2790    USB_STATE_RECONNECTING = 3,
 2791    USB_STATE_UNAUTHENTICATED = 4,
 2792    USB_STATE_DEFAULT = 5,
 2793    USB_STATE_ADDRESS = 6,
 2794    USB_STATE_CONFIGURED = 7,
 2795    USB_STATE_SUSPENDED = 8
 2796} ;
 2797#line 189 "include/linux/hardirq.h"
 2798struct timerqueue_node {
 2799   struct rb_node node ;
 2800   ktime_t expires ;
 2801};
 2802#line 12 "include/linux/timerqueue.h"
 2803struct timerqueue_head {
 2804   struct rb_root head ;
 2805   struct timerqueue_node *next ;
 2806};
 2807#line 50
 2808struct hrtimer_clock_base;
 2809#line 50
 2810struct hrtimer_clock_base;
 2811#line 51
 2812struct hrtimer_cpu_base;
 2813#line 51
 2814struct hrtimer_cpu_base;
 2815#line 60
 2816enum hrtimer_restart {
 2817    HRTIMER_NORESTART = 0,
 2818    HRTIMER_RESTART = 1
 2819} ;
 2820#line 65 "include/linux/timerqueue.h"
 2821struct hrtimer {
 2822   struct timerqueue_node node ;
 2823   ktime_t _softexpires ;
 2824   enum hrtimer_restart (*function)(struct hrtimer * ) ;
 2825   struct hrtimer_clock_base *base ;
 2826   unsigned long state ;
 2827   int start_pid ;
 2828   void *start_site ;
 2829   char start_comm[16U] ;
 2830};
 2831#line 132 "include/linux/hrtimer.h"
 2832struct hrtimer_clock_base {
 2833   struct hrtimer_cpu_base *cpu_base ;
 2834   int index ;
 2835   clockid_t clockid ;
 2836   struct timerqueue_head active ;
 2837   ktime_t resolution ;
 2838   ktime_t (*get_time)(void) ;
 2839   ktime_t softirq_time ;
 2840   ktime_t offset ;
 2841};
 2842#line 162 "include/linux/hrtimer.h"
 2843struct hrtimer_cpu_base {
 2844   raw_spinlock_t lock ;
 2845   unsigned long active_bases ;
 2846   ktime_t expires_next ;
 2847   int hres_active ;
 2848   int hang_detected ;
 2849   unsigned long nr_events ;
 2850   unsigned long nr_retries ;
 2851   unsigned long nr_hangs ;
 2852   ktime_t max_hang_time ;
 2853   struct hrtimer_clock_base clock_base[3U] ;
 2854};
 2855#line 55 "include/linux/sched.h"
 2856union __anonunion_ldv_21500_148 {
 2857   unsigned long index ;
 2858   void *freelist ;
 2859};
 2860#line 55 "include/linux/sched.h"
 2861struct __anonstruct_ldv_21510_152 {
 2862   unsigned short inuse ;
 2863   unsigned short objects : 15 ;
 2864   unsigned char frozen : 1 ;
 2865};
 2866#line 55 "include/linux/sched.h"
 2867union __anonunion_ldv_21511_151 {
 2868   atomic_t _mapcount ;
 2869   struct __anonstruct_ldv_21510_152 ldv_21510 ;
 2870};
 2871#line 55 "include/linux/sched.h"
 2872struct __anonstruct_ldv_21513_150 {
 2873   union __anonunion_ldv_21511_151 ldv_21511 ;
 2874   atomic_t _count ;
 2875};
 2876#line 55 "include/linux/sched.h"
 2877union __anonunion_ldv_21514_149 {
 2878   unsigned long counters ;
 2879   struct __anonstruct_ldv_21513_150 ldv_21513 ;
 2880};
 2881#line 55 "include/linux/sched.h"
 2882struct __anonstruct_ldv_21515_147 {
 2883   union __anonunion_ldv_21500_148 ldv_21500 ;
 2884   union __anonunion_ldv_21514_149 ldv_21514 ;
 2885};
 2886#line 55 "include/linux/sched.h"
 2887struct __anonstruct_ldv_21522_154 {
 2888   struct page *next ;
 2889   int pages ;
 2890   int pobjects ;
 2891};
 2892#line 55 "include/linux/sched.h"
 2893union __anonunion_ldv_21523_153 {
 2894   struct list_head lru ;
 2895   struct __anonstruct_ldv_21522_154 ldv_21522 ;
 2896};
 2897#line 55 "include/linux/sched.h"
 2898union __anonunion_ldv_21528_155 {
 2899   unsigned long private ;
 2900   struct kmem_cache *slab ;
 2901   struct page *first_page ;
 2902};
 2903#line 55 "include/linux/sched.h"
 2904struct page {
 2905   unsigned long flags ;
 2906   struct address_space *mapping ;
 2907   struct __anonstruct_ldv_21515_147 ldv_21515 ;
 2908   union __anonunion_ldv_21523_153 ldv_21523 ;
 2909   union __anonunion_ldv_21528_155 ldv_21528 ;
 2910   unsigned long debug_flags ;
 2911};
 2912#line 192 "include/linux/mm_types.h"
 2913struct __anonstruct_vm_set_157 {
 2914   struct list_head list ;
 2915   void *parent ;
 2916   struct vm_area_struct *head ;
 2917};
 2918#line 192 "include/linux/mm_types.h"
 2919union __anonunion_shared_156 {
 2920   struct __anonstruct_vm_set_157 vm_set ;
 2921   struct raw_prio_tree_node prio_tree_node ;
 2922};
 2923#line 192
 2924struct anon_vma;
 2925#line 192
 2926struct vm_operations_struct;
 2927#line 192
 2928struct mempolicy;
 2929#line 192 "include/linux/mm_types.h"
 2930struct vm_area_struct {
 2931   struct mm_struct *vm_mm ;
 2932   unsigned long vm_start ;
 2933   unsigned long vm_end ;
 2934   struct vm_area_struct *vm_next ;
 2935   struct vm_area_struct *vm_prev ;
 2936   pgprot_t vm_page_prot ;
 2937   unsigned long vm_flags ;
 2938   struct rb_node vm_rb ;
 2939   union __anonunion_shared_156 shared ;
 2940   struct list_head anon_vma_chain ;
 2941   struct anon_vma *anon_vma ;
 2942   struct vm_operations_struct  const  *vm_ops ;
 2943   unsigned long vm_pgoff ;
 2944   struct file *vm_file ;
 2945   void *vm_private_data ;
 2946   struct mempolicy *vm_policy ;
 2947};
 2948#line 255 "include/linux/mm_types.h"
 2949struct core_thread {
 2950   struct task_struct *task ;
 2951   struct core_thread *next ;
 2952};
 2953#line 261 "include/linux/mm_types.h"
 2954struct core_state {
 2955   atomic_t nr_threads ;
 2956   struct core_thread dumper ;
 2957   struct completion startup ;
 2958};
 2959#line 274 "include/linux/mm_types.h"
 2960struct mm_rss_stat {
 2961   atomic_long_t count[3U] ;
 2962};
 2963#line 287
 2964struct linux_binfmt;
 2965#line 287
 2966struct mmu_notifier_mm;
 2967#line 287 "include/linux/mm_types.h"
 2968struct mm_struct {
 2969   struct vm_area_struct *mmap ;
 2970   struct rb_root mm_rb ;
 2971   struct vm_area_struct *mmap_cache ;
 2972   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
 2973                                      unsigned long  , unsigned long  ) ;
 2974   void (*unmap_area)(struct mm_struct * , unsigned long  ) ;
 2975   unsigned long mmap_base ;
 2976   unsigned long task_size ;
 2977   unsigned long cached_hole_size ;
 2978   unsigned long free_area_cache ;
 2979   pgd_t *pgd ;
 2980   atomic_t mm_users ;
 2981   atomic_t mm_count ;
 2982   int map_count ;
 2983   spinlock_t page_table_lock ;
 2984   struct rw_semaphore mmap_sem ;
 2985   struct list_head mmlist ;
 2986   unsigned long hiwater_rss ;
 2987   unsigned long hiwater_vm ;
 2988   unsigned long total_vm ;
 2989   unsigned long locked_vm ;
 2990   unsigned long pinned_vm ;
 2991   unsigned long shared_vm ;
 2992   unsigned long exec_vm ;
 2993   unsigned long stack_vm ;
 2994   unsigned long reserved_vm ;
 2995   unsigned long def_flags ;
 2996   unsigned long nr_ptes ;
 2997   unsigned long start_code ;
 2998   unsigned long end_code ;
 2999   unsigned long start_data ;
 3000   unsigned long end_data ;
 3001   unsigned long start_brk ;
 3002   unsigned long brk ;
 3003   unsigned long start_stack ;
 3004   unsigned long arg_start ;
 3005   unsigned long arg_end ;
 3006   unsigned long env_start ;
 3007   unsigned long env_end ;
 3008   unsigned long saved_auxv[44U] ;
 3009   struct mm_rss_stat rss_stat ;
 3010   struct linux_binfmt *binfmt ;
 3011   cpumask_var_t cpu_vm_mask_var ;
 3012   mm_context_t context ;
 3013   unsigned int faultstamp ;
 3014   unsigned int token_priority ;
 3015   unsigned int last_interval ;
 3016   unsigned long flags ;
 3017   struct core_state *core_state ;
 3018   spinlock_t ioctx_lock ;
 3019   struct hlist_head ioctx_list ;
 3020   struct task_struct *owner ;
 3021   struct file *exe_file ;
 3022   unsigned long num_exe_file_vmas ;
 3023   struct mmu_notifier_mm *mmu_notifier_mm ;
 3024   pgtable_t pmd_huge_pte ;
 3025   struct cpumask cpumask_allocation ;
 3026};
 3027#line 7 "include/asm-generic/cputime.h"
 3028typedef unsigned long cputime_t;
 3029#line 98 "include/linux/sem.h"
 3030struct sem_undo_list;
 3031#line 98 "include/linux/sem.h"
 3032struct sysv_sem {
 3033   struct sem_undo_list *undo_list ;
 3034};
 3035#line 107
 3036struct siginfo;
 3037#line 107
 3038struct siginfo;
 3039#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 3040struct __anonstruct_sigset_t_158 {
 3041   unsigned long sig[1U] ;
 3042};
 3043#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 3044typedef struct __anonstruct_sigset_t_158 sigset_t;
 3045#line 17 "include/asm-generic/signal-defs.h"
 3046typedef void __signalfn_t(int  );
 3047#line 18 "include/asm-generic/signal-defs.h"
 3048typedef __signalfn_t *__sighandler_t;
 3049#line 20 "include/asm-generic/signal-defs.h"
 3050typedef void __restorefn_t(void);
 3051#line 21 "include/asm-generic/signal-defs.h"
 3052typedef __restorefn_t *__sigrestore_t;
 3053#line 126 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 3054struct sigaction {
 3055   __sighandler_t sa_handler ;
 3056   unsigned long sa_flags ;
 3057   __sigrestore_t sa_restorer ;
 3058   sigset_t sa_mask ;
 3059};
 3060#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 3061struct k_sigaction {
 3062   struct sigaction sa ;
 3063};
 3064#line 185 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
 3065union sigval {
 3066   int sival_int ;
 3067   void *sival_ptr ;
 3068};
 3069#line 10 "include/asm-generic/siginfo.h"
 3070typedef union sigval sigval_t;
 3071#line 11 "include/asm-generic/siginfo.h"
 3072struct __anonstruct__kill_160 {
 3073   __kernel_pid_t _pid ;
 3074   __kernel_uid32_t _uid ;
 3075};
 3076#line 11 "include/asm-generic/siginfo.h"
 3077struct __anonstruct__timer_161 {
 3078   __kernel_timer_t _tid ;
 3079   int _overrun ;
 3080   char _pad[0U] ;
 3081   sigval_t _sigval ;
 3082   int _sys_private ;
 3083};
 3084#line 11 "include/asm-generic/siginfo.h"
 3085struct __anonstruct__rt_162 {
 3086   __kernel_pid_t _pid ;
 3087   __kernel_uid32_t _uid ;
 3088   sigval_t _sigval ;
 3089};
 3090#line 11 "include/asm-generic/siginfo.h"
 3091struct __anonstruct__sigchld_163 {
 3092   __kernel_pid_t _pid ;
 3093   __kernel_uid32_t _uid ;
 3094   int _status ;
 3095   __kernel_clock_t _utime ;
 3096   __kernel_clock_t _stime ;
 3097};
 3098#line 11 "include/asm-generic/siginfo.h"
 3099struct __anonstruct__sigfault_164 {
 3100   void *_addr ;
 3101   short _addr_lsb ;
 3102};
 3103#line 11 "include/asm-generic/siginfo.h"
 3104struct __anonstruct__sigpoll_165 {
 3105   long _band ;
 3106   int _fd ;
 3107};
 3108#line 11 "include/asm-generic/siginfo.h"
 3109union __anonunion__sifields_159 {
 3110   int _pad[28U] ;
 3111   struct __anonstruct__kill_160 _kill ;
 3112   struct __anonstruct__timer_161 _timer ;
 3113   struct __anonstruct__rt_162 _rt ;
 3114   struct __anonstruct__sigchld_163 _sigchld ;
 3115   struct __anonstruct__sigfault_164 _sigfault ;
 3116   struct __anonstruct__sigpoll_165 _sigpoll ;
 3117};
 3118#line 11 "include/asm-generic/siginfo.h"
 3119struct siginfo {
 3120   int si_signo ;
 3121   int si_errno ;
 3122   int si_code ;
 3123   union __anonunion__sifields_159 _sifields ;
 3124};
 3125#line 102 "include/asm-generic/siginfo.h"
 3126typedef struct siginfo siginfo_t;
 3127#line 14 "include/linux/signal.h"
 3128struct user_struct;
 3129#line 24 "include/linux/signal.h"
 3130struct sigpending {
 3131   struct list_head list ;
 3132   sigset_t signal ;
 3133};
 3134#line 10 "include/linux/seccomp.h"
 3135struct __anonstruct_seccomp_t_168 {
 3136   int mode ;
 3137};
 3138#line 10 "include/linux/seccomp.h"
 3139typedef struct __anonstruct_seccomp_t_168 seccomp_t;
 3140#line 26 "include/linux/seccomp.h"
 3141struct plist_head {
 3142   struct list_head node_list ;
 3143};
 3144#line 84 "include/linux/plist.h"
 3145struct plist_node {
 3146   int prio ;
 3147   struct list_head prio_list ;
 3148   struct list_head node_list ;
 3149};
 3150#line 38 "include/linux/rtmutex.h"
 3151struct rt_mutex_waiter;
 3152#line 38
 3153struct rt_mutex_waiter;
 3154#line 41 "include/linux/resource.h"
 3155struct rlimit {
 3156   unsigned long rlim_cur ;
 3157   unsigned long rlim_max ;
 3158};
 3159#line 85 "include/linux/resource.h"
 3160struct task_io_accounting {
 3161   u64 rchar ;
 3162   u64 wchar ;
 3163   u64 syscr ;
 3164   u64 syscw ;
 3165   u64 read_bytes ;
 3166   u64 write_bytes ;
 3167   u64 cancelled_write_bytes ;
 3168};
 3169#line 45 "include/linux/task_io_accounting.h"
 3170struct latency_record {
 3171   unsigned long backtrace[12U] ;
 3172   unsigned int count ;
 3173   unsigned long time ;
 3174   unsigned long max ;
 3175};
 3176#line 29 "include/linux/key.h"
 3177typedef int32_t key_serial_t;
 3178#line 32 "include/linux/key.h"
 3179typedef uint32_t key_perm_t;
 3180#line 33
 3181struct key;
 3182#line 33
 3183struct key;
 3184#line 34
 3185struct key_type;
 3186#line 34
 3187struct key_type;
 3188#line 36
 3189struct keyring_list;
 3190#line 36
 3191struct keyring_list;
 3192#line 115
 3193struct key_user;
 3194#line 115 "include/linux/key.h"
 3195union __anonunion_ldv_22327_169 {
 3196   time_t expiry ;
 3197   time_t revoked_at ;
 3198};
 3199#line 115 "include/linux/key.h"
 3200union __anonunion_type_data_170 {
 3201   struct list_head link ;
 3202   unsigned long x[2U] ;
 3203   void *p[2U] ;
 3204   int reject_error ;
 3205};
 3206#line 115 "include/linux/key.h"
 3207union __anonunion_payload_171 {
 3208   unsigned long value ;
 3209   void *rcudata ;
 3210   void *data ;
 3211   struct keyring_list *subscriptions ;
 3212};
 3213#line 115 "include/linux/key.h"
 3214struct key {
 3215   atomic_t usage ;
 3216   key_serial_t serial ;
 3217   struct rb_node serial_node ;
 3218   struct key_type *type ;
 3219   struct rw_semaphore sem ;
 3220   struct key_user *user ;
 3221   void *security ;
 3222   union __anonunion_ldv_22327_169 ldv_22327 ;
 3223   uid_t uid ;
 3224   gid_t gid ;
 3225   key_perm_t perm ;
 3226   unsigned short quotalen ;
 3227   unsigned short datalen ;
 3228   unsigned long flags ;
 3229   char *description ;
 3230   union __anonunion_type_data_170 type_data ;
 3231   union __anonunion_payload_171 payload ;
 3232};
 3233#line 316
 3234struct audit_context;
 3235#line 316
 3236struct audit_context;
 3237#line 27 "include/linux/selinux.h"
 3238struct group_info {
 3239   atomic_t usage ;
 3240   int ngroups ;
 3241   int nblocks ;
 3242   gid_t small_block[32U] ;
 3243   gid_t *blocks[0U] ;
 3244};
 3245#line 77 "include/linux/cred.h"
 3246struct thread_group_cred {
 3247   atomic_t usage ;
 3248   pid_t tgid ;
 3249   spinlock_t lock ;
 3250   struct key *session_keyring ;
 3251   struct key *process_keyring ;
 3252   struct rcu_head rcu ;
 3253};
 3254#line 91 "include/linux/cred.h"
 3255struct cred {
 3256   atomic_t usage ;
 3257   atomic_t subscribers ;
 3258   void *put_addr ;
 3259   unsigned int magic ;
 3260   uid_t uid ;
 3261   gid_t gid ;
 3262   uid_t suid ;
 3263   gid_t sgid ;
 3264   uid_t euid ;
 3265   gid_t egid ;
 3266   uid_t fsuid ;
 3267   gid_t fsgid ;
 3268   unsigned int securebits ;
 3269   kernel_cap_t cap_inheritable ;
 3270   kernel_cap_t cap_permitted ;
 3271   kernel_cap_t cap_effective ;
 3272   kernel_cap_t cap_bset ;
 3273   unsigned char jit_keyring ;
 3274   struct key *thread_keyring ;
 3275   struct key *request_key_auth ;
 3276   struct thread_group_cred *tgcred ;
 3277   void *security ;
 3278   struct user_struct *user ;
 3279   struct user_namespace *user_ns ;
 3280   struct group_info *group_info ;
 3281   struct rcu_head rcu ;
 3282};
 3283#line 264
 3284struct llist_node;
 3285#line 64 "include/linux/llist.h"
 3286struct llist_node {
 3287   struct llist_node *next ;
 3288};
 3289#line 185
 3290struct futex_pi_state;
 3291#line 185
 3292struct futex_pi_state;
 3293#line 186
 3294struct robust_list_head;
 3295#line 186
 3296struct robust_list_head;
 3297#line 187
 3298struct bio_list;
 3299#line 187
 3300struct bio_list;
 3301#line 188
 3302struct fs_struct;
 3303#line 188
 3304struct fs_struct;
 3305#line 189
 3306struct perf_event_context;
 3307#line 189
 3308struct perf_event_context;
 3309#line 190
 3310struct blk_plug;
 3311#line 190
 3312struct blk_plug;
 3313#line 149 "include/linux/sched.h"
 3314struct cfs_rq;
 3315#line 149
 3316struct cfs_rq;
 3317#line 44 "include/linux/aio_abi.h"
 3318struct io_event {
 3319   __u64 data ;
 3320   __u64 obj ;
 3321   __s64 res ;
 3322   __s64 res2 ;
 3323};
 3324#line 106 "include/linux/aio_abi.h"
 3325struct iovec {
 3326   void *iov_base ;
 3327   __kernel_size_t iov_len ;
 3328};
 3329#line 54 "include/linux/uio.h"
 3330struct kioctx;
 3331#line 54
 3332struct kioctx;
 3333#line 55 "include/linux/uio.h"
 3334union __anonunion_ki_obj_172 {
 3335   void *user ;
 3336   struct task_struct *tsk ;
 3337};
 3338#line 55
 3339struct eventfd_ctx;
 3340#line 55 "include/linux/uio.h"
 3341struct kiocb {
 3342   struct list_head ki_run_list ;
 3343   unsigned long ki_flags ;
 3344   int ki_users ;
 3345   unsigned int ki_key ;
 3346   struct file *ki_filp ;
 3347   struct kioctx *ki_ctx ;
 3348   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
 3349   ssize_t (*ki_retry)(struct kiocb * ) ;
 3350   void (*ki_dtor)(struct kiocb * ) ;
 3351   union __anonunion_ki_obj_172 ki_obj ;
 3352   __u64 ki_user_data ;
 3353   loff_t ki_pos ;
 3354   void *private ;
 3355   unsigned short ki_opcode ;
 3356   size_t ki_nbytes ;
 3357   char *ki_buf ;
 3358   size_t ki_left ;
 3359   struct iovec ki_inline_vec ;
 3360   struct iovec *ki_iovec ;
 3361   unsigned long ki_nr_segs ;
 3362   unsigned long ki_cur_seg ;
 3363   struct list_head ki_list ;
 3364   struct list_head ki_batch ;
 3365   struct eventfd_ctx *ki_eventfd ;
 3366};
 3367#line 162 "include/linux/aio.h"
 3368struct aio_ring_info {
 3369   unsigned long mmap_base ;
 3370   unsigned long mmap_size ;
 3371   struct page **ring_pages ;
 3372   spinlock_t ring_lock ;
 3373   long nr_pages ;
 3374   unsigned int nr ;
 3375   unsigned int tail ;
 3376   struct page *internal_pages[8U] ;
 3377};
 3378#line 178 "include/linux/aio.h"
 3379struct kioctx {
 3380   atomic_t users ;
 3381   int dead ;
 3382   struct mm_struct *mm ;
 3383   unsigned long user_id ;
 3384   struct hlist_node list ;
 3385   wait_queue_head_t wait ;
 3386   spinlock_t ctx_lock ;
 3387   int reqs_active ;
 3388   struct list_head active_reqs ;
 3389   struct list_head run_list ;
 3390   unsigned int max_reqs ;
 3391   struct aio_ring_info ring_info ;
 3392   struct delayed_work wq ;
 3393   struct rcu_head rcu_head ;
 3394};
 3395#line 406 "include/linux/sched.h"
 3396struct sighand_struct {
 3397   atomic_t count ;
 3398   struct k_sigaction action[64U] ;
 3399   spinlock_t siglock ;
 3400   wait_queue_head_t signalfd_wqh ;
 3401};
 3402#line 449 "include/linux/sched.h"
 3403struct pacct_struct {
 3404   int ac_flag ;
 3405   long ac_exitcode ;
 3406   unsigned long ac_mem ;
 3407   cputime_t ac_utime ;
 3408   cputime_t ac_stime ;
 3409   unsigned long ac_minflt ;
 3410   unsigned long ac_majflt ;
 3411};
 3412#line 457 "include/linux/sched.h"
 3413struct cpu_itimer {
 3414   cputime_t expires ;
 3415   cputime_t incr ;
 3416   u32 error ;
 3417   u32 incr_error ;
 3418};
 3419#line 464 "include/linux/sched.h"
 3420struct task_cputime {
 3421   cputime_t utime ;
 3422   cputime_t stime ;
 3423   unsigned long long sum_exec_runtime ;
 3424};
 3425#line 481 "include/linux/sched.h"
 3426struct thread_group_cputimer {
 3427   struct task_cputime cputime ;
 3428   int running ;
 3429   raw_spinlock_t lock ;
 3430};
 3431#line 517
 3432struct autogroup;
 3433#line 517
 3434struct autogroup;
 3435#line 518
 3436struct taskstats;
 3437#line 518
 3438struct tty_audit_buf;
 3439#line 518 "include/linux/sched.h"
 3440struct signal_struct {
 3441   atomic_t sigcnt ;
 3442   atomic_t live ;
 3443   int nr_threads ;
 3444   wait_queue_head_t wait_chldexit ;
 3445   struct task_struct *curr_target ;
 3446   struct sigpending shared_pending ;
 3447   int group_exit_code ;
 3448   int notify_count ;
 3449   struct task_struct *group_exit_task ;
 3450   int group_stop_count ;
 3451   unsigned int flags ;
 3452   unsigned char is_child_subreaper : 1 ;
 3453   unsigned char has_child_subreaper : 1 ;
 3454   struct list_head posix_timers ;
 3455   struct hrtimer real_timer ;
 3456   struct pid *leader_pid ;
 3457   ktime_t it_real_incr ;
 3458   struct cpu_itimer it[2U] ;
 3459   struct thread_group_cputimer cputimer ;
 3460   struct task_cputime cputime_expires ;
 3461   struct list_head cpu_timers[3U] ;
 3462   struct pid *tty_old_pgrp ;
 3463   int leader ;
 3464   struct tty_struct *tty ;
 3465   struct autogroup *autogroup ;
 3466   cputime_t utime ;
 3467   cputime_t stime ;
 3468   cputime_t cutime ;
 3469   cputime_t cstime ;
 3470   cputime_t gtime ;
 3471   cputime_t cgtime ;
 3472   cputime_t prev_utime ;
 3473   cputime_t prev_stime ;
 3474   unsigned long nvcsw ;
 3475   unsigned long nivcsw ;
 3476   unsigned long cnvcsw ;
 3477   unsigned long cnivcsw ;
 3478   unsigned long min_flt ;
 3479   unsigned long maj_flt ;
 3480   unsigned long cmin_flt ;
 3481   unsigned long cmaj_flt ;
 3482   unsigned long inblock ;
 3483   unsigned long oublock ;
 3484   unsigned long cinblock ;
 3485   unsigned long coublock ;
 3486   unsigned long maxrss ;
 3487   unsigned long cmaxrss ;
 3488   struct task_io_accounting ioac ;
 3489   unsigned long long sum_sched_runtime ;
 3490   struct rlimit rlim[16U] ;
 3491   struct pacct_struct pacct ;
 3492   struct taskstats *stats ;
 3493   unsigned int audit_tty ;
 3494   struct tty_audit_buf *tty_audit_buf ;
 3495   struct rw_semaphore group_rwsem ;
 3496   int oom_adj ;
 3497   int oom_score_adj ;
 3498   int oom_score_adj_min ;
 3499   struct mutex cred_guard_mutex ;
 3500};
 3501#line 699 "include/linux/sched.h"
 3502struct user_struct {
 3503   atomic_t __count ;
 3504   atomic_t processes ;
 3505   atomic_t files ;
 3506   atomic_t sigpending ;
 3507   atomic_t inotify_watches ;
 3508   atomic_t inotify_devs ;
 3509   atomic_t fanotify_listeners ;
 3510   atomic_long_t epoll_watches ;
 3511   unsigned long mq_bytes ;
 3512   unsigned long locked_shm ;
 3513   struct key *uid_keyring ;
 3514   struct key *session_keyring ;
 3515   struct hlist_node uidhash_node ;
 3516   uid_t uid ;
 3517   struct user_namespace *user_ns ;
 3518   atomic_long_t locked_vm ;
 3519};
 3520#line 744
 3521struct reclaim_state;
 3522#line 744
 3523struct reclaim_state;
 3524#line 745 "include/linux/sched.h"
 3525struct sched_info {
 3526   unsigned long pcount ;
 3527   unsigned long long run_delay ;
 3528   unsigned long long last_arrival ;
 3529   unsigned long long last_queued ;
 3530};
 3531#line 760 "include/linux/sched.h"
 3532struct task_delay_info {
 3533   spinlock_t lock ;
 3534   unsigned int flags ;
 3535   struct timespec blkio_start ;
 3536   struct timespec blkio_end ;
 3537   u64 blkio_delay ;
 3538   u64 swapin_delay ;
 3539   u32 blkio_count ;
 3540   u32 swapin_count ;
 3541   struct timespec freepages_start ;
 3542   struct timespec freepages_end ;
 3543   u64 freepages_delay ;
 3544   u32 freepages_count ;
 3545};
 3546#line 1069
 3547struct io_context;
 3548#line 1069
 3549struct io_context;
 3550#line 1098
 3551struct rq;
 3552#line 1098
 3553struct rq;
 3554#line 1099 "include/linux/sched.h"
 3555struct sched_class {
 3556   struct sched_class  const  *next ;
 3557   void (*enqueue_task)(struct rq * , struct task_struct * , int  ) ;
 3558   void (*dequeue_task)(struct rq * , struct task_struct * , int  ) ;
 3559   void (*yield_task)(struct rq * ) ;
 3560   bool (*yield_to_task)(struct rq * , struct task_struct * , bool  ) ;
 3561   void (*check_preempt_curr)(struct rq * , struct task_struct * , int  ) ;
 3562   struct task_struct *(*pick_next_task)(struct rq * ) ;
 3563   void (*put_prev_task)(struct rq * , struct task_struct * ) ;
 3564   int (*select_task_rq)(struct task_struct * , int  , int  ) ;
 3565   void (*pre_schedule)(struct rq * , struct task_struct * ) ;
 3566   void (*post_schedule)(struct rq * ) ;
 3567   void (*task_waking)(struct task_struct * ) ;
 3568   void (*task_woken)(struct rq * , struct task_struct * ) ;
 3569   void (*set_cpus_allowed)(struct task_struct * , struct cpumask  const  * ) ;
 3570   void (*rq_online)(struct rq * ) ;
 3571   void (*rq_offline)(struct rq * ) ;
 3572   void (*set_curr_task)(struct rq * ) ;
 3573   void (*task_tick)(struct rq * , struct task_struct * , int  ) ;
 3574   void (*task_fork)(struct task_struct * ) ;
 3575   void (*switched_from)(struct rq * , struct task_struct * ) ;
 3576   void (*switched_to)(struct rq * , struct task_struct * ) ;
 3577   void (*prio_changed)(struct rq * , struct task_struct * , int  ) ;
 3578   unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
 3579   void (*task_move_group)(struct task_struct * , int  ) ;
 3580};
 3581#line 1165 "include/linux/sched.h"
 3582struct load_weight {
 3583   unsigned long weight ;
 3584   unsigned long inv_weight ;
 3585};
 3586#line 1170 "include/linux/sched.h"
 3587struct sched_statistics {
 3588   u64 wait_start ;
 3589   u64 wait_max ;
 3590   u64 wait_count ;
 3591   u64 wait_sum ;
 3592   u64 iowait_count ;
 3593   u64 iowait_sum ;
 3594   u64 sleep_start ;
 3595   u64 sleep_max ;
 3596   s64 sum_sleep_runtime ;
 3597   u64 block_start ;
 3598   u64 block_max ;
 3599   u64 exec_max ;
 3600   u64 slice_max ;
 3601   u64 nr_migrations_cold ;
 3602   u64 nr_failed_migrations_affine ;
 3603   u64 nr_failed_migrations_running ;
 3604   u64 nr_failed_migrations_hot ;
 3605   u64 nr_forced_migrations ;
 3606   u64 nr_wakeups ;
 3607   u64 nr_wakeups_sync ;
 3608   u64 nr_wakeups_migrate ;
 3609   u64 nr_wakeups_local ;
 3610   u64 nr_wakeups_remote ;
 3611   u64 nr_wakeups_affine ;
 3612   u64 nr_wakeups_affine_attempts ;
 3613   u64 nr_wakeups_passive ;
 3614   u64 nr_wakeups_idle ;
 3615};
 3616#line 1205 "include/linux/sched.h"
 3617struct sched_entity {
 3618   struct load_weight load ;
 3619   struct rb_node run_node ;
 3620   struct list_head group_node ;
 3621   unsigned int on_rq ;
 3622   u64 exec_start ;
 3623   u64 sum_exec_runtime ;
 3624   u64 vruntime ;
 3625   u64 prev_sum_exec_runtime ;
 3626   u64 nr_migrations ;
 3627   struct sched_statistics statistics ;
 3628   struct sched_entity *parent ;
 3629   struct cfs_rq *cfs_rq ;
 3630   struct cfs_rq *my_q ;
 3631};
 3632#line 1231
 3633struct rt_rq;
 3634#line 1231 "include/linux/sched.h"
 3635struct sched_rt_entity {
 3636   struct list_head run_list ;
 3637   unsigned long timeout ;
 3638   unsigned int time_slice ;
 3639   int nr_cpus_allowed ;
 3640   struct sched_rt_entity *back ;
 3641   struct sched_rt_entity *parent ;
 3642   struct rt_rq *rt_rq ;
 3643   struct rt_rq *my_q ;
 3644};
 3645#line 1255
 3646struct mem_cgroup;
 3647#line 1255 "include/linux/sched.h"
 3648struct memcg_batch_info {
 3649   int do_batch ;
 3650   struct mem_cgroup *memcg ;
 3651   unsigned long nr_pages ;
 3652   unsigned long memsw_nr_pages ;
 3653};
 3654#line 1616
 3655struct css_set;
 3656#line 1616
 3657struct compat_robust_list_head;
 3658#line 1616 "include/linux/sched.h"
 3659struct task_struct {
 3660   long volatile   state ;
 3661   void *stack ;
 3662   atomic_t usage ;
 3663   unsigned int flags ;
 3664   unsigned int ptrace ;
 3665   struct llist_node wake_entry ;
 3666   int on_cpu ;
 3667   int on_rq ;
 3668   int prio ;
 3669   int static_prio ;
 3670   int normal_prio ;
 3671   unsigned int rt_priority ;
 3672   struct sched_class  const  *sched_class ;
 3673   struct sched_entity se ;
 3674   struct sched_rt_entity rt ;
 3675   struct hlist_head preempt_notifiers ;
 3676   unsigned char fpu_counter ;
 3677   unsigned int policy ;
 3678   cpumask_t cpus_allowed ;
 3679   struct sched_info sched_info ;
 3680   struct list_head tasks ;
 3681   struct plist_node pushable_tasks ;
 3682   struct mm_struct *mm ;
 3683   struct mm_struct *active_mm ;
 3684   unsigned char brk_randomized : 1 ;
 3685   int exit_state ;
 3686   int exit_code ;
 3687   int exit_signal ;
 3688   int pdeath_signal ;
 3689   unsigned int jobctl ;
 3690   unsigned int personality ;
 3691   unsigned char did_exec : 1 ;
 3692   unsigned char in_execve : 1 ;
 3693   unsigned char in_iowait : 1 ;
 3694   unsigned char sched_reset_on_fork : 1 ;
 3695   unsigned char sched_contributes_to_load : 1 ;
 3696   unsigned char irq_thread : 1 ;
 3697   pid_t pid ;
 3698   pid_t tgid ;
 3699   unsigned long stack_canary ;
 3700   struct task_struct *real_parent ;
 3701   struct task_struct *parent ;
 3702   struct list_head children ;
 3703   struct list_head sibling ;
 3704   struct task_struct *group_leader ;
 3705   struct list_head ptraced ;
 3706   struct list_head ptrace_entry ;
 3707   struct pid_link pids[3U] ;
 3708   struct list_head thread_group ;
 3709   struct completion *vfork_done ;
 3710   int *set_child_tid ;
 3711   int *clear_child_tid ;
 3712   cputime_t utime ;
 3713   cputime_t stime ;
 3714   cputime_t utimescaled ;
 3715   cputime_t stimescaled ;
 3716   cputime_t gtime ;
 3717   cputime_t prev_utime ;
 3718   cputime_t prev_stime ;
 3719   unsigned long nvcsw ;
 3720   unsigned long nivcsw ;
 3721   struct timespec start_time ;
 3722   struct timespec real_start_time ;
 3723   unsigned long min_flt ;
 3724   unsigned long maj_flt ;
 3725   struct task_cputime cputime_expires ;
 3726   struct list_head cpu_timers[3U] ;
 3727   struct cred  const  *real_cred ;
 3728   struct cred  const  *cred ;
 3729   struct cred *replacement_session_keyring ;
 3730   char comm[16U] ;
 3731   int link_count ;
 3732   int total_link_count ;
 3733   struct sysv_sem sysvsem ;
 3734   unsigned long last_switch_count ;
 3735   struct thread_struct thread ;
 3736   struct fs_struct *fs ;
 3737   struct files_struct *files ;
 3738   struct nsproxy *nsproxy ;
 3739   struct signal_struct *signal ;
 3740   struct sighand_struct *sighand ;
 3741   sigset_t blocked ;
 3742   sigset_t real_blocked ;
 3743   sigset_t saved_sigmask ;
 3744   struct sigpending pending ;
 3745   unsigned long sas_ss_sp ;
 3746   size_t sas_ss_size ;
 3747   int (*notifier)(void * ) ;
 3748   void *notifier_data ;
 3749   sigset_t *notifier_mask ;
 3750   struct audit_context *audit_context ;
 3751   uid_t loginuid ;
 3752   unsigned int sessionid ;
 3753   seccomp_t seccomp ;
 3754   u32 parent_exec_id ;
 3755   u32 self_exec_id ;
 3756   spinlock_t alloc_lock ;
 3757   raw_spinlock_t pi_lock ;
 3758   struct plist_head pi_waiters ;
 3759   struct rt_mutex_waiter *pi_blocked_on ;
 3760   struct mutex_waiter *blocked_on ;
 3761   unsigned int irq_events ;
 3762   unsigned long hardirq_enable_ip ;
 3763   unsigned long hardirq_disable_ip ;
 3764   unsigned int hardirq_enable_event ;
 3765   unsigned int hardirq_disable_event ;
 3766   int hardirqs_enabled ;
 3767   int hardirq_context ;
 3768   unsigned long softirq_disable_ip ;
 3769   unsigned long softirq_enable_ip ;
 3770   unsigned int softirq_disable_event ;
 3771   unsigned int softirq_enable_event ;
 3772   int softirqs_enabled ;
 3773   int softirq_context ;
 3774   u64 curr_chain_key ;
 3775   int lockdep_depth ;
 3776   unsigned int lockdep_recursion ;
 3777   struct held_lock held_locks[48U] ;
 3778   gfp_t lockdep_reclaim_gfp ;
 3779   void *journal_info ;
 3780   struct bio_list *bio_list ;
 3781   struct blk_plug *plug ;
 3782   struct reclaim_state *reclaim_state ;
 3783   struct backing_dev_info *backing_dev_info ;
 3784   struct io_context *io_context ;
 3785   unsigned long ptrace_message ;
 3786   siginfo_t *last_siginfo ;
 3787   struct task_io_accounting ioac ;
 3788   u64 acct_rss_mem1 ;
 3789   u64 acct_vm_mem1 ;
 3790   cputime_t acct_timexpd ;
 3791   nodemask_t mems_allowed ;
 3792   seqcount_t mems_allowed_seq ;
 3793   int cpuset_mem_spread_rotor ;
 3794   int cpuset_slab_spread_rotor ;
 3795   struct css_set *cgroups ;
 3796   struct list_head cg_list ;
 3797   struct robust_list_head *robust_list ;
 3798   struct compat_robust_list_head *compat_robust_list ;
 3799   struct list_head pi_state_list ;
 3800   struct futex_pi_state *pi_state_cache ;
 3801   struct perf_event_context *perf_event_ctxp[2U] ;
 3802   struct mutex perf_event_mutex ;
 3803   struct list_head perf_event_list ;
 3804   struct mempolicy *mempolicy ;
 3805   short il_next ;
 3806   short pref_node_fork ;
 3807   struct rcu_head rcu ;
 3808   struct pipe_inode_info *splice_pipe ;
 3809   struct task_delay_info *delays ;
 3810   int make_it_fail ;
 3811   int nr_dirtied ;
 3812   int nr_dirtied_pause ;
 3813   unsigned long dirty_paused_when ;
 3814   int latency_record_count ;
 3815   struct latency_record latency_record[32U] ;
 3816   unsigned long timer_slack_ns ;
 3817   unsigned long default_timer_slack_ns ;
 3818   struct list_head *scm_work_list ;
 3819   unsigned long trace ;
 3820   unsigned long trace_recursion ;
 3821   struct memcg_batch_info memcg_batch ;
 3822   atomic_t ptrace_bp_refcnt ;
 3823};
 3824#line 253 "include/linux/pm_runtime.h"
 3825struct usb_device;
 3826#line 253
 3827struct usb_device;
 3828#line 254
 3829struct usb_driver;
 3830#line 254
 3831struct usb_driver;
 3832#line 255
 3833struct wusb_dev;
 3834#line 255
 3835struct wusb_dev;
 3836#line 256
 3837struct ep_device;
 3838#line 256
 3839struct ep_device;
 3840#line 257 "include/linux/pm_runtime.h"
 3841struct usb_host_endpoint {
 3842   struct usb_endpoint_descriptor desc ;
 3843   struct usb_ss_ep_comp_descriptor ss_ep_comp ;
 3844   struct list_head urb_list ;
 3845   void *hcpriv ;
 3846   struct ep_device *ep_dev ;
 3847   unsigned char *extra ;
 3848   int extralen ;
 3849   int enabled ;
 3850};
 3851#line 75 "include/linux/usb.h"
 3852struct usb_host_interface {
 3853   struct usb_interface_descriptor desc ;
 3854   struct usb_host_endpoint *endpoint ;
 3855   char *string ;
 3856   unsigned char *extra ;
 3857   int extralen ;
 3858};
 3859#line 89
 3860enum usb_interface_condition {
 3861    USB_INTERFACE_UNBOUND = 0,
 3862    USB_INTERFACE_BINDING = 1,
 3863    USB_INTERFACE_BOUND = 2,
 3864    USB_INTERFACE_UNBINDING = 3
 3865} ;
 3866#line 96 "include/linux/usb.h"
 3867struct usb_interface {
 3868   struct usb_host_interface *altsetting ;
 3869   struct usb_host_interface *cur_altsetting ;
 3870   unsigned int num_altsetting ;
 3871   struct usb_interface_assoc_descriptor *intf_assoc ;
 3872   int minor ;
 3873   enum usb_interface_condition condition ;
 3874   unsigned char sysfs_files_created : 1 ;
 3875   unsigned char ep_devs_created : 1 ;
 3876   unsigned char unregistering : 1 ;
 3877   unsigned char needs_remote_wakeup : 1 ;
 3878   unsigned char needs_altsetting0 : 1 ;
 3879   unsigned char needs_binding : 1 ;
 3880   unsigned char reset_running : 1 ;
 3881   unsigned char resetting_device : 1 ;
 3882   struct device dev ;
 3883   struct device *usb_dev ;
 3884   atomic_t pm_usage_cnt ;
 3885   struct work_struct reset_ws ;
 3886};
 3887#line 203 "include/linux/usb.h"
 3888struct usb_interface_cache {
 3889   unsigned int num_altsetting ;
 3890   struct kref ref ;
 3891   struct usb_host_interface altsetting[0U] ;
 3892};
 3893#line 230 "include/linux/usb.h"
 3894struct usb_host_config {
 3895   struct usb_config_descriptor desc ;
 3896   char *string ;
 3897   struct usb_interface_assoc_descriptor *intf_assoc[16U] ;
 3898   struct usb_interface *interface[32U] ;
 3899   struct usb_interface_cache *intf_cache[32U] ;
 3900   unsigned char *extra ;
 3901   int extralen ;
 3902};
 3903#line 294 "include/linux/usb.h"
 3904struct usb_host_bos {
 3905   struct usb_bos_descriptor *desc ;
 3906   struct usb_ext_cap_descriptor *ext_cap ;
 3907   struct usb_ss_cap_descriptor *ss_cap ;
 3908   struct usb_ss_container_id_descriptor *ss_id ;
 3909};
 3910#line 306 "include/linux/usb.h"
 3911struct usb_devmap {
 3912   unsigned long devicemap[2U] ;
 3913};
 3914#line 318
 3915struct mon_bus;
 3916#line 318 "include/linux/usb.h"
 3917struct usb_bus {
 3918   struct device *controller ;
 3919   int busnum ;
 3920   char const   *bus_name ;
 3921   u8 uses_dma ;
 3922   u8 uses_pio_for_control ;
 3923   u8 otg_port ;
 3924   unsigned char is_b_host : 1 ;
 3925   unsigned char b_hnp_enable : 1 ;
 3926   unsigned int sg_tablesize ;
 3927   int devnum_next ;
 3928   struct usb_devmap devmap ;
 3929   struct usb_device *root_hub ;
 3930   struct usb_bus *hs_companion ;
 3931   struct list_head bus_list ;
 3932   int bandwidth_allocated ;
 3933   int bandwidth_int_reqs ;
 3934   int bandwidth_isoc_reqs ;
 3935   struct dentry *usbfs_dentry ;
 3936   struct mon_bus *mon_bus ;
 3937   int monitored ;
 3938};
 3939#line 362
 3940struct usb_tt;
 3941#line 362
 3942struct usb_tt;
 3943#line 363
 3944enum usb_device_removable {
 3945    USB_DEVICE_REMOVABLE_UNKNOWN = 0,
 3946    USB_DEVICE_REMOVABLE = 1,
 3947    USB_DEVICE_FIXED = 2
 3948} ;
 3949#line 369 "include/linux/usb.h"
 3950struct usb_device {
 3951   int devnum ;
 3952   char devpath[16U] ;
 3953   u32 route ;
 3954   enum usb_device_state state ;
 3955   enum usb_device_speed speed ;
 3956   struct usb_tt *tt ;
 3957   int ttport ;
 3958   unsigned int toggle[2U] ;
 3959   struct usb_device *parent ;
 3960   struct usb_bus *bus ;
 3961   struct usb_host_endpoint ep0 ;
 3962   struct device dev ;
 3963   struct usb_device_descriptor descriptor ;
 3964   struct usb_host_bos *bos ;
 3965   struct usb_host_config *config ;
 3966   struct usb_host_config *actconfig ;
 3967   struct usb_host_endpoint *ep_in[16U] ;
 3968   struct usb_host_endpoint *ep_out[16U] ;
 3969   char **rawdescriptors ;
 3970   unsigned short bus_mA ;
 3971   u8 portnum ;
 3972   u8 level ;
 3973   unsigned char can_submit : 1 ;
 3974   unsigned char persist_enabled : 1 ;
 3975   unsigned char have_langid : 1 ;
 3976   unsigned char authorized : 1 ;
 3977   unsigned char authenticated : 1 ;
 3978   unsigned char wusb : 1 ;
 3979   unsigned char lpm_capable : 1 ;
 3980   unsigned char usb2_hw_lpm_capable : 1 ;
 3981   unsigned char usb2_hw_lpm_enabled : 1 ;
 3982   int string_langid ;
 3983   char *product ;
 3984   char *manufacturer ;
 3985   char *serial ;
 3986   struct list_head filelist ;
 3987   struct device *usb_classdev ;
 3988   struct dentry *usbfs_dentry ;
 3989   int maxchild ;
 3990   struct usb_device **children ;
 3991   u32 quirks ;
 3992   atomic_t urbnum ;
 3993   unsigned long active_duration ;
 3994   unsigned long connect_time ;
 3995   unsigned char do_remote_wakeup : 1 ;
 3996   unsigned char reset_resume : 1 ;
 3997   struct wusb_dev *wusb_dev ;
 3998   int slot_id ;
 3999   enum usb_device_removable removable ;
 4000};
 4001#line 670 "include/linux/usb.h"
 4002struct usb_dynids {
 4003   spinlock_t lock ;
 4004   struct list_head list ;
 4005};
 4006#line 800 "include/linux/usb.h"
 4007struct usbdrv_wrap {
 4008   struct device_driver driver ;
 4009   int for_devices ;
 4010};
 4011#line 812 "include/linux/usb.h"
 4012struct usb_driver {
 4013   char const   *name ;
 4014   int (*probe)(struct usb_interface * , struct usb_device_id  const  * ) ;
 4015   void (*disconnect)(struct usb_interface * ) ;
 4016   int (*unlocked_ioctl)(struct usb_interface * , unsigned int  , void * ) ;
 4017   int (*suspend)(struct usb_interface * , pm_message_t  ) ;
 4018   int (*resume)(struct usb_interface * ) ;
 4019   int (*reset_resume)(struct usb_interface * ) ;
 4020   int (*pre_reset)(struct usb_interface * ) ;
 4021   int (*post_reset)(struct usb_interface * ) ;
 4022   struct usb_device_id  const  *id_table ;
 4023   struct usb_dynids dynids ;
 4024   struct usbdrv_wrap drvwrap ;
 4025   unsigned char no_dynamic_id : 1 ;
 4026   unsigned char supports_autosuspend : 1 ;
 4027   unsigned char soft_unbind : 1 ;
 4028};
 4029#line 986 "include/linux/usb.h"
 4030struct usb_iso_packet_descriptor {
 4031   unsigned int offset ;
 4032   unsigned int length ;
 4033   unsigned int actual_length ;
 4034   int status ;
 4035};
 4036#line 1028
 4037struct urb;
 4038#line 1028
 4039struct urb;
 4040#line 1029 "include/linux/usb.h"
 4041struct usb_anchor {
 4042   struct list_head urb_list ;
 4043   wait_queue_head_t wait ;
 4044   spinlock_t lock ;
 4045   unsigned char poisoned : 1 ;
 4046};
 4047#line 1046
 4048struct scatterlist;
 4049#line 1046 "include/linux/usb.h"
 4050struct urb {
 4051   struct kref kref ;
 4052   void *hcpriv ;
 4053   atomic_t use_count ;
 4054   atomic_t reject ;
 4055   int unlinked ;
 4056   struct list_head urb_list ;
 4057   struct list_head anchor_list ;
 4058   struct usb_anchor *anchor ;
 4059   struct usb_device *dev ;
 4060   struct usb_host_endpoint *ep ;
 4061   unsigned int pipe ;
 4062   unsigned int stream_id ;
 4063   int status ;
 4064   unsigned int transfer_flags ;
 4065   void *transfer_buffer ;
 4066   dma_addr_t transfer_dma ;
 4067   struct scatterlist *sg ;
 4068   int num_mapped_sgs ;
 4069   int num_sgs ;
 4070   u32 transfer_buffer_length ;
 4071   u32 actual_length ;
 4072   unsigned char *setup_packet ;
 4073   dma_addr_t setup_dma ;
 4074   int start_frame ;
 4075   int number_of_packets ;
 4076   int interval ;
 4077   int error_count ;
 4078   void *context ;
 4079   void (*complete)(struct urb * ) ;
 4080   struct usb_iso_packet_descriptor iso_frame_desc[0U] ;
 4081};
 4082#line 178 "include/linux/mm.h"
 4083struct vm_fault {
 4084   unsigned int flags ;
 4085   unsigned long pgoff ;
 4086   void *virtual_address ;
 4087   struct page *page ;
 4088};
 4089#line 195 "include/linux/mm.h"
 4090struct vm_operations_struct {
 4091   void (*open)(struct vm_area_struct * ) ;
 4092   void (*close)(struct vm_area_struct * ) ;
 4093   int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
 4094   int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
 4095   int (*access)(struct vm_area_struct * , unsigned long  , void * , int  , int  ) ;
 4096   int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
 4097   struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long  ) ;
 4098   int (*migrate)(struct vm_area_struct * , nodemask_t const   * , nodemask_t const   * ,
 4099                  unsigned long  ) ;
 4100};
 4101#line 1631 "include/linux/mm.h"
 4102struct scatterlist {
 4103   unsigned long sg_magic ;
 4104   unsigned long page_link ;
 4105   unsigned int offset ;
 4106   unsigned int length ;
 4107   dma_addr_t dma_address ;
 4108   unsigned int dma_length ;
 4109};
 4110#line 268 "include/linux/scatterlist.h"
 4111struct __kfifo {
 4112   unsigned int in ;
 4113   unsigned int out ;
 4114   unsigned int mask ;
 4115   unsigned int esize ;
 4116   void *data ;
 4117};
 4118#line 65 "include/linux/kfifo.h"
 4119union __anonunion_ldv_27444_174 {
 4120   struct __kfifo kfifo ;
 4121   unsigned char *type ;
 4122   char (*rectype)[0U] ;
 4123   void *ptr ;
 4124   void const   *ptr_const ;
 4125};
 4126#line 65 "include/linux/kfifo.h"
 4127struct kfifo {
 4128   union __anonunion_ldv_27444_174 ldv_27444 ;
 4129   unsigned char buf[0U] ;
 4130};
 4131#line 851
 4132struct usb_serial;
 4133#line 851 "include/linux/kfifo.h"
 4134struct usb_serial_port {
 4135   struct usb_serial *serial ;
 4136   struct tty_port port ;
 4137   spinlock_t lock ;
 4138   unsigned char number ;
 4139   unsigned char *interrupt_in_buffer ;
 4140   struct urb *interrupt_in_urb ;
 4141   __u8 interrupt_in_endpointAddress ;
 4142   unsigned char *interrupt_out_buffer ;
 4143   int interrupt_out_size ;
 4144   struct urb *interrupt_out_urb ;
 4145   __u8 interrupt_out_endpointAddress ;
 4146   unsigned char *bulk_in_buffer ;
 4147   int bulk_in_size ;
 4148   struct urb *read_urb ;
 4149   __u8 bulk_in_endpointAddress ;
 4150   unsigned char *bulk_in_buffers[2U] ;
 4151   struct urb *read_urbs[2U] ;
 4152   unsigned long read_urbs_free ;
 4153   unsigned char *bulk_out_buffer ;
 4154   int bulk_out_size ;
 4155   struct urb *write_urb ;
 4156   struct kfifo write_fifo ;
 4157   unsigned char *bulk_out_buffers[2U] ;
 4158   struct urb *write_urbs[2U] ;
 4159   unsigned long write_urbs_free ;
 4160   __u8 bulk_out_endpointAddress ;
 4161   int tx_bytes ;
 4162   unsigned long flags ;
 4163   wait_queue_head_t write_wait ;
 4164   struct work_struct work ;
 4165   char throttled ;
 4166   char throttle_req ;
 4167   unsigned long sysrq ;
 4168   struct device dev ;
 4169};
 4170#line 134 "include/linux/usb/serial.h"
 4171struct usb_serial_driver;
 4172#line 134 "include/linux/usb/serial.h"
 4173struct usb_serial {
 4174   struct usb_device *dev ;
 4175   struct usb_serial_driver *type ;
 4176   struct usb_interface *interface ;
 4177   unsigned char disconnected : 1 ;
 4178   unsigned char suspending : 1 ;
 4179   unsigned char attached : 1 ;
 4180   unsigned char minor ;
 4181   unsigned char num_ports ;
 4182   unsigned char num_port_pointers ;
 4183   char num_interrupt_in ;
 4184   char num_interrupt_out ;
 4185   char num_bulk_in ;
 4186   char num_bulk_out ;
 4187   struct usb_serial_port *port[8U] ;
 4188   struct kref kref ;
 4189   struct mutex disc_mutex ;
 4190   void *private ;
 4191};
 4192#line 183 "include/linux/usb/serial.h"
 4193struct usb_serial_driver {
 4194   char const   *description ;
 4195   struct usb_device_id  const  *id_table ;
 4196   char num_ports ;
 4197   struct list_head driver_list ;
 4198   struct device_driver driver ;
 4199   struct usb_driver *usb_driver ;
 4200   struct usb_dynids dynids ;
 4201   size_t bulk_in_size ;
 4202   size_t bulk_out_size ;
 4203   int (*probe)(struct usb_serial * , struct usb_device_id  const  * ) ;
 4204   int (*attach)(struct usb_serial * ) ;
 4205   int (*calc_num_ports)(struct usb_serial * ) ;
 4206   void (*disconnect)(struct usb_serial * ) ;
 4207   void (*release)(struct usb_serial * ) ;
 4208   int (*port_probe)(struct usb_serial_port * ) ;
 4209   int (*port_remove)(struct usb_serial_port * ) ;
 4210   int (*suspend)(struct usb_serial * , pm_message_t  ) ;
 4211   int (*resume)(struct usb_serial * ) ;
 4212   int (*open)(struct tty_struct * , struct usb_serial_port * ) ;
 4213   void (*close)(struct usb_serial_port * ) ;
 4214   int (*write)(struct tty_struct * , struct usb_serial_port * , unsigned char const   * ,
 4215                int  ) ;
 4216   int (*write_room)(struct tty_struct * ) ;
 4217   int (*ioctl)(struct tty_struct * , unsigned int  , unsigned long  ) ;
 4218   void (*set_termios)(struct tty_struct * , struct usb_serial_port * , struct ktermios * ) ;
 4219   void (*break_ctl)(struct tty_struct * , int  ) ;
 4220   int (*chars_in_buffer)(struct tty_struct * ) ;
 4221   void (*throttle)(struct tty_struct * ) ;
 4222   void (*unthrottle)(struct tty_struct * ) ;
 4223   int (*tiocmget)(struct tty_struct * ) ;
 4224   int (*tiocmset)(struct tty_struct * , unsigned int  , unsigned int  ) ;
 4225   int (*get_icount)(struct tty_struct * , struct serial_icounter_struct * ) ;
 4226   void (*dtr_rts)(struct usb_serial_port * , int  ) ;
 4227   int (*carrier_raised)(struct usb_serial_port * ) ;
 4228   void (*init_termios)(struct tty_struct * ) ;
 4229   void (*read_int_callback)(struct urb * ) ;
 4230   void (*write_int_callback)(struct urb * ) ;
 4231   void (*read_bulk_callback)(struct urb * ) ;
 4232   void (*write_bulk_callback)(struct urb * ) ;
 4233   void (*process_read_urb)(struct urb * ) ;
 4234   int (*prepare_write_buffer)(struct usb_serial_port * , void * , size_t  ) ;
 4235};
 4236#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 4237struct moschip_port {
 4238   int port_num ;
 4239   struct urb *write_urb ;
 4240   struct urb *read_urb ;
 4241   struct urb *int_urb ;
 4242   __u8 shadowLCR ;
 4243   __u8 shadowMCR ;
 4244   char open ;
 4245   char open_ports ;
 4246   char zombie ;
 4247   wait_queue_head_t wait_chase ;
 4248   wait_queue_head_t delta_msr_wait ;
 4249   int delta_msr_cond ;
 4250   struct async_icount icount ;
 4251   struct usb_serial_port *port ;
 4252   __u8 SpRegOffset ;
 4253   __u8 ControlRegOffset ;
 4254   __u8 DcrRegOffset ;
 4255   struct urb *control_urb ;
 4256   struct usb_ctrlrequest *dr ;
 4257   char *ctrl_buf ;
 4258   int MsrLsr ;
 4259   spinlock_t pool_lock ;
 4260   struct urb *write_urb_pool[16U] ;
 4261   char busy[16U] ;
 4262   bool read_urb_busy ;
 4263};
 4264#line 1 "<compiler builtins>"
 4265
 4266#line 1
 4267long __builtin_expect(long  , long  ) ;
 4268#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 4269void ldv_spin_lock(void) ;
 4270#line 3
 4271void ldv_spin_unlock(void) ;
 4272#line 4
 4273int ldv_spin_trylock(void) ;
 4274#line 315 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
 4275__inline static int variable_test_bit(int nr , unsigned long const volatile   *addr ) 
 4276{ int oldbit ;
 4277  unsigned long *__cil_tmp4 ;
 4278
 4279  {
 4280#line 319
 4281  __cil_tmp4 = (unsigned long *)addr;
 4282#line 319
 4283  __asm__  volatile   ("bt %2,%1\n\tsbb %0,%0": "=r" (oldbit): "m" (*__cil_tmp4),
 4284                       "Ir" (nr));
 4285#line 324
 4286  return (oldbit);
 4287}
 4288}
 4289#line 101 "include/linux/printk.h"
 4290extern int printk(char const   *  , ...) ;
 4291#line 192 "include/linux/kernel.h"
 4292extern void might_fault(void) ;
 4293#line 88 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/percpu.h"
 4294extern void __bad_percpu_size(void) ;
 4295#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 4296extern struct task_struct *current_task ;
 4297#line 12 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 4298__inline static struct task_struct *get_current(void) 
 4299{ struct task_struct *pfo_ret__ ;
 4300
 4301  {
 4302#line 14
 4303  if (8 == 1) {
 4304#line 14
 4305    goto case_1;
 4306  } else
 4307#line 14
 4308  if (8 == 2) {
 4309#line 14
 4310    goto case_2;
 4311  } else
 4312#line 14
 4313  if (8 == 4) {
 4314#line 14
 4315    goto case_4;
 4316  } else
 4317#line 14
 4318  if (8 == 8) {
 4319#line 14
 4320    goto case_8;
 4321  } else {
 4322    {
 4323#line 14
 4324    goto switch_default;
 4325#line 14
 4326    if (0) {
 4327      case_1: /* CIL Label */ 
 4328#line 14
 4329      __asm__  ("movb %%gs:%P1,%0": "=q" (pfo_ret__): "p" (& current_task));
 4330#line 14
 4331      goto ldv_2918;
 4332      case_2: /* CIL Label */ 
 4333#line 14
 4334      __asm__  ("movw %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
 4335#line 14
 4336      goto ldv_2918;
 4337      case_4: /* CIL Label */ 
 4338#line 14
 4339      __asm__  ("movl %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
 4340#line 14
 4341      goto ldv_2918;
 4342      case_8: /* CIL Label */ 
 4343#line 14
 4344      __asm__  ("movq %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
 4345#line 14
 4346      goto ldv_2918;
 4347      switch_default: /* CIL Label */ 
 4348      {
 4349#line 14
 4350      __bad_percpu_size();
 4351      }
 4352    } else {
 4353      switch_break: /* CIL Label */ ;
 4354    }
 4355    }
 4356  }
 4357  ldv_2918: ;
 4358#line 14
 4359  return (pfo_ret__);
 4360}
 4361}
 4362#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
 4363extern void *memset(void * , int  , size_t  ) ;
 4364#line 82 "include/linux/thread_info.h"
 4365__inline static int test_ti_thread_flag(struct thread_info *ti , int flag ) 
 4366{ int tmp ;
 4367  unsigned long __cil_tmp4 ;
 4368  unsigned long __cil_tmp5 ;
 4369  __u32 *__cil_tmp6 ;
 4370  unsigned long const volatile   *__cil_tmp7 ;
 4371
 4372  {
 4373  {
 4374#line 84
 4375  __cil_tmp4 = (unsigned long )ti;
 4376#line 84
 4377  __cil_tmp5 = __cil_tmp4 + 16;
 4378#line 84
 4379  __cil_tmp6 = (__u32 *)__cil_tmp5;
 4380#line 84
 4381  __cil_tmp7 = (unsigned long const volatile   *)__cil_tmp6;
 4382#line 84
 4383  tmp = variable_test_bit(flag, __cil_tmp7);
 4384  }
 4385#line 84
 4386  return (tmp);
 4387}
 4388}
 4389#line 93 "include/linux/spinlock.h"
 4390extern void __raw_spin_lock_init(raw_spinlock_t * , char const   * , struct lock_class_key * ) ;
 4391#line 22 "include/linux/spinlock_api_smp.h"
 4392extern void _raw_spin_lock(raw_spinlock_t * ) ;
 4393#line 39
 4394extern void _raw_spin_unlock(raw_spinlock_t * ) ;
 4395#line 43
 4396extern void _raw_spin_unlock_irqrestore(raw_spinlock_t * , unsigned long  ) ;
 4397#line 272 "include/linux/spinlock.h"
 4398__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) 
 4399{ 
 4400
 4401  {
 4402#line 274
 4403  return ((struct raw_spinlock *)lock);
 4404}
 4405}
 4406#line 283 "include/linux/spinlock.h"
 4407__inline static void ldv_spin_lock_1(spinlock_t *lock ) 
 4408{ struct raw_spinlock *__cil_tmp2 ;
 4409
 4410  {
 4411  {
 4412#line 285
 4413  __cil_tmp2 = (struct raw_spinlock *)lock;
 4414#line 285
 4415  _raw_spin_lock(__cil_tmp2);
 4416  }
 4417#line 286
 4418  return;
 4419}
 4420}
 4421#line 283
 4422__inline static void spin_lock(spinlock_t *lock ) ;
 4423#line 323 "include/linux/spinlock.h"
 4424__inline static void ldv_spin_unlock_5(spinlock_t *lock ) 
 4425{ struct raw_spinlock *__cil_tmp2 ;
 4426
 4427  {
 4428  {
 4429#line 325
 4430  __cil_tmp2 = (struct raw_spinlock *)lock;
 4431#line 325
 4432  _raw_spin_unlock(__cil_tmp2);
 4433  }
 4434#line 326
 4435  return;
 4436}
 4437}
 4438#line 323
 4439__inline static void spin_unlock(spinlock_t *lock ) ;
 4440#line 350 "include/linux/spinlock.h"
 4441__inline static void ldv_spin_unlock_irqrestore_8(spinlock_t *lock , unsigned long flags ) 
 4442{ struct raw_spinlock *__cil_tmp5 ;
 4443
 4444  {
 4445  {
 4446#line 352
 4447  __cil_tmp5 = (struct raw_spinlock *)lock;
 4448#line 352
 4449  _raw_spin_unlock_irqrestore(__cil_tmp5, flags);
 4450  }
 4451#line 353
 4452  return;
 4453}
 4454}
 4455#line 350
 4456__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) ;
 4457#line 79 "include/linux/wait.h"
 4458extern void __init_waitqueue_head(wait_queue_head_t * , char const   * , struct lock_class_key * ) ;
 4459#line 155
 4460extern void __wake_up(wait_queue_head_t * , unsigned int  , int  , void * ) ;
 4461#line 578
 4462extern long interruptible_sleep_on_timeout(wait_queue_head_t * , long  ) ;
 4463#line 584
 4464extern void prepare_to_wait(wait_queue_head_t * , wait_queue_t * , int  ) ;
 4465#line 586
 4466extern void finish_wait(wait_queue_head_t * , wait_queue_t * ) ;
 4467#line 589
 4468extern int autoremove_wake_function(wait_queue_t * , unsigned int  , int  , void * ) ;
 4469#line 161 "include/linux/slab.h"
 4470extern void kfree(void const   * ) ;
 4471#line 220 "include/linux/slub_def.h"
 4472extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t  ) ;
 4473#line 223
 4474void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4475#line 225
 4476extern void *__kmalloc(size_t  , gfp_t  ) ;
 4477#line 268 "include/linux/slub_def.h"
 4478__inline static void *ldv_kmalloc_12(size_t size , gfp_t flags ) 
 4479{ void *tmp___2 ;
 4480
 4481  {
 4482  {
 4483#line 283
 4484  tmp___2 = __kmalloc(size, flags);
 4485  }
 4486#line 283
 4487  return (tmp___2);
 4488}
 4489}
 4490#line 268
 4491__inline static void *kmalloc(size_t size , gfp_t flags ) ;
 4492#line 353 "include/linux/slab.h"
 4493__inline static void *kzalloc(size_t size , gfp_t flags ) ;
 4494#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 4495extern void *__VERIFIER_nondet_pointer(void) ;
 4496#line 11
 4497void ldv_check_alloc_flags(gfp_t flags ) ;
 4498#line 12
 4499void ldv_check_alloc_nonatomic(void) ;
 4500#line 14
 4501struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
 4502#line 40 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
 4503extern unsigned long _copy_to_user(void * , void const   * , unsigned int  ) ;
 4504#line 63 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess_64.h"
 4505__inline static int copy_to_user(void *dst , void const   *src , unsigned int size ) 
 4506{ unsigned long tmp ;
 4507
 4508  {
 4509  {
 4510#line 65
 4511  might_fault();
 4512#line 67
 4513  tmp = _copy_to_user(dst, src, size);
 4514  }
 4515#line 67
 4516  return ((int )tmp);
 4517}
 4518}
 4519#line 792 "include/linux/device.h"
 4520extern void *dev_get_drvdata(struct device  const  * ) ;
 4521#line 793
 4522extern int dev_set_drvdata(struct device * , void * ) ;
 4523#line 892
 4524extern int dev_err(struct device  const  * , char const   *  , ...) ;
 4525#line 400 "include/linux/tty.h"
 4526extern void tty_kref_put(struct tty_struct * ) ;
 4527#line 442
 4528extern void tty_flip_buffer_push(struct tty_struct * ) ;
 4529#line 447
 4530extern speed_t tty_get_baud_rate(struct tty_struct * ) ;
 4531#line 464
 4532extern void tty_wakeup(struct tty_struct * ) ;
 4533#line 511
 4534extern struct tty_struct *tty_port_tty_get(struct tty_port * ) ;
 4535#line 6 "include/linux/tty_flip.h"
 4536extern int tty_insert_flip_string_fixed_flag(struct tty_struct * , unsigned char const   * ,
 4537                                             char  , size_t  ) ;
 4538#line 23 "include/linux/tty_flip.h"
 4539__inline static int tty_insert_flip_string(struct tty_struct *tty , unsigned char const   *chars ,
 4540                                           size_t size ) 
 4541{ int tmp ;
 4542
 4543  {
 4544  {
 4545#line 25
 4546  tmp = tty_insert_flip_string_fixed_flag(tty, chars, (char)0, size);
 4547  }
 4548#line 25
 4549  return (tmp);
 4550}
 4551}
 4552#line 362 "include/linux/sched.h"
 4553extern void schedule(void) ;
 4554#line 2563 "include/linux/sched.h"
 4555__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag ) 
 4556{ int tmp ;
 4557  unsigned long __cil_tmp4 ;
 4558  unsigned long __cil_tmp5 ;
 4559  void *__cil_tmp6 ;
 4560  struct thread_info *__cil_tmp7 ;
 4561
 4562  {
 4563  {
 4564#line 2565
 4565  __cil_tmp4 = (unsigned long )tsk;
 4566#line 2565
 4567  __cil_tmp5 = __cil_tmp4 + 8;
 4568#line 2565
 4569  __cil_tmp6 = *((void **)__cil_tmp5);
 4570#line 2565
 4571  __cil_tmp7 = (struct thread_info *)__cil_tmp6;
 4572#line 2565
 4573  tmp = test_ti_thread_flag(__cil_tmp7, flag);
 4574  }
 4575#line 2565
 4576  return (tmp);
 4577}
 4578}
 4579#line 2589 "include/linux/sched.h"
 4580__inline static int signal_pending(struct task_struct *p ) 
 4581{ int tmp ;
 4582  long tmp___0 ;
 4583  int __cil_tmp4 ;
 4584  long __cil_tmp5 ;
 4585
 4586  {
 4587  {
 4588#line 2591
 4589  tmp = test_tsk_thread_flag(p, 2);
 4590#line 2591
 4591  __cil_tmp4 = tmp != 0;
 4592#line 2591
 4593  __cil_tmp5 = (long )__cil_tmp4;
 4594#line 2591
 4595  tmp___0 = __builtin_expect(__cil_tmp5, 0L);
 4596  }
 4597#line 2591
 4598  return ((int )tmp___0);
 4599}
 4600}
 4601#line 1278 "include/linux/usb.h"
 4602__inline static void usb_fill_control_urb(struct urb *urb , struct usb_device *dev ,
 4603                                          unsigned int pipe , unsigned char *setup_packet ,
 4604                                          void *transfer_buffer , int buffer_length ,
 4605                                          void (*complete_fn)(struct urb * ) , void *context ) 
 4606{ unsigned long __cil_tmp9 ;
 4607  unsigned long __cil_tmp10 ;
 4608  unsigned long __cil_tmp11 ;
 4609  unsigned long __cil_tmp12 ;
 4610  unsigned long __cil_tmp13 ;
 4611  unsigned long __cil_tmp14 ;
 4612  unsigned long __cil_tmp15 ;
 4613  unsigned long __cil_tmp16 ;
 4614  unsigned long __cil_tmp17 ;
 4615  unsigned long __cil_tmp18 ;
 4616  unsigned long __cil_tmp19 ;
 4617  unsigned long __cil_tmp20 ;
 4618  unsigned long __cil_tmp21 ;
 4619  unsigned long __cil_tmp22 ;
 4620
 4621  {
 4622#line 1287
 4623  __cil_tmp9 = (unsigned long )urb;
 4624#line 1287
 4625  __cil_tmp10 = __cil_tmp9 + 72;
 4626#line 1287
 4627  *((struct usb_device **)__cil_tmp10) = dev;
 4628#line 1288
 4629  __cil_tmp11 = (unsigned long )urb;
 4630#line 1288
 4631  __cil_tmp12 = __cil_tmp11 + 88;
 4632#line 1288
 4633  *((unsigned int *)__cil_tmp12) = pipe;
 4634#line 1289
 4635  __cil_tmp13 = (unsigned long )urb;
 4636#line 1289
 4637  __cil_tmp14 = __cil_tmp13 + 144;
 4638#line 1289
 4639  *((unsigned char **)__cil_tmp14) = setup_packet;
 4640#line 1290
 4641  __cil_tmp15 = (unsigned long )urb;
 4642#line 1290
 4643  __cil_tmp16 = __cil_tmp15 + 104;
 4644#line 1290
 4645  *((void **)__cil_tmp16) = transfer_buffer;
 4646#line 1291
 4647  __cil_tmp17 = (unsigned long )urb;
 4648#line 1291
 4649  __cil_tmp18 = __cil_tmp17 + 136;
 4650#line 1291
 4651  *((u32 *)__cil_tmp18) = (u32 )buffer_length;
 4652#line 1292
 4653  __cil_tmp19 = (unsigned long )urb;
 4654#line 1292
 4655  __cil_tmp20 = __cil_tmp19 + 184;
 4656#line 1292
 4657  *((void (**)(struct urb * ))__cil_tmp20) = complete_fn;
 4658#line 1293
 4659  __cil_tmp21 = (unsigned long )urb;
 4660#line 1293
 4661  __cil_tmp22 = __cil_tmp21 + 176;
 4662#line 1293
 4663  *((void **)__cil_tmp22) = context;
 4664#line 1294
 4665  return;
 4666}
 4667}
 4668#line 1309 "include/linux/usb.h"
 4669__inline static void usb_fill_bulk_urb(struct urb *urb , struct usb_device *dev ,
 4670                                       unsigned int pipe , void *transfer_buffer ,
 4671                                       int buffer_length , void (*complete_fn)(struct urb * ) ,
 4672                                       void *context ) 
 4673{ unsigned long __cil_tmp8 ;
 4674  unsigned long __cil_tmp9 ;
 4675  unsigned long __cil_tmp10 ;
 4676  unsigned long __cil_tmp11 ;
 4677  unsigned long __cil_tmp12 ;
 4678  unsigned long __cil_tmp13 ;
 4679  unsigned long __cil_tmp14 ;
 4680  unsigned long __cil_tmp15 ;
 4681  unsigned long __cil_tmp16 ;
 4682  unsigned long __cil_tmp17 ;
 4683  unsigned long __cil_tmp18 ;
 4684  unsigned long __cil_tmp19 ;
 4685
 4686  {
 4687#line 1317
 4688  __cil_tmp8 = (unsigned long )urb;
 4689#line 1317
 4690  __cil_tmp9 = __cil_tmp8 + 72;
 4691#line 1317
 4692  *((struct usb_device **)__cil_tmp9) = dev;
 4693#line 1318
 4694  __cil_tmp10 = (unsigned long )urb;
 4695#line 1318
 4696  __cil_tmp11 = __cil_tmp10 + 88;
 4697#line 1318
 4698  *((unsigned int *)__cil_tmp11) = pipe;
 4699#line 1319
 4700  __cil_tmp12 = (unsigned long )urb;
 4701#line 1319
 4702  __cil_tmp13 = __cil_tmp12 + 104;
 4703#line 1319
 4704  *((void **)__cil_tmp13) = transfer_buffer;
 4705#line 1320
 4706  __cil_tmp14 = (unsigned long )urb;
 4707#line 1320
 4708  __cil_tmp15 = __cil_tmp14 + 136;
 4709#line 1320
 4710  *((u32 *)__cil_tmp15) = (u32 )buffer_length;
 4711#line 1321
 4712  __cil_tmp16 = (unsigned long )urb;
 4713#line 1321
 4714  __cil_tmp17 = __cil_tmp16 + 184;
 4715#line 1321
 4716  *((void (**)(struct urb * ))__cil_tmp17) = complete_fn;
 4717#line 1322
 4718  __cil_tmp18 = (unsigned long )urb;
 4719#line 1322
 4720  __cil_tmp19 = __cil_tmp18 + 176;
 4721#line 1322
 4722  *((void **)__cil_tmp19) = context;
 4723#line 1323
 4724  return;
 4725}
 4726}
 4727#line 1350 "include/linux/usb.h"
 4728__inline static void usb_fill_int_urb(struct urb *urb , struct usb_device *dev , unsigned int pipe ,
 4729                                      void *transfer_buffer , int buffer_length ,
 4730                                      void (*complete_fn)(struct urb * ) , void *context ,
 4731                                      int interval ) 
 4732{ unsigned long __cil_tmp9 ;
 4733  unsigned long __cil_tmp10 ;
 4734  unsigned long __cil_tmp11 ;
 4735  unsigned long __cil_tmp12 ;
 4736  unsigned long __cil_tmp13 ;
 4737  unsigned long __cil_tmp14 ;
 4738  unsigned long __cil_tmp15 ;
 4739  unsigned long __cil_tmp16 ;
 4740  unsigned long __cil_tmp17 ;
 4741  unsigned long __cil_tmp18 ;
 4742  unsigned long __cil_tmp19 ;
 4743  unsigned long __cil_tmp20 ;
 4744  unsigned long __cil_tmp21 ;
 4745  unsigned long __cil_tmp22 ;
 4746  enum usb_device_speed __cil_tmp23 ;
 4747  unsigned int __cil_tmp24 ;
 4748  unsigned long __cil_tmp25 ;
 4749  unsigned long __cil_tmp26 ;
 4750  int __cil_tmp27 ;
 4751  unsigned long __cil_tmp28 ;
 4752  unsigned long __cil_tmp29 ;
 4753  enum usb_device_speed __cil_tmp30 ;
 4754  unsigned int __cil_tmp31 ;
 4755  unsigned long __cil_tmp32 ;
 4756  unsigned long __cil_tmp33 ;
 4757  int __cil_tmp34 ;
 4758  unsigned long __cil_tmp35 ;
 4759  unsigned long __cil_tmp36 ;
 4760  unsigned long __cil_tmp37 ;
 4761  unsigned long __cil_tmp38 ;
 4762
 4763  {
 4764#line 1359
 4765  __cil_tmp9 = (unsigned long )urb;
 4766#line 1359
 4767  __cil_tmp10 = __cil_tmp9 + 72;
 4768#line 1359
 4769  *((struct usb_device **)__cil_tmp10) = dev;
 4770#line 1360
 4771  __cil_tmp11 = (unsigned long )urb;
 4772#line 1360
 4773  __cil_tmp12 = __cil_tmp11 + 88;
 4774#line 1360
 4775  *((unsigned int *)__cil_tmp12) = pipe;
 4776#line 1361
 4777  __cil_tmp13 = (unsigned long )urb;
 4778#line 1361
 4779  __cil_tmp14 = __cil_tmp13 + 104;
 4780#line 1361
 4781  *((void **)__cil_tmp14) = transfer_buffer;
 4782#line 1362
 4783  __cil_tmp15 = (unsigned long )urb;
 4784#line 1362
 4785  __cil_tmp16 = __cil_tmp15 + 136;
 4786#line 1362
 4787  *((u32 *)__cil_tmp16) = (u32 )buffer_length;
 4788#line 1363
 4789  __cil_tmp17 = (unsigned long )urb;
 4790#line 1363
 4791  __cil_tmp18 = __cil_tmp17 + 184;
 4792#line 1363
 4793  *((void (**)(struct urb * ))__cil_tmp18) = complete_fn;
 4794#line 1364
 4795  __cil_tmp19 = (unsigned long )urb;
 4796#line 1364
 4797  __cil_tmp20 = __cil_tmp19 + 176;
 4798#line 1364
 4799  *((void **)__cil_tmp20) = context;
 4800  {
 4801#line 1365
 4802  __cil_tmp21 = (unsigned long )dev;
 4803#line 1365
 4804  __cil_tmp22 = __cil_tmp21 + 28;
 4805#line 1365
 4806  __cil_tmp23 = *((enum usb_device_speed *)__cil_tmp22);
 4807#line 1365
 4808  __cil_tmp24 = (unsigned int )__cil_tmp23;
 4809#line 1365
 4810  if (__cil_tmp24 == 3U) {
 4811#line 1366
 4812    __cil_tmp25 = (unsigned long )urb;
 4813#line 1366
 4814    __cil_tmp26 = __cil_tmp25 + 168;
 4815#line 1366
 4816    __cil_tmp27 = interval + -1;
 4817#line 1366
 4818    *((int *)__cil_tmp26) = 1 << __cil_tmp27;
 4819  } else {
 4820    {
 4821#line 1365
 4822    __cil_tmp28 = (unsigned long )dev;
 4823#line 1365
 4824    __cil_tmp29 = __cil_tmp28 + 28;
 4825#line 1365
 4826    __cil_tmp30 = *((enum usb_device_speed *)__cil_tmp29);
 4827#line 1365
 4828    __cil_tmp31 = (unsigned int )__cil_tmp30;
 4829#line 1365
 4830    if (__cil_tmp31 == 5U) {
 4831#line 1366
 4832      __cil_tmp32 = (unsigned long )urb;
 4833#line 1366
 4834      __cil_tmp33 = __cil_tmp32 + 168;
 4835#line 1366
 4836      __cil_tmp34 = interval + -1;
 4837#line 1366
 4838      *((int *)__cil_tmp33) = 1 << __cil_tmp34;
 4839    } else {
 4840#line 1368
 4841      __cil_tmp35 = (unsigned long )urb;
 4842#line 1368
 4843      __cil_tmp36 = __cil_tmp35 + 168;
 4844#line 1368
 4845      *((int *)__cil_tmp36) = interval;
 4846    }
 4847    }
 4848  }
 4849  }
 4850#line 1369
 4851  __cil_tmp37 = (unsigned long )urb;
 4852#line 1369
 4853  __cil_tmp38 = __cil_tmp37 + 160;
 4854#line 1369
 4855  *((int *)__cil_tmp38) = -1;
 4856#line 1370
 4857  return;
 4858}
 4859}
 4860#line 1373
 4861extern struct urb *usb_alloc_urb(int  , gfp_t  ) ;
 4862#line 1376
 4863struct urb *ldv_usb_alloc_urb_23(int ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4864#line 1380
 4865struct urb *ldv_usb_alloc_urb_29(int ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4866#line 1382
 4867extern void usb_free_urb(struct urb * ) ;
 4868#line 1385
 4869extern int usb_submit_urb(struct urb * , gfp_t  ) ;
 4870#line 1388
 4871int ldv_usb_submit_urb_19(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4872#line 1392
 4873int ldv_usb_submit_urb_20(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4874#line 1396
 4875int ldv_usb_submit_urb_21(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4876#line 1400
 4877int ldv_usb_submit_urb_22(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4878#line 1404
 4879int ldv_usb_submit_urb_24(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4880#line 1408
 4881int ldv_usb_submit_urb_25(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4882#line 1412
 4883int ldv_usb_submit_urb_26(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4884#line 1416
 4885int ldv_usb_submit_urb_27(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4886#line 1420
 4887int ldv_usb_submit_urb_28(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
 4888#line 1423
 4889extern void usb_kill_urb(struct urb * ) ;
 4890#line 1443
 4891extern int usb_control_msg(struct usb_device * , unsigned int  , __u8  , __u8  , __u16  ,
 4892                           __u16  , void * , __u16  , int  ) ;
 4893#line 1461
 4894extern int usb_clear_halt(struct usb_device * , int  ) ;
 4895#line 1567 "include/linux/usb.h"
 4896__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint ) 
 4897{ unsigned int __cil_tmp3 ;
 4898  int __cil_tmp4 ;
 4899  int __cil_tmp5 ;
 4900  unsigned int __cil_tmp6 ;
 4901
 4902  {
 4903  {
 4904#line 1570
 4905  __cil_tmp3 = endpoint << 15;
 4906#line 1570
 4907  __cil_tmp4 = *((int *)dev);
 4908#line 1570
 4909  __cil_tmp5 = __cil_tmp4 << 8;
 4910#line 1570
 4911  __cil_tmp6 = (unsigned int )__cil_tmp5;
 4912#line 1570
 4913  return (__cil_tmp6 | __cil_tmp3);
 4914  }
 4915}
 4916}
 4917#line 124 "include/linux/usb/serial.h"
 4918__inline static void *usb_get_serial_port_data(struct usb_serial_port *port ) 
 4919{ void *tmp ;
 4920  unsigned long __cil_tmp3 ;
 4921  unsigned long __cil_tmp4 ;
 4922  struct device *__cil_tmp5 ;
 4923  struct device  const  *__cil_tmp6 ;
 4924
 4925  {
 4926  {
 4927#line 126
 4928  __cil_tmp3 = (unsigned long )port;
 4929#line 126
 4930  __cil_tmp4 = __cil_tmp3 + 1240;
 4931#line 126
 4932  __cil_tmp5 = (struct device *)__cil_tmp4;
 4933#line 126
 4934  __cil_tmp6 = (struct device  const  *)__cil_tmp5;
 4935#line 126
 4936  tmp = dev_get_drvdata(__cil_tmp6);
 4937  }
 4938#line 126
 4939  return (tmp);
 4940}
 4941}
 4942#line 129 "include/linux/usb/serial.h"
 4943__inline static void usb_set_serial_port_data(struct usb_serial_port *port , void *data ) 
 4944{ unsigned long __cil_tmp3 ;
 4945  unsigned long __cil_tmp4 ;
 4946  struct device *__cil_tmp5 ;
 4947
 4948  {
 4949  {
 4950#line 132
 4951  __cil_tmp3 = (unsigned long )port;
 4952#line 132
 4953  __cil_tmp4 = __cil_tmp3 + 1240;
 4954#line 132
 4955  __cil_tmp5 = (struct device *)__cil_tmp4;
 4956#line 132
 4957  dev_set_drvdata(__cil_tmp5, data);
 4958  }
 4959#line 133
 4960  return;
 4961}
 4962}
 4963#line 245 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 4964struct usb_device_id  const  __mod_usb_device_table  ;
 4965#line 282 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 4966static bool debug  ;
 4967#line 290 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 4968static int mos7840_set_reg_sync(struct usb_serial_port *port , __u16 reg , __u16 val ) 
 4969{ struct usb_device *dev ;
 4970  unsigned int tmp ;
 4971  int tmp___0 ;
 4972  struct usb_serial *__cil_tmp7 ;
 4973  unsigned int __cil_tmp8 ;
 4974  unsigned int __cil_tmp9 ;
 4975  bool *__cil_tmp10 ;
 4976  bool __cil_tmp11 ;
 4977  char *__cil_tmp12 ;
 4978  int __cil_tmp13 ;
 4979  int __cil_tmp14 ;
 4980  unsigned int __cil_tmp15 ;
 4981  __u8 __cil_tmp16 ;
 4982  __u8 __cil_tmp17 ;
 4983  int __cil_tmp18 ;
 4984  __u16 __cil_tmp19 ;
 4985  int __cil_tmp20 ;
 4986  __u16 __cil_tmp21 ;
 4987  void *__cil_tmp22 ;
 4988  __u16 __cil_tmp23 ;
 4989
 4990  {
 4991#line 293
 4992  __cil_tmp7 = *((struct usb_serial **)port);
 4993#line 293
 4994  dev = *((struct usb_device **)__cil_tmp7);
 4995#line 294
 4996  __cil_tmp8 = (unsigned int )val;
 4997#line 294
 4998  __cil_tmp9 = __cil_tmp8 & 255U;
 4999#line 294
 5000  val = (__u16 )__cil_tmp9;
 5001  {
 5002#line 295
 5003  __cil_tmp10 = & debug;
 5004#line 295
 5005  __cil_tmp11 = *__cil_tmp10;
 5006#line 295
 5007  if ((int )__cil_tmp11) {
 5008    {
 5009#line 295
 5010    __cil_tmp12 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5011#line 295
 5012    __cil_tmp13 = (int )reg;
 5013#line 295
 5014    __cil_tmp14 = (int )val;
 5015#line 295
 5016    printk("<7>%s: mos7840_set_reg_sync offset is %x, value %x\n", __cil_tmp12, __cil_tmp13,
 5017           __cil_tmp14);
 5018    }
 5019  } else {
 5020
 5021  }
 5022  }
 5023  {
 5024#line 297
 5025  tmp = __create_pipe(dev, 0U);
 5026#line 297
 5027  __cil_tmp15 = tmp | 2147483648U;
 5028#line 297
 5029  __cil_tmp16 = (__u8 )14;
 5030#line 297
 5031  __cil_tmp17 = (__u8 )64;
 5032#line 297
 5033  __cil_tmp18 = (int )val;
 5034#line 297
 5035  __cil_tmp19 = (__u16 )__cil_tmp18;
 5036#line 297
 5037  __cil_tmp20 = (int )reg;
 5038#line 297
 5039  __cil_tmp21 = (__u16 )__cil_tmp20;
 5040#line 297
 5041  __cil_tmp22 = (void *)0;
 5042#line 297
 5043  __cil_tmp23 = (__u16 )0;
 5044#line 297
 5045  tmp___0 = usb_control_msg(dev, __cil_tmp15, __cil_tmp16, __cil_tmp17, __cil_tmp19,
 5046                            __cil_tmp21, __cil_tmp22, __cil_tmp23, 1250);
 5047  }
 5048#line 297
 5049  return (tmp___0);
 5050}
 5051}
 5052#line 308 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 5053static int mos7840_get_reg_sync(struct usb_serial_port *port , __u16 reg , __u16 *val ) 
 5054{ struct usb_device *dev ;
 5055  int ret ;
 5056  u8 *buf ;
 5057  void *tmp ;
 5058  unsigned int tmp___0 ;
 5059  struct usb_serial *__cil_tmp9 ;
 5060  u8 *__cil_tmp10 ;
 5061  unsigned long __cil_tmp11 ;
 5062  unsigned long __cil_tmp12 ;
 5063  unsigned int __cil_tmp13 ;
 5064  __u8 __cil_tmp14 ;
 5065  __u8 __cil_tmp15 ;
 5066  __u16 __cil_tmp16 ;
 5067  int __cil_tmp17 ;
 5068  __u16 __cil_tmp18 ;
 5069  void *__cil_tmp19 ;
 5070  __u16 __cil_tmp20 ;
 5071  u8 __cil_tmp21 ;
 5072  bool *__cil_tmp22 ;
 5073  bool __cil_tmp23 ;
 5074  char *__cil_tmp24 ;
 5075  int __cil_tmp25 ;
 5076  __u16 __cil_tmp26 ;
 5077  int __cil_tmp27 ;
 5078  void const   *__cil_tmp28 ;
 5079
 5080  {
 5081  {
 5082#line 311
 5083  __cil_tmp9 = *((struct usb_serial **)port);
 5084#line 311
 5085  dev = *((struct usb_device **)__cil_tmp9);
 5086#line 312
 5087  ret = 0;
 5088#line 315
 5089  tmp = kmalloc(1UL, 208U);
 5090#line 315
 5091  buf = (u8 *)tmp;
 5092  }
 5093  {
 5094#line 316
 5095  __cil_tmp10 = (u8 *)0;
 5096#line 316
 5097  __cil_tmp11 = (unsigned long )__cil_tmp10;
 5098#line 316
 5099  __cil_tmp12 = (unsigned long )buf;
 5100#line 316
 5101  if (__cil_tmp12 == __cil_tmp11) {
 5102#line 317
 5103    return (-12);
 5104  } else {
 5105
 5106  }
 5107  }
 5108  {
 5109#line 319
 5110  tmp___0 = __create_pipe(dev, 0U);
 5111#line 319
 5112  __cil_tmp13 = tmp___0 | 2147483776U;
 5113#line 319
 5114  __cil_tmp14 = (__u8 )13;
 5115#line 319
 5116  __cil_tmp15 = (__u8 )192;
 5117#line 319
 5118  __cil_tmp16 = (__u16 )0;
 5119#line 319
 5120  __cil_tmp17 = (int )reg;
 5121#line 319
 5122  __cil_tmp18 = (__u16 )__cil_tmp17;
 5123#line 319
 5124  __cil_tmp19 = (void *)buf;
 5125#line 319
 5126  __cil_tmp20 = (__u16 )1;
 5127#line 319
 5128  ret = usb_control_msg(dev, __cil_tmp13, __cil_tmp14, __cil_tmp15, __cil_tmp16, __cil_tmp18,
 5129                        __cil_tmp19, __cil_tmp20, 1250);
 5130#line 322
 5131  __cil_tmp21 = *buf;
 5132#line 322
 5133  *val = (__u16 )__cil_tmp21;
 5134  }
 5135  {
 5136#line 323
 5137  __cil_tmp22 = & debug;
 5138#line 323
 5139  __cil_tmp23 = *__cil_tmp22;
 5140#line 323
 5141  if ((int )__cil_tmp23) {
 5142    {
 5143#line 323
 5144    __cil_tmp24 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5145#line 323
 5146    __cil_tmp25 = (int )reg;
 5147#line 323
 5148    __cil_tmp26 = *val;
 5149#line 323
 5150    __cil_tmp27 = (int )__cil_tmp26;
 5151#line 323
 5152    printk("<7>%s: mos7840_get_reg_sync offset is %x, return val %x\n", __cil_tmp24,
 5153           __cil_tmp25, __cil_tmp27);
 5154    }
 5155  } else {
 5156
 5157  }
 5158  }
 5159  {
 5160#line 325
 5161  __cil_tmp28 = (void const   *)buf;
 5162#line 325
 5163  kfree(__cil_tmp28);
 5164  }
 5165#line 326
 5166  return (ret);
 5167}
 5168}
 5169#line 335 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 5170static int mos7840_set_uart_reg(struct usb_serial_port *port , __u16 reg , __u16 val ) 
 5171{ struct usb_device *dev ;
 5172  unsigned int tmp ;
 5173  int tmp___0 ;
 5174  struct usb_serial *__cil_tmp7 ;
 5175  unsigned int __cil_tmp8 ;
 5176  unsigned int __cil_tmp9 ;
 5177  struct usb_serial *__cil_tmp10 ;
 5178  unsigned long __cil_tmp11 ;
 5179  unsigned long __cil_tmp12 ;
 5180  unsigned char __cil_tmp13 ;
 5181  unsigned int __cil_tmp14 ;
 5182  short __cil_tmp15 ;
 5183  int __cil_tmp16 ;
 5184  struct usb_serial *__cil_tmp17 ;
 5185  unsigned long __cil_tmp18 ;
 5186  unsigned long __cil_tmp19 ;
 5187  unsigned char __cil_tmp20 ;
 5188  int __cil_tmp21 ;
 5189  unsigned long __cil_tmp22 ;
 5190  unsigned long __cil_tmp23 ;
 5191  unsigned char __cil_tmp24 ;
 5192  int __cil_tmp25 ;
 5193  int __cil_tmp26 ;
 5194  int __cil_tmp27 ;
 5195  int __cil_tmp28 ;
 5196  short __cil_tmp29 ;
 5197  int __cil_tmp30 ;
 5198  int __cil_tmp31 ;
 5199  bool *__cil_tmp32 ;
 5200  bool __cil_tmp33 ;
 5201  char *__cil_tmp34 ;
 5202  int __cil_tmp35 ;
 5203  struct usb_serial *__cil_tmp36 ;
 5204  unsigned long __cil_tmp37 ;
 5205  unsigned long __cil_tmp38 ;
 5206  unsigned char __cil_tmp39 ;
 5207  int __cil_tmp40 ;
 5208  unsigned long __cil_tmp41 ;
 5209  unsigned long __cil_tmp42 ;
 5210  unsigned char __cil_tmp43 ;
 5211  int __cil_tmp44 ;
 5212  short __cil_tmp45 ;
 5213  int __cil_tmp46 ;
 5214  struct usb_serial *__cil_tmp47 ;
 5215  unsigned long __cil_tmp48 ;
 5216  unsigned long __cil_tmp49 ;
 5217  unsigned char __cil_tmp50 ;
 5218  int __cil_tmp51 ;
 5219  unsigned long __cil_tmp52 ;
 5220  unsigned long __cil_tmp53 ;
 5221  unsigned char __cil_tmp54 ;
 5222  int __cil_tmp55 ;
 5223  int __cil_tmp56 ;
 5224  int __cil_tmp57 ;
 5225  int __cil_tmp58 ;
 5226  short __cil_tmp59 ;
 5227  int __cil_tmp60 ;
 5228  int __cil_tmp61 ;
 5229  bool *__cil_tmp62 ;
 5230  bool __cil_tmp63 ;
 5231  char *__cil_tmp64 ;
 5232  int __cil_tmp65 ;
 5233  short __cil_tmp66 ;
 5234  int __cil_tmp67 ;
 5235  struct usb_serial *__cil_tmp68 ;
 5236  unsigned long __cil_tmp69 ;
 5237  unsigned long __cil_tmp70 ;
 5238  unsigned char __cil_tmp71 ;
 5239  int __cil_tmp72 ;
 5240  unsigned long __cil_tmp73 ;
 5241  unsigned long __cil_tmp74 ;
 5242  unsigned char __cil_tmp75 ;
 5243  int __cil_tmp76 ;
 5244  int __cil_tmp77 ;
 5245  int __cil_tmp78 ;
 5246  int __cil_tmp79 ;
 5247  short __cil_tmp80 ;
 5248  int __cil_tmp81 ;
 5249  int __cil_tmp82 ;
 5250  bool *__cil_tmp83 ;
 5251  bool __cil_tmp84 ;
 5252  char *__cil_tmp85 ;
 5253  int __cil_tmp86 ;
 5254  unsigned int __cil_tmp87 ;
 5255  __u8 __cil_tmp88 ;
 5256  __u8 __cil_tmp89 ;
 5257  int __cil_tmp90 ;
 5258  __u16 __cil_tmp91 ;
 5259  int __cil_tmp92 ;
 5260  __u16 __cil_tmp93 ;
 5261  void *__cil_tmp94 ;
 5262  __u16 __cil_tmp95 ;
 5263
 5264  {
 5265#line 339
 5266  __cil_tmp7 = *((struct usb_serial **)port);
 5267#line 339
 5268  dev = *((struct usb_device **)__cil_tmp7);
 5269#line 340
 5270  __cil_tmp8 = (unsigned int )val;
 5271#line 340
 5272  __cil_tmp9 = __cil_tmp8 & 255U;
 5273#line 340
 5274  val = (__u16 )__cil_tmp9;
 5275  {
 5276#line 343
 5277  __cil_tmp10 = *((struct usb_serial **)port);
 5278#line 343
 5279  __cil_tmp11 = (unsigned long )__cil_tmp10;
 5280#line 343
 5281  __cil_tmp12 = __cil_tmp11 + 26;
 5282#line 343
 5283  __cil_tmp13 = *((unsigned char *)__cil_tmp12);
 5284#line 343
 5285  __cil_tmp14 = (unsigned int )__cil_tmp13;
 5286#line 343
 5287  if (__cil_tmp14 == 4U) {
 5288#line 344
 5289    __cil_tmp15 = (short )val;
 5290#line 344
 5291    __cil_tmp16 = (int )__cil_tmp15;
 5292#line 344
 5293    __cil_tmp17 = *((struct usb_serial **)port);
 5294#line 344
 5295    __cil_tmp18 = (unsigned long )__cil_tmp17;
 5296#line 344
 5297    __cil_tmp19 = __cil_tmp18 + 25;
 5298#line 344
 5299    __cil_tmp20 = *((unsigned char *)__cil_tmp19);
 5300#line 344
 5301    __cil_tmp21 = (int )__cil_tmp20;
 5302#line 344
 5303    __cil_tmp22 = (unsigned long )port;
 5304#line 344
 5305    __cil_tmp23 = __cil_tmp22 + 816;
 5306#line 344
 5307    __cil_tmp24 = *((unsigned char *)__cil_tmp23);
 5308#line 344
 5309    __cil_tmp25 = (int )__cil_tmp24;
 5310#line 344
 5311    __cil_tmp26 = __cil_tmp25 - __cil_tmp21;
 5312#line 344
 5313    __cil_tmp27 = __cil_tmp26 + 1;
 5314#line 344
 5315    __cil_tmp28 = __cil_tmp27 << 8;
 5316#line 344
 5317    __cil_tmp29 = (short )__cil_tmp28;
 5318#line 344
 5319    __cil_tmp30 = (int )__cil_tmp29;
 5320#line 344
 5321    __cil_tmp31 = __cil_tmp30 | __cil_tmp16;
 5322#line 344
 5323    val = (__u16 )__cil_tmp31;
 5324    {
 5325#line 346
 5326    __cil_tmp32 = & debug;
 5327#line 346
 5328    __cil_tmp33 = *__cil_tmp32;
 5329#line 346
 5330    if ((int )__cil_tmp33) {
 5331      {
 5332#line 346
 5333      __cil_tmp34 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5334#line 346
 5335      __cil_tmp35 = (int )val;
 5336#line 346
 5337      printk("<7>%s: mos7840_set_uart_reg application number is %x\n", __cil_tmp34,
 5338             __cil_tmp35);
 5339      }
 5340    } else {
 5341
 5342    }
 5343    }
 5344  } else {
 5345    {
 5346#line 348
 5347    __cil_tmp36 = *((struct usb_serial **)port);
 5348#line 348
 5349    __cil_tmp37 = (unsigned long )__cil_tmp36;
 5350#line 348
 5351    __cil_tmp38 = __cil_tmp37 + 25;
 5352#line 348
 5353    __cil_tmp39 = *((unsigned char *)__cil_tmp38);
 5354#line 348
 5355    __cil_tmp40 = (int )__cil_tmp39;
 5356#line 348
 5357    __cil_tmp41 = (unsigned long )port;
 5358#line 348
 5359    __cil_tmp42 = __cil_tmp41 + 816;
 5360#line 348
 5361    __cil_tmp43 = *((unsigned char *)__cil_tmp42);
 5362#line 348
 5363    __cil_tmp44 = (int )__cil_tmp43;
 5364#line 348
 5365    if (__cil_tmp44 == __cil_tmp40) {
 5366#line 349
 5367      __cil_tmp45 = (short )val;
 5368#line 349
 5369      __cil_tmp46 = (int )__cil_tmp45;
 5370#line 349
 5371      __cil_tmp47 = *((struct usb_serial **)port);
 5372#line 349
 5373      __cil_tmp48 = (unsigned long )__cil_tmp47;
 5374#line 349
 5375      __cil_tmp49 = __cil_tmp48 + 25;
 5376#line 349
 5377      __cil_tmp50 = *((unsigned char *)__cil_tmp49);
 5378#line 349
 5379      __cil_tmp51 = (int )__cil_tmp50;
 5380#line 349
 5381      __cil_tmp52 = (unsigned long )port;
 5382#line 349
 5383      __cil_tmp53 = __cil_tmp52 + 816;
 5384#line 349
 5385      __cil_tmp54 = *((unsigned char *)__cil_tmp53);
 5386#line 349
 5387      __cil_tmp55 = (int )__cil_tmp54;
 5388#line 349
 5389      __cil_tmp56 = __cil_tmp55 - __cil_tmp51;
 5390#line 349
 5391      __cil_tmp57 = __cil_tmp56 + 1;
 5392#line 349
 5393      __cil_tmp58 = __cil_tmp57 << 8;
 5394#line 349
 5395      __cil_tmp59 = (short )__cil_tmp58;
 5396#line 349
 5397      __cil_tmp60 = (int )__cil_tmp59;
 5398#line 349
 5399      __cil_tmp61 = __cil_tmp60 | __cil_tmp46;
 5400#line 349
 5401      val = (__u16 )__cil_tmp61;
 5402      {
 5403#line 351
 5404      __cil_tmp62 = & debug;
 5405#line 351
 5406      __cil_tmp63 = *__cil_tmp62;
 5407#line 351
 5408      if ((int )__cil_tmp63) {
 5409        {
 5410#line 351
 5411        __cil_tmp64 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5412#line 351
 5413        __cil_tmp65 = (int )val;
 5414#line 351
 5415        printk("<7>%s: mos7840_set_uart_reg application number is %x\n", __cil_tmp64,
 5416               __cil_tmp65);
 5417        }
 5418      } else {
 5419
 5420      }
 5421      }
 5422    } else {
 5423#line 354
 5424      __cil_tmp66 = (short )val;
 5425#line 354
 5426      __cil_tmp67 = (int )__cil_tmp66;
 5427#line 354
 5428      __cil_tmp68 = *((struct usb_serial **)port);
 5429#line 354
 5430      __cil_tmp69 = (unsigned long )__cil_tmp68;
 5431#line 354
 5432      __cil_tmp70 = __cil_tmp69 + 25;
 5433#line 354
 5434      __cil_tmp71 = *((unsigned char *)__cil_tmp70);
 5435#line 354
 5436      __cil_tmp72 = (int )__cil_tmp71;
 5437#line 354
 5438      __cil_tmp73 = (unsigned long )port;
 5439#line 354
 5440      __cil_tmp74 = __cil_tmp73 + 816;
 5441#line 354
 5442      __cil_tmp75 = *((unsigned char *)__cil_tmp74);
 5443#line 354
 5444      __cil_tmp76 = (int )__cil_tmp75;
 5445#line 354
 5446      __cil_tmp77 = __cil_tmp76 - __cil_tmp72;
 5447#line 354
 5448      __cil_tmp78 = __cil_tmp77 + 2;
 5449#line 354
 5450      __cil_tmp79 = __cil_tmp78 << 8;
 5451#line 354
 5452      __cil_tmp80 = (short )__cil_tmp79;
 5453#line 354
 5454      __cil_tmp81 = (int )__cil_tmp80;
 5455#line 354
 5456      __cil_tmp82 = __cil_tmp81 | __cil_tmp67;
 5457#line 354
 5458      val = (__u16 )__cil_tmp82;
 5459      {
 5460#line 357
 5461      __cil_tmp83 = & debug;
 5462#line 357
 5463      __cil_tmp84 = *__cil_tmp83;
 5464#line 357
 5465      if ((int )__cil_tmp84) {
 5466        {
 5467#line 357
 5468        __cil_tmp85 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5469#line 357
 5470        __cil_tmp86 = (int )val;
 5471#line 357
 5472        printk("<7>%s: mos7840_set_uart_reg application number is %x\n", __cil_tmp85,
 5473               __cil_tmp86);
 5474        }
 5475      } else {
 5476
 5477      }
 5478      }
 5479    }
 5480    }
 5481  }
 5482  }
 5483  {
 5484#line 361
 5485  tmp = __create_pipe(dev, 0U);
 5486#line 361
 5487  __cil_tmp87 = tmp | 2147483648U;
 5488#line 361
 5489  __cil_tmp88 = (__u8 )14;
 5490#line 361
 5491  __cil_tmp89 = (__u8 )64;
 5492#line 361
 5493  __cil_tmp90 = (int )val;
 5494#line 361
 5495  __cil_tmp91 = (__u16 )__cil_tmp90;
 5496#line 361
 5497  __cil_tmp92 = (int )reg;
 5498#line 361
 5499  __cil_tmp93 = (__u16 )__cil_tmp92;
 5500#line 361
 5501  __cil_tmp94 = (void *)0;
 5502#line 361
 5503  __cil_tmp95 = (__u16 )0;
 5504#line 361
 5505  tmp___0 = usb_control_msg(dev, __cil_tmp87, __cil_tmp88, __cil_tmp89, __cil_tmp91,
 5506                            __cil_tmp93, __cil_tmp94, __cil_tmp95, 1250);
 5507  }
 5508#line 361
 5509  return (tmp___0);
 5510}
 5511}
 5512#line 372 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 5513static int mos7840_get_uart_reg(struct usb_serial_port *port , __u16 reg , __u16 *val ) 
 5514{ struct usb_device *dev ;
 5515  int ret ;
 5516  __u16 Wval ;
 5517  u8 *buf ;
 5518  void *tmp ;
 5519  unsigned int tmp___0 ;
 5520  struct usb_serial *__cil_tmp10 ;
 5521  u8 *__cil_tmp11 ;
 5522  unsigned long __cil_tmp12 ;
 5523  unsigned long __cil_tmp13 ;
 5524  struct usb_serial *__cil_tmp14 ;
 5525  unsigned long __cil_tmp15 ;
 5526  unsigned long __cil_tmp16 ;
 5527  unsigned char __cil_tmp17 ;
 5528  unsigned int __cil_tmp18 ;
 5529  struct usb_serial *__cil_tmp19 ;
 5530  unsigned long __cil_tmp20 ;
 5531  unsigned long __cil_tmp21 ;
 5532  unsigned char __cil_tmp22 ;
 5533  __u16 __cil_tmp23 ;
 5534  int __cil_tmp24 ;
 5535  unsigned long __cil_tmp25 ;
 5536  unsigned long __cil_tmp26 ;
 5537  unsigned char __cil_tmp27 ;
 5538  __u16 __cil_tmp28 ;
 5539  int __cil_tmp29 ;
 5540  int __cil_tmp30 ;
 5541  unsigned int __cil_tmp31 ;
 5542  unsigned int __cil_tmp32 ;
 5543  unsigned int __cil_tmp33 ;
 5544  bool *__cil_tmp34 ;
 5545  bool __cil_tmp35 ;
 5546  char *__cil_tmp36 ;
 5547  int __cil_tmp37 ;
 5548  struct usb_serial *__cil_tmp38 ;
 5549  unsigned long __cil_tmp39 ;
 5550  unsigned long __cil_tmp40 ;
 5551  unsigned char __cil_tmp41 ;
 5552  int __cil_tmp42 ;
 5553  unsigned long __cil_tmp43 ;
 5554  unsigned long __cil_tmp44 ;
 5555  unsigned char __cil_tmp45 ;
 5556  int __cil_tmp46 ;
 5557  struct usb_serial *__cil_tmp47 ;
 5558  unsigned long __cil_tmp48 ;
 5559  unsigned long __cil_tmp49 ;
 5560  unsigned char __cil_tmp50 ;
 5561  __u16 __cil_tmp51 ;
 5562  int __cil_tmp52 ;
 5563  unsigned long __cil_tmp53 ;
 5564  unsigned long __cil_tmp54 ;
 5565  unsigned char __cil_tmp55 ;
 5566  __u16 __cil_tmp56 ;
 5567  int __cil_tmp57 ;
 5568  int __cil_tmp58 ;
 5569  unsigned int __cil_tmp59 ;
 5570  unsigned int __cil_tmp60 ;
 5571  unsigned int __cil_tmp61 ;
 5572  bool *__cil_tmp62 ;
 5573  bool __cil_tmp63 ;
 5574  char *__cil_tmp64 ;
 5575  int __cil_tmp65 ;
 5576  struct usb_serial *__cil_tmp66 ;
 5577  unsigned long __cil_tmp67 ;
 5578  unsigned long __cil_tmp68 ;
 5579  unsigned char __cil_tmp69 ;
 5580  __u16 __cil_tmp70 ;
 5581  int __cil_tmp71 ;
 5582  unsigned long __cil_tmp72 ;
 5583  unsigned long __cil_tmp73 ;
 5584  unsigned char __cil_tmp74 ;
 5585  __u16 __cil_tmp75 ;
 5586  int __cil_tmp76 ;
 5587  int __cil_tmp77 ;
 5588  unsigned int __cil_tmp78 ;
 5589  unsigned int __cil_tmp79 ;
 5590  unsigned int __cil_tmp80 ;
 5591  bool *__cil_tmp81 ;
 5592  bool __cil_tmp82 ;
 5593  char *__cil_tmp83 ;
 5594  int __cil_tmp84 ;
 5595  unsigned int __cil_tmp85 ;
 5596  __u8 __cil_tmp86 ;
 5597  __u8 __cil_tmp87 ;
 5598  int __cil_tmp88 ;
 5599  __u16 __cil_tmp89 ;
 5600  int __cil_tmp90 ;
 5601  __u16 __cil_tmp91 ;
 5602  void *__cil_tmp92 ;
 5603  __u16 __cil_tmp93 ;
 5604  u8 __cil_tmp94 ;
 5605  void const   *__cil_tmp95 ;
 5606
 5607  {
 5608  {
 5609#line 375
 5610  __cil_tmp10 = *((struct usb_serial **)port);
 5611#line 375
 5612  dev = *((struct usb_device **)__cil_tmp10);
 5613#line 376
 5614  ret = 0;
 5615#line 380
 5616  tmp = kmalloc(1UL, 208U);
 5617#line 380
 5618  buf = (u8 *)tmp;
 5619  }
 5620  {
 5621#line 381
 5622  __cil_tmp11 = (u8 *)0;
 5623#line 381
 5624  __cil_tmp12 = (unsigned long )__cil_tmp11;
 5625#line 381
 5626  __cil_tmp13 = (unsigned long )buf;
 5627#line 381
 5628  if (__cil_tmp13 == __cil_tmp12) {
 5629#line 382
 5630    return (-12);
 5631  } else {
 5632
 5633  }
 5634  }
 5635  {
 5636#line 387
 5637  __cil_tmp14 = *((struct usb_serial **)port);
 5638#line 387
 5639  __cil_tmp15 = (unsigned long )__cil_tmp14;
 5640#line 387
 5641  __cil_tmp16 = __cil_tmp15 + 26;
 5642#line 387
 5643  __cil_tmp17 = *((unsigned char *)__cil_tmp16);
 5644#line 387
 5645  __cil_tmp18 = (unsigned int )__cil_tmp17;
 5646#line 387
 5647  if (__cil_tmp18 == 4U) {
 5648#line 388
 5649    __cil_tmp19 = *((struct usb_serial **)port);
 5650#line 388
 5651    __cil_tmp20 = (unsigned long )__cil_tmp19;
 5652#line 388
 5653    __cil_tmp21 = __cil_tmp20 + 25;
 5654#line 388
 5655    __cil_tmp22 = *((unsigned char *)__cil_tmp21);
 5656#line 388
 5657    __cil_tmp23 = (__u16 )__cil_tmp22;
 5658#line 388
 5659    __cil_tmp24 = (int )__cil_tmp23;
 5660#line 388
 5661    __cil_tmp25 = (unsigned long )port;
 5662#line 388
 5663    __cil_tmp26 = __cil_tmp25 + 816;
 5664#line 388
 5665    __cil_tmp27 = *((unsigned char *)__cil_tmp26);
 5666#line 388
 5667    __cil_tmp28 = (__u16 )__cil_tmp27;
 5668#line 388
 5669    __cil_tmp29 = (int )__cil_tmp28;
 5670#line 388
 5671    __cil_tmp30 = __cil_tmp29 - __cil_tmp24;
 5672#line 388
 5673    __cil_tmp31 = (unsigned int )__cil_tmp30;
 5674#line 388
 5675    __cil_tmp32 = __cil_tmp31 + 1U;
 5676#line 388
 5677    __cil_tmp33 = __cil_tmp32 << 8U;
 5678#line 388
 5679    Wval = (__u16 )__cil_tmp33;
 5680    {
 5681#line 391
 5682    __cil_tmp34 = & debug;
 5683#line 391
 5684    __cil_tmp35 = *__cil_tmp34;
 5685#line 391
 5686    if ((int )__cil_tmp35) {
 5687      {
 5688#line 391
 5689      __cil_tmp36 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5690#line 391
 5691      __cil_tmp37 = (int )Wval;
 5692#line 391
 5693      printk("<7>%s: mos7840_get_uart_reg application number is %x\n", __cil_tmp36,
 5694             __cil_tmp37);
 5695      }
 5696    } else {
 5697
 5698    }
 5699    }
 5700  } else {
 5701    {
 5702#line 393
 5703    __cil_tmp38 = *((struct usb_serial **)port);
 5704#line 393
 5705    __cil_tmp39 = (unsigned long )__cil_tmp38;
 5706#line 393
 5707    __cil_tmp40 = __cil_tmp39 + 25;
 5708#line 393
 5709    __cil_tmp41 = *((unsigned char *)__cil_tmp40);
 5710#line 393
 5711    __cil_tmp42 = (int )__cil_tmp41;
 5712#line 393
 5713    __cil_tmp43 = (unsigned long )port;
 5714#line 393
 5715    __cil_tmp44 = __cil_tmp43 + 816;
 5716#line 393
 5717    __cil_tmp45 = *((unsigned char *)__cil_tmp44);
 5718#line 393
 5719    __cil_tmp46 = (int )__cil_tmp45;
 5720#line 393
 5721    if (__cil_tmp46 == __cil_tmp42) {
 5722#line 394
 5723      __cil_tmp47 = *((struct usb_serial **)port);
 5724#line 394
 5725      __cil_tmp48 = (unsigned long )__cil_tmp47;
 5726#line 394
 5727      __cil_tmp49 = __cil_tmp48 + 25;
 5728#line 394
 5729      __cil_tmp50 = *((unsigned char *)__cil_tmp49);
 5730#line 394
 5731      __cil_tmp51 = (__u16 )__cil_tmp50;
 5732#line 394
 5733      __cil_tmp52 = (int )__cil_tmp51;
 5734#line 394
 5735      __cil_tmp53 = (unsigned long )port;
 5736#line 394
 5737      __cil_tmp54 = __cil_tmp53 + 816;
 5738#line 394
 5739      __cil_tmp55 = *((unsigned char *)__cil_tmp54);
 5740#line 394
 5741      __cil_tmp56 = (__u16 )__cil_tmp55;
 5742#line 394
 5743      __cil_tmp57 = (int )__cil_tmp56;
 5744#line 394
 5745      __cil_tmp58 = __cil_tmp57 - __cil_tmp52;
 5746#line 394
 5747      __cil_tmp59 = (unsigned int )__cil_tmp58;
 5748#line 394
 5749      __cil_tmp60 = __cil_tmp59 + 1U;
 5750#line 394
 5751      __cil_tmp61 = __cil_tmp60 << 8U;
 5752#line 394
 5753      Wval = (__u16 )__cil_tmp61;
 5754      {
 5755#line 396
 5756      __cil_tmp62 = & debug;
 5757#line 396
 5758      __cil_tmp63 = *__cil_tmp62;
 5759#line 396
 5760      if ((int )__cil_tmp63) {
 5761        {
 5762#line 396
 5763        __cil_tmp64 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5764#line 396
 5765        __cil_tmp65 = (int )Wval;
 5766#line 396
 5767        printk("<7>%s: mos7840_get_uart_reg application number is %x\n", __cil_tmp64,
 5768               __cil_tmp65);
 5769        }
 5770      } else {
 5771
 5772      }
 5773      }
 5774    } else {
 5775#line 399
 5776      __cil_tmp66 = *((struct usb_serial **)port);
 5777#line 399
 5778      __cil_tmp67 = (unsigned long )__cil_tmp66;
 5779#line 399
 5780      __cil_tmp68 = __cil_tmp67 + 25;
 5781#line 399
 5782      __cil_tmp69 = *((unsigned char *)__cil_tmp68);
 5783#line 399
 5784      __cil_tmp70 = (__u16 )__cil_tmp69;
 5785#line 399
 5786      __cil_tmp71 = (int )__cil_tmp70;
 5787#line 399
 5788      __cil_tmp72 = (unsigned long )port;
 5789#line 399
 5790      __cil_tmp73 = __cil_tmp72 + 816;
 5791#line 399
 5792      __cil_tmp74 = *((unsigned char *)__cil_tmp73);
 5793#line 399
 5794      __cil_tmp75 = (__u16 )__cil_tmp74;
 5795#line 399
 5796      __cil_tmp76 = (int )__cil_tmp75;
 5797#line 399
 5798      __cil_tmp77 = __cil_tmp76 - __cil_tmp71;
 5799#line 399
 5800      __cil_tmp78 = (unsigned int )__cil_tmp77;
 5801#line 399
 5802      __cil_tmp79 = __cil_tmp78 + 2U;
 5803#line 399
 5804      __cil_tmp80 = __cil_tmp79 << 8U;
 5805#line 399
 5806      Wval = (__u16 )__cil_tmp80;
 5807      {
 5808#line 401
 5809      __cil_tmp81 = & debug;
 5810#line 401
 5811      __cil_tmp82 = *__cil_tmp81;
 5812#line 401
 5813      if ((int )__cil_tmp82) {
 5814        {
 5815#line 401
 5816        __cil_tmp83 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5817#line 401
 5818        __cil_tmp84 = (int )Wval;
 5819#line 401
 5820        printk("<7>%s: mos7840_get_uart_reg application number is %x\n", __cil_tmp83,
 5821               __cil_tmp84);
 5822        }
 5823      } else {
 5824
 5825      }
 5826      }
 5827    }
 5828    }
 5829  }
 5830  }
 5831  {
 5832#line 405
 5833  tmp___0 = __create_pipe(dev, 0U);
 5834#line 405
 5835  __cil_tmp85 = tmp___0 | 2147483776U;
 5836#line 405
 5837  __cil_tmp86 = (__u8 )13;
 5838#line 405
 5839  __cil_tmp87 = (__u8 )192;
 5840#line 405
 5841  __cil_tmp88 = (int )Wval;
 5842#line 405
 5843  __cil_tmp89 = (__u16 )__cil_tmp88;
 5844#line 405
 5845  __cil_tmp90 = (int )reg;
 5846#line 405
 5847  __cil_tmp91 = (__u16 )__cil_tmp90;
 5848#line 405
 5849  __cil_tmp92 = (void *)buf;
 5850#line 405
 5851  __cil_tmp93 = (__u16 )1;
 5852#line 405
 5853  ret = usb_control_msg(dev, __cil_tmp85, __cil_tmp86, __cil_tmp87, __cil_tmp89, __cil_tmp91,
 5854                        __cil_tmp92, __cil_tmp93, 1250);
 5855#line 408
 5856  __cil_tmp94 = *buf;
 5857#line 408
 5858  *val = (__u16 )__cil_tmp94;
 5859#line 410
 5860  __cil_tmp95 = (void const   *)buf;
 5861#line 410
 5862  kfree(__cil_tmp95);
 5863  }
 5864#line 411
 5865  return (ret);
 5866}
 5867}
 5868#line 414 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 5869static void mos7840_dump_serial_port(struct moschip_port *mos7840_port ) 
 5870{ bool *__cil_tmp2 ;
 5871  bool __cil_tmp3 ;
 5872  char *__cil_tmp4 ;
 5873  bool *__cil_tmp5 ;
 5874  bool __cil_tmp6 ;
 5875  char *__cil_tmp7 ;
 5876  unsigned long __cil_tmp8 ;
 5877  unsigned long __cil_tmp9 ;
 5878  __u8 __cil_tmp10 ;
 5879  int __cil_tmp11 ;
 5880  bool *__cil_tmp12 ;
 5881  bool __cil_tmp13 ;
 5882  char *__cil_tmp14 ;
 5883  unsigned long __cil_tmp15 ;
 5884  unsigned long __cil_tmp16 ;
 5885  __u8 __cil_tmp17 ;
 5886  int __cil_tmp18 ;
 5887  bool *__cil_tmp19 ;
 5888  bool __cil_tmp20 ;
 5889  char *__cil_tmp21 ;
 5890  unsigned long __cil_tmp22 ;
 5891  unsigned long __cil_tmp23 ;
 5892  __u8 __cil_tmp24 ;
 5893  int __cil_tmp25 ;
 5894  bool *__cil_tmp26 ;
 5895  bool __cil_tmp27 ;
 5896  char *__cil_tmp28 ;
 5897
 5898  {
 5899  {
 5900#line 417
 5901  __cil_tmp2 = & debug;
 5902#line 417
 5903  __cil_tmp3 = *__cil_tmp2;
 5904#line 417
 5905  if ((int )__cil_tmp3) {
 5906    {
 5907#line 417
 5908    __cil_tmp4 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5909#line 417
 5910    printk("<7>%s: ***************************************\n", __cil_tmp4);
 5911    }
 5912  } else {
 5913
 5914  }
 5915  }
 5916  {
 5917#line 418
 5918  __cil_tmp5 = & debug;
 5919#line 418
 5920  __cil_tmp6 = *__cil_tmp5;
 5921#line 418
 5922  if ((int )__cil_tmp6) {
 5923    {
 5924#line 418
 5925    __cil_tmp7 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5926#line 418
 5927    __cil_tmp8 = (unsigned long )mos7840_port;
 5928#line 418
 5929    __cil_tmp9 = __cil_tmp8 + 272;
 5930#line 418
 5931    __cil_tmp10 = *((__u8 *)__cil_tmp9);
 5932#line 418
 5933    __cil_tmp11 = (int )__cil_tmp10;
 5934#line 418
 5935    printk("<7>%s: SpRegOffset is %2x\n", __cil_tmp7, __cil_tmp11);
 5936    }
 5937  } else {
 5938
 5939  }
 5940  }
 5941  {
 5942#line 419
 5943  __cil_tmp12 = & debug;
 5944#line 419
 5945  __cil_tmp13 = *__cil_tmp12;
 5946#line 419
 5947  if ((int )__cil_tmp13) {
 5948    {
 5949#line 419
 5950    __cil_tmp14 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5951#line 419
 5952    __cil_tmp15 = (unsigned long )mos7840_port;
 5953#line 419
 5954    __cil_tmp16 = __cil_tmp15 + 273;
 5955#line 419
 5956    __cil_tmp17 = *((__u8 *)__cil_tmp16);
 5957#line 419
 5958    __cil_tmp18 = (int )__cil_tmp17;
 5959#line 419
 5960    printk("<7>%s: ControlRegOffset is %2x\n", __cil_tmp14, __cil_tmp18);
 5961    }
 5962  } else {
 5963
 5964  }
 5965  }
 5966  {
 5967#line 420
 5968  __cil_tmp19 = & debug;
 5969#line 420
 5970  __cil_tmp20 = *__cil_tmp19;
 5971#line 420
 5972  if ((int )__cil_tmp20) {
 5973    {
 5974#line 420
 5975    __cil_tmp21 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 5976#line 420
 5977    __cil_tmp22 = (unsigned long )mos7840_port;
 5978#line 420
 5979    __cil_tmp23 = __cil_tmp22 + 274;
 5980#line 420
 5981    __cil_tmp24 = *((__u8 *)__cil_tmp23);
 5982#line 420
 5983    __cil_tmp25 = (int )__cil_tmp24;
 5984#line 420
 5985    printk("<7>%s: DCRRegOffset is %2x\n", __cil_tmp21, __cil_tmp25);
 5986    }
 5987  } else {
 5988
 5989  }
 5990  }
 5991  {
 5992#line 421
 5993  __cil_tmp26 = & debug;
 5994#line 421
 5995  __cil_tmp27 = *__cil_tmp26;
 5996#line 421
 5997  if ((int )__cil_tmp27) {
 5998    {
 5999#line 421
 6000    __cil_tmp28 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 6001#line 421
 6002    printk("<7>%s: ***************************************\n", __cil_tmp28);
 6003    }
 6004  } else {
 6005
 6006  }
 6007  }
 6008#line 422
 6009  return;
 6010}
 6011}
 6012#line 432 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 6013__inline static void mos7840_set_port_private(struct usb_serial_port *port , struct moschip_port *data ) 
 6014{ void *__cil_tmp3 ;
 6015
 6016  {
 6017  {
 6018#line 435
 6019  __cil_tmp3 = (void *)data;
 6020#line 435
 6021  usb_set_serial_port_data(port, __cil_tmp3);
 6022  }
 6023#line 436
 6024  return;
 6025}
 6026}
 6027#line 438 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 6028__inline static struct moschip_port *mos7840_get_port_private(struct usb_serial_port *port ) 
 6029{ void *tmp ;
 6030
 6031  {
 6032  {
 6033#line 442
 6034  tmp = usb_get_serial_port_data(port);
 6035  }
 6036#line 442
 6037  return ((struct moschip_port *)tmp);
 6038}
 6039}
 6040#line 445 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 6041static void mos7840_handle_new_msr(struct moschip_port *port , __u8 new_msr ) 
 6042{ struct moschip_port *mos7840_port ;
 6043  struct async_icount *icount ;
 6044  unsigned long __cil_tmp5 ;
 6045  unsigned long __cil_tmp6 ;
 6046  int __cil_tmp7 ;
 6047  int __cil_tmp8 ;
 6048  unsigned long __cil_tmp9 ;
 6049  unsigned long __cil_tmp10 ;
 6050  int __cil_tmp11 ;
 6051  int __cil_tmp12 ;
 6052  __u32 __cil_tmp13 ;
 6053  int __cil_tmp14 ;
 6054  int __cil_tmp15 ;
 6055  unsigned long __cil_tmp16 ;
 6056  unsigned long __cil_tmp17 ;
 6057  unsigned long __cil_tmp18 ;
 6058  unsigned long __cil_tmp19 ;
 6059  __u32 __cil_tmp20 ;
 6060  signed char __cil_tmp21 ;
 6061  int __cil_tmp22 ;
 6062  unsigned long __cil_tmp23 ;
 6063  unsigned long __cil_tmp24 ;
 6064  unsigned long __cil_tmp25 ;
 6065  unsigned long __cil_tmp26 ;
 6066  __u32 __cil_tmp27 ;
 6067  int __cil_tmp28 ;
 6068  int __cil_tmp29 ;
 6069  unsigned long __cil_tmp30 ;
 6070  unsigned long __cil_tmp31 ;
 6071  unsigned long __cil_tmp32 ;
 6072  unsigned long __cil_tmp33 ;
 6073  __u32 __cil_tmp34 ;
 6074
 6075  {
 6076#line 449
 6077  mos7840_port = port;
 6078#line 450
 6079  __cil_tmp5 = (unsigned long )mos7840_port;
 6080#line 450
 6081  __cil_tmp6 = __cil_tmp5 + 220;
 6082#line 450
 6083  icount = (struct async_icount *)__cil_tmp6;
 6084  {
 6085#line 451
 6086  __cil_tmp7 = (int )new_msr;
 6087#line 451
 6088  __cil_tmp8 = __cil_tmp7 & 240;
 6089#line 451
 6090  if (__cil_tmp8 != 0) {
 6091#line 454
 6092    __cil_tmp9 = (unsigned long )mos7840_port;
 6093#line 454
 6094    __cil_tmp10 = __cil_tmp9 + 220;
 6095#line 454
 6096    icount = (struct async_icount *)__cil_tmp10;
 6097    {
 6098#line 457
 6099    __cil_tmp11 = (int )new_msr;
 6100#line 457
 6101    __cil_tmp12 = __cil_tmp11 & 16;
 6102#line 457
 6103    if (__cil_tmp12 != 0) {
 6104#line 458
 6105      __cil_tmp13 = *((__u32 *)icount);
 6106#line 458
 6107      *((__u32 *)icount) = __cil_tmp13 + 1U;
 6108#line 459
 6109      __asm__  volatile   ("": : : "memory");
 6110    } else {
 6111
 6112    }
 6113    }
 6114    {
 6115#line 461
 6116    __cil_tmp14 = (int )new_msr;
 6117#line 461
 6118    __cil_tmp15 = __cil_tmp14 & 32;
 6119#line 461
 6120    if (__cil_tmp15 != 0) {
 6121#line 462
 6122      __cil_tmp16 = (unsigned long )icount;
 6123#line 462
 6124      __cil_tmp17 = __cil_tmp16 + 4;
 6125#line 462
 6126      __cil_tmp18 = (unsigned long )icount;
 6127#line 462
 6128      __cil_tmp19 = __cil_tmp18 + 4;
 6129#line 462
 6130      __cil_tmp20 = *((__u32 *)__cil_tmp19);
 6131#line 462
 6132      *((__u32 *)__cil_tmp17) = __cil_tmp20 + 1U;
 6133#line 463
 6134      __asm__  volatile   ("": : : "memory");
 6135    } else {
 6136
 6137    }
 6138    }
 6139    {
 6140#line 465
 6141    __cil_tmp21 = (signed char )new_msr;
 6142#line 465
 6143    __cil_tmp22 = (int )__cil_tmp21;
 6144#line 465
 6145    if (__cil_tmp22 < 0) {
 6146#line 466
 6147      __cil_tmp23 = (unsigned long )icount;
 6148#line 466
 6149      __cil_tmp24 = __cil_tmp23 + 12;
 6150#line 466
 6151      __cil_tmp25 = (unsigned long )icount;
 6152#line 466
 6153      __cil_tmp26 = __cil_tmp25 + 12;
 6154#line 466
 6155      __cil_tmp27 = *((__u32 *)__cil_tmp26);
 6156#line 466
 6157      *((__u32 *)__cil_tmp24) = __cil_tmp27 + 1U;
 6158#line 467
 6159      __asm__  volatile   ("": : : "memory");
 6160    } else {
 6161
 6162    }
 6163    }
 6164    {
 6165#line 469
 6166    __cil_tmp28 = (int )new_msr;
 6167#line 469
 6168    __cil_tmp29 = __cil_tmp28 & 64;
 6169#line 469
 6170    if (__cil_tmp29 != 0) {
 6171#line 470
 6172      __cil_tmp30 = (unsigned long )icount;
 6173#line 470
 6174      __cil_tmp31 = __cil_tmp30 + 8;
 6175#line 470
 6176      __cil_tmp32 = (unsigned long )icount;
 6177#line 470
 6178      __cil_tmp33 = __cil_tmp32 + 8;
 6179#line 470
 6180      __cil_tmp34 = *((__u32 *)__cil_tmp33);
 6181#line 470
 6182      *((__u32 *)__cil_tmp31) = __cil_tmp34 + 1U;
 6183#line 471
 6184      __asm__  volatile   ("": : : "memory");
 6185    } else {
 6186
 6187    }
 6188    }
 6189  } else {
 6190
 6191  }
 6192  }
 6193#line 474
 6194  return;
 6195}
 6196}
 6197#line 476 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 6198static void mos7840_handle_new_lsr(struct moschip_port *port , __u8 new_lsr ) 
 6199{ struct async_icount *icount ;
 6200  bool *__cil_tmp4 ;
 6201  bool __cil_tmp5 ;
 6202  char *__cil_tmp6 ;
 6203  int __cil_tmp7 ;
 6204  int __cil_tmp8 ;
 6205  int __cil_tmp9 ;
 6206  unsigned int __cil_tmp10 ;
 6207  unsigned int __cil_tmp11 ;
 6208  unsigned long __cil_tmp12 ;
 6209  unsigned long __cil_tmp13 ;
 6210  int __cil_tmp14 ;
 6211  int __cil_tmp15 ;
 6212  unsigned long __cil_tmp16 ;
 6213  unsigned long __cil_tmp17 ;
 6214  unsigned long __cil_tmp18 ;
 6215  unsigned long __cil_tmp19 ;
 6216  __u32 __cil_tmp20 ;
 6217  int __cil_tmp21 ;
 6218  int __cil_tmp22 ;
 6219  unsigned long __cil_tmp23 ;
 6220  unsigned long __cil_tmp24 ;
 6221  unsigned long __cil_tmp25 ;
 6222  unsigned long __cil_tmp26 ;
 6223  __u32 __cil_tmp27 ;
 6224  int __cil_tmp28 ;
 6225  int __cil_tmp29 ;
 6226  unsigned long __cil_tmp30 ;
 6227  unsigned long __cil_tmp31 ;
 6228  unsigned long __cil_tmp32 ;
 6229  unsigned long __cil_tmp33 ;
 6230  __u32 __cil_tmp34 ;
 6231  int __cil_tmp35 ;
 6232  int __cil_tmp36 ;
 6233  unsigned long __cil_tmp37 ;
 6234  unsigned long __cil_tmp38 ;
 6235  unsigned long __cil_tmp39 ;
 6236  unsigned long __cil_tmp40 ;
 6237  __u32 __cil_tmp41 ;
 6238
 6239  {
 6240  {
 6241#line 480
 6242  __cil_tmp4 = & debug;
 6243#line 480
 6244  __cil_tmp5 = *__cil_tmp4;
 6245#line 480
 6246  if ((int )__cil_tmp5) {
 6247    {
 6248#line 480
 6249    __cil_tmp6 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 6250#line 480
 6251    __cil_tmp7 = (int )new_lsr;
 6252#line 480
 6253    printk("<7>%s: %s - %02x\n", __cil_tmp6, "mos7840_handle_new_lsr", __cil_tmp7);
 6254    }
 6255  } else {
 6256
 6257  }
 6258  }
 6259  {
 6260#line 482
 6261  __cil_tmp8 = (int )new_lsr;
 6262#line 482
 6263  __cil_tmp9 = __cil_tmp8 & 16;
 6264#line 482
 6265  if (__cil_tmp9 != 0) {
 6266#line 488
 6267    __cil_tmp10 = (unsigned int )new_lsr;
 6268#line 488
 6269    __cil_tmp11 = __cil_tmp10 & 18U;
 6270#line 488
 6271    new_lsr = (__u8 )__cil_tmp11;
 6272  } else {
 6273
 6274  }
 6275  }
 6276#line 492
 6277  __cil_tmp12 = (unsigned long )port;
 6278#line 492
 6279  __cil_tmp13 = __cil_tmp12 + 220;
 6280#line 492
 6281  icount = (struct async_icount *)__cil_tmp13;
 6282  {
 6283#line 493
 6284  __cil_tmp14 = (int )new_lsr;
 6285#line 493
 6286  __cil_tmp15 = __cil_tmp14 & 16;
 6287#line 493
 6288  if (__cil_tmp15 != 0) {
 6289#line 494
 6290    __cil_tmp16 = (unsigned long )icount;
 6291#line 494
 6292    __cil_tmp17 = __cil_tmp16 + 36;
 6293#line 494
 6294    __cil_tmp18 = (unsigned long )icount;
 6295#line 494
 6296    __cil_tmp19 = __cil_tmp18 + 36;
 6297#line 494
 6298    __cil_tmp20 = *((__u32 *)__cil_tmp19);
 6299#line 494
 6300    *((__u32 *)__cil_tmp17) = __cil_tmp20 + 1U;
 6301#line 495
 6302    __asm__  volatile   ("": : : "memory");
 6303  } else {
 6304
 6305  }
 6306  }
 6307  {
 6308#line 497
 6309  __cil_tmp21 = (int )new_lsr;
 6310#line 497
 6311  __cil_tmp22 = __cil_tmp21 & 2;
 6312#line 497
 6313  if (__cil_tmp22 != 0) {
 6314#line 498
 6315    __cil_tmp23 = (unsigned long )icount;
 6316#line 498
 6317    __cil_tmp24 = __cil_tmp23 + 32;
 6318#line 498
 6319    __cil_tmp25 = (unsigned long )icount;
 6320#line 498
 6321    __cil_tmp26 = __cil_tmp25 + 32;
 6322#line 498
 6323    __cil_tmp27 = *((__u32 *)__cil_tmp26);
 6324#line 498
 6325    *((__u32 *)__cil_tmp24) = __cil_tmp27 + 1U;
 6326#line 499
 6327    __asm__  volatile   ("": : : "memory");
 6328  } else {
 6329
 6330  }
 6331  }
 6332  {
 6333#line 501
 6334  __cil_tmp28 = (int )new_lsr;
 6335#line 501
 6336  __cil_tmp29 = __cil_tmp28 & 4;
 6337#line 501
 6338  if (__cil_tmp29 != 0) {
 6339#line 502
 6340    __cil_tmp30 = (unsigned long )icount;
 6341#line 502
 6342    __cil_tmp31 = __cil_tmp30 + 28;
 6343#line 502
 6344    __cil_tmp32 = (unsigned long )icount;
 6345#line 502
 6346    __cil_tmp33 = __cil_tmp32 + 28;
 6347#line 502
 6348    __cil_tmp34 = *((__u32 *)__cil_tmp33);
 6349#line 502
 6350    *((__u32 *)__cil_tmp31) = __cil_tmp34 + 1U;
 6351#line 503
 6352    __asm__  volatile   ("": : : "memory");
 6353  } else {
 6354
 6355  }
 6356  }
 6357  {
 6358#line 505
 6359  __cil_tmp35 = (int )new_lsr;
 6360#line 505
 6361  __cil_tmp36 = __cil_tmp35 & 8;
 6362#line 505
 6363  if (__cil_tmp36 != 0) {
 6364#line 506
 6365    __cil_tmp37 = (unsigned long )icount;
 6366#line 506
 6367    __cil_tmp38 = __cil_tmp37 + 24;
 6368#line 506
 6369    __cil_tmp39 = (unsigned long )icount;
 6370#line 506
 6371    __cil_tmp40 = __cil_tmp39 + 24;
 6372#line 506
 6373    __cil_tmp41 = *((__u32 *)__cil_tmp40);
 6374#line 506
 6375    *((__u32 *)__cil_tmp38) = __cil_tmp41 + 1U;
 6376#line 507
 6377    __asm__  volatile   ("": : : "memory");
 6378  } else {
 6379
 6380  }
 6381  }
 6382#line 509
 6383  return;
 6384}
 6385}
 6386#line 518 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 6387static void mos7840_control_callback(struct urb *urb ) 
 6388{ unsigned char *data ;
 6389  struct moschip_port *mos7840_port ;
 6390  __u8 regval ;
 6391  int result ;
 6392  int status ;
 6393  unsigned long __cil_tmp7 ;
 6394  unsigned long __cil_tmp8 ;
 6395  unsigned long __cil_tmp9 ;
 6396  unsigned long __cil_tmp10 ;
 6397  void *__cil_tmp11 ;
 6398  bool *__cil_tmp12 ;
 6399  bool __cil_tmp13 ;
 6400  char *__cil_tmp14 ;
 6401  bool *__cil_tmp15 ;
 6402  bool __cil_tmp16 ;
 6403  char *__cil_tmp17 ;
 6404  bool *__cil_tmp18 ;
 6405  bool __cil_tmp19 ;
 6406  char *__cil_tmp20 ;
 6407  unsigned long __cil_tmp21 ;
 6408  unsigned long __cil_tmp22 ;
 6409  u32 __cil_tmp23 ;
 6410  bool *__cil_tmp24 ;
 6411  bool __cil_tmp25 ;
 6412  char *__cil_tmp26 ;
 6413  unsigned long __cil_tmp27 ;
 6414  unsigned long __cil_tmp28 ;
 6415  int __cil_tmp29 ;
 6416  int __cil_tmp30 ;
 6417  unsigned long __cil_tmp31 ;
 6418  unsigned long __cil_tmp32 ;
 6419  void *__cil_tmp33 ;
 6420  bool *__cil_tmp34 ;
 6421  bool __cil_tmp35 ;
 6422  char *__cil_tmp36 ;
 6423  int __cil_tmp37 ;
 6424  unsigned long __cil_tmp38 ;
 6425  unsigned long __cil_tmp39 ;
 6426  int __cil_tmp40 ;
 6427  int __cil_tmp41 ;
 6428  __u8 __cil_tmp42 ;
 6429  unsigned long __cil_tmp43 ;
 6430  unsigned long __cil_tmp44 ;
 6431  int __cil_tmp45 ;
 6432  int __cil_tmp46 ;
 6433  __u8 __cil_tmp47 ;
 6434  unsigned long __cil_tmp48 ;
 6435  unsigned long __cil_tmp49 ;
 6436  spinlock_t *__cil_tmp50 ;
 6437  unsigned long __cil_tmp51 ;
 6438  unsigned long __cil_tmp52 ;
 6439  char __cil_tmp53 ;
 6440  signed char __cil_tmp54 ;
 6441  int __cil_tmp55 ;
 6442  unsigned long __cil_tmp56 ;
 6443  unsigned long __cil_tmp57 ;
 6444  struct urb *__cil_tmp58 ;
 6445  unsigned long __cil_tmp59 ;
 6446  unsigned long __cil_tmp60 ;
 6447  spinlock_t *__cil_tmp61 ;
 6448  unsigned long __cil_tmp62 ;
 6449  unsigned long __cil_tmp63 ;
 6450  struct usb_device *__cil_tmp64 ;
 6451  unsigned long __cil_tmp65 ;
 6452  unsigned long __cil_tmp66 ;
 6453  struct device *__cil_tmp67 ;
 6454  struct device  const  *__cil_tmp68 ;
 6455
 6456  {
 6457#line 522
 6458  regval = (__u8 )0U;
 6459#line 523
 6460  result = 0;
 6461#line 524
 6462  __cil_tmp7 = (unsigned long )urb;
 6463#line 524
 6464  __cil_tmp8 = __cil_tmp7 + 96;
 6465#line 524
 6466  status = *((int *)__cil_tmp8);
 6467#line 526
 6468  __cil_tmp9 = (unsigned long )urb;
 6469#line 526
 6470  __cil_tmp10 = __cil_tmp9 + 176;
 6471#line 526
 6472  __cil_tmp11 = *((void **)__cil_tmp10);
 6473#line 526
 6474  mos7840_port = (struct moschip_port *)__cil_tmp11;
 6475#line 529
 6476  if (status == 0) {
 6477#line 529
 6478    goto case_0;
 6479  } else
 6480#line 532
 6481  if (status == -104) {
 6482#line 532
 6483    goto case_neg_104;
 6484  } else
 6485#line 533
 6486  if (status == -2) {
 6487#line 533
 6488    goto case_neg_2;
 6489  } else
 6490#line 534
 6491  if (status == -108) {
 6492#line 534
 6493    goto case_neg_108;
 6494  } else {
 6495    {
 6496#line 539
 6497    goto switch_default;
 6498#line 528
 6499    if (0) {
 6500      case_0: /* CIL Label */ ;
 6501#line 531
 6502      goto ldv_27946;
 6503      case_neg_104: /* CIL Label */ ;
 6504      case_neg_2: /* CIL Label */ ;
 6505      case_neg_108: /* CIL Label */ ;
 6506      {
 6507#line 536
 6508      __cil_tmp12 = & debug;
 6509#line 536
 6510      __cil_tmp13 = *__cil_tmp12;
 6511#line 536
 6512      if ((int )__cil_tmp13) {
 6513        {
 6514#line 536
 6515        __cil_tmp14 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 6516#line 536
 6517        printk("<7>%s: %s - urb shutting down with status: %d\n", __cil_tmp14, "mos7840_control_callback",
 6518               status);
 6519        }
 6520      } else {
 6521
 6522      }
 6523      }
 6524#line 538
 6525      return;
 6526      switch_default: /* CIL Label */ ;
 6527      {
 6528#line 540
 6529      __cil_tmp15 = & debug;
 6530#line 540
 6531      __cil_tmp16 = *__cil_tmp15;
 6532#line 540
 6533      if ((int )__cil_tmp16) {
 6534        {
 6535#line 540
 6536        __cil_tmp17 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 6537#line 540
 6538        printk("<7>%s: %s - nonzero urb status received: %d\n", __cil_tmp17, "mos7840_control_callback",
 6539               status);
 6540        }
 6541      } else {
 6542
 6543      }
 6544      }
 6545#line 542
 6546      goto exit;
 6547    } else {
 6548      switch_break: /* CIL Label */ ;
 6549    }
 6550    }
 6551  }
 6552  ldv_27946: ;
 6553  {
 6554#line 545
 6555  __cil_tmp18 = & debug;
 6556#line 545
 6557  __cil_tmp19 = *__cil_tmp18;
 6558#line 545
 6559  if ((int )__cil_tmp19) {
 6560    {
 6561#line 545
 6562    __cil_tmp20 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 6563#line 545
 6564    __cil_tmp21 = (unsigned long )urb;
 6565#line 545
 6566    __cil_tmp22 = __cil_tmp21 + 140;
 6567#line 545
 6568    __cil_tmp23 = *((u32 *)__cil_tmp22);
 6569#line 545
 6570    printk("<7>%s: %s urb buffer size is %d\n", __cil_tmp20, "mos7840_control_callback",
 6571           __cil_tmp23);
 6572    }
 6573  } else {
 6574
 6575  }
 6576  }
 6577  {
 6578#line 546
 6579  __cil_tmp24 = & debug;
 6580#line 546
 6581  __cil_tmp25 = *__cil_tmp24;
 6582#line 546
 6583  if ((int )__cil_tmp25) {
 6584    {
 6585#line 546
 6586    __cil_tmp26 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 6587#line 546
 6588    __cil_tmp27 = (unsigned long )mos7840_port;
 6589#line 546
 6590    __cil_tmp28 = __cil_tmp27 + 304;
 6591#line 546
 6592    __cil_tmp29 = *((int *)__cil_tmp28);
 6593#line 546
 6594    __cil_tmp30 = *((int *)mos7840_port);
 6595#line 546
 6596    printk("<7>%s: %s mos7840_port->MsrLsr is %d port %d\n", __cil_tmp26, "mos7840_control_callback",
 6597           __cil_tmp29, __cil_tmp30);
 6598    }
 6599  } else {
 6600
 6601  }
 6602  }
 6603#line 548
 6604  __cil_tmp31 = (unsigned long )urb;
 6605#line 548
 6606  __cil_tmp32 = __cil_tmp31 + 104;
 6607#line 548
 6608  __cil_tmp33 = *((void **)__cil_tmp32);
 6609#line 548
 6610  data = (unsigned char *)__cil_tmp33;
 6611#line 549
 6612  regval = *data;
 6613  {
 6614#line 550
 6615  __cil_tmp34 = & debug;
 6616#line 550
 6617  __cil_tmp35 = *__cil_tmp34;
 6618#line 550
 6619  if ((int )__cil_tmp35) {
 6620    {
 6621#line 550
 6622    __cil_tmp36 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 6623#line 550
 6624    __cil_tmp37 = (int )regval;
 6625#line 550
 6626    printk("<7>%s: %s data is %x\n", __cil_tmp36, "mos7840_control_callback", __cil_tmp37);
 6627    }
 6628  } else {
 6629
 6630  }
 6631  }
 6632  {
 6633#line 551
 6634  __cil_tmp38 = (unsigned long )mos7840_port;
 6635#line 551
 6636  __cil_tmp39 = __cil_tmp38 + 304;
 6637#line 551
 6638  __cil_tmp40 = *((int *)__cil_tmp39);
 6639#line 551
 6640  if (__cil_tmp40 == 0) {
 6641    {
 6642#line 552
 6643    __cil_tmp41 = (int )regval;
 6644#line 552
 6645    __cil_tmp42 = (__u8 )__cil_tmp41;
 6646#line 552
 6647    mos7840_handle_new_msr(mos7840_port, __cil_tmp42);
 6648    }
 6649  } else {
 6650    {
 6651#line 553
 6652    __cil_tmp43 = (unsigned long )mos7840_port;
 6653#line 553
 6654    __cil_tmp44 = __cil_tmp43 + 304;
 6655#line 553
 6656    __cil_tmp45 = *((int *)__cil_tmp44);
 6657#line 553
 6658    if (__cil_tmp45 == 1) {
 6659      {
 6660#line 554
 6661      __cil_tmp46 = (int )regval;
 6662#line 554
 6663      __cil_tmp47 = (__u8 )__cil_tmp46;
 6664#line 554
 6665      mos7840_handle_new_lsr(mos7840_port, __cil_tmp47);
 6666      }
 6667    } else {
 6668
 6669    }
 6670    }
 6671  }
 6672  }
 6673  exit: 
 6674  {
 6675#line 557
 6676  __cil_tmp48 = (unsigned long )mos7840_port;
 6677#line 557
 6678  __cil_tmp49 = __cil_tmp48 + 312;
 6679#line 557
 6680  __cil_tmp50 = (spinlock_t *)__cil_tmp49;
 6681#line 557
 6682  spin_lock(__cil_tmp50);
 6683  }
 6684  {
 6685#line 558
 6686  __cil_tmp51 = (unsigned long )mos7840_port;
 6687#line 558
 6688  __cil_tmp52 = __cil_tmp51 + 36;
 6689#line 558
 6690  __cil_tmp53 = *((char *)__cil_tmp52);
 6691#line 558
 6692  __cil_tmp54 = (signed char )__cil_tmp53;
 6693#line 558
 6694  __cil_tmp55 = (int )__cil_tmp54;
 6695#line 558
 6696  if (__cil_tmp55 == 0) {
 6697    {
 6698#line 559
 6699    __cil_tmp56 = (unsigned long )mos7840_port;
 6700#line 559
 6701    __cil_tmp57 = __cil_tmp56 + 24;
 6702#line 559
 6703    __cil_tmp58 = *((struct urb **)__cil_tmp57);
 6704#line 559
 6705    result = ldv_usb_submit_urb_19(__cil_tmp58, 32U);
 6706    }
 6707  } else {
 6708
 6709  }
 6710  }
 6711  {
 6712#line 560
 6713  __cil_tmp59 = (unsigned long )mos7840_port;
 6714#line 560
 6715  __cil_tmp60 = __cil_tmp59 + 312;
 6716#line 560
 6717  __cil_tmp61 = (spinlock_t *)__cil_tmp60;
 6718#line 560
 6719  spin_unlock(__cil_tmp61);
 6720  }
 6721#line 561
 6722  if (result != 0) {
 6723    {
 6724#line 562
 6725    __cil_tmp62 = (unsigned long )urb;
 6726#line 562
 6727    __cil_tmp63 = __cil_tmp62 + 72;
 6728#line 562
 6729    __cil_tmp64 = *((struct usb_device **)__cil_tmp63);
 6730#line 562
 6731    __cil_tmp65 = (unsigned long )__cil_tmp64;
 6732#line 562
 6733    __cil_tmp66 = __cil_tmp65 + 136;
 6734#line 562
 6735    __cil_tmp67 = (struct device *)__cil_tmp66;
 6736#line 562
 6737    __cil_tmp68 = (struct device  const  *)__cil_tmp67;
 6738#line 562
 6739    dev_err(__cil_tmp68, "%s - Error %d submitting interrupt urb\n", "mos7840_control_callback",
 6740            result);
 6741    }
 6742  } else {
 6743
 6744  }
 6745#line 565
 6746  return;
 6747}
 6748}
 6749#line 568 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 6750static int mos7840_get_reg(struct moschip_port *mcs , __u16 Wval , __u16 reg , __u16 *val ) 
 6751{ struct usb_device *dev ;
 6752  struct usb_ctrlrequest *dr ;
 6753  unsigned char *buffer ;
 6754  int ret ;
 6755  unsigned int tmp ;
 6756  unsigned long __cil_tmp10 ;
 6757  unsigned long __cil_tmp11 ;
 6758  struct usb_serial_port *__cil_tmp12 ;
 6759  struct usb_serial *__cil_tmp13 ;
 6760  unsigned long __cil_tmp14 ;
 6761  unsigned long __cil_tmp15 ;
 6762  unsigned long __cil_tmp16 ;
 6763  unsigned long __cil_tmp17 ;
 6764  char *__cil_tmp18 ;
 6765  unsigned long __cil_tmp19 ;
 6766  unsigned long __cil_tmp20 ;
 6767  unsigned long __cil_tmp21 ;
 6768  unsigned long __cil_tmp22 ;
 6769  unsigned long __cil_tmp23 ;
 6770  unsigned long __cil_tmp24 ;
 6771  unsigned long __cil_tmp25 ;
 6772  unsigned long __cil_tmp26 ;
 6773  unsigned long __cil_tmp27 ;
 6774  unsigned long __cil_tmp28 ;
 6775  struct urb *__cil_tmp29 ;
 6776  unsigned int __cil_tmp30 ;
 6777  unsigned char *__cil_tmp31 ;
 6778  void *__cil_tmp32 ;
 6779  void *__cil_tmp33 ;
 6780  unsigned long __cil_tmp34 ;
 6781  unsigned long __cil_tmp35 ;
 6782  struct urb *__cil_tmp36 ;
 6783  unsigned long __cil_tmp37 ;
 6784  unsigned long __cil_tmp38 ;
 6785  unsigned long __cil_tmp39 ;
 6786  unsigned long __cil_tmp40 ;
 6787  struct urb *__cil_tmp41 ;
 6788
 6789  {
 6790  {
 6791#line 571
 6792  __cil_tmp10 = (unsigned long )mcs;
 6793#line 571
 6794  __cil_tmp11 = __cil_tmp10 + 264;
 6795#line 571
 6796  __cil_tmp12 = *((struct usb_serial_port **)__cil_tmp11);
 6797#line 571
 6798  __cil_tmp13 = *((struct usb_serial **)__cil_tmp12);
 6799#line 571
 6800  dev = *((struct usb_device **)__cil_tmp13);
 6801#line 572
 6802  __cil_tmp14 = (unsigned long )mcs;
 6803#line 572
 6804  __cil_tmp15 = __cil_tmp14 + 288;
 6805#line 572
 6806  dr = *((struct usb_ctrlrequest **)__cil_tmp15);
 6807#line 573
 6808  __cil_tmp16 = (unsigned long )mcs;
 6809#line 573
 6810  __cil_tmp17 = __cil_tmp16 + 296;
 6811#line 573
 6812  __cil_tmp18 = *((char **)__cil_tmp17);
 6813#line 573
 6814  buffer = (unsigned char *)__cil_tmp18;
 6815#line 576
 6816  *((__u8 *)dr) = (__u8 )192U;
 6817#line 577
 6818  __cil_tmp19 = (unsigned long )dr;
 6819#line 577
 6820  __cil_tmp20 = __cil_tmp19 + 1;
 6821#line 577
 6822  *((__u8 *)__cil_tmp20) = (__u8 )13U;
 6823#line 578
 6824  __cil_tmp21 = (unsigned long )dr;
 6825#line 578
 6826  __cil_tmp22 = __cil_tmp21 + 2;
 6827#line 578
 6828  *((__le16 *)__cil_tmp22) = Wval;
 6829#line 579
 6830  __cil_tmp23 = (unsigned long )dr;
 6831#line 579
 6832  __cil_tmp24 = __cil_tmp23 + 4;
 6833#line 579
 6834  *((__le16 *)__cil_tmp24) = reg;
 6835#line 580
 6836  __cil_tmp25 = (unsigned long )dr;
 6837#line 580
 6838  __cil_tmp26 = __cil_tmp25 + 6;
 6839#line 580
 6840  *((__le16 *)__cil_tmp26) = (__le16 )2U;
 6841#line 582
 6842  tmp = __create_pipe(dev, 0U);
 6843#line 582
 6844  __cil_tmp27 = (unsigned long )mcs;
 6845#line 582
 6846  __cil_tmp28 = __cil_tmp27 + 280;
 6847#line 582
 6848  __cil_tmp29 = *((struct urb **)__cil_tmp28);
 6849#line 582
 6850  __cil_tmp30 = tmp | 2147483776U;
 6851#line 582
 6852  __cil_tmp31 = (unsigned char *)dr;
 6853#line 582
 6854  __cil_tmp32 = (void *)buffer;
 6855#line 582
 6856  __cil_tmp33 = (void *)mcs;
 6857#line 582
 6858  usb_fill_control_urb(__cil_tmp29, dev, __cil_tmp30, __cil_tmp31, __cil_tmp32, 2,
 6859                       & mos7840_control_callback, __cil_tmp33);
 6860#line 585
 6861  __cil_tmp34 = (unsigned long )mcs;
 6862#line 585
 6863  __cil_tmp35 = __cil_tmp34 + 280;
 6864#line 585
 6865  __cil_tmp36 = *((struct urb **)__cil_tmp35);
 6866#line 585
 6867  __cil_tmp37 = (unsigned long )__cil_tmp36;
 6868#line 585
 6869  __cil_tmp38 = __cil_tmp37 + 136;
 6870#line 585
 6871  *((u32 *)__cil_tmp38) = 2U;
 6872#line 586
 6873  __cil_tmp39 = (unsigned long )mcs;
 6874#line 586
 6875  __cil_tmp40 = __cil_tmp39 + 280;
 6876#line 586
 6877  __cil_tmp41 = *((struct urb **)__cil_tmp40);
 6878#line 586
 6879  ret = ldv_usb_submit_urb_20(__cil_tmp41, 32U);
 6880  }
 6881#line 587
 6882  return (ret);
 6883}
 6884}
 6885#line 596 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 6886static void mos7840_interrupt_callback(struct urb *urb ) 
 6887{ int result ;
 6888  int length ;
 6889  struct moschip_port *mos7840_port ;
 6890  struct usb_serial *serial ;
 6891  __u16 Data ;
 6892  unsigned char *data ;
 6893  __u8 sp[5U] ;
 6894  __u8 st ;
 6895  int i ;
 6896  int rv ;
 6897  __u16 wval ;
 6898  __u16 wreg ;
 6899  int status ;
 6900  unsigned long __cil_tmp15 ;
 6901  unsigned long __cil_tmp16 ;
 6902  bool *__cil_tmp17 ;
 6903  bool __cil_tmp18 ;
 6904  char *__cil_tmp19 ;
 6905  char *__cil_tmp20 ;
 6906  bool *__cil_tmp21 ;
 6907  bool __cil_tmp22 ;
 6908  char *__cil_tmp23 ;
 6909  bool *__cil_tmp24 ;
 6910  bool __cil_tmp25 ;
 6911  char *__cil_tmp26 ;
 6912  unsigned long __cil_tmp27 ;
 6913  unsigned long __cil_tmp28 ;
 6914  u32 __cil_tmp29 ;
 6915  unsigned long __cil_tmp30 ;
 6916  unsigned long __cil_tmp31 ;
 6917  void *__cil_tmp32 ;
 6918  unsigned long __cil_tmp33 ;
 6919  unsigned long __cil_tmp34 ;
 6920  void *__cil_tmp35 ;
 6921  bool *__cil_tmp36 ;
 6922  bool __cil_tmp37 ;
 6923  char *__cil_tmp38 ;
 6924  char *__cil_tmp39 ;
 6925  unsigned long __cil_tmp40 ;
 6926  unsigned long __cil_tmp41 ;
 6927  unsigned long __cil_tmp42 ;
 6928  unsigned long __cil_tmp43 ;
 6929  unsigned char *__cil_tmp44 ;
 6930  unsigned long __cil_tmp45 ;
 6931  unsigned long __cil_tmp46 ;
 6932  unsigned char *__cil_tmp47 ;
 6933  unsigned long __cil_tmp48 ;
 6934  unsigned long __cil_tmp49 ;
 6935  unsigned char *__cil_tmp50 ;
 6936  unsigned char *__cil_tmp51 ;
 6937  unsigned long __cil_tmp52 ;
 6938  unsigned long __cil_tmp53 ;
 6939  unsigned long __cil_tmp54 ;
 6940  unsigned long __cil_tmp55 ;
 6941  struct usb_serial_port *__cil_tmp56 ;
 6942  unsigned long __cil_tmp57 ;
 6943  unsigned long __cil_tmp58 ;
 6944  unsigned char __cil_tmp59 ;
 6945  __u16 __cil_tmp60 ;
 6946  int __cil_tmp61 ;
 6947  unsigned long __cil_tmp62 ;
 6948  unsigned long __cil_tmp63 ;
 6949  unsigned long __cil_tmp64 ;
 6950  unsigned long __cil_tmp65 ;
 6951  struct usb_serial_port *__cil_tmp66 ;
 6952  unsigned long __cil_tmp67 ;
 6953  unsigned long __cil_tmp68 ;
 6954  unsigned char __cil_tmp69 ;
 6955  __u16 __cil_tmp70 ;
 6956  int __cil_tmp71 ;
 6957  int __cil_tmp72 ;
 6958  unsigned int __cil_tmp73 ;
 6959  unsigned int __cil_tmp74 ;
 6960  unsigned int __cil_tmp75 ;
 6961  unsigned long __cil_tmp76 ;
 6962  unsigned long __cil_tmp77 ;
 6963  char __cil_tmp78 ;
 6964  signed char __cil_tmp79 ;
 6965  int __cil_tmp80 ;
 6966  unsigned long __cil_tmp81 ;
 6967  unsigned long __cil_tmp82 ;
 6968  __u8 __cil_tmp83 ;
 6969  int __cil_tmp84 ;
 6970  bool *__cil_tmp85 ;
 6971  bool __cil_tmp86 ;
 6972  char *__cil_tmp87 ;
 6973  unsigned long __cil_tmp88 ;
 6974  unsigned long __cil_tmp89 ;
 6975  __u8 __cil_tmp90 ;
 6976  int __cil_tmp91 ;
 6977  bool *__cil_tmp92 ;
 6978  bool __cil_tmp93 ;
 6979  char *__cil_tmp94 ;
 6980  bool *__cil_tmp95 ;
 6981  bool __cil_tmp96 ;
 6982  char *__cil_tmp97 ;
 6983  unsigned long __cil_tmp98 ;
 6984  unsigned long __cil_tmp99 ;
 6985  bool *__cil_tmp100 ;
 6986  bool __cil_tmp101 ;
 6987  char *__cil_tmp102 ;
 6988  unsigned long __cil_tmp103 ;
 6989  unsigned long __cil_tmp104 ;
 6990  unsigned long __cil_tmp105 ;
 6991  unsigned long __cil_tmp106 ;
 6992  spinlock_t *__cil_tmp107 ;
 6993  unsigned long __cil_tmp108 ;
 6994  unsigned long __cil_tmp109 ;
 6995  char __cil_tmp110 ;
 6996  signed char __cil_tmp111 ;
 6997  int __cil_tmp112 ;
 6998  int __cil_tmp113 ;
 6999  __u16 __cil_tmp114 ;
 7000  int __cil_tmp115 ;
 7001  __u16 __cil_tmp116 ;
 7002  unsigned long __cil_tmp117 ;
 7003  unsigned long __cil_tmp118 ;
 7004  spinlock_t *__cil_tmp119 ;
 7005  unsigned long __cil_tmp120 ;
 7006  unsigned long __cil_tmp121 ;
 7007  spinlock_t *__cil_tmp122 ;
 7008  unsigned long __cil_tmp123 ;
 7009  unsigned long __cil_tmp124 ;
 7010  unsigned char __cil_tmp125 ;
 7011  int __cil_tmp126 ;
 7012  unsigned long __cil_tmp127 ;
 7013  unsigned long __cil_tmp128 ;
 7014  struct usb_device *__cil_tmp129 ;
 7015  unsigned long __cil_tmp130 ;
 7016  unsigned long __cil_tmp131 ;
 7017  struct device *__cil_tmp132 ;
 7018  struct device  const  *__cil_tmp133 ;
 7019
 7020  {
 7021#line 605
 7022  rv = 0;
 7023#line 606
 7024  wreg = (__u16 )0U;
 7025#line 607
 7026  __cil_tmp15 = (unsigned long )urb;
 7027#line 607
 7028  __cil_tmp16 = __cil_tmp15 + 96;
 7029#line 607
 7030  status = *((int *)__cil_tmp16);
 7031  {
 7032#line 609
 7033  __cil_tmp17 = & debug;
 7034#line 609
 7035  __cil_tmp18 = *__cil_tmp17;
 7036#line 609
 7037  if ((int )__cil_tmp18) {
 7038    {
 7039#line 609
 7040    __cil_tmp19 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7041#line 609
 7042    __cil_tmp20 = (char *)" : Entering";
 7043#line 609
 7044    printk("<7>%s: %s\n", __cil_tmp19, __cil_tmp20);
 7045    }
 7046  } else {
 7047
 7048  }
 7049  }
 7050#line 612
 7051  if (status == 0) {
 7052#line 612
 7053    goto case_0;
 7054  } else
 7055#line 615
 7056  if (status == -104) {
 7057#line 615
 7058    goto case_neg_104;
 7059  } else
 7060#line 616
 7061  if (status == -2) {
 7062#line 616
 7063    goto case_neg_2;
 7064  } else
 7065#line 617
 7066  if (status == -108) {
 7067#line 617
 7068    goto case_neg_108;
 7069  } else {
 7070    {
 7071#line 622
 7072    goto switch_default;
 7073#line 611
 7074    if (0) {
 7075      case_0: /* CIL Label */ ;
 7076#line 614
 7077      goto ldv_27980;
 7078      case_neg_104: /* CIL Label */ ;
 7079      case_neg_2: /* CIL Label */ ;
 7080      case_neg_108: /* CIL Label */ ;
 7081      {
 7082#line 619
 7083      __cil_tmp21 = & debug;
 7084#line 619
 7085      __cil_tmp22 = *__cil_tmp21;
 7086#line 619
 7087      if ((int )__cil_tmp22) {
 7088        {
 7089#line 619
 7090        __cil_tmp23 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7091#line 619
 7092        printk("<7>%s: %s - urb shutting down with status: %d\n", __cil_tmp23, "mos7840_interrupt_callback",
 7093               status);
 7094        }
 7095      } else {
 7096
 7097      }
 7098      }
 7099#line 621
 7100      return;
 7101      switch_default: /* CIL Label */ ;
 7102      {
 7103#line 623
 7104      __cil_tmp24 = & debug;
 7105#line 623
 7106      __cil_tmp25 = *__cil_tmp24;
 7107#line 623
 7108      if ((int )__cil_tmp25) {
 7109        {
 7110#line 623
 7111        __cil_tmp26 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7112#line 623
 7113        printk("<7>%s: %s - nonzero urb status received: %d\n", __cil_tmp26, "mos7840_interrupt_callback",
 7114               status);
 7115        }
 7116      } else {
 7117
 7118      }
 7119      }
 7120#line 625
 7121      goto exit;
 7122    } else {
 7123      switch_break: /* CIL Label */ ;
 7124    }
 7125    }
 7126  }
 7127  ldv_27980: 
 7128#line 628
 7129  __cil_tmp27 = (unsigned long )urb;
 7130#line 628
 7131  __cil_tmp28 = __cil_tmp27 + 140;
 7132#line 628
 7133  __cil_tmp29 = *((u32 *)__cil_tmp28);
 7134#line 628
 7135  length = (int )__cil_tmp29;
 7136#line 629
 7137  __cil_tmp30 = (unsigned long )urb;
 7138#line 629
 7139  __cil_tmp31 = __cil_tmp30 + 104;
 7140#line 629
 7141  __cil_tmp32 = *((void **)__cil_tmp31);
 7142#line 629
 7143  data = (unsigned char *)__cil_tmp32;
 7144#line 631
 7145  __cil_tmp33 = (unsigned long )urb;
 7146#line 631
 7147  __cil_tmp34 = __cil_tmp33 + 176;
 7148#line 631
 7149  __cil_tmp35 = *((void **)__cil_tmp34);
 7150#line 631
 7151  serial = (struct usb_serial *)__cil_tmp35;
 7152#line 640
 7153  if (length != 0) {
 7154#line 640
 7155    if (length > 5) {
 7156      {
 7157#line 641
 7158      __cil_tmp36 = & debug;
 7159#line 641
 7160      __cil_tmp37 = *__cil_tmp36;
 7161#line 641
 7162      if ((int )__cil_tmp37) {
 7163        {
 7164#line 641
 7165        __cil_tmp38 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7166#line 641
 7167        __cil_tmp39 = (char *)"Wrong data !!!";
 7168#line 641
 7169        printk("<7>%s: %s\n", __cil_tmp38, __cil_tmp39);
 7170        }
 7171      } else {
 7172
 7173      }
 7174      }
 7175#line 642
 7176      return;
 7177    } else {
 7178
 7179    }
 7180  } else {
 7181
 7182  }
 7183#line 645
 7184  __cil_tmp40 = 0 * 1UL;
 7185#line 645
 7186  __cil_tmp41 = (unsigned long )(sp) + __cil_tmp40;
 7187#line 645
 7188  *((__u8 *)__cil_tmp41) = *data;
 7189#line 646
 7190  __cil_tmp42 = 1 * 1UL;
 7191#line 646
 7192  __cil_tmp43 = (unsigned long )(sp) + __cil_tmp42;
 7193#line 646
 7194  __cil_tmp44 = data + 1UL;
 7195#line 646
 7196  *((__u8 *)__cil_tmp43) = *__cil_tmp44;
 7197#line 647
 7198  __cil_tmp45 = 2 * 1UL;
 7199#line 647
 7200  __cil_tmp46 = (unsigned long )(sp) + __cil_tmp45;
 7201#line 647
 7202  __cil_tmp47 = data + 2UL;
 7203#line 647
 7204  *((__u8 *)__cil_tmp46) = *__cil_tmp47;
 7205#line 648
 7206  __cil_tmp48 = 3 * 1UL;
 7207#line 648
 7208  __cil_tmp49 = (unsigned long )(sp) + __cil_tmp48;
 7209#line 648
 7210  __cil_tmp50 = data + 3UL;
 7211#line 648
 7212  *((__u8 *)__cil_tmp49) = *__cil_tmp50;
 7213#line 649
 7214  __cil_tmp51 = data + 4UL;
 7215#line 649
 7216  st = *__cil_tmp51;
 7217#line 651
 7218  i = 0;
 7219#line 651
 7220  goto ldv_27991;
 7221  ldv_27990: 
 7222  {
 7223#line 652
 7224  __cil_tmp52 = i * 8UL;
 7225#line 652
 7226  __cil_tmp53 = 32 + __cil_tmp52;
 7227#line 652
 7228  __cil_tmp54 = (unsigned long )serial;
 7229#line 652
 7230  __cil_tmp55 = __cil_tmp54 + __cil_tmp53;
 7231#line 652
 7232  __cil_tmp56 = *((struct usb_serial_port **)__cil_tmp55);
 7233#line 652
 7234  mos7840_port = mos7840_get_port_private(__cil_tmp56);
 7235#line 653
 7236  __cil_tmp57 = (unsigned long )serial;
 7237#line 653
 7238  __cil_tmp58 = __cil_tmp57 + 25;
 7239#line 653
 7240  __cil_tmp59 = *((unsigned char *)__cil_tmp58);
 7241#line 653
 7242  __cil_tmp60 = (__u16 )__cil_tmp59;
 7243#line 653
 7244  __cil_tmp61 = (int )__cil_tmp60;
 7245#line 653
 7246  __cil_tmp62 = i * 8UL;
 7247#line 653
 7248  __cil_tmp63 = 32 + __cil_tmp62;
 7249#line 653
 7250  __cil_tmp64 = (unsigned long )serial;
 7251#line 653
 7252  __cil_tmp65 = __cil_tmp64 + __cil_tmp63;
 7253#line 653
 7254  __cil_tmp66 = *((struct usb_serial_port **)__cil_tmp65);
 7255#line 653
 7256  __cil_tmp67 = (unsigned long )__cil_tmp66;
 7257#line 653
 7258  __cil_tmp68 = __cil_tmp67 + 816;
 7259#line 653
 7260  __cil_tmp69 = *((unsigned char *)__cil_tmp68);
 7261#line 653
 7262  __cil_tmp70 = (__u16 )__cil_tmp69;
 7263#line 653
 7264  __cil_tmp71 = (int )__cil_tmp70;
 7265#line 653
 7266  __cil_tmp72 = __cil_tmp71 - __cil_tmp61;
 7267#line 653
 7268  __cil_tmp73 = (unsigned int )__cil_tmp72;
 7269#line 653
 7270  __cil_tmp74 = __cil_tmp73 + 1U;
 7271#line 653
 7272  __cil_tmp75 = __cil_tmp74 << 8U;
 7273#line 653
 7274  wval = (__u16 )__cil_tmp75;
 7275  }
 7276  {
 7277#line 656
 7278  __cil_tmp76 = (unsigned long )mos7840_port;
 7279#line 656
 7280  __cil_tmp77 = __cil_tmp76 + 34;
 7281#line 656
 7282  __cil_tmp78 = *((char *)__cil_tmp77);
 7283#line 656
 7284  __cil_tmp79 = (signed char )__cil_tmp78;
 7285#line 656
 7286  __cil_tmp80 = (int )__cil_tmp79;
 7287#line 656
 7288  if (__cil_tmp80 != 0) {
 7289    {
 7290#line 657
 7291    __cil_tmp81 = i * 1UL;
 7292#line 657
 7293    __cil_tmp82 = (unsigned long )(sp) + __cil_tmp81;
 7294#line 657
 7295    __cil_tmp83 = *((__u8 *)__cil_tmp82);
 7296#line 657
 7297    __cil_tmp84 = (int )__cil_tmp83;
 7298#line 657
 7299    if (__cil_tmp84 & 1) {
 7300      {
 7301#line 658
 7302      __cil_tmp85 = & debug;
 7303#line 658
 7304      __cil_tmp86 = *__cil_tmp85;
 7305#line 658
 7306      if ((int )__cil_tmp86) {
 7307        {
 7308#line 658
 7309        __cil_tmp87 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7310#line 658
 7311        printk("<7>%s: SP%d No Interrupt !!!\n", __cil_tmp87, i);
 7312        }
 7313      } else {
 7314        {
 7315#line 660
 7316        __cil_tmp88 = i * 1UL;
 7317#line 660
 7318        __cil_tmp89 = (unsigned long )(sp) + __cil_tmp88;
 7319#line 660
 7320        __cil_tmp90 = *((__u8 *)__cil_tmp89);
 7321#line 660
 7322        __cil_tmp91 = (int )__cil_tmp90;
 7323#line 661
 7324        if ((__cil_tmp91 & 15) == 6) {
 7325#line 661
 7326          goto case_6;
 7327        } else
 7328#line 667
 7329        if ((__cil_tmp91 & 15) == 0) {
 7330#line 667
 7331          goto case_0___0;
 7332        } else
 7333#line 660
 7334        if (0) {
 7335          case_6: /* CIL Label */ ;
 7336          {
 7337#line 662
 7338          __cil_tmp92 = & debug;
 7339#line 662
 7340          __cil_tmp93 = *__cil_tmp92;
 7341#line 662
 7342          if ((int )__cil_tmp93) {
 7343            {
 7344#line 662
 7345            __cil_tmp94 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7346#line 662
 7347            printk("<7>%s: Serial Port %d: Receiver status error or \n", __cil_tmp94,
 7348                   i);
 7349            }
 7350          } else {
 7351
 7352          }
 7353          }
 7354          {
 7355#line 663
 7356          __cil_tmp95 = & debug;
 7357#line 663
 7358          __cil_tmp96 = *__cil_tmp95;
 7359#line 663
 7360          if ((int )__cil_tmp96) {
 7361            {
 7362#line 663
 7363            __cil_tmp97 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7364#line 663
 7365            printk("<7>%s: address bit detected in 9-bit mode\n", __cil_tmp97);
 7366            }
 7367          } else {
 7368
 7369          }
 7370          }
 7371#line 664
 7372          __cil_tmp98 = (unsigned long )mos7840_port;
 7373#line 664
 7374          __cil_tmp99 = __cil_tmp98 + 304;
 7375#line 664
 7376          *((int *)__cil_tmp99) = 1;
 7377#line 665
 7378          wreg = (__u16 )5U;
 7379#line 666
 7380          goto ldv_27988;
 7381          case_0___0: /* CIL Label */ ;
 7382          {
 7383#line 668
 7384          __cil_tmp100 = & debug;
 7385#line 668
 7386          __cil_tmp101 = *__cil_tmp100;
 7387#line 668
 7388          if ((int )__cil_tmp101) {
 7389            {
 7390#line 668
 7391            __cil_tmp102 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7392#line 668
 7393            printk("<7>%s: Serial Port %d: Modem status change\n", __cil_tmp102, i);
 7394            }
 7395          } else {
 7396
 7397          }
 7398          }
 7399#line 669
 7400          __cil_tmp103 = (unsigned long )mos7840_port;
 7401#line 669
 7402          __cil_tmp104 = __cil_tmp103 + 304;
 7403#line 669
 7404          *((int *)__cil_tmp104) = 0;
 7405#line 670
 7406          wreg = (__u16 )6U;
 7407#line 671
 7408          goto ldv_27988;
 7409        } else {
 7410          switch_break___0: /* CIL Label */ ;
 7411        }
 7412        }
 7413        ldv_27988: 
 7414        {
 7415#line 673
 7416        __cil_tmp105 = (unsigned long )mos7840_port;
 7417#line 673
 7418        __cil_tmp106 = __cil_tmp105 + 312;
 7419#line 673
 7420        __cil_tmp107 = (spinlock_t *)__cil_tmp106;
 7421#line 673
 7422        spin_lock(__cil_tmp107);
 7423        }
 7424        {
 7425#line 674
 7426        __cil_tmp108 = (unsigned long )mos7840_port;
 7427#line 674
 7428        __cil_tmp109 = __cil_tmp108 + 36;
 7429#line 674
 7430        __cil_tmp110 = *((char *)__cil_tmp109);
 7431#line 674
 7432        __cil_tmp111 = (signed char )__cil_tmp110;
 7433#line 674
 7434        __cil_tmp112 = (int )__cil_tmp111;
 7435#line 674
 7436        if (__cil_tmp112 == 0) {
 7437          {
 7438#line 675
 7439          __cil_tmp113 = (int )wval;
 7440#line 675
 7441          __cil_tmp114 = (__u16 )__cil_tmp113;
 7442#line 675
 7443          __cil_tmp115 = (int )wreg;
 7444#line 675
 7445          __cil_tmp116 = (__u16 )__cil_tmp115;
 7446#line 675
 7447          rv = mos7840_get_reg(mos7840_port, __cil_tmp114, __cil_tmp116, & Data);
 7448          }
 7449        } else {
 7450          {
 7451#line 677
 7452          __cil_tmp117 = (unsigned long )mos7840_port;
 7453#line 677
 7454          __cil_tmp118 = __cil_tmp117 + 312;
 7455#line 677
 7456          __cil_tmp119 = (spinlock_t *)__cil_tmp118;
 7457#line 677
 7458          spin_unlock(__cil_tmp119);
 7459          }
 7460#line 678
 7461          return;
 7462        }
 7463        }
 7464        {
 7465#line 680
 7466        __cil_tmp120 = (unsigned long )mos7840_port;
 7467#line 680
 7468        __cil_tmp121 = __cil_tmp120 + 312;
 7469#line 680
 7470        __cil_tmp122 = (spinlock_t *)__cil_tmp121;
 7471#line 680
 7472        spin_unlock(__cil_tmp122);
 7473        }
 7474      }
 7475      }
 7476    } else {
 7477
 7478    }
 7479    }
 7480  } else {
 7481
 7482  }
 7483  }
 7484#line 651
 7485  i = i + 1;
 7486  ldv_27991: ;
 7487  {
 7488#line 651
 7489  __cil_tmp123 = (unsigned long )serial;
 7490#line 651
 7491  __cil_tmp124 = __cil_tmp123 + 26;
 7492#line 651
 7493  __cil_tmp125 = *((unsigned char *)__cil_tmp124);
 7494#line 651
 7495  __cil_tmp126 = (int )__cil_tmp125;
 7496#line 651
 7497  if (__cil_tmp126 > i) {
 7498#line 652
 7499    goto ldv_27990;
 7500  } else {
 7501#line 654
 7502    goto ldv_27992;
 7503  }
 7504  }
 7505  ldv_27992: ;
 7506#line 684
 7507  if (rv >= 0) {
 7508#line 686
 7509    return;
 7510  } else {
 7511
 7512  }
 7513  exit: 
 7514  {
 7515#line 688
 7516  result = ldv_usb_submit_urb_21(urb, 32U);
 7517  }
 7518#line 689
 7519  if (result != 0) {
 7520    {
 7521#line 690
 7522    __cil_tmp127 = (unsigned long )urb;
 7523#line 690
 7524    __cil_tmp128 = __cil_tmp127 + 72;
 7525#line 690
 7526    __cil_tmp129 = *((struct usb_device **)__cil_tmp128);
 7527#line 690
 7528    __cil_tmp130 = (unsigned long )__cil_tmp129;
 7529#line 690
 7530    __cil_tmp131 = __cil_tmp130 + 136;
 7531#line 690
 7532    __cil_tmp132 = (struct device *)__cil_tmp131;
 7533#line 690
 7534    __cil_tmp133 = (struct device  const  *)__cil_tmp132;
 7535#line 690
 7536    dev_err(__cil_tmp133, "%s - Error %d submitting interrupt urb\n", "mos7840_interrupt_callback",
 7537            result);
 7538    }
 7539  } else {
 7540
 7541  }
 7542#line 693
 7543  return;
 7544}
 7545}
 7546#line 696 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 7547static int mos7840_port_paranoia_check(struct usb_serial_port *port , char const   *function ) 
 7548{ struct usb_serial_port *__cil_tmp3 ;
 7549  unsigned long __cil_tmp4 ;
 7550  unsigned long __cil_tmp5 ;
 7551  bool *__cil_tmp6 ;
 7552  bool __cil_tmp7 ;
 7553  char *__cil_tmp8 ;
 7554  struct usb_serial *__cil_tmp9 ;
 7555  unsigned long __cil_tmp10 ;
 7556  struct usb_serial *__cil_tmp11 ;
 7557  unsigned long __cil_tmp12 ;
 7558  bool *__cil_tmp13 ;
 7559  bool __cil_tmp14 ;
 7560  char *__cil_tmp15 ;
 7561
 7562  {
 7563  {
 7564#line 699
 7565  __cil_tmp3 = (struct usb_serial_port *)0;
 7566#line 699
 7567  __cil_tmp4 = (unsigned long )__cil_tmp3;
 7568#line 699
 7569  __cil_tmp5 = (unsigned long )port;
 7570#line 699
 7571  if (__cil_tmp5 == __cil_tmp4) {
 7572    {
 7573#line 700
 7574    __cil_tmp6 = & debug;
 7575#line 700
 7576    __cil_tmp7 = *__cil_tmp6;
 7577#line 700
 7578    if ((int )__cil_tmp7) {
 7579      {
 7580#line 700
 7581      __cil_tmp8 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7582#line 700
 7583      printk("<7>%s: %s - port == NULL\n", __cil_tmp8, function);
 7584      }
 7585    } else {
 7586
 7587    }
 7588    }
 7589#line 701
 7590    return (-1);
 7591  } else {
 7592
 7593  }
 7594  }
 7595  {
 7596#line 703
 7597  __cil_tmp9 = (struct usb_serial *)0;
 7598#line 703
 7599  __cil_tmp10 = (unsigned long )__cil_tmp9;
 7600#line 703
 7601  __cil_tmp11 = *((struct usb_serial **)port);
 7602#line 703
 7603  __cil_tmp12 = (unsigned long )__cil_tmp11;
 7604#line 703
 7605  if (__cil_tmp12 == __cil_tmp10) {
 7606    {
 7607#line 704
 7608    __cil_tmp13 = & debug;
 7609#line 704
 7610    __cil_tmp14 = *__cil_tmp13;
 7611#line 704
 7612    if ((int )__cil_tmp14) {
 7613      {
 7614#line 704
 7615      __cil_tmp15 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7616#line 704
 7617      printk("<7>%s: %s - port->serial == NULL\n", __cil_tmp15, function);
 7618      }
 7619    } else {
 7620
 7621    }
 7622    }
 7623#line 705
 7624    return (-1);
 7625  } else {
 7626
 7627  }
 7628  }
 7629#line 708
 7630  return (0);
 7631}
 7632}
 7633#line 712 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 7634static int mos7840_serial_paranoia_check(struct usb_serial *serial , char const   *function ) 
 7635{ struct usb_serial *__cil_tmp3 ;
 7636  unsigned long __cil_tmp4 ;
 7637  unsigned long __cil_tmp5 ;
 7638  bool *__cil_tmp6 ;
 7639  bool __cil_tmp7 ;
 7640  char *__cil_tmp8 ;
 7641  struct usb_serial_driver *__cil_tmp9 ;
 7642  unsigned long __cil_tmp10 ;
 7643  unsigned long __cil_tmp11 ;
 7644  unsigned long __cil_tmp12 ;
 7645  struct usb_serial_driver *__cil_tmp13 ;
 7646  unsigned long __cil_tmp14 ;
 7647  bool *__cil_tmp15 ;
 7648  bool __cil_tmp16 ;
 7649  char *__cil_tmp17 ;
 7650
 7651  {
 7652  {
 7653#line 715
 7654  __cil_tmp3 = (struct usb_serial *)0;
 7655#line 715
 7656  __cil_tmp4 = (unsigned long )__cil_tmp3;
 7657#line 715
 7658  __cil_tmp5 = (unsigned long )serial;
 7659#line 715
 7660  if (__cil_tmp5 == __cil_tmp4) {
 7661    {
 7662#line 716
 7663    __cil_tmp6 = & debug;
 7664#line 716
 7665    __cil_tmp7 = *__cil_tmp6;
 7666#line 716
 7667    if ((int )__cil_tmp7) {
 7668      {
 7669#line 716
 7670      __cil_tmp8 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7671#line 716
 7672      printk("<7>%s: %s - serial == NULL\n", __cil_tmp8, function);
 7673      }
 7674    } else {
 7675
 7676    }
 7677    }
 7678#line 717
 7679    return (-1);
 7680  } else {
 7681
 7682  }
 7683  }
 7684  {
 7685#line 719
 7686  __cil_tmp9 = (struct usb_serial_driver *)0;
 7687#line 719
 7688  __cil_tmp10 = (unsigned long )__cil_tmp9;
 7689#line 719
 7690  __cil_tmp11 = (unsigned long )serial;
 7691#line 719
 7692  __cil_tmp12 = __cil_tmp11 + 8;
 7693#line 719
 7694  __cil_tmp13 = *((struct usb_serial_driver **)__cil_tmp12);
 7695#line 719
 7696  __cil_tmp14 = (unsigned long )__cil_tmp13;
 7697#line 719
 7698  if (__cil_tmp14 == __cil_tmp10) {
 7699    {
 7700#line 720
 7701    __cil_tmp15 = & debug;
 7702#line 720
 7703    __cil_tmp16 = *__cil_tmp15;
 7704#line 720
 7705    if ((int )__cil_tmp16) {
 7706      {
 7707#line 720
 7708      __cil_tmp17 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7709#line 720
 7710      printk("<7>%s: %s - serial->type == NULL!\n", __cil_tmp17, function);
 7711      }
 7712    } else {
 7713
 7714    }
 7715    }
 7716#line 721
 7717    return (-1);
 7718  } else {
 7719
 7720  }
 7721  }
 7722#line 724
 7723  return (0);
 7724}
 7725}
 7726#line 727 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 7727static struct usb_serial *mos7840_get_usb_serial(struct usb_serial_port *port , char const   *function ) 
 7728{ int tmp ;
 7729  int tmp___0 ;
 7730  struct usb_serial_port *__cil_tmp5 ;
 7731  unsigned long __cil_tmp6 ;
 7732  unsigned long __cil_tmp7 ;
 7733  struct usb_serial *__cil_tmp8 ;
 7734
 7735  {
 7736  {
 7737#line 731
 7738  __cil_tmp5 = (struct usb_serial_port *)0;
 7739#line 731
 7740  __cil_tmp6 = (unsigned long )__cil_tmp5;
 7741#line 731
 7742  __cil_tmp7 = (unsigned long )port;
 7743#line 731
 7744  if (__cil_tmp7 == __cil_tmp6) {
 7745#line 736
 7746    return ((struct usb_serial *)0);
 7747  } else {
 7748    {
 7749#line 731
 7750    tmp = mos7840_port_paranoia_check(port, function);
 7751    }
 7752#line 731
 7753    if (tmp != 0) {
 7754#line 736
 7755      return ((struct usb_serial *)0);
 7756    } else {
 7757      {
 7758#line 731
 7759      __cil_tmp8 = *((struct usb_serial **)port);
 7760#line 731
 7761      tmp___0 = mos7840_serial_paranoia_check(__cil_tmp8, function);
 7762      }
 7763#line 731
 7764      if (tmp___0 != 0) {
 7765#line 736
 7766        return ((struct usb_serial *)0);
 7767      } else {
 7768
 7769      }
 7770    }
 7771  }
 7772  }
 7773#line 739
 7774  return (*((struct usb_serial **)port));
 7775}
 7776}
 7777#line 748 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 7778static void mos7840_bulk_in_callback(struct urb *urb ) 
 7779{ int retval ;
 7780  unsigned char *data ;
 7781  struct usb_serial *serial ;
 7782  struct usb_serial_port *port ;
 7783  struct moschip_port *mos7840_port ;
 7784  struct tty_struct *tty ;
 7785  int status ;
 7786  int tmp ;
 7787  unsigned long __cil_tmp10 ;
 7788  unsigned long __cil_tmp11 ;
 7789  unsigned long __cil_tmp12 ;
 7790  unsigned long __cil_tmp13 ;
 7791  void *__cil_tmp14 ;
 7792  struct moschip_port *__cil_tmp15 ;
 7793  unsigned long __cil_tmp16 ;
 7794  unsigned long __cil_tmp17 ;
 7795  bool *__cil_tmp18 ;
 7796  bool __cil_tmp19 ;
 7797  char *__cil_tmp20 ;
 7798  char *__cil_tmp21 ;
 7799  bool *__cil_tmp22 ;
 7800  bool __cil_tmp23 ;
 7801  char *__cil_tmp24 ;
 7802  unsigned long __cil_tmp25 ;
 7803  unsigned long __cil_tmp26 ;
 7804  unsigned long __cil_tmp27 ;
 7805  unsigned long __cil_tmp28 ;
 7806  bool *__cil_tmp29 ;
 7807  bool __cil_tmp30 ;
 7808  char *__cil_tmp31 ;
 7809  char *__cil_tmp32 ;
 7810  unsigned long __cil_tmp33 ;
 7811  unsigned long __cil_tmp34 ;
 7812  struct usb_serial *__cil_tmp35 ;
 7813  unsigned long __cil_tmp36 ;
 7814  unsigned long __cil_tmp37 ;
 7815  bool *__cil_tmp38 ;
 7816  bool __cil_tmp39 ;
 7817  char *__cil_tmp40 ;
 7818  char *__cil_tmp41 ;
 7819  unsigned long __cil_tmp42 ;
 7820  unsigned long __cil_tmp43 ;
 7821  bool *__cil_tmp44 ;
 7822  bool __cil_tmp45 ;
 7823  char *__cil_tmp46 ;
 7824  char *__cil_tmp47 ;
 7825  unsigned long __cil_tmp48 ;
 7826  unsigned long __cil_tmp49 ;
 7827  void *__cil_tmp50 ;
 7828  bool *__cil_tmp51 ;
 7829  bool __cil_tmp52 ;
 7830  char *__cil_tmp53 ;
 7831  char *__cil_tmp54 ;
 7832  unsigned long __cil_tmp55 ;
 7833  unsigned long __cil_tmp56 ;
 7834  u32 __cil_tmp57 ;
 7835  unsigned long __cil_tmp58 ;
 7836  unsigned long __cil_tmp59 ;
 7837  struct usb_serial_port *__cil_tmp60 ;
 7838  unsigned long __cil_tmp61 ;
 7839  unsigned long __cil_tmp62 ;
 7840  struct tty_port *__cil_tmp63 ;
 7841  struct tty_struct *__cil_tmp64 ;
 7842  unsigned long __cil_tmp65 ;
 7843  unsigned long __cil_tmp66 ;
 7844  unsigned char const   *__cil_tmp67 ;
 7845  unsigned long __cil_tmp68 ;
 7846  unsigned long __cil_tmp69 ;
 7847  u32 __cil_tmp70 ;
 7848  size_t __cil_tmp71 ;
 7849  bool *__cil_tmp72 ;
 7850  bool __cil_tmp73 ;
 7851  char *__cil_tmp74 ;
 7852  unsigned long __cil_tmp75 ;
 7853  unsigned long __cil_tmp76 ;
 7854  unsigned long __cil_tmp77 ;
 7855  unsigned long __cil_tmp78 ;
 7856  unsigned long __cil_tmp79 ;
 7857  u32 __cil_tmp80 ;
 7858  unsigned long __cil_tmp81 ;
 7859  unsigned long __cil_tmp82 ;
 7860  unsigned long __cil_tmp83 ;
 7861  __u32 __cil_tmp84 ;
 7862  bool *__cil_tmp85 ;
 7863  bool __cil_tmp86 ;
 7864  char *__cil_tmp87 ;
 7865  unsigned long __cil_tmp88 ;
 7866  unsigned long __cil_tmp89 ;
 7867  unsigned long __cil_tmp90 ;
 7868  __u32 __cil_tmp91 ;
 7869  struct urb *__cil_tmp92 ;
 7870  unsigned long __cil_tmp93 ;
 7871  unsigned long __cil_tmp94 ;
 7872  unsigned long __cil_tmp95 ;
 7873  struct urb *__cil_tmp96 ;
 7874  unsigned long __cil_tmp97 ;
 7875  bool *__cil_tmp98 ;
 7876  bool __cil_tmp99 ;
 7877  char *__cil_tmp100 ;
 7878  char *__cil_tmp101 ;
 7879  unsigned long __cil_tmp102 ;
 7880  unsigned long __cil_tmp103 ;
 7881  unsigned long __cil_tmp104 ;
 7882  unsigned long __cil_tmp105 ;
 7883  unsigned long __cil_tmp106 ;
 7884  unsigned long __cil_tmp107 ;
 7885  struct urb *__cil_tmp108 ;
 7886  bool *__cil_tmp109 ;
 7887  bool __cil_tmp110 ;
 7888  char *__cil_tmp111 ;
 7889  unsigned long __cil_tmp112 ;
 7890  unsigned long __cil_tmp113 ;
 7891
 7892  {
 7893#line 756
 7894  __cil_tmp10 = (unsigned long )urb;
 7895#line 756
 7896  __cil_tmp11 = __cil_tmp10 + 96;
 7897#line 756
 7898  status = *((int *)__cil_tmp11);
 7899#line 758
 7900  __cil_tmp12 = (unsigned long )urb;
 7901#line 758
 7902  __cil_tmp13 = __cil_tmp12 + 176;
 7903#line 758
 7904  __cil_tmp14 = *((void **)__cil_tmp13);
 7905#line 758
 7906  mos7840_port = (struct moschip_port *)__cil_tmp14;
 7907  {
 7908#line 759
 7909  __cil_tmp15 = (struct moschip_port *)0;
 7910#line 759
 7911  __cil_tmp16 = (unsigned long )__cil_tmp15;
 7912#line 759
 7913  __cil_tmp17 = (unsigned long )mos7840_port;
 7914#line 759
 7915  if (__cil_tmp17 == __cil_tmp16) {
 7916    {
 7917#line 760
 7918    __cil_tmp18 = & debug;
 7919#line 760
 7920    __cil_tmp19 = *__cil_tmp18;
 7921#line 760
 7922    if ((int )__cil_tmp19) {
 7923      {
 7924#line 760
 7925      __cil_tmp20 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7926#line 760
 7927      __cil_tmp21 = (char *)"NULL mos7840_port pointer";
 7928#line 760
 7929      printk("<7>%s: %s\n", __cil_tmp20, __cil_tmp21);
 7930      }
 7931    } else {
 7932
 7933    }
 7934    }
 7935#line 761
 7936    return;
 7937  } else {
 7938
 7939  }
 7940  }
 7941#line 764
 7942  if (status != 0) {
 7943    {
 7944#line 765
 7945    __cil_tmp22 = & debug;
 7946#line 765
 7947    __cil_tmp23 = *__cil_tmp22;
 7948#line 765
 7949    if ((int )__cil_tmp23) {
 7950      {
 7951#line 765
 7952      __cil_tmp24 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7953#line 765
 7954      printk("<7>%s: nonzero read bulk status received: %d\n", __cil_tmp24, status);
 7955      }
 7956    } else {
 7957
 7958    }
 7959    }
 7960#line 766
 7961    __cil_tmp25 = (unsigned long )mos7840_port;
 7962#line 766
 7963    __cil_tmp26 = __cil_tmp25 + 528;
 7964#line 766
 7965    *((bool *)__cil_tmp26) = (bool )0;
 7966#line 767
 7967    return;
 7968  } else {
 7969
 7970  }
 7971  {
 7972#line 770
 7973  __cil_tmp27 = (unsigned long )mos7840_port;
 7974#line 770
 7975  __cil_tmp28 = __cil_tmp27 + 264;
 7976#line 770
 7977  port = *((struct usb_serial_port **)__cil_tmp28);
 7978#line 771
 7979  tmp = mos7840_port_paranoia_check(port, "mos7840_bulk_in_callback");
 7980  }
 7981#line 771
 7982  if (tmp != 0) {
 7983    {
 7984#line 772
 7985    __cil_tmp29 = & debug;
 7986#line 772
 7987    __cil_tmp30 = *__cil_tmp29;
 7988#line 772
 7989    if ((int )__cil_tmp30) {
 7990      {
 7991#line 772
 7992      __cil_tmp31 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 7993#line 772
 7994      __cil_tmp32 = (char *)"Port Paranoia failed";
 7995#line 772
 7996      printk("<7>%s: %s\n", __cil_tmp31, __cil_tmp32);
 7997      }
 7998    } else {
 7999
 8000    }
 8001    }
 8002#line 773
 8003    __cil_tmp33 = (unsigned long )mos7840_port;
 8004#line 773
 8005    __cil_tmp34 = __cil_tmp33 + 528;
 8006#line 773
 8007    *((bool *)__cil_tmp34) = (bool )0;
 8008#line 774
 8009    return;
 8010  } else {
 8011
 8012  }
 8013  {
 8014#line 777
 8015  serial = mos7840_get_usb_serial(port, "mos7840_bulk_in_callback");
 8016  }
 8017  {
 8018#line 778
 8019  __cil_tmp35 = (struct usb_serial *)0;
 8020#line 778
 8021  __cil_tmp36 = (unsigned long )__cil_tmp35;
 8022#line 778
 8023  __cil_tmp37 = (unsigned long )serial;
 8024#line 778
 8025  if (__cil_tmp37 == __cil_tmp36) {
 8026    {
 8027#line 779
 8028    __cil_tmp38 = & debug;
 8029#line 779
 8030    __cil_tmp39 = *__cil_tmp38;
 8031#line 779
 8032    if ((int )__cil_tmp39) {
 8033      {
 8034#line 779
 8035      __cil_tmp40 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8036#line 779
 8037      __cil_tmp41 = (char *)"Bad serial pointer";
 8038#line 779
 8039      printk("<7>%s: %s\n", __cil_tmp40, __cil_tmp41);
 8040      }
 8041    } else {
 8042
 8043    }
 8044    }
 8045#line 780
 8046    __cil_tmp42 = (unsigned long )mos7840_port;
 8047#line 780
 8048    __cil_tmp43 = __cil_tmp42 + 528;
 8049#line 780
 8050    *((bool *)__cil_tmp43) = (bool )0;
 8051#line 781
 8052    return;
 8053  } else {
 8054
 8055  }
 8056  }
 8057  {
 8058#line 784
 8059  __cil_tmp44 = & debug;
 8060#line 784
 8061  __cil_tmp45 = *__cil_tmp44;
 8062#line 784
 8063  if ((int )__cil_tmp45) {
 8064    {
 8065#line 784
 8066    __cil_tmp46 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8067#line 784
 8068    __cil_tmp47 = (char *)"Entering... ";
 8069#line 784
 8070    printk("<7>%s: %s\n", __cil_tmp46, __cil_tmp47);
 8071    }
 8072  } else {
 8073
 8074  }
 8075  }
 8076#line 786
 8077  __cil_tmp48 = (unsigned long )urb;
 8078#line 786
 8079  __cil_tmp49 = __cil_tmp48 + 104;
 8080#line 786
 8081  __cil_tmp50 = *((void **)__cil_tmp49);
 8082#line 786
 8083  data = (unsigned char *)__cil_tmp50;
 8084  {
 8085#line 788
 8086  __cil_tmp51 = & debug;
 8087#line 788
 8088  __cil_tmp52 = *__cil_tmp51;
 8089#line 788
 8090  if ((int )__cil_tmp52) {
 8091    {
 8092#line 788
 8093    __cil_tmp53 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8094#line 788
 8095    __cil_tmp54 = (char *)"Entering ...........";
 8096#line 788
 8097    printk("<7>%s: %s\n", __cil_tmp53, __cil_tmp54);
 8098    }
 8099  } else {
 8100
 8101  }
 8102  }
 8103  {
 8104#line 790
 8105  __cil_tmp55 = (unsigned long )urb;
 8106#line 790
 8107  __cil_tmp56 = __cil_tmp55 + 140;
 8108#line 790
 8109  __cil_tmp57 = *((u32 *)__cil_tmp56);
 8110#line 790
 8111  if (__cil_tmp57 != 0U) {
 8112    {
 8113#line 791
 8114    __cil_tmp58 = (unsigned long )mos7840_port;
 8115#line 791
 8116    __cil_tmp59 = __cil_tmp58 + 264;
 8117#line 791
 8118    __cil_tmp60 = *((struct usb_serial_port **)__cil_tmp59);
 8119#line 791
 8120    __cil_tmp61 = (unsigned long )__cil_tmp60;
 8121#line 791
 8122    __cil_tmp62 = __cil_tmp61 + 8;
 8123#line 791
 8124    __cil_tmp63 = (struct tty_port *)__cil_tmp62;
 8125#line 791
 8126    tty = tty_port_tty_get(__cil_tmp63);
 8127    }
 8128    {
 8129#line 792
 8130    __cil_tmp64 = (struct tty_struct *)0;
 8131#line 792
 8132    __cil_tmp65 = (unsigned long )__cil_tmp64;
 8133#line 792
 8134    __cil_tmp66 = (unsigned long )tty;
 8135#line 792
 8136    if (__cil_tmp66 != __cil_tmp65) {
 8137      {
 8138#line 793
 8139      __cil_tmp67 = (unsigned char const   *)data;
 8140#line 793
 8141      __cil_tmp68 = (unsigned long )urb;
 8142#line 793
 8143      __cil_tmp69 = __cil_tmp68 + 140;
 8144#line 793
 8145      __cil_tmp70 = *((u32 *)__cil_tmp69);
 8146#line 793
 8147      __cil_tmp71 = (size_t )__cil_tmp70;
 8148#line 793
 8149      tty_insert_flip_string(tty, __cil_tmp67, __cil_tmp71);
 8150      }
 8151      {
 8152#line 794
 8153      __cil_tmp72 = & debug;
 8154#line 794
 8155      __cil_tmp73 = *__cil_tmp72;
 8156#line 794
 8157      if ((int )__cil_tmp73) {
 8158        {
 8159#line 794
 8160        __cil_tmp74 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8161#line 794
 8162        printk("<7>%s:  %s \n", __cil_tmp74, data);
 8163        }
 8164      } else {
 8165
 8166      }
 8167      }
 8168      {
 8169#line 795
 8170      tty_flip_buffer_push(tty);
 8171#line 796
 8172      tty_kref_put(tty);
 8173      }
 8174    } else {
 8175
 8176    }
 8177    }
 8178#line 798
 8179    __cil_tmp75 = 220 + 20;
 8180#line 798
 8181    __cil_tmp76 = (unsigned long )mos7840_port;
 8182#line 798
 8183    __cil_tmp77 = __cil_tmp76 + __cil_tmp75;
 8184#line 798
 8185    __cil_tmp78 = (unsigned long )urb;
 8186#line 798
 8187    __cil_tmp79 = __cil_tmp78 + 140;
 8188#line 798
 8189    __cil_tmp80 = *((u32 *)__cil_tmp79);
 8190#line 798
 8191    __cil_tmp81 = 220 + 20;
 8192#line 798
 8193    __cil_tmp82 = (unsigned long )mos7840_port;
 8194#line 798
 8195    __cil_tmp83 = __cil_tmp82 + __cil_tmp81;
 8196#line 798
 8197    __cil_tmp84 = *((__u32 *)__cil_tmp83);
 8198#line 798
 8199    *((__u32 *)__cil_tmp77) = __cil_tmp84 + __cil_tmp80;
 8200#line 799
 8201    __asm__  volatile   ("": : : "memory");
 8202    {
 8203#line 800
 8204    __cil_tmp85 = & debug;
 8205#line 800
 8206    __cil_tmp86 = *__cil_tmp85;
 8207#line 800
 8208    if ((int )__cil_tmp86) {
 8209      {
 8210#line 800
 8211      __cil_tmp87 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8212#line 800
 8213      __cil_tmp88 = 220 + 20;
 8214#line 800
 8215      __cil_tmp89 = (unsigned long )mos7840_port;
 8216#line 800
 8217      __cil_tmp90 = __cil_tmp89 + __cil_tmp88;
 8218#line 800
 8219      __cil_tmp91 = *((__u32 *)__cil_tmp90);
 8220#line 800
 8221      printk("<7>%s: mos7840_port->icount.rx is %d:\n", __cil_tmp87, __cil_tmp91);
 8222      }
 8223    } else {
 8224
 8225    }
 8226    }
 8227  } else {
 8228
 8229  }
 8230  }
 8231  {
 8232#line 804
 8233  __cil_tmp92 = (struct urb *)0;
 8234#line 804
 8235  __cil_tmp93 = (unsigned long )__cil_tmp92;
 8236#line 804
 8237  __cil_tmp94 = (unsigned long )mos7840_port;
 8238#line 804
 8239  __cil_tmp95 = __cil_tmp94 + 16;
 8240#line 804
 8241  __cil_tmp96 = *((struct urb **)__cil_tmp95);
 8242#line 804
 8243  __cil_tmp97 = (unsigned long )__cil_tmp96;
 8244#line 804
 8245  if (__cil_tmp97 == __cil_tmp93) {
 8246    {
 8247#line 805
 8248    __cil_tmp98 = & debug;
 8249#line 805
 8250    __cil_tmp99 = *__cil_tmp98;
 8251#line 805
 8252    if ((int )__cil_tmp99) {
 8253      {
 8254#line 805
 8255      __cil_tmp100 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8256#line 805
 8257      __cil_tmp101 = (char *)"URB KILLED !!!";
 8258#line 805
 8259      printk("<7>%s: %s\n", __cil_tmp100, __cil_tmp101);
 8260      }
 8261    } else {
 8262
 8263    }
 8264    }
 8265#line 806
 8266    __cil_tmp102 = (unsigned long )mos7840_port;
 8267#line 806
 8268    __cil_tmp103 = __cil_tmp102 + 528;
 8269#line 806
 8270    *((bool *)__cil_tmp103) = (bool )0;
 8271#line 807
 8272    return;
 8273  } else {
 8274
 8275  }
 8276  }
 8277  {
 8278#line 811
 8279  __cil_tmp104 = (unsigned long )mos7840_port;
 8280#line 811
 8281  __cil_tmp105 = __cil_tmp104 + 528;
 8282#line 811
 8283  *((bool *)__cil_tmp105) = (bool )1;
 8284#line 812
 8285  __cil_tmp106 = (unsigned long )mos7840_port;
 8286#line 812
 8287  __cil_tmp107 = __cil_tmp106 + 16;
 8288#line 812
 8289  __cil_tmp108 = *((struct urb **)__cil_tmp107);
 8290#line 812
 8291  retval = ldv_usb_submit_urb_22(__cil_tmp108, 32U);
 8292  }
 8293#line 814
 8294  if (retval != 0) {
 8295    {
 8296#line 815
 8297    __cil_tmp109 = & debug;
 8298#line 815
 8299    __cil_tmp110 = *__cil_tmp109;
 8300#line 815
 8301    if ((int )__cil_tmp110) {
 8302      {
 8303#line 815
 8304      __cil_tmp111 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8305#line 815
 8306      printk("<7>%s: usb_submit_urb(read bulk) failed, retval = %d\n", __cil_tmp111,
 8307             retval);
 8308      }
 8309    } else {
 8310
 8311    }
 8312    }
 8313#line 816
 8314    __cil_tmp112 = (unsigned long )mos7840_port;
 8315#line 816
 8316    __cil_tmp113 = __cil_tmp112 + 528;
 8317#line 816
 8318    *((bool *)__cil_tmp113) = (bool )0;
 8319  } else {
 8320
 8321  }
 8322#line 818
 8323  return;
 8324}
 8325}
 8326#line 826 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 8327static void mos7840_bulk_out_data_callback(struct urb *urb ) 
 8328{ struct moschip_port *mos7840_port ;
 8329  struct tty_struct *tty ;
 8330  int status ;
 8331  int i ;
 8332  int tmp ;
 8333  unsigned long __cil_tmp7 ;
 8334  unsigned long __cil_tmp8 ;
 8335  unsigned long __cil_tmp9 ;
 8336  unsigned long __cil_tmp10 ;
 8337  void *__cil_tmp11 ;
 8338  unsigned long __cil_tmp12 ;
 8339  unsigned long __cil_tmp13 ;
 8340  spinlock_t *__cil_tmp14 ;
 8341  unsigned long __cil_tmp15 ;
 8342  unsigned long __cil_tmp16 ;
 8343  unsigned long __cil_tmp17 ;
 8344  unsigned long __cil_tmp18 ;
 8345  unsigned long __cil_tmp19 ;
 8346  struct urb *__cil_tmp20 ;
 8347  unsigned long __cil_tmp21 ;
 8348  unsigned long __cil_tmp22 ;
 8349  unsigned long __cil_tmp23 ;
 8350  unsigned long __cil_tmp24 ;
 8351  unsigned long __cil_tmp25 ;
 8352  unsigned long __cil_tmp26 ;
 8353  unsigned long __cil_tmp27 ;
 8354  spinlock_t *__cil_tmp28 ;
 8355  bool *__cil_tmp29 ;
 8356  bool __cil_tmp30 ;
 8357  char *__cil_tmp31 ;
 8358  unsigned long __cil_tmp32 ;
 8359  unsigned long __cil_tmp33 ;
 8360  struct usb_serial_port *__cil_tmp34 ;
 8361  bool *__cil_tmp35 ;
 8362  bool __cil_tmp36 ;
 8363  char *__cil_tmp37 ;
 8364  char *__cil_tmp38 ;
 8365  bool *__cil_tmp39 ;
 8366  bool __cil_tmp40 ;
 8367  char *__cil_tmp41 ;
 8368  char *__cil_tmp42 ;
 8369  unsigned long __cil_tmp43 ;
 8370  unsigned long __cil_tmp44 ;
 8371  struct usb_serial_port *__cil_tmp45 ;
 8372  unsigned long __cil_tmp46 ;
 8373  unsigned long __cil_tmp47 ;
 8374  struct tty_port *__cil_tmp48 ;
 8375  struct tty_struct *__cil_tmp49 ;
 8376  unsigned long __cil_tmp50 ;
 8377  unsigned long __cil_tmp51 ;
 8378  unsigned long __cil_tmp52 ;
 8379  unsigned long __cil_tmp53 ;
 8380  char __cil_tmp54 ;
 8381  signed char __cil_tmp55 ;
 8382  int __cil_tmp56 ;
 8383
 8384  {
 8385  {
 8386#line 830
 8387  __cil_tmp7 = (unsigned long )urb;
 8388#line 830
 8389  __cil_tmp8 = __cil_tmp7 + 96;
 8390#line 830
 8391  status = *((int *)__cil_tmp8);
 8392#line 833
 8393  __cil_tmp9 = (unsigned long )urb;
 8394#line 833
 8395  __cil_tmp10 = __cil_tmp9 + 176;
 8396#line 833
 8397  __cil_tmp11 = *((void **)__cil_tmp10);
 8398#line 833
 8399  mos7840_port = (struct moschip_port *)__cil_tmp11;
 8400#line 834
 8401  __cil_tmp12 = (unsigned long )mos7840_port;
 8402#line 834
 8403  __cil_tmp13 = __cil_tmp12 + 312;
 8404#line 834
 8405  __cil_tmp14 = (spinlock_t *)__cil_tmp13;
 8406#line 834
 8407  spin_lock(__cil_tmp14);
 8408#line 835
 8409  i = 0;
 8410  }
 8411#line 835
 8412  goto ldv_28025;
 8413  ldv_28024: ;
 8414  {
 8415#line 836
 8416  __cil_tmp15 = (unsigned long )urb;
 8417#line 836
 8418  __cil_tmp16 = i * 8UL;
 8419#line 836
 8420  __cil_tmp17 = 384 + __cil_tmp16;
 8421#line 836
 8422  __cil_tmp18 = (unsigned long )mos7840_port;
 8423#line 836
 8424  __cil_tmp19 = __cil_tmp18 + __cil_tmp17;
 8425#line 836
 8426  __cil_tmp20 = *((struct urb **)__cil_tmp19);
 8427#line 836
 8428  __cil_tmp21 = (unsigned long )__cil_tmp20;
 8429#line 836
 8430  if (__cil_tmp21 == __cil_tmp15) {
 8431#line 837
 8432    __cil_tmp22 = i * 1UL;
 8433#line 837
 8434    __cil_tmp23 = 512 + __cil_tmp22;
 8435#line 837
 8436    __cil_tmp24 = (unsigned long )mos7840_port;
 8437#line 837
 8438    __cil_tmp25 = __cil_tmp24 + __cil_tmp23;
 8439#line 837
 8440    *((char *)__cil_tmp25) = (char)0;
 8441#line 838
 8442    goto ldv_28023;
 8443  } else {
 8444
 8445  }
 8446  }
 8447#line 835
 8448  i = i + 1;
 8449  ldv_28025: ;
 8450#line 835
 8451  if (i <= 15) {
 8452#line 836
 8453    goto ldv_28024;
 8454  } else {
 8455#line 838
 8456    goto ldv_28023;
 8457  }
 8458  ldv_28023: 
 8459  {
 8460#line 841
 8461  __cil_tmp26 = (unsigned long )mos7840_port;
 8462#line 841
 8463  __cil_tmp27 = __cil_tmp26 + 312;
 8464#line 841
 8465  __cil_tmp28 = (spinlock_t *)__cil_tmp27;
 8466#line 841
 8467  spin_unlock(__cil_tmp28);
 8468  }
 8469#line 843
 8470  if (status != 0) {
 8471    {
 8472#line 844
 8473    __cil_tmp29 = & debug;
 8474#line 844
 8475    __cil_tmp30 = *__cil_tmp29;
 8476#line 844
 8477    if ((int )__cil_tmp30) {
 8478      {
 8479#line 844
 8480      __cil_tmp31 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8481#line 844
 8482      printk("<7>%s: nonzero write bulk status received:%d\n", __cil_tmp31, status);
 8483      }
 8484    } else {
 8485
 8486    }
 8487    }
 8488#line 845
 8489    return;
 8490  } else {
 8491
 8492  }
 8493  {
 8494#line 848
 8495  __cil_tmp32 = (unsigned long )mos7840_port;
 8496#line 848
 8497  __cil_tmp33 = __cil_tmp32 + 264;
 8498#line 848
 8499  __cil_tmp34 = *((struct usb_serial_port **)__cil_tmp33);
 8500#line 848
 8501  tmp = mos7840_port_paranoia_check(__cil_tmp34, "mos7840_bulk_out_data_callback");
 8502  }
 8503#line 848
 8504  if (tmp != 0) {
 8505    {
 8506#line 849
 8507    __cil_tmp35 = & debug;
 8508#line 849
 8509    __cil_tmp36 = *__cil_tmp35;
 8510#line 849
 8511    if ((int )__cil_tmp36) {
 8512      {
 8513#line 849
 8514      __cil_tmp37 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8515#line 849
 8516      __cil_tmp38 = (char *)"Port Paranoia failed";
 8517#line 849
 8518      printk("<7>%s: %s\n", __cil_tmp37, __cil_tmp38);
 8519      }
 8520    } else {
 8521
 8522    }
 8523    }
 8524#line 850
 8525    return;
 8526  } else {
 8527
 8528  }
 8529  {
 8530#line 853
 8531  __cil_tmp39 = & debug;
 8532#line 853
 8533  __cil_tmp40 = *__cil_tmp39;
 8534#line 853
 8535  if ((int )__cil_tmp40) {
 8536    {
 8537#line 853
 8538    __cil_tmp41 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 8539#line 853
 8540    __cil_tmp42 = (char *)"Entering .........";
 8541#line 853
 8542    printk("<7>%s: %s\n", __cil_tmp41, __cil_tmp42);
 8543    }
 8544  } else {
 8545
 8546  }
 8547  }
 8548  {
 8549#line 855
 8550  __cil_tmp43 = (unsigned long )mos7840_port;
 8551#line 855
 8552  __cil_tmp44 = __cil_tmp43 + 264;
 8553#line 855
 8554  __cil_tmp45 = *((struct usb_serial_port **)__cil_tmp44);
 8555#line 855
 8556  __cil_tmp46 = (unsigned long )__cil_tmp45;
 8557#line 855
 8558  __cil_tmp47 = __cil_tmp46 + 8;
 8559#line 855
 8560  __cil_tmp48 = (struct tty_port *)__cil_tmp47;
 8561#line 855
 8562  tty = tty_port_tty_get(__cil_tmp48);
 8563  }
 8564  {
 8565#line 856
 8566  __cil_tmp49 = (struct tty_struct *)0;
 8567#line 856
 8568  __cil_tmp50 = (unsigned long )__cil_tmp49;
 8569#line 856
 8570  __cil_tmp51 = (unsigned long )tty;
 8571#line 856
 8572  if (__cil_tmp51 != __cil_tmp50) {
 8573    {
 8574#line 856
 8575    __cil_tmp52 = (unsigned long )mos7840_port;
 8576#line 856
 8577    __cil_tmp53 = __cil_tmp52 + 34;
 8578#line 856
 8579    __cil_tmp54 = *((char *)__cil_tmp53);
 8580#line 856
 8581    __cil_tmp55 = (signed char )__cil_tmp54;
 8582#line 856
 8583    __cil_tmp56 = (int )__cil_tmp55;
 8584#line 856
 8585    if (__cil_tmp56 != 0) {
 8586      {
 8587#line 857
 8588      tty_wakeup(tty);
 8589      }
 8590    } else {
 8591
 8592    }
 8593    }
 8594  } else {
 8595
 8596  }
 8597  }
 8598  {
 8599#line 858
 8600  tty_kref_put(tty);
 8601  }
 8602#line 859
 8603  return;
 8604}
 8605}
 8606#line 885 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
 8607static int mos7840_open(struct tty_struct *tty , struct usb_serial_port *port ) 
 8608{ int response ;
 8609  int j ;
 8610  struct usb_serial *serial ;
 8611  struct urb *urb ;
 8612  __u16 Data ;
 8613  int status ;
 8614  struct moschip_port *mos7840_port ;
 8615  struct moschip_port *port0 ;
 8616  int tmp ;
 8617  int tmp___0 ;
 8618  unsigned int tmp___1 ;
 8619  unsigned int tmp___2 ;
 8620  unsigned int tmp___3 ;
 8621  struct lock_class_key __key ;
 8622  struct lock_class_key __key___0 ;
 8623  bool *__cil_tmp18 ;
 8624  bool __cil_tmp19 ;
 8625  char *__cil_tmp20 ;
 8626  bool *__cil_tmp21 ;
 8627  bool __cil_tmp22 ;
 8628  char *__cil_tmp23 ;
 8629  char *__cil_tmp24 ;
 8630  bool *__cil_tmp25 ;
 8631  bool __cil_tmp26 ;
 8632  char *__cil_tmp27 ;
 8633  char *__cil_tmp28 ;
 8634  unsigned long __cil_tmp29 ;
 8635  unsigned long __cil_tmp30 ;
 8636  unsigned long __cil_tmp31 ;
 8637  unsigned long __cil_tmp32 ;
 8638  struct usb_serial_port *__cil_tmp33 ;
 8639  struct moschip_port *__cil_tmp34 ;
 8640  unsigned long __cil_tmp35 ;
 8641  unsigned long __cil_tmp36 ;
 8642  struct moschip_port *__cil_tmp37 ;
 8643  unsigned long __cil_tmp38 ;
 8644  unsigned long __cil_tmp39 ;
 8645  struct usb_device *__cil_tmp40 ;
 8646  unsigned long __cil_tmp41 ;
 8647  unsigned long __cil_tmp42 ;
 8648  struct urb *__cil_tmp43 ;
 8649  unsigned long __cil_tmp44 ;
 8650  unsigned long __cil_tmp45 ;
 8651  unsigned int __cil_tmp46 ;
 8652  int __cil_tmp47 ;
 8653  struct usb_device *__cil_tmp48 ;
 8654  unsigned long __cil_tmp49 ;
 8655  unsigned long __cil_tmp50 ;
 8656  struct urb *__cil_tmp51 ;
 8657  unsigned long __cil_tmp52 ;
 8658  unsigned long __cil_tmp53 ;
 8659  unsigned int __cil_tmp54 ;
 8660  int __cil_tmp55 ;
 8661  unsigned long __cil_tmp56 ;
 8662  unsigned long __cil_tmp57 ;
 8663  unsigned long __cil_tmp58 ;
 8664  unsigned long __cil_tmp59 ;
 8665  char __cil_tmp60 ;
 8666  int __cil_tmp61 ;
 8667  int __cil_tmp62 ;
 8668  unsigned long __cil_tmp63 ;
 8669  unsigned long __cil_tmp64 ;
 8670  unsigned long __cil_tmp65 ;
 8671  unsigned long __cil_tmp66 ;
 8672  struct urb *__cil_tmp67 ;
 8673  unsigned long __cil_tmp68 ;
 8674  unsigned long __cil_tmp69 ;
 8675  unsigned long __cil_tmp70 ;
 8676  unsigned long __cil_tmp71 ;
 8677  struct device *__cil_tmp72 ;
 8678  struct device  const  *__cil_tmp73 ;
 8679  unsigned long __cil_tmp74 ;
 8680  unsigned long __cil_tmp75 ;
 8681  void *__cil_tmp76 ;
 8682  unsigned long __cil_tmp77 ;
 8683  unsigned long __cil_tmp78 ;
 8684  unsigned long __cil_tmp79 ;
 8685  void *__cil_tmp80 ;
 8686  unsigned long __cil_tmp81 ;
 8687  unsigned long __cil_tmp82 ;
 8688  unsigned long __cil_tmp83 ;
 8689  unsigned long __cil_tmp84 ;
 8690  unsigned long __cil_tmp85 ;
 8691  unsigned long __cil_tmp86 ;
 8692  unsigned long __cil_tmp87 ;
 8693  struct device *__cil_tmp88 ;
 8694  struct device  const  *__cil_tmp89 ;
 8695  __u16 *__cil_tmp90 ;
 8696  unsigned long __cil_tmp91 ;
 8697  unsigned long __cil_tmp92 ;
 8698  __u8 __cil_tmp93 ;
 8699  int __cil_tmp94 ;
 8700  __u16 __cil_tmp95 ;
 8701  bool *__cil_tmp96 ;
 8702  bool __cil_tmp97 ;
 8703  char *__cil_tmp98 ;
 8704  __u16 *__cil_tmp99 ;
 8705  __u16 *__cil_tmp100 ;
 8706  __u16 __cil_tmp101 ;
 8707  unsigned int __cil_tmp102 ;
 8708  unsigned int __cil_tmp103 ;
 8709  unsigned long __cil_tmp104 ;
 8710  unsigned long __cil_tmp105 ;
 8711  __u8 __cil_tmp106 ;
 8712  int __cil_tmp107 ;
 8713  __u16 __cil_tmp108 ;
 8714  __u16 *__cil_tmp109 ;
 8715  __u16 __cil_tmp110 ;
 8716  int __cil_tmp111 ;
 8717  __u16 __cil_tmp112 ;
 8718  bool *__cil_tmp113 ;
 8719  bool __cil_tmp114 ;
 8720  char *__cil_tmp115 ;
 8721  __u16 *__cil_tmp116 ;
 8722  __u16 *__cil_tmp117 ;
 8723  __u16 __cil_tmp118 ;
 8724  unsigned int __cil_tmp119 ;
 8725  unsigned int __cil_tmp120 ;
 8726  unsigned long __cil_tmp121 ;
 8727  unsigned long __cil_tmp122 ;
 8728  __u8 __cil_tmp123 ;
 8729  int __cil_tmp124 ;
 8730  __u16 __cil_tmp125 ;
 8731  __u16 *__cil_tmp126 ;
 8732  __u16 __cil_tmp127 ;
 8733  int __cil_tmp128 ;
 8734  __u16 __cil_tmp129 ;
 8735  bool *__cil_tmp130 ;
 8736  bool __cil_tmp131 ;
 8737  char *__cil_tmp132 ;
 8738  __u16 *__cil_tmp133 ;
 8739  unsigned long __cil_tmp134 ;
 8740  unsigned long __cil_tmp135 ;
 8741  __u8 __cil_tmp136 ;
 8742  int __cil_tmp137 ;
 8743  __u16 __cil_tmp138 ;
 8744  bool *__cil_tmp139 ;
 8745  bool __cil_tmp140 ;
 8746  char *__cil_tmp141 ;
 8747  __u16 *__cil_tmp142 ;
 8748  __u16 *__cil_tmp143 ;
 8749  __u16 __cil_tmp144 ;
 8750  unsigned int __cil_tmp145 ;
 8751  unsigned int __cil_tmp146 ;
 8752  __u16 *__cil_tmp147 ;
 8753  __u16 *__cil_tmp148 ;
 8754  __u16 __cil_tmp149 ;
 8755  unsigned int __cil_tmp150 ;
 8756  unsigned int __cil_tmp151 ;
 8757  unsigned long __cil_tmp152 ;
 8758  unsigned long __cil_tmp153 ;
 8759  __u8 __cil_tmp154 ;
 8760  int __cil_tmp155 ;
 8761  __u16 __cil_tmp156 ;
 8762  __u16 *__cil_tmp157 ;
 8763  __u16 __cil_tmp158 ;
 8764  int __cil_tmp159 ;
 8765  __u16 __cil_tmp160 ;
 8766  bool *__cil_tmp161 ;
 8767  bool __cil_tmp162 ;
 8768  char *__cil_tmp163 ;
 8769  __u16 *__cil_tmp164 ;
 8770  __u16 __cil_tmp165 ;
 8771  __u16 *__cil_tmp166 ;
 8772  __u16 __cil_tmp167 ;
 8773  int __cil_tmp168 ;
 8774  __u16 __cil_tmp169 ;
 8775  bool *__cil_tmp170 ;
 8776  bool __cil_tmp171 ;
 8777  char *__cil_tmp172 ;
 8778  __u16 *__cil_tmp173 ;
 8779  __u16 __cil_tmp174 ;
 8780  __u16 *__cil_tmp175 ;
 8781  __u16 __cil_tmp176 ;
 8782  int __cil_tmp177 ;
 8783  __u16 __cil_tmp178 ;
 8784  bool *__cil_tmp179 ;
 8785  bool __cil_tmp180 ;
 8786  char *__cil_tmp181 ;
 8787  __u16 *__cil_tmp182 ;
 8788  __u16 __cil_tmp183 ;
 8789  __u16 *__cil_tmp184 ;
 8790  __u16 __cil_tmp185 ;
 8791  int __cil_tmp186 ;
 8792  __u16 __cil_tmp187 ;
 8793  bool *__cil_tmp188 ;
 8794  bool __cil_tmp189 ;
 8795  char *__cil_tmp190 ;
 8796  __u16 *__cil_tmp191 ;
 8797  __u16 __cil_tmp192 ;
 8798  __u16 *__cil_tmp193 ;
 8799  __u16 __cil_tmp194 ;
 8800  int __cil_tmp195 ;
 8801  __u16 __cil_tmp196 ;
 8802  unsigned long __cil_tmp197 ;
 8803  unsigned long __cil_tmp198 ;
 8804  __u16 *__cil_tmp199 ;
 8805  __u16 __cil_tmp200 ;
 8806  __u16 *__cil_tmp201 ;
 8807  __u16 __cil_tmp202 ;
 8808  __u16 *__cil_tmp203 ;
 8809  __u16 __cil_tmp204 ;
 8810  int __cil_tmp205 ;
 8811  __u16 __cil_tmp206 ;
 8812  unsigned long __cil_tmp207 ;
 8813  unsigned long __cil_tmp208 ;
 8814  __u16 *__cil_tmp209 ;
 8815  __u16 __cil_tmp210 ;
 8816  __u16 *__cil_tmp211 ;
 8817  __u16 __cil_tmp212 ;
 8818  unsigned long __cil_tmp213 ;
 8819  unsigned long __cil_tmp214 ;
 8820  __u16 *__cil_tmp215 ;
 8821  __u16 __cil_tmp216 ;
 8822  __u16 *__cil_tmp217 ;
 8823  __u16 *__cil_tmp218 ;
 8824  __u16 __cil_tmp219 ;
 8825  unsigned int __cil_tmp220 ;
 8826  unsigned int __cil_tmp221 ;
 8827  __u16 __cil_tmp222 ;
 8828  __u16 *__cil_tmp223 ;
 8829  __u16 __cil_tmp224 ;
 8830  int __cil_tmp225 ;
 8831  __u16 __cil_tmp226 ;
 8832  __u16 *__cil_tmp227 ;
 8833  __u16 __cil_tmp228 ;
 8834  __u16 *__cil_tmp229 ;
 8835  __u16 __cil_tmp230 ;
 8836  int __cil_tmp231 ;
 8837  __u16 __cil_tmp232 ;
 8838  __u16 *__cil_tmp233 ;
 8839  __u16 __cil_tmp234 ;
 8840  __u16 *__cil_tmp235 ;
 8841  __u16 __cil_tmp236 ;
 8842  int __cil_tmp237 ;
 8843  __u16 __cil_tmp238 ;
 8844  __u16 *__cil_tmp239 ;
 8845  __u16 __cil_tmp240 ;
 8846  __u16 *__cil_tmp241 ;
 8847  __u16 *__cil_tmp242 ;
 8848  __u16 __cil_tmp243 ;
 8849  unsigned int __cil_tmp244 ;
 8850  unsigned int __cil_tmp245 ;
 8851  __u16 __cil_tmp246 ;
 8852  __u16 *__cil_tmp247 ;
 8853  __u16 __cil_tmp248 ;
 8854  int __cil_tmp249 ;
 8855  __u16 __cil_tmp250 ;
 8856  unsigned long __cil_tmp251 ;
 8857  unsigned long __cil_tmp252 ;
 8858  __u16 *__cil_tmp253 ;
 8859  __u16 __cil_tmp254 ;
 8860  __u16 *__cil_tmp255 ;
 8861  unsigned long __cil_tmp256 ;
 8862  unsigned long __cil_tmp257 ;
 8863  __u8 __cil_tmp258 ;
 8864  int __cil_tmp259 ;
 8865  __u16 __cil_tmp260 ;
 8866  __u16 *__cil_tmp261 ;
 8867  __u16 *__cil_tmp262 ;
 8868  __u16 __cil_tmp263 ;
 8869  unsigned int __cil_tmp264 ;
 8870  unsigned int __cil_tmp265 ;
 8871  unsigned long __cil_tmp266 ;
 8872  unsigned long __cil_tmp267 ;
 8873  __u8 __cil_tmp268 ;
 8874  int __cil_tmp269 ;
 8875  __u16 __cil_tmp270 ;
 8876  __u16 *__cil_tmp271 ;
 8877  __u16 __cil_tmp272 ;
 8878  int __cil_tmp273 ;
 8879  __u16 __cil_tmp274 ;
 8880  __u16 *__cil_tmp275 ;
 8881  __u16 *__cil_tmp276 ;
 8882  __u16 __cil_tmp277 ;
 8883  unsigned int __cil_tmp278 ;
 8884  unsigned int __cil_tmp279 ;
 8885  unsigned long __cil_tmp280 ;
 8886  unsigned long __cil_tmp281 ;
 8887  __u8 __cil_tmp282 ;
 8888  int __cil_tmp283 ;
 8889  __u16 __cil_tmp284 ;
 8890  __u16 *__cil_tmp285 ;
 8891  __u16 __cil_tmp286 ;
 8892  int __cil_tmp287 ;
 8893  __u16 __cil_tmp288 ;
 8894  __u16 *__cil_tmp289 ;
 8895  __u16 __cil_tmp290 ;
 8896  __u16 *__cil_tmp291 ;
 8897  __u16 __cil_tmp292 ;
 8898  int __cil_tmp293 ;
 8899  __u16 __cil_tmp294 ;
 8900  __u16 *__cil_tmp295 ;
 8901  unsigned long __cil_tmp296 ;
 8902  unsigned long __cil_tmp297 ;
 8903  __u8 __cil_tmp298 ;
 8904  int __cil_tmp299 ;
 8905  __u16 __cil_tmp300 ;
 8906  __u16 *__cil_tmp301 ;
 8907  __u16 *__cil_tmp302 ;
 8908  __u16 __cil_tmp303 ;
 8909  unsigned int __cil_tmp304 ;
 8910  unsigned int __cil_tmp305 ;
 8911  unsigned long __cil_tmp306 ;
 8912  unsigned long __cil_tmp307 ;
 8913  __u8 __cil_tmp308 ;
 8914  int __cil_tmp309 ;
 8915  __u16 __cil_tmp310 ;
 8916  __u16 *__cil_tmp311 ;
 8917  __u16 __cil_tmp312 ;
 8918  int __cil_tmp313 ;
 8919  __u16 __cil_tmp314 ;
 8920  __u16 *__cil_tmp315 ;
 8921  unsigned long __cil_tmp316 ;
 8922  unsigned long __cil_tmp317 ;
 8923  __u8 __cil_tmp318 ;
 8924  int __cil_tmp319 ;
 8925  __u16 __cil_tmp320 ;
 8926  __u16 *__cil_tmp321 ;
 8927  __u16 *__cil_tmp322 ;
 8928  __u16 __cil_tmp323 ;
 8929  unsigned int __cil_tmp324 ;
 8930  unsigned int __cil_tmp325 ;
 8931  unsigned long __cil_tmp326 ;
 8932  unsigned long __cil_tmp327 ;
 8933  __u8 __cil_tmp328 ;
 8934  int __cil_tmp329 ;
 8935  __u16 __cil_tmp330 ;
 8936  __u16 *__cil_tmp331 ;
 8937  __u16 __cil_tmp332 ;
 8938  int __cil_tmp333 ;
 8939  __u16 __cil_tmp334 ;
 8940  unsigned long __cil_tmp335 ;
 8941  unsigned long __cil_tmp336 ;
 8942  char __cil_tmp337 ;
 8943  signed char __cil_tmp338 ;
 8944  int __cil_tmp339 ;
 8945  unsigned char *__cil_tmp340 ;
 8946  unsigned long __cil_tmp341 ;
 8947  unsigned long __cil_tmp342 ;
 8948  unsigned long __cil_tmp343 ;
 8949  unsigned long __cil_tmp344 ;
 8950  unsigned long __cil_tmp345 ;
 8951  struct usb_serial_port *__cil_tmp346 ;
 8952  unsigned long __cil_tmp347 ;
 8953  unsigned long __cil_tmp348 ;
 8954  unsigned char *__cil_tmp349 ;
 8955  unsigned long __cil_tmp350 ;
 8956  struct usb_device *__cil_tmp351 ;
 8957  unsigned long __cil_tmp352 ;
 8958  unsigned long __cil_tmp353 ;
 8959  unsigned long __cil_tmp354 ;
 8960  unsigned long __cil_tmp355 ;
 8961  struct usb_serial_port *__cil_tmp356 ;
 8962  unsigned long __cil_tmp357 ;
 8963  unsigned long __cil_tmp358 ;
 8964  __u8 __cil_tmp359 ;
 8965  unsigned int __cil_tmp360 ;
 8966  unsigned long __cil_tmp361 ;
 8967  unsigned long __cil_tmp362 ;
 8968  unsigned long __cil_tmp363 ;
 8969  unsigned long __cil_tmp364 ;
 8970  struct usb_serial_port *__cil_tmp365 ;
 8971  unsigned long __cil_tmp366 ;
 8972  unsigned long __cil_tmp367 ;
 8973  struct urb *__cil_tmp368 ;
 8974  struct usb_device *__cil_tmp369 ;
 8975  unsigned int __cil_tmp370 ;
 8976  unsigned long __cil_tmp371 ;
 8977  unsigned long __cil_tmp372 ;
 8978  unsigned long __cil_tmp373 ;
 8979  unsigned long __cil_tmp374 ;
 8980  struct usb_serial_port *__cil_tmp375 ;
 8981  unsigned long __cil_tmp376 ;
 8982  unsigned long __cil_tmp377 ;
 8983  unsigned char *__cil_tmp378 ;
 8984  void *__cil_tmp379 ;
 8985  unsigned long __cil_tmp380 ;
 8986  unsigned long __cil_tmp381 ;
 8987  unsigned long __cil_tmp382 ;
 8988  unsigned long __cil_tmp383 ;
 8989  struct usb_serial_port *__cil_tmp384 ;
 8990  unsigned long __cil_tmp385 ;
 8991  unsigned long __cil_tmp386 ;
 8992  struct urb *__cil_tmp387 ;
 8993  unsigned long __cil_tmp388 ;
 8994  unsigned long __cil_tmp389 ;
 8995  u32 __cil_tmp390 ;
 8996  int __cil_tmp391 ;
 8997  void *__cil_tmp392 ;
 8998  unsigned long __cil_tmp393 ;
 8999  unsigned long __cil_tmp394 ;
 9000  unsigned long __cil_tmp395 ;
 9001  unsigned long __cil_tmp396 ;
 9002  struct usb_serial_port *__cil_tmp397 ;
 9003  unsigned long __cil_tmp398 ;
 9004  unsigned long __cil_tmp399 ;
 9005  struct urb *__cil_tmp400 ;
 9006  unsigned long __cil_tmp401 ;
 9007  unsigned long __cil_tmp402 ;
 9008  int __cil_tmp403 ;
 9009  unsigned long __cil_tmp404 ;
 9010  unsigned long __cil_tmp405 ;
 9011  unsigned long __cil_tmp406 ;
 9012  unsigned long __cil_tmp407 ;
 9013  struct usb_serial_port *__cil_tmp408 ;
 9014  unsigned long __cil_tmp409 ;
 9015  unsigned long __cil_tmp410 ;
 9016  struct urb *__cil_tmp411 ;
 9017  unsigned long __cil_tmp412 ;
 9018  unsigned long __cil_tmp413 ;
 9019  struct device *__cil_tmp414 ;
 9020  struct device  const  *__cil_tmp415 ;
 9021  bool *__cil_tmp416 ;
 9022  bool __cil_tmp417 ;
 9023  char *__cil_tmp418 ;
 9024  unsigned long __cil_tmp419 ;
 9025  unsigned long __cil_tmp420 ;
 9026  unsigned char __cil_tmp421 ;
 9027  int __cil_tmp422 ;
 9028  bool *__cil_tmp423 ;
 9029  bool __cil_tmp424 ;
 9030  char *__cil_tmp425 ;
 9031  struct usb_serial *__cil_tmp426 ;
 9032  unsigned long __cil_tmp427 ;
 9033  unsigned long __cil_tmp428 ;
 9034  unsigned char __cil_tmp429 ;
 9035  int __cil_tmp430 ;
 9036  bool *__cil_tmp431 ;
 9037  bool __cil_tmp432 ;
 9038  char *__cil_tmp433 ;
 9039  unsigned long __cil_tmp434 ;
 9040  unsigned long __cil_tmp435 ;
 9041  __u8 __cil_tmp436 ;
 9042  int __cil_tmp437 ;
 9043  bool *__cil_tmp438 ;
 9044  bool __cil_tmp439 ;
 9045  char *__cil_tmp440 ;
 9046  unsigned long __cil_tmp441 ;
 9047  unsigned long __cil_tmp442 ;
 9048  __u8 __cil_tmp443 ;
 9049  int __cil_tmp444 ;
 9050  bool *__cil_tmp445 ;
 9051  bool __cil_tmp446 ;
 9052  char *__cil_tmp447 ;
 9053  unsigned long __cil_tmp448 ;
 9054  unsigned long __cil_tmp449 ;
 9055  __u8 __cil_tmp450 ;
 9056  int __cil_tmp451 ;
 9057  bool *__cil_tmp452 ;
 9058  bool __cil_tmp453 ;
 9059  char *__cil_tmp454 ;
 9060  int __cil_tmp455 ;
 9061  unsigned long __cil_tmp456 ;
 9062  unsigned long __cil_tmp457 ;
 9063  unsigned long __cil_tmp458 ;
 9064  unsigned long __cil_tmp459 ;
 9065  unsigned long __cil_tmp460 ;
 9066  unsigned long __cil_tmp461 ;
 9067  unsigned char __cil_tmp462 ;
 9068  unsigned int __cil_tmp463 ;
 9069  struct usb_serial *__cil_tmp464 ;
 9070  unsigned long __cil_tmp465 ;
 9071  unsigned long __cil_tmp466 ;
 9072  unsigned char __cil_tmp467 ;
 9073  int __cil_tmp468 ;
 9074  unsigned long __cil_tmp469 ;
 9075  unsigned long __cil_tmp470 ;
 9076  unsigned char __cil_tmp471 ;
 9077  int __cil_tmp472 ;
 9078  int __cil_tmp473 ;
 9079  struct usb_device *__cil_tmp474 ;
 9080  unsigned long __cil_tmp475 ;
 9081  unsigned long __cil_tmp476 ;
 9082  __u8 __cil_tmp477 ;
 9083  int __cil_tmp478 ;
 9084  int __cil_tmp479 ;
 9085  unsigned int __cil_tmp480 ;
 9086  unsigned long __cil_tmp481 ;
 9087  unsigned long __cil_tmp482 ;
 9088  struct urb *__cil_tmp483 ;
 9089  struct usb_device *__cil_tmp484 ;
 9090  unsigned int __cil_tmp485 ;
 9091  unsigned long __cil_tmp486 ;
 9092  unsigned long __cil_tmp487 ;
 9093  unsigned char *__cil_tmp488 ;
 9094  void *__cil_tmp489 ;
 9095  unsigned long __cil_tmp490 ;
 9096  unsigned long __cil_tmp491 ;
 9097  struct urb *__cil_tmp492 ;
 9098  unsigned long __cil_tmp493 ;
 9099  unsigned long __cil_tmp494 ;
 9100  u32 __cil_tmp495 ;
 9101  int __cil_tmp496 ;
 9102  void *__cil_tmp497 ;
 9103  struct usb_device *__cil_tmp498 ;
 9104  unsigned long __cil_tmp499 ;
 9105  unsigned long __cil_tmp500 ;
 9106  __u8 __cil_tmp501 ;
 9107  unsigned int __cil_tmp502 ;
 9108  unsigned long __cil_tmp503 ;
 9109  unsigned long __cil_tmp504 ;
 9110  struct urb *__cil_tmp505 ;
 9111  struct usb_device *__cil_tmp506 ;
 9112  unsigned int __cil_tmp507 ;
 9113  unsigned long __cil_tmp508 ;
 9114  unsigned long __cil_tmp509 ;
 9115  unsigned char *__cil_tmp510 ;
 9116  void *__cil_tmp511 ;
 9117  unsigned long __cil_tmp512 ;
 9118  unsigned long __cil_tmp513 ;
 9119  struct urb *__cil_tmp514 ;
 9120  unsigned long __cil_tmp515 ;
 9121  unsigned long __cil_tmp516 ;
 9122  u32 __cil_tmp517 ;
 9123  int __cil_tmp518 ;
 9124  void *__cil_tmp519 ;
 9125  struct usb_device *__cil_tmp520 ;
 9126  unsigned long __cil_tmp521 ;
 9127  unsigned long __cil_tmp522 ;
 9128  __u8 __cil_tmp523 ;
 9129  unsigned int __cil_tmp524 ;
 9130  unsigned long __cil_tmp525 ;
 9131  unsigned long __cil_tmp526 ;
 9132  struct urb *__cil_tmp527 ;
 9133  struct usb_device *__cil_tmp528 ;
 9134  unsigned int __cil_tmp529 ;
 9135  unsigned long __cil_tmp530 ;
 9136  unsigned long __cil_tmp531 ;
 9137  unsigned char *__cil_tmp532 ;
 9138  void *__cil_tmp533 ;
 9139  unsigned long __cil_tmp534 ;
 9140  unsigned long __cil_tmp535 ;
 9141  struct urb *__cil_tmp536 ;
 9142  unsigned long __cil_tmp537 ;
 9143  unsigned long __cil_tmp538 ;
 9144  u32 __cil_tmp539 ;
 9145  int __cil_tmp540 ;
 9146  void *__cil_tmp541 ;
 9147  bool *__cil_tmp542 ;
 9148  bool __cil_tmp543 ;
 9149  char *__cil_tmp544 ;
 9150  unsigned long __cil_tmp545 ;
 9151  unsigned long __cil_tmp546 ;
 9152  __u8 __cil_tmp547 ;
 9153  int __cil_tmp548 ;
 9154  unsigned long __cil_tmp549 ;
 9155  unsigned long __cil_tmp550 ;
 9156  unsigned long __cil_tmp551 ;
 9157  unsigned long __cil_tmp552 ;
 9158  struct urb *__cil_tmp553 ;
 9159  unsigned long __cil_tmp554 ;
 9160  unsigned long __cil_tmp555 ;
 9161  struct device *__cil_tmp556 ;
 9162  struct device  const  *__cil_tmp557 ;
 9163  unsigned long __cil_tmp558 ;
 9164  unsigned long __cil_tmp559 ;
 9165  unsigned long __cil_tmp560 ;
 9166  unsigned long __cil_tmp561 ;
 9167  wait_queue_head_t *__cil_tmp562 ;
 9168  unsigned long __cil_tmp563 ;
 9169  unsigned long __cil_tmp564 ;
 9170  wait_queue_head_t *__cil_tmp565 ;
 9171  unsigned long __cil_tmp566 ;
 9172  unsigned long __cil_tmp567 ;
 9173  struct async_icount *__cil_tmp568 ;
 9174  void *__cil_tmp569 ;
 9175  unsigned long __cil_tmp570 ;
 9176  unsigned long __cil_tmp571 ;
 9177  unsigned long __cil_tmp572 ;
 9178  unsigned long __cil_tmp573 ;
 9179  unsigned long __cil_tmp574 ;
 9180  unsigned long __cil_tmp575 ;
 9181  unsigned long __cil_tmp576 ;
 9182  unsigned long __cil_tmp577 ;
 9183  unsigned long __cil_tmp578 ;
 9184  unsigned long __cil_tmp579 ;
 9185  bool *__cil_tmp580 ;
 9186  bool __cil_tmp581 ;
 9187  char *__cil_tmp582 ;
 9188  bool *__cil_tmp583 ;
 9189  bool __cil_tmp584 ;
 9190  char *__cil_tmp585 ;
 9191
 9192  {
 9193  {
 9194#line 896
 9195  __cil_tmp18 = & debug;
 9196#line 896
 9197  __cil_tmp19 = *__cil_tmp18;
 9198#line 896
 9199  if ((int )__cil_tmp19) {
 9200    {
 9201#line 896
 9202    __cil_tmp20 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9203#line 896
 9204    printk("<7>%s: %s enter\n", __cil_tmp20, "mos7840_open");
 9205    }
 9206  } else {
 9207
 9208  }
 9209  }
 9210  {
 9211#line 898
 9212  tmp = mos7840_port_paranoia_check(port, "mos7840_open");
 9213  }
 9214#line 898
 9215  if (tmp != 0) {
 9216    {
 9217#line 899
 9218    __cil_tmp21 = & debug;
 9219#line 899
 9220    __cil_tmp22 = *__cil_tmp21;
 9221#line 899
 9222    if ((int )__cil_tmp22) {
 9223      {
 9224#line 899
 9225      __cil_tmp23 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9226#line 899
 9227      __cil_tmp24 = (char *)"Port Paranoia failed";
 9228#line 899
 9229      printk("<7>%s: %s\n", __cil_tmp23, __cil_tmp24);
 9230      }
 9231    } else {
 9232
 9233    }
 9234    }
 9235#line 900
 9236    return (-19);
 9237  } else {
 9238
 9239  }
 9240  {
 9241#line 903
 9242  serial = *((struct usb_serial **)port);
 9243#line 905
 9244  tmp___0 = mos7840_serial_paranoia_check(serial, "mos7840_open");
 9245  }
 9246#line 905
 9247  if (tmp___0 != 0) {
 9248    {
 9249#line 906
 9250    __cil_tmp25 = & debug;
 9251#line 906
 9252    __cil_tmp26 = *__cil_tmp25;
 9253#line 906
 9254    if ((int )__cil_tmp26) {
 9255      {
 9256#line 906
 9257      __cil_tmp27 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9258#line 906
 9259      __cil_tmp28 = (char *)"Serial Paranoia failed";
 9260#line 906
 9261      printk("<7>%s: %s\n", __cil_tmp27, __cil_tmp28);
 9262      }
 9263    } else {
 9264
 9265    }
 9266    }
 9267#line 907
 9268    return (-19);
 9269  } else {
 9270
 9271  }
 9272  {
 9273#line 910
 9274  mos7840_port = mos7840_get_port_private(port);
 9275#line 911
 9276  __cil_tmp29 = 0 * 8UL;
 9277#line 911
 9278  __cil_tmp30 = 32 + __cil_tmp29;
 9279#line 911
 9280  __cil_tmp31 = (unsigned long )serial;
 9281#line 911
 9282  __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
 9283#line 911
 9284  __cil_tmp33 = *((struct usb_serial_port **)__cil_tmp32);
 9285#line 911
 9286  port0 = mos7840_get_port_private(__cil_tmp33);
 9287  }
 9288  {
 9289#line 913
 9290  __cil_tmp34 = (struct moschip_port *)0;
 9291#line 913
 9292  __cil_tmp35 = (unsigned long )__cil_tmp34;
 9293#line 913
 9294  __cil_tmp36 = (unsigned long )mos7840_port;
 9295#line 913
 9296  if (__cil_tmp36 == __cil_tmp35) {
 9297#line 914
 9298    return (-19);
 9299  } else {
 9300    {
 9301#line 913
 9302    __cil_tmp37 = (struct moschip_port *)0;
 9303#line 913
 9304    __cil_tmp38 = (unsigned long )__cil_tmp37;
 9305#line 913
 9306    __cil_tmp39 = (unsigned long )port0;
 9307#line 913
 9308    if (__cil_tmp39 == __cil_tmp38) {
 9309#line 914
 9310      return (-19);
 9311    } else {
 9312
 9313    }
 9314    }
 9315  }
 9316  }
 9317  {
 9318#line 916
 9319  __cil_tmp40 = *((struct usb_device **)serial);
 9320#line 916
 9321  __cil_tmp41 = (unsigned long )port;
 9322#line 916
 9323  __cil_tmp42 = __cil_tmp41 + 968;
 9324#line 916
 9325  __cil_tmp43 = *((struct urb **)__cil_tmp42);
 9326#line 916
 9327  __cil_tmp44 = (unsigned long )__cil_tmp43;
 9328#line 916
 9329  __cil_tmp45 = __cil_tmp44 + 88;
 9330#line 916
 9331  __cil_tmp46 = *((unsigned int *)__cil_tmp45);
 9332#line 916
 9333  __cil_tmp47 = (int )__cil_tmp46;
 9334#line 916
 9335  usb_clear_halt(__cil_tmp40, __cil_tmp47);
 9336#line 917
 9337  __cil_tmp48 = *((struct usb_device **)serial);
 9338#line 917
 9339  __cil_tmp49 = (unsigned long )port;
 9340#line 917
 9341  __cil_tmp50 = __cil_tmp49 + 896;
 9342#line 917
 9343  __cil_tmp51 = *((struct urb **)__cil_tmp50);
 9344#line 917
 9345  __cil_tmp52 = (unsigned long )__cil_tmp51;
 9346#line 917
 9347  __cil_tmp53 = __cil_tmp52 + 88;
 9348#line 917
 9349  __cil_tmp54 = *((unsigned int *)__cil_tmp53);
 9350#line 917
 9351  __cil_tmp55 = (int )__cil_tmp54;
 9352#line 917
 9353  usb_clear_halt(__cil_tmp48, __cil_tmp55);
 9354#line 918
 9355  __cil_tmp56 = (unsigned long )port0;
 9356#line 918
 9357  __cil_tmp57 = __cil_tmp56 + 35;
 9358#line 918
 9359  __cil_tmp58 = (unsigned long )port0;
 9360#line 918
 9361  __cil_tmp59 = __cil_tmp58 + 35;
 9362#line 918
 9363  __cil_tmp60 = *((char *)__cil_tmp59);
 9364#line 918
 9365  __cil_tmp61 = (int )__cil_tmp60;
 9366#line 918
 9367  __cil_tmp62 = __cil_tmp61 + 1;
 9368#line 918
 9369  *((char *)__cil_tmp57) = (char )__cil_tmp62;
 9370#line 921
 9371  j = 0;
 9372  }
 9373#line 921
 9374  goto ldv_28042;
 9375  ldv_28041: 
 9376  {
 9377#line 922
 9378  urb = ldv_usb_alloc_urb_23(0, 208U);
 9379#line 923
 9380  __cil_tmp63 = j * 8UL;
 9381#line 923
 9382  __cil_tmp64 = 384 + __cil_tmp63;
 9383#line 923
 9384  __cil_tmp65 = (unsigned long )mos7840_port;
 9385#line 923
 9386  __cil_tmp66 = __cil_tmp65 + __cil_tmp64;
 9387#line 923
 9388  *((struct urb **)__cil_tmp66) = urb;
 9389  }
 9390  {
 9391#line 925
 9392  __cil_tmp67 = (struct urb *)0;
 9393#line 925
 9394  __cil_tmp68 = (unsigned long )__cil_tmp67;
 9395#line 925
 9396  __cil_tmp69 = (unsigned long )urb;
 9397#line 925
 9398  if (__cil_tmp69 == __cil_tmp68) {
 9399    {
 9400#line 926
 9401    __cil_tmp70 = (unsigned long )port;
 9402#line 926
 9403    __cil_tmp71 = __cil_tmp70 + 1240;
 9404#line 926
 9405    __cil_tmp72 = (struct device *)__cil_tmp71;
 9406#line 926
 9407    __cil_tmp73 = (struct device  const  *)__cil_tmp72;
 9408#line 926
 9409    dev_err(__cil_tmp73, "No more urbs???\n");
 9410    }
 9411#line 927
 9412    goto ldv_28040;
 9413  } else {
 9414
 9415  }
 9416  }
 9417  {
 9418#line 930
 9419  __cil_tmp74 = (unsigned long )urb;
 9420#line 930
 9421  __cil_tmp75 = __cil_tmp74 + 104;
 9422#line 930
 9423  *((void **)__cil_tmp75) = kmalloc(32UL, 208U);
 9424  }
 9425  {
 9426#line 932
 9427  __cil_tmp76 = (void *)0;
 9428#line 932
 9429  __cil_tmp77 = (unsigned long )__cil_tmp76;
 9430#line 932
 9431  __cil_tmp78 = (unsigned long )urb;
 9432#line 932
 9433  __cil_tmp79 = __cil_tmp78 + 104;
 9434#line 932
 9435  __cil_tmp80 = *((void **)__cil_tmp79);
 9436#line 932
 9437  __cil_tmp81 = (unsigned long )__cil_tmp80;
 9438#line 932
 9439  if (__cil_tmp81 == __cil_tmp77) {
 9440    {
 9441#line 933
 9442    usb_free_urb(urb);
 9443#line 934
 9444    __cil_tmp82 = j * 8UL;
 9445#line 934
 9446    __cil_tmp83 = 384 + __cil_tmp82;
 9447#line 934
 9448    __cil_tmp84 = (unsigned long )mos7840_port;
 9449#line 934
 9450    __cil_tmp85 = __cil_tmp84 + __cil_tmp83;
 9451#line 934
 9452    *((struct urb **)__cil_tmp85) = (struct urb *)0;
 9453#line 935
 9454    __cil_tmp86 = (unsigned long )port;
 9455#line 935
 9456    __cil_tmp87 = __cil_tmp86 + 1240;
 9457#line 935
 9458    __cil_tmp88 = (struct device *)__cil_tmp87;
 9459#line 935
 9460    __cil_tmp89 = (struct device  const  *)__cil_tmp88;
 9461#line 935
 9462    dev_err(__cil_tmp89, "%s-out of memory for urb buffers.\n", "mos7840_open");
 9463    }
 9464#line 938
 9465    goto ldv_28040;
 9466  } else {
 9467
 9468  }
 9469  }
 9470  ldv_28040: 
 9471#line 921
 9472  j = j + 1;
 9473  ldv_28042: ;
 9474#line 921
 9475  if (j <= 15) {
 9476#line 922
 9477    goto ldv_28041;
 9478  } else {
 9479#line 924
 9480    goto ldv_28043;
 9481  }
 9482  ldv_28043: 
 9483  {
 9484#line 956
 9485  __cil_tmp90 = & Data;
 9486#line 956
 9487  *__cil_tmp90 = (__u16 )0U;
 9488#line 957
 9489  __cil_tmp91 = (unsigned long )mos7840_port;
 9490#line 957
 9491  __cil_tmp92 = __cil_tmp91 + 272;
 9492#line 957
 9493  __cil_tmp93 = *((__u8 *)__cil_tmp92);
 9494#line 957
 9495  __cil_tmp94 = (int )__cil_tmp93;
 9496#line 957
 9497  __cil_tmp95 = (__u16 )__cil_tmp94;
 9498#line 957
 9499  status = mos7840_get_reg_sync(port, __cil_tmp95, & Data);
 9500  }
 9501#line 958
 9502  if (status < 0) {
 9503    {
 9504#line 959
 9505    __cil_tmp96 = & debug;
 9506#line 959
 9507    __cil_tmp97 = *__cil_tmp96;
 9508#line 959
 9509    if ((int )__cil_tmp97) {
 9510      {
 9511#line 959
 9512      __cil_tmp98 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9513#line 959
 9514      printk("<7>%s: Reading Spreg failed\n", __cil_tmp98);
 9515      }
 9516    } else {
 9517
 9518    }
 9519    }
 9520#line 960
 9521    return (-1);
 9522  } else {
 9523
 9524  }
 9525  {
 9526#line 962
 9527  __cil_tmp99 = & Data;
 9528#line 962
 9529  __cil_tmp100 = & Data;
 9530#line 962
 9531  __cil_tmp101 = *__cil_tmp100;
 9532#line 962
 9533  __cil_tmp102 = (unsigned int )__cil_tmp101;
 9534#line 962
 9535  __cil_tmp103 = __cil_tmp102 | 128U;
 9536#line 962
 9537  *__cil_tmp99 = (__u16 )__cil_tmp103;
 9538#line 963
 9539  __cil_tmp104 = (unsigned long )mos7840_port;
 9540#line 963
 9541  __cil_tmp105 = __cil_tmp104 + 272;
 9542#line 963
 9543  __cil_tmp106 = *((__u8 *)__cil_tmp105);
 9544#line 963
 9545  __cil_tmp107 = (int )__cil_tmp106;
 9546#line 963
 9547  __cil_tmp108 = (__u16 )__cil_tmp107;
 9548#line 963
 9549  __cil_tmp109 = & Data;
 9550#line 963
 9551  __cil_tmp110 = *__cil_tmp109;
 9552#line 963
 9553  __cil_tmp111 = (int )__cil_tmp110;
 9554#line 963
 9555  __cil_tmp112 = (__u16 )__cil_tmp111;
 9556#line 963
 9557  status = mos7840_set_reg_sync(port, __cil_tmp108, __cil_tmp112);
 9558  }
 9559#line 964
 9560  if (status < 0) {
 9561    {
 9562#line 965
 9563    __cil_tmp113 = & debug;
 9564#line 965
 9565    __cil_tmp114 = *__cil_tmp113;
 9566#line 965
 9567    if ((int )__cil_tmp114) {
 9568      {
 9569#line 965
 9570      __cil_tmp115 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9571#line 965
 9572      printk("<7>%s: writing Spreg failed\n", __cil_tmp115);
 9573      }
 9574    } else {
 9575
 9576    }
 9577    }
 9578#line 966
 9579    return (-1);
 9580  } else {
 9581
 9582  }
 9583  {
 9584#line 969
 9585  __cil_tmp116 = & Data;
 9586#line 969
 9587  __cil_tmp117 = & Data;
 9588#line 969
 9589  __cil_tmp118 = *__cil_tmp117;
 9590#line 969
 9591  __cil_tmp119 = (unsigned int )__cil_tmp118;
 9592#line 969
 9593  __cil_tmp120 = __cil_tmp119 & 65407U;
 9594#line 969
 9595  *__cil_tmp116 = (__u16 )__cil_tmp120;
 9596#line 970
 9597  __cil_tmp121 = (unsigned long )mos7840_port;
 9598#line 970
 9599  __cil_tmp122 = __cil_tmp121 + 272;
 9600#line 970
 9601  __cil_tmp123 = *((__u8 *)__cil_tmp122);
 9602#line 970
 9603  __cil_tmp124 = (int )__cil_tmp123;
 9604#line 970
 9605  __cil_tmp125 = (__u16 )__cil_tmp124;
 9606#line 970
 9607  __cil_tmp126 = & Data;
 9608#line 970
 9609  __cil_tmp127 = *__cil_tmp126;
 9610#line 970
 9611  __cil_tmp128 = (int )__cil_tmp127;
 9612#line 970
 9613  __cil_tmp129 = (__u16 )__cil_tmp128;
 9614#line 970
 9615  status = mos7840_set_reg_sync(port, __cil_tmp125, __cil_tmp129);
 9616  }
 9617#line 971
 9618  if (status < 0) {
 9619    {
 9620#line 972
 9621    __cil_tmp130 = & debug;
 9622#line 972
 9623    __cil_tmp131 = *__cil_tmp130;
 9624#line 972
 9625    if ((int )__cil_tmp131) {
 9626      {
 9627#line 972
 9628      __cil_tmp132 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9629#line 972
 9630      printk("<7>%s: writing Spreg failed\n", __cil_tmp132);
 9631      }
 9632    } else {
 9633
 9634    }
 9635    }
 9636#line 973
 9637    return (-1);
 9638  } else {
 9639
 9640  }
 9641  {
 9642#line 977
 9643  __cil_tmp133 = & Data;
 9644#line 977
 9645  *__cil_tmp133 = (__u16 )0U;
 9646#line 978
 9647  __cil_tmp134 = (unsigned long )mos7840_port;
 9648#line 978
 9649  __cil_tmp135 = __cil_tmp134 + 273;
 9650#line 978
 9651  __cil_tmp136 = *((__u8 *)__cil_tmp135);
 9652#line 978
 9653  __cil_tmp137 = (int )__cil_tmp136;
 9654#line 978
 9655  __cil_tmp138 = (__u16 )__cil_tmp137;
 9656#line 978
 9657  status = mos7840_get_reg_sync(port, __cil_tmp138, & Data);
 9658  }
 9659#line 980
 9660  if (status < 0) {
 9661    {
 9662#line 981
 9663    __cil_tmp139 = & debug;
 9664#line 981
 9665    __cil_tmp140 = *__cil_tmp139;
 9666#line 981
 9667    if ((int )__cil_tmp140) {
 9668      {
 9669#line 981
 9670      __cil_tmp141 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9671#line 981
 9672      printk("<7>%s: Reading Controlreg failed\n", __cil_tmp141);
 9673      }
 9674    } else {
 9675
 9676    }
 9677    }
 9678#line 982
 9679    return (-1);
 9680  } else {
 9681
 9682  }
 9683  {
 9684#line 984
 9685  __cil_tmp142 = & Data;
 9686#line 984
 9687  __cil_tmp143 = & Data;
 9688#line 984
 9689  __cil_tmp144 = *__cil_tmp143;
 9690#line 984
 9691  __cil_tmp145 = (unsigned int )__cil_tmp144;
 9692#line 984
 9693  __cil_tmp146 = __cil_tmp145 | 8U;
 9694#line 984
 9695  *__cil_tmp142 = (__u16 )__cil_tmp146;
 9696#line 985
 9697  __cil_tmp147 = & Data;
 9698#line 985
 9699  __cil_tmp148 = & Data;
 9700#line 985
 9701  __cil_tmp149 = *__cil_tmp148;
 9702#line 985
 9703  __cil_tmp150 = (unsigned int )__cil_tmp149;
 9704#line 985
 9705  __cil_tmp151 = __cil_tmp150 | 32U;
 9706#line 985
 9707  *__cil_tmp147 = (__u16 )__cil_tmp151;
 9708#line 986
 9709  __cil_tmp152 = (unsigned long )mos7840_port;
 9710#line 986
 9711  __cil_tmp153 = __cil_tmp152 + 273;
 9712#line 986
 9713  __cil_tmp154 = *((__u8 *)__cil_tmp153);
 9714#line 986
 9715  __cil_tmp155 = (int )__cil_tmp154;
 9716#line 986
 9717  __cil_tmp156 = (__u16 )__cil_tmp155;
 9718#line 986
 9719  __cil_tmp157 = & Data;
 9720#line 986
 9721  __cil_tmp158 = *__cil_tmp157;
 9722#line 986
 9723  __cil_tmp159 = (int )__cil_tmp158;
 9724#line 986
 9725  __cil_tmp160 = (__u16 )__cil_tmp159;
 9726#line 986
 9727  status = mos7840_set_reg_sync(port, __cil_tmp156, __cil_tmp160);
 9728  }
 9729#line 988
 9730  if (status < 0) {
 9731    {
 9732#line 989
 9733    __cil_tmp161 = & debug;
 9734#line 989
 9735    __cil_tmp162 = *__cil_tmp161;
 9736#line 989
 9737    if ((int )__cil_tmp162) {
 9738      {
 9739#line 989
 9740      __cil_tmp163 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9741#line 989
 9742      printk("<7>%s: writing Controlreg failed\n", __cil_tmp163);
 9743      }
 9744    } else {
 9745
 9746    }
 9747    }
 9748#line 990
 9749    return (-1);
 9750  } else {
 9751
 9752  }
 9753  {
 9754#line 997
 9755  __cil_tmp164 = & Data;
 9756#line 997
 9757  *__cil_tmp164 = (__u16 )0U;
 9758#line 998
 9759  __cil_tmp165 = (__u16 )1;
 9760#line 998
 9761  __cil_tmp166 = & Data;
 9762#line 998
 9763  __cil_tmp167 = *__cil_tmp166;
 9764#line 998
 9765  __cil_tmp168 = (int )__cil_tmp167;
 9766#line 998
 9767  __cil_tmp169 = (__u16 )__cil_tmp168;
 9768#line 998
 9769  status = mos7840_set_uart_reg(port, __cil_tmp165, __cil_tmp169);
 9770  }
 9771#line 999
 9772  if (status < 0) {
 9773    {
 9774#line 1000
 9775    __cil_tmp170 = & debug;
 9776#line 1000
 9777    __cil_tmp171 = *__cil_tmp170;
 9778#line 1000
 9779    if ((int )__cil_tmp171) {
 9780      {
 9781#line 1000
 9782      __cil_tmp172 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9783#line 1000
 9784      printk("<7>%s: disabling interrupts failed\n", __cil_tmp172);
 9785      }
 9786    } else {
 9787
 9788    }
 9789    }
 9790#line 1001
 9791    return (-1);
 9792  } else {
 9793
 9794  }
 9795  {
 9796#line 1004
 9797  __cil_tmp173 = & Data;
 9798#line 1004
 9799  *__cil_tmp173 = (__u16 )0U;
 9800#line 1005
 9801  __cil_tmp174 = (__u16 )2;
 9802#line 1005
 9803  __cil_tmp175 = & Data;
 9804#line 1005
 9805  __cil_tmp176 = *__cil_tmp175;
 9806#line 1005
 9807  __cil_tmp177 = (int )__cil_tmp176;
 9808#line 1005
 9809  __cil_tmp178 = (__u16 )__cil_tmp177;
 9810#line 1005
 9811  status = mos7840_set_uart_reg(port, __cil_tmp174, __cil_tmp178);
 9812  }
 9813#line 1006
 9814  if (status < 0) {
 9815    {
 9816#line 1007
 9817    __cil_tmp179 = & debug;
 9818#line 1007
 9819    __cil_tmp180 = *__cil_tmp179;
 9820#line 1007
 9821    if ((int )__cil_tmp180) {
 9822      {
 9823#line 1007
 9824      __cil_tmp181 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9825#line 1007
 9826      printk("<7>%s: Writing FIFO_CONTROL_REGISTER  failed\n", __cil_tmp181);
 9827      }
 9828    } else {
 9829
 9830    }
 9831    }
 9832#line 1008
 9833    return (-1);
 9834  } else {
 9835
 9836  }
 9837  {
 9838#line 1011
 9839  __cil_tmp182 = & Data;
 9840#line 1011
 9841  *__cil_tmp182 = (__u16 )207U;
 9842#line 1012
 9843  __cil_tmp183 = (__u16 )2;
 9844#line 1012
 9845  __cil_tmp184 = & Data;
 9846#line 1012
 9847  __cil_tmp185 = *__cil_tmp184;
 9848#line 1012
 9849  __cil_tmp186 = (int )__cil_tmp185;
 9850#line 1012
 9851  __cil_tmp187 = (__u16 )__cil_tmp186;
 9852#line 1012
 9853  status = mos7840_set_uart_reg(port, __cil_tmp183, __cil_tmp187);
 9854  }
 9855#line 1013
 9856  if (status < 0) {
 9857    {
 9858#line 1014
 9859    __cil_tmp188 = & debug;
 9860#line 1014
 9861    __cil_tmp189 = *__cil_tmp188;
 9862#line 1014
 9863    if ((int )__cil_tmp189) {
 9864      {
 9865#line 1014
 9866      __cil_tmp190 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
 9867#line 1014
 9868      printk("<7>%s: Writing FIFO_CONTROL_REGISTER  failed\n", __cil_tmp190);
 9869      }
 9870    } else {
 9871
 9872    }
 9873    }
 9874#line 1015
 9875    return (-1);
 9876  } else {
 9877
 9878  }
 9879  {
 9880#line 1018
 9881  __cil_tmp191 = & Data;
 9882#line 1018
 9883  *__cil_tmp191 = (__u16 )3U;
 9884#line 1019
 9885  __cil_tmp192 = (__u16 )3;
 9886#line 1019
 9887  __cil_tmp193 = & Data;
 9888#line 1019
 9889  __cil_tmp194 = *__cil_tmp193;
 9890#line 1019
 9891  __cil_tmp195 = (int )__cil_tmp194;
 9892#line 1019
 9893  __cil_tmp196 = (__u16 )__cil_tmp195;
 9894#line 1019
 9895  status = mos7840_set_uart_reg(port, __cil_tmp192, __cil_tmp196);
 9896#line 1020
 9897  __cil_tmp197 = (unsigned long )mos7840_port;
 9898#line 1020
 9899  __cil_tmp198 = __cil_tmp197 + 32;
 9900#line 1020
 9901  __cil_tmp199 = & Data;
 9902#line 1020
 9903  __cil_tmp200 = *__cil_tmp199;
 9904#line 1020
 9905  *((__u8 *)__cil_tmp198) = (__u8 )__cil_tmp200;
 9906#line 1022
 9907  __cil_tmp201 = & Data;
 9908#line 1022
 9909  *__cil_tmp201 = (__u16 )11U;
 9910#line 1023
 9911  __cil_tmp202 = (__u16 )4;
 9912#line 1023
 9913  __cil_tmp203 = & Data;
 9914#line 1023
 9915  __cil_tmp204 = *__cil_tmp203;
 9916#line 1023
 9917  __cil_tmp205 = (int )__cil_tmp204;
 9918#line 1023
 9919  __cil_tmp206 = (__u16 )__cil_tmp205;
 9920#line 1023
 9921  status = mos7840_set_uart_reg(port, __cil_tmp202, __cil_tmp206);
 9922#line 1024
 9923  __cil_tmp207 = (unsigned long )mos7840_port;
 9924#line 1024
 9925  __cil_tmp208 = __cil_tmp207 + 33;
 9926#line 1024
 9927  __cil_tmp209 = & Data;
 9928#line 1024
 9929  __cil_tmp210 = *__cil_tmp209;
 9930#line 1024
 9931  *((__u8 *)__cil_tmp208) = (__u8 )__cil_tmp210;
 9932#line 1026
 9933  __cil_tmp211 = & Data;
 9934#line 1026
 9935  *__cil_tmp211 = (__u16 )0U;
 9936#line 1027
 9937  __cil_tmp212 = (__u16 )3;
 9938#line 1027
 9939  status = mos7840_get_uart_reg(port, __cil_tmp212, & Data);
 9940#line 1028
 9941  __cil_tmp213 = (unsigned long )mos7840_port;
 9942#line 1028
 9943  __cil_tmp214 = __cil_tmp213 + 32;
 9944#line 1028
 9945  __cil_tmp215 = & Data;
 9946#line 1028
 9947  __cil_tmp216 = *__cil_tmp215;
 9948#line 1028
 9949  *((__u8 *)__cil_tmp214) = (__u8 )__cil_tmp216;
 9950#line 1030
 9951  __cil_tmp217 = & Data;
 9952#line 1030
 9953  __cil_tmp218 = & Data;
 9954#line 1030
 9955  __cil_tmp219 = *__cil_tmp218;
 9956#line 1030
 9957  __cil_tmp220 = (unsigned int )__cil_tmp219;
 9958#line 1030
 9959  __cil_tmp221 = __cil_tmp220 | 128U;
 9960#line 1030
 9961  *__cil_tmp217 = (__u16 )__cil_tmp221;
 9962#line 1031
 9963  __cil_tmp222 = (__u16 )3;
 9964#line 1031
 9965  __cil_tmp223 = & Data;
 9966#line 1031
 9967  __cil_tmp224 = *__cil_tmp223;
 9968#line 1031
 9969  __cil_tmp225 = (int )__cil_tmp224;
 9970#line 1031
 9971  __cil_tmp226 = (__u16 )__cil_tmp225;
 9972#line 1031
 9973  status = mos7840_set_uart_reg(port, __cil_tmp222, __cil_tmp226);
 9974#line 1033
 9975  __cil_tmp227 = & Data;
 9976#line 1033
 9977  *__cil_tmp227 = (__u16 )12U;
 9978#line 1034
 9979  __cil_tmp228 = (__u16 )0;
 9980#line 1034
 9981  __cil_tmp229 = & Data;
 9982#line 1034
 9983  __cil_tmp230 = *__cil_tmp229;
 9984#line 1034
 9985  __cil_tmp231 = (int )__cil_tmp230;
 9986#line 1034
 9987  __cil_tmp232 = (__u16 )__cil_tmp231;
 9988#line 1034
 9989  status = mos7840_set_uart_reg(port, __cil_tmp228, __cil_tmp232);
 9990#line 1036
 9991  __cil_tmp233 = & Data;
 9992#line 1036
 9993  *__cil_tmp233 = (__u16 )0U;
 9994#line 1037
 9995  __cil_tmp234 = (__u16 )1;
 9996#line 1037
 9997  __cil_tmp235 = & Data;
 9998#line 1037
 9999  __cil_tmp236 = *__cil_tmp235;
10000#line 1037
10001  __cil_tmp237 = (int )__cil_tmp236;
10002#line 1037
10003  __cil_tmp238 = (__u16 )__cil_tmp237;
10004#line 1037
10005  status = mos7840_set_uart_reg(port, __cil_tmp234, __cil_tmp238);
10006#line 1039
10007  __cil_tmp239 = & Data;
10008#line 1039
10009  *__cil_tmp239 = (__u16 )0U;
10010#line 1040
10011  __cil_tmp240 = (__u16 )3;
10012#line 1040
10013  status = mos7840_get_uart_reg(port, __cil_tmp240, & Data);
10014#line 1042
10015  __cil_tmp241 = & Data;
10016#line 1042
10017  __cil_tmp242 = & Data;
10018#line 1042
10019  __cil_tmp243 = *__cil_tmp242;
10020#line 1042
10021  __cil_tmp244 = (unsigned int )__cil_tmp243;
10022#line 1042
10023  __cil_tmp245 = __cil_tmp244 & 65407U;
10024#line 1042
10025  *__cil_tmp241 = (__u16 )__cil_tmp245;
10026#line 1043
10027  __cil_tmp246 = (__u16 )3;
10028#line 1043
10029  __cil_tmp247 = & Data;
10030#line 1043
10031  __cil_tmp248 = *__cil_tmp247;
10032#line 1043
10033  __cil_tmp249 = (int )__cil_tmp248;
10034#line 1043
10035  __cil_tmp250 = (__u16 )__cil_tmp249;
10036#line 1043
10037  status = mos7840_set_uart_reg(port, __cil_tmp246, __cil_tmp250);
10038#line 1044
10039  __cil_tmp251 = (unsigned long )mos7840_port;
10040#line 1044
10041  __cil_tmp252 = __cil_tmp251 + 32;
10042#line 1044
10043  __cil_tmp253 = & Data;
10044#line 1044
10045  __cil_tmp254 = *__cil_tmp253;
10046#line 1044
10047  *((__u8 *)__cil_tmp252) = (__u8 )__cil_tmp254;
10048#line 1047
10049  __cil_tmp255 = & Data;
10050#line 1047
10051  *__cil_tmp255 = (__u16 )0U;
10052#line 1048
10053  __cil_tmp256 = (unsigned long )mos7840_port;
10054#line 1048
10055  __cil_tmp257 = __cil_tmp256 + 272;
10056#line 1048
10057  __cil_tmp258 = *((__u8 *)__cil_tmp257);
10058#line 1048
10059  __cil_tmp259 = (int )__cil_tmp258;
10060#line 1048
10061  __cil_tmp260 = (__u16 )__cil_tmp259;
10062#line 1048
10063  status = mos7840_get_reg_sync(port, __cil_tmp260, & Data);
10064#line 1050
10065  __cil_tmp261 = & Data;
10066#line 1050
10067  __cil_tmp262 = & Data;
10068#line 1050
10069  __cil_tmp263 = *__cil_tmp262;
10070#line 1050
10071  __cil_tmp264 = (unsigned int )__cil_tmp263;
10072#line 1050
10073  __cil_tmp265 = __cil_tmp264 | 12U;
10074#line 1050
10075  *__cil_tmp261 = (__u16 )__cil_tmp265;
10076#line 1051
10077  __cil_tmp266 = (unsigned long )mos7840_port;
10078#line 1051
10079  __cil_tmp267 = __cil_tmp266 + 272;
10080#line 1051
10081  __cil_tmp268 = *((__u8 *)__cil_tmp267);
10082#line 1051
10083  __cil_tmp269 = (int )__cil_tmp268;
10084#line 1051
10085  __cil_tmp270 = (__u16 )__cil_tmp269;
10086#line 1051
10087  __cil_tmp271 = & Data;
10088#line 1051
10089  __cil_tmp272 = *__cil_tmp271;
10090#line 1051
10091  __cil_tmp273 = (int )__cil_tmp272;
10092#line 1051
10093  __cil_tmp274 = (__u16 )__cil_tmp273;
10094#line 1051
10095  status = mos7840_set_reg_sync(port, __cil_tmp270, __cil_tmp274);
10096#line 1053
10097  __cil_tmp275 = & Data;
10098#line 1053
10099  __cil_tmp276 = & Data;
10100#line 1053
10101  __cil_tmp277 = *__cil_tmp276;
10102#line 1053
10103  __cil_tmp278 = (unsigned int )__cil_tmp277;
10104#line 1053
10105  __cil_tmp279 = __cil_tmp278 & 65523U;
10106#line 1053
10107  *__cil_tmp275 = (__u16 )__cil_tmp279;
10108#line 1054
10109  __cil_tmp280 = (unsigned long )mos7840_port;
10110#line 1054
10111  __cil_tmp281 = __cil_tmp280 + 272;
10112#line 1054
10113  __cil_tmp282 = *((__u8 *)__cil_tmp281);
10114#line 1054
10115  __cil_tmp283 = (int )__cil_tmp282;
10116#line 1054
10117  __cil_tmp284 = (__u16 )__cil_tmp283;
10118#line 1054
10119  __cil_tmp285 = & Data;
10120#line 1054
10121  __cil_tmp286 = *__cil_tmp285;
10122#line 1054
10123  __cil_tmp287 = (int )__cil_tmp286;
10124#line 1054
10125  __cil_tmp288 = (__u16 )__cil_tmp287;
10126#line 1054
10127  status = mos7840_set_reg_sync(port, __cil_tmp284, __cil_tmp288);
10128#line 1056
10129  __cil_tmp289 = & Data;
10130#line 1056
10131  *__cil_tmp289 = (__u16 )12U;
10132#line 1057
10133  __cil_tmp290 = (__u16 )1;
10134#line 1057
10135  __cil_tmp291 = & Data;
10136#line 1057
10137  __cil_tmp292 = *__cil_tmp291;
10138#line 1057
10139  __cil_tmp293 = (int )__cil_tmp292;
10140#line 1057
10141  __cil_tmp294 = (__u16 )__cil_tmp293;
10142#line 1057
10143  status = mos7840_set_uart_reg(port, __cil_tmp290, __cil_tmp294);
10144#line 1060
10145  __cil_tmp295 = & Data;
10146#line 1060
10147  *__cil_tmp295 = (__u16 )0U;
10148#line 1061
10149  __cil_tmp296 = (unsigned long )mos7840_port;
10150#line 1061
10151  __cil_tmp297 = __cil_tmp296 + 273;
10152#line 1061
10153  __cil_tmp298 = *((__u8 *)__cil_tmp297);
10154#line 1061
10155  __cil_tmp299 = (int )__cil_tmp298;
10156#line 1061
10157  __cil_tmp300 = (__u16 )__cil_tmp299;
10158#line 1061
10159  status = mos7840_get_reg_sync(port, __cil_tmp300, & Data);
10160#line 1063
10161  __cil_tmp301 = & Data;
10162#line 1063
10163  __cil_tmp302 = & Data;
10164#line 1063
10165  __cil_tmp303 = *__cil_tmp302;
10166#line 1063
10167  __cil_tmp304 = (unsigned int )__cil_tmp303;
10168#line 1063
10169  __cil_tmp305 = __cil_tmp304 & 65503U;
10170#line 1063
10171  *__cil_tmp301 = (__u16 )__cil_tmp305;
10172#line 1064
10173  __cil_tmp306 = (unsigned long )mos7840_port;
10174#line 1064
10175  __cil_tmp307 = __cil_tmp306 + 273;
10176#line 1064
10177  __cil_tmp308 = *((__u8 *)__cil_tmp307);
10178#line 1064
10179  __cil_tmp309 = (int )__cil_tmp308;
10180#line 1064
10181  __cil_tmp310 = (__u16 )__cil_tmp309;
10182#line 1064
10183  __cil_tmp311 = & Data;
10184#line 1064
10185  __cil_tmp312 = *__cil_tmp311;
10186#line 1064
10187  __cil_tmp313 = (int )__cil_tmp312;
10188#line 1064
10189  __cil_tmp314 = (__u16 )__cil_tmp313;
10190#line 1064
10191  status = mos7840_set_reg_sync(port, __cil_tmp310, __cil_tmp314);
10192#line 1068
10193  __cil_tmp315 = & Data;
10194#line 1068
10195  *__cil_tmp315 = (__u16 )0U;
10196#line 1069
10197  __cil_tmp316 = (unsigned long )mos7840_port;
10198#line 1069
10199  __cil_tmp317 = __cil_tmp316 + 273;
10200#line 1069
10201  __cil_tmp318 = *((__u8 *)__cil_tmp317);
10202#line 1069
10203  __cil_tmp319 = (int )__cil_tmp318;
10204#line 1069
10205  __cil_tmp320 = (__u16 )__cil_tmp319;
10206#line 1069
10207  status = mos7840_get_reg_sync(port, __cil_tmp320, & Data);
10208#line 1071
10209  __cil_tmp321 = & Data;
10210#line 1071
10211  __cil_tmp322 = & Data;
10212#line 1071
10213  __cil_tmp323 = *__cil_tmp322;
10214#line 1071
10215  __cil_tmp324 = (unsigned int )__cil_tmp323;
10216#line 1071
10217  __cil_tmp325 = __cil_tmp324 | 16U;
10218#line 1071
10219  *__cil_tmp321 = (__u16 )__cil_tmp325;
10220#line 1072
10221  __cil_tmp326 = (unsigned long )mos7840_port;
10222#line 1072
10223  __cil_tmp327 = __cil_tmp326 + 273;
10224#line 1072
10225  __cil_tmp328 = *((__u8 *)__cil_tmp327);
10226#line 1072
10227  __cil_tmp329 = (int )__cil_tmp328;
10228#line 1072
10229  __cil_tmp330 = (__u16 )__cil_tmp329;
10230#line 1072
10231  __cil_tmp331 = & Data;
10232#line 1072
10233  __cil_tmp332 = *__cil_tmp331;
10234#line 1072
10235  __cil_tmp333 = (int )__cil_tmp332;
10236#line 1072
10237  __cil_tmp334 = (__u16 )__cil_tmp333;
10238#line 1072
10239  status = mos7840_set_reg_sync(port, __cil_tmp330, __cil_tmp334);
10240  }
10241  {
10242#line 1078
10243  __cil_tmp335 = (unsigned long )port0;
10244#line 1078
10245  __cil_tmp336 = __cil_tmp335 + 35;
10246#line 1078
10247  __cil_tmp337 = *((char *)__cil_tmp336);
10248#line 1078
10249  __cil_tmp338 = (signed char )__cil_tmp337;
10250#line 1078
10251  __cil_tmp339 = (int )__cil_tmp338;
10252#line 1078
10253  if (__cil_tmp339 == 1) {
10254    {
10255#line 1079
10256    __cil_tmp340 = (unsigned char *)0;
10257#line 1079
10258    __cil_tmp341 = (unsigned long )__cil_tmp340;
10259#line 1079
10260    __cil_tmp342 = 0 * 8UL;
10261#line 1079
10262    __cil_tmp343 = 32 + __cil_tmp342;
10263#line 1079
10264    __cil_tmp344 = (unsigned long )serial;
10265#line 1079
10266    __cil_tmp345 = __cil_tmp344 + __cil_tmp343;
10267#line 1079
10268    __cil_tmp346 = *((struct usb_serial_port **)__cil_tmp345);
10269#line 1079
10270    __cil_tmp347 = (unsigned long )__cil_tmp346;
10271#line 1079
10272    __cil_tmp348 = __cil_tmp347 + 824;
10273#line 1079
10274    __cil_tmp349 = *((unsigned char **)__cil_tmp348);
10275#line 1079
10276    __cil_tmp350 = (unsigned long )__cil_tmp349;
10277#line 1079
10278    if (__cil_tmp350 == __cil_tmp341) {
10279      {
10280#line 1081
10281      __cil_tmp351 = *((struct usb_device **)serial);
10282#line 1081
10283      __cil_tmp352 = 0 * 8UL;
10284#line 1081
10285      __cil_tmp353 = 32 + __cil_tmp352;
10286#line 1081
10287      __cil_tmp354 = (unsigned long )serial;
10288#line 1081
10289      __cil_tmp355 = __cil_tmp354 + __cil_tmp353;
10290#line 1081
10291      __cil_tmp356 = *((struct usb_serial_port **)__cil_tmp355);
10292#line 1081
10293      __cil_tmp357 = (unsigned long )__cil_tmp356;
10294#line 1081
10295      __cil_tmp358 = __cil_tmp357 + 840;
10296#line 1081
10297      __cil_tmp359 = *((__u8 *)__cil_tmp358);
10298#line 1081
10299      __cil_tmp360 = (unsigned int )__cil_tmp359;
10300#line 1081
10301      tmp___1 = __create_pipe(__cil_tmp351, __cil_tmp360);
10302#line 1081
10303      __cil_tmp361 = 0 * 8UL;
10304#line 1081
10305      __cil_tmp362 = 32 + __cil_tmp361;
10306#line 1081
10307      __cil_tmp363 = (unsigned long )serial;
10308#line 1081
10309      __cil_tmp364 = __cil_tmp363 + __cil_tmp362;
10310#line 1081
10311      __cil_tmp365 = *((struct usb_serial_port **)__cil_tmp364);
10312#line 1081
10313      __cil_tmp366 = (unsigned long )__cil_tmp365;
10314#line 1081
10315      __cil_tmp367 = __cil_tmp366 + 832;
10316#line 1081
10317      __cil_tmp368 = *((struct urb **)__cil_tmp367);
10318#line 1081
10319      __cil_tmp369 = *((struct usb_device **)serial);
10320#line 1081
10321      __cil_tmp370 = tmp___1 | 1073741952U;
10322#line 1081
10323      __cil_tmp371 = 0 * 8UL;
10324#line 1081
10325      __cil_tmp372 = 32 + __cil_tmp371;
10326#line 1081
10327      __cil_tmp373 = (unsigned long )serial;
10328#line 1081
10329      __cil_tmp374 = __cil_tmp373 + __cil_tmp372;
10330#line 1081
10331      __cil_tmp375 = *((struct usb_serial_port **)__cil_tmp374);
10332#line 1081
10333      __cil_tmp376 = (unsigned long )__cil_tmp375;
10334#line 1081
10335      __cil_tmp377 = __cil_tmp376 + 824;
10336#line 1081
10337      __cil_tmp378 = *((unsigned char **)__cil_tmp377);
10338#line 1081
10339      __cil_tmp379 = (void *)__cil_tmp378;
10340#line 1081
10341      __cil_tmp380 = 0 * 8UL;
10342#line 1081
10343      __cil_tmp381 = 32 + __cil_tmp380;
10344#line 1081
10345      __cil_tmp382 = (unsigned long )serial;
10346#line 1081
10347      __cil_tmp383 = __cil_tmp382 + __cil_tmp381;
10348#line 1081
10349      __cil_tmp384 = *((struct usb_serial_port **)__cil_tmp383);
10350#line 1081
10351      __cil_tmp385 = (unsigned long )__cil_tmp384;
10352#line 1081
10353      __cil_tmp386 = __cil_tmp385 + 832;
10354#line 1081
10355      __cil_tmp387 = *((struct urb **)__cil_tmp386);
10356#line 1081
10357      __cil_tmp388 = (unsigned long )__cil_tmp387;
10358#line 1081
10359      __cil_tmp389 = __cil_tmp388 + 136;
10360#line 1081
10361      __cil_tmp390 = *((u32 *)__cil_tmp389);
10362#line 1081
10363      __cil_tmp391 = (int )__cil_tmp390;
10364#line 1081
10365      __cil_tmp392 = (void *)serial;
10366#line 1081
10367      __cil_tmp393 = 0 * 8UL;
10368#line 1081
10369      __cil_tmp394 = 32 + __cil_tmp393;
10370#line 1081
10371      __cil_tmp395 = (unsigned long )serial;
10372#line 1081
10373      __cil_tmp396 = __cil_tmp395 + __cil_tmp394;
10374#line 1081
10375      __cil_tmp397 = *((struct usb_serial_port **)__cil_tmp396);
10376#line 1081
10377      __cil_tmp398 = (unsigned long )__cil_tmp397;
10378#line 1081
10379      __cil_tmp399 = __cil_tmp398 + 832;
10380#line 1081
10381      __cil_tmp400 = *((struct urb **)__cil_tmp399);
10382#line 1081
10383      __cil_tmp401 = (unsigned long )__cil_tmp400;
10384#line 1081
10385      __cil_tmp402 = __cil_tmp401 + 168;
10386#line 1081
10387      __cil_tmp403 = *((int *)__cil_tmp402);
10388#line 1081
10389      usb_fill_int_urb(__cil_tmp368, __cil_tmp369, __cil_tmp370, __cil_tmp379, __cil_tmp391,
10390                       & mos7840_interrupt_callback, __cil_tmp392, __cil_tmp403);
10391#line 1095
10392      __cil_tmp404 = 0 * 8UL;
10393#line 1095
10394      __cil_tmp405 = 32 + __cil_tmp404;
10395#line 1095
10396      __cil_tmp406 = (unsigned long )serial;
10397#line 1095
10398      __cil_tmp407 = __cil_tmp406 + __cil_tmp405;
10399#line 1095
10400      __cil_tmp408 = *((struct usb_serial_port **)__cil_tmp407);
10401#line 1095
10402      __cil_tmp409 = (unsigned long )__cil_tmp408;
10403#line 1095
10404      __cil_tmp410 = __cil_tmp409 + 832;
10405#line 1095
10406      __cil_tmp411 = *((struct urb **)__cil_tmp410);
10407#line 1095
10408      response = ldv_usb_submit_urb_24(__cil_tmp411, 208U);
10409      }
10410#line 1098
10411      if (response != 0) {
10412        {
10413#line 1099
10414        __cil_tmp412 = (unsigned long )port;
10415#line 1099
10416        __cil_tmp413 = __cil_tmp412 + 1240;
10417#line 1099
10418        __cil_tmp414 = (struct device *)__cil_tmp413;
10419#line 1099
10420        __cil_tmp415 = (struct device  const  *)__cil_tmp414;
10421#line 1099
10422        dev_err(__cil_tmp415, "%s - Error %d submitting interrupt urb\n", "mos7840_open",
10423                response);
10424        }
10425      } else {
10426
10427      }
10428    } else {
10429
10430    }
10431    }
10432  } else {
10433
10434  }
10435  }
10436  {
10437#line 1111
10438  __cil_tmp416 = & debug;
10439#line 1111
10440  __cil_tmp417 = *__cil_tmp416;
10441#line 1111
10442  if ((int )__cil_tmp417) {
10443    {
10444#line 1111
10445    __cil_tmp418 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10446#line 1111
10447    __cil_tmp419 = (unsigned long )port;
10448#line 1111
10449    __cil_tmp420 = __cil_tmp419 + 816;
10450#line 1111
10451    __cil_tmp421 = *((unsigned char *)__cil_tmp420);
10452#line 1111
10453    __cil_tmp422 = (int )__cil_tmp421;
10454#line 1111
10455    printk("<7>%s: port number is %d\n", __cil_tmp418, __cil_tmp422);
10456    }
10457  } else {
10458
10459  }
10460  }
10461  {
10462#line 1112
10463  __cil_tmp423 = & debug;
10464#line 1112
10465  __cil_tmp424 = *__cil_tmp423;
10466#line 1112
10467  if ((int )__cil_tmp424) {
10468    {
10469#line 1112
10470    __cil_tmp425 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10471#line 1112
10472    __cil_tmp426 = *((struct usb_serial **)port);
10473#line 1112
10474    __cil_tmp427 = (unsigned long )__cil_tmp426;
10475#line 1112
10476    __cil_tmp428 = __cil_tmp427 + 25;
10477#line 1112
10478    __cil_tmp429 = *((unsigned char *)__cil_tmp428);
10479#line 1112
10480    __cil_tmp430 = (int )__cil_tmp429;
10481#line 1112
10482    printk("<7>%s: serial number is %d\n", __cil_tmp425, __cil_tmp430);
10483    }
10484  } else {
10485
10486  }
10487  }
10488  {
10489#line 1113
10490  __cil_tmp431 = & debug;
10491#line 1113
10492  __cil_tmp432 = *__cil_tmp431;
10493#line 1113
10494  if ((int )__cil_tmp432) {
10495    {
10496#line 1113
10497    __cil_tmp433 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10498#line 1113
10499    __cil_tmp434 = (unsigned long )port;
10500#line 1113
10501    __cil_tmp435 = __cil_tmp434 + 904;
10502#line 1113
10503    __cil_tmp436 = *((__u8 *)__cil_tmp435);
10504#line 1113
10505    __cil_tmp437 = (int )__cil_tmp436;
10506#line 1113
10507    printk("<7>%s: Bulkin endpoint is %d\n", __cil_tmp433, __cil_tmp437);
10508    }
10509  } else {
10510
10511  }
10512  }
10513  {
10514#line 1114
10515  __cil_tmp438 = & debug;
10516#line 1114
10517  __cil_tmp439 = *__cil_tmp438;
10518#line 1114
10519  if ((int )__cil_tmp439) {
10520    {
10521#line 1114
10522    __cil_tmp440 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10523#line 1114
10524    __cil_tmp441 = (unsigned long )port;
10525#line 1114
10526    __cil_tmp442 = __cil_tmp441 + 1040;
10527#line 1114
10528    __cil_tmp443 = *((__u8 *)__cil_tmp442);
10529#line 1114
10530    __cil_tmp444 = (int )__cil_tmp443;
10531#line 1114
10532    printk("<7>%s: BulkOut endpoint is %d\n", __cil_tmp440, __cil_tmp444);
10533    }
10534  } else {
10535
10536  }
10537  }
10538  {
10539#line 1115
10540  __cil_tmp445 = & debug;
10541#line 1115
10542  __cil_tmp446 = *__cil_tmp445;
10543#line 1115
10544  if ((int )__cil_tmp446) {
10545    {
10546#line 1115
10547    __cil_tmp447 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10548#line 1115
10549    __cil_tmp448 = (unsigned long )port;
10550#line 1115
10551    __cil_tmp449 = __cil_tmp448 + 840;
10552#line 1115
10553    __cil_tmp450 = *((__u8 *)__cil_tmp449);
10554#line 1115
10555    __cil_tmp451 = (int )__cil_tmp450;
10556#line 1115
10557    printk("<7>%s: Interrupt endpoint is %d\n", __cil_tmp447, __cil_tmp451);
10558    }
10559  } else {
10560
10561  }
10562  }
10563  {
10564#line 1116
10565  __cil_tmp452 = & debug;
10566#line 1116
10567  __cil_tmp453 = *__cil_tmp452;
10568#line 1116
10569  if ((int )__cil_tmp453) {
10570    {
10571#line 1116
10572    __cil_tmp454 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10573#line 1116
10574    __cil_tmp455 = *((int *)mos7840_port);
10575#line 1116
10576    printk("<7>%s: port\'s number in the device is %d\n", __cil_tmp454, __cil_tmp455);
10577    }
10578  } else {
10579
10580  }
10581  }
10582#line 1117
10583  __cil_tmp456 = (unsigned long )mos7840_port;
10584#line 1117
10585  __cil_tmp457 = __cil_tmp456 + 16;
10586#line 1117
10587  __cil_tmp458 = (unsigned long )port;
10588#line 1117
10589  __cil_tmp459 = __cil_tmp458 + 896;
10590#line 1117
10591  *((struct urb **)__cil_tmp457) = *((struct urb **)__cil_tmp459);
10592  {
10593#line 1120
10594  __cil_tmp460 = (unsigned long )serial;
10595#line 1120
10596  __cil_tmp461 = __cil_tmp460 + 26;
10597#line 1120
10598  __cil_tmp462 = *((unsigned char *)__cil_tmp461);
10599#line 1120
10600  __cil_tmp463 = (unsigned int )__cil_tmp462;
10601#line 1120
10602  if (__cil_tmp463 == 2U) {
10603    {
10604#line 1120
10605    __cil_tmp464 = *((struct usb_serial **)port);
10606#line 1120
10607    __cil_tmp465 = (unsigned long )__cil_tmp464;
10608#line 1120
10609    __cil_tmp466 = __cil_tmp465 + 25;
10610#line 1120
10611    __cil_tmp467 = *((unsigned char *)__cil_tmp466);
10612#line 1120
10613    __cil_tmp468 = (int )__cil_tmp467;
10614#line 1120
10615    __cil_tmp469 = (unsigned long )port;
10616#line 1120
10617    __cil_tmp470 = __cil_tmp469 + 816;
10618#line 1120
10619    __cil_tmp471 = *((unsigned char *)__cil_tmp470);
10620#line 1120
10621    __cil_tmp472 = (int )__cil_tmp471;
10622#line 1120
10623    __cil_tmp473 = __cil_tmp472 - __cil_tmp468;
10624#line 1120
10625    if (__cil_tmp473 & 1) {
10626      {
10627#line 1123
10628      __cil_tmp474 = *((struct usb_device **)serial);
10629#line 1123
10630      __cil_tmp475 = (unsigned long )port;
10631#line 1123
10632      __cil_tmp476 = __cil_tmp475 + 904;
10633#line 1123
10634      __cil_tmp477 = *((__u8 *)__cil_tmp476);
10635#line 1123
10636      __cil_tmp478 = (int )__cil_tmp477;
10637#line 1123
10638      __cil_tmp479 = __cil_tmp478 + 2;
10639#line 1123
10640      __cil_tmp480 = (unsigned int )__cil_tmp479;
10641#line 1123
10642      tmp___2 = __create_pipe(__cil_tmp474, __cil_tmp480);
10643#line 1123
10644      __cil_tmp481 = (unsigned long )mos7840_port;
10645#line 1123
10646      __cil_tmp482 = __cil_tmp481 + 16;
10647#line 1123
10648      __cil_tmp483 = *((struct urb **)__cil_tmp482);
10649#line 1123
10650      __cil_tmp484 = *((struct usb_device **)serial);
10651#line 1123
10652      __cil_tmp485 = tmp___2 | 3221225600U;
10653#line 1123
10654      __cil_tmp486 = (unsigned long )port;
10655#line 1123
10656      __cil_tmp487 = __cil_tmp486 + 880;
10657#line 1123
10658      __cil_tmp488 = *((unsigned char **)__cil_tmp487);
10659#line 1123
10660      __cil_tmp489 = (void *)__cil_tmp488;
10661#line 1123
10662      __cil_tmp490 = (unsigned long )mos7840_port;
10663#line 1123
10664      __cil_tmp491 = __cil_tmp490 + 16;
10665#line 1123
10666      __cil_tmp492 = *((struct urb **)__cil_tmp491);
10667#line 1123
10668      __cil_tmp493 = (unsigned long )__cil_tmp492;
10669#line 1123
10670      __cil_tmp494 = __cil_tmp493 + 136;
10671#line 1123
10672      __cil_tmp495 = *((u32 *)__cil_tmp494);
10673#line 1123
10674      __cil_tmp496 = (int )__cil_tmp495;
10675#line 1123
10676      __cil_tmp497 = (void *)mos7840_port;
10677#line 1123
10678      usb_fill_bulk_urb(__cil_tmp483, __cil_tmp484, __cil_tmp485, __cil_tmp489, __cil_tmp496,
10679                        & mos7840_bulk_in_callback, __cil_tmp497);
10680      }
10681    } else {
10682      {
10683#line 1131
10684      __cil_tmp498 = *((struct usb_device **)serial);
10685#line 1131
10686      __cil_tmp499 = (unsigned long )port;
10687#line 1131
10688      __cil_tmp500 = __cil_tmp499 + 904;
10689#line 1131
10690      __cil_tmp501 = *((__u8 *)__cil_tmp500);
10691#line 1131
10692      __cil_tmp502 = (unsigned int )__cil_tmp501;
10693#line 1131
10694      tmp___3 = __create_pipe(__cil_tmp498, __cil_tmp502);
10695#line 1131
10696      __cil_tmp503 = (unsigned long )mos7840_port;
10697#line 1131
10698      __cil_tmp504 = __cil_tmp503 + 16;
10699#line 1131
10700      __cil_tmp505 = *((struct urb **)__cil_tmp504);
10701#line 1131
10702      __cil_tmp506 = *((struct usb_device **)serial);
10703#line 1131
10704      __cil_tmp507 = tmp___3 | 3221225600U;
10705#line 1131
10706      __cil_tmp508 = (unsigned long )port;
10707#line 1131
10708      __cil_tmp509 = __cil_tmp508 + 880;
10709#line 1131
10710      __cil_tmp510 = *((unsigned char **)__cil_tmp509);
10711#line 1131
10712      __cil_tmp511 = (void *)__cil_tmp510;
10713#line 1131
10714      __cil_tmp512 = (unsigned long )mos7840_port;
10715#line 1131
10716      __cil_tmp513 = __cil_tmp512 + 16;
10717#line 1131
10718      __cil_tmp514 = *((struct urb **)__cil_tmp513);
10719#line 1131
10720      __cil_tmp515 = (unsigned long )__cil_tmp514;
10721#line 1131
10722      __cil_tmp516 = __cil_tmp515 + 136;
10723#line 1131
10724      __cil_tmp517 = *((u32 *)__cil_tmp516);
10725#line 1131
10726      __cil_tmp518 = (int )__cil_tmp517;
10727#line 1131
10728      __cil_tmp519 = (void *)mos7840_port;
10729#line 1131
10730      usb_fill_bulk_urb(__cil_tmp505, __cil_tmp506, __cil_tmp507, __cil_tmp511, __cil_tmp518,
10731                        & mos7840_bulk_in_callback, __cil_tmp519);
10732      }
10733    }
10734    }
10735  } else {
10736    {
10737#line 1131
10738    __cil_tmp520 = *((struct usb_device **)serial);
10739#line 1131
10740    __cil_tmp521 = (unsigned long )port;
10741#line 1131
10742    __cil_tmp522 = __cil_tmp521 + 904;
10743#line 1131
10744    __cil_tmp523 = *((__u8 *)__cil_tmp522);
10745#line 1131
10746    __cil_tmp524 = (unsigned int )__cil_tmp523;
10747#line 1131
10748    tmp___3 = __create_pipe(__cil_tmp520, __cil_tmp524);
10749#line 1131
10750    __cil_tmp525 = (unsigned long )mos7840_port;
10751#line 1131
10752    __cil_tmp526 = __cil_tmp525 + 16;
10753#line 1131
10754    __cil_tmp527 = *((struct urb **)__cil_tmp526);
10755#line 1131
10756    __cil_tmp528 = *((struct usb_device **)serial);
10757#line 1131
10758    __cil_tmp529 = tmp___3 | 3221225600U;
10759#line 1131
10760    __cil_tmp530 = (unsigned long )port;
10761#line 1131
10762    __cil_tmp531 = __cil_tmp530 + 880;
10763#line 1131
10764    __cil_tmp532 = *((unsigned char **)__cil_tmp531);
10765#line 1131
10766    __cil_tmp533 = (void *)__cil_tmp532;
10767#line 1131
10768    __cil_tmp534 = (unsigned long )mos7840_port;
10769#line 1131
10770    __cil_tmp535 = __cil_tmp534 + 16;
10771#line 1131
10772    __cil_tmp536 = *((struct urb **)__cil_tmp535);
10773#line 1131
10774    __cil_tmp537 = (unsigned long )__cil_tmp536;
10775#line 1131
10776    __cil_tmp538 = __cil_tmp537 + 136;
10777#line 1131
10778    __cil_tmp539 = *((u32 *)__cil_tmp538);
10779#line 1131
10780    __cil_tmp540 = (int )__cil_tmp539;
10781#line 1131
10782    __cil_tmp541 = (void *)mos7840_port;
10783#line 1131
10784    usb_fill_bulk_urb(__cil_tmp527, __cil_tmp528, __cil_tmp529, __cil_tmp533, __cil_tmp540,
10785                      & mos7840_bulk_in_callback, __cil_tmp541);
10786    }
10787  }
10788  }
10789  {
10790#line 1140
10791  __cil_tmp542 = & debug;
10792#line 1140
10793  __cil_tmp543 = *__cil_tmp542;
10794#line 1140
10795  if ((int )__cil_tmp543) {
10796    {
10797#line 1140
10798    __cil_tmp544 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10799#line 1140
10800    __cil_tmp545 = (unsigned long )port;
10801#line 1140
10802    __cil_tmp546 = __cil_tmp545 + 904;
10803#line 1140
10804    __cil_tmp547 = *((__u8 *)__cil_tmp546);
10805#line 1140
10806    __cil_tmp548 = (int )__cil_tmp547;
10807#line 1140
10808    printk("<7>%s: mos7840_open: bulkin endpoint is %d\n", __cil_tmp544, __cil_tmp548);
10809    }
10810  } else {
10811
10812  }
10813  }
10814  {
10815#line 1142
10816  __cil_tmp549 = (unsigned long )mos7840_port;
10817#line 1142
10818  __cil_tmp550 = __cil_tmp549 + 528;
10819#line 1142
10820  *((bool *)__cil_tmp550) = (bool )1;
10821#line 1143
10822  __cil_tmp551 = (unsigned long )mos7840_port;
10823#line 1143
10824  __cil_tmp552 = __cil_tmp551 + 16;
10825#line 1143
10826  __cil_tmp553 = *((struct urb **)__cil_tmp552);
10827#line 1143
10828  response = ldv_usb_submit_urb_25(__cil_tmp553, 208U);
10829  }
10830#line 1144
10831  if (response != 0) {
10832    {
10833#line 1145
10834    __cil_tmp554 = (unsigned long )port;
10835#line 1145
10836    __cil_tmp555 = __cil_tmp554 + 1240;
10837#line 1145
10838    __cil_tmp556 = (struct device *)__cil_tmp555;
10839#line 1145
10840    __cil_tmp557 = (struct device  const  *)__cil_tmp556;
10841#line 1145
10842    dev_err(__cil_tmp557, "%s - Error %d submitting control urb\n", "mos7840_open",
10843            response);
10844#line 1147
10845    __cil_tmp558 = (unsigned long )mos7840_port;
10846#line 1147
10847    __cil_tmp559 = __cil_tmp558 + 528;
10848#line 1147
10849    *((bool *)__cil_tmp559) = (bool )0;
10850    }
10851  } else {
10852
10853  }
10854  {
10855#line 1151
10856  __cil_tmp560 = (unsigned long )mos7840_port;
10857#line 1151
10858  __cil_tmp561 = __cil_tmp560 + 40;
10859#line 1151
10860  __cil_tmp562 = (wait_queue_head_t *)__cil_tmp561;
10861#line 1151
10862  __init_waitqueue_head(__cil_tmp562, "&mos7840_port->wait_chase", & __key);
10863#line 1152
10864  __cil_tmp563 = (unsigned long )mos7840_port;
10865#line 1152
10866  __cil_tmp564 = __cil_tmp563 + 128;
10867#line 1152
10868  __cil_tmp565 = (wait_queue_head_t *)__cil_tmp564;
10869#line 1152
10870  __init_waitqueue_head(__cil_tmp565, "&mos7840_port->delta_msr_wait", & __key___0);
10871#line 1155
10872  __cil_tmp566 = (unsigned long )mos7840_port;
10873#line 1155
10874  __cil_tmp567 = __cil_tmp566 + 220;
10875#line 1155
10876  __cil_tmp568 = (struct async_icount *)__cil_tmp567;
10877#line 1155
10878  __cil_tmp569 = (void *)__cil_tmp568;
10879#line 1155
10880  memset(__cil_tmp569, 0, 44UL);
10881#line 1159
10882  __cil_tmp570 = (unsigned long )mos7840_port;
10883#line 1159
10884  __cil_tmp571 = __cil_tmp570 + 33;
10885#line 1159
10886  *((__u8 *)__cil_tmp571) = (__u8 )8U;
10887#line 1161
10888  __cil_tmp572 = (unsigned long )mos7840_port;
10889#line 1161
10890  __cil_tmp573 = __cil_tmp572 + 34;
10891#line 1161
10892  *((char *)__cil_tmp573) = (char)1;
10893#line 1163
10894  __cil_tmp574 = 220 + 16;
10895#line 1163
10896  __cil_tmp575 = (unsigned long )mos7840_port;
10897#line 1163
10898  __cil_tmp576 = __cil_tmp575 + __cil_tmp574;
10899#line 1163
10900  *((__u32 *)__cil_tmp576) = 0U;
10901#line 1164
10902  __cil_tmp577 = 220 + 20;
10903#line 1164
10904  __cil_tmp578 = (unsigned long )mos7840_port;
10905#line 1164
10906  __cil_tmp579 = __cil_tmp578 + __cil_tmp577;
10907#line 1164
10908  *((__u32 *)__cil_tmp579) = 0U;
10909  }
10910  {
10911#line 1166
10912  __cil_tmp580 = & debug;
10913#line 1166
10914  __cil_tmp581 = *__cil_tmp580;
10915#line 1166
10916  if ((int )__cil_tmp581) {
10917    {
10918#line 1166
10919    __cil_tmp582 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10920#line 1166
10921    printk("<7>%s: usb_serial serial:%p       mos7840_port:%p\n      usb_serial_port port:%p\n",
10922           __cil_tmp582, serial, mos7840_port, port);
10923    }
10924  } else {
10925
10926  }
10927  }
10928  {
10929#line 1169
10930  __cil_tmp583 = & debug;
10931#line 1169
10932  __cil_tmp584 = *__cil_tmp583;
10933#line 1169
10934  if ((int )__cil_tmp584) {
10935    {
10936#line 1169
10937    __cil_tmp585 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
10938#line 1169
10939    printk("<7>%s: %s leave\n", __cil_tmp585, "mos7840_open");
10940    }
10941  } else {
10942
10943  }
10944  }
10945#line 1171
10946  return (0);
10947}
10948}
10949#line 1185 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
10950static int mos7840_chars_in_buffer(struct tty_struct *tty ) 
10951{ struct usb_serial_port *port ;
10952  int i ;
10953  int chars ;
10954  unsigned long flags ;
10955  struct moschip_port *mos7840_port ;
10956  int tmp ;
10957  unsigned long __cil_tmp8 ;
10958  unsigned long __cil_tmp9 ;
10959  void *__cil_tmp10 ;
10960  bool *__cil_tmp11 ;
10961  bool __cil_tmp12 ;
10962  char *__cil_tmp13 ;
10963  char *__cil_tmp14 ;
10964  bool *__cil_tmp15 ;
10965  bool __cil_tmp16 ;
10966  char *__cil_tmp17 ;
10967  char *__cil_tmp18 ;
10968  struct moschip_port *__cil_tmp19 ;
10969  unsigned long __cil_tmp20 ;
10970  unsigned long __cil_tmp21 ;
10971  bool *__cil_tmp22 ;
10972  bool __cil_tmp23 ;
10973  char *__cil_tmp24 ;
10974  char *__cil_tmp25 ;
10975  unsigned long __cil_tmp26 ;
10976  unsigned long __cil_tmp27 ;
10977  unsigned long __cil_tmp28 ;
10978  unsigned long __cil_tmp29 ;
10979  char __cil_tmp30 ;
10980  signed char __cil_tmp31 ;
10981  int __cil_tmp32 ;
10982  unsigned long __cil_tmp33 ;
10983  unsigned long __cil_tmp34 ;
10984  spinlock_t *__cil_tmp35 ;
10985  bool *__cil_tmp36 ;
10986  bool __cil_tmp37 ;
10987  char *__cil_tmp38 ;
10988
10989  {
10990#line 1187
10991  __cil_tmp8 = (unsigned long )tty;
10992#line 1187
10993  __cil_tmp9 = __cil_tmp8 + 1064;
10994#line 1187
10995  __cil_tmp10 = *((void **)__cil_tmp9);
10996#line 1187
10997  port = (struct usb_serial_port *)__cil_tmp10;
10998#line 1189
10999  chars = 0;
11000  {
11001#line 1193
11002  __cil_tmp11 = & debug;
11003#line 1193
11004  __cil_tmp12 = *__cil_tmp11;
11005#line 1193
11006  if ((int )__cil_tmp12) {
11007    {
11008#line 1193
11009    __cil_tmp13 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11010#line 1193
11011    __cil_tmp14 = (char *)" mos7840_chars_in_buffer:entering ...........";
11012#line 1193
11013    printk("<7>%s: %s\n", __cil_tmp13, __cil_tmp14);
11014    }
11015  } else {
11016
11017  }
11018  }
11019  {
11020#line 1195
11021  tmp = mos7840_port_paranoia_check(port, "mos7840_chars_in_buffer");
11022  }
11023#line 1195
11024  if (tmp != 0) {
11025    {
11026#line 1196
11027    __cil_tmp15 = & debug;
11028#line 1196
11029    __cil_tmp16 = *__cil_tmp15;
11030#line 1196
11031    if ((int )__cil_tmp16) {
11032      {
11033#line 1196
11034      __cil_tmp17 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11035#line 1196
11036      __cil_tmp18 = (char *)"Invalid port";
11037#line 1196
11038      printk("<7>%s: %s\n", __cil_tmp17, __cil_tmp18);
11039      }
11040    } else {
11041
11042    }
11043    }
11044#line 1197
11045    return (0);
11046  } else {
11047
11048  }
11049  {
11050#line 1200
11051  mos7840_port = mos7840_get_port_private(port);
11052  }
11053  {
11054#line 1201
11055  __cil_tmp19 = (struct moschip_port *)0;
11056#line 1201
11057  __cil_tmp20 = (unsigned long )__cil_tmp19;
11058#line 1201
11059  __cil_tmp21 = (unsigned long )mos7840_port;
11060#line 1201
11061  if (__cil_tmp21 == __cil_tmp20) {
11062    {
11063#line 1202
11064    __cil_tmp22 = & debug;
11065#line 1202
11066    __cil_tmp23 = *__cil_tmp22;
11067#line 1202
11068    if ((int )__cil_tmp23) {
11069      {
11070#line 1202
11071      __cil_tmp24 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11072#line 1202
11073      __cil_tmp25 = (char *)"mos7840_break:leaving ...........";
11074#line 1202
11075      printk("<7>%s: %s\n", __cil_tmp24, __cil_tmp25);
11076      }
11077    } else {
11078
11079    }
11080    }
11081#line 1203
11082    return (0);
11083  } else {
11084
11085  }
11086  }
11087  {
11088#line 1206
11089  ldv_spin_lock();
11090#line 1207
11091  i = 0;
11092  }
11093#line 1207
11094  goto ldv_28056;
11095  ldv_28055: ;
11096  {
11097#line 1208
11098  __cil_tmp26 = i * 1UL;
11099#line 1208
11100  __cil_tmp27 = 512 + __cil_tmp26;
11101#line 1208
11102  __cil_tmp28 = (unsigned long )mos7840_port;
11103#line 1208
11104  __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
11105#line 1208
11106  __cil_tmp30 = *((char *)__cil_tmp29);
11107#line 1208
11108  __cil_tmp31 = (signed char )__cil_tmp30;
11109#line 1208
11110  __cil_tmp32 = (int )__cil_tmp31;
11111#line 1208
11112  if (__cil_tmp32 != 0) {
11113#line 1209
11114    chars = chars + 32;
11115  } else {
11116
11117  }
11118  }
11119#line 1207
11120  i = i + 1;
11121  ldv_28056: ;
11122#line 1207
11123  if (i <= 15) {
11124#line 1208
11125    goto ldv_28055;
11126  } else {
11127#line 1210
11128    goto ldv_28057;
11129  }
11130  ldv_28057: 
11131  {
11132#line 1210
11133  __cil_tmp33 = (unsigned long )mos7840_port;
11134#line 1210
11135  __cil_tmp34 = __cil_tmp33 + 312;
11136#line 1210
11137  __cil_tmp35 = (spinlock_t *)__cil_tmp34;
11138#line 1210
11139  spin_unlock_irqrestore(__cil_tmp35, flags);
11140  }
11141  {
11142#line 1211
11143  __cil_tmp36 = & debug;
11144#line 1211
11145  __cil_tmp37 = *__cil_tmp36;
11146#line 1211
11147  if ((int )__cil_tmp37) {
11148    {
11149#line 1211
11150    __cil_tmp38 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11151#line 1211
11152    printk("<7>%s: %s - returns %d\n", __cil_tmp38, "mos7840_chars_in_buffer", chars);
11153    }
11154  } else {
11155
11156  }
11157  }
11158#line 1212
11159  return (chars);
11160}
11161}
11162#line 1221 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
11163static void mos7840_close(struct usb_serial_port *port ) 
11164{ struct usb_serial *serial ;
11165  struct moschip_port *mos7840_port ;
11166  struct moschip_port *port0 ;
11167  int j ;
11168  __u16 Data ;
11169  int tmp ;
11170  bool *__cil_tmp8 ;
11171  bool __cil_tmp9 ;
11172  char *__cil_tmp10 ;
11173  char *__cil_tmp11 ;
11174  bool *__cil_tmp12 ;
11175  bool __cil_tmp13 ;
11176  char *__cil_tmp14 ;
11177  char *__cil_tmp15 ;
11178  struct usb_serial *__cil_tmp16 ;
11179  unsigned long __cil_tmp17 ;
11180  unsigned long __cil_tmp18 ;
11181  bool *__cil_tmp19 ;
11182  bool __cil_tmp20 ;
11183  char *__cil_tmp21 ;
11184  char *__cil_tmp22 ;
11185  unsigned long __cil_tmp23 ;
11186  unsigned long __cil_tmp24 ;
11187  unsigned long __cil_tmp25 ;
11188  unsigned long __cil_tmp26 ;
11189  struct usb_serial_port *__cil_tmp27 ;
11190  struct moschip_port *__cil_tmp28 ;
11191  unsigned long __cil_tmp29 ;
11192  unsigned long __cil_tmp30 ;
11193  struct moschip_port *__cil_tmp31 ;
11194  unsigned long __cil_tmp32 ;
11195  unsigned long __cil_tmp33 ;
11196  unsigned long __cil_tmp34 ;
11197  unsigned long __cil_tmp35 ;
11198  unsigned long __cil_tmp36 ;
11199  unsigned long __cil_tmp37 ;
11200  struct urb *__cil_tmp38 ;
11201  struct urb *__cil_tmp39 ;
11202  unsigned long __cil_tmp40 ;
11203  unsigned long __cil_tmp41 ;
11204  unsigned long __cil_tmp42 ;
11205  unsigned long __cil_tmp43 ;
11206  unsigned long __cil_tmp44 ;
11207  struct urb *__cil_tmp45 ;
11208  unsigned long __cil_tmp46 ;
11209  void *__cil_tmp47 ;
11210  unsigned long __cil_tmp48 ;
11211  unsigned long __cil_tmp49 ;
11212  unsigned long __cil_tmp50 ;
11213  unsigned long __cil_tmp51 ;
11214  unsigned long __cil_tmp52 ;
11215  struct urb *__cil_tmp53 ;
11216  unsigned long __cil_tmp54 ;
11217  unsigned long __cil_tmp55 ;
11218  void *__cil_tmp56 ;
11219  unsigned long __cil_tmp57 ;
11220  unsigned long __cil_tmp58 ;
11221  unsigned long __cil_tmp59 ;
11222  unsigned long __cil_tmp60 ;
11223  unsigned long __cil_tmp61 ;
11224  struct urb *__cil_tmp62 ;
11225  unsigned long __cil_tmp63 ;
11226  unsigned long __cil_tmp64 ;
11227  void *__cil_tmp65 ;
11228  void const   *__cil_tmp66 ;
11229  unsigned long __cil_tmp67 ;
11230  unsigned long __cil_tmp68 ;
11231  unsigned long __cil_tmp69 ;
11232  unsigned long __cil_tmp70 ;
11233  struct urb *__cil_tmp71 ;
11234  struct usb_device *__cil_tmp72 ;
11235  unsigned long __cil_tmp73 ;
11236  struct usb_device *__cil_tmp74 ;
11237  unsigned long __cil_tmp75 ;
11238  struct urb *__cil_tmp76 ;
11239  unsigned long __cil_tmp77 ;
11240  unsigned long __cil_tmp78 ;
11241  unsigned long __cil_tmp79 ;
11242  struct urb *__cil_tmp80 ;
11243  unsigned long __cil_tmp81 ;
11244  bool *__cil_tmp82 ;
11245  bool __cil_tmp83 ;
11246  char *__cil_tmp84 ;
11247  char *__cil_tmp85 ;
11248  unsigned long __cil_tmp86 ;
11249  unsigned long __cil_tmp87 ;
11250  struct urb *__cil_tmp88 ;
11251  struct urb *__cil_tmp89 ;
11252  unsigned long __cil_tmp90 ;
11253  unsigned long __cil_tmp91 ;
11254  unsigned long __cil_tmp92 ;
11255  struct urb *__cil_tmp93 ;
11256  unsigned long __cil_tmp94 ;
11257  bool *__cil_tmp95 ;
11258  bool __cil_tmp96 ;
11259  char *__cil_tmp97 ;
11260  char *__cil_tmp98 ;
11261  unsigned long __cil_tmp99 ;
11262  unsigned long __cil_tmp100 ;
11263  struct urb *__cil_tmp101 ;
11264  unsigned long __cil_tmp102 ;
11265  unsigned long __cil_tmp103 ;
11266  struct urb **__cil_tmp104 ;
11267  unsigned long __cil_tmp105 ;
11268  unsigned long __cil_tmp106 ;
11269  unsigned long __cil_tmp107 ;
11270  struct urb **__cil_tmp108 ;
11271  unsigned long __cil_tmp109 ;
11272  bool *__cil_tmp110 ;
11273  bool __cil_tmp111 ;
11274  char *__cil_tmp112 ;
11275  char *__cil_tmp113 ;
11276  unsigned long __cil_tmp114 ;
11277  unsigned long __cil_tmp115 ;
11278  unsigned long __cil_tmp116 ;
11279  unsigned long __cil_tmp117 ;
11280  char __cil_tmp118 ;
11281  int __cil_tmp119 ;
11282  int __cil_tmp120 ;
11283  bool *__cil_tmp121 ;
11284  bool __cil_tmp122 ;
11285  char *__cil_tmp123 ;
11286  unsigned long __cil_tmp124 ;
11287  unsigned long __cil_tmp125 ;
11288  char __cil_tmp126 ;
11289  int __cil_tmp127 ;
11290  unsigned long __cil_tmp128 ;
11291  unsigned long __cil_tmp129 ;
11292  unsigned char __cil_tmp130 ;
11293  int __cil_tmp131 ;
11294  unsigned long __cil_tmp132 ;
11295  unsigned long __cil_tmp133 ;
11296  char __cil_tmp134 ;
11297  signed char __cil_tmp135 ;
11298  int __cil_tmp136 ;
11299  struct urb *__cil_tmp137 ;
11300  unsigned long __cil_tmp138 ;
11301  unsigned long __cil_tmp139 ;
11302  unsigned long __cil_tmp140 ;
11303  unsigned long __cil_tmp141 ;
11304  unsigned long __cil_tmp142 ;
11305  struct usb_serial_port *__cil_tmp143 ;
11306  unsigned long __cil_tmp144 ;
11307  unsigned long __cil_tmp145 ;
11308  struct urb *__cil_tmp146 ;
11309  unsigned long __cil_tmp147 ;
11310  bool *__cil_tmp148 ;
11311  bool __cil_tmp149 ;
11312  char *__cil_tmp150 ;
11313  char *__cil_tmp151 ;
11314  unsigned long __cil_tmp152 ;
11315  unsigned long __cil_tmp153 ;
11316  unsigned long __cil_tmp154 ;
11317  unsigned long __cil_tmp155 ;
11318  struct usb_serial_port *__cil_tmp156 ;
11319  unsigned long __cil_tmp157 ;
11320  unsigned long __cil_tmp158 ;
11321  struct urb *__cil_tmp159 ;
11322  struct urb *__cil_tmp160 ;
11323  unsigned long __cil_tmp161 ;
11324  unsigned long __cil_tmp162 ;
11325  unsigned long __cil_tmp163 ;
11326  struct urb *__cil_tmp164 ;
11327  unsigned long __cil_tmp165 ;
11328  void *__cil_tmp166 ;
11329  unsigned long __cil_tmp167 ;
11330  unsigned long __cil_tmp168 ;
11331  unsigned long __cil_tmp169 ;
11332  struct urb *__cil_tmp170 ;
11333  unsigned long __cil_tmp171 ;
11334  unsigned long __cil_tmp172 ;
11335  void *__cil_tmp173 ;
11336  unsigned long __cil_tmp174 ;
11337  unsigned long __cil_tmp175 ;
11338  unsigned long __cil_tmp176 ;
11339  struct urb *__cil_tmp177 ;
11340  unsigned long __cil_tmp178 ;
11341  unsigned long __cil_tmp179 ;
11342  void *__cil_tmp180 ;
11343  void const   *__cil_tmp181 ;
11344  unsigned long __cil_tmp182 ;
11345  unsigned long __cil_tmp183 ;
11346  struct urb *__cil_tmp184 ;
11347  __u16 __cil_tmp185 ;
11348  int __cil_tmp186 ;
11349  __u16 __cil_tmp187 ;
11350  __u16 __cil_tmp188 ;
11351  int __cil_tmp189 ;
11352  __u16 __cil_tmp190 ;
11353  unsigned long __cil_tmp191 ;
11354  unsigned long __cil_tmp192 ;
11355  bool *__cil_tmp193 ;
11356  bool __cil_tmp194 ;
11357  char *__cil_tmp195 ;
11358  char *__cil_tmp196 ;
11359
11360  {
11361  {
11362#line 1229
11363  __cil_tmp8 = & debug;
11364#line 1229
11365  __cil_tmp9 = *__cil_tmp8;
11366#line 1229
11367  if ((int )__cil_tmp9) {
11368    {
11369#line 1229
11370    __cil_tmp10 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11371#line 1229
11372    __cil_tmp11 = (char *)"mos7840_close:entering...";
11373#line 1229
11374    printk("<7>%s: %s\n", __cil_tmp10, __cil_tmp11);
11375    }
11376  } else {
11377
11378  }
11379  }
11380  {
11381#line 1231
11382  tmp = mos7840_port_paranoia_check(port, "mos7840_close");
11383  }
11384#line 1231
11385  if (tmp != 0) {
11386    {
11387#line 1232
11388    __cil_tmp12 = & debug;
11389#line 1232
11390    __cil_tmp13 = *__cil_tmp12;
11391#line 1232
11392    if ((int )__cil_tmp13) {
11393      {
11394#line 1232
11395      __cil_tmp14 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11396#line 1232
11397      __cil_tmp15 = (char *)"Port Paranoia failed";
11398#line 1232
11399      printk("<7>%s: %s\n", __cil_tmp14, __cil_tmp15);
11400      }
11401    } else {
11402
11403    }
11404    }
11405#line 1233
11406    return;
11407  } else {
11408
11409  }
11410  {
11411#line 1236
11412  serial = mos7840_get_usb_serial(port, "mos7840_close");
11413  }
11414  {
11415#line 1237
11416  __cil_tmp16 = (struct usb_serial *)0;
11417#line 1237
11418  __cil_tmp17 = (unsigned long )__cil_tmp16;
11419#line 1237
11420  __cil_tmp18 = (unsigned long )serial;
11421#line 1237
11422  if (__cil_tmp18 == __cil_tmp17) {
11423    {
11424#line 1238
11425    __cil_tmp19 = & debug;
11426#line 1238
11427    __cil_tmp20 = *__cil_tmp19;
11428#line 1238
11429    if ((int )__cil_tmp20) {
11430      {
11431#line 1238
11432      __cil_tmp21 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11433#line 1238
11434      __cil_tmp22 = (char *)"Serial Paranoia failed";
11435#line 1238
11436      printk("<7>%s: %s\n", __cil_tmp21, __cil_tmp22);
11437      }
11438    } else {
11439
11440    }
11441    }
11442#line 1239
11443    return;
11444  } else {
11445
11446  }
11447  }
11448  {
11449#line 1242
11450  mos7840_port = mos7840_get_port_private(port);
11451#line 1243
11452  __cil_tmp23 = 0 * 8UL;
11453#line 1243
11454  __cil_tmp24 = 32 + __cil_tmp23;
11455#line 1243
11456  __cil_tmp25 = (unsigned long )serial;
11457#line 1243
11458  __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
11459#line 1243
11460  __cil_tmp27 = *((struct usb_serial_port **)__cil_tmp26);
11461#line 1243
11462  port0 = mos7840_get_port_private(__cil_tmp27);
11463  }
11464  {
11465#line 1245
11466  __cil_tmp28 = (struct moschip_port *)0;
11467#line 1245
11468  __cil_tmp29 = (unsigned long )__cil_tmp28;
11469#line 1245
11470  __cil_tmp30 = (unsigned long )mos7840_port;
11471#line 1245
11472  if (__cil_tmp30 == __cil_tmp29) {
11473#line 1246
11474    return;
11475  } else {
11476    {
11477#line 1245
11478    __cil_tmp31 = (struct moschip_port *)0;
11479#line 1245
11480    __cil_tmp32 = (unsigned long )__cil_tmp31;
11481#line 1245
11482    __cil_tmp33 = (unsigned long )port0;
11483#line 1245
11484    if (__cil_tmp33 == __cil_tmp32) {
11485#line 1246
11486      return;
11487    } else {
11488
11489    }
11490    }
11491  }
11492  }
11493#line 1248
11494  j = 0;
11495#line 1248
11496  goto ldv_28068;
11497  ldv_28067: 
11498  {
11499#line 1249
11500  __cil_tmp34 = j * 8UL;
11501#line 1249
11502  __cil_tmp35 = 384 + __cil_tmp34;
11503#line 1249
11504  __cil_tmp36 = (unsigned long )mos7840_port;
11505#line 1249
11506  __cil_tmp37 = __cil_tmp36 + __cil_tmp35;
11507#line 1249
11508  __cil_tmp38 = *((struct urb **)__cil_tmp37);
11509#line 1249
11510  usb_kill_urb(__cil_tmp38);
11511#line 1248
11512  j = j + 1;
11513  }
11514  ldv_28068: ;
11515#line 1248
11516  if (j <= 15) {
11517#line 1249
11518    goto ldv_28067;
11519  } else {
11520#line 1251
11521    goto ldv_28069;
11522  }
11523  ldv_28069: 
11524#line 1252
11525  j = 0;
11526#line 1252
11527  goto ldv_28071;
11528  ldv_28070: ;
11529  {
11530#line 1253
11531  __cil_tmp39 = (struct urb *)0;
11532#line 1253
11533  __cil_tmp40 = (unsigned long )__cil_tmp39;
11534#line 1253
11535  __cil_tmp41 = j * 8UL;
11536#line 1253
11537  __cil_tmp42 = 384 + __cil_tmp41;
11538#line 1253
11539  __cil_tmp43 = (unsigned long )mos7840_port;
11540#line 1253
11541  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
11542#line 1253
11543  __cil_tmp45 = *((struct urb **)__cil_tmp44);
11544#line 1253
11545  __cil_tmp46 = (unsigned long )__cil_tmp45;
11546#line 1253
11547  if (__cil_tmp46 != __cil_tmp40) {
11548    {
11549#line 1254
11550    __cil_tmp47 = (void *)0;
11551#line 1254
11552    __cil_tmp48 = (unsigned long )__cil_tmp47;
11553#line 1254
11554    __cil_tmp49 = j * 8UL;
11555#line 1254
11556    __cil_tmp50 = 384 + __cil_tmp49;
11557#line 1254
11558    __cil_tmp51 = (unsigned long )mos7840_port;
11559#line 1254
11560    __cil_tmp52 = __cil_tmp51 + __cil_tmp50;
11561#line 1254
11562    __cil_tmp53 = *((struct urb **)__cil_tmp52);
11563#line 1254
11564    __cil_tmp54 = (unsigned long )__cil_tmp53;
11565#line 1254
11566    __cil_tmp55 = __cil_tmp54 + 104;
11567#line 1254
11568    __cil_tmp56 = *((void **)__cil_tmp55);
11569#line 1254
11570    __cil_tmp57 = (unsigned long )__cil_tmp56;
11571#line 1254
11572    if (__cil_tmp57 != __cil_tmp48) {
11573      {
11574#line 1255
11575      __cil_tmp58 = j * 8UL;
11576#line 1255
11577      __cil_tmp59 = 384 + __cil_tmp58;
11578#line 1255
11579      __cil_tmp60 = (unsigned long )mos7840_port;
11580#line 1255
11581      __cil_tmp61 = __cil_tmp60 + __cil_tmp59;
11582#line 1255
11583      __cil_tmp62 = *((struct urb **)__cil_tmp61);
11584#line 1255
11585      __cil_tmp63 = (unsigned long )__cil_tmp62;
11586#line 1255
11587      __cil_tmp64 = __cil_tmp63 + 104;
11588#line 1255
11589      __cil_tmp65 = *((void **)__cil_tmp64);
11590#line 1255
11591      __cil_tmp66 = (void const   *)__cil_tmp65;
11592#line 1255
11593      kfree(__cil_tmp66);
11594      }
11595    } else {
11596
11597    }
11598    }
11599    {
11600#line 1258
11601    __cil_tmp67 = j * 8UL;
11602#line 1258
11603    __cil_tmp68 = 384 + __cil_tmp67;
11604#line 1258
11605    __cil_tmp69 = (unsigned long )mos7840_port;
11606#line 1258
11607    __cil_tmp70 = __cil_tmp69 + __cil_tmp68;
11608#line 1258
11609    __cil_tmp71 = *((struct urb **)__cil_tmp70);
11610#line 1258
11611    usb_free_urb(__cil_tmp71);
11612    }
11613  } else {
11614
11615  }
11616  }
11617#line 1252
11618  j = j + 1;
11619  ldv_28071: ;
11620#line 1252
11621  if (j <= 15) {
11622#line 1253
11623    goto ldv_28070;
11624  } else {
11625#line 1255
11626    goto ldv_28072;
11627  }
11628  ldv_28072: ;
11629  {
11630#line 1264
11631  __cil_tmp72 = (struct usb_device *)0;
11632#line 1264
11633  __cil_tmp73 = (unsigned long )__cil_tmp72;
11634#line 1264
11635  __cil_tmp74 = *((struct usb_device **)serial);
11636#line 1264
11637  __cil_tmp75 = (unsigned long )__cil_tmp74;
11638#line 1264
11639  if (__cil_tmp75 != __cil_tmp73) {
11640    {
11641#line 1265
11642    __cil_tmp76 = (struct urb *)0;
11643#line 1265
11644    __cil_tmp77 = (unsigned long )__cil_tmp76;
11645#line 1265
11646    __cil_tmp78 = (unsigned long )mos7840_port;
11647#line 1265
11648    __cil_tmp79 = __cil_tmp78 + 8;
11649#line 1265
11650    __cil_tmp80 = *((struct urb **)__cil_tmp79);
11651#line 1265
11652    __cil_tmp81 = (unsigned long )__cil_tmp80;
11653#line 1265
11654    if (__cil_tmp81 != __cil_tmp77) {
11655      {
11656#line 1266
11657      __cil_tmp82 = & debug;
11658#line 1266
11659      __cil_tmp83 = *__cil_tmp82;
11660#line 1266
11661      if ((int )__cil_tmp83) {
11662        {
11663#line 1266
11664        __cil_tmp84 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11665#line 1266
11666        __cil_tmp85 = (char *)"Shutdown bulk write";
11667#line 1266
11668        printk("<7>%s: %s\n", __cil_tmp84, __cil_tmp85);
11669        }
11670      } else {
11671
11672      }
11673      }
11674      {
11675#line 1267
11676      __cil_tmp86 = (unsigned long )mos7840_port;
11677#line 1267
11678      __cil_tmp87 = __cil_tmp86 + 8;
11679#line 1267
11680      __cil_tmp88 = *((struct urb **)__cil_tmp87);
11681#line 1267
11682      usb_kill_urb(__cil_tmp88);
11683      }
11684    } else {
11685
11686    }
11687    }
11688    {
11689#line 1269
11690    __cil_tmp89 = (struct urb *)0;
11691#line 1269
11692    __cil_tmp90 = (unsigned long )__cil_tmp89;
11693#line 1269
11694    __cil_tmp91 = (unsigned long )mos7840_port;
11695#line 1269
11696    __cil_tmp92 = __cil_tmp91 + 16;
11697#line 1269
11698    __cil_tmp93 = *((struct urb **)__cil_tmp92);
11699#line 1269
11700    __cil_tmp94 = (unsigned long )__cil_tmp93;
11701#line 1269
11702    if (__cil_tmp94 != __cil_tmp90) {
11703      {
11704#line 1270
11705      __cil_tmp95 = & debug;
11706#line 1270
11707      __cil_tmp96 = *__cil_tmp95;
11708#line 1270
11709      if ((int )__cil_tmp96) {
11710        {
11711#line 1270
11712        __cil_tmp97 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11713#line 1270
11714        __cil_tmp98 = (char *)"Shutdown bulk read";
11715#line 1270
11716        printk("<7>%s: %s\n", __cil_tmp97, __cil_tmp98);
11717        }
11718      } else {
11719
11720      }
11721      }
11722      {
11723#line 1271
11724      __cil_tmp99 = (unsigned long )mos7840_port;
11725#line 1271
11726      __cil_tmp100 = __cil_tmp99 + 16;
11727#line 1271
11728      __cil_tmp101 = *((struct urb **)__cil_tmp100);
11729#line 1271
11730      usb_kill_urb(__cil_tmp101);
11731#line 1272
11732      __cil_tmp102 = (unsigned long )mos7840_port;
11733#line 1272
11734      __cil_tmp103 = __cil_tmp102 + 528;
11735#line 1272
11736      *((bool *)__cil_tmp103) = (bool )0;
11737      }
11738    } else {
11739
11740    }
11741    }
11742    {
11743#line 1274
11744    __cil_tmp104 = (struct urb **)0;
11745#line 1274
11746    __cil_tmp105 = (unsigned long )__cil_tmp104;
11747#line 1274
11748    __cil_tmp106 = (unsigned long )mos7840_port;
11749#line 1274
11750    __cil_tmp107 = __cil_tmp106 + 280;
11751#line 1274
11752    __cil_tmp108 = (struct urb **)__cil_tmp107;
11753#line 1274
11754    __cil_tmp109 = (unsigned long )__cil_tmp108;
11755#line 1274
11756    if (__cil_tmp109 != __cil_tmp105) {
11757      {
11758#line 1275
11759      __cil_tmp110 = & debug;
11760#line 1275
11761      __cil_tmp111 = *__cil_tmp110;
11762#line 1275
11763      if ((int )__cil_tmp111) {
11764        {
11765#line 1275
11766        __cil_tmp112 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11767#line 1275
11768        __cil_tmp113 = (char *)"Shutdown control read";
11769#line 1275
11770        printk("<7>%s: %s\n", __cil_tmp112, __cil_tmp113);
11771        }
11772      } else {
11773
11774      }
11775      }
11776    } else {
11777
11778    }
11779    }
11780  } else {
11781
11782  }
11783  }
11784#line 1281
11785  __cil_tmp114 = (unsigned long )port0;
11786#line 1281
11787  __cil_tmp115 = __cil_tmp114 + 35;
11788#line 1281
11789  __cil_tmp116 = (unsigned long )port0;
11790#line 1281
11791  __cil_tmp117 = __cil_tmp116 + 35;
11792#line 1281
11793  __cil_tmp118 = *((char *)__cil_tmp117);
11794#line 1281
11795  __cil_tmp119 = (int )__cil_tmp118;
11796#line 1281
11797  __cil_tmp120 = __cil_tmp119 - 1;
11798#line 1281
11799  *((char *)__cil_tmp115) = (char )__cil_tmp120;
11800  {
11801#line 1282
11802  __cil_tmp121 = & debug;
11803#line 1282
11804  __cil_tmp122 = *__cil_tmp121;
11805#line 1282
11806  if ((int )__cil_tmp122) {
11807    {
11808#line 1282
11809    __cil_tmp123 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11810#line 1282
11811    __cil_tmp124 = (unsigned long )port0;
11812#line 1282
11813    __cil_tmp125 = __cil_tmp124 + 35;
11814#line 1282
11815    __cil_tmp126 = *((char *)__cil_tmp125);
11816#line 1282
11817    __cil_tmp127 = (int )__cil_tmp126;
11818#line 1282
11819    __cil_tmp128 = (unsigned long )port;
11820#line 1282
11821    __cil_tmp129 = __cil_tmp128 + 816;
11822#line 1282
11823    __cil_tmp130 = *((unsigned char *)__cil_tmp129);
11824#line 1282
11825    __cil_tmp131 = (int )__cil_tmp130;
11826#line 1282
11827    printk("<7>%s: mos7840_num_open_ports in close%d:in port%d\n", __cil_tmp123, __cil_tmp127,
11828           __cil_tmp131);
11829    }
11830  } else {
11831
11832  }
11833  }
11834  {
11835#line 1284
11836  __cil_tmp132 = (unsigned long )port0;
11837#line 1284
11838  __cil_tmp133 = __cil_tmp132 + 35;
11839#line 1284
11840  __cil_tmp134 = *((char *)__cil_tmp133);
11841#line 1284
11842  __cil_tmp135 = (signed char )__cil_tmp134;
11843#line 1284
11844  __cil_tmp136 = (int )__cil_tmp135;
11845#line 1284
11846  if (__cil_tmp136 == 0) {
11847    {
11848#line 1285
11849    __cil_tmp137 = (struct urb *)0;
11850#line 1285
11851    __cil_tmp138 = (unsigned long )__cil_tmp137;
11852#line 1285
11853    __cil_tmp139 = 0 * 8UL;
11854#line 1285
11855    __cil_tmp140 = 32 + __cil_tmp139;
11856#line 1285
11857    __cil_tmp141 = (unsigned long )serial;
11858#line 1285
11859    __cil_tmp142 = __cil_tmp141 + __cil_tmp140;
11860#line 1285
11861    __cil_tmp143 = *((struct usb_serial_port **)__cil_tmp142);
11862#line 1285
11863    __cil_tmp144 = (unsigned long )__cil_tmp143;
11864#line 1285
11865    __cil_tmp145 = __cil_tmp144 + 832;
11866#line 1285
11867    __cil_tmp146 = *((struct urb **)__cil_tmp145);
11868#line 1285
11869    __cil_tmp147 = (unsigned long )__cil_tmp146;
11870#line 1285
11871    if (__cil_tmp147 != __cil_tmp138) {
11872      {
11873#line 1286
11874      __cil_tmp148 = & debug;
11875#line 1286
11876      __cil_tmp149 = *__cil_tmp148;
11877#line 1286
11878      if ((int )__cil_tmp149) {
11879        {
11880#line 1286
11881        __cil_tmp150 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
11882#line 1286
11883        __cil_tmp151 = (char *)"Shutdown interrupt_in_urb";
11884#line 1286
11885        printk("<7>%s: %s\n", __cil_tmp150, __cil_tmp151);
11886        }
11887      } else {
11888
11889      }
11890      }
11891      {
11892#line 1287
11893      __cil_tmp152 = 0 * 8UL;
11894#line 1287
11895      __cil_tmp153 = 32 + __cil_tmp152;
11896#line 1287
11897      __cil_tmp154 = (unsigned long )serial;
11898#line 1287
11899      __cil_tmp155 = __cil_tmp154 + __cil_tmp153;
11900#line 1287
11901      __cil_tmp156 = *((struct usb_serial_port **)__cil_tmp155);
11902#line 1287
11903      __cil_tmp157 = (unsigned long )__cil_tmp156;
11904#line 1287
11905      __cil_tmp158 = __cil_tmp157 + 832;
11906#line 1287
11907      __cil_tmp159 = *((struct urb **)__cil_tmp158);
11908#line 1287
11909      usb_kill_urb(__cil_tmp159);
11910      }
11911    } else {
11912
11913    }
11914    }
11915  } else {
11916
11917  }
11918  }
11919  {
11920#line 1291
11921  __cil_tmp160 = (struct urb *)0;
11922#line 1291
11923  __cil_tmp161 = (unsigned long )__cil_tmp160;
11924#line 1291
11925  __cil_tmp162 = (unsigned long )mos7840_port;
11926#line 1291
11927  __cil_tmp163 = __cil_tmp162 + 8;
11928#line 1291
11929  __cil_tmp164 = *((struct urb **)__cil_tmp163);
11930#line 1291
11931  __cil_tmp165 = (unsigned long )__cil_tmp164;
11932#line 1291
11933  if (__cil_tmp165 != __cil_tmp161) {
11934    {
11935#line 1293
11936    __cil_tmp166 = (void *)0;
11937#line 1293
11938    __cil_tmp167 = (unsigned long )__cil_tmp166;
11939#line 1293
11940    __cil_tmp168 = (unsigned long )mos7840_port;
11941#line 1293
11942    __cil_tmp169 = __cil_tmp168 + 8;
11943#line 1293
11944    __cil_tmp170 = *((struct urb **)__cil_tmp169);
11945#line 1293
11946    __cil_tmp171 = (unsigned long )__cil_tmp170;
11947#line 1293
11948    __cil_tmp172 = __cil_tmp171 + 104;
11949#line 1293
11950    __cil_tmp173 = *((void **)__cil_tmp172);
11951#line 1293
11952    __cil_tmp174 = (unsigned long )__cil_tmp173;
11953#line 1293
11954    if (__cil_tmp174 != __cil_tmp167) {
11955      {
11956#line 1294
11957      __cil_tmp175 = (unsigned long )mos7840_port;
11958#line 1294
11959      __cil_tmp176 = __cil_tmp175 + 8;
11960#line 1294
11961      __cil_tmp177 = *((struct urb **)__cil_tmp176);
11962#line 1294
11963      __cil_tmp178 = (unsigned long )__cil_tmp177;
11964#line 1294
11965      __cil_tmp179 = __cil_tmp178 + 104;
11966#line 1294
11967      __cil_tmp180 = *((void **)__cil_tmp179);
11968#line 1294
11969      __cil_tmp181 = (void const   *)__cil_tmp180;
11970#line 1294
11971      kfree(__cil_tmp181);
11972      }
11973    } else {
11974
11975    }
11976    }
11977    {
11978#line 1295
11979    __cil_tmp182 = (unsigned long )mos7840_port;
11980#line 1295
11981    __cil_tmp183 = __cil_tmp182 + 8;
11982#line 1295
11983    __cil_tmp184 = *((struct urb **)__cil_tmp183);
11984#line 1295
11985    usb_free_urb(__cil_tmp184);
11986    }
11987  } else {
11988
11989  }
11990  }
11991  {
11992#line 1298
11993  Data = (__u16 )0U;
11994#line 1299
11995  __cil_tmp185 = (__u16 )4;
11996#line 1299
11997  __cil_tmp186 = (int )Data;
11998#line 1299
11999  __cil_tmp187 = (__u16 )__cil_tmp186;
12000#line 1299
12001  mos7840_set_uart_reg(port, __cil_tmp185, __cil_tmp187);
12002#line 1301
12003  Data = (__u16 )0U;
12004#line 1302
12005  __cil_tmp188 = (__u16 )1;
12006#line 1302
12007  __cil_tmp189 = (int )Data;
12008#line 1302
12009  __cil_tmp190 = (__u16 )__cil_tmp189;
12010#line 1302
12011  mos7840_set_uart_reg(port, __cil_tmp188, __cil_tmp190);
12012#line 1304
12013  __cil_tmp191 = (unsigned long )mos7840_port;
12014#line 1304
12015  __cil_tmp192 = __cil_tmp191 + 34;
12016#line 1304
12017  *((char *)__cil_tmp192) = (char)0;
12018  }
12019  {
12020#line 1306
12021  __cil_tmp193 = & debug;
12022#line 1306
12023  __cil_tmp194 = *__cil_tmp193;
12024#line 1306
12025  if ((int )__cil_tmp194) {
12026    {
12027#line 1306
12028    __cil_tmp195 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12029#line 1306
12030    __cil_tmp196 = (char *)"Leaving ............";
12031#line 1306
12032    printk("<7>%s: %s\n", __cil_tmp195, __cil_tmp196);
12033    }
12034  } else {
12035
12036  }
12037  }
12038#line 1307
12039  return;
12040}
12041}
12042#line 1320 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
12043static void mos7840_block_until_chase_response(struct tty_struct *tty , struct moschip_port *mos7840_port ) 
12044{ int timeout ;
12045  int wait ;
12046  int count ;
12047  unsigned long __cil_tmp6 ;
12048  unsigned long __cil_tmp7 ;
12049  wait_queue_head_t *__cil_tmp8 ;
12050  long __cil_tmp9 ;
12051  bool *__cil_tmp10 ;
12052  bool __cil_tmp11 ;
12053  char *__cil_tmp12 ;
12054
12055  {
12056#line 1323
12057  timeout = 250;
12058#line 1324
12059  wait = 10;
12060  ldv_28081: 
12061  {
12062#line 1328
12063  count = mos7840_chars_in_buffer(tty);
12064  }
12065#line 1331
12066  if (count <= 0) {
12067#line 1332
12068    return;
12069  } else {
12070
12071  }
12072  {
12073#line 1335
12074  __cil_tmp6 = (unsigned long )mos7840_port;
12075#line 1335
12076  __cil_tmp7 = __cil_tmp6 + 40;
12077#line 1335
12078  __cil_tmp8 = (wait_queue_head_t *)__cil_tmp7;
12079#line 1335
12080  __cil_tmp9 = (long )timeout;
12081#line 1335
12082  interruptible_sleep_on_timeout(__cil_tmp8, __cil_tmp9);
12083#line 1338
12084  wait = wait - 1;
12085  }
12086#line 1339
12087  if (wait == 0) {
12088    {
12089#line 1340
12090    __cil_tmp10 = & debug;
12091#line 1340
12092    __cil_tmp11 = *__cil_tmp10;
12093#line 1340
12094    if ((int )__cil_tmp11) {
12095      {
12096#line 1340
12097      __cil_tmp12 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12098#line 1340
12099      printk("<7>%s: %s - TIMEOUT\n", __cil_tmp12, "mos7840_block_until_chase_response");
12100      }
12101    } else {
12102
12103    }
12104    }
12105#line 1341
12106    return;
12107  } else {
12108#line 1344
12109    wait = 10;
12110  }
12111#line 1346
12112  goto ldv_28081;
12113}
12114}
12115#line 1354 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
12116static void mos7840_break(struct tty_struct *tty , int break_state ) 
12117{ struct usb_serial_port *port ;
12118  unsigned char data ;
12119  struct usb_serial *serial ;
12120  struct moschip_port *mos7840_port ;
12121  int tmp ;
12122  unsigned long __cil_tmp8 ;
12123  unsigned long __cil_tmp9 ;
12124  void *__cil_tmp10 ;
12125  bool *__cil_tmp11 ;
12126  bool __cil_tmp12 ;
12127  char *__cil_tmp13 ;
12128  char *__cil_tmp14 ;
12129  bool *__cil_tmp15 ;
12130  bool __cil_tmp16 ;
12131  char *__cil_tmp17 ;
12132  bool *__cil_tmp18 ;
12133  bool __cil_tmp19 ;
12134  char *__cil_tmp20 ;
12135  char *__cil_tmp21 ;
12136  struct usb_serial *__cil_tmp22 ;
12137  unsigned long __cil_tmp23 ;
12138  unsigned long __cil_tmp24 ;
12139  bool *__cil_tmp25 ;
12140  bool __cil_tmp26 ;
12141  char *__cil_tmp27 ;
12142  char *__cil_tmp28 ;
12143  struct moschip_port *__cil_tmp29 ;
12144  unsigned long __cil_tmp30 ;
12145  unsigned long __cil_tmp31 ;
12146  struct usb_device *__cil_tmp32 ;
12147  unsigned long __cil_tmp33 ;
12148  struct usb_device *__cil_tmp34 ;
12149  unsigned long __cil_tmp35 ;
12150  unsigned long __cil_tmp36 ;
12151  unsigned long __cil_tmp37 ;
12152  __u8 __cil_tmp38 ;
12153  unsigned int __cil_tmp39 ;
12154  unsigned int __cil_tmp40 ;
12155  unsigned long __cil_tmp41 ;
12156  unsigned long __cil_tmp42 ;
12157  __u8 __cil_tmp43 ;
12158  unsigned int __cil_tmp44 ;
12159  unsigned int __cil_tmp45 ;
12160  unsigned long __cil_tmp46 ;
12161  unsigned long __cil_tmp47 ;
12162  bool *__cil_tmp48 ;
12163  bool __cil_tmp49 ;
12164  char *__cil_tmp50 ;
12165  unsigned long __cil_tmp51 ;
12166  unsigned long __cil_tmp52 ;
12167  __u8 __cil_tmp53 ;
12168  int __cil_tmp54 ;
12169  __u16 __cil_tmp55 ;
12170  unsigned long __cil_tmp56 ;
12171  unsigned long __cil_tmp57 ;
12172  __u8 __cil_tmp58 ;
12173  int __cil_tmp59 ;
12174  __u16 __cil_tmp60 ;
12175
12176  {
12177#line 1356
12178  __cil_tmp8 = (unsigned long )tty;
12179#line 1356
12180  __cil_tmp9 = __cil_tmp8 + 1064;
12181#line 1356
12182  __cil_tmp10 = *((void **)__cil_tmp9);
12183#line 1356
12184  port = (struct usb_serial_port *)__cil_tmp10;
12185  {
12186#line 1361
12187  __cil_tmp11 = & debug;
12188#line 1361
12189  __cil_tmp12 = *__cil_tmp11;
12190#line 1361
12191  if ((int )__cil_tmp12) {
12192    {
12193#line 1361
12194    __cil_tmp13 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12195#line 1361
12196    __cil_tmp14 = (char *)"Entering ...........";
12197#line 1361
12198    printk("<7>%s: %s\n", __cil_tmp13, __cil_tmp14);
12199    }
12200  } else {
12201
12202  }
12203  }
12204  {
12205#line 1362
12206  __cil_tmp15 = & debug;
12207#line 1362
12208  __cil_tmp16 = *__cil_tmp15;
12209#line 1362
12210  if ((int )__cil_tmp16) {
12211    {
12212#line 1362
12213    __cil_tmp17 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12214#line 1362
12215    printk("<7>%s: mos7840_break: Start\n", __cil_tmp17);
12216    }
12217  } else {
12218
12219  }
12220  }
12221  {
12222#line 1364
12223  tmp = mos7840_port_paranoia_check(port, "mos7840_break");
12224  }
12225#line 1364
12226  if (tmp != 0) {
12227    {
12228#line 1365
12229    __cil_tmp18 = & debug;
12230#line 1365
12231    __cil_tmp19 = *__cil_tmp18;
12232#line 1365
12233    if ((int )__cil_tmp19) {
12234      {
12235#line 1365
12236      __cil_tmp20 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12237#line 1365
12238      __cil_tmp21 = (char *)"Port Paranoia failed";
12239#line 1365
12240      printk("<7>%s: %s\n", __cil_tmp20, __cil_tmp21);
12241      }
12242    } else {
12243
12244    }
12245    }
12246#line 1366
12247    return;
12248  } else {
12249
12250  }
12251  {
12252#line 1369
12253  serial = mos7840_get_usb_serial(port, "mos7840_break");
12254  }
12255  {
12256#line 1370
12257  __cil_tmp22 = (struct usb_serial *)0;
12258#line 1370
12259  __cil_tmp23 = (unsigned long )__cil_tmp22;
12260#line 1370
12261  __cil_tmp24 = (unsigned long )serial;
12262#line 1370
12263  if (__cil_tmp24 == __cil_tmp23) {
12264    {
12265#line 1371
12266    __cil_tmp25 = & debug;
12267#line 1371
12268    __cil_tmp26 = *__cil_tmp25;
12269#line 1371
12270    if ((int )__cil_tmp26) {
12271      {
12272#line 1371
12273      __cil_tmp27 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12274#line 1371
12275      __cil_tmp28 = (char *)"Serial Paranoia failed";
12276#line 1371
12277      printk("<7>%s: %s\n", __cil_tmp27, __cil_tmp28);
12278      }
12279    } else {
12280
12281    }
12282    }
12283#line 1372
12284    return;
12285  } else {
12286
12287  }
12288  }
12289  {
12290#line 1375
12291  mos7840_port = mos7840_get_port_private(port);
12292  }
12293  {
12294#line 1377
12295  __cil_tmp29 = (struct moschip_port *)0;
12296#line 1377
12297  __cil_tmp30 = (unsigned long )__cil_tmp29;
12298#line 1377
12299  __cil_tmp31 = (unsigned long )mos7840_port;
12300#line 1377
12301  if (__cil_tmp31 == __cil_tmp30) {
12302#line 1378
12303    return;
12304  } else {
12305
12306  }
12307  }
12308  {
12309#line 1380
12310  __cil_tmp32 = (struct usb_device *)0;
12311#line 1380
12312  __cil_tmp33 = (unsigned long )__cil_tmp32;
12313#line 1380
12314  __cil_tmp34 = *((struct usb_device **)serial);
12315#line 1380
12316  __cil_tmp35 = (unsigned long )__cil_tmp34;
12317#line 1380
12318  if (__cil_tmp35 != __cil_tmp33) {
12319    {
12320#line 1382
12321    mos7840_block_until_chase_response(tty, mos7840_port);
12322    }
12323  } else {
12324
12325  }
12326  }
12327#line 1384
12328  if (break_state == -1) {
12329#line 1385
12330    __cil_tmp36 = (unsigned long )mos7840_port;
12331#line 1385
12332    __cil_tmp37 = __cil_tmp36 + 32;
12333#line 1385
12334    __cil_tmp38 = *((__u8 *)__cil_tmp37);
12335#line 1385
12336    __cil_tmp39 = (unsigned int )__cil_tmp38;
12337#line 1385
12338    __cil_tmp40 = __cil_tmp39 | 64U;
12339#line 1385
12340    data = (unsigned char )__cil_tmp40;
12341  } else {
12342#line 1387
12343    __cil_tmp41 = (unsigned long )mos7840_port;
12344#line 1387
12345    __cil_tmp42 = __cil_tmp41 + 32;
12346#line 1387
12347    __cil_tmp43 = *((__u8 *)__cil_tmp42);
12348#line 1387
12349    __cil_tmp44 = (unsigned int )__cil_tmp43;
12350#line 1387
12351    __cil_tmp45 = __cil_tmp44 & 191U;
12352#line 1387
12353    data = (unsigned char )__cil_tmp45;
12354  }
12355#line 1390
12356  __cil_tmp46 = (unsigned long )mos7840_port;
12357#line 1390
12358  __cil_tmp47 = __cil_tmp46 + 32;
12359#line 1390
12360  *((__u8 *)__cil_tmp47) = data;
12361  {
12362#line 1391
12363  __cil_tmp48 = & debug;
12364#line 1391
12365  __cil_tmp49 = *__cil_tmp48;
12366#line 1391
12367  if ((int )__cil_tmp49) {
12368    {
12369#line 1391
12370    __cil_tmp50 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12371#line 1391
12372    __cil_tmp51 = (unsigned long )mos7840_port;
12373#line 1391
12374    __cil_tmp52 = __cil_tmp51 + 32;
12375#line 1391
12376    __cil_tmp53 = *((__u8 *)__cil_tmp52);
12377#line 1391
12378    __cil_tmp54 = (int )__cil_tmp53;
12379#line 1391
12380    printk("<7>%s: mcs7840_break mos7840_port->shadowLCR is %x\n", __cil_tmp50, __cil_tmp54);
12381    }
12382  } else {
12383
12384  }
12385  }
12386  {
12387#line 1393
12388  __cil_tmp55 = (__u16 )3;
12389#line 1393
12390  __cil_tmp56 = (unsigned long )mos7840_port;
12391#line 1393
12392  __cil_tmp57 = __cil_tmp56 + 32;
12393#line 1393
12394  __cil_tmp58 = *((__u8 *)__cil_tmp57);
12395#line 1393
12396  __cil_tmp59 = (int )__cil_tmp58;
12397#line 1393
12398  __cil_tmp60 = (__u16 )__cil_tmp59;
12399#line 1393
12400  mos7840_set_uart_reg(port, __cil_tmp55, __cil_tmp60);
12401  }
12402#line 1395
12403  return;
12404}
12405}
12406#line 1405 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
12407static int mos7840_write_room(struct tty_struct *tty ) 
12408{ struct usb_serial_port *port ;
12409  int i ;
12410  int room ;
12411  unsigned long flags ;
12412  struct moschip_port *mos7840_port ;
12413  int tmp ;
12414  unsigned long __cil_tmp8 ;
12415  unsigned long __cil_tmp9 ;
12416  void *__cil_tmp10 ;
12417  bool *__cil_tmp11 ;
12418  bool __cil_tmp12 ;
12419  char *__cil_tmp13 ;
12420  char *__cil_tmp14 ;
12421  bool *__cil_tmp15 ;
12422  bool __cil_tmp16 ;
12423  char *__cil_tmp17 ;
12424  char *__cil_tmp18 ;
12425  bool *__cil_tmp19 ;
12426  bool __cil_tmp20 ;
12427  char *__cil_tmp21 ;
12428  char *__cil_tmp22 ;
12429  struct moschip_port *__cil_tmp23 ;
12430  unsigned long __cil_tmp24 ;
12431  unsigned long __cil_tmp25 ;
12432  bool *__cil_tmp26 ;
12433  bool __cil_tmp27 ;
12434  char *__cil_tmp28 ;
12435  char *__cil_tmp29 ;
12436  unsigned long __cil_tmp30 ;
12437  unsigned long __cil_tmp31 ;
12438  unsigned long __cil_tmp32 ;
12439  unsigned long __cil_tmp33 ;
12440  char __cil_tmp34 ;
12441  signed char __cil_tmp35 ;
12442  int __cil_tmp36 ;
12443  unsigned long __cil_tmp37 ;
12444  unsigned long __cil_tmp38 ;
12445  spinlock_t *__cil_tmp39 ;
12446  bool *__cil_tmp40 ;
12447  bool __cil_tmp41 ;
12448  char *__cil_tmp42 ;
12449
12450  {
12451#line 1407
12452  __cil_tmp8 = (unsigned long )tty;
12453#line 1407
12454  __cil_tmp9 = __cil_tmp8 + 1064;
12455#line 1407
12456  __cil_tmp10 = *((void **)__cil_tmp9);
12457#line 1407
12458  port = (struct usb_serial_port *)__cil_tmp10;
12459#line 1409
12460  room = 0;
12461  {
12462#line 1413
12463  __cil_tmp11 = & debug;
12464#line 1413
12465  __cil_tmp12 = *__cil_tmp11;
12466#line 1413
12467  if ((int )__cil_tmp12) {
12468    {
12469#line 1413
12470    __cil_tmp13 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12471#line 1413
12472    __cil_tmp14 = (char *)" mos7840_write_room:entering ...........";
12473#line 1413
12474    printk("<7>%s: %s\n", __cil_tmp13, __cil_tmp14);
12475    }
12476  } else {
12477
12478  }
12479  }
12480  {
12481#line 1415
12482  tmp = mos7840_port_paranoia_check(port, "mos7840_write_room");
12483  }
12484#line 1415
12485  if (tmp != 0) {
12486    {
12487#line 1416
12488    __cil_tmp15 = & debug;
12489#line 1416
12490    __cil_tmp16 = *__cil_tmp15;
12491#line 1416
12492    if ((int )__cil_tmp16) {
12493      {
12494#line 1416
12495      __cil_tmp17 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12496#line 1416
12497      __cil_tmp18 = (char *)"Invalid port";
12498#line 1416
12499      printk("<7>%s: %s\n", __cil_tmp17, __cil_tmp18);
12500      }
12501    } else {
12502
12503    }
12504    }
12505    {
12506#line 1417
12507    __cil_tmp19 = & debug;
12508#line 1417
12509    __cil_tmp20 = *__cil_tmp19;
12510#line 1417
12511    if ((int )__cil_tmp20) {
12512      {
12513#line 1417
12514      __cil_tmp21 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12515#line 1417
12516      __cil_tmp22 = (char *)" mos7840_write_room:leaving ...........";
12517#line 1417
12518      printk("<7>%s: %s\n", __cil_tmp21, __cil_tmp22);
12519      }
12520    } else {
12521
12522    }
12523    }
12524#line 1418
12525    return (-1);
12526  } else {
12527
12528  }
12529  {
12530#line 1421
12531  mos7840_port = mos7840_get_port_private(port);
12532  }
12533  {
12534#line 1422
12535  __cil_tmp23 = (struct moschip_port *)0;
12536#line 1422
12537  __cil_tmp24 = (unsigned long )__cil_tmp23;
12538#line 1422
12539  __cil_tmp25 = (unsigned long )mos7840_port;
12540#line 1422
12541  if (__cil_tmp25 == __cil_tmp24) {
12542    {
12543#line 1423
12544    __cil_tmp26 = & debug;
12545#line 1423
12546    __cil_tmp27 = *__cil_tmp26;
12547#line 1423
12548    if ((int )__cil_tmp27) {
12549      {
12550#line 1423
12551      __cil_tmp28 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12552#line 1423
12553      __cil_tmp29 = (char *)"mos7840_break:leaving ...........";
12554#line 1423
12555      printk("<7>%s: %s\n", __cil_tmp28, __cil_tmp29);
12556      }
12557    } else {
12558
12559    }
12560    }
12561#line 1424
12562    return (-1);
12563  } else {
12564
12565  }
12566  }
12567  {
12568#line 1427
12569  ldv_spin_lock();
12570#line 1428
12571  i = 0;
12572  }
12573#line 1428
12574  goto ldv_28101;
12575  ldv_28100: ;
12576  {
12577#line 1429
12578  __cil_tmp30 = i * 1UL;
12579#line 1429
12580  __cil_tmp31 = 512 + __cil_tmp30;
12581#line 1429
12582  __cil_tmp32 = (unsigned long )mos7840_port;
12583#line 1429
12584  __cil_tmp33 = __cil_tmp32 + __cil_tmp31;
12585#line 1429
12586  __cil_tmp34 = *((char *)__cil_tmp33);
12587#line 1429
12588  __cil_tmp35 = (signed char )__cil_tmp34;
12589#line 1429
12590  __cil_tmp36 = (int )__cil_tmp35;
12591#line 1429
12592  if (__cil_tmp36 == 0) {
12593#line 1430
12594    room = room + 32;
12595  } else {
12596
12597  }
12598  }
12599#line 1428
12600  i = i + 1;
12601  ldv_28101: ;
12602#line 1428
12603  if (i <= 15) {
12604#line 1429
12605    goto ldv_28100;
12606  } else {
12607#line 1431
12608    goto ldv_28102;
12609  }
12610  ldv_28102: 
12611  {
12612#line 1432
12613  __cil_tmp37 = (unsigned long )mos7840_port;
12614#line 1432
12615  __cil_tmp38 = __cil_tmp37 + 312;
12616#line 1432
12617  __cil_tmp39 = (spinlock_t *)__cil_tmp38;
12618#line 1432
12619  spin_unlock_irqrestore(__cil_tmp39, flags);
12620  }
12621#line 1434
12622  if (room != 0) {
12623#line 1434
12624    room = room + -31;
12625  } else {
12626#line 1434
12627    room = 0;
12628  }
12629  {
12630#line 1435
12631  __cil_tmp40 = & debug;
12632#line 1435
12633  __cil_tmp41 = *__cil_tmp40;
12634#line 1435
12635  if ((int )__cil_tmp41) {
12636    {
12637#line 1435
12638    __cil_tmp42 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12639#line 1435
12640    printk("<7>%s: %s - returns %d\n", __cil_tmp42, "mos7840_write_room", room);
12641    }
12642  } else {
12643
12644  }
12645  }
12646#line 1436
12647  return (room);
12648}
12649}
12650#line 1448 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
12651static int mos7840_write(struct tty_struct *tty , struct usb_serial_port *port , unsigned char const   *data ,
12652                         int count ) 
12653{ int status ;
12654  int i ;
12655  int bytes_sent ;
12656  int transfer_size ;
12657  unsigned long flags ;
12658  struct moschip_port *mos7840_port ;
12659  struct usb_serial *serial ;
12660  struct urb *urb ;
12661  unsigned char const   *current_position ;
12662  unsigned char *data1 ;
12663  int tmp ;
12664  int tmp___0 ;
12665  bool __print_once ;
12666  struct usb_serial_port *__port ;
12667  int _min1 ;
12668  int _min2 ;
12669  int tmp___1 ;
12670  size_t __len ;
12671  void *__ret ;
12672  unsigned int tmp___2 ;
12673  unsigned int tmp___3 ;
12674  bool __print_once___0 ;
12675  struct usb_serial_port *__port___0 ;
12676  bool *__cil_tmp28 ;
12677  bool __cil_tmp29 ;
12678  char *__cil_tmp30 ;
12679  char *__cil_tmp31 ;
12680  bool *__cil_tmp32 ;
12681  bool __cil_tmp33 ;
12682  char *__cil_tmp34 ;
12683  char *__cil_tmp35 ;
12684  bool *__cil_tmp36 ;
12685  bool __cil_tmp37 ;
12686  char *__cil_tmp38 ;
12687  char *__cil_tmp39 ;
12688  struct moschip_port *__cil_tmp40 ;
12689  unsigned long __cil_tmp41 ;
12690  unsigned long __cil_tmp42 ;
12691  bool *__cil_tmp43 ;
12692  bool __cil_tmp44 ;
12693  char *__cil_tmp45 ;
12694  char *__cil_tmp46 ;
12695  unsigned long __cil_tmp47 ;
12696  unsigned long __cil_tmp48 ;
12697  unsigned long __cil_tmp49 ;
12698  unsigned long __cil_tmp50 ;
12699  char __cil_tmp51 ;
12700  signed char __cil_tmp52 ;
12701  int __cil_tmp53 ;
12702  unsigned long __cil_tmp54 ;
12703  unsigned long __cil_tmp55 ;
12704  unsigned long __cil_tmp56 ;
12705  unsigned long __cil_tmp57 ;
12706  unsigned long __cil_tmp58 ;
12707  unsigned long __cil_tmp59 ;
12708  unsigned long __cil_tmp60 ;
12709  unsigned long __cil_tmp61 ;
12710  bool *__cil_tmp62 ;
12711  bool __cil_tmp63 ;
12712  char *__cil_tmp64 ;
12713  unsigned long __cil_tmp65 ;
12714  unsigned long __cil_tmp66 ;
12715  spinlock_t *__cil_tmp67 ;
12716  struct urb *__cil_tmp68 ;
12717  unsigned long __cil_tmp69 ;
12718  unsigned long __cil_tmp70 ;
12719  bool *__cil_tmp71 ;
12720  bool __cil_tmp72 ;
12721  char *__cil_tmp73 ;
12722  void *__cil_tmp74 ;
12723  unsigned long __cil_tmp75 ;
12724  unsigned long __cil_tmp76 ;
12725  unsigned long __cil_tmp77 ;
12726  void *__cil_tmp78 ;
12727  unsigned long __cil_tmp79 ;
12728  unsigned long __cil_tmp80 ;
12729  unsigned long __cil_tmp81 ;
12730  void *__cil_tmp82 ;
12731  unsigned long __cil_tmp83 ;
12732  unsigned long __cil_tmp84 ;
12733  unsigned long __cil_tmp85 ;
12734  void *__cil_tmp86 ;
12735  unsigned long __cil_tmp87 ;
12736  unsigned char *__cil_tmp88 ;
12737  unsigned char *__cil_tmp89 ;
12738  unsigned char __cil_tmp90 ;
12739  unsigned int __cil_tmp91 ;
12740  unsigned long __cil_tmp92 ;
12741  unsigned long __cil_tmp93 ;
12742  struct device *__cil_tmp94 ;
12743  struct device  const  *__cil_tmp95 ;
12744  unsigned long __cil_tmp96 ;
12745  unsigned long __cil_tmp97 ;
12746  struct device *__cil_tmp98 ;
12747  struct device  const  *__cil_tmp99 ;
12748  unsigned long __cil_tmp100 ;
12749  unsigned long __cil_tmp101 ;
12750  void *__cil_tmp102 ;
12751  void const   *__cil_tmp103 ;
12752  unsigned long __cil_tmp104 ;
12753  unsigned long __cil_tmp105 ;
12754  unsigned char __cil_tmp106 ;
12755  unsigned int __cil_tmp107 ;
12756  struct usb_serial *__cil_tmp108 ;
12757  unsigned long __cil_tmp109 ;
12758  unsigned long __cil_tmp110 ;
12759  unsigned char __cil_tmp111 ;
12760  int __cil_tmp112 ;
12761  unsigned long __cil_tmp113 ;
12762  unsigned long __cil_tmp114 ;
12763  unsigned char __cil_tmp115 ;
12764  int __cil_tmp116 ;
12765  int __cil_tmp117 ;
12766  struct usb_device *__cil_tmp118 ;
12767  unsigned long __cil_tmp119 ;
12768  unsigned long __cil_tmp120 ;
12769  __u8 __cil_tmp121 ;
12770  int __cil_tmp122 ;
12771  int __cil_tmp123 ;
12772  unsigned int __cil_tmp124 ;
12773  struct usb_device *__cil_tmp125 ;
12774  unsigned int __cil_tmp126 ;
12775  unsigned long __cil_tmp127 ;
12776  unsigned long __cil_tmp128 ;
12777  void *__cil_tmp129 ;
12778  void *__cil_tmp130 ;
12779  struct usb_device *__cil_tmp131 ;
12780  unsigned long __cil_tmp132 ;
12781  unsigned long __cil_tmp133 ;
12782  __u8 __cil_tmp134 ;
12783  unsigned int __cil_tmp135 ;
12784  struct usb_device *__cil_tmp136 ;
12785  unsigned int __cil_tmp137 ;
12786  unsigned long __cil_tmp138 ;
12787  unsigned long __cil_tmp139 ;
12788  void *__cil_tmp140 ;
12789  void *__cil_tmp141 ;
12790  struct usb_device *__cil_tmp142 ;
12791  unsigned long __cil_tmp143 ;
12792  unsigned long __cil_tmp144 ;
12793  __u8 __cil_tmp145 ;
12794  unsigned int __cil_tmp146 ;
12795  struct usb_device *__cil_tmp147 ;
12796  unsigned int __cil_tmp148 ;
12797  unsigned long __cil_tmp149 ;
12798  unsigned long __cil_tmp150 ;
12799  void *__cil_tmp151 ;
12800  void *__cil_tmp152 ;
12801  unsigned long __cil_tmp153 ;
12802  unsigned long __cil_tmp154 ;
12803  void *__cil_tmp155 ;
12804  bool *__cil_tmp156 ;
12805  bool __cil_tmp157 ;
12806  char *__cil_tmp158 ;
12807  unsigned long __cil_tmp159 ;
12808  unsigned long __cil_tmp160 ;
12809  __u8 __cil_tmp161 ;
12810  int __cil_tmp162 ;
12811  unsigned long __cil_tmp163 ;
12812  unsigned long __cil_tmp164 ;
12813  unsigned long __cil_tmp165 ;
12814  unsigned long __cil_tmp166 ;
12815  unsigned char *__cil_tmp167 ;
12816  unsigned char *__cil_tmp168 ;
12817  unsigned char __cil_tmp169 ;
12818  unsigned int __cil_tmp170 ;
12819  unsigned long __cil_tmp171 ;
12820  unsigned long __cil_tmp172 ;
12821  struct device *__cil_tmp173 ;
12822  struct device  const  *__cil_tmp174 ;
12823  unsigned long __cil_tmp175 ;
12824  unsigned long __cil_tmp176 ;
12825  struct device *__cil_tmp177 ;
12826  struct device  const  *__cil_tmp178 ;
12827  unsigned long __cil_tmp179 ;
12828  unsigned long __cil_tmp180 ;
12829  unsigned long __cil_tmp181 ;
12830  __u32 __cil_tmp182 ;
12831  unsigned long __cil_tmp183 ;
12832  unsigned long __cil_tmp184 ;
12833  unsigned long __cil_tmp185 ;
12834  __u32 __cil_tmp186 ;
12835  bool *__cil_tmp187 ;
12836  bool __cil_tmp188 ;
12837  char *__cil_tmp189 ;
12838  unsigned long __cil_tmp190 ;
12839  unsigned long __cil_tmp191 ;
12840  unsigned long __cil_tmp192 ;
12841  __u32 __cil_tmp193 ;
12842
12843  {
12844#line 1453
12845  bytes_sent = 0;
12846#line 1461
12847  current_position = data;
12848  {
12849#line 1463
12850  __cil_tmp28 = & debug;
12851#line 1463
12852  __cil_tmp29 = *__cil_tmp28;
12853#line 1463
12854  if ((int )__cil_tmp29) {
12855    {
12856#line 1463
12857    __cil_tmp30 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12858#line 1463
12859    __cil_tmp31 = (char *)"entering ...........";
12860#line 1463
12861    printk("<7>%s: %s\n", __cil_tmp30, __cil_tmp31);
12862    }
12863  } else {
12864
12865  }
12866  }
12867  {
12868#line 1498
12869  tmp = mos7840_port_paranoia_check(port, "mos7840_write");
12870  }
12871#line 1498
12872  if (tmp != 0) {
12873    {
12874#line 1499
12875    __cil_tmp32 = & debug;
12876#line 1499
12877    __cil_tmp33 = *__cil_tmp32;
12878#line 1499
12879    if ((int )__cil_tmp33) {
12880      {
12881#line 1499
12882      __cil_tmp34 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12883#line 1499
12884      __cil_tmp35 = (char *)"Port Paranoia failed";
12885#line 1499
12886      printk("<7>%s: %s\n", __cil_tmp34, __cil_tmp35);
12887      }
12888    } else {
12889
12890    }
12891    }
12892#line 1500
12893    return (-1);
12894  } else {
12895
12896  }
12897  {
12898#line 1503
12899  serial = *((struct usb_serial **)port);
12900#line 1504
12901  tmp___0 = mos7840_serial_paranoia_check(serial, "mos7840_write");
12902  }
12903#line 1504
12904  if (tmp___0 != 0) {
12905    {
12906#line 1505
12907    __cil_tmp36 = & debug;
12908#line 1505
12909    __cil_tmp37 = *__cil_tmp36;
12910#line 1505
12911    if ((int )__cil_tmp37) {
12912      {
12913#line 1505
12914      __cil_tmp38 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12915#line 1505
12916      __cil_tmp39 = (char *)"Serial Paranoia failed";
12917#line 1505
12918      printk("<7>%s: %s\n", __cil_tmp38, __cil_tmp39);
12919      }
12920    } else {
12921
12922    }
12923    }
12924#line 1506
12925    return (-1);
12926  } else {
12927
12928  }
12929  {
12930#line 1509
12931  mos7840_port = mos7840_get_port_private(port);
12932  }
12933  {
12934#line 1510
12935  __cil_tmp40 = (struct moschip_port *)0;
12936#line 1510
12937  __cil_tmp41 = (unsigned long )__cil_tmp40;
12938#line 1510
12939  __cil_tmp42 = (unsigned long )mos7840_port;
12940#line 1510
12941  if (__cil_tmp42 == __cil_tmp41) {
12942    {
12943#line 1511
12944    __cil_tmp43 = & debug;
12945#line 1511
12946    __cil_tmp44 = *__cil_tmp43;
12947#line 1511
12948    if ((int )__cil_tmp44) {
12949      {
12950#line 1511
12951      __cil_tmp45 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
12952#line 1511
12953      __cil_tmp46 = (char *)"mos7840_port is NULL";
12954#line 1511
12955      printk("<7>%s: %s\n", __cil_tmp45, __cil_tmp46);
12956      }
12957    } else {
12958
12959    }
12960    }
12961#line 1512
12962    return (-1);
12963  } else {
12964
12965  }
12966  }
12967  {
12968#line 1516
12969  urb = (struct urb *)0;
12970#line 1518
12971  ldv_spin_lock();
12972#line 1519
12973  i = 0;
12974  }
12975#line 1519
12976  goto ldv_28122;
12977  ldv_28121: ;
12978  {
12979#line 1520
12980  __cil_tmp47 = i * 1UL;
12981#line 1520
12982  __cil_tmp48 = 512 + __cil_tmp47;
12983#line 1520
12984  __cil_tmp49 = (unsigned long )mos7840_port;
12985#line 1520
12986  __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
12987#line 1520
12988  __cil_tmp51 = *((char *)__cil_tmp50);
12989#line 1520
12990  __cil_tmp52 = (signed char )__cil_tmp51;
12991#line 1520
12992  __cil_tmp53 = (int )__cil_tmp52;
12993#line 1520
12994  if (__cil_tmp53 == 0) {
12995#line 1521
12996    __cil_tmp54 = i * 1UL;
12997#line 1521
12998    __cil_tmp55 = 512 + __cil_tmp54;
12999#line 1521
13000    __cil_tmp56 = (unsigned long )mos7840_port;
13001#line 1521
13002    __cil_tmp57 = __cil_tmp56 + __cil_tmp55;
13003#line 1521
13004    *((char *)__cil_tmp57) = (char)1;
13005#line 1522
13006    __cil_tmp58 = i * 8UL;
13007#line 1522
13008    __cil_tmp59 = 384 + __cil_tmp58;
13009#line 1522
13010    __cil_tmp60 = (unsigned long )mos7840_port;
13011#line 1522
13012    __cil_tmp61 = __cil_tmp60 + __cil_tmp59;
13013#line 1522
13014    urb = *((struct urb **)__cil_tmp61);
13015    {
13016#line 1523
13017    __cil_tmp62 = & debug;
13018#line 1523
13019    __cil_tmp63 = *__cil_tmp62;
13020#line 1523
13021    if ((int )__cil_tmp63) {
13022      {
13023#line 1523
13024      __cil_tmp64 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13025#line 1523
13026      printk("<7>%s: URB:%d\n", __cil_tmp64, i);
13027      }
13028    } else {
13029
13030    }
13031    }
13032#line 1524
13033    goto ldv_28120;
13034  } else {
13035
13036  }
13037  }
13038#line 1519
13039  i = i + 1;
13040  ldv_28122: ;
13041#line 1519
13042  if (i <= 15) {
13043#line 1520
13044    goto ldv_28121;
13045  } else {
13046#line 1522
13047    goto ldv_28120;
13048  }
13049  ldv_28120: 
13050  {
13051#line 1527
13052  __cil_tmp65 = (unsigned long )mos7840_port;
13053#line 1527
13054  __cil_tmp66 = __cil_tmp65 + 312;
13055#line 1527
13056  __cil_tmp67 = (spinlock_t *)__cil_tmp66;
13057#line 1527
13058  spin_unlock_irqrestore(__cil_tmp67, flags);
13059  }
13060  {
13061#line 1529
13062  __cil_tmp68 = (struct urb *)0;
13063#line 1529
13064  __cil_tmp69 = (unsigned long )__cil_tmp68;
13065#line 1529
13066  __cil_tmp70 = (unsigned long )urb;
13067#line 1529
13068  if (__cil_tmp70 == __cil_tmp69) {
13069    {
13070#line 1530
13071    __cil_tmp71 = & debug;
13072#line 1530
13073    __cil_tmp72 = *__cil_tmp71;
13074#line 1530
13075    if ((int )__cil_tmp72) {
13076      {
13077#line 1530
13078      __cil_tmp73 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13079#line 1530
13080      printk("<7>%s: %s - no more free urbs\n", __cil_tmp73, "mos7840_write");
13081      }
13082    } else {
13083
13084    }
13085    }
13086#line 1531
13087    goto exit;
13088  } else {
13089
13090  }
13091  }
13092  {
13093#line 1534
13094  __cil_tmp74 = (void *)0;
13095#line 1534
13096  __cil_tmp75 = (unsigned long )__cil_tmp74;
13097#line 1534
13098  __cil_tmp76 = (unsigned long )urb;
13099#line 1534
13100  __cil_tmp77 = __cil_tmp76 + 104;
13101#line 1534
13102  __cil_tmp78 = *((void **)__cil_tmp77);
13103#line 1534
13104  __cil_tmp79 = (unsigned long )__cil_tmp78;
13105#line 1534
13106  if (__cil_tmp79 == __cil_tmp75) {
13107    {
13108#line 1535
13109    __cil_tmp80 = (unsigned long )urb;
13110#line 1535
13111    __cil_tmp81 = __cil_tmp80 + 104;
13112#line 1535
13113    *((void **)__cil_tmp81) = kmalloc(32UL, 208U);
13114    }
13115    {
13116#line 1538
13117    __cil_tmp82 = (void *)0;
13118#line 1538
13119    __cil_tmp83 = (unsigned long )__cil_tmp82;
13120#line 1538
13121    __cil_tmp84 = (unsigned long )urb;
13122#line 1538
13123    __cil_tmp85 = __cil_tmp84 + 104;
13124#line 1538
13125    __cil_tmp86 = *((void **)__cil_tmp85);
13126#line 1538
13127    __cil_tmp87 = (unsigned long )__cil_tmp86;
13128#line 1538
13129    if (__cil_tmp87 == __cil_tmp83) {
13130#line 1539
13131      __port = port;
13132      {
13133#line 1539
13134      __cil_tmp88 = (unsigned char *)__port;
13135#line 1539
13136      __cil_tmp89 = __cil_tmp88 + 376UL;
13137#line 1539
13138      __cil_tmp90 = *__cil_tmp89;
13139#line 1539
13140      __cil_tmp91 = (unsigned int )__cil_tmp90;
13141#line 1539
13142      if (__cil_tmp91 == 0U) {
13143        {
13144#line 1539
13145        __print_once = (bool )1;
13146#line 1539
13147        __cil_tmp92 = (unsigned long )__port;
13148#line 1539
13149        __cil_tmp93 = __cil_tmp92 + 1240;
13150#line 1539
13151        __cil_tmp94 = (struct device *)__cil_tmp93;
13152#line 1539
13153        __cil_tmp95 = (struct device  const  *)__cil_tmp94;
13154#line 1539
13155        dev_err(__cil_tmp95, "%s no more kernel memory...\n", "mos7840_write");
13156        }
13157      } else
13158#line 1539
13159      if (! __print_once) {
13160        {
13161#line 1539
13162        __print_once = (bool )1;
13163#line 1539
13164        __cil_tmp96 = (unsigned long )__port;
13165#line 1539
13166        __cil_tmp97 = __cil_tmp96 + 1240;
13167#line 1539
13168        __cil_tmp98 = (struct device *)__cil_tmp97;
13169#line 1539
13170        __cil_tmp99 = (struct device  const  *)__cil_tmp98;
13171#line 1539
13172        dev_err(__cil_tmp99, "%s no more kernel memory...\n", "mos7840_write");
13173        }
13174      } else {
13175
13176      }
13177      }
13178#line 1541
13179      goto exit;
13180    } else {
13181
13182    }
13183    }
13184  } else {
13185
13186  }
13187  }
13188#line 1544
13189  _min1 = count;
13190#line 1544
13191  _min2 = 32;
13192#line 1544
13193  if (_min1 < _min2) {
13194#line 1544
13195    tmp___1 = _min1;
13196  } else {
13197#line 1544
13198    tmp___1 = _min2;
13199  }
13200  {
13201#line 1544
13202  transfer_size = tmp___1;
13203#line 1546
13204  __len = (size_t )transfer_size;
13205#line 1546
13206  __cil_tmp100 = (unsigned long )urb;
13207#line 1546
13208  __cil_tmp101 = __cil_tmp100 + 104;
13209#line 1546
13210  __cil_tmp102 = *((void **)__cil_tmp101);
13211#line 1546
13212  __cil_tmp103 = (void const   *)current_position;
13213#line 1546
13214  __ret = __builtin_memcpy(__cil_tmp102, __cil_tmp103, __len);
13215  }
13216  {
13217#line 1549
13218  __cil_tmp104 = (unsigned long )serial;
13219#line 1549
13220  __cil_tmp105 = __cil_tmp104 + 26;
13221#line 1549
13222  __cil_tmp106 = *((unsigned char *)__cil_tmp105);
13223#line 1549
13224  __cil_tmp107 = (unsigned int )__cil_tmp106;
13225#line 1549
13226  if (__cil_tmp107 == 2U) {
13227    {
13228#line 1549
13229    __cil_tmp108 = *((struct usb_serial **)port);
13230#line 1549
13231    __cil_tmp109 = (unsigned long )__cil_tmp108;
13232#line 1549
13233    __cil_tmp110 = __cil_tmp109 + 25;
13234#line 1549
13235    __cil_tmp111 = *((unsigned char *)__cil_tmp110);
13236#line 1549
13237    __cil_tmp112 = (int )__cil_tmp111;
13238#line 1549
13239    __cil_tmp113 = (unsigned long )port;
13240#line 1549
13241    __cil_tmp114 = __cil_tmp113 + 816;
13242#line 1549
13243    __cil_tmp115 = *((unsigned char *)__cil_tmp114);
13244#line 1549
13245    __cil_tmp116 = (int )__cil_tmp115;
13246#line 1549
13247    __cil_tmp117 = __cil_tmp116 - __cil_tmp112;
13248#line 1549
13249    if (__cil_tmp117 & 1) {
13250      {
13251#line 1552
13252      __cil_tmp118 = *((struct usb_device **)serial);
13253#line 1552
13254      __cil_tmp119 = (unsigned long )port;
13255#line 1552
13256      __cil_tmp120 = __cil_tmp119 + 1040;
13257#line 1552
13258      __cil_tmp121 = *((__u8 *)__cil_tmp120);
13259#line 1552
13260      __cil_tmp122 = (int )__cil_tmp121;
13261#line 1552
13262      __cil_tmp123 = __cil_tmp122 + 2;
13263#line 1552
13264      __cil_tmp124 = (unsigned int )__cil_tmp123;
13265#line 1552
13266      tmp___2 = __create_pipe(__cil_tmp118, __cil_tmp124);
13267#line 1552
13268      __cil_tmp125 = *((struct usb_device **)serial);
13269#line 1552
13270      __cil_tmp126 = tmp___2 | 3221225472U;
13271#line 1552
13272      __cil_tmp127 = (unsigned long )urb;
13273#line 1552
13274      __cil_tmp128 = __cil_tmp127 + 104;
13275#line 1552
13276      __cil_tmp129 = *((void **)__cil_tmp128);
13277#line 1552
13278      __cil_tmp130 = (void *)mos7840_port;
13279#line 1552
13280      usb_fill_bulk_urb(urb, __cil_tmp125, __cil_tmp126, __cil_tmp129, transfer_size,
13281                        & mos7840_bulk_out_data_callback, __cil_tmp130);
13282      }
13283    } else {
13284      {
13285#line 1560
13286      __cil_tmp131 = *((struct usb_device **)serial);
13287#line 1560
13288      __cil_tmp132 = (unsigned long )port;
13289#line 1560
13290      __cil_tmp133 = __cil_tmp132 + 1040;
13291#line 1560
13292      __cil_tmp134 = *((__u8 *)__cil_tmp133);
13293#line 1560
13294      __cil_tmp135 = (unsigned int )__cil_tmp134;
13295#line 1560
13296      tmp___3 = __create_pipe(__cil_tmp131, __cil_tmp135);
13297#line 1560
13298      __cil_tmp136 = *((struct usb_device **)serial);
13299#line 1560
13300      __cil_tmp137 = tmp___3 | 3221225472U;
13301#line 1560
13302      __cil_tmp138 = (unsigned long )urb;
13303#line 1560
13304      __cil_tmp139 = __cil_tmp138 + 104;
13305#line 1560
13306      __cil_tmp140 = *((void **)__cil_tmp139);
13307#line 1560
13308      __cil_tmp141 = (void *)mos7840_port;
13309#line 1560
13310      usb_fill_bulk_urb(urb, __cil_tmp136, __cil_tmp137, __cil_tmp140, transfer_size,
13311                        & mos7840_bulk_out_data_callback, __cil_tmp141);
13312      }
13313    }
13314    }
13315  } else {
13316    {
13317#line 1560
13318    __cil_tmp142 = *((struct usb_device **)serial);
13319#line 1560
13320    __cil_tmp143 = (unsigned long )port;
13321#line 1560
13322    __cil_tmp144 = __cil_tmp143 + 1040;
13323#line 1560
13324    __cil_tmp145 = *((__u8 *)__cil_tmp144);
13325#line 1560
13326    __cil_tmp146 = (unsigned int )__cil_tmp145;
13327#line 1560
13328    tmp___3 = __create_pipe(__cil_tmp142, __cil_tmp146);
13329#line 1560
13330    __cil_tmp147 = *((struct usb_device **)serial);
13331#line 1560
13332    __cil_tmp148 = tmp___3 | 3221225472U;
13333#line 1560
13334    __cil_tmp149 = (unsigned long )urb;
13335#line 1560
13336    __cil_tmp150 = __cil_tmp149 + 104;
13337#line 1560
13338    __cil_tmp151 = *((void **)__cil_tmp150);
13339#line 1560
13340    __cil_tmp152 = (void *)mos7840_port;
13341#line 1560
13342    usb_fill_bulk_urb(urb, __cil_tmp147, __cil_tmp148, __cil_tmp151, transfer_size,
13343                      & mos7840_bulk_out_data_callback, __cil_tmp152);
13344    }
13345  }
13346  }
13347#line 1569
13348  __cil_tmp153 = (unsigned long )urb;
13349#line 1569
13350  __cil_tmp154 = __cil_tmp153 + 104;
13351#line 1569
13352  __cil_tmp155 = *((void **)__cil_tmp154);
13353#line 1569
13354  data1 = (unsigned char *)__cil_tmp155;
13355  {
13356#line 1570
13357  __cil_tmp156 = & debug;
13358#line 1570
13359  __cil_tmp157 = *__cil_tmp156;
13360#line 1570
13361  if ((int )__cil_tmp157) {
13362    {
13363#line 1570
13364    __cil_tmp158 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13365#line 1570
13366    __cil_tmp159 = (unsigned long )port;
13367#line 1570
13368    __cil_tmp160 = __cil_tmp159 + 1040;
13369#line 1570
13370    __cil_tmp161 = *((__u8 *)__cil_tmp160);
13371#line 1570
13372    __cil_tmp162 = (int )__cil_tmp161;
13373#line 1570
13374    printk("<7>%s: bulkout endpoint is %d\n", __cil_tmp158, __cil_tmp162);
13375    }
13376  } else {
13377
13378  }
13379  }
13380  {
13381#line 1573
13382  status = ldv_usb_submit_urb_26(urb, 32U);
13383  }
13384#line 1575
13385  if (status != 0) {
13386#line 1576
13387    __cil_tmp163 = i * 1UL;
13388#line 1576
13389    __cil_tmp164 = 512 + __cil_tmp163;
13390#line 1576
13391    __cil_tmp165 = (unsigned long )mos7840_port;
13392#line 1576
13393    __cil_tmp166 = __cil_tmp165 + __cil_tmp164;
13394#line 1576
13395    *((char *)__cil_tmp166) = (char)0;
13396#line 1577
13397    __port___0 = port;
13398    {
13399#line 1577
13400    __cil_tmp167 = (unsigned char *)__port___0;
13401#line 1577
13402    __cil_tmp168 = __cil_tmp167 + 376UL;
13403#line 1577
13404    __cil_tmp169 = *__cil_tmp168;
13405#line 1577
13406    __cil_tmp170 = (unsigned int )__cil_tmp169;
13407#line 1577
13408    if (__cil_tmp170 == 0U) {
13409      {
13410#line 1577
13411      __print_once___0 = (bool )1;
13412#line 1577
13413      __cil_tmp171 = (unsigned long )__port___0;
13414#line 1577
13415      __cil_tmp172 = __cil_tmp171 + 1240;
13416#line 1577
13417      __cil_tmp173 = (struct device *)__cil_tmp172;
13418#line 1577
13419      __cil_tmp174 = (struct device  const  *)__cil_tmp173;
13420#line 1577
13421      dev_err(__cil_tmp174, "%s - usb_submit_urb(write bulk) failed with status = %d\n",
13422              "mos7840_write", status);
13423      }
13424    } else
13425#line 1577
13426    if (! __print_once___0) {
13427      {
13428#line 1577
13429      __print_once___0 = (bool )1;
13430#line 1577
13431      __cil_tmp175 = (unsigned long )__port___0;
13432#line 1577
13433      __cil_tmp176 = __cil_tmp175 + 1240;
13434#line 1577
13435      __cil_tmp177 = (struct device *)__cil_tmp176;
13436#line 1577
13437      __cil_tmp178 = (struct device  const  *)__cil_tmp177;
13438#line 1577
13439      dev_err(__cil_tmp178, "%s - usb_submit_urb(write bulk) failed with status = %d\n",
13440              "mos7840_write", status);
13441      }
13442    } else {
13443
13444    }
13445    }
13446#line 1579
13447    bytes_sent = status;
13448#line 1580
13449    goto exit;
13450  } else {
13451
13452  }
13453#line 1582
13454  bytes_sent = transfer_size;
13455#line 1583
13456  __cil_tmp179 = 220 + 16;
13457#line 1583
13458  __cil_tmp180 = (unsigned long )mos7840_port;
13459#line 1583
13460  __cil_tmp181 = __cil_tmp180 + __cil_tmp179;
13461#line 1583
13462  __cil_tmp182 = (__u32 )transfer_size;
13463#line 1583
13464  __cil_tmp183 = 220 + 16;
13465#line 1583
13466  __cil_tmp184 = (unsigned long )mos7840_port;
13467#line 1583
13468  __cil_tmp185 = __cil_tmp184 + __cil_tmp183;
13469#line 1583
13470  __cil_tmp186 = *((__u32 *)__cil_tmp185);
13471#line 1583
13472  *((__u32 *)__cil_tmp181) = __cil_tmp186 + __cil_tmp182;
13473#line 1584
13474  __asm__  volatile   ("": : : "memory");
13475  {
13476#line 1585
13477  __cil_tmp187 = & debug;
13478#line 1585
13479  __cil_tmp188 = *__cil_tmp187;
13480#line 1585
13481  if ((int )__cil_tmp188) {
13482    {
13483#line 1585
13484    __cil_tmp189 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13485#line 1585
13486    __cil_tmp190 = 220 + 16;
13487#line 1585
13488    __cil_tmp191 = (unsigned long )mos7840_port;
13489#line 1585
13490    __cil_tmp192 = __cil_tmp191 + __cil_tmp190;
13491#line 1585
13492    __cil_tmp193 = *((__u32 *)__cil_tmp192);
13493#line 1585
13494    printk("<7>%s: mos7840_port->icount.tx is %d:\n", __cil_tmp189, __cil_tmp193);
13495    }
13496  } else {
13497
13498  }
13499  }
13500  exit: ;
13501#line 1587
13502  return (bytes_sent);
13503}
13504}
13505#line 1597 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
13506static void mos7840_throttle(struct tty_struct *tty ) 
13507{ struct usb_serial_port *port ;
13508  struct moschip_port *mos7840_port ;
13509  int status ;
13510  int tmp ;
13511  unsigned char stop_char ;
13512  unsigned long __cil_tmp7 ;
13513  unsigned long __cil_tmp8 ;
13514  void *__cil_tmp9 ;
13515  bool *__cil_tmp10 ;
13516  bool __cil_tmp11 ;
13517  char *__cil_tmp12 ;
13518  char *__cil_tmp13 ;
13519  bool *__cil_tmp14 ;
13520  bool __cil_tmp15 ;
13521  char *__cil_tmp16 ;
13522  unsigned long __cil_tmp17 ;
13523  unsigned long __cil_tmp18 ;
13524  unsigned char __cil_tmp19 ;
13525  int __cil_tmp20 ;
13526  struct moschip_port *__cil_tmp21 ;
13527  unsigned long __cil_tmp22 ;
13528  unsigned long __cil_tmp23 ;
13529  unsigned long __cil_tmp24 ;
13530  unsigned long __cil_tmp25 ;
13531  char __cil_tmp26 ;
13532  signed char __cil_tmp27 ;
13533  int __cil_tmp28 ;
13534  bool *__cil_tmp29 ;
13535  bool __cil_tmp30 ;
13536  char *__cil_tmp31 ;
13537  char *__cil_tmp32 ;
13538  bool *__cil_tmp33 ;
13539  bool __cil_tmp34 ;
13540  char *__cil_tmp35 ;
13541  char *__cil_tmp36 ;
13542  unsigned long __cil_tmp37 ;
13543  unsigned long __cil_tmp38 ;
13544  struct ktermios *__cil_tmp39 ;
13545  tcflag_t __cil_tmp40 ;
13546  unsigned int __cil_tmp41 ;
13547  unsigned char *__cil_tmp42 ;
13548  unsigned long __cil_tmp43 ;
13549  unsigned long __cil_tmp44 ;
13550  unsigned long __cil_tmp45 ;
13551  unsigned long __cil_tmp46 ;
13552  struct ktermios *__cil_tmp47 ;
13553  unsigned long __cil_tmp48 ;
13554  unsigned long __cil_tmp49 ;
13555  unsigned char const   *__cil_tmp50 ;
13556  unsigned long __cil_tmp51 ;
13557  unsigned long __cil_tmp52 ;
13558  struct ktermios *__cil_tmp53 ;
13559  unsigned long __cil_tmp54 ;
13560  unsigned long __cil_tmp55 ;
13561  tcflag_t __cil_tmp56 ;
13562  int __cil_tmp57 ;
13563  unsigned long __cil_tmp58 ;
13564  unsigned long __cil_tmp59 ;
13565  unsigned long __cil_tmp60 ;
13566  unsigned long __cil_tmp61 ;
13567  __u8 __cil_tmp62 ;
13568  unsigned int __cil_tmp63 ;
13569  unsigned int __cil_tmp64 ;
13570  __u16 __cil_tmp65 ;
13571  unsigned long __cil_tmp66 ;
13572  unsigned long __cil_tmp67 ;
13573  __u8 __cil_tmp68 ;
13574  int __cil_tmp69 ;
13575  __u16 __cil_tmp70 ;
13576
13577  {
13578  {
13579#line 1599
13580  __cil_tmp7 = (unsigned long )tty;
13581#line 1599
13582  __cil_tmp8 = __cil_tmp7 + 1064;
13583#line 1599
13584  __cil_tmp9 = *((void **)__cil_tmp8);
13585#line 1599
13586  port = (struct usb_serial_port *)__cil_tmp9;
13587#line 1603
13588  tmp = mos7840_port_paranoia_check(port, "mos7840_throttle");
13589  }
13590#line 1603
13591  if (tmp != 0) {
13592    {
13593#line 1604
13594    __cil_tmp10 = & debug;
13595#line 1604
13596    __cil_tmp11 = *__cil_tmp10;
13597#line 1604
13598    if ((int )__cil_tmp11) {
13599      {
13600#line 1604
13601      __cil_tmp12 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13602#line 1604
13603      __cil_tmp13 = (char *)"Invalid port";
13604#line 1604
13605      printk("<7>%s: %s\n", __cil_tmp12, __cil_tmp13);
13606      }
13607    } else {
13608
13609    }
13610    }
13611#line 1605
13612    return;
13613  } else {
13614
13615  }
13616  {
13617#line 1608
13618  __cil_tmp14 = & debug;
13619#line 1608
13620  __cil_tmp15 = *__cil_tmp14;
13621#line 1608
13622  if ((int )__cil_tmp15) {
13623    {
13624#line 1608
13625    __cil_tmp16 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13626#line 1608
13627    __cil_tmp17 = (unsigned long )port;
13628#line 1608
13629    __cil_tmp18 = __cil_tmp17 + 816;
13630#line 1608
13631    __cil_tmp19 = *((unsigned char *)__cil_tmp18);
13632#line 1608
13633    __cil_tmp20 = (int )__cil_tmp19;
13634#line 1608
13635    printk("<7>%s: - port %d\n", __cil_tmp16, __cil_tmp20);
13636    }
13637  } else {
13638
13639  }
13640  }
13641  {
13642#line 1610
13643  mos7840_port = mos7840_get_port_private(port);
13644  }
13645  {
13646#line 1612
13647  __cil_tmp21 = (struct moschip_port *)0;
13648#line 1612
13649  __cil_tmp22 = (unsigned long )__cil_tmp21;
13650#line 1612
13651  __cil_tmp23 = (unsigned long )mos7840_port;
13652#line 1612
13653  if (__cil_tmp23 == __cil_tmp22) {
13654#line 1613
13655    return;
13656  } else {
13657
13658  }
13659  }
13660  {
13661#line 1615
13662  __cil_tmp24 = (unsigned long )mos7840_port;
13663#line 1615
13664  __cil_tmp25 = __cil_tmp24 + 34;
13665#line 1615
13666  __cil_tmp26 = *((char *)__cil_tmp25);
13667#line 1615
13668  __cil_tmp27 = (signed char )__cil_tmp26;
13669#line 1615
13670  __cil_tmp28 = (int )__cil_tmp27;
13671#line 1615
13672  if (__cil_tmp28 == 0) {
13673    {
13674#line 1616
13675    __cil_tmp29 = & debug;
13676#line 1616
13677    __cil_tmp30 = *__cil_tmp29;
13678#line 1616
13679    if ((int )__cil_tmp30) {
13680      {
13681#line 1616
13682      __cil_tmp31 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13683#line 1616
13684      __cil_tmp32 = (char *)"port not opened";
13685#line 1616
13686      printk("<7>%s: %s\n", __cil_tmp31, __cil_tmp32);
13687      }
13688    } else {
13689
13690    }
13691    }
13692#line 1617
13693    return;
13694  } else {
13695
13696  }
13697  }
13698  {
13699#line 1620
13700  __cil_tmp33 = & debug;
13701#line 1620
13702  __cil_tmp34 = *__cil_tmp33;
13703#line 1620
13704  if ((int )__cil_tmp34) {
13705    {
13706#line 1620
13707    __cil_tmp35 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13708#line 1620
13709    __cil_tmp36 = (char *)"Entering ..........";
13710#line 1620
13711    printk("<7>%s: %s\n", __cil_tmp35, __cil_tmp36);
13712    }
13713  } else {
13714
13715  }
13716  }
13717  {
13718#line 1623
13719  __cil_tmp37 = (unsigned long )tty;
13720#line 1623
13721  __cil_tmp38 = __cil_tmp37 + 456;
13722#line 1623
13723  __cil_tmp39 = *((struct ktermios **)__cil_tmp38);
13724#line 1623
13725  __cil_tmp40 = *((tcflag_t *)__cil_tmp39);
13726#line 1623
13727  __cil_tmp41 = __cil_tmp40 & 4096U;
13728#line 1623
13729  if (__cil_tmp41 != 0U) {
13730    {
13731#line 1624
13732    __cil_tmp42 = & stop_char;
13733#line 1624
13734    __cil_tmp43 = 9 * 1UL;
13735#line 1624
13736    __cil_tmp44 = 17 + __cil_tmp43;
13737#line 1624
13738    __cil_tmp45 = (unsigned long )tty;
13739#line 1624
13740    __cil_tmp46 = __cil_tmp45 + 456;
13741#line 1624
13742    __cil_tmp47 = *((struct ktermios **)__cil_tmp46);
13743#line 1624
13744    __cil_tmp48 = (unsigned long )__cil_tmp47;
13745#line 1624
13746    __cil_tmp49 = __cil_tmp48 + __cil_tmp44;
13747#line 1624
13748    *__cil_tmp42 = *((cc_t *)__cil_tmp49);
13749#line 1625
13750    __cil_tmp50 = (unsigned char const   *)(& stop_char);
13751#line 1625
13752    status = mos7840_write(tty, port, __cil_tmp50, 1);
13753    }
13754#line 1626
13755    if (status <= 0) {
13756#line 1627
13757      return;
13758    } else {
13759
13760    }
13761  } else {
13762
13763  }
13764  }
13765  {
13766#line 1630
13767  __cil_tmp51 = (unsigned long )tty;
13768#line 1630
13769  __cil_tmp52 = __cil_tmp51 + 456;
13770#line 1630
13771  __cil_tmp53 = *((struct ktermios **)__cil_tmp52);
13772#line 1630
13773  __cil_tmp54 = (unsigned long )__cil_tmp53;
13774#line 1630
13775  __cil_tmp55 = __cil_tmp54 + 8;
13776#line 1630
13777  __cil_tmp56 = *((tcflag_t *)__cil_tmp55);
13778#line 1630
13779  __cil_tmp57 = (int )__cil_tmp56;
13780#line 1630
13781  if (__cil_tmp57 < 0) {
13782    {
13783#line 1631
13784    __cil_tmp58 = (unsigned long )mos7840_port;
13785#line 1631
13786    __cil_tmp59 = __cil_tmp58 + 33;
13787#line 1631
13788    __cil_tmp60 = (unsigned long )mos7840_port;
13789#line 1631
13790    __cil_tmp61 = __cil_tmp60 + 33;
13791#line 1631
13792    __cil_tmp62 = *((__u8 *)__cil_tmp61);
13793#line 1631
13794    __cil_tmp63 = (unsigned int )__cil_tmp62;
13795#line 1631
13796    __cil_tmp64 = __cil_tmp63 & 253U;
13797#line 1631
13798    *((__u8 *)__cil_tmp59) = (__u8 )__cil_tmp64;
13799#line 1632
13800    __cil_tmp65 = (__u16 )4;
13801#line 1632
13802    __cil_tmp66 = (unsigned long )mos7840_port;
13803#line 1632
13804    __cil_tmp67 = __cil_tmp66 + 33;
13805#line 1632
13806    __cil_tmp68 = *((__u8 *)__cil_tmp67);
13807#line 1632
13808    __cil_tmp69 = (int )__cil_tmp68;
13809#line 1632
13810    __cil_tmp70 = (__u16 )__cil_tmp69;
13811#line 1632
13812    status = mos7840_set_uart_reg(port, __cil_tmp65, __cil_tmp70);
13813    }
13814#line 1634
13815    if (status < 0) {
13816#line 1635
13817      return;
13818    } else {
13819
13820    }
13821  } else {
13822
13823  }
13824  }
13825#line 1637
13826  return;
13827}
13828}
13829#line 1645 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
13830static void mos7840_unthrottle(struct tty_struct *tty ) 
13831{ struct usb_serial_port *port ;
13832  int status ;
13833  struct moschip_port *mos7840_port ;
13834  struct moschip_port *tmp ;
13835  int tmp___0 ;
13836  unsigned char start_char ;
13837  unsigned long __cil_tmp8 ;
13838  unsigned long __cil_tmp9 ;
13839  void *__cil_tmp10 ;
13840  bool *__cil_tmp11 ;
13841  bool __cil_tmp12 ;
13842  char *__cil_tmp13 ;
13843  char *__cil_tmp14 ;
13844  struct moschip_port *__cil_tmp15 ;
13845  unsigned long __cil_tmp16 ;
13846  unsigned long __cil_tmp17 ;
13847  unsigned long __cil_tmp18 ;
13848  unsigned long __cil_tmp19 ;
13849  char __cil_tmp20 ;
13850  signed char __cil_tmp21 ;
13851  int __cil_tmp22 ;
13852  bool *__cil_tmp23 ;
13853  bool __cil_tmp24 ;
13854  char *__cil_tmp25 ;
13855  bool *__cil_tmp26 ;
13856  bool __cil_tmp27 ;
13857  char *__cil_tmp28 ;
13858  char *__cil_tmp29 ;
13859  unsigned long __cil_tmp30 ;
13860  unsigned long __cil_tmp31 ;
13861  struct ktermios *__cil_tmp32 ;
13862  tcflag_t __cil_tmp33 ;
13863  unsigned int __cil_tmp34 ;
13864  unsigned char *__cil_tmp35 ;
13865  unsigned long __cil_tmp36 ;
13866  unsigned long __cil_tmp37 ;
13867  unsigned long __cil_tmp38 ;
13868  unsigned long __cil_tmp39 ;
13869  struct ktermios *__cil_tmp40 ;
13870  unsigned long __cil_tmp41 ;
13871  unsigned long __cil_tmp42 ;
13872  unsigned char const   *__cil_tmp43 ;
13873  unsigned long __cil_tmp44 ;
13874  unsigned long __cil_tmp45 ;
13875  struct ktermios *__cil_tmp46 ;
13876  unsigned long __cil_tmp47 ;
13877  unsigned long __cil_tmp48 ;
13878  tcflag_t __cil_tmp49 ;
13879  int __cil_tmp50 ;
13880  unsigned long __cil_tmp51 ;
13881  unsigned long __cil_tmp52 ;
13882  unsigned long __cil_tmp53 ;
13883  unsigned long __cil_tmp54 ;
13884  __u8 __cil_tmp55 ;
13885  unsigned int __cil_tmp56 ;
13886  unsigned int __cil_tmp57 ;
13887  __u16 __cil_tmp58 ;
13888  unsigned long __cil_tmp59 ;
13889  unsigned long __cil_tmp60 ;
13890  __u8 __cil_tmp61 ;
13891  int __cil_tmp62 ;
13892  __u16 __cil_tmp63 ;
13893
13894  {
13895  {
13896#line 1647
13897  __cil_tmp8 = (unsigned long )tty;
13898#line 1647
13899  __cil_tmp9 = __cil_tmp8 + 1064;
13900#line 1647
13901  __cil_tmp10 = *((void **)__cil_tmp9);
13902#line 1647
13903  port = (struct usb_serial_port *)__cil_tmp10;
13904#line 1649
13905  tmp = mos7840_get_port_private(port);
13906#line 1649
13907  mos7840_port = tmp;
13908#line 1651
13909  tmp___0 = mos7840_port_paranoia_check(port, "mos7840_unthrottle");
13910  }
13911#line 1651
13912  if (tmp___0 != 0) {
13913    {
13914#line 1652
13915    __cil_tmp11 = & debug;
13916#line 1652
13917    __cil_tmp12 = *__cil_tmp11;
13918#line 1652
13919    if ((int )__cil_tmp12) {
13920      {
13921#line 1652
13922      __cil_tmp13 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13923#line 1652
13924      __cil_tmp14 = (char *)"Invalid port";
13925#line 1652
13926      printk("<7>%s: %s\n", __cil_tmp13, __cil_tmp14);
13927      }
13928    } else {
13929
13930    }
13931    }
13932#line 1653
13933    return;
13934  } else {
13935
13936  }
13937  {
13938#line 1656
13939  __cil_tmp15 = (struct moschip_port *)0;
13940#line 1656
13941  __cil_tmp16 = (unsigned long )__cil_tmp15;
13942#line 1656
13943  __cil_tmp17 = (unsigned long )mos7840_port;
13944#line 1656
13945  if (__cil_tmp17 == __cil_tmp16) {
13946#line 1657
13947    return;
13948  } else {
13949
13950  }
13951  }
13952  {
13953#line 1659
13954  __cil_tmp18 = (unsigned long )mos7840_port;
13955#line 1659
13956  __cil_tmp19 = __cil_tmp18 + 34;
13957#line 1659
13958  __cil_tmp20 = *((char *)__cil_tmp19);
13959#line 1659
13960  __cil_tmp21 = (signed char )__cil_tmp20;
13961#line 1659
13962  __cil_tmp22 = (int )__cil_tmp21;
13963#line 1659
13964  if (__cil_tmp22 == 0) {
13965    {
13966#line 1660
13967    __cil_tmp23 = & debug;
13968#line 1660
13969    __cil_tmp24 = *__cil_tmp23;
13970#line 1660
13971    if ((int )__cil_tmp24) {
13972      {
13973#line 1660
13974      __cil_tmp25 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13975#line 1660
13976      printk("<7>%s: %s - port not opened\n", __cil_tmp25, "mos7840_unthrottle");
13977      }
13978    } else {
13979
13980    }
13981    }
13982#line 1661
13983    return;
13984  } else {
13985
13986  }
13987  }
13988  {
13989#line 1664
13990  __cil_tmp26 = & debug;
13991#line 1664
13992  __cil_tmp27 = *__cil_tmp26;
13993#line 1664
13994  if ((int )__cil_tmp27) {
13995    {
13996#line 1664
13997    __cil_tmp28 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
13998#line 1664
13999    __cil_tmp29 = (char *)"Entering ..........";
14000#line 1664
14001    printk("<7>%s: %s\n", __cil_tmp28, __cil_tmp29);
14002    }
14003  } else {
14004
14005  }
14006  }
14007  {
14008#line 1667
14009  __cil_tmp30 = (unsigned long )tty;
14010#line 1667
14011  __cil_tmp31 = __cil_tmp30 + 456;
14012#line 1667
14013  __cil_tmp32 = *((struct ktermios **)__cil_tmp31);
14014#line 1667
14015  __cil_tmp33 = *((tcflag_t *)__cil_tmp32);
14016#line 1667
14017  __cil_tmp34 = __cil_tmp33 & 4096U;
14018#line 1667
14019  if (__cil_tmp34 != 0U) {
14020    {
14021#line 1668
14022    __cil_tmp35 = & start_char;
14023#line 1668
14024    __cil_tmp36 = 8 * 1UL;
14025#line 1668
14026    __cil_tmp37 = 17 + __cil_tmp36;
14027#line 1668
14028    __cil_tmp38 = (unsigned long )tty;
14029#line 1668
14030    __cil_tmp39 = __cil_tmp38 + 456;
14031#line 1668
14032    __cil_tmp40 = *((struct ktermios **)__cil_tmp39);
14033#line 1668
14034    __cil_tmp41 = (unsigned long )__cil_tmp40;
14035#line 1668
14036    __cil_tmp42 = __cil_tmp41 + __cil_tmp37;
14037#line 1668
14038    *__cil_tmp35 = *((cc_t *)__cil_tmp42);
14039#line 1669
14040    __cil_tmp43 = (unsigned char const   *)(& start_char);
14041#line 1669
14042    status = mos7840_write(tty, port, __cil_tmp43, 1);
14043    }
14044#line 1670
14045    if (status <= 0) {
14046#line 1671
14047      return;
14048    } else {
14049
14050    }
14051  } else {
14052
14053  }
14054  }
14055  {
14056#line 1675
14057  __cil_tmp44 = (unsigned long )tty;
14058#line 1675
14059  __cil_tmp45 = __cil_tmp44 + 456;
14060#line 1675
14061  __cil_tmp46 = *((struct ktermios **)__cil_tmp45);
14062#line 1675
14063  __cil_tmp47 = (unsigned long )__cil_tmp46;
14064#line 1675
14065  __cil_tmp48 = __cil_tmp47 + 8;
14066#line 1675
14067  __cil_tmp49 = *((tcflag_t *)__cil_tmp48);
14068#line 1675
14069  __cil_tmp50 = (int )__cil_tmp49;
14070#line 1675
14071  if (__cil_tmp50 < 0) {
14072    {
14073#line 1676
14074    __cil_tmp51 = (unsigned long )mos7840_port;
14075#line 1676
14076    __cil_tmp52 = __cil_tmp51 + 33;
14077#line 1676
14078    __cil_tmp53 = (unsigned long )mos7840_port;
14079#line 1676
14080    __cil_tmp54 = __cil_tmp53 + 33;
14081#line 1676
14082    __cil_tmp55 = *((__u8 *)__cil_tmp54);
14083#line 1676
14084    __cil_tmp56 = (unsigned int )__cil_tmp55;
14085#line 1676
14086    __cil_tmp57 = __cil_tmp56 | 2U;
14087#line 1676
14088    *((__u8 *)__cil_tmp52) = (__u8 )__cil_tmp57;
14089#line 1677
14090    __cil_tmp58 = (__u16 )4;
14091#line 1677
14092    __cil_tmp59 = (unsigned long )mos7840_port;
14093#line 1677
14094    __cil_tmp60 = __cil_tmp59 + 33;
14095#line 1677
14096    __cil_tmp61 = *((__u8 *)__cil_tmp60);
14097#line 1677
14098    __cil_tmp62 = (int )__cil_tmp61;
14099#line 1677
14100    __cil_tmp63 = (__u16 )__cil_tmp62;
14101#line 1677
14102    status = mos7840_set_uart_reg(port, __cil_tmp58, __cil_tmp63);
14103    }
14104#line 1679
14105    if (status < 0) {
14106#line 1680
14107      return;
14108    } else {
14109
14110    }
14111  } else {
14112
14113  }
14114  }
14115#line 1682
14116  return;
14117}
14118}
14119#line 1684 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
14120static int mos7840_tiocmget(struct tty_struct *tty ) 
14121{ struct usb_serial_port *port ;
14122  struct moschip_port *mos7840_port ;
14123  unsigned int result ;
14124  __u16 msr ;
14125  __u16 mcr ;
14126  int status ;
14127  int tmp ;
14128  int tmp___0 ;
14129  int tmp___1 ;
14130  int tmp___2 ;
14131  int tmp___3 ;
14132  int tmp___4 ;
14133  int tmp___5 ;
14134  unsigned long __cil_tmp15 ;
14135  unsigned long __cil_tmp16 ;
14136  void *__cil_tmp17 ;
14137  bool *__cil_tmp18 ;
14138  bool __cil_tmp19 ;
14139  char *__cil_tmp20 ;
14140  unsigned long __cil_tmp21 ;
14141  unsigned long __cil_tmp22 ;
14142  unsigned char __cil_tmp23 ;
14143  int __cil_tmp24 ;
14144  struct moschip_port *__cil_tmp25 ;
14145  unsigned long __cil_tmp26 ;
14146  unsigned long __cil_tmp27 ;
14147  __u16 __cil_tmp28 ;
14148  __u16 __cil_tmp29 ;
14149  __u16 *__cil_tmp30 ;
14150  __u16 __cil_tmp31 ;
14151  int __cil_tmp32 ;
14152  __u16 *__cil_tmp33 ;
14153  __u16 __cil_tmp34 ;
14154  int __cil_tmp35 ;
14155  int __cil_tmp36 ;
14156  __u16 *__cil_tmp37 ;
14157  __u16 __cil_tmp38 ;
14158  int __cil_tmp39 ;
14159  int __cil_tmp40 ;
14160  __u16 *__cil_tmp41 ;
14161  __u16 __cil_tmp42 ;
14162  int __cil_tmp43 ;
14163  int __cil_tmp44 ;
14164  __u16 *__cil_tmp45 ;
14165  __u16 __cil_tmp46 ;
14166  int __cil_tmp47 ;
14167  int __cil_tmp48 ;
14168  __u16 *__cil_tmp49 ;
14169  __u16 __cil_tmp50 ;
14170  int __cil_tmp51 ;
14171  int __cil_tmp52 ;
14172  __u16 *__cil_tmp53 ;
14173  __u16 __cil_tmp54 ;
14174  int __cil_tmp55 ;
14175  int __cil_tmp56 ;
14176  int __cil_tmp57 ;
14177  int __cil_tmp58 ;
14178  int __cil_tmp59 ;
14179  int __cil_tmp60 ;
14180  int __cil_tmp61 ;
14181  int __cil_tmp62 ;
14182  bool *__cil_tmp63 ;
14183  bool __cil_tmp64 ;
14184  char *__cil_tmp65 ;
14185
14186  {
14187  {
14188#line 1686
14189  __cil_tmp15 = (unsigned long )tty;
14190#line 1686
14191  __cil_tmp16 = __cil_tmp15 + 1064;
14192#line 1686
14193  __cil_tmp17 = *((void **)__cil_tmp16);
14194#line 1686
14195  port = (struct usb_serial_port *)__cil_tmp17;
14196#line 1692
14197  mos7840_port = mos7840_get_port_private(port);
14198  }
14199  {
14200#line 1694
14201  __cil_tmp18 = & debug;
14202#line 1694
14203  __cil_tmp19 = *__cil_tmp18;
14204#line 1694
14205  if ((int )__cil_tmp19) {
14206    {
14207#line 1694
14208    __cil_tmp20 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
14209#line 1694
14210    __cil_tmp21 = (unsigned long )port;
14211#line 1694
14212    __cil_tmp22 = __cil_tmp21 + 816;
14213#line 1694
14214    __cil_tmp23 = *((unsigned char *)__cil_tmp22);
14215#line 1694
14216    __cil_tmp24 = (int )__cil_tmp23;
14217#line 1694
14218    printk("<7>%s: %s - port %d\n", __cil_tmp20, "mos7840_tiocmget", __cil_tmp24);
14219    }
14220  } else {
14221
14222  }
14223  }
14224  {
14225#line 1696
14226  __cil_tmp25 = (struct moschip_port *)0;
14227#line 1696
14228  __cil_tmp26 = (unsigned long )__cil_tmp25;
14229#line 1696
14230  __cil_tmp27 = (unsigned long )mos7840_port;
14231#line 1696
14232  if (__cil_tmp27 == __cil_tmp26) {
14233#line 1697
14234    return (-19);
14235  } else {
14236
14237  }
14238  }
14239  {
14240#line 1699
14241  __cil_tmp28 = (__u16 )6;
14242#line 1699
14243  status = mos7840_get_uart_reg(port, __cil_tmp28, & msr);
14244#line 1700
14245  __cil_tmp29 = (__u16 )4;
14246#line 1700
14247  status = mos7840_get_uart_reg(port, __cil_tmp29, & mcr);
14248  }
14249  {
14250#line 1701
14251  __cil_tmp30 = & mcr;
14252#line 1701
14253  __cil_tmp31 = *__cil_tmp30;
14254#line 1701
14255  __cil_tmp32 = (int )__cil_tmp31;
14256#line 1701
14257  if (__cil_tmp32 & 1) {
14258#line 1701
14259    tmp = 2;
14260  } else {
14261#line 1701
14262    tmp = 0;
14263  }
14264  }
14265  {
14266#line 1701
14267  __cil_tmp33 = & mcr;
14268#line 1701
14269  __cil_tmp34 = *__cil_tmp33;
14270#line 1701
14271  __cil_tmp35 = (int )__cil_tmp34;
14272#line 1701
14273  __cil_tmp36 = __cil_tmp35 & 2;
14274#line 1701
14275  if (__cil_tmp36 != 0) {
14276#line 1701
14277    tmp___0 = 4;
14278  } else {
14279#line 1701
14280    tmp___0 = 0;
14281  }
14282  }
14283  {
14284#line 1701
14285  __cil_tmp37 = & mcr;
14286#line 1701
14287  __cil_tmp38 = *__cil_tmp37;
14288#line 1701
14289  __cil_tmp39 = (int )__cil_tmp38;
14290#line 1701
14291  __cil_tmp40 = __cil_tmp39 & 16;
14292#line 1701
14293  if (__cil_tmp40 != 0) {
14294#line 1701
14295    tmp___1 = 32768;
14296  } else {
14297#line 1701
14298    tmp___1 = 0;
14299  }
14300  }
14301  {
14302#line 1701
14303  __cil_tmp41 = & msr;
14304#line 1701
14305  __cil_tmp42 = *__cil_tmp41;
14306#line 1701
14307  __cil_tmp43 = (int )__cil_tmp42;
14308#line 1701
14309  __cil_tmp44 = __cil_tmp43 & 16;
14310#line 1701
14311  if (__cil_tmp44 != 0) {
14312#line 1701
14313    tmp___2 = 32;
14314  } else {
14315#line 1701
14316    tmp___2 = 0;
14317  }
14318  }
14319  {
14320#line 1701
14321  __cil_tmp45 = & msr;
14322#line 1701
14323  __cil_tmp46 = *__cil_tmp45;
14324#line 1701
14325  __cil_tmp47 = (int )__cil_tmp46;
14326#line 1701
14327  __cil_tmp48 = __cil_tmp47 & 128;
14328#line 1701
14329  if (__cil_tmp48 != 0) {
14330#line 1701
14331    tmp___3 = 64;
14332  } else {
14333#line 1701
14334    tmp___3 = 0;
14335  }
14336  }
14337  {
14338#line 1701
14339  __cil_tmp49 = & msr;
14340#line 1701
14341  __cil_tmp50 = *__cil_tmp49;
14342#line 1701
14343  __cil_tmp51 = (int )__cil_tmp50;
14344#line 1701
14345  __cil_tmp52 = __cil_tmp51 & 64;
14346#line 1701
14347  if (__cil_tmp52 != 0) {
14348#line 1701
14349    tmp___4 = 128;
14350  } else {
14351#line 1701
14352    tmp___4 = 0;
14353  }
14354  }
14355  {
14356#line 1701
14357  __cil_tmp53 = & msr;
14358#line 1701
14359  __cil_tmp54 = *__cil_tmp53;
14360#line 1701
14361  __cil_tmp55 = (int )__cil_tmp54;
14362#line 1701
14363  __cil_tmp56 = __cil_tmp55 & 32;
14364#line 1701
14365  if (__cil_tmp56 != 0) {
14366#line 1701
14367    tmp___5 = 256;
14368  } else {
14369#line 1701
14370    tmp___5 = 0;
14371  }
14372  }
14373#line 1701
14374  __cil_tmp57 = tmp | tmp___0;
14375#line 1701
14376  __cil_tmp58 = __cil_tmp57 | tmp___1;
14377#line 1701
14378  __cil_tmp59 = __cil_tmp58 | tmp___2;
14379#line 1701
14380  __cil_tmp60 = __cil_tmp59 | tmp___3;
14381#line 1701
14382  __cil_tmp61 = __cil_tmp60 | tmp___4;
14383#line 1701
14384  __cil_tmp62 = __cil_tmp61 | tmp___5;
14385#line 1701
14386  result = (unsigned int )__cil_tmp62;
14387  {
14388#line 1709
14389  __cil_tmp63 = & debug;
14390#line 1709
14391  __cil_tmp64 = *__cil_tmp63;
14392#line 1709
14393  if ((int )__cil_tmp64) {
14394    {
14395#line 1709
14396    __cil_tmp65 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
14397#line 1709
14398    printk("<7>%s: %s - 0x%04X\n", __cil_tmp65, "mos7840_tiocmget", result);
14399    }
14400  } else {
14401
14402  }
14403  }
14404#line 1711
14405  return ((int )result);
14406}
14407}
14408#line 1714 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
14409static int mos7840_tiocmset(struct tty_struct *tty , unsigned int set , unsigned int clear ) 
14410{ struct usb_serial_port *port ;
14411  struct moschip_port *mos7840_port ;
14412  unsigned int mcr ;
14413  int status ;
14414  unsigned long __cil_tmp8 ;
14415  unsigned long __cil_tmp9 ;
14416  void *__cil_tmp10 ;
14417  bool *__cil_tmp11 ;
14418  bool __cil_tmp12 ;
14419  char *__cil_tmp13 ;
14420  unsigned long __cil_tmp14 ;
14421  unsigned long __cil_tmp15 ;
14422  unsigned char __cil_tmp16 ;
14423  int __cil_tmp17 ;
14424  struct moschip_port *__cil_tmp18 ;
14425  unsigned long __cil_tmp19 ;
14426  unsigned long __cil_tmp20 ;
14427  unsigned long __cil_tmp21 ;
14428  unsigned long __cil_tmp22 ;
14429  __u8 __cil_tmp23 ;
14430  unsigned int __cil_tmp24 ;
14431  unsigned int __cil_tmp25 ;
14432  unsigned int __cil_tmp26 ;
14433  unsigned int __cil_tmp27 ;
14434  unsigned int __cil_tmp28 ;
14435  unsigned int __cil_tmp29 ;
14436  unsigned long __cil_tmp30 ;
14437  unsigned long __cil_tmp31 ;
14438  __u16 __cil_tmp32 ;
14439  __u16 __cil_tmp33 ;
14440  int __cil_tmp34 ;
14441  __u16 __cil_tmp35 ;
14442  bool *__cil_tmp36 ;
14443  bool __cil_tmp37 ;
14444  char *__cil_tmp38 ;
14445
14446  {
14447#line 1717
14448  __cil_tmp8 = (unsigned long )tty;
14449#line 1717
14450  __cil_tmp9 = __cil_tmp8 + 1064;
14451#line 1717
14452  __cil_tmp10 = *((void **)__cil_tmp9);
14453#line 1717
14454  port = (struct usb_serial_port *)__cil_tmp10;
14455  {
14456#line 1722
14457  __cil_tmp11 = & debug;
14458#line 1722
14459  __cil_tmp12 = *__cil_tmp11;
14460#line 1722
14461  if ((int )__cil_tmp12) {
14462    {
14463#line 1722
14464    __cil_tmp13 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
14465#line 1722
14466    __cil_tmp14 = (unsigned long )port;
14467#line 1722
14468    __cil_tmp15 = __cil_tmp14 + 816;
14469#line 1722
14470    __cil_tmp16 = *((unsigned char *)__cil_tmp15);
14471#line 1722
14472    __cil_tmp17 = (int )__cil_tmp16;
14473#line 1722
14474    printk("<7>%s: %s - port %d\n", __cil_tmp13, "mos7840_tiocmset", __cil_tmp17);
14475    }
14476  } else {
14477
14478  }
14479  }
14480  {
14481#line 1724
14482  mos7840_port = mos7840_get_port_private(port);
14483  }
14484  {
14485#line 1726
14486  __cil_tmp18 = (struct moschip_port *)0;
14487#line 1726
14488  __cil_tmp19 = (unsigned long )__cil_tmp18;
14489#line 1726
14490  __cil_tmp20 = (unsigned long )mos7840_port;
14491#line 1726
14492  if (__cil_tmp20 == __cil_tmp19) {
14493#line 1727
14494    return (-19);
14495  } else {
14496
14497  }
14498  }
14499#line 1730
14500  __cil_tmp21 = (unsigned long )mos7840_port;
14501#line 1730
14502  __cil_tmp22 = __cil_tmp21 + 33;
14503#line 1730
14504  __cil_tmp23 = *((__u8 *)__cil_tmp22);
14505#line 1730
14506  mcr = (unsigned int )__cil_tmp23;
14507  {
14508#line 1731
14509  __cil_tmp24 = clear & 4U;
14510#line 1731
14511  if (__cil_tmp24 != 0U) {
14512#line 1732
14513    mcr = mcr & 4294967293U;
14514  } else {
14515
14516  }
14517  }
14518  {
14519#line 1733
14520  __cil_tmp25 = clear & 2U;
14521#line 1733
14522  if (__cil_tmp25 != 0U) {
14523#line 1734
14524    mcr = mcr & 4294967294U;
14525  } else {
14526
14527  }
14528  }
14529  {
14530#line 1735
14531  __cil_tmp26 = clear & 32768U;
14532#line 1735
14533  if (__cil_tmp26 != 0U) {
14534#line 1736
14535    mcr = mcr & 4294967279U;
14536  } else {
14537
14538  }
14539  }
14540  {
14541#line 1738
14542  __cil_tmp27 = set & 4U;
14543#line 1738
14544  if (__cil_tmp27 != 0U) {
14545#line 1739
14546    mcr = mcr | 2U;
14547  } else {
14548
14549  }
14550  }
14551  {
14552#line 1740
14553  __cil_tmp28 = set & 2U;
14554#line 1740
14555  if (__cil_tmp28 != 0U) {
14556#line 1741
14557    mcr = mcr | 1U;
14558  } else {
14559
14560  }
14561  }
14562  {
14563#line 1742
14564  __cil_tmp29 = set & 32768U;
14565#line 1742
14566  if (__cil_tmp29 != 0U) {
14567#line 1743
14568    mcr = mcr | 16U;
14569  } else {
14570
14571  }
14572  }
14573  {
14574#line 1745
14575  __cil_tmp30 = (unsigned long )mos7840_port;
14576#line 1745
14577  __cil_tmp31 = __cil_tmp30 + 33;
14578#line 1745
14579  *((__u8 *)__cil_tmp31) = (__u8 )mcr;
14580#line 1747
14581  __cil_tmp32 = (__u16 )4;
14582#line 1747
14583  __cil_tmp33 = (__u16 )mcr;
14584#line 1747
14585  __cil_tmp34 = (int )__cil_tmp33;
14586#line 1747
14587  __cil_tmp35 = (__u16 )__cil_tmp34;
14588#line 1747
14589  status = mos7840_set_uart_reg(port, __cil_tmp32, __cil_tmp35);
14590  }
14591#line 1748
14592  if (status < 0) {
14593    {
14594#line 1749
14595    __cil_tmp36 = & debug;
14596#line 1749
14597    __cil_tmp37 = *__cil_tmp36;
14598#line 1749
14599    if ((int )__cil_tmp37) {
14600      {
14601#line 1749
14602      __cil_tmp38 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
14603#line 1749
14604      printk("<7>%s: setting MODEM_CONTROL_REGISTER Failed\n", __cil_tmp38);
14605      }
14606    } else {
14607
14608    }
14609    }
14610#line 1750
14611    return (status);
14612  } else {
14613
14614  }
14615#line 1753
14616  return (0);
14617}
14618}
14619#line 1761 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
14620static int mos7840_calc_baud_rate_divisor(int baudRate , int *divisor , __u16 *clk_sel_val ) 
14621{ bool *__cil_tmp4 ;
14622  bool __cil_tmp5 ;
14623  char *__cil_tmp6 ;
14624
14625  {
14626  {
14627#line 1765
14628  __cil_tmp4 = & debug;
14629#line 1765
14630  __cil_tmp5 = *__cil_tmp4;
14631#line 1765
14632  if ((int )__cil_tmp5) {
14633    {
14634#line 1765
14635    __cil_tmp6 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
14636#line 1765
14637    printk("<7>%s: %s - %d\n", __cil_tmp6, "mos7840_calc_baud_rate_divisor", baudRate);
14638    }
14639  } else {
14640
14641  }
14642  }
14643#line 1767
14644  if (baudRate <= 115200) {
14645#line 1768
14646    *divisor = 115200 / baudRate;
14647#line 1769
14648    *clk_sel_val = (__u16 )0U;
14649  } else {
14650
14651  }
14652#line 1771
14653  if (baudRate > 115200) {
14654#line 1771
14655    if (baudRate <= 230400) {
14656#line 1772
14657      *divisor = 230400 / baudRate;
14658#line 1773
14659      *clk_sel_val = (__u16 )16U;
14660    } else {
14661#line 1771
14662      goto _L___4;
14663    }
14664  } else
14665  _L___4: /* CIL Label */ 
14666#line 1774
14667  if (baudRate > 230400) {
14668#line 1774
14669    if (baudRate <= 403200) {
14670#line 1775
14671      *divisor = 403200 / baudRate;
14672#line 1776
14673      *clk_sel_val = (__u16 )32U;
14674    } else {
14675#line 1774
14676      goto _L___3;
14677    }
14678  } else
14679  _L___3: /* CIL Label */ 
14680#line 1777
14681  if (baudRate > 403200) {
14682#line 1777
14683    if (baudRate <= 460800) {
14684#line 1778
14685      *divisor = 460800 / baudRate;
14686#line 1779
14687      *clk_sel_val = (__u16 )48U;
14688    } else {
14689#line 1777
14690      goto _L___2;
14691    }
14692  } else
14693  _L___2: /* CIL Label */ 
14694#line 1780
14695  if (baudRate > 460800) {
14696#line 1780
14697    if (baudRate <= 806400) {
14698#line 1781
14699      *divisor = 806400 / baudRate;
14700#line 1782
14701      *clk_sel_val = (__u16 )64U;
14702    } else {
14703#line 1780
14704      goto _L___1;
14705    }
14706  } else
14707  _L___1: /* CIL Label */ 
14708#line 1783
14709  if (baudRate > 806400) {
14710#line 1783
14711    if (baudRate <= 921600) {
14712#line 1784
14713      *divisor = 921600 / baudRate;
14714#line 1785
14715      *clk_sel_val = (__u16 )80U;
14716    } else {
14717#line 1783
14718      goto _L___0;
14719    }
14720  } else
14721  _L___0: /* CIL Label */ 
14722#line 1786
14723  if (baudRate > 921600) {
14724#line 1786
14725    if (baudRate <= 1572864) {
14726#line 1787
14727      *divisor = 1572864 / baudRate;
14728#line 1788
14729      *clk_sel_val = (__u16 )96U;
14730    } else {
14731#line 1786
14732      goto _L;
14733    }
14734  } else
14735  _L: /* CIL Label */ 
14736#line 1789
14737  if (baudRate > 1572864) {
14738#line 1789
14739    if (baudRate <= 3145728) {
14740#line 1790
14741      *divisor = 3145728 / baudRate;
14742#line 1791
14743      *clk_sel_val = (__u16 )112U;
14744    } else {
14745
14746    }
14747  } else {
14748
14749  }
14750#line 1793
14751  return (0);
14752}
14753}
14754#line 1833 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
14755static int mos7840_send_cmd_write_baud_rate(struct moschip_port *mos7840_port , int baudRate ) 
14756{ int divisor ;
14757  int status ;
14758  __u16 Data ;
14759  unsigned char number ;
14760  __u16 clk_sel_val ;
14761  struct usb_serial_port *port ;
14762  int tmp ;
14763  int tmp___0 ;
14764  int *__cil_tmp11 ;
14765  struct moschip_port *__cil_tmp12 ;
14766  unsigned long __cil_tmp13 ;
14767  unsigned long __cil_tmp14 ;
14768  unsigned long __cil_tmp15 ;
14769  unsigned long __cil_tmp16 ;
14770  bool *__cil_tmp17 ;
14771  bool __cil_tmp18 ;
14772  char *__cil_tmp19 ;
14773  char *__cil_tmp20 ;
14774  struct usb_serial *__cil_tmp21 ;
14775  bool *__cil_tmp22 ;
14776  bool __cil_tmp23 ;
14777  char *__cil_tmp24 ;
14778  char *__cil_tmp25 ;
14779  bool *__cil_tmp26 ;
14780  bool __cil_tmp27 ;
14781  char *__cil_tmp28 ;
14782  char *__cil_tmp29 ;
14783  unsigned long __cil_tmp30 ;
14784  unsigned long __cil_tmp31 ;
14785  struct usb_serial_port *__cil_tmp32 ;
14786  struct usb_serial *__cil_tmp33 ;
14787  unsigned long __cil_tmp34 ;
14788  unsigned long __cil_tmp35 ;
14789  unsigned char __cil_tmp36 ;
14790  int __cil_tmp37 ;
14791  unsigned long __cil_tmp38 ;
14792  unsigned long __cil_tmp39 ;
14793  struct usb_serial_port *__cil_tmp40 ;
14794  unsigned long __cil_tmp41 ;
14795  unsigned long __cil_tmp42 ;
14796  unsigned char __cil_tmp43 ;
14797  int __cil_tmp44 ;
14798  int __cil_tmp45 ;
14799  bool *__cil_tmp46 ;
14800  bool __cil_tmp47 ;
14801  char *__cil_tmp48 ;
14802  unsigned long __cil_tmp49 ;
14803  unsigned long __cil_tmp50 ;
14804  struct usb_serial_port *__cil_tmp51 ;
14805  unsigned long __cil_tmp52 ;
14806  unsigned long __cil_tmp53 ;
14807  unsigned char __cil_tmp54 ;
14808  int __cil_tmp55 ;
14809  __u16 *__cil_tmp56 ;
14810  __u16 *__cil_tmp57 ;
14811  unsigned long __cil_tmp58 ;
14812  unsigned long __cil_tmp59 ;
14813  __u8 __cil_tmp60 ;
14814  int __cil_tmp61 ;
14815  __u16 __cil_tmp62 ;
14816  bool *__cil_tmp63 ;
14817  bool __cil_tmp64 ;
14818  char *__cil_tmp65 ;
14819  __u16 *__cil_tmp66 ;
14820  __u16 *__cil_tmp67 ;
14821  __u16 __cil_tmp68 ;
14822  short __cil_tmp69 ;
14823  int __cil_tmp70 ;
14824  __u16 *__cil_tmp71 ;
14825  __u16 __cil_tmp72 ;
14826  short __cil_tmp73 ;
14827  int __cil_tmp74 ;
14828  int __cil_tmp75 ;
14829  int __cil_tmp76 ;
14830  unsigned long __cil_tmp77 ;
14831  unsigned long __cil_tmp78 ;
14832  __u8 __cil_tmp79 ;
14833  int __cil_tmp80 ;
14834  __u16 __cil_tmp81 ;
14835  __u16 *__cil_tmp82 ;
14836  __u16 __cil_tmp83 ;
14837  int __cil_tmp84 ;
14838  __u16 __cil_tmp85 ;
14839  bool *__cil_tmp86 ;
14840  bool __cil_tmp87 ;
14841  char *__cil_tmp88 ;
14842  unsigned long __cil_tmp89 ;
14843  unsigned long __cil_tmp90 ;
14844  struct device *__cil_tmp91 ;
14845  struct device  const  *__cil_tmp92 ;
14846  __u16 *__cil_tmp93 ;
14847  unsigned long __cil_tmp94 ;
14848  unsigned long __cil_tmp95 ;
14849  __u8 __cil_tmp96 ;
14850  unsigned int __cil_tmp97 ;
14851  unsigned int __cil_tmp98 ;
14852  unsigned long __cil_tmp99 ;
14853  unsigned long __cil_tmp100 ;
14854  __u16 *__cil_tmp101 ;
14855  __u16 __cil_tmp102 ;
14856  __u16 __cil_tmp103 ;
14857  __u16 *__cil_tmp104 ;
14858  __u16 __cil_tmp105 ;
14859  int __cil_tmp106 ;
14860  __u16 __cil_tmp107 ;
14861  __u16 *__cil_tmp108 ;
14862  int *__cil_tmp109 ;
14863  int __cil_tmp110 ;
14864  unsigned char __cil_tmp111 ;
14865  bool *__cil_tmp112 ;
14866  bool __cil_tmp113 ;
14867  char *__cil_tmp114 ;
14868  __u16 *__cil_tmp115 ;
14869  __u16 __cil_tmp116 ;
14870  int __cil_tmp117 ;
14871  __u16 __cil_tmp118 ;
14872  __u16 *__cil_tmp119 ;
14873  __u16 __cil_tmp120 ;
14874  int __cil_tmp121 ;
14875  __u16 __cil_tmp122 ;
14876  __u16 *__cil_tmp123 ;
14877  int *__cil_tmp124 ;
14878  int __cil_tmp125 ;
14879  int __cil_tmp126 ;
14880  int __cil_tmp127 ;
14881  unsigned char __cil_tmp128 ;
14882  bool *__cil_tmp129 ;
14883  bool __cil_tmp130 ;
14884  char *__cil_tmp131 ;
14885  __u16 *__cil_tmp132 ;
14886  __u16 __cil_tmp133 ;
14887  int __cil_tmp134 ;
14888  __u16 __cil_tmp135 ;
14889  __u16 *__cil_tmp136 ;
14890  __u16 __cil_tmp137 ;
14891  int __cil_tmp138 ;
14892  __u16 __cil_tmp139 ;
14893  __u16 *__cil_tmp140 ;
14894  unsigned long __cil_tmp141 ;
14895  unsigned long __cil_tmp142 ;
14896  __u8 __cil_tmp143 ;
14897  __u16 __cil_tmp144 ;
14898  unsigned int __cil_tmp145 ;
14899  unsigned int __cil_tmp146 ;
14900  unsigned long __cil_tmp147 ;
14901  unsigned long __cil_tmp148 ;
14902  __u16 *__cil_tmp149 ;
14903  __u16 __cil_tmp150 ;
14904  __u16 __cil_tmp151 ;
14905  __u16 *__cil_tmp152 ;
14906  __u16 __cil_tmp153 ;
14907  int __cil_tmp154 ;
14908  __u16 __cil_tmp155 ;
14909
14910  {
14911#line 1836
14912  __cil_tmp11 = & divisor;
14913#line 1836
14914  *__cil_tmp11 = 0;
14915  {
14916#line 1843
14917  __cil_tmp12 = (struct moschip_port *)0;
14918#line 1843
14919  __cil_tmp13 = (unsigned long )__cil_tmp12;
14920#line 1843
14921  __cil_tmp14 = (unsigned long )mos7840_port;
14922#line 1843
14923  if (__cil_tmp14 == __cil_tmp13) {
14924#line 1844
14925    return (-1);
14926  } else {
14927
14928  }
14929  }
14930  {
14931#line 1846
14932  __cil_tmp15 = (unsigned long )mos7840_port;
14933#line 1846
14934  __cil_tmp16 = __cil_tmp15 + 264;
14935#line 1846
14936  port = *((struct usb_serial_port **)__cil_tmp16);
14937#line 1847
14938  tmp = mos7840_port_paranoia_check(port, "mos7840_send_cmd_write_baud_rate");
14939  }
14940#line 1847
14941  if (tmp != 0) {
14942    {
14943#line 1848
14944    __cil_tmp17 = & debug;
14945#line 1848
14946    __cil_tmp18 = *__cil_tmp17;
14947#line 1848
14948    if ((int )__cil_tmp18) {
14949      {
14950#line 1848
14951      __cil_tmp19 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
14952#line 1848
14953      __cil_tmp20 = (char *)"Invalid port";
14954#line 1848
14955      printk("<7>%s: %s\n", __cil_tmp19, __cil_tmp20);
14956      }
14957    } else {
14958
14959    }
14960    }
14961#line 1849
14962    return (-1);
14963  } else {
14964
14965  }
14966  {
14967#line 1852
14968  __cil_tmp21 = *((struct usb_serial **)port);
14969#line 1852
14970  tmp___0 = mos7840_serial_paranoia_check(__cil_tmp21, "mos7840_send_cmd_write_baud_rate");
14971  }
14972#line 1852
14973  if (tmp___0 != 0) {
14974    {
14975#line 1853
14976    __cil_tmp22 = & debug;
14977#line 1853
14978    __cil_tmp23 = *__cil_tmp22;
14979#line 1853
14980    if ((int )__cil_tmp23) {
14981      {
14982#line 1853
14983      __cil_tmp24 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
14984#line 1853
14985      __cil_tmp25 = (char *)"Invalid Serial";
14986#line 1853
14987      printk("<7>%s: %s\n", __cil_tmp24, __cil_tmp25);
14988      }
14989    } else {
14990
14991    }
14992    }
14993#line 1854
14994    return (-1);
14995  } else {
14996
14997  }
14998  {
14999#line 1857
15000  __cil_tmp26 = & debug;
15001#line 1857
15002  __cil_tmp27 = *__cil_tmp26;
15003#line 1857
15004  if ((int )__cil_tmp27) {
15005    {
15006#line 1857
15007    __cil_tmp28 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15008#line 1857
15009    __cil_tmp29 = (char *)"Entering ..........";
15010#line 1857
15011    printk("<7>%s: %s\n", __cil_tmp28, __cil_tmp29);
15012    }
15013  } else {
15014
15015  }
15016  }
15017#line 1859
15018  __cil_tmp30 = (unsigned long )mos7840_port;
15019#line 1859
15020  __cil_tmp31 = __cil_tmp30 + 264;
15021#line 1859
15022  __cil_tmp32 = *((struct usb_serial_port **)__cil_tmp31);
15023#line 1859
15024  __cil_tmp33 = *((struct usb_serial **)__cil_tmp32);
15025#line 1859
15026  __cil_tmp34 = (unsigned long )__cil_tmp33;
15027#line 1859
15028  __cil_tmp35 = __cil_tmp34 + 25;
15029#line 1859
15030  __cil_tmp36 = *((unsigned char *)__cil_tmp35);
15031#line 1859
15032  __cil_tmp37 = (int )__cil_tmp36;
15033#line 1859
15034  __cil_tmp38 = (unsigned long )mos7840_port;
15035#line 1859
15036  __cil_tmp39 = __cil_tmp38 + 264;
15037#line 1859
15038  __cil_tmp40 = *((struct usb_serial_port **)__cil_tmp39);
15039#line 1859
15040  __cil_tmp41 = (unsigned long )__cil_tmp40;
15041#line 1859
15042  __cil_tmp42 = __cil_tmp41 + 816;
15043#line 1859
15044  __cil_tmp43 = *((unsigned char *)__cil_tmp42);
15045#line 1859
15046  __cil_tmp44 = (int )__cil_tmp43;
15047#line 1859
15048  __cil_tmp45 = __cil_tmp44 - __cil_tmp37;
15049#line 1859
15050  number = (unsigned char )__cil_tmp45;
15051  {
15052#line 1861
15053  __cil_tmp46 = & debug;
15054#line 1861
15055  __cil_tmp47 = *__cil_tmp46;
15056#line 1861
15057  if ((int )__cil_tmp47) {
15058    {
15059#line 1861
15060    __cil_tmp48 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15061#line 1861
15062    __cil_tmp49 = (unsigned long )mos7840_port;
15063#line 1861
15064    __cil_tmp50 = __cil_tmp49 + 264;
15065#line 1861
15066    __cil_tmp51 = *((struct usb_serial_port **)__cil_tmp50);
15067#line 1861
15068    __cil_tmp52 = (unsigned long )__cil_tmp51;
15069#line 1861
15070    __cil_tmp53 = __cil_tmp52 + 816;
15071#line 1861
15072    __cil_tmp54 = *((unsigned char *)__cil_tmp53);
15073#line 1861
15074    __cil_tmp55 = (int )__cil_tmp54;
15075#line 1861
15076    printk("<7>%s: %s - port = %d, baud = %d\n", __cil_tmp48, "mos7840_send_cmd_write_baud_rate",
15077           __cil_tmp55, baudRate);
15078    }
15079  } else {
15080
15081  }
15082  }
15083  {
15084#line 1894
15085  __cil_tmp56 = & clk_sel_val;
15086#line 1894
15087  *__cil_tmp56 = (__u16 )0U;
15088#line 1895
15089  __cil_tmp57 = & Data;
15090#line 1895
15091  *__cil_tmp57 = (__u16 )0U;
15092#line 1896
15093  status = mos7840_calc_baud_rate_divisor(baudRate, & divisor, & clk_sel_val);
15094#line 1898
15095  __cil_tmp58 = (unsigned long )mos7840_port;
15096#line 1898
15097  __cil_tmp59 = __cil_tmp58 + 272;
15098#line 1898
15099  __cil_tmp60 = *((__u8 *)__cil_tmp59);
15100#line 1898
15101  __cil_tmp61 = (int )__cil_tmp60;
15102#line 1898
15103  __cil_tmp62 = (__u16 )__cil_tmp61;
15104#line 1898
15105  status = mos7840_get_reg_sync(port, __cil_tmp62, & Data);
15106  }
15107#line 1900
15108  if (status < 0) {
15109    {
15110#line 1901
15111    __cil_tmp63 = & debug;
15112#line 1901
15113    __cil_tmp64 = *__cil_tmp63;
15114#line 1901
15115    if ((int )__cil_tmp64) {
15116      {
15117#line 1901
15118      __cil_tmp65 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15119#line 1901
15120      printk("<7>%s: reading spreg failed in set_serial_baud\n", __cil_tmp65);
15121      }
15122    } else {
15123
15124    }
15125    }
15126#line 1902
15127    return (-1);
15128  } else {
15129
15130  }
15131  {
15132#line 1904
15133  __cil_tmp66 = & Data;
15134#line 1904
15135  __cil_tmp67 = & clk_sel_val;
15136#line 1904
15137  __cil_tmp68 = *__cil_tmp67;
15138#line 1904
15139  __cil_tmp69 = (short )__cil_tmp68;
15140#line 1904
15141  __cil_tmp70 = (int )__cil_tmp69;
15142#line 1904
15143  __cil_tmp71 = & Data;
15144#line 1904
15145  __cil_tmp72 = *__cil_tmp71;
15146#line 1904
15147  __cil_tmp73 = (short )__cil_tmp72;
15148#line 1904
15149  __cil_tmp74 = (int )__cil_tmp73;
15150#line 1904
15151  __cil_tmp75 = __cil_tmp74 & 143;
15152#line 1904
15153  __cil_tmp76 = __cil_tmp75 | __cil_tmp70;
15154#line 1904
15155  *__cil_tmp66 = (__u16 )__cil_tmp76;
15156#line 1905
15157  __cil_tmp77 = (unsigned long )mos7840_port;
15158#line 1905
15159  __cil_tmp78 = __cil_tmp77 + 272;
15160#line 1905
15161  __cil_tmp79 = *((__u8 *)__cil_tmp78);
15162#line 1905
15163  __cil_tmp80 = (int )__cil_tmp79;
15164#line 1905
15165  __cil_tmp81 = (__u16 )__cil_tmp80;
15166#line 1905
15167  __cil_tmp82 = & Data;
15168#line 1905
15169  __cil_tmp83 = *__cil_tmp82;
15170#line 1905
15171  __cil_tmp84 = (int )__cil_tmp83;
15172#line 1905
15173  __cil_tmp85 = (__u16 )__cil_tmp84;
15174#line 1905
15175  status = mos7840_set_reg_sync(port, __cil_tmp81, __cil_tmp85);
15176  }
15177#line 1907
15178  if (status < 0) {
15179    {
15180#line 1908
15181    __cil_tmp86 = & debug;
15182#line 1908
15183    __cil_tmp87 = *__cil_tmp86;
15184#line 1908
15185    if ((int )__cil_tmp87) {
15186      {
15187#line 1908
15188      __cil_tmp88 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15189#line 1908
15190      printk("<7>%s: Writing spreg failed in set_serial_baud\n", __cil_tmp88);
15191      }
15192    } else {
15193
15194    }
15195    }
15196#line 1909
15197    return (-1);
15198  } else {
15199
15200  }
15201#line 1913
15202  if (status != 0) {
15203    {
15204#line 1914
15205    __cil_tmp89 = (unsigned long )port;
15206#line 1914
15207    __cil_tmp90 = __cil_tmp89 + 1240;
15208#line 1914
15209    __cil_tmp91 = (struct device *)__cil_tmp90;
15210#line 1914
15211    __cil_tmp92 = (struct device  const  *)__cil_tmp91;
15212#line 1914
15213    dev_err(__cil_tmp92, "%s - bad baud rate\n", "mos7840_send_cmd_write_baud_rate");
15214    }
15215#line 1915
15216    return (status);
15217  } else {
15218
15219  }
15220  {
15221#line 1918
15222  __cil_tmp93 = & Data;
15223#line 1918
15224  __cil_tmp94 = (unsigned long )mos7840_port;
15225#line 1918
15226  __cil_tmp95 = __cil_tmp94 + 32;
15227#line 1918
15228  __cil_tmp96 = *((__u8 *)__cil_tmp95);
15229#line 1918
15230  __cil_tmp97 = (unsigned int )__cil_tmp96;
15231#line 1918
15232  __cil_tmp98 = __cil_tmp97 | 128U;
15233#line 1918
15234  *__cil_tmp93 = (__u16 )__cil_tmp98;
15235#line 1919
15236  __cil_tmp99 = (unsigned long )mos7840_port;
15237#line 1919
15238  __cil_tmp100 = __cil_tmp99 + 32;
15239#line 1919
15240  __cil_tmp101 = & Data;
15241#line 1919
15242  __cil_tmp102 = *__cil_tmp101;
15243#line 1919
15244  *((__u8 *)__cil_tmp100) = (__u8 )__cil_tmp102;
15245#line 1920
15246  __cil_tmp103 = (__u16 )3;
15247#line 1920
15248  __cil_tmp104 = & Data;
15249#line 1920
15250  __cil_tmp105 = *__cil_tmp104;
15251#line 1920
15252  __cil_tmp106 = (int )__cil_tmp105;
15253#line 1920
15254  __cil_tmp107 = (__u16 )__cil_tmp106;
15255#line 1920
15256  mos7840_set_uart_reg(port, __cil_tmp103, __cil_tmp107);
15257#line 1923
15258  __cil_tmp108 = & Data;
15259#line 1923
15260  __cil_tmp109 = & divisor;
15261#line 1923
15262  __cil_tmp110 = *__cil_tmp109;
15263#line 1923
15264  __cil_tmp111 = (unsigned char )__cil_tmp110;
15265#line 1923
15266  *__cil_tmp108 = (__u16 )__cil_tmp111;
15267  }
15268  {
15269#line 1924
15270  __cil_tmp112 = & debug;
15271#line 1924
15272  __cil_tmp113 = *__cil_tmp112;
15273#line 1924
15274  if ((int )__cil_tmp113) {
15275    {
15276#line 1924
15277    __cil_tmp114 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15278#line 1924
15279    __cil_tmp115 = & Data;
15280#line 1924
15281    __cil_tmp116 = *__cil_tmp115;
15282#line 1924
15283    __cil_tmp117 = (int )__cil_tmp116;
15284#line 1924
15285    printk("<7>%s: set_serial_baud Value to write DLL is %x\n", __cil_tmp114, __cil_tmp117);
15286    }
15287  } else {
15288
15289  }
15290  }
15291  {
15292#line 1925
15293  __cil_tmp118 = (__u16 )0;
15294#line 1925
15295  __cil_tmp119 = & Data;
15296#line 1925
15297  __cil_tmp120 = *__cil_tmp119;
15298#line 1925
15299  __cil_tmp121 = (int )__cil_tmp120;
15300#line 1925
15301  __cil_tmp122 = (__u16 )__cil_tmp121;
15302#line 1925
15303  mos7840_set_uart_reg(port, __cil_tmp118, __cil_tmp122);
15304#line 1927
15305  __cil_tmp123 = & Data;
15306#line 1927
15307  __cil_tmp124 = & divisor;
15308#line 1927
15309  __cil_tmp125 = *__cil_tmp124;
15310#line 1927
15311  __cil_tmp126 = __cil_tmp125 & 65280;
15312#line 1927
15313  __cil_tmp127 = __cil_tmp126 >> 8;
15314#line 1927
15315  __cil_tmp128 = (unsigned char )__cil_tmp127;
15316#line 1927
15317  *__cil_tmp123 = (__u16 )__cil_tmp128;
15318  }
15319  {
15320#line 1928
15321  __cil_tmp129 = & debug;
15322#line 1928
15323  __cil_tmp130 = *__cil_tmp129;
15324#line 1928
15325  if ((int )__cil_tmp130) {
15326    {
15327#line 1928
15328    __cil_tmp131 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15329#line 1928
15330    __cil_tmp132 = & Data;
15331#line 1928
15332    __cil_tmp133 = *__cil_tmp132;
15333#line 1928
15334    __cil_tmp134 = (int )__cil_tmp133;
15335#line 1928
15336    printk("<7>%s: set_serial_baud Value to write DLM is %x\n", __cil_tmp131, __cil_tmp134);
15337    }
15338  } else {
15339
15340  }
15341  }
15342  {
15343#line 1929
15344  __cil_tmp135 = (__u16 )1;
15345#line 1929
15346  __cil_tmp136 = & Data;
15347#line 1929
15348  __cil_tmp137 = *__cil_tmp136;
15349#line 1929
15350  __cil_tmp138 = (int )__cil_tmp137;
15351#line 1929
15352  __cil_tmp139 = (__u16 )__cil_tmp138;
15353#line 1929
15354  mos7840_set_uart_reg(port, __cil_tmp135, __cil_tmp139);
15355#line 1932
15356  __cil_tmp140 = & Data;
15357#line 1932
15358  __cil_tmp141 = (unsigned long )mos7840_port;
15359#line 1932
15360  __cil_tmp142 = __cil_tmp141 + 32;
15361#line 1932
15362  __cil_tmp143 = *((__u8 *)__cil_tmp142);
15363#line 1932
15364  __cil_tmp144 = (__u16 )__cil_tmp143;
15365#line 1932
15366  __cil_tmp145 = (unsigned int )__cil_tmp144;
15367#line 1932
15368  __cil_tmp146 = __cil_tmp145 & 65407U;
15369#line 1932
15370  *__cil_tmp140 = (__u16 )__cil_tmp146;
15371#line 1933
15372  __cil_tmp147 = (unsigned long )mos7840_port;
15373#line 1933
15374  __cil_tmp148 = __cil_tmp147 + 32;
15375#line 1933
15376  __cil_tmp149 = & Data;
15377#line 1933
15378  __cil_tmp150 = *__cil_tmp149;
15379#line 1933
15380  *((__u8 *)__cil_tmp148) = (__u8 )__cil_tmp150;
15381#line 1934
15382  __cil_tmp151 = (__u16 )3;
15383#line 1934
15384  __cil_tmp152 = & Data;
15385#line 1934
15386  __cil_tmp153 = *__cil_tmp152;
15387#line 1934
15388  __cil_tmp154 = (int )__cil_tmp153;
15389#line 1934
15390  __cil_tmp155 = (__u16 )__cil_tmp154;
15391#line 1934
15392  mos7840_set_uart_reg(port, __cil_tmp151, __cil_tmp155);
15393  }
15394#line 1937
15395  return (status);
15396}
15397}
15398#line 1946 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
15399static void mos7840_change_port_settings(struct tty_struct *tty , struct moschip_port *mos7840_port ,
15400                                         struct ktermios *old_termios ) 
15401{ int baud ;
15402  unsigned int cflag ;
15403  unsigned int iflag ;
15404  __u8 lData ;
15405  __u8 lParity ;
15406  __u8 lStop ;
15407  int status ;
15408  __u16 Data ;
15409  struct usb_serial_port *port ;
15410  struct usb_serial *serial ;
15411  int tmp ;
15412  int tmp___0 ;
15413  speed_t tmp___1 ;
15414  struct moschip_port *__cil_tmp17 ;
15415  unsigned long __cil_tmp18 ;
15416  unsigned long __cil_tmp19 ;
15417  unsigned long __cil_tmp20 ;
15418  unsigned long __cil_tmp21 ;
15419  bool *__cil_tmp22 ;
15420  bool __cil_tmp23 ;
15421  char *__cil_tmp24 ;
15422  char *__cil_tmp25 ;
15423  struct usb_serial *__cil_tmp26 ;
15424  bool *__cil_tmp27 ;
15425  bool __cil_tmp28 ;
15426  char *__cil_tmp29 ;
15427  char *__cil_tmp30 ;
15428  bool *__cil_tmp31 ;
15429  bool __cil_tmp32 ;
15430  char *__cil_tmp33 ;
15431  unsigned long __cil_tmp34 ;
15432  unsigned long __cil_tmp35 ;
15433  struct usb_serial_port *__cil_tmp36 ;
15434  unsigned long __cil_tmp37 ;
15435  unsigned long __cil_tmp38 ;
15436  unsigned char __cil_tmp39 ;
15437  int __cil_tmp40 ;
15438  unsigned long __cil_tmp41 ;
15439  unsigned long __cil_tmp42 ;
15440  char __cil_tmp43 ;
15441  signed char __cil_tmp44 ;
15442  int __cil_tmp45 ;
15443  bool *__cil_tmp46 ;
15444  bool __cil_tmp47 ;
15445  char *__cil_tmp48 ;
15446  bool *__cil_tmp49 ;
15447  bool __cil_tmp50 ;
15448  char *__cil_tmp51 ;
15449  char *__cil_tmp52 ;
15450  unsigned long __cil_tmp53 ;
15451  unsigned long __cil_tmp54 ;
15452  struct ktermios *__cil_tmp55 ;
15453  unsigned long __cil_tmp56 ;
15454  unsigned long __cil_tmp57 ;
15455  unsigned long __cil_tmp58 ;
15456  unsigned long __cil_tmp59 ;
15457  struct ktermios *__cil_tmp60 ;
15458  unsigned int __cil_tmp61 ;
15459  unsigned int __cil_tmp62 ;
15460  unsigned int __cil_tmp63 ;
15461  unsigned int __cil_tmp64 ;
15462  bool *__cil_tmp65 ;
15463  bool __cil_tmp66 ;
15464  char *__cil_tmp67 ;
15465  bool *__cil_tmp68 ;
15466  bool __cil_tmp69 ;
15467  char *__cil_tmp70 ;
15468  bool *__cil_tmp71 ;
15469  bool __cil_tmp72 ;
15470  char *__cil_tmp73 ;
15471  unsigned int __cil_tmp74 ;
15472  unsigned int __cil_tmp75 ;
15473  unsigned int __cil_tmp76 ;
15474  unsigned int __cil_tmp77 ;
15475  bool *__cil_tmp78 ;
15476  bool __cil_tmp79 ;
15477  char *__cil_tmp80 ;
15478  bool *__cil_tmp81 ;
15479  bool __cil_tmp82 ;
15480  char *__cil_tmp83 ;
15481  unsigned long __cil_tmp84 ;
15482  unsigned long __cil_tmp85 ;
15483  unsigned long __cil_tmp86 ;
15484  unsigned long __cil_tmp87 ;
15485  __u8 __cil_tmp88 ;
15486  unsigned int __cil_tmp89 ;
15487  unsigned int __cil_tmp90 ;
15488  unsigned long __cil_tmp91 ;
15489  unsigned long __cil_tmp92 ;
15490  int __cil_tmp93 ;
15491  int __cil_tmp94 ;
15492  int __cil_tmp95 ;
15493  int __cil_tmp96 ;
15494  int __cil_tmp97 ;
15495  unsigned long __cil_tmp98 ;
15496  unsigned long __cil_tmp99 ;
15497  __u8 __cil_tmp100 ;
15498  int __cil_tmp101 ;
15499  int __cil_tmp102 ;
15500  bool *__cil_tmp103 ;
15501  bool __cil_tmp104 ;
15502  char *__cil_tmp105 ;
15503  unsigned long __cil_tmp106 ;
15504  unsigned long __cil_tmp107 ;
15505  __u8 __cil_tmp108 ;
15506  int __cil_tmp109 ;
15507  __u16 __cil_tmp110 ;
15508  int __cil_tmp111 ;
15509  __u16 __cil_tmp112 ;
15510  __u16 __cil_tmp113 ;
15511  int __cil_tmp114 ;
15512  __u16 __cil_tmp115 ;
15513  __u16 __cil_tmp116 ;
15514  int __cil_tmp117 ;
15515  __u16 __cil_tmp118 ;
15516  unsigned long __cil_tmp119 ;
15517  unsigned long __cil_tmp120 ;
15518  __u8 __cil_tmp121 ;
15519  __u16 __cil_tmp122 ;
15520  int __cil_tmp123 ;
15521  __u16 __cil_tmp124 ;
15522  unsigned long __cil_tmp125 ;
15523  unsigned long __cil_tmp126 ;
15524  __u16 __cil_tmp127 ;
15525  int __cil_tmp128 ;
15526  __u16 __cil_tmp129 ;
15527  __u16 __cil_tmp130 ;
15528  int __cil_tmp131 ;
15529  __u16 __cil_tmp132 ;
15530  unsigned long __cil_tmp133 ;
15531  unsigned long __cil_tmp134 ;
15532  unsigned int __cil_tmp135 ;
15533  unsigned long __cil_tmp136 ;
15534  unsigned long __cil_tmp137 ;
15535  unsigned long __cil_tmp138 ;
15536  unsigned long __cil_tmp139 ;
15537  __u8 __cil_tmp140 ;
15538  unsigned int __cil_tmp141 ;
15539  unsigned int __cil_tmp142 ;
15540  int __cil_tmp143 ;
15541  unsigned long __cil_tmp144 ;
15542  unsigned long __cil_tmp145 ;
15543  unsigned long __cil_tmp146 ;
15544  unsigned long __cil_tmp147 ;
15545  __u8 __cil_tmp148 ;
15546  unsigned int __cil_tmp149 ;
15547  unsigned int __cil_tmp150 ;
15548  unsigned long __cil_tmp151 ;
15549  unsigned long __cil_tmp152 ;
15550  unsigned long __cil_tmp153 ;
15551  unsigned long __cil_tmp154 ;
15552  __u8 __cil_tmp155 ;
15553  unsigned int __cil_tmp156 ;
15554  unsigned int __cil_tmp157 ;
15555  unsigned long __cil_tmp158 ;
15556  unsigned long __cil_tmp159 ;
15557  __u8 __cil_tmp160 ;
15558  __u16 __cil_tmp161 ;
15559  int __cil_tmp162 ;
15560  __u16 __cil_tmp163 ;
15561  bool *__cil_tmp164 ;
15562  bool __cil_tmp165 ;
15563  char *__cil_tmp166 ;
15564  char *__cil_tmp167 ;
15565  bool *__cil_tmp168 ;
15566  bool __cil_tmp169 ;
15567  char *__cil_tmp170 ;
15568  __u16 __cil_tmp171 ;
15569  int __cil_tmp172 ;
15570  __u16 __cil_tmp173 ;
15571  unsigned long __cil_tmp174 ;
15572  unsigned long __cil_tmp175 ;
15573  bool __cil_tmp176 ;
15574  unsigned long __cil_tmp177 ;
15575  unsigned long __cil_tmp178 ;
15576  unsigned long __cil_tmp179 ;
15577  unsigned long __cil_tmp180 ;
15578  struct urb *__cil_tmp181 ;
15579  bool *__cil_tmp182 ;
15580  bool __cil_tmp183 ;
15581  char *__cil_tmp184 ;
15582  unsigned long __cil_tmp185 ;
15583  unsigned long __cil_tmp186 ;
15584  unsigned long __cil_tmp187 ;
15585  unsigned long __cil_tmp188 ;
15586  wait_queue_head_t *__cil_tmp189 ;
15587  void *__cil_tmp190 ;
15588  unsigned long __cil_tmp191 ;
15589  unsigned long __cil_tmp192 ;
15590  bool *__cil_tmp193 ;
15591  bool __cil_tmp194 ;
15592  char *__cil_tmp195 ;
15593  unsigned long __cil_tmp196 ;
15594  unsigned long __cil_tmp197 ;
15595  __u8 __cil_tmp198 ;
15596  int __cil_tmp199 ;
15597
15598  {
15599  {
15600#line 1960
15601  __cil_tmp17 = (struct moschip_port *)0;
15602#line 1960
15603  __cil_tmp18 = (unsigned long )__cil_tmp17;
15604#line 1960
15605  __cil_tmp19 = (unsigned long )mos7840_port;
15606#line 1960
15607  if (__cil_tmp19 == __cil_tmp18) {
15608#line 1961
15609    return;
15610  } else {
15611
15612  }
15613  }
15614  {
15615#line 1963
15616  __cil_tmp20 = (unsigned long )mos7840_port;
15617#line 1963
15618  __cil_tmp21 = __cil_tmp20 + 264;
15619#line 1963
15620  port = *((struct usb_serial_port **)__cil_tmp21);
15621#line 1965
15622  tmp = mos7840_port_paranoia_check(port, "mos7840_change_port_settings");
15623  }
15624#line 1965
15625  if (tmp != 0) {
15626    {
15627#line 1966
15628    __cil_tmp22 = & debug;
15629#line 1966
15630    __cil_tmp23 = *__cil_tmp22;
15631#line 1966
15632    if ((int )__cil_tmp23) {
15633      {
15634#line 1966
15635      __cil_tmp24 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15636#line 1966
15637      __cil_tmp25 = (char *)"Invalid port";
15638#line 1966
15639      printk("<7>%s: %s\n", __cil_tmp24, __cil_tmp25);
15640      }
15641    } else {
15642
15643    }
15644    }
15645#line 1967
15646    return;
15647  } else {
15648
15649  }
15650  {
15651#line 1970
15652  __cil_tmp26 = *((struct usb_serial **)port);
15653#line 1970
15654  tmp___0 = mos7840_serial_paranoia_check(__cil_tmp26, "mos7840_change_port_settings");
15655  }
15656#line 1970
15657  if (tmp___0 != 0) {
15658    {
15659#line 1971
15660    __cil_tmp27 = & debug;
15661#line 1971
15662    __cil_tmp28 = *__cil_tmp27;
15663#line 1971
15664    if ((int )__cil_tmp28) {
15665      {
15666#line 1971
15667      __cil_tmp29 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15668#line 1971
15669      __cil_tmp30 = (char *)"Invalid Serial";
15670#line 1971
15671      printk("<7>%s: %s\n", __cil_tmp29, __cil_tmp30);
15672      }
15673    } else {
15674
15675    }
15676    }
15677#line 1972
15678    return;
15679  } else {
15680
15681  }
15682#line 1975
15683  serial = *((struct usb_serial **)port);
15684  {
15685#line 1977
15686  __cil_tmp31 = & debug;
15687#line 1977
15688  __cil_tmp32 = *__cil_tmp31;
15689#line 1977
15690  if ((int )__cil_tmp32) {
15691    {
15692#line 1977
15693    __cil_tmp33 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15694#line 1977
15695    __cil_tmp34 = (unsigned long )mos7840_port;
15696#line 1977
15697    __cil_tmp35 = __cil_tmp34 + 264;
15698#line 1977
15699    __cil_tmp36 = *((struct usb_serial_port **)__cil_tmp35);
15700#line 1977
15701    __cil_tmp37 = (unsigned long )__cil_tmp36;
15702#line 1977
15703    __cil_tmp38 = __cil_tmp37 + 816;
15704#line 1977
15705    __cil_tmp39 = *((unsigned char *)__cil_tmp38);
15706#line 1977
15707    __cil_tmp40 = (int )__cil_tmp39;
15708#line 1977
15709    printk("<7>%s: %s - port %d\n", __cil_tmp33, "mos7840_change_port_settings", __cil_tmp40);
15710    }
15711  } else {
15712
15713  }
15714  }
15715  {
15716#line 1979
15717  __cil_tmp41 = (unsigned long )mos7840_port;
15718#line 1979
15719  __cil_tmp42 = __cil_tmp41 + 34;
15720#line 1979
15721  __cil_tmp43 = *((char *)__cil_tmp42);
15722#line 1979
15723  __cil_tmp44 = (signed char )__cil_tmp43;
15724#line 1979
15725  __cil_tmp45 = (int )__cil_tmp44;
15726#line 1979
15727  if (__cil_tmp45 == 0) {
15728    {
15729#line 1980
15730    __cil_tmp46 = & debug;
15731#line 1980
15732    __cil_tmp47 = *__cil_tmp46;
15733#line 1980
15734    if ((int )__cil_tmp47) {
15735      {
15736#line 1980
15737      __cil_tmp48 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15738#line 1980
15739      printk("<7>%s: %s - port not opened\n", __cil_tmp48, "mos7840_change_port_settings");
15740      }
15741    } else {
15742
15743    }
15744    }
15745#line 1981
15746    return;
15747  } else {
15748
15749  }
15750  }
15751  {
15752#line 1984
15753  __cil_tmp49 = & debug;
15754#line 1984
15755  __cil_tmp50 = *__cil_tmp49;
15756#line 1984
15757  if ((int )__cil_tmp50) {
15758    {
15759#line 1984
15760    __cil_tmp51 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15761#line 1984
15762    __cil_tmp52 = (char *)"Entering ..........";
15763#line 1984
15764    printk("<7>%s: %s\n", __cil_tmp51, __cil_tmp52);
15765    }
15766  } else {
15767
15768  }
15769  }
15770#line 1986
15771  lData = (__u8 )3U;
15772#line 1987
15773  lStop = (__u8 )0U;
15774#line 1988
15775  lParity = (__u8 )0U;
15776#line 1990
15777  __cil_tmp53 = (unsigned long )tty;
15778#line 1990
15779  __cil_tmp54 = __cil_tmp53 + 456;
15780#line 1990
15781  __cil_tmp55 = *((struct ktermios **)__cil_tmp54);
15782#line 1990
15783  __cil_tmp56 = (unsigned long )__cil_tmp55;
15784#line 1990
15785  __cil_tmp57 = __cil_tmp56 + 8;
15786#line 1990
15787  cflag = *((tcflag_t *)__cil_tmp57);
15788#line 1991
15789  __cil_tmp58 = (unsigned long )tty;
15790#line 1991
15791  __cil_tmp59 = __cil_tmp58 + 456;
15792#line 1991
15793  __cil_tmp60 = *((struct ktermios **)__cil_tmp59);
15794#line 1991
15795  iflag = *((tcflag_t *)__cil_tmp60);
15796  {
15797#line 1994
15798  __cil_tmp61 = cflag & 48U;
15799#line 1994
15800  if (__cil_tmp61 != 0U) {
15801    {
15802#line 1995
15803    __cil_tmp62 = cflag & 48U;
15804#line 1996
15805    if ((int )__cil_tmp62 == 0) {
15806#line 1996
15807      goto case_0;
15808    } else
15809#line 2000
15810    if ((int )__cil_tmp62 == 16) {
15811#line 2000
15812      goto case_16;
15813    } else
15814#line 2004
15815    if ((int )__cil_tmp62 == 32) {
15816#line 2004
15817      goto case_32;
15818    } else
15819#line 2008
15820    if ((int )__cil_tmp62 == 48) {
15821#line 2008
15822      goto case_48;
15823    } else {
15824      {
15825#line 2007
15826      goto switch_default;
15827#line 1995
15828      if (0) {
15829        case_0: /* CIL Label */ 
15830#line 1997
15831        lData = (__u8 )0U;
15832#line 1998
15833        goto ldv_28204;
15834        case_16: /* CIL Label */ 
15835#line 2001
15836        lData = (__u8 )1U;
15837#line 2002
15838        goto ldv_28204;
15839        case_32: /* CIL Label */ 
15840#line 2005
15841        lData = (__u8 )2U;
15842#line 2006
15843        goto ldv_28204;
15844        switch_default: /* CIL Label */ ;
15845        case_48: /* CIL Label */ 
15846#line 2009
15847        lData = (__u8 )3U;
15848#line 2010
15849        goto ldv_28204;
15850      } else {
15851        switch_break: /* CIL Label */ ;
15852      }
15853      }
15854    }
15855    }
15856    ldv_28204: ;
15857  } else {
15858
15859  }
15860  }
15861  {
15862#line 2014
15863  __cil_tmp63 = cflag & 256U;
15864#line 2014
15865  if (__cil_tmp63 != 0U) {
15866    {
15867#line 2015
15868    __cil_tmp64 = cflag & 512U;
15869#line 2015
15870    if (__cil_tmp64 != 0U) {
15871#line 2016
15872      lParity = (__u8 )8U;
15873      {
15874#line 2017
15875      __cil_tmp65 = & debug;
15876#line 2017
15877      __cil_tmp66 = *__cil_tmp65;
15878#line 2017
15879      if ((int )__cil_tmp66) {
15880        {
15881#line 2017
15882        __cil_tmp67 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15883#line 2017
15884        printk("<7>%s: %s - parity = odd\n", __cil_tmp67, "mos7840_change_port_settings");
15885        }
15886      } else {
15887
15888      }
15889      }
15890    } else {
15891#line 2019
15892      lParity = (__u8 )24U;
15893      {
15894#line 2020
15895      __cil_tmp68 = & debug;
15896#line 2020
15897      __cil_tmp69 = *__cil_tmp68;
15898#line 2020
15899      if ((int )__cil_tmp69) {
15900        {
15901#line 2020
15902        __cil_tmp70 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15903#line 2020
15904        printk("<7>%s: %s - parity = even\n", __cil_tmp70, "mos7840_change_port_settings");
15905        }
15906      } else {
15907
15908      }
15909      }
15910    }
15911    }
15912  } else {
15913    {
15914#line 2024
15915    __cil_tmp71 = & debug;
15916#line 2024
15917    __cil_tmp72 = *__cil_tmp71;
15918#line 2024
15919    if ((int )__cil_tmp72) {
15920      {
15921#line 2024
15922      __cil_tmp73 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15923#line 2024
15924      printk("<7>%s: %s - parity = none\n", __cil_tmp73, "mos7840_change_port_settings");
15925      }
15926    } else {
15927
15928    }
15929    }
15930  }
15931  }
15932  {
15933#line 2027
15934  __cil_tmp74 = cflag & 1073741824U;
15935#line 2027
15936  if (__cil_tmp74 != 0U) {
15937#line 2028
15938    __cil_tmp75 = (unsigned int )lParity;
15939#line 2028
15940    __cil_tmp76 = __cil_tmp75 | 32U;
15941#line 2028
15942    lParity = (__u8 )__cil_tmp76;
15943  } else {
15944
15945  }
15946  }
15947  {
15948#line 2031
15949  __cil_tmp77 = cflag & 64U;
15950#line 2031
15951  if (__cil_tmp77 != 0U) {
15952#line 2032
15953    lStop = (__u8 )4U;
15954    {
15955#line 2033
15956    __cil_tmp78 = & debug;
15957#line 2033
15958    __cil_tmp79 = *__cil_tmp78;
15959#line 2033
15960    if ((int )__cil_tmp79) {
15961      {
15962#line 2033
15963      __cil_tmp80 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15964#line 2033
15965      printk("<7>%s: %s - stop bits = 2\n", __cil_tmp80, "mos7840_change_port_settings");
15966      }
15967    } else {
15968
15969    }
15970    }
15971  } else {
15972#line 2035
15973    lStop = (__u8 )0U;
15974    {
15975#line 2036
15976    __cil_tmp81 = & debug;
15977#line 2036
15978    __cil_tmp82 = *__cil_tmp81;
15979#line 2036
15980    if ((int )__cil_tmp82) {
15981      {
15982#line 2036
15983      __cil_tmp83 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
15984#line 2036
15985      printk("<7>%s: %s - stop bits = 1\n", __cil_tmp83, "mos7840_change_port_settings");
15986      }
15987    } else {
15988
15989    }
15990    }
15991  }
15992  }
15993#line 2040
15994  __cil_tmp84 = (unsigned long )mos7840_port;
15995#line 2040
15996  __cil_tmp85 = __cil_tmp84 + 32;
15997#line 2040
15998  __cil_tmp86 = (unsigned long )mos7840_port;
15999#line 2040
16000  __cil_tmp87 = __cil_tmp86 + 32;
16001#line 2040
16002  __cil_tmp88 = *((__u8 *)__cil_tmp87);
16003#line 2040
16004  __cil_tmp89 = (unsigned int )__cil_tmp88;
16005#line 2040
16006  __cil_tmp90 = __cil_tmp89 & 192U;
16007#line 2040
16008  *((__u8 *)__cil_tmp85) = (__u8 )__cil_tmp90;
16009#line 2042
16010  __cil_tmp91 = (unsigned long )mos7840_port;
16011#line 2042
16012  __cil_tmp92 = __cil_tmp91 + 32;
16013#line 2042
16014  __cil_tmp93 = (int )lStop;
16015#line 2042
16016  __cil_tmp94 = (int )lParity;
16017#line 2042
16018  __cil_tmp95 = (int )lData;
16019#line 2042
16020  __cil_tmp96 = __cil_tmp95 | __cil_tmp94;
16021#line 2042
16022  __cil_tmp97 = __cil_tmp96 | __cil_tmp93;
16023#line 2042
16024  __cil_tmp98 = (unsigned long )mos7840_port;
16025#line 2042
16026  __cil_tmp99 = __cil_tmp98 + 32;
16027#line 2042
16028  __cil_tmp100 = *((__u8 *)__cil_tmp99);
16029#line 2042
16030  __cil_tmp101 = (int )__cil_tmp100;
16031#line 2042
16032  __cil_tmp102 = __cil_tmp101 | __cil_tmp97;
16033#line 2042
16034  *((__u8 *)__cil_tmp92) = (__u8 )__cil_tmp102;
16035  {
16036#line 2044
16037  __cil_tmp103 = & debug;
16038#line 2044
16039  __cil_tmp104 = *__cil_tmp103;
16040#line 2044
16041  if ((int )__cil_tmp104) {
16042    {
16043#line 2044
16044    __cil_tmp105 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16045#line 2044
16046    __cil_tmp106 = (unsigned long )mos7840_port;
16047#line 2044
16048    __cil_tmp107 = __cil_tmp106 + 32;
16049#line 2044
16050    __cil_tmp108 = *((__u8 *)__cil_tmp107);
16051#line 2044
16052    __cil_tmp109 = (int )__cil_tmp108;
16053#line 2044
16054    printk("<7>%s: mos7840_change_port_settings mos7840_port->shadowLCR is %x\n",
16055           __cil_tmp105, __cil_tmp109);
16056    }
16057  } else {
16058
16059  }
16060  }
16061  {
16062#line 2047
16063  Data = (__u16 )0U;
16064#line 2048
16065  __cil_tmp110 = (__u16 )1;
16066#line 2048
16067  __cil_tmp111 = (int )Data;
16068#line 2048
16069  __cil_tmp112 = (__u16 )__cil_tmp111;
16070#line 2048
16071  mos7840_set_uart_reg(port, __cil_tmp110, __cil_tmp112);
16072#line 2050
16073  Data = (__u16 )0U;
16074#line 2051
16075  __cil_tmp113 = (__u16 )2;
16076#line 2051
16077  __cil_tmp114 = (int )Data;
16078#line 2051
16079  __cil_tmp115 = (__u16 )__cil_tmp114;
16080#line 2051
16081  mos7840_set_uart_reg(port, __cil_tmp113, __cil_tmp115);
16082#line 2053
16083  Data = (__u16 )207U;
16084#line 2054
16085  __cil_tmp116 = (__u16 )2;
16086#line 2054
16087  __cil_tmp117 = (int )Data;
16088#line 2054
16089  __cil_tmp118 = (__u16 )__cil_tmp117;
16090#line 2054
16091  mos7840_set_uart_reg(port, __cil_tmp116, __cil_tmp118);
16092#line 2057
16093  __cil_tmp119 = (unsigned long )mos7840_port;
16094#line 2057
16095  __cil_tmp120 = __cil_tmp119 + 32;
16096#line 2057
16097  __cil_tmp121 = *((__u8 *)__cil_tmp120);
16098#line 2057
16099  Data = (__u16 )__cil_tmp121;
16100#line 2059
16101  __cil_tmp122 = (__u16 )3;
16102#line 2059
16103  __cil_tmp123 = (int )Data;
16104#line 2059
16105  __cil_tmp124 = (__u16 )__cil_tmp123;
16106#line 2059
16107  mos7840_set_uart_reg(port, __cil_tmp122, __cil_tmp124);
16108#line 2061
16109  Data = (__u16 )11U;
16110#line 2062
16111  __cil_tmp125 = (unsigned long )mos7840_port;
16112#line 2062
16113  __cil_tmp126 = __cil_tmp125 + 33;
16114#line 2062
16115  *((__u8 *)__cil_tmp126) = (__u8 )Data;
16116#line 2063
16117  __cil_tmp127 = (__u16 )4;
16118#line 2063
16119  __cil_tmp128 = (int )Data;
16120#line 2063
16121  __cil_tmp129 = (__u16 )__cil_tmp128;
16122#line 2063
16123  mos7840_set_uart_reg(port, __cil_tmp127, __cil_tmp129);
16124#line 2064
16125  Data = (__u16 )11U;
16126#line 2065
16127  __cil_tmp130 = (__u16 )4;
16128#line 2065
16129  __cil_tmp131 = (int )Data;
16130#line 2065
16131  __cil_tmp132 = (__u16 )__cil_tmp131;
16132#line 2065
16133  mos7840_set_uart_reg(port, __cil_tmp130, __cil_tmp132);
16134#line 2069
16135  __cil_tmp133 = (unsigned long )mos7840_port;
16136#line 2069
16137  __cil_tmp134 = __cil_tmp133 + 33;
16138#line 2069
16139  *((__u8 *)__cil_tmp134) = (__u8 )8U;
16140  }
16141  {
16142#line 2070
16143  __cil_tmp135 = cflag & 4111U;
16144#line 2070
16145  if (__cil_tmp135 != 0U) {
16146#line 2071
16147    __cil_tmp136 = (unsigned long )mos7840_port;
16148#line 2071
16149    __cil_tmp137 = __cil_tmp136 + 33;
16150#line 2071
16151    __cil_tmp138 = (unsigned long )mos7840_port;
16152#line 2071
16153    __cil_tmp139 = __cil_tmp138 + 33;
16154#line 2071
16155    __cil_tmp140 = *((__u8 *)__cil_tmp139);
16156#line 2071
16157    __cil_tmp141 = (unsigned int )__cil_tmp140;
16158#line 2071
16159    __cil_tmp142 = __cil_tmp141 | 3U;
16160#line 2071
16161    *((__u8 *)__cil_tmp137) = (__u8 )__cil_tmp142;
16162  } else {
16163
16164  }
16165  }
16166  {
16167#line 2073
16168  __cil_tmp143 = (int )cflag;
16169#line 2073
16170  if (__cil_tmp143 < 0) {
16171#line 2074
16172    __cil_tmp144 = (unsigned long )mos7840_port;
16173#line 2074
16174    __cil_tmp145 = __cil_tmp144 + 33;
16175#line 2074
16176    __cil_tmp146 = (unsigned long )mos7840_port;
16177#line 2074
16178    __cil_tmp147 = __cil_tmp146 + 33;
16179#line 2074
16180    __cil_tmp148 = *((__u8 *)__cil_tmp147);
16181#line 2074
16182    __cil_tmp149 = (unsigned int )__cil_tmp148;
16183#line 2074
16184    __cil_tmp150 = __cil_tmp149 | 32U;
16185#line 2074
16186    *((__u8 *)__cil_tmp145) = (__u8 )__cil_tmp150;
16187  } else {
16188#line 2076
16189    __cil_tmp151 = (unsigned long )mos7840_port;
16190#line 2076
16191    __cil_tmp152 = __cil_tmp151 + 33;
16192#line 2076
16193    __cil_tmp153 = (unsigned long )mos7840_port;
16194#line 2076
16195    __cil_tmp154 = __cil_tmp153 + 33;
16196#line 2076
16197    __cil_tmp155 = *((__u8 *)__cil_tmp154);
16198#line 2076
16199    __cil_tmp156 = (unsigned int )__cil_tmp155;
16200#line 2076
16201    __cil_tmp157 = __cil_tmp156 & 223U;
16202#line 2076
16203    *((__u8 *)__cil_tmp152) = (__u8 )__cil_tmp157;
16204  }
16205  }
16206  {
16207#line 2078
16208  __cil_tmp158 = (unsigned long )mos7840_port;
16209#line 2078
16210  __cil_tmp159 = __cil_tmp158 + 33;
16211#line 2078
16212  __cil_tmp160 = *((__u8 *)__cil_tmp159);
16213#line 2078
16214  Data = (__u16 )__cil_tmp160;
16215#line 2079
16216  __cil_tmp161 = (__u16 )4;
16217#line 2079
16218  __cil_tmp162 = (int )Data;
16219#line 2079
16220  __cil_tmp163 = (__u16 )__cil_tmp162;
16221#line 2079
16222  mos7840_set_uart_reg(port, __cil_tmp161, __cil_tmp163);
16223#line 2082
16224  tmp___1 = tty_get_baud_rate(tty);
16225#line 2082
16226  baud = (int )tmp___1;
16227  }
16228#line 2084
16229  if (baud == 0) {
16230    {
16231#line 2086
16232    __cil_tmp164 = & debug;
16233#line 2086
16234    __cil_tmp165 = *__cil_tmp164;
16235#line 2086
16236    if ((int )__cil_tmp165) {
16237      {
16238#line 2086
16239      __cil_tmp166 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16240#line 2086
16241      __cil_tmp167 = (char *)"Picked default baud...";
16242#line 2086
16243      printk("<7>%s: %s\n", __cil_tmp166, __cil_tmp167);
16244      }
16245    } else {
16246
16247    }
16248    }
16249#line 2087
16250    baud = 9600;
16251  } else {
16252
16253  }
16254  {
16255#line 2090
16256  __cil_tmp168 = & debug;
16257#line 2090
16258  __cil_tmp169 = *__cil_tmp168;
16259#line 2090
16260  if ((int )__cil_tmp169) {
16261    {
16262#line 2090
16263    __cil_tmp170 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16264#line 2090
16265    printk("<7>%s: %s - baud rate = %d\n", __cil_tmp170, "mos7840_change_port_settings",
16266           baud);
16267    }
16268  } else {
16269
16270  }
16271  }
16272  {
16273#line 2091
16274  status = mos7840_send_cmd_write_baud_rate(mos7840_port, baud);
16275#line 2094
16276  Data = (__u16 )12U;
16277#line 2095
16278  __cil_tmp171 = (__u16 )1;
16279#line 2095
16280  __cil_tmp172 = (int )Data;
16281#line 2095
16282  __cil_tmp173 = (__u16 )__cil_tmp172;
16283#line 2095
16284  mos7840_set_uart_reg(port, __cil_tmp171, __cil_tmp173);
16285  }
16286  {
16287#line 2097
16288  __cil_tmp174 = (unsigned long )mos7840_port;
16289#line 2097
16290  __cil_tmp175 = __cil_tmp174 + 528;
16291#line 2097
16292  __cil_tmp176 = *((bool *)__cil_tmp175);
16293#line 2097
16294  if (! __cil_tmp176) {
16295    {
16296#line 2098
16297    __cil_tmp177 = (unsigned long )mos7840_port;
16298#line 2098
16299    __cil_tmp178 = __cil_tmp177 + 528;
16300#line 2098
16301    *((bool *)__cil_tmp178) = (bool )1;
16302#line 2099
16303    __cil_tmp179 = (unsigned long )mos7840_port;
16304#line 2099
16305    __cil_tmp180 = __cil_tmp179 + 16;
16306#line 2099
16307    __cil_tmp181 = *((struct urb **)__cil_tmp180);
16308#line 2099
16309    status = ldv_usb_submit_urb_27(__cil_tmp181, 32U);
16310    }
16311#line 2100
16312    if (status != 0) {
16313      {
16314#line 2101
16315      __cil_tmp182 = & debug;
16316#line 2101
16317      __cil_tmp183 = *__cil_tmp182;
16318#line 2101
16319      if ((int )__cil_tmp183) {
16320        {
16321#line 2101
16322        __cil_tmp184 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16323#line 2101
16324        printk("<7>%s: usb_submit_urb(read bulk) failed, status = %d\n", __cil_tmp184,
16325               status);
16326        }
16327      } else {
16328
16329      }
16330      }
16331#line 2103
16332      __cil_tmp185 = (unsigned long )mos7840_port;
16333#line 2103
16334      __cil_tmp186 = __cil_tmp185 + 528;
16335#line 2103
16336      *((bool *)__cil_tmp186) = (bool )0;
16337    } else {
16338
16339    }
16340  } else {
16341
16342  }
16343  }
16344  {
16345#line 2106
16346  __cil_tmp187 = (unsigned long )mos7840_port;
16347#line 2106
16348  __cil_tmp188 = __cil_tmp187 + 128;
16349#line 2106
16350  __cil_tmp189 = (wait_queue_head_t *)__cil_tmp188;
16351#line 2106
16352  __cil_tmp190 = (void *)0;
16353#line 2106
16354  __wake_up(__cil_tmp189, 3U, 1, __cil_tmp190);
16355#line 2107
16356  __cil_tmp191 = (unsigned long )mos7840_port;
16357#line 2107
16358  __cil_tmp192 = __cil_tmp191 + 216;
16359#line 2107
16360  *((int *)__cil_tmp192) = 1;
16361  }
16362  {
16363#line 2108
16364  __cil_tmp193 = & debug;
16365#line 2108
16366  __cil_tmp194 = *__cil_tmp193;
16367#line 2108
16368  if ((int )__cil_tmp194) {
16369    {
16370#line 2108
16371    __cil_tmp195 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16372#line 2108
16373    __cil_tmp196 = (unsigned long )mos7840_port;
16374#line 2108
16375    __cil_tmp197 = __cil_tmp196 + 32;
16376#line 2108
16377    __cil_tmp198 = *((__u8 *)__cil_tmp197);
16378#line 2108
16379    __cil_tmp199 = (int )__cil_tmp198;
16380#line 2108
16381    printk("<7>%s: mos7840_change_port_settings mos7840_port->shadowLCR is End %x\n",
16382           __cil_tmp195, __cil_tmp199);
16383    }
16384  } else {
16385
16386  }
16387  }
16388#line 2109
16389  return;
16390}
16391}
16392#line 2118 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
16393static void mos7840_set_termios(struct tty_struct *tty , struct usb_serial_port *port ,
16394                                struct ktermios *old_termios ) 
16395{ int status ;
16396  unsigned int cflag ;
16397  struct usb_serial *serial ;
16398  struct moschip_port *mos7840_port ;
16399  int tmp ;
16400  int tmp___0 ;
16401  bool *__cil_tmp10 ;
16402  bool __cil_tmp11 ;
16403  char *__cil_tmp12 ;
16404  bool *__cil_tmp13 ;
16405  bool __cil_tmp14 ;
16406  char *__cil_tmp15 ;
16407  char *__cil_tmp16 ;
16408  bool *__cil_tmp17 ;
16409  bool __cil_tmp18 ;
16410  char *__cil_tmp19 ;
16411  char *__cil_tmp20 ;
16412  struct moschip_port *__cil_tmp21 ;
16413  unsigned long __cil_tmp22 ;
16414  unsigned long __cil_tmp23 ;
16415  unsigned long __cil_tmp24 ;
16416  unsigned long __cil_tmp25 ;
16417  char __cil_tmp26 ;
16418  signed char __cil_tmp27 ;
16419  int __cil_tmp28 ;
16420  bool *__cil_tmp29 ;
16421  bool __cil_tmp30 ;
16422  char *__cil_tmp31 ;
16423  bool *__cil_tmp32 ;
16424  bool __cil_tmp33 ;
16425  char *__cil_tmp34 ;
16426  char *__cil_tmp35 ;
16427  unsigned long __cil_tmp36 ;
16428  unsigned long __cil_tmp37 ;
16429  struct ktermios *__cil_tmp38 ;
16430  unsigned long __cil_tmp39 ;
16431  unsigned long __cil_tmp40 ;
16432  bool *__cil_tmp41 ;
16433  bool __cil_tmp42 ;
16434  char *__cil_tmp43 ;
16435  unsigned long __cil_tmp44 ;
16436  unsigned long __cil_tmp45 ;
16437  struct ktermios *__cil_tmp46 ;
16438  unsigned long __cil_tmp47 ;
16439  unsigned long __cil_tmp48 ;
16440  tcflag_t __cil_tmp49 ;
16441  unsigned long __cil_tmp50 ;
16442  unsigned long __cil_tmp51 ;
16443  struct ktermios *__cil_tmp52 ;
16444  tcflag_t __cil_tmp53 ;
16445  unsigned int __cil_tmp54 ;
16446  bool *__cil_tmp55 ;
16447  bool __cil_tmp56 ;
16448  char *__cil_tmp57 ;
16449  unsigned long __cil_tmp58 ;
16450  unsigned long __cil_tmp59 ;
16451  tcflag_t __cil_tmp60 ;
16452  tcflag_t __cil_tmp61 ;
16453  unsigned int __cil_tmp62 ;
16454  bool *__cil_tmp63 ;
16455  bool __cil_tmp64 ;
16456  char *__cil_tmp65 ;
16457  unsigned long __cil_tmp66 ;
16458  unsigned long __cil_tmp67 ;
16459  unsigned char __cil_tmp68 ;
16460  int __cil_tmp69 ;
16461  struct urb *__cil_tmp70 ;
16462  unsigned long __cil_tmp71 ;
16463  unsigned long __cil_tmp72 ;
16464  unsigned long __cil_tmp73 ;
16465  struct urb *__cil_tmp74 ;
16466  unsigned long __cil_tmp75 ;
16467  bool *__cil_tmp76 ;
16468  bool __cil_tmp77 ;
16469  char *__cil_tmp78 ;
16470  char *__cil_tmp79 ;
16471  unsigned long __cil_tmp80 ;
16472  unsigned long __cil_tmp81 ;
16473  bool __cil_tmp82 ;
16474  unsigned long __cil_tmp83 ;
16475  unsigned long __cil_tmp84 ;
16476  unsigned long __cil_tmp85 ;
16477  unsigned long __cil_tmp86 ;
16478  struct urb *__cil_tmp87 ;
16479  bool *__cil_tmp88 ;
16480  bool __cil_tmp89 ;
16481  char *__cil_tmp90 ;
16482  unsigned long __cil_tmp91 ;
16483  unsigned long __cil_tmp92 ;
16484
16485  {
16486  {
16487#line 2126
16488  __cil_tmp10 = & debug;
16489#line 2126
16490  __cil_tmp11 = *__cil_tmp10;
16491#line 2126
16492  if ((int )__cil_tmp11) {
16493    {
16494#line 2126
16495    __cil_tmp12 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16496#line 2126
16497    printk("<7>%s: mos7840_set_termios: START\n", __cil_tmp12);
16498    }
16499  } else {
16500
16501  }
16502  }
16503  {
16504#line 2127
16505  tmp = mos7840_port_paranoia_check(port, "mos7840_set_termios");
16506  }
16507#line 2127
16508  if (tmp != 0) {
16509    {
16510#line 2128
16511    __cil_tmp13 = & debug;
16512#line 2128
16513    __cil_tmp14 = *__cil_tmp13;
16514#line 2128
16515    if ((int )__cil_tmp14) {
16516      {
16517#line 2128
16518      __cil_tmp15 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16519#line 2128
16520      __cil_tmp16 = (char *)"Invalid port";
16521#line 2128
16522      printk("<7>%s: %s\n", __cil_tmp15, __cil_tmp16);
16523      }
16524    } else {
16525
16526    }
16527    }
16528#line 2129
16529    return;
16530  } else {
16531
16532  }
16533  {
16534#line 2132
16535  serial = *((struct usb_serial **)port);
16536#line 2134
16537  tmp___0 = mos7840_serial_paranoia_check(serial, "mos7840_set_termios");
16538  }
16539#line 2134
16540  if (tmp___0 != 0) {
16541    {
16542#line 2135
16543    __cil_tmp17 = & debug;
16544#line 2135
16545    __cil_tmp18 = *__cil_tmp17;
16546#line 2135
16547    if ((int )__cil_tmp18) {
16548      {
16549#line 2135
16550      __cil_tmp19 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16551#line 2135
16552      __cil_tmp20 = (char *)"Invalid Serial";
16553#line 2135
16554      printk("<7>%s: %s\n", __cil_tmp19, __cil_tmp20);
16555      }
16556    } else {
16557
16558    }
16559    }
16560#line 2136
16561    return;
16562  } else {
16563
16564  }
16565  {
16566#line 2139
16567  mos7840_port = mos7840_get_port_private(port);
16568  }
16569  {
16570#line 2141
16571  __cil_tmp21 = (struct moschip_port *)0;
16572#line 2141
16573  __cil_tmp22 = (unsigned long )__cil_tmp21;
16574#line 2141
16575  __cil_tmp23 = (unsigned long )mos7840_port;
16576#line 2141
16577  if (__cil_tmp23 == __cil_tmp22) {
16578#line 2142
16579    return;
16580  } else {
16581
16582  }
16583  }
16584  {
16585#line 2144
16586  __cil_tmp24 = (unsigned long )mos7840_port;
16587#line 2144
16588  __cil_tmp25 = __cil_tmp24 + 34;
16589#line 2144
16590  __cil_tmp26 = *((char *)__cil_tmp25);
16591#line 2144
16592  __cil_tmp27 = (signed char )__cil_tmp26;
16593#line 2144
16594  __cil_tmp28 = (int )__cil_tmp27;
16595#line 2144
16596  if (__cil_tmp28 == 0) {
16597    {
16598#line 2145
16599    __cil_tmp29 = & debug;
16600#line 2145
16601    __cil_tmp30 = *__cil_tmp29;
16602#line 2145
16603    if ((int )__cil_tmp30) {
16604      {
16605#line 2145
16606      __cil_tmp31 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16607#line 2145
16608      printk("<7>%s: %s - port not opened\n", __cil_tmp31, "mos7840_set_termios");
16609      }
16610    } else {
16611
16612    }
16613    }
16614#line 2146
16615    return;
16616  } else {
16617
16618  }
16619  }
16620  {
16621#line 2149
16622  __cil_tmp32 = & debug;
16623#line 2149
16624  __cil_tmp33 = *__cil_tmp32;
16625#line 2149
16626  if ((int )__cil_tmp33) {
16627    {
16628#line 2149
16629    __cil_tmp34 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16630#line 2149
16631    __cil_tmp35 = (char *)"setting termios - ";
16632#line 2149
16633    printk("<7>%s: %s\n", __cil_tmp34, __cil_tmp35);
16634    }
16635  } else {
16636
16637  }
16638  }
16639#line 2151
16640  __cil_tmp36 = (unsigned long )tty;
16641#line 2151
16642  __cil_tmp37 = __cil_tmp36 + 456;
16643#line 2151
16644  __cil_tmp38 = *((struct ktermios **)__cil_tmp37);
16645#line 2151
16646  __cil_tmp39 = (unsigned long )__cil_tmp38;
16647#line 2151
16648  __cil_tmp40 = __cil_tmp39 + 8;
16649#line 2151
16650  cflag = *((tcflag_t *)__cil_tmp40);
16651  {
16652#line 2153
16653  __cil_tmp41 = & debug;
16654#line 2153
16655  __cil_tmp42 = *__cil_tmp41;
16656#line 2153
16657  if ((int )__cil_tmp42) {
16658    {
16659#line 2153
16660    __cil_tmp43 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16661#line 2153
16662    __cil_tmp44 = (unsigned long )tty;
16663#line 2153
16664    __cil_tmp45 = __cil_tmp44 + 456;
16665#line 2153
16666    __cil_tmp46 = *((struct ktermios **)__cil_tmp45);
16667#line 2153
16668    __cil_tmp47 = (unsigned long )__cil_tmp46;
16669#line 2153
16670    __cil_tmp48 = __cil_tmp47 + 8;
16671#line 2153
16672    __cil_tmp49 = *((tcflag_t *)__cil_tmp48);
16673#line 2153
16674    __cil_tmp50 = (unsigned long )tty;
16675#line 2153
16676    __cil_tmp51 = __cil_tmp50 + 456;
16677#line 2153
16678    __cil_tmp52 = *((struct ktermios **)__cil_tmp51);
16679#line 2153
16680    __cil_tmp53 = *((tcflag_t *)__cil_tmp52);
16681#line 2153
16682    __cil_tmp54 = __cil_tmp53 & 31U;
16683#line 2153
16684    printk("<7>%s: %s - clfag %08x iflag %08x\n", __cil_tmp43, "mos7840_set_termios",
16685           __cil_tmp49, __cil_tmp54);
16686    }
16687  } else {
16688
16689  }
16690  }
16691  {
16692#line 2155
16693  __cil_tmp55 = & debug;
16694#line 2155
16695  __cil_tmp56 = *__cil_tmp55;
16696#line 2155
16697  if ((int )__cil_tmp56) {
16698    {
16699#line 2155
16700    __cil_tmp57 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16701#line 2155
16702    __cil_tmp58 = (unsigned long )old_termios;
16703#line 2155
16704    __cil_tmp59 = __cil_tmp58 + 8;
16705#line 2155
16706    __cil_tmp60 = *((tcflag_t *)__cil_tmp59);
16707#line 2155
16708    __cil_tmp61 = *((tcflag_t *)old_termios);
16709#line 2155
16710    __cil_tmp62 = __cil_tmp61 & 31U;
16711#line 2155
16712    printk("<7>%s: %s - old clfag %08x old iflag %08x\n", __cil_tmp57, "mos7840_set_termios",
16713           __cil_tmp60, __cil_tmp62);
16714    }
16715  } else {
16716
16717  }
16718  }
16719  {
16720#line 2157
16721  __cil_tmp63 = & debug;
16722#line 2157
16723  __cil_tmp64 = *__cil_tmp63;
16724#line 2157
16725  if ((int )__cil_tmp64) {
16726    {
16727#line 2157
16728    __cil_tmp65 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16729#line 2157
16730    __cil_tmp66 = (unsigned long )port;
16731#line 2157
16732    __cil_tmp67 = __cil_tmp66 + 816;
16733#line 2157
16734    __cil_tmp68 = *((unsigned char *)__cil_tmp67);
16735#line 2157
16736    __cil_tmp69 = (int )__cil_tmp68;
16737#line 2157
16738    printk("<7>%s: %s - port %d\n", __cil_tmp65, "mos7840_set_termios", __cil_tmp69);
16739    }
16740  } else {
16741
16742  }
16743  }
16744  {
16745#line 2161
16746  mos7840_change_port_settings(tty, mos7840_port, old_termios);
16747  }
16748  {
16749#line 2163
16750  __cil_tmp70 = (struct urb *)0;
16751#line 2163
16752  __cil_tmp71 = (unsigned long )__cil_tmp70;
16753#line 2163
16754  __cil_tmp72 = (unsigned long )mos7840_port;
16755#line 2163
16756  __cil_tmp73 = __cil_tmp72 + 16;
16757#line 2163
16758  __cil_tmp74 = *((struct urb **)__cil_tmp73);
16759#line 2163
16760  __cil_tmp75 = (unsigned long )__cil_tmp74;
16761#line 2163
16762  if (__cil_tmp75 == __cil_tmp71) {
16763    {
16764#line 2164
16765    __cil_tmp76 = & debug;
16766#line 2164
16767    __cil_tmp77 = *__cil_tmp76;
16768#line 2164
16769    if ((int )__cil_tmp77) {
16770      {
16771#line 2164
16772      __cil_tmp78 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16773#line 2164
16774      __cil_tmp79 = (char *)"URB KILLED !!!!!";
16775#line 2164
16776      printk("<7>%s: %s\n", __cil_tmp78, __cil_tmp79);
16777      }
16778    } else {
16779
16780    }
16781    }
16782#line 2165
16783    return;
16784  } else {
16785
16786  }
16787  }
16788  {
16789#line 2168
16790  __cil_tmp80 = (unsigned long )mos7840_port;
16791#line 2168
16792  __cil_tmp81 = __cil_tmp80 + 528;
16793#line 2168
16794  __cil_tmp82 = *((bool *)__cil_tmp81);
16795#line 2168
16796  if (! __cil_tmp82) {
16797    {
16798#line 2169
16799    __cil_tmp83 = (unsigned long )mos7840_port;
16800#line 2169
16801    __cil_tmp84 = __cil_tmp83 + 528;
16802#line 2169
16803    *((bool *)__cil_tmp84) = (bool )1;
16804#line 2170
16805    __cil_tmp85 = (unsigned long )mos7840_port;
16806#line 2170
16807    __cil_tmp86 = __cil_tmp85 + 16;
16808#line 2170
16809    __cil_tmp87 = *((struct urb **)__cil_tmp86);
16810#line 2170
16811    status = ldv_usb_submit_urb_28(__cil_tmp87, 32U);
16812    }
16813#line 2171
16814    if (status != 0) {
16815      {
16816#line 2172
16817      __cil_tmp88 = & debug;
16818#line 2172
16819      __cil_tmp89 = *__cil_tmp88;
16820#line 2172
16821      if ((int )__cil_tmp89) {
16822        {
16823#line 2172
16824        __cil_tmp90 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16825#line 2172
16826        printk("<7>%s: usb_submit_urb(read bulk) failed, status = %d\n", __cil_tmp90,
16827               status);
16828        }
16829      } else {
16830
16831      }
16832      }
16833#line 2174
16834      __cil_tmp91 = (unsigned long )mos7840_port;
16835#line 2174
16836      __cil_tmp92 = __cil_tmp91 + 528;
16837#line 2174
16838      *((bool *)__cil_tmp92) = (bool )0;
16839    } else {
16840
16841    }
16842  } else {
16843
16844  }
16845  }
16846#line 2177
16847  return;
16848}
16849}
16850#line 2190 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
16851static int mos7840_get_lsr_info(struct tty_struct *tty , unsigned int *value ) 
16852{ int count ;
16853  unsigned int result ;
16854  int tmp ;
16855  unsigned int *__cil_tmp6 ;
16856  bool *__cil_tmp7 ;
16857  bool __cil_tmp8 ;
16858  char *__cil_tmp9 ;
16859  unsigned int *__cil_tmp10 ;
16860  void *__cil_tmp11 ;
16861  void const   *__cil_tmp12 ;
16862
16863  {
16864  {
16865#line 2194
16866  __cil_tmp6 = & result;
16867#line 2194
16868  *__cil_tmp6 = 0U;
16869#line 2196
16870  count = mos7840_chars_in_buffer(tty);
16871  }
16872#line 2197
16873  if (count == 0) {
16874    {
16875#line 2198
16876    __cil_tmp7 = & debug;
16877#line 2198
16878    __cil_tmp8 = *__cil_tmp7;
16879#line 2198
16880    if ((int )__cil_tmp8) {
16881      {
16882#line 2198
16883      __cil_tmp9 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
16884#line 2198
16885      printk("<7>%s: %s -- Empty\n", __cil_tmp9, "mos7840_get_lsr_info");
16886      }
16887    } else {
16888
16889    }
16890    }
16891#line 2199
16892    __cil_tmp10 = & result;
16893#line 2199
16894    *__cil_tmp10 = 1U;
16895  } else {
16896
16897  }
16898  {
16899#line 2202
16900  __cil_tmp11 = (void *)value;
16901#line 2202
16902  __cil_tmp12 = (void const   *)(& result);
16903#line 2202
16904  tmp = copy_to_user(__cil_tmp11, __cil_tmp12, 4U);
16905  }
16906#line 2202
16907  if (tmp != 0) {
16908#line 2203
16909    return (-14);
16910  } else {
16911
16912  }
16913#line 2204
16914  return (0);
16915}
16916}
16917#line 2212 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
16918static int mos7840_get_serial_info(struct moschip_port *mos7840_port , struct serial_struct *retinfo ) 
16919{ struct serial_struct tmp ;
16920  int tmp___0 ;
16921  struct moschip_port *__cil_tmp5 ;
16922  unsigned long __cil_tmp6 ;
16923  unsigned long __cil_tmp7 ;
16924  struct serial_struct *__cil_tmp8 ;
16925  unsigned long __cil_tmp9 ;
16926  unsigned long __cil_tmp10 ;
16927  void *__cil_tmp11 ;
16928  struct serial_struct *__cil_tmp12 ;
16929  unsigned long __cil_tmp13 ;
16930  unsigned long __cil_tmp14 ;
16931  unsigned long __cil_tmp15 ;
16932  struct usb_serial_port *__cil_tmp16 ;
16933  struct usb_serial *__cil_tmp17 ;
16934  unsigned long __cil_tmp18 ;
16935  unsigned long __cil_tmp19 ;
16936  unsigned char __cil_tmp20 ;
16937  unsigned long __cil_tmp21 ;
16938  unsigned long __cil_tmp22 ;
16939  unsigned long __cil_tmp23 ;
16940  struct usb_serial_port *__cil_tmp24 ;
16941  unsigned long __cil_tmp25 ;
16942  unsigned long __cil_tmp26 ;
16943  unsigned char __cil_tmp27 ;
16944  unsigned long __cil_tmp28 ;
16945  unsigned long __cil_tmp29 ;
16946  unsigned long __cil_tmp30 ;
16947  unsigned long __cil_tmp31 ;
16948  unsigned long __cil_tmp32 ;
16949  unsigned long __cil_tmp33 ;
16950  void *__cil_tmp34 ;
16951  void const   *__cil_tmp35 ;
16952
16953  {
16954  {
16955#line 2217
16956  __cil_tmp5 = (struct moschip_port *)0;
16957#line 2217
16958  __cil_tmp6 = (unsigned long )__cil_tmp5;
16959#line 2217
16960  __cil_tmp7 = (unsigned long )mos7840_port;
16961#line 2217
16962  if (__cil_tmp7 == __cil_tmp6) {
16963#line 2218
16964    return (-1);
16965  } else {
16966
16967  }
16968  }
16969  {
16970#line 2220
16971  __cil_tmp8 = (struct serial_struct *)0;
16972#line 2220
16973  __cil_tmp9 = (unsigned long )__cil_tmp8;
16974#line 2220
16975  __cil_tmp10 = (unsigned long )retinfo;
16976#line 2220
16977  if (__cil_tmp10 == __cil_tmp9) {
16978#line 2221
16979    return (-14);
16980  } else {
16981
16982  }
16983  }
16984  {
16985#line 2223
16986  __cil_tmp11 = (void *)(& tmp);
16987#line 2223
16988  memset(__cil_tmp11, 0, 72UL);
16989#line 2225
16990  __cil_tmp12 = & tmp;
16991#line 2225
16992  *((int *)__cil_tmp12) = 4;
16993#line 2226
16994  __cil_tmp13 = (unsigned long )(& tmp) + 4;
16995#line 2226
16996  __cil_tmp14 = (unsigned long )mos7840_port;
16997#line 2226
16998  __cil_tmp15 = __cil_tmp14 + 264;
16999#line 2226
17000  __cil_tmp16 = *((struct usb_serial_port **)__cil_tmp15);
17001#line 2226
17002  __cil_tmp17 = *((struct usb_serial **)__cil_tmp16);
17003#line 2226
17004  __cil_tmp18 = (unsigned long )__cil_tmp17;
17005#line 2226
17006  __cil_tmp19 = __cil_tmp18 + 25;
17007#line 2226
17008  __cil_tmp20 = *((unsigned char *)__cil_tmp19);
17009#line 2226
17010  *((int *)__cil_tmp13) = (int )__cil_tmp20;
17011#line 2227
17012  __cil_tmp21 = (unsigned long )(& tmp) + 8;
17013#line 2227
17014  __cil_tmp22 = (unsigned long )mos7840_port;
17015#line 2227
17016  __cil_tmp23 = __cil_tmp22 + 264;
17017#line 2227
17018  __cil_tmp24 = *((struct usb_serial_port **)__cil_tmp23);
17019#line 2227
17020  __cil_tmp25 = (unsigned long )__cil_tmp24;
17021#line 2227
17022  __cil_tmp26 = __cil_tmp25 + 816;
17023#line 2227
17024  __cil_tmp27 = *((unsigned char *)__cil_tmp26);
17025#line 2227
17026  *((unsigned int *)__cil_tmp21) = (unsigned int )__cil_tmp27;
17027#line 2228
17028  __cil_tmp28 = (unsigned long )(& tmp) + 12;
17029#line 2228
17030  *((int *)__cil_tmp28) = 0;
17031#line 2229
17032  __cil_tmp29 = (unsigned long )(& tmp) + 16;
17033#line 2229
17034  *((int *)__cil_tmp29) = 192;
17035#line 2230
17036  __cil_tmp30 = (unsigned long )(& tmp) + 20;
17037#line 2230
17038  *((int *)__cil_tmp30) = 512;
17039#line 2231
17040  __cil_tmp31 = (unsigned long )(& tmp) + 28;
17041#line 2231
17042  *((int *)__cil_tmp31) = 9600;
17043#line 2232
17044  __cil_tmp32 = (unsigned long )(& tmp) + 32;
17045#line 2232
17046  *((unsigned short *)__cil_tmp32) = (unsigned short)1250;
17047#line 2233
17048  __cil_tmp33 = (unsigned long )(& tmp) + 40;
17049#line 2233
17050  *((unsigned short *)__cil_tmp33) = (unsigned short)7500;
17051#line 2235
17052  __cil_tmp34 = (void *)retinfo;
17053#line 2235
17054  __cil_tmp35 = (void const   *)(& tmp);
17055#line 2235
17056  tmp___0 = copy_to_user(__cil_tmp34, __cil_tmp35, 72U);
17057  }
17058#line 2235
17059  if (tmp___0 != 0) {
17060#line 2236
17061    return (-14);
17062  } else {
17063
17064  }
17065#line 2237
17066  return (0);
17067}
17068}
17069#line 2240 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
17070static int mos7840_get_icount(struct tty_struct *tty , struct serial_icounter_struct *icount ) 
17071{ struct usb_serial_port *port ;
17072  struct moschip_port *mos7840_port ;
17073  struct async_icount cnow ;
17074  unsigned long __cil_tmp6 ;
17075  unsigned long __cil_tmp7 ;
17076  void *__cil_tmp8 ;
17077  unsigned long __cil_tmp9 ;
17078  unsigned long __cil_tmp10 ;
17079  unsigned long __cil_tmp11 ;
17080  unsigned long __cil_tmp12 ;
17081  unsigned long __cil_tmp13 ;
17082  unsigned long __cil_tmp14 ;
17083  unsigned long __cil_tmp15 ;
17084  unsigned long __cil_tmp16 ;
17085  unsigned long __cil_tmp17 ;
17086  unsigned long __cil_tmp18 ;
17087  unsigned long __cil_tmp19 ;
17088  unsigned long __cil_tmp20 ;
17089  unsigned long __cil_tmp21 ;
17090  unsigned long __cil_tmp22 ;
17091  unsigned long __cil_tmp23 ;
17092  unsigned long __cil_tmp24 ;
17093  unsigned long __cil_tmp25 ;
17094  unsigned long __cil_tmp26 ;
17095  unsigned long __cil_tmp27 ;
17096  unsigned long __cil_tmp28 ;
17097  unsigned long __cil_tmp29 ;
17098  unsigned long __cil_tmp30 ;
17099  bool *__cil_tmp31 ;
17100  bool __cil_tmp32 ;
17101  char *__cil_tmp33 ;
17102  unsigned long __cil_tmp34 ;
17103  unsigned long __cil_tmp35 ;
17104  unsigned char __cil_tmp36 ;
17105  int __cil_tmp37 ;
17106  unsigned long __cil_tmp38 ;
17107  unsigned long __cil_tmp39 ;
17108  int __cil_tmp40 ;
17109  unsigned long __cil_tmp41 ;
17110  unsigned long __cil_tmp42 ;
17111  int __cil_tmp43 ;
17112  __u32 cnow_buf_overrun44 ;
17113  __u32 cnow_brk45 ;
17114  __u32 cnow_overrun46 ;
17115  __u32 cnow_parity47 ;
17116  __u32 cnow_frame48 ;
17117  __u32 cnow_rx49 ;
17118  __u32 cnow_tx50 ;
17119  __u32 cnow_dcd51 ;
17120  __u32 cnow_rng52 ;
17121  __u32 cnow_dsr53 ;
17122  __u32 cnow_cts54 ;
17123  __u32 __cil_tmp55 ;
17124  __u32 __cil_tmp56 ;
17125  __u32 __cil_tmp57 ;
17126  __u32 __cil_tmp58 ;
17127  __u32 __cil_tmp59 ;
17128  __u32 __cil_tmp60 ;
17129  __u32 __cil_tmp61 ;
17130  __u32 __cil_tmp62 ;
17131  __u32 __cil_tmp63 ;
17132  __u32 __cil_tmp64 ;
17133  __u32 __cil_tmp65 ;
17134
17135  {
17136  {
17137#line 2243
17138  __cil_tmp6 = (unsigned long )tty;
17139#line 2243
17140  __cil_tmp7 = __cil_tmp6 + 1064;
17141#line 2243
17142  __cil_tmp8 = *((void **)__cil_tmp7);
17143#line 2243
17144  port = (struct usb_serial_port *)__cil_tmp8;
17145#line 2247
17146  mos7840_port = mos7840_get_port_private(port);
17147#line 2248
17148  __cil_tmp9 = (unsigned long )mos7840_port;
17149#line 2248
17150  __cil_tmp10 = __cil_tmp9 + 220;
17151#line 2248
17152  __cil_tmp55 = ((struct async_icount *)__cil_tmp10)->cts;
17153#line 2248
17154  __cil_tmp56 = ((struct async_icount *)__cil_tmp10)->dsr;
17155#line 2248
17156  __cil_tmp57 = ((struct async_icount *)__cil_tmp10)->rng;
17157#line 2248
17158  __cil_tmp58 = ((struct async_icount *)__cil_tmp10)->dcd;
17159#line 2248
17160  __cil_tmp59 = ((struct async_icount *)__cil_tmp10)->tx;
17161#line 2248
17162  __cil_tmp60 = ((struct async_icount *)__cil_tmp10)->rx;
17163#line 2248
17164  __cil_tmp61 = ((struct async_icount *)__cil_tmp10)->frame;
17165#line 2248
17166  __cil_tmp62 = ((struct async_icount *)__cil_tmp10)->parity;
17167#line 2248
17168  __cil_tmp63 = ((struct async_icount *)__cil_tmp10)->overrun;
17169#line 2248
17170  __cil_tmp64 = ((struct async_icount *)__cil_tmp10)->brk;
17171#line 2248
17172  __cil_tmp65 = ((struct async_icount *)__cil_tmp10)->buf_overrun;
17173#line 2248
17174  cnow_cts54 = __cil_tmp55;
17175#line 2248
17176  cnow_dsr53 = __cil_tmp56;
17177#line 2248
17178  cnow_rng52 = __cil_tmp57;
17179#line 2248
17180  cnow_dcd51 = __cil_tmp58;
17181#line 2248
17182  cnow_tx50 = __cil_tmp59;
17183#line 2248
17184  cnow_rx49 = __cil_tmp60;
17185#line 2248
17186  cnow_frame48 = __cil_tmp61;
17187#line 2248
17188  cnow_parity47 = __cil_tmp62;
17189#line 2248
17190  cnow_overrun46 = __cil_tmp63;
17191#line 2248
17192  cnow_brk45 = __cil_tmp64;
17193#line 2248
17194  cnow_buf_overrun44 = __cil_tmp65;
17195#line 2250
17196  __asm__  volatile   ("": : : "memory");
17197#line 2251
17198  *((int *)icount) = (int )cnow_cts54;
17199#line 2252
17200  __cil_tmp11 = (unsigned long )icount;
17201#line 2252
17202  __cil_tmp12 = __cil_tmp11 + 4;
17203#line 2252
17204  *((int *)__cil_tmp12) = (int )cnow_dsr53;
17205#line 2253
17206  __cil_tmp13 = (unsigned long )icount;
17207#line 2253
17208  __cil_tmp14 = __cil_tmp13 + 8;
17209#line 2253
17210  *((int *)__cil_tmp14) = (int )cnow_rng52;
17211#line 2254
17212  __cil_tmp15 = (unsigned long )icount;
17213#line 2254
17214  __cil_tmp16 = __cil_tmp15 + 12;
17215#line 2254
17216  *((int *)__cil_tmp16) = (int )cnow_dcd51;
17217#line 2255
17218  __cil_tmp17 = (unsigned long )icount;
17219#line 2255
17220  __cil_tmp18 = __cil_tmp17 + 16;
17221#line 2255
17222  *((int *)__cil_tmp18) = (int )cnow_rx49;
17223#line 2256
17224  __cil_tmp19 = (unsigned long )icount;
17225#line 2256
17226  __cil_tmp20 = __cil_tmp19 + 20;
17227#line 2256
17228  *((int *)__cil_tmp20) = (int )cnow_tx50;
17229#line 2257
17230  __cil_tmp21 = (unsigned long )icount;
17231#line 2257
17232  __cil_tmp22 = __cil_tmp21 + 24;
17233#line 2257
17234  *((int *)__cil_tmp22) = (int )cnow_frame48;
17235#line 2258
17236  __cil_tmp23 = (unsigned long )icount;
17237#line 2258
17238  __cil_tmp24 = __cil_tmp23 + 28;
17239#line 2258
17240  *((int *)__cil_tmp24) = (int )cnow_overrun46;
17241#line 2259
17242  __cil_tmp25 = (unsigned long )icount;
17243#line 2259
17244  __cil_tmp26 = __cil_tmp25 + 32;
17245#line 2259
17246  *((int *)__cil_tmp26) = (int )cnow_parity47;
17247#line 2260
17248  __cil_tmp27 = (unsigned long )icount;
17249#line 2260
17250  __cil_tmp28 = __cil_tmp27 + 36;
17251#line 2260
17252  *((int *)__cil_tmp28) = (int )cnow_brk45;
17253#line 2261
17254  __cil_tmp29 = (unsigned long )icount;
17255#line 2261
17256  __cil_tmp30 = __cil_tmp29 + 40;
17257#line 2261
17258  *((int *)__cil_tmp30) = (int )cnow_buf_overrun44;
17259  }
17260  {
17261#line 2263
17262  __cil_tmp31 = & debug;
17263#line 2263
17264  __cil_tmp32 = *__cil_tmp31;
17265#line 2263
17266  if ((int )__cil_tmp32) {
17267    {
17268#line 2263
17269    __cil_tmp33 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
17270#line 2263
17271    __cil_tmp34 = (unsigned long )port;
17272#line 2263
17273    __cil_tmp35 = __cil_tmp34 + 816;
17274#line 2263
17275    __cil_tmp36 = *((unsigned char *)__cil_tmp35);
17276#line 2263
17277    __cil_tmp37 = (int )__cil_tmp36;
17278#line 2263
17279    __cil_tmp38 = (unsigned long )icount;
17280#line 2263
17281    __cil_tmp39 = __cil_tmp38 + 16;
17282#line 2263
17283    __cil_tmp40 = *((int *)__cil_tmp39);
17284#line 2263
17285    __cil_tmp41 = (unsigned long )icount;
17286#line 2263
17287    __cil_tmp42 = __cil_tmp41 + 20;
17288#line 2263
17289    __cil_tmp43 = *((int *)__cil_tmp42);
17290#line 2263
17291    printk("<7>%s: %s (%d) TIOCGICOUNT RX=%d, TX=%d\n", __cil_tmp33, "mos7840_get_icount",
17292           __cil_tmp37, __cil_tmp40, __cil_tmp43);
17293    }
17294  } else {
17295
17296  }
17297  }
17298#line 2265
17299  return (0);
17300}
17301}
17302#line 2273 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
17303static int mos7840_ioctl(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) 
17304{ struct usb_serial_port *port ;
17305  void *argp ;
17306  struct moschip_port *mos7840_port ;
17307  struct async_icount cnow ;
17308  struct async_icount cprev ;
17309  int tmp ;
17310  int tmp___0 ;
17311  int tmp___1 ;
17312  int __ret ;
17313  wait_queue_t __wait ;
17314  struct task_struct *tmp___2 ;
17315  struct task_struct *tmp___3 ;
17316  int tmp___4 ;
17317  struct task_struct *tmp___5 ;
17318  int tmp___6 ;
17319  unsigned long __cil_tmp19 ;
17320  unsigned long __cil_tmp20 ;
17321  void *__cil_tmp21 ;
17322  bool *__cil_tmp22 ;
17323  bool __cil_tmp23 ;
17324  char *__cil_tmp24 ;
17325  char *__cil_tmp25 ;
17326  struct moschip_port *__cil_tmp26 ;
17327  unsigned long __cil_tmp27 ;
17328  unsigned long __cil_tmp28 ;
17329  bool *__cil_tmp29 ;
17330  bool __cil_tmp30 ;
17331  char *__cil_tmp31 ;
17332  unsigned long __cil_tmp32 ;
17333  unsigned long __cil_tmp33 ;
17334  unsigned char __cil_tmp34 ;
17335  int __cil_tmp35 ;
17336  bool *__cil_tmp36 ;
17337  bool __cil_tmp37 ;
17338  char *__cil_tmp38 ;
17339  unsigned long __cil_tmp39 ;
17340  unsigned long __cil_tmp40 ;
17341  unsigned char __cil_tmp41 ;
17342  int __cil_tmp42 ;
17343  unsigned int *__cil_tmp43 ;
17344  bool *__cil_tmp44 ;
17345  bool __cil_tmp45 ;
17346  char *__cil_tmp46 ;
17347  unsigned long __cil_tmp47 ;
17348  unsigned long __cil_tmp48 ;
17349  unsigned char __cil_tmp49 ;
17350  int __cil_tmp50 ;
17351  struct serial_struct *__cil_tmp51 ;
17352  bool *__cil_tmp52 ;
17353  bool __cil_tmp53 ;
17354  char *__cil_tmp54 ;
17355  unsigned long __cil_tmp55 ;
17356  unsigned long __cil_tmp56 ;
17357  unsigned char __cil_tmp57 ;
17358  int __cil_tmp58 ;
17359  bool *__cil_tmp59 ;
17360  bool __cil_tmp60 ;
17361  char *__cil_tmp61 ;
17362  unsigned long __cil_tmp62 ;
17363  unsigned long __cil_tmp63 ;
17364  unsigned char __cil_tmp64 ;
17365  int __cil_tmp65 ;
17366  unsigned long __cil_tmp66 ;
17367  unsigned long __cil_tmp67 ;
17368  unsigned long __cil_tmp68 ;
17369  unsigned long __cil_tmp69 ;
17370  unsigned long __cil_tmp70 ;
17371  unsigned long __cil_tmp71 ;
17372  int __cil_tmp72 ;
17373  wait_queue_t *__cil_tmp73 ;
17374  unsigned long __cil_tmp74 ;
17375  unsigned long __cil_tmp75 ;
17376  unsigned long __cil_tmp76 ;
17377  unsigned long __cil_tmp77 ;
17378  unsigned long __cil_tmp78 ;
17379  unsigned long __cil_tmp79 ;
17380  unsigned long __cil_tmp80 ;
17381  unsigned long __cil_tmp81 ;
17382  unsigned long __cil_tmp82 ;
17383  wait_queue_head_t *__cil_tmp83 ;
17384  unsigned long __cil_tmp84 ;
17385  unsigned long __cil_tmp85 ;
17386  int __cil_tmp86 ;
17387  unsigned long __cil_tmp87 ;
17388  unsigned long __cil_tmp88 ;
17389  wait_queue_head_t *__cil_tmp89 ;
17390  unsigned long __cil_tmp90 ;
17391  unsigned long __cil_tmp91 ;
17392  unsigned long __cil_tmp92 ;
17393  unsigned long __cil_tmp93 ;
17394  unsigned long __cil_tmp94 ;
17395  unsigned long __cil_tmp95 ;
17396  __u32 cnow_buf_overrun96 ;
17397  __u32 cnow_brk97 ;
17398  __u32 cnow_overrun98 ;
17399  __u32 cnow_parity99 ;
17400  __u32 cnow_frame100 ;
17401  __u32 cnow_rx101 ;
17402  __u32 cnow_tx102 ;
17403  __u32 cnow_dcd103 ;
17404  __u32 cnow_rng104 ;
17405  __u32 cnow_dsr105 ;
17406  __u32 cnow_cts106 ;
17407  __u32 cprev_buf_overrun107 ;
17408  __u32 cprev_brk108 ;
17409  __u32 cprev_overrun109 ;
17410  __u32 cprev_parity110 ;
17411  __u32 cprev_frame111 ;
17412  __u32 cprev_rx112 ;
17413  __u32 cprev_tx113 ;
17414  __u32 cprev_dcd114 ;
17415  __u32 cprev_rng115 ;
17416  __u32 cprev_dsr116 ;
17417  __u32 cprev_cts117 ;
17418  __u32 __cil_tmp118 ;
17419  __u32 __cil_tmp119 ;
17420  __u32 __cil_tmp120 ;
17421  __u32 __cil_tmp121 ;
17422  __u32 __cil_tmp122 ;
17423  __u32 __cil_tmp123 ;
17424  __u32 __cil_tmp124 ;
17425  __u32 __cil_tmp125 ;
17426  __u32 __cil_tmp126 ;
17427  __u32 __cil_tmp127 ;
17428  __u32 __cil_tmp128 ;
17429  __u32 __cil_tmp129 ;
17430  __u32 __cil_tmp130 ;
17431  __u32 __cil_tmp131 ;
17432  __u32 __cil_tmp132 ;
17433  __u32 __cil_tmp133 ;
17434  __u32 __cil_tmp134 ;
17435  __u32 __cil_tmp135 ;
17436  __u32 __cil_tmp136 ;
17437  __u32 __cil_tmp137 ;
17438  __u32 __cil_tmp138 ;
17439  __u32 __cil_tmp139 ;
17440
17441  {
17442  {
17443#line 2276
17444  __cil_tmp19 = (unsigned long )tty;
17445#line 2276
17446  __cil_tmp20 = __cil_tmp19 + 1064;
17447#line 2276
17448  __cil_tmp21 = *((void **)__cil_tmp20);
17449#line 2276
17450  port = (struct usb_serial_port *)__cil_tmp21;
17451#line 2277
17452  argp = (void *)arg;
17453#line 2283
17454  tmp = mos7840_port_paranoia_check(port, "mos7840_ioctl");
17455  }
17456#line 2283
17457  if (tmp != 0) {
17458    {
17459#line 2284
17460    __cil_tmp22 = & debug;
17461#line 2284
17462    __cil_tmp23 = *__cil_tmp22;
17463#line 2284
17464    if ((int )__cil_tmp23) {
17465      {
17466#line 2284
17467      __cil_tmp24 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
17468#line 2284
17469      __cil_tmp25 = (char *)"Invalid port";
17470#line 2284
17471      printk("<7>%s: %s\n", __cil_tmp24, __cil_tmp25);
17472      }
17473    } else {
17474
17475    }
17476    }
17477#line 2285
17478    return (-1);
17479  } else {
17480
17481  }
17482  {
17483#line 2288
17484  mos7840_port = mos7840_get_port_private(port);
17485  }
17486  {
17487#line 2290
17488  __cil_tmp26 = (struct moschip_port *)0;
17489#line 2290
17490  __cil_tmp27 = (unsigned long )__cil_tmp26;
17491#line 2290
17492  __cil_tmp28 = (unsigned long )mos7840_port;
17493#line 2290
17494  if (__cil_tmp28 == __cil_tmp27) {
17495#line 2291
17496    return (-1);
17497  } else {
17498
17499  }
17500  }
17501  {
17502#line 2293
17503  __cil_tmp29 = & debug;
17504#line 2293
17505  __cil_tmp30 = *__cil_tmp29;
17506#line 2293
17507  if ((int )__cil_tmp30) {
17508    {
17509#line 2293
17510    __cil_tmp31 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
17511#line 2293
17512    __cil_tmp32 = (unsigned long )port;
17513#line 2293
17514    __cil_tmp33 = __cil_tmp32 + 816;
17515#line 2293
17516    __cil_tmp34 = *((unsigned char *)__cil_tmp33);
17517#line 2293
17518    __cil_tmp35 = (int )__cil_tmp34;
17519#line 2293
17520    printk("<7>%s: %s - port %d, cmd = 0x%x\n", __cil_tmp31, "mos7840_ioctl", __cil_tmp35,
17521           cmd);
17522    }
17523  } else {
17524
17525  }
17526  }
17527#line 2298
17528  if ((int )cmd == 21593) {
17529#line 2298
17530    goto case_21593;
17531  } else
17532#line 2302
17533  if ((int )cmd == 21534) {
17534#line 2302
17535    goto case_21534;
17536  } else
17537#line 2306
17538  if ((int )cmd == 21535) {
17539#line 2306
17540    goto case_21535;
17541  } else
17542#line 2310
17543  if ((int )cmd == 21596) {
17544#line 2310
17545    goto case_21596;
17546  } else {
17547    {
17548#line 2339
17549    goto switch_default;
17550#line 2295
17551    if (0) {
17552      case_21593: /* CIL Label */ ;
17553      {
17554#line 2299
17555      __cil_tmp36 = & debug;
17556#line 2299
17557      __cil_tmp37 = *__cil_tmp36;
17558#line 2299
17559      if ((int )__cil_tmp37) {
17560        {
17561#line 2299
17562        __cil_tmp38 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
17563#line 2299
17564        __cil_tmp39 = (unsigned long )port;
17565#line 2299
17566        __cil_tmp40 = __cil_tmp39 + 816;
17567#line 2299
17568        __cil_tmp41 = *((unsigned char *)__cil_tmp40);
17569#line 2299
17570        __cil_tmp42 = (int )__cil_tmp41;
17571#line 2299
17572        printk("<7>%s: %s (%d) TIOCSERGETLSR\n", __cil_tmp38, "mos7840_ioctl", __cil_tmp42);
17573        }
17574      } else {
17575
17576      }
17577      }
17578      {
17579#line 2300
17580      __cil_tmp43 = (unsigned int *)argp;
17581#line 2300
17582      tmp___0 = mos7840_get_lsr_info(tty, __cil_tmp43);
17583      }
17584#line 2300
17585      return (tmp___0);
17586      case_21534: /* CIL Label */ ;
17587      {
17588#line 2303
17589      __cil_tmp44 = & debug;
17590#line 2303
17591      __cil_tmp45 = *__cil_tmp44;
17592#line 2303
17593      if ((int )__cil_tmp45) {
17594        {
17595#line 2303
17596        __cil_tmp46 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
17597#line 2303
17598        __cil_tmp47 = (unsigned long )port;
17599#line 2303
17600        __cil_tmp48 = __cil_tmp47 + 816;
17601#line 2303
17602        __cil_tmp49 = *((unsigned char *)__cil_tmp48);
17603#line 2303
17604        __cil_tmp50 = (int )__cil_tmp49;
17605#line 2303
17606        printk("<7>%s: %s (%d) TIOCGSERIAL\n", __cil_tmp46, "mos7840_ioctl", __cil_tmp50);
17607        }
17608      } else {
17609
17610      }
17611      }
17612      {
17613#line 2304
17614      __cil_tmp51 = (struct serial_struct *)argp;
17615#line 2304
17616      tmp___1 = mos7840_get_serial_info(mos7840_port, __cil_tmp51);
17617      }
17618#line 2304
17619      return (tmp___1);
17620      case_21535: /* CIL Label */ ;
17621      {
17622#line 2307
17623      __cil_tmp52 = & debug;
17624#line 2307
17625      __cil_tmp53 = *__cil_tmp52;
17626#line 2307
17627      if ((int )__cil_tmp53) {
17628        {
17629#line 2307
17630        __cil_tmp54 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
17631#line 2307
17632        __cil_tmp55 = (unsigned long )port;
17633#line 2307
17634        __cil_tmp56 = __cil_tmp55 + 816;
17635#line 2307
17636        __cil_tmp57 = *((unsigned char *)__cil_tmp56);
17637#line 2307
17638        __cil_tmp58 = (int )__cil_tmp57;
17639#line 2307
17640        printk("<7>%s: %s (%d) TIOCSSERIAL\n", __cil_tmp54, "mos7840_ioctl", __cil_tmp58);
17641        }
17642      } else {
17643
17644      }
17645      }
17646#line 2308
17647      goto ldv_28253;
17648      case_21596: /* CIL Label */ ;
17649      {
17650#line 2311
17651      __cil_tmp59 = & debug;
17652#line 2311
17653      __cil_tmp60 = *__cil_tmp59;
17654#line 2311
17655      if ((int )__cil_tmp60) {
17656        {
17657#line 2311
17658        __cil_tmp61 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
17659#line 2311
17660        __cil_tmp62 = (unsigned long )port;
17661#line 2311
17662        __cil_tmp63 = __cil_tmp62 + 816;
17663#line 2311
17664        __cil_tmp64 = *((unsigned char *)__cil_tmp63);
17665#line 2311
17666        __cil_tmp65 = (int )__cil_tmp64;
17667#line 2311
17668        printk("<7>%s: %s (%d) TIOCMIWAIT\n", __cil_tmp61, "mos7840_ioctl", __cil_tmp65);
17669        }
17670      } else {
17671
17672      }
17673      }
17674#line 2312
17675      __cil_tmp66 = (unsigned long )mos7840_port;
17676#line 2312
17677      __cil_tmp67 = __cil_tmp66 + 220;
17678#line 2312
17679      __cil_tmp118 = ((struct async_icount *)__cil_tmp67)->cts;
17680#line 2312
17681      __cil_tmp119 = ((struct async_icount *)__cil_tmp67)->dsr;
17682#line 2312
17683      __cil_tmp120 = ((struct async_icount *)__cil_tmp67)->rng;
17684#line 2312
17685      __cil_tmp121 = ((struct async_icount *)__cil_tmp67)->dcd;
17686#line 2312
17687      __cil_tmp122 = ((struct async_icount *)__cil_tmp67)->tx;
17688#line 2312
17689      __cil_tmp123 = ((struct async_icount *)__cil_tmp67)->rx;
17690#line 2312
17691      __cil_tmp124 = ((struct async_icount *)__cil_tmp67)->frame;
17692#line 2312
17693      __cil_tmp125 = ((struct async_icount *)__cil_tmp67)->parity;
17694#line 2312
17695      __cil_tmp126 = ((struct async_icount *)__cil_tmp67)->overrun;
17696#line 2312
17697      __cil_tmp127 = ((struct async_icount *)__cil_tmp67)->brk;
17698#line 2312
17699      __cil_tmp128 = ((struct async_icount *)__cil_tmp67)->buf_overrun;
17700#line 2312
17701      cprev_cts117 = __cil_tmp118;
17702#line 2312
17703      cprev_dsr116 = __cil_tmp119;
17704#line 2312
17705      cprev_rng115 = __cil_tmp120;
17706#line 2312
17707      cprev_dcd114 = __cil_tmp121;
17708#line 2312
17709      cprev_tx113 = __cil_tmp122;
17710#line 2312
17711      cprev_rx112 = __cil_tmp123;
17712#line 2312
17713      cprev_frame111 = __cil_tmp124;
17714#line 2312
17715      cprev_parity110 = __cil_tmp125;
17716#line 2312
17717      cprev_overrun109 = __cil_tmp126;
17718#line 2312
17719      cprev_brk108 = __cil_tmp127;
17720#line 2312
17721      cprev_buf_overrun107 = __cil_tmp128;
17722      ldv_28261: 
17723#line 2315
17724      __cil_tmp68 = (unsigned long )mos7840_port;
17725#line 2315
17726      __cil_tmp69 = __cil_tmp68 + 216;
17727#line 2315
17728      *((int *)__cil_tmp69) = 0;
17729#line 2316
17730      __ret = 0;
17731      {
17732#line 2316
17733      __cil_tmp70 = (unsigned long )mos7840_port;
17734#line 2316
17735      __cil_tmp71 = __cil_tmp70 + 216;
17736#line 2316
17737      __cil_tmp72 = *((int *)__cil_tmp71);
17738#line 2316
17739      if (__cil_tmp72 != 1) {
17740        {
17741#line 2316
17742        tmp___2 = get_current();
17743#line 2316
17744        __cil_tmp73 = & __wait;
17745#line 2316
17746        *((unsigned int *)__cil_tmp73) = 0U;
17747#line 2316
17748        __cil_tmp74 = (unsigned long )(& __wait) + 8;
17749#line 2316
17750        *((void **)__cil_tmp74) = (void *)tmp___2;
17751#line 2316
17752        __cil_tmp75 = (unsigned long )(& __wait) + 16;
17753#line 2316
17754        *((int (**)(wait_queue_t * , unsigned int  , int  , void * ))__cil_tmp75) = & autoremove_wake_function;
17755#line 2316
17756        __cil_tmp76 = (unsigned long )(& __wait) + 24;
17757#line 2316
17758        __cil_tmp77 = (unsigned long )(& __wait) + 24;
17759#line 2316
17760        *((struct list_head **)__cil_tmp76) = (struct list_head *)__cil_tmp77;
17761#line 2316
17762        __cil_tmp78 = 24 + 8;
17763#line 2316
17764        __cil_tmp79 = (unsigned long )(& __wait) + __cil_tmp78;
17765#line 2316
17766        __cil_tmp80 = (unsigned long )(& __wait) + 24;
17767#line 2316
17768        *((struct list_head **)__cil_tmp79) = (struct list_head *)__cil_tmp80;
17769        }
17770        ldv_28259: 
17771        {
17772#line 2316
17773        __cil_tmp81 = (unsigned long )mos7840_port;
17774#line 2316
17775        __cil_tmp82 = __cil_tmp81 + 128;
17776#line 2316
17777        __cil_tmp83 = (wait_queue_head_t *)__cil_tmp82;
17778#line 2316
17779        prepare_to_wait(__cil_tmp83, & __wait, 1);
17780        }
17781        {
17782#line 2316
17783        __cil_tmp84 = (unsigned long )mos7840_port;
17784#line 2316
17785        __cil_tmp85 = __cil_tmp84 + 216;
17786#line 2316
17787        __cil_tmp86 = *((int *)__cil_tmp85);
17788#line 2316
17789        if (__cil_tmp86 == 1) {
17790#line 2316
17791          goto ldv_28257;
17792        } else {
17793
17794        }
17795        }
17796        {
17797#line 2316
17798        tmp___3 = get_current();
17799#line 2316
17800        tmp___4 = signal_pending(tmp___3);
17801        }
17802#line 2316
17803        if (tmp___4 == 0) {
17804          {
17805#line 2316
17806          schedule();
17807          }
17808#line 2316
17809          goto ldv_28258;
17810        } else {
17811
17812        }
17813#line 2316
17814        __ret = -512;
17815#line 2316
17816        goto ldv_28257;
17817        ldv_28258: ;
17818#line 2316
17819        goto ldv_28259;
17820        ldv_28257: 
17821        {
17822#line 2316
17823        __cil_tmp87 = (unsigned long )mos7840_port;
17824#line 2316
17825        __cil_tmp88 = __cil_tmp87 + 128;
17826#line 2316
17827        __cil_tmp89 = (wait_queue_head_t *)__cil_tmp88;
17828#line 2316
17829        finish_wait(__cil_tmp89, & __wait);
17830        }
17831      } else {
17832
17833      }
17834      }
17835      {
17836#line 2321
17837      tmp___5 = get_current();
17838#line 2321
17839      tmp___6 = signal_pending(tmp___5);
17840      }
17841#line 2321
17842      if (tmp___6 != 0) {
17843#line 2322
17844        return (-512);
17845      } else {
17846
17847      }
17848#line 2323
17849      __cil_tmp90 = (unsigned long )mos7840_port;
17850#line 2323
17851      __cil_tmp91 = __cil_tmp90 + 220;
17852#line 2323
17853      __cil_tmp129 = ((struct async_icount *)__cil_tmp91)->cts;
17854#line 2323
17855      __cil_tmp130 = ((struct async_icount *)__cil_tmp91)->dsr;
17856#line 2323
17857      __cil_tmp131 = ((struct async_icount *)__cil_tmp91)->rng;
17858#line 2323
17859      __cil_tmp132 = ((struct async_icount *)__cil_tmp91)->dcd;
17860#line 2323
17861      __cil_tmp133 = ((struct async_icount *)__cil_tmp91)->tx;
17862#line 2323
17863      __cil_tmp134 = ((struct async_icount *)__cil_tmp91)->rx;
17864#line 2323
17865      __cil_tmp135 = ((struct async_icount *)__cil_tmp91)->frame;
17866#line 2323
17867      __cil_tmp136 = ((struct async_icount *)__cil_tmp91)->parity;
17868#line 2323
17869      __cil_tmp137 = ((struct async_icount *)__cil_tmp91)->overrun;
17870#line 2323
17871      __cil_tmp138 = ((struct async_icount *)__cil_tmp91)->brk;
17872#line 2323
17873      __cil_tmp139 = ((struct async_icount *)__cil_tmp91)->buf_overrun;
17874#line 2323
17875      cnow_cts106 = __cil_tmp129;
17876#line 2323
17877      cnow_dsr105 = __cil_tmp130;
17878#line 2323
17879      cnow_rng104 = __cil_tmp131;
17880#line 2323
17881      cnow_dcd103 = __cil_tmp132;
17882#line 2323
17883      cnow_tx102 = __cil_tmp133;
17884#line 2323
17885      cnow_rx101 = __cil_tmp134;
17886#line 2323
17887      cnow_frame100 = __cil_tmp135;
17888#line 2323
17889      cnow_parity99 = __cil_tmp136;
17890#line 2323
17891      cnow_overrun98 = __cil_tmp137;
17892#line 2323
17893      cnow_brk97 = __cil_tmp138;
17894#line 2323
17895      cnow_buf_overrun96 = __cil_tmp139;
17896#line 2324
17897      __asm__  volatile   ("": : : "memory");
17898#line 2325
17899      if (cnow_rng104 == cprev_rng115) {
17900#line 2325
17901        if (cnow_dsr105 == cprev_dsr116) {
17902#line 2325
17903          if (cnow_dcd103 == cprev_dcd114) {
17904#line 2325
17905            if (cnow_cts106 == cprev_cts117) {
17906#line 2327
17907              return (-5);
17908            } else {
17909
17910            }
17911          } else {
17912
17913          }
17914        } else {
17915
17916        }
17917      } else {
17918
17919      }
17920      {
17921#line 2328
17922      __cil_tmp92 = arg & 128UL;
17923#line 2328
17924      if (__cil_tmp92 != 0UL) {
17925#line 2328
17926        if (cnow_rng104 != cprev_rng115) {
17927#line 2332
17928          return (0);
17929        } else {
17930#line 2328
17931          goto _L___1;
17932        }
17933      } else {
17934        _L___1: /* CIL Label */ 
17935        {
17936#line 2328
17937        __cil_tmp93 = arg & 256UL;
17938#line 2328
17939        if (__cil_tmp93 != 0UL) {
17940#line 2328
17941          if (cnow_dsr105 != cprev_dsr116) {
17942#line 2332
17943            return (0);
17944          } else {
17945#line 2328
17946            goto _L___0;
17947          }
17948        } else {
17949          _L___0: /* CIL Label */ 
17950          {
17951#line 2328
17952          __cil_tmp94 = arg & 64UL;
17953#line 2328
17954          if (__cil_tmp94 != 0UL) {
17955#line 2328
17956            if (cnow_dcd103 != cprev_dcd114) {
17957#line 2332
17958              return (0);
17959            } else {
17960#line 2328
17961              goto _L;
17962            }
17963          } else {
17964            _L: /* CIL Label */ 
17965            {
17966#line 2328
17967            __cil_tmp95 = arg & 32UL;
17968#line 2328
17969            if (__cil_tmp95 != 0UL) {
17970#line 2328
17971              if (cnow_cts106 != cprev_cts117) {
17972#line 2332
17973                return (0);
17974              } else {
17975
17976              }
17977            } else {
17978
17979            }
17980            }
17981          }
17982          }
17983        }
17984        }
17985      }
17986      }
17987#line 2334
17988      cprev_cts117 = cnow_cts106;
17989#line 2334
17990      cprev_dsr116 = cnow_dsr105;
17991#line 2334
17992      cprev_rng115 = cnow_rng104;
17993#line 2334
17994      cprev_dcd114 = cnow_dcd103;
17995#line 2334
17996      cprev_tx113 = cnow_tx102;
17997#line 2334
17998      cprev_rx112 = cnow_rx101;
17999#line 2334
18000      cprev_frame111 = cnow_frame100;
18001#line 2334
18002      cprev_parity110 = cnow_parity99;
18003#line 2334
18004      cprev_overrun109 = cnow_overrun98;
18005#line 2334
18006      cprev_brk108 = cnow_brk97;
18007#line 2334
18008      cprev_buf_overrun107 = cnow_buf_overrun96;
18009#line 2335
18010      goto ldv_28261;
18011      switch_default: /* CIL Label */ ;
18012#line 2340
18013      goto ldv_28253;
18014    } else {
18015      switch_break: /* CIL Label */ ;
18016    }
18017    }
18018  }
18019  ldv_28253: ;
18020#line 2342
18021  return (-515);
18022}
18023}
18024#line 2345 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
18025static int mos7840_calc_num_ports(struct usb_serial *serial ) 
18026{ __u16 Data ;
18027  int ret ;
18028  int mos7840_num_ports ;
18029  unsigned int tmp ;
18030  __u16 *__cil_tmp6 ;
18031  struct usb_device *__cil_tmp7 ;
18032  struct usb_device *__cil_tmp8 ;
18033  unsigned int __cil_tmp9 ;
18034  __u8 __cil_tmp10 ;
18035  __u8 __cil_tmp11 ;
18036  __u16 __cil_tmp12 ;
18037  __u16 __cil_tmp13 ;
18038  void *__cil_tmp14 ;
18039  __u16 __cil_tmp15 ;
18040  __u16 *__cil_tmp16 ;
18041  __u16 __cil_tmp17 ;
18042  int __cil_tmp18 ;
18043  int __cil_tmp19 ;
18044  unsigned long __cil_tmp20 ;
18045  unsigned long __cil_tmp21 ;
18046  unsigned long __cil_tmp22 ;
18047  unsigned long __cil_tmp23 ;
18048  unsigned long __cil_tmp24 ;
18049  unsigned long __cil_tmp25 ;
18050  unsigned long __cil_tmp26 ;
18051  unsigned long __cil_tmp27 ;
18052  unsigned long __cil_tmp28 ;
18053  unsigned long __cil_tmp29 ;
18054  unsigned long __cil_tmp30 ;
18055  unsigned long __cil_tmp31 ;
18056
18057  {
18058  {
18059#line 2347
18060  __cil_tmp6 = & Data;
18061#line 2347
18062  *__cil_tmp6 = (__u16 )0U;
18063#line 2348
18064  ret = 0;
18065#line 2351
18066  __cil_tmp7 = *((struct usb_device **)serial);
18067#line 2351
18068  tmp = __create_pipe(__cil_tmp7, 0U);
18069#line 2351
18070  __cil_tmp8 = *((struct usb_device **)serial);
18071#line 2351
18072  __cil_tmp9 = tmp | 2147483776U;
18073#line 2351
18074  __cil_tmp10 = (__u8 )13;
18075#line 2351
18076  __cil_tmp11 = (__u8 )192;
18077#line 2351
18078  __cil_tmp12 = (__u16 )0;
18079#line 2351
18080  __cil_tmp13 = (__u16 )7;
18081#line 2351
18082  __cil_tmp14 = (void *)(& Data);
18083#line 2351
18084  __cil_tmp15 = (__u16 )1;
18085#line 2351
18086  ret = usb_control_msg(__cil_tmp8, __cil_tmp9, __cil_tmp10, __cil_tmp11, __cil_tmp12,
18087                        __cil_tmp13, __cil_tmp14, __cil_tmp15, 1250);
18088  }
18089  {
18090#line 2355
18091  __cil_tmp16 = & Data;
18092#line 2355
18093  __cil_tmp17 = *__cil_tmp16;
18094#line 2355
18095  __cil_tmp18 = (int )__cil_tmp17;
18096#line 2355
18097  __cil_tmp19 = __cil_tmp18 & 1;
18098#line 2355
18099  if (__cil_tmp19 == 0) {
18100#line 2356
18101    mos7840_num_ports = 2;
18102#line 2357
18103    __cil_tmp20 = (unsigned long )serial;
18104#line 2357
18105    __cil_tmp21 = __cil_tmp20 + 30;
18106#line 2357
18107    *((char *)__cil_tmp21) = (char)2;
18108#line 2358
18109    __cil_tmp22 = (unsigned long )serial;
18110#line 2358
18111    __cil_tmp23 = __cil_tmp22 + 31;
18112#line 2358
18113    *((char *)__cil_tmp23) = (char)2;
18114#line 2359
18115    __cil_tmp24 = (unsigned long )serial;
18116#line 2359
18117    __cil_tmp25 = __cil_tmp24 + 26;
18118#line 2359
18119    *((unsigned char *)__cil_tmp25) = (unsigned char)2;
18120  } else {
18121#line 2361
18122    mos7840_num_ports = 4;
18123#line 2362
18124    __cil_tmp26 = (unsigned long )serial;
18125#line 2362
18126    __cil_tmp27 = __cil_tmp26 + 30;
18127#line 2362
18128    *((char *)__cil_tmp27) = (char)4;
18129#line 2363
18130    __cil_tmp28 = (unsigned long )serial;
18131#line 2363
18132    __cil_tmp29 = __cil_tmp28 + 31;
18133#line 2363
18134    *((char *)__cil_tmp29) = (char)4;
18135#line 2364
18136    __cil_tmp30 = (unsigned long )serial;
18137#line 2364
18138    __cil_tmp31 = __cil_tmp30 + 26;
18139#line 2364
18140    *((unsigned char *)__cil_tmp31) = (unsigned char)4;
18141  }
18142  }
18143#line 2367
18144  return (mos7840_num_ports);
18145}
18146}
18147#line 2374 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
18148static int mos7840_startup(struct usb_serial *serial ) 
18149{ struct moschip_port *mos7840_port ;
18150  struct usb_device *dev ;
18151  int i ;
18152  int status ;
18153  __u16 Data ;
18154  void *tmp ;
18155  struct lock_class_key __key ;
18156  void *tmp___0 ;
18157  void *tmp___1 ;
18158  unsigned int tmp___2 ;
18159  bool *__cil_tmp12 ;
18160  bool __cil_tmp13 ;
18161  char *__cil_tmp14 ;
18162  char *__cil_tmp15 ;
18163  struct usb_serial *__cil_tmp16 ;
18164  unsigned long __cil_tmp17 ;
18165  unsigned long __cil_tmp18 ;
18166  bool *__cil_tmp19 ;
18167  bool __cil_tmp20 ;
18168  char *__cil_tmp21 ;
18169  char *__cil_tmp22 ;
18170  bool *__cil_tmp23 ;
18171  bool __cil_tmp24 ;
18172  char *__cil_tmp25 ;
18173  char *__cil_tmp26 ;
18174  bool *__cil_tmp27 ;
18175  bool __cil_tmp28 ;
18176  char *__cil_tmp29 ;
18177  bool *__cil_tmp30 ;
18178  bool __cil_tmp31 ;
18179  char *__cil_tmp32 ;
18180  struct moschip_port *__cil_tmp33 ;
18181  unsigned long __cil_tmp34 ;
18182  unsigned long __cil_tmp35 ;
18183  unsigned long __cil_tmp36 ;
18184  unsigned long __cil_tmp37 ;
18185  struct device *__cil_tmp38 ;
18186  struct device  const  *__cil_tmp39 ;
18187  unsigned long __cil_tmp40 ;
18188  unsigned long __cil_tmp41 ;
18189  unsigned long __cil_tmp42 ;
18190  unsigned long __cil_tmp43 ;
18191  unsigned long __cil_tmp44 ;
18192  unsigned long __cil_tmp45 ;
18193  unsigned long __cil_tmp46 ;
18194  unsigned long __cil_tmp47 ;
18195  unsigned long __cil_tmp48 ;
18196  unsigned long __cil_tmp49 ;
18197  struct usb_serial_port *__cil_tmp50 ;
18198  unsigned long __cil_tmp51 ;
18199  unsigned long __cil_tmp52 ;
18200  spinlock_t *__cil_tmp53 ;
18201  unsigned long __cil_tmp54 ;
18202  unsigned long __cil_tmp55 ;
18203  struct raw_spinlock *__cil_tmp56 ;
18204  bool *__cil_tmp57 ;
18205  bool __cil_tmp58 ;
18206  char *__cil_tmp59 ;
18207  unsigned long __cil_tmp60 ;
18208  unsigned long __cil_tmp61 ;
18209  unsigned long __cil_tmp62 ;
18210  unsigned long __cil_tmp63 ;
18211  struct usb_serial_port *__cil_tmp64 ;
18212  unsigned long __cil_tmp65 ;
18213  unsigned long __cil_tmp66 ;
18214  unsigned char __cil_tmp67 ;
18215  int __cil_tmp68 ;
18216  bool *__cil_tmp69 ;
18217  bool __cil_tmp70 ;
18218  char *__cil_tmp71 ;
18219  unsigned long __cil_tmp72 ;
18220  unsigned long __cil_tmp73 ;
18221  unsigned long __cil_tmp74 ;
18222  unsigned long __cil_tmp75 ;
18223  struct usb_serial_port *__cil_tmp76 ;
18224  struct usb_serial *__cil_tmp77 ;
18225  unsigned long __cil_tmp78 ;
18226  unsigned long __cil_tmp79 ;
18227  unsigned char __cil_tmp80 ;
18228  int __cil_tmp81 ;
18229  bool *__cil_tmp82 ;
18230  bool __cil_tmp83 ;
18231  char *__cil_tmp84 ;
18232  int __cil_tmp85 ;
18233  bool *__cil_tmp86 ;
18234  bool __cil_tmp87 ;
18235  char *__cil_tmp88 ;
18236  unsigned long __cil_tmp89 ;
18237  unsigned long __cil_tmp90 ;
18238  unsigned char __cil_tmp91 ;
18239  int __cil_tmp92 ;
18240  int __cil_tmp93 ;
18241  unsigned long __cil_tmp94 ;
18242  unsigned long __cil_tmp95 ;
18243  unsigned long __cil_tmp96 ;
18244  unsigned long __cil_tmp97 ;
18245  unsigned long __cil_tmp98 ;
18246  unsigned long __cil_tmp99 ;
18247  int __cil_tmp100 ;
18248  unsigned long __cil_tmp101 ;
18249  unsigned long __cil_tmp102 ;
18250  unsigned char __cil_tmp103 ;
18251  unsigned int __cil_tmp104 ;
18252  unsigned long __cil_tmp105 ;
18253  unsigned long __cil_tmp106 ;
18254  unsigned long __cil_tmp107 ;
18255  unsigned long __cil_tmp108 ;
18256  unsigned long __cil_tmp109 ;
18257  unsigned long __cil_tmp110 ;
18258  int __cil_tmp111 ;
18259  unsigned long __cil_tmp112 ;
18260  unsigned long __cil_tmp113 ;
18261  unsigned char __cil_tmp114 ;
18262  unsigned int __cil_tmp115 ;
18263  unsigned long __cil_tmp116 ;
18264  unsigned long __cil_tmp117 ;
18265  unsigned long __cil_tmp118 ;
18266  unsigned long __cil_tmp119 ;
18267  unsigned long __cil_tmp120 ;
18268  unsigned long __cil_tmp121 ;
18269  int __cil_tmp122 ;
18270  unsigned long __cil_tmp123 ;
18271  unsigned long __cil_tmp124 ;
18272  unsigned char __cil_tmp125 ;
18273  unsigned int __cil_tmp126 ;
18274  unsigned long __cil_tmp127 ;
18275  unsigned long __cil_tmp128 ;
18276  unsigned long __cil_tmp129 ;
18277  unsigned long __cil_tmp130 ;
18278  unsigned long __cil_tmp131 ;
18279  unsigned long __cil_tmp132 ;
18280  int __cil_tmp133 ;
18281  unsigned long __cil_tmp134 ;
18282  unsigned long __cil_tmp135 ;
18283  unsigned char __cil_tmp136 ;
18284  unsigned int __cil_tmp137 ;
18285  unsigned long __cil_tmp138 ;
18286  unsigned long __cil_tmp139 ;
18287  unsigned long __cil_tmp140 ;
18288  unsigned long __cil_tmp141 ;
18289  unsigned long __cil_tmp142 ;
18290  unsigned long __cil_tmp143 ;
18291  unsigned long __cil_tmp144 ;
18292  unsigned long __cil_tmp145 ;
18293  unsigned long __cil_tmp146 ;
18294  unsigned long __cil_tmp147 ;
18295  struct usb_serial_port *__cil_tmp148 ;
18296  unsigned long __cil_tmp149 ;
18297  unsigned long __cil_tmp150 ;
18298  unsigned long __cil_tmp151 ;
18299  unsigned long __cil_tmp152 ;
18300  struct usb_serial_port *__cil_tmp153 ;
18301  unsigned long __cil_tmp154 ;
18302  unsigned long __cil_tmp155 ;
18303  __u8 __cil_tmp156 ;
18304  int __cil_tmp157 ;
18305  __u16 __cil_tmp158 ;
18306  bool *__cil_tmp159 ;
18307  bool __cil_tmp160 ;
18308  char *__cil_tmp161 ;
18309  bool *__cil_tmp162 ;
18310  bool __cil_tmp163 ;
18311  char *__cil_tmp164 ;
18312  __u16 *__cil_tmp165 ;
18313  __u16 __cil_tmp166 ;
18314  int __cil_tmp167 ;
18315  __u16 *__cil_tmp168 ;
18316  __u16 *__cil_tmp169 ;
18317  __u16 __cil_tmp170 ;
18318  unsigned int __cil_tmp171 ;
18319  unsigned int __cil_tmp172 ;
18320  __u16 *__cil_tmp173 ;
18321  __u16 *__cil_tmp174 ;
18322  __u16 __cil_tmp175 ;
18323  unsigned int __cil_tmp176 ;
18324  unsigned int __cil_tmp177 ;
18325  unsigned long __cil_tmp178 ;
18326  unsigned long __cil_tmp179 ;
18327  unsigned long __cil_tmp180 ;
18328  unsigned long __cil_tmp181 ;
18329  struct usb_serial_port *__cil_tmp182 ;
18330  unsigned long __cil_tmp183 ;
18331  unsigned long __cil_tmp184 ;
18332  __u8 __cil_tmp185 ;
18333  int __cil_tmp186 ;
18334  __u16 __cil_tmp187 ;
18335  __u16 *__cil_tmp188 ;
18336  __u16 __cil_tmp189 ;
18337  int __cil_tmp190 ;
18338  __u16 __cil_tmp191 ;
18339  bool *__cil_tmp192 ;
18340  bool __cil_tmp193 ;
18341  char *__cil_tmp194 ;
18342  bool *__cil_tmp195 ;
18343  bool __cil_tmp196 ;
18344  char *__cil_tmp197 ;
18345  __u16 *__cil_tmp198 ;
18346  unsigned long __cil_tmp199 ;
18347  unsigned long __cil_tmp200 ;
18348  unsigned long __cil_tmp201 ;
18349  unsigned long __cil_tmp202 ;
18350  struct usb_serial_port *__cil_tmp203 ;
18351  unsigned long __cil_tmp204 ;
18352  unsigned long __cil_tmp205 ;
18353  __u8 __cil_tmp206 ;
18354  int __cil_tmp207 ;
18355  __u16 __cil_tmp208 ;
18356  __u16 *__cil_tmp209 ;
18357  __u16 __cil_tmp210 ;
18358  int __cil_tmp211 ;
18359  __u16 __cil_tmp212 ;
18360  bool *__cil_tmp213 ;
18361  bool __cil_tmp214 ;
18362  char *__cil_tmp215 ;
18363  bool *__cil_tmp216 ;
18364  bool __cil_tmp217 ;
18365  char *__cil_tmp218 ;
18366  __u16 *__cil_tmp219 ;
18367  unsigned long __cil_tmp220 ;
18368  unsigned long __cil_tmp221 ;
18369  unsigned long __cil_tmp222 ;
18370  unsigned long __cil_tmp223 ;
18371  struct usb_serial_port *__cil_tmp224 ;
18372  unsigned long __cil_tmp225 ;
18373  unsigned long __cil_tmp226 ;
18374  __u8 __cil_tmp227 ;
18375  unsigned short __cil_tmp228 ;
18376  unsigned int __cil_tmp229 ;
18377  unsigned int __cil_tmp230 ;
18378  int __cil_tmp231 ;
18379  __u16 __cil_tmp232 ;
18380  __u16 *__cil_tmp233 ;
18381  __u16 __cil_tmp234 ;
18382  int __cil_tmp235 ;
18383  __u16 __cil_tmp236 ;
18384  bool *__cil_tmp237 ;
18385  bool __cil_tmp238 ;
18386  char *__cil_tmp239 ;
18387  bool *__cil_tmp240 ;
18388  bool __cil_tmp241 ;
18389  char *__cil_tmp242 ;
18390  __u16 *__cil_tmp243 ;
18391  unsigned long __cil_tmp244 ;
18392  unsigned long __cil_tmp245 ;
18393  unsigned long __cil_tmp246 ;
18394  unsigned long __cil_tmp247 ;
18395  struct usb_serial_port *__cil_tmp248 ;
18396  unsigned long __cil_tmp249 ;
18397  unsigned long __cil_tmp250 ;
18398  __u8 __cil_tmp251 ;
18399  unsigned short __cil_tmp252 ;
18400  unsigned int __cil_tmp253 ;
18401  unsigned int __cil_tmp254 ;
18402  int __cil_tmp255 ;
18403  __u16 __cil_tmp256 ;
18404  __u16 *__cil_tmp257 ;
18405  __u16 __cil_tmp258 ;
18406  int __cil_tmp259 ;
18407  __u16 __cil_tmp260 ;
18408  bool *__cil_tmp261 ;
18409  bool __cil_tmp262 ;
18410  char *__cil_tmp263 ;
18411  bool *__cil_tmp264 ;
18412  bool __cil_tmp265 ;
18413  char *__cil_tmp266 ;
18414  __u16 *__cil_tmp267 ;
18415  unsigned long __cil_tmp268 ;
18416  unsigned long __cil_tmp269 ;
18417  unsigned long __cil_tmp270 ;
18418  unsigned long __cil_tmp271 ;
18419  struct usb_serial_port *__cil_tmp272 ;
18420  __u16 __cil_tmp273 ;
18421  __u16 *__cil_tmp274 ;
18422  __u16 __cil_tmp275 ;
18423  int __cil_tmp276 ;
18424  __u16 __cil_tmp277 ;
18425  bool *__cil_tmp278 ;
18426  bool __cil_tmp279 ;
18427  char *__cil_tmp280 ;
18428  bool *__cil_tmp281 ;
18429  bool __cil_tmp282 ;
18430  char *__cil_tmp283 ;
18431  __u16 *__cil_tmp284 ;
18432  unsigned long __cil_tmp285 ;
18433  unsigned long __cil_tmp286 ;
18434  unsigned long __cil_tmp287 ;
18435  unsigned long __cil_tmp288 ;
18436  struct usb_serial_port *__cil_tmp289 ;
18437  __u16 __cil_tmp290 ;
18438  __u16 *__cil_tmp291 ;
18439  __u16 __cil_tmp292 ;
18440  int __cil_tmp293 ;
18441  __u16 __cil_tmp294 ;
18442  bool *__cil_tmp295 ;
18443  bool __cil_tmp296 ;
18444  char *__cil_tmp297 ;
18445  bool *__cil_tmp298 ;
18446  bool __cil_tmp299 ;
18447  char *__cil_tmp300 ;
18448  __u16 *__cil_tmp301 ;
18449  unsigned long __cil_tmp302 ;
18450  unsigned long __cil_tmp303 ;
18451  unsigned long __cil_tmp304 ;
18452  unsigned long __cil_tmp305 ;
18453  struct usb_serial_port *__cil_tmp306 ;
18454  __u16 __cil_tmp307 ;
18455  __u16 *__cil_tmp308 ;
18456  __u16 __cil_tmp309 ;
18457  int __cil_tmp310 ;
18458  __u16 __cil_tmp311 ;
18459  bool *__cil_tmp312 ;
18460  bool __cil_tmp313 ;
18461  char *__cil_tmp314 ;
18462  bool *__cil_tmp315 ;
18463  bool __cil_tmp316 ;
18464  char *__cil_tmp317 ;
18465  int __cil_tmp318 ;
18466  unsigned long __cil_tmp319 ;
18467  unsigned long __cil_tmp320 ;
18468  unsigned char __cil_tmp321 ;
18469  unsigned int __cil_tmp322 ;
18470  __u16 *__cil_tmp323 ;
18471  unsigned long __cil_tmp324 ;
18472  unsigned long __cil_tmp325 ;
18473  unsigned long __cil_tmp326 ;
18474  unsigned long __cil_tmp327 ;
18475  struct usb_serial_port *__cil_tmp328 ;
18476  int __cil_tmp329 ;
18477  unsigned short __cil_tmp330 ;
18478  unsigned int __cil_tmp331 ;
18479  unsigned int __cil_tmp332 ;
18480  int __cil_tmp333 ;
18481  __u16 __cil_tmp334 ;
18482  __u16 *__cil_tmp335 ;
18483  __u16 __cil_tmp336 ;
18484  int __cil_tmp337 ;
18485  __u16 __cil_tmp338 ;
18486  bool *__cil_tmp339 ;
18487  bool __cil_tmp340 ;
18488  char *__cil_tmp341 ;
18489  int __cil_tmp342 ;
18490  unsigned short __cil_tmp343 ;
18491  unsigned int __cil_tmp344 ;
18492  unsigned int __cil_tmp345 ;
18493  int __cil_tmp346 ;
18494  bool *__cil_tmp347 ;
18495  bool __cil_tmp348 ;
18496  char *__cil_tmp349 ;
18497  int __cil_tmp350 ;
18498  bool *__cil_tmp351 ;
18499  bool __cil_tmp352 ;
18500  char *__cil_tmp353 ;
18501  int __cil_tmp354 ;
18502  __u16 *__cil_tmp355 ;
18503  unsigned long __cil_tmp356 ;
18504  unsigned long __cil_tmp357 ;
18505  unsigned long __cil_tmp358 ;
18506  unsigned long __cil_tmp359 ;
18507  struct usb_serial_port *__cil_tmp360 ;
18508  int __cil_tmp361 ;
18509  unsigned short __cil_tmp362 ;
18510  unsigned int __cil_tmp363 ;
18511  unsigned int __cil_tmp364 ;
18512  int __cil_tmp365 ;
18513  __u16 __cil_tmp366 ;
18514  __u16 *__cil_tmp367 ;
18515  __u16 __cil_tmp368 ;
18516  int __cil_tmp369 ;
18517  __u16 __cil_tmp370 ;
18518  bool *__cil_tmp371 ;
18519  bool __cil_tmp372 ;
18520  char *__cil_tmp373 ;
18521  int __cil_tmp374 ;
18522  unsigned short __cil_tmp375 ;
18523  unsigned int __cil_tmp376 ;
18524  unsigned int __cil_tmp377 ;
18525  int __cil_tmp378 ;
18526  bool *__cil_tmp379 ;
18527  bool __cil_tmp380 ;
18528  char *__cil_tmp381 ;
18529  int __cil_tmp382 ;
18530  bool *__cil_tmp383 ;
18531  bool __cil_tmp384 ;
18532  char *__cil_tmp385 ;
18533  int __cil_tmp386 ;
18534  unsigned long __cil_tmp387 ;
18535  unsigned long __cil_tmp388 ;
18536  unsigned long __cil_tmp389 ;
18537  unsigned long __cil_tmp390 ;
18538  unsigned long __cil_tmp391 ;
18539  unsigned long __cil_tmp392 ;
18540  struct urb *__cil_tmp393 ;
18541  unsigned long __cil_tmp394 ;
18542  unsigned long __cil_tmp395 ;
18543  unsigned long __cil_tmp396 ;
18544  struct urb *__cil_tmp397 ;
18545  unsigned long __cil_tmp398 ;
18546  char *__cil_tmp399 ;
18547  unsigned long __cil_tmp400 ;
18548  unsigned long __cil_tmp401 ;
18549  unsigned long __cil_tmp402 ;
18550  char *__cil_tmp403 ;
18551  unsigned long __cil_tmp404 ;
18552  struct usb_ctrlrequest *__cil_tmp405 ;
18553  unsigned long __cil_tmp406 ;
18554  unsigned long __cil_tmp407 ;
18555  unsigned long __cil_tmp408 ;
18556  struct usb_ctrlrequest *__cil_tmp409 ;
18557  unsigned long __cil_tmp410 ;
18558  unsigned long __cil_tmp411 ;
18559  unsigned long __cil_tmp412 ;
18560  unsigned char __cil_tmp413 ;
18561  int __cil_tmp414 ;
18562  bool *__cil_tmp415 ;
18563  bool __cil_tmp416 ;
18564  char *__cil_tmp417 ;
18565  __u16 *__cil_tmp418 ;
18566  unsigned long __cil_tmp419 ;
18567  unsigned long __cil_tmp420 ;
18568  unsigned long __cil_tmp421 ;
18569  unsigned long __cil_tmp422 ;
18570  struct usb_serial_port *__cil_tmp423 ;
18571  __u16 __cil_tmp424 ;
18572  __u16 *__cil_tmp425 ;
18573  __u16 __cil_tmp426 ;
18574  int __cil_tmp427 ;
18575  __u16 __cil_tmp428 ;
18576  bool *__cil_tmp429 ;
18577  bool __cil_tmp430 ;
18578  char *__cil_tmp431 ;
18579  bool *__cil_tmp432 ;
18580  bool __cil_tmp433 ;
18581  char *__cil_tmp434 ;
18582  struct usb_device *__cil_tmp435 ;
18583  struct usb_device *__cil_tmp436 ;
18584  unsigned int __cil_tmp437 ;
18585  __u8 __cil_tmp438 ;
18586  __u8 __cil_tmp439 ;
18587  __u16 __cil_tmp440 ;
18588  __u16 __cil_tmp441 ;
18589  void *__cil_tmp442 ;
18590  __u16 __cil_tmp443 ;
18591  unsigned long __cil_tmp444 ;
18592  unsigned long __cil_tmp445 ;
18593  unsigned long __cil_tmp446 ;
18594  unsigned long __cil_tmp447 ;
18595  struct usb_serial_port *__cil_tmp448 ;
18596  unsigned long __cil_tmp449 ;
18597  unsigned long __cil_tmp450 ;
18598  struct usb_ctrlrequest *__cil_tmp451 ;
18599  void const   *__cil_tmp452 ;
18600  unsigned long __cil_tmp453 ;
18601  unsigned long __cil_tmp454 ;
18602  char *__cil_tmp455 ;
18603  void const   *__cil_tmp456 ;
18604  unsigned long __cil_tmp457 ;
18605  unsigned long __cil_tmp458 ;
18606  struct urb *__cil_tmp459 ;
18607  void const   *__cil_tmp460 ;
18608  unsigned long __cil_tmp461 ;
18609  unsigned long __cil_tmp462 ;
18610  unsigned long __cil_tmp463 ;
18611  unsigned long __cil_tmp464 ;
18612
18613  {
18614  {
18615#line 2381
18616  __cil_tmp12 = & debug;
18617#line 2381
18618  __cil_tmp13 = *__cil_tmp12;
18619#line 2381
18620  if ((int )__cil_tmp13) {
18621    {
18622#line 2381
18623    __cil_tmp14 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18624#line 2381
18625    __cil_tmp15 = (char *)"mos7840_startup :Entering..........";
18626#line 2381
18627    printk("<7>%s: %s\n", __cil_tmp14, __cil_tmp15);
18628    }
18629  } else {
18630
18631  }
18632  }
18633  {
18634#line 2383
18635  __cil_tmp16 = (struct usb_serial *)0;
18636#line 2383
18637  __cil_tmp17 = (unsigned long )__cil_tmp16;
18638#line 2383
18639  __cil_tmp18 = (unsigned long )serial;
18640#line 2383
18641  if (__cil_tmp18 == __cil_tmp17) {
18642    {
18643#line 2384
18644    __cil_tmp19 = & debug;
18645#line 2384
18646    __cil_tmp20 = *__cil_tmp19;
18647#line 2384
18648    if ((int )__cil_tmp20) {
18649      {
18650#line 2384
18651      __cil_tmp21 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18652#line 2384
18653      __cil_tmp22 = (char *)"Invalid Handler";
18654#line 2384
18655      printk("<7>%s: %s\n", __cil_tmp21, __cil_tmp22);
18656      }
18657    } else {
18658
18659    }
18660    }
18661#line 2385
18662    return (-1);
18663  } else {
18664
18665  }
18666  }
18667#line 2388
18668  dev = *((struct usb_device **)serial);
18669  {
18670#line 2390
18671  __cil_tmp23 = & debug;
18672#line 2390
18673  __cil_tmp24 = *__cil_tmp23;
18674#line 2390
18675  if ((int )__cil_tmp24) {
18676    {
18677#line 2390
18678    __cil_tmp25 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18679#line 2390
18680    __cil_tmp26 = (char *)"Entering...";
18681#line 2390
18682    printk("<7>%s: %s\n", __cil_tmp25, __cil_tmp26);
18683    }
18684  } else {
18685
18686  }
18687  }
18688  {
18689#line 2391
18690  __cil_tmp27 = & debug;
18691#line 2391
18692  __cil_tmp28 = *__cil_tmp27;
18693#line 2391
18694  if ((int )__cil_tmp28) {
18695    {
18696#line 2391
18697    __cil_tmp29 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18698#line 2391
18699    printk("<7>%s: mos7840_startup: serial = %p\n", __cil_tmp29, serial);
18700    }
18701  } else {
18702
18703  }
18704  }
18705#line 2397
18706  i = 0;
18707#line 2397
18708  goto ldv_28282;
18709  ldv_28281: ;
18710  {
18711#line 2398
18712  __cil_tmp30 = & debug;
18713#line 2398
18714  __cil_tmp31 = *__cil_tmp30;
18715#line 2398
18716  if ((int )__cil_tmp31) {
18717    {
18718#line 2398
18719    __cil_tmp32 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18720#line 2398
18721    printk("<7>%s: mos7840_startup: configuring port %d............\n", __cil_tmp32,
18722           i);
18723    }
18724  } else {
18725
18726  }
18727  }
18728  {
18729#line 2399
18730  tmp = kzalloc(536UL, 208U);
18731#line 2399
18732  mos7840_port = (struct moschip_port *)tmp;
18733  }
18734  {
18735#line 2400
18736  __cil_tmp33 = (struct moschip_port *)0;
18737#line 2400
18738  __cil_tmp34 = (unsigned long )__cil_tmp33;
18739#line 2400
18740  __cil_tmp35 = (unsigned long )mos7840_port;
18741#line 2400
18742  if (__cil_tmp35 == __cil_tmp34) {
18743    {
18744#line 2401
18745    __cil_tmp36 = (unsigned long )dev;
18746#line 2401
18747    __cil_tmp37 = __cil_tmp36 + 136;
18748#line 2401
18749    __cil_tmp38 = (struct device *)__cil_tmp37;
18750#line 2401
18751    __cil_tmp39 = (struct device  const  *)__cil_tmp38;
18752#line 2401
18753    dev_err(__cil_tmp39, "%s - Out of memory\n", "mos7840_startup");
18754#line 2402
18755    status = -12;
18756#line 2403
18757    i = i - 1;
18758    }
18759#line 2404
18760    goto error;
18761  } else {
18762
18763  }
18764  }
18765  {
18766#line 2411
18767  __cil_tmp40 = (unsigned long )mos7840_port;
18768#line 2411
18769  __cil_tmp41 = __cil_tmp40 + 264;
18770#line 2411
18771  __cil_tmp42 = i * 8UL;
18772#line 2411
18773  __cil_tmp43 = 32 + __cil_tmp42;
18774#line 2411
18775  __cil_tmp44 = (unsigned long )serial;
18776#line 2411
18777  __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
18778#line 2411
18779  *((struct usb_serial_port **)__cil_tmp41) = *((struct usb_serial_port **)__cil_tmp45);
18780#line 2412
18781  __cil_tmp46 = i * 8UL;
18782#line 2412
18783  __cil_tmp47 = 32 + __cil_tmp46;
18784#line 2412
18785  __cil_tmp48 = (unsigned long )serial;
18786#line 2412
18787  __cil_tmp49 = __cil_tmp48 + __cil_tmp47;
18788#line 2412
18789  __cil_tmp50 = *((struct usb_serial_port **)__cil_tmp49);
18790#line 2412
18791  mos7840_set_port_private(__cil_tmp50, mos7840_port);
18792#line 2413
18793  __cil_tmp51 = (unsigned long )mos7840_port;
18794#line 2413
18795  __cil_tmp52 = __cil_tmp51 + 312;
18796#line 2413
18797  __cil_tmp53 = (spinlock_t *)__cil_tmp52;
18798#line 2413
18799  spinlock_check(__cil_tmp53);
18800#line 2413
18801  __cil_tmp54 = (unsigned long )mos7840_port;
18802#line 2413
18803  __cil_tmp55 = __cil_tmp54 + 312;
18804#line 2413
18805  __cil_tmp56 = (struct raw_spinlock *)__cil_tmp55;
18806#line 2413
18807  __raw_spin_lock_init(__cil_tmp56, "&(&mos7840_port->pool_lock)->rlock", & __key);
18808#line 2418
18809  *((int *)mos7840_port) = i + 1;
18810  }
18811  {
18812#line 2419
18813  __cil_tmp57 = & debug;
18814#line 2419
18815  __cil_tmp58 = *__cil_tmp57;
18816#line 2419
18817  if ((int )__cil_tmp58) {
18818    {
18819#line 2419
18820    __cil_tmp59 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18821#line 2419
18822    __cil_tmp60 = i * 8UL;
18823#line 2419
18824    __cil_tmp61 = 32 + __cil_tmp60;
18825#line 2419
18826    __cil_tmp62 = (unsigned long )serial;
18827#line 2419
18828    __cil_tmp63 = __cil_tmp62 + __cil_tmp61;
18829#line 2419
18830    __cil_tmp64 = *((struct usb_serial_port **)__cil_tmp63);
18831#line 2419
18832    __cil_tmp65 = (unsigned long )__cil_tmp64;
18833#line 2419
18834    __cil_tmp66 = __cil_tmp65 + 816;
18835#line 2419
18836    __cil_tmp67 = *((unsigned char *)__cil_tmp66);
18837#line 2419
18838    __cil_tmp68 = (int )__cil_tmp67;
18839#line 2419
18840    printk("<7>%s: serial->port[i]->number = %d\n", __cil_tmp59, __cil_tmp68);
18841    }
18842  } else {
18843
18844  }
18845  }
18846  {
18847#line 2420
18848  __cil_tmp69 = & debug;
18849#line 2420
18850  __cil_tmp70 = *__cil_tmp69;
18851#line 2420
18852  if ((int )__cil_tmp70) {
18853    {
18854#line 2420
18855    __cil_tmp71 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18856#line 2420
18857    __cil_tmp72 = i * 8UL;
18858#line 2420
18859    __cil_tmp73 = 32 + __cil_tmp72;
18860#line 2420
18861    __cil_tmp74 = (unsigned long )serial;
18862#line 2420
18863    __cil_tmp75 = __cil_tmp74 + __cil_tmp73;
18864#line 2420
18865    __cil_tmp76 = *((struct usb_serial_port **)__cil_tmp75);
18866#line 2420
18867    __cil_tmp77 = *((struct usb_serial **)__cil_tmp76);
18868#line 2420
18869    __cil_tmp78 = (unsigned long )__cil_tmp77;
18870#line 2420
18871    __cil_tmp79 = __cil_tmp78 + 25;
18872#line 2420
18873    __cil_tmp80 = *((unsigned char *)__cil_tmp79);
18874#line 2420
18875    __cil_tmp81 = (int )__cil_tmp80;
18876#line 2420
18877    printk("<7>%s: serial->port[i]->serial->minor = %d\n", __cil_tmp71, __cil_tmp81);
18878    }
18879  } else {
18880
18881  }
18882  }
18883  {
18884#line 2421
18885  __cil_tmp82 = & debug;
18886#line 2421
18887  __cil_tmp83 = *__cil_tmp82;
18888#line 2421
18889  if ((int )__cil_tmp83) {
18890    {
18891#line 2421
18892    __cil_tmp84 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18893#line 2421
18894    __cil_tmp85 = *((int *)mos7840_port);
18895#line 2421
18896    printk("<7>%s: mos7840_port->port_num = %d\n", __cil_tmp84, __cil_tmp85);
18897    }
18898  } else {
18899
18900  }
18901  }
18902  {
18903#line 2422
18904  __cil_tmp86 = & debug;
18905#line 2422
18906  __cil_tmp87 = *__cil_tmp86;
18907#line 2422
18908  if ((int )__cil_tmp87) {
18909    {
18910#line 2422
18911    __cil_tmp88 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
18912#line 2422
18913    __cil_tmp89 = (unsigned long )serial;
18914#line 2422
18915    __cil_tmp90 = __cil_tmp89 + 25;
18916#line 2422
18917    __cil_tmp91 = *((unsigned char *)__cil_tmp90);
18918#line 2422
18919    __cil_tmp92 = (int )__cil_tmp91;
18920#line 2422
18921    printk("<7>%s: serial->minor = %d\n", __cil_tmp88, __cil_tmp92);
18922    }
18923  } else {
18924
18925  }
18926  }
18927  {
18928#line 2424
18929  __cil_tmp93 = *((int *)mos7840_port);
18930#line 2424
18931  if (__cil_tmp93 == 1) {
18932#line 2425
18933    __cil_tmp94 = (unsigned long )mos7840_port;
18934#line 2425
18935    __cil_tmp95 = __cil_tmp94 + 272;
18936#line 2425
18937    *((__u8 *)__cil_tmp95) = (__u8 )0U;
18938#line 2426
18939    __cil_tmp96 = (unsigned long )mos7840_port;
18940#line 2426
18941    __cil_tmp97 = __cil_tmp96 + 273;
18942#line 2426
18943    *((__u8 *)__cil_tmp97) = (__u8 )1U;
18944#line 2427
18945    __cil_tmp98 = (unsigned long )mos7840_port;
18946#line 2427
18947    __cil_tmp99 = __cil_tmp98 + 274;
18948#line 2427
18949    *((__u8 *)__cil_tmp99) = (__u8 )4U;
18950  } else {
18951    {
18952#line 2428
18953    __cil_tmp100 = *((int *)mos7840_port);
18954#line 2428
18955    if (__cil_tmp100 == 2) {
18956      {
18957#line 2428
18958      __cil_tmp101 = (unsigned long )serial;
18959#line 2428
18960      __cil_tmp102 = __cil_tmp101 + 26;
18961#line 2428
18962      __cil_tmp103 = *((unsigned char *)__cil_tmp102);
18963#line 2428
18964      __cil_tmp104 = (unsigned int )__cil_tmp103;
18965#line 2428
18966      if (__cil_tmp104 == 4U) {
18967#line 2430
18968        __cil_tmp105 = (unsigned long )mos7840_port;
18969#line 2430
18970        __cil_tmp106 = __cil_tmp105 + 272;
18971#line 2430
18972        *((__u8 *)__cil_tmp106) = (__u8 )8U;
18973#line 2431
18974        __cil_tmp107 = (unsigned long )mos7840_port;
18975#line 2431
18976        __cil_tmp108 = __cil_tmp107 + 273;
18977#line 2431
18978        *((__u8 *)__cil_tmp108) = (__u8 )9U;
18979#line 2432
18980        __cil_tmp109 = (unsigned long )mos7840_port;
18981#line 2432
18982        __cil_tmp110 = __cil_tmp109 + 274;
18983#line 2432
18984        *((__u8 *)__cil_tmp110) = (__u8 )22U;
18985      } else {
18986#line 2428
18987        goto _L___1;
18988      }
18989      }
18990    } else {
18991      _L___1: /* CIL Label */ 
18992      {
18993#line 2433
18994      __cil_tmp111 = *((int *)mos7840_port);
18995#line 2433
18996      if (__cil_tmp111 == 2) {
18997        {
18998#line 2433
18999        __cil_tmp112 = (unsigned long )serial;
19000#line 2433
19001        __cil_tmp113 = __cil_tmp112 + 26;
19002#line 2433
19003        __cil_tmp114 = *((unsigned char *)__cil_tmp113);
19004#line 2433
19005        __cil_tmp115 = (unsigned int )__cil_tmp114;
19006#line 2433
19007        if (__cil_tmp115 == 2U) {
19008#line 2435
19009          __cil_tmp116 = (unsigned long )mos7840_port;
19010#line 2435
19011          __cil_tmp117 = __cil_tmp116 + 272;
19012#line 2435
19013          *((__u8 *)__cil_tmp117) = (__u8 )10U;
19014#line 2436
19015          __cil_tmp118 = (unsigned long )mos7840_port;
19016#line 2436
19017          __cil_tmp119 = __cil_tmp118 + 273;
19018#line 2436
19019          *((__u8 *)__cil_tmp119) = (__u8 )11U;
19020#line 2437
19021          __cil_tmp120 = (unsigned long )mos7840_port;
19022#line 2437
19023          __cil_tmp121 = __cil_tmp120 + 274;
19024#line 2437
19025          *((__u8 *)__cil_tmp121) = (__u8 )25U;
19026        } else {
19027#line 2433
19028          goto _L___0;
19029        }
19030        }
19031      } else {
19032        _L___0: /* CIL Label */ 
19033        {
19034#line 2438
19035        __cil_tmp122 = *((int *)mos7840_port);
19036#line 2438
19037        if (__cil_tmp122 == 3) {
19038          {
19039#line 2438
19040          __cil_tmp123 = (unsigned long )serial;
19041#line 2438
19042          __cil_tmp124 = __cil_tmp123 + 26;
19043#line 2438
19044          __cil_tmp125 = *((unsigned char *)__cil_tmp124);
19045#line 2438
19046          __cil_tmp126 = (unsigned int )__cil_tmp125;
19047#line 2438
19048          if (__cil_tmp126 == 4U) {
19049#line 2440
19050            __cil_tmp127 = (unsigned long )mos7840_port;
19051#line 2440
19052            __cil_tmp128 = __cil_tmp127 + 272;
19053#line 2440
19054            *((__u8 *)__cil_tmp128) = (__u8 )10U;
19055#line 2441
19056            __cil_tmp129 = (unsigned long )mos7840_port;
19057#line 2441
19058            __cil_tmp130 = __cil_tmp129 + 273;
19059#line 2441
19060            *((__u8 *)__cil_tmp130) = (__u8 )11U;
19061#line 2442
19062            __cil_tmp131 = (unsigned long )mos7840_port;
19063#line 2442
19064            __cil_tmp132 = __cil_tmp131 + 274;
19065#line 2442
19066            *((__u8 *)__cil_tmp132) = (__u8 )25U;
19067          } else {
19068#line 2438
19069            goto _L;
19070          }
19071          }
19072        } else {
19073          _L: /* CIL Label */ 
19074          {
19075#line 2443
19076          __cil_tmp133 = *((int *)mos7840_port);
19077#line 2443
19078          if (__cil_tmp133 == 4) {
19079            {
19080#line 2443
19081            __cil_tmp134 = (unsigned long )serial;
19082#line 2443
19083            __cil_tmp135 = __cil_tmp134 + 26;
19084#line 2443
19085            __cil_tmp136 = *((unsigned char *)__cil_tmp135);
19086#line 2443
19087            __cil_tmp137 = (unsigned int )__cil_tmp136;
19088#line 2443
19089            if (__cil_tmp137 == 4U) {
19090#line 2445
19091              __cil_tmp138 = (unsigned long )mos7840_port;
19092#line 2445
19093              __cil_tmp139 = __cil_tmp138 + 272;
19094#line 2445
19095              *((__u8 *)__cil_tmp139) = (__u8 )12U;
19096#line 2446
19097              __cil_tmp140 = (unsigned long )mos7840_port;
19098#line 2446
19099              __cil_tmp141 = __cil_tmp140 + 273;
19100#line 2446
19101              *((__u8 *)__cil_tmp141) = (__u8 )13U;
19102#line 2447
19103              __cil_tmp142 = (unsigned long )mos7840_port;
19104#line 2447
19105              __cil_tmp143 = __cil_tmp142 + 274;
19106#line 2447
19107              *((__u8 *)__cil_tmp143) = (__u8 )28U;
19108            } else {
19109
19110            }
19111            }
19112          } else {
19113
19114          }
19115          }
19116        }
19117        }
19118      }
19119      }
19120    }
19121    }
19122  }
19123  }
19124  {
19125#line 2449
19126  mos7840_dump_serial_port(mos7840_port);
19127#line 2450
19128  __cil_tmp144 = i * 8UL;
19129#line 2450
19130  __cil_tmp145 = 32 + __cil_tmp144;
19131#line 2450
19132  __cil_tmp146 = (unsigned long )serial;
19133#line 2450
19134  __cil_tmp147 = __cil_tmp146 + __cil_tmp145;
19135#line 2450
19136  __cil_tmp148 = *((struct usb_serial_port **)__cil_tmp147);
19137#line 2450
19138  mos7840_set_port_private(__cil_tmp148, mos7840_port);
19139#line 2453
19140  __cil_tmp149 = i * 8UL;
19141#line 2453
19142  __cil_tmp150 = 32 + __cil_tmp149;
19143#line 2453
19144  __cil_tmp151 = (unsigned long )serial;
19145#line 2453
19146  __cil_tmp152 = __cil_tmp151 + __cil_tmp150;
19147#line 2453
19148  __cil_tmp153 = *((struct usb_serial_port **)__cil_tmp152);
19149#line 2453
19150  __cil_tmp154 = (unsigned long )mos7840_port;
19151#line 2453
19152  __cil_tmp155 = __cil_tmp154 + 273;
19153#line 2453
19154  __cil_tmp156 = *((__u8 *)__cil_tmp155);
19155#line 2453
19156  __cil_tmp157 = (int )__cil_tmp156;
19157#line 2453
19158  __cil_tmp158 = (__u16 )__cil_tmp157;
19159#line 2453
19160  status = mos7840_get_reg_sync(__cil_tmp153, __cil_tmp158, & Data);
19161  }
19162#line 2455
19163  if (status < 0) {
19164    {
19165#line 2456
19166    __cil_tmp159 = & debug;
19167#line 2456
19168    __cil_tmp160 = *__cil_tmp159;
19169#line 2456
19170    if ((int )__cil_tmp160) {
19171      {
19172#line 2456
19173      __cil_tmp161 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19174#line 2456
19175      printk("<7>%s: Reading ControlReg failed status-0x%x\n", __cil_tmp161, status);
19176      }
19177    } else {
19178
19179    }
19180    }
19181#line 2457
19182    goto ldv_28280;
19183  } else {
19184    {
19185#line 2459
19186    __cil_tmp162 = & debug;
19187#line 2459
19188    __cil_tmp163 = *__cil_tmp162;
19189#line 2459
19190    if ((int )__cil_tmp163) {
19191      {
19192#line 2459
19193      __cil_tmp164 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19194#line 2459
19195      __cil_tmp165 = & Data;
19196#line 2459
19197      __cil_tmp166 = *__cil_tmp165;
19198#line 2459
19199      __cil_tmp167 = (int )__cil_tmp166;
19200#line 2459
19201      printk("<7>%s: ControlReg Reading success val is %x, status%d\n", __cil_tmp164,
19202             __cil_tmp167, status);
19203      }
19204    } else {
19205
19206    }
19207    }
19208  }
19209  {
19210#line 2461
19211  __cil_tmp168 = & Data;
19212#line 2461
19213  __cil_tmp169 = & Data;
19214#line 2461
19215  __cil_tmp170 = *__cil_tmp169;
19216#line 2461
19217  __cil_tmp171 = (unsigned int )__cil_tmp170;
19218#line 2461
19219  __cil_tmp172 = __cil_tmp171 | 8U;
19220#line 2461
19221  *__cil_tmp168 = (__u16 )__cil_tmp172;
19222#line 2462
19223  __cil_tmp173 = & Data;
19224#line 2462
19225  __cil_tmp174 = & Data;
19226#line 2462
19227  __cil_tmp175 = *__cil_tmp174;
19228#line 2462
19229  __cil_tmp176 = (unsigned int )__cil_tmp175;
19230#line 2462
19231  __cil_tmp177 = __cil_tmp176 | 4U;
19232#line 2462
19233  *__cil_tmp173 = (__u16 )__cil_tmp177;
19234#line 2466
19235  __cil_tmp178 = i * 8UL;
19236#line 2466
19237  __cil_tmp179 = 32 + __cil_tmp178;
19238#line 2466
19239  __cil_tmp180 = (unsigned long )serial;
19240#line 2466
19241  __cil_tmp181 = __cil_tmp180 + __cil_tmp179;
19242#line 2466
19243  __cil_tmp182 = *((struct usb_serial_port **)__cil_tmp181);
19244#line 2466
19245  __cil_tmp183 = (unsigned long )mos7840_port;
19246#line 2466
19247  __cil_tmp184 = __cil_tmp183 + 273;
19248#line 2466
19249  __cil_tmp185 = *((__u8 *)__cil_tmp184);
19250#line 2466
19251  __cil_tmp186 = (int )__cil_tmp185;
19252#line 2466
19253  __cil_tmp187 = (__u16 )__cil_tmp186;
19254#line 2466
19255  __cil_tmp188 = & Data;
19256#line 2466
19257  __cil_tmp189 = *__cil_tmp188;
19258#line 2466
19259  __cil_tmp190 = (int )__cil_tmp189;
19260#line 2466
19261  __cil_tmp191 = (__u16 )__cil_tmp190;
19262#line 2466
19263  status = mos7840_set_reg_sync(__cil_tmp182, __cil_tmp187, __cil_tmp191);
19264  }
19265#line 2468
19266  if (status < 0) {
19267    {
19268#line 2469
19269    __cil_tmp192 = & debug;
19270#line 2469
19271    __cil_tmp193 = *__cil_tmp192;
19272#line 2469
19273    if ((int )__cil_tmp193) {
19274      {
19275#line 2469
19276      __cil_tmp194 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19277#line 2469
19278      printk("<7>%s: Writing ControlReg failed(rx_disable) status-0x%x\n", __cil_tmp194,
19279             status);
19280      }
19281    } else {
19282
19283    }
19284    }
19285#line 2470
19286    goto ldv_28280;
19287  } else {
19288    {
19289#line 2472
19290    __cil_tmp195 = & debug;
19291#line 2472
19292    __cil_tmp196 = *__cil_tmp195;
19293#line 2472
19294    if ((int )__cil_tmp196) {
19295      {
19296#line 2472
19297      __cil_tmp197 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19298#line 2472
19299      printk("<7>%s: ControlReg Writing success(rx_disable) status%d\n", __cil_tmp197,
19300             status);
19301      }
19302    } else {
19303
19304    }
19305    }
19306  }
19307  {
19308#line 2477
19309  __cil_tmp198 = & Data;
19310#line 2477
19311  *__cil_tmp198 = (__u16 )1U;
19312#line 2478
19313  __cil_tmp199 = i * 8UL;
19314#line 2478
19315  __cil_tmp200 = 32 + __cil_tmp199;
19316#line 2478
19317  __cil_tmp201 = (unsigned long )serial;
19318#line 2478
19319  __cil_tmp202 = __cil_tmp201 + __cil_tmp200;
19320#line 2478
19321  __cil_tmp203 = *((struct usb_serial_port **)__cil_tmp202);
19322#line 2478
19323  __cil_tmp204 = (unsigned long )mos7840_port;
19324#line 2478
19325  __cil_tmp205 = __cil_tmp204 + 274;
19326#line 2478
19327  __cil_tmp206 = *((__u8 *)__cil_tmp205);
19328#line 2478
19329  __cil_tmp207 = (int )__cil_tmp206;
19330#line 2478
19331  __cil_tmp208 = (__u16 )__cil_tmp207;
19332#line 2478
19333  __cil_tmp209 = & Data;
19334#line 2478
19335  __cil_tmp210 = *__cil_tmp209;
19336#line 2478
19337  __cil_tmp211 = (int )__cil_tmp210;
19338#line 2478
19339  __cil_tmp212 = (__u16 )__cil_tmp211;
19340#line 2478
19341  status = mos7840_set_reg_sync(__cil_tmp203, __cil_tmp208, __cil_tmp212);
19342  }
19343#line 2480
19344  if (status < 0) {
19345    {
19346#line 2481
19347    __cil_tmp213 = & debug;
19348#line 2481
19349    __cil_tmp214 = *__cil_tmp213;
19350#line 2481
19351    if ((int )__cil_tmp214) {
19352      {
19353#line 2481
19354      __cil_tmp215 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19355#line 2481
19356      printk("<7>%s: Writing DCR0 failed status-0x%x\n", __cil_tmp215, status);
19357      }
19358    } else {
19359
19360    }
19361    }
19362#line 2482
19363    goto ldv_28280;
19364  } else {
19365    {
19366#line 2484
19367    __cil_tmp216 = & debug;
19368#line 2484
19369    __cil_tmp217 = *__cil_tmp216;
19370#line 2484
19371    if ((int )__cil_tmp217) {
19372      {
19373#line 2484
19374      __cil_tmp218 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19375#line 2484
19376      printk("<7>%s: DCR0 Writing success status%d\n", __cil_tmp218, status);
19377      }
19378    } else {
19379
19380    }
19381    }
19382  }
19383  {
19384#line 2486
19385  __cil_tmp219 = & Data;
19386#line 2486
19387  *__cil_tmp219 = (__u16 )5U;
19388#line 2487
19389  __cil_tmp220 = i * 8UL;
19390#line 2487
19391  __cil_tmp221 = 32 + __cil_tmp220;
19392#line 2487
19393  __cil_tmp222 = (unsigned long )serial;
19394#line 2487
19395  __cil_tmp223 = __cil_tmp222 + __cil_tmp221;
19396#line 2487
19397  __cil_tmp224 = *((struct usb_serial_port **)__cil_tmp223);
19398#line 2487
19399  __cil_tmp225 = (unsigned long )mos7840_port;
19400#line 2487
19401  __cil_tmp226 = __cil_tmp225 + 274;
19402#line 2487
19403  __cil_tmp227 = *((__u8 *)__cil_tmp226);
19404#line 2487
19405  __cil_tmp228 = (unsigned short )__cil_tmp227;
19406#line 2487
19407  __cil_tmp229 = (unsigned int )__cil_tmp228;
19408#line 2487
19409  __cil_tmp230 = __cil_tmp229 + 1U;
19410#line 2487
19411  __cil_tmp231 = (int )__cil_tmp230;
19412#line 2487
19413  __cil_tmp232 = (__u16 )__cil_tmp231;
19414#line 2487
19415  __cil_tmp233 = & Data;
19416#line 2487
19417  __cil_tmp234 = *__cil_tmp233;
19418#line 2487
19419  __cil_tmp235 = (int )__cil_tmp234;
19420#line 2487
19421  __cil_tmp236 = (__u16 )__cil_tmp235;
19422#line 2487
19423  status = mos7840_set_reg_sync(__cil_tmp224, __cil_tmp232, __cil_tmp236);
19424  }
19425#line 2489
19426  if (status < 0) {
19427    {
19428#line 2490
19429    __cil_tmp237 = & debug;
19430#line 2490
19431    __cil_tmp238 = *__cil_tmp237;
19432#line 2490
19433    if ((int )__cil_tmp238) {
19434      {
19435#line 2490
19436      __cil_tmp239 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19437#line 2490
19438      printk("<7>%s: Writing DCR1 failed status-0x%x\n", __cil_tmp239, status);
19439      }
19440    } else {
19441
19442    }
19443    }
19444#line 2491
19445    goto ldv_28280;
19446  } else {
19447    {
19448#line 2493
19449    __cil_tmp240 = & debug;
19450#line 2493
19451    __cil_tmp241 = *__cil_tmp240;
19452#line 2493
19453    if ((int )__cil_tmp241) {
19454      {
19455#line 2493
19456      __cil_tmp242 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19457#line 2493
19458      printk("<7>%s: DCR1 Writing success status%d\n", __cil_tmp242, status);
19459      }
19460    } else {
19461
19462    }
19463    }
19464  }
19465  {
19466#line 2495
19467  __cil_tmp243 = & Data;
19468#line 2495
19469  *__cil_tmp243 = (__u16 )36U;
19470#line 2496
19471  __cil_tmp244 = i * 8UL;
19472#line 2496
19473  __cil_tmp245 = 32 + __cil_tmp244;
19474#line 2496
19475  __cil_tmp246 = (unsigned long )serial;
19476#line 2496
19477  __cil_tmp247 = __cil_tmp246 + __cil_tmp245;
19478#line 2496
19479  __cil_tmp248 = *((struct usb_serial_port **)__cil_tmp247);
19480#line 2496
19481  __cil_tmp249 = (unsigned long )mos7840_port;
19482#line 2496
19483  __cil_tmp250 = __cil_tmp249 + 274;
19484#line 2496
19485  __cil_tmp251 = *((__u8 *)__cil_tmp250);
19486#line 2496
19487  __cil_tmp252 = (unsigned short )__cil_tmp251;
19488#line 2496
19489  __cil_tmp253 = (unsigned int )__cil_tmp252;
19490#line 2496
19491  __cil_tmp254 = __cil_tmp253 + 2U;
19492#line 2496
19493  __cil_tmp255 = (int )__cil_tmp254;
19494#line 2496
19495  __cil_tmp256 = (__u16 )__cil_tmp255;
19496#line 2496
19497  __cil_tmp257 = & Data;
19498#line 2496
19499  __cil_tmp258 = *__cil_tmp257;
19500#line 2496
19501  __cil_tmp259 = (int )__cil_tmp258;
19502#line 2496
19503  __cil_tmp260 = (__u16 )__cil_tmp259;
19504#line 2496
19505  status = mos7840_set_reg_sync(__cil_tmp248, __cil_tmp256, __cil_tmp260);
19506  }
19507#line 2498
19508  if (status < 0) {
19509    {
19510#line 2499
19511    __cil_tmp261 = & debug;
19512#line 2499
19513    __cil_tmp262 = *__cil_tmp261;
19514#line 2499
19515    if ((int )__cil_tmp262) {
19516      {
19517#line 2499
19518      __cil_tmp263 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19519#line 2499
19520      printk("<7>%s: Writing DCR2 failed status-0x%x\n", __cil_tmp263, status);
19521      }
19522    } else {
19523
19524    }
19525    }
19526#line 2500
19527    goto ldv_28280;
19528  } else {
19529    {
19530#line 2502
19531    __cil_tmp264 = & debug;
19532#line 2502
19533    __cil_tmp265 = *__cil_tmp264;
19534#line 2502
19535    if ((int )__cil_tmp265) {
19536      {
19537#line 2502
19538      __cil_tmp266 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19539#line 2502
19540      printk("<7>%s: DCR2 Writing success status%d\n", __cil_tmp266, status);
19541      }
19542    } else {
19543
19544    }
19545    }
19546  }
19547  {
19548#line 2505
19549  __cil_tmp267 = & Data;
19550#line 2505
19551  *__cil_tmp267 = (__u16 )0U;
19552#line 2506
19553  __cil_tmp268 = i * 8UL;
19554#line 2506
19555  __cil_tmp269 = 32 + __cil_tmp268;
19556#line 2506
19557  __cil_tmp270 = (unsigned long )serial;
19558#line 2506
19559  __cil_tmp271 = __cil_tmp270 + __cil_tmp269;
19560#line 2506
19561  __cil_tmp272 = *((struct usb_serial_port **)__cil_tmp271);
19562#line 2506
19563  __cil_tmp273 = (__u16 )3;
19564#line 2506
19565  __cil_tmp274 = & Data;
19566#line 2506
19567  __cil_tmp275 = *__cil_tmp274;
19568#line 2506
19569  __cil_tmp276 = (int )__cil_tmp275;
19570#line 2506
19571  __cil_tmp277 = (__u16 )__cil_tmp276;
19572#line 2506
19573  status = mos7840_set_reg_sync(__cil_tmp272, __cil_tmp273, __cil_tmp277);
19574  }
19575#line 2508
19576  if (status < 0) {
19577    {
19578#line 2509
19579    __cil_tmp278 = & debug;
19580#line 2509
19581    __cil_tmp279 = *__cil_tmp278;
19582#line 2509
19583    if ((int )__cil_tmp279) {
19584      {
19585#line 2509
19586      __cil_tmp280 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19587#line 2509
19588      printk("<7>%s: Writing CLK_START_VALUE_REGISTER failed status-0x%x\n", __cil_tmp280,
19589             status);
19590      }
19591    } else {
19592
19593    }
19594    }
19595#line 2510
19596    goto ldv_28280;
19597  } else {
19598    {
19599#line 2512
19600    __cil_tmp281 = & debug;
19601#line 2512
19602    __cil_tmp282 = *__cil_tmp281;
19603#line 2512
19604    if ((int )__cil_tmp282) {
19605      {
19606#line 2512
19607      __cil_tmp283 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19608#line 2512
19609      printk("<7>%s: CLK_START_VALUE_REGISTER Writing success status%d\n", __cil_tmp283,
19610             status);
19611      }
19612    } else {
19613
19614    }
19615    }
19616  }
19617  {
19618#line 2514
19619  __cil_tmp284 = & Data;
19620#line 2514
19621  *__cil_tmp284 = (__u16 )32U;
19622#line 2515
19623  __cil_tmp285 = i * 8UL;
19624#line 2515
19625  __cil_tmp286 = 32 + __cil_tmp285;
19626#line 2515
19627  __cil_tmp287 = (unsigned long )serial;
19628#line 2515
19629  __cil_tmp288 = __cil_tmp287 + __cil_tmp286;
19630#line 2515
19631  __cil_tmp289 = *((struct usb_serial_port **)__cil_tmp288);
19632#line 2515
19633  __cil_tmp290 = (__u16 )2;
19634#line 2515
19635  __cil_tmp291 = & Data;
19636#line 2515
19637  __cil_tmp292 = *__cil_tmp291;
19638#line 2515
19639  __cil_tmp293 = (int )__cil_tmp292;
19640#line 2515
19641  __cil_tmp294 = (__u16 )__cil_tmp293;
19642#line 2515
19643  status = mos7840_set_reg_sync(__cil_tmp289, __cil_tmp290, __cil_tmp294);
19644  }
19645#line 2517
19646  if (status < 0) {
19647    {
19648#line 2518
19649    __cil_tmp295 = & debug;
19650#line 2518
19651    __cil_tmp296 = *__cil_tmp295;
19652#line 2518
19653    if ((int )__cil_tmp296) {
19654      {
19655#line 2518
19656      __cil_tmp297 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19657#line 2518
19658      printk("<7>%s: Writing CLK_MULTI_REGISTER failed status-0x%x\n", __cil_tmp297,
19659             status);
19660      }
19661    } else {
19662
19663    }
19664    }
19665#line 2520
19666    goto error;
19667  } else {
19668    {
19669#line 2522
19670    __cil_tmp298 = & debug;
19671#line 2522
19672    __cil_tmp299 = *__cil_tmp298;
19673#line 2522
19674    if ((int )__cil_tmp299) {
19675      {
19676#line 2522
19677      __cil_tmp300 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19678#line 2522
19679      printk("<7>%s: CLK_MULTI_REGISTER Writing success status%d\n", __cil_tmp300,
19680             status);
19681      }
19682    } else {
19683
19684    }
19685    }
19686  }
19687  {
19688#line 2526
19689  __cil_tmp301 = & Data;
19690#line 2526
19691  *__cil_tmp301 = (__u16 )0U;
19692#line 2527
19693  __cil_tmp302 = i * 8UL;
19694#line 2527
19695  __cil_tmp303 = 32 + __cil_tmp302;
19696#line 2527
19697  __cil_tmp304 = (unsigned long )serial;
19698#line 2527
19699  __cil_tmp305 = __cil_tmp304 + __cil_tmp303;
19700#line 2527
19701  __cil_tmp306 = *((struct usb_serial_port **)__cil_tmp305);
19702#line 2527
19703  __cil_tmp307 = (__u16 )7;
19704#line 2527
19705  __cil_tmp308 = & Data;
19706#line 2527
19707  __cil_tmp309 = *__cil_tmp308;
19708#line 2527
19709  __cil_tmp310 = (int )__cil_tmp309;
19710#line 2527
19711  __cil_tmp311 = (__u16 )__cil_tmp310;
19712#line 2527
19713  status = mos7840_set_uart_reg(__cil_tmp306, __cil_tmp307, __cil_tmp311);
19714  }
19715#line 2529
19716  if (status < 0) {
19717    {
19718#line 2530
19719    __cil_tmp312 = & debug;
19720#line 2530
19721    __cil_tmp313 = *__cil_tmp312;
19722#line 2530
19723    if ((int )__cil_tmp313) {
19724      {
19725#line 2530
19726      __cil_tmp314 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19727#line 2530
19728      printk("<7>%s: Writing SCRATCH_PAD_REGISTER failed status-0x%x\n", __cil_tmp314,
19729             status);
19730      }
19731    } else {
19732
19733    }
19734    }
19735#line 2532
19736    goto ldv_28280;
19737  } else {
19738    {
19739#line 2534
19740    __cil_tmp315 = & debug;
19741#line 2534
19742    __cil_tmp316 = *__cil_tmp315;
19743#line 2534
19744    if ((int )__cil_tmp316) {
19745      {
19746#line 2534
19747      __cil_tmp317 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19748#line 2534
19749      printk("<7>%s: SCRATCH_PAD_REGISTER Writing success status%d\n", __cil_tmp317,
19750             status);
19751      }
19752    } else {
19753
19754    }
19755    }
19756  }
19757  {
19758#line 2538
19759  __cil_tmp318 = *((int *)mos7840_port);
19760#line 2538
19761  if (__cil_tmp318 != 1) {
19762    {
19763#line 2538
19764    __cil_tmp319 = (unsigned long )serial;
19765#line 2538
19766    __cil_tmp320 = __cil_tmp319 + 26;
19767#line 2538
19768    __cil_tmp321 = *((unsigned char *)__cil_tmp320);
19769#line 2538
19770    __cil_tmp322 = (unsigned int )__cil_tmp321;
19771#line 2538
19772    if (__cil_tmp322 == 2U) {
19773      {
19774#line 2541
19775      __cil_tmp323 = & Data;
19776#line 2541
19777      *__cil_tmp323 = (__u16 )255U;
19778#line 2542
19779      __cil_tmp324 = i * 8UL;
19780#line 2542
19781      __cil_tmp325 = 32 + __cil_tmp324;
19782#line 2542
19783      __cil_tmp326 = (unsigned long )serial;
19784#line 2542
19785      __cil_tmp327 = __cil_tmp326 + __cil_tmp325;
19786#line 2542
19787      __cil_tmp328 = *((struct usb_serial_port **)__cil_tmp327);
19788#line 2542
19789      __cil_tmp329 = *((int *)mos7840_port);
19790#line 2542
19791      __cil_tmp330 = (unsigned short )__cil_tmp329;
19792#line 2542
19793      __cil_tmp331 = (unsigned int )__cil_tmp330;
19794#line 2542
19795      __cil_tmp332 = __cil_tmp331 + 58U;
19796#line 2542
19797      __cil_tmp333 = (int )__cil_tmp332;
19798#line 2542
19799      __cil_tmp334 = (__u16 )__cil_tmp333;
19800#line 2542
19801      __cil_tmp335 = & Data;
19802#line 2542
19803      __cil_tmp336 = *__cil_tmp335;
19804#line 2542
19805      __cil_tmp337 = (int )__cil_tmp336;
19806#line 2542
19807      __cil_tmp338 = (__u16 )__cil_tmp337;
19808#line 2542
19809      status = mos7840_set_reg_sync(__cil_tmp328, __cil_tmp334, __cil_tmp338);
19810      }
19811      {
19812#line 2545
19813      __cil_tmp339 = & debug;
19814#line 2545
19815      __cil_tmp340 = *__cil_tmp339;
19816#line 2545
19817      if ((int )__cil_tmp340) {
19818        {
19819#line 2545
19820        __cil_tmp341 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19821#line 2545
19822        __cil_tmp342 = *((int *)mos7840_port);
19823#line 2545
19824        __cil_tmp343 = (unsigned short )__cil_tmp342;
19825#line 2545
19826        __cil_tmp344 = (unsigned int )__cil_tmp343;
19827#line 2545
19828        __cil_tmp345 = __cil_tmp344 + 58U;
19829#line 2545
19830        __cil_tmp346 = (int )__cil_tmp345;
19831#line 2545
19832        printk("<7>%s: ZLIP offset %x\n", __cil_tmp341, __cil_tmp346);
19833        }
19834      } else {
19835
19836      }
19837      }
19838#line 2548
19839      if (status < 0) {
19840        {
19841#line 2549
19842        __cil_tmp347 = & debug;
19843#line 2549
19844        __cil_tmp348 = *__cil_tmp347;
19845#line 2549
19846        if ((int )__cil_tmp348) {
19847          {
19848#line 2549
19849          __cil_tmp349 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19850#line 2549
19851          __cil_tmp350 = i + 2;
19852#line 2549
19853          printk("<7>%s: Writing ZLP_REG%d failed status-0x%x\n", __cil_tmp349, __cil_tmp350,
19854                 status);
19855          }
19856        } else {
19857
19858        }
19859        }
19860#line 2551
19861        goto ldv_28280;
19862      } else {
19863        {
19864#line 2553
19865        __cil_tmp351 = & debug;
19866#line 2553
19867        __cil_tmp352 = *__cil_tmp351;
19868#line 2553
19869        if ((int )__cil_tmp352) {
19870          {
19871#line 2553
19872          __cil_tmp353 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19873#line 2553
19874          __cil_tmp354 = i + 2;
19875#line 2553
19876          printk("<7>%s: ZLP_REG%d Writing success status%d\n", __cil_tmp353, __cil_tmp354,
19877                 status);
19878          }
19879        } else {
19880
19881        }
19882        }
19883      }
19884    } else {
19885#line 2538
19886      goto _L___2;
19887    }
19888    }
19889  } else {
19890    _L___2: /* CIL Label */ 
19891    {
19892#line 2556
19893    __cil_tmp355 = & Data;
19894#line 2556
19895    *__cil_tmp355 = (__u16 )255U;
19896#line 2557
19897    __cil_tmp356 = i * 8UL;
19898#line 2557
19899    __cil_tmp357 = 32 + __cil_tmp356;
19900#line 2557
19901    __cil_tmp358 = (unsigned long )serial;
19902#line 2557
19903    __cil_tmp359 = __cil_tmp358 + __cil_tmp357;
19904#line 2557
19905    __cil_tmp360 = *((struct usb_serial_port **)__cil_tmp359);
19906#line 2557
19907    __cil_tmp361 = *((int *)mos7840_port);
19908#line 2557
19909    __cil_tmp362 = (unsigned short )__cil_tmp361;
19910#line 2557
19911    __cil_tmp363 = (unsigned int )__cil_tmp362;
19912#line 2557
19913    __cil_tmp364 = __cil_tmp363 + 57U;
19914#line 2557
19915    __cil_tmp365 = (int )__cil_tmp364;
19916#line 2557
19917    __cil_tmp366 = (__u16 )__cil_tmp365;
19918#line 2557
19919    __cil_tmp367 = & Data;
19920#line 2557
19921    __cil_tmp368 = *__cil_tmp367;
19922#line 2557
19923    __cil_tmp369 = (int )__cil_tmp368;
19924#line 2557
19925    __cil_tmp370 = (__u16 )__cil_tmp369;
19926#line 2557
19927    status = mos7840_set_reg_sync(__cil_tmp360, __cil_tmp366, __cil_tmp370);
19928    }
19929    {
19930#line 2560
19931    __cil_tmp371 = & debug;
19932#line 2560
19933    __cil_tmp372 = *__cil_tmp371;
19934#line 2560
19935    if ((int )__cil_tmp372) {
19936      {
19937#line 2560
19938      __cil_tmp373 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19939#line 2560
19940      __cil_tmp374 = *((int *)mos7840_port);
19941#line 2560
19942      __cil_tmp375 = (unsigned short )__cil_tmp374;
19943#line 2560
19944      __cil_tmp376 = (unsigned int )__cil_tmp375;
19945#line 2560
19946      __cil_tmp377 = __cil_tmp376 + 57U;
19947#line 2560
19948      __cil_tmp378 = (int )__cil_tmp377;
19949#line 2560
19950      printk("<7>%s: ZLIP offset %x\n", __cil_tmp373, __cil_tmp378);
19951      }
19952    } else {
19953
19954    }
19955    }
19956#line 2563
19957    if (status < 0) {
19958      {
19959#line 2564
19960      __cil_tmp379 = & debug;
19961#line 2564
19962      __cil_tmp380 = *__cil_tmp379;
19963#line 2564
19964      if ((int )__cil_tmp380) {
19965        {
19966#line 2564
19967        __cil_tmp381 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19968#line 2564
19969        __cil_tmp382 = i + 1;
19970#line 2564
19971        printk("<7>%s: Writing ZLP_REG%d failed status-0x%x\n", __cil_tmp381, __cil_tmp382,
19972               status);
19973        }
19974      } else {
19975
19976      }
19977      }
19978#line 2566
19979      goto ldv_28280;
19980    } else {
19981      {
19982#line 2568
19983      __cil_tmp383 = & debug;
19984#line 2568
19985      __cil_tmp384 = *__cil_tmp383;
19986#line 2568
19987      if ((int )__cil_tmp384) {
19988        {
19989#line 2568
19990        __cil_tmp385 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
19991#line 2568
19992        __cil_tmp386 = i + 1;
19993#line 2568
19994        printk("<7>%s: ZLP_REG%d Writing success status%d\n", __cil_tmp385, __cil_tmp386,
19995               status);
19996        }
19997      } else {
19998
19999      }
20000      }
20001    }
20002  }
20003  }
20004  {
20005#line 2572
20006  __cil_tmp387 = (unsigned long )mos7840_port;
20007#line 2572
20008  __cil_tmp388 = __cil_tmp387 + 280;
20009#line 2572
20010  *((struct urb **)__cil_tmp388) = ldv_usb_alloc_urb_29(0, 208U);
20011#line 2573
20012  tmp___0 = kmalloc(16UL, 208U);
20013#line 2573
20014  __cil_tmp389 = (unsigned long )mos7840_port;
20015#line 2573
20016  __cil_tmp390 = __cil_tmp389 + 296;
20017#line 2573
20018  *((char **)__cil_tmp390) = (char *)tmp___0;
20019#line 2574
20020  tmp___1 = kmalloc(8UL, 208U);
20021#line 2574
20022  __cil_tmp391 = (unsigned long )mos7840_port;
20023#line 2574
20024  __cil_tmp392 = __cil_tmp391 + 288;
20025#line 2574
20026  *((struct usb_ctrlrequest **)__cil_tmp392) = (struct usb_ctrlrequest *)tmp___1;
20027  }
20028  {
20029#line 2576
20030  __cil_tmp393 = (struct urb *)0;
20031#line 2576
20032  __cil_tmp394 = (unsigned long )__cil_tmp393;
20033#line 2576
20034  __cil_tmp395 = (unsigned long )mos7840_port;
20035#line 2576
20036  __cil_tmp396 = __cil_tmp395 + 280;
20037#line 2576
20038  __cil_tmp397 = *((struct urb **)__cil_tmp396);
20039#line 2576
20040  __cil_tmp398 = (unsigned long )__cil_tmp397;
20041#line 2576
20042  if (__cil_tmp398 == __cil_tmp394) {
20043#line 2578
20044    status = -12;
20045#line 2579
20046    goto error;
20047  } else {
20048    {
20049#line 2576
20050    __cil_tmp399 = (char *)0;
20051#line 2576
20052    __cil_tmp400 = (unsigned long )__cil_tmp399;
20053#line 2576
20054    __cil_tmp401 = (unsigned long )mos7840_port;
20055#line 2576
20056    __cil_tmp402 = __cil_tmp401 + 296;
20057#line 2576
20058    __cil_tmp403 = *((char **)__cil_tmp402);
20059#line 2576
20060    __cil_tmp404 = (unsigned long )__cil_tmp403;
20061#line 2576
20062    if (__cil_tmp404 == __cil_tmp400) {
20063#line 2578
20064      status = -12;
20065#line 2579
20066      goto error;
20067    } else {
20068      {
20069#line 2576
20070      __cil_tmp405 = (struct usb_ctrlrequest *)0;
20071#line 2576
20072      __cil_tmp406 = (unsigned long )__cil_tmp405;
20073#line 2576
20074      __cil_tmp407 = (unsigned long )mos7840_port;
20075#line 2576
20076      __cil_tmp408 = __cil_tmp407 + 288;
20077#line 2576
20078      __cil_tmp409 = *((struct usb_ctrlrequest **)__cil_tmp408);
20079#line 2576
20080      __cil_tmp410 = (unsigned long )__cil_tmp409;
20081#line 2576
20082      if (__cil_tmp410 == __cil_tmp406) {
20083#line 2578
20084        status = -12;
20085#line 2579
20086        goto error;
20087      } else {
20088
20089      }
20090      }
20091    }
20092    }
20093  }
20094  }
20095#line 2397
20096  i = i + 1;
20097  ldv_28282: ;
20098  {
20099#line 2397
20100  __cil_tmp411 = (unsigned long )serial;
20101#line 2397
20102  __cil_tmp412 = __cil_tmp411 + 26;
20103#line 2397
20104  __cil_tmp413 = *((unsigned char *)__cil_tmp412);
20105#line 2397
20106  __cil_tmp414 = (int )__cil_tmp413;
20107#line 2397
20108  if (__cil_tmp414 > i) {
20109#line 2398
20110    goto ldv_28281;
20111  } else {
20112#line 2400
20113    goto ldv_28280;
20114  }
20115  }
20116  ldv_28280: ;
20117  {
20118#line 2582
20119  __cil_tmp415 = & debug;
20120#line 2582
20121  __cil_tmp416 = *__cil_tmp415;
20122#line 2582
20123  if ((int )__cil_tmp416) {
20124    {
20125#line 2582
20126    __cil_tmp417 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20127#line 2582
20128    printk("<7>%s: mos7840_startup: all ports configured...........\n", __cil_tmp417);
20129    }
20130  } else {
20131
20132  }
20133  }
20134  {
20135#line 2585
20136  __cil_tmp418 = & Data;
20137#line 2585
20138  *__cil_tmp418 = (__u16 )15U;
20139#line 2586
20140  __cil_tmp419 = 0 * 8UL;
20141#line 2586
20142  __cil_tmp420 = 32 + __cil_tmp419;
20143#line 2586
20144  __cil_tmp421 = (unsigned long )serial;
20145#line 2586
20146  __cil_tmp422 = __cil_tmp421 + __cil_tmp420;
20147#line 2586
20148  __cil_tmp423 = *((struct usb_serial_port **)__cil_tmp422);
20149#line 2586
20150  __cil_tmp424 = (__u16 )62;
20151#line 2586
20152  __cil_tmp425 = & Data;
20153#line 2586
20154  __cil_tmp426 = *__cil_tmp425;
20155#line 2586
20156  __cil_tmp427 = (int )__cil_tmp426;
20157#line 2586
20158  __cil_tmp428 = (__u16 )__cil_tmp427;
20159#line 2586
20160  status = mos7840_set_reg_sync(__cil_tmp423, __cil_tmp424, __cil_tmp428);
20161  }
20162#line 2587
20163  if (status < 0) {
20164    {
20165#line 2588
20166    __cil_tmp429 = & debug;
20167#line 2588
20168    __cil_tmp430 = *__cil_tmp429;
20169#line 2588
20170    if ((int )__cil_tmp430) {
20171      {
20172#line 2588
20173      __cil_tmp431 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20174#line 2588
20175      printk("<7>%s: Writing ZLP_REG5 failed status-0x%x\n", __cil_tmp431, status);
20176      }
20177    } else {
20178
20179    }
20180    }
20181#line 2589
20182    goto error;
20183  } else {
20184    {
20185#line 2591
20186    __cil_tmp432 = & debug;
20187#line 2591
20188    __cil_tmp433 = *__cil_tmp432;
20189#line 2591
20190    if ((int )__cil_tmp433) {
20191      {
20192#line 2591
20193      __cil_tmp434 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20194#line 2591
20195      printk("<7>%s: ZLP_REG5 Writing success status%d\n", __cil_tmp434, status);
20196      }
20197    } else {
20198
20199    }
20200    }
20201  }
20202  {
20203#line 2594
20204  __cil_tmp435 = *((struct usb_device **)serial);
20205#line 2594
20206  tmp___2 = __create_pipe(__cil_tmp435, 0U);
20207#line 2594
20208  __cil_tmp436 = *((struct usb_device **)serial);
20209#line 2594
20210  __cil_tmp437 = tmp___2 | 2147483648U;
20211#line 2594
20212  __cil_tmp438 = (__u8 )3;
20213#line 2594
20214  __cil_tmp439 = (__u8 )0;
20215#line 2594
20216  __cil_tmp440 = (__u16 )1;
20217#line 2594
20218  __cil_tmp441 = (__u16 )0;
20219#line 2594
20220  __cil_tmp442 = (void *)0;
20221#line 2594
20222  __cil_tmp443 = (__u16 )0;
20223#line 2594
20224  usb_control_msg(__cil_tmp436, __cil_tmp437, __cil_tmp438, __cil_tmp439, __cil_tmp440,
20225                  __cil_tmp441, __cil_tmp442, __cil_tmp443, 1250);
20226  }
20227#line 2596
20228  return (0);
20229  error: ;
20230#line 2598
20231  goto ldv_28284;
20232  ldv_28283: 
20233  {
20234#line 2599
20235  __cil_tmp444 = i * 8UL;
20236#line 2599
20237  __cil_tmp445 = 32 + __cil_tmp444;
20238#line 2599
20239  __cil_tmp446 = (unsigned long )serial;
20240#line 2599
20241  __cil_tmp447 = __cil_tmp446 + __cil_tmp445;
20242#line 2599
20243  __cil_tmp448 = *((struct usb_serial_port **)__cil_tmp447);
20244#line 2599
20245  mos7840_port = mos7840_get_port_private(__cil_tmp448);
20246#line 2601
20247  __cil_tmp449 = (unsigned long )mos7840_port;
20248#line 2601
20249  __cil_tmp450 = __cil_tmp449 + 288;
20250#line 2601
20251  __cil_tmp451 = *((struct usb_ctrlrequest **)__cil_tmp450);
20252#line 2601
20253  __cil_tmp452 = (void const   *)__cil_tmp451;
20254#line 2601
20255  kfree(__cil_tmp452);
20256#line 2602
20257  __cil_tmp453 = (unsigned long )mos7840_port;
20258#line 2602
20259  __cil_tmp454 = __cil_tmp453 + 296;
20260#line 2602
20261  __cil_tmp455 = *((char **)__cil_tmp454);
20262#line 2602
20263  __cil_tmp456 = (void const   *)__cil_tmp455;
20264#line 2602
20265  kfree(__cil_tmp456);
20266#line 2603
20267  __cil_tmp457 = (unsigned long )mos7840_port;
20268#line 2603
20269  __cil_tmp458 = __cil_tmp457 + 280;
20270#line 2603
20271  __cil_tmp459 = *((struct urb **)__cil_tmp458);
20272#line 2603
20273  usb_free_urb(__cil_tmp459);
20274#line 2604
20275  __cil_tmp460 = (void const   *)mos7840_port;
20276#line 2604
20277  kfree(__cil_tmp460);
20278#line 2605
20279  __cil_tmp461 = i * 8UL;
20280#line 2605
20281  __cil_tmp462 = 32 + __cil_tmp461;
20282#line 2605
20283  __cil_tmp463 = (unsigned long )serial;
20284#line 2605
20285  __cil_tmp464 = __cil_tmp463 + __cil_tmp462;
20286#line 2605
20287  *((struct usb_serial_port **)__cil_tmp464) = (struct usb_serial_port *)0;
20288#line 2598
20289  i = i - 1;
20290  }
20291  ldv_28284: ;
20292#line 2598
20293  if (i >= 0) {
20294#line 2599
20295    goto ldv_28283;
20296  } else {
20297#line 2601
20298    goto ldv_28285;
20299  }
20300  ldv_28285: ;
20301#line 2607
20302  return (status);
20303}
20304}
20305#line 2615 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
20306static void mos7840_disconnect(struct usb_serial *serial ) 
20307{ int i ;
20308  unsigned long flags ;
20309  struct moschip_port *mos7840_port ;
20310  bool *__cil_tmp5 ;
20311  bool __cil_tmp6 ;
20312  char *__cil_tmp7 ;
20313  char *__cil_tmp8 ;
20314  struct usb_serial *__cil_tmp9 ;
20315  unsigned long __cil_tmp10 ;
20316  unsigned long __cil_tmp11 ;
20317  bool *__cil_tmp12 ;
20318  bool __cil_tmp13 ;
20319  char *__cil_tmp14 ;
20320  char *__cil_tmp15 ;
20321  unsigned long __cil_tmp16 ;
20322  unsigned long __cil_tmp17 ;
20323  unsigned long __cil_tmp18 ;
20324  unsigned long __cil_tmp19 ;
20325  struct usb_serial_port *__cil_tmp20 ;
20326  bool *__cil_tmp21 ;
20327  bool __cil_tmp22 ;
20328  char *__cil_tmp23 ;
20329  struct moschip_port *__cil_tmp24 ;
20330  unsigned long __cil_tmp25 ;
20331  unsigned long __cil_tmp26 ;
20332  unsigned long __cil_tmp27 ;
20333  unsigned long __cil_tmp28 ;
20334  unsigned long __cil_tmp29 ;
20335  unsigned long __cil_tmp30 ;
20336  spinlock_t *__cil_tmp31 ;
20337  unsigned long __cil_tmp32 ;
20338  unsigned long __cil_tmp33 ;
20339  struct urb *__cil_tmp34 ;
20340  unsigned long __cil_tmp35 ;
20341  unsigned long __cil_tmp36 ;
20342  unsigned char __cil_tmp37 ;
20343  int __cil_tmp38 ;
20344  bool *__cil_tmp39 ;
20345  bool __cil_tmp40 ;
20346  char *__cil_tmp41 ;
20347  char *__cil_tmp42 ;
20348
20349  {
20350  {
20351#line 2620
20352  __cil_tmp5 = & debug;
20353#line 2620
20354  __cil_tmp6 = *__cil_tmp5;
20355#line 2620
20356  if ((int )__cil_tmp6) {
20357    {
20358#line 2620
20359    __cil_tmp7 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20360#line 2620
20361    __cil_tmp8 = (char *)" disconnect :entering..........";
20362#line 2620
20363    printk("<7>%s: %s\n", __cil_tmp7, __cil_tmp8);
20364    }
20365  } else {
20366
20367  }
20368  }
20369  {
20370#line 2622
20371  __cil_tmp9 = (struct usb_serial *)0;
20372#line 2622
20373  __cil_tmp10 = (unsigned long )__cil_tmp9;
20374#line 2622
20375  __cil_tmp11 = (unsigned long )serial;
20376#line 2622
20377  if (__cil_tmp11 == __cil_tmp10) {
20378    {
20379#line 2623
20380    __cil_tmp12 = & debug;
20381#line 2623
20382    __cil_tmp13 = *__cil_tmp12;
20383#line 2623
20384    if ((int )__cil_tmp13) {
20385      {
20386#line 2623
20387      __cil_tmp14 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20388#line 2623
20389      __cil_tmp15 = (char *)"Invalid Handler";
20390#line 2623
20391      printk("<7>%s: %s\n", __cil_tmp14, __cil_tmp15);
20392      }
20393    } else {
20394
20395    }
20396    }
20397#line 2624
20398    return;
20399  } else {
20400
20401  }
20402  }
20403#line 2632
20404  i = 0;
20405#line 2632
20406  goto ldv_28293;
20407  ldv_28292: 
20408  {
20409#line 2633
20410  __cil_tmp16 = i * 8UL;
20411#line 2633
20412  __cil_tmp17 = 32 + __cil_tmp16;
20413#line 2633
20414  __cil_tmp18 = (unsigned long )serial;
20415#line 2633
20416  __cil_tmp19 = __cil_tmp18 + __cil_tmp17;
20417#line 2633
20418  __cil_tmp20 = *((struct usb_serial_port **)__cil_tmp19);
20419#line 2633
20420  mos7840_port = mos7840_get_port_private(__cil_tmp20);
20421  }
20422  {
20423#line 2634
20424  __cil_tmp21 = & debug;
20425#line 2634
20426  __cil_tmp22 = *__cil_tmp21;
20427#line 2634
20428  if ((int )__cil_tmp22) {
20429    {
20430#line 2634
20431    __cil_tmp23 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20432#line 2634
20433    printk("<7>%s: mos7840_port %d = %p\n", __cil_tmp23, i, mos7840_port);
20434    }
20435  } else {
20436
20437  }
20438  }
20439  {
20440#line 2635
20441  __cil_tmp24 = (struct moschip_port *)0;
20442#line 2635
20443  __cil_tmp25 = (unsigned long )__cil_tmp24;
20444#line 2635
20445  __cil_tmp26 = (unsigned long )mos7840_port;
20446#line 2635
20447  if (__cil_tmp26 != __cil_tmp25) {
20448    {
20449#line 2636
20450    ldv_spin_lock();
20451#line 2637
20452    __cil_tmp27 = (unsigned long )mos7840_port;
20453#line 2637
20454    __cil_tmp28 = __cil_tmp27 + 36;
20455#line 2637
20456    *((char *)__cil_tmp28) = (char)1;
20457#line 2638
20458    __cil_tmp29 = (unsigned long )mos7840_port;
20459#line 2638
20460    __cil_tmp30 = __cil_tmp29 + 312;
20461#line 2638
20462    __cil_tmp31 = (spinlock_t *)__cil_tmp30;
20463#line 2638
20464    spin_unlock_irqrestore(__cil_tmp31, flags);
20465#line 2639
20466    __cil_tmp32 = (unsigned long )mos7840_port;
20467#line 2639
20468    __cil_tmp33 = __cil_tmp32 + 280;
20469#line 2639
20470    __cil_tmp34 = *((struct urb **)__cil_tmp33);
20471#line 2639
20472    usb_kill_urb(__cil_tmp34);
20473    }
20474  } else {
20475
20476  }
20477  }
20478#line 2632
20479  i = i + 1;
20480  ldv_28293: ;
20481  {
20482#line 2632
20483  __cil_tmp35 = (unsigned long )serial;
20484#line 2632
20485  __cil_tmp36 = __cil_tmp35 + 26;
20486#line 2632
20487  __cil_tmp37 = *((unsigned char *)__cil_tmp36);
20488#line 2632
20489  __cil_tmp38 = (int )__cil_tmp37;
20490#line 2632
20491  if (__cil_tmp38 > i) {
20492#line 2633
20493    goto ldv_28292;
20494  } else {
20495#line 2635
20496    goto ldv_28294;
20497  }
20498  }
20499  ldv_28294: ;
20500  {
20501#line 2643
20502  __cil_tmp39 = & debug;
20503#line 2643
20504  __cil_tmp40 = *__cil_tmp39;
20505#line 2643
20506  if ((int )__cil_tmp40) {
20507    {
20508#line 2643
20509    __cil_tmp41 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20510#line 2643
20511    __cil_tmp42 = (char *)"Thank u :: ";
20512#line 2643
20513    printk("<7>%s: %s\n", __cil_tmp41, __cil_tmp42);
20514    }
20515  } else {
20516
20517  }
20518  }
20519#line 2644
20520  return;
20521}
20522}
20523#line 2652 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
20524static void mos7840_release(struct usb_serial *serial ) 
20525{ int i ;
20526  struct moschip_port *mos7840_port ;
20527  bool *__cil_tmp4 ;
20528  bool __cil_tmp5 ;
20529  char *__cil_tmp6 ;
20530  char *__cil_tmp7 ;
20531  struct usb_serial *__cil_tmp8 ;
20532  unsigned long __cil_tmp9 ;
20533  unsigned long __cil_tmp10 ;
20534  bool *__cil_tmp11 ;
20535  bool __cil_tmp12 ;
20536  char *__cil_tmp13 ;
20537  char *__cil_tmp14 ;
20538  unsigned long __cil_tmp15 ;
20539  unsigned long __cil_tmp16 ;
20540  unsigned long __cil_tmp17 ;
20541  unsigned long __cil_tmp18 ;
20542  struct usb_serial_port *__cil_tmp19 ;
20543  bool *__cil_tmp20 ;
20544  bool __cil_tmp21 ;
20545  char *__cil_tmp22 ;
20546  struct moschip_port *__cil_tmp23 ;
20547  unsigned long __cil_tmp24 ;
20548  unsigned long __cil_tmp25 ;
20549  unsigned long __cil_tmp26 ;
20550  unsigned long __cil_tmp27 ;
20551  char *__cil_tmp28 ;
20552  void const   *__cil_tmp29 ;
20553  unsigned long __cil_tmp30 ;
20554  unsigned long __cil_tmp31 ;
20555  struct usb_ctrlrequest *__cil_tmp32 ;
20556  void const   *__cil_tmp33 ;
20557  void const   *__cil_tmp34 ;
20558  unsigned long __cil_tmp35 ;
20559  unsigned long __cil_tmp36 ;
20560  unsigned char __cil_tmp37 ;
20561  int __cil_tmp38 ;
20562  bool *__cil_tmp39 ;
20563  bool __cil_tmp40 ;
20564  char *__cil_tmp41 ;
20565  char *__cil_tmp42 ;
20566
20567  {
20568  {
20569#line 2656
20570  __cil_tmp4 = & debug;
20571#line 2656
20572  __cil_tmp5 = *__cil_tmp4;
20573#line 2656
20574  if ((int )__cil_tmp5) {
20575    {
20576#line 2656
20577    __cil_tmp6 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20578#line 2656
20579    __cil_tmp7 = (char *)" release :entering..........";
20580#line 2656
20581    printk("<7>%s: %s\n", __cil_tmp6, __cil_tmp7);
20582    }
20583  } else {
20584
20585  }
20586  }
20587  {
20588#line 2658
20589  __cil_tmp8 = (struct usb_serial *)0;
20590#line 2658
20591  __cil_tmp9 = (unsigned long )__cil_tmp8;
20592#line 2658
20593  __cil_tmp10 = (unsigned long )serial;
20594#line 2658
20595  if (__cil_tmp10 == __cil_tmp9) {
20596    {
20597#line 2659
20598    __cil_tmp11 = & debug;
20599#line 2659
20600    __cil_tmp12 = *__cil_tmp11;
20601#line 2659
20602    if ((int )__cil_tmp12) {
20603      {
20604#line 2659
20605      __cil_tmp13 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20606#line 2659
20607      __cil_tmp14 = (char *)"Invalid Handler";
20608#line 2659
20609      printk("<7>%s: %s\n", __cil_tmp13, __cil_tmp14);
20610      }
20611    } else {
20612
20613    }
20614    }
20615#line 2660
20616    return;
20617  } else {
20618
20619  }
20620  }
20621#line 2668
20622  i = 0;
20623#line 2668
20624  goto ldv_28301;
20625  ldv_28300: 
20626  {
20627#line 2669
20628  __cil_tmp15 = i * 8UL;
20629#line 2669
20630  __cil_tmp16 = 32 + __cil_tmp15;
20631#line 2669
20632  __cil_tmp17 = (unsigned long )serial;
20633#line 2669
20634  __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
20635#line 2669
20636  __cil_tmp19 = *((struct usb_serial_port **)__cil_tmp18);
20637#line 2669
20638  mos7840_port = mos7840_get_port_private(__cil_tmp19);
20639  }
20640  {
20641#line 2670
20642  __cil_tmp20 = & debug;
20643#line 2670
20644  __cil_tmp21 = *__cil_tmp20;
20645#line 2670
20646  if ((int )__cil_tmp21) {
20647    {
20648#line 2670
20649    __cil_tmp22 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20650#line 2670
20651    printk("<7>%s: mos7840_port %d = %p\n", __cil_tmp22, i, mos7840_port);
20652    }
20653  } else {
20654
20655  }
20656  }
20657  {
20658#line 2671
20659  __cil_tmp23 = (struct moschip_port *)0;
20660#line 2671
20661  __cil_tmp24 = (unsigned long )__cil_tmp23;
20662#line 2671
20663  __cil_tmp25 = (unsigned long )mos7840_port;
20664#line 2671
20665  if (__cil_tmp25 != __cil_tmp24) {
20666    {
20667#line 2672
20668    __cil_tmp26 = (unsigned long )mos7840_port;
20669#line 2672
20670    __cil_tmp27 = __cil_tmp26 + 296;
20671#line 2672
20672    __cil_tmp28 = *((char **)__cil_tmp27);
20673#line 2672
20674    __cil_tmp29 = (void const   *)__cil_tmp28;
20675#line 2672
20676    kfree(__cil_tmp29);
20677#line 2673
20678    __cil_tmp30 = (unsigned long )mos7840_port;
20679#line 2673
20680    __cil_tmp31 = __cil_tmp30 + 288;
20681#line 2673
20682    __cil_tmp32 = *((struct usb_ctrlrequest **)__cil_tmp31);
20683#line 2673
20684    __cil_tmp33 = (void const   *)__cil_tmp32;
20685#line 2673
20686    kfree(__cil_tmp33);
20687#line 2674
20688    __cil_tmp34 = (void const   *)mos7840_port;
20689#line 2674
20690    kfree(__cil_tmp34);
20691    }
20692  } else {
20693
20694  }
20695  }
20696#line 2668
20697  i = i + 1;
20698  ldv_28301: ;
20699  {
20700#line 2668
20701  __cil_tmp35 = (unsigned long )serial;
20702#line 2668
20703  __cil_tmp36 = __cil_tmp35 + 26;
20704#line 2668
20705  __cil_tmp37 = *((unsigned char *)__cil_tmp36);
20706#line 2668
20707  __cil_tmp38 = (int )__cil_tmp37;
20708#line 2668
20709  if (__cil_tmp38 > i) {
20710#line 2669
20711    goto ldv_28300;
20712  } else {
20713#line 2671
20714    goto ldv_28302;
20715  }
20716  }
20717  ldv_28302: ;
20718  {
20719#line 2678
20720  __cil_tmp39 = & debug;
20721#line 2678
20722  __cil_tmp40 = *__cil_tmp39;
20723#line 2678
20724  if ((int )__cil_tmp40) {
20725    {
20726#line 2678
20727    __cil_tmp41 = (char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p";
20728#line 2678
20729    __cil_tmp42 = (char *)"Thank u :: ";
20730#line 2678
20731    printk("<7>%s: %s\n", __cil_tmp41, __cil_tmp42);
20732    }
20733  } else {
20734
20735  }
20736  }
20737#line 2679
20738  return;
20739}
20740}
20741#line 2749
20742extern void ldv_check_final_state(void) ;
20743#line 2752
20744extern void ldv_check_return_value(int  ) ;
20745#line 2755
20746extern void ldv_initialize(void) ;
20747#line 2758
20748extern int __VERIFIER_nondet_int(void) ;
20749#line 2761 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
20750int LDV_IN_INTERRUPT  ;
20751#line 2764 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
20752void main(void) 
20753{ struct tty_struct *var_group1 ;
20754  struct usb_serial_port *var_group2 ;
20755  int res_mos7840_open_18 ;
20756  unsigned char const   *var_mos7840_write_24_p2 ;
20757  int var_mos7840_write_24_p3 ;
20758  struct usb_serial *var_group3 ;
20759  unsigned int var_mos7840_ioctl_36_p1 ;
20760  unsigned long var_mos7840_ioctl_36_p2 ;
20761  struct ktermios *var_mos7840_set_termios_32_p2 ;
20762  int var_mos7840_break_22_p1 ;
20763  unsigned int var_mos7840_tiocmset_28_p1 ;
20764  unsigned int var_mos7840_tiocmset_28_p2 ;
20765  struct serial_icounter_struct *var_group4 ;
20766  struct urb *var_group5 ;
20767  int ldv_s_moschip7840_4port_device_usb_serial_driver ;
20768  int tmp ;
20769  int tmp___0 ;
20770
20771  {
20772  {
20773#line 5018
20774  ldv_s_moschip7840_4port_device_usb_serial_driver = 0;
20775#line 5008
20776  LDV_IN_INTERRUPT = 1;
20777#line 5017
20778  ldv_initialize();
20779  }
20780#line 5022
20781  goto ldv_28387;
20782  ldv_28386: 
20783  {
20784#line 5026
20785  tmp = __VERIFIER_nondet_int();
20786  }
20787#line 5028
20788  if (tmp == 0) {
20789#line 5028
20790    goto case_0;
20791  } else
20792#line 5155
20793  if (tmp == 1) {
20794#line 5155
20795    goto case_1;
20796  } else
20797#line 5282
20798  if (tmp == 2) {
20799#line 5282
20800    goto case_2;
20801  } else
20802#line 5406
20803  if (tmp == 3) {
20804#line 5406
20805    goto case_3;
20806  } else
20807#line 5530
20808  if (tmp == 4) {
20809#line 5530
20810    goto case_4;
20811  } else
20812#line 5654
20813  if (tmp == 5) {
20814#line 5654
20815    goto case_5;
20816  } else
20817#line 5776
20818  if (tmp == 6) {
20819#line 5776
20820    goto case_6;
20821  } else
20822#line 5900
20823  if (tmp == 7) {
20824#line 5900
20825    goto case_7;
20826  } else
20827#line 6024
20828  if (tmp == 8) {
20829#line 6024
20830    goto case_8;
20831  } else
20832#line 6148
20833  if (tmp == 9) {
20834#line 6148
20835    goto case_9;
20836  } else
20837#line 6272
20838  if (tmp == 10) {
20839#line 6272
20840    goto case_10;
20841  } else
20842#line 6396
20843  if (tmp == 11) {
20844#line 6396
20845    goto case_11;
20846  } else
20847#line 6520
20848  if (tmp == 12) {
20849#line 6520
20850    goto case_12;
20851  } else
20852#line 6644
20853  if (tmp == 13) {
20854#line 6644
20855    goto case_13;
20856  } else
20857#line 6768
20858  if (tmp == 14) {
20859#line 6768
20860    goto case_14;
20861  } else
20862#line 6892
20863  if (tmp == 15) {
20864#line 6892
20865    goto case_15;
20866  } else
20867#line 7016
20868  if (tmp == 16) {
20869#line 7016
20870    goto case_16;
20871  } else
20872#line 7140
20873  if (tmp == 17) {
20874#line 7140
20875    goto case_17;
20876  } else
20877#line 7264
20878  if (tmp == 18) {
20879#line 7264
20880    goto case_18;
20881  } else
20882#line 7388
20883  if (tmp == 19) {
20884#line 7388
20885    goto case_19;
20886  } else {
20887    {
20888#line 7512
20889    goto switch_default;
20890#line 5026
20891    if (0) {
20892      case_0: /* CIL Label */ ;
20893#line 5031
20894      if (ldv_s_moschip7840_4port_device_usb_serial_driver == 0) {
20895        {
20896#line 5132
20897        res_mos7840_open_18 = mos7840_open(var_group1, var_group2);
20898#line 5133
20899        ldv_check_return_value(res_mos7840_open_18);
20900        }
20901#line 5134
20902        if (res_mos7840_open_18 != 0) {
20903#line 5135
20904          goto ldv_module_exit;
20905        } else {
20906
20907        }
20908#line 5148
20909        ldv_s_moschip7840_4port_device_usb_serial_driver = ldv_s_moschip7840_4port_device_usb_serial_driver + 1;
20910      } else {
20911
20912      }
20913#line 5154
20914      goto ldv_28365;
20915      case_1: /* CIL Label */ ;
20916#line 5158
20917      if (ldv_s_moschip7840_4port_device_usb_serial_driver == 1) {
20918#line 5275
20919        ldv_s_moschip7840_4port_device_usb_serial_driver = ldv_s_moschip7840_4port_device_usb_serial_driver + 1;
20920      } else {
20921
20922      }
20923#line 5281
20924      goto ldv_28365;
20925      case_2: /* CIL Label */ ;
20926#line 5285
20927      if (ldv_s_moschip7840_4port_device_usb_serial_driver == 2) {
20928        {
20929#line 5386
20930        mos7840_close(var_group2);
20931#line 5399
20932        ldv_s_moschip7840_4port_device_usb_serial_driver = ldv_s_moschip7840_4port_device_usb_serial_driver + 1;
20933        }
20934      } else {
20935
20936      }
20937#line 5405
20938      goto ldv_28365;
20939      case_3: /* CIL Label */ ;
20940#line 5409
20941      if (ldv_s_moschip7840_4port_device_usb_serial_driver == 3) {
20942        {
20943#line 5518
20944        mos7840_release(var_group3);
20945#line 5523
20946        ldv_s_moschip7840_4port_device_usb_serial_driver = ldv_s_moschip7840_4port_device_usb_serial_driver + 1;
20947        }
20948      } else {
20949
20950      }
20951#line 5529
20952      goto ldv_28365;
20953      case_4: /* CIL Label */ ;
20954#line 5533
20955      if (ldv_s_moschip7840_4port_device_usb_serial_driver == 4) {
20956        {
20957#line 5642
20958        mos7840_disconnect(var_group3);
20959#line 5647
20960        ldv_s_moschip7840_4port_device_usb_serial_driver = 0;
20961        }
20962      } else {
20963
20964      }
20965#line 5653
20966      goto ldv_28365;
20967      case_5: /* CIL Label */ 
20968      {
20969#line 5758
20970      mos7840_write(var_group1, var_group2, var_mos7840_write_24_p2, var_mos7840_write_24_p3);
20971      }
20972#line 5775
20973      goto ldv_28365;
20974      case_6: /* CIL Label */ 
20975      {
20976#line 5880
20977      mos7840_write_room(var_group1);
20978      }
20979#line 5899
20980      goto ldv_28365;
20981      case_7: /* CIL Label */ 
20982      {
20983#line 6004
20984      mos7840_chars_in_buffer(var_group1);
20985      }
20986#line 6023
20987      goto ldv_28365;
20988      case_8: /* CIL Label */ 
20989      {
20990#line 6130
20991      mos7840_throttle(var_group1);
20992      }
20993#line 6147
20994      goto ldv_28365;
20995      case_9: /* CIL Label */ 
20996      {
20997#line 6254
20998      mos7840_unthrottle(var_group1);
20999      }
21000#line 6271
21001      goto ldv_28365;
21002      case_10: /* CIL Label */ 
21003      {
21004#line 6384
21005      mos7840_calc_num_ports(var_group3);
21006      }
21007#line 6395
21008      goto ldv_28365;
21009      case_11: /* CIL Label */ 
21010      {
21011#line 6508
21012      mos7840_ioctl(var_group1, var_mos7840_ioctl_36_p1, var_mos7840_ioctl_36_p2);
21013      }
21014#line 6519
21015      goto ldv_28365;
21016      case_12: /* CIL Label */ 
21017      {
21018#line 6632
21019      mos7840_set_termios(var_group1, var_group2, var_mos7840_set_termios_32_p2);
21020      }
21021#line 6643
21022      goto ldv_28365;
21023      case_13: /* CIL Label */ 
21024      {
21025#line 6748
21026      mos7840_break(var_group1, var_mos7840_break_22_p1);
21027      }
21028#line 6767
21029      goto ldv_28365;
21030      case_14: /* CIL Label */ 
21031      {
21032#line 6874
21033      mos7840_tiocmget(var_group1);
21034      }
21035#line 6891
21036      goto ldv_28365;
21037      case_15: /* CIL Label */ 
21038      {
21039#line 6998
21040      mos7840_tiocmset(var_group1, var_mos7840_tiocmset_28_p1, var_mos7840_tiocmset_28_p2);
21041      }
21042#line 7015
21043      goto ldv_28365;
21044      case_16: /* CIL Label */ 
21045      {
21046#line 7128
21047      mos7840_get_icount(var_group1, var_group4);
21048      }
21049#line 7139
21050      goto ldv_28365;
21051      case_17: /* CIL Label */ 
21052      {
21053#line 7252
21054      mos7840_startup(var_group3);
21055      }
21056#line 7263
21057      goto ldv_28365;
21058      case_18: /* CIL Label */ 
21059      {
21060#line 7366
21061      mos7840_bulk_in_callback(var_group5);
21062      }
21063#line 7387
21064      goto ldv_28365;
21065      case_19: /* CIL Label */ 
21066      {
21067#line 7490
21068      mos7840_interrupt_callback(var_group5);
21069      }
21070#line 7511
21071      goto ldv_28365;
21072      switch_default: /* CIL Label */ ;
21073#line 7512
21074      goto ldv_28365;
21075    } else {
21076      switch_break: /* CIL Label */ ;
21077    }
21078    }
21079  }
21080  ldv_28365: ;
21081  ldv_28387: 
21082  {
21083#line 5022
21084  tmp___0 = __VERIFIER_nondet_int();
21085  }
21086#line 5022
21087  if (tmp___0 != 0) {
21088#line 5024
21089    goto ldv_28386;
21090  } else
21091#line 5022
21092  if (ldv_s_moschip7840_4port_device_usb_serial_driver != 0) {
21093#line 5024
21094    goto ldv_28386;
21095  } else {
21096#line 5026
21097    goto ldv_28388;
21098  }
21099  ldv_28388: ;
21100  ldv_module_exit: ;
21101  {
21102#line 7521
21103  ldv_check_final_state();
21104  }
21105#line 7524
21106  return;
21107}
21108}
21109#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
21110void ldv_blast_assert(void) 
21111{ 
21112
21113  {
21114  ERROR: ;
21115#line 6
21116  goto ERROR;
21117}
21118}
21119#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
21120extern int __VERIFIER_nondet_int(void) ;
21121#line 7545 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21122int ldv_spin  =    0;
21123#line 7549 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21124void ldv_check_alloc_flags(gfp_t flags ) 
21125{ 
21126
21127  {
21128#line 7552
21129  if (ldv_spin != 0) {
21130#line 7552
21131    if (flags != 32U) {
21132      {
21133#line 7552
21134      ldv_blast_assert();
21135      }
21136    } else {
21137
21138    }
21139  } else {
21140
21141  }
21142#line 7555
21143  return;
21144}
21145}
21146#line 7555
21147extern struct page *ldv_some_page(void) ;
21148#line 7558 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21149struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) 
21150{ struct page *tmp ;
21151
21152  {
21153#line 7561
21154  if (ldv_spin != 0) {
21155#line 7561
21156    if (flags != 32U) {
21157      {
21158#line 7561
21159      ldv_blast_assert();
21160      }
21161    } else {
21162
21163    }
21164  } else {
21165
21166  }
21167  {
21168#line 7563
21169  tmp = ldv_some_page();
21170  }
21171#line 7563
21172  return (tmp);
21173}
21174}
21175#line 7567 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21176void ldv_check_alloc_nonatomic(void) 
21177{ 
21178
21179  {
21180#line 7570
21181  if (ldv_spin != 0) {
21182    {
21183#line 7570
21184    ldv_blast_assert();
21185    }
21186  } else {
21187
21188  }
21189#line 7573
21190  return;
21191}
21192}
21193#line 7574 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21194void ldv_spin_lock(void) 
21195{ 
21196
21197  {
21198#line 7577
21199  ldv_spin = 1;
21200#line 7578
21201  return;
21202}
21203}
21204#line 7581 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21205void ldv_spin_unlock(void) 
21206{ 
21207
21208  {
21209#line 7584
21210  ldv_spin = 0;
21211#line 7585
21212  return;
21213}
21214}
21215#line 7588 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21216int ldv_spin_trylock(void) 
21217{ int is_lock ;
21218
21219  {
21220  {
21221#line 7593
21222  is_lock = __VERIFIER_nondet_int();
21223  }
21224#line 7595
21225  if (is_lock != 0) {
21226#line 7598
21227    return (0);
21228  } else {
21229#line 7603
21230    ldv_spin = 1;
21231#line 7605
21232    return (1);
21233  }
21234}
21235}
21236#line 7609 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21237__inline static void spin_lock(spinlock_t *lock ) 
21238{ 
21239
21240  {
21241  {
21242#line 7614
21243  ldv_spin_lock();
21244#line 7616
21245  ldv_spin_lock_1(lock);
21246  }
21247#line 7617
21248  return;
21249}
21250}
21251#line 7651 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21252__inline static void spin_unlock(spinlock_t *lock ) 
21253{ 
21254
21255  {
21256  {
21257#line 7656
21258  ldv_spin_unlock();
21259#line 7658
21260  ldv_spin_unlock_5(lock);
21261  }
21262#line 7659
21263  return;
21264}
21265}
21266#line 7681 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21267__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) 
21268{ 
21269
21270  {
21271  {
21272#line 7687
21273  ldv_spin_unlock();
21274#line 7689
21275  ldv_spin_unlock_irqrestore_8(lock, flags);
21276  }
21277#line 7690
21278  return;
21279}
21280}
21281#line 7727 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21282__inline static void *kmalloc(size_t size , gfp_t flags ) 
21283{ 
21284
21285  {
21286  {
21287#line 7733
21288  ldv_check_alloc_flags(flags);
21289#line 7735
21290  ldv_kmalloc_12(size, flags);
21291  }
21292#line 7736
21293  return ((void *)0);
21294}
21295}
21296#line 7772 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21297void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21298{ 
21299
21300  {
21301  {
21302#line 7778
21303  ldv_check_alloc_flags(ldv_func_arg2);
21304#line 7780
21305  kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
21306  }
21307#line 7781
21308  return ((void *)0);
21309}
21310}
21311#line 7783 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21312__inline static void *kzalloc(size_t size , gfp_t flags ) 
21313{ void *tmp ;
21314
21315  {
21316  {
21317#line 7789
21318  ldv_check_alloc_flags(flags);
21319#line 7790
21320  tmp = __VERIFIER_nondet_pointer();
21321  }
21322#line 7790
21323  return (tmp);
21324}
21325}
21326#line 7804 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21327int ldv_usb_submit_urb_19(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21328{ int tmp ;
21329
21330  {
21331  {
21332#line 7810
21333  ldv_check_alloc_flags(ldv_func_arg2);
21334#line 7812
21335  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21336  }
21337#line 7812
21338  return (tmp);
21339}
21340}
21341#line 7815 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21342int ldv_usb_submit_urb_20(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21343{ int tmp ;
21344
21345  {
21346  {
21347#line 7821
21348  ldv_check_alloc_flags(ldv_func_arg2);
21349#line 7823
21350  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21351  }
21352#line 7823
21353  return (tmp);
21354}
21355}
21356#line 7826 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21357int ldv_usb_submit_urb_21(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21358{ int tmp ;
21359
21360  {
21361  {
21362#line 7832
21363  ldv_check_alloc_flags(ldv_func_arg2);
21364#line 7834
21365  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21366  }
21367#line 7834
21368  return (tmp);
21369}
21370}
21371#line 7837 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21372int ldv_usb_submit_urb_22(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21373{ int tmp ;
21374
21375  {
21376  {
21377#line 7843
21378  ldv_check_alloc_flags(ldv_func_arg2);
21379#line 7845
21380  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21381  }
21382#line 7845
21383  return (tmp);
21384}
21385}
21386#line 7848 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21387struct urb *ldv_usb_alloc_urb_23(int ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21388{ struct urb *tmp ;
21389
21390  {
21391  {
21392#line 7854
21393  ldv_check_alloc_flags(ldv_func_arg2);
21394#line 7856
21395  tmp = usb_alloc_urb(ldv_func_arg1, ldv_func_arg2);
21396  }
21397#line 7856
21398  return (tmp);
21399}
21400}
21401#line 7859 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21402int ldv_usb_submit_urb_24(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21403{ int tmp ;
21404
21405  {
21406  {
21407#line 7865
21408  ldv_check_alloc_flags(ldv_func_arg2);
21409#line 7867
21410  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21411  }
21412#line 7867
21413  return (tmp);
21414}
21415}
21416#line 7870 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21417int ldv_usb_submit_urb_25(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21418{ int tmp ;
21419
21420  {
21421  {
21422#line 7876
21423  ldv_check_alloc_flags(ldv_func_arg2);
21424#line 7878
21425  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21426  }
21427#line 7878
21428  return (tmp);
21429}
21430}
21431#line 7881 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21432int ldv_usb_submit_urb_26(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21433{ int tmp ;
21434
21435  {
21436  {
21437#line 7887
21438  ldv_check_alloc_flags(ldv_func_arg2);
21439#line 7889
21440  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21441  }
21442#line 7889
21443  return (tmp);
21444}
21445}
21446#line 7892 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21447int ldv_usb_submit_urb_27(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21448{ int tmp ;
21449
21450  {
21451  {
21452#line 7898
21453  ldv_check_alloc_flags(ldv_func_arg2);
21454#line 7900
21455  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21456  }
21457#line 7900
21458  return (tmp);
21459}
21460}
21461#line 7903 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21462int ldv_usb_submit_urb_28(struct urb *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21463{ int tmp ;
21464
21465  {
21466  {
21467#line 7909
21468  ldv_check_alloc_flags(ldv_func_arg2);
21469#line 7911
21470  tmp = usb_submit_urb(ldv_func_arg1, ldv_func_arg2);
21471  }
21472#line 7911
21473  return (tmp);
21474}
21475}
21476#line 7914 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/1819/dscv_tempdir/dscv/ri/43_1a/drivers/usb/serial/mos7840.c.p"
21477struct urb *ldv_usb_alloc_urb_29(int ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
21478{ struct urb *tmp ;
21479
21480  {
21481  {
21482#line 7920
21483  ldv_check_alloc_flags(ldv_func_arg2);
21484#line 7922
21485  tmp = usb_alloc_urb(ldv_func_arg1, ldv_func_arg2);
21486  }
21487#line 7922
21488  return (tmp);
21489}
21490}