Showing error 694

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-linux-3.4/32_1_cilled_safe_ok_nondet_linux-3.4-32_1-drivers--usb--serial--spcp8x5.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 8869
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 219 "include/linux/types.h"
 101struct __anonstruct_atomic_t_7 {
 102   int counter ;
 103};
 104#line 219 "include/linux/types.h"
 105typedef struct __anonstruct_atomic_t_7 atomic_t;
 106#line 224 "include/linux/types.h"
 107struct __anonstruct_atomic64_t_8 {
 108   long counter ;
 109};
 110#line 224 "include/linux/types.h"
 111typedef struct __anonstruct_atomic64_t_8 atomic64_t;
 112#line 229 "include/linux/types.h"
 113struct list_head {
 114   struct list_head *next ;
 115   struct list_head *prev ;
 116};
 117#line 233
 118struct hlist_node;
 119#line 233 "include/linux/types.h"
 120struct hlist_head {
 121   struct hlist_node *first ;
 122};
 123#line 237 "include/linux/types.h"
 124struct hlist_node {
 125   struct hlist_node *next ;
 126   struct hlist_node **pprev ;
 127};
 128#line 253 "include/linux/types.h"
 129struct rcu_head {
 130   struct rcu_head *next ;
 131   void (*func)(struct rcu_head *head ) ;
 132};
 133#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 134struct module;
 135#line 56
 136struct module;
 137#line 146 "include/linux/init.h"
 138typedef void (*ctor_fn_t)(void);
 139#line 9 "include/linux/dynamic_debug.h"
 140struct _ddebug {
 141   char const   *modname ;
 142   char const   *function ;
 143   char const   *filename ;
 144   char const   *format ;
 145   unsigned int lineno : 18 ;
 146   unsigned int flags : 8 ;
 147} __attribute__((__aligned__(8))) ;
 148#line 47
 149struct device;
 150#line 47
 151struct device;
 152#line 135 "include/linux/kernel.h"
 153struct completion;
 154#line 135
 155struct completion;
 156#line 136
 157struct pt_regs;
 158#line 136
 159struct pt_regs;
 160#line 349
 161struct pid;
 162#line 349
 163struct pid;
 164#line 12 "include/linux/thread_info.h"
 165struct timespec;
 166#line 12
 167struct timespec;
 168#line 13
 169struct compat_timespec;
 170#line 13
 171struct compat_timespec;
 172#line 18 "include/linux/thread_info.h"
 173struct __anonstruct_futex_11 {
 174   u32 *uaddr ;
 175   u32 val ;
 176   u32 flags ;
 177   u32 bitset ;
 178   u64 time ;
 179   u32 *uaddr2 ;
 180};
 181#line 18 "include/linux/thread_info.h"
 182struct __anonstruct_nanosleep_12 {
 183   clockid_t clockid ;
 184   struct timespec *rmtp ;
 185   struct compat_timespec *compat_rmtp ;
 186   u64 expires ;
 187};
 188#line 18
 189struct pollfd;
 190#line 18 "include/linux/thread_info.h"
 191struct __anonstruct_poll_13 {
 192   struct pollfd *ufds ;
 193   int nfds ;
 194   int has_timeout ;
 195   unsigned long tv_sec ;
 196   unsigned long tv_nsec ;
 197};
 198#line 18 "include/linux/thread_info.h"
 199union __anonunion____missing_field_name_10 {
 200   struct __anonstruct_futex_11 futex ;
 201   struct __anonstruct_nanosleep_12 nanosleep ;
 202   struct __anonstruct_poll_13 poll ;
 203};
 204#line 18 "include/linux/thread_info.h"
 205struct restart_block {
 206   long (*fn)(struct restart_block * ) ;
 207   union __anonunion____missing_field_name_10 __annonCompField4 ;
 208};
 209#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
 210struct page;
 211#line 18
 212struct page;
 213#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 214struct task_struct;
 215#line 20
 216struct task_struct;
 217#line 21
 218struct exec_domain;
 219#line 21
 220struct exec_domain;
 221#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 222struct task_struct;
 223#line 8
 224struct mm_struct;
 225#line 8
 226struct mm_struct;
 227#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 228struct pt_regs {
 229   unsigned long r15 ;
 230   unsigned long r14 ;
 231   unsigned long r13 ;
 232   unsigned long r12 ;
 233   unsigned long bp ;
 234   unsigned long bx ;
 235   unsigned long r11 ;
 236   unsigned long r10 ;
 237   unsigned long r9 ;
 238   unsigned long r8 ;
 239   unsigned long ax ;
 240   unsigned long cx ;
 241   unsigned long dx ;
 242   unsigned long si ;
 243   unsigned long di ;
 244   unsigned long orig_ax ;
 245   unsigned long ip ;
 246   unsigned long cs ;
 247   unsigned long flags ;
 248   unsigned long sp ;
 249   unsigned long ss ;
 250};
 251#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 252struct __anonstruct____missing_field_name_15 {
 253   unsigned int a ;
 254   unsigned int b ;
 255};
 256#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 257struct __anonstruct____missing_field_name_16 {
 258   u16 limit0 ;
 259   u16 base0 ;
 260   unsigned int base1 : 8 ;
 261   unsigned int type : 4 ;
 262   unsigned int s : 1 ;
 263   unsigned int dpl : 2 ;
 264   unsigned int p : 1 ;
 265   unsigned int limit : 4 ;
 266   unsigned int avl : 1 ;
 267   unsigned int l : 1 ;
 268   unsigned int d : 1 ;
 269   unsigned int g : 1 ;
 270   unsigned int base2 : 8 ;
 271};
 272#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 273union __anonunion____missing_field_name_14 {
 274   struct __anonstruct____missing_field_name_15 __annonCompField5 ;
 275   struct __anonstruct____missing_field_name_16 __annonCompField6 ;
 276};
 277#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 278struct desc_struct {
 279   union __anonunion____missing_field_name_14 __annonCompField7 ;
 280} __attribute__((__packed__)) ;
 281#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 282typedef unsigned long pgdval_t;
 283#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 284typedef unsigned long pgprotval_t;
 285#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 286struct pgprot {
 287   pgprotval_t pgprot ;
 288};
 289#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 290typedef struct pgprot pgprot_t;
 291#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 292struct __anonstruct_pgd_t_20 {
 293   pgdval_t pgd ;
 294};
 295#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 296typedef struct __anonstruct_pgd_t_20 pgd_t;
 297#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 298typedef struct page *pgtable_t;
 299#line 295
 300struct file;
 301#line 295
 302struct file;
 303#line 313
 304struct seq_file;
 305#line 313
 306struct seq_file;
 307#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 308struct page;
 309#line 47
 310struct thread_struct;
 311#line 47
 312struct thread_struct;
 313#line 50
 314struct mm_struct;
 315#line 51
 316struct desc_struct;
 317#line 52
 318struct task_struct;
 319#line 53
 320struct cpumask;
 321#line 53
 322struct cpumask;
 323#line 329
 324struct arch_spinlock;
 325#line 329
 326struct arch_spinlock;
 327#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 328struct task_struct;
 329#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
 330struct kernel_vm86_regs {
 331   struct pt_regs pt ;
 332   unsigned short es ;
 333   unsigned short __esh ;
 334   unsigned short ds ;
 335   unsigned short __dsh ;
 336   unsigned short fs ;
 337   unsigned short __fsh ;
 338   unsigned short gs ;
 339   unsigned short __gsh ;
 340};
 341#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 342union __anonunion____missing_field_name_24 {
 343   struct pt_regs *regs ;
 344   struct kernel_vm86_regs *vm86 ;
 345};
 346#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 347struct math_emu_info {
 348   long ___orig_eip ;
 349   union __anonunion____missing_field_name_24 __annonCompField8 ;
 350};
 351#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 352struct task_struct;
 353#line 10 "include/asm-generic/bug.h"
 354struct bug_entry {
 355   int bug_addr_disp ;
 356   int file_disp ;
 357   unsigned short line ;
 358   unsigned short flags ;
 359};
 360#line 12 "include/linux/bug.h"
 361struct pt_regs;
 362#line 14 "include/linux/cpumask.h"
 363struct cpumask {
 364   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 365};
 366#line 14 "include/linux/cpumask.h"
 367typedef struct cpumask cpumask_t;
 368#line 637 "include/linux/cpumask.h"
 369typedef struct cpumask *cpumask_var_t;
 370#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 371struct static_key;
 372#line 234
 373struct static_key;
 374#line 10 "include/linux/personality.h"
 375struct exec_domain;
 376#line 11
 377struct pt_regs;
 378#line 92
 379struct map_segment;
 380#line 92 "include/linux/personality.h"
 381struct exec_domain {
 382   char const   *name ;
 383   void (*handler)(int  , struct pt_regs * ) ;
 384   unsigned char pers_low ;
 385   unsigned char pers_high ;
 386   unsigned long *signal_map ;
 387   unsigned long *signal_invmap ;
 388   struct map_segment *err_map ;
 389   struct map_segment *socktype_map ;
 390   struct map_segment *sockopt_map ;
 391   struct map_segment *af_map ;
 392   struct module *module ;
 393   struct exec_domain *next ;
 394};
 395#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 396struct i387_fsave_struct {
 397   u32 cwd ;
 398   u32 swd ;
 399   u32 twd ;
 400   u32 fip ;
 401   u32 fcs ;
 402   u32 foo ;
 403   u32 fos ;
 404   u32 st_space[20] ;
 405   u32 status ;
 406};
 407#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 408struct __anonstruct____missing_field_name_31 {
 409   u64 rip ;
 410   u64 rdp ;
 411};
 412#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 413struct __anonstruct____missing_field_name_32 {
 414   u32 fip ;
 415   u32 fcs ;
 416   u32 foo ;
 417   u32 fos ;
 418};
 419#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 420union __anonunion____missing_field_name_30 {
 421   struct __anonstruct____missing_field_name_31 __annonCompField12 ;
 422   struct __anonstruct____missing_field_name_32 __annonCompField13 ;
 423};
 424#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 425union __anonunion____missing_field_name_33 {
 426   u32 padding1[12] ;
 427   u32 sw_reserved[12] ;
 428};
 429#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 430struct i387_fxsave_struct {
 431   u16 cwd ;
 432   u16 swd ;
 433   u16 twd ;
 434   u16 fop ;
 435   union __anonunion____missing_field_name_30 __annonCompField14 ;
 436   u32 mxcsr ;
 437   u32 mxcsr_mask ;
 438   u32 st_space[32] ;
 439   u32 xmm_space[64] ;
 440   u32 padding[12] ;
 441   union __anonunion____missing_field_name_33 __annonCompField15 ;
 442} __attribute__((__aligned__(16))) ;
 443#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 444struct i387_soft_struct {
 445   u32 cwd ;
 446   u32 swd ;
 447   u32 twd ;
 448   u32 fip ;
 449   u32 fcs ;
 450   u32 foo ;
 451   u32 fos ;
 452   u32 st_space[20] ;
 453   u8 ftop ;
 454   u8 changed ;
 455   u8 lookahead ;
 456   u8 no_update ;
 457   u8 rm ;
 458   u8 alimit ;
 459   struct math_emu_info *info ;
 460   u32 entry_eip ;
 461};
 462#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 463struct ymmh_struct {
 464   u32 ymmh_space[64] ;
 465};
 466#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 467struct xsave_hdr_struct {
 468   u64 xstate_bv ;
 469   u64 reserved1[2] ;
 470   u64 reserved2[5] ;
 471} __attribute__((__packed__)) ;
 472#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 473struct xsave_struct {
 474   struct i387_fxsave_struct i387 ;
 475   struct xsave_hdr_struct xsave_hdr ;
 476   struct ymmh_struct ymmh ;
 477} __attribute__((__packed__, __aligned__(64))) ;
 478#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 479union thread_xstate {
 480   struct i387_fsave_struct fsave ;
 481   struct i387_fxsave_struct fxsave ;
 482   struct i387_soft_struct soft ;
 483   struct xsave_struct xsave ;
 484};
 485#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 486struct fpu {
 487   unsigned int last_cpu ;
 488   unsigned int has_fpu ;
 489   union thread_xstate *state ;
 490};
 491#line 433
 492struct kmem_cache;
 493#line 435
 494struct perf_event;
 495#line 435
 496struct perf_event;
 497#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 498struct thread_struct {
 499   struct desc_struct tls_array[3] ;
 500   unsigned long sp0 ;
 501   unsigned long sp ;
 502   unsigned long usersp ;
 503   unsigned short es ;
 504   unsigned short ds ;
 505   unsigned short fsindex ;
 506   unsigned short gsindex ;
 507   unsigned long fs ;
 508   unsigned long gs ;
 509   struct perf_event *ptrace_bps[4] ;
 510   unsigned long debugreg6 ;
 511   unsigned long ptrace_dr7 ;
 512   unsigned long cr2 ;
 513   unsigned long trap_nr ;
 514   unsigned long error_code ;
 515   struct fpu fpu ;
 516   unsigned long *io_bitmap_ptr ;
 517   unsigned long iopl ;
 518   unsigned int io_bitmap_max ;
 519};
 520#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 521struct __anonstruct_mm_segment_t_35 {
 522   unsigned long seg ;
 523};
 524#line 569 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 525typedef struct __anonstruct_mm_segment_t_35 mm_segment_t;
 526#line 23 "include/asm-generic/atomic-long.h"
 527typedef atomic64_t atomic_long_t;
 528#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 529struct thread_info {
 530   struct task_struct *task ;
 531   struct exec_domain *exec_domain ;
 532   __u32 flags ;
 533   __u32 status ;
 534   __u32 cpu ;
 535   int preempt_count ;
 536   mm_segment_t addr_limit ;
 537   struct restart_block restart_block ;
 538   void *sysenter_return ;
 539   unsigned int sig_on_uaccess_error : 1 ;
 540   unsigned int uaccess_err : 1 ;
 541};
 542#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 543typedef u16 __ticket_t;
 544#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 545typedef u32 __ticketpair_t;
 546#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 547struct __raw_tickets {
 548   __ticket_t head ;
 549   __ticket_t tail ;
 550};
 551#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 552union __anonunion____missing_field_name_36 {
 553   __ticketpair_t head_tail ;
 554   struct __raw_tickets tickets ;
 555};
 556#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 557struct arch_spinlock {
 558   union __anonunion____missing_field_name_36 __annonCompField17 ;
 559};
 560#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 561typedef struct arch_spinlock arch_spinlock_t;
 562#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 563struct __anonstruct____missing_field_name_38 {
 564   u32 read ;
 565   s32 write ;
 566};
 567#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 568union __anonunion_arch_rwlock_t_37 {
 569   s64 lock ;
 570   struct __anonstruct____missing_field_name_38 __annonCompField18 ;
 571};
 572#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 573typedef union __anonunion_arch_rwlock_t_37 arch_rwlock_t;
 574#line 12 "include/linux/lockdep.h"
 575struct task_struct;
 576#line 391 "include/linux/lockdep.h"
 577struct lock_class_key {
 578
 579};
 580#line 20 "include/linux/spinlock_types.h"
 581struct raw_spinlock {
 582   arch_spinlock_t raw_lock ;
 583   unsigned int magic ;
 584   unsigned int owner_cpu ;
 585   void *owner ;
 586};
 587#line 20 "include/linux/spinlock_types.h"
 588typedef struct raw_spinlock raw_spinlock_t;
 589#line 64 "include/linux/spinlock_types.h"
 590union __anonunion____missing_field_name_39 {
 591   struct raw_spinlock rlock ;
 592};
 593#line 64 "include/linux/spinlock_types.h"
 594struct spinlock {
 595   union __anonunion____missing_field_name_39 __annonCompField19 ;
 596};
 597#line 64 "include/linux/spinlock_types.h"
 598typedef struct spinlock spinlock_t;
 599#line 11 "include/linux/rwlock_types.h"
 600struct __anonstruct_rwlock_t_40 {
 601   arch_rwlock_t raw_lock ;
 602   unsigned int magic ;
 603   unsigned int owner_cpu ;
 604   void *owner ;
 605};
 606#line 11 "include/linux/rwlock_types.h"
 607typedef struct __anonstruct_rwlock_t_40 rwlock_t;
 608#line 49 "include/linux/wait.h"
 609struct __wait_queue_head {
 610   spinlock_t lock ;
 611   struct list_head task_list ;
 612};
 613#line 53 "include/linux/wait.h"
 614typedef struct __wait_queue_head wait_queue_head_t;
 615#line 55
 616struct task_struct;
 617#line 119 "include/linux/seqlock.h"
 618struct seqcount {
 619   unsigned int sequence ;
 620};
 621#line 119 "include/linux/seqlock.h"
 622typedef struct seqcount seqcount_t;
 623#line 98 "include/linux/nodemask.h"
 624struct __anonstruct_nodemask_t_42 {
 625   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 626};
 627#line 98 "include/linux/nodemask.h"
 628typedef struct __anonstruct_nodemask_t_42 nodemask_t;
 629#line 60 "include/linux/pageblock-flags.h"
 630struct page;
 631#line 48 "include/linux/mutex.h"
 632struct mutex {
 633   atomic_t count ;
 634   spinlock_t wait_lock ;
 635   struct list_head wait_list ;
 636   struct task_struct *owner ;
 637   char const   *name ;
 638   void *magic ;
 639};
 640#line 69 "include/linux/mutex.h"
 641struct mutex_waiter {
 642   struct list_head list ;
 643   struct task_struct *task ;
 644   void *magic ;
 645};
 646#line 19 "include/linux/rwsem.h"
 647struct rw_semaphore;
 648#line 19
 649struct rw_semaphore;
 650#line 25 "include/linux/rwsem.h"
 651struct rw_semaphore {
 652   long count ;
 653   raw_spinlock_t wait_lock ;
 654   struct list_head wait_list ;
 655};
 656#line 25 "include/linux/completion.h"
 657struct completion {
 658   unsigned int done ;
 659   wait_queue_head_t wait ;
 660};
 661#line 9 "include/linux/memory_hotplug.h"
 662struct page;
 663#line 202 "include/linux/ioport.h"
 664struct device;
 665#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
 666struct device;
 667#line 14 "include/linux/time.h"
 668struct timespec {
 669   __kernel_time_t tv_sec ;
 670   long tv_nsec ;
 671};
 672#line 46 "include/linux/ktime.h"
 673union ktime {
 674   s64 tv64 ;
 675};
 676#line 59 "include/linux/ktime.h"
 677typedef union ktime ktime_t;
 678#line 10 "include/linux/timer.h"
 679struct tvec_base;
 680#line 10
 681struct tvec_base;
 682#line 12 "include/linux/timer.h"
 683struct timer_list {
 684   struct list_head entry ;
 685   unsigned long expires ;
 686   struct tvec_base *base ;
 687   void (*function)(unsigned long  ) ;
 688   unsigned long data ;
 689   int slack ;
 690   int start_pid ;
 691   void *start_site ;
 692   char start_comm[16] ;
 693};
 694#line 289
 695struct hrtimer;
 696#line 289
 697struct hrtimer;
 698#line 290
 699enum hrtimer_restart;
 700#line 17 "include/linux/workqueue.h"
 701struct work_struct;
 702#line 17
 703struct work_struct;
 704#line 79 "include/linux/workqueue.h"
 705struct work_struct {
 706   atomic_long_t data ;
 707   struct list_head entry ;
 708   void (*func)(struct work_struct *work ) ;
 709};
 710#line 92 "include/linux/workqueue.h"
 711struct delayed_work {
 712   struct work_struct work ;
 713   struct timer_list timer ;
 714};
 715#line 42 "include/linux/pm.h"
 716struct device;
 717#line 50 "include/linux/pm.h"
 718struct pm_message {
 719   int event ;
 720};
 721#line 50 "include/linux/pm.h"
 722typedef struct pm_message pm_message_t;
 723#line 264 "include/linux/pm.h"
 724struct dev_pm_ops {
 725   int (*prepare)(struct device *dev ) ;
 726   void (*complete)(struct device *dev ) ;
 727   int (*suspend)(struct device *dev ) ;
 728   int (*resume)(struct device *dev ) ;
 729   int (*freeze)(struct device *dev ) ;
 730   int (*thaw)(struct device *dev ) ;
 731   int (*poweroff)(struct device *dev ) ;
 732   int (*restore)(struct device *dev ) ;
 733   int (*suspend_late)(struct device *dev ) ;
 734   int (*resume_early)(struct device *dev ) ;
 735   int (*freeze_late)(struct device *dev ) ;
 736   int (*thaw_early)(struct device *dev ) ;
 737   int (*poweroff_late)(struct device *dev ) ;
 738   int (*restore_early)(struct device *dev ) ;
 739   int (*suspend_noirq)(struct device *dev ) ;
 740   int (*resume_noirq)(struct device *dev ) ;
 741   int (*freeze_noirq)(struct device *dev ) ;
 742   int (*thaw_noirq)(struct device *dev ) ;
 743   int (*poweroff_noirq)(struct device *dev ) ;
 744   int (*restore_noirq)(struct device *dev ) ;
 745   int (*runtime_suspend)(struct device *dev ) ;
 746   int (*runtime_resume)(struct device *dev ) ;
 747   int (*runtime_idle)(struct device *dev ) ;
 748};
 749#line 458
 750enum rpm_status {
 751    RPM_ACTIVE = 0,
 752    RPM_RESUMING = 1,
 753    RPM_SUSPENDED = 2,
 754    RPM_SUSPENDING = 3
 755} ;
 756#line 480
 757enum rpm_request {
 758    RPM_REQ_NONE = 0,
 759    RPM_REQ_IDLE = 1,
 760    RPM_REQ_SUSPEND = 2,
 761    RPM_REQ_AUTOSUSPEND = 3,
 762    RPM_REQ_RESUME = 4
 763} ;
 764#line 488
 765struct wakeup_source;
 766#line 488
 767struct wakeup_source;
 768#line 495 "include/linux/pm.h"
 769struct pm_subsys_data {
 770   spinlock_t lock ;
 771   unsigned int refcount ;
 772};
 773#line 506
 774struct dev_pm_qos_request;
 775#line 506
 776struct pm_qos_constraints;
 777#line 506 "include/linux/pm.h"
 778struct dev_pm_info {
 779   pm_message_t power_state ;
 780   unsigned int can_wakeup : 1 ;
 781   unsigned int async_suspend : 1 ;
 782   bool is_prepared : 1 ;
 783   bool is_suspended : 1 ;
 784   bool ignore_children : 1 ;
 785   spinlock_t lock ;
 786   struct list_head entry ;
 787   struct completion completion ;
 788   struct wakeup_source *wakeup ;
 789   bool wakeup_path : 1 ;
 790   struct timer_list suspend_timer ;
 791   unsigned long timer_expires ;
 792   struct work_struct work ;
 793   wait_queue_head_t wait_queue ;
 794   atomic_t usage_count ;
 795   atomic_t child_count ;
 796   unsigned int disable_depth : 3 ;
 797   unsigned int idle_notification : 1 ;
 798   unsigned int request_pending : 1 ;
 799   unsigned int deferred_resume : 1 ;
 800   unsigned int run_wake : 1 ;
 801   unsigned int runtime_auto : 1 ;
 802   unsigned int no_callbacks : 1 ;
 803   unsigned int irq_safe : 1 ;
 804   unsigned int use_autosuspend : 1 ;
 805   unsigned int timer_autosuspends : 1 ;
 806   enum rpm_request request ;
 807   enum rpm_status runtime_status ;
 808   int runtime_error ;
 809   int autosuspend_delay ;
 810   unsigned long last_busy ;
 811   unsigned long active_jiffies ;
 812   unsigned long suspended_jiffies ;
 813   unsigned long accounting_timestamp ;
 814   ktime_t suspend_time ;
 815   s64 max_time_suspended_ns ;
 816   struct dev_pm_qos_request *pq_req ;
 817   struct pm_subsys_data *subsys_data ;
 818   struct pm_qos_constraints *constraints ;
 819};
 820#line 564 "include/linux/pm.h"
 821struct dev_pm_domain {
 822   struct dev_pm_ops ops ;
 823};
 824#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 825struct __anonstruct_mm_context_t_112 {
 826   void *ldt ;
 827   int size ;
 828   unsigned short ia32_compat ;
 829   struct mutex lock ;
 830   void *vdso ;
 831};
 832#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
 833typedef struct __anonstruct_mm_context_t_112 mm_context_t;
 834#line 8 "include/linux/vmalloc.h"
 835struct vm_area_struct;
 836#line 8
 837struct vm_area_struct;
 838#line 994 "include/linux/mmzone.h"
 839struct page;
 840#line 10 "include/linux/gfp.h"
 841struct vm_area_struct;
 842#line 20 "include/linux/kobject_ns.h"
 843struct sock;
 844#line 20
 845struct sock;
 846#line 21
 847struct kobject;
 848#line 21
 849struct kobject;
 850#line 27
 851enum kobj_ns_type {
 852    KOBJ_NS_TYPE_NONE = 0,
 853    KOBJ_NS_TYPE_NET = 1,
 854    KOBJ_NS_TYPES = 2
 855} ;
 856#line 40 "include/linux/kobject_ns.h"
 857struct kobj_ns_type_operations {
 858   enum kobj_ns_type type ;
 859   void *(*grab_current_ns)(void) ;
 860   void const   *(*netlink_ns)(struct sock *sk ) ;
 861   void const   *(*initial_ns)(void) ;
 862   void (*drop_ns)(void * ) ;
 863};
 864#line 22 "include/linux/sysfs.h"
 865struct kobject;
 866#line 23
 867struct module;
 868#line 24
 869enum kobj_ns_type;
 870#line 26 "include/linux/sysfs.h"
 871struct attribute {
 872   char const   *name ;
 873   umode_t mode ;
 874};
 875#line 56 "include/linux/sysfs.h"
 876struct attribute_group {
 877   char const   *name ;
 878   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 879   struct attribute **attrs ;
 880};
 881#line 85
 882struct file;
 883#line 86
 884struct vm_area_struct;
 885#line 88 "include/linux/sysfs.h"
 886struct bin_attribute {
 887   struct attribute attr ;
 888   size_t size ;
 889   void *private ;
 890   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 891                   loff_t  , size_t  ) ;
 892   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 893                    loff_t  , size_t  ) ;
 894   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 895};
 896#line 112 "include/linux/sysfs.h"
 897struct sysfs_ops {
 898   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 899   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 900   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 901};
 902#line 118
 903struct sysfs_dirent;
 904#line 118
 905struct sysfs_dirent;
 906#line 22 "include/linux/kref.h"
 907struct kref {
 908   atomic_t refcount ;
 909};
 910#line 60 "include/linux/kobject.h"
 911struct kset;
 912#line 60
 913struct kobj_type;
 914#line 60 "include/linux/kobject.h"
 915struct kobject {
 916   char const   *name ;
 917   struct list_head entry ;
 918   struct kobject *parent ;
 919   struct kset *kset ;
 920   struct kobj_type *ktype ;
 921   struct sysfs_dirent *sd ;
 922   struct kref kref ;
 923   unsigned int state_initialized : 1 ;
 924   unsigned int state_in_sysfs : 1 ;
 925   unsigned int state_add_uevent_sent : 1 ;
 926   unsigned int state_remove_uevent_sent : 1 ;
 927   unsigned int uevent_suppress : 1 ;
 928};
 929#line 108 "include/linux/kobject.h"
 930struct kobj_type {
 931   void (*release)(struct kobject *kobj ) ;
 932   struct sysfs_ops  const  *sysfs_ops ;
 933   struct attribute **default_attrs ;
 934   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 935   void const   *(*namespace)(struct kobject *kobj ) ;
 936};
 937#line 116 "include/linux/kobject.h"
 938struct kobj_uevent_env {
 939   char *envp[32] ;
 940   int envp_idx ;
 941   char buf[2048] ;
 942   int buflen ;
 943};
 944#line 123 "include/linux/kobject.h"
 945struct kset_uevent_ops {
 946   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 947   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 948   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 949};
 950#line 140
 951struct sock;
 952#line 159 "include/linux/kobject.h"
 953struct kset {
 954   struct list_head list ;
 955   spinlock_t list_lock ;
 956   struct kobject kobj ;
 957   struct kset_uevent_ops  const  *uevent_ops ;
 958};
 959#line 46 "include/linux/slub_def.h"
 960struct kmem_cache_cpu {
 961   void **freelist ;
 962   unsigned long tid ;
 963   struct page *page ;
 964   struct page *partial ;
 965   int node ;
 966   unsigned int stat[26] ;
 967};
 968#line 57 "include/linux/slub_def.h"
 969struct kmem_cache_node {
 970   spinlock_t list_lock ;
 971   unsigned long nr_partial ;
 972   struct list_head partial ;
 973   atomic_long_t nr_slabs ;
 974   atomic_long_t total_objects ;
 975   struct list_head full ;
 976};
 977#line 73 "include/linux/slub_def.h"
 978struct kmem_cache_order_objects {
 979   unsigned long x ;
 980};
 981#line 80 "include/linux/slub_def.h"
 982struct kmem_cache {
 983   struct kmem_cache_cpu *cpu_slab ;
 984   unsigned long flags ;
 985   unsigned long min_partial ;
 986   int size ;
 987   int objsize ;
 988   int offset ;
 989   int cpu_partial ;
 990   struct kmem_cache_order_objects oo ;
 991   struct kmem_cache_order_objects max ;
 992   struct kmem_cache_order_objects min ;
 993   gfp_t allocflags ;
 994   int refcount ;
 995   void (*ctor)(void * ) ;
 996   int inuse ;
 997   int align ;
 998   int reserved ;
 999   char const   *name ;
1000   struct list_head list ;
1001   struct kobject kobj ;
1002   int remote_node_defrag_ratio ;
1003   struct kmem_cache_node *node[1 << 10] ;
1004};
1005#line 15 "include/linux/blk_types.h"
1006struct page;
1007#line 16
1008struct block_device;
1009#line 16
1010struct block_device;
1011#line 33 "include/linux/list_bl.h"
1012struct hlist_bl_node;
1013#line 33 "include/linux/list_bl.h"
1014struct hlist_bl_head {
1015   struct hlist_bl_node *first ;
1016};
1017#line 37 "include/linux/list_bl.h"
1018struct hlist_bl_node {
1019   struct hlist_bl_node *next ;
1020   struct hlist_bl_node **pprev ;
1021};
1022#line 13 "include/linux/dcache.h"
1023struct nameidata;
1024#line 13
1025struct nameidata;
1026#line 14
1027struct path;
1028#line 14
1029struct path;
1030#line 15
1031struct vfsmount;
1032#line 15
1033struct vfsmount;
1034#line 35 "include/linux/dcache.h"
1035struct qstr {
1036   unsigned int hash ;
1037   unsigned int len ;
1038   unsigned char const   *name ;
1039};
1040#line 88
1041struct inode;
1042#line 88
1043struct dentry_operations;
1044#line 88
1045struct super_block;
1046#line 88 "include/linux/dcache.h"
1047union __anonunion_d_u_139 {
1048   struct list_head d_child ;
1049   struct rcu_head d_rcu ;
1050};
1051#line 88 "include/linux/dcache.h"
1052struct dentry {
1053   unsigned int d_flags ;
1054   seqcount_t d_seq ;
1055   struct hlist_bl_node d_hash ;
1056   struct dentry *d_parent ;
1057   struct qstr d_name ;
1058   struct inode *d_inode ;
1059   unsigned char d_iname[32] ;
1060   unsigned int d_count ;
1061   spinlock_t d_lock ;
1062   struct dentry_operations  const  *d_op ;
1063   struct super_block *d_sb ;
1064   unsigned long d_time ;
1065   void *d_fsdata ;
1066   struct list_head d_lru ;
1067   union __anonunion_d_u_139 d_u ;
1068   struct list_head d_subdirs ;
1069   struct list_head d_alias ;
1070};
1071#line 131 "include/linux/dcache.h"
1072struct dentry_operations {
1073   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1074   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
1075   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
1076                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
1077   int (*d_delete)(struct dentry  const  * ) ;
1078   void (*d_release)(struct dentry * ) ;
1079   void (*d_prune)(struct dentry * ) ;
1080   void (*d_iput)(struct dentry * , struct inode * ) ;
1081   char *(*d_dname)(struct dentry * , char * , int  ) ;
1082   struct vfsmount *(*d_automount)(struct path * ) ;
1083   int (*d_manage)(struct dentry * , bool  ) ;
1084} __attribute__((__aligned__((1) <<  (6) ))) ;
1085#line 4 "include/linux/path.h"
1086struct dentry;
1087#line 5
1088struct vfsmount;
1089#line 7 "include/linux/path.h"
1090struct path {
1091   struct vfsmount *mnt ;
1092   struct dentry *dentry ;
1093};
1094#line 62 "include/linux/stat.h"
1095struct kstat {
1096   u64 ino ;
1097   dev_t dev ;
1098   umode_t mode ;
1099   unsigned int nlink ;
1100   uid_t uid ;
1101   gid_t gid ;
1102   dev_t rdev ;
1103   loff_t size ;
1104   struct timespec atime ;
1105   struct timespec mtime ;
1106   struct timespec ctime ;
1107   unsigned long blksize ;
1108   unsigned long long blocks ;
1109};
1110#line 64 "include/linux/radix-tree.h"
1111struct radix_tree_node;
1112#line 64 "include/linux/radix-tree.h"
1113struct radix_tree_root {
1114   unsigned int height ;
1115   gfp_t gfp_mask ;
1116   struct radix_tree_node *rnode ;
1117};
1118#line 14 "include/linux/prio_tree.h"
1119struct prio_tree_node;
1120#line 14 "include/linux/prio_tree.h"
1121struct raw_prio_tree_node {
1122   struct prio_tree_node *left ;
1123   struct prio_tree_node *right ;
1124   struct prio_tree_node *parent ;
1125};
1126#line 20 "include/linux/prio_tree.h"
1127struct prio_tree_node {
1128   struct prio_tree_node *left ;
1129   struct prio_tree_node *right ;
1130   struct prio_tree_node *parent ;
1131   unsigned long start ;
1132   unsigned long last ;
1133};
1134#line 28 "include/linux/prio_tree.h"
1135struct prio_tree_root {
1136   struct prio_tree_node *prio_tree_node ;
1137   unsigned short index_bits ;
1138   unsigned short raw ;
1139};
1140#line 6 "include/linux/pid.h"
1141enum pid_type {
1142    PIDTYPE_PID = 0,
1143    PIDTYPE_PGID = 1,
1144    PIDTYPE_SID = 2,
1145    PIDTYPE_MAX = 3
1146} ;
1147#line 50
1148struct pid_namespace;
1149#line 50 "include/linux/pid.h"
1150struct upid {
1151   int nr ;
1152   struct pid_namespace *ns ;
1153   struct hlist_node pid_chain ;
1154};
1155#line 57 "include/linux/pid.h"
1156struct pid {
1157   atomic_t count ;
1158   unsigned int level ;
1159   struct hlist_head tasks[3] ;
1160   struct rcu_head rcu ;
1161   struct upid numbers[1] ;
1162};
1163#line 69 "include/linux/pid.h"
1164struct pid_link {
1165   struct hlist_node node ;
1166   struct pid *pid ;
1167};
1168#line 100
1169struct pid_namespace;
1170#line 18 "include/linux/capability.h"
1171struct task_struct;
1172#line 94 "include/linux/capability.h"
1173struct kernel_cap_struct {
1174   __u32 cap[2] ;
1175};
1176#line 94 "include/linux/capability.h"
1177typedef struct kernel_cap_struct kernel_cap_t;
1178#line 377
1179struct dentry;
1180#line 378
1181struct user_namespace;
1182#line 378
1183struct user_namespace;
1184#line 16 "include/linux/fiemap.h"
1185struct fiemap_extent {
1186   __u64 fe_logical ;
1187   __u64 fe_physical ;
1188   __u64 fe_length ;
1189   __u64 fe_reserved64[2] ;
1190   __u32 fe_flags ;
1191   __u32 fe_reserved[3] ;
1192};
1193#line 8 "include/linux/shrinker.h"
1194struct shrink_control {
1195   gfp_t gfp_mask ;
1196   unsigned long nr_to_scan ;
1197};
1198#line 31 "include/linux/shrinker.h"
1199struct shrinker {
1200   int (*shrink)(struct shrinker * , struct shrink_control *sc ) ;
1201   int seeks ;
1202   long batch ;
1203   struct list_head list ;
1204   atomic_long_t nr_in_batch ;
1205};
1206#line 10 "include/linux/migrate_mode.h"
1207enum migrate_mode {
1208    MIGRATE_ASYNC = 0,
1209    MIGRATE_SYNC_LIGHT = 1,
1210    MIGRATE_SYNC = 2
1211} ;
1212#line 408 "include/linux/fs.h"
1213struct export_operations;
1214#line 408
1215struct export_operations;
1216#line 410
1217struct iovec;
1218#line 410
1219struct iovec;
1220#line 411
1221struct nameidata;
1222#line 412
1223struct kiocb;
1224#line 412
1225struct kiocb;
1226#line 413
1227struct kobject;
1228#line 414
1229struct pipe_inode_info;
1230#line 414
1231struct pipe_inode_info;
1232#line 415
1233struct poll_table_struct;
1234#line 415
1235struct poll_table_struct;
1236#line 416
1237struct kstatfs;
1238#line 416
1239struct kstatfs;
1240#line 417
1241struct vm_area_struct;
1242#line 418
1243struct vfsmount;
1244#line 419
1245struct cred;
1246#line 419
1247struct cred;
1248#line 469 "include/linux/fs.h"
1249struct iattr {
1250   unsigned int ia_valid ;
1251   umode_t ia_mode ;
1252   uid_t ia_uid ;
1253   gid_t ia_gid ;
1254   loff_t ia_size ;
1255   struct timespec ia_atime ;
1256   struct timespec ia_mtime ;
1257   struct timespec ia_ctime ;
1258   struct file *ia_file ;
1259};
1260#line 129 "include/linux/quota.h"
1261struct if_dqinfo {
1262   __u64 dqi_bgrace ;
1263   __u64 dqi_igrace ;
1264   __u32 dqi_flags ;
1265   __u32 dqi_valid ;
1266};
1267#line 50 "include/linux/dqblk_xfs.h"
1268struct fs_disk_quota {
1269   __s8 d_version ;
1270   __s8 d_flags ;
1271   __u16 d_fieldmask ;
1272   __u32 d_id ;
1273   __u64 d_blk_hardlimit ;
1274   __u64 d_blk_softlimit ;
1275   __u64 d_ino_hardlimit ;
1276   __u64 d_ino_softlimit ;
1277   __u64 d_bcount ;
1278   __u64 d_icount ;
1279   __s32 d_itimer ;
1280   __s32 d_btimer ;
1281   __u16 d_iwarns ;
1282   __u16 d_bwarns ;
1283   __s32 d_padding2 ;
1284   __u64 d_rtb_hardlimit ;
1285   __u64 d_rtb_softlimit ;
1286   __u64 d_rtbcount ;
1287   __s32 d_rtbtimer ;
1288   __u16 d_rtbwarns ;
1289   __s16 d_padding3 ;
1290   char d_padding4[8] ;
1291};
1292#line 146 "include/linux/dqblk_xfs.h"
1293struct fs_qfilestat {
1294   __u64 qfs_ino ;
1295   __u64 qfs_nblks ;
1296   __u32 qfs_nextents ;
1297};
1298#line 146 "include/linux/dqblk_xfs.h"
1299typedef struct fs_qfilestat fs_qfilestat_t;
1300#line 152 "include/linux/dqblk_xfs.h"
1301struct fs_quota_stat {
1302   __s8 qs_version ;
1303   __u16 qs_flags ;
1304   __s8 qs_pad ;
1305   fs_qfilestat_t qs_uquota ;
1306   fs_qfilestat_t qs_gquota ;
1307   __u32 qs_incoredqs ;
1308   __s32 qs_btimelimit ;
1309   __s32 qs_itimelimit ;
1310   __s32 qs_rtbtimelimit ;
1311   __u16 qs_bwarnlimit ;
1312   __u16 qs_iwarnlimit ;
1313};
1314#line 17 "include/linux/dqblk_qtree.h"
1315struct dquot;
1316#line 17
1317struct dquot;
1318#line 185 "include/linux/quota.h"
1319typedef __kernel_uid32_t qid_t;
1320#line 186 "include/linux/quota.h"
1321typedef long long qsize_t;
1322#line 200 "include/linux/quota.h"
1323struct mem_dqblk {
1324   qsize_t dqb_bhardlimit ;
1325   qsize_t dqb_bsoftlimit ;
1326   qsize_t dqb_curspace ;
1327   qsize_t dqb_rsvspace ;
1328   qsize_t dqb_ihardlimit ;
1329   qsize_t dqb_isoftlimit ;
1330   qsize_t dqb_curinodes ;
1331   time_t dqb_btime ;
1332   time_t dqb_itime ;
1333};
1334#line 215
1335struct quota_format_type;
1336#line 215
1337struct quota_format_type;
1338#line 217 "include/linux/quota.h"
1339struct mem_dqinfo {
1340   struct quota_format_type *dqi_format ;
1341   int dqi_fmt_id ;
1342   struct list_head dqi_dirty_list ;
1343   unsigned long dqi_flags ;
1344   unsigned int dqi_bgrace ;
1345   unsigned int dqi_igrace ;
1346   qsize_t dqi_maxblimit ;
1347   qsize_t dqi_maxilimit ;
1348   void *dqi_priv ;
1349};
1350#line 230
1351struct super_block;
1352#line 288 "include/linux/quota.h"
1353struct dquot {
1354   struct hlist_node dq_hash ;
1355   struct list_head dq_inuse ;
1356   struct list_head dq_free ;
1357   struct list_head dq_dirty ;
1358   struct mutex dq_lock ;
1359   atomic_t dq_count ;
1360   wait_queue_head_t dq_wait_unused ;
1361   struct super_block *dq_sb ;
1362   unsigned int dq_id ;
1363   loff_t dq_off ;
1364   unsigned long dq_flags ;
1365   short dq_type ;
1366   struct mem_dqblk dq_dqb ;
1367};
1368#line 305 "include/linux/quota.h"
1369struct quota_format_ops {
1370   int (*check_quota_file)(struct super_block *sb , int type ) ;
1371   int (*read_file_info)(struct super_block *sb , int type ) ;
1372   int (*write_file_info)(struct super_block *sb , int type ) ;
1373   int (*free_file_info)(struct super_block *sb , int type ) ;
1374   int (*read_dqblk)(struct dquot *dquot ) ;
1375   int (*commit_dqblk)(struct dquot *dquot ) ;
1376   int (*release_dqblk)(struct dquot *dquot ) ;
1377};
1378#line 316 "include/linux/quota.h"
1379struct dquot_operations {
1380   int (*write_dquot)(struct dquot * ) ;
1381   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
1382   void (*destroy_dquot)(struct dquot * ) ;
1383   int (*acquire_dquot)(struct dquot * ) ;
1384   int (*release_dquot)(struct dquot * ) ;
1385   int (*mark_dirty)(struct dquot * ) ;
1386   int (*write_info)(struct super_block * , int  ) ;
1387   qsize_t *(*get_reserved_space)(struct inode * ) ;
1388};
1389#line 329
1390struct path;
1391#line 332 "include/linux/quota.h"
1392struct quotactl_ops {
1393   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
1394   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
1395   int (*quota_off)(struct super_block * , int  ) ;
1396   int (*quota_sync)(struct super_block * , int  , int  ) ;
1397   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1398   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1399   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1400   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1401   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1402   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
1403};
1404#line 345 "include/linux/quota.h"
1405struct quota_format_type {
1406   int qf_fmt_id ;
1407   struct quota_format_ops  const  *qf_ops ;
1408   struct module *qf_owner ;
1409   struct quota_format_type *qf_next ;
1410};
1411#line 399 "include/linux/quota.h"
1412struct quota_info {
1413   unsigned int flags ;
1414   struct mutex dqio_mutex ;
1415   struct mutex dqonoff_mutex ;
1416   struct rw_semaphore dqptr_sem ;
1417   struct inode *files[2] ;
1418   struct mem_dqinfo info[2] ;
1419   struct quota_format_ops  const  *ops[2] ;
1420};
1421#line 532 "include/linux/fs.h"
1422struct page;
1423#line 533
1424struct address_space;
1425#line 533
1426struct address_space;
1427#line 534
1428struct writeback_control;
1429#line 534
1430struct writeback_control;
1431#line 577 "include/linux/fs.h"
1432union __anonunion_arg_147 {
1433   char *buf ;
1434   void *data ;
1435};
1436#line 577 "include/linux/fs.h"
1437struct __anonstruct_read_descriptor_t_146 {
1438   size_t written ;
1439   size_t count ;
1440   union __anonunion_arg_147 arg ;
1441   int error ;
1442};
1443#line 577 "include/linux/fs.h"
1444typedef struct __anonstruct_read_descriptor_t_146 read_descriptor_t;
1445#line 590 "include/linux/fs.h"
1446struct address_space_operations {
1447   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
1448   int (*readpage)(struct file * , struct page * ) ;
1449   int (*writepages)(struct address_space * , struct writeback_control * ) ;
1450   int (*set_page_dirty)(struct page *page ) ;
1451   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
1452                    unsigned int nr_pages ) ;
1453   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
1454                      unsigned int len , unsigned int flags , struct page **pagep ,
1455                      void **fsdata ) ;
1456   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
1457                    unsigned int copied , struct page *page , void *fsdata ) ;
1458   sector_t (*bmap)(struct address_space * , sector_t  ) ;
1459   void (*invalidatepage)(struct page * , unsigned long  ) ;
1460   int (*releasepage)(struct page * , gfp_t  ) ;
1461   void (*freepage)(struct page * ) ;
1462   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  *iov , loff_t offset ,
1463                        unsigned long nr_segs ) ;
1464   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
1465   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
1466   int (*launder_page)(struct page * ) ;
1467   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
1468   int (*error_remove_page)(struct address_space * , struct page * ) ;
1469};
1470#line 645
1471struct backing_dev_info;
1472#line 645
1473struct backing_dev_info;
1474#line 646 "include/linux/fs.h"
1475struct address_space {
1476   struct inode *host ;
1477   struct radix_tree_root page_tree ;
1478   spinlock_t tree_lock ;
1479   unsigned int i_mmap_writable ;
1480   struct prio_tree_root i_mmap ;
1481   struct list_head i_mmap_nonlinear ;
1482   struct mutex i_mmap_mutex ;
1483   unsigned long nrpages ;
1484   unsigned long writeback_index ;
1485   struct address_space_operations  const  *a_ops ;
1486   unsigned long flags ;
1487   struct backing_dev_info *backing_dev_info ;
1488   spinlock_t private_lock ;
1489   struct list_head private_list ;
1490   struct address_space *assoc_mapping ;
1491} __attribute__((__aligned__(sizeof(long )))) ;
1492#line 669
1493struct request_queue;
1494#line 669
1495struct request_queue;
1496#line 671
1497struct hd_struct;
1498#line 671
1499struct gendisk;
1500#line 671 "include/linux/fs.h"
1501struct block_device {
1502   dev_t bd_dev ;
1503   int bd_openers ;
1504   struct inode *bd_inode ;
1505   struct super_block *bd_super ;
1506   struct mutex bd_mutex ;
1507   struct list_head bd_inodes ;
1508   void *bd_claiming ;
1509   void *bd_holder ;
1510   int bd_holders ;
1511   bool bd_write_holder ;
1512   struct list_head bd_holder_disks ;
1513   struct block_device *bd_contains ;
1514   unsigned int bd_block_size ;
1515   struct hd_struct *bd_part ;
1516   unsigned int bd_part_count ;
1517   int bd_invalidated ;
1518   struct gendisk *bd_disk ;
1519   struct request_queue *bd_queue ;
1520   struct list_head bd_list ;
1521   unsigned long bd_private ;
1522   int bd_fsfreeze_count ;
1523   struct mutex bd_fsfreeze_mutex ;
1524};
1525#line 749
1526struct posix_acl;
1527#line 749
1528struct posix_acl;
1529#line 761
1530struct inode_operations;
1531#line 761 "include/linux/fs.h"
1532union __anonunion____missing_field_name_148 {
1533   unsigned int const   i_nlink ;
1534   unsigned int __i_nlink ;
1535};
1536#line 761 "include/linux/fs.h"
1537union __anonunion____missing_field_name_149 {
1538   struct list_head i_dentry ;
1539   struct rcu_head i_rcu ;
1540};
1541#line 761
1542struct file_operations;
1543#line 761
1544struct file_lock;
1545#line 761
1546struct cdev;
1547#line 761 "include/linux/fs.h"
1548union __anonunion____missing_field_name_150 {
1549   struct pipe_inode_info *i_pipe ;
1550   struct block_device *i_bdev ;
1551   struct cdev *i_cdev ;
1552};
1553#line 761 "include/linux/fs.h"
1554struct inode {
1555   umode_t i_mode ;
1556   unsigned short i_opflags ;
1557   uid_t i_uid ;
1558   gid_t i_gid ;
1559   unsigned int i_flags ;
1560   struct posix_acl *i_acl ;
1561   struct posix_acl *i_default_acl ;
1562   struct inode_operations  const  *i_op ;
1563   struct super_block *i_sb ;
1564   struct address_space *i_mapping ;
1565   void *i_security ;
1566   unsigned long i_ino ;
1567   union __anonunion____missing_field_name_148 __annonCompField30 ;
1568   dev_t i_rdev ;
1569   struct timespec i_atime ;
1570   struct timespec i_mtime ;
1571   struct timespec i_ctime ;
1572   spinlock_t i_lock ;
1573   unsigned short i_bytes ;
1574   blkcnt_t i_blocks ;
1575   loff_t i_size ;
1576   unsigned long i_state ;
1577   struct mutex i_mutex ;
1578   unsigned long dirtied_when ;
1579   struct hlist_node i_hash ;
1580   struct list_head i_wb_list ;
1581   struct list_head i_lru ;
1582   struct list_head i_sb_list ;
1583   union __anonunion____missing_field_name_149 __annonCompField31 ;
1584   atomic_t i_count ;
1585   unsigned int i_blkbits ;
1586   u64 i_version ;
1587   atomic_t i_dio_count ;
1588   atomic_t i_writecount ;
1589   struct file_operations  const  *i_fop ;
1590   struct file_lock *i_flock ;
1591   struct address_space i_data ;
1592   struct dquot *i_dquot[2] ;
1593   struct list_head i_devices ;
1594   union __anonunion____missing_field_name_150 __annonCompField32 ;
1595   __u32 i_generation ;
1596   __u32 i_fsnotify_mask ;
1597   struct hlist_head i_fsnotify_marks ;
1598   atomic_t i_readcount ;
1599   void *i_private ;
1600};
1601#line 942 "include/linux/fs.h"
1602struct fown_struct {
1603   rwlock_t lock ;
1604   struct pid *pid ;
1605   enum pid_type pid_type ;
1606   uid_t uid ;
1607   uid_t euid ;
1608   int signum ;
1609};
1610#line 953 "include/linux/fs.h"
1611struct file_ra_state {
1612   unsigned long start ;
1613   unsigned int size ;
1614   unsigned int async_size ;
1615   unsigned int ra_pages ;
1616   unsigned int mmap_miss ;
1617   loff_t prev_pos ;
1618};
1619#line 976 "include/linux/fs.h"
1620union __anonunion_f_u_151 {
1621   struct list_head fu_list ;
1622   struct rcu_head fu_rcuhead ;
1623};
1624#line 976 "include/linux/fs.h"
1625struct file {
1626   union __anonunion_f_u_151 f_u ;
1627   struct path f_path ;
1628   struct file_operations  const  *f_op ;
1629   spinlock_t f_lock ;
1630   int f_sb_list_cpu ;
1631   atomic_long_t f_count ;
1632   unsigned int f_flags ;
1633   fmode_t f_mode ;
1634   loff_t f_pos ;
1635   struct fown_struct f_owner ;
1636   struct cred  const  *f_cred ;
1637   struct file_ra_state f_ra ;
1638   u64 f_version ;
1639   void *f_security ;
1640   void *private_data ;
1641   struct list_head f_ep_links ;
1642   struct list_head f_tfile_llink ;
1643   struct address_space *f_mapping ;
1644   unsigned long f_mnt_write_state ;
1645};
1646#line 1111
1647struct files_struct;
1648#line 1111 "include/linux/fs.h"
1649typedef struct files_struct *fl_owner_t;
1650#line 1113 "include/linux/fs.h"
1651struct file_lock_operations {
1652   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1653   void (*fl_release_private)(struct file_lock * ) ;
1654};
1655#line 1118 "include/linux/fs.h"
1656struct lock_manager_operations {
1657   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1658   void (*lm_notify)(struct file_lock * ) ;
1659   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
1660   void (*lm_release_private)(struct file_lock * ) ;
1661   void (*lm_break)(struct file_lock * ) ;
1662   int (*lm_change)(struct file_lock ** , int  ) ;
1663};
1664#line 4 "include/linux/nfs_fs_i.h"
1665struct nlm_lockowner;
1666#line 4
1667struct nlm_lockowner;
1668#line 9 "include/linux/nfs_fs_i.h"
1669struct nfs_lock_info {
1670   u32 state ;
1671   struct nlm_lockowner *owner ;
1672   struct list_head list ;
1673};
1674#line 15
1675struct nfs4_lock_state;
1676#line 15
1677struct nfs4_lock_state;
1678#line 16 "include/linux/nfs_fs_i.h"
1679struct nfs4_lock_info {
1680   struct nfs4_lock_state *owner ;
1681};
1682#line 1138 "include/linux/fs.h"
1683struct fasync_struct;
1684#line 1138 "include/linux/fs.h"
1685struct __anonstruct_afs_153 {
1686   struct list_head link ;
1687   int state ;
1688};
1689#line 1138 "include/linux/fs.h"
1690union __anonunion_fl_u_152 {
1691   struct nfs_lock_info nfs_fl ;
1692   struct nfs4_lock_info nfs4_fl ;
1693   struct __anonstruct_afs_153 afs ;
1694};
1695#line 1138 "include/linux/fs.h"
1696struct file_lock {
1697   struct file_lock *fl_next ;
1698   struct list_head fl_link ;
1699   struct list_head fl_block ;
1700   fl_owner_t fl_owner ;
1701   unsigned int fl_flags ;
1702   unsigned char fl_type ;
1703   unsigned int fl_pid ;
1704   struct pid *fl_nspid ;
1705   wait_queue_head_t fl_wait ;
1706   struct file *fl_file ;
1707   loff_t fl_start ;
1708   loff_t fl_end ;
1709   struct fasync_struct *fl_fasync ;
1710   unsigned long fl_break_time ;
1711   unsigned long fl_downgrade_time ;
1712   struct file_lock_operations  const  *fl_ops ;
1713   struct lock_manager_operations  const  *fl_lmops ;
1714   union __anonunion_fl_u_152 fl_u ;
1715};
1716#line 1378 "include/linux/fs.h"
1717struct fasync_struct {
1718   spinlock_t fa_lock ;
1719   int magic ;
1720   int fa_fd ;
1721   struct fasync_struct *fa_next ;
1722   struct file *fa_file ;
1723   struct rcu_head fa_rcu ;
1724};
1725#line 1418
1726struct file_system_type;
1727#line 1418
1728struct super_operations;
1729#line 1418
1730struct xattr_handler;
1731#line 1418
1732struct mtd_info;
1733#line 1418 "include/linux/fs.h"
1734struct super_block {
1735   struct list_head s_list ;
1736   dev_t s_dev ;
1737   unsigned char s_dirt ;
1738   unsigned char s_blocksize_bits ;
1739   unsigned long s_blocksize ;
1740   loff_t s_maxbytes ;
1741   struct file_system_type *s_type ;
1742   struct super_operations  const  *s_op ;
1743   struct dquot_operations  const  *dq_op ;
1744   struct quotactl_ops  const  *s_qcop ;
1745   struct export_operations  const  *s_export_op ;
1746   unsigned long s_flags ;
1747   unsigned long s_magic ;
1748   struct dentry *s_root ;
1749   struct rw_semaphore s_umount ;
1750   struct mutex s_lock ;
1751   int s_count ;
1752   atomic_t s_active ;
1753   void *s_security ;
1754   struct xattr_handler  const  **s_xattr ;
1755   struct list_head s_inodes ;
1756   struct hlist_bl_head s_anon ;
1757   struct list_head *s_files ;
1758   struct list_head s_mounts ;
1759   struct list_head s_dentry_lru ;
1760   int s_nr_dentry_unused ;
1761   spinlock_t s_inode_lru_lock  __attribute__((__aligned__((1) <<  (6) ))) ;
1762   struct list_head s_inode_lru ;
1763   int s_nr_inodes_unused ;
1764   struct block_device *s_bdev ;
1765   struct backing_dev_info *s_bdi ;
1766   struct mtd_info *s_mtd ;
1767   struct hlist_node s_instances ;
1768   struct quota_info s_dquot ;
1769   int s_frozen ;
1770   wait_queue_head_t s_wait_unfrozen ;
1771   char s_id[32] ;
1772   u8 s_uuid[16] ;
1773   void *s_fs_info ;
1774   unsigned int s_max_links ;
1775   fmode_t s_mode ;
1776   u32 s_time_gran ;
1777   struct mutex s_vfs_rename_mutex ;
1778   char *s_subtype ;
1779   char *s_options ;
1780   struct dentry_operations  const  *s_d_op ;
1781   int cleancache_poolid ;
1782   struct shrinker s_shrink ;
1783   atomic_long_t s_remove_count ;
1784   int s_readonly_remount ;
1785};
1786#line 1567 "include/linux/fs.h"
1787struct fiemap_extent_info {
1788   unsigned int fi_flags ;
1789   unsigned int fi_extents_mapped ;
1790   unsigned int fi_extents_max ;
1791   struct fiemap_extent *fi_extents_start ;
1792};
1793#line 1609 "include/linux/fs.h"
1794struct file_operations {
1795   struct module *owner ;
1796   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
1797   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
1798   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
1799   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1800                       loff_t  ) ;
1801   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1802                        loff_t  ) ;
1803   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
1804                                                   loff_t  , u64  , unsigned int  ) ) ;
1805   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1806   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1807   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1808   int (*mmap)(struct file * , struct vm_area_struct * ) ;
1809   int (*open)(struct inode * , struct file * ) ;
1810   int (*flush)(struct file * , fl_owner_t id ) ;
1811   int (*release)(struct inode * , struct file * ) ;
1812   int (*fsync)(struct file * , loff_t  , loff_t  , int datasync ) ;
1813   int (*aio_fsync)(struct kiocb * , int datasync ) ;
1814   int (*fasync)(int  , struct file * , int  ) ;
1815   int (*lock)(struct file * , int  , struct file_lock * ) ;
1816   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
1817                       int  ) ;
1818   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
1819                                      unsigned long  , unsigned long  ) ;
1820   int (*check_flags)(int  ) ;
1821   int (*flock)(struct file * , int  , struct file_lock * ) ;
1822   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
1823                           unsigned int  ) ;
1824   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
1825                          unsigned int  ) ;
1826   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
1827   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
1828};
1829#line 1639 "include/linux/fs.h"
1830struct inode_operations {
1831   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1832   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1833   int (*permission)(struct inode * , int  ) ;
1834   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
1835   int (*readlink)(struct dentry * , char * , int  ) ;
1836   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1837   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
1838   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1839   int (*unlink)(struct inode * , struct dentry * ) ;
1840   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
1841   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
1842   int (*rmdir)(struct inode * , struct dentry * ) ;
1843   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
1844   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1845   void (*truncate)(struct inode * ) ;
1846   int (*setattr)(struct dentry * , struct iattr * ) ;
1847   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
1848   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
1849   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
1850   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
1851   int (*removexattr)(struct dentry * , char const   * ) ;
1852   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
1853   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
1854} __attribute__((__aligned__((1) <<  (6) ))) ;
1855#line 1669
1856struct seq_file;
1857#line 1684 "include/linux/fs.h"
1858struct super_operations {
1859   struct inode *(*alloc_inode)(struct super_block *sb ) ;
1860   void (*destroy_inode)(struct inode * ) ;
1861   void (*dirty_inode)(struct inode * , int flags ) ;
1862   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
1863   int (*drop_inode)(struct inode * ) ;
1864   void (*evict_inode)(struct inode * ) ;
1865   void (*put_super)(struct super_block * ) ;
1866   void (*write_super)(struct super_block * ) ;
1867   int (*sync_fs)(struct super_block *sb , int wait ) ;
1868   int (*freeze_fs)(struct super_block * ) ;
1869   int (*unfreeze_fs)(struct super_block * ) ;
1870   int (*statfs)(struct dentry * , struct kstatfs * ) ;
1871   int (*remount_fs)(struct super_block * , int * , char * ) ;
1872   void (*umount_begin)(struct super_block * ) ;
1873   int (*show_options)(struct seq_file * , struct dentry * ) ;
1874   int (*show_devname)(struct seq_file * , struct dentry * ) ;
1875   int (*show_path)(struct seq_file * , struct dentry * ) ;
1876   int (*show_stats)(struct seq_file * , struct dentry * ) ;
1877   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
1878   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
1879                          loff_t  ) ;
1880   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
1881   int (*nr_cached_objects)(struct super_block * ) ;
1882   void (*free_cached_objects)(struct super_block * , int  ) ;
1883};
1884#line 1835 "include/linux/fs.h"
1885struct file_system_type {
1886   char const   *name ;
1887   int fs_flags ;
1888   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
1889   void (*kill_sb)(struct super_block * ) ;
1890   struct module *owner ;
1891   struct file_system_type *next ;
1892   struct hlist_head fs_supers ;
1893   struct lock_class_key s_lock_key ;
1894   struct lock_class_key s_umount_key ;
1895   struct lock_class_key s_vfs_rename_key ;
1896   struct lock_class_key i_lock_key ;
1897   struct lock_class_key i_mutex_key ;
1898   struct lock_class_key i_mutex_dir_key ;
1899};
1900#line 6 "include/asm-generic/termbits.h"
1901typedef unsigned char cc_t;
1902#line 7 "include/asm-generic/termbits.h"
1903typedef unsigned int speed_t;
1904#line 8 "include/asm-generic/termbits.h"
1905typedef unsigned int tcflag_t;
1906#line 31 "include/asm-generic/termbits.h"
1907struct ktermios {
1908   tcflag_t c_iflag ;
1909   tcflag_t c_oflag ;
1910   tcflag_t c_cflag ;
1911   tcflag_t c_lflag ;
1912   cc_t c_line ;
1913   cc_t c_cc[19] ;
1914   speed_t c_ispeed ;
1915   speed_t c_ospeed ;
1916};
1917#line 14 "include/asm-generic/termios.h"
1918struct winsize {
1919   unsigned short ws_row ;
1920   unsigned short ws_col ;
1921   unsigned short ws_xpixel ;
1922   unsigned short ws_ypixel ;
1923};
1924#line 94 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uaccess.h"
1925struct exception_table_entry {
1926   unsigned long insn ;
1927   unsigned long fixup ;
1928};
1929#line 9 "include/linux/termios.h"
1930struct termiox {
1931   __u16 x_hflag ;
1932   __u16 x_cflag ;
1933   __u16 x_rflag[5] ;
1934   __u16 x_sflag ;
1935};
1936#line 19 "include/linux/export.h"
1937struct kernel_symbol {
1938   unsigned long value ;
1939   char const   *name ;
1940};
1941#line 8 "include/linux/cdev.h"
1942struct file_operations;
1943#line 9
1944struct inode;
1945#line 10
1946struct module;
1947#line 12 "include/linux/cdev.h"
1948struct cdev {
1949   struct kobject kobj ;
1950   struct module *owner ;
1951   struct file_operations  const  *ops ;
1952   struct list_head list ;
1953   dev_t dev ;
1954   unsigned int count ;
1955};
1956#line 245 "include/linux/tty_driver.h"
1957struct tty_struct;
1958#line 245
1959struct tty_struct;
1960#line 246
1961struct tty_driver;
1962#line 246
1963struct tty_driver;
1964#line 247
1965struct serial_icounter_struct;
1966#line 247
1967struct serial_icounter_struct;
1968#line 249 "include/linux/tty_driver.h"
1969struct tty_operations {
1970   struct tty_struct *(*lookup)(struct tty_driver *driver , struct inode *inode ,
1971                                int idx ) ;
1972   int (*install)(struct tty_driver *driver , struct tty_struct *tty ) ;
1973   void (*remove)(struct tty_driver *driver , struct tty_struct *tty ) ;
1974   int (*open)(struct tty_struct *tty , struct file *filp ) ;
1975   void (*close)(struct tty_struct *tty , struct file *filp ) ;
1976   void (*shutdown)(struct tty_struct *tty ) ;
1977   void (*cleanup)(struct tty_struct *tty ) ;
1978   int (*write)(struct tty_struct *tty , unsigned char const   *buf , int count ) ;
1979   int (*put_char)(struct tty_struct *tty , unsigned char ch ) ;
1980   void (*flush_chars)(struct tty_struct *tty ) ;
1981   int (*write_room)(struct tty_struct *tty ) ;
1982   int (*chars_in_buffer)(struct tty_struct *tty ) ;
1983   int (*ioctl)(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) ;
1984   long (*compat_ioctl)(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) ;
1985   void (*set_termios)(struct tty_struct *tty , struct ktermios *old ) ;
1986   void (*throttle)(struct tty_struct *tty ) ;
1987   void (*unthrottle)(struct tty_struct *tty ) ;
1988   void (*stop)(struct tty_struct *tty ) ;
1989   void (*start)(struct tty_struct *tty ) ;
1990   void (*hangup)(struct tty_struct *tty ) ;
1991   int (*break_ctl)(struct tty_struct *tty , int state ) ;
1992   void (*flush_buffer)(struct tty_struct *tty ) ;
1993   void (*set_ldisc)(struct tty_struct *tty ) ;
1994   void (*wait_until_sent)(struct tty_struct *tty , int timeout ) ;
1995   void (*send_xchar)(struct tty_struct *tty , char ch ) ;
1996   int (*tiocmget)(struct tty_struct *tty ) ;
1997   int (*tiocmset)(struct tty_struct *tty , unsigned int set , unsigned int clear ) ;
1998   int (*resize)(struct tty_struct *tty , struct winsize *ws ) ;
1999   int (*set_termiox)(struct tty_struct *tty , struct termiox *tnew ) ;
2000   int (*get_icount)(struct tty_struct *tty , struct serial_icounter_struct *icount ) ;
2001   int (*poll_init)(struct tty_driver *driver , int line , char *options ) ;
2002   int (*poll_get_char)(struct tty_driver *driver , int line ) ;
2003   void (*poll_put_char)(struct tty_driver *driver , int line , char ch ) ;
2004   struct file_operations  const  *proc_fops ;
2005};
2006#line 294
2007struct proc_dir_entry;
2008#line 294 "include/linux/tty_driver.h"
2009struct tty_driver {
2010   int magic ;
2011   struct kref kref ;
2012   struct cdev cdev ;
2013   struct module *owner ;
2014   char const   *driver_name ;
2015   char const   *name ;
2016   int name_base ;
2017   int major ;
2018   int minor_start ;
2019   int num ;
2020   short type ;
2021   short subtype ;
2022   struct ktermios init_termios ;
2023   int flags ;
2024   struct proc_dir_entry *proc_entry ;
2025   struct tty_driver *other ;
2026   struct tty_struct **ttys ;
2027   struct ktermios **termios ;
2028   void *driver_state ;
2029   struct tty_operations  const  *ops ;
2030   struct list_head tty_drivers ;
2031};
2032#line 19 "include/linux/klist.h"
2033struct klist_node;
2034#line 19
2035struct klist_node;
2036#line 39 "include/linux/klist.h"
2037struct klist_node {
2038   void *n_klist ;
2039   struct list_head n_node ;
2040   struct kref n_ref ;
2041};
2042#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2043struct dma_map_ops;
2044#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2045struct dev_archdata {
2046   void *acpi_handle ;
2047   struct dma_map_ops *dma_ops ;
2048   void *iommu ;
2049};
2050#line 28 "include/linux/device.h"
2051struct device;
2052#line 29
2053struct device_private;
2054#line 29
2055struct device_private;
2056#line 30
2057struct device_driver;
2058#line 30
2059struct device_driver;
2060#line 31
2061struct driver_private;
2062#line 31
2063struct driver_private;
2064#line 32
2065struct module;
2066#line 33
2067struct class;
2068#line 33
2069struct class;
2070#line 34
2071struct subsys_private;
2072#line 34
2073struct subsys_private;
2074#line 35
2075struct bus_type;
2076#line 35
2077struct bus_type;
2078#line 36
2079struct device_node;
2080#line 36
2081struct device_node;
2082#line 37
2083struct iommu_ops;
2084#line 37
2085struct iommu_ops;
2086#line 39 "include/linux/device.h"
2087struct bus_attribute {
2088   struct attribute attr ;
2089   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
2090   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
2091};
2092#line 89
2093struct device_attribute;
2094#line 89
2095struct driver_attribute;
2096#line 89 "include/linux/device.h"
2097struct bus_type {
2098   char const   *name ;
2099   char const   *dev_name ;
2100   struct device *dev_root ;
2101   struct bus_attribute *bus_attrs ;
2102   struct device_attribute *dev_attrs ;
2103   struct driver_attribute *drv_attrs ;
2104   int (*match)(struct device *dev , struct device_driver *drv ) ;
2105   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2106   int (*probe)(struct device *dev ) ;
2107   int (*remove)(struct device *dev ) ;
2108   void (*shutdown)(struct device *dev ) ;
2109   int (*suspend)(struct device *dev , pm_message_t state ) ;
2110   int (*resume)(struct device *dev ) ;
2111   struct dev_pm_ops  const  *pm ;
2112   struct iommu_ops *iommu_ops ;
2113   struct subsys_private *p ;
2114};
2115#line 127
2116struct device_type;
2117#line 214
2118struct of_device_id;
2119#line 214 "include/linux/device.h"
2120struct device_driver {
2121   char const   *name ;
2122   struct bus_type *bus ;
2123   struct module *owner ;
2124   char const   *mod_name ;
2125   bool suppress_bind_attrs ;
2126   struct of_device_id  const  *of_match_table ;
2127   int (*probe)(struct device *dev ) ;
2128   int (*remove)(struct device *dev ) ;
2129   void (*shutdown)(struct device *dev ) ;
2130   int (*suspend)(struct device *dev , pm_message_t state ) ;
2131   int (*resume)(struct device *dev ) ;
2132   struct attribute_group  const  **groups ;
2133   struct dev_pm_ops  const  *pm ;
2134   struct driver_private *p ;
2135};
2136#line 249 "include/linux/device.h"
2137struct driver_attribute {
2138   struct attribute attr ;
2139   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
2140   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
2141};
2142#line 330
2143struct class_attribute;
2144#line 330 "include/linux/device.h"
2145struct class {
2146   char const   *name ;
2147   struct module *owner ;
2148   struct class_attribute *class_attrs ;
2149   struct device_attribute *dev_attrs ;
2150   struct bin_attribute *dev_bin_attrs ;
2151   struct kobject *dev_kobj ;
2152   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2153   char *(*devnode)(struct device *dev , umode_t *mode ) ;
2154   void (*class_release)(struct class *class ) ;
2155   void (*dev_release)(struct device *dev ) ;
2156   int (*suspend)(struct device *dev , pm_message_t state ) ;
2157   int (*resume)(struct device *dev ) ;
2158   struct kobj_ns_type_operations  const  *ns_type ;
2159   void const   *(*namespace)(struct device *dev ) ;
2160   struct dev_pm_ops  const  *pm ;
2161   struct subsys_private *p ;
2162};
2163#line 397 "include/linux/device.h"
2164struct class_attribute {
2165   struct attribute attr ;
2166   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
2167   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
2168                    size_t count ) ;
2169   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
2170};
2171#line 465 "include/linux/device.h"
2172struct device_type {
2173   char const   *name ;
2174   struct attribute_group  const  **groups ;
2175   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
2176   char *(*devnode)(struct device *dev , umode_t *mode ) ;
2177   void (*release)(struct device *dev ) ;
2178   struct dev_pm_ops  const  *pm ;
2179};
2180#line 476 "include/linux/device.h"
2181struct device_attribute {
2182   struct attribute attr ;
2183   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
2184   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
2185                    size_t count ) ;
2186};
2187#line 559 "include/linux/device.h"
2188struct device_dma_parameters {
2189   unsigned int max_segment_size ;
2190   unsigned long segment_boundary_mask ;
2191};
2192#line 627
2193struct dma_coherent_mem;
2194#line 627 "include/linux/device.h"
2195struct device {
2196   struct device *parent ;
2197   struct device_private *p ;
2198   struct kobject kobj ;
2199   char const   *init_name ;
2200   struct device_type  const  *type ;
2201   struct mutex mutex ;
2202   struct bus_type *bus ;
2203   struct device_driver *driver ;
2204   void *platform_data ;
2205   struct dev_pm_info power ;
2206   struct dev_pm_domain *pm_domain ;
2207   int numa_node ;
2208   u64 *dma_mask ;
2209   u64 coherent_dma_mask ;
2210   struct device_dma_parameters *dma_parms ;
2211   struct list_head dma_pools ;
2212   struct dma_coherent_mem *dma_mem ;
2213   struct dev_archdata archdata ;
2214   struct device_node *of_node ;
2215   dev_t devt ;
2216   u32 id ;
2217   spinlock_t devres_lock ;
2218   struct list_head devres_head ;
2219   struct klist_node knode_class ;
2220   struct class *class ;
2221   struct attribute_group  const  **groups ;
2222   void (*release)(struct device *dev ) ;
2223};
2224#line 43 "include/linux/pm_wakeup.h"
2225struct wakeup_source {
2226   char const   *name ;
2227   struct list_head entry ;
2228   spinlock_t lock ;
2229   struct timer_list timer ;
2230   unsigned long timer_expires ;
2231   ktime_t total_time ;
2232   ktime_t max_time ;
2233   ktime_t last_time ;
2234   unsigned long event_count ;
2235   unsigned long active_count ;
2236   unsigned long relax_count ;
2237   unsigned long hit_count ;
2238   unsigned int active : 1 ;
2239};
2240#line 49 "include/linux/pps_kernel.h"
2241struct pps_event_time {
2242   struct timespec ts_real ;
2243};
2244#line 114 "include/linux/tty_ldisc.h"
2245struct tty_ldisc_ops {
2246   int magic ;
2247   char *name ;
2248   int num ;
2249   int flags ;
2250   int (*open)(struct tty_struct * ) ;
2251   void (*close)(struct tty_struct * ) ;
2252   void (*flush_buffer)(struct tty_struct *tty ) ;
2253   ssize_t (*chars_in_buffer)(struct tty_struct *tty ) ;
2254   ssize_t (*read)(struct tty_struct *tty , struct file *file , unsigned char *buf ,
2255                   size_t nr ) ;
2256   ssize_t (*write)(struct tty_struct *tty , struct file *file , unsigned char const   *buf ,
2257                    size_t nr ) ;
2258   int (*ioctl)(struct tty_struct *tty , struct file *file , unsigned int cmd , unsigned long arg ) ;
2259   long (*compat_ioctl)(struct tty_struct *tty , struct file *file , unsigned int cmd ,
2260                        unsigned long arg ) ;
2261   void (*set_termios)(struct tty_struct *tty , struct ktermios *old ) ;
2262   unsigned int (*poll)(struct tty_struct * , struct file * , struct poll_table_struct * ) ;
2263   int (*hangup)(struct tty_struct *tty ) ;
2264   void (*receive_buf)(struct tty_struct * , unsigned char const   *cp , char *fp ,
2265                       int count ) ;
2266   void (*write_wakeup)(struct tty_struct * ) ;
2267   void (*dcd_change)(struct tty_struct * , unsigned int  , struct pps_event_time * ) ;
2268   struct module *owner ;
2269   int refcount ;
2270};
2271#line 154 "include/linux/tty_ldisc.h"
2272struct tty_ldisc {
2273   struct tty_ldisc_ops *ops ;
2274   atomic_t users ;
2275};
2276#line 64 "include/linux/tty.h"
2277struct tty_buffer {
2278   struct tty_buffer *next ;
2279   char *char_buf_ptr ;
2280   unsigned char *flag_buf_ptr ;
2281   int used ;
2282   int size ;
2283   int commit ;
2284   int read ;
2285   unsigned long data[0] ;
2286};
2287#line 87 "include/linux/tty.h"
2288struct tty_bufhead {
2289   struct work_struct work ;
2290   spinlock_t lock ;
2291   struct tty_buffer *head ;
2292   struct tty_buffer *tail ;
2293   struct tty_buffer *free ;
2294   int memory_used ;
2295};
2296#line 188
2297struct device;
2298#line 189
2299struct signal_struct;
2300#line 189
2301struct signal_struct;
2302#line 202
2303struct tty_port;
2304#line 202
2305struct tty_port;
2306#line 204 "include/linux/tty.h"
2307struct tty_port_operations {
2308   int (*carrier_raised)(struct tty_port *port ) ;
2309   void (*dtr_rts)(struct tty_port *port , int raise ) ;
2310   void (*shutdown)(struct tty_port *port ) ;
2311   void (*drop)(struct tty_port *port ) ;
2312   int (*activate)(struct tty_port *port , struct tty_struct *tty ) ;
2313   void (*destruct)(struct tty_port *port ) ;
2314};
2315#line 223 "include/linux/tty.h"
2316struct tty_port {
2317   struct tty_struct *tty ;
2318   struct tty_port_operations  const  *ops ;
2319   spinlock_t lock ;
2320   int blocked_open ;
2321   int count ;
2322   wait_queue_head_t open_wait ;
2323   wait_queue_head_t close_wait ;
2324   wait_queue_head_t delta_msr_wait ;
2325   unsigned long flags ;
2326   unsigned char console : 1 ;
2327   struct mutex mutex ;
2328   struct mutex buf_mutex ;
2329   unsigned char *xmit_buf ;
2330   unsigned int close_delay ;
2331   unsigned int closing_wait ;
2332   int drain_delay ;
2333   struct kref kref ;
2334};
2335#line 257
2336struct tty_operations;
2337#line 259 "include/linux/tty.h"
2338struct tty_struct {
2339   int magic ;
2340   struct kref kref ;
2341   struct device *dev ;
2342   struct tty_driver *driver ;
2343   struct tty_operations  const  *ops ;
2344   int index ;
2345   struct mutex ldisc_mutex ;
2346   struct tty_ldisc *ldisc ;
2347   struct mutex termios_mutex ;
2348   spinlock_t ctrl_lock ;
2349   struct ktermios *termios ;
2350   struct ktermios *termios_locked ;
2351   struct termiox *termiox ;
2352   char name[64] ;
2353   struct pid *pgrp ;
2354   struct pid *session ;
2355   unsigned long flags ;
2356   int count ;
2357   struct winsize winsize ;
2358   unsigned char stopped : 1 ;
2359   unsigned char hw_stopped : 1 ;
2360   unsigned char flow_stopped : 1 ;
2361   unsigned char packet : 1 ;
2362   unsigned char low_latency : 1 ;
2363   unsigned char warned : 1 ;
2364   unsigned char ctrl_status ;
2365   unsigned int receive_room ;
2366   struct tty_struct *link ;
2367   struct fasync_struct *fasync ;
2368   struct tty_bufhead buf ;
2369   int alt_speed ;
2370   wait_queue_head_t write_wait ;
2371   wait_queue_head_t read_wait ;
2372   struct work_struct hangup_work ;
2373   void *disc_data ;
2374   void *driver_data ;
2375   struct list_head tty_files ;
2376   unsigned int column ;
2377   unsigned char lnext : 1 ;
2378   unsigned char erasing : 1 ;
2379   unsigned char raw : 1 ;
2380   unsigned char real_raw : 1 ;
2381   unsigned char icanon : 1 ;
2382   unsigned char closing : 1 ;
2383   unsigned char echo_overrun : 1 ;
2384   unsigned short minimum_to_wake ;
2385   unsigned long overrun_time ;
2386   int num_overrun ;
2387   unsigned long process_char_map[256UL / (8UL * sizeof(unsigned long ))] ;
2388   char *read_buf ;
2389   int read_head ;
2390   int read_tail ;
2391   int read_cnt ;
2392   unsigned long read_flags[4096UL / (8UL * sizeof(unsigned long ))] ;
2393   unsigned char *echo_buf ;
2394   unsigned int echo_pos ;
2395   unsigned int echo_cnt ;
2396   int canon_data ;
2397   unsigned long canon_head ;
2398   unsigned int canon_column ;
2399   struct mutex atomic_read_lock ;
2400   struct mutex atomic_write_lock ;
2401   struct mutex output_lock ;
2402   struct mutex echo_lock ;
2403   unsigned char *write_buf ;
2404   int write_cnt ;
2405   spinlock_t read_lock ;
2406   struct work_struct SAK_work ;
2407   struct tty_port *port ;
2408};
2409#line 29 "include/linux/sysctl.h"
2410struct completion;
2411#line 100 "include/linux/rbtree.h"
2412struct rb_node {
2413   unsigned long rb_parent_color ;
2414   struct rb_node *rb_right ;
2415   struct rb_node *rb_left ;
2416} __attribute__((__aligned__(sizeof(long )))) ;
2417#line 110 "include/linux/rbtree.h"
2418struct rb_root {
2419   struct rb_node *rb_node ;
2420};
2421#line 939 "include/linux/sysctl.h"
2422struct nsproxy;
2423#line 939
2424struct nsproxy;
2425#line 48 "include/linux/kmod.h"
2426struct cred;
2427#line 49
2428struct file;
2429#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
2430struct task_struct;
2431#line 18 "include/linux/elf.h"
2432typedef __u64 Elf64_Addr;
2433#line 19 "include/linux/elf.h"
2434typedef __u16 Elf64_Half;
2435#line 23 "include/linux/elf.h"
2436typedef __u32 Elf64_Word;
2437#line 24 "include/linux/elf.h"
2438typedef __u64 Elf64_Xword;
2439#line 194 "include/linux/elf.h"
2440struct elf64_sym {
2441   Elf64_Word st_name ;
2442   unsigned char st_info ;
2443   unsigned char st_other ;
2444   Elf64_Half st_shndx ;
2445   Elf64_Addr st_value ;
2446   Elf64_Xword st_size ;
2447};
2448#line 194 "include/linux/elf.h"
2449typedef struct elf64_sym Elf64_Sym;
2450#line 438
2451struct file;
2452#line 39 "include/linux/moduleparam.h"
2453struct kernel_param;
2454#line 39
2455struct kernel_param;
2456#line 41 "include/linux/moduleparam.h"
2457struct kernel_param_ops {
2458   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
2459   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
2460   void (*free)(void *arg ) ;
2461};
2462#line 50
2463struct kparam_string;
2464#line 50
2465struct kparam_array;
2466#line 50 "include/linux/moduleparam.h"
2467union __anonunion____missing_field_name_216 {
2468   void *arg ;
2469   struct kparam_string  const  *str ;
2470   struct kparam_array  const  *arr ;
2471};
2472#line 50 "include/linux/moduleparam.h"
2473struct kernel_param {
2474   char const   *name ;
2475   struct kernel_param_ops  const  *ops ;
2476   u16 perm ;
2477   s16 level ;
2478   union __anonunion____missing_field_name_216 __annonCompField35 ;
2479};
2480#line 63 "include/linux/moduleparam.h"
2481struct kparam_string {
2482   unsigned int maxlen ;
2483   char *string ;
2484};
2485#line 69 "include/linux/moduleparam.h"
2486struct kparam_array {
2487   unsigned int max ;
2488   unsigned int elemsize ;
2489   unsigned int *num ;
2490   struct kernel_param_ops  const  *ops ;
2491   void *elem ;
2492};
2493#line 445
2494struct module;
2495#line 80 "include/linux/jump_label.h"
2496struct module;
2497#line 143 "include/linux/jump_label.h"
2498struct static_key {
2499   atomic_t enabled ;
2500};
2501#line 22 "include/linux/tracepoint.h"
2502struct module;
2503#line 23
2504struct tracepoint;
2505#line 23
2506struct tracepoint;
2507#line 25 "include/linux/tracepoint.h"
2508struct tracepoint_func {
2509   void *func ;
2510   void *data ;
2511};
2512#line 30 "include/linux/tracepoint.h"
2513struct tracepoint {
2514   char const   *name ;
2515   struct static_key key ;
2516   void (*regfunc)(void) ;
2517   void (*unregfunc)(void) ;
2518   struct tracepoint_func *funcs ;
2519};
2520#line 8 "include/asm-generic/module.h"
2521struct mod_arch_specific {
2522
2523};
2524#line 35 "include/linux/module.h"
2525struct module;
2526#line 37
2527struct module_param_attrs;
2528#line 37 "include/linux/module.h"
2529struct module_kobject {
2530   struct kobject kobj ;
2531   struct module *mod ;
2532   struct kobject *drivers_dir ;
2533   struct module_param_attrs *mp ;
2534};
2535#line 44 "include/linux/module.h"
2536struct module_attribute {
2537   struct attribute attr ;
2538   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
2539   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
2540                    size_t count ) ;
2541   void (*setup)(struct module * , char const   * ) ;
2542   int (*test)(struct module * ) ;
2543   void (*free)(struct module * ) ;
2544};
2545#line 71
2546struct exception_table_entry;
2547#line 199
2548enum module_state {
2549    MODULE_STATE_LIVE = 0,
2550    MODULE_STATE_COMING = 1,
2551    MODULE_STATE_GOING = 2
2552} ;
2553#line 215 "include/linux/module.h"
2554struct module_ref {
2555   unsigned long incs ;
2556   unsigned long decs ;
2557} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
2558#line 220
2559struct module_sect_attrs;
2560#line 220
2561struct module_notes_attrs;
2562#line 220
2563struct ftrace_event_call;
2564#line 220 "include/linux/module.h"
2565struct module {
2566   enum module_state state ;
2567   struct list_head list ;
2568   char name[64UL - sizeof(unsigned long )] ;
2569   struct module_kobject mkobj ;
2570   struct module_attribute *modinfo_attrs ;
2571   char const   *version ;
2572   char const   *srcversion ;
2573   struct kobject *holders_dir ;
2574   struct kernel_symbol  const  *syms ;
2575   unsigned long const   *crcs ;
2576   unsigned int num_syms ;
2577   struct kernel_param *kp ;
2578   unsigned int num_kp ;
2579   unsigned int num_gpl_syms ;
2580   struct kernel_symbol  const  *gpl_syms ;
2581   unsigned long const   *gpl_crcs ;
2582   struct kernel_symbol  const  *unused_syms ;
2583   unsigned long const   *unused_crcs ;
2584   unsigned int num_unused_syms ;
2585   unsigned int num_unused_gpl_syms ;
2586   struct kernel_symbol  const  *unused_gpl_syms ;
2587   unsigned long const   *unused_gpl_crcs ;
2588   struct kernel_symbol  const  *gpl_future_syms ;
2589   unsigned long const   *gpl_future_crcs ;
2590   unsigned int num_gpl_future_syms ;
2591   unsigned int num_exentries ;
2592   struct exception_table_entry *extable ;
2593   int (*init)(void) ;
2594   void *module_init ;
2595   void *module_core ;
2596   unsigned int init_size ;
2597   unsigned int core_size ;
2598   unsigned int init_text_size ;
2599   unsigned int core_text_size ;
2600   unsigned int init_ro_size ;
2601   unsigned int core_ro_size ;
2602   struct mod_arch_specific arch ;
2603   unsigned int taints ;
2604   unsigned int num_bugs ;
2605   struct list_head bug_list ;
2606   struct bug_entry *bug_table ;
2607   Elf64_Sym *symtab ;
2608   Elf64_Sym *core_symtab ;
2609   unsigned int num_symtab ;
2610   unsigned int core_num_syms ;
2611   char *strtab ;
2612   char *core_strtab ;
2613   struct module_sect_attrs *sect_attrs ;
2614   struct module_notes_attrs *notes_attrs ;
2615   char *args ;
2616   void *percpu ;
2617   unsigned int percpu_size ;
2618   unsigned int num_tracepoints ;
2619   struct tracepoint * const  *tracepoints_ptrs ;
2620   unsigned int num_trace_bprintk_fmt ;
2621   char const   **trace_bprintk_fmt_start ;
2622   struct ftrace_event_call **trace_events ;
2623   unsigned int num_trace_events ;
2624   struct list_head source_list ;
2625   struct list_head target_list ;
2626   struct task_struct *waiter ;
2627   void (*exit)(void) ;
2628   struct module_ref *refptr ;
2629   ctor_fn_t *ctors ;
2630   unsigned int num_ctors ;
2631};
2632#line 12 "include/linux/mod_devicetable.h"
2633typedef unsigned long kernel_ulong_t;
2634#line 98 "include/linux/mod_devicetable.h"
2635struct usb_device_id {
2636   __u16 match_flags ;
2637   __u16 idVendor ;
2638   __u16 idProduct ;
2639   __u16 bcdDevice_lo ;
2640   __u16 bcdDevice_hi ;
2641   __u8 bDeviceClass ;
2642   __u8 bDeviceSubClass ;
2643   __u8 bDeviceProtocol ;
2644   __u8 bInterfaceClass ;
2645   __u8 bInterfaceSubClass ;
2646   __u8 bInterfaceProtocol ;
2647   kernel_ulong_t driver_info ;
2648};
2649#line 219 "include/linux/mod_devicetable.h"
2650struct of_device_id {
2651   char name[32] ;
2652   char type[32] ;
2653   char compatible[128] ;
2654   void *data ;
2655};
2656#line 250 "include/linux/usb/ch9.h"
2657struct usb_device_descriptor {
2658   __u8 bLength ;
2659   __u8 bDescriptorType ;
2660   __le16 bcdUSB ;
2661   __u8 bDeviceClass ;
2662   __u8 bDeviceSubClass ;
2663   __u8 bDeviceProtocol ;
2664   __u8 bMaxPacketSize0 ;
2665   __le16 idVendor ;
2666   __le16 idProduct ;
2667   __le16 bcdDevice ;
2668   __u8 iManufacturer ;
2669   __u8 iProduct ;
2670   __u8 iSerialNumber ;
2671   __u8 bNumConfigurations ;
2672} __attribute__((__packed__)) ;
2673#line 306 "include/linux/usb/ch9.h"
2674struct usb_config_descriptor {
2675   __u8 bLength ;
2676   __u8 bDescriptorType ;
2677   __le16 wTotalLength ;
2678   __u8 bNumInterfaces ;
2679   __u8 bConfigurationValue ;
2680   __u8 iConfiguration ;
2681   __u8 bmAttributes ;
2682   __u8 bMaxPower ;
2683} __attribute__((__packed__)) ;
2684#line 343 "include/linux/usb/ch9.h"
2685struct usb_interface_descriptor {
2686   __u8 bLength ;
2687   __u8 bDescriptorType ;
2688   __u8 bInterfaceNumber ;
2689   __u8 bAlternateSetting ;
2690   __u8 bNumEndpoints ;
2691   __u8 bInterfaceClass ;
2692   __u8 bInterfaceSubClass ;
2693   __u8 bInterfaceProtocol ;
2694   __u8 iInterface ;
2695} __attribute__((__packed__)) ;
2696#line 361 "include/linux/usb/ch9.h"
2697struct usb_endpoint_descriptor {
2698   __u8 bLength ;
2699   __u8 bDescriptorType ;
2700   __u8 bEndpointAddress ;
2701   __u8 bmAttributes ;
2702   __le16 wMaxPacketSize ;
2703   __u8 bInterval ;
2704   __u8 bRefresh ;
2705   __u8 bSynchAddress ;
2706} __attribute__((__packed__)) ;
2707#line 598 "include/linux/usb/ch9.h"
2708struct usb_ss_ep_comp_descriptor {
2709   __u8 bLength ;
2710   __u8 bDescriptorType ;
2711   __u8 bMaxBurst ;
2712   __u8 bmAttributes ;
2713   __le16 wBytesPerInterval ;
2714} __attribute__((__packed__)) ;
2715#line 677 "include/linux/usb/ch9.h"
2716struct usb_interface_assoc_descriptor {
2717   __u8 bLength ;
2718   __u8 bDescriptorType ;
2719   __u8 bFirstInterface ;
2720   __u8 bInterfaceCount ;
2721   __u8 bFunctionClass ;
2722   __u8 bFunctionSubClass ;
2723   __u8 bFunctionProtocol ;
2724   __u8 iFunction ;
2725} __attribute__((__packed__)) ;
2726#line 737 "include/linux/usb/ch9.h"
2727struct usb_bos_descriptor {
2728   __u8 bLength ;
2729   __u8 bDescriptorType ;
2730   __le16 wTotalLength ;
2731   __u8 bNumDeviceCaps ;
2732} __attribute__((__packed__)) ;
2733#line 786 "include/linux/usb/ch9.h"
2734struct usb_ext_cap_descriptor {
2735   __u8 bLength ;
2736   __u8 bDescriptorType ;
2737   __u8 bDevCapabilityType ;
2738   __le32 bmAttributes ;
2739} __attribute__((__packed__)) ;
2740#line 806 "include/linux/usb/ch9.h"
2741struct usb_ss_cap_descriptor {
2742   __u8 bLength ;
2743   __u8 bDescriptorType ;
2744   __u8 bDevCapabilityType ;
2745   __u8 bmAttributes ;
2746   __le16 wSpeedSupported ;
2747   __u8 bFunctionalitySupport ;
2748   __u8 bU1devExitLat ;
2749   __le16 bU2DevExitLat ;
2750} __attribute__((__packed__)) ;
2751#line 829 "include/linux/usb/ch9.h"
2752struct usb_ss_container_id_descriptor {
2753   __u8 bLength ;
2754   __u8 bDescriptorType ;
2755   __u8 bDevCapabilityType ;
2756   __u8 bReserved ;
2757   __u8 ContainerID[16] ;
2758} __attribute__((__packed__)) ;
2759#line 891
2760enum usb_device_speed {
2761    USB_SPEED_UNKNOWN = 0,
2762    USB_SPEED_LOW = 1,
2763    USB_SPEED_FULL = 2,
2764    USB_SPEED_HIGH = 3,
2765    USB_SPEED_WIRELESS = 4,
2766    USB_SPEED_SUPER = 5
2767} ;
2768#line 911
2769enum usb_device_state {
2770    USB_STATE_NOTATTACHED = 0,
2771    USB_STATE_ATTACHED = 1,
2772    USB_STATE_POWERED = 2,
2773    USB_STATE_RECONNECTING = 3,
2774    USB_STATE_UNAUTHENTICATED = 4,
2775    USB_STATE_DEFAULT = 5,
2776    USB_STATE_ADDRESS = 6,
2777    USB_STATE_CONFIGURED = 7,
2778    USB_STATE_SUSPENDED = 8
2779} ;
2780#line 31 "include/linux/irq.h"
2781struct seq_file;
2782#line 32
2783struct module;
2784#line 12 "include/linux/irqdesc.h"
2785struct proc_dir_entry;
2786#line 14
2787struct module;
2788#line 16 "include/linux/profile.h"
2789struct proc_dir_entry;
2790#line 17
2791struct pt_regs;
2792#line 65
2793struct task_struct;
2794#line 66
2795struct mm_struct;
2796#line 88
2797struct pt_regs;
2798#line 132 "include/linux/hardirq.h"
2799struct task_struct;
2800#line 8 "include/linux/timerqueue.h"
2801struct timerqueue_node {
2802   struct rb_node node ;
2803   ktime_t expires ;
2804};
2805#line 13 "include/linux/timerqueue.h"
2806struct timerqueue_head {
2807   struct rb_root head ;
2808   struct timerqueue_node *next ;
2809};
2810#line 27 "include/linux/hrtimer.h"
2811struct hrtimer_clock_base;
2812#line 27
2813struct hrtimer_clock_base;
2814#line 28
2815struct hrtimer_cpu_base;
2816#line 28
2817struct hrtimer_cpu_base;
2818#line 44
2819enum hrtimer_restart {
2820    HRTIMER_NORESTART = 0,
2821    HRTIMER_RESTART = 1
2822} ;
2823#line 108 "include/linux/hrtimer.h"
2824struct hrtimer {
2825   struct timerqueue_node node ;
2826   ktime_t _softexpires ;
2827   enum hrtimer_restart (*function)(struct hrtimer * ) ;
2828   struct hrtimer_clock_base *base ;
2829   unsigned long state ;
2830   int start_pid ;
2831   void *start_site ;
2832   char start_comm[16] ;
2833};
2834#line 145 "include/linux/hrtimer.h"
2835struct hrtimer_clock_base {
2836   struct hrtimer_cpu_base *cpu_base ;
2837   int index ;
2838   clockid_t clockid ;
2839   struct timerqueue_head active ;
2840   ktime_t resolution ;
2841   ktime_t (*get_time)(void) ;
2842   ktime_t softirq_time ;
2843   ktime_t offset ;
2844};
2845#line 178 "include/linux/hrtimer.h"
2846struct hrtimer_cpu_base {
2847   raw_spinlock_t lock ;
2848   unsigned long active_bases ;
2849   ktime_t expires_next ;
2850   int hres_active ;
2851   int hang_detected ;
2852   unsigned long nr_events ;
2853   unsigned long nr_retries ;
2854   unsigned long nr_hangs ;
2855   ktime_t max_hang_time ;
2856   struct hrtimer_clock_base clock_base[3] ;
2857};
2858#line 187 "include/linux/interrupt.h"
2859struct device;
2860#line 695
2861struct seq_file;
2862#line 23 "include/linux/mm_types.h"
2863struct address_space;
2864#line 40 "include/linux/mm_types.h"
2865union __anonunion____missing_field_name_228 {
2866   unsigned long index ;
2867   void *freelist ;
2868};
2869#line 40 "include/linux/mm_types.h"
2870struct __anonstruct____missing_field_name_232 {
2871   unsigned int inuse : 16 ;
2872   unsigned int objects : 15 ;
2873   unsigned int frozen : 1 ;
2874};
2875#line 40 "include/linux/mm_types.h"
2876union __anonunion____missing_field_name_231 {
2877   atomic_t _mapcount ;
2878   struct __anonstruct____missing_field_name_232 __annonCompField37 ;
2879};
2880#line 40 "include/linux/mm_types.h"
2881struct __anonstruct____missing_field_name_230 {
2882   union __anonunion____missing_field_name_231 __annonCompField38 ;
2883   atomic_t _count ;
2884};
2885#line 40 "include/linux/mm_types.h"
2886union __anonunion____missing_field_name_229 {
2887   unsigned long counters ;
2888   struct __anonstruct____missing_field_name_230 __annonCompField39 ;
2889};
2890#line 40 "include/linux/mm_types.h"
2891struct __anonstruct____missing_field_name_227 {
2892   union __anonunion____missing_field_name_228 __annonCompField36 ;
2893   union __anonunion____missing_field_name_229 __annonCompField40 ;
2894};
2895#line 40 "include/linux/mm_types.h"
2896struct __anonstruct____missing_field_name_234 {
2897   struct page *next ;
2898   int pages ;
2899   int pobjects ;
2900};
2901#line 40 "include/linux/mm_types.h"
2902union __anonunion____missing_field_name_233 {
2903   struct list_head lru ;
2904   struct __anonstruct____missing_field_name_234 __annonCompField42 ;
2905};
2906#line 40 "include/linux/mm_types.h"
2907union __anonunion____missing_field_name_235 {
2908   unsigned long private ;
2909   struct kmem_cache *slab ;
2910   struct page *first_page ;
2911};
2912#line 40 "include/linux/mm_types.h"
2913struct page {
2914   unsigned long flags ;
2915   struct address_space *mapping ;
2916   struct __anonstruct____missing_field_name_227 __annonCompField41 ;
2917   union __anonunion____missing_field_name_233 __annonCompField43 ;
2918   union __anonunion____missing_field_name_235 __annonCompField44 ;
2919   unsigned long debug_flags ;
2920} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
2921#line 200 "include/linux/mm_types.h"
2922struct __anonstruct_vm_set_237 {
2923   struct list_head list ;
2924   void *parent ;
2925   struct vm_area_struct *head ;
2926};
2927#line 200 "include/linux/mm_types.h"
2928union __anonunion_shared_236 {
2929   struct __anonstruct_vm_set_237 vm_set ;
2930   struct raw_prio_tree_node prio_tree_node ;
2931};
2932#line 200
2933struct anon_vma;
2934#line 200
2935struct vm_operations_struct;
2936#line 200
2937struct mempolicy;
2938#line 200 "include/linux/mm_types.h"
2939struct vm_area_struct {
2940   struct mm_struct *vm_mm ;
2941   unsigned long vm_start ;
2942   unsigned long vm_end ;
2943   struct vm_area_struct *vm_next ;
2944   struct vm_area_struct *vm_prev ;
2945   pgprot_t vm_page_prot ;
2946   unsigned long vm_flags ;
2947   struct rb_node vm_rb ;
2948   union __anonunion_shared_236 shared ;
2949   struct list_head anon_vma_chain ;
2950   struct anon_vma *anon_vma ;
2951   struct vm_operations_struct  const  *vm_ops ;
2952   unsigned long vm_pgoff ;
2953   struct file *vm_file ;
2954   void *vm_private_data ;
2955   struct mempolicy *vm_policy ;
2956};
2957#line 257 "include/linux/mm_types.h"
2958struct core_thread {
2959   struct task_struct *task ;
2960   struct core_thread *next ;
2961};
2962#line 262 "include/linux/mm_types.h"
2963struct core_state {
2964   atomic_t nr_threads ;
2965   struct core_thread dumper ;
2966   struct completion startup ;
2967};
2968#line 284 "include/linux/mm_types.h"
2969struct mm_rss_stat {
2970   atomic_long_t count[3] ;
2971};
2972#line 288
2973struct linux_binfmt;
2974#line 288
2975struct mmu_notifier_mm;
2976#line 288 "include/linux/mm_types.h"
2977struct mm_struct {
2978   struct vm_area_struct *mmap ;
2979   struct rb_root mm_rb ;
2980   struct vm_area_struct *mmap_cache ;
2981   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
2982                                      unsigned long pgoff , unsigned long flags ) ;
2983   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
2984   unsigned long mmap_base ;
2985   unsigned long task_size ;
2986   unsigned long cached_hole_size ;
2987   unsigned long free_area_cache ;
2988   pgd_t *pgd ;
2989   atomic_t mm_users ;
2990   atomic_t mm_count ;
2991   int map_count ;
2992   spinlock_t page_table_lock ;
2993   struct rw_semaphore mmap_sem ;
2994   struct list_head mmlist ;
2995   unsigned long hiwater_rss ;
2996   unsigned long hiwater_vm ;
2997   unsigned long total_vm ;
2998   unsigned long locked_vm ;
2999   unsigned long pinned_vm ;
3000   unsigned long shared_vm ;
3001   unsigned long exec_vm ;
3002   unsigned long stack_vm ;
3003   unsigned long reserved_vm ;
3004   unsigned long def_flags ;
3005   unsigned long nr_ptes ;
3006   unsigned long start_code ;
3007   unsigned long end_code ;
3008   unsigned long start_data ;
3009   unsigned long end_data ;
3010   unsigned long start_brk ;
3011   unsigned long brk ;
3012   unsigned long start_stack ;
3013   unsigned long arg_start ;
3014   unsigned long arg_end ;
3015   unsigned long env_start ;
3016   unsigned long env_end ;
3017   unsigned long saved_auxv[44] ;
3018   struct mm_rss_stat rss_stat ;
3019   struct linux_binfmt *binfmt ;
3020   cpumask_var_t cpu_vm_mask_var ;
3021   mm_context_t context ;
3022   unsigned int faultstamp ;
3023   unsigned int token_priority ;
3024   unsigned int last_interval ;
3025   unsigned long flags ;
3026   struct core_state *core_state ;
3027   spinlock_t ioctx_lock ;
3028   struct hlist_head ioctx_list ;
3029   struct task_struct *owner ;
3030   struct file *exe_file ;
3031   unsigned long num_exe_file_vmas ;
3032   struct mmu_notifier_mm *mmu_notifier_mm ;
3033   pgtable_t pmd_huge_pte ;
3034   struct cpumask cpumask_allocation ;
3035};
3036#line 7 "include/asm-generic/cputime.h"
3037typedef unsigned long cputime_t;
3038#line 84 "include/linux/sem.h"
3039struct task_struct;
3040#line 101
3041struct sem_undo_list;
3042#line 101 "include/linux/sem.h"
3043struct sysv_sem {
3044   struct sem_undo_list *undo_list ;
3045};
3046#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
3047struct siginfo;
3048#line 10
3049struct siginfo;
3050#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
3051struct __anonstruct_sigset_t_239 {
3052   unsigned long sig[1] ;
3053};
3054#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
3055typedef struct __anonstruct_sigset_t_239 sigset_t;
3056#line 17 "include/asm-generic/signal-defs.h"
3057typedef void __signalfn_t(int  );
3058#line 18 "include/asm-generic/signal-defs.h"
3059typedef __signalfn_t *__sighandler_t;
3060#line 20 "include/asm-generic/signal-defs.h"
3061typedef void __restorefn_t(void);
3062#line 21 "include/asm-generic/signal-defs.h"
3063typedef __restorefn_t *__sigrestore_t;
3064#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
3065struct sigaction {
3066   __sighandler_t sa_handler ;
3067   unsigned long sa_flags ;
3068   __sigrestore_t sa_restorer ;
3069   sigset_t sa_mask ;
3070};
3071#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
3072struct k_sigaction {
3073   struct sigaction sa ;
3074};
3075#line 7 "include/asm-generic/siginfo.h"
3076union sigval {
3077   int sival_int ;
3078   void *sival_ptr ;
3079};
3080#line 7 "include/asm-generic/siginfo.h"
3081typedef union sigval sigval_t;
3082#line 48 "include/asm-generic/siginfo.h"
3083struct __anonstruct__kill_241 {
3084   __kernel_pid_t _pid ;
3085   __kernel_uid32_t _uid ;
3086};
3087#line 48 "include/asm-generic/siginfo.h"
3088struct __anonstruct__timer_242 {
3089   __kernel_timer_t _tid ;
3090   int _overrun ;
3091   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
3092   sigval_t _sigval ;
3093   int _sys_private ;
3094};
3095#line 48 "include/asm-generic/siginfo.h"
3096struct __anonstruct__rt_243 {
3097   __kernel_pid_t _pid ;
3098   __kernel_uid32_t _uid ;
3099   sigval_t _sigval ;
3100};
3101#line 48 "include/asm-generic/siginfo.h"
3102struct __anonstruct__sigchld_244 {
3103   __kernel_pid_t _pid ;
3104   __kernel_uid32_t _uid ;
3105   int _status ;
3106   __kernel_clock_t _utime ;
3107   __kernel_clock_t _stime ;
3108};
3109#line 48 "include/asm-generic/siginfo.h"
3110struct __anonstruct__sigfault_245 {
3111   void *_addr ;
3112   short _addr_lsb ;
3113};
3114#line 48 "include/asm-generic/siginfo.h"
3115struct __anonstruct__sigpoll_246 {
3116   long _band ;
3117   int _fd ;
3118};
3119#line 48 "include/asm-generic/siginfo.h"
3120union __anonunion__sifields_240 {
3121   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
3122   struct __anonstruct__kill_241 _kill ;
3123   struct __anonstruct__timer_242 _timer ;
3124   struct __anonstruct__rt_243 _rt ;
3125   struct __anonstruct__sigchld_244 _sigchld ;
3126   struct __anonstruct__sigfault_245 _sigfault ;
3127   struct __anonstruct__sigpoll_246 _sigpoll ;
3128};
3129#line 48 "include/asm-generic/siginfo.h"
3130struct siginfo {
3131   int si_signo ;
3132   int si_errno ;
3133   int si_code ;
3134   union __anonunion__sifields_240 _sifields ;
3135};
3136#line 48 "include/asm-generic/siginfo.h"
3137typedef struct siginfo siginfo_t;
3138#line 288
3139struct siginfo;
3140#line 10 "include/linux/signal.h"
3141struct task_struct;
3142#line 18
3143struct user_struct;
3144#line 28 "include/linux/signal.h"
3145struct sigpending {
3146   struct list_head list ;
3147   sigset_t signal ;
3148};
3149#line 239
3150struct timespec;
3151#line 240
3152struct pt_regs;
3153#line 10 "include/linux/seccomp.h"
3154struct __anonstruct_seccomp_t_249 {
3155   int mode ;
3156};
3157#line 10 "include/linux/seccomp.h"
3158typedef struct __anonstruct_seccomp_t_249 seccomp_t;
3159#line 81 "include/linux/plist.h"
3160struct plist_head {
3161   struct list_head node_list ;
3162};
3163#line 85 "include/linux/plist.h"
3164struct plist_node {
3165   int prio ;
3166   struct list_head prio_list ;
3167   struct list_head node_list ;
3168};
3169#line 40 "include/linux/rtmutex.h"
3170struct rt_mutex_waiter;
3171#line 40
3172struct rt_mutex_waiter;
3173#line 42 "include/linux/resource.h"
3174struct rlimit {
3175   unsigned long rlim_cur ;
3176   unsigned long rlim_max ;
3177};
3178#line 81
3179struct task_struct;
3180#line 11 "include/linux/task_io_accounting.h"
3181struct task_io_accounting {
3182   u64 rchar ;
3183   u64 wchar ;
3184   u64 syscr ;
3185   u64 syscw ;
3186   u64 read_bytes ;
3187   u64 write_bytes ;
3188   u64 cancelled_write_bytes ;
3189};
3190#line 13 "include/linux/latencytop.h"
3191struct task_struct;
3192#line 20 "include/linux/latencytop.h"
3193struct latency_record {
3194   unsigned long backtrace[12] ;
3195   unsigned int count ;
3196   unsigned long time ;
3197   unsigned long max ;
3198};
3199#line 29 "include/linux/key.h"
3200typedef int32_t key_serial_t;
3201#line 32 "include/linux/key.h"
3202typedef uint32_t key_perm_t;
3203#line 34
3204struct key;
3205#line 34
3206struct key;
3207#line 74
3208struct seq_file;
3209#line 75
3210struct user_struct;
3211#line 76
3212struct signal_struct;
3213#line 77
3214struct cred;
3215#line 79
3216struct key_type;
3217#line 79
3218struct key_type;
3219#line 81
3220struct keyring_list;
3221#line 81
3222struct keyring_list;
3223#line 124
3224struct key_user;
3225#line 124 "include/linux/key.h"
3226union __anonunion____missing_field_name_250 {
3227   time_t expiry ;
3228   time_t revoked_at ;
3229};
3230#line 124 "include/linux/key.h"
3231union __anonunion_type_data_251 {
3232   struct list_head link ;
3233   unsigned long x[2] ;
3234   void *p[2] ;
3235   int reject_error ;
3236};
3237#line 124 "include/linux/key.h"
3238union __anonunion_payload_252 {
3239   unsigned long value ;
3240   void *rcudata ;
3241   void *data ;
3242   struct keyring_list *subscriptions ;
3243};
3244#line 124 "include/linux/key.h"
3245struct key {
3246   atomic_t usage ;
3247   key_serial_t serial ;
3248   struct rb_node serial_node ;
3249   struct key_type *type ;
3250   struct rw_semaphore sem ;
3251   struct key_user *user ;
3252   void *security ;
3253   union __anonunion____missing_field_name_250 __annonCompField45 ;
3254   uid_t uid ;
3255   gid_t gid ;
3256   key_perm_t perm ;
3257   unsigned short quotalen ;
3258   unsigned short datalen ;
3259   unsigned long flags ;
3260   char *description ;
3261   union __anonunion_type_data_251 type_data ;
3262   union __anonunion_payload_252 payload ;
3263};
3264#line 18 "include/linux/selinux.h"
3265struct audit_context;
3266#line 18
3267struct audit_context;
3268#line 21 "include/linux/cred.h"
3269struct user_struct;
3270#line 22
3271struct cred;
3272#line 23
3273struct inode;
3274#line 31 "include/linux/cred.h"
3275struct group_info {
3276   atomic_t usage ;
3277   int ngroups ;
3278   int nblocks ;
3279   gid_t small_block[32] ;
3280   gid_t *blocks[0] ;
3281};
3282#line 83 "include/linux/cred.h"
3283struct thread_group_cred {
3284   atomic_t usage ;
3285   pid_t tgid ;
3286   spinlock_t lock ;
3287   struct key *session_keyring ;
3288   struct key *process_keyring ;
3289   struct rcu_head rcu ;
3290};
3291#line 116 "include/linux/cred.h"
3292struct cred {
3293   atomic_t usage ;
3294   atomic_t subscribers ;
3295   void *put_addr ;
3296   unsigned int magic ;
3297   uid_t uid ;
3298   gid_t gid ;
3299   uid_t suid ;
3300   gid_t sgid ;
3301   uid_t euid ;
3302   gid_t egid ;
3303   uid_t fsuid ;
3304   gid_t fsgid ;
3305   unsigned int securebits ;
3306   kernel_cap_t cap_inheritable ;
3307   kernel_cap_t cap_permitted ;
3308   kernel_cap_t cap_effective ;
3309   kernel_cap_t cap_bset ;
3310   unsigned char jit_keyring ;
3311   struct key *thread_keyring ;
3312   struct key *request_key_auth ;
3313   struct thread_group_cred *tgcred ;
3314   void *security ;
3315   struct user_struct *user ;
3316   struct user_namespace *user_ns ;
3317   struct group_info *group_info ;
3318   struct rcu_head rcu ;
3319};
3320#line 61 "include/linux/llist.h"
3321struct llist_node;
3322#line 65 "include/linux/llist.h"
3323struct llist_node {
3324   struct llist_node *next ;
3325};
3326#line 96 "include/linux/sched.h"
3327struct exec_domain;
3328#line 97
3329struct futex_pi_state;
3330#line 97
3331struct futex_pi_state;
3332#line 98
3333struct robust_list_head;
3334#line 98
3335struct robust_list_head;
3336#line 99
3337struct bio_list;
3338#line 99
3339struct bio_list;
3340#line 100
3341struct fs_struct;
3342#line 100
3343struct fs_struct;
3344#line 101
3345struct perf_event_context;
3346#line 101
3347struct perf_event_context;
3348#line 102
3349struct blk_plug;
3350#line 102
3351struct blk_plug;
3352#line 150
3353struct seq_file;
3354#line 151
3355struct cfs_rq;
3356#line 151
3357struct cfs_rq;
3358#line 259
3359struct task_struct;
3360#line 366
3361struct nsproxy;
3362#line 367
3363struct user_namespace;
3364#line 58 "include/linux/aio_abi.h"
3365struct io_event {
3366   __u64 data ;
3367   __u64 obj ;
3368   __s64 res ;
3369   __s64 res2 ;
3370};
3371#line 16 "include/linux/uio.h"
3372struct iovec {
3373   void *iov_base ;
3374   __kernel_size_t iov_len ;
3375};
3376#line 15 "include/linux/aio.h"
3377struct kioctx;
3378#line 15
3379struct kioctx;
3380#line 87 "include/linux/aio.h"
3381union __anonunion_ki_obj_254 {
3382   void *user ;
3383   struct task_struct *tsk ;
3384};
3385#line 87
3386struct eventfd_ctx;
3387#line 87 "include/linux/aio.h"
3388struct kiocb {
3389   struct list_head ki_run_list ;
3390   unsigned long ki_flags ;
3391   int ki_users ;
3392   unsigned int ki_key ;
3393   struct file *ki_filp ;
3394   struct kioctx *ki_ctx ;
3395   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
3396   ssize_t (*ki_retry)(struct kiocb * ) ;
3397   void (*ki_dtor)(struct kiocb * ) ;
3398   union __anonunion_ki_obj_254 ki_obj ;
3399   __u64 ki_user_data ;
3400   loff_t ki_pos ;
3401   void *private ;
3402   unsigned short ki_opcode ;
3403   size_t ki_nbytes ;
3404   char *ki_buf ;
3405   size_t ki_left ;
3406   struct iovec ki_inline_vec ;
3407   struct iovec *ki_iovec ;
3408   unsigned long ki_nr_segs ;
3409   unsigned long ki_cur_seg ;
3410   struct list_head ki_list ;
3411   struct list_head ki_batch ;
3412   struct eventfd_ctx *ki_eventfd ;
3413};
3414#line 166 "include/linux/aio.h"
3415struct aio_ring_info {
3416   unsigned long mmap_base ;
3417   unsigned long mmap_size ;
3418   struct page **ring_pages ;
3419   spinlock_t ring_lock ;
3420   long nr_pages ;
3421   unsigned int nr ;
3422   unsigned int tail ;
3423   struct page *internal_pages[8] ;
3424};
3425#line 179 "include/linux/aio.h"
3426struct kioctx {
3427   atomic_t users ;
3428   int dead ;
3429   struct mm_struct *mm ;
3430   unsigned long user_id ;
3431   struct hlist_node list ;
3432   wait_queue_head_t wait ;
3433   spinlock_t ctx_lock ;
3434   int reqs_active ;
3435   struct list_head active_reqs ;
3436   struct list_head run_list ;
3437   unsigned int max_reqs ;
3438   struct aio_ring_info ring_info ;
3439   struct delayed_work wq ;
3440   struct rcu_head rcu_head ;
3441};
3442#line 214
3443struct mm_struct;
3444#line 443 "include/linux/sched.h"
3445struct sighand_struct {
3446   atomic_t count ;
3447   struct k_sigaction action[64] ;
3448   spinlock_t siglock ;
3449   wait_queue_head_t signalfd_wqh ;
3450};
3451#line 450 "include/linux/sched.h"
3452struct pacct_struct {
3453   int ac_flag ;
3454   long ac_exitcode ;
3455   unsigned long ac_mem ;
3456   cputime_t ac_utime ;
3457   cputime_t ac_stime ;
3458   unsigned long ac_minflt ;
3459   unsigned long ac_majflt ;
3460};
3461#line 458 "include/linux/sched.h"
3462struct cpu_itimer {
3463   cputime_t expires ;
3464   cputime_t incr ;
3465   u32 error ;
3466   u32 incr_error ;
3467};
3468#line 476 "include/linux/sched.h"
3469struct task_cputime {
3470   cputime_t utime ;
3471   cputime_t stime ;
3472   unsigned long long sum_exec_runtime ;
3473};
3474#line 512 "include/linux/sched.h"
3475struct thread_group_cputimer {
3476   struct task_cputime cputime ;
3477   int running ;
3478   raw_spinlock_t lock ;
3479};
3480#line 519
3481struct autogroup;
3482#line 519
3483struct autogroup;
3484#line 528
3485struct taskstats;
3486#line 528
3487struct tty_audit_buf;
3488#line 528 "include/linux/sched.h"
3489struct signal_struct {
3490   atomic_t sigcnt ;
3491   atomic_t live ;
3492   int nr_threads ;
3493   wait_queue_head_t wait_chldexit ;
3494   struct task_struct *curr_target ;
3495   struct sigpending shared_pending ;
3496   int group_exit_code ;
3497   int notify_count ;
3498   struct task_struct *group_exit_task ;
3499   int group_stop_count ;
3500   unsigned int flags ;
3501   unsigned int is_child_subreaper : 1 ;
3502   unsigned int has_child_subreaper : 1 ;
3503   struct list_head posix_timers ;
3504   struct hrtimer real_timer ;
3505   struct pid *leader_pid ;
3506   ktime_t it_real_incr ;
3507   struct cpu_itimer it[2] ;
3508   struct thread_group_cputimer cputimer ;
3509   struct task_cputime cputime_expires ;
3510   struct list_head cpu_timers[3] ;
3511   struct pid *tty_old_pgrp ;
3512   int leader ;
3513   struct tty_struct *tty ;
3514   struct autogroup *autogroup ;
3515   cputime_t utime ;
3516   cputime_t stime ;
3517   cputime_t cutime ;
3518   cputime_t cstime ;
3519   cputime_t gtime ;
3520   cputime_t cgtime ;
3521   cputime_t prev_utime ;
3522   cputime_t prev_stime ;
3523   unsigned long nvcsw ;
3524   unsigned long nivcsw ;
3525   unsigned long cnvcsw ;
3526   unsigned long cnivcsw ;
3527   unsigned long min_flt ;
3528   unsigned long maj_flt ;
3529   unsigned long cmin_flt ;
3530   unsigned long cmaj_flt ;
3531   unsigned long inblock ;
3532   unsigned long oublock ;
3533   unsigned long cinblock ;
3534   unsigned long coublock ;
3535   unsigned long maxrss ;
3536   unsigned long cmaxrss ;
3537   struct task_io_accounting ioac ;
3538   unsigned long long sum_sched_runtime ;
3539   struct rlimit rlim[16] ;
3540   struct pacct_struct pacct ;
3541   struct taskstats *stats ;
3542   unsigned int audit_tty ;
3543   struct tty_audit_buf *tty_audit_buf ;
3544   struct rw_semaphore group_rwsem ;
3545   int oom_adj ;
3546   int oom_score_adj ;
3547   int oom_score_adj_min ;
3548   struct mutex cred_guard_mutex ;
3549};
3550#line 703 "include/linux/sched.h"
3551struct user_struct {
3552   atomic_t __count ;
3553   atomic_t processes ;
3554   atomic_t files ;
3555   atomic_t sigpending ;
3556   atomic_t inotify_watches ;
3557   atomic_t inotify_devs ;
3558   atomic_t fanotify_listeners ;
3559   atomic_long_t epoll_watches ;
3560   unsigned long mq_bytes ;
3561   unsigned long locked_shm ;
3562   struct key *uid_keyring ;
3563   struct key *session_keyring ;
3564   struct hlist_node uidhash_node ;
3565   uid_t uid ;
3566   struct user_namespace *user_ns ;
3567   atomic_long_t locked_vm ;
3568};
3569#line 747
3570struct backing_dev_info;
3571#line 748
3572struct reclaim_state;
3573#line 748
3574struct reclaim_state;
3575#line 751 "include/linux/sched.h"
3576struct sched_info {
3577   unsigned long pcount ;
3578   unsigned long long run_delay ;
3579   unsigned long long last_arrival ;
3580   unsigned long long last_queued ;
3581};
3582#line 763 "include/linux/sched.h"
3583struct task_delay_info {
3584   spinlock_t lock ;
3585   unsigned int flags ;
3586   struct timespec blkio_start ;
3587   struct timespec blkio_end ;
3588   u64 blkio_delay ;
3589   u64 swapin_delay ;
3590   u32 blkio_count ;
3591   u32 swapin_count ;
3592   struct timespec freepages_start ;
3593   struct timespec freepages_end ;
3594   u64 freepages_delay ;
3595   u32 freepages_count ;
3596};
3597#line 1088
3598struct io_context;
3599#line 1088
3600struct io_context;
3601#line 1097
3602struct audit_context;
3603#line 1098
3604struct mempolicy;
3605#line 1099
3606struct pipe_inode_info;
3607#line 1102
3608struct rq;
3609#line 1102
3610struct rq;
3611#line 1122 "include/linux/sched.h"
3612struct sched_class {
3613   struct sched_class  const  *next ;
3614   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3615   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
3616   void (*yield_task)(struct rq *rq ) ;
3617   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
3618   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
3619   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
3620   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
3621   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
3622   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
3623   void (*post_schedule)(struct rq *this_rq ) ;
3624   void (*task_waking)(struct task_struct *task ) ;
3625   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
3626   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask  const  *newmask ) ;
3627   void (*rq_online)(struct rq *rq ) ;
3628   void (*rq_offline)(struct rq *rq ) ;
3629   void (*set_curr_task)(struct rq *rq ) ;
3630   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
3631   void (*task_fork)(struct task_struct *p ) ;
3632   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
3633   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
3634   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
3635   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
3636   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
3637};
3638#line 1167 "include/linux/sched.h"
3639struct load_weight {
3640   unsigned long weight ;
3641   unsigned long inv_weight ;
3642};
3643#line 1172 "include/linux/sched.h"
3644struct sched_statistics {
3645   u64 wait_start ;
3646   u64 wait_max ;
3647   u64 wait_count ;
3648   u64 wait_sum ;
3649   u64 iowait_count ;
3650   u64 iowait_sum ;
3651   u64 sleep_start ;
3652   u64 sleep_max ;
3653   s64 sum_sleep_runtime ;
3654   u64 block_start ;
3655   u64 block_max ;
3656   u64 exec_max ;
3657   u64 slice_max ;
3658   u64 nr_migrations_cold ;
3659   u64 nr_failed_migrations_affine ;
3660   u64 nr_failed_migrations_running ;
3661   u64 nr_failed_migrations_hot ;
3662   u64 nr_forced_migrations ;
3663   u64 nr_wakeups ;
3664   u64 nr_wakeups_sync ;
3665   u64 nr_wakeups_migrate ;
3666   u64 nr_wakeups_local ;
3667   u64 nr_wakeups_remote ;
3668   u64 nr_wakeups_affine ;
3669   u64 nr_wakeups_affine_attempts ;
3670   u64 nr_wakeups_passive ;
3671   u64 nr_wakeups_idle ;
3672};
3673#line 1207 "include/linux/sched.h"
3674struct sched_entity {
3675   struct load_weight load ;
3676   struct rb_node run_node ;
3677   struct list_head group_node ;
3678   unsigned int on_rq ;
3679   u64 exec_start ;
3680   u64 sum_exec_runtime ;
3681   u64 vruntime ;
3682   u64 prev_sum_exec_runtime ;
3683   u64 nr_migrations ;
3684   struct sched_statistics statistics ;
3685   struct sched_entity *parent ;
3686   struct cfs_rq *cfs_rq ;
3687   struct cfs_rq *my_q ;
3688};
3689#line 1233
3690struct rt_rq;
3691#line 1233 "include/linux/sched.h"
3692struct sched_rt_entity {
3693   struct list_head run_list ;
3694   unsigned long timeout ;
3695   unsigned int time_slice ;
3696   int nr_cpus_allowed ;
3697   struct sched_rt_entity *back ;
3698   struct sched_rt_entity *parent ;
3699   struct rt_rq *rt_rq ;
3700   struct rt_rq *my_q ;
3701};
3702#line 1264
3703struct css_set;
3704#line 1264
3705struct compat_robust_list_head;
3706#line 1264
3707struct mem_cgroup;
3708#line 1264 "include/linux/sched.h"
3709struct memcg_batch_info {
3710   int do_batch ;
3711   struct mem_cgroup *memcg ;
3712   unsigned long nr_pages ;
3713   unsigned long memsw_nr_pages ;
3714};
3715#line 1264 "include/linux/sched.h"
3716struct task_struct {
3717   long volatile   state ;
3718   void *stack ;
3719   atomic_t usage ;
3720   unsigned int flags ;
3721   unsigned int ptrace ;
3722   struct llist_node wake_entry ;
3723   int on_cpu ;
3724   int on_rq ;
3725   int prio ;
3726   int static_prio ;
3727   int normal_prio ;
3728   unsigned int rt_priority ;
3729   struct sched_class  const  *sched_class ;
3730   struct sched_entity se ;
3731   struct sched_rt_entity rt ;
3732   struct hlist_head preempt_notifiers ;
3733   unsigned char fpu_counter ;
3734   unsigned int policy ;
3735   cpumask_t cpus_allowed ;
3736   struct sched_info sched_info ;
3737   struct list_head tasks ;
3738   struct plist_node pushable_tasks ;
3739   struct mm_struct *mm ;
3740   struct mm_struct *active_mm ;
3741   unsigned int brk_randomized : 1 ;
3742   int exit_state ;
3743   int exit_code ;
3744   int exit_signal ;
3745   int pdeath_signal ;
3746   unsigned int jobctl ;
3747   unsigned int personality ;
3748   unsigned int did_exec : 1 ;
3749   unsigned int in_execve : 1 ;
3750   unsigned int in_iowait : 1 ;
3751   unsigned int sched_reset_on_fork : 1 ;
3752   unsigned int sched_contributes_to_load : 1 ;
3753   unsigned int irq_thread : 1 ;
3754   pid_t pid ;
3755   pid_t tgid ;
3756   unsigned long stack_canary ;
3757   struct task_struct *real_parent ;
3758   struct task_struct *parent ;
3759   struct list_head children ;
3760   struct list_head sibling ;
3761   struct task_struct *group_leader ;
3762   struct list_head ptraced ;
3763   struct list_head ptrace_entry ;
3764   struct pid_link pids[3] ;
3765   struct list_head thread_group ;
3766   struct completion *vfork_done ;
3767   int *set_child_tid ;
3768   int *clear_child_tid ;
3769   cputime_t utime ;
3770   cputime_t stime ;
3771   cputime_t utimescaled ;
3772   cputime_t stimescaled ;
3773   cputime_t gtime ;
3774   cputime_t prev_utime ;
3775   cputime_t prev_stime ;
3776   unsigned long nvcsw ;
3777   unsigned long nivcsw ;
3778   struct timespec start_time ;
3779   struct timespec real_start_time ;
3780   unsigned long min_flt ;
3781   unsigned long maj_flt ;
3782   struct task_cputime cputime_expires ;
3783   struct list_head cpu_timers[3] ;
3784   struct cred  const  *real_cred ;
3785   struct cred  const  *cred ;
3786   struct cred *replacement_session_keyring ;
3787   char comm[16] ;
3788   int link_count ;
3789   int total_link_count ;
3790   struct sysv_sem sysvsem ;
3791   unsigned long last_switch_count ;
3792   struct thread_struct thread ;
3793   struct fs_struct *fs ;
3794   struct files_struct *files ;
3795   struct nsproxy *nsproxy ;
3796   struct signal_struct *signal ;
3797   struct sighand_struct *sighand ;
3798   sigset_t blocked ;
3799   sigset_t real_blocked ;
3800   sigset_t saved_sigmask ;
3801   struct sigpending pending ;
3802   unsigned long sas_ss_sp ;
3803   size_t sas_ss_size ;
3804   int (*notifier)(void *priv ) ;
3805   void *notifier_data ;
3806   sigset_t *notifier_mask ;
3807   struct audit_context *audit_context ;
3808   uid_t loginuid ;
3809   unsigned int sessionid ;
3810   seccomp_t seccomp ;
3811   u32 parent_exec_id ;
3812   u32 self_exec_id ;
3813   spinlock_t alloc_lock ;
3814   raw_spinlock_t pi_lock ;
3815   struct plist_head pi_waiters ;
3816   struct rt_mutex_waiter *pi_blocked_on ;
3817   struct mutex_waiter *blocked_on ;
3818   unsigned int irq_events ;
3819   unsigned long hardirq_enable_ip ;
3820   unsigned long hardirq_disable_ip ;
3821   unsigned int hardirq_enable_event ;
3822   unsigned int hardirq_disable_event ;
3823   int hardirqs_enabled ;
3824   int hardirq_context ;
3825   unsigned long softirq_disable_ip ;
3826   unsigned long softirq_enable_ip ;
3827   unsigned int softirq_disable_event ;
3828   unsigned int softirq_enable_event ;
3829   int softirqs_enabled ;
3830   int softirq_context ;
3831   void *journal_info ;
3832   struct bio_list *bio_list ;
3833   struct blk_plug *plug ;
3834   struct reclaim_state *reclaim_state ;
3835   struct backing_dev_info *backing_dev_info ;
3836   struct io_context *io_context ;
3837   unsigned long ptrace_message ;
3838   siginfo_t *last_siginfo ;
3839   struct task_io_accounting ioac ;
3840   u64 acct_rss_mem1 ;
3841   u64 acct_vm_mem1 ;
3842   cputime_t acct_timexpd ;
3843   nodemask_t mems_allowed ;
3844   seqcount_t mems_allowed_seq ;
3845   int cpuset_mem_spread_rotor ;
3846   int cpuset_slab_spread_rotor ;
3847   struct css_set *cgroups ;
3848   struct list_head cg_list ;
3849   struct robust_list_head *robust_list ;
3850   struct compat_robust_list_head *compat_robust_list ;
3851   struct list_head pi_state_list ;
3852   struct futex_pi_state *pi_state_cache ;
3853   struct perf_event_context *perf_event_ctxp[2] ;
3854   struct mutex perf_event_mutex ;
3855   struct list_head perf_event_list ;
3856   struct mempolicy *mempolicy ;
3857   short il_next ;
3858   short pref_node_fork ;
3859   struct rcu_head rcu ;
3860   struct pipe_inode_info *splice_pipe ;
3861   struct task_delay_info *delays ;
3862   int make_it_fail ;
3863   int nr_dirtied ;
3864   int nr_dirtied_pause ;
3865   unsigned long dirty_paused_when ;
3866   int latency_record_count ;
3867   struct latency_record latency_record[32] ;
3868   unsigned long timer_slack_ns ;
3869   unsigned long default_timer_slack_ns ;
3870   struct list_head *scm_work_list ;
3871   unsigned long trace ;
3872   unsigned long trace_recursion ;
3873   struct memcg_batch_info memcg_batch ;
3874   atomic_t ptrace_bp_refcnt ;
3875};
3876#line 1681
3877struct pid_namespace;
3878#line 25 "include/linux/usb.h"
3879struct usb_device;
3880#line 25
3881struct usb_device;
3882#line 26
3883struct usb_driver;
3884#line 26
3885struct usb_driver;
3886#line 27
3887struct wusb_dev;
3888#line 27
3889struct wusb_dev;
3890#line 47
3891struct ep_device;
3892#line 47
3893struct ep_device;
3894#line 64 "include/linux/usb.h"
3895struct usb_host_endpoint {
3896   struct usb_endpoint_descriptor desc ;
3897   struct usb_ss_ep_comp_descriptor ss_ep_comp ;
3898   struct list_head urb_list ;
3899   void *hcpriv ;
3900   struct ep_device *ep_dev ;
3901   unsigned char *extra ;
3902   int extralen ;
3903   int enabled ;
3904};
3905#line 77 "include/linux/usb.h"
3906struct usb_host_interface {
3907   struct usb_interface_descriptor desc ;
3908   struct usb_host_endpoint *endpoint ;
3909   char *string ;
3910   unsigned char *extra ;
3911   int extralen ;
3912};
3913#line 90
3914enum usb_interface_condition {
3915    USB_INTERFACE_UNBOUND = 0,
3916    USB_INTERFACE_BINDING = 1,
3917    USB_INTERFACE_BOUND = 2,
3918    USB_INTERFACE_UNBINDING = 3
3919} ;
3920#line 159 "include/linux/usb.h"
3921struct usb_interface {
3922   struct usb_host_interface *altsetting ;
3923   struct usb_host_interface *cur_altsetting ;
3924   unsigned int num_altsetting ;
3925   struct usb_interface_assoc_descriptor *intf_assoc ;
3926   int minor ;
3927   enum usb_interface_condition condition ;
3928   unsigned int sysfs_files_created : 1 ;
3929   unsigned int ep_devs_created : 1 ;
3930   unsigned int unregistering : 1 ;
3931   unsigned int needs_remote_wakeup : 1 ;
3932   unsigned int needs_altsetting0 : 1 ;
3933   unsigned int needs_binding : 1 ;
3934   unsigned int reset_running : 1 ;
3935   unsigned int resetting_device : 1 ;
3936   struct device dev ;
3937   struct device *usb_dev ;
3938   atomic_t pm_usage_cnt ;
3939   struct work_struct reset_ws ;
3940};
3941#line 222 "include/linux/usb.h"
3942struct usb_interface_cache {
3943   unsigned int num_altsetting ;
3944   struct kref ref ;
3945   struct usb_host_interface altsetting[0] ;
3946};
3947#line 274 "include/linux/usb.h"
3948struct usb_host_config {
3949   struct usb_config_descriptor desc ;
3950   char *string ;
3951   struct usb_interface_assoc_descriptor *intf_assoc[16] ;
3952   struct usb_interface *interface[32] ;
3953   struct usb_interface_cache *intf_cache[32] ;
3954   unsigned char *extra ;
3955   int extralen ;
3956};
3957#line 296 "include/linux/usb.h"
3958struct usb_host_bos {
3959   struct usb_bos_descriptor *desc ;
3960   struct usb_ext_cap_descriptor *ext_cap ;
3961   struct usb_ss_cap_descriptor *ss_cap ;
3962   struct usb_ss_container_id_descriptor *ss_id ;
3963};
3964#line 315 "include/linux/usb.h"
3965struct usb_devmap {
3966   unsigned long devicemap[128UL / (8UL * sizeof(unsigned long ))] ;
3967};
3968#line 322
3969struct mon_bus;
3970#line 322 "include/linux/usb.h"
3971struct usb_bus {
3972   struct device *controller ;
3973   int busnum ;
3974   char const   *bus_name ;
3975   u8 uses_dma ;
3976   u8 uses_pio_for_control ;
3977   u8 otg_port ;
3978   unsigned int is_b_host : 1 ;
3979   unsigned int b_hnp_enable : 1 ;
3980   unsigned int sg_tablesize ;
3981   int devnum_next ;
3982   struct usb_devmap devmap ;
3983   struct usb_device *root_hub ;
3984   struct usb_bus *hs_companion ;
3985   struct list_head bus_list ;
3986   int bandwidth_allocated ;
3987   int bandwidth_int_reqs ;
3988   int bandwidth_isoc_reqs ;
3989   struct dentry *usbfs_dentry ;
3990   struct mon_bus *mon_bus ;
3991   int monitored ;
3992};
3993#line 377
3994struct usb_tt;
3995#line 377
3996struct usb_tt;
3997#line 379
3998enum usb_device_removable {
3999    USB_DEVICE_REMOVABLE_UNKNOWN = 0,
4000    USB_DEVICE_REMOVABLE = 1,
4001    USB_DEVICE_FIXED = 2
4002} ;
4003#line 447 "include/linux/usb.h"
4004struct usb_device {
4005   int devnum ;
4006   char devpath[16] ;
4007   u32 route ;
4008   enum usb_device_state state ;
4009   enum usb_device_speed speed ;
4010   struct usb_tt *tt ;
4011   int ttport ;
4012   unsigned int toggle[2] ;
4013   struct usb_device *parent ;
4014   struct usb_bus *bus ;
4015   struct usb_host_endpoint ep0 ;
4016   struct device dev ;
4017   struct usb_device_descriptor descriptor ;
4018   struct usb_host_bos *bos ;
4019   struct usb_host_config *config ;
4020   struct usb_host_config *actconfig ;
4021   struct usb_host_endpoint *ep_in[16] ;
4022   struct usb_host_endpoint *ep_out[16] ;
4023   char **rawdescriptors ;
4024   unsigned short bus_mA ;
4025   u8 portnum ;
4026   u8 level ;
4027   unsigned int can_submit : 1 ;
4028   unsigned int persist_enabled : 1 ;
4029   unsigned int have_langid : 1 ;
4030   unsigned int authorized : 1 ;
4031   unsigned int authenticated : 1 ;
4032   unsigned int wusb : 1 ;
4033   unsigned int lpm_capable : 1 ;
4034   unsigned int usb2_hw_lpm_capable : 1 ;
4035   unsigned int usb2_hw_lpm_enabled : 1 ;
4036   int string_langid ;
4037   char *product ;
4038   char *manufacturer ;
4039   char *serial ;
4040   struct list_head filelist ;
4041   struct device *usb_classdev ;
4042   struct dentry *usbfs_dentry ;
4043   int maxchild ;
4044   struct usb_device **children ;
4045   u32 quirks ;
4046   atomic_t urbnum ;
4047   unsigned long active_duration ;
4048   unsigned long connect_time ;
4049   unsigned int do_remote_wakeup : 1 ;
4050   unsigned int reset_resume : 1 ;
4051   struct wusb_dev *wusb_dev ;
4052   int slot_id ;
4053   enum usb_device_removable removable ;
4054};
4055#line 789 "include/linux/usb.h"
4056struct usb_dynids {
4057   spinlock_t lock ;
4058   struct list_head list ;
4059};
4060#line 808 "include/linux/usb.h"
4061struct usbdrv_wrap {
4062   struct device_driver driver ;
4063   int for_devices ;
4064};
4065#line 869 "include/linux/usb.h"
4066struct usb_driver {
4067   char const   *name ;
4068   int (*probe)(struct usb_interface *intf , struct usb_device_id  const  *id ) ;
4069   void (*disconnect)(struct usb_interface *intf ) ;
4070   int (*unlocked_ioctl)(struct usb_interface *intf , unsigned int code , void *buf ) ;
4071   int (*suspend)(struct usb_interface *intf , pm_message_t message ) ;
4072   int (*resume)(struct usb_interface *intf ) ;
4073   int (*reset_resume)(struct usb_interface *intf ) ;
4074   int (*pre_reset)(struct usb_interface *intf ) ;
4075   int (*post_reset)(struct usb_interface *intf ) ;
4076   struct usb_device_id  const  *id_table ;
4077   struct usb_dynids dynids ;
4078   struct usbdrv_wrap drvwrap ;
4079   unsigned int no_dynamic_id : 1 ;
4080   unsigned int supports_autosuspend : 1 ;
4081   unsigned int soft_unbind : 1 ;
4082};
4083#line 1022 "include/linux/usb.h"
4084struct usb_iso_packet_descriptor {
4085   unsigned int offset ;
4086   unsigned int length ;
4087   unsigned int actual_length ;
4088   int status ;
4089};
4090#line 1029
4091struct urb;
4092#line 1029
4093struct urb;
4094#line 1031 "include/linux/usb.h"
4095struct usb_anchor {
4096   struct list_head urb_list ;
4097   wait_queue_head_t wait ;
4098   spinlock_t lock ;
4099   unsigned int poisoned : 1 ;
4100};
4101#line 1223
4102struct scatterlist;
4103#line 1223 "include/linux/usb.h"
4104struct urb {
4105   struct kref kref ;
4106   void *hcpriv ;
4107   atomic_t use_count ;
4108   atomic_t reject ;
4109   int unlinked ;
4110   struct list_head urb_list ;
4111   struct list_head anchor_list ;
4112   struct usb_anchor *anchor ;
4113   struct usb_device *dev ;
4114   struct usb_host_endpoint *ep ;
4115   unsigned int pipe ;
4116   unsigned int stream_id ;
4117   int status ;
4118   unsigned int transfer_flags ;
4119   void *transfer_buffer ;
4120   dma_addr_t transfer_dma ;
4121   struct scatterlist *sg ;
4122   int num_mapped_sgs ;
4123   int num_sgs ;
4124   u32 transfer_buffer_length ;
4125   u32 actual_length ;
4126   unsigned char *setup_packet ;
4127   dma_addr_t setup_dma ;
4128   int start_frame ;
4129   int number_of_packets ;
4130   int interval ;
4131   int error_count ;
4132   void *context ;
4133   void (*complete)(struct urb * ) ;
4134   struct usb_iso_packet_descriptor iso_frame_desc[0] ;
4135};
4136#line 1429
4137struct scatterlist;
4138#line 8 "include/linux/debug_locks.h"
4139struct task_struct;
4140#line 48
4141struct task_struct;
4142#line 22 "include/linux/mm.h"
4143struct mempolicy;
4144#line 23
4145struct anon_vma;
4146#line 24
4147struct file_ra_state;
4148#line 25
4149struct user_struct;
4150#line 26
4151struct writeback_control;
4152#line 41 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64.h"
4153struct mm_struct;
4154#line 656 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable.h"
4155struct vm_area_struct;
4156#line 188 "include/linux/mm.h"
4157struct vm_fault {
4158   unsigned int flags ;
4159   unsigned long pgoff ;
4160   void *virtual_address ;
4161   struct page *page ;
4162};
4163#line 205 "include/linux/mm.h"
4164struct vm_operations_struct {
4165   void (*open)(struct vm_area_struct *area ) ;
4166   void (*close)(struct vm_area_struct *area ) ;
4167   int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
4168   int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
4169   int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
4170                 int write ) ;
4171   int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
4172   struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
4173   int (*migrate)(struct vm_area_struct *vma , nodemask_t const   *from , nodemask_t const   *to ,
4174                  unsigned long flags ) ;
4175};
4176#line 247
4177struct inode;
4178#line 195 "include/linux/page-flags.h"
4179struct page;
4180#line 6 "include/asm-generic/scatterlist.h"
4181struct scatterlist {
4182   unsigned long sg_magic ;
4183   unsigned long page_link ;
4184   unsigned int offset ;
4185   unsigned int length ;
4186   dma_addr_t dma_address ;
4187   unsigned int dma_length ;
4188};
4189#line 58 "include/linux/kfifo.h"
4190struct __kfifo {
4191   unsigned int in ;
4192   unsigned int out ;
4193   unsigned int mask ;
4194   unsigned int esize ;
4195   void *data ;
4196};
4197#line 96 "include/linux/kfifo.h"
4198union __anonunion____missing_field_name_256 {
4199   struct __kfifo kfifo ;
4200   unsigned char *type ;
4201   char (*rectype)[0] ;
4202   void *ptr ;
4203   void const   *ptr_const ;
4204};
4205#line 96 "include/linux/kfifo.h"
4206struct kfifo {
4207   union __anonunion____missing_field_name_256 __annonCompField47 ;
4208   unsigned char buf[0] ;
4209};
4210#line 77 "include/linux/usb/serial.h"
4211struct usb_serial;
4212#line 77 "include/linux/usb/serial.h"
4213struct usb_serial_port {
4214   struct usb_serial *serial ;
4215   struct tty_port port ;
4216   spinlock_t lock ;
4217   unsigned char number ;
4218   unsigned char *interrupt_in_buffer ;
4219   struct urb *interrupt_in_urb ;
4220   __u8 interrupt_in_endpointAddress ;
4221   unsigned char *interrupt_out_buffer ;
4222   int interrupt_out_size ;
4223   struct urb *interrupt_out_urb ;
4224   __u8 interrupt_out_endpointAddress ;
4225   unsigned char *bulk_in_buffer ;
4226   int bulk_in_size ;
4227   struct urb *read_urb ;
4228   __u8 bulk_in_endpointAddress ;
4229   unsigned char *bulk_in_buffers[2] ;
4230   struct urb *read_urbs[2] ;
4231   unsigned long read_urbs_free ;
4232   unsigned char *bulk_out_buffer ;
4233   int bulk_out_size ;
4234   struct urb *write_urb ;
4235   struct kfifo write_fifo ;
4236   unsigned char *bulk_out_buffers[2] ;
4237   struct urb *write_urbs[2] ;
4238   unsigned long write_urbs_free ;
4239   __u8 bulk_out_endpointAddress ;
4240   int tx_bytes ;
4241   unsigned long flags ;
4242   wait_queue_head_t write_wait ;
4243   struct work_struct work ;
4244   char throttled ;
4245   char throttle_req ;
4246   unsigned long sysrq ;
4247   struct device dev ;
4248};
4249#line 152
4250struct usb_serial_driver;
4251#line 152 "include/linux/usb/serial.h"
4252struct usb_serial {
4253   struct usb_device *dev ;
4254   struct usb_serial_driver *type ;
4255   struct usb_interface *interface ;
4256   unsigned char disconnected : 1 ;
4257   unsigned char suspending : 1 ;
4258   unsigned char attached : 1 ;
4259   unsigned char minor ;
4260   unsigned char num_ports ;
4261   unsigned char num_port_pointers ;
4262   char num_interrupt_in ;
4263   char num_interrupt_out ;
4264   char num_bulk_in ;
4265   char num_bulk_out ;
4266   struct usb_serial_port *port[8] ;
4267   struct kref kref ;
4268   struct mutex disc_mutex ;
4269   void *private ;
4270};
4271#line 227 "include/linux/usb/serial.h"
4272struct usb_serial_driver {
4273   char const   *description ;
4274   struct usb_device_id  const  *id_table ;
4275   char num_ports ;
4276   struct list_head driver_list ;
4277   struct device_driver driver ;
4278   struct usb_driver *usb_driver ;
4279   struct usb_dynids dynids ;
4280   size_t bulk_in_size ;
4281   size_t bulk_out_size ;
4282   int (*probe)(struct usb_serial *serial , struct usb_device_id  const  *id ) ;
4283   int (*attach)(struct usb_serial *serial ) ;
4284   int (*calc_num_ports)(struct usb_serial *serial ) ;
4285   void (*disconnect)(struct usb_serial *serial ) ;
4286   void (*release)(struct usb_serial *serial ) ;
4287   int (*port_probe)(struct usb_serial_port *port ) ;
4288   int (*port_remove)(struct usb_serial_port *port ) ;
4289   int (*suspend)(struct usb_serial *serial , pm_message_t message ) ;
4290   int (*resume)(struct usb_serial *serial ) ;
4291   int (*open)(struct tty_struct *tty , struct usb_serial_port *port ) ;
4292   void (*close)(struct usb_serial_port *port ) ;
4293   int (*write)(struct tty_struct *tty , struct usb_serial_port *port , unsigned char const   *buf ,
4294                int count ) ;
4295   int (*write_room)(struct tty_struct *tty ) ;
4296   int (*ioctl)(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) ;
4297   void (*set_termios)(struct tty_struct *tty , struct usb_serial_port *port , struct ktermios *old ) ;
4298   void (*break_ctl)(struct tty_struct *tty , int break_state ) ;
4299   int (*chars_in_buffer)(struct tty_struct *tty ) ;
4300   void (*throttle)(struct tty_struct *tty ) ;
4301   void (*unthrottle)(struct tty_struct *tty ) ;
4302   int (*tiocmget)(struct tty_struct *tty ) ;
4303   int (*tiocmset)(struct tty_struct *tty , unsigned int set , unsigned int clear ) ;
4304   int (*get_icount)(struct tty_struct *tty , struct serial_icounter_struct *icount ) ;
4305   void (*dtr_rts)(struct usb_serial_port *port , int on ) ;
4306   int (*carrier_raised)(struct usb_serial_port *port ) ;
4307   void (*init_termios)(struct tty_struct *tty ) ;
4308   void (*read_int_callback)(struct urb *urb ) ;
4309   void (*write_int_callback)(struct urb *urb ) ;
4310   void (*read_bulk_callback)(struct urb *urb ) ;
4311   void (*write_bulk_callback)(struct urb *urb ) ;
4312   void (*process_read_urb)(struct urb *urb ) ;
4313   int (*prepare_write_buffer)(struct usb_serial_port *port , void *dest , size_t size ) ;
4314};
4315#line 147 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4316enum spcp8x5_type {
4317    SPCP825_007_TYPE = 0,
4318    SPCP825_008_TYPE = 1,
4319    SPCP825_PHILIP_TYPE = 2,
4320    SPCP825_INTERMATIC_TYPE = 3,
4321    SPCP835_TYPE = 4
4322} ;
4323#line 163 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4324struct spcp8x5_private {
4325   spinlock_t lock ;
4326   enum spcp8x5_type type ;
4327   wait_queue_head_t delta_msr_wait ;
4328   u8 line_control ;
4329   u8 line_status ;
4330};
4331#line 1 "<compiler builtins>"
4332long __builtin_expect(long val , long res ) ;
4333#line 315 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
4334__inline static int variable_test_bit(int nr , unsigned long const volatile   *addr )  __attribute__((__no_instrument_function__)) ;
4335#line 315 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
4336__inline static int variable_test_bit(int nr , unsigned long const volatile   *addr ) 
4337{ int oldbit ;
4338  unsigned long *__cil_tmp4 ;
4339
4340  {
4341#line 319
4342  __cil_tmp4 = (unsigned long *)addr;
4343#line 319
4344  __asm__  volatile   ("bt %2,%1\n\t"
4345                       "sbb %0,%0": "=r" (oldbit): "m" (*__cil_tmp4), "Ir" (nr));
4346#line 324
4347  return (oldbit);
4348}
4349}
4350#line 100 "include/linux/printk.h"
4351extern int ( /* format attribute */  printk)(char const   *fmt  , ...) ;
4352#line 49 "include/linux/dynamic_debug.h"
4353extern int ( /* format attribute */  __dynamic_dev_dbg)(struct _ddebug *descriptor ,
4354                                                        struct device  const  *dev ,
4355                                                        char const   *fmt  , ...) ;
4356#line 88 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/percpu.h"
4357extern void __bad_percpu_size(void) ;
4358#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
4359extern struct task_struct *current_task  __attribute__((__section__(".data..percpu"))) ;
4360#line 12
4361__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void)  __attribute__((__no_instrument_function__)) ;
4362#line 12 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
4363__inline static struct task_struct *( __attribute__((__always_inline__)) get_current)(void) 
4364{ struct task_struct *pfo_ret__ ;
4365
4366  {
4367#line 14
4368  if ((int )8UL == 1) {
4369#line 14
4370    goto case_1;
4371  } else
4372#line 14
4373  if ((int )8UL == 2) {
4374#line 14
4375    goto case_2;
4376  } else
4377#line 14
4378  if ((int )8UL == 4) {
4379#line 14
4380    goto case_4;
4381  } else
4382#line 14
4383  if ((int )8UL == 8) {
4384#line 14
4385    goto case_8;
4386  } else {
4387    {
4388#line 14
4389    goto switch_default;
4390#line 14
4391    if (0) {
4392      case_1: /* CIL Label */ 
4393#line 14
4394      __asm__  ("mov"
4395                "b "
4396                "%%"
4397                "gs"
4398                ":"
4399                "%P"
4400                "1"
4401                ",%0": "=q" (pfo_ret__): "p" (& current_task));
4402#line 14
4403      goto switch_break;
4404      case_2: /* CIL Label */ 
4405#line 14
4406      __asm__  ("mov"
4407                "w "
4408                "%%"
4409                "gs"
4410                ":"
4411                "%P"
4412                "1"
4413                ",%0": "=r" (pfo_ret__): "p" (& current_task));
4414#line 14
4415      goto switch_break;
4416      case_4: /* CIL Label */ 
4417#line 14
4418      __asm__  ("mov"
4419                "l "
4420                "%%"
4421                "gs"
4422                ":"
4423                "%P"
4424                "1"
4425                ",%0": "=r" (pfo_ret__): "p" (& current_task));
4426#line 14
4427      goto switch_break;
4428      case_8: /* CIL Label */ 
4429#line 14
4430      __asm__  ("mov"
4431                "q "
4432                "%%"
4433                "gs"
4434                ":"
4435                "%P"
4436                "1"
4437                ",%0": "=r" (pfo_ret__): "p" (& current_task));
4438#line 14
4439      goto switch_break;
4440      switch_default: /* CIL Label */ 
4441      {
4442#line 14
4443      __bad_percpu_size();
4444      }
4445    } else {
4446      switch_break: /* CIL Label */ ;
4447    }
4448    }
4449  }
4450#line 14
4451  return (pfo_ret__);
4452}
4453}
4454#line 82 "include/linux/thread_info.h"
4455__inline static int test_ti_thread_flag(struct thread_info *ti , int flag )  __attribute__((__no_instrument_function__)) ;
4456#line 82 "include/linux/thread_info.h"
4457__inline static int test_ti_thread_flag(struct thread_info *ti , int flag ) 
4458{ int tmp___0 ;
4459  unsigned long __cil_tmp5 ;
4460  unsigned long __cil_tmp6 ;
4461  __u32 *__cil_tmp7 ;
4462  unsigned long *__cil_tmp8 ;
4463  unsigned long const volatile   *__cil_tmp9 ;
4464
4465  {
4466  {
4467#line 84
4468  __cil_tmp5 = (unsigned long )ti;
4469#line 84
4470  __cil_tmp6 = __cil_tmp5 + 16;
4471#line 84
4472  __cil_tmp7 = (__u32 *)__cil_tmp6;
4473#line 84
4474  __cil_tmp8 = (unsigned long *)__cil_tmp7;
4475#line 84
4476  __cil_tmp9 = (unsigned long const volatile   *)__cil_tmp8;
4477#line 84
4478  tmp___0 = variable_test_bit(flag, __cil_tmp9);
4479  }
4480#line 84
4481  return (tmp___0);
4482}
4483}
4484#line 93 "include/linux/spinlock.h"
4485extern void __raw_spin_lock_init(raw_spinlock_t *lock , char const   *name , struct lock_class_key *key ) ;
4486#line 32 "include/linux/spinlock_api_smp.h"
4487extern unsigned long _raw_spin_lock_irqsave(raw_spinlock_t *lock )  __attribute__((__section__(".spinlock.text"))) ;
4488#line 42
4489extern void _raw_spin_unlock_irqrestore(raw_spinlock_t *lock , unsigned long flags )  __attribute__((__section__(".spinlock.text"))) ;
4490#line 272 "include/linux/spinlock.h"
4491__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock )  __attribute__((__no_instrument_function__)) ;
4492#line 272 "include/linux/spinlock.h"
4493__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) 
4494{ 
4495
4496  {
4497#line 274
4498  return ((struct raw_spinlock *)lock);
4499}
4500}
4501#line 338
4502__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags )  __attribute__((__no_instrument_function__)) ;
4503#line 338 "include/linux/spinlock.h"
4504__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) 
4505{ struct raw_spinlock *__cil_tmp5 ;
4506
4507  {
4508  {
4509#line 340
4510  while (1) {
4511    while_continue: /* CIL Label */ ;
4512    {
4513#line 340
4514    __cil_tmp5 = (struct raw_spinlock *)lock;
4515#line 340
4516    _raw_spin_unlock_irqrestore(__cil_tmp5, flags);
4517    }
4518#line 340
4519    goto while_break;
4520  }
4521  while_break: /* CIL Label */ ;
4522  }
4523#line 341
4524  return;
4525}
4526}
4527#line 79 "include/linux/wait.h"
4528extern void __init_waitqueue_head(wait_queue_head_t *q , char const   *name , struct lock_class_key * ) ;
4529#line 155
4530extern void __wake_up(wait_queue_head_t *q , unsigned int mode , int nr , void *key ) ;
4531#line 577
4532extern void interruptible_sleep_on(wait_queue_head_t *q ) ;
4533#line 152 "include/linux/mutex.h"
4534void mutex_lock(struct mutex *lock ) ;
4535#line 153
4536int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
4537#line 154
4538int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
4539#line 168
4540int mutex_trylock(struct mutex *lock ) ;
4541#line 169
4542void mutex_unlock(struct mutex *lock ) ;
4543#line 170
4544int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
4545#line 161 "include/linux/slab.h"
4546extern void kfree(void const   * ) ;
4547#line 221 "include/linux/slub_def.h"
4548extern void *__kmalloc(size_t size , gfp_t flags ) ;
4549#line 268
4550__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
4551                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
4552#line 268 "include/linux/slub_def.h"
4553__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
4554                                                                    gfp_t flags ) 
4555{ void *tmp___2 ;
4556
4557  {
4558  {
4559#line 283
4560  tmp___2 = __kmalloc(size, flags);
4561  }
4562#line 283
4563  return (tmp___2);
4564}
4565}
4566#line 349 "include/linux/slab.h"
4567__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
4568#line 349 "include/linux/slab.h"
4569__inline static void *kzalloc(size_t size , gfp_t flags ) 
4570{ void *tmp ;
4571  unsigned int __cil_tmp4 ;
4572
4573  {
4574  {
4575#line 351
4576  __cil_tmp4 = flags | 32768U;
4577#line 351
4578  tmp = kmalloc(size, __cil_tmp4);
4579  }
4580#line 351
4581  return (tmp);
4582}
4583}
4584#line 26 "include/linux/export.h"
4585extern struct module __this_module ;
4586#line 792 "include/linux/device.h"
4587extern void *dev_get_drvdata(struct device  const  *dev ) ;
4588#line 793
4589extern int dev_set_drvdata(struct device *dev , void *data ) ;
4590#line 891
4591extern int ( /* format attribute */  dev_err)(struct device  const  *dev , char const   *fmt 
4592                                              , ...) ;
4593#line 378 "include/linux/tty.h"
4594extern struct ktermios tty_std_termios ;
4595#line 400
4596extern void tty_kref_put(struct tty_struct *tty ) ;
4597#line 442
4598extern void tty_flip_buffer_push(struct tty_struct *tty ) ;
4599#line 447
4600extern speed_t tty_get_baud_rate(struct tty_struct *tty ) ;
4601#line 455
4602extern int tty_termios_hw_change(struct ktermios *a , struct ktermios *b ) ;
4603#line 511
4604extern struct tty_struct *tty_port_tty_get(struct tty_port *port ) ;
4605#line 5 "include/linux/tty_flip.h"
4606extern int tty_insert_flip_string_flags(struct tty_struct *tty , unsigned char const   *chars ,
4607                                        char const   *flags , size_t size ) ;
4608#line 6
4609extern int tty_insert_flip_string_fixed_flag(struct tty_struct *tty , unsigned char const   *chars ,
4610                                             char flag , size_t size ) ;
4611#line 11
4612__inline static int tty_insert_flip_char(struct tty_struct *tty , unsigned char ch ,
4613                                         char flag )  __attribute__((__no_instrument_function__)) ;
4614#line 11 "include/linux/tty_flip.h"
4615__inline static int tty_insert_flip_char(struct tty_struct *tty , unsigned char ch ,
4616                                         char flag ) 
4617{ struct tty_buffer *tb ;
4618  int tmp ;
4619  int tmp___0 ;
4620  unsigned long __cil_tmp7 ;
4621  unsigned long __cil_tmp8 ;
4622  unsigned long __cil_tmp9 ;
4623  unsigned long __cil_tmp10 ;
4624  unsigned long __cil_tmp11 ;
4625  int __cil_tmp12 ;
4626  unsigned long __cil_tmp13 ;
4627  unsigned long __cil_tmp14 ;
4628  int __cil_tmp15 ;
4629  unsigned long __cil_tmp16 ;
4630  unsigned long __cil_tmp17 ;
4631  int __cil_tmp18 ;
4632  unsigned long __cil_tmp19 ;
4633  unsigned long __cil_tmp20 ;
4634  unsigned char *__cil_tmp21 ;
4635  unsigned char *__cil_tmp22 ;
4636  char *__cil_tmp23 ;
4637  char __cil_tmp24 ;
4638  unsigned long __cil_tmp25 ;
4639  unsigned long __cil_tmp26 ;
4640  unsigned long __cil_tmp27 ;
4641  unsigned long __cil_tmp28 ;
4642  unsigned long __cil_tmp29 ;
4643  unsigned long __cil_tmp30 ;
4644  int __cil_tmp31 ;
4645  unsigned long __cil_tmp32 ;
4646  unsigned long __cil_tmp33 ;
4647  char *__cil_tmp34 ;
4648  char *__cil_tmp35 ;
4649  unsigned char *__cil_tmp36 ;
4650  unsigned char __cil_tmp37 ;
4651  unsigned char const   *__cil_tmp38 ;
4652  char const   *__cil_tmp39 ;
4653  size_t __cil_tmp40 ;
4654
4655  {
4656#line 14
4657  __cil_tmp7 = 368 + 64;
4658#line 14
4659  __cil_tmp8 = (unsigned long )tty;
4660#line 14
4661  __cil_tmp9 = __cil_tmp8 + __cil_tmp7;
4662#line 14
4663  tb = *((struct tty_buffer **)__cil_tmp9);
4664#line 15
4665  if (tb) {
4666    {
4667#line 15
4668    __cil_tmp10 = (unsigned long )tb;
4669#line 15
4670    __cil_tmp11 = __cil_tmp10 + 28;
4671#line 15
4672    __cil_tmp12 = *((int *)__cil_tmp11);
4673#line 15
4674    __cil_tmp13 = (unsigned long )tb;
4675#line 15
4676    __cil_tmp14 = __cil_tmp13 + 24;
4677#line 15
4678    __cil_tmp15 = *((int *)__cil_tmp14);
4679#line 15
4680    if (__cil_tmp15 < __cil_tmp12) {
4681#line 16
4682      __cil_tmp16 = (unsigned long )tb;
4683#line 16
4684      __cil_tmp17 = __cil_tmp16 + 24;
4685#line 16
4686      __cil_tmp18 = *((int *)__cil_tmp17);
4687#line 16
4688      __cil_tmp19 = (unsigned long )tb;
4689#line 16
4690      __cil_tmp20 = __cil_tmp19 + 16;
4691#line 16
4692      __cil_tmp21 = *((unsigned char **)__cil_tmp20);
4693#line 16
4694      __cil_tmp22 = __cil_tmp21 + __cil_tmp18;
4695#line 16
4696      __cil_tmp23 = & flag;
4697#line 16
4698      __cil_tmp24 = *__cil_tmp23;
4699#line 16
4700      *__cil_tmp22 = (unsigned char )__cil_tmp24;
4701#line 17
4702      __cil_tmp25 = (unsigned long )tb;
4703#line 17
4704      __cil_tmp26 = __cil_tmp25 + 24;
4705#line 17
4706      tmp = *((int *)__cil_tmp26);
4707#line 17
4708      __cil_tmp27 = (unsigned long )tb;
4709#line 17
4710      __cil_tmp28 = __cil_tmp27 + 24;
4711#line 17
4712      __cil_tmp29 = (unsigned long )tb;
4713#line 17
4714      __cil_tmp30 = __cil_tmp29 + 24;
4715#line 17
4716      __cil_tmp31 = *((int *)__cil_tmp30);
4717#line 17
4718      *((int *)__cil_tmp28) = __cil_tmp31 + 1;
4719#line 17
4720      __cil_tmp32 = (unsigned long )tb;
4721#line 17
4722      __cil_tmp33 = __cil_tmp32 + 8;
4723#line 17
4724      __cil_tmp34 = *((char **)__cil_tmp33);
4725#line 17
4726      __cil_tmp35 = __cil_tmp34 + tmp;
4727#line 17
4728      __cil_tmp36 = & ch;
4729#line 17
4730      __cil_tmp37 = *__cil_tmp36;
4731#line 17
4732      *__cil_tmp35 = (char )__cil_tmp37;
4733#line 18
4734      return (1);
4735    } else {
4736
4737    }
4738    }
4739  } else {
4740
4741  }
4742  {
4743#line 20
4744  __cil_tmp38 = (unsigned char const   *)(& ch);
4745#line 20
4746  __cil_tmp39 = (char const   *)(& flag);
4747#line 20
4748  __cil_tmp40 = (size_t )1;
4749#line 20
4750  tmp___0 = tty_insert_flip_string_flags(tty, __cil_tmp38, __cil_tmp39, __cil_tmp40);
4751  }
4752#line 20
4753  return (tmp___0);
4754}
4755}
4756#line 382 "include/linux/moduleparam.h"
4757extern struct kernel_param_ops param_ops_bool ;
4758#line 67 "include/linux/module.h"
4759int init_module(void) ;
4760#line 68
4761void cleanup_module(void) ;
4762#line 2563 "include/linux/sched.h"
4763__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag )  __attribute__((__no_instrument_function__)) ;
4764#line 2563 "include/linux/sched.h"
4765__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag ) 
4766{ int tmp___7 ;
4767  unsigned long __cil_tmp4 ;
4768  unsigned long __cil_tmp5 ;
4769  void *__cil_tmp6 ;
4770  struct thread_info *__cil_tmp7 ;
4771
4772  {
4773  {
4774#line 2565
4775  __cil_tmp4 = (unsigned long )tsk;
4776#line 2565
4777  __cil_tmp5 = __cil_tmp4 + 8;
4778#line 2565
4779  __cil_tmp6 = *((void **)__cil_tmp5);
4780#line 2565
4781  __cil_tmp7 = (struct thread_info *)__cil_tmp6;
4782#line 2565
4783  tmp___7 = test_ti_thread_flag(__cil_tmp7, flag);
4784  }
4785#line 2565
4786  return (tmp___7);
4787}
4788}
4789#line 2589
4790__inline static int signal_pending(struct task_struct *p )  __attribute__((__no_instrument_function__)) ;
4791#line 2589 "include/linux/sched.h"
4792__inline static int signal_pending(struct task_struct *p ) 
4793{ int tmp___7 ;
4794  int tmp___8 ;
4795  long tmp___9 ;
4796  long __cil_tmp5 ;
4797
4798  {
4799  {
4800#line 2591
4801  tmp___7 = test_tsk_thread_flag(p, 2);
4802  }
4803#line 2591
4804  if (tmp___7) {
4805#line 2591
4806    tmp___8 = 1;
4807  } else {
4808#line 2591
4809    tmp___8 = 0;
4810  }
4811  {
4812#line 2591
4813  __cil_tmp5 = (long )tmp___8;
4814#line 2591
4815  tmp___9 = __builtin_expect(__cil_tmp5, 0L);
4816  }
4817#line 2591
4818  return ((int )tmp___9);
4819}
4820}
4821#line 1443 "include/linux/usb.h"
4822extern int usb_control_msg(struct usb_device *dev , unsigned int pipe , __u8 request ,
4823                           __u8 requesttype , __u16 value , __u16 index , void *data ,
4824                           __u16 size , int timeout ) ;
4825#line 1461
4826extern int usb_clear_halt(struct usb_device *dev , int pipe ) ;
4827#line 1567
4828__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint )  __attribute__((__no_instrument_function__)) ;
4829#line 1567 "include/linux/usb.h"
4830__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint ) 
4831{ unsigned int __cil_tmp3 ;
4832  int __cil_tmp4 ;
4833  int __cil_tmp5 ;
4834  unsigned int __cil_tmp6 ;
4835
4836  {
4837  {
4838#line 1570
4839  __cil_tmp3 = endpoint << 15;
4840#line 1570
4841  __cil_tmp4 = *((int *)dev);
4842#line 1570
4843  __cil_tmp5 = __cil_tmp4 << 8;
4844#line 1570
4845  __cil_tmp6 = (unsigned int )__cil_tmp5;
4846#line 1570
4847  return (__cil_tmp6 | __cil_tmp3);
4848  }
4849}
4850}
4851#line 124 "include/linux/usb/serial.h"
4852__inline static void *usb_get_serial_port_data(struct usb_serial_port *port )  __attribute__((__no_instrument_function__)) ;
4853#line 124 "include/linux/usb/serial.h"
4854__inline static void *usb_get_serial_port_data(struct usb_serial_port *port ) 
4855{ void *tmp___7 ;
4856  unsigned long __cil_tmp3 ;
4857  unsigned long __cil_tmp4 ;
4858  struct device *__cil_tmp5 ;
4859  struct device  const  *__cil_tmp6 ;
4860
4861  {
4862  {
4863#line 126
4864  __cil_tmp3 = (unsigned long )port;
4865#line 126
4866  __cil_tmp4 = __cil_tmp3 + 712;
4867#line 126
4868  __cil_tmp5 = (struct device *)__cil_tmp4;
4869#line 126
4870  __cil_tmp6 = (struct device  const  *)__cil_tmp5;
4871#line 126
4872  tmp___7 = dev_get_drvdata(__cil_tmp6);
4873  }
4874#line 126
4875  return (tmp___7);
4876}
4877}
4878#line 129
4879__inline static void usb_set_serial_port_data(struct usb_serial_port *port , void *data )  __attribute__((__no_instrument_function__)) ;
4880#line 129 "include/linux/usb/serial.h"
4881__inline static void usb_set_serial_port_data(struct usb_serial_port *port , void *data ) 
4882{ unsigned long __cil_tmp3 ;
4883  unsigned long __cil_tmp4 ;
4884  struct device *__cil_tmp5 ;
4885
4886  {
4887  {
4888#line 132
4889  __cil_tmp3 = (unsigned long )port;
4890#line 132
4891  __cil_tmp4 = __cil_tmp3 + 712;
4892#line 132
4893  __cil_tmp5 = (struct device *)__cil_tmp4;
4894#line 132
4895  dev_set_drvdata(__cil_tmp5, data);
4896  }
4897#line 133
4898  return;
4899}
4900}
4901#line 295
4902extern int usb_serial_register_drivers(struct usb_driver *udriver , struct usb_serial_driver * const  *serial_drivers ) ;
4903#line 297
4904extern void usb_serial_deregister_drivers(struct usb_driver *udriver , struct usb_serial_driver * const  *serial_drivers ) ;
4905#line 301
4906extern int usb_serial_probe(struct usb_interface *iface , struct usb_device_id  const  *id ) ;
4907#line 303
4908extern void usb_serial_disconnect(struct usb_interface *iface ) ;
4909#line 326
4910extern int usb_serial_generic_open(struct tty_struct *tty , struct usb_serial_port *port ) ;
4911#line 350
4912extern void usb_serial_handle_dcd_change(struct usb_serial_port *usb_port , struct tty_struct *tty ,
4913                                         unsigned int status ) ;
4914#line 37 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4915static bool debug  ;
4916#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4917static struct usb_device_id  const  id_table[5]  = {      {(__u16 )3, (__u16 )1137, (__u16 )2078, (unsigned short)0, (unsigned short)0,
4918      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4919      (unsigned char)0, 0UL}, 
4920        {(__u16 )3, (__u16 )1276, (__u16 )516, (unsigned short)0, (unsigned short)0,
4921      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4922      (unsigned char)0, 0UL}, 
4923        {(__u16 )3, (__u16 )1276, (__u16 )561, (unsigned short)0, (unsigned short)0,
4924      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4925      (unsigned char)0, 0UL}, 
4926        {(__u16 )3, (__u16 )1276, (__u16 )565, (unsigned short)0, (unsigned short)0,
4927      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4928      (unsigned char)0, 0UL}, 
4929        {(__u16 )3, (__u16 )1276, (__u16 )513, (unsigned short)0, (unsigned short)0,
4930      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
4931      (unsigned char)0, 0UL}};
4932#line 58
4933extern struct usb_device_id  const  __mod_usb_device_table  __attribute__((__unused__,
4934__alias__("id_table"))) ;
4935#line 155 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4936static struct usb_driver spcp8x5_driver  = 
4937#line 155
4938     {"spcp8x5", & usb_serial_probe, & usb_serial_disconnect, (int (*)(struct usb_interface *intf ,
4939                                                                     unsigned int code ,
4940                                                                     void *buf ))0,
4941    (int (*)(struct usb_interface *intf , pm_message_t message ))0, (int (*)(struct usb_interface *intf ))0,
4942    (int (*)(struct usb_interface *intf ))0, (int (*)(struct usb_interface *intf ))0,
4943    (int (*)(struct usb_interface *intf ))0, id_table, {{{{{{0U}}, 0U, 0U, (void *)0}}},
4944                                                        {(struct list_head *)0, (struct list_head *)0}},
4945    {{(char const   *)0, (struct bus_type *)0, (struct module *)0, (char const   *)0,
4946      (_Bool)0, (struct of_device_id  const  *)0, (int (*)(struct device *dev ))0,
4947      (int (*)(struct device *dev ))0, (void (*)(struct device *dev ))0, (int (*)(struct device *dev ,
4948                                                                                  pm_message_t state ))0,
4949      (int (*)(struct device *dev ))0, (struct attribute_group  const  **)0, (struct dev_pm_ops  const  *)0,
4950      (struct driver_private *)0}, 0}, 0U, 0U, 0U};
4951#line 192
4952static int spcp8x5_startup(struct usb_serial *serial ) ;
4953#line 192 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4954static struct _ddebug  __attribute__((__aligned__(8))) descriptor  __attribute__((__used__,
4955__section__("__verbose")))  =    {"spcp8x5", "spcp8x5_startup", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
4956    "device type = %d\n", 192U, 0U};
4957#line 199 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4958static struct lock_class_key __key___6  ;
4959#line 200 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4960static struct lock_class_key __key___7  ;
4961#line 174 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
4962static int spcp8x5_startup(struct usb_serial *serial ) 
4963{ struct spcp8x5_private *priv ;
4964  int i ;
4965  enum spcp8x5_type type ;
4966  u16 product ;
4967  long tmp___7 ;
4968  void *tmp___8 ;
4969  void *tmp___9 ;
4970  unsigned long __cil_tmp9 ;
4971  struct usb_device *__cil_tmp10 ;
4972  unsigned long __cil_tmp11 ;
4973  unsigned long __cil_tmp12 ;
4974  int __cil_tmp13 ;
4975  int __cil_tmp14 ;
4976  int __cil_tmp15 ;
4977  int __cil_tmp16 ;
4978  int __cil_tmp17 ;
4979  unsigned long __cil_tmp18 ;
4980  struct usb_device *__cil_tmp19 ;
4981  unsigned long __cil_tmp20 ;
4982  unsigned long __cil_tmp21 ;
4983  __le16 __cil_tmp22 ;
4984  int __cil_tmp23 ;
4985  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp24 ;
4986  unsigned int __cil_tmp25 ;
4987  unsigned int __cil_tmp26 ;
4988  int __cil_tmp27 ;
4989  int __cil_tmp28 ;
4990  long __cil_tmp29 ;
4991  struct usb_device *__cil_tmp30 ;
4992  unsigned long __cil_tmp31 ;
4993  unsigned long __cil_tmp32 ;
4994  struct device *__cil_tmp33 ;
4995  struct device  const  *__cil_tmp34 ;
4996  int __cil_tmp35 ;
4997  unsigned long __cil_tmp36 ;
4998  unsigned long __cil_tmp37 ;
4999  unsigned char __cil_tmp38 ;
5000  int __cil_tmp39 ;
5001  spinlock_t *__cil_tmp40 ;
5002  struct raw_spinlock *__cil_tmp41 ;
5003  unsigned long __cil_tmp42 ;
5004  unsigned long __cil_tmp43 ;
5005  wait_queue_head_t *__cil_tmp44 ;
5006  unsigned long __cil_tmp45 ;
5007  unsigned long __cil_tmp46 ;
5008  unsigned long __cil_tmp47 ;
5009  unsigned long __cil_tmp48 ;
5010  unsigned long __cil_tmp49 ;
5011  unsigned long __cil_tmp50 ;
5012  struct usb_serial_port *__cil_tmp51 ;
5013  void *__cil_tmp52 ;
5014  unsigned long __cil_tmp53 ;
5015  unsigned long __cil_tmp54 ;
5016  unsigned long __cil_tmp55 ;
5017  unsigned long __cil_tmp56 ;
5018  struct usb_serial_port *__cil_tmp57 ;
5019  void const   *__cil_tmp58 ;
5020  unsigned long __cil_tmp59 ;
5021  unsigned long __cil_tmp60 ;
5022  unsigned long __cil_tmp61 ;
5023  unsigned long __cil_tmp62 ;
5024  struct usb_serial_port *__cil_tmp63 ;
5025  void *__cil_tmp64 ;
5026
5027  {
5028#line 178
5029  type = (enum spcp8x5_type )0;
5030#line 179
5031  __cil_tmp9 = 904 + 10;
5032#line 179
5033  __cil_tmp10 = *((struct usb_device **)serial);
5034#line 179
5035  __cil_tmp11 = (unsigned long )__cil_tmp10;
5036#line 179
5037  __cil_tmp12 = __cil_tmp11 + __cil_tmp9;
5038#line 179
5039  product = *((__le16 *)__cil_tmp12);
5040  {
5041#line 181
5042  __cil_tmp13 = (int )product;
5043#line 181
5044  if (__cil_tmp13 == 513) {
5045#line 182
5046    type = (enum spcp8x5_type )0;
5047  } else {
5048    {
5049#line 183
5050    __cil_tmp14 = (int )product;
5051#line 183
5052    if (__cil_tmp14 == 561) {
5053#line 184
5054      type = (enum spcp8x5_type )4;
5055    } else {
5056      {
5057#line 185
5058      __cil_tmp15 = (int )product;
5059#line 185
5060      if (__cil_tmp15 == 565) {
5061#line 186
5062        type = (enum spcp8x5_type )1;
5063      } else {
5064        {
5065#line 187
5066        __cil_tmp16 = (int )product;
5067#line 187
5068        if (__cil_tmp16 == 516) {
5069#line 188
5070          type = (enum spcp8x5_type )3;
5071        } else {
5072          {
5073#line 189
5074          __cil_tmp17 = (int )product;
5075#line 189
5076          if (__cil_tmp17 == 1137) {
5077            {
5078#line 189
5079            __cil_tmp18 = 904 + 8;
5080#line 189
5081            __cil_tmp19 = *((struct usb_device **)serial);
5082#line 189
5083            __cil_tmp20 = (unsigned long )__cil_tmp19;
5084#line 189
5085            __cil_tmp21 = __cil_tmp20 + __cil_tmp18;
5086#line 189
5087            __cil_tmp22 = *((__le16 *)__cil_tmp21);
5088#line 189
5089            __cil_tmp23 = (int )__cil_tmp22;
5090#line 189
5091            if (__cil_tmp23 == 2078) {
5092#line 191
5093              type = (enum spcp8x5_type )2;
5094            } else {
5095
5096            }
5097            }
5098          } else {
5099
5100          }
5101          }
5102        }
5103        }
5104      }
5105      }
5106    }
5107    }
5108  }
5109  }
5110  {
5111#line 192
5112  while (1) {
5113    while_continue: /* CIL Label */ ;
5114    {
5115#line 192
5116    while (1) {
5117      while_continue___0: /* CIL Label */ ;
5118      {
5119#line 192
5120      __cil_tmp24 = & descriptor;
5121#line 192
5122      __cil_tmp25 = __cil_tmp24->flags;
5123#line 192
5124      __cil_tmp26 = __cil_tmp25 & 1U;
5125#line 192
5126      __cil_tmp27 = ! __cil_tmp26;
5127#line 192
5128      __cil_tmp28 = ! __cil_tmp27;
5129#line 192
5130      __cil_tmp29 = (long )__cil_tmp28;
5131#line 192
5132      tmp___7 = __builtin_expect(__cil_tmp29, 0L);
5133      }
5134#line 192
5135      if (tmp___7) {
5136        {
5137#line 192
5138        __cil_tmp30 = *((struct usb_device **)serial);
5139#line 192
5140        __cil_tmp31 = (unsigned long )__cil_tmp30;
5141#line 192
5142        __cil_tmp32 = __cil_tmp31 + 136;
5143#line 192
5144        __cil_tmp33 = (struct device *)__cil_tmp32;
5145#line 192
5146        __cil_tmp34 = (struct device  const  *)__cil_tmp33;
5147#line 192
5148        __cil_tmp35 = (int )type;
5149#line 192
5150        __dynamic_dev_dbg(& descriptor, __cil_tmp34, "device type = %d\n", __cil_tmp35);
5151        }
5152      } else {
5153
5154      }
5155#line 192
5156      goto while_break___0;
5157    }
5158    while_break___0: /* CIL Label */ ;
5159    }
5160#line 192
5161    goto while_break;
5162  }
5163  while_break: /* CIL Label */ ;
5164  }
5165#line 194
5166  i = 0;
5167  {
5168#line 194
5169  while (1) {
5170    while_continue___1: /* CIL Label */ ;
5171    {
5172#line 194
5173    __cil_tmp36 = (unsigned long )serial;
5174#line 194
5175    __cil_tmp37 = __cil_tmp36 + 26;
5176#line 194
5177    __cil_tmp38 = *((unsigned char *)__cil_tmp37);
5178#line 194
5179    __cil_tmp39 = (int )__cil_tmp38;
5180#line 194
5181    if (i < __cil_tmp39) {
5182
5183    } else {
5184#line 194
5185      goto while_break___1;
5186    }
5187    }
5188    {
5189#line 195
5190    tmp___8 = kzalloc(80UL, 208U);
5191#line 195
5192    priv = (struct spcp8x5_private *)tmp___8;
5193    }
5194#line 196
5195    if (! priv) {
5196#line 197
5197      goto cleanup;
5198    } else {
5199
5200    }
5201    {
5202#line 199
5203    while (1) {
5204      while_continue___2: /* CIL Label */ ;
5205      {
5206#line 199
5207      __cil_tmp40 = (spinlock_t *)priv;
5208#line 199
5209      spinlock_check(__cil_tmp40);
5210      }
5211      {
5212#line 199
5213      while (1) {
5214        while_continue___3: /* CIL Label */ ;
5215        {
5216#line 199
5217        __cil_tmp41 = (struct raw_spinlock *)priv;
5218#line 199
5219        __raw_spin_lock_init(__cil_tmp41, "&(&priv->lock)->rlock", & __key___6);
5220        }
5221#line 199
5222        goto while_break___3;
5223      }
5224      while_break___3: /* CIL Label */ ;
5225      }
5226#line 199
5227      goto while_break___2;
5228    }
5229    while_break___2: /* CIL Label */ ;
5230    }
5231    {
5232#line 200
5233    while (1) {
5234      while_continue___4: /* CIL Label */ ;
5235      {
5236#line 200
5237      __cil_tmp42 = (unsigned long )priv;
5238#line 200
5239      __cil_tmp43 = __cil_tmp42 + 32;
5240#line 200
5241      __cil_tmp44 = (wait_queue_head_t *)__cil_tmp43;
5242#line 200
5243      __init_waitqueue_head(__cil_tmp44, "&priv->delta_msr_wait", & __key___7);
5244      }
5245#line 200
5246      goto while_break___4;
5247    }
5248    while_break___4: /* CIL Label */ ;
5249    }
5250    {
5251#line 201
5252    __cil_tmp45 = (unsigned long )priv;
5253#line 201
5254    __cil_tmp46 = __cil_tmp45 + 24;
5255#line 201
5256    *((enum spcp8x5_type *)__cil_tmp46) = type;
5257#line 202
5258    __cil_tmp47 = i * 8UL;
5259#line 202
5260    __cil_tmp48 = 32 + __cil_tmp47;
5261#line 202
5262    __cil_tmp49 = (unsigned long )serial;
5263#line 202
5264    __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
5265#line 202
5266    __cil_tmp51 = *((struct usb_serial_port **)__cil_tmp50);
5267#line 202
5268    __cil_tmp52 = (void *)priv;
5269#line 202
5270    usb_set_serial_port_data(__cil_tmp51, __cil_tmp52);
5271#line 194
5272    i = i + 1;
5273    }
5274  }
5275  while_break___1: /* CIL Label */ ;
5276  }
5277#line 205
5278  return (0);
5279  cleanup: 
5280#line 207
5281  i = i - 1;
5282  {
5283#line 207
5284  while (1) {
5285    while_continue___5: /* CIL Label */ ;
5286#line 207
5287    if (i >= 0) {
5288
5289    } else {
5290#line 207
5291      goto while_break___5;
5292    }
5293    {
5294#line 208
5295    __cil_tmp53 = i * 8UL;
5296#line 208
5297    __cil_tmp54 = 32 + __cil_tmp53;
5298#line 208
5299    __cil_tmp55 = (unsigned long )serial;
5300#line 208
5301    __cil_tmp56 = __cil_tmp55 + __cil_tmp54;
5302#line 208
5303    __cil_tmp57 = *((struct usb_serial_port **)__cil_tmp56);
5304#line 208
5305    tmp___9 = usb_get_serial_port_data(__cil_tmp57);
5306#line 208
5307    priv = (struct spcp8x5_private *)tmp___9;
5308#line 209
5309    __cil_tmp58 = (void const   *)priv;
5310#line 209
5311    kfree(__cil_tmp58);
5312#line 210
5313    __cil_tmp59 = i * 8UL;
5314#line 210
5315    __cil_tmp60 = 32 + __cil_tmp59;
5316#line 210
5317    __cil_tmp61 = (unsigned long )serial;
5318#line 210
5319    __cil_tmp62 = __cil_tmp61 + __cil_tmp60;
5320#line 210
5321    __cil_tmp63 = *((struct usb_serial_port **)__cil_tmp62);
5322#line 210
5323    __cil_tmp64 = (void *)0;
5324#line 210
5325    usb_set_serial_port_data(__cil_tmp63, __cil_tmp64);
5326#line 207
5327    i = i - 1;
5328    }
5329  }
5330  while_break___5: /* CIL Label */ ;
5331  }
5332#line 212
5333  return (-12);
5334}
5335}
5336#line 216 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5337static void spcp8x5_release(struct usb_serial *serial ) 
5338{ int i ;
5339  void *tmp___7 ;
5340  unsigned long __cil_tmp4 ;
5341  unsigned long __cil_tmp5 ;
5342  unsigned char __cil_tmp6 ;
5343  int __cil_tmp7 ;
5344  unsigned long __cil_tmp8 ;
5345  unsigned long __cil_tmp9 ;
5346  unsigned long __cil_tmp10 ;
5347  unsigned long __cil_tmp11 ;
5348  struct usb_serial_port *__cil_tmp12 ;
5349  void const   *__cil_tmp13 ;
5350
5351  {
5352#line 220
5353  i = 0;
5354  {
5355#line 220
5356  while (1) {
5357    while_continue: /* CIL Label */ ;
5358    {
5359#line 220
5360    __cil_tmp4 = (unsigned long )serial;
5361#line 220
5362    __cil_tmp5 = __cil_tmp4 + 26;
5363#line 220
5364    __cil_tmp6 = *((unsigned char *)__cil_tmp5);
5365#line 220
5366    __cil_tmp7 = (int )__cil_tmp6;
5367#line 220
5368    if (i < __cil_tmp7) {
5369
5370    } else {
5371#line 220
5372      goto while_break;
5373    }
5374    }
5375    {
5376#line 221
5377    __cil_tmp8 = i * 8UL;
5378#line 221
5379    __cil_tmp9 = 32 + __cil_tmp8;
5380#line 221
5381    __cil_tmp10 = (unsigned long )serial;
5382#line 221
5383    __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
5384#line 221
5385    __cil_tmp12 = *((struct usb_serial_port **)__cil_tmp11);
5386#line 221
5387    tmp___7 = usb_get_serial_port_data(__cil_tmp12);
5388#line 221
5389    __cil_tmp13 = (void const   *)tmp___7;
5390#line 221
5391    kfree(__cil_tmp13);
5392#line 220
5393    i = i + 1;
5394    }
5395  }
5396  while_break: /* CIL Label */ ;
5397  }
5398#line 222
5399  return;
5400}
5401}
5402#line 240
5403static int spcp8x5_set_ctrlLine(struct usb_device *dev , u8 value , enum spcp8x5_type type ) ;
5404#line 240 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5405static struct _ddebug  __attribute__((__aligned__(8))) descriptor___0  __attribute__((__used__,
5406__section__("__verbose")))  =    {"spcp8x5", "spcp8x5_set_ctrlLine", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
5407    "usb_control_msg return %#x\n", 240U, 0U};
5408#line 226 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5409static int spcp8x5_set_ctrlLine(struct usb_device *dev , u8 value , enum spcp8x5_type type ) 
5410{ int retval ;
5411  u8 mcr ;
5412  unsigned int tmp___7 ;
5413  long tmp___8 ;
5414  unsigned int __cil_tmp8 ;
5415  unsigned short __cil_tmp9 ;
5416  int __cil_tmp10 ;
5417  unsigned int __cil_tmp11 ;
5418  unsigned int __cil_tmp12 ;
5419  __u8 __cil_tmp13 ;
5420  __u8 __cil_tmp14 ;
5421  __u16 __cil_tmp15 ;
5422  __u16 __cil_tmp16 ;
5423  void *__cil_tmp17 ;
5424  __u16 __cil_tmp18 ;
5425  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp19 ;
5426  unsigned int __cil_tmp20 ;
5427  unsigned int __cil_tmp21 ;
5428  int __cil_tmp22 ;
5429  int __cil_tmp23 ;
5430  long __cil_tmp24 ;
5431  unsigned long __cil_tmp25 ;
5432  unsigned long __cil_tmp26 ;
5433  struct device *__cil_tmp27 ;
5434  struct device  const  *__cil_tmp28 ;
5435
5436  {
5437#line 230
5438  mcr = (u8 )0;
5439  {
5440#line 232
5441  __cil_tmp8 = (unsigned int )type;
5442#line 232
5443  if (__cil_tmp8 == 0U) {
5444#line 233
5445    return (-1);
5446  } else {
5447
5448  }
5449  }
5450  {
5451#line 235
5452  __cil_tmp9 = (unsigned short )value;
5453#line 235
5454  mcr = (u8 )__cil_tmp9;
5455#line 236
5456  tmp___7 = __create_pipe(dev, 0U);
5457#line 236
5458  __cil_tmp10 = 2 << 30;
5459#line 236
5460  __cil_tmp11 = (unsigned int )__cil_tmp10;
5461#line 236
5462  __cil_tmp12 = __cil_tmp11 | tmp___7;
5463#line 236
5464  __cil_tmp13 = (__u8 )35;
5465#line 236
5466  __cil_tmp14 = (__u8 )64;
5467#line 236
5468  __cil_tmp15 = (__u16 )mcr;
5469#line 236
5470  __cil_tmp16 = (__u16 )4;
5471#line 236
5472  __cil_tmp17 = (void *)0;
5473#line 236
5474  __cil_tmp18 = (__u16 )0;
5475#line 236
5476  retval = usb_control_msg(dev, __cil_tmp12, __cil_tmp13, __cil_tmp14, __cil_tmp15,
5477                           __cil_tmp16, __cil_tmp17, __cil_tmp18, 100);
5478  }
5479#line 239
5480  if (retval != 0) {
5481    {
5482#line 240
5483    while (1) {
5484      while_continue: /* CIL Label */ ;
5485      {
5486#line 240
5487      while (1) {
5488        while_continue___0: /* CIL Label */ ;
5489        {
5490#line 240
5491        __cil_tmp19 = & descriptor___0;
5492#line 240
5493        __cil_tmp20 = __cil_tmp19->flags;
5494#line 240
5495        __cil_tmp21 = __cil_tmp20 & 1U;
5496#line 240
5497        __cil_tmp22 = ! __cil_tmp21;
5498#line 240
5499        __cil_tmp23 = ! __cil_tmp22;
5500#line 240
5501        __cil_tmp24 = (long )__cil_tmp23;
5502#line 240
5503        tmp___8 = __builtin_expect(__cil_tmp24, 0L);
5504        }
5505#line 240
5506        if (tmp___8) {
5507          {
5508#line 240
5509          __cil_tmp25 = (unsigned long )dev;
5510#line 240
5511          __cil_tmp26 = __cil_tmp25 + 136;
5512#line 240
5513          __cil_tmp27 = (struct device *)__cil_tmp26;
5514#line 240
5515          __cil_tmp28 = (struct device  const  *)__cil_tmp27;
5516#line 240
5517          __dynamic_dev_dbg(& descriptor___0, __cil_tmp28, "usb_control_msg return %#x\n",
5518                            retval);
5519          }
5520        } else {
5521
5522        }
5523#line 240
5524        goto while_break___0;
5525      }
5526      while_break___0: /* CIL Label */ ;
5527      }
5528#line 240
5529      goto while_break;
5530    }
5531    while_break: /* CIL Label */ ;
5532    }
5533  } else {
5534
5535  }
5536#line 241
5537  return (retval);
5538}
5539}
5540#line 268
5541static int spcp8x5_get_msr(struct usb_device *dev , u8 *status , enum spcp8x5_type type ) ;
5542#line 268 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5543static struct _ddebug  __attribute__((__aligned__(8))) descriptor___1  __attribute__((__used__,
5544__section__("__verbose")))  =    {"spcp8x5", "spcp8x5_get_msr", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
5545    "Get MSR = 0x%p failed (error = %d)", 269U, 0U};
5546#line 271
5547static int spcp8x5_get_msr(struct usb_device *dev , u8 *status , enum spcp8x5_type type ) ;
5548#line 271 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5549static struct _ddebug  __attribute__((__aligned__(8))) descriptor___2  __attribute__((__used__,
5550__section__("__verbose")))  =    {"spcp8x5", "spcp8x5_get_msr", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
5551    "0xc0:0x22:0:6  %d - 0x%p ", 271U, 0U};
5552#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5553static int spcp8x5_get_msr(struct usb_device *dev , u8 *status , enum spcp8x5_type type ) 
5554{ u8 *status_buffer ;
5555  int ret ;
5556  void *tmp___7 ;
5557  unsigned int tmp___8 ;
5558  long tmp___9 ;
5559  long tmp___10 ;
5560  unsigned int __cil_tmp10 ;
5561  void *__cil_tmp11 ;
5562  unsigned long __cil_tmp12 ;
5563  unsigned long __cil_tmp13 ;
5564  size_t __cil_tmp14 ;
5565  u8 *__cil_tmp15 ;
5566  u8 *__cil_tmp16 ;
5567  int __cil_tmp17 ;
5568  unsigned int __cil_tmp18 ;
5569  unsigned int __cil_tmp19 ;
5570  unsigned int __cil_tmp20 ;
5571  __u8 __cil_tmp21 ;
5572  __u8 __cil_tmp22 ;
5573  __u16 __cil_tmp23 ;
5574  __u16 __cil_tmp24 ;
5575  void *__cil_tmp25 ;
5576  __u16 __cil_tmp26 ;
5577  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp27 ;
5578  unsigned int __cil_tmp28 ;
5579  unsigned int __cil_tmp29 ;
5580  int __cil_tmp30 ;
5581  int __cil_tmp31 ;
5582  long __cil_tmp32 ;
5583  unsigned long __cil_tmp33 ;
5584  unsigned long __cil_tmp34 ;
5585  struct device *__cil_tmp35 ;
5586  struct device  const  *__cil_tmp36 ;
5587  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp37 ;
5588  unsigned int __cil_tmp38 ;
5589  unsigned int __cil_tmp39 ;
5590  int __cil_tmp40 ;
5591  int __cil_tmp41 ;
5592  long __cil_tmp42 ;
5593  unsigned long __cil_tmp43 ;
5594  unsigned long __cil_tmp44 ;
5595  struct device *__cil_tmp45 ;
5596  struct device  const  *__cil_tmp46 ;
5597  u8 *__cil_tmp47 ;
5598  u8 *__cil_tmp48 ;
5599  void const   *__cil_tmp49 ;
5600
5601  {
5602  {
5603#line 254
5604  __cil_tmp10 = (unsigned int )type;
5605#line 254
5606  if (__cil_tmp10 == 0U) {
5607#line 255
5608    return (-1);
5609  } else {
5610
5611  }
5612  }
5613  {
5614#line 256
5615  __cil_tmp11 = (void *)0;
5616#line 256
5617  __cil_tmp12 = (unsigned long )__cil_tmp11;
5618#line 256
5619  __cil_tmp13 = (unsigned long )status;
5620#line 256
5621  if (__cil_tmp13 == __cil_tmp12) {
5622#line 257
5623    return (-22);
5624  } else {
5625
5626  }
5627  }
5628  {
5629#line 259
5630  __cil_tmp14 = (size_t )1;
5631#line 259
5632  tmp___7 = kmalloc(__cil_tmp14, 208U);
5633#line 259
5634  status_buffer = (u8 *)tmp___7;
5635  }
5636#line 260
5637  if (! status_buffer) {
5638#line 261
5639    return (-12);
5640  } else {
5641
5642  }
5643  {
5644#line 262
5645  __cil_tmp15 = status_buffer + 0;
5646#line 262
5647  __cil_tmp16 = status + 0;
5648#line 262
5649  *__cil_tmp15 = *__cil_tmp16;
5650#line 264
5651  tmp___8 = __create_pipe(dev, 0U);
5652#line 264
5653  __cil_tmp17 = 2 << 30;
5654#line 264
5655  __cil_tmp18 = (unsigned int )__cil_tmp17;
5656#line 264
5657  __cil_tmp19 = __cil_tmp18 | tmp___8;
5658#line 264
5659  __cil_tmp20 = __cil_tmp19 | 128U;
5660#line 264
5661  __cil_tmp21 = (__u8 )34;
5662#line 264
5663  __cil_tmp22 = (__u8 )192;
5664#line 264
5665  __cil_tmp23 = (__u16 )0;
5666#line 264
5667  __cil_tmp24 = (__u16 )6;
5668#line 264
5669  __cil_tmp25 = (void *)status_buffer;
5670#line 264
5671  __cil_tmp26 = (__u16 )1;
5672#line 264
5673  ret = usb_control_msg(dev, __cil_tmp20, __cil_tmp21, __cil_tmp22, __cil_tmp23, __cil_tmp24,
5674                        __cil_tmp25, __cil_tmp26, 100);
5675  }
5676#line 267
5677  if (ret < 0) {
5678    {
5679#line 268
5680    while (1) {
5681      while_continue: /* CIL Label */ ;
5682      {
5683#line 268
5684      while (1) {
5685        while_continue___0: /* CIL Label */ ;
5686        {
5687#line 268
5688        __cil_tmp27 = & descriptor___1;
5689#line 268
5690        __cil_tmp28 = __cil_tmp27->flags;
5691#line 268
5692        __cil_tmp29 = __cil_tmp28 & 1U;
5693#line 268
5694        __cil_tmp30 = ! __cil_tmp29;
5695#line 268
5696        __cil_tmp31 = ! __cil_tmp30;
5697#line 268
5698        __cil_tmp32 = (long )__cil_tmp31;
5699#line 268
5700        tmp___9 = __builtin_expect(__cil_tmp32, 0L);
5701        }
5702#line 268
5703        if (tmp___9) {
5704          {
5705#line 268
5706          __cil_tmp33 = (unsigned long )dev;
5707#line 268
5708          __cil_tmp34 = __cil_tmp33 + 136;
5709#line 268
5710          __cil_tmp35 = (struct device *)__cil_tmp34;
5711#line 268
5712          __cil_tmp36 = (struct device  const  *)__cil_tmp35;
5713#line 268
5714          __dynamic_dev_dbg(& descriptor___1, __cil_tmp36, "Get MSR = 0x%p failed (error = %d)",
5715                            status_buffer, ret);
5716          }
5717        } else {
5718
5719        }
5720#line 268
5721        goto while_break___0;
5722      }
5723      while_break___0: /* CIL Label */ ;
5724      }
5725#line 268
5726      goto while_break;
5727    }
5728    while_break: /* CIL Label */ ;
5729    }
5730  } else {
5731
5732  }
5733  {
5734#line 271
5735  while (1) {
5736    while_continue___1: /* CIL Label */ ;
5737    {
5738#line 271
5739    while (1) {
5740      while_continue___2: /* CIL Label */ ;
5741      {
5742#line 271
5743      __cil_tmp37 = & descriptor___2;
5744#line 271
5745      __cil_tmp38 = __cil_tmp37->flags;
5746#line 271
5747      __cil_tmp39 = __cil_tmp38 & 1U;
5748#line 271
5749      __cil_tmp40 = ! __cil_tmp39;
5750#line 271
5751      __cil_tmp41 = ! __cil_tmp40;
5752#line 271
5753      __cil_tmp42 = (long )__cil_tmp41;
5754#line 271
5755      tmp___10 = __builtin_expect(__cil_tmp42, 0L);
5756      }
5757#line 271
5758      if (tmp___10) {
5759        {
5760#line 271
5761        __cil_tmp43 = (unsigned long )dev;
5762#line 271
5763        __cil_tmp44 = __cil_tmp43 + 136;
5764#line 271
5765        __cil_tmp45 = (struct device *)__cil_tmp44;
5766#line 271
5767        __cil_tmp46 = (struct device  const  *)__cil_tmp45;
5768#line 271
5769        __dynamic_dev_dbg(& descriptor___2, __cil_tmp46, "0xc0:0x22:0:6  %d - 0x%p ",
5770                          ret, status_buffer);
5771        }
5772      } else {
5773
5774      }
5775#line 271
5776      goto while_break___2;
5777    }
5778    while_break___2: /* CIL Label */ ;
5779    }
5780#line 271
5781    goto while_break___1;
5782  }
5783  while_break___1: /* CIL Label */ ;
5784  }
5785  {
5786#line 272
5787  __cil_tmp47 = status + 0;
5788#line 272
5789  __cil_tmp48 = status_buffer + 0;
5790#line 272
5791  *__cil_tmp47 = *__cil_tmp48;
5792#line 273
5793  __cil_tmp49 = (void const   *)status_buffer;
5794#line 273
5795  kfree(__cil_tmp49);
5796  }
5797#line 275
5798  return (ret);
5799}
5800}
5801#line 293
5802static void spcp8x5_set_workMode(struct usb_device *dev , u16 value , u16 index ,
5803                                 enum spcp8x5_type type ) ;
5804#line 293 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5805static struct _ddebug  __attribute__((__aligned__(8))) descriptor___3  __attribute__((__used__,
5806__section__("__verbose")))  =    {"spcp8x5", "spcp8x5_set_workMode", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
5807    "value = %#x , index = %#x\n", 293U, 0U};
5808#line 295
5809static void spcp8x5_set_workMode(struct usb_device *dev , u16 value , u16 index ,
5810                                 enum spcp8x5_type type ) ;
5811#line 295 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5812static struct _ddebug  __attribute__((__aligned__(8))) descriptor___4  __attribute__((__used__,
5813__section__("__verbose")))  =    {"spcp8x5", "spcp8x5_set_workMode", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
5814    "RTSCTS usb_control_msg(enable flowctrl) = %d\n", 296U, 0U};
5815#line 280 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
5816static void spcp8x5_set_workMode(struct usb_device *dev , u16 value , u16 index ,
5817                                 enum spcp8x5_type type ) 
5818{ int ret ;
5819  unsigned int tmp___7 ;
5820  long tmp___8 ;
5821  long tmp___9 ;
5822  unsigned int __cil_tmp9 ;
5823  int __cil_tmp10 ;
5824  unsigned int __cil_tmp11 ;
5825  unsigned int __cil_tmp12 ;
5826  __u8 __cil_tmp13 ;
5827  __u8 __cil_tmp14 ;
5828  void *__cil_tmp15 ;
5829  __u16 __cil_tmp16 ;
5830  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp17 ;
5831  unsigned int __cil_tmp18 ;
5832  unsigned int __cil_tmp19 ;
5833  int __cil_tmp20 ;
5834  int __cil_tmp21 ;
5835  long __cil_tmp22 ;
5836  unsigned long __cil_tmp23 ;
5837  unsigned long __cil_tmp24 ;
5838  struct device *__cil_tmp25 ;
5839  struct device  const  *__cil_tmp26 ;
5840  int __cil_tmp27 ;
5841  int __cil_tmp28 ;
5842  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp29 ;
5843  unsigned int __cil_tmp30 ;
5844  unsigned int __cil_tmp31 ;
5845  int __cil_tmp32 ;
5846  int __cil_tmp33 ;
5847  long __cil_tmp34 ;
5848  unsigned long __cil_tmp35 ;
5849  unsigned long __cil_tmp36 ;
5850  struct device *__cil_tmp37 ;
5851  struct device  const  *__cil_tmp38 ;
5852
5853  {
5854  {
5855#line 287
5856  __cil_tmp9 = (unsigned int )type;
5857#line 287
5858  if (__cil_tmp9 == 0U) {
5859#line 288
5860    return;
5861  } else {
5862
5863  }
5864  }
5865  {
5866#line 290
5867  tmp___7 = __create_pipe(dev, 0U);
5868#line 290
5869  __cil_tmp10 = 2 << 30;
5870#line 290
5871  __cil_tmp11 = (unsigned int )__cil_tmp10;
5872#line 290
5873  __cil_tmp12 = __cil_tmp11 | tmp___7;
5874#line 290
5875  __cil_tmp13 = (__u8 )36;
5876#line 290
5877  __cil_tmp14 = (__u8 )64;
5878#line 290
5879  __cil_tmp15 = (void *)0;
5880#line 290
5881  __cil_tmp16 = (__u16 )0;
5882#line 290
5883  ret = usb_control_msg(dev, __cil_tmp12, __cil_tmp13, __cil_tmp14, value, index,
5884                        __cil_tmp15, __cil_tmp16, 100);
5885  }
5886  {
5887#line 293
5888  while (1) {
5889    while_continue: /* CIL Label */ ;
5890    {
5891#line 293
5892    while (1) {
5893      while_continue___0: /* CIL Label */ ;
5894      {
5895#line 293
5896      __cil_tmp17 = & descriptor___3;
5897#line 293
5898      __cil_tmp18 = __cil_tmp17->flags;
5899#line 293
5900      __cil_tmp19 = __cil_tmp18 & 1U;
5901#line 293
5902      __cil_tmp20 = ! __cil_tmp19;
5903#line 293
5904      __cil_tmp21 = ! __cil_tmp20;
5905#line 293
5906      __cil_tmp22 = (long )__cil_tmp21;
5907#line 293
5908      tmp___8 = __builtin_expect(__cil_tmp22, 0L);
5909      }
5910#line 293
5911      if (tmp___8) {
5912        {
5913#line 293
5914        __cil_tmp23 = (unsigned long )dev;
5915#line 293
5916        __cil_tmp24 = __cil_tmp23 + 136;
5917#line 293
5918        __cil_tmp25 = (struct device *)__cil_tmp24;
5919#line 293
5920        __cil_tmp26 = (struct device  const  *)__cil_tmp25;
5921#line 293
5922        __cil_tmp27 = (int )value;
5923#line 293
5924        __cil_tmp28 = (int )index;
5925#line 293
5926        __dynamic_dev_dbg(& descriptor___3, __cil_tmp26, "value = %#x , index = %#x\n",
5927                          __cil_tmp27, __cil_tmp28);
5928        }
5929      } else {
5930
5931      }
5932#line 293
5933      goto while_break___0;
5934    }
5935    while_break___0: /* CIL Label */ ;
5936    }
5937#line 293
5938    goto while_break;
5939  }
5940  while_break: /* CIL Label */ ;
5941  }
5942#line 294
5943  if (ret < 0) {
5944    {
5945#line 295
5946    while (1) {
5947      while_continue___1: /* CIL Label */ ;
5948      {
5949#line 295
5950      while (1) {
5951        while_continue___2: /* CIL Label */ ;
5952        {
5953#line 295
5954        __cil_tmp29 = & descriptor___4;
5955#line 295
5956        __cil_tmp30 = __cil_tmp29->flags;
5957#line 295
5958        __cil_tmp31 = __cil_tmp30 & 1U;
5959#line 295
5960        __cil_tmp32 = ! __cil_tmp31;
5961#line 295
5962        __cil_tmp33 = ! __cil_tmp32;
5963#line 295
5964        __cil_tmp34 = (long )__cil_tmp33;
5965#line 295
5966        tmp___9 = __builtin_expect(__cil_tmp34, 0L);
5967        }
5968#line 295
5969        if (tmp___9) {
5970          {
5971#line 295
5972          __cil_tmp35 = (unsigned long )dev;
5973#line 295
5974          __cil_tmp36 = __cil_tmp35 + 136;
5975#line 295
5976          __cil_tmp37 = (struct device *)__cil_tmp36;
5977#line 295
5978          __cil_tmp38 = (struct device  const  *)__cil_tmp37;
5979#line 295
5980          __dynamic_dev_dbg(& descriptor___4, __cil_tmp38, "RTSCTS usb_control_msg(enable flowctrl) = %d\n",
5981                            ret);
5982          }
5983        } else {
5984
5985        }
5986#line 295
5987        goto while_break___2;
5988      }
5989      while_break___2: /* CIL Label */ ;
5990      }
5991#line 295
5992      goto while_break___1;
5993    }
5994    while_break___1: /* CIL Label */ ;
5995    }
5996  } else {
5997
5998  }
5999#line 297
6000  return;
6001}
6002}
6003#line 299 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
6004static int spcp8x5_carrier_raised(struct usb_serial_port *port ) 
6005{ struct spcp8x5_private *priv ;
6006  void *tmp___7 ;
6007  unsigned long __cil_tmp4 ;
6008  unsigned long __cil_tmp5 ;
6009  u8 __cil_tmp6 ;
6010  int __cil_tmp7 ;
6011
6012  {
6013  {
6014#line 301
6015  tmp___7 = usb_get_serial_port_data(port);
6016#line 301
6017  priv = (struct spcp8x5_private *)tmp___7;
6018  }
6019  {
6020#line 302
6021  __cil_tmp4 = (unsigned long )priv;
6022#line 302
6023  __cil_tmp5 = __cil_tmp4 + 73;
6024#line 302
6025  __cil_tmp6 = *((u8 *)__cil_tmp5);
6026#line 302
6027  __cil_tmp7 = (int )__cil_tmp6;
6028#line 302
6029  if (__cil_tmp7 & 128) {
6030#line 303
6031    return (1);
6032  } else {
6033
6034  }
6035  }
6036#line 304
6037  return (0);
6038}
6039}
6040#line 307 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
6041static void spcp8x5_dtr_rts(struct usb_serial_port *port , int on ) 
6042{ struct spcp8x5_private *priv ;
6043  void *tmp___7 ;
6044  unsigned long flags ;
6045  u8 control ;
6046  raw_spinlock_t *tmp___8 ;
6047  spinlock_t *__cil_tmp10 ;
6048  unsigned long __cil_tmp11 ;
6049  unsigned long __cil_tmp12 ;
6050  unsigned long __cil_tmp13 ;
6051  unsigned long __cil_tmp14 ;
6052  unsigned long __cil_tmp15 ;
6053  unsigned long __cil_tmp16 ;
6054  u8 __cil_tmp17 ;
6055  int __cil_tmp18 ;
6056  int __cil_tmp19 ;
6057  unsigned long __cil_tmp20 ;
6058  unsigned long __cil_tmp21 ;
6059  spinlock_t *__cil_tmp22 ;
6060  struct usb_serial *__cil_tmp23 ;
6061  struct usb_device *__cil_tmp24 ;
6062  unsigned long __cil_tmp25 ;
6063  unsigned long __cil_tmp26 ;
6064  enum spcp8x5_type __cil_tmp27 ;
6065
6066  {
6067  {
6068#line 309
6069  tmp___7 = usb_get_serial_port_data(port);
6070#line 309
6071  priv = (struct spcp8x5_private *)tmp___7;
6072  }
6073  {
6074#line 313
6075  while (1) {
6076    while_continue: /* CIL Label */ ;
6077    {
6078#line 313
6079    while (1) {
6080      while_continue___0: /* CIL Label */ ;
6081      {
6082#line 313
6083      __cil_tmp10 = (spinlock_t *)priv;
6084#line 313
6085      tmp___8 = spinlock_check(__cil_tmp10);
6086#line 313
6087      flags = _raw_spin_lock_irqsave(tmp___8);
6088      }
6089#line 313
6090      goto while_break___0;
6091    }
6092    while_break___0: /* CIL Label */ ;
6093    }
6094#line 313
6095    goto while_break;
6096  }
6097  while_break: /* CIL Label */ ;
6098  }
6099#line 314
6100  if (on) {
6101#line 315
6102    __cil_tmp11 = (unsigned long )priv;
6103#line 315
6104    __cil_tmp12 = __cil_tmp11 + 72;
6105#line 315
6106    *((u8 *)__cil_tmp12) = (u8 )3;
6107  } else {
6108#line 318
6109    __cil_tmp13 = (unsigned long )priv;
6110#line 318
6111    __cil_tmp14 = __cil_tmp13 + 72;
6112#line 318
6113    __cil_tmp15 = (unsigned long )priv;
6114#line 318
6115    __cil_tmp16 = __cil_tmp15 + 72;
6116#line 318
6117    __cil_tmp17 = *((u8 *)__cil_tmp16);
6118#line 318
6119    __cil_tmp18 = (int )__cil_tmp17;
6120#line 318
6121    __cil_tmp19 = __cil_tmp18 & -4;
6122#line 318
6123    *((u8 *)__cil_tmp14) = (u8 )__cil_tmp19;
6124  }
6125  {
6126#line 320
6127  __cil_tmp20 = (unsigned long )priv;
6128#line 320
6129  __cil_tmp21 = __cil_tmp20 + 72;
6130#line 320
6131  control = *((u8 *)__cil_tmp21);
6132#line 321
6133  __cil_tmp22 = (spinlock_t *)priv;
6134#line 321
6135  spin_unlock_irqrestore(__cil_tmp22, flags);
6136#line 322
6137  __cil_tmp23 = *((struct usb_serial **)port);
6138#line 322
6139  __cil_tmp24 = *((struct usb_device **)__cil_tmp23);
6140#line 322
6141  __cil_tmp25 = (unsigned long )priv;
6142#line 322
6143  __cil_tmp26 = __cil_tmp25 + 24;
6144#line 322
6145  __cil_tmp27 = *((enum spcp8x5_type *)__cil_tmp26);
6146#line 322
6147  spcp8x5_set_ctrlLine(__cil_tmp24, control, __cil_tmp27);
6148  }
6149#line 323
6150  return;
6151}
6152}
6153#line 325 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
6154static void spcp8x5_init_termios(struct tty_struct *tty ) 
6155{ unsigned long __cil_tmp2 ;
6156  unsigned long __cil_tmp3 ;
6157  struct ktermios *__cil_tmp4 ;
6158  unsigned long __cil_tmp5 ;
6159  unsigned long __cil_tmp6 ;
6160  struct ktermios *__cil_tmp7 ;
6161  unsigned long __cil_tmp8 ;
6162  unsigned long __cil_tmp9 ;
6163  unsigned long __cil_tmp10 ;
6164  unsigned long __cil_tmp11 ;
6165  struct ktermios *__cil_tmp12 ;
6166  unsigned long __cil_tmp13 ;
6167  unsigned long __cil_tmp14 ;
6168  unsigned long __cil_tmp15 ;
6169  unsigned long __cil_tmp16 ;
6170  struct ktermios *__cil_tmp17 ;
6171  unsigned long __cil_tmp18 ;
6172  unsigned long __cil_tmp19 ;
6173
6174  {
6175#line 328
6176  __cil_tmp2 = (unsigned long )tty;
6177#line 328
6178  __cil_tmp3 = __cil_tmp2 + 216;
6179#line 328
6180  __cil_tmp4 = *((struct ktermios **)__cil_tmp3);
6181#line 328
6182  *__cil_tmp4 = tty_std_termios;
6183#line 329
6184  __cil_tmp5 = (unsigned long )tty;
6185#line 329
6186  __cil_tmp6 = __cil_tmp5 + 216;
6187#line 329
6188  __cil_tmp7 = *((struct ktermios **)__cil_tmp6);
6189#line 329
6190  __cil_tmp8 = (unsigned long )__cil_tmp7;
6191#line 329
6192  __cil_tmp9 = __cil_tmp8 + 8;
6193#line 329
6194  *((tcflag_t *)__cil_tmp9) = (tcflag_t )7346;
6195#line 330
6196  __cil_tmp10 = (unsigned long )tty;
6197#line 330
6198  __cil_tmp11 = __cil_tmp10 + 216;
6199#line 330
6200  __cil_tmp12 = *((struct ktermios **)__cil_tmp11);
6201#line 330
6202  __cil_tmp13 = (unsigned long )__cil_tmp12;
6203#line 330
6204  __cil_tmp14 = __cil_tmp13 + 36;
6205#line 330
6206  *((speed_t *)__cil_tmp14) = (speed_t )115200;
6207#line 331
6208  __cil_tmp15 = (unsigned long )tty;
6209#line 331
6210  __cil_tmp16 = __cil_tmp15 + 216;
6211#line 331
6212  __cil_tmp17 = *((struct ktermios **)__cil_tmp16);
6213#line 331
6214  __cil_tmp18 = (unsigned long )__cil_tmp17;
6215#line 331
6216  __cil_tmp19 = __cil_tmp18 + 40;
6217#line 331
6218  *((speed_t *)__cil_tmp19) = (speed_t )115200;
6219#line 332
6220  return;
6221}
6222}
6223#line 336 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
6224static void spcp8x5_set_termios(struct tty_struct *tty , struct usb_serial_port *port ,
6225                                struct ktermios *old_termios ) 
6226{ struct usb_serial *serial ;
6227  struct spcp8x5_private *priv ;
6228  void *tmp___7 ;
6229  unsigned long flags ;
6230  unsigned int cflag ;
6231  unsigned int old_cflag ;
6232  unsigned short uartdata ;
6233  unsigned char buf[2] ;
6234  int baud ;
6235  int i ;
6236  u8 control ;
6237  int tmp___8 ;
6238  raw_spinlock_t *tmp___9 ;
6239  speed_t tmp___10 ;
6240  int tmp___11 ;
6241  int tmp___12 ;
6242  unsigned int tmp___13 ;
6243  unsigned long __cil_tmp23 ;
6244  unsigned long __cil_tmp24 ;
6245  struct ktermios *__cil_tmp25 ;
6246  unsigned long __cil_tmp26 ;
6247  unsigned long __cil_tmp27 ;
6248  unsigned long __cil_tmp28 ;
6249  unsigned long __cil_tmp29 ;
6250  unsigned long __cil_tmp30 ;
6251  unsigned long __cil_tmp31 ;
6252  unsigned long __cil_tmp32 ;
6253  unsigned long __cil_tmp33 ;
6254  unsigned long __cil_tmp34 ;
6255  unsigned long __cil_tmp35 ;
6256  struct ktermios *__cil_tmp36 ;
6257  spinlock_t *__cil_tmp37 ;
6258  unsigned long __cil_tmp38 ;
6259  unsigned long __cil_tmp39 ;
6260  unsigned int __cil_tmp40 ;
6261  unsigned long __cil_tmp41 ;
6262  unsigned long __cil_tmp42 ;
6263  unsigned long __cil_tmp43 ;
6264  unsigned long __cil_tmp44 ;
6265  u8 __cil_tmp45 ;
6266  int __cil_tmp46 ;
6267  int __cil_tmp47 ;
6268  unsigned int __cil_tmp48 ;
6269  unsigned long __cil_tmp49 ;
6270  unsigned long __cil_tmp50 ;
6271  unsigned long __cil_tmp51 ;
6272  unsigned long __cil_tmp52 ;
6273  u8 __cil_tmp53 ;
6274  int __cil_tmp54 ;
6275  int __cil_tmp55 ;
6276  unsigned long __cil_tmp56 ;
6277  unsigned long __cil_tmp57 ;
6278  u8 __cil_tmp58 ;
6279  int __cil_tmp59 ;
6280  int __cil_tmp60 ;
6281  unsigned long __cil_tmp61 ;
6282  unsigned long __cil_tmp62 ;
6283  spinlock_t *__cil_tmp63 ;
6284  struct usb_device *__cil_tmp64 ;
6285  unsigned long __cil_tmp65 ;
6286  unsigned long __cil_tmp66 ;
6287  enum spcp8x5_type __cil_tmp67 ;
6288  spinlock_t *__cil_tmp68 ;
6289  unsigned long __cil_tmp69 ;
6290  unsigned long __cil_tmp70 ;
6291  unsigned long __cil_tmp71 ;
6292  unsigned long __cil_tmp72 ;
6293  unsigned long __cil_tmp73 ;
6294  unsigned long __cil_tmp74 ;
6295  unsigned long __cil_tmp75 ;
6296  unsigned long __cil_tmp76 ;
6297  unsigned long __cil_tmp77 ;
6298  unsigned long __cil_tmp78 ;
6299  unsigned long __cil_tmp79 ;
6300  unsigned long __cil_tmp80 ;
6301  unsigned long __cil_tmp81 ;
6302  unsigned long __cil_tmp82 ;
6303  unsigned long __cil_tmp83 ;
6304  unsigned long __cil_tmp84 ;
6305  unsigned long __cil_tmp85 ;
6306  unsigned long __cil_tmp86 ;
6307  unsigned long __cil_tmp87 ;
6308  unsigned long __cil_tmp88 ;
6309  unsigned long __cil_tmp89 ;
6310  unsigned long __cil_tmp90 ;
6311  unsigned long __cil_tmp91 ;
6312  unsigned long __cil_tmp92 ;
6313  unsigned long __cil_tmp93 ;
6314  unsigned long __cil_tmp94 ;
6315  unsigned long __cil_tmp95 ;
6316  unsigned long __cil_tmp96 ;
6317  unsigned long __cil_tmp97 ;
6318  unsigned long __cil_tmp98 ;
6319  unsigned long __cil_tmp99 ;
6320  unsigned long __cil_tmp100 ;
6321  struct device *__cil_tmp101 ;
6322  struct device  const  *__cil_tmp102 ;
6323  unsigned int __cil_tmp103 ;
6324  unsigned long __cil_tmp104 ;
6325  unsigned long __cil_tmp105 ;
6326  unsigned long __cil_tmp106 ;
6327  unsigned long __cil_tmp107 ;
6328  unsigned char __cil_tmp108 ;
6329  int __cil_tmp109 ;
6330  unsigned long __cil_tmp110 ;
6331  unsigned long __cil_tmp111 ;
6332  unsigned long __cil_tmp112 ;
6333  unsigned long __cil_tmp113 ;
6334  unsigned char __cil_tmp114 ;
6335  int __cil_tmp115 ;
6336  int __cil_tmp116 ;
6337  unsigned long __cil_tmp117 ;
6338  unsigned long __cil_tmp118 ;
6339  unsigned long __cil_tmp119 ;
6340  unsigned long __cil_tmp120 ;
6341  unsigned char __cil_tmp121 ;
6342  int __cil_tmp122 ;
6343  int __cil_tmp123 ;
6344  unsigned long __cil_tmp124 ;
6345  unsigned long __cil_tmp125 ;
6346  unsigned long __cil_tmp126 ;
6347  unsigned long __cil_tmp127 ;
6348  unsigned char __cil_tmp128 ;
6349  int __cil_tmp129 ;
6350  int __cil_tmp130 ;
6351  unsigned long __cil_tmp131 ;
6352  unsigned long __cil_tmp132 ;
6353  unsigned long __cil_tmp133 ;
6354  unsigned long __cil_tmp134 ;
6355  unsigned char __cil_tmp135 ;
6356  int __cil_tmp136 ;
6357  int __cil_tmp137 ;
6358  unsigned long __cil_tmp138 ;
6359  unsigned long __cil_tmp139 ;
6360  unsigned long __cil_tmp140 ;
6361  unsigned long __cil_tmp141 ;
6362  unsigned char __cil_tmp142 ;
6363  int __cil_tmp143 ;
6364  int __cil_tmp144 ;
6365  unsigned long __cil_tmp145 ;
6366  unsigned long __cil_tmp146 ;
6367  unsigned long __cil_tmp147 ;
6368  unsigned long __cil_tmp148 ;
6369  unsigned char __cil_tmp149 ;
6370  int __cil_tmp150 ;
6371  unsigned long __cil_tmp151 ;
6372  unsigned long __cil_tmp152 ;
6373  unsigned char __cil_tmp153 ;
6374  int __cil_tmp154 ;
6375  int __cil_tmp155 ;
6376  unsigned long __cil_tmp156 ;
6377  unsigned long __cil_tmp157 ;
6378  unsigned char __cil_tmp158 ;
6379  int __cil_tmp159 ;
6380  int __cil_tmp160 ;
6381  struct usb_device *__cil_tmp161 ;
6382  struct usb_device *__cil_tmp162 ;
6383  int __cil_tmp163 ;
6384  unsigned int __cil_tmp164 ;
6385  unsigned int __cil_tmp165 ;
6386  __u8 __cil_tmp166 ;
6387  __u8 __cil_tmp167 ;
6388  __u16 __cil_tmp168 ;
6389  void *__cil_tmp169 ;
6390  __u16 __cil_tmp170 ;
6391  unsigned long __cil_tmp171 ;
6392  unsigned long __cil_tmp172 ;
6393  struct device *__cil_tmp173 ;
6394  struct device  const  *__cil_tmp174 ;
6395  int __cil_tmp175 ;
6396  bool *__cil_tmp176 ;
6397  struct usb_device *__cil_tmp177 ;
6398  u16 __cil_tmp178 ;
6399  u16 __cil_tmp179 ;
6400  unsigned long __cil_tmp180 ;
6401  unsigned long __cil_tmp181 ;
6402  enum spcp8x5_type __cil_tmp182 ;
6403
6404  {
6405  {
6406#line 339
6407  serial = *((struct usb_serial **)port);
6408#line 340
6409  tmp___7 = usb_get_serial_port_data(port);
6410#line 340
6411  priv = (struct spcp8x5_private *)tmp___7;
6412#line 342
6413  __cil_tmp23 = (unsigned long )tty;
6414#line 342
6415  __cil_tmp24 = __cil_tmp23 + 216;
6416#line 342
6417  __cil_tmp25 = *((struct ktermios **)__cil_tmp24);
6418#line 342
6419  __cil_tmp26 = (unsigned long )__cil_tmp25;
6420#line 342
6421  __cil_tmp27 = __cil_tmp26 + 8;
6422#line 342
6423  cflag = *((tcflag_t *)__cil_tmp27);
6424#line 343
6425  __cil_tmp28 = (unsigned long )old_termios;
6426#line 343
6427  __cil_tmp29 = __cil_tmp28 + 8;
6428#line 343
6429  old_cflag = *((tcflag_t *)__cil_tmp29);
6430#line 345
6431  __cil_tmp30 = 0 * 1UL;
6432#line 345
6433  __cil_tmp31 = (unsigned long )(buf) + __cil_tmp30;
6434#line 345
6435  *((unsigned char *)__cil_tmp31) = (unsigned char)0;
6436#line 345
6437  __cil_tmp32 = 1 * 1UL;
6438#line 345
6439  __cil_tmp33 = (unsigned long )(buf) + __cil_tmp32;
6440#line 345
6441  *((unsigned char *)__cil_tmp33) = (unsigned char)0;
6442#line 352
6443  __cil_tmp34 = (unsigned long )tty;
6444#line 352
6445  __cil_tmp35 = __cil_tmp34 + 216;
6446#line 352
6447  __cil_tmp36 = *((struct ktermios **)__cil_tmp35);
6448#line 352
6449  tmp___8 = tty_termios_hw_change(__cil_tmp36, old_termios);
6450  }
6451#line 352
6452  if (tmp___8) {
6453
6454  } else {
6455#line 353
6456    return;
6457  }
6458  {
6459#line 356
6460  while (1) {
6461    while_continue: /* CIL Label */ ;
6462    {
6463#line 356
6464    while (1) {
6465      while_continue___0: /* CIL Label */ ;
6466      {
6467#line 356
6468      __cil_tmp37 = (spinlock_t *)priv;
6469#line 356
6470      tmp___9 = spinlock_check(__cil_tmp37);
6471#line 356
6472      flags = _raw_spin_lock_irqsave(tmp___9);
6473      }
6474#line 356
6475      goto while_break___0;
6476    }
6477    while_break___0: /* CIL Label */ ;
6478    }
6479#line 356
6480    goto while_break;
6481  }
6482  while_break: /* CIL Label */ ;
6483  }
6484#line 357
6485  __cil_tmp38 = (unsigned long )priv;
6486#line 357
6487  __cil_tmp39 = __cil_tmp38 + 72;
6488#line 357
6489  control = *((u8 *)__cil_tmp39);
6490  {
6491#line 358
6492  __cil_tmp40 = old_cflag & 4111U;
6493#line 358
6494  if (__cil_tmp40 == 0U) {
6495#line 359
6496    __cil_tmp41 = (unsigned long )priv;
6497#line 359
6498    __cil_tmp42 = __cil_tmp41 + 72;
6499#line 359
6500    __cil_tmp43 = (unsigned long )priv;
6501#line 359
6502    __cil_tmp44 = __cil_tmp43 + 72;
6503#line 359
6504    __cil_tmp45 = *((u8 *)__cil_tmp44);
6505#line 359
6506    __cil_tmp46 = (int )__cil_tmp45;
6507#line 359
6508    __cil_tmp47 = __cil_tmp46 | 1;
6509#line 359
6510    *((u8 *)__cil_tmp42) = (u8 )__cil_tmp47;
6511    {
6512#line 360
6513    __cil_tmp48 = old_cflag & 2147483648U;
6514#line 360
6515    if (! __cil_tmp48) {
6516#line 361
6517      __cil_tmp49 = (unsigned long )priv;
6518#line 361
6519      __cil_tmp50 = __cil_tmp49 + 72;
6520#line 361
6521      __cil_tmp51 = (unsigned long )priv;
6522#line 361
6523      __cil_tmp52 = __cil_tmp51 + 72;
6524#line 361
6525      __cil_tmp53 = *((u8 *)__cil_tmp52);
6526#line 361
6527      __cil_tmp54 = (int )__cil_tmp53;
6528#line 361
6529      __cil_tmp55 = __cil_tmp54 | 2;
6530#line 361
6531      *((u8 *)__cil_tmp50) = (u8 )__cil_tmp55;
6532    } else {
6533
6534    }
6535    }
6536  } else {
6537
6538  }
6539  }
6540  {
6541#line 363
6542  __cil_tmp56 = (unsigned long )priv;
6543#line 363
6544  __cil_tmp57 = __cil_tmp56 + 72;
6545#line 363
6546  __cil_tmp58 = *((u8 *)__cil_tmp57);
6547#line 363
6548  __cil_tmp59 = (int )__cil_tmp58;
6549#line 363
6550  __cil_tmp60 = (int )control;
6551#line 363
6552  if (__cil_tmp60 != __cil_tmp59) {
6553    {
6554#line 364
6555    __cil_tmp61 = (unsigned long )priv;
6556#line 364
6557    __cil_tmp62 = __cil_tmp61 + 72;
6558#line 364
6559    control = *((u8 *)__cil_tmp62);
6560#line 365
6561    __cil_tmp63 = (spinlock_t *)priv;
6562#line 365
6563    spin_unlock_irqrestore(__cil_tmp63, flags);
6564#line 366
6565    __cil_tmp64 = *((struct usb_device **)serial);
6566#line 366
6567    __cil_tmp65 = (unsigned long )priv;
6568#line 366
6569    __cil_tmp66 = __cil_tmp65 + 24;
6570#line 366
6571    __cil_tmp67 = *((enum spcp8x5_type *)__cil_tmp66);
6572#line 366
6573    spcp8x5_set_ctrlLine(__cil_tmp64, control, __cil_tmp67);
6574    }
6575  } else {
6576    {
6577#line 368
6578    __cil_tmp68 = (spinlock_t *)priv;
6579#line 368
6580    spin_unlock_irqrestore(__cil_tmp68, flags);
6581    }
6582  }
6583  }
6584  {
6585#line 372
6586  tmp___10 = tty_get_baud_rate(tty);
6587#line 372
6588  baud = (int )tmp___10;
6589  }
6590#line 374
6591  if (baud == 300) {
6592#line 374
6593    goto case_300;
6594  } else
6595#line 375
6596  if (baud == 600) {
6597#line 375
6598    goto case_600;
6599  } else
6600#line 376
6601  if (baud == 1200) {
6602#line 376
6603    goto case_1200;
6604  } else
6605#line 377
6606  if (baud == 2400) {
6607#line 377
6608    goto case_2400;
6609  } else
6610#line 378
6611  if (baud == 4800) {
6612#line 378
6613    goto case_4800;
6614  } else
6615#line 379
6616  if (baud == 9600) {
6617#line 379
6618    goto case_9600;
6619  } else
6620#line 380
6621  if (baud == 19200) {
6622#line 380
6623    goto case_19200;
6624  } else
6625#line 381
6626  if (baud == 38400) {
6627#line 381
6628    goto case_38400;
6629  } else
6630#line 382
6631  if (baud == 57600) {
6632#line 382
6633    goto case_57600;
6634  } else
6635#line 383
6636  if (baud == 115200) {
6637#line 383
6638    goto case_115200;
6639  } else
6640#line 384
6641  if (baud == 230400) {
6642#line 384
6643    goto case_230400;
6644  } else
6645#line 385
6646  if (baud == 460800) {
6647#line 385
6648    goto case_460800;
6649  } else
6650#line 386
6651  if (baud == 921600) {
6652#line 386
6653    goto case_921600;
6654  } else
6655#line 389
6656  if (baud == 3000000) {
6657#line 389
6658    goto case_3000000;
6659  } else
6660#line 391
6661  if (baud == 0) {
6662#line 391
6663    goto case_0;
6664  } else
6665#line 392
6666  if (baud == 1000000) {
6667#line 392
6668    goto case_0;
6669  } else {
6670    {
6671#line 394
6672    goto switch_default;
6673#line 373
6674    if (0) {
6675      case_300: /* CIL Label */ 
6676#line 374
6677      __cil_tmp69 = 0 * 1UL;
6678#line 374
6679      __cil_tmp70 = (unsigned long )(buf) + __cil_tmp69;
6680#line 374
6681      *((unsigned char *)__cil_tmp70) = (unsigned char)0;
6682#line 374
6683      goto switch_break;
6684      case_600: /* CIL Label */ 
6685#line 375
6686      __cil_tmp71 = 0 * 1UL;
6687#line 375
6688      __cil_tmp72 = (unsigned long )(buf) + __cil_tmp71;
6689#line 375
6690      *((unsigned char *)__cil_tmp72) = (unsigned char)1;
6691#line 375
6692      goto switch_break;
6693      case_1200: /* CIL Label */ 
6694#line 376
6695      __cil_tmp73 = 0 * 1UL;
6696#line 376
6697      __cil_tmp74 = (unsigned long )(buf) + __cil_tmp73;
6698#line 376
6699      *((unsigned char *)__cil_tmp74) = (unsigned char)2;
6700#line 376
6701      goto switch_break;
6702      case_2400: /* CIL Label */ 
6703#line 377
6704      __cil_tmp75 = 0 * 1UL;
6705#line 377
6706      __cil_tmp76 = (unsigned long )(buf) + __cil_tmp75;
6707#line 377
6708      *((unsigned char *)__cil_tmp76) = (unsigned char)3;
6709#line 377
6710      goto switch_break;
6711      case_4800: /* CIL Label */ 
6712#line 378
6713      __cil_tmp77 = 0 * 1UL;
6714#line 378
6715      __cil_tmp78 = (unsigned long )(buf) + __cil_tmp77;
6716#line 378
6717      *((unsigned char *)__cil_tmp78) = (unsigned char)4;
6718#line 378
6719      goto switch_break;
6720      case_9600: /* CIL Label */ 
6721#line 379
6722      __cil_tmp79 = 0 * 1UL;
6723#line 379
6724      __cil_tmp80 = (unsigned long )(buf) + __cil_tmp79;
6725#line 379
6726      *((unsigned char *)__cil_tmp80) = (unsigned char)5;
6727#line 379
6728      goto switch_break;
6729      case_19200: /* CIL Label */ 
6730#line 380
6731      __cil_tmp81 = 0 * 1UL;
6732#line 380
6733      __cil_tmp82 = (unsigned long )(buf) + __cil_tmp81;
6734#line 380
6735      *((unsigned char *)__cil_tmp82) = (unsigned char)7;
6736#line 380
6737      goto switch_break;
6738      case_38400: /* CIL Label */ 
6739#line 381
6740      __cil_tmp83 = 0 * 1UL;
6741#line 381
6742      __cil_tmp84 = (unsigned long )(buf) + __cil_tmp83;
6743#line 381
6744      *((unsigned char *)__cil_tmp84) = (unsigned char)9;
6745#line 381
6746      goto switch_break;
6747      case_57600: /* CIL Label */ 
6748#line 382
6749      __cil_tmp85 = 0 * 1UL;
6750#line 382
6751      __cil_tmp86 = (unsigned long )(buf) + __cil_tmp85;
6752#line 382
6753      *((unsigned char *)__cil_tmp86) = (unsigned char)10;
6754#line 382
6755      goto switch_break;
6756      case_115200: /* CIL Label */ 
6757#line 383
6758      __cil_tmp87 = 0 * 1UL;
6759#line 383
6760      __cil_tmp88 = (unsigned long )(buf) + __cil_tmp87;
6761#line 383
6762      *((unsigned char *)__cil_tmp88) = (unsigned char)11;
6763#line 383
6764      goto switch_break;
6765      case_230400: /* CIL Label */ 
6766#line 384
6767      __cil_tmp89 = 0 * 1UL;
6768#line 384
6769      __cil_tmp90 = (unsigned long )(buf) + __cil_tmp89;
6770#line 384
6771      *((unsigned char *)__cil_tmp90) = (unsigned char)12;
6772#line 384
6773      goto switch_break;
6774      case_460800: /* CIL Label */ 
6775#line 385
6776      __cil_tmp91 = 0 * 1UL;
6777#line 385
6778      __cil_tmp92 = (unsigned long )(buf) + __cil_tmp91;
6779#line 385
6780      *((unsigned char *)__cil_tmp92) = (unsigned char)13;
6781#line 385
6782      goto switch_break;
6783      case_921600: /* CIL Label */ 
6784#line 386
6785      __cil_tmp93 = 0 * 1UL;
6786#line 386
6787      __cil_tmp94 = (unsigned long )(buf) + __cil_tmp93;
6788#line 386
6789      *((unsigned char *)__cil_tmp94) = (unsigned char)14;
6790#line 386
6791      goto switch_break;
6792      case_3000000: /* CIL Label */ 
6793#line 389
6794      __cil_tmp95 = 0 * 1UL;
6795#line 389
6796      __cil_tmp96 = (unsigned long )(buf) + __cil_tmp95;
6797#line 389
6798      *((unsigned char *)__cil_tmp96) = (unsigned char)17;
6799#line 389
6800      goto switch_break;
6801      case_0: /* CIL Label */ 
6802      case_1000000: /* CIL Label */ 
6803#line 393
6804      __cil_tmp97 = 0 * 1UL;
6805#line 393
6806      __cil_tmp98 = (unsigned long )(buf) + __cil_tmp97;
6807#line 393
6808      *((unsigned char *)__cil_tmp98) = (unsigned char)11;
6809#line 393
6810      goto switch_break;
6811      switch_default: /* CIL Label */ 
6812      {
6813#line 395
6814      __cil_tmp99 = (unsigned long )port;
6815#line 395
6816      __cil_tmp100 = __cil_tmp99 + 712;
6817#line 395
6818      __cil_tmp101 = (struct device *)__cil_tmp100;
6819#line 395
6820      __cil_tmp102 = (struct device  const  *)__cil_tmp101;
6821#line 395
6822      dev_err(__cil_tmp102, "spcp825 driver does not support the baudrate requested, using default of 9600.\n");
6823      }
6824    } else {
6825      switch_break: /* CIL Label */ ;
6826    }
6827    }
6828  }
6829#line 400
6830  if (cflag & 48U) {
6831    {
6832#line 401
6833    __cil_tmp103 = cflag & 48U;
6834#line 402
6835    if ((int )__cil_tmp103 == 0) {
6836#line 402
6837      goto case_0___0;
6838    } else
6839#line 405
6840    if ((int )__cil_tmp103 == 16) {
6841#line 405
6842      goto case_16;
6843    } else
6844#line 408
6845    if ((int )__cil_tmp103 == 32) {
6846#line 408
6847      goto case_32;
6848    } else {
6849      {
6850#line 411
6851      goto switch_default___0;
6852#line 401
6853      if (0) {
6854        case_0___0: /* CIL Label */ 
6855#line 403
6856        __cil_tmp104 = 1 * 1UL;
6857#line 403
6858        __cil_tmp105 = (unsigned long )(buf) + __cil_tmp104;
6859#line 403
6860        __cil_tmp106 = 1 * 1UL;
6861#line 403
6862        __cil_tmp107 = (unsigned long )(buf) + __cil_tmp106;
6863#line 403
6864        __cil_tmp108 = *((unsigned char *)__cil_tmp107);
6865#line 403
6866        __cil_tmp109 = (int )__cil_tmp108;
6867#line 403
6868        *((unsigned char *)__cil_tmp105) = (unsigned char )__cil_tmp109;
6869#line 404
6870        goto switch_break___0;
6871        case_16: /* CIL Label */ 
6872#line 406
6873        __cil_tmp110 = 1 * 1UL;
6874#line 406
6875        __cil_tmp111 = (unsigned long )(buf) + __cil_tmp110;
6876#line 406
6877        __cil_tmp112 = 1 * 1UL;
6878#line 406
6879        __cil_tmp113 = (unsigned long )(buf) + __cil_tmp112;
6880#line 406
6881        __cil_tmp114 = *((unsigned char *)__cil_tmp113);
6882#line 406
6883        __cil_tmp115 = (int )__cil_tmp114;
6884#line 406
6885        __cil_tmp116 = __cil_tmp115 | 1;
6886#line 406
6887        *((unsigned char *)__cil_tmp111) = (unsigned char )__cil_tmp116;
6888#line 407
6889        goto switch_break___0;
6890        case_32: /* CIL Label */ 
6891#line 409
6892        __cil_tmp117 = 1 * 1UL;
6893#line 409
6894        __cil_tmp118 = (unsigned long )(buf) + __cil_tmp117;
6895#line 409
6896        __cil_tmp119 = 1 * 1UL;
6897#line 409
6898        __cil_tmp120 = (unsigned long )(buf) + __cil_tmp119;
6899#line 409
6900        __cil_tmp121 = *((unsigned char *)__cil_tmp120);
6901#line 409
6902        __cil_tmp122 = (int )__cil_tmp121;
6903#line 409
6904        __cil_tmp123 = __cil_tmp122 | 2;
6905#line 409
6906        *((unsigned char *)__cil_tmp118) = (unsigned char )__cil_tmp123;
6907#line 410
6908        goto switch_break___0;
6909        switch_default___0: /* CIL Label */ 
6910#line 413
6911        __cil_tmp124 = 1 * 1UL;
6912#line 413
6913        __cil_tmp125 = (unsigned long )(buf) + __cil_tmp124;
6914#line 413
6915        __cil_tmp126 = 1 * 1UL;
6916#line 413
6917        __cil_tmp127 = (unsigned long )(buf) + __cil_tmp126;
6918#line 413
6919        __cil_tmp128 = *((unsigned char *)__cil_tmp127);
6920#line 413
6921        __cil_tmp129 = (int )__cil_tmp128;
6922#line 413
6923        __cil_tmp130 = __cil_tmp129 | 3;
6924#line 413
6925        *((unsigned char *)__cil_tmp125) = (unsigned char )__cil_tmp130;
6926#line 414
6927        goto switch_break___0;
6928      } else {
6929        switch_break___0: /* CIL Label */ ;
6930      }
6931      }
6932    }
6933    }
6934  } else {
6935
6936  }
6937#line 419
6938  if (cflag & 64U) {
6939#line 419
6940    tmp___11 = 4;
6941  } else {
6942#line 419
6943    tmp___11 = 0;
6944  }
6945#line 419
6946  __cil_tmp131 = 1 * 1UL;
6947#line 419
6948  __cil_tmp132 = (unsigned long )(buf) + __cil_tmp131;
6949#line 419
6950  __cil_tmp133 = 1 * 1UL;
6951#line 419
6952  __cil_tmp134 = (unsigned long )(buf) + __cil_tmp133;
6953#line 419
6954  __cil_tmp135 = *((unsigned char *)__cil_tmp134);
6955#line 419
6956  __cil_tmp136 = (int )__cil_tmp135;
6957#line 419
6958  __cil_tmp137 = __cil_tmp136 | tmp___11;
6959#line 419
6960  *((unsigned char *)__cil_tmp132) = (unsigned char )__cil_tmp137;
6961#line 423
6962  if (cflag & 256U) {
6963#line 424
6964    if (cflag & 512U) {
6965#line 424
6966      tmp___12 = 16;
6967    } else {
6968#line 424
6969      tmp___12 = 48;
6970    }
6971#line 424
6972    __cil_tmp138 = 1 * 1UL;
6973#line 424
6974    __cil_tmp139 = (unsigned long )(buf) + __cil_tmp138;
6975#line 424
6976    __cil_tmp140 = 1 * 1UL;
6977#line 424
6978    __cil_tmp141 = (unsigned long )(buf) + __cil_tmp140;
6979#line 424
6980    __cil_tmp142 = *((unsigned char *)__cil_tmp141);
6981#line 424
6982    __cil_tmp143 = (int )__cil_tmp142;
6983#line 424
6984    __cil_tmp144 = __cil_tmp143 | tmp___12;
6985#line 424
6986    *((unsigned char *)__cil_tmp139) = (unsigned char )__cil_tmp144;
6987  } else {
6988#line 427
6989    __cil_tmp145 = 1 * 1UL;
6990#line 427
6991    __cil_tmp146 = (unsigned long )(buf) + __cil_tmp145;
6992#line 427
6993    __cil_tmp147 = 1 * 1UL;
6994#line 427
6995    __cil_tmp148 = (unsigned long )(buf) + __cil_tmp147;
6996#line 427
6997    __cil_tmp149 = *((unsigned char *)__cil_tmp148);
6998#line 427
6999    __cil_tmp150 = (int )__cil_tmp149;
7000#line 427
7001    *((unsigned char *)__cil_tmp146) = (unsigned char )__cil_tmp150;
7002  }
7003  {
7004#line 429
7005  __cil_tmp151 = 1 * 1UL;
7006#line 429
7007  __cil_tmp152 = (unsigned long )(buf) + __cil_tmp151;
7008#line 429
7009  __cil_tmp153 = *((unsigned char *)__cil_tmp152);
7010#line 429
7011  __cil_tmp154 = (int )__cil_tmp153;
7012#line 429
7013  __cil_tmp155 = __cil_tmp154 << 8;
7014#line 429
7015  __cil_tmp156 = 0 * 1UL;
7016#line 429
7017  __cil_tmp157 = (unsigned long )(buf) + __cil_tmp156;
7018#line 429
7019  __cil_tmp158 = *((unsigned char *)__cil_tmp157);
7020#line 429
7021  __cil_tmp159 = (int )__cil_tmp158;
7022#line 429
7023  __cil_tmp160 = __cil_tmp159 | __cil_tmp155;
7024#line 429
7025  uartdata = (unsigned short )__cil_tmp160;
7026#line 431
7027  __cil_tmp161 = *((struct usb_device **)serial);
7028#line 431
7029  tmp___13 = __create_pipe(__cil_tmp161, 0U);
7030#line 431
7031  __cil_tmp162 = *((struct usb_device **)serial);
7032#line 431
7033  __cil_tmp163 = 2 << 30;
7034#line 431
7035  __cil_tmp164 = (unsigned int )__cil_tmp163;
7036#line 431
7037  __cil_tmp165 = __cil_tmp164 | tmp___13;
7038#line 431
7039  __cil_tmp166 = (__u8 )33;
7040#line 431
7041  __cil_tmp167 = (__u8 )64;
7042#line 431
7043  __cil_tmp168 = (__u16 )0;
7044#line 431
7045  __cil_tmp169 = (void *)0;
7046#line 431
7047  __cil_tmp170 = (__u16 )0;
7048#line 431
7049  i = usb_control_msg(__cil_tmp162, __cil_tmp165, __cil_tmp166, __cil_tmp167, uartdata,
7050                      __cil_tmp168, __cil_tmp169, __cil_tmp170, 100);
7051  }
7052#line 434
7053  if (i < 0) {
7054    {
7055#line 435
7056    __cil_tmp171 = (unsigned long )port;
7057#line 435
7058    __cil_tmp172 = __cil_tmp171 + 712;
7059#line 435
7060    __cil_tmp173 = (struct device *)__cil_tmp172;
7061#line 435
7062    __cil_tmp174 = (struct device  const  *)__cil_tmp173;
7063#line 435
7064    __cil_tmp175 = (int )uartdata;
7065#line 435
7066    dev_err(__cil_tmp174, "Set UART format %#x failed (error = %d)\n", __cil_tmp175,
7067            i);
7068    }
7069  } else {
7070
7071  }
7072  {
7073#line 437
7074  while (1) {
7075    while_continue___1: /* CIL Label */ ;
7076    {
7077#line 437
7078    __cil_tmp176 = & debug;
7079#line 437
7080    if (*__cil_tmp176) {
7081      {
7082#line 437
7083      printk("<7>%s: 0x21:0x40:0:0  %d\n", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
7084             i);
7085      }
7086    } else {
7087
7088    }
7089    }
7090#line 437
7091    goto while_break___1;
7092  }
7093  while_break___1: /* CIL Label */ ;
7094  }
7095#line 439
7096  if (cflag & 2147483648U) {
7097    {
7098#line 441
7099    __cil_tmp177 = *((struct usb_device **)serial);
7100#line 441
7101    __cil_tmp178 = (u16 )10;
7102#line 441
7103    __cil_tmp179 = (u16 )0;
7104#line 441
7105    __cil_tmp180 = (unsigned long )priv;
7106#line 441
7107    __cil_tmp181 = __cil_tmp180 + 24;
7108#line 441
7109    __cil_tmp182 = *((enum spcp8x5_type *)__cil_tmp181);
7110#line 441
7111    spcp8x5_set_workMode(__cil_tmp177, __cil_tmp178, __cil_tmp179, __cil_tmp182);
7112    }
7113  } else {
7114
7115  }
7116#line 444
7117  return;
7118}
7119}
7120#line 448 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
7121static int spcp8x5_open(struct tty_struct *tty , struct usb_serial_port *port ) 
7122{ struct ktermios tmp_termios ;
7123  struct usb_serial *serial ;
7124  struct spcp8x5_private *priv ;
7125  void *tmp___7 ;
7126  int ret ;
7127  unsigned long flags ;
7128  u8 status ;
7129  unsigned int tmp___8 ;
7130  raw_spinlock_t *tmp___9 ;
7131  int tmp___10 ;
7132  u8 *__cil_tmp15 ;
7133  bool *__cil_tmp16 ;
7134  unsigned long __cil_tmp17 ;
7135  unsigned long __cil_tmp18 ;
7136  unsigned char __cil_tmp19 ;
7137  int __cil_tmp20 ;
7138  struct usb_device *__cil_tmp21 ;
7139  unsigned long __cil_tmp22 ;
7140  unsigned long __cil_tmp23 ;
7141  struct urb *__cil_tmp24 ;
7142  unsigned long __cil_tmp25 ;
7143  unsigned long __cil_tmp26 ;
7144  unsigned int __cil_tmp27 ;
7145  int __cil_tmp28 ;
7146  struct usb_device *__cil_tmp29 ;
7147  unsigned long __cil_tmp30 ;
7148  unsigned long __cil_tmp31 ;
7149  struct urb *__cil_tmp32 ;
7150  unsigned long __cil_tmp33 ;
7151  unsigned long __cil_tmp34 ;
7152  unsigned int __cil_tmp35 ;
7153  int __cil_tmp36 ;
7154  struct usb_device *__cil_tmp37 ;
7155  struct usb_device *__cil_tmp38 ;
7156  int __cil_tmp39 ;
7157  unsigned int __cil_tmp40 ;
7158  unsigned int __cil_tmp41 ;
7159  __u8 __cil_tmp42 ;
7160  __u8 __cil_tmp43 ;
7161  __u16 __cil_tmp44 ;
7162  __u16 __cil_tmp45 ;
7163  void *__cil_tmp46 ;
7164  __u16 __cil_tmp47 ;
7165  struct usb_device *__cil_tmp48 ;
7166  unsigned long __cil_tmp49 ;
7167  unsigned long __cil_tmp50 ;
7168  u8 __cil_tmp51 ;
7169  unsigned long __cil_tmp52 ;
7170  unsigned long __cil_tmp53 ;
7171  enum spcp8x5_type __cil_tmp54 ;
7172  struct usb_device *__cil_tmp55 ;
7173  unsigned long __cil_tmp56 ;
7174  unsigned long __cil_tmp57 ;
7175  enum spcp8x5_type __cil_tmp58 ;
7176  spinlock_t *__cil_tmp59 ;
7177  unsigned long __cil_tmp60 ;
7178  unsigned long __cil_tmp61 ;
7179  u8 *__cil_tmp62 ;
7180  u8 __cil_tmp63 ;
7181  int __cil_tmp64 ;
7182  int __cil_tmp65 ;
7183  spinlock_t *__cil_tmp66 ;
7184  unsigned long __cil_tmp67 ;
7185  unsigned long __cil_tmp68 ;
7186  unsigned long __cil_tmp69 ;
7187
7188  {
7189  {
7190#line 451
7191  serial = *((struct usb_serial **)port);
7192#line 452
7193  tmp___7 = usb_get_serial_port_data(port);
7194#line 452
7195  priv = (struct spcp8x5_private *)tmp___7;
7196#line 455
7197  __cil_tmp15 = & status;
7198#line 455
7199  *__cil_tmp15 = (u8 )48;
7200  }
7201  {
7202#line 458
7203  while (1) {
7204    while_continue: /* CIL Label */ ;
7205    {
7206#line 458
7207    __cil_tmp16 = & debug;
7208#line 458
7209    if (*__cil_tmp16) {
7210      {
7211#line 458
7212      __cil_tmp17 = (unsigned long )port;
7213#line 458
7214      __cil_tmp18 = __cil_tmp17 + 384;
7215#line 458
7216      __cil_tmp19 = *((unsigned char *)__cil_tmp18);
7217#line 458
7218      __cil_tmp20 = (int )__cil_tmp19;
7219#line 458
7220      printk("<7>%s: %s -  port %d\n", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
7221             "spcp8x5_open", __cil_tmp20);
7222      }
7223    } else {
7224
7225    }
7226    }
7227#line 458
7228    goto while_break;
7229  }
7230  while_break: /* CIL Label */ ;
7231  }
7232  {
7233#line 460
7234  __cil_tmp21 = *((struct usb_device **)serial);
7235#line 460
7236  __cil_tmp22 = (unsigned long )port;
7237#line 460
7238  __cil_tmp23 = __cil_tmp22 + 536;
7239#line 460
7240  __cil_tmp24 = *((struct urb **)__cil_tmp23);
7241#line 460
7242  __cil_tmp25 = (unsigned long )__cil_tmp24;
7243#line 460
7244  __cil_tmp26 = __cil_tmp25 + 88;
7245#line 460
7246  __cil_tmp27 = *((unsigned int *)__cil_tmp26);
7247#line 460
7248  __cil_tmp28 = (int )__cil_tmp27;
7249#line 460
7250  usb_clear_halt(__cil_tmp21, __cil_tmp28);
7251#line 461
7252  __cil_tmp29 = *((struct usb_device **)serial);
7253#line 461
7254  __cil_tmp30 = (unsigned long )port;
7255#line 461
7256  __cil_tmp31 = __cil_tmp30 + 464;
7257#line 461
7258  __cil_tmp32 = *((struct urb **)__cil_tmp31);
7259#line 461
7260  __cil_tmp33 = (unsigned long )__cil_tmp32;
7261#line 461
7262  __cil_tmp34 = __cil_tmp33 + 88;
7263#line 461
7264  __cil_tmp35 = *((unsigned int *)__cil_tmp34);
7265#line 461
7266  __cil_tmp36 = (int )__cil_tmp35;
7267#line 461
7268  usb_clear_halt(__cil_tmp29, __cil_tmp36);
7269#line 463
7270  __cil_tmp37 = *((struct usb_device **)serial);
7271#line 463
7272  tmp___8 = __create_pipe(__cil_tmp37, 0U);
7273#line 463
7274  __cil_tmp38 = *((struct usb_device **)serial);
7275#line 463
7276  __cil_tmp39 = 2 << 30;
7277#line 463
7278  __cil_tmp40 = (unsigned int )__cil_tmp39;
7279#line 463
7280  __cil_tmp41 = __cil_tmp40 | tmp___8;
7281#line 463
7282  __cil_tmp42 = (__u8 )9;
7283#line 463
7284  __cil_tmp43 = (__u8 )0;
7285#line 463
7286  __cil_tmp44 = (__u16 )1;
7287#line 463
7288  __cil_tmp45 = (__u16 )0;
7289#line 463
7290  __cil_tmp46 = (void *)0;
7291#line 463
7292  __cil_tmp47 = (__u16 )0;
7293#line 463
7294  ret = usb_control_msg(__cil_tmp38, __cil_tmp41, __cil_tmp42, __cil_tmp43, __cil_tmp44,
7295                        __cil_tmp45, __cil_tmp46, __cil_tmp47, 100);
7296  }
7297#line 466
7298  if (ret) {
7299#line 467
7300    return (ret);
7301  } else {
7302
7303  }
7304  {
7305#line 469
7306  __cil_tmp48 = *((struct usb_device **)serial);
7307#line 469
7308  __cil_tmp49 = (unsigned long )priv;
7309#line 469
7310  __cil_tmp50 = __cil_tmp49 + 72;
7311#line 469
7312  __cil_tmp51 = *((u8 *)__cil_tmp50);
7313#line 469
7314  __cil_tmp52 = (unsigned long )priv;
7315#line 469
7316  __cil_tmp53 = __cil_tmp52 + 24;
7317#line 469
7318  __cil_tmp54 = *((enum spcp8x5_type *)__cil_tmp53);
7319#line 469
7320  spcp8x5_set_ctrlLine(__cil_tmp48, __cil_tmp51, __cil_tmp54);
7321  }
7322#line 472
7323  if (tty) {
7324    {
7325#line 473
7326    spcp8x5_set_termios(tty, port, & tmp_termios);
7327    }
7328  } else {
7329
7330  }
7331  {
7332#line 475
7333  __cil_tmp55 = *((struct usb_device **)serial);
7334#line 475
7335  __cil_tmp56 = (unsigned long )priv;
7336#line 475
7337  __cil_tmp57 = __cil_tmp56 + 24;
7338#line 475
7339  __cil_tmp58 = *((enum spcp8x5_type *)__cil_tmp57);
7340#line 475
7341  spcp8x5_get_msr(__cil_tmp55, & status, __cil_tmp58);
7342  }
7343  {
7344#line 478
7345  while (1) {
7346    while_continue___0: /* CIL Label */ ;
7347    {
7348#line 478
7349    while (1) {
7350      while_continue___1: /* CIL Label */ ;
7351      {
7352#line 478
7353      __cil_tmp59 = (spinlock_t *)priv;
7354#line 478
7355      tmp___9 = spinlock_check(__cil_tmp59);
7356#line 478
7357      flags = _raw_spin_lock_irqsave(tmp___9);
7358      }
7359#line 478
7360      goto while_break___1;
7361    }
7362    while_break___1: /* CIL Label */ ;
7363    }
7364#line 478
7365    goto while_break___0;
7366  }
7367  while_break___0: /* CIL Label */ ;
7368  }
7369  {
7370#line 479
7371  __cil_tmp60 = (unsigned long )priv;
7372#line 479
7373  __cil_tmp61 = __cil_tmp60 + 73;
7374#line 479
7375  __cil_tmp62 = & status;
7376#line 479
7377  __cil_tmp63 = *__cil_tmp62;
7378#line 479
7379  __cil_tmp64 = (int )__cil_tmp63;
7380#line 479
7381  __cil_tmp65 = __cil_tmp64 & 240;
7382#line 479
7383  *((u8 *)__cil_tmp61) = (u8 )__cil_tmp65;
7384#line 480
7385  __cil_tmp66 = (spinlock_t *)priv;
7386#line 480
7387  spin_unlock_irqrestore(__cil_tmp66, flags);
7388#line 482
7389  __cil_tmp67 = 8 + 344;
7390#line 482
7391  __cil_tmp68 = (unsigned long )port;
7392#line 482
7393  __cil_tmp69 = __cil_tmp68 + __cil_tmp67;
7394#line 482
7395  *((int *)__cil_tmp69) = 256;
7396#line 484
7397  tmp___10 = usb_serial_generic_open(tty, port);
7398  }
7399#line 484
7400  return (tmp___10);
7401}
7402}
7403#line 523
7404static void spcp8x5_process_read_urb(struct urb *urb ) ;
7405#line 523 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
7406static struct _ddebug  __attribute__((__aligned__(8))) descriptor___5  __attribute__((__used__,
7407__section__("__verbose")))  =    {"spcp8x5", "spcp8x5_process_read_urb", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
7408    "tty_flag = %d\n", 523U, 0U};
7409#line 487 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
7410static void spcp8x5_process_read_urb(struct urb *urb ) 
7411{ struct usb_serial_port *port ;
7412  struct spcp8x5_private *priv ;
7413  void *tmp___7 ;
7414  struct tty_struct *tty ;
7415  unsigned char *data ;
7416  unsigned long flags ;
7417  u8 status ;
7418  char tty_flag ;
7419  raw_spinlock_t *tmp___8 ;
7420  long tmp___9 ;
7421  unsigned long __cil_tmp14 ;
7422  unsigned long __cil_tmp15 ;
7423  void *__cil_tmp16 ;
7424  unsigned long __cil_tmp17 ;
7425  unsigned long __cil_tmp18 ;
7426  void *__cil_tmp19 ;
7427  spinlock_t *__cil_tmp20 ;
7428  unsigned long __cil_tmp21 ;
7429  unsigned long __cil_tmp22 ;
7430  unsigned long __cil_tmp23 ;
7431  unsigned long __cil_tmp24 ;
7432  unsigned long __cil_tmp25 ;
7433  unsigned long __cil_tmp26 ;
7434  u8 __cil_tmp27 ;
7435  int __cil_tmp28 ;
7436  int __cil_tmp29 ;
7437  spinlock_t *__cil_tmp30 ;
7438  unsigned long __cil_tmp31 ;
7439  unsigned long __cil_tmp32 ;
7440  wait_queue_head_t *__cil_tmp33 ;
7441  void *__cil_tmp34 ;
7442  unsigned long __cil_tmp35 ;
7443  unsigned long __cil_tmp36 ;
7444  u32 __cil_tmp37 ;
7445  unsigned long __cil_tmp38 ;
7446  unsigned long __cil_tmp39 ;
7447  struct tty_port *__cil_tmp40 ;
7448  int __cil_tmp41 ;
7449  int __cil_tmp42 ;
7450  int __cil_tmp43 ;
7451  int __cil_tmp44 ;
7452  struct _ddebug  __attribute__((__aligned__(8))) *__cil_tmp45 ;
7453  unsigned int __cil_tmp46 ;
7454  unsigned int __cil_tmp47 ;
7455  int __cil_tmp48 ;
7456  int __cil_tmp49 ;
7457  long __cil_tmp50 ;
7458  unsigned long __cil_tmp51 ;
7459  unsigned long __cil_tmp52 ;
7460  struct device *__cil_tmp53 ;
7461  struct device  const  *__cil_tmp54 ;
7462  int __cil_tmp55 ;
7463  int __cil_tmp56 ;
7464  int __cil_tmp57 ;
7465  unsigned long __cil_tmp58 ;
7466  unsigned long __cil_tmp59 ;
7467  u8 __cil_tmp60 ;
7468  int __cil_tmp61 ;
7469  int __cil_tmp62 ;
7470  unsigned int __cil_tmp63 ;
7471  unsigned char const   *__cil_tmp64 ;
7472  unsigned long __cil_tmp65 ;
7473  unsigned long __cil_tmp66 ;
7474  u32 __cil_tmp67 ;
7475  size_t __cil_tmp68 ;
7476
7477  {
7478  {
7479#line 489
7480  __cil_tmp14 = (unsigned long )urb;
7481#line 489
7482  __cil_tmp15 = __cil_tmp14 + 176;
7483#line 489
7484  __cil_tmp16 = *((void **)__cil_tmp15);
7485#line 489
7486  port = (struct usb_serial_port *)__cil_tmp16;
7487#line 490
7488  tmp___7 = usb_get_serial_port_data(port);
7489#line 490
7490  priv = (struct spcp8x5_private *)tmp___7;
7491#line 492
7492  __cil_tmp17 = (unsigned long )urb;
7493#line 492
7494  __cil_tmp18 = __cil_tmp17 + 104;
7495#line 492
7496  __cil_tmp19 = *((void **)__cil_tmp18);
7497#line 492
7498  data = (unsigned char *)__cil_tmp19;
7499#line 498
7500  tty_flag = (char)0;
7501  }
7502  {
7503#line 500
7504  while (1) {
7505    while_continue: /* CIL Label */ ;
7506    {
7507#line 500
7508    while (1) {
7509      while_continue___0: /* CIL Label */ ;
7510      {
7511#line 500
7512      __cil_tmp20 = (spinlock_t *)priv;
7513#line 500
7514      tmp___8 = spinlock_check(__cil_tmp20);
7515#line 500
7516      flags = _raw_spin_lock_irqsave(tmp___8);
7517      }
7518#line 500
7519      goto while_break___0;
7520    }
7521    while_break___0: /* CIL Label */ ;
7522    }
7523#line 500
7524    goto while_break;
7525  }
7526  while_break: /* CIL Label */ ;
7527  }
7528  {
7529#line 501
7530  __cil_tmp21 = (unsigned long )priv;
7531#line 501
7532  __cil_tmp22 = __cil_tmp21 + 73;
7533#line 501
7534  status = *((u8 *)__cil_tmp22);
7535#line 502
7536  __cil_tmp23 = (unsigned long )priv;
7537#line 502
7538  __cil_tmp24 = __cil_tmp23 + 73;
7539#line 502
7540  __cil_tmp25 = (unsigned long )priv;
7541#line 502
7542  __cil_tmp26 = __cil_tmp25 + 73;
7543#line 502
7544  __cil_tmp27 = *((u8 *)__cil_tmp26);
7545#line 502
7546  __cil_tmp28 = (int )__cil_tmp27;
7547#line 502
7548  __cil_tmp29 = __cil_tmp28 & -118;
7549#line 502
7550  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp29;
7551#line 503
7552  __cil_tmp30 = (spinlock_t *)priv;
7553#line 503
7554  spin_unlock_irqrestore(__cil_tmp30, flags);
7555#line 505
7556  __cil_tmp31 = (unsigned long )priv;
7557#line 505
7558  __cil_tmp32 = __cil_tmp31 + 32;
7559#line 505
7560  __cil_tmp33 = (wait_queue_head_t *)__cil_tmp32;
7561#line 505
7562  __cil_tmp34 = (void *)0;
7563#line 505
7564  __wake_up(__cil_tmp33, 1U, 1, __cil_tmp34);
7565  }
7566  {
7567#line 507
7568  __cil_tmp35 = (unsigned long )urb;
7569#line 507
7570  __cil_tmp36 = __cil_tmp35 + 140;
7571#line 507
7572  __cil_tmp37 = *((u32 *)__cil_tmp36);
7573#line 507
7574  if (! __cil_tmp37) {
7575#line 508
7576    return;
7577  } else {
7578
7579  }
7580  }
7581  {
7582#line 510
7583  __cil_tmp38 = (unsigned long )port;
7584#line 510
7585  __cil_tmp39 = __cil_tmp38 + 8;
7586#line 510
7587  __cil_tmp40 = (struct tty_port *)__cil_tmp39;
7588#line 510
7589  tty = tty_port_tty_get(__cil_tmp40);
7590  }
7591#line 511
7592  if (! tty) {
7593#line 512
7594    return;
7595  } else {
7596
7597  }
7598  {
7599#line 514
7600  __cil_tmp41 = (int )status;
7601#line 514
7602  if (__cil_tmp41 & 117) {
7603    {
7604#line 517
7605    __cil_tmp42 = (int )status;
7606#line 517
7607    if (__cil_tmp42 & 4) {
7608#line 518
7609      tty_flag = (char)1;
7610    } else {
7611      {
7612#line 519
7613      __cil_tmp43 = (int )status;
7614#line 519
7615      if (__cil_tmp43 & 32) {
7616#line 520
7617        tty_flag = (char)3;
7618      } else {
7619        {
7620#line 521
7621        __cil_tmp44 = (int )status;
7622#line 521
7623        if (__cil_tmp44 & 16) {
7624#line 522
7625          tty_flag = (char)2;
7626        } else {
7627
7628        }
7629        }
7630      }
7631      }
7632    }
7633    }
7634    {
7635#line 523
7636    while (1) {
7637      while_continue___1: /* CIL Label */ ;
7638      {
7639#line 523
7640      while (1) {
7641        while_continue___2: /* CIL Label */ ;
7642        {
7643#line 523
7644        __cil_tmp45 = & descriptor___5;
7645#line 523
7646        __cil_tmp46 = __cil_tmp45->flags;
7647#line 523
7648        __cil_tmp47 = __cil_tmp46 & 1U;
7649#line 523
7650        __cil_tmp48 = ! __cil_tmp47;
7651#line 523
7652        __cil_tmp49 = ! __cil_tmp48;
7653#line 523
7654        __cil_tmp50 = (long )__cil_tmp49;
7655#line 523
7656        tmp___9 = __builtin_expect(__cil_tmp50, 0L);
7657        }
7658#line 523
7659        if (tmp___9) {
7660          {
7661#line 523
7662          __cil_tmp51 = (unsigned long )port;
7663#line 523
7664          __cil_tmp52 = __cil_tmp51 + 712;
7665#line 523
7666          __cil_tmp53 = (struct device *)__cil_tmp52;
7667#line 523
7668          __cil_tmp54 = (struct device  const  *)__cil_tmp53;
7669#line 523
7670          __cil_tmp55 = (int )tty_flag;
7671#line 523
7672          __dynamic_dev_dbg(& descriptor___5, __cil_tmp54, "tty_flag = %d\n", __cil_tmp55);
7673          }
7674        } else {
7675
7676        }
7677#line 523
7678        goto while_break___2;
7679      }
7680      while_break___2: /* CIL Label */ ;
7681      }
7682#line 523
7683      goto while_break___1;
7684    }
7685    while_break___1: /* CIL Label */ ;
7686    }
7687    {
7688#line 526
7689    __cil_tmp56 = (int )status;
7690#line 526
7691    if (__cil_tmp56 & 64) {
7692      {
7693#line 527
7694      tty_insert_flip_char(tty, (unsigned char)0, (char)4);
7695      }
7696    } else {
7697
7698    }
7699    }
7700    {
7701#line 529
7702    __cil_tmp57 = (int )status;
7703#line 529
7704    if (__cil_tmp57 & 1) {
7705      {
7706#line 530
7707      __cil_tmp58 = (unsigned long )priv;
7708#line 530
7709      __cil_tmp59 = __cil_tmp58 + 73;
7710#line 530
7711      __cil_tmp60 = *((u8 *)__cil_tmp59);
7712#line 530
7713      __cil_tmp61 = (int )__cil_tmp60;
7714#line 530
7715      __cil_tmp62 = __cil_tmp61 & 128;
7716#line 530
7717      __cil_tmp63 = (unsigned int )__cil_tmp62;
7718#line 530
7719      usb_serial_handle_dcd_change(port, tty, __cil_tmp63);
7720      }
7721    } else {
7722
7723    }
7724    }
7725  } else {
7726
7727  }
7728  }
7729  {
7730#line 534
7731  __cil_tmp64 = (unsigned char const   *)data;
7732#line 534
7733  __cil_tmp65 = (unsigned long )urb;
7734#line 534
7735  __cil_tmp66 = __cil_tmp65 + 140;
7736#line 534
7737  __cil_tmp67 = *((u32 *)__cil_tmp66);
7738#line 534
7739  __cil_tmp68 = (size_t )__cil_tmp67;
7740#line 534
7741  tty_insert_flip_string_fixed_flag(tty, __cil_tmp64, tty_flag, __cil_tmp68);
7742#line 536
7743  tty_flip_buffer_push(tty);
7744#line 537
7745  tty_kref_put(tty);
7746  }
7747#line 538
7748  return;
7749}
7750}
7751#line 540 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
7752static int spcp8x5_wait_modem_info(struct usb_serial_port *port , unsigned int arg ) 
7753{ struct spcp8x5_private *priv ;
7754  void *tmp___7 ;
7755  unsigned long flags ;
7756  unsigned int prevstatus ;
7757  unsigned int status ;
7758  unsigned int changed ;
7759  raw_spinlock_t *tmp___8 ;
7760  struct task_struct *tmp___9 ;
7761  int tmp___10 ;
7762  raw_spinlock_t *tmp___11 ;
7763  spinlock_t *__cil_tmp17 ;
7764  unsigned long __cil_tmp18 ;
7765  unsigned long __cil_tmp19 ;
7766  u8 __cil_tmp20 ;
7767  spinlock_t *__cil_tmp21 ;
7768  unsigned long __cil_tmp22 ;
7769  unsigned long __cil_tmp23 ;
7770  wait_queue_head_t *__cil_tmp24 ;
7771  spinlock_t *__cil_tmp25 ;
7772  unsigned long __cil_tmp26 ;
7773  unsigned long __cil_tmp27 ;
7774  u8 __cil_tmp28 ;
7775  spinlock_t *__cil_tmp29 ;
7776
7777  {
7778  {
7779#line 543
7780  tmp___7 = usb_get_serial_port_data(port);
7781#line 543
7782  priv = (struct spcp8x5_private *)tmp___7;
7783  }
7784  {
7785#line 549
7786  while (1) {
7787    while_continue: /* CIL Label */ ;
7788    {
7789#line 549
7790    while (1) {
7791      while_continue___0: /* CIL Label */ ;
7792      {
7793#line 549
7794      __cil_tmp17 = (spinlock_t *)priv;
7795#line 549
7796      tmp___8 = spinlock_check(__cil_tmp17);
7797#line 549
7798      flags = _raw_spin_lock_irqsave(tmp___8);
7799      }
7800#line 549
7801      goto while_break___0;
7802    }
7803    while_break___0: /* CIL Label */ ;
7804    }
7805#line 549
7806    goto while_break;
7807  }
7808  while_break: /* CIL Label */ ;
7809  }
7810  {
7811#line 550
7812  __cil_tmp18 = (unsigned long )priv;
7813#line 550
7814  __cil_tmp19 = __cil_tmp18 + 73;
7815#line 550
7816  __cil_tmp20 = *((u8 *)__cil_tmp19);
7817#line 550
7818  prevstatus = (unsigned int )__cil_tmp20;
7819#line 551
7820  __cil_tmp21 = (spinlock_t *)priv;
7821#line 551
7822  spin_unlock_irqrestore(__cil_tmp21, flags);
7823  }
7824  {
7825#line 553
7826  while (1) {
7827    while_continue___1: /* CIL Label */ ;
7828    {
7829#line 555
7830    __cil_tmp22 = (unsigned long )priv;
7831#line 555
7832    __cil_tmp23 = __cil_tmp22 + 32;
7833#line 555
7834    __cil_tmp24 = (wait_queue_head_t *)__cil_tmp23;
7835#line 555
7836    interruptible_sleep_on(__cil_tmp24);
7837#line 558
7838    tmp___9 = get_current();
7839#line 558
7840    tmp___10 = signal_pending(tmp___9);
7841    }
7842#line 558
7843    if (tmp___10) {
7844#line 559
7845      return (-512);
7846    } else {
7847
7848    }
7849    {
7850#line 561
7851    while (1) {
7852      while_continue___2: /* CIL Label */ ;
7853      {
7854#line 561
7855      while (1) {
7856        while_continue___3: /* CIL Label */ ;
7857        {
7858#line 561
7859        __cil_tmp25 = (spinlock_t *)priv;
7860#line 561
7861        tmp___11 = spinlock_check(__cil_tmp25);
7862#line 561
7863        flags = _raw_spin_lock_irqsave(tmp___11);
7864        }
7865#line 561
7866        goto while_break___3;
7867      }
7868      while_break___3: /* CIL Label */ ;
7869      }
7870#line 561
7871      goto while_break___2;
7872    }
7873    while_break___2: /* CIL Label */ ;
7874    }
7875    {
7876#line 562
7877    __cil_tmp26 = (unsigned long )priv;
7878#line 562
7879    __cil_tmp27 = __cil_tmp26 + 73;
7880#line 562
7881    __cil_tmp28 = *((u8 *)__cil_tmp27);
7882#line 562
7883    status = (unsigned int )__cil_tmp28;
7884#line 563
7885    __cil_tmp29 = (spinlock_t *)priv;
7886#line 563
7887    spin_unlock_irqrestore(__cil_tmp29, flags);
7888#line 565
7889    changed = prevstatus ^ status;
7890    }
7891#line 567
7892    if (arg & 128U) {
7893#line 567
7894      if (changed & 64U) {
7895#line 571
7896        return (0);
7897      } else {
7898#line 567
7899        goto _L___1;
7900      }
7901    } else
7902    _L___1: /* CIL Label */ 
7903#line 567
7904    if (arg & 256U) {
7905#line 567
7906      if (changed & 32U) {
7907#line 571
7908        return (0);
7909      } else {
7910#line 567
7911        goto _L___0;
7912      }
7913    } else
7914    _L___0: /* CIL Label */ 
7915#line 567
7916    if (arg & 64U) {
7917#line 567
7918      if (changed & 128U) {
7919#line 571
7920        return (0);
7921      } else {
7922#line 567
7923        goto _L;
7924      }
7925    } else
7926    _L: /* CIL Label */ 
7927#line 567
7928    if (arg & 32U) {
7929#line 567
7930      if (changed & 16U) {
7931#line 571
7932        return (0);
7933      } else {
7934
7935      }
7936    } else {
7937
7938    }
7939#line 573
7940    prevstatus = status;
7941  }
7942  while_break___1: /* CIL Label */ ;
7943  }
7944#line 576
7945  return (0);
7946}
7947}
7948#line 579 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
7949static int spcp8x5_ioctl(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) 
7950{ struct usb_serial_port *port ;
7951  int tmp___7 ;
7952  unsigned long __cil_tmp6 ;
7953  unsigned long __cil_tmp7 ;
7954  void *__cil_tmp8 ;
7955  bool *__cil_tmp9 ;
7956  unsigned long __cil_tmp10 ;
7957  unsigned long __cil_tmp11 ;
7958  unsigned char __cil_tmp12 ;
7959  int __cil_tmp13 ;
7960  bool *__cil_tmp14 ;
7961  unsigned long __cil_tmp15 ;
7962  unsigned long __cil_tmp16 ;
7963  unsigned char __cil_tmp17 ;
7964  int __cil_tmp18 ;
7965  unsigned int __cil_tmp19 ;
7966  bool *__cil_tmp20 ;
7967
7968  {
7969#line 582
7970  __cil_tmp6 = (unsigned long )tty;
7971#line 582
7972  __cil_tmp7 = __cil_tmp6 + 584;
7973#line 582
7974  __cil_tmp8 = *((void **)__cil_tmp7);
7975#line 582
7976  port = (struct usb_serial_port *)__cil_tmp8;
7977  {
7978#line 583
7979  while (1) {
7980    while_continue: /* CIL Label */ ;
7981    {
7982#line 583
7983    __cil_tmp9 = & debug;
7984#line 583
7985    if (*__cil_tmp9) {
7986      {
7987#line 583
7988      __cil_tmp10 = (unsigned long )port;
7989#line 583
7990      __cil_tmp11 = __cil_tmp10 + 384;
7991#line 583
7992      __cil_tmp12 = *((unsigned char *)__cil_tmp11);
7993#line 583
7994      __cil_tmp13 = (int )__cil_tmp12;
7995#line 583
7996      printk("<7>%s: %s (%d) cmd = 0x%04x\n", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
7997             "spcp8x5_ioctl", __cil_tmp13, cmd);
7998      }
7999    } else {
8000
8001    }
8002    }
8003#line 583
8004    goto while_break;
8005  }
8006  while_break: /* CIL Label */ ;
8007  }
8008#line 586
8009  if ((int )cmd == 21596) {
8010#line 586
8011    goto case_21596;
8012  } else {
8013    {
8014#line 590
8015    goto switch_default;
8016#line 585
8017    if (0) {
8018      case_21596: /* CIL Label */ 
8019      {
8020#line 587
8021      while (1) {
8022        while_continue___0: /* CIL Label */ ;
8023        {
8024#line 587
8025        __cil_tmp14 = & debug;
8026#line 587
8027        if (*__cil_tmp14) {
8028          {
8029#line 587
8030          __cil_tmp15 = (unsigned long )port;
8031#line 587
8032          __cil_tmp16 = __cil_tmp15 + 384;
8033#line 587
8034          __cil_tmp17 = *((unsigned char *)__cil_tmp16);
8035#line 587
8036          __cil_tmp18 = (int )__cil_tmp17;
8037#line 587
8038          printk("<7>%s: %s (%d) TIOCMIWAIT\n", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
8039                 "spcp8x5_ioctl", __cil_tmp18);
8040          }
8041        } else {
8042
8043        }
8044        }
8045#line 587
8046        goto while_break___0;
8047      }
8048      while_break___0: /* CIL Label */ ;
8049      }
8050      {
8051#line 588
8052      __cil_tmp19 = (unsigned int )arg;
8053#line 588
8054      tmp___7 = spcp8x5_wait_modem_info(port, __cil_tmp19);
8055      }
8056#line 588
8057      return (tmp___7);
8058      switch_default: /* CIL Label */ 
8059      {
8060#line 591
8061      while (1) {
8062        while_continue___1: /* CIL Label */ ;
8063        {
8064#line 591
8065        __cil_tmp20 = & debug;
8066#line 591
8067        if (*__cil_tmp20) {
8068          {
8069#line 591
8070          printk("<7>%s: %s not supported = 0x%04x\n", "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c",
8071                 "spcp8x5_ioctl", cmd);
8072          }
8073        } else {
8074
8075        }
8076        }
8077#line 591
8078        goto while_break___1;
8079      }
8080      while_break___1: /* CIL Label */ ;
8081      }
8082#line 592
8083      goto switch_break;
8084    } else {
8085      switch_break: /* CIL Label */ ;
8086    }
8087    }
8088  }
8089#line 595
8090  return (-515);
8091}
8092}
8093#line 598 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8094static int spcp8x5_tiocmset(struct tty_struct *tty , unsigned int set , unsigned int clear ) 
8095{ struct usb_serial_port *port ;
8096  struct spcp8x5_private *priv ;
8097  void *tmp___7 ;
8098  unsigned long flags ;
8099  u8 control ;
8100  raw_spinlock_t *tmp___8 ;
8101  int tmp___9 ;
8102  unsigned long __cil_tmp13 ;
8103  unsigned long __cil_tmp14 ;
8104  void *__cil_tmp15 ;
8105  spinlock_t *__cil_tmp16 ;
8106  unsigned long __cil_tmp17 ;
8107  unsigned long __cil_tmp18 ;
8108  unsigned long __cil_tmp19 ;
8109  unsigned long __cil_tmp20 ;
8110  u8 __cil_tmp21 ;
8111  int __cil_tmp22 ;
8112  int __cil_tmp23 ;
8113  unsigned long __cil_tmp24 ;
8114  unsigned long __cil_tmp25 ;
8115  unsigned long __cil_tmp26 ;
8116  unsigned long __cil_tmp27 ;
8117  u8 __cil_tmp28 ;
8118  int __cil_tmp29 ;
8119  int __cil_tmp30 ;
8120  unsigned long __cil_tmp31 ;
8121  unsigned long __cil_tmp32 ;
8122  unsigned long __cil_tmp33 ;
8123  unsigned long __cil_tmp34 ;
8124  u8 __cil_tmp35 ;
8125  int __cil_tmp36 ;
8126  int __cil_tmp37 ;
8127  unsigned long __cil_tmp38 ;
8128  unsigned long __cil_tmp39 ;
8129  unsigned long __cil_tmp40 ;
8130  unsigned long __cil_tmp41 ;
8131  u8 __cil_tmp42 ;
8132  int __cil_tmp43 ;
8133  int __cil_tmp44 ;
8134  unsigned long __cil_tmp45 ;
8135  unsigned long __cil_tmp46 ;
8136  spinlock_t *__cil_tmp47 ;
8137  struct usb_serial *__cil_tmp48 ;
8138  struct usb_device *__cil_tmp49 ;
8139  unsigned long __cil_tmp50 ;
8140  unsigned long __cil_tmp51 ;
8141  enum spcp8x5_type __cil_tmp52 ;
8142
8143  {
8144  {
8145#line 601
8146  __cil_tmp13 = (unsigned long )tty;
8147#line 601
8148  __cil_tmp14 = __cil_tmp13 + 584;
8149#line 601
8150  __cil_tmp15 = *((void **)__cil_tmp14);
8151#line 601
8152  port = (struct usb_serial_port *)__cil_tmp15;
8153#line 602
8154  tmp___7 = usb_get_serial_port_data(port);
8155#line 602
8156  priv = (struct spcp8x5_private *)tmp___7;
8157  }
8158  {
8159#line 606
8160  while (1) {
8161    while_continue: /* CIL Label */ ;
8162    {
8163#line 606
8164    while (1) {
8165      while_continue___0: /* CIL Label */ ;
8166      {
8167#line 606
8168      __cil_tmp16 = (spinlock_t *)priv;
8169#line 606
8170      tmp___8 = spinlock_check(__cil_tmp16);
8171#line 606
8172      flags = _raw_spin_lock_irqsave(tmp___8);
8173      }
8174#line 606
8175      goto while_break___0;
8176    }
8177    while_break___0: /* CIL Label */ ;
8178    }
8179#line 606
8180    goto while_break;
8181  }
8182  while_break: /* CIL Label */ ;
8183  }
8184#line 607
8185  if (set & 4U) {
8186#line 608
8187    __cil_tmp17 = (unsigned long )priv;
8188#line 608
8189    __cil_tmp18 = __cil_tmp17 + 72;
8190#line 608
8191    __cil_tmp19 = (unsigned long )priv;
8192#line 608
8193    __cil_tmp20 = __cil_tmp19 + 72;
8194#line 608
8195    __cil_tmp21 = *((u8 *)__cil_tmp20);
8196#line 608
8197    __cil_tmp22 = (int )__cil_tmp21;
8198#line 608
8199    __cil_tmp23 = __cil_tmp22 | 2;
8200#line 608
8201    *((u8 *)__cil_tmp18) = (u8 )__cil_tmp23;
8202  } else {
8203
8204  }
8205#line 609
8206  if (set & 2U) {
8207#line 610
8208    __cil_tmp24 = (unsigned long )priv;
8209#line 610
8210    __cil_tmp25 = __cil_tmp24 + 72;
8211#line 610
8212    __cil_tmp26 = (unsigned long )priv;
8213#line 610
8214    __cil_tmp27 = __cil_tmp26 + 72;
8215#line 610
8216    __cil_tmp28 = *((u8 *)__cil_tmp27);
8217#line 610
8218    __cil_tmp29 = (int )__cil_tmp28;
8219#line 610
8220    __cil_tmp30 = __cil_tmp29 | 1;
8221#line 610
8222    *((u8 *)__cil_tmp25) = (u8 )__cil_tmp30;
8223  } else {
8224
8225  }
8226#line 611
8227  if (clear & 4U) {
8228#line 612
8229    __cil_tmp31 = (unsigned long )priv;
8230#line 612
8231    __cil_tmp32 = __cil_tmp31 + 72;
8232#line 612
8233    __cil_tmp33 = (unsigned long )priv;
8234#line 612
8235    __cil_tmp34 = __cil_tmp33 + 72;
8236#line 612
8237    __cil_tmp35 = *((u8 *)__cil_tmp34);
8238#line 612
8239    __cil_tmp36 = (int )__cil_tmp35;
8240#line 612
8241    __cil_tmp37 = __cil_tmp36 & -3;
8242#line 612
8243    *((u8 *)__cil_tmp32) = (u8 )__cil_tmp37;
8244  } else {
8245
8246  }
8247#line 613
8248  if (clear & 2U) {
8249#line 614
8250    __cil_tmp38 = (unsigned long )priv;
8251#line 614
8252    __cil_tmp39 = __cil_tmp38 + 72;
8253#line 614
8254    __cil_tmp40 = (unsigned long )priv;
8255#line 614
8256    __cil_tmp41 = __cil_tmp40 + 72;
8257#line 614
8258    __cil_tmp42 = *((u8 *)__cil_tmp41);
8259#line 614
8260    __cil_tmp43 = (int )__cil_tmp42;
8261#line 614
8262    __cil_tmp44 = __cil_tmp43 & -2;
8263#line 614
8264    *((u8 *)__cil_tmp39) = (u8 )__cil_tmp44;
8265  } else {
8266
8267  }
8268  {
8269#line 615
8270  __cil_tmp45 = (unsigned long )priv;
8271#line 615
8272  __cil_tmp46 = __cil_tmp45 + 72;
8273#line 615
8274  control = *((u8 *)__cil_tmp46);
8275#line 616
8276  __cil_tmp47 = (spinlock_t *)priv;
8277#line 616
8278  spin_unlock_irqrestore(__cil_tmp47, flags);
8279#line 618
8280  __cil_tmp48 = *((struct usb_serial **)port);
8281#line 618
8282  __cil_tmp49 = *((struct usb_device **)__cil_tmp48);
8283#line 618
8284  __cil_tmp50 = (unsigned long )priv;
8285#line 618
8286  __cil_tmp51 = __cil_tmp50 + 24;
8287#line 618
8288  __cil_tmp52 = *((enum spcp8x5_type *)__cil_tmp51);
8289#line 618
8290  tmp___9 = spcp8x5_set_ctrlLine(__cil_tmp49, control, __cil_tmp52);
8291  }
8292#line 618
8293  return (tmp___9);
8294}
8295}
8296#line 621 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8297static int spcp8x5_tiocmget(struct tty_struct *tty ) 
8298{ struct usb_serial_port *port ;
8299  struct spcp8x5_private *priv ;
8300  void *tmp___7 ;
8301  unsigned long flags ;
8302  unsigned int mcr ;
8303  unsigned int status ;
8304  unsigned int result ;
8305  raw_spinlock_t *tmp___8 ;
8306  int tmp___9 ;
8307  int tmp___10 ;
8308  int tmp___11 ;
8309  int tmp___12 ;
8310  int tmp___13 ;
8311  int tmp___14 ;
8312  unsigned long __cil_tmp18 ;
8313  unsigned long __cil_tmp19 ;
8314  void *__cil_tmp20 ;
8315  spinlock_t *__cil_tmp21 ;
8316  unsigned long __cil_tmp22 ;
8317  unsigned long __cil_tmp23 ;
8318  u8 __cil_tmp24 ;
8319  unsigned long __cil_tmp25 ;
8320  unsigned long __cil_tmp26 ;
8321  u8 __cil_tmp27 ;
8322  spinlock_t *__cil_tmp28 ;
8323  int __cil_tmp29 ;
8324  int __cil_tmp30 ;
8325  int __cil_tmp31 ;
8326  int __cil_tmp32 ;
8327  int __cil_tmp33 ;
8328
8329  {
8330  {
8331#line 623
8332  __cil_tmp18 = (unsigned long )tty;
8333#line 623
8334  __cil_tmp19 = __cil_tmp18 + 584;
8335#line 623
8336  __cil_tmp20 = *((void **)__cil_tmp19);
8337#line 623
8338  port = (struct usb_serial_port *)__cil_tmp20;
8339#line 624
8340  tmp___7 = usb_get_serial_port_data(port);
8341#line 624
8342  priv = (struct spcp8x5_private *)tmp___7;
8343  }
8344  {
8345#line 630
8346  while (1) {
8347    while_continue: /* CIL Label */ ;
8348    {
8349#line 630
8350    while (1) {
8351      while_continue___0: /* CIL Label */ ;
8352      {
8353#line 630
8354      __cil_tmp21 = (spinlock_t *)priv;
8355#line 630
8356      tmp___8 = spinlock_check(__cil_tmp21);
8357#line 630
8358      flags = _raw_spin_lock_irqsave(tmp___8);
8359      }
8360#line 630
8361      goto while_break___0;
8362    }
8363    while_break___0: /* CIL Label */ ;
8364    }
8365#line 630
8366    goto while_break;
8367  }
8368  while_break: /* CIL Label */ ;
8369  }
8370  {
8371#line 631
8372  __cil_tmp22 = (unsigned long )priv;
8373#line 631
8374  __cil_tmp23 = __cil_tmp22 + 72;
8375#line 631
8376  __cil_tmp24 = *((u8 *)__cil_tmp23);
8377#line 631
8378  mcr = (unsigned int )__cil_tmp24;
8379#line 632
8380  __cil_tmp25 = (unsigned long )priv;
8381#line 632
8382  __cil_tmp26 = __cil_tmp25 + 73;
8383#line 632
8384  __cil_tmp27 = *((u8 *)__cil_tmp26);
8385#line 632
8386  status = (unsigned int )__cil_tmp27;
8387#line 633
8388  __cil_tmp28 = (spinlock_t *)priv;
8389#line 633
8390  spin_unlock_irqrestore(__cil_tmp28, flags);
8391  }
8392#line 635
8393  if (mcr & 1U) {
8394#line 635
8395    tmp___9 = 2;
8396  } else {
8397#line 635
8398    tmp___9 = 0;
8399  }
8400#line 635
8401  if (mcr & 2U) {
8402#line 635
8403    tmp___10 = 4;
8404  } else {
8405#line 635
8406    tmp___10 = 0;
8407  }
8408#line 635
8409  if (status & 16U) {
8410#line 635
8411    tmp___11 = 32;
8412  } else {
8413#line 635
8414    tmp___11 = 0;
8415  }
8416#line 635
8417  if (status & 32U) {
8418#line 635
8419    tmp___12 = 256;
8420  } else {
8421#line 635
8422    tmp___12 = 0;
8423  }
8424#line 635
8425  if (status & 64U) {
8426#line 635
8427    tmp___13 = 128;
8428  } else {
8429#line 635
8430    tmp___13 = 0;
8431  }
8432#line 635
8433  if (status & 128U) {
8434#line 635
8435    tmp___14 = 64;
8436  } else {
8437#line 635
8438    tmp___14 = 0;
8439  }
8440#line 635
8441  __cil_tmp29 = tmp___9 | tmp___10;
8442#line 635
8443  __cil_tmp30 = __cil_tmp29 | tmp___11;
8444#line 635
8445  __cil_tmp31 = __cil_tmp30 | tmp___12;
8446#line 635
8447  __cil_tmp32 = __cil_tmp31 | tmp___13;
8448#line 635
8449  __cil_tmp33 = __cil_tmp32 | tmp___14;
8450#line 635
8451  result = (unsigned int )__cil_tmp33;
8452#line 642
8453  return ((int )result);
8454}
8455}
8456#line 646 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8457static struct usb_serial_driver spcp8x5_device  = 
8458#line 646
8459     {(char const   *)0, id_table, (char)1, {(struct list_head *)0, (struct list_head *)0},
8460    {"SPCP8x5", (struct bus_type *)0, & __this_module, (char const   *)0, (_Bool)0,
8461     (struct of_device_id  const  *)0, (int (*)(struct device *dev ))0, (int (*)(struct device *dev ))0,
8462     (void (*)(struct device *dev ))0, (int (*)(struct device *dev , pm_message_t state ))0,
8463     (int (*)(struct device *dev ))0, (struct attribute_group  const  **)0, (struct dev_pm_ops  const  *)0,
8464     (struct driver_private *)0}, (struct usb_driver *)0, {{{{{{0U}}, 0U, 0U, (void *)0}}},
8465                                                           {(struct list_head *)0,
8466                                                            (struct list_head *)0}},
8467    0UL, 0UL, (int (*)(struct usb_serial *serial , struct usb_device_id  const  *id ))0,
8468    & spcp8x5_startup, (int (*)(struct usb_serial *serial ))0, (void (*)(struct usb_serial *serial ))0,
8469    & spcp8x5_release, (int (*)(struct usb_serial_port *port ))0, (int (*)(struct usb_serial_port *port ))0,
8470    (int (*)(struct usb_serial *serial , pm_message_t message ))0, (int (*)(struct usb_serial *serial ))0,
8471    & spcp8x5_open, (void (*)(struct usb_serial_port *port ))0, (int (*)(struct tty_struct *tty ,
8472                                                                         struct usb_serial_port *port ,
8473                                                                         unsigned char const   *buf ,
8474                                                                         int count ))0,
8475    (int (*)(struct tty_struct *tty ))0, & spcp8x5_ioctl, & spcp8x5_set_termios, (void (*)(struct tty_struct *tty ,
8476                                                                                           int break_state ))0,
8477    (int (*)(struct tty_struct *tty ))0, (void (*)(struct tty_struct *tty ))0, (void (*)(struct tty_struct *tty ))0,
8478    & spcp8x5_tiocmget, & spcp8x5_tiocmset, (int (*)(struct tty_struct *tty , struct serial_icounter_struct *icount ))0,
8479    & spcp8x5_dtr_rts, & spcp8x5_carrier_raised, & spcp8x5_init_termios, (void (*)(struct urb *urb ))0,
8480    (void (*)(struct urb *urb ))0, (void (*)(struct urb *urb ))0, (void (*)(struct urb *urb ))0,
8481    & spcp8x5_process_read_urb, (int (*)(struct usb_serial_port *port , void *dest ,
8482                                         size_t size ))0};
8483#line 666 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8484static struct usb_serial_driver * const  serial_drivers[2]  = {      (struct usb_serial_driver * const  )(& spcp8x5_device),      (struct usb_serial_driver * const  )((void *)0)};
8485#line 670
8486static int spcp8x5_driver_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
8487#line 670 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8488static int spcp8x5_driver_init(void) 
8489{ int tmp___7 ;
8490  unsigned long __cil_tmp2 ;
8491  unsigned long __cil_tmp3 ;
8492  struct usb_serial_driver * const  *__cil_tmp4 ;
8493
8494  {
8495  {
8496#line 670
8497  __cil_tmp2 = 0 * 8UL;
8498#line 670
8499  __cil_tmp3 = (unsigned long )(serial_drivers) + __cil_tmp2;
8500#line 670
8501  __cil_tmp4 = (struct usb_serial_driver * const  *)__cil_tmp3;
8502#line 670
8503  tmp___7 = usb_serial_register_drivers(& spcp8x5_driver, __cil_tmp4);
8504  }
8505#line 670
8506  return (tmp___7);
8507}
8508}
8509#line 670 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8510int init_module(void) 
8511{ int tmp___7 ;
8512
8513  {
8514  {
8515#line 670
8516  tmp___7 = spcp8x5_driver_init();
8517  }
8518#line 670
8519  return (tmp___7);
8520}
8521}
8522#line 670
8523static void spcp8x5_driver_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
8524#line 670 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8525static void spcp8x5_driver_exit(void) 
8526{ unsigned long __cil_tmp1 ;
8527  unsigned long __cil_tmp2 ;
8528  struct usb_serial_driver * const  *__cil_tmp3 ;
8529
8530  {
8531  {
8532#line 670
8533  __cil_tmp1 = 0 * 8UL;
8534#line 670
8535  __cil_tmp2 = (unsigned long )(serial_drivers) + __cil_tmp1;
8536#line 670
8537  __cil_tmp3 = (struct usb_serial_driver * const  *)__cil_tmp2;
8538#line 670
8539  usb_serial_deregister_drivers(& spcp8x5_driver, __cil_tmp3);
8540  }
8541#line 670
8542  return;
8543}
8544}
8545#line 670 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8546void cleanup_module(void) 
8547{ 
8548
8549  {
8550  {
8551#line 670
8552  spcp8x5_driver_exit();
8553  }
8554#line 670
8555  return;
8556}
8557}
8558#line 672 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8559static char const   __mod_description672[49]  __attribute__((__used__, __unused__,
8560__section__(".modinfo"), __aligned__(1)))  = 
8561#line 672
8562  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
8563        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
8564        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
8565        (char const   )'S',      (char const   )'P',      (char const   )'C',      (char const   )'P', 
8566        (char const   )'8',      (char const   )'x',      (char const   )'5',      (char const   )' ', 
8567        (char const   )'U',      (char const   )'S',      (char const   )'B',      (char const   )' ', 
8568        (char const   )'t',      (char const   )'o',      (char const   )' ',      (char const   )'s', 
8569        (char const   )'e',      (char const   )'r',      (char const   )'i',      (char const   )'a', 
8570        (char const   )'l',      (char const   )' ',      (char const   )'a',      (char const   )'d', 
8571        (char const   )'a',      (char const   )'p',      (char const   )'t',      (char const   )'o', 
8572        (char const   )'r',      (char const   )' ',      (char const   )'d',      (char const   )'r', 
8573        (char const   )'i',      (char const   )'v',      (char const   )'e',      (char const   )'r', 
8574        (char const   )'\000'};
8575#line 673 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8576static char const   __mod_version673[14]  __attribute__((__used__, __unused__, __section__(".modinfo"),
8577__aligned__(1)))  = 
8578#line 673
8579  {      (char const   )'v',      (char const   )'e',      (char const   )'r',      (char const   )'s', 
8580        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
8581        (char const   )'v',      (char const   )'0',      (char const   )'.',      (char const   )'1', 
8582        (char const   )'0',      (char const   )'\000'};
8583#line 674 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8584static char const   __mod_license674[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
8585__aligned__(1)))  = 
8586#line 674
8587  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
8588        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
8589        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
8590#line 676 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8591static char const   __param_str_debug[6]  = {      (char const   )'d',      (char const   )'e',      (char const   )'b',      (char const   )'u', 
8592        (char const   )'g',      (char const   )'\000'};
8593#line 676 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8594static struct kernel_param  const  __param_debug  __attribute__((__used__, __unused__,
8595__section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_debug, (struct kernel_param_ops  const  *)(& param_ops_bool), (u16 )420,
8596    (s16 )0, {(void *)(& debug)}};
8597#line 676 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8598static char const   __mod_debugtype676[20]  __attribute__((__used__, __unused__, __section__(".modinfo"),
8599__aligned__(1)))  = 
8600#line 676
8601  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
8602        (char const   )'t',      (char const   )'y',      (char const   )'p',      (char const   )'e', 
8603        (char const   )'=',      (char const   )'d',      (char const   )'e',      (char const   )'b', 
8604        (char const   )'u',      (char const   )'g',      (char const   )':',      (char const   )'b', 
8605        (char const   )'o',      (char const   )'o',      (char const   )'l',      (char const   )'\000'};
8606#line 677 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8607static char const   __mod_debug677[32]  __attribute__((__used__, __unused__, __section__(".modinfo"),
8608__aligned__(1)))  = 
8609#line 677
8610  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
8611        (char const   )'=',      (char const   )'d',      (char const   )'e',      (char const   )'b', 
8612        (char const   )'u',      (char const   )'g',      (char const   )':',      (char const   )'D', 
8613        (char const   )'e',      (char const   )'b',      (char const   )'u',      (char const   )'g', 
8614        (char const   )' ',      (char const   )'e',      (char const   )'n',      (char const   )'a', 
8615        (char const   )'b',      (char const   )'l',      (char const   )'e',      (char const   )'d', 
8616        (char const   )' ',      (char const   )'o',      (char const   )'r',      (char const   )' ', 
8617        (char const   )'n',      (char const   )'o',      (char const   )'t',      (char const   )'\000'};
8618#line 695
8619void ldv_check_final_state(void) ;
8620#line 698
8621extern void ldv_check_return_value(int res ) ;
8622#line 701
8623extern void ldv_initialize(void) ;
8624#line 704
8625extern int __VERIFIER_nondet_int(void) ;
8626#line 707 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8627int LDV_IN_INTERRUPT  ;
8628#line 797 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8629static int res_spcp8x5_open_9  ;
8630#line 710 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
8631void main(void) 
8632{ struct tty_struct *var_group1 ;
8633  struct usb_serial_port *var_group2 ;
8634  int var_spcp8x5_dtr_rts_6_p1 ;
8635  struct ktermios *var_spcp8x5_set_termios_8_p2 ;
8636  unsigned int var_spcp8x5_ioctl_12_p1 ;
8637  unsigned long var_spcp8x5_ioctl_12_p2 ;
8638  unsigned int var_spcp8x5_tiocmset_13_p1 ;
8639  unsigned int var_spcp8x5_tiocmset_13_p2 ;
8640  struct usb_serial *var_group3 ;
8641  struct urb *var_group4 ;
8642  int ldv_s_spcp8x5_device_usb_serial_driver ;
8643  int tmp___7 ;
8644  int tmp___8 ;
8645  int __cil_tmp14 ;
8646
8647  {
8648  {
8649#line 1571
8650  LDV_IN_INTERRUPT = 1;
8651#line 1580
8652  ldv_initialize();
8653#line 1581
8654  ldv_s_spcp8x5_device_usb_serial_driver = 0;
8655  }
8656  {
8657#line 1585
8658  while (1) {
8659    while_continue: /* CIL Label */ ;
8660    {
8661#line 1585
8662    tmp___8 = __VERIFIER_nondet_int();
8663    }
8664#line 1585
8665    if (tmp___8) {
8666
8667    } else {
8668      {
8669#line 1585
8670      __cil_tmp14 = ldv_s_spcp8x5_device_usb_serial_driver == 0;
8671#line 1585
8672      if (! __cil_tmp14) {
8673
8674      } else {
8675#line 1585
8676        goto while_break;
8677      }
8678      }
8679    }
8680    {
8681#line 1589
8682    tmp___7 = __VERIFIER_nondet_int();
8683    }
8684#line 1591
8685    if (tmp___7 == 0) {
8686#line 1591
8687      goto case_0;
8688    } else
8689#line 1683
8690    if (tmp___7 == 1) {
8691#line 1683
8692      goto case_1;
8693    } else
8694#line 1772
8695    if (tmp___7 == 2) {
8696#line 1772
8697      goto case_2;
8698    } else
8699#line 1861
8700    if (tmp___7 == 3) {
8701#line 1861
8702      goto case_3;
8703    } else
8704#line 1950
8705    if (tmp___7 == 4) {
8706#line 1950
8707      goto case_4;
8708    } else
8709#line 2039
8710    if (tmp___7 == 5) {
8711#line 2039
8712      goto case_5;
8713    } else
8714#line 2128
8715    if (tmp___7 == 6) {
8716#line 2128
8717      goto case_6;
8718    } else
8719#line 2217
8720    if (tmp___7 == 7) {
8721#line 2217
8722      goto case_7;
8723    } else
8724#line 2306
8725    if (tmp___7 == 8) {
8726#line 2306
8727      goto case_8;
8728    } else
8729#line 2395
8730    if (tmp___7 == 9) {
8731#line 2395
8732      goto case_9;
8733    } else
8734#line 2484
8735    if (tmp___7 == 10) {
8736#line 2484
8737      goto case_10;
8738    } else {
8739      {
8740#line 2573
8741      goto switch_default;
8742#line 1589
8743      if (0) {
8744        case_0: /* CIL Label */ 
8745#line 1594
8746        if (ldv_s_spcp8x5_device_usb_serial_driver == 0) {
8747          {
8748#line 1672
8749          res_spcp8x5_open_9 = spcp8x5_open(var_group1, var_group2);
8750#line 1673
8751          ldv_check_return_value(res_spcp8x5_open_9);
8752          }
8753#line 1674
8754          if (res_spcp8x5_open_9) {
8755#line 1675
8756            goto ldv_module_exit;
8757          } else {
8758
8759          }
8760#line 1676
8761          ldv_s_spcp8x5_device_usb_serial_driver = ldv_s_spcp8x5_device_usb_serial_driver + 1;
8762        } else {
8763
8764        }
8765#line 1682
8766        goto switch_break;
8767        case_1: /* CIL Label */ 
8768#line 1686
8769        if (ldv_s_spcp8x5_device_usb_serial_driver == 1) {
8770          {
8771#line 1764
8772          spcp8x5_release(var_group3);
8773#line 1765
8774          ldv_s_spcp8x5_device_usb_serial_driver = 0;
8775          }
8776        } else {
8777
8778        }
8779#line 1771
8780        goto switch_break;
8781        case_2: /* CIL Label */ 
8782        {
8783#line 1853
8784        spcp8x5_dtr_rts(var_group2, var_spcp8x5_dtr_rts_6_p1);
8785        }
8786#line 1860
8787        goto switch_break;
8788        case_3: /* CIL Label */ 
8789        {
8790#line 1942
8791        spcp8x5_carrier_raised(var_group2);
8792        }
8793#line 1949
8794        goto switch_break;
8795        case_4: /* CIL Label */ 
8796        {
8797#line 2031
8798        spcp8x5_set_termios(var_group1, var_group2, var_spcp8x5_set_termios_8_p2);
8799        }
8800#line 2038
8801        goto switch_break;
8802        case_5: /* CIL Label */ 
8803        {
8804#line 2120
8805        spcp8x5_init_termios(var_group1);
8806        }
8807#line 2127
8808        goto switch_break;
8809        case_6: /* CIL Label */ 
8810        {
8811#line 2209
8812        spcp8x5_ioctl(var_group1, var_spcp8x5_ioctl_12_p1, var_spcp8x5_ioctl_12_p2);
8813        }
8814#line 2216
8815        goto switch_break;
8816        case_7: /* CIL Label */ 
8817        {
8818#line 2298
8819        spcp8x5_tiocmget(var_group1);
8820        }
8821#line 2305
8822        goto switch_break;
8823        case_8: /* CIL Label */ 
8824        {
8825#line 2387
8826        spcp8x5_tiocmset(var_group1, var_spcp8x5_tiocmset_13_p1, var_spcp8x5_tiocmset_13_p2);
8827        }
8828#line 2394
8829        goto switch_break;
8830        case_9: /* CIL Label */ 
8831        {
8832#line 2476
8833        spcp8x5_startup(var_group3);
8834        }
8835#line 2483
8836        goto switch_break;
8837        case_10: /* CIL Label */ 
8838        {
8839#line 2565
8840        spcp8x5_process_read_urb(var_group4);
8841        }
8842#line 2572
8843        goto switch_break;
8844        switch_default: /* CIL Label */ 
8845#line 2573
8846        goto switch_break;
8847      } else {
8848        switch_break: /* CIL Label */ ;
8849      }
8850      }
8851    }
8852  }
8853  while_break: /* CIL Label */ ;
8854  }
8855  ldv_module_exit: 
8856  {
8857#line 2582
8858  ldv_check_final_state();
8859  }
8860#line 2585
8861  return;
8862}
8863}
8864#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
8865void ldv_blast_assert(void) 
8866{ 
8867
8868  {
8869  ERROR: 
8870#line 6
8871  goto ERROR;
8872}
8873}
8874#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
8875extern int __VERIFIER_nondet_int(void) ;
8876#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8877int ldv_mutex  =    1;
8878#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8879int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
8880{ int nondetermined ;
8881
8882  {
8883#line 29
8884  if (ldv_mutex == 1) {
8885
8886  } else {
8887    {
8888#line 29
8889    ldv_blast_assert();
8890    }
8891  }
8892  {
8893#line 32
8894  nondetermined = __VERIFIER_nondet_int();
8895  }
8896#line 35
8897  if (nondetermined) {
8898#line 38
8899    ldv_mutex = 2;
8900#line 40
8901    return (0);
8902  } else {
8903#line 45
8904    return (-4);
8905  }
8906}
8907}
8908#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8909int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
8910{ int nondetermined ;
8911
8912  {
8913#line 57
8914  if (ldv_mutex == 1) {
8915
8916  } else {
8917    {
8918#line 57
8919    ldv_blast_assert();
8920    }
8921  }
8922  {
8923#line 60
8924  nondetermined = __VERIFIER_nondet_int();
8925  }
8926#line 63
8927  if (nondetermined) {
8928#line 66
8929    ldv_mutex = 2;
8930#line 68
8931    return (0);
8932  } else {
8933#line 73
8934    return (-4);
8935  }
8936}
8937}
8938#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8939int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
8940{ int atomic_value_after_dec ;
8941
8942  {
8943#line 83
8944  if (ldv_mutex == 1) {
8945
8946  } else {
8947    {
8948#line 83
8949    ldv_blast_assert();
8950    }
8951  }
8952  {
8953#line 86
8954  atomic_value_after_dec = __VERIFIER_nondet_int();
8955  }
8956#line 89
8957  if (atomic_value_after_dec == 0) {
8958#line 92
8959    ldv_mutex = 2;
8960#line 94
8961    return (1);
8962  } else {
8963
8964  }
8965#line 98
8966  return (0);
8967}
8968}
8969#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8970void mutex_lock(struct mutex *lock ) 
8971{ 
8972
8973  {
8974#line 108
8975  if (ldv_mutex == 1) {
8976
8977  } else {
8978    {
8979#line 108
8980    ldv_blast_assert();
8981    }
8982  }
8983#line 110
8984  ldv_mutex = 2;
8985#line 111
8986  return;
8987}
8988}
8989#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
8990int mutex_trylock(struct mutex *lock ) 
8991{ int nondetermined ;
8992
8993  {
8994#line 121
8995  if (ldv_mutex == 1) {
8996
8997  } else {
8998    {
8999#line 121
9000    ldv_blast_assert();
9001    }
9002  }
9003  {
9004#line 124
9005  nondetermined = __VERIFIER_nondet_int();
9006  }
9007#line 127
9008  if (nondetermined) {
9009#line 130
9010    ldv_mutex = 2;
9011#line 132
9012    return (1);
9013  } else {
9014#line 137
9015    return (0);
9016  }
9017}
9018}
9019#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
9020void mutex_unlock(struct mutex *lock ) 
9021{ 
9022
9023  {
9024#line 147
9025  if (ldv_mutex == 2) {
9026
9027  } else {
9028    {
9029#line 147
9030    ldv_blast_assert();
9031    }
9032  }
9033#line 149
9034  ldv_mutex = 1;
9035#line 150
9036  return;
9037}
9038}
9039#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
9040void ldv_check_final_state(void) 
9041{ 
9042
9043  {
9044#line 156
9045  if (ldv_mutex == 1) {
9046
9047  } else {
9048    {
9049#line 156
9050    ldv_blast_assert();
9051    }
9052  }
9053#line 157
9054  return;
9055}
9056}
9057#line 2594 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/7558/dscv_tempdir/dscv/ri/32_1/drivers/usb/serial/spcp8x5.c.common.c"
9058long s__builtin_expect(long val , long res ) 
9059{ 
9060
9061  {
9062#line 2595
9063  return (val);
9064}
9065}