Showing error 1302

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--video--backlight--tdo24m.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 5730
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

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