Showing error 1255

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