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