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 42 "include/asm-generic/int-ll64.h"
21typedef signed char s8;
22#line 43 "include/asm-generic/int-ll64.h"
23typedef unsigned char u8;
24#line 45 "include/asm-generic/int-ll64.h"
25typedef short s16;
26#line 46 "include/asm-generic/int-ll64.h"
27typedef unsigned short u16;
28#line 48 "include/asm-generic/int-ll64.h"
29typedef int s32;
30#line 49 "include/asm-generic/int-ll64.h"
31typedef unsigned int u32;
32#line 51 "include/asm-generic/int-ll64.h"
33typedef long long s64;
34#line 52 "include/asm-generic/int-ll64.h"
35typedef unsigned long long u64;
36#line 14 "include/asm-generic/posix_types.h"
37typedef long __kernel_long_t;
38#line 15 "include/asm-generic/posix_types.h"
39typedef unsigned long __kernel_ulong_t;
40#line 27 "include/asm-generic/posix_types.h"
41typedef __kernel_ulong_t __kernel_nlink_t;
42#line 31 "include/asm-generic/posix_types.h"
43typedef int __kernel_pid_t;
44#line 52 "include/asm-generic/posix_types.h"
45typedef unsigned int __kernel_uid32_t;
46#line 53 "include/asm-generic/posix_types.h"
47typedef unsigned int __kernel_gid32_t;
48#line 75 "include/asm-generic/posix_types.h"
49typedef __kernel_ulong_t __kernel_size_t;
50#line 76 "include/asm-generic/posix_types.h"
51typedef __kernel_long_t __kernel_ssize_t;
52#line 90 "include/asm-generic/posix_types.h"
53typedef __kernel_long_t __kernel_off_t;
54#line 91 "include/asm-generic/posix_types.h"
55typedef long long __kernel_loff_t;
56#line 92 "include/asm-generic/posix_types.h"
57typedef __kernel_long_t __kernel_time_t;
58#line 93 "include/asm-generic/posix_types.h"
59typedef __kernel_long_t __kernel_clock_t;
60#line 94 "include/asm-generic/posix_types.h"
61typedef int __kernel_timer_t;
62#line 95 "include/asm-generic/posix_types.h"
63typedef int __kernel_clockid_t;
64#line 21 "include/linux/types.h"
65typedef __u32 __kernel_dev_t;
66#line 24 "include/linux/types.h"
67typedef __kernel_dev_t dev_t;
68#line 27 "include/linux/types.h"
69typedef unsigned short umode_t;
70#line 28 "include/linux/types.h"
71typedef __kernel_nlink_t nlink_t;
72#line 29 "include/linux/types.h"
73typedef __kernel_off_t off_t;
74#line 30 "include/linux/types.h"
75typedef __kernel_pid_t pid_t;
76#line 35 "include/linux/types.h"
77typedef __kernel_clockid_t clockid_t;
78#line 38 "include/linux/types.h"
79typedef _Bool bool;
80#line 40 "include/linux/types.h"
81typedef __kernel_uid32_t uid_t;
82#line 41 "include/linux/types.h"
83typedef __kernel_gid32_t gid_t;
84#line 54 "include/linux/types.h"
85typedef __kernel_loff_t loff_t;
86#line 63 "include/linux/types.h"
87typedef __kernel_size_t size_t;
88#line 68 "include/linux/types.h"
89typedef __kernel_ssize_t ssize_t;
90#line 78 "include/linux/types.h"
91typedef __kernel_time_t time_t;
92#line 100 "include/linux/types.h"
93typedef unsigned int uint;
94#line 111 "include/linux/types.h"
95typedef __s32 int32_t;
96#line 115 "include/linux/types.h"
97typedef __u8 uint8_t;
98#line 117 "include/linux/types.h"
99typedef __u32 uint32_t;
100#line 120 "include/linux/types.h"
101typedef __u64 uint64_t;
102#line 142 "include/linux/types.h"
103typedef unsigned long sector_t;
104#line 143 "include/linux/types.h"
105typedef unsigned long blkcnt_t;
106#line 155 "include/linux/types.h"
107typedef u64 dma_addr_t;
108#line 179 "include/linux/types.h"
109typedef __u16 __be16;
110#line 181 "include/linux/types.h"
111typedef __u32 __be32;
112#line 186 "include/linux/types.h"
113typedef __u32 __wsum;
114#line 202 "include/linux/types.h"
115typedef unsigned int gfp_t;
116#line 203 "include/linux/types.h"
117typedef unsigned int fmode_t;
118#line 221 "include/linux/types.h"
119struct __anonstruct_atomic_t_6 {
120 int counter ;
121};
122#line 221 "include/linux/types.h"
123typedef struct __anonstruct_atomic_t_6 atomic_t;
124#line 226 "include/linux/types.h"
125struct __anonstruct_atomic64_t_7 {
126 long counter ;
127};
128#line 226 "include/linux/types.h"
129typedef struct __anonstruct_atomic64_t_7 atomic64_t;
130#line 227 "include/linux/types.h"
131struct list_head {
132 struct list_head *next ;
133 struct list_head *prev ;
134};
135#line 232
136struct hlist_node;
137#line 232 "include/linux/types.h"
138struct hlist_head {
139 struct hlist_node *first ;
140};
141#line 236 "include/linux/types.h"
142struct hlist_node {
143 struct hlist_node *next ;
144 struct hlist_node **pprev ;
145};
146#line 247 "include/linux/types.h"
147struct rcu_head {
148 struct rcu_head *next ;
149 void (*func)(struct rcu_head * ) ;
150};
151#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
152struct module;
153#line 55
154struct module;
155#line 146 "include/linux/init.h"
156typedef void (*ctor_fn_t)(void);
157#line 305 "include/linux/printk.h"
158struct _ddebug {
159 char const *modname ;
160 char const *function ;
161 char const *filename ;
162 char const *format ;
163 unsigned int lineno : 18 ;
164 unsigned char flags ;
165};
166#line 46 "include/linux/dynamic_debug.h"
167struct device;
168#line 46
169struct device;
170#line 51
171struct net_device;
172#line 51
173struct net_device;
174#line 57
175struct completion;
176#line 57
177struct completion;
178#line 58
179struct pt_regs;
180#line 58
181struct pt_regs;
182#line 348 "include/linux/kernel.h"
183struct pid;
184#line 348
185struct pid;
186#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
187struct timespec;
188#line 112
189struct timespec;
190#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
191struct page;
192#line 58
193struct page;
194#line 26 "include/asm-generic/getorder.h"
195struct task_struct;
196#line 26
197struct task_struct;
198#line 28
199struct mm_struct;
200#line 28
201struct mm_struct;
202#line 268 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/segment.h"
203struct pt_regs {
204 unsigned long r15 ;
205 unsigned long r14 ;
206 unsigned long r13 ;
207 unsigned long r12 ;
208 unsigned long bp ;
209 unsigned long bx ;
210 unsigned long r11 ;
211 unsigned long r10 ;
212 unsigned long r9 ;
213 unsigned long r8 ;
214 unsigned long ax ;
215 unsigned long cx ;
216 unsigned long dx ;
217 unsigned long si ;
218 unsigned long di ;
219 unsigned long orig_ax ;
220 unsigned long ip ;
221 unsigned long cs ;
222 unsigned long flags ;
223 unsigned long sp ;
224 unsigned long ss ;
225};
226#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
227struct __anonstruct_ldv_2180_13 {
228 unsigned int a ;
229 unsigned int b ;
230};
231#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
232struct __anonstruct_ldv_2195_14 {
233 u16 limit0 ;
234 u16 base0 ;
235 unsigned char base1 ;
236 unsigned char type : 4 ;
237 unsigned char s : 1 ;
238 unsigned char dpl : 2 ;
239 unsigned char p : 1 ;
240 unsigned char limit : 4 ;
241 unsigned char avl : 1 ;
242 unsigned char l : 1 ;
243 unsigned char d : 1 ;
244 unsigned char g : 1 ;
245 unsigned char base2 ;
246};
247#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
248union __anonunion_ldv_2196_12 {
249 struct __anonstruct_ldv_2180_13 ldv_2180 ;
250 struct __anonstruct_ldv_2195_14 ldv_2195 ;
251};
252#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
253struct desc_struct {
254 union __anonunion_ldv_2196_12 ldv_2196 ;
255};
256#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
257typedef unsigned long pgdval_t;
258#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
259typedef unsigned long pgprotval_t;
260#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
261struct pgprot {
262 pgprotval_t pgprot ;
263};
264#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
265typedef struct pgprot pgprot_t;
266#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
267struct __anonstruct_pgd_t_16 {
268 pgdval_t pgd ;
269};
270#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
271typedef struct __anonstruct_pgd_t_16 pgd_t;
272#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
273typedef struct page *pgtable_t;
274#line 290
275struct file;
276#line 290
277struct file;
278#line 305
279struct seq_file;
280#line 305
281struct seq_file;
282#line 337
283struct thread_struct;
284#line 337
285struct thread_struct;
286#line 339
287struct cpumask;
288#line 339
289struct cpumask;
290#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
291struct arch_spinlock;
292#line 327
293struct arch_spinlock;
294#line 300 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
295struct kernel_vm86_regs {
296 struct pt_regs pt ;
297 unsigned short es ;
298 unsigned short __esh ;
299 unsigned short ds ;
300 unsigned short __dsh ;
301 unsigned short fs ;
302 unsigned short __fsh ;
303 unsigned short gs ;
304 unsigned short __gsh ;
305};
306#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
307union __anonunion_ldv_2824_19 {
308 struct pt_regs *regs ;
309 struct kernel_vm86_regs *vm86 ;
310};
311#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
312struct math_emu_info {
313 long ___orig_eip ;
314 union __anonunion_ldv_2824_19 ldv_2824 ;
315};
316#line 306 "include/linux/bitmap.h"
317struct bug_entry {
318 int bug_addr_disp ;
319 int file_disp ;
320 unsigned short line ;
321 unsigned short flags ;
322};
323#line 89 "include/linux/bug.h"
324struct cpumask {
325 unsigned long bits[64U] ;
326};
327#line 14 "include/linux/cpumask.h"
328typedef struct cpumask cpumask_t;
329#line 637 "include/linux/cpumask.h"
330typedef struct cpumask *cpumask_var_t;
331#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
332struct static_key;
333#line 234
334struct static_key;
335#line 153 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
336struct seq_operations;
337#line 287 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
338struct i387_fsave_struct {
339 u32 cwd ;
340 u32 swd ;
341 u32 twd ;
342 u32 fip ;
343 u32 fcs ;
344 u32 foo ;
345 u32 fos ;
346 u32 st_space[20U] ;
347 u32 status ;
348};
349#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
350struct __anonstruct_ldv_5180_24 {
351 u64 rip ;
352 u64 rdp ;
353};
354#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
355struct __anonstruct_ldv_5186_25 {
356 u32 fip ;
357 u32 fcs ;
358 u32 foo ;
359 u32 fos ;
360};
361#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
362union __anonunion_ldv_5187_23 {
363 struct __anonstruct_ldv_5180_24 ldv_5180 ;
364 struct __anonstruct_ldv_5186_25 ldv_5186 ;
365};
366#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
367union __anonunion_ldv_5196_26 {
368 u32 padding1[12U] ;
369 u32 sw_reserved[12U] ;
370};
371#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
372struct i387_fxsave_struct {
373 u16 cwd ;
374 u16 swd ;
375 u16 twd ;
376 u16 fop ;
377 union __anonunion_ldv_5187_23 ldv_5187 ;
378 u32 mxcsr ;
379 u32 mxcsr_mask ;
380 u32 st_space[32U] ;
381 u32 xmm_space[64U] ;
382 u32 padding[12U] ;
383 union __anonunion_ldv_5196_26 ldv_5196 ;
384};
385#line 339 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
386struct i387_soft_struct {
387 u32 cwd ;
388 u32 swd ;
389 u32 twd ;
390 u32 fip ;
391 u32 fcs ;
392 u32 foo ;
393 u32 fos ;
394 u32 st_space[20U] ;
395 u8 ftop ;
396 u8 changed ;
397 u8 lookahead ;
398 u8 no_update ;
399 u8 rm ;
400 u8 alimit ;
401 struct math_emu_info *info ;
402 u32 entry_eip ;
403};
404#line 360 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
405struct ymmh_struct {
406 u32 ymmh_space[64U] ;
407};
408#line 365 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
409struct xsave_hdr_struct {
410 u64 xstate_bv ;
411 u64 reserved1[2U] ;
412 u64 reserved2[5U] ;
413};
414#line 371 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
415struct xsave_struct {
416 struct i387_fxsave_struct i387 ;
417 struct xsave_hdr_struct xsave_hdr ;
418 struct ymmh_struct ymmh ;
419};
420#line 377 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
421union thread_xstate {
422 struct i387_fsave_struct fsave ;
423 struct i387_fxsave_struct fxsave ;
424 struct i387_soft_struct soft ;
425 struct xsave_struct xsave ;
426};
427#line 385 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
428struct fpu {
429 unsigned int last_cpu ;
430 unsigned int has_fpu ;
431 union thread_xstate *state ;
432};
433#line 433
434struct kmem_cache;
435#line 434
436struct perf_event;
437#line 434
438struct perf_event;
439#line 435 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
440struct thread_struct {
441 struct desc_struct tls_array[3U] ;
442 unsigned long sp0 ;
443 unsigned long sp ;
444 unsigned long usersp ;
445 unsigned short es ;
446 unsigned short ds ;
447 unsigned short fsindex ;
448 unsigned short gsindex ;
449 unsigned long fs ;
450 unsigned long gs ;
451 struct perf_event *ptrace_bps[4U] ;
452 unsigned long debugreg6 ;
453 unsigned long ptrace_dr7 ;
454 unsigned long cr2 ;
455 unsigned long trap_nr ;
456 unsigned long error_code ;
457 struct fpu fpu ;
458 unsigned long *io_bitmap_ptr ;
459 unsigned long iopl ;
460 unsigned int io_bitmap_max ;
461};
462#line 23 "include/asm-generic/atomic-long.h"
463typedef atomic64_t atomic_long_t;
464#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
465typedef u16 __ticket_t;
466#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
467typedef u32 __ticketpair_t;
468#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
469struct __raw_tickets {
470 __ticket_t head ;
471 __ticket_t tail ;
472};
473#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
474union __anonunion_ldv_5907_29 {
475 __ticketpair_t head_tail ;
476 struct __raw_tickets tickets ;
477};
478#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
479struct arch_spinlock {
480 union __anonunion_ldv_5907_29 ldv_5907 ;
481};
482#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
483typedef struct arch_spinlock arch_spinlock_t;
484#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
485struct __anonstruct_ldv_5914_31 {
486 u32 read ;
487 s32 write ;
488};
489#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
490union __anonunion_arch_rwlock_t_30 {
491 s64 lock ;
492 struct __anonstruct_ldv_5914_31 ldv_5914 ;
493};
494#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
495typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
496#line 34
497struct lockdep_map;
498#line 34
499struct lockdep_map;
500#line 55 "include/linux/debug_locks.h"
501struct stack_trace {
502 unsigned int nr_entries ;
503 unsigned int max_entries ;
504 unsigned long *entries ;
505 int skip ;
506};
507#line 26 "include/linux/stacktrace.h"
508struct lockdep_subclass_key {
509 char __one_byte ;
510};
511#line 53 "include/linux/lockdep.h"
512struct lock_class_key {
513 struct lockdep_subclass_key subkeys[8U] ;
514};
515#line 59 "include/linux/lockdep.h"
516struct lock_class {
517 struct list_head hash_entry ;
518 struct list_head lock_entry ;
519 struct lockdep_subclass_key *key ;
520 unsigned int subclass ;
521 unsigned int dep_gen_id ;
522 unsigned long usage_mask ;
523 struct stack_trace usage_traces[13U] ;
524 struct list_head locks_after ;
525 struct list_head locks_before ;
526 unsigned int version ;
527 unsigned long ops ;
528 char const *name ;
529 int name_version ;
530 unsigned long contention_point[4U] ;
531 unsigned long contending_point[4U] ;
532};
533#line 144 "include/linux/lockdep.h"
534struct lockdep_map {
535 struct lock_class_key *key ;
536 struct lock_class *class_cache[2U] ;
537 char const *name ;
538 int cpu ;
539 unsigned long ip ;
540};
541#line 187 "include/linux/lockdep.h"
542struct held_lock {
543 u64 prev_chain_key ;
544 unsigned long acquire_ip ;
545 struct lockdep_map *instance ;
546 struct lockdep_map *nest_lock ;
547 u64 waittime_stamp ;
548 u64 holdtime_stamp ;
549 unsigned short class_idx : 13 ;
550 unsigned char irq_context : 2 ;
551 unsigned char trylock : 1 ;
552 unsigned char read : 2 ;
553 unsigned char check : 2 ;
554 unsigned char hardirqs_off : 1 ;
555 unsigned short references : 11 ;
556};
557#line 556 "include/linux/lockdep.h"
558struct raw_spinlock {
559 arch_spinlock_t raw_lock ;
560 unsigned int magic ;
561 unsigned int owner_cpu ;
562 void *owner ;
563 struct lockdep_map dep_map ;
564};
565#line 32 "include/linux/spinlock_types.h"
566typedef struct raw_spinlock raw_spinlock_t;
567#line 33 "include/linux/spinlock_types.h"
568struct __anonstruct_ldv_6122_33 {
569 u8 __padding[24U] ;
570 struct lockdep_map dep_map ;
571};
572#line 33 "include/linux/spinlock_types.h"
573union __anonunion_ldv_6123_32 {
574 struct raw_spinlock rlock ;
575 struct __anonstruct_ldv_6122_33 ldv_6122 ;
576};
577#line 33 "include/linux/spinlock_types.h"
578struct spinlock {
579 union __anonunion_ldv_6123_32 ldv_6123 ;
580};
581#line 76 "include/linux/spinlock_types.h"
582typedef struct spinlock spinlock_t;
583#line 23 "include/linux/rwlock_types.h"
584struct __anonstruct_rwlock_t_34 {
585 arch_rwlock_t raw_lock ;
586 unsigned int magic ;
587 unsigned int owner_cpu ;
588 void *owner ;
589 struct lockdep_map dep_map ;
590};
591#line 23 "include/linux/rwlock_types.h"
592typedef struct __anonstruct_rwlock_t_34 rwlock_t;
593#line 36 "include/linux/seqlock.h"
594struct __anonstruct_seqlock_t_35 {
595 unsigned int sequence ;
596 spinlock_t lock ;
597};
598#line 36 "include/linux/seqlock.h"
599typedef struct __anonstruct_seqlock_t_35 seqlock_t;
600#line 110 "include/linux/seqlock.h"
601struct seqcount {
602 unsigned int sequence ;
603};
604#line 121 "include/linux/seqlock.h"
605typedef struct seqcount seqcount_t;
606#line 254 "include/linux/seqlock.h"
607struct timespec {
608 __kernel_time_t tv_sec ;
609 long tv_nsec ;
610};
611#line 286 "include/linux/time.h"
612struct kstat {
613 u64 ino ;
614 dev_t dev ;
615 umode_t mode ;
616 unsigned int nlink ;
617 uid_t uid ;
618 gid_t gid ;
619 dev_t rdev ;
620 loff_t size ;
621 struct timespec atime ;
622 struct timespec mtime ;
623 struct timespec ctime ;
624 unsigned long blksize ;
625 unsigned long long blocks ;
626};
627#line 27 "include/linux/wait.h"
628struct __wait_queue;
629#line 27 "include/linux/wait.h"
630typedef struct __wait_queue wait_queue_t;
631#line 30 "include/linux/wait.h"
632struct __wait_queue {
633 unsigned int flags ;
634 void *private ;
635 int (*func)(wait_queue_t * , unsigned int , int , void * ) ;
636 struct list_head task_list ;
637};
638#line 48 "include/linux/wait.h"
639struct __wait_queue_head {
640 spinlock_t lock ;
641 struct list_head task_list ;
642};
643#line 53 "include/linux/wait.h"
644typedef struct __wait_queue_head wait_queue_head_t;
645#line 98 "include/linux/nodemask.h"
646struct __anonstruct_nodemask_t_36 {
647 unsigned long bits[16U] ;
648};
649#line 98 "include/linux/nodemask.h"
650typedef struct __anonstruct_nodemask_t_36 nodemask_t;
651#line 670 "include/linux/mmzone.h"
652struct mutex {
653 atomic_t count ;
654 spinlock_t wait_lock ;
655 struct list_head wait_list ;
656 struct task_struct *owner ;
657 char const *name ;
658 void *magic ;
659 struct lockdep_map dep_map ;
660};
661#line 63 "include/linux/mutex.h"
662struct mutex_waiter {
663 struct list_head list ;
664 struct task_struct *task ;
665 void *magic ;
666};
667#line 171
668struct rw_semaphore;
669#line 171
670struct rw_semaphore;
671#line 172 "include/linux/mutex.h"
672struct rw_semaphore {
673 long count ;
674 raw_spinlock_t wait_lock ;
675 struct list_head wait_list ;
676 struct lockdep_map dep_map ;
677};
678#line 128 "include/linux/rwsem.h"
679struct completion {
680 unsigned int done ;
681 wait_queue_head_t wait ;
682};
683#line 188 "include/linux/rcupdate.h"
684struct notifier_block;
685#line 188
686struct notifier_block;
687#line 239 "include/linux/srcu.h"
688struct notifier_block {
689 int (*notifier_call)(struct notifier_block * , unsigned long , void * ) ;
690 struct notifier_block *next ;
691 int priority ;
692};
693#line 60 "include/linux/notifier.h"
694struct blocking_notifier_head {
695 struct rw_semaphore rwsem ;
696 struct notifier_block *head ;
697};
698#line 793 "include/linux/mmzone.h"
699struct ctl_table;
700#line 793
701struct ctl_table;
702#line 312 "include/linux/jiffies.h"
703union ktime {
704 s64 tv64 ;
705};
706#line 59 "include/linux/ktime.h"
707typedef union ktime ktime_t;
708#line 341
709struct tvec_base;
710#line 341
711struct tvec_base;
712#line 342 "include/linux/ktime.h"
713struct timer_list {
714 struct list_head entry ;
715 unsigned long expires ;
716 struct tvec_base *base ;
717 void (*function)(unsigned long ) ;
718 unsigned long data ;
719 int slack ;
720 int start_pid ;
721 void *start_site ;
722 char start_comm[16U] ;
723 struct lockdep_map lockdep_map ;
724};
725#line 289 "include/linux/timer.h"
726struct hrtimer;
727#line 289
728struct hrtimer;
729#line 290
730enum hrtimer_restart;
731#line 301
732struct workqueue_struct;
733#line 301
734struct workqueue_struct;
735#line 302
736struct work_struct;
737#line 302
738struct work_struct;
739#line 45 "include/linux/workqueue.h"
740struct work_struct {
741 atomic_long_t data ;
742 struct list_head entry ;
743 void (*func)(struct work_struct * ) ;
744 struct lockdep_map lockdep_map ;
745};
746#line 86 "include/linux/workqueue.h"
747struct delayed_work {
748 struct work_struct work ;
749 struct timer_list timer ;
750};
751#line 102 "include/linux/workqueue.h"
752struct execute_work {
753 struct work_struct work ;
754};
755#line 46 "include/linux/pm.h"
756struct pm_message {
757 int event ;
758};
759#line 52 "include/linux/pm.h"
760typedef struct pm_message pm_message_t;
761#line 53 "include/linux/pm.h"
762struct dev_pm_ops {
763 int (*prepare)(struct device * ) ;
764 void (*complete)(struct device * ) ;
765 int (*suspend)(struct device * ) ;
766 int (*resume)(struct device * ) ;
767 int (*freeze)(struct device * ) ;
768 int (*thaw)(struct device * ) ;
769 int (*poweroff)(struct device * ) ;
770 int (*restore)(struct device * ) ;
771 int (*suspend_late)(struct device * ) ;
772 int (*resume_early)(struct device * ) ;
773 int (*freeze_late)(struct device * ) ;
774 int (*thaw_early)(struct device * ) ;
775 int (*poweroff_late)(struct device * ) ;
776 int (*restore_early)(struct device * ) ;
777 int (*suspend_noirq)(struct device * ) ;
778 int (*resume_noirq)(struct device * ) ;
779 int (*freeze_noirq)(struct device * ) ;
780 int (*thaw_noirq)(struct device * ) ;
781 int (*poweroff_noirq)(struct device * ) ;
782 int (*restore_noirq)(struct device * ) ;
783 int (*runtime_suspend)(struct device * ) ;
784 int (*runtime_resume)(struct device * ) ;
785 int (*runtime_idle)(struct device * ) ;
786};
787#line 289
788enum rpm_status {
789 RPM_ACTIVE = 0,
790 RPM_RESUMING = 1,
791 RPM_SUSPENDED = 2,
792 RPM_SUSPENDING = 3
793} ;
794#line 296
795enum rpm_request {
796 RPM_REQ_NONE = 0,
797 RPM_REQ_IDLE = 1,
798 RPM_REQ_SUSPEND = 2,
799 RPM_REQ_AUTOSUSPEND = 3,
800 RPM_REQ_RESUME = 4
801} ;
802#line 304
803struct wakeup_source;
804#line 304
805struct wakeup_source;
806#line 494 "include/linux/pm.h"
807struct pm_subsys_data {
808 spinlock_t lock ;
809 unsigned int refcount ;
810};
811#line 499
812struct dev_pm_qos_request;
813#line 499
814struct pm_qos_constraints;
815#line 499 "include/linux/pm.h"
816struct dev_pm_info {
817 pm_message_t power_state ;
818 unsigned char can_wakeup : 1 ;
819 unsigned char async_suspend : 1 ;
820 bool is_prepared ;
821 bool is_suspended ;
822 bool ignore_children ;
823 spinlock_t lock ;
824 struct list_head entry ;
825 struct completion completion ;
826 struct wakeup_source *wakeup ;
827 bool wakeup_path ;
828 struct timer_list suspend_timer ;
829 unsigned long timer_expires ;
830 struct work_struct work ;
831 wait_queue_head_t wait_queue ;
832 atomic_t usage_count ;
833 atomic_t child_count ;
834 unsigned char disable_depth : 3 ;
835 unsigned char idle_notification : 1 ;
836 unsigned char request_pending : 1 ;
837 unsigned char deferred_resume : 1 ;
838 unsigned char run_wake : 1 ;
839 unsigned char runtime_auto : 1 ;
840 unsigned char no_callbacks : 1 ;
841 unsigned char irq_safe : 1 ;
842 unsigned char use_autosuspend : 1 ;
843 unsigned char timer_autosuspends : 1 ;
844 enum rpm_request request ;
845 enum rpm_status runtime_status ;
846 int runtime_error ;
847 int autosuspend_delay ;
848 unsigned long last_busy ;
849 unsigned long active_jiffies ;
850 unsigned long suspended_jiffies ;
851 unsigned long accounting_timestamp ;
852 ktime_t suspend_time ;
853 s64 max_time_suspended_ns ;
854 struct dev_pm_qos_request *pq_req ;
855 struct pm_subsys_data *subsys_data ;
856 struct pm_qos_constraints *constraints ;
857};
858#line 558 "include/linux/pm.h"
859struct dev_pm_domain {
860 struct dev_pm_ops ops ;
861};
862#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
863struct __anonstruct_mm_context_t_101 {
864 void *ldt ;
865 int size ;
866 unsigned short ia32_compat ;
867 struct mutex lock ;
868 void *vdso ;
869};
870#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
871typedef struct __anonstruct_mm_context_t_101 mm_context_t;
872#line 18 "include/asm-generic/pci_iomap.h"
873struct vm_area_struct;
874#line 18
875struct vm_area_struct;
876#line 68 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/xen/hypervisor.h"
877struct bio_vec;
878#line 68
879struct bio_vec;
880#line 18 "include/linux/smp.h"
881struct call_single_data {
882 struct list_head list ;
883 void (*func)(void * ) ;
884 void *info ;
885 u16 flags ;
886 u16 priv ;
887};
888#line 835 "include/linux/sysctl.h"
889struct rb_node {
890 unsigned long rb_parent_color ;
891 struct rb_node *rb_right ;
892 struct rb_node *rb_left ;
893};
894#line 108 "include/linux/rbtree.h"
895struct rb_root {
896 struct rb_node *rb_node ;
897};
898#line 176
899struct nsproxy;
900#line 176
901struct nsproxy;
902#line 177
903struct ctl_table_root;
904#line 177
905struct ctl_table_root;
906#line 178
907struct ctl_table_header;
908#line 178
909struct ctl_table_header;
910#line 179
911struct ctl_dir;
912#line 179
913struct ctl_dir;
914#line 946 "include/linux/sysctl.h"
915typedef int proc_handler(struct ctl_table * , int , void * , size_t * , loff_t * );
916#line 966 "include/linux/sysctl.h"
917struct ctl_table_poll {
918 atomic_t event ;
919 wait_queue_head_t wait ;
920};
921#line 1005 "include/linux/sysctl.h"
922struct ctl_table {
923 char const *procname ;
924 void *data ;
925 int maxlen ;
926 umode_t mode ;
927 struct ctl_table *child ;
928 proc_handler *proc_handler ;
929 struct ctl_table_poll *poll ;
930 void *extra1 ;
931 void *extra2 ;
932};
933#line 1026 "include/linux/sysctl.h"
934struct ctl_node {
935 struct rb_node node ;
936 struct ctl_table_header *header ;
937};
938#line 1031 "include/linux/sysctl.h"
939struct __anonstruct_ldv_12573_129 {
940 struct ctl_table *ctl_table ;
941 int used ;
942 int count ;
943 int nreg ;
944};
945#line 1031 "include/linux/sysctl.h"
946union __anonunion_ldv_12575_128 {
947 struct __anonstruct_ldv_12573_129 ldv_12573 ;
948 struct rcu_head rcu ;
949};
950#line 1031
951struct ctl_table_set;
952#line 1031 "include/linux/sysctl.h"
953struct ctl_table_header {
954 union __anonunion_ldv_12575_128 ldv_12575 ;
955 struct completion *unregistering ;
956 struct ctl_table *ctl_table_arg ;
957 struct ctl_table_root *root ;
958 struct ctl_table_set *set ;
959 struct ctl_dir *parent ;
960 struct ctl_node *node ;
961};
962#line 1052 "include/linux/sysctl.h"
963struct ctl_dir {
964 struct ctl_table_header header ;
965 struct rb_root root ;
966};
967#line 1058 "include/linux/sysctl.h"
968struct ctl_table_set {
969 int (*is_seen)(struct ctl_table_set * ) ;
970 struct ctl_dir dir ;
971};
972#line 1063 "include/linux/sysctl.h"
973struct ctl_table_root {
974 struct ctl_table_set default_set ;
975 struct ctl_table_set *(*lookup)(struct ctl_table_root * , struct nsproxy * ) ;
976 int (*permissions)(struct ctl_table_root * , struct nsproxy * , struct ctl_table * ) ;
977};
978#line 37 "include/linux/kmod.h"
979struct cred;
980#line 37
981struct cred;
982#line 18 "include/linux/elf.h"
983typedef __u64 Elf64_Addr;
984#line 19 "include/linux/elf.h"
985typedef __u16 Elf64_Half;
986#line 23 "include/linux/elf.h"
987typedef __u32 Elf64_Word;
988#line 24 "include/linux/elf.h"
989typedef __u64 Elf64_Xword;
990#line 193 "include/linux/elf.h"
991struct elf64_sym {
992 Elf64_Word st_name ;
993 unsigned char st_info ;
994 unsigned char st_other ;
995 Elf64_Half st_shndx ;
996 Elf64_Addr st_value ;
997 Elf64_Xword st_size ;
998};
999#line 201 "include/linux/elf.h"
1000typedef struct elf64_sym Elf64_Sym;
1001#line 445
1002struct sock;
1003#line 445
1004struct sock;
1005#line 446
1006struct kobject;
1007#line 446
1008struct kobject;
1009#line 447
1010enum kobj_ns_type {
1011 KOBJ_NS_TYPE_NONE = 0,
1012 KOBJ_NS_TYPE_NET = 1,
1013 KOBJ_NS_TYPES = 2
1014} ;
1015#line 453 "include/linux/elf.h"
1016struct kobj_ns_type_operations {
1017 enum kobj_ns_type type ;
1018 void *(*grab_current_ns)(void) ;
1019 void const *(*netlink_ns)(struct sock * ) ;
1020 void const *(*initial_ns)(void) ;
1021 void (*drop_ns)(void * ) ;
1022};
1023#line 57 "include/linux/kobject_ns.h"
1024struct attribute {
1025 char const *name ;
1026 umode_t mode ;
1027 struct lock_class_key *key ;
1028 struct lock_class_key skey ;
1029};
1030#line 33 "include/linux/sysfs.h"
1031struct attribute_group {
1032 char const *name ;
1033 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
1034 struct attribute **attrs ;
1035};
1036#line 62 "include/linux/sysfs.h"
1037struct bin_attribute {
1038 struct attribute attr ;
1039 size_t size ;
1040 void *private ;
1041 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1042 loff_t , size_t ) ;
1043 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1044 loff_t , size_t ) ;
1045 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
1046};
1047#line 98 "include/linux/sysfs.h"
1048struct sysfs_ops {
1049 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
1050 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
1051 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
1052};
1053#line 117
1054struct sysfs_dirent;
1055#line 117
1056struct sysfs_dirent;
1057#line 182 "include/linux/sysfs.h"
1058struct kref {
1059 atomic_t refcount ;
1060};
1061#line 49 "include/linux/kobject.h"
1062struct kset;
1063#line 49
1064struct kobj_type;
1065#line 49 "include/linux/kobject.h"
1066struct kobject {
1067 char const *name ;
1068 struct list_head entry ;
1069 struct kobject *parent ;
1070 struct kset *kset ;
1071 struct kobj_type *ktype ;
1072 struct sysfs_dirent *sd ;
1073 struct kref kref ;
1074 unsigned char state_initialized : 1 ;
1075 unsigned char state_in_sysfs : 1 ;
1076 unsigned char state_add_uevent_sent : 1 ;
1077 unsigned char state_remove_uevent_sent : 1 ;
1078 unsigned char uevent_suppress : 1 ;
1079};
1080#line 107 "include/linux/kobject.h"
1081struct kobj_type {
1082 void (*release)(struct kobject * ) ;
1083 struct sysfs_ops const *sysfs_ops ;
1084 struct attribute **default_attrs ;
1085 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
1086 void const *(*namespace)(struct kobject * ) ;
1087};
1088#line 115 "include/linux/kobject.h"
1089struct kobj_uevent_env {
1090 char *envp[32U] ;
1091 int envp_idx ;
1092 char buf[2048U] ;
1093 int buflen ;
1094};
1095#line 122 "include/linux/kobject.h"
1096struct kset_uevent_ops {
1097 int (* const filter)(struct kset * , struct kobject * ) ;
1098 char const *(* const name)(struct kset * , struct kobject * ) ;
1099 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
1100};
1101#line 139 "include/linux/kobject.h"
1102struct kset {
1103 struct list_head list ;
1104 spinlock_t list_lock ;
1105 struct kobject kobj ;
1106 struct kset_uevent_ops const *uevent_ops ;
1107};
1108#line 215
1109struct kernel_param;
1110#line 215
1111struct kernel_param;
1112#line 216 "include/linux/kobject.h"
1113struct kernel_param_ops {
1114 int (*set)(char const * , struct kernel_param const * ) ;
1115 int (*get)(char * , struct kernel_param const * ) ;
1116 void (*free)(void * ) ;
1117};
1118#line 49 "include/linux/moduleparam.h"
1119struct kparam_string;
1120#line 49
1121struct kparam_array;
1122#line 49 "include/linux/moduleparam.h"
1123union __anonunion_ldv_13367_134 {
1124 void *arg ;
1125 struct kparam_string const *str ;
1126 struct kparam_array const *arr ;
1127};
1128#line 49 "include/linux/moduleparam.h"
1129struct kernel_param {
1130 char const *name ;
1131 struct kernel_param_ops const *ops ;
1132 u16 perm ;
1133 s16 level ;
1134 union __anonunion_ldv_13367_134 ldv_13367 ;
1135};
1136#line 61 "include/linux/moduleparam.h"
1137struct kparam_string {
1138 unsigned int maxlen ;
1139 char *string ;
1140};
1141#line 67 "include/linux/moduleparam.h"
1142struct kparam_array {
1143 unsigned int max ;
1144 unsigned int elemsize ;
1145 unsigned int *num ;
1146 struct kernel_param_ops const *ops ;
1147 void *elem ;
1148};
1149#line 458 "include/linux/moduleparam.h"
1150struct static_key {
1151 atomic_t enabled ;
1152};
1153#line 225 "include/linux/jump_label.h"
1154struct tracepoint;
1155#line 225
1156struct tracepoint;
1157#line 226 "include/linux/jump_label.h"
1158struct tracepoint_func {
1159 void *func ;
1160 void *data ;
1161};
1162#line 29 "include/linux/tracepoint.h"
1163struct tracepoint {
1164 char const *name ;
1165 struct static_key key ;
1166 void (*regfunc)(void) ;
1167 void (*unregfunc)(void) ;
1168 struct tracepoint_func *funcs ;
1169};
1170#line 86 "include/linux/tracepoint.h"
1171struct kernel_symbol {
1172 unsigned long value ;
1173 char const *name ;
1174};
1175#line 27 "include/linux/export.h"
1176struct mod_arch_specific {
1177
1178};
1179#line 34 "include/linux/module.h"
1180struct module_param_attrs;
1181#line 34 "include/linux/module.h"
1182struct module_kobject {
1183 struct kobject kobj ;
1184 struct module *mod ;
1185 struct kobject *drivers_dir ;
1186 struct module_param_attrs *mp ;
1187};
1188#line 43 "include/linux/module.h"
1189struct module_attribute {
1190 struct attribute attr ;
1191 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
1192 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
1193 size_t ) ;
1194 void (*setup)(struct module * , char const * ) ;
1195 int (*test)(struct module * ) ;
1196 void (*free)(struct module * ) ;
1197};
1198#line 69
1199struct exception_table_entry;
1200#line 69
1201struct exception_table_entry;
1202#line 198
1203enum module_state {
1204 MODULE_STATE_LIVE = 0,
1205 MODULE_STATE_COMING = 1,
1206 MODULE_STATE_GOING = 2
1207} ;
1208#line 204 "include/linux/module.h"
1209struct module_ref {
1210 unsigned long incs ;
1211 unsigned long decs ;
1212};
1213#line 219
1214struct module_sect_attrs;
1215#line 219
1216struct module_notes_attrs;
1217#line 219
1218struct ftrace_event_call;
1219#line 219 "include/linux/module.h"
1220struct module {
1221 enum module_state state ;
1222 struct list_head list ;
1223 char name[56U] ;
1224 struct module_kobject mkobj ;
1225 struct module_attribute *modinfo_attrs ;
1226 char const *version ;
1227 char const *srcversion ;
1228 struct kobject *holders_dir ;
1229 struct kernel_symbol const *syms ;
1230 unsigned long const *crcs ;
1231 unsigned int num_syms ;
1232 struct kernel_param *kp ;
1233 unsigned int num_kp ;
1234 unsigned int num_gpl_syms ;
1235 struct kernel_symbol const *gpl_syms ;
1236 unsigned long const *gpl_crcs ;
1237 struct kernel_symbol const *unused_syms ;
1238 unsigned long const *unused_crcs ;
1239 unsigned int num_unused_syms ;
1240 unsigned int num_unused_gpl_syms ;
1241 struct kernel_symbol const *unused_gpl_syms ;
1242 unsigned long const *unused_gpl_crcs ;
1243 struct kernel_symbol const *gpl_future_syms ;
1244 unsigned long const *gpl_future_crcs ;
1245 unsigned int num_gpl_future_syms ;
1246 unsigned int num_exentries ;
1247 struct exception_table_entry *extable ;
1248 int (*init)(void) ;
1249 void *module_init ;
1250 void *module_core ;
1251 unsigned int init_size ;
1252 unsigned int core_size ;
1253 unsigned int init_text_size ;
1254 unsigned int core_text_size ;
1255 unsigned int init_ro_size ;
1256 unsigned int core_ro_size ;
1257 struct mod_arch_specific arch ;
1258 unsigned int taints ;
1259 unsigned int num_bugs ;
1260 struct list_head bug_list ;
1261 struct bug_entry *bug_table ;
1262 Elf64_Sym *symtab ;
1263 Elf64_Sym *core_symtab ;
1264 unsigned int num_symtab ;
1265 unsigned int core_num_syms ;
1266 char *strtab ;
1267 char *core_strtab ;
1268 struct module_sect_attrs *sect_attrs ;
1269 struct module_notes_attrs *notes_attrs ;
1270 char *args ;
1271 void *percpu ;
1272 unsigned int percpu_size ;
1273 unsigned int num_tracepoints ;
1274 struct tracepoint * const *tracepoints_ptrs ;
1275 unsigned int num_trace_bprintk_fmt ;
1276 char const **trace_bprintk_fmt_start ;
1277 struct ftrace_event_call **trace_events ;
1278 unsigned int num_trace_events ;
1279 struct list_head source_list ;
1280 struct list_head target_list ;
1281 struct task_struct *waiter ;
1282 void (*exit)(void) ;
1283 struct module_ref *refptr ;
1284 ctor_fn_t (**ctors)(void) ;
1285 unsigned int num_ctors ;
1286};
1287#line 88 "include/linux/kmemleak.h"
1288struct kmem_cache_cpu {
1289 void **freelist ;
1290 unsigned long tid ;
1291 struct page *page ;
1292 struct page *partial ;
1293 int node ;
1294 unsigned int stat[26U] ;
1295};
1296#line 55 "include/linux/slub_def.h"
1297struct kmem_cache_node {
1298 spinlock_t list_lock ;
1299 unsigned long nr_partial ;
1300 struct list_head partial ;
1301 atomic_long_t nr_slabs ;
1302 atomic_long_t total_objects ;
1303 struct list_head full ;
1304};
1305#line 66 "include/linux/slub_def.h"
1306struct kmem_cache_order_objects {
1307 unsigned long x ;
1308};
1309#line 76 "include/linux/slub_def.h"
1310struct kmem_cache {
1311 struct kmem_cache_cpu *cpu_slab ;
1312 unsigned long flags ;
1313 unsigned long min_partial ;
1314 int size ;
1315 int objsize ;
1316 int offset ;
1317 int cpu_partial ;
1318 struct kmem_cache_order_objects oo ;
1319 struct kmem_cache_order_objects max ;
1320 struct kmem_cache_order_objects min ;
1321 gfp_t allocflags ;
1322 int refcount ;
1323 void (*ctor)(void * ) ;
1324 int inuse ;
1325 int align ;
1326 int reserved ;
1327 char const *name ;
1328 struct list_head list ;
1329 struct kobject kobj ;
1330 int remote_node_defrag_ratio ;
1331 struct kmem_cache_node *node[1024U] ;
1332};
1333#line 15 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
1334struct configfs_item_operations;
1335#line 15
1336struct configfs_item_operations;
1337#line 16
1338struct configfs_group_operations;
1339#line 16
1340struct configfs_group_operations;
1341#line 17
1342struct configfs_attribute;
1343#line 17
1344struct configfs_attribute;
1345#line 18
1346struct configfs_subsystem;
1347#line 18
1348struct configfs_subsystem;
1349#line 19
1350struct config_group;
1351#line 19
1352struct config_item_type;
1353#line 19
1354struct dentry;
1355#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
1356struct config_item {
1357 char *ci_name ;
1358 char ci_namebuf[20U] ;
1359 struct kref ci_kref ;
1360 struct list_head ci_entry ;
1361 struct config_item *ci_parent ;
1362 struct config_group *ci_group ;
1363 struct config_item_type *ci_type ;
1364 struct dentry *ci_dentry ;
1365};
1366#line 81 "include/linux/configfs.h"
1367struct config_item_type {
1368 struct module *ct_owner ;
1369 struct configfs_item_operations *ct_item_ops ;
1370 struct configfs_group_operations *ct_group_ops ;
1371 struct configfs_attribute **ct_attrs ;
1372};
1373#line 88 "include/linux/configfs.h"
1374struct config_group {
1375 struct config_item cg_item ;
1376 struct list_head cg_children ;
1377 struct configfs_subsystem *cg_subsys ;
1378 struct config_group **default_groups ;
1379};
1380#line 121 "include/linux/configfs.h"
1381struct configfs_attribute {
1382 char const *ca_name ;
1383 struct module *ca_owner ;
1384 umode_t ca_mode ;
1385};
1386#line 129 "include/linux/configfs.h"
1387struct configfs_item_operations {
1388 void (*release)(struct config_item * ) ;
1389 ssize_t (*show_attribute)(struct config_item * , struct configfs_attribute * ,
1390 char * ) ;
1391 ssize_t (*store_attribute)(struct config_item * , struct configfs_attribute * ,
1392 char const * , size_t ) ;
1393 int (*allow_link)(struct config_item * , struct config_item * ) ;
1394 int (*drop_link)(struct config_item * , struct config_item * ) ;
1395};
1396#line 231 "include/linux/configfs.h"
1397struct configfs_group_operations {
1398 struct config_item *(*make_item)(struct config_group * , char const * ) ;
1399 struct config_group *(*make_group)(struct config_group * , char const * ) ;
1400 int (*commit_item)(struct config_item * ) ;
1401 void (*disconnect_notify)(struct config_group * , struct config_item * ) ;
1402 void (*drop_item)(struct config_group * , struct config_item * ) ;
1403};
1404#line 239 "include/linux/configfs.h"
1405struct configfs_subsystem {
1406 struct config_group su_group ;
1407 struct mutex su_mutex ;
1408};
1409#line 259
1410struct prio_tree_node;
1411#line 259 "include/linux/configfs.h"
1412struct raw_prio_tree_node {
1413 struct prio_tree_node *left ;
1414 struct prio_tree_node *right ;
1415 struct prio_tree_node *parent ;
1416};
1417#line 19 "include/linux/prio_tree.h"
1418struct prio_tree_node {
1419 struct prio_tree_node *left ;
1420 struct prio_tree_node *right ;
1421 struct prio_tree_node *parent ;
1422 unsigned long start ;
1423 unsigned long last ;
1424};
1425#line 27 "include/linux/prio_tree.h"
1426struct prio_tree_root {
1427 struct prio_tree_node *prio_tree_node ;
1428 unsigned short index_bits ;
1429 unsigned short raw ;
1430};
1431#line 116
1432struct address_space;
1433#line 116
1434struct address_space;
1435#line 117 "include/linux/prio_tree.h"
1436union __anonunion_ldv_14337_136 {
1437 unsigned long index ;
1438 void *freelist ;
1439};
1440#line 117 "include/linux/prio_tree.h"
1441struct __anonstruct_ldv_14347_140 {
1442 unsigned short inuse ;
1443 unsigned short objects : 15 ;
1444 unsigned char frozen : 1 ;
1445};
1446#line 117 "include/linux/prio_tree.h"
1447union __anonunion_ldv_14348_139 {
1448 atomic_t _mapcount ;
1449 struct __anonstruct_ldv_14347_140 ldv_14347 ;
1450};
1451#line 117 "include/linux/prio_tree.h"
1452struct __anonstruct_ldv_14350_138 {
1453 union __anonunion_ldv_14348_139 ldv_14348 ;
1454 atomic_t _count ;
1455};
1456#line 117 "include/linux/prio_tree.h"
1457union __anonunion_ldv_14351_137 {
1458 unsigned long counters ;
1459 struct __anonstruct_ldv_14350_138 ldv_14350 ;
1460};
1461#line 117 "include/linux/prio_tree.h"
1462struct __anonstruct_ldv_14352_135 {
1463 union __anonunion_ldv_14337_136 ldv_14337 ;
1464 union __anonunion_ldv_14351_137 ldv_14351 ;
1465};
1466#line 117 "include/linux/prio_tree.h"
1467struct __anonstruct_ldv_14359_142 {
1468 struct page *next ;
1469 int pages ;
1470 int pobjects ;
1471};
1472#line 117 "include/linux/prio_tree.h"
1473union __anonunion_ldv_14360_141 {
1474 struct list_head lru ;
1475 struct __anonstruct_ldv_14359_142 ldv_14359 ;
1476};
1477#line 117 "include/linux/prio_tree.h"
1478union __anonunion_ldv_14365_143 {
1479 unsigned long private ;
1480 struct kmem_cache *slab ;
1481 struct page *first_page ;
1482};
1483#line 117 "include/linux/prio_tree.h"
1484struct page {
1485 unsigned long flags ;
1486 struct address_space *mapping ;
1487 struct __anonstruct_ldv_14352_135 ldv_14352 ;
1488 union __anonunion_ldv_14360_141 ldv_14360 ;
1489 union __anonunion_ldv_14365_143 ldv_14365 ;
1490 unsigned long debug_flags ;
1491};
1492#line 192 "include/linux/mm_types.h"
1493struct __anonstruct_vm_set_145 {
1494 struct list_head list ;
1495 void *parent ;
1496 struct vm_area_struct *head ;
1497};
1498#line 192 "include/linux/mm_types.h"
1499union __anonunion_shared_144 {
1500 struct __anonstruct_vm_set_145 vm_set ;
1501 struct raw_prio_tree_node prio_tree_node ;
1502};
1503#line 192
1504struct anon_vma;
1505#line 192
1506struct vm_operations_struct;
1507#line 192
1508struct mempolicy;
1509#line 192 "include/linux/mm_types.h"
1510struct vm_area_struct {
1511 struct mm_struct *vm_mm ;
1512 unsigned long vm_start ;
1513 unsigned long vm_end ;
1514 struct vm_area_struct *vm_next ;
1515 struct vm_area_struct *vm_prev ;
1516 pgprot_t vm_page_prot ;
1517 unsigned long vm_flags ;
1518 struct rb_node vm_rb ;
1519 union __anonunion_shared_144 shared ;
1520 struct list_head anon_vma_chain ;
1521 struct anon_vma *anon_vma ;
1522 struct vm_operations_struct const *vm_ops ;
1523 unsigned long vm_pgoff ;
1524 struct file *vm_file ;
1525 void *vm_private_data ;
1526 struct mempolicy *vm_policy ;
1527};
1528#line 255 "include/linux/mm_types.h"
1529struct core_thread {
1530 struct task_struct *task ;
1531 struct core_thread *next ;
1532};
1533#line 261 "include/linux/mm_types.h"
1534struct core_state {
1535 atomic_t nr_threads ;
1536 struct core_thread dumper ;
1537 struct completion startup ;
1538};
1539#line 274 "include/linux/mm_types.h"
1540struct mm_rss_stat {
1541 atomic_long_t count[3U] ;
1542};
1543#line 287
1544struct linux_binfmt;
1545#line 287
1546struct mmu_notifier_mm;
1547#line 287 "include/linux/mm_types.h"
1548struct mm_struct {
1549 struct vm_area_struct *mmap ;
1550 struct rb_root mm_rb ;
1551 struct vm_area_struct *mmap_cache ;
1552 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1553 unsigned long , unsigned long ) ;
1554 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1555 unsigned long mmap_base ;
1556 unsigned long task_size ;
1557 unsigned long cached_hole_size ;
1558 unsigned long free_area_cache ;
1559 pgd_t *pgd ;
1560 atomic_t mm_users ;
1561 atomic_t mm_count ;
1562 int map_count ;
1563 spinlock_t page_table_lock ;
1564 struct rw_semaphore mmap_sem ;
1565 struct list_head mmlist ;
1566 unsigned long hiwater_rss ;
1567 unsigned long hiwater_vm ;
1568 unsigned long total_vm ;
1569 unsigned long locked_vm ;
1570 unsigned long pinned_vm ;
1571 unsigned long shared_vm ;
1572 unsigned long exec_vm ;
1573 unsigned long stack_vm ;
1574 unsigned long reserved_vm ;
1575 unsigned long def_flags ;
1576 unsigned long nr_ptes ;
1577 unsigned long start_code ;
1578 unsigned long end_code ;
1579 unsigned long start_data ;
1580 unsigned long end_data ;
1581 unsigned long start_brk ;
1582 unsigned long brk ;
1583 unsigned long start_stack ;
1584 unsigned long arg_start ;
1585 unsigned long arg_end ;
1586 unsigned long env_start ;
1587 unsigned long env_end ;
1588 unsigned long saved_auxv[44U] ;
1589 struct mm_rss_stat rss_stat ;
1590 struct linux_binfmt *binfmt ;
1591 cpumask_var_t cpu_vm_mask_var ;
1592 mm_context_t context ;
1593 unsigned int faultstamp ;
1594 unsigned int token_priority ;
1595 unsigned int last_interval ;
1596 unsigned long flags ;
1597 struct core_state *core_state ;
1598 spinlock_t ioctx_lock ;
1599 struct hlist_head ioctx_list ;
1600 struct task_struct *owner ;
1601 struct file *exe_file ;
1602 unsigned long num_exe_file_vmas ;
1603 struct mmu_notifier_mm *mmu_notifier_mm ;
1604 pgtable_t pmd_huge_pte ;
1605 struct cpumask cpumask_allocation ;
1606};
1607#line 93 "include/linux/bit_spinlock.h"
1608struct shrink_control {
1609 gfp_t gfp_mask ;
1610 unsigned long nr_to_scan ;
1611};
1612#line 14 "include/linux/shrinker.h"
1613struct shrinker {
1614 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1615 int seeks ;
1616 long batch ;
1617 struct list_head list ;
1618 atomic_long_t nr_in_batch ;
1619};
1620#line 43
1621struct file_ra_state;
1622#line 43
1623struct file_ra_state;
1624#line 44
1625struct user_struct;
1626#line 44
1627struct user_struct;
1628#line 45
1629struct writeback_control;
1630#line 45
1631struct writeback_control;
1632#line 178 "include/linux/mm.h"
1633struct vm_fault {
1634 unsigned int flags ;
1635 unsigned long pgoff ;
1636 void *virtual_address ;
1637 struct page *page ;
1638};
1639#line 195 "include/linux/mm.h"
1640struct vm_operations_struct {
1641 void (*open)(struct vm_area_struct * ) ;
1642 void (*close)(struct vm_area_struct * ) ;
1643 int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
1644 int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
1645 int (*access)(struct vm_area_struct * , unsigned long , void * , int , int ) ;
1646 int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
1647 struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long ) ;
1648 int (*migrate)(struct vm_area_struct * , nodemask_t const * , nodemask_t const * ,
1649 unsigned long ) ;
1650};
1651#line 244
1652struct inode;
1653#line 244
1654struct inode;
1655#line 1631 "include/linux/mm.h"
1656struct scatterlist {
1657 unsigned long sg_magic ;
1658 unsigned long page_link ;
1659 unsigned int offset ;
1660 unsigned int length ;
1661 dma_addr_t dma_address ;
1662 unsigned int dma_length ;
1663};
1664#line 17 "include/asm-generic/scatterlist.h"
1665struct sg_table {
1666 struct scatterlist *sgl ;
1667 unsigned int nents ;
1668 unsigned int orig_nents ;
1669};
1670#line 268 "include/linux/scatterlist.h"
1671struct scsi_cmnd;
1672#line 268
1673struct scsi_cmnd;
1674#line 93 "include/linux/capability.h"
1675struct kernel_cap_struct {
1676 __u32 cap[2U] ;
1677};
1678#line 96 "include/linux/capability.h"
1679typedef struct kernel_cap_struct kernel_cap_t;
1680#line 104
1681struct user_namespace;
1682#line 104
1683struct user_namespace;
1684#line 7 "include/asm-generic/cputime.h"
1685typedef unsigned long cputime_t;
1686#line 98 "include/linux/sem.h"
1687struct sem_undo_list;
1688#line 98 "include/linux/sem.h"
1689struct sysv_sem {
1690 struct sem_undo_list *undo_list ;
1691};
1692#line 107
1693struct siginfo;
1694#line 107
1695struct siginfo;
1696#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1697struct __anonstruct_sigset_t_147 {
1698 unsigned long sig[1U] ;
1699};
1700#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1701typedef struct __anonstruct_sigset_t_147 sigset_t;
1702#line 17 "include/asm-generic/signal-defs.h"
1703typedef void __signalfn_t(int );
1704#line 18 "include/asm-generic/signal-defs.h"
1705typedef __signalfn_t *__sighandler_t;
1706#line 20 "include/asm-generic/signal-defs.h"
1707typedef void __restorefn_t(void);
1708#line 21 "include/asm-generic/signal-defs.h"
1709typedef __restorefn_t *__sigrestore_t;
1710#line 126 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1711struct sigaction {
1712 __sighandler_t sa_handler ;
1713 unsigned long sa_flags ;
1714 __sigrestore_t sa_restorer ;
1715 sigset_t sa_mask ;
1716};
1717#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1718struct k_sigaction {
1719 struct sigaction sa ;
1720};
1721#line 185 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1722union sigval {
1723 int sival_int ;
1724 void *sival_ptr ;
1725};
1726#line 10 "include/asm-generic/siginfo.h"
1727typedef union sigval sigval_t;
1728#line 11 "include/asm-generic/siginfo.h"
1729struct __anonstruct__kill_149 {
1730 __kernel_pid_t _pid ;
1731 __kernel_uid32_t _uid ;
1732};
1733#line 11 "include/asm-generic/siginfo.h"
1734struct __anonstruct__timer_150 {
1735 __kernel_timer_t _tid ;
1736 int _overrun ;
1737 char _pad[0U] ;
1738 sigval_t _sigval ;
1739 int _sys_private ;
1740};
1741#line 11 "include/asm-generic/siginfo.h"
1742struct __anonstruct__rt_151 {
1743 __kernel_pid_t _pid ;
1744 __kernel_uid32_t _uid ;
1745 sigval_t _sigval ;
1746};
1747#line 11 "include/asm-generic/siginfo.h"
1748struct __anonstruct__sigchld_152 {
1749 __kernel_pid_t _pid ;
1750 __kernel_uid32_t _uid ;
1751 int _status ;
1752 __kernel_clock_t _utime ;
1753 __kernel_clock_t _stime ;
1754};
1755#line 11 "include/asm-generic/siginfo.h"
1756struct __anonstruct__sigfault_153 {
1757 void *_addr ;
1758 short _addr_lsb ;
1759};
1760#line 11 "include/asm-generic/siginfo.h"
1761struct __anonstruct__sigpoll_154 {
1762 long _band ;
1763 int _fd ;
1764};
1765#line 11 "include/asm-generic/siginfo.h"
1766union __anonunion__sifields_148 {
1767 int _pad[28U] ;
1768 struct __anonstruct__kill_149 _kill ;
1769 struct __anonstruct__timer_150 _timer ;
1770 struct __anonstruct__rt_151 _rt ;
1771 struct __anonstruct__sigchld_152 _sigchld ;
1772 struct __anonstruct__sigfault_153 _sigfault ;
1773 struct __anonstruct__sigpoll_154 _sigpoll ;
1774};
1775#line 11 "include/asm-generic/siginfo.h"
1776struct siginfo {
1777 int si_signo ;
1778 int si_errno ;
1779 int si_code ;
1780 union __anonunion__sifields_148 _sifields ;
1781};
1782#line 102 "include/asm-generic/siginfo.h"
1783typedef struct siginfo siginfo_t;
1784#line 24 "include/linux/signal.h"
1785struct sigpending {
1786 struct list_head list ;
1787 sigset_t signal ;
1788};
1789#line 388
1790enum pid_type {
1791 PIDTYPE_PID = 0,
1792 PIDTYPE_PGID = 1,
1793 PIDTYPE_SID = 2,
1794 PIDTYPE_MAX = 3
1795} ;
1796#line 395
1797struct pid_namespace;
1798#line 395 "include/linux/signal.h"
1799struct upid {
1800 int nr ;
1801 struct pid_namespace *ns ;
1802 struct hlist_node pid_chain ;
1803};
1804#line 56 "include/linux/pid.h"
1805struct pid {
1806 atomic_t count ;
1807 unsigned int level ;
1808 struct hlist_head tasks[3U] ;
1809 struct rcu_head rcu ;
1810 struct upid numbers[1U] ;
1811};
1812#line 68 "include/linux/pid.h"
1813struct pid_link {
1814 struct hlist_node node ;
1815 struct pid *pid ;
1816};
1817#line 175 "include/linux/pid.h"
1818struct percpu_counter {
1819 raw_spinlock_t lock ;
1820 s64 count ;
1821 struct list_head list ;
1822 s32 *counters ;
1823};
1824#line 45 "include/linux/proportions.h"
1825struct prop_local_percpu {
1826 struct percpu_counter events ;
1827 int shift ;
1828 unsigned long period ;
1829 raw_spinlock_t lock ;
1830};
1831#line 10 "include/linux/seccomp.h"
1832struct __anonstruct_seccomp_t_157 {
1833 int mode ;
1834};
1835#line 10 "include/linux/seccomp.h"
1836typedef struct __anonstruct_seccomp_t_157 seccomp_t;
1837#line 427 "include/linux/rculist.h"
1838struct plist_head {
1839 struct list_head node_list ;
1840};
1841#line 84 "include/linux/plist.h"
1842struct plist_node {
1843 int prio ;
1844 struct list_head prio_list ;
1845 struct list_head node_list ;
1846};
1847#line 38 "include/linux/rtmutex.h"
1848struct rt_mutex_waiter;
1849#line 38
1850struct rt_mutex_waiter;
1851#line 41 "include/linux/resource.h"
1852struct rlimit {
1853 unsigned long rlim_cur ;
1854 unsigned long rlim_max ;
1855};
1856#line 85 "include/linux/resource.h"
1857struct timerqueue_node {
1858 struct rb_node node ;
1859 ktime_t expires ;
1860};
1861#line 12 "include/linux/timerqueue.h"
1862struct timerqueue_head {
1863 struct rb_root head ;
1864 struct timerqueue_node *next ;
1865};
1866#line 50
1867struct hrtimer_clock_base;
1868#line 50
1869struct hrtimer_clock_base;
1870#line 51
1871struct hrtimer_cpu_base;
1872#line 51
1873struct hrtimer_cpu_base;
1874#line 60
1875enum hrtimer_restart {
1876 HRTIMER_NORESTART = 0,
1877 HRTIMER_RESTART = 1
1878} ;
1879#line 65 "include/linux/timerqueue.h"
1880struct hrtimer {
1881 struct timerqueue_node node ;
1882 ktime_t _softexpires ;
1883 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1884 struct hrtimer_clock_base *base ;
1885 unsigned long state ;
1886 int start_pid ;
1887 void *start_site ;
1888 char start_comm[16U] ;
1889};
1890#line 132 "include/linux/hrtimer.h"
1891struct hrtimer_clock_base {
1892 struct hrtimer_cpu_base *cpu_base ;
1893 int index ;
1894 clockid_t clockid ;
1895 struct timerqueue_head active ;
1896 ktime_t resolution ;
1897 ktime_t (*get_time)(void) ;
1898 ktime_t softirq_time ;
1899 ktime_t offset ;
1900};
1901#line 162 "include/linux/hrtimer.h"
1902struct hrtimer_cpu_base {
1903 raw_spinlock_t lock ;
1904 unsigned long active_bases ;
1905 ktime_t expires_next ;
1906 int hres_active ;
1907 int hang_detected ;
1908 unsigned long nr_events ;
1909 unsigned long nr_retries ;
1910 unsigned long nr_hangs ;
1911 ktime_t max_hang_time ;
1912 struct hrtimer_clock_base clock_base[3U] ;
1913};
1914#line 452 "include/linux/hrtimer.h"
1915struct task_io_accounting {
1916 u64 rchar ;
1917 u64 wchar ;
1918 u64 syscr ;
1919 u64 syscw ;
1920 u64 read_bytes ;
1921 u64 write_bytes ;
1922 u64 cancelled_write_bytes ;
1923};
1924#line 45 "include/linux/task_io_accounting.h"
1925struct latency_record {
1926 unsigned long backtrace[12U] ;
1927 unsigned int count ;
1928 unsigned long time ;
1929 unsigned long max ;
1930};
1931#line 29 "include/linux/key.h"
1932typedef int32_t key_serial_t;
1933#line 32 "include/linux/key.h"
1934typedef uint32_t key_perm_t;
1935#line 33
1936struct key;
1937#line 33
1938struct key;
1939#line 34
1940struct signal_struct;
1941#line 34
1942struct signal_struct;
1943#line 35
1944struct key_type;
1945#line 35
1946struct key_type;
1947#line 37
1948struct keyring_list;
1949#line 37
1950struct keyring_list;
1951#line 115
1952struct key_user;
1953#line 115 "include/linux/key.h"
1954union __anonunion_ldv_18299_158 {
1955 time_t expiry ;
1956 time_t revoked_at ;
1957};
1958#line 115 "include/linux/key.h"
1959union __anonunion_type_data_159 {
1960 struct list_head link ;
1961 unsigned long x[2U] ;
1962 void *p[2U] ;
1963 int reject_error ;
1964};
1965#line 115 "include/linux/key.h"
1966union __anonunion_payload_160 {
1967 unsigned long value ;
1968 void *rcudata ;
1969 void *data ;
1970 struct keyring_list *subscriptions ;
1971};
1972#line 115 "include/linux/key.h"
1973struct key {
1974 atomic_t usage ;
1975 key_serial_t serial ;
1976 struct rb_node serial_node ;
1977 struct key_type *type ;
1978 struct rw_semaphore sem ;
1979 struct key_user *user ;
1980 void *security ;
1981 union __anonunion_ldv_18299_158 ldv_18299 ;
1982 uid_t uid ;
1983 gid_t gid ;
1984 key_perm_t perm ;
1985 unsigned short quotalen ;
1986 unsigned short datalen ;
1987 unsigned long flags ;
1988 char *description ;
1989 union __anonunion_type_data_159 type_data ;
1990 union __anonunion_payload_160 payload ;
1991};
1992#line 316
1993struct audit_context;
1994#line 316
1995struct audit_context;
1996#line 27 "include/linux/selinux.h"
1997struct group_info {
1998 atomic_t usage ;
1999 int ngroups ;
2000 int nblocks ;
2001 gid_t small_block[32U] ;
2002 gid_t *blocks[0U] ;
2003};
2004#line 77 "include/linux/cred.h"
2005struct thread_group_cred {
2006 atomic_t usage ;
2007 pid_t tgid ;
2008 spinlock_t lock ;
2009 struct key *session_keyring ;
2010 struct key *process_keyring ;
2011 struct rcu_head rcu ;
2012};
2013#line 91 "include/linux/cred.h"
2014struct cred {
2015 atomic_t usage ;
2016 atomic_t subscribers ;
2017 void *put_addr ;
2018 unsigned int magic ;
2019 uid_t uid ;
2020 gid_t gid ;
2021 uid_t suid ;
2022 gid_t sgid ;
2023 uid_t euid ;
2024 gid_t egid ;
2025 uid_t fsuid ;
2026 gid_t fsgid ;
2027 unsigned int securebits ;
2028 kernel_cap_t cap_inheritable ;
2029 kernel_cap_t cap_permitted ;
2030 kernel_cap_t cap_effective ;
2031 kernel_cap_t cap_bset ;
2032 unsigned char jit_keyring ;
2033 struct key *thread_keyring ;
2034 struct key *request_key_auth ;
2035 struct thread_group_cred *tgcred ;
2036 void *security ;
2037 struct user_struct *user ;
2038 struct user_namespace *user_ns ;
2039 struct group_info *group_info ;
2040 struct rcu_head rcu ;
2041};
2042#line 264
2043struct llist_node;
2044#line 64 "include/linux/llist.h"
2045struct llist_node {
2046 struct llist_node *next ;
2047};
2048#line 185
2049struct futex_pi_state;
2050#line 185
2051struct futex_pi_state;
2052#line 186
2053struct robust_list_head;
2054#line 186
2055struct robust_list_head;
2056#line 187
2057struct bio_list;
2058#line 187
2059struct bio_list;
2060#line 188
2061struct fs_struct;
2062#line 188
2063struct fs_struct;
2064#line 189
2065struct perf_event_context;
2066#line 189
2067struct perf_event_context;
2068#line 190
2069struct blk_plug;
2070#line 190
2071struct blk_plug;
2072#line 149 "include/linux/sched.h"
2073struct cfs_rq;
2074#line 149
2075struct cfs_rq;
2076#line 44 "include/linux/aio_abi.h"
2077struct io_event {
2078 __u64 data ;
2079 __u64 obj ;
2080 __s64 res ;
2081 __s64 res2 ;
2082};
2083#line 106 "include/linux/aio_abi.h"
2084struct iovec {
2085 void *iov_base ;
2086 __kernel_size_t iov_len ;
2087};
2088#line 54 "include/linux/uio.h"
2089struct kioctx;
2090#line 54
2091struct kioctx;
2092#line 55 "include/linux/uio.h"
2093union __anonunion_ki_obj_161 {
2094 void *user ;
2095 struct task_struct *tsk ;
2096};
2097#line 55
2098struct eventfd_ctx;
2099#line 55 "include/linux/uio.h"
2100struct kiocb {
2101 struct list_head ki_run_list ;
2102 unsigned long ki_flags ;
2103 int ki_users ;
2104 unsigned int ki_key ;
2105 struct file *ki_filp ;
2106 struct kioctx *ki_ctx ;
2107 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
2108 ssize_t (*ki_retry)(struct kiocb * ) ;
2109 void (*ki_dtor)(struct kiocb * ) ;
2110 union __anonunion_ki_obj_161 ki_obj ;
2111 __u64 ki_user_data ;
2112 loff_t ki_pos ;
2113 void *private ;
2114 unsigned short ki_opcode ;
2115 size_t ki_nbytes ;
2116 char *ki_buf ;
2117 size_t ki_left ;
2118 struct iovec ki_inline_vec ;
2119 struct iovec *ki_iovec ;
2120 unsigned long ki_nr_segs ;
2121 unsigned long ki_cur_seg ;
2122 struct list_head ki_list ;
2123 struct list_head ki_batch ;
2124 struct eventfd_ctx *ki_eventfd ;
2125};
2126#line 162 "include/linux/aio.h"
2127struct aio_ring_info {
2128 unsigned long mmap_base ;
2129 unsigned long mmap_size ;
2130 struct page **ring_pages ;
2131 spinlock_t ring_lock ;
2132 long nr_pages ;
2133 unsigned int nr ;
2134 unsigned int tail ;
2135 struct page *internal_pages[8U] ;
2136};
2137#line 178 "include/linux/aio.h"
2138struct kioctx {
2139 atomic_t users ;
2140 int dead ;
2141 struct mm_struct *mm ;
2142 unsigned long user_id ;
2143 struct hlist_node list ;
2144 wait_queue_head_t wait ;
2145 spinlock_t ctx_lock ;
2146 int reqs_active ;
2147 struct list_head active_reqs ;
2148 struct list_head run_list ;
2149 unsigned int max_reqs ;
2150 struct aio_ring_info ring_info ;
2151 struct delayed_work wq ;
2152 struct rcu_head rcu_head ;
2153};
2154#line 406 "include/linux/sched.h"
2155struct sighand_struct {
2156 atomic_t count ;
2157 struct k_sigaction action[64U] ;
2158 spinlock_t siglock ;
2159 wait_queue_head_t signalfd_wqh ;
2160};
2161#line 449 "include/linux/sched.h"
2162struct pacct_struct {
2163 int ac_flag ;
2164 long ac_exitcode ;
2165 unsigned long ac_mem ;
2166 cputime_t ac_utime ;
2167 cputime_t ac_stime ;
2168 unsigned long ac_minflt ;
2169 unsigned long ac_majflt ;
2170};
2171#line 457 "include/linux/sched.h"
2172struct cpu_itimer {
2173 cputime_t expires ;
2174 cputime_t incr ;
2175 u32 error ;
2176 u32 incr_error ;
2177};
2178#line 464 "include/linux/sched.h"
2179struct task_cputime {
2180 cputime_t utime ;
2181 cputime_t stime ;
2182 unsigned long long sum_exec_runtime ;
2183};
2184#line 481 "include/linux/sched.h"
2185struct thread_group_cputimer {
2186 struct task_cputime cputime ;
2187 int running ;
2188 raw_spinlock_t lock ;
2189};
2190#line 517
2191struct autogroup;
2192#line 517
2193struct autogroup;
2194#line 518
2195struct tty_struct;
2196#line 518
2197struct taskstats;
2198#line 518
2199struct tty_audit_buf;
2200#line 518 "include/linux/sched.h"
2201struct signal_struct {
2202 atomic_t sigcnt ;
2203 atomic_t live ;
2204 int nr_threads ;
2205 wait_queue_head_t wait_chldexit ;
2206 struct task_struct *curr_target ;
2207 struct sigpending shared_pending ;
2208 int group_exit_code ;
2209 int notify_count ;
2210 struct task_struct *group_exit_task ;
2211 int group_stop_count ;
2212 unsigned int flags ;
2213 unsigned char is_child_subreaper : 1 ;
2214 unsigned char has_child_subreaper : 1 ;
2215 struct list_head posix_timers ;
2216 struct hrtimer real_timer ;
2217 struct pid *leader_pid ;
2218 ktime_t it_real_incr ;
2219 struct cpu_itimer it[2U] ;
2220 struct thread_group_cputimer cputimer ;
2221 struct task_cputime cputime_expires ;
2222 struct list_head cpu_timers[3U] ;
2223 struct pid *tty_old_pgrp ;
2224 int leader ;
2225 struct tty_struct *tty ;
2226 struct autogroup *autogroup ;
2227 cputime_t utime ;
2228 cputime_t stime ;
2229 cputime_t cutime ;
2230 cputime_t cstime ;
2231 cputime_t gtime ;
2232 cputime_t cgtime ;
2233 cputime_t prev_utime ;
2234 cputime_t prev_stime ;
2235 unsigned long nvcsw ;
2236 unsigned long nivcsw ;
2237 unsigned long cnvcsw ;
2238 unsigned long cnivcsw ;
2239 unsigned long min_flt ;
2240 unsigned long maj_flt ;
2241 unsigned long cmin_flt ;
2242 unsigned long cmaj_flt ;
2243 unsigned long inblock ;
2244 unsigned long oublock ;
2245 unsigned long cinblock ;
2246 unsigned long coublock ;
2247 unsigned long maxrss ;
2248 unsigned long cmaxrss ;
2249 struct task_io_accounting ioac ;
2250 unsigned long long sum_sched_runtime ;
2251 struct rlimit rlim[16U] ;
2252 struct pacct_struct pacct ;
2253 struct taskstats *stats ;
2254 unsigned int audit_tty ;
2255 struct tty_audit_buf *tty_audit_buf ;
2256 struct rw_semaphore group_rwsem ;
2257 int oom_adj ;
2258 int oom_score_adj ;
2259 int oom_score_adj_min ;
2260 struct mutex cred_guard_mutex ;
2261};
2262#line 699 "include/linux/sched.h"
2263struct user_struct {
2264 atomic_t __count ;
2265 atomic_t processes ;
2266 atomic_t files ;
2267 atomic_t sigpending ;
2268 atomic_t inotify_watches ;
2269 atomic_t inotify_devs ;
2270 atomic_t fanotify_listeners ;
2271 atomic_long_t epoll_watches ;
2272 unsigned long mq_bytes ;
2273 unsigned long locked_shm ;
2274 struct key *uid_keyring ;
2275 struct key *session_keyring ;
2276 struct hlist_node uidhash_node ;
2277 uid_t uid ;
2278 struct user_namespace *user_ns ;
2279 atomic_long_t locked_vm ;
2280};
2281#line 744
2282struct backing_dev_info;
2283#line 744
2284struct backing_dev_info;
2285#line 745
2286struct reclaim_state;
2287#line 745
2288struct reclaim_state;
2289#line 746 "include/linux/sched.h"
2290struct sched_info {
2291 unsigned long pcount ;
2292 unsigned long long run_delay ;
2293 unsigned long long last_arrival ;
2294 unsigned long long last_queued ;
2295};
2296#line 760 "include/linux/sched.h"
2297struct task_delay_info {
2298 spinlock_t lock ;
2299 unsigned int flags ;
2300 struct timespec blkio_start ;
2301 struct timespec blkio_end ;
2302 u64 blkio_delay ;
2303 u64 swapin_delay ;
2304 u32 blkio_count ;
2305 u32 swapin_count ;
2306 struct timespec freepages_start ;
2307 struct timespec freepages_end ;
2308 u64 freepages_delay ;
2309 u32 freepages_count ;
2310};
2311#line 1069
2312struct io_context;
2313#line 1069
2314struct io_context;
2315#line 1097
2316struct pipe_inode_info;
2317#line 1097
2318struct pipe_inode_info;
2319#line 1099
2320struct rq;
2321#line 1099
2322struct rq;
2323#line 1100 "include/linux/sched.h"
2324struct sched_class {
2325 struct sched_class const *next ;
2326 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
2327 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
2328 void (*yield_task)(struct rq * ) ;
2329 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
2330 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
2331 struct task_struct *(*pick_next_task)(struct rq * ) ;
2332 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
2333 int (*select_task_rq)(struct task_struct * , int , int ) ;
2334 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
2335 void (*post_schedule)(struct rq * ) ;
2336 void (*task_waking)(struct task_struct * ) ;
2337 void (*task_woken)(struct rq * , struct task_struct * ) ;
2338 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
2339 void (*rq_online)(struct rq * ) ;
2340 void (*rq_offline)(struct rq * ) ;
2341 void (*set_curr_task)(struct rq * ) ;
2342 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
2343 void (*task_fork)(struct task_struct * ) ;
2344 void (*switched_from)(struct rq * , struct task_struct * ) ;
2345 void (*switched_to)(struct rq * , struct task_struct * ) ;
2346 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
2347 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
2348 void (*task_move_group)(struct task_struct * , int ) ;
2349};
2350#line 1165 "include/linux/sched.h"
2351struct load_weight {
2352 unsigned long weight ;
2353 unsigned long inv_weight ;
2354};
2355#line 1170 "include/linux/sched.h"
2356struct sched_statistics {
2357 u64 wait_start ;
2358 u64 wait_max ;
2359 u64 wait_count ;
2360 u64 wait_sum ;
2361 u64 iowait_count ;
2362 u64 iowait_sum ;
2363 u64 sleep_start ;
2364 u64 sleep_max ;
2365 s64 sum_sleep_runtime ;
2366 u64 block_start ;
2367 u64 block_max ;
2368 u64 exec_max ;
2369 u64 slice_max ;
2370 u64 nr_migrations_cold ;
2371 u64 nr_failed_migrations_affine ;
2372 u64 nr_failed_migrations_running ;
2373 u64 nr_failed_migrations_hot ;
2374 u64 nr_forced_migrations ;
2375 u64 nr_wakeups ;
2376 u64 nr_wakeups_sync ;
2377 u64 nr_wakeups_migrate ;
2378 u64 nr_wakeups_local ;
2379 u64 nr_wakeups_remote ;
2380 u64 nr_wakeups_affine ;
2381 u64 nr_wakeups_affine_attempts ;
2382 u64 nr_wakeups_passive ;
2383 u64 nr_wakeups_idle ;
2384};
2385#line 1205 "include/linux/sched.h"
2386struct sched_entity {
2387 struct load_weight load ;
2388 struct rb_node run_node ;
2389 struct list_head group_node ;
2390 unsigned int on_rq ;
2391 u64 exec_start ;
2392 u64 sum_exec_runtime ;
2393 u64 vruntime ;
2394 u64 prev_sum_exec_runtime ;
2395 u64 nr_migrations ;
2396 struct sched_statistics statistics ;
2397 struct sched_entity *parent ;
2398 struct cfs_rq *cfs_rq ;
2399 struct cfs_rq *my_q ;
2400};
2401#line 1231
2402struct rt_rq;
2403#line 1231 "include/linux/sched.h"
2404struct sched_rt_entity {
2405 struct list_head run_list ;
2406 unsigned long timeout ;
2407 unsigned int time_slice ;
2408 int nr_cpus_allowed ;
2409 struct sched_rt_entity *back ;
2410 struct sched_rt_entity *parent ;
2411 struct rt_rq *rt_rq ;
2412 struct rt_rq *my_q ;
2413};
2414#line 1255
2415struct mem_cgroup;
2416#line 1255 "include/linux/sched.h"
2417struct memcg_batch_info {
2418 int do_batch ;
2419 struct mem_cgroup *memcg ;
2420 unsigned long nr_pages ;
2421 unsigned long memsw_nr_pages ;
2422};
2423#line 1616
2424struct files_struct;
2425#line 1616
2426struct css_set;
2427#line 1616
2428struct compat_robust_list_head;
2429#line 1616 "include/linux/sched.h"
2430struct task_struct {
2431 long volatile state ;
2432 void *stack ;
2433 atomic_t usage ;
2434 unsigned int flags ;
2435 unsigned int ptrace ;
2436 struct llist_node wake_entry ;
2437 int on_cpu ;
2438 int on_rq ;
2439 int prio ;
2440 int static_prio ;
2441 int normal_prio ;
2442 unsigned int rt_priority ;
2443 struct sched_class const *sched_class ;
2444 struct sched_entity se ;
2445 struct sched_rt_entity rt ;
2446 struct hlist_head preempt_notifiers ;
2447 unsigned char fpu_counter ;
2448 unsigned int policy ;
2449 cpumask_t cpus_allowed ;
2450 struct sched_info sched_info ;
2451 struct list_head tasks ;
2452 struct plist_node pushable_tasks ;
2453 struct mm_struct *mm ;
2454 struct mm_struct *active_mm ;
2455 unsigned char brk_randomized : 1 ;
2456 int exit_state ;
2457 int exit_code ;
2458 int exit_signal ;
2459 int pdeath_signal ;
2460 unsigned int jobctl ;
2461 unsigned int personality ;
2462 unsigned char did_exec : 1 ;
2463 unsigned char in_execve : 1 ;
2464 unsigned char in_iowait : 1 ;
2465 unsigned char sched_reset_on_fork : 1 ;
2466 unsigned char sched_contributes_to_load : 1 ;
2467 unsigned char irq_thread : 1 ;
2468 pid_t pid ;
2469 pid_t tgid ;
2470 unsigned long stack_canary ;
2471 struct task_struct *real_parent ;
2472 struct task_struct *parent ;
2473 struct list_head children ;
2474 struct list_head sibling ;
2475 struct task_struct *group_leader ;
2476 struct list_head ptraced ;
2477 struct list_head ptrace_entry ;
2478 struct pid_link pids[3U] ;
2479 struct list_head thread_group ;
2480 struct completion *vfork_done ;
2481 int *set_child_tid ;
2482 int *clear_child_tid ;
2483 cputime_t utime ;
2484 cputime_t stime ;
2485 cputime_t utimescaled ;
2486 cputime_t stimescaled ;
2487 cputime_t gtime ;
2488 cputime_t prev_utime ;
2489 cputime_t prev_stime ;
2490 unsigned long nvcsw ;
2491 unsigned long nivcsw ;
2492 struct timespec start_time ;
2493 struct timespec real_start_time ;
2494 unsigned long min_flt ;
2495 unsigned long maj_flt ;
2496 struct task_cputime cputime_expires ;
2497 struct list_head cpu_timers[3U] ;
2498 struct cred const *real_cred ;
2499 struct cred const *cred ;
2500 struct cred *replacement_session_keyring ;
2501 char comm[16U] ;
2502 int link_count ;
2503 int total_link_count ;
2504 struct sysv_sem sysvsem ;
2505 unsigned long last_switch_count ;
2506 struct thread_struct thread ;
2507 struct fs_struct *fs ;
2508 struct files_struct *files ;
2509 struct nsproxy *nsproxy ;
2510 struct signal_struct *signal ;
2511 struct sighand_struct *sighand ;
2512 sigset_t blocked ;
2513 sigset_t real_blocked ;
2514 sigset_t saved_sigmask ;
2515 struct sigpending pending ;
2516 unsigned long sas_ss_sp ;
2517 size_t sas_ss_size ;
2518 int (*notifier)(void * ) ;
2519 void *notifier_data ;
2520 sigset_t *notifier_mask ;
2521 struct audit_context *audit_context ;
2522 uid_t loginuid ;
2523 unsigned int sessionid ;
2524 seccomp_t seccomp ;
2525 u32 parent_exec_id ;
2526 u32 self_exec_id ;
2527 spinlock_t alloc_lock ;
2528 raw_spinlock_t pi_lock ;
2529 struct plist_head pi_waiters ;
2530 struct rt_mutex_waiter *pi_blocked_on ;
2531 struct mutex_waiter *blocked_on ;
2532 unsigned int irq_events ;
2533 unsigned long hardirq_enable_ip ;
2534 unsigned long hardirq_disable_ip ;
2535 unsigned int hardirq_enable_event ;
2536 unsigned int hardirq_disable_event ;
2537 int hardirqs_enabled ;
2538 int hardirq_context ;
2539 unsigned long softirq_disable_ip ;
2540 unsigned long softirq_enable_ip ;
2541 unsigned int softirq_disable_event ;
2542 unsigned int softirq_enable_event ;
2543 int softirqs_enabled ;
2544 int softirq_context ;
2545 u64 curr_chain_key ;
2546 int lockdep_depth ;
2547 unsigned int lockdep_recursion ;
2548 struct held_lock held_locks[48U] ;
2549 gfp_t lockdep_reclaim_gfp ;
2550 void *journal_info ;
2551 struct bio_list *bio_list ;
2552 struct blk_plug *plug ;
2553 struct reclaim_state *reclaim_state ;
2554 struct backing_dev_info *backing_dev_info ;
2555 struct io_context *io_context ;
2556 unsigned long ptrace_message ;
2557 siginfo_t *last_siginfo ;
2558 struct task_io_accounting ioac ;
2559 u64 acct_rss_mem1 ;
2560 u64 acct_vm_mem1 ;
2561 cputime_t acct_timexpd ;
2562 nodemask_t mems_allowed ;
2563 seqcount_t mems_allowed_seq ;
2564 int cpuset_mem_spread_rotor ;
2565 int cpuset_slab_spread_rotor ;
2566 struct css_set *cgroups ;
2567 struct list_head cg_list ;
2568 struct robust_list_head *robust_list ;
2569 struct compat_robust_list_head *compat_robust_list ;
2570 struct list_head pi_state_list ;
2571 struct futex_pi_state *pi_state_cache ;
2572 struct perf_event_context *perf_event_ctxp[2U] ;
2573 struct mutex perf_event_mutex ;
2574 struct list_head perf_event_list ;
2575 struct mempolicy *mempolicy ;
2576 short il_next ;
2577 short pref_node_fork ;
2578 struct rcu_head rcu ;
2579 struct pipe_inode_info *splice_pipe ;
2580 struct task_delay_info *delays ;
2581 int make_it_fail ;
2582 int nr_dirtied ;
2583 int nr_dirtied_pause ;
2584 unsigned long dirty_paused_when ;
2585 int latency_record_count ;
2586 struct latency_record latency_record[32U] ;
2587 unsigned long timer_slack_ns ;
2588 unsigned long default_timer_slack_ns ;
2589 struct list_head *scm_work_list ;
2590 unsigned long trace ;
2591 unsigned long trace_recursion ;
2592 struct memcg_batch_info memcg_batch ;
2593 atomic_t ptrace_bp_refcnt ;
2594};
2595#line 25 "include/linux/genhd.h"
2596struct device_type;
2597#line 27
2598struct class;
2599#line 51
2600struct klist_node;
2601#line 51
2602struct klist_node;
2603#line 37 "include/linux/klist.h"
2604struct klist_node {
2605 void *n_klist ;
2606 struct list_head n_node ;
2607 struct kref n_ref ;
2608};
2609#line 67
2610struct dma_map_ops;
2611#line 67 "include/linux/klist.h"
2612struct dev_archdata {
2613 void *acpi_handle ;
2614 struct dma_map_ops *dma_ops ;
2615 void *iommu ;
2616};
2617#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2618struct device_private;
2619#line 17
2620struct device_private;
2621#line 18
2622struct device_driver;
2623#line 18
2624struct device_driver;
2625#line 19
2626struct driver_private;
2627#line 19
2628struct driver_private;
2629#line 20
2630struct subsys_private;
2631#line 20
2632struct subsys_private;
2633#line 21
2634struct bus_type;
2635#line 21
2636struct bus_type;
2637#line 22
2638struct device_node;
2639#line 22
2640struct device_node;
2641#line 23
2642struct iommu_ops;
2643#line 23
2644struct iommu_ops;
2645#line 24 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
2646struct bus_attribute {
2647 struct attribute attr ;
2648 ssize_t (*show)(struct bus_type * , char * ) ;
2649 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
2650};
2651#line 51 "include/linux/device.h"
2652struct device_attribute;
2653#line 51
2654struct driver_attribute;
2655#line 51 "include/linux/device.h"
2656struct bus_type {
2657 char const *name ;
2658 char const *dev_name ;
2659 struct device *dev_root ;
2660 struct bus_attribute *bus_attrs ;
2661 struct device_attribute *dev_attrs ;
2662 struct driver_attribute *drv_attrs ;
2663 int (*match)(struct device * , struct device_driver * ) ;
2664 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
2665 int (*probe)(struct device * ) ;
2666 int (*remove)(struct device * ) ;
2667 void (*shutdown)(struct device * ) ;
2668 int (*suspend)(struct device * , pm_message_t ) ;
2669 int (*resume)(struct device * ) ;
2670 struct dev_pm_ops const *pm ;
2671 struct iommu_ops *iommu_ops ;
2672 struct subsys_private *p ;
2673};
2674#line 182
2675struct of_device_id;
2676#line 182 "include/linux/device.h"
2677struct device_driver {
2678 char const *name ;
2679 struct bus_type *bus ;
2680 struct module *owner ;
2681 char const *mod_name ;
2682 bool suppress_bind_attrs ;
2683 struct of_device_id const *of_match_table ;
2684 int (*probe)(struct device * ) ;
2685 int (*remove)(struct device * ) ;
2686 void (*shutdown)(struct device * ) ;
2687 int (*suspend)(struct device * , pm_message_t ) ;
2688 int (*resume)(struct device * ) ;
2689 struct attribute_group const **groups ;
2690 struct dev_pm_ops const *pm ;
2691 struct driver_private *p ;
2692};
2693#line 245 "include/linux/device.h"
2694struct driver_attribute {
2695 struct attribute attr ;
2696 ssize_t (*show)(struct device_driver * , char * ) ;
2697 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
2698};
2699#line 299
2700struct class_attribute;
2701#line 299 "include/linux/device.h"
2702struct class {
2703 char const *name ;
2704 struct module *owner ;
2705 struct class_attribute *class_attrs ;
2706 struct device_attribute *dev_attrs ;
2707 struct bin_attribute *dev_bin_attrs ;
2708 struct kobject *dev_kobj ;
2709 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
2710 char *(*devnode)(struct device * , umode_t * ) ;
2711 void (*class_release)(struct class * ) ;
2712 void (*dev_release)(struct device * ) ;
2713 int (*suspend)(struct device * , pm_message_t ) ;
2714 int (*resume)(struct device * ) ;
2715 struct kobj_ns_type_operations const *ns_type ;
2716 void const *(*namespace)(struct device * ) ;
2717 struct dev_pm_ops const *pm ;
2718 struct subsys_private *p ;
2719};
2720#line 394 "include/linux/device.h"
2721struct class_attribute {
2722 struct attribute attr ;
2723 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
2724 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
2725 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
2726};
2727#line 447 "include/linux/device.h"
2728struct device_type {
2729 char const *name ;
2730 struct attribute_group const **groups ;
2731 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
2732 char *(*devnode)(struct device * , umode_t * ) ;
2733 void (*release)(struct device * ) ;
2734 struct dev_pm_ops const *pm ;
2735};
2736#line 474 "include/linux/device.h"
2737struct device_attribute {
2738 struct attribute attr ;
2739 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
2740 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
2741 size_t ) ;
2742};
2743#line 557 "include/linux/device.h"
2744struct device_dma_parameters {
2745 unsigned int max_segment_size ;
2746 unsigned long segment_boundary_mask ;
2747};
2748#line 567
2749struct dma_coherent_mem;
2750#line 567 "include/linux/device.h"
2751struct device {
2752 struct device *parent ;
2753 struct device_private *p ;
2754 struct kobject kobj ;
2755 char const *init_name ;
2756 struct device_type const *type ;
2757 struct mutex mutex ;
2758 struct bus_type *bus ;
2759 struct device_driver *driver ;
2760 void *platform_data ;
2761 struct dev_pm_info power ;
2762 struct dev_pm_domain *pm_domain ;
2763 int numa_node ;
2764 u64 *dma_mask ;
2765 u64 coherent_dma_mask ;
2766 struct device_dma_parameters *dma_parms ;
2767 struct list_head dma_pools ;
2768 struct dma_coherent_mem *dma_mem ;
2769 struct dev_archdata archdata ;
2770 struct device_node *of_node ;
2771 dev_t devt ;
2772 u32 id ;
2773 spinlock_t devres_lock ;
2774 struct list_head devres_head ;
2775 struct klist_node knode_class ;
2776 struct class *class ;
2777 struct attribute_group const **groups ;
2778 void (*release)(struct device * ) ;
2779};
2780#line 681 "include/linux/device.h"
2781struct wakeup_source {
2782 char const *name ;
2783 struct list_head entry ;
2784 spinlock_t lock ;
2785 struct timer_list timer ;
2786 unsigned long timer_expires ;
2787 ktime_t total_time ;
2788 ktime_t max_time ;
2789 ktime_t last_time ;
2790 unsigned long event_count ;
2791 unsigned long active_count ;
2792 unsigned long relax_count ;
2793 unsigned long hit_count ;
2794 unsigned char active : 1 ;
2795};
2796#line 992
2797struct bio;
2798#line 992
2799struct bio;
2800#line 993
2801struct bio_integrity_payload;
2802#line 993
2803struct bio_integrity_payload;
2804#line 994
2805struct block_device;
2806#line 994
2807struct block_device;
2808#line 17 "include/linux/blk_types.h"
2809typedef void bio_end_io_t(struct bio * , int );
2810#line 18 "include/linux/blk_types.h"
2811typedef void bio_destructor_t(struct bio * );
2812#line 19 "include/linux/blk_types.h"
2813struct bio_vec {
2814 struct page *bv_page ;
2815 unsigned int bv_len ;
2816 unsigned int bv_offset ;
2817};
2818#line 28 "include/linux/blk_types.h"
2819struct bio {
2820 sector_t bi_sector ;
2821 struct bio *bi_next ;
2822 struct block_device *bi_bdev ;
2823 unsigned long bi_flags ;
2824 unsigned long bi_rw ;
2825 unsigned short bi_vcnt ;
2826 unsigned short bi_idx ;
2827 unsigned int bi_phys_segments ;
2828 unsigned int bi_size ;
2829 unsigned int bi_seg_front_size ;
2830 unsigned int bi_seg_back_size ;
2831 unsigned int bi_max_vecs ;
2832 atomic_t bi_cnt ;
2833 struct bio_vec *bi_io_vec ;
2834 bio_end_io_t *bi_end_io ;
2835 void *bi_private ;
2836 struct bio_integrity_payload *bi_integrity ;
2837 bio_destructor_t *bi_destructor ;
2838 struct bio_vec bi_inline_vecs[0U] ;
2839};
2840#line 57 "include/linux/fs.h"
2841struct hlist_bl_node;
2842#line 57 "include/linux/fs.h"
2843struct hlist_bl_head {
2844 struct hlist_bl_node *first ;
2845};
2846#line 36 "include/linux/list_bl.h"
2847struct hlist_bl_node {
2848 struct hlist_bl_node *next ;
2849 struct hlist_bl_node **pprev ;
2850};
2851#line 114 "include/linux/rculist_bl.h"
2852struct nameidata;
2853#line 114
2854struct nameidata;
2855#line 115
2856struct path;
2857#line 115
2858struct path;
2859#line 116
2860struct vfsmount;
2861#line 116
2862struct vfsmount;
2863#line 117 "include/linux/rculist_bl.h"
2864struct qstr {
2865 unsigned int hash ;
2866 unsigned int len ;
2867 unsigned char const *name ;
2868};
2869#line 72 "include/linux/dcache.h"
2870struct dentry_operations;
2871#line 72
2872struct super_block;
2873#line 72 "include/linux/dcache.h"
2874union __anonunion_d_u_163 {
2875 struct list_head d_child ;
2876 struct rcu_head d_rcu ;
2877};
2878#line 72 "include/linux/dcache.h"
2879struct dentry {
2880 unsigned int d_flags ;
2881 seqcount_t d_seq ;
2882 struct hlist_bl_node d_hash ;
2883 struct dentry *d_parent ;
2884 struct qstr d_name ;
2885 struct inode *d_inode ;
2886 unsigned char d_iname[32U] ;
2887 unsigned int d_count ;
2888 spinlock_t d_lock ;
2889 struct dentry_operations const *d_op ;
2890 struct super_block *d_sb ;
2891 unsigned long d_time ;
2892 void *d_fsdata ;
2893 struct list_head d_lru ;
2894 union __anonunion_d_u_163 d_u ;
2895 struct list_head d_subdirs ;
2896 struct list_head d_alias ;
2897};
2898#line 123 "include/linux/dcache.h"
2899struct dentry_operations {
2900 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
2901 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
2902 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
2903 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
2904 int (*d_delete)(struct dentry const * ) ;
2905 void (*d_release)(struct dentry * ) ;
2906 void (*d_prune)(struct dentry * ) ;
2907 void (*d_iput)(struct dentry * , struct inode * ) ;
2908 char *(*d_dname)(struct dentry * , char * , int ) ;
2909 struct vfsmount *(*d_automount)(struct path * ) ;
2910 int (*d_manage)(struct dentry * , bool ) ;
2911};
2912#line 402 "include/linux/dcache.h"
2913struct path {
2914 struct vfsmount *mnt ;
2915 struct dentry *dentry ;
2916};
2917#line 58 "include/linux/radix-tree.h"
2918struct radix_tree_node;
2919#line 58 "include/linux/radix-tree.h"
2920struct radix_tree_root {
2921 unsigned int height ;
2922 gfp_t gfp_mask ;
2923 struct radix_tree_node *rnode ;
2924};
2925#line 45 "include/linux/semaphore.h"
2926struct fiemap_extent {
2927 __u64 fe_logical ;
2928 __u64 fe_physical ;
2929 __u64 fe_length ;
2930 __u64 fe_reserved64[2U] ;
2931 __u32 fe_flags ;
2932 __u32 fe_reserved[3U] ;
2933};
2934#line 38 "include/linux/fiemap.h"
2935enum migrate_mode {
2936 MIGRATE_ASYNC = 0,
2937 MIGRATE_SYNC_LIGHT = 1,
2938 MIGRATE_SYNC = 2
2939} ;
2940#line 44
2941struct export_operations;
2942#line 44
2943struct export_operations;
2944#line 45
2945struct hd_geometry;
2946#line 45
2947struct hd_geometry;
2948#line 46
2949struct poll_table_struct;
2950#line 46
2951struct poll_table_struct;
2952#line 47
2953struct kstatfs;
2954#line 47
2955struct kstatfs;
2956#line 435 "include/linux/fs.h"
2957struct iattr {
2958 unsigned int ia_valid ;
2959 umode_t ia_mode ;
2960 uid_t ia_uid ;
2961 gid_t ia_gid ;
2962 loff_t ia_size ;
2963 struct timespec ia_atime ;
2964 struct timespec ia_mtime ;
2965 struct timespec ia_ctime ;
2966 struct file *ia_file ;
2967};
2968#line 119 "include/linux/quota.h"
2969struct if_dqinfo {
2970 __u64 dqi_bgrace ;
2971 __u64 dqi_igrace ;
2972 __u32 dqi_flags ;
2973 __u32 dqi_valid ;
2974};
2975#line 152 "include/linux/quota.h"
2976struct fs_disk_quota {
2977 __s8 d_version ;
2978 __s8 d_flags ;
2979 __u16 d_fieldmask ;
2980 __u32 d_id ;
2981 __u64 d_blk_hardlimit ;
2982 __u64 d_blk_softlimit ;
2983 __u64 d_ino_hardlimit ;
2984 __u64 d_ino_softlimit ;
2985 __u64 d_bcount ;
2986 __u64 d_icount ;
2987 __s32 d_itimer ;
2988 __s32 d_btimer ;
2989 __u16 d_iwarns ;
2990 __u16 d_bwarns ;
2991 __s32 d_padding2 ;
2992 __u64 d_rtb_hardlimit ;
2993 __u64 d_rtb_softlimit ;
2994 __u64 d_rtbcount ;
2995 __s32 d_rtbtimer ;
2996 __u16 d_rtbwarns ;
2997 __s16 d_padding3 ;
2998 char d_padding4[8U] ;
2999};
3000#line 75 "include/linux/dqblk_xfs.h"
3001struct fs_qfilestat {
3002 __u64 qfs_ino ;
3003 __u64 qfs_nblks ;
3004 __u32 qfs_nextents ;
3005};
3006#line 150 "include/linux/dqblk_xfs.h"
3007typedef struct fs_qfilestat fs_qfilestat_t;
3008#line 151 "include/linux/dqblk_xfs.h"
3009struct fs_quota_stat {
3010 __s8 qs_version ;
3011 __u16 qs_flags ;
3012 __s8 qs_pad ;
3013 fs_qfilestat_t qs_uquota ;
3014 fs_qfilestat_t qs_gquota ;
3015 __u32 qs_incoredqs ;
3016 __s32 qs_btimelimit ;
3017 __s32 qs_itimelimit ;
3018 __s32 qs_rtbtimelimit ;
3019 __u16 qs_bwarnlimit ;
3020 __u16 qs_iwarnlimit ;
3021};
3022#line 165
3023struct dquot;
3024#line 165
3025struct dquot;
3026#line 185 "include/linux/quota.h"
3027typedef __kernel_uid32_t qid_t;
3028#line 186 "include/linux/quota.h"
3029typedef long long qsize_t;
3030#line 189 "include/linux/quota.h"
3031struct mem_dqblk {
3032 qsize_t dqb_bhardlimit ;
3033 qsize_t dqb_bsoftlimit ;
3034 qsize_t dqb_curspace ;
3035 qsize_t dqb_rsvspace ;
3036 qsize_t dqb_ihardlimit ;
3037 qsize_t dqb_isoftlimit ;
3038 qsize_t dqb_curinodes ;
3039 time_t dqb_btime ;
3040 time_t dqb_itime ;
3041};
3042#line 211
3043struct quota_format_type;
3044#line 211
3045struct quota_format_type;
3046#line 212 "include/linux/quota.h"
3047struct mem_dqinfo {
3048 struct quota_format_type *dqi_format ;
3049 int dqi_fmt_id ;
3050 struct list_head dqi_dirty_list ;
3051 unsigned long dqi_flags ;
3052 unsigned int dqi_bgrace ;
3053 unsigned int dqi_igrace ;
3054 qsize_t dqi_maxblimit ;
3055 qsize_t dqi_maxilimit ;
3056 void *dqi_priv ;
3057};
3058#line 275 "include/linux/quota.h"
3059struct dquot {
3060 struct hlist_node dq_hash ;
3061 struct list_head dq_inuse ;
3062 struct list_head dq_free ;
3063 struct list_head dq_dirty ;
3064 struct mutex dq_lock ;
3065 atomic_t dq_count ;
3066 wait_queue_head_t dq_wait_unused ;
3067 struct super_block *dq_sb ;
3068 unsigned int dq_id ;
3069 loff_t dq_off ;
3070 unsigned long dq_flags ;
3071 short dq_type ;
3072 struct mem_dqblk dq_dqb ;
3073};
3074#line 303 "include/linux/quota.h"
3075struct quota_format_ops {
3076 int (*check_quota_file)(struct super_block * , int ) ;
3077 int (*read_file_info)(struct super_block * , int ) ;
3078 int (*write_file_info)(struct super_block * , int ) ;
3079 int (*free_file_info)(struct super_block * , int ) ;
3080 int (*read_dqblk)(struct dquot * ) ;
3081 int (*commit_dqblk)(struct dquot * ) ;
3082 int (*release_dqblk)(struct dquot * ) ;
3083};
3084#line 314 "include/linux/quota.h"
3085struct dquot_operations {
3086 int (*write_dquot)(struct dquot * ) ;
3087 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
3088 void (*destroy_dquot)(struct dquot * ) ;
3089 int (*acquire_dquot)(struct dquot * ) ;
3090 int (*release_dquot)(struct dquot * ) ;
3091 int (*mark_dirty)(struct dquot * ) ;
3092 int (*write_info)(struct super_block * , int ) ;
3093 qsize_t *(*get_reserved_space)(struct inode * ) ;
3094};
3095#line 328 "include/linux/quota.h"
3096struct quotactl_ops {
3097 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
3098 int (*quota_on_meta)(struct super_block * , int , int ) ;
3099 int (*quota_off)(struct super_block * , int ) ;
3100 int (*quota_sync)(struct super_block * , int , int ) ;
3101 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
3102 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
3103 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
3104 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
3105 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
3106 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
3107};
3108#line 344 "include/linux/quota.h"
3109struct quota_format_type {
3110 int qf_fmt_id ;
3111 struct quota_format_ops const *qf_ops ;
3112 struct module *qf_owner ;
3113 struct quota_format_type *qf_next ;
3114};
3115#line 390 "include/linux/quota.h"
3116struct quota_info {
3117 unsigned int flags ;
3118 struct mutex dqio_mutex ;
3119 struct mutex dqonoff_mutex ;
3120 struct rw_semaphore dqptr_sem ;
3121 struct inode *files[2U] ;
3122 struct mem_dqinfo info[2U] ;
3123 struct quota_format_ops const *ops[2U] ;
3124};
3125#line 585 "include/linux/fs.h"
3126union __anonunion_arg_165 {
3127 char *buf ;
3128 void *data ;
3129};
3130#line 585 "include/linux/fs.h"
3131struct __anonstruct_read_descriptor_t_164 {
3132 size_t written ;
3133 size_t count ;
3134 union __anonunion_arg_165 arg ;
3135 int error ;
3136};
3137#line 585 "include/linux/fs.h"
3138typedef struct __anonstruct_read_descriptor_t_164 read_descriptor_t;
3139#line 588 "include/linux/fs.h"
3140struct address_space_operations {
3141 int (*writepage)(struct page * , struct writeback_control * ) ;
3142 int (*readpage)(struct file * , struct page * ) ;
3143 int (*writepages)(struct address_space * , struct writeback_control * ) ;
3144 int (*set_page_dirty)(struct page * ) ;
3145 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
3146 unsigned int ) ;
3147 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
3148 unsigned int , struct page ** , void ** ) ;
3149 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
3150 unsigned int , struct page * , void * ) ;
3151 sector_t (*bmap)(struct address_space * , sector_t ) ;
3152 void (*invalidatepage)(struct page * , unsigned long ) ;
3153 int (*releasepage)(struct page * , gfp_t ) ;
3154 void (*freepage)(struct page * ) ;
3155 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
3156 unsigned long ) ;
3157 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
3158 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
3159 int (*launder_page)(struct page * ) ;
3160 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
3161 int (*error_remove_page)(struct address_space * , struct page * ) ;
3162};
3163#line 642 "include/linux/fs.h"
3164struct address_space {
3165 struct inode *host ;
3166 struct radix_tree_root page_tree ;
3167 spinlock_t tree_lock ;
3168 unsigned int i_mmap_writable ;
3169 struct prio_tree_root i_mmap ;
3170 struct list_head i_mmap_nonlinear ;
3171 struct mutex i_mmap_mutex ;
3172 unsigned long nrpages ;
3173 unsigned long writeback_index ;
3174 struct address_space_operations const *a_ops ;
3175 unsigned long flags ;
3176 struct backing_dev_info *backing_dev_info ;
3177 spinlock_t private_lock ;
3178 struct list_head private_list ;
3179 struct address_space *assoc_mapping ;
3180};
3181#line 664
3182struct request_queue;
3183#line 664
3184struct request_queue;
3185#line 665
3186struct hd_struct;
3187#line 665
3188struct gendisk;
3189#line 665 "include/linux/fs.h"
3190struct block_device {
3191 dev_t bd_dev ;
3192 int bd_openers ;
3193 struct inode *bd_inode ;
3194 struct super_block *bd_super ;
3195 struct mutex bd_mutex ;
3196 struct list_head bd_inodes ;
3197 void *bd_claiming ;
3198 void *bd_holder ;
3199 int bd_holders ;
3200 bool bd_write_holder ;
3201 struct list_head bd_holder_disks ;
3202 struct block_device *bd_contains ;
3203 unsigned int bd_block_size ;
3204 struct hd_struct *bd_part ;
3205 unsigned int bd_part_count ;
3206 int bd_invalidated ;
3207 struct gendisk *bd_disk ;
3208 struct request_queue *bd_queue ;
3209 struct list_head bd_list ;
3210 unsigned long bd_private ;
3211 int bd_fsfreeze_count ;
3212 struct mutex bd_fsfreeze_mutex ;
3213};
3214#line 737
3215struct posix_acl;
3216#line 737
3217struct posix_acl;
3218#line 738
3219struct inode_operations;
3220#line 738 "include/linux/fs.h"
3221union __anonunion_ldv_22089_166 {
3222 unsigned int const i_nlink ;
3223 unsigned int __i_nlink ;
3224};
3225#line 738 "include/linux/fs.h"
3226union __anonunion_ldv_22108_167 {
3227 struct list_head i_dentry ;
3228 struct rcu_head i_rcu ;
3229};
3230#line 738
3231struct file_operations;
3232#line 738
3233struct file_lock;
3234#line 738
3235struct cdev;
3236#line 738 "include/linux/fs.h"
3237union __anonunion_ldv_22126_168 {
3238 struct pipe_inode_info *i_pipe ;
3239 struct block_device *i_bdev ;
3240 struct cdev *i_cdev ;
3241};
3242#line 738 "include/linux/fs.h"
3243struct inode {
3244 umode_t i_mode ;
3245 unsigned short i_opflags ;
3246 uid_t i_uid ;
3247 gid_t i_gid ;
3248 unsigned int i_flags ;
3249 struct posix_acl *i_acl ;
3250 struct posix_acl *i_default_acl ;
3251 struct inode_operations const *i_op ;
3252 struct super_block *i_sb ;
3253 struct address_space *i_mapping ;
3254 void *i_security ;
3255 unsigned long i_ino ;
3256 union __anonunion_ldv_22089_166 ldv_22089 ;
3257 dev_t i_rdev ;
3258 struct timespec i_atime ;
3259 struct timespec i_mtime ;
3260 struct timespec i_ctime ;
3261 spinlock_t i_lock ;
3262 unsigned short i_bytes ;
3263 blkcnt_t i_blocks ;
3264 loff_t i_size ;
3265 unsigned long i_state ;
3266 struct mutex i_mutex ;
3267 unsigned long dirtied_when ;
3268 struct hlist_node i_hash ;
3269 struct list_head i_wb_list ;
3270 struct list_head i_lru ;
3271 struct list_head i_sb_list ;
3272 union __anonunion_ldv_22108_167 ldv_22108 ;
3273 atomic_t i_count ;
3274 unsigned int i_blkbits ;
3275 u64 i_version ;
3276 atomic_t i_dio_count ;
3277 atomic_t i_writecount ;
3278 struct file_operations const *i_fop ;
3279 struct file_lock *i_flock ;
3280 struct address_space i_data ;
3281 struct dquot *i_dquot[2U] ;
3282 struct list_head i_devices ;
3283 union __anonunion_ldv_22126_168 ldv_22126 ;
3284 __u32 i_generation ;
3285 __u32 i_fsnotify_mask ;
3286 struct hlist_head i_fsnotify_marks ;
3287 atomic_t i_readcount ;
3288 void *i_private ;
3289};
3290#line 941 "include/linux/fs.h"
3291struct fown_struct {
3292 rwlock_t lock ;
3293 struct pid *pid ;
3294 enum pid_type pid_type ;
3295 uid_t uid ;
3296 uid_t euid ;
3297 int signum ;
3298};
3299#line 949 "include/linux/fs.h"
3300struct file_ra_state {
3301 unsigned long start ;
3302 unsigned int size ;
3303 unsigned int async_size ;
3304 unsigned int ra_pages ;
3305 unsigned int mmap_miss ;
3306 loff_t prev_pos ;
3307};
3308#line 972 "include/linux/fs.h"
3309union __anonunion_f_u_169 {
3310 struct list_head fu_list ;
3311 struct rcu_head fu_rcuhead ;
3312};
3313#line 972 "include/linux/fs.h"
3314struct file {
3315 union __anonunion_f_u_169 f_u ;
3316 struct path f_path ;
3317 struct file_operations const *f_op ;
3318 spinlock_t f_lock ;
3319 int f_sb_list_cpu ;
3320 atomic_long_t f_count ;
3321 unsigned int f_flags ;
3322 fmode_t f_mode ;
3323 loff_t f_pos ;
3324 struct fown_struct f_owner ;
3325 struct cred const *f_cred ;
3326 struct file_ra_state f_ra ;
3327 u64 f_version ;
3328 void *f_security ;
3329 void *private_data ;
3330 struct list_head f_ep_links ;
3331 struct list_head f_tfile_llink ;
3332 struct address_space *f_mapping ;
3333 unsigned long f_mnt_write_state ;
3334};
3335#line 1111 "include/linux/fs.h"
3336typedef struct files_struct *fl_owner_t;
3337#line 1112 "include/linux/fs.h"
3338struct file_lock_operations {
3339 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
3340 void (*fl_release_private)(struct file_lock * ) ;
3341};
3342#line 1117 "include/linux/fs.h"
3343struct lock_manager_operations {
3344 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
3345 void (*lm_notify)(struct file_lock * ) ;
3346 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
3347 void (*lm_release_private)(struct file_lock * ) ;
3348 void (*lm_break)(struct file_lock * ) ;
3349 int (*lm_change)(struct file_lock ** , int ) ;
3350};
3351#line 1134
3352struct nlm_lockowner;
3353#line 1134
3354struct nlm_lockowner;
3355#line 1135 "include/linux/fs.h"
3356struct nfs_lock_info {
3357 u32 state ;
3358 struct nlm_lockowner *owner ;
3359 struct list_head list ;
3360};
3361#line 14 "include/linux/nfs_fs_i.h"
3362struct nfs4_lock_state;
3363#line 14
3364struct nfs4_lock_state;
3365#line 15 "include/linux/nfs_fs_i.h"
3366struct nfs4_lock_info {
3367 struct nfs4_lock_state *owner ;
3368};
3369#line 19
3370struct fasync_struct;
3371#line 19 "include/linux/nfs_fs_i.h"
3372struct __anonstruct_afs_171 {
3373 struct list_head link ;
3374 int state ;
3375};
3376#line 19 "include/linux/nfs_fs_i.h"
3377union __anonunion_fl_u_170 {
3378 struct nfs_lock_info nfs_fl ;
3379 struct nfs4_lock_info nfs4_fl ;
3380 struct __anonstruct_afs_171 afs ;
3381};
3382#line 19 "include/linux/nfs_fs_i.h"
3383struct file_lock {
3384 struct file_lock *fl_next ;
3385 struct list_head fl_link ;
3386 struct list_head fl_block ;
3387 fl_owner_t fl_owner ;
3388 unsigned int fl_flags ;
3389 unsigned char fl_type ;
3390 unsigned int fl_pid ;
3391 struct pid *fl_nspid ;
3392 wait_queue_head_t fl_wait ;
3393 struct file *fl_file ;
3394 loff_t fl_start ;
3395 loff_t fl_end ;
3396 struct fasync_struct *fl_fasync ;
3397 unsigned long fl_break_time ;
3398 unsigned long fl_downgrade_time ;
3399 struct file_lock_operations const *fl_ops ;
3400 struct lock_manager_operations const *fl_lmops ;
3401 union __anonunion_fl_u_170 fl_u ;
3402};
3403#line 1221 "include/linux/fs.h"
3404struct fasync_struct {
3405 spinlock_t fa_lock ;
3406 int magic ;
3407 int fa_fd ;
3408 struct fasync_struct *fa_next ;
3409 struct file *fa_file ;
3410 struct rcu_head fa_rcu ;
3411};
3412#line 1417
3413struct file_system_type;
3414#line 1417
3415struct super_operations;
3416#line 1417
3417struct xattr_handler;
3418#line 1417
3419struct mtd_info;
3420#line 1417 "include/linux/fs.h"
3421struct super_block {
3422 struct list_head s_list ;
3423 dev_t s_dev ;
3424 unsigned char s_dirt ;
3425 unsigned char s_blocksize_bits ;
3426 unsigned long s_blocksize ;
3427 loff_t s_maxbytes ;
3428 struct file_system_type *s_type ;
3429 struct super_operations const *s_op ;
3430 struct dquot_operations const *dq_op ;
3431 struct quotactl_ops const *s_qcop ;
3432 struct export_operations const *s_export_op ;
3433 unsigned long s_flags ;
3434 unsigned long s_magic ;
3435 struct dentry *s_root ;
3436 struct rw_semaphore s_umount ;
3437 struct mutex s_lock ;
3438 int s_count ;
3439 atomic_t s_active ;
3440 void *s_security ;
3441 struct xattr_handler const **s_xattr ;
3442 struct list_head s_inodes ;
3443 struct hlist_bl_head s_anon ;
3444 struct list_head *s_files ;
3445 struct list_head s_mounts ;
3446 struct list_head s_dentry_lru ;
3447 int s_nr_dentry_unused ;
3448 spinlock_t s_inode_lru_lock ;
3449 struct list_head s_inode_lru ;
3450 int s_nr_inodes_unused ;
3451 struct block_device *s_bdev ;
3452 struct backing_dev_info *s_bdi ;
3453 struct mtd_info *s_mtd ;
3454 struct hlist_node s_instances ;
3455 struct quota_info s_dquot ;
3456 int s_frozen ;
3457 wait_queue_head_t s_wait_unfrozen ;
3458 char s_id[32U] ;
3459 u8 s_uuid[16U] ;
3460 void *s_fs_info ;
3461 unsigned int s_max_links ;
3462 fmode_t s_mode ;
3463 u32 s_time_gran ;
3464 struct mutex s_vfs_rename_mutex ;
3465 char *s_subtype ;
3466 char *s_options ;
3467 struct dentry_operations const *s_d_op ;
3468 int cleancache_poolid ;
3469 struct shrinker s_shrink ;
3470 atomic_long_t s_remove_count ;
3471 int s_readonly_remount ;
3472};
3473#line 1563 "include/linux/fs.h"
3474struct fiemap_extent_info {
3475 unsigned int fi_flags ;
3476 unsigned int fi_extents_mapped ;
3477 unsigned int fi_extents_max ;
3478 struct fiemap_extent *fi_extents_start ;
3479};
3480#line 1601
3481struct block_device_operations;
3482#line 1601
3483struct block_device_operations;
3484#line 1602 "include/linux/fs.h"
3485struct file_operations {
3486 struct module *owner ;
3487 loff_t (*llseek)(struct file * , loff_t , int ) ;
3488 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
3489 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
3490 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
3491 loff_t ) ;
3492 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
3493 loff_t ) ;
3494 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
3495 loff_t , u64 , unsigned int ) ) ;
3496 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
3497 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
3498 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
3499 int (*mmap)(struct file * , struct vm_area_struct * ) ;
3500 int (*open)(struct inode * , struct file * ) ;
3501 int (*flush)(struct file * , fl_owner_t ) ;
3502 int (*release)(struct inode * , struct file * ) ;
3503 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
3504 int (*aio_fsync)(struct kiocb * , int ) ;
3505 int (*fasync)(int , struct file * , int ) ;
3506 int (*lock)(struct file * , int , struct file_lock * ) ;
3507 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
3508 int ) ;
3509 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
3510 unsigned long , unsigned long ) ;
3511 int (*check_flags)(int ) ;
3512 int (*flock)(struct file * , int , struct file_lock * ) ;
3513 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
3514 unsigned int ) ;
3515 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
3516 unsigned int ) ;
3517 int (*setlease)(struct file * , long , struct file_lock ** ) ;
3518 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
3519};
3520#line 1637 "include/linux/fs.h"
3521struct inode_operations {
3522 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
3523 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
3524 int (*permission)(struct inode * , int ) ;
3525 struct posix_acl *(*get_acl)(struct inode * , int ) ;
3526 int (*readlink)(struct dentry * , char * , int ) ;
3527 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
3528 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
3529 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
3530 int (*unlink)(struct inode * , struct dentry * ) ;
3531 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
3532 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
3533 int (*rmdir)(struct inode * , struct dentry * ) ;
3534 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
3535 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
3536 void (*truncate)(struct inode * ) ;
3537 int (*setattr)(struct dentry * , struct iattr * ) ;
3538 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
3539 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
3540 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
3541 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
3542 int (*removexattr)(struct dentry * , char const * ) ;
3543 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
3544 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
3545};
3546#line 1682 "include/linux/fs.h"
3547struct super_operations {
3548 struct inode *(*alloc_inode)(struct super_block * ) ;
3549 void (*destroy_inode)(struct inode * ) ;
3550 void (*dirty_inode)(struct inode * , int ) ;
3551 int (*write_inode)(struct inode * , struct writeback_control * ) ;
3552 int (*drop_inode)(struct inode * ) ;
3553 void (*evict_inode)(struct inode * ) ;
3554 void (*put_super)(struct super_block * ) ;
3555 void (*write_super)(struct super_block * ) ;
3556 int (*sync_fs)(struct super_block * , int ) ;
3557 int (*freeze_fs)(struct super_block * ) ;
3558 int (*unfreeze_fs)(struct super_block * ) ;
3559 int (*statfs)(struct dentry * , struct kstatfs * ) ;
3560 int (*remount_fs)(struct super_block * , int * , char * ) ;
3561 void (*umount_begin)(struct super_block * ) ;
3562 int (*show_options)(struct seq_file * , struct dentry * ) ;
3563 int (*show_devname)(struct seq_file * , struct dentry * ) ;
3564 int (*show_path)(struct seq_file * , struct dentry * ) ;
3565 int (*show_stats)(struct seq_file * , struct dentry * ) ;
3566 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
3567 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
3568 loff_t ) ;
3569 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
3570 int (*nr_cached_objects)(struct super_block * ) ;
3571 void (*free_cached_objects)(struct super_block * , int ) ;
3572};
3573#line 1834 "include/linux/fs.h"
3574struct file_system_type {
3575 char const *name ;
3576 int fs_flags ;
3577 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
3578 void (*kill_sb)(struct super_block * ) ;
3579 struct module *owner ;
3580 struct file_system_type *next ;
3581 struct hlist_head fs_supers ;
3582 struct lock_class_key s_lock_key ;
3583 struct lock_class_key s_umount_key ;
3584 struct lock_class_key s_vfs_rename_key ;
3585 struct lock_class_key i_lock_key ;
3586 struct lock_class_key i_mutex_key ;
3587 struct lock_class_key i_mutex_dir_key ;
3588};
3589#line 81 "include/linux/genhd.h"
3590struct disk_stats {
3591 unsigned long sectors[2U] ;
3592 unsigned long ios[2U] ;
3593 unsigned long merges[2U] ;
3594 unsigned long ticks[2U] ;
3595 unsigned long io_ticks ;
3596 unsigned long time_in_queue ;
3597};
3598#line 90 "include/linux/genhd.h"
3599struct partition_meta_info {
3600 u8 uuid[16U] ;
3601 u8 volname[64U] ;
3602};
3603#line 98 "include/linux/genhd.h"
3604struct hd_struct {
3605 sector_t start_sect ;
3606 sector_t nr_sects ;
3607 sector_t alignment_offset ;
3608 unsigned int discard_alignment ;
3609 struct device __dev ;
3610 struct kobject *holder_dir ;
3611 int policy ;
3612 int partno ;
3613 struct partition_meta_info *info ;
3614 int make_it_fail ;
3615 unsigned long stamp ;
3616 atomic_t in_flight[2U] ;
3617 struct disk_stats *dkstats ;
3618 atomic_t ref ;
3619 struct rcu_head rcu_head ;
3620};
3621#line 146 "include/linux/genhd.h"
3622struct disk_part_tbl {
3623 struct rcu_head rcu_head ;
3624 int len ;
3625 struct hd_struct *last_lookup ;
3626 struct hd_struct *part[0U] ;
3627};
3628#line 153
3629struct disk_events;
3630#line 153
3631struct disk_events;
3632#line 154
3633struct timer_rand_state;
3634#line 154
3635struct blk_integrity;
3636#line 154 "include/linux/genhd.h"
3637struct gendisk {
3638 int major ;
3639 int first_minor ;
3640 int minors ;
3641 char disk_name[32U] ;
3642 char *(*devnode)(struct gendisk * , umode_t * ) ;
3643 unsigned int events ;
3644 unsigned int async_events ;
3645 struct disk_part_tbl *part_tbl ;
3646 struct hd_struct part0 ;
3647 struct block_device_operations const *fops ;
3648 struct request_queue *queue ;
3649 void *private_data ;
3650 int flags ;
3651 struct device *driverfs_dev ;
3652 struct kobject *slave_dir ;
3653 struct timer_rand_state *random ;
3654 atomic_t sync_io ;
3655 struct disk_events *ev ;
3656 struct blk_integrity *integrity ;
3657 int node_id ;
3658};
3659#line 650 "include/linux/genhd.h"
3660struct exception_table_entry {
3661 unsigned long insn ;
3662 unsigned long fixup ;
3663};
3664#line 348 "include/linux/irq.h"
3665struct proc_dir_entry;
3666#line 348
3667struct proc_dir_entry;
3668#line 11 "include/linux/writeback.h"
3669enum writeback_sync_modes {
3670 WB_SYNC_NONE = 0,
3671 WB_SYNC_ALL = 1
3672} ;
3673#line 54 "include/linux/writeback.h"
3674struct writeback_control {
3675 enum writeback_sync_modes sync_mode ;
3676 long nr_to_write ;
3677 long pages_skipped ;
3678 loff_t range_start ;
3679 loff_t range_end ;
3680 unsigned char for_kupdate : 1 ;
3681 unsigned char for_background : 1 ;
3682 unsigned char tagged_writepages : 1 ;
3683 unsigned char for_reclaim : 1 ;
3684 unsigned char range_cyclic : 1 ;
3685};
3686#line 80
3687struct bdi_writeback;
3688#line 80
3689struct bdi_writeback;
3690#line 38 "include/linux/backing-dev.h"
3691typedef int congested_fn(void * , int );
3692#line 47 "include/linux/backing-dev.h"
3693struct bdi_writeback {
3694 struct backing_dev_info *bdi ;
3695 unsigned int nr ;
3696 unsigned long last_old_flush ;
3697 unsigned long last_active ;
3698 struct task_struct *task ;
3699 struct timer_list wakeup_timer ;
3700 struct list_head b_dirty ;
3701 struct list_head b_io ;
3702 struct list_head b_more_io ;
3703 spinlock_t list_lock ;
3704};
3705#line 64 "include/linux/backing-dev.h"
3706struct backing_dev_info {
3707 struct list_head bdi_list ;
3708 unsigned long ra_pages ;
3709 unsigned long state ;
3710 unsigned int capabilities ;
3711 congested_fn *congested_fn ;
3712 void *congested_data ;
3713 char *name ;
3714 struct percpu_counter bdi_stat[4U] ;
3715 unsigned long bw_time_stamp ;
3716 unsigned long dirtied_stamp ;
3717 unsigned long written_stamp ;
3718 unsigned long write_bandwidth ;
3719 unsigned long avg_write_bandwidth ;
3720 unsigned long dirty_ratelimit ;
3721 unsigned long balanced_dirty_ratelimit ;
3722 struct prop_local_percpu completions ;
3723 int dirty_exceeded ;
3724 unsigned int min_ratio ;
3725 unsigned int max_ratio ;
3726 unsigned int max_prop_frac ;
3727 struct bdi_writeback wb ;
3728 spinlock_t wb_lock ;
3729 struct list_head work_list ;
3730 struct device *dev ;
3731 struct timer_list laptop_mode_wb_timer ;
3732 struct dentry *debug_dir ;
3733 struct dentry *debug_stats ;
3734};
3735#line 11 "include/linux/mempool.h"
3736typedef void *mempool_alloc_t(gfp_t , void * );
3737#line 12 "include/linux/mempool.h"
3738typedef void mempool_free_t(void * , void * );
3739#line 13 "include/linux/mempool.h"
3740struct mempool_s {
3741 spinlock_t lock ;
3742 int min_nr ;
3743 int curr_nr ;
3744 void **elements ;
3745 void *pool_data ;
3746 mempool_alloc_t *alloc ;
3747 mempool_free_t *free ;
3748 wait_queue_head_t wait ;
3749};
3750#line 24 "include/linux/mempool.h"
3751typedef struct mempool_s mempool_t;
3752#line 79 "include/linux/mempool.h"
3753union __anonunion_ldv_26399_173 {
3754 struct list_head q_node ;
3755 struct kmem_cache *__rcu_icq_cache ;
3756};
3757#line 79 "include/linux/mempool.h"
3758union __anonunion_ldv_26403_174 {
3759 struct hlist_node ioc_node ;
3760 struct rcu_head __rcu_head ;
3761};
3762#line 79 "include/linux/mempool.h"
3763struct io_cq {
3764 struct request_queue *q ;
3765 struct io_context *ioc ;
3766 union __anonunion_ldv_26399_173 ldv_26399 ;
3767 union __anonunion_ldv_26403_174 ldv_26403 ;
3768 unsigned int flags ;
3769};
3770#line 96 "include/linux/iocontext.h"
3771struct io_context {
3772 atomic_long_t refcount ;
3773 atomic_t nr_tasks ;
3774 spinlock_t lock ;
3775 unsigned short ioprio ;
3776 int nr_batch_requests ;
3777 unsigned long last_waited ;
3778 struct radix_tree_root icq_tree ;
3779 struct io_cq *icq_hint ;
3780 struct hlist_head icq_list ;
3781 struct work_struct release_work ;
3782};
3783#line 91 "include/linux/bio.h"
3784struct bio_integrity_payload {
3785 struct bio *bip_bio ;
3786 sector_t bip_sector ;
3787 void *bip_buf ;
3788 bio_end_io_t *bip_end_io ;
3789 unsigned int bip_size ;
3790 unsigned short bip_slab ;
3791 unsigned short bip_vcnt ;
3792 unsigned short bip_idx ;
3793 struct work_struct bip_work ;
3794 struct bio_vec bip_vec[0U] ;
3795};
3796#line 366 "include/linux/bio.h"
3797struct bio_list {
3798 struct bio *head ;
3799 struct bio *tail ;
3800};
3801#line 63 "include/linux/bsg.h"
3802struct bsg_class_device {
3803 struct device *class_dev ;
3804 struct device *parent ;
3805 int minor ;
3806 struct request_queue *queue ;
3807 struct kref ref ;
3808 void (*release)(struct device * ) ;
3809};
3810#line 81
3811struct elevator_queue;
3812#line 81
3813struct elevator_queue;
3814#line 84
3815struct request;
3816#line 84
3817struct request;
3818#line 86
3819struct bsg_job;
3820#line 86
3821struct bsg_job;
3822#line 40 "include/linux/blkdev.h"
3823typedef void rq_end_io_fn(struct request * , int );
3824#line 41 "include/linux/blkdev.h"
3825struct request_list {
3826 int count[2U] ;
3827 int starved[2U] ;
3828 int elvpriv ;
3829 mempool_t *rq_pool ;
3830 wait_queue_head_t wait[2U] ;
3831};
3832#line 53
3833enum rq_cmd_type_bits {
3834 REQ_TYPE_FS = 1,
3835 REQ_TYPE_BLOCK_PC = 2,
3836 REQ_TYPE_SENSE = 3,
3837 REQ_TYPE_PM_SUSPEND = 4,
3838 REQ_TYPE_PM_RESUME = 5,
3839 REQ_TYPE_PM_SHUTDOWN = 6,
3840 REQ_TYPE_SPECIAL = 7,
3841 REQ_TYPE_ATA_TASKFILE = 8,
3842 REQ_TYPE_ATA_PC = 9
3843} ;
3844#line 65 "include/linux/blkdev.h"
3845union __anonunion_ldv_26826_175 {
3846 struct rb_node rb_node ;
3847 void *completion_data ;
3848};
3849#line 65 "include/linux/blkdev.h"
3850struct __anonstruct_elv_177 {
3851 struct io_cq *icq ;
3852 void *priv[2U] ;
3853};
3854#line 65 "include/linux/blkdev.h"
3855struct __anonstruct_flush_178 {
3856 unsigned int seq ;
3857 struct list_head list ;
3858 rq_end_io_fn *saved_end_io ;
3859};
3860#line 65 "include/linux/blkdev.h"
3861union __anonunion_ldv_26837_176 {
3862 struct __anonstruct_elv_177 elv ;
3863 struct __anonstruct_flush_178 flush ;
3864};
3865#line 65 "include/linux/blkdev.h"
3866struct request {
3867 struct list_head queuelist ;
3868 struct call_single_data csd ;
3869 struct request_queue *q ;
3870 unsigned int cmd_flags ;
3871 enum rq_cmd_type_bits cmd_type ;
3872 unsigned long atomic_flags ;
3873 int cpu ;
3874 unsigned int __data_len ;
3875 sector_t __sector ;
3876 struct bio *bio ;
3877 struct bio *biotail ;
3878 struct hlist_node hash ;
3879 union __anonunion_ldv_26826_175 ldv_26826 ;
3880 union __anonunion_ldv_26837_176 ldv_26837 ;
3881 struct gendisk *rq_disk ;
3882 struct hd_struct *part ;
3883 unsigned long start_time ;
3884 unsigned short nr_phys_segments ;
3885 unsigned short nr_integrity_segments ;
3886 unsigned short ioprio ;
3887 int ref_count ;
3888 void *special ;
3889 char *buffer ;
3890 int tag ;
3891 int errors ;
3892 unsigned char __cmd[16U] ;
3893 unsigned char *cmd ;
3894 unsigned short cmd_len ;
3895 unsigned int extra_len ;
3896 unsigned int sense_len ;
3897 unsigned int resid_len ;
3898 void *sense ;
3899 unsigned long deadline ;
3900 struct list_head timeout_list ;
3901 unsigned int timeout ;
3902 int retries ;
3903 rq_end_io_fn *end_io ;
3904 void *end_io_data ;
3905 struct request *next_rq ;
3906};
3907#line 10 "include/linux/elevator.h"
3908typedef int elevator_merge_fn(struct request_queue * , struct request ** , struct bio * );
3909#line 13 "include/linux/elevator.h"
3910typedef void elevator_merge_req_fn(struct request_queue * , struct request * , struct request * );
3911#line 15 "include/linux/elevator.h"
3912typedef void elevator_merged_fn(struct request_queue * , struct request * , int );
3913#line 17 "include/linux/elevator.h"
3914typedef int elevator_allow_merge_fn(struct request_queue * , struct request * , struct bio * );
3915#line 19 "include/linux/elevator.h"
3916typedef void elevator_bio_merged_fn(struct request_queue * , struct request * , struct bio * );
3917#line 22 "include/linux/elevator.h"
3918typedef int elevator_dispatch_fn(struct request_queue * , int );
3919#line 24 "include/linux/elevator.h"
3920typedef void elevator_add_req_fn(struct request_queue * , struct request * );
3921#line 25 "include/linux/elevator.h"
3922typedef struct request *elevator_request_list_fn(struct request_queue * , struct request * );
3923#line 26 "include/linux/elevator.h"
3924typedef void elevator_completed_req_fn(struct request_queue * , struct request * );
3925#line 27 "include/linux/elevator.h"
3926typedef int elevator_may_queue_fn(struct request_queue * , int );
3927#line 29 "include/linux/elevator.h"
3928typedef void elevator_init_icq_fn(struct io_cq * );
3929#line 30 "include/linux/elevator.h"
3930typedef void elevator_exit_icq_fn(struct io_cq * );
3931#line 31 "include/linux/elevator.h"
3932typedef int elevator_set_req_fn(struct request_queue * , struct request * , gfp_t );
3933#line 32 "include/linux/elevator.h"
3934typedef void elevator_put_req_fn(struct request * );
3935#line 33 "include/linux/elevator.h"
3936typedef void elevator_activate_req_fn(struct request_queue * , struct request * );
3937#line 34 "include/linux/elevator.h"
3938typedef void elevator_deactivate_req_fn(struct request_queue * , struct request * );
3939#line 36 "include/linux/elevator.h"
3940typedef void *elevator_init_fn(struct request_queue * );
3941#line 37 "include/linux/elevator.h"
3942typedef void elevator_exit_fn(struct elevator_queue * );
3943#line 38 "include/linux/elevator.h"
3944struct elevator_ops {
3945 elevator_merge_fn *elevator_merge_fn ;
3946 elevator_merged_fn *elevator_merged_fn ;
3947 elevator_merge_req_fn *elevator_merge_req_fn ;
3948 elevator_allow_merge_fn *elevator_allow_merge_fn ;
3949 elevator_bio_merged_fn *elevator_bio_merged_fn ;
3950 elevator_dispatch_fn *elevator_dispatch_fn ;
3951 elevator_add_req_fn *elevator_add_req_fn ;
3952 elevator_activate_req_fn *elevator_activate_req_fn ;
3953 elevator_deactivate_req_fn *elevator_deactivate_req_fn ;
3954 elevator_completed_req_fn *elevator_completed_req_fn ;
3955 elevator_request_list_fn *elevator_former_req_fn ;
3956 elevator_request_list_fn *elevator_latter_req_fn ;
3957 elevator_init_icq_fn *elevator_init_icq_fn ;
3958 elevator_exit_icq_fn *elevator_exit_icq_fn ;
3959 elevator_set_req_fn *elevator_set_req_fn ;
3960 elevator_put_req_fn *elevator_put_req_fn ;
3961 elevator_may_queue_fn *elevator_may_queue_fn ;
3962 elevator_init_fn *elevator_init_fn ;
3963 elevator_exit_fn *elevator_exit_fn ;
3964};
3965#line 68 "include/linux/elevator.h"
3966struct elv_fs_entry {
3967 struct attribute attr ;
3968 ssize_t (*show)(struct elevator_queue * , char * ) ;
3969 ssize_t (*store)(struct elevator_queue * , char const * , size_t ) ;
3970};
3971#line 76 "include/linux/elevator.h"
3972struct elevator_type {
3973 struct kmem_cache *icq_cache ;
3974 struct elevator_ops ops ;
3975 size_t icq_size ;
3976 size_t icq_align ;
3977 struct elv_fs_entry *elevator_attrs ;
3978 char elevator_name[16U] ;
3979 struct module *elevator_owner ;
3980 char icq_cache_name[21U] ;
3981 struct list_head list ;
3982};
3983#line 97 "include/linux/elevator.h"
3984struct elevator_queue {
3985 struct elevator_type *type ;
3986 void *elevator_data ;
3987 struct kobject kobj ;
3988 struct mutex sysfs_lock ;
3989 struct hlist_head *hash ;
3990 unsigned char registered : 1 ;
3991};
3992#line 202 "include/linux/blkdev.h"
3993typedef void request_fn_proc(struct request_queue * );
3994#line 203 "include/linux/blkdev.h"
3995typedef void make_request_fn(struct request_queue * , struct bio * );
3996#line 204 "include/linux/blkdev.h"
3997typedef int prep_rq_fn(struct request_queue * , struct request * );
3998#line 205 "include/linux/blkdev.h"
3999typedef void unprep_rq_fn(struct request_queue * , struct request * );
4000#line 206 "include/linux/blkdev.h"
4001struct bvec_merge_data {
4002 struct block_device *bi_bdev ;
4003 sector_t bi_sector ;
4004 unsigned int bi_size ;
4005 unsigned long bi_rw ;
4006};
4007#line 214 "include/linux/blkdev.h"
4008typedef int merge_bvec_fn(struct request_queue * , struct bvec_merge_data * , struct bio_vec * );
4009#line 216 "include/linux/blkdev.h"
4010typedef void softirq_done_fn(struct request * );
4011#line 217 "include/linux/blkdev.h"
4012typedef int dma_drain_needed_fn(struct request * );
4013#line 218 "include/linux/blkdev.h"
4014typedef int lld_busy_fn(struct request_queue * );
4015#line 219 "include/linux/blkdev.h"
4016typedef int bsg_job_fn(struct bsg_job * );
4017#line 220
4018enum blk_eh_timer_return {
4019 BLK_EH_NOT_HANDLED = 0,
4020 BLK_EH_HANDLED = 1,
4021 BLK_EH_RESET_TIMER = 2
4022} ;
4023#line 227 "include/linux/blkdev.h"
4024typedef enum blk_eh_timer_return rq_timed_out_fn(struct request * );
4025#line 233 "include/linux/blkdev.h"
4026struct blk_queue_tag {
4027 struct request **tag_index ;
4028 unsigned long *tag_map ;
4029 int busy ;
4030 int max_depth ;
4031 int real_max_depth ;
4032 atomic_t refcnt ;
4033};
4034#line 242 "include/linux/blkdev.h"
4035struct queue_limits {
4036 unsigned long bounce_pfn ;
4037 unsigned long seg_boundary_mask ;
4038 unsigned int max_hw_sectors ;
4039 unsigned int max_sectors ;
4040 unsigned int max_segment_size ;
4041 unsigned int physical_block_size ;
4042 unsigned int alignment_offset ;
4043 unsigned int io_min ;
4044 unsigned int io_opt ;
4045 unsigned int max_discard_sectors ;
4046 unsigned int discard_granularity ;
4047 unsigned int discard_alignment ;
4048 unsigned short logical_block_size ;
4049 unsigned short max_segments ;
4050 unsigned short max_integrity_segments ;
4051 unsigned char misaligned ;
4052 unsigned char discard_misaligned ;
4053 unsigned char cluster ;
4054 unsigned char discard_zeroes_data ;
4055};
4056#line 270 "include/linux/blkdev.h"
4057struct request_queue {
4058 struct list_head queue_head ;
4059 struct request *last_merge ;
4060 struct elevator_queue *elevator ;
4061 struct request_list rq ;
4062 request_fn_proc *request_fn ;
4063 make_request_fn *make_request_fn ;
4064 prep_rq_fn *prep_rq_fn ;
4065 unprep_rq_fn *unprep_rq_fn ;
4066 merge_bvec_fn *merge_bvec_fn ;
4067 softirq_done_fn *softirq_done_fn ;
4068 rq_timed_out_fn *rq_timed_out_fn ;
4069 dma_drain_needed_fn *dma_drain_needed ;
4070 lld_busy_fn *lld_busy_fn ;
4071 sector_t end_sector ;
4072 struct request *boundary_rq ;
4073 struct delayed_work delay_work ;
4074 struct backing_dev_info backing_dev_info ;
4075 void *queuedata ;
4076 unsigned long queue_flags ;
4077 int id ;
4078 gfp_t bounce_gfp ;
4079 spinlock_t __queue_lock ;
4080 spinlock_t *queue_lock ;
4081 struct kobject kobj ;
4082 unsigned long nr_requests ;
4083 unsigned int nr_congestion_on ;
4084 unsigned int nr_congestion_off ;
4085 unsigned int nr_batching ;
4086 unsigned int dma_drain_size ;
4087 void *dma_drain_buffer ;
4088 unsigned int dma_pad_mask ;
4089 unsigned int dma_alignment ;
4090 struct blk_queue_tag *queue_tags ;
4091 struct list_head tag_busy_list ;
4092 unsigned int nr_sorted ;
4093 unsigned int in_flight[2U] ;
4094 unsigned int rq_timeout ;
4095 struct timer_list timeout ;
4096 struct list_head timeout_list ;
4097 struct list_head icq_list ;
4098 struct queue_limits limits ;
4099 unsigned int sg_timeout ;
4100 unsigned int sg_reserved_size ;
4101 int node ;
4102 unsigned int flush_flags ;
4103 unsigned char flush_not_queueable : 1 ;
4104 unsigned char flush_queue_delayed : 1 ;
4105 unsigned char flush_pending_idx : 1 ;
4106 unsigned char flush_running_idx : 1 ;
4107 unsigned long flush_pending_since ;
4108 struct list_head flush_queue[2U] ;
4109 struct list_head flush_data_in_flight ;
4110 struct request flush_rq ;
4111 struct mutex sysfs_lock ;
4112 bsg_job_fn *bsg_job_fn ;
4113 int bsg_job_size ;
4114 struct bsg_class_device bsg_dev ;
4115};
4116#line 876 "include/linux/blkdev.h"
4117struct blk_plug {
4118 unsigned long magic ;
4119 struct list_head list ;
4120 struct list_head cb_list ;
4121 unsigned int should_sort ;
4122};
4123#line 1208 "include/linux/blkdev.h"
4124struct blk_integrity_exchg {
4125 void *prot_buf ;
4126 void *data_buf ;
4127 sector_t sector ;
4128 unsigned int data_size ;
4129 unsigned short sector_size ;
4130 char const *disk_name ;
4131};
4132#line 1229 "include/linux/blkdev.h"
4133typedef void integrity_gen_fn(struct blk_integrity_exchg * );
4134#line 1230 "include/linux/blkdev.h"
4135typedef int integrity_vrfy_fn(struct blk_integrity_exchg * );
4136#line 1231 "include/linux/blkdev.h"
4137typedef void integrity_set_tag_fn(void * , void * , unsigned int );
4138#line 1232 "include/linux/blkdev.h"
4139typedef void integrity_get_tag_fn(void * , void * , unsigned int );
4140#line 1233 "include/linux/blkdev.h"
4141struct blk_integrity {
4142 integrity_gen_fn *generate_fn ;
4143 integrity_vrfy_fn *verify_fn ;
4144 integrity_set_tag_fn *set_tag_fn ;
4145 integrity_get_tag_fn *get_tag_fn ;
4146 unsigned short flags ;
4147 unsigned short tuple_size ;
4148 unsigned short sector_size ;
4149 unsigned short tag_size ;
4150 char const *name ;
4151 struct kobject kobj ;
4152};
4153#line 1292 "include/linux/blkdev.h"
4154struct block_device_operations {
4155 int (*open)(struct block_device * , fmode_t ) ;
4156 int (*release)(struct gendisk * , fmode_t ) ;
4157 int (*ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
4158 int (*compat_ioctl)(struct block_device * , fmode_t , unsigned int , unsigned long ) ;
4159 int (*direct_access)(struct block_device * , sector_t , void ** , unsigned long * ) ;
4160 unsigned int (*check_events)(struct gendisk * , unsigned int ) ;
4161 int (*media_changed)(struct gendisk * ) ;
4162 void (*unlock_native_capacity)(struct gendisk * ) ;
4163 int (*revalidate_disk)(struct gendisk * ) ;
4164 int (*getgeo)(struct block_device * , struct hd_geometry * ) ;
4165 void (*swap_slot_free_notify)(struct block_device * , unsigned long ) ;
4166 struct module *owner ;
4167};
4168#line 1390 "include/linux/blkdev.h"
4169struct dma_attrs {
4170 unsigned long flags[1U] ;
4171};
4172#line 67 "include/linux/dma-attrs.h"
4173enum dma_data_direction {
4174 DMA_BIDIRECTIONAL = 0,
4175 DMA_TO_DEVICE = 1,
4176 DMA_FROM_DEVICE = 2,
4177 DMA_NONE = 3
4178} ;
4179#line 74 "include/linux/dma-attrs.h"
4180struct dma_map_ops {
4181 void *(*alloc)(struct device * , size_t , dma_addr_t * , gfp_t , struct dma_attrs * ) ;
4182 void (*free)(struct device * , size_t , void * , dma_addr_t , struct dma_attrs * ) ;
4183 int (*mmap)(struct device * , struct vm_area_struct * , void * , dma_addr_t ,
4184 size_t , struct dma_attrs * ) ;
4185 dma_addr_t (*map_page)(struct device * , struct page * , unsigned long , size_t ,
4186 enum dma_data_direction , struct dma_attrs * ) ;
4187 void (*unmap_page)(struct device * , dma_addr_t , size_t , enum dma_data_direction ,
4188 struct dma_attrs * ) ;
4189 int (*map_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
4190 struct dma_attrs * ) ;
4191 void (*unmap_sg)(struct device * , struct scatterlist * , int , enum dma_data_direction ,
4192 struct dma_attrs * ) ;
4193 void (*sync_single_for_cpu)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
4194 void (*sync_single_for_device)(struct device * , dma_addr_t , size_t , enum dma_data_direction ) ;
4195 void (*sync_sg_for_cpu)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
4196 void (*sync_sg_for_device)(struct device * , struct scatterlist * , int , enum dma_data_direction ) ;
4197 int (*mapping_error)(struct device * , dma_addr_t ) ;
4198 int (*dma_supported)(struct device * , u64 ) ;
4199 int (*set_dma_mask)(struct device * , u64 ) ;
4200 int is_phys ;
4201};
4202#line 202 "include/linux/dma-mapping.h"
4203struct Scsi_Host;
4204#line 202
4205struct Scsi_Host;
4206#line 203
4207struct scsi_device;
4208#line 203
4209struct scsi_device;
4210#line 205 "include/linux/dma-mapping.h"
4211struct scsi_data_buffer {
4212 struct sg_table table ;
4213 unsigned int length ;
4214 int resid ;
4215};
4216#line 37 "include/scsi/scsi_cmnd.h"
4217struct scsi_pointer {
4218 char *ptr ;
4219 int this_residual ;
4220 struct scatterlist *buffer ;
4221 int buffers_residual ;
4222 dma_addr_t dma_handle ;
4223 int volatile Status ;
4224 int volatile Message ;
4225 int volatile have_data_in ;
4226 int volatile sent_command ;
4227 int volatile phase ;
4228};
4229#line 53 "include/scsi/scsi_cmnd.h"
4230struct scsi_cmnd {
4231 struct scsi_device *device ;
4232 struct list_head list ;
4233 struct list_head eh_entry ;
4234 int eh_eflags ;
4235 unsigned long serial_number ;
4236 unsigned long jiffies_at_alloc ;
4237 int retries ;
4238 int allowed ;
4239 unsigned char prot_op ;
4240 unsigned char prot_type ;
4241 unsigned short cmd_len ;
4242 enum dma_data_direction sc_data_direction ;
4243 unsigned char *cmnd ;
4244 struct scsi_data_buffer sdb ;
4245 struct scsi_data_buffer *prot_sdb ;
4246 unsigned int underflow ;
4247 unsigned int transfersize ;
4248 struct request *request ;
4249 unsigned char *sense_buffer ;
4250 void (*scsi_done)(struct scsi_cmnd * ) ;
4251 struct scsi_pointer SCp ;
4252 unsigned char *host_scribble ;
4253 int result ;
4254 unsigned char tag ;
4255};
4256#line 313
4257struct scsi_sense_hdr;
4258#line 313
4259struct scsi_sense_hdr;
4260#line 25 "include/scsi/scsi_device.h"
4261enum scsi_device_state {
4262 SDEV_CREATED = 1,
4263 SDEV_RUNNING = 2,
4264 SDEV_CANCEL = 3,
4265 SDEV_DEL = 4,
4266 SDEV_QUIESCE = 5,
4267 SDEV_OFFLINE = 6,
4268 SDEV_BLOCK = 7,
4269 SDEV_CREATED_BLOCK = 8
4270} ;
4271#line 63
4272struct scsi_target;
4273#line 63
4274struct scsi_dh_data;
4275#line 63 "include/scsi/scsi_device.h"
4276struct scsi_device {
4277 struct Scsi_Host *host ;
4278 struct request_queue *request_queue ;
4279 struct list_head siblings ;
4280 struct list_head same_target_siblings ;
4281 unsigned int device_busy ;
4282 spinlock_t list_lock ;
4283 struct list_head cmd_list ;
4284 struct list_head starved_entry ;
4285 struct scsi_cmnd *current_cmnd ;
4286 unsigned short queue_depth ;
4287 unsigned short max_queue_depth ;
4288 unsigned short last_queue_full_depth ;
4289 unsigned short last_queue_full_count ;
4290 unsigned long last_queue_full_time ;
4291 unsigned long queue_ramp_up_period ;
4292 unsigned long last_queue_ramp_up ;
4293 unsigned int id ;
4294 unsigned int lun ;
4295 unsigned int channel ;
4296 unsigned int manufacturer ;
4297 unsigned int sector_size ;
4298 void *hostdata ;
4299 char type ;
4300 char scsi_level ;
4301 char inq_periph_qual ;
4302 unsigned char inquiry_len ;
4303 unsigned char *inquiry ;
4304 char const *vendor ;
4305 char const *model ;
4306 char const *rev ;
4307 unsigned char current_tag ;
4308 struct scsi_target *sdev_target ;
4309 unsigned int sdev_bflags ;
4310 unsigned char writeable : 1 ;
4311 unsigned char removable : 1 ;
4312 unsigned char changed : 1 ;
4313 unsigned char busy : 1 ;
4314 unsigned char lockable : 1 ;
4315 unsigned char locked : 1 ;
4316 unsigned char borken : 1 ;
4317 unsigned char disconnect : 1 ;
4318 unsigned char soft_reset : 1 ;
4319 unsigned char sdtr : 1 ;
4320 unsigned char wdtr : 1 ;
4321 unsigned char ppr : 1 ;
4322 unsigned char tagged_supported : 1 ;
4323 unsigned char simple_tags : 1 ;
4324 unsigned char ordered_tags : 1 ;
4325 unsigned char was_reset : 1 ;
4326 unsigned char expecting_cc_ua : 1 ;
4327 unsigned char use_10_for_rw : 1 ;
4328 unsigned char use_10_for_ms : 1 ;
4329 unsigned char skip_ms_page_8 : 1 ;
4330 unsigned char skip_ms_page_3f : 1 ;
4331 unsigned char skip_vpd_pages : 1 ;
4332 unsigned char use_192_bytes_for_3f : 1 ;
4333 unsigned char no_start_on_add : 1 ;
4334 unsigned char allow_restart : 1 ;
4335 unsigned char manage_start_stop : 1 ;
4336 unsigned char start_stop_pwr_cond : 1 ;
4337 unsigned char no_uld_attach : 1 ;
4338 unsigned char select_no_atn : 1 ;
4339 unsigned char fix_capacity : 1 ;
4340 unsigned char guess_capacity : 1 ;
4341 unsigned char retry_hwerror : 1 ;
4342 unsigned char last_sector_bug : 1 ;
4343 unsigned char no_read_disc_info : 1 ;
4344 unsigned char no_read_capacity_16 : 1 ;
4345 unsigned char is_visible : 1 ;
4346 unsigned long supported_events[1U] ;
4347 struct list_head event_list ;
4348 struct work_struct event_work ;
4349 unsigned int device_blocked ;
4350 unsigned int max_device_blocked ;
4351 atomic_t iorequest_cnt ;
4352 atomic_t iodone_cnt ;
4353 atomic_t ioerr_cnt ;
4354 struct device sdev_gendev ;
4355 struct device sdev_dev ;
4356 struct execute_work ew ;
4357 struct work_struct requeue_work ;
4358 struct scsi_dh_data *scsi_dh_data ;
4359 enum scsi_device_state sdev_state ;
4360 unsigned long sdev_data[0U] ;
4361};
4362#line 179 "include/scsi/scsi_device.h"
4363struct scsi_dh_devlist {
4364 char *vendor ;
4365 char *model ;
4366};
4367#line 186 "include/scsi/scsi_device.h"
4368struct scsi_device_handler {
4369 struct list_head list ;
4370 struct module *module ;
4371 char const *name ;
4372 struct scsi_dh_devlist const *devlist ;
4373 int (*check_sense)(struct scsi_device * , struct scsi_sense_hdr * ) ;
4374 int (*attach)(struct scsi_device * ) ;
4375 void (*detach)(struct scsi_device * ) ;
4376 int (*activate)(struct scsi_device * , void (*)(void * , int ) , void * ) ;
4377 int (*prep_fn)(struct scsi_device * , struct request * ) ;
4378 int (*set_params)(struct scsi_device * , char const * ) ;
4379 bool (*match)(struct scsi_device * ) ;
4380};
4381#line 202 "include/scsi/scsi_device.h"
4382struct scsi_dh_data {
4383 struct scsi_device_handler *scsi_dh ;
4384 struct scsi_device *sdev ;
4385 struct kref kref ;
4386 char buf[0U] ;
4387};
4388#line 209
4389enum scsi_target_state {
4390 STARGET_CREATED = 1,
4391 STARGET_RUNNING = 2,
4392 STARGET_DEL = 3
4393} ;
4394#line 215 "include/scsi/scsi_device.h"
4395struct scsi_target {
4396 struct scsi_device *starget_sdev_user ;
4397 struct list_head siblings ;
4398 struct list_head devices ;
4399 struct device dev ;
4400 unsigned int reap_ref ;
4401 unsigned int channel ;
4402 unsigned int id ;
4403 unsigned char create : 1 ;
4404 unsigned char single_lun : 1 ;
4405 unsigned char pdt_1f_for_no_lun : 1 ;
4406 unsigned char no_report_luns : 1 ;
4407 unsigned int target_busy ;
4408 unsigned int can_queue ;
4409 unsigned int target_blocked ;
4410 unsigned int max_target_blocked ;
4411 char scsi_level ;
4412 struct execute_work ew ;
4413 enum scsi_target_state state ;
4414 void *hostdata ;
4415 unsigned long starget_data[0U] ;
4416};
4417#line 481
4418struct scsi_host_cmd_pool;
4419#line 481
4420struct scsi_host_cmd_pool;
4421#line 482
4422struct scsi_transport_template;
4423#line 482
4424struct scsi_transport_template;
4425#line 490 "include/scsi/scsi_device.h"
4426struct scsi_host_template {
4427 struct module *module ;
4428 char const *name ;
4429 int (*detect)(struct scsi_host_template * ) ;
4430 int (*release)(struct Scsi_Host * ) ;
4431 char const *(*info)(struct Scsi_Host * ) ;
4432 int (*ioctl)(struct scsi_device * , int , void * ) ;
4433 int (*compat_ioctl)(struct scsi_device * , int , void * ) ;
4434 int (*queuecommand)(struct Scsi_Host * , struct scsi_cmnd * ) ;
4435 int (*transfer_response)(struct scsi_cmnd * , void (*)(struct scsi_cmnd * ) ) ;
4436 int (*eh_abort_handler)(struct scsi_cmnd * ) ;
4437 int (*eh_device_reset_handler)(struct scsi_cmnd * ) ;
4438 int (*eh_target_reset_handler)(struct scsi_cmnd * ) ;
4439 int (*eh_bus_reset_handler)(struct scsi_cmnd * ) ;
4440 int (*eh_host_reset_handler)(struct scsi_cmnd * ) ;
4441 int (*slave_alloc)(struct scsi_device * ) ;
4442 int (*slave_configure)(struct scsi_device * ) ;
4443 void (*slave_destroy)(struct scsi_device * ) ;
4444 int (*target_alloc)(struct scsi_target * ) ;
4445 void (*target_destroy)(struct scsi_target * ) ;
4446 int (*scan_finished)(struct Scsi_Host * , unsigned long ) ;
4447 void (*scan_start)(struct Scsi_Host * ) ;
4448 int (*change_queue_depth)(struct scsi_device * , int , int ) ;
4449 int (*change_queue_type)(struct scsi_device * , int ) ;
4450 int (*bios_param)(struct scsi_device * , struct block_device * , sector_t , int * ) ;
4451 void (*unlock_native_capacity)(struct scsi_device * ) ;
4452 int (*proc_info)(struct Scsi_Host * , char * , char ** , off_t , int , int ) ;
4453 enum blk_eh_timer_return (*eh_timed_out)(struct scsi_cmnd * ) ;
4454 int (*host_reset)(struct Scsi_Host * , int ) ;
4455 char const *proc_name ;
4456 struct proc_dir_entry *proc_dir ;
4457 int can_queue ;
4458 int this_id ;
4459 unsigned short sg_tablesize ;
4460 unsigned short sg_prot_tablesize ;
4461 unsigned short max_sectors ;
4462 unsigned long dma_boundary ;
4463 short cmd_per_lun ;
4464 unsigned char present ;
4465 unsigned char supported_mode : 2 ;
4466 unsigned char unchecked_isa_dma : 1 ;
4467 unsigned char use_clustering : 1 ;
4468 unsigned char emulated : 1 ;
4469 unsigned char skip_settle_delay : 1 ;
4470 unsigned char ordered_tag : 1 ;
4471 unsigned int max_host_blocked ;
4472 struct device_attribute **shost_attrs ;
4473 struct device_attribute **sdev_attrs ;
4474 struct list_head legacy_hosts ;
4475 u64 vendor_id ;
4476};
4477#line 518 "include/scsi/scsi_host.h"
4478enum scsi_host_state {
4479 SHOST_CREATED = 1,
4480 SHOST_RUNNING = 2,
4481 SHOST_CANCEL = 3,
4482 SHOST_DEL = 4,
4483 SHOST_RECOVERY = 5,
4484 SHOST_CANCEL_RECOVERY = 6,
4485 SHOST_DEL_RECOVERY = 7
4486} ;
4487#line 528 "include/scsi/scsi_host.h"
4488struct Scsi_Host {
4489 struct list_head __devices ;
4490 struct list_head __targets ;
4491 struct scsi_host_cmd_pool *cmd_pool ;
4492 spinlock_t free_list_lock ;
4493 struct list_head free_list ;
4494 struct list_head starved_list ;
4495 spinlock_t default_lock ;
4496 spinlock_t *host_lock ;
4497 struct mutex scan_mutex ;
4498 struct list_head eh_cmd_q ;
4499 struct task_struct *ehandler ;
4500 struct completion *eh_action ;
4501 wait_queue_head_t host_wait ;
4502 struct scsi_host_template *hostt ;
4503 struct scsi_transport_template *transportt ;
4504 struct blk_queue_tag *bqt ;
4505 unsigned int host_busy ;
4506 unsigned int host_failed ;
4507 unsigned int host_eh_scheduled ;
4508 unsigned int host_no ;
4509 int resetting ;
4510 unsigned long last_reset ;
4511 unsigned int max_id ;
4512 unsigned int max_lun ;
4513 unsigned int max_channel ;
4514 unsigned int unique_id ;
4515 unsigned short max_cmd_len ;
4516 int this_id ;
4517 int can_queue ;
4518 short cmd_per_lun ;
4519 unsigned short sg_tablesize ;
4520 unsigned short sg_prot_tablesize ;
4521 unsigned short max_sectors ;
4522 unsigned long dma_boundary ;
4523 unsigned long cmd_serial_number ;
4524 unsigned char active_mode : 2 ;
4525 unsigned char unchecked_isa_dma : 1 ;
4526 unsigned char use_clustering : 1 ;
4527 unsigned char use_blk_tcq : 1 ;
4528 unsigned char host_self_blocked : 1 ;
4529 unsigned char reverse_ordering : 1 ;
4530 unsigned char ordered_tag : 1 ;
4531 unsigned char tmf_in_progress : 1 ;
4532 unsigned char async_scan : 1 ;
4533 unsigned char eh_noresume : 1 ;
4534 char work_q_name[20U] ;
4535 struct workqueue_struct *work_q ;
4536 unsigned int host_blocked ;
4537 unsigned int max_host_blocked ;
4538 unsigned int prot_capabilities ;
4539 unsigned char prot_guard_type ;
4540 struct request_queue *uspace_req_q ;
4541 unsigned long base ;
4542 unsigned long io_port ;
4543 unsigned char n_io_port ;
4544 unsigned char dma_channel ;
4545 unsigned int irq ;
4546 enum scsi_host_state shost_state ;
4547 struct device shost_gendev ;
4548 struct device shost_dev ;
4549 struct list_head sht_legacy_list ;
4550 void *shost_data ;
4551 struct device *dma_dev ;
4552 unsigned long hostdata[0U] ;
4553};
4554#line 11 "include/linux/socket.h"
4555typedef unsigned short __kernel_sa_family_t;
4556#line 40 "include/linux/socket.h"
4557typedef __kernel_sa_family_t sa_family_t;
4558#line 41 "include/linux/socket.h"
4559struct sockaddr {
4560 sa_family_t sa_family ;
4561 char sa_data[14U] ;
4562};
4563#line 55 "include/linux/socket.h"
4564struct msghdr {
4565 void *msg_name ;
4566 int msg_namelen ;
4567 struct iovec *msg_iov ;
4568 __kernel_size_t msg_iovlen ;
4569 void *msg_control ;
4570 __kernel_size_t msg_controllen ;
4571 unsigned int msg_flags ;
4572};
4573#line 335 "include/linux/in.h"
4574struct hlist_nulls_node;
4575#line 335 "include/linux/in.h"
4576struct hlist_nulls_head {
4577 struct hlist_nulls_node *first ;
4578};
4579#line 20 "include/linux/list_nulls.h"
4580struct hlist_nulls_node {
4581 struct hlist_nulls_node *next ;
4582 struct hlist_nulls_node **pprev ;
4583};
4584#line 41 "include/linux/hdlc/ioctl.h"
4585struct __anonstruct_sync_serial_settings_180 {
4586 unsigned int clock_rate ;
4587 unsigned int clock_type ;
4588 unsigned short loopback ;
4589};
4590#line 41 "include/linux/hdlc/ioctl.h"
4591typedef struct __anonstruct_sync_serial_settings_180 sync_serial_settings;
4592#line 48 "include/linux/hdlc/ioctl.h"
4593struct __anonstruct_te1_settings_181 {
4594 unsigned int clock_rate ;
4595 unsigned int clock_type ;
4596 unsigned short loopback ;
4597 unsigned int slot_map ;
4598};
4599#line 48 "include/linux/hdlc/ioctl.h"
4600typedef struct __anonstruct_te1_settings_181 te1_settings;
4601#line 53 "include/linux/hdlc/ioctl.h"
4602struct __anonstruct_raw_hdlc_proto_182 {
4603 unsigned short encoding ;
4604 unsigned short parity ;
4605};
4606#line 53 "include/linux/hdlc/ioctl.h"
4607typedef struct __anonstruct_raw_hdlc_proto_182 raw_hdlc_proto;
4608#line 63 "include/linux/hdlc/ioctl.h"
4609struct __anonstruct_fr_proto_183 {
4610 unsigned int t391 ;
4611 unsigned int t392 ;
4612 unsigned int n391 ;
4613 unsigned int n392 ;
4614 unsigned int n393 ;
4615 unsigned short lmi ;
4616 unsigned short dce ;
4617};
4618#line 63 "include/linux/hdlc/ioctl.h"
4619typedef struct __anonstruct_fr_proto_183 fr_proto;
4620#line 67 "include/linux/hdlc/ioctl.h"
4621struct __anonstruct_fr_proto_pvc_184 {
4622 unsigned int dlci ;
4623};
4624#line 67 "include/linux/hdlc/ioctl.h"
4625typedef struct __anonstruct_fr_proto_pvc_184 fr_proto_pvc;
4626#line 72 "include/linux/hdlc/ioctl.h"
4627struct __anonstruct_fr_proto_pvc_info_185 {
4628 unsigned int dlci ;
4629 char master[16U] ;
4630};
4631#line 72 "include/linux/hdlc/ioctl.h"
4632typedef struct __anonstruct_fr_proto_pvc_info_185 fr_proto_pvc_info;
4633#line 77 "include/linux/hdlc/ioctl.h"
4634struct __anonstruct_cisco_proto_186 {
4635 unsigned int interval ;
4636 unsigned int timeout ;
4637};
4638#line 77 "include/linux/hdlc/ioctl.h"
4639typedef struct __anonstruct_cisco_proto_186 cisco_proto;
4640#line 93 "include/linux/hdlc/ioctl.h"
4641struct ifmap {
4642 unsigned long mem_start ;
4643 unsigned long mem_end ;
4644 unsigned short base_addr ;
4645 unsigned char irq ;
4646 unsigned char dma ;
4647 unsigned char port ;
4648};
4649#line 148 "include/linux/if.h"
4650union __anonunion_ifs_ifsu_187 {
4651 raw_hdlc_proto *raw_hdlc ;
4652 cisco_proto *cisco ;
4653 fr_proto *fr ;
4654 fr_proto_pvc *fr_pvc ;
4655 fr_proto_pvc_info *fr_pvc_info ;
4656 sync_serial_settings *sync ;
4657 te1_settings *te1 ;
4658};
4659#line 148 "include/linux/if.h"
4660struct if_settings {
4661 unsigned int type ;
4662 unsigned int size ;
4663 union __anonunion_ifs_ifsu_187 ifs_ifsu ;
4664};
4665#line 166 "include/linux/if.h"
4666union __anonunion_ifr_ifrn_188 {
4667 char ifrn_name[16U] ;
4668};
4669#line 166 "include/linux/if.h"
4670union __anonunion_ifr_ifru_189 {
4671 struct sockaddr ifru_addr ;
4672 struct sockaddr ifru_dstaddr ;
4673 struct sockaddr ifru_broadaddr ;
4674 struct sockaddr ifru_netmask ;
4675 struct sockaddr ifru_hwaddr ;
4676 short ifru_flags ;
4677 int ifru_ivalue ;
4678 int ifru_mtu ;
4679 struct ifmap ifru_map ;
4680 char ifru_slave[16U] ;
4681 char ifru_newname[16U] ;
4682 void *ifru_data ;
4683 struct if_settings ifru_settings ;
4684};
4685#line 166 "include/linux/if.h"
4686struct ifreq {
4687 union __anonunion_ifr_ifrn_188 ifr_ifrn ;
4688 union __anonunion_ifr_ifru_189 ifr_ifru ;
4689};
4690#line 230 "include/linux/if.h"
4691struct ethhdr {
4692 unsigned char h_dest[6U] ;
4693 unsigned char h_source[6U] ;
4694 __be16 h_proto ;
4695};
4696#line 132 "include/linux/if_ether.h"
4697enum ldv_22805 {
4698 SS_FREE = 0,
4699 SS_UNCONNECTED = 1,
4700 SS_CONNECTING = 2,
4701 SS_CONNECTED = 3,
4702 SS_DISCONNECTING = 4
4703} ;
4704#line 53 "include/linux/net.h"
4705typedef enum ldv_22805 socket_state;
4706#line 74 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/archrandom.h"
4707struct net;
4708#line 74
4709struct net;
4710#line 91 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/archrandom.h"
4711struct socket_wq {
4712 wait_queue_head_t wait ;
4713 struct fasync_struct *fasync_list ;
4714 struct rcu_head rcu ;
4715};
4716#line 127 "include/linux/net.h"
4717struct proto_ops;
4718#line 127 "include/linux/net.h"
4719struct socket {
4720 socket_state state ;
4721 short type ;
4722 unsigned long flags ;
4723 struct socket_wq *wq ;
4724 struct file *file ;
4725 struct sock *sk ;
4726 struct proto_ops const *ops ;
4727};
4728#line 153 "include/linux/net.h"
4729struct proto_ops {
4730 int family ;
4731 struct module *owner ;
4732 int (*release)(struct socket * ) ;
4733 int (*bind)(struct socket * , struct sockaddr * , int ) ;
4734 int (*connect)(struct socket * , struct sockaddr * , int , int ) ;
4735 int (*socketpair)(struct socket * , struct socket * ) ;
4736 int (*accept)(struct socket * , struct socket * , int ) ;
4737 int (*getname)(struct socket * , struct sockaddr * , int * , int ) ;
4738 unsigned int (*poll)(struct file * , struct socket * , struct poll_table_struct * ) ;
4739 int (*ioctl)(struct socket * , unsigned int , unsigned long ) ;
4740 int (*compat_ioctl)(struct socket * , unsigned int , unsigned long ) ;
4741 int (*listen)(struct socket * , int ) ;
4742 int (*shutdown)(struct socket * , int ) ;
4743 int (*setsockopt)(struct socket * , int , int , char * , unsigned int ) ;
4744 int (*getsockopt)(struct socket * , int , int , char * , int * ) ;
4745 int (*compat_setsockopt)(struct socket * , int , int , char * , unsigned int ) ;
4746 int (*compat_getsockopt)(struct socket * , int , int , char * , int * ) ;
4747 int (*sendmsg)(struct kiocb * , struct socket * , struct msghdr * , size_t ) ;
4748 int (*recvmsg)(struct kiocb * , struct socket * , struct msghdr * , size_t , int ) ;
4749 int (*mmap)(struct file * , struct socket * , struct vm_area_struct * ) ;
4750 ssize_t (*sendpage)(struct socket * , struct page * , int , size_t , int ) ;
4751 ssize_t (*splice_read)(struct socket * , loff_t * , struct pipe_inode_info * ,
4752 size_t , unsigned int ) ;
4753 void (*set_peek_off)(struct sock * , int ) ;
4754};
4755#line 161 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/checksum_64.h"
4756struct in6_addr;
4757#line 161
4758struct in6_addr;
4759#line 108 "include/net/checksum.h"
4760struct sk_buff;
4761#line 108
4762struct sk_buff;
4763#line 37 "include/linux/dmaengine.h"
4764typedef s32 dma_cookie_t;
4765#line 15 "include/linux/netdev_features.h"
4766typedef u64 netdev_features_t;
4767#line 56 "include/linux/netdev_features.h"
4768struct nf_conntrack {
4769 atomic_t use ;
4770};
4771#line 116 "include/linux/skbuff.h"
4772struct nf_bridge_info {
4773 atomic_t use ;
4774 struct net_device *physindev ;
4775 struct net_device *physoutdev ;
4776 unsigned int mask ;
4777 unsigned long data[4U] ;
4778};
4779#line 126 "include/linux/skbuff.h"
4780struct sk_buff_head {
4781 struct sk_buff *next ;
4782 struct sk_buff *prev ;
4783 __u32 qlen ;
4784 spinlock_t lock ;
4785};
4786#line 318 "include/linux/skbuff.h"
4787typedef unsigned int sk_buff_data_t;
4788#line 319
4789struct sec_path;
4790#line 319 "include/linux/skbuff.h"
4791struct __anonstruct_ldv_30867_194 {
4792 __u16 csum_start ;
4793 __u16 csum_offset ;
4794};
4795#line 319 "include/linux/skbuff.h"
4796union __anonunion_ldv_30868_193 {
4797 __wsum csum ;
4798 struct __anonstruct_ldv_30867_194 ldv_30867 ;
4799};
4800#line 319 "include/linux/skbuff.h"
4801union __anonunion_ldv_30904_195 {
4802 __u32 mark ;
4803 __u32 dropcount ;
4804 __u32 avail_size ;
4805};
4806#line 319 "include/linux/skbuff.h"
4807struct sk_buff {
4808 struct sk_buff *next ;
4809 struct sk_buff *prev ;
4810 ktime_t tstamp ;
4811 struct sock *sk ;
4812 struct net_device *dev ;
4813 char cb[48U] ;
4814 unsigned long _skb_refdst ;
4815 struct sec_path *sp ;
4816 unsigned int len ;
4817 unsigned int data_len ;
4818 __u16 mac_len ;
4819 __u16 hdr_len ;
4820 union __anonunion_ldv_30868_193 ldv_30868 ;
4821 __u32 priority ;
4822 unsigned char local_df : 1 ;
4823 unsigned char cloned : 1 ;
4824 unsigned char ip_summed : 2 ;
4825 unsigned char nohdr : 1 ;
4826 unsigned char nfctinfo : 3 ;
4827 unsigned char pkt_type : 3 ;
4828 unsigned char fclone : 2 ;
4829 unsigned char ipvs_property : 1 ;
4830 unsigned char peeked : 1 ;
4831 unsigned char nf_trace : 1 ;
4832 __be16 protocol ;
4833 void (*destructor)(struct sk_buff * ) ;
4834 struct nf_conntrack *nfct ;
4835 struct sk_buff *nfct_reasm ;
4836 struct nf_bridge_info *nf_bridge ;
4837 int skb_iif ;
4838 __u32 rxhash ;
4839 __u16 vlan_tci ;
4840 __u16 tc_index ;
4841 __u16 tc_verd ;
4842 __u16 queue_mapping ;
4843 unsigned char ndisc_nodetype : 2 ;
4844 unsigned char ooo_okay : 1 ;
4845 unsigned char l4_rxhash : 1 ;
4846 unsigned char wifi_acked_valid : 1 ;
4847 unsigned char wifi_acked : 1 ;
4848 unsigned char no_fcs : 1 ;
4849 dma_cookie_t dma_cookie ;
4850 __u32 secmark ;
4851 union __anonunion_ldv_30904_195 ldv_30904 ;
4852 sk_buff_data_t transport_header ;
4853 sk_buff_data_t network_header ;
4854 sk_buff_data_t mac_header ;
4855 sk_buff_data_t tail ;
4856 sk_buff_data_t end ;
4857 unsigned char *head ;
4858 unsigned char *data ;
4859 unsigned int truesize ;
4860 atomic_t users ;
4861};
4862#line 520
4863struct dst_entry;
4864#line 555
4865struct rtable;
4866#line 117 "include/linux/netlink.h"
4867struct nlattr {
4868 __u16 nla_len ;
4869 __u16 nla_type ;
4870};
4871#line 39 "include/linux/if_link.h"
4872struct rtnl_link_stats64 {
4873 __u64 rx_packets ;
4874 __u64 tx_packets ;
4875 __u64 rx_bytes ;
4876 __u64 tx_bytes ;
4877 __u64 rx_errors ;
4878 __u64 tx_errors ;
4879 __u64 rx_dropped ;
4880 __u64 tx_dropped ;
4881 __u64 multicast ;
4882 __u64 collisions ;
4883 __u64 rx_length_errors ;
4884 __u64 rx_over_errors ;
4885 __u64 rx_crc_errors ;
4886 __u64 rx_frame_errors ;
4887 __u64 rx_fifo_errors ;
4888 __u64 rx_missed_errors ;
4889 __u64 tx_aborted_errors ;
4890 __u64 tx_carrier_errors ;
4891 __u64 tx_fifo_errors ;
4892 __u64 tx_heartbeat_errors ;
4893 __u64 tx_window_errors ;
4894 __u64 rx_compressed ;
4895 __u64 tx_compressed ;
4896};
4897#line 309 "include/linux/if_link.h"
4898struct ifla_vf_info {
4899 __u32 vf ;
4900 __u8 mac[32U] ;
4901 __u32 vlan ;
4902 __u32 qos ;
4903 __u32 tx_rate ;
4904 __u32 spoofchk ;
4905};
4906#line 71 "include/linux/miscdevice.h"
4907struct pm_qos_request {
4908 struct plist_node node ;
4909 int pm_qos_class ;
4910 struct delayed_work work ;
4911};
4912#line 35 "include/linux/pm_qos.h"
4913struct dev_pm_qos_request {
4914 struct plist_node node ;
4915 struct device *dev ;
4916};
4917#line 40
4918enum pm_qos_type {
4919 PM_QOS_UNITIALIZED = 0,
4920 PM_QOS_MAX = 1,
4921 PM_QOS_MIN = 2
4922} ;
4923#line 46 "include/linux/pm_qos.h"
4924struct pm_qos_constraints {
4925 struct plist_head list ;
4926 s32 target_value ;
4927 s32 default_value ;
4928 enum pm_qos_type type ;
4929 struct blocking_notifier_head *notifiers ;
4930};
4931#line 54 "include/linux/delay.h"
4932struct dql {
4933 unsigned int num_queued ;
4934 unsigned int adj_limit ;
4935 unsigned int last_obj_cnt ;
4936 unsigned int limit ;
4937 unsigned int num_completed ;
4938 unsigned int prev_ovlimit ;
4939 unsigned int prev_num_queued ;
4940 unsigned int prev_last_obj_cnt ;
4941 unsigned int lowest_slack ;
4942 unsigned long slack_start_time ;
4943 unsigned int max_limit ;
4944 unsigned int min_limit ;
4945 unsigned int slack_hold_time ;
4946};
4947#line 39 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/compat.h"
4948typedef s32 compat_long_t;
4949#line 212 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/compat.h"
4950typedef u32 compat_uptr_t;
4951#line 225 "include/linux/compat.h"
4952struct compat_robust_list {
4953 compat_uptr_t next ;
4954};
4955#line 229 "include/linux/compat.h"
4956struct compat_robust_list_head {
4957 struct compat_robust_list list ;
4958 compat_long_t futex_offset ;
4959 compat_uptr_t list_op_pending ;
4960};
4961#line 590 "include/linux/compat.h"
4962struct ethtool_cmd {
4963 __u32 cmd ;
4964 __u32 supported ;
4965 __u32 advertising ;
4966 __u16 speed ;
4967 __u8 duplex ;
4968 __u8 port ;
4969 __u8 phy_address ;
4970 __u8 transceiver ;
4971 __u8 autoneg ;
4972 __u8 mdio_support ;
4973 __u32 maxtxpkt ;
4974 __u32 maxrxpkt ;
4975 __u16 speed_hi ;
4976 __u8 eth_tp_mdix ;
4977 __u8 reserved2 ;
4978 __u32 lp_advertising ;
4979 __u32 reserved[2U] ;
4980};
4981#line 66 "include/linux/ethtool.h"
4982struct ethtool_drvinfo {
4983 __u32 cmd ;
4984 char driver[32U] ;
4985 char version[32U] ;
4986 char fw_version[32U] ;
4987 char bus_info[32U] ;
4988 char reserved1[32U] ;
4989 char reserved2[12U] ;
4990 __u32 n_priv_flags ;
4991 __u32 n_stats ;
4992 __u32 testinfo_len ;
4993 __u32 eedump_len ;
4994 __u32 regdump_len ;
4995};
4996#line 106 "include/linux/ethtool.h"
4997struct ethtool_wolinfo {
4998 __u32 cmd ;
4999 __u32 supported ;
5000 __u32 wolopts ;
5001 __u8 sopass[6U] ;
5002};
5003#line 121 "include/linux/ethtool.h"
5004struct ethtool_regs {
5005 __u32 cmd ;
5006 __u32 version ;
5007 __u32 len ;
5008 __u8 data[0U] ;
5009};
5010#line 129 "include/linux/ethtool.h"
5011struct ethtool_eeprom {
5012 __u32 cmd ;
5013 __u32 magic ;
5014 __u32 offset ;
5015 __u32 len ;
5016 __u8 data[0U] ;
5017};
5018#line 138 "include/linux/ethtool.h"
5019struct ethtool_coalesce {
5020 __u32 cmd ;
5021 __u32 rx_coalesce_usecs ;
5022 __u32 rx_max_coalesced_frames ;
5023 __u32 rx_coalesce_usecs_irq ;
5024 __u32 rx_max_coalesced_frames_irq ;
5025 __u32 tx_coalesce_usecs ;
5026 __u32 tx_max_coalesced_frames ;
5027 __u32 tx_coalesce_usecs_irq ;
5028 __u32 tx_max_coalesced_frames_irq ;
5029 __u32 stats_block_coalesce_usecs ;
5030 __u32 use_adaptive_rx_coalesce ;
5031 __u32 use_adaptive_tx_coalesce ;
5032 __u32 pkt_rate_low ;
5033 __u32 rx_coalesce_usecs_low ;
5034 __u32 rx_max_coalesced_frames_low ;
5035 __u32 tx_coalesce_usecs_low ;
5036 __u32 tx_max_coalesced_frames_low ;
5037 __u32 pkt_rate_high ;
5038 __u32 rx_coalesce_usecs_high ;
5039 __u32 rx_max_coalesced_frames_high ;
5040 __u32 tx_coalesce_usecs_high ;
5041 __u32 tx_max_coalesced_frames_high ;
5042 __u32 rate_sample_interval ;
5043};
5044#line 236 "include/linux/ethtool.h"
5045struct ethtool_ringparam {
5046 __u32 cmd ;
5047 __u32 rx_max_pending ;
5048 __u32 rx_mini_max_pending ;
5049 __u32 rx_jumbo_max_pending ;
5050 __u32 tx_max_pending ;
5051 __u32 rx_pending ;
5052 __u32 rx_mini_pending ;
5053 __u32 rx_jumbo_pending ;
5054 __u32 tx_pending ;
5055};
5056#line 258 "include/linux/ethtool.h"
5057struct ethtool_channels {
5058 __u32 cmd ;
5059 __u32 max_rx ;
5060 __u32 max_tx ;
5061 __u32 max_other ;
5062 __u32 max_combined ;
5063 __u32 rx_count ;
5064 __u32 tx_count ;
5065 __u32 other_count ;
5066 __u32 combined_count ;
5067};
5068#line 286 "include/linux/ethtool.h"
5069struct ethtool_pauseparam {
5070 __u32 cmd ;
5071 __u32 autoneg ;
5072 __u32 rx_pause ;
5073 __u32 tx_pause ;
5074};
5075#line 337 "include/linux/ethtool.h"
5076struct ethtool_test {
5077 __u32 cmd ;
5078 __u32 flags ;
5079 __u32 reserved ;
5080 __u32 len ;
5081 __u64 data[0U] ;
5082};
5083#line 359 "include/linux/ethtool.h"
5084struct ethtool_stats {
5085 __u32 cmd ;
5086 __u32 n_stats ;
5087 __u64 data[0U] ;
5088};
5089#line 380 "include/linux/ethtool.h"
5090struct ethtool_tcpip4_spec {
5091 __be32 ip4src ;
5092 __be32 ip4dst ;
5093 __be16 psrc ;
5094 __be16 pdst ;
5095 __u8 tos ;
5096};
5097#line 413 "include/linux/ethtool.h"
5098struct ethtool_ah_espip4_spec {
5099 __be32 ip4src ;
5100 __be32 ip4dst ;
5101 __be32 spi ;
5102 __u8 tos ;
5103};
5104#line 429 "include/linux/ethtool.h"
5105struct ethtool_usrip4_spec {
5106 __be32 ip4src ;
5107 __be32 ip4dst ;
5108 __be32 l4_4_bytes ;
5109 __u8 tos ;
5110 __u8 ip_ver ;
5111 __u8 proto ;
5112};
5113#line 449 "include/linux/ethtool.h"
5114union ethtool_flow_union {
5115 struct ethtool_tcpip4_spec tcp_ip4_spec ;
5116 struct ethtool_tcpip4_spec udp_ip4_spec ;
5117 struct ethtool_tcpip4_spec sctp_ip4_spec ;
5118 struct ethtool_ah_espip4_spec ah_ip4_spec ;
5119 struct ethtool_ah_espip4_spec esp_ip4_spec ;
5120 struct ethtool_usrip4_spec usr_ip4_spec ;
5121 struct ethhdr ether_spec ;
5122 __u8 hdata[60U] ;
5123};
5124#line 460 "include/linux/ethtool.h"
5125struct ethtool_flow_ext {
5126 __be16 vlan_etype ;
5127 __be16 vlan_tci ;
5128 __be32 data[2U] ;
5129};
5130#line 466 "include/linux/ethtool.h"
5131struct ethtool_rx_flow_spec {
5132 __u32 flow_type ;
5133 union ethtool_flow_union h_u ;
5134 struct ethtool_flow_ext h_ext ;
5135 union ethtool_flow_union m_u ;
5136 struct ethtool_flow_ext m_ext ;
5137 __u64 ring_cookie ;
5138 __u32 location ;
5139};
5140#line 491 "include/linux/ethtool.h"
5141struct ethtool_rxnfc {
5142 __u32 cmd ;
5143 __u32 flow_type ;
5144 __u64 data ;
5145 struct ethtool_rx_flow_spec fs ;
5146 __u32 rule_cnt ;
5147 __u32 rule_locs[0U] ;
5148};
5149#line 649 "include/linux/ethtool.h"
5150struct ethtool_flash {
5151 __u32 cmd ;
5152 __u32 region ;
5153 char data[128U] ;
5154};
5155#line 657 "include/linux/ethtool.h"
5156struct ethtool_dump {
5157 __u32 cmd ;
5158 __u32 version ;
5159 __u32 flag ;
5160 __u32 len ;
5161 __u8 data[0U] ;
5162};
5163#line 769
5164enum ethtool_phys_id_state {
5165 ETHTOOL_ID_INACTIVE = 0,
5166 ETHTOOL_ID_ACTIVE = 1,
5167 ETHTOOL_ID_ON = 2,
5168 ETHTOOL_ID_OFF = 3
5169} ;
5170#line 803 "include/linux/ethtool.h"
5171struct ethtool_ops {
5172 int (*get_settings)(struct net_device * , struct ethtool_cmd * ) ;
5173 int (*set_settings)(struct net_device * , struct ethtool_cmd * ) ;
5174 void (*get_drvinfo)(struct net_device * , struct ethtool_drvinfo * ) ;
5175 int (*get_regs_len)(struct net_device * ) ;
5176 void (*get_regs)(struct net_device * , struct ethtool_regs * , void * ) ;
5177 void (*get_wol)(struct net_device * , struct ethtool_wolinfo * ) ;
5178 int (*set_wol)(struct net_device * , struct ethtool_wolinfo * ) ;
5179 u32 (*get_msglevel)(struct net_device * ) ;
5180 void (*set_msglevel)(struct net_device * , u32 ) ;
5181 int (*nway_reset)(struct net_device * ) ;
5182 u32 (*get_link)(struct net_device * ) ;
5183 int (*get_eeprom_len)(struct net_device * ) ;
5184 int (*get_eeprom)(struct net_device * , struct ethtool_eeprom * , u8 * ) ;
5185 int (*set_eeprom)(struct net_device * , struct ethtool_eeprom * , u8 * ) ;
5186 int (*get_coalesce)(struct net_device * , struct ethtool_coalesce * ) ;
5187 int (*set_coalesce)(struct net_device * , struct ethtool_coalesce * ) ;
5188 void (*get_ringparam)(struct net_device * , struct ethtool_ringparam * ) ;
5189 int (*set_ringparam)(struct net_device * , struct ethtool_ringparam * ) ;
5190 void (*get_pauseparam)(struct net_device * , struct ethtool_pauseparam * ) ;
5191 int (*set_pauseparam)(struct net_device * , struct ethtool_pauseparam * ) ;
5192 void (*self_test)(struct net_device * , struct ethtool_test * , u64 * ) ;
5193 void (*get_strings)(struct net_device * , u32 , u8 * ) ;
5194 int (*set_phys_id)(struct net_device * , enum ethtool_phys_id_state ) ;
5195 void (*get_ethtool_stats)(struct net_device * , struct ethtool_stats * , u64 * ) ;
5196 int (*begin)(struct net_device * ) ;
5197 void (*complete)(struct net_device * ) ;
5198 u32 (*get_priv_flags)(struct net_device * ) ;
5199 int (*set_priv_flags)(struct net_device * , u32 ) ;
5200 int (*get_sset_count)(struct net_device * , int ) ;
5201 int (*get_rxnfc)(struct net_device * , struct ethtool_rxnfc * , u32 * ) ;
5202 int (*set_rxnfc)(struct net_device * , struct ethtool_rxnfc * ) ;
5203 int (*flash_device)(struct net_device * , struct ethtool_flash * ) ;
5204 int (*reset)(struct net_device * , u32 * ) ;
5205 u32 (*get_rxfh_indir_size)(struct net_device * ) ;
5206 int (*get_rxfh_indir)(struct net_device * , u32 * ) ;
5207 int (*set_rxfh_indir)(struct net_device * , u32 const * ) ;
5208 void (*get_channels)(struct net_device * , struct ethtool_channels * ) ;
5209 int (*set_channels)(struct net_device * , struct ethtool_channels * ) ;
5210 int (*get_dump_flag)(struct net_device * , struct ethtool_dump * ) ;
5211 int (*get_dump_data)(struct net_device * , struct ethtool_dump * , void * ) ;
5212 int (*set_dump)(struct net_device * , struct ethtool_dump * ) ;
5213};
5214#line 971
5215struct prot_inuse;
5216#line 971
5217struct prot_inuse;
5218#line 972 "include/linux/ethtool.h"
5219struct netns_core {
5220 struct ctl_table_header *sysctl_hdr ;
5221 int sysctl_somaxconn ;
5222 struct prot_inuse *inuse ;
5223};
5224#line 38 "include/net/snmp.h"
5225struct u64_stats_sync {
5226
5227};
5228#line 138 "include/linux/u64_stats_sync.h"
5229struct ipstats_mib {
5230 u64 mibs[31U] ;
5231 struct u64_stats_sync syncp ;
5232};
5233#line 61 "include/net/snmp.h"
5234struct icmp_mib {
5235 unsigned long mibs[27U] ;
5236};
5237#line 67 "include/net/snmp.h"
5238struct icmpmsg_mib {
5239 atomic_long_t mibs[512U] ;
5240};
5241#line 72 "include/net/snmp.h"
5242struct icmpv6_mib {
5243 unsigned long mibs[5U] ;
5244};
5245#line 79 "include/net/snmp.h"
5246struct icmpv6_mib_device {
5247 atomic_long_t mibs[5U] ;
5248};
5249#line 83 "include/net/snmp.h"
5250struct icmpv6msg_mib {
5251 atomic_long_t mibs[512U] ;
5252};
5253#line 89 "include/net/snmp.h"
5254struct icmpv6msg_mib_device {
5255 atomic_long_t mibs[512U] ;
5256};
5257#line 93 "include/net/snmp.h"
5258struct tcp_mib {
5259 unsigned long mibs[15U] ;
5260};
5261#line 100 "include/net/snmp.h"
5262struct udp_mib {
5263 unsigned long mibs[7U] ;
5264};
5265#line 106 "include/net/snmp.h"
5266struct linux_mib {
5267 unsigned long mibs[83U] ;
5268};
5269#line 112 "include/net/snmp.h"
5270struct linux_xfrm_mib {
5271 unsigned long mibs[27U] ;
5272};
5273#line 118 "include/net/snmp.h"
5274struct netns_mib {
5275 struct tcp_mib *tcp_statistics[1U] ;
5276 struct ipstats_mib *ip_statistics[1U] ;
5277 struct linux_mib *net_statistics[1U] ;
5278 struct udp_mib *udp_statistics[1U] ;
5279 struct udp_mib *udplite_statistics[1U] ;
5280 struct icmp_mib *icmp_statistics[1U] ;
5281 struct icmpmsg_mib *icmpmsg_statistics ;
5282 struct proc_dir_entry *proc_net_devsnmp6 ;
5283 struct udp_mib *udp_stats_in6[1U] ;
5284 struct udp_mib *udplite_stats_in6[1U] ;
5285 struct ipstats_mib *ipv6_statistics[1U] ;
5286 struct icmpv6_mib *icmpv6_statistics[1U] ;
5287 struct icmpv6msg_mib *icmpv6msg_statistics ;
5288 struct linux_xfrm_mib *xfrm_statistics[1U] ;
5289};
5290#line 26 "include/net/netns/mib.h"
5291struct netns_unix {
5292 int sysctl_max_dgram_qlen ;
5293 struct ctl_table_header *ctl ;
5294};
5295#line 12 "include/net/netns/unix.h"
5296struct netns_packet {
5297 spinlock_t sklist_lock ;
5298 struct hlist_head sklist ;
5299};
5300#line 14 "include/net/netns/packet.h"
5301struct netns_frags {
5302 int nqueues ;
5303 atomic_t mem ;
5304 struct list_head lru_list ;
5305 int timeout ;
5306 int high_thresh ;
5307 int low_thresh ;
5308};
5309#line 73 "include/net/inet_frag.h"
5310struct ipv4_devconf;
5311#line 73
5312struct ipv4_devconf;
5313#line 74
5314struct fib_rules_ops;
5315#line 74
5316struct fib_rules_ops;
5317#line 75
5318struct xt_table;
5319#line 75 "include/net/inet_frag.h"
5320struct netns_ipv4 {
5321 struct ctl_table_header *forw_hdr ;
5322 struct ctl_table_header *frags_hdr ;
5323 struct ctl_table_header *ipv4_hdr ;
5324 struct ctl_table_header *route_hdr ;
5325 struct ipv4_devconf *devconf_all ;
5326 struct ipv4_devconf *devconf_dflt ;
5327 struct fib_rules_ops *rules_ops ;
5328 struct hlist_head *fib_table_hash ;
5329 struct sock *fibnl ;
5330 struct sock **icmp_sk ;
5331 struct sock *tcp_sock ;
5332 struct netns_frags frags ;
5333 struct xt_table *iptable_filter ;
5334 struct xt_table *iptable_mangle ;
5335 struct xt_table *iptable_raw ;
5336 struct xt_table *arptable_filter ;
5337 struct xt_table *iptable_security ;
5338 struct xt_table *nat_table ;
5339 struct hlist_head *nat_bysource ;
5340 unsigned int nat_htable_size ;
5341 int sysctl_icmp_echo_ignore_all ;
5342 int sysctl_icmp_echo_ignore_broadcasts ;
5343 int sysctl_icmp_ignore_bogus_error_responses ;
5344 int sysctl_icmp_ratelimit ;
5345 int sysctl_icmp_ratemask ;
5346 int sysctl_icmp_errors_use_inbound_ifaddr ;
5347 int sysctl_rt_cache_rebuild_count ;
5348 int current_rt_cache_rebuild_count ;
5349 unsigned int sysctl_ping_group_range[2U] ;
5350 long sysctl_tcp_mem[3U] ;
5351 atomic_t rt_genid ;
5352 atomic_t dev_addr_genid ;
5353 struct list_head mr_tables ;
5354 struct fib_rules_ops *mr_rules_ops ;
5355};
5356#line 71 "include/net/netns/ipv4.h"
5357struct neighbour;
5358#line 71 "include/net/netns/ipv4.h"
5359struct dst_ops {
5360 unsigned short family ;
5361 __be16 protocol ;
5362 unsigned int gc_thresh ;
5363 int (*gc)(struct dst_ops * ) ;
5364 struct dst_entry *(*check)(struct dst_entry * , __u32 ) ;
5365 unsigned int (*default_advmss)(struct dst_entry const * ) ;
5366 unsigned int (*mtu)(struct dst_entry const * ) ;
5367 u32 *(*cow_metrics)(struct dst_entry * , unsigned long ) ;
5368 void (*destroy)(struct dst_entry * ) ;
5369 void (*ifdown)(struct dst_entry * , struct net_device * , int ) ;
5370 struct dst_entry *(*negative_advice)(struct dst_entry * ) ;
5371 void (*link_failure)(struct sk_buff * ) ;
5372 void (*update_pmtu)(struct dst_entry * , u32 ) ;
5373 int (*local_out)(struct sk_buff * ) ;
5374 struct neighbour *(*neigh_lookup)(struct dst_entry const * , void const * ) ;
5375 struct kmem_cache *kmem_cachep ;
5376 struct percpu_counter pcpuc_entries ;
5377};
5378#line 67 "include/net/dst_ops.h"
5379struct netns_sysctl_ipv6 {
5380 struct ctl_table_header *table ;
5381 struct ctl_table_header *frags_hdr ;
5382 int bindv6only ;
5383 int flush_delay ;
5384 int ip6_rt_max_size ;
5385 int ip6_rt_gc_min_interval ;
5386 int ip6_rt_gc_timeout ;
5387 int ip6_rt_gc_interval ;
5388 int ip6_rt_gc_elasticity ;
5389 int ip6_rt_mtu_expires ;
5390 int ip6_rt_min_advmss ;
5391 int icmpv6_time ;
5392};
5393#line 29 "include/net/netns/ipv6.h"
5394struct ipv6_devconf;
5395#line 29
5396struct rt6_info;
5397#line 29
5398struct rt6_statistics;
5399#line 29
5400struct fib6_table;
5401#line 29 "include/net/netns/ipv6.h"
5402struct netns_ipv6 {
5403 struct netns_sysctl_ipv6 sysctl ;
5404 struct ipv6_devconf *devconf_all ;
5405 struct ipv6_devconf *devconf_dflt ;
5406 struct netns_frags frags ;
5407 struct xt_table *ip6table_filter ;
5408 struct xt_table *ip6table_mangle ;
5409 struct xt_table *ip6table_raw ;
5410 struct xt_table *ip6table_security ;
5411 struct rt6_info *ip6_null_entry ;
5412 struct rt6_statistics *rt6_stats ;
5413 struct timer_list ip6_fib_timer ;
5414 struct hlist_head *fib_table_hash ;
5415 struct fib6_table *fib6_main_tbl ;
5416 struct dst_ops ip6_dst_ops ;
5417 unsigned int ip6_rt_gc_expire ;
5418 unsigned long ip6_rt_last_gc ;
5419 struct rt6_info *ip6_prohibit_entry ;
5420 struct rt6_info *ip6_blk_hole_entry ;
5421 struct fib6_table *fib6_local_tbl ;
5422 struct fib_rules_ops *fib6_rules_ops ;
5423 struct sock **icmp_sk ;
5424 struct sock *ndisc_sk ;
5425 struct sock *tcp_sk ;
5426 struct sock *igmp_sk ;
5427 struct list_head mr6_tables ;
5428 struct fib_rules_ops *mr6_rules_ops ;
5429};
5430#line 68 "include/net/netns/ipv6.h"
5431struct netns_dccp {
5432 struct sock *v4_ctl_sk ;
5433 struct sock *v6_ctl_sk ;
5434};
5435#line 10 "include/net/netns/dccp.h"
5436union __anonunion_in6_u_205 {
5437 __u8 u6_addr8[16U] ;
5438 __be16 u6_addr16[8U] ;
5439 __be32 u6_addr32[4U] ;
5440};
5441#line 10 "include/net/netns/dccp.h"
5442struct in6_addr {
5443 union __anonunion_in6_u_205 in6_u ;
5444};
5445#line 46 "include/linux/proc_fs.h"
5446typedef int read_proc_t(char * , char ** , off_t , int , int * , void * );
5447#line 48 "include/linux/proc_fs.h"
5448typedef int write_proc_t(struct file * , char const * , unsigned long , void * );
5449#line 49 "include/linux/proc_fs.h"
5450struct proc_dir_entry {
5451 unsigned int low_ino ;
5452 umode_t mode ;
5453 nlink_t nlink ;
5454 uid_t uid ;
5455 gid_t gid ;
5456 loff_t size ;
5457 struct inode_operations const *proc_iops ;
5458 struct file_operations const *proc_fops ;
5459 struct proc_dir_entry *next ;
5460 struct proc_dir_entry *parent ;
5461 struct proc_dir_entry *subdir ;
5462 void *data ;
5463 read_proc_t *read_proc ;
5464 write_proc_t *write_proc ;
5465 atomic_t count ;
5466 int pde_users ;
5467 struct completion *pde_unload_completion ;
5468 struct list_head pde_openers ;
5469 spinlock_t pde_unload_lock ;
5470 u8 namelen ;
5471 char name[0U] ;
5472};
5473#line 392 "include/linux/netfilter.h"
5474struct ebt_table;
5475#line 392
5476struct ebt_table;
5477#line 393 "include/linux/netfilter.h"
5478struct netns_xt {
5479 struct list_head tables[13U] ;
5480 struct ebt_table *broute_table ;
5481 struct ebt_table *frame_filter ;
5482 struct ebt_table *frame_nat ;
5483};
5484#line 18 "include/net/netns/x_tables.h"
5485struct ip_conntrack_stat;
5486#line 18
5487struct nf_ct_event_notifier;
5488#line 18
5489struct nf_exp_event_notifier;
5490#line 18 "include/net/netns/x_tables.h"
5491struct netns_ct {
5492 atomic_t count ;
5493 unsigned int expect_count ;
5494 unsigned int htable_size ;
5495 struct kmem_cache *nf_conntrack_cachep ;
5496 struct hlist_nulls_head *hash ;
5497 struct hlist_head *expect_hash ;
5498 struct hlist_nulls_head unconfirmed ;
5499 struct hlist_nulls_head dying ;
5500 struct ip_conntrack_stat *stat ;
5501 struct nf_ct_event_notifier *nf_conntrack_event_cb ;
5502 struct nf_exp_event_notifier *nf_expect_event_cb ;
5503 int sysctl_events ;
5504 unsigned int sysctl_events_retry_timeout ;
5505 int sysctl_acct ;
5506 int sysctl_tstamp ;
5507 int sysctl_checksum ;
5508 unsigned int sysctl_log_invalid ;
5509 struct ctl_table_header *sysctl_header ;
5510 struct ctl_table_header *acct_sysctl_header ;
5511 struct ctl_table_header *tstamp_sysctl_header ;
5512 struct ctl_table_header *event_sysctl_header ;
5513 char *slabname ;
5514};
5515#line 484 "include/linux/xfrm.h"
5516struct xfrm_policy_hash {
5517 struct hlist_head *table ;
5518 unsigned int hmask ;
5519};
5520#line 16 "include/net/netns/xfrm.h"
5521struct netns_xfrm {
5522 struct list_head state_all ;
5523 struct hlist_head *state_bydst ;
5524 struct hlist_head *state_bysrc ;
5525 struct hlist_head *state_byspi ;
5526 unsigned int state_hmask ;
5527 unsigned int state_num ;
5528 struct work_struct state_hash_work ;
5529 struct hlist_head state_gc_list ;
5530 struct work_struct state_gc_work ;
5531 wait_queue_head_t km_waitq ;
5532 struct list_head policy_all ;
5533 struct hlist_head *policy_byidx ;
5534 unsigned int policy_idx_hmask ;
5535 struct hlist_head policy_inexact[6U] ;
5536 struct xfrm_policy_hash policy_bydst[6U] ;
5537 unsigned int policy_count[6U] ;
5538 struct work_struct policy_hash_work ;
5539 struct sock *nlsk ;
5540 struct sock *nlsk_stash ;
5541 u32 sysctl_aevent_etime ;
5542 u32 sysctl_aevent_rseqth ;
5543 int sysctl_larval_drop ;
5544 u32 sysctl_acq_expires ;
5545 struct ctl_table_header *sysctl_hdr ;
5546 struct dst_ops xfrm4_dst_ops ;
5547 struct dst_ops xfrm6_dst_ops ;
5548};
5549#line 62
5550struct net_generic;
5551#line 62
5552struct net_generic;
5553#line 63
5554struct netns_ipvs;
5555#line 63
5556struct netns_ipvs;
5557#line 64 "include/net/netns/xfrm.h"
5558struct net {
5559 atomic_t passive ;
5560 atomic_t count ;
5561 spinlock_t rules_mod_lock ;
5562 struct list_head list ;
5563 struct list_head cleanup_list ;
5564 struct list_head exit_list ;
5565 struct proc_dir_entry *proc_net ;
5566 struct proc_dir_entry *proc_net_stat ;
5567 struct ctl_table_set sysctls ;
5568 struct sock *rtnl ;
5569 struct sock *genl_sock ;
5570 struct list_head dev_base_head ;
5571 struct hlist_head *dev_name_head ;
5572 struct hlist_head *dev_index_head ;
5573 unsigned int dev_base_seq ;
5574 struct list_head rules_ops ;
5575 struct net_device *loopback_dev ;
5576 struct netns_core core ;
5577 struct netns_mib mib ;
5578 struct netns_packet packet ;
5579 struct netns_unix unx ;
5580 struct netns_ipv4 ipv4 ;
5581 struct netns_ipv6 ipv6 ;
5582 struct netns_dccp dccp ;
5583 struct netns_xt xt ;
5584 struct netns_ct ct ;
5585 struct sock *nfnl ;
5586 struct sock *nfnl_stash ;
5587 struct sk_buff_head wext_nlevents ;
5588 struct net_generic *gen ;
5589 struct netns_xfrm xfrm ;
5590 struct netns_ipvs *ipvs ;
5591};
5592#line 105 "include/net/net_namespace.h"
5593struct seq_file {
5594 char *buf ;
5595 size_t size ;
5596 size_t from ;
5597 size_t count ;
5598 loff_t index ;
5599 loff_t read_pos ;
5600 u64 version ;
5601 struct mutex lock ;
5602 struct seq_operations const *op ;
5603 int poll_event ;
5604 void *private ;
5605};
5606#line 30 "include/linux/seq_file.h"
5607struct seq_operations {
5608 void *(*start)(struct seq_file * , loff_t * ) ;
5609 void (*stop)(struct seq_file * , void * ) ;
5610 void *(*next)(struct seq_file * , void * , loff_t * ) ;
5611 int (*show)(struct seq_file * , void * ) ;
5612};
5613#line 291 "include/net/net_namespace.h"
5614struct dsa_chip_data {
5615 struct device *mii_bus ;
5616 int sw_addr ;
5617 char *port_names[12U] ;
5618 s8 *rtable ;
5619};
5620#line 46 "include/net/dsa.h"
5621struct dsa_platform_data {
5622 struct device *netdev ;
5623 int nr_chips ;
5624 struct dsa_chip_data *chip ;
5625};
5626#line 61
5627struct dsa_switch;
5628#line 61 "include/net/dsa.h"
5629struct dsa_switch_tree {
5630 struct dsa_platform_data *pd ;
5631 struct net_device *master_netdev ;
5632 __be16 tag_protocol ;
5633 s8 cpu_switch ;
5634 s8 cpu_port ;
5635 int link_poll_needed ;
5636 struct work_struct link_poll_work ;
5637 struct timer_list link_poll_timer ;
5638 struct dsa_switch *ds[4U] ;
5639};
5640#line 94
5641struct dsa_switch_driver;
5642#line 94
5643struct mii_bus;
5644#line 94 "include/net/dsa.h"
5645struct dsa_switch {
5646 struct dsa_switch_tree *dst ;
5647 int index ;
5648 struct dsa_chip_data *pd ;
5649 struct dsa_switch_driver *drv ;
5650 struct mii_bus *master_mii_bus ;
5651 u32 dsa_port_mask ;
5652 u32 phys_port_mask ;
5653 struct mii_bus *slave_mii_bus ;
5654 struct net_device *ports[12U] ;
5655};
5656#line 146 "include/net/dsa.h"
5657struct dsa_switch_driver {
5658 struct list_head list ;
5659 __be16 tag_protocol ;
5660 int priv_size ;
5661 char *(*probe)(struct mii_bus * , int ) ;
5662 int (*setup)(struct dsa_switch * ) ;
5663 int (*set_addr)(struct dsa_switch * , u8 * ) ;
5664 int (*phy_read)(struct dsa_switch * , int , int ) ;
5665 int (*phy_write)(struct dsa_switch * , int , int , u16 ) ;
5666 void (*poll_link)(struct dsa_switch * ) ;
5667 void (*get_strings)(struct dsa_switch * , int , uint8_t * ) ;
5668 void (*get_ethtool_stats)(struct dsa_switch * , int , uint64_t * ) ;
5669 int (*get_sset_count)(struct dsa_switch * ) ;
5670};
5671#line 200 "include/net/dsa.h"
5672struct ieee_ets {
5673 __u8 willing ;
5674 __u8 ets_cap ;
5675 __u8 cbs ;
5676 __u8 tc_tx_bw[8U] ;
5677 __u8 tc_rx_bw[8U] ;
5678 __u8 tc_tsa[8U] ;
5679 __u8 prio_tc[8U] ;
5680 __u8 tc_reco_bw[8U] ;
5681 __u8 tc_reco_tsa[8U] ;
5682 __u8 reco_prio_tc[8U] ;
5683};
5684#line 69 "include/linux/dcbnl.h"
5685struct ieee_pfc {
5686 __u8 pfc_cap ;
5687 __u8 pfc_en ;
5688 __u8 mbc ;
5689 __u16 delay ;
5690 __u64 requests[8U] ;
5691 __u64 indications[8U] ;
5692};
5693#line 89 "include/linux/dcbnl.h"
5694struct cee_pg {
5695 __u8 willing ;
5696 __u8 error ;
5697 __u8 pg_en ;
5698 __u8 tcs_supported ;
5699 __u8 pg_bw[8U] ;
5700 __u8 prio_pg[8U] ;
5701};
5702#line 112 "include/linux/dcbnl.h"
5703struct cee_pfc {
5704 __u8 willing ;
5705 __u8 error ;
5706 __u8 pfc_en ;
5707 __u8 tcs_supported ;
5708};
5709#line 127 "include/linux/dcbnl.h"
5710struct dcb_app {
5711 __u8 selector ;
5712 __u8 priority ;
5713 __u16 protocol ;
5714};
5715#line 156 "include/linux/dcbnl.h"
5716struct dcb_peer_app_info {
5717 __u8 willing ;
5718 __u8 error ;
5719};
5720#line 41 "include/net/dcbnl.h"
5721struct dcbnl_rtnl_ops {
5722 int (*ieee_getets)(struct net_device * , struct ieee_ets * ) ;
5723 int (*ieee_setets)(struct net_device * , struct ieee_ets * ) ;
5724 int (*ieee_getpfc)(struct net_device * , struct ieee_pfc * ) ;
5725 int (*ieee_setpfc)(struct net_device * , struct ieee_pfc * ) ;
5726 int (*ieee_getapp)(struct net_device * , struct dcb_app * ) ;
5727 int (*ieee_setapp)(struct net_device * , struct dcb_app * ) ;
5728 int (*ieee_delapp)(struct net_device * , struct dcb_app * ) ;
5729 int (*ieee_peer_getets)(struct net_device * , struct ieee_ets * ) ;
5730 int (*ieee_peer_getpfc)(struct net_device * , struct ieee_pfc * ) ;
5731 u8 (*getstate)(struct net_device * ) ;
5732 u8 (*setstate)(struct net_device * , u8 ) ;
5733 void (*getpermhwaddr)(struct net_device * , u8 * ) ;
5734 void (*setpgtccfgtx)(struct net_device * , int , u8 , u8 , u8 , u8 ) ;
5735 void (*setpgbwgcfgtx)(struct net_device * , int , u8 ) ;
5736 void (*setpgtccfgrx)(struct net_device * , int , u8 , u8 , u8 , u8 ) ;
5737 void (*setpgbwgcfgrx)(struct net_device * , int , u8 ) ;
5738 void (*getpgtccfgtx)(struct net_device * , int , u8 * , u8 * , u8 * , u8 * ) ;
5739 void (*getpgbwgcfgtx)(struct net_device * , int , u8 * ) ;
5740 void (*getpgtccfgrx)(struct net_device * , int , u8 * , u8 * , u8 * , u8 * ) ;
5741 void (*getpgbwgcfgrx)(struct net_device * , int , u8 * ) ;
5742 void (*setpfccfg)(struct net_device * , int , u8 ) ;
5743 void (*getpfccfg)(struct net_device * , int , u8 * ) ;
5744 u8 (*setall)(struct net_device * ) ;
5745 u8 (*getcap)(struct net_device * , int , u8 * ) ;
5746 int (*getnumtcs)(struct net_device * , int , u8 * ) ;
5747 int (*setnumtcs)(struct net_device * , int , u8 ) ;
5748 u8 (*getpfcstate)(struct net_device * ) ;
5749 void (*setpfcstate)(struct net_device * , u8 ) ;
5750 void (*getbcncfg)(struct net_device * , int , u32 * ) ;
5751 void (*setbcncfg)(struct net_device * , int , u32 ) ;
5752 void (*getbcnrp)(struct net_device * , int , u8 * ) ;
5753 void (*setbcnrp)(struct net_device * , int , u8 ) ;
5754 u8 (*setapp)(struct net_device * , u8 , u16 , u8 ) ;
5755 u8 (*getapp)(struct net_device * , u8 , u16 ) ;
5756 u8 (*getfeatcfg)(struct net_device * , int , u8 * ) ;
5757 u8 (*setfeatcfg)(struct net_device * , int , u8 ) ;
5758 u8 (*getdcbx)(struct net_device * ) ;
5759 u8 (*setdcbx)(struct net_device * , u8 ) ;
5760 int (*peer_getappinfo)(struct net_device * , struct dcb_peer_app_info * , u16 * ) ;
5761 int (*peer_getapptable)(struct net_device * , struct dcb_app * ) ;
5762 int (*cee_peer_getpg)(struct net_device * , struct cee_pg * ) ;
5763 int (*cee_peer_getpfc)(struct net_device * , struct cee_pfc * ) ;
5764};
5765#line 101 "include/net/dcbnl.h"
5766struct taskstats {
5767 __u16 version ;
5768 __u32 ac_exitcode ;
5769 __u8 ac_flag ;
5770 __u8 ac_nice ;
5771 __u64 cpu_count ;
5772 __u64 cpu_delay_total ;
5773 __u64 blkio_count ;
5774 __u64 blkio_delay_total ;
5775 __u64 swapin_count ;
5776 __u64 swapin_delay_total ;
5777 __u64 cpu_run_real_total ;
5778 __u64 cpu_run_virtual_total ;
5779 char ac_comm[32U] ;
5780 __u8 ac_sched ;
5781 __u8 ac_pad[3U] ;
5782 __u32 ac_uid ;
5783 __u32 ac_gid ;
5784 __u32 ac_pid ;
5785 __u32 ac_ppid ;
5786 __u32 ac_btime ;
5787 __u64 ac_etime ;
5788 __u64 ac_utime ;
5789 __u64 ac_stime ;
5790 __u64 ac_minflt ;
5791 __u64 ac_majflt ;
5792 __u64 coremem ;
5793 __u64 virtmem ;
5794 __u64 hiwater_rss ;
5795 __u64 hiwater_vm ;
5796 __u64 read_char ;
5797 __u64 write_char ;
5798 __u64 read_syscalls ;
5799 __u64 write_syscalls ;
5800 __u64 read_bytes ;
5801 __u64 write_bytes ;
5802 __u64 cancelled_write_bytes ;
5803 __u64 nvcsw ;
5804 __u64 nivcsw ;
5805 __u64 ac_utimescaled ;
5806 __u64 ac_stimescaled ;
5807 __u64 cpu_scaled_run_real_total ;
5808 __u64 freepages_count ;
5809 __u64 freepages_delay_total ;
5810};
5811#line 55 "include/linux/prio_heap.h"
5812struct idr_layer {
5813 unsigned long bitmap ;
5814 struct idr_layer *ary[64U] ;
5815 int count ;
5816 int layer ;
5817 struct rcu_head rcu_head ;
5818};
5819#line 58 "include/linux/idr.h"
5820struct idr {
5821 struct idr_layer *top ;
5822 struct idr_layer *id_free ;
5823 int layers ;
5824 int id_free_cnt ;
5825 spinlock_t lock ;
5826};
5827#line 154
5828struct cgroupfs_root;
5829#line 154
5830struct cgroupfs_root;
5831#line 155
5832struct cgroup_subsys;
5833#line 155
5834struct cgroup_subsys;
5835#line 156
5836struct cgroup;
5837#line 156
5838struct cgroup;
5839#line 157
5840struct css_id;
5841#line 157
5842struct css_id;
5843#line 56 "include/linux/cgroup.h"
5844struct cgroup_subsys_state {
5845 struct cgroup *cgroup ;
5846 atomic_t refcnt ;
5847 unsigned long flags ;
5848 struct css_id *id ;
5849};
5850#line 149 "include/linux/cgroup.h"
5851struct cgroup {
5852 unsigned long flags ;
5853 atomic_t count ;
5854 struct list_head sibling ;
5855 struct list_head children ;
5856 struct cgroup *parent ;
5857 struct dentry *dentry ;
5858 struct cgroup_subsys_state *subsys[64U] ;
5859 struct cgroupfs_root *root ;
5860 struct cgroup *top_cgroup ;
5861 struct list_head css_sets ;
5862 struct list_head release_list ;
5863 struct list_head pidlists ;
5864 struct mutex pidlist_mutex ;
5865 struct rcu_head rcu_head ;
5866 struct list_head event_list ;
5867 spinlock_t event_list_lock ;
5868};
5869#line 215 "include/linux/cgroup.h"
5870struct css_set {
5871 atomic_t refcount ;
5872 struct hlist_node hlist ;
5873 struct list_head tasks ;
5874 struct list_head cg_links ;
5875 struct cgroup_subsys_state *subsys[64U] ;
5876 struct rcu_head rcu_head ;
5877};
5878#line 426
5879struct cgroup_taskset;
5880#line 426
5881struct cgroup_taskset;
5882#line 436 "include/linux/cgroup.h"
5883struct cgroup_subsys {
5884 struct cgroup_subsys_state *(*create)(struct cgroup * ) ;
5885 int (*pre_destroy)(struct cgroup * ) ;
5886 void (*destroy)(struct cgroup * ) ;
5887 int (*can_attach)(struct cgroup * , struct cgroup_taskset * ) ;
5888 void (*cancel_attach)(struct cgroup * , struct cgroup_taskset * ) ;
5889 void (*attach)(struct cgroup * , struct cgroup_taskset * ) ;
5890 void (*fork)(struct task_struct * ) ;
5891 void (*exit)(struct cgroup * , struct cgroup * , struct task_struct * ) ;
5892 int (*populate)(struct cgroup_subsys * , struct cgroup * ) ;
5893 void (*post_clone)(struct cgroup * ) ;
5894 void (*bind)(struct cgroup * ) ;
5895 int subsys_id ;
5896 int active ;
5897 int disabled ;
5898 int early_init ;
5899 bool use_id ;
5900 char const *name ;
5901 struct mutex hierarchy_mutex ;
5902 struct lock_class_key subsys_key ;
5903 struct cgroupfs_root *root ;
5904 struct list_head sibling ;
5905 struct idr idr ;
5906 spinlock_t id_lock ;
5907 struct module *module ;
5908};
5909#line 606 "include/linux/cgroup.h"
5910struct netprio_map {
5911 struct rcu_head rcu ;
5912 u32 priomap_len ;
5913 u32 priomap[0U] ;
5914};
5915#line 74 "include/net/netprio_cgroup.h"
5916struct netpoll_info;
5917#line 74
5918struct netpoll_info;
5919#line 75
5920struct phy_device;
5921#line 75
5922struct phy_device;
5923#line 76
5924struct wireless_dev;
5925#line 76
5926struct wireless_dev;
5927#line 77
5928enum netdev_tx {
5929 __NETDEV_TX_MIN = (-0x7FFFFFFF-1),
5930 NETDEV_TX_OK = 0,
5931 NETDEV_TX_BUSY = 16,
5932 NETDEV_TX_LOCKED = 32
5933} ;
5934#line 115 "include/linux/netdevice.h"
5935typedef enum netdev_tx netdev_tx_t;
5936#line 134 "include/linux/netdevice.h"
5937struct net_device_stats {
5938 unsigned long rx_packets ;
5939 unsigned long tx_packets ;
5940 unsigned long rx_bytes ;
5941 unsigned long tx_bytes ;
5942 unsigned long rx_errors ;
5943 unsigned long tx_errors ;
5944 unsigned long rx_dropped ;
5945 unsigned long tx_dropped ;
5946 unsigned long multicast ;
5947 unsigned long collisions ;
5948 unsigned long rx_length_errors ;
5949 unsigned long rx_over_errors ;
5950 unsigned long rx_crc_errors ;
5951 unsigned long rx_frame_errors ;
5952 unsigned long rx_fifo_errors ;
5953 unsigned long rx_missed_errors ;
5954 unsigned long tx_aborted_errors ;
5955 unsigned long tx_carrier_errors ;
5956 unsigned long tx_fifo_errors ;
5957 unsigned long tx_heartbeat_errors ;
5958 unsigned long tx_window_errors ;
5959 unsigned long rx_compressed ;
5960 unsigned long tx_compressed ;
5961};
5962#line 220
5963struct neigh_parms;
5964#line 220
5965struct neigh_parms;
5966#line 240 "include/linux/netdevice.h"
5967struct netdev_hw_addr_list {
5968 struct list_head list ;
5969 int count ;
5970};
5971#line 245 "include/linux/netdevice.h"
5972struct hh_cache {
5973 u16 hh_len ;
5974 u16 __pad ;
5975 seqlock_t hh_lock ;
5976 unsigned long hh_data[16U] ;
5977};
5978#line 274 "include/linux/netdevice.h"
5979struct header_ops {
5980 int (*create)(struct sk_buff * , struct net_device * , unsigned short , void const * ,
5981 void const * , unsigned int ) ;
5982 int (*parse)(struct sk_buff const * , unsigned char * ) ;
5983 int (*rebuild)(struct sk_buff * ) ;
5984 int (*cache)(struct neighbour const * , struct hh_cache * , __be16 ) ;
5985 void (*cache_update)(struct hh_cache * , struct net_device const * , unsigned char const * ) ;
5986};
5987#line 368
5988enum rx_handler_result {
5989 RX_HANDLER_CONSUMED = 0,
5990 RX_HANDLER_ANOTHER = 1,
5991 RX_HANDLER_EXACT = 2,
5992 RX_HANDLER_PASS = 3
5993} ;
5994#line 416 "include/linux/netdevice.h"
5995typedef enum rx_handler_result rx_handler_result_t;
5996#line 417 "include/linux/netdevice.h"
5997typedef rx_handler_result_t rx_handler_func_t(struct sk_buff ** );
5998#line 525
5999struct Qdisc;
6000#line 525 "include/linux/netdevice.h"
6001struct netdev_queue {
6002 struct net_device *dev ;
6003 struct Qdisc *qdisc ;
6004 struct Qdisc *qdisc_sleeping ;
6005 struct kobject kobj ;
6006 int numa_node ;
6007 spinlock_t _xmit_lock ;
6008 int xmit_lock_owner ;
6009 unsigned long trans_start ;
6010 unsigned long trans_timeout ;
6011 unsigned long state ;
6012 struct dql dql ;
6013};
6014#line 589 "include/linux/netdevice.h"
6015struct rps_map {
6016 unsigned int len ;
6017 struct rcu_head rcu ;
6018 u16 cpus[0U] ;
6019};
6020#line 601 "include/linux/netdevice.h"
6021struct rps_dev_flow {
6022 u16 cpu ;
6023 u16 filter ;
6024 unsigned int last_qtail ;
6025};
6026#line 613 "include/linux/netdevice.h"
6027struct rps_dev_flow_table {
6028 unsigned int mask ;
6029 struct rcu_head rcu ;
6030 struct work_struct free_work ;
6031 struct rps_dev_flow flows[0U] ;
6032};
6033#line 665 "include/linux/netdevice.h"
6034struct netdev_rx_queue {
6035 struct rps_map *rps_map ;
6036 struct rps_dev_flow_table *rps_flow_table ;
6037 struct kobject kobj ;
6038 struct net_device *dev ;
6039};
6040#line 675 "include/linux/netdevice.h"
6041struct xps_map {
6042 unsigned int len ;
6043 unsigned int alloc_len ;
6044 struct rcu_head rcu ;
6045 u16 queues[0U] ;
6046};
6047#line 688 "include/linux/netdevice.h"
6048struct xps_dev_maps {
6049 struct rcu_head rcu ;
6050 struct xps_map *cpu_map[0U] ;
6051};
6052#line 699 "include/linux/netdevice.h"
6053struct netdev_tc_txq {
6054 u16 count ;
6055 u16 offset ;
6056};
6057#line 710 "include/linux/netdevice.h"
6058struct netdev_fcoe_hbainfo {
6059 char manufacturer[64U] ;
6060 char serial_number[64U] ;
6061 char hardware_version[64U] ;
6062 char driver_version[64U] ;
6063 char optionrom_version[64U] ;
6064 char firmware_version[64U] ;
6065 char model[256U] ;
6066 char model_description[256U] ;
6067};
6068#line 726 "include/linux/netdevice.h"
6069struct net_device_ops {
6070 int (*ndo_init)(struct net_device * ) ;
6071 void (*ndo_uninit)(struct net_device * ) ;
6072 int (*ndo_open)(struct net_device * ) ;
6073 int (*ndo_stop)(struct net_device * ) ;
6074 netdev_tx_t (*ndo_start_xmit)(struct sk_buff * , struct net_device * ) ;
6075 u16 (*ndo_select_queue)(struct net_device * , struct sk_buff * ) ;
6076 void (*ndo_change_rx_flags)(struct net_device * , int ) ;
6077 void (*ndo_set_rx_mode)(struct net_device * ) ;
6078 int (*ndo_set_mac_address)(struct net_device * , void * ) ;
6079 int (*ndo_validate_addr)(struct net_device * ) ;
6080 int (*ndo_do_ioctl)(struct net_device * , struct ifreq * , int ) ;
6081 int (*ndo_set_config)(struct net_device * , struct ifmap * ) ;
6082 int (*ndo_change_mtu)(struct net_device * , int ) ;
6083 int (*ndo_neigh_setup)(struct net_device * , struct neigh_parms * ) ;
6084 void (*ndo_tx_timeout)(struct net_device * ) ;
6085 struct rtnl_link_stats64 *(*ndo_get_stats64)(struct net_device * , struct rtnl_link_stats64 * ) ;
6086 struct net_device_stats *(*ndo_get_stats)(struct net_device * ) ;
6087 int (*ndo_vlan_rx_add_vid)(struct net_device * , unsigned short ) ;
6088 int (*ndo_vlan_rx_kill_vid)(struct net_device * , unsigned short ) ;
6089 void (*ndo_poll_controller)(struct net_device * ) ;
6090 int (*ndo_netpoll_setup)(struct net_device * , struct netpoll_info * ) ;
6091 void (*ndo_netpoll_cleanup)(struct net_device * ) ;
6092 int (*ndo_set_vf_mac)(struct net_device * , int , u8 * ) ;
6093 int (*ndo_set_vf_vlan)(struct net_device * , int , u16 , u8 ) ;
6094 int (*ndo_set_vf_tx_rate)(struct net_device * , int , int ) ;
6095 int (*ndo_set_vf_spoofchk)(struct net_device * , int , bool ) ;
6096 int (*ndo_get_vf_config)(struct net_device * , int , struct ifla_vf_info * ) ;
6097 int (*ndo_set_vf_port)(struct net_device * , int , struct nlattr ** ) ;
6098 int (*ndo_get_vf_port)(struct net_device * , int , struct sk_buff * ) ;
6099 int (*ndo_setup_tc)(struct net_device * , u8 ) ;
6100 int (*ndo_fcoe_enable)(struct net_device * ) ;
6101 int (*ndo_fcoe_disable)(struct net_device * ) ;
6102 int (*ndo_fcoe_ddp_setup)(struct net_device * , u16 , struct scatterlist * , unsigned int ) ;
6103 int (*ndo_fcoe_ddp_done)(struct net_device * , u16 ) ;
6104 int (*ndo_fcoe_ddp_target)(struct net_device * , u16 , struct scatterlist * ,
6105 unsigned int ) ;
6106 int (*ndo_fcoe_get_hbainfo)(struct net_device * , struct netdev_fcoe_hbainfo * ) ;
6107 int (*ndo_fcoe_get_wwn)(struct net_device * , u64 * , int ) ;
6108 int (*ndo_rx_flow_steer)(struct net_device * , struct sk_buff const * , u16 ,
6109 u32 ) ;
6110 int (*ndo_add_slave)(struct net_device * , struct net_device * ) ;
6111 int (*ndo_del_slave)(struct net_device * , struct net_device * ) ;
6112 netdev_features_t (*ndo_fix_features)(struct net_device * , netdev_features_t ) ;
6113 int (*ndo_set_features)(struct net_device * , netdev_features_t ) ;
6114 int (*ndo_neigh_construct)(struct neighbour * ) ;
6115 void (*ndo_neigh_destroy)(struct neighbour * ) ;
6116};
6117#line 1020
6118struct iw_handler_def;
6119#line 1020
6120struct iw_public_data;
6121#line 1020
6122struct vlan_info;
6123#line 1020
6124struct in_device;
6125#line 1020
6126struct dn_dev;
6127#line 1020
6128struct inet6_dev;
6129#line 1020
6130struct cpu_rmap;
6131#line 1020
6132struct pcpu_lstats;
6133#line 1020
6134struct pcpu_tstats;
6135#line 1020
6136struct pcpu_dstats;
6137#line 1020 "include/linux/netdevice.h"
6138union __anonunion_ldv_37127_212 {
6139 void *ml_priv ;
6140 struct pcpu_lstats *lstats ;
6141 struct pcpu_tstats *tstats ;
6142 struct pcpu_dstats *dstats ;
6143};
6144#line 1020
6145struct garp_port;
6146#line 1020
6147struct rtnl_link_ops;
6148#line 1020 "include/linux/netdevice.h"
6149struct net_device {
6150 char name[16U] ;
6151 struct pm_qos_request pm_qos_req ;
6152 struct hlist_node name_hlist ;
6153 char *ifalias ;
6154 unsigned long mem_end ;
6155 unsigned long mem_start ;
6156 unsigned long base_addr ;
6157 unsigned int irq ;
6158 unsigned long state ;
6159 struct list_head dev_list ;
6160 struct list_head napi_list ;
6161 struct list_head unreg_list ;
6162 netdev_features_t features ;
6163 netdev_features_t hw_features ;
6164 netdev_features_t wanted_features ;
6165 netdev_features_t vlan_features ;
6166 int ifindex ;
6167 int iflink ;
6168 struct net_device_stats stats ;
6169 atomic_long_t rx_dropped ;
6170 struct iw_handler_def const *wireless_handlers ;
6171 struct iw_public_data *wireless_data ;
6172 struct net_device_ops const *netdev_ops ;
6173 struct ethtool_ops const *ethtool_ops ;
6174 struct header_ops const *header_ops ;
6175 unsigned int flags ;
6176 unsigned int priv_flags ;
6177 unsigned short gflags ;
6178 unsigned short padded ;
6179 unsigned char operstate ;
6180 unsigned char link_mode ;
6181 unsigned char if_port ;
6182 unsigned char dma ;
6183 unsigned int mtu ;
6184 unsigned short type ;
6185 unsigned short hard_header_len ;
6186 unsigned short needed_headroom ;
6187 unsigned short needed_tailroom ;
6188 unsigned char perm_addr[32U] ;
6189 unsigned char addr_assign_type ;
6190 unsigned char addr_len ;
6191 unsigned char neigh_priv_len ;
6192 unsigned short dev_id ;
6193 spinlock_t addr_list_lock ;
6194 struct netdev_hw_addr_list uc ;
6195 struct netdev_hw_addr_list mc ;
6196 bool uc_promisc ;
6197 unsigned int promiscuity ;
6198 unsigned int allmulti ;
6199 struct vlan_info *vlan_info ;
6200 struct dsa_switch_tree *dsa_ptr ;
6201 void *atalk_ptr ;
6202 struct in_device *ip_ptr ;
6203 struct dn_dev *dn_ptr ;
6204 struct inet6_dev *ip6_ptr ;
6205 void *ec_ptr ;
6206 void *ax25_ptr ;
6207 struct wireless_dev *ieee80211_ptr ;
6208 unsigned long last_rx ;
6209 struct net_device *master ;
6210 unsigned char *dev_addr ;
6211 struct netdev_hw_addr_list dev_addrs ;
6212 unsigned char broadcast[32U] ;
6213 struct kset *queues_kset ;
6214 struct netdev_rx_queue *_rx ;
6215 unsigned int num_rx_queues ;
6216 unsigned int real_num_rx_queues ;
6217 struct cpu_rmap *rx_cpu_rmap ;
6218 rx_handler_func_t *rx_handler ;
6219 void *rx_handler_data ;
6220 struct netdev_queue *ingress_queue ;
6221 struct netdev_queue *_tx ;
6222 unsigned int num_tx_queues ;
6223 unsigned int real_num_tx_queues ;
6224 struct Qdisc *qdisc ;
6225 unsigned long tx_queue_len ;
6226 spinlock_t tx_global_lock ;
6227 struct xps_dev_maps *xps_maps ;
6228 unsigned long trans_start ;
6229 int watchdog_timeo ;
6230 struct timer_list watchdog_timer ;
6231 int *pcpu_refcnt ;
6232 struct list_head todo_list ;
6233 struct hlist_node index_hlist ;
6234 struct list_head link_watch_list ;
6235 unsigned char reg_state ;
6236 bool dismantle ;
6237 unsigned short rtnl_link_state ;
6238 void (*destructor)(struct net_device * ) ;
6239 struct netpoll_info *npinfo ;
6240 struct net *nd_net ;
6241 union __anonunion_ldv_37127_212 ldv_37127 ;
6242 struct garp_port *garp_port ;
6243 struct device dev ;
6244 struct attribute_group const *sysfs_groups[4U] ;
6245 struct rtnl_link_ops const *rtnl_link_ops ;
6246 unsigned int gso_max_size ;
6247 struct dcbnl_rtnl_ops const *dcbnl_ops ;
6248 u8 num_tc ;
6249 struct netdev_tc_txq tc_to_txq[16U] ;
6250 u8 prio_tc_map[16U] ;
6251 unsigned int fcoe_ddp_xid ;
6252 struct netprio_map *priomap ;
6253 struct phy_device *phydev ;
6254 int group ;
6255};
6256#line 99 "include/linux/security.h"
6257struct xfrm_policy;
6258#line 99
6259struct xfrm_policy;
6260#line 100
6261struct xfrm_state;
6262#line 100
6263struct xfrm_state;
6264#line 120
6265struct request_sock;
6266#line 120
6267struct request_sock;
6268#line 443 "include/linux/memcontrol.h"
6269struct res_counter {
6270 unsigned long long usage ;
6271 unsigned long long max_usage ;
6272 unsigned long long limit ;
6273 unsigned long long soft_limit ;
6274 unsigned long long failcnt ;
6275 spinlock_t lock ;
6276 struct res_counter *parent ;
6277};
6278#line 225 "include/linux/res_counter.h"
6279struct sock_filter {
6280 __u16 code ;
6281 __u8 jt ;
6282 __u8 jf ;
6283 __u32 k ;
6284};
6285#line 37 "include/linux/filter.h"
6286struct sk_filter {
6287 atomic_t refcnt ;
6288 unsigned int len ;
6289 unsigned int (*bpf_func)(struct sk_buff const * , struct sock_filter const * ) ;
6290 struct rcu_head rcu ;
6291 struct sock_filter insns[0U] ;
6292};
6293#line 34 "include/linux/poll.h"
6294struct poll_table_struct {
6295 void (*_qproc)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
6296 unsigned long _key ;
6297};
6298#line 819 "include/linux/rtnetlink.h"
6299struct nla_policy {
6300 u16 type ;
6301 u16 len ;
6302};
6303#line 27 "include/net/rtnetlink.h"
6304struct rtnl_link_ops {
6305 struct list_head list ;
6306 char const *kind ;
6307 size_t priv_size ;
6308 void (*setup)(struct net_device * ) ;
6309 int maxtype ;
6310 struct nla_policy const *policy ;
6311 int (*validate)(struct nlattr ** , struct nlattr ** ) ;
6312 int (*newlink)(struct net * , struct net_device * , struct nlattr ** , struct nlattr ** ) ;
6313 int (*changelink)(struct net_device * , struct nlattr ** , struct nlattr ** ) ;
6314 void (*dellink)(struct net_device * , struct list_head * ) ;
6315 size_t (*get_size)(struct net_device const * ) ;
6316 int (*fill_info)(struct sk_buff * , struct net_device const * ) ;
6317 size_t (*get_xstats_size)(struct net_device const * ) ;
6318 int (*fill_xstats)(struct sk_buff * , struct net_device const * ) ;
6319 int (*get_tx_queues)(struct net * , struct nlattr ** , unsigned int * , unsigned int * ) ;
6320};
6321#line 130
6322struct neigh_table;
6323#line 130 "include/net/rtnetlink.h"
6324struct neigh_parms {
6325 struct net *net ;
6326 struct net_device *dev ;
6327 struct neigh_parms *next ;
6328 int (*neigh_setup)(struct neighbour * ) ;
6329 void (*neigh_cleanup)(struct neighbour * ) ;
6330 struct neigh_table *tbl ;
6331 void *sysctl_table ;
6332 int dead ;
6333 atomic_t refcnt ;
6334 struct rcu_head rcu_head ;
6335 int base_reachable_time ;
6336 int retrans_time ;
6337 int gc_staletime ;
6338 int reachable_time ;
6339 int delay_probe_time ;
6340 int queue_len_bytes ;
6341 int ucast_probes ;
6342 int app_probes ;
6343 int mcast_probes ;
6344 int anycast_delay ;
6345 int proxy_delay ;
6346 int proxy_qlen ;
6347 int locktime ;
6348};
6349#line 71 "include/net/neighbour.h"
6350struct neigh_statistics {
6351 unsigned long allocs ;
6352 unsigned long destroys ;
6353 unsigned long hash_grows ;
6354 unsigned long res_failed ;
6355 unsigned long lookups ;
6356 unsigned long hits ;
6357 unsigned long rcv_probes_mcast ;
6358 unsigned long rcv_probes_ucast ;
6359 unsigned long periodic_gc_runs ;
6360 unsigned long forced_gc_runs ;
6361 unsigned long unres_discards ;
6362};
6363#line 90
6364struct neigh_ops;
6365#line 90 "include/net/neighbour.h"
6366struct neighbour {
6367 struct neighbour *next ;
6368 struct neigh_table *tbl ;
6369 struct neigh_parms *parms ;
6370 unsigned long confirmed ;
6371 unsigned long updated ;
6372 rwlock_t lock ;
6373 atomic_t refcnt ;
6374 struct sk_buff_head arp_queue ;
6375 unsigned int arp_queue_len_bytes ;
6376 struct timer_list timer ;
6377 unsigned long used ;
6378 atomic_t probes ;
6379 __u8 flags ;
6380 __u8 nud_state ;
6381 __u8 type ;
6382 __u8 dead ;
6383 seqlock_t ha_lock ;
6384 unsigned char ha[32U] ;
6385 struct hh_cache hh ;
6386 int (*output)(struct neighbour * , struct sk_buff * ) ;
6387 struct neigh_ops const *ops ;
6388 struct rcu_head rcu ;
6389 struct net_device *dev ;
6390 u8 primary_key[0U] ;
6391};
6392#line 119 "include/net/neighbour.h"
6393struct neigh_ops {
6394 int family ;
6395 void (*solicit)(struct neighbour * , struct sk_buff * ) ;
6396 void (*error_report)(struct neighbour * , struct sk_buff * ) ;
6397 int (*output)(struct neighbour * , struct sk_buff * ) ;
6398 int (*connected_output)(struct neighbour * , struct sk_buff * ) ;
6399};
6400#line 127 "include/net/neighbour.h"
6401struct pneigh_entry {
6402 struct pneigh_entry *next ;
6403 struct net *net ;
6404 struct net_device *dev ;
6405 u8 flags ;
6406 u8 key[0U] ;
6407};
6408#line 137 "include/net/neighbour.h"
6409struct neigh_hash_table {
6410 struct neighbour **hash_buckets ;
6411 unsigned int hash_shift ;
6412 __u32 hash_rnd[4U] ;
6413 struct rcu_head rcu ;
6414};
6415#line 150 "include/net/neighbour.h"
6416struct neigh_table {
6417 struct neigh_table *next ;
6418 int family ;
6419 int entry_size ;
6420 int key_len ;
6421 __u32 (*hash)(void const * , struct net_device const * , __u32 * ) ;
6422 int (*constructor)(struct neighbour * ) ;
6423 int (*pconstructor)(struct pneigh_entry * ) ;
6424 void (*pdestructor)(struct pneigh_entry * ) ;
6425 void (*proxy_redo)(struct sk_buff * ) ;
6426 char *id ;
6427 struct neigh_parms parms ;
6428 int gc_interval ;
6429 int gc_thresh1 ;
6430 int gc_thresh2 ;
6431 int gc_thresh3 ;
6432 unsigned long last_flush ;
6433 struct delayed_work gc_work ;
6434 struct timer_list proxy_timer ;
6435 struct sk_buff_head proxy_queue ;
6436 atomic_t entries ;
6437 rwlock_t lock ;
6438 unsigned long last_rand ;
6439 struct neigh_statistics *stats ;
6440 struct neigh_hash_table *nht ;
6441 struct pneigh_entry **phash_buckets ;
6442};
6443#line 411 "include/net/neighbour.h"
6444union __anonunion_ldv_41149_217 {
6445 unsigned long expires ;
6446 struct dst_entry *from ;
6447};
6448#line 411
6449struct dn_route;
6450#line 411 "include/net/neighbour.h"
6451union __anonunion_ldv_41173_218 {
6452 struct dst_entry *next ;
6453 struct rtable *rt_next ;
6454 struct rt6_info *rt6_next ;
6455 struct dn_route *dn_next ;
6456};
6457#line 411 "include/net/neighbour.h"
6458struct dst_entry {
6459 struct rcu_head rcu_head ;
6460 struct dst_entry *child ;
6461 struct net_device *dev ;
6462 struct dst_ops *ops ;
6463 unsigned long _metrics ;
6464 union __anonunion_ldv_41149_217 ldv_41149 ;
6465 struct dst_entry *path ;
6466 struct neighbour *_neighbour ;
6467 struct xfrm_state *xfrm ;
6468 int (*input)(struct sk_buff * ) ;
6469 int (*output)(struct sk_buff * ) ;
6470 int flags ;
6471 short error ;
6472 short obsolete ;
6473 unsigned short header_len ;
6474 unsigned short trailer_len ;
6475 __u32 tclassid ;
6476 long __pad_to_align_refcnt[2U] ;
6477 atomic_t __refcnt ;
6478 int __use ;
6479 unsigned long lastuse ;
6480 union __anonunion_ldv_41173_218 ldv_41173 ;
6481};
6482#line 122 "include/net/sock.h"
6483struct __anonstruct_socket_lock_t_219 {
6484 spinlock_t slock ;
6485 int owned ;
6486 wait_queue_head_t wq ;
6487 struct lockdep_map dep_map ;
6488};
6489#line 122 "include/net/sock.h"
6490typedef struct __anonstruct_socket_lock_t_219 socket_lock_t;
6491#line 122
6492struct proto;
6493#line 122
6494struct proto;
6495#line 123 "include/net/sock.h"
6496union __anonunion_ldv_41400_220 {
6497 unsigned int skc_hash ;
6498 __u16 skc_u16hashes[2U] ;
6499};
6500#line 123 "include/net/sock.h"
6501union __anonunion_ldv_41408_221 {
6502 struct hlist_node skc_bind_node ;
6503 struct hlist_nulls_node skc_portaddr_node ;
6504};
6505#line 123 "include/net/sock.h"
6506union __anonunion_ldv_41415_222 {
6507 struct hlist_node skc_node ;
6508 struct hlist_nulls_node skc_nulls_node ;
6509};
6510#line 123 "include/net/sock.h"
6511struct sock_common {
6512 __be32 skc_daddr ;
6513 __be32 skc_rcv_saddr ;
6514 union __anonunion_ldv_41400_220 ldv_41400 ;
6515 unsigned short skc_family ;
6516 unsigned char volatile skc_state ;
6517 unsigned char skc_reuse ;
6518 int skc_bound_dev_if ;
6519 union __anonunion_ldv_41408_221 ldv_41408 ;
6520 struct proto *skc_prot ;
6521 struct net *skc_net ;
6522 int skc_dontcopy_begin[0U] ;
6523 union __anonunion_ldv_41415_222 ldv_41415 ;
6524 int skc_tx_queue_mapping ;
6525 atomic_t skc_refcnt ;
6526 int skc_dontcopy_end[0U] ;
6527};
6528#line 189
6529struct cg_proto;
6530#line 189
6531struct cg_proto;
6532#line 190 "include/net/sock.h"
6533struct __anonstruct_sk_backlog_223 {
6534 atomic_t rmem_alloc ;
6535 int len ;
6536 struct sk_buff *head ;
6537 struct sk_buff *tail ;
6538};
6539#line 190 "include/net/sock.h"
6540struct sock {
6541 struct sock_common __sk_common ;
6542 socket_lock_t sk_lock ;
6543 struct sk_buff_head sk_receive_queue ;
6544 struct __anonstruct_sk_backlog_223 sk_backlog ;
6545 int sk_forward_alloc ;
6546 __u32 sk_rxhash ;
6547 atomic_t sk_drops ;
6548 int sk_rcvbuf ;
6549 struct sk_filter *sk_filter ;
6550 struct socket_wq *sk_wq ;
6551 struct sk_buff_head sk_async_wait_queue ;
6552 struct xfrm_policy *sk_policy[2U] ;
6553 unsigned long sk_flags ;
6554 struct dst_entry *sk_dst_cache ;
6555 spinlock_t sk_dst_lock ;
6556 atomic_t sk_wmem_alloc ;
6557 atomic_t sk_omem_alloc ;
6558 int sk_sndbuf ;
6559 struct sk_buff_head sk_write_queue ;
6560 unsigned char sk_shutdown : 2 ;
6561 unsigned char sk_no_check : 2 ;
6562 unsigned char sk_userlocks : 4 ;
6563 unsigned char sk_protocol ;
6564 unsigned short sk_type ;
6565 int sk_wmem_queued ;
6566 gfp_t sk_allocation ;
6567 netdev_features_t sk_route_caps ;
6568 netdev_features_t sk_route_nocaps ;
6569 int sk_gso_type ;
6570 unsigned int sk_gso_max_size ;
6571 int sk_rcvlowat ;
6572 unsigned long sk_lingertime ;
6573 struct sk_buff_head sk_error_queue ;
6574 struct proto *sk_prot_creator ;
6575 rwlock_t sk_callback_lock ;
6576 int sk_err ;
6577 int sk_err_soft ;
6578 unsigned short sk_ack_backlog ;
6579 unsigned short sk_max_ack_backlog ;
6580 __u32 sk_priority ;
6581 __u32 sk_cgrp_prioidx ;
6582 struct pid *sk_peer_pid ;
6583 struct cred const *sk_peer_cred ;
6584 long sk_rcvtimeo ;
6585 long sk_sndtimeo ;
6586 void *sk_protinfo ;
6587 struct timer_list sk_timer ;
6588 ktime_t sk_stamp ;
6589 struct socket *sk_socket ;
6590 void *sk_user_data ;
6591 struct page *sk_sndmsg_page ;
6592 struct sk_buff *sk_send_head ;
6593 __u32 sk_sndmsg_off ;
6594 __s32 sk_peek_off ;
6595 int sk_write_pending ;
6596 void *sk_security ;
6597 __u32 sk_mark ;
6598 u32 sk_classid ;
6599 struct cg_proto *sk_cgrp ;
6600 void (*sk_state_change)(struct sock * ) ;
6601 void (*sk_data_ready)(struct sock * , int ) ;
6602 void (*sk_write_space)(struct sock * ) ;
6603 void (*sk_error_report)(struct sock * ) ;
6604 int (*sk_backlog_rcv)(struct sock * , struct sk_buff * ) ;
6605 void (*sk_destruct)(struct sock * ) ;
6606};
6607#line 787
6608struct request_sock_ops;
6609#line 787
6610struct request_sock_ops;
6611#line 788
6612struct timewait_sock_ops;
6613#line 788
6614struct timewait_sock_ops;
6615#line 789
6616struct inet_hashinfo;
6617#line 789
6618struct inet_hashinfo;
6619#line 790
6620struct raw_hashinfo;
6621#line 790
6622struct raw_hashinfo;
6623#line 791
6624struct udp_table;
6625#line 791 "include/net/sock.h"
6626union __anonunion_h_224 {
6627 struct inet_hashinfo *hashinfo ;
6628 struct udp_table *udp_table ;
6629 struct raw_hashinfo *raw_hash ;
6630};
6631#line 791 "include/net/sock.h"
6632struct proto {
6633 void (*close)(struct sock * , long ) ;
6634 int (*connect)(struct sock * , struct sockaddr * , int ) ;
6635 int (*disconnect)(struct sock * , int ) ;
6636 struct sock *(*accept)(struct sock * , int , int * ) ;
6637 int (*ioctl)(struct sock * , int , unsigned long ) ;
6638 int (*init)(struct sock * ) ;
6639 void (*destroy)(struct sock * ) ;
6640 void (*shutdown)(struct sock * , int ) ;
6641 int (*setsockopt)(struct sock * , int , int , char * , unsigned int ) ;
6642 int (*getsockopt)(struct sock * , int , int , char * , int * ) ;
6643 int (*compat_setsockopt)(struct sock * , int , int , char * , unsigned int ) ;
6644 int (*compat_getsockopt)(struct sock * , int , int , char * , int * ) ;
6645 int (*compat_ioctl)(struct sock * , unsigned int , unsigned long ) ;
6646 int (*sendmsg)(struct kiocb * , struct sock * , struct msghdr * , size_t ) ;
6647 int (*recvmsg)(struct kiocb * , struct sock * , struct msghdr * , size_t , int ,
6648 int , int * ) ;
6649 int (*sendpage)(struct sock * , struct page * , int , size_t , int ) ;
6650 int (*bind)(struct sock * , struct sockaddr * , int ) ;
6651 int (*backlog_rcv)(struct sock * , struct sk_buff * ) ;
6652 void (*hash)(struct sock * ) ;
6653 void (*unhash)(struct sock * ) ;
6654 void (*rehash)(struct sock * ) ;
6655 int (*get_port)(struct sock * , unsigned short ) ;
6656 void (*clear_sk)(struct sock * , int ) ;
6657 unsigned int inuse_idx ;
6658 void (*enter_memory_pressure)(struct sock * ) ;
6659 atomic_long_t *memory_allocated ;
6660 struct percpu_counter *sockets_allocated ;
6661 int *memory_pressure ;
6662 long *sysctl_mem ;
6663 int *sysctl_wmem ;
6664 int *sysctl_rmem ;
6665 int max_header ;
6666 bool no_autobind ;
6667 struct kmem_cache *slab ;
6668 unsigned int obj_size ;
6669 int slab_flags ;
6670 struct percpu_counter *orphan_count ;
6671 struct request_sock_ops *rsk_prot ;
6672 struct timewait_sock_ops *twsk_prot ;
6673 union __anonunion_h_224 h ;
6674 struct module *owner ;
6675 char name[32U] ;
6676 struct list_head node ;
6677 int (*init_cgroup)(struct cgroup * , struct cgroup_subsys * ) ;
6678 void (*destroy_cgroup)(struct cgroup * ) ;
6679 struct cg_proto *(*proto_cgroup)(struct mem_cgroup * ) ;
6680};
6681#line 909 "include/net/sock.h"
6682struct cg_proto {
6683 void (*enter_memory_pressure)(struct sock * ) ;
6684 struct res_counter *memory_allocated ;
6685 struct percpu_counter *sockets_allocated ;
6686 int *memory_pressure ;
6687 long *sysctl_mem ;
6688 struct mem_cgroup *memcg ;
6689};
6690#line 169 "include/linux/jhash.h"
6691struct request_values {
6692
6693};
6694#line 172 "include/linux/jhash.h"
6695struct request_sock_ops {
6696 int family ;
6697 int obj_size ;
6698 struct kmem_cache *slab ;
6699 char *slab_name ;
6700 int (*rtx_syn_ack)(struct sock * , struct request_sock * , struct request_values * ) ;
6701 void (*send_ack)(struct sock * , struct sk_buff * , struct request_sock * ) ;
6702 void (*send_reset)(struct sock * , struct sk_buff * ) ;
6703 void (*destructor)(struct request_sock * ) ;
6704 void (*syn_ack_timeout)(struct sock * , struct request_sock * ) ;
6705};
6706#line 50 "include/net/request_sock.h"
6707struct request_sock {
6708 struct request_sock *dl_next ;
6709 u16 mss ;
6710 u8 retrans ;
6711 u8 cookie_ts ;
6712 u32 window_clamp ;
6713 u32 rcv_wnd ;
6714 u32 ts_recent ;
6715 unsigned long expires ;
6716 struct request_sock_ops const *rsk_ops ;
6717 struct sock *sk ;
6718 u32 secid ;
6719 u32 peer_secid ;
6720};
6721#line 253 "include/net/inet_sock.h"
6722struct inet_peer;
6723#line 367 "include/net/inet_connection_sock.h"
6724struct timewait_sock_ops {
6725 struct kmem_cache *twsk_slab ;
6726 char *twsk_slab_name ;
6727 unsigned int twsk_obj_size ;
6728 int (*twsk_unique)(struct sock * , struct sock * , void * ) ;
6729 void (*twsk_destructor)(struct sock * ) ;
6730 void *(*twsk_getpeer)(struct sock * ) ;
6731};
6732#line 130 "include/linux/ipv6.h"
6733struct ipv6_devconf {
6734 __s32 forwarding ;
6735 __s32 hop_limit ;
6736 __s32 mtu6 ;
6737 __s32 accept_ra ;
6738 __s32 accept_redirects ;
6739 __s32 autoconf ;
6740 __s32 dad_transmits ;
6741 __s32 rtr_solicits ;
6742 __s32 rtr_solicit_interval ;
6743 __s32 rtr_solicit_delay ;
6744 __s32 force_mld_version ;
6745 __s32 use_tempaddr ;
6746 __s32 temp_valid_lft ;
6747 __s32 temp_prefered_lft ;
6748 __s32 regen_max_retry ;
6749 __s32 max_desync_factor ;
6750 __s32 max_addresses ;
6751 __s32 accept_ra_defrtr ;
6752 __s32 accept_ra_pinfo ;
6753 __s32 accept_ra_rtr_pref ;
6754 __s32 rtr_probe_interval ;
6755 __s32 accept_ra_rt_info_max_plen ;
6756 __s32 proxy_ndp ;
6757 __s32 accept_source_route ;
6758 __s32 optimistic_dad ;
6759 __s32 mc_forwarding ;
6760 __s32 disable_ipv6 ;
6761 __s32 accept_dad ;
6762 __s32 force_tllao ;
6763 void *sysctl ;
6764};
6765#line 97 "include/net/if_inet6.h"
6766struct ip6_sf_list {
6767 struct ip6_sf_list *sf_next ;
6768 struct in6_addr sf_addr ;
6769 unsigned long sf_count[2U] ;
6770 unsigned char sf_gsresp ;
6771 unsigned char sf_oldin ;
6772 unsigned char sf_crcount ;
6773};
6774#line 106 "include/net/if_inet6.h"
6775struct ifmcaddr6 {
6776 struct in6_addr mca_addr ;
6777 struct inet6_dev *idev ;
6778 struct ifmcaddr6 *next ;
6779 struct ip6_sf_list *mca_sources ;
6780 struct ip6_sf_list *mca_tomb ;
6781 unsigned int mca_sfmode ;
6782 unsigned char mca_crcount ;
6783 unsigned long mca_sfcount[2U] ;
6784 struct timer_list mca_timer ;
6785 unsigned int mca_flags ;
6786 int mca_users ;
6787 atomic_t mca_refcnt ;
6788 spinlock_t mca_lock ;
6789 unsigned long mca_cstamp ;
6790 unsigned long mca_tstamp ;
6791};
6792#line 138 "include/net/if_inet6.h"
6793struct ifacaddr6 {
6794 struct in6_addr aca_addr ;
6795 struct inet6_dev *aca_idev ;
6796 struct rt6_info *aca_rt ;
6797 struct ifacaddr6 *aca_next ;
6798 int aca_users ;
6799 atomic_t aca_refcnt ;
6800 spinlock_t aca_lock ;
6801 unsigned long aca_cstamp ;
6802 unsigned long aca_tstamp ;
6803};
6804#line 150 "include/net/if_inet6.h"
6805struct ipv6_devstat {
6806 struct proc_dir_entry *proc_dir_entry ;
6807 struct ipstats_mib *ipv6[1U] ;
6808 struct icmpv6_mib_device *icmpv6dev ;
6809 struct icmpv6msg_mib_device *icmpv6msgdev ;
6810};
6811#line 161 "include/net/if_inet6.h"
6812struct inet6_dev {
6813 struct net_device *dev ;
6814 struct list_head addr_list ;
6815 struct ifmcaddr6 *mc_list ;
6816 struct ifmcaddr6 *mc_tomb ;
6817 spinlock_t mc_lock ;
6818 unsigned char mc_qrv ;
6819 unsigned char mc_gq_running ;
6820 unsigned char mc_ifc_count ;
6821 unsigned long mc_v1_seen ;
6822 unsigned long mc_maxdelay ;
6823 struct timer_list mc_gq_timer ;
6824 struct timer_list mc_ifc_timer ;
6825 struct ifacaddr6 *ac_list ;
6826 rwlock_t lock ;
6827 atomic_t refcnt ;
6828 __u32 if_flags ;
6829 int dead ;
6830 u8 rndid[8U] ;
6831 struct timer_list regen_timer ;
6832 struct list_head tempaddr_list ;
6833 struct neigh_parms *nd_parms ;
6834 struct inet6_dev *next ;
6835 struct ipv6_devconf cnf ;
6836 struct ipv6_devstat stats ;
6837 unsigned long tstamp ;
6838 struct rcu_head rcu ;
6839};
6840#line 666 "include/net/ipv6.h"
6841union __anonunion_ldv_45764_237 {
6842 __be32 a4 ;
6843 __be32 a6[4U] ;
6844};
6845#line 666 "include/net/ipv6.h"
6846struct inetpeer_addr_base {
6847 union __anonunion_ldv_45764_237 ldv_45764 ;
6848};
6849#line 24 "include/net/inetpeer.h"
6850struct inetpeer_addr {
6851 struct inetpeer_addr_base addr ;
6852 __u16 family ;
6853};
6854#line 29 "include/net/inetpeer.h"
6855struct __anonstruct_ldv_45786_239 {
6856 atomic_t rid ;
6857 atomic_t ip_id_count ;
6858 __u32 tcp_ts ;
6859 __u32 tcp_ts_stamp ;
6860};
6861#line 29 "include/net/inetpeer.h"
6862union __anonunion_ldv_45789_238 {
6863 struct __anonstruct_ldv_45786_239 ldv_45786 ;
6864 struct rcu_head rcu ;
6865 struct inet_peer *gc_next ;
6866};
6867#line 29 "include/net/inetpeer.h"
6868struct inet_peer {
6869 struct inet_peer *avl_left ;
6870 struct inet_peer *avl_right ;
6871 struct inetpeer_addr daddr ;
6872 __u32 avl_height ;
6873 u32 metrics[14U] ;
6874 u32 rate_tokens ;
6875 unsigned long rate_last ;
6876 unsigned long pmtu_expires ;
6877 u32 pmtu_orig ;
6878 u32 pmtu_learned ;
6879 struct inetpeer_addr_base redirect_learned ;
6880 struct list_head gc_list ;
6881 union __anonunion_ldv_45789_238 ldv_45789 ;
6882 __u32 dtime ;
6883 atomic_t refcnt ;
6884};
6885#line 49 "include/linux/route.h"
6886struct fib_info;
6887#line 49
6888struct fib_info;
6889#line 50 "include/linux/route.h"
6890struct rtable {
6891 struct dst_entry dst ;
6892 __be32 rt_key_dst ;
6893 __be32 rt_key_src ;
6894 int rt_genid ;
6895 unsigned int rt_flags ;
6896 __u16 rt_type ;
6897 __u8 rt_key_tos ;
6898 __be32 rt_dst ;
6899 __be32 rt_src ;
6900 int rt_route_iif ;
6901 int rt_iif ;
6902 int rt_oif ;
6903 __u32 rt_mark ;
6904 __be32 rt_gateway ;
6905 __be32 rt_spec_dst ;
6906 u32 rt_peer_genid ;
6907 struct inet_peer *peer ;
6908 struct fib_info *fi ;
6909};
6910#line 323 "include/net/route.h"
6911struct inet_ehash_bucket {
6912 struct hlist_nulls_head chain ;
6913 struct hlist_nulls_head twchain ;
6914};
6915#line 94 "include/net/inet_hashtables.h"
6916struct inet_bind_hashbucket {
6917 spinlock_t lock ;
6918 struct hlist_head chain ;
6919};
6920#line 102 "include/net/inet_hashtables.h"
6921struct inet_listen_hashbucket {
6922 spinlock_t lock ;
6923 struct hlist_nulls_head head ;
6924};
6925#line 114 "include/net/inet_hashtables.h"
6926struct inet_hashinfo {
6927 struct inet_ehash_bucket *ehash ;
6928 spinlock_t *ehash_locks ;
6929 unsigned int ehash_mask ;
6930 unsigned int ehash_locks_mask ;
6931 struct inet_bind_hashbucket *bhash ;
6932 unsigned int bhash_size ;
6933 struct kmem_cache *bind_bucket_cachep ;
6934 struct inet_listen_hashbucket listening_hash[32U] ;
6935 atomic_t bsockets ;
6936};
6937#line 1583 "include/net/tcp.h"
6938enum transport_lun_status_table {
6939 TRANSPORT_LUN_STATUS_FREE = 0,
6940 TRANSPORT_LUN_STATUS_ACTIVE = 1
6941} ;
6942#line 1588
6943enum transport_tpg_type_table {
6944 TRANSPORT_TPG_TYPE_NORMAL = 0,
6945 TRANSPORT_TPG_TYPE_DISCOVERY = 1
6946} ;
6947#line 1600
6948enum transport_state_table {
6949 TRANSPORT_NO_STATE = 0,
6950 TRANSPORT_NEW_CMD = 1,
6951 TRANSPORT_WRITE_PENDING = 3,
6952 TRANSPORT_PROCESS_WRITE = 4,
6953 TRANSPORT_PROCESSING = 5,
6954 TRANSPORT_COMPLETE = 6,
6955 TRANSPORT_PROCESS_TMR = 9,
6956 TRANSPORT_ISTATE_PROCESSING = 11,
6957 TRANSPORT_NEW_CMD_MAP = 16,
6958 TRANSPORT_COMPLETE_QF_WP = 18,
6959 TRANSPORT_COMPLETE_QF_OK = 19
6960} ;
6961#line 1701 "include/net/tcp.h"
6962struct se_obj {
6963 atomic_t obj_access_count ;
6964};
6965#line 266 "include/target/target_core_base.h"
6966enum ldv_32482 {
6967 SPC_ALUA_PASSTHROUGH = 0,
6968 SPC2_ALUA_DISABLED = 1,
6969 SPC3_ALUA_EMULATED = 2
6970} ;
6971#line 275 "include/target/target_core_base.h"
6972typedef enum ldv_32482 t10_alua_index_t;
6973#line 276
6974enum ldv_32484 {
6975 SAM_TASK_ATTR_PASSTHROUGH = 0,
6976 SAM_TASK_ATTR_UNTAGGED = 1,
6977 SAM_TASK_ATTR_EMULATED = 2
6978} ;
6979#line 285 "include/target/target_core_base.h"
6980typedef enum ldv_32484 t10_task_attr_index_t;
6981#line 296
6982struct se_cmd;
6983#line 296
6984struct se_cmd;
6985#line 297
6986struct se_subsystem_dev;
6987#line 297
6988struct t10_alua_tg_pt_gp;
6989#line 297 "include/target/target_core_base.h"
6990struct t10_alua {
6991 t10_alua_index_t alua_type ;
6992 u16 alua_tg_pt_gps_counter ;
6993 u32 alua_tg_pt_gps_count ;
6994 spinlock_t tg_pt_gps_lock ;
6995 struct se_subsystem_dev *t10_sub_dev ;
6996 struct t10_alua_tg_pt_gp *default_tg_pt_gp ;
6997 struct config_group alua_tg_pt_gps_group ;
6998 int (*alua_state_check)(struct se_cmd * , unsigned char * , u8 * ) ;
6999 struct list_head tg_pt_gps_list ;
7000};
7001#line 313 "include/target/target_core_base.h"
7002struct t10_alua_lu_gp {
7003 u16 lu_gp_id ;
7004 int lu_gp_valid_id ;
7005 u32 lu_gp_members ;
7006 atomic_t lu_gp_ref_cnt ;
7007 spinlock_t lu_gp_lock ;
7008 struct config_group lu_gp_group ;
7009 struct list_head lu_gp_node ;
7010 struct list_head lu_gp_mem_list ;
7011};
7012#line 324
7013struct se_device;
7014#line 324 "include/target/target_core_base.h"
7015struct t10_alua_lu_gp_member {
7016 bool lu_gp_assoc ;
7017 atomic_t lu_gp_mem_ref_cnt ;
7018 spinlock_t lu_gp_mem_lock ;
7019 struct t10_alua_lu_gp *lu_gp ;
7020 struct se_device *lu_gp_mem_dev ;
7021 struct list_head lu_gp_mem_list ;
7022};
7023#line 333 "include/target/target_core_base.h"
7024struct t10_alua_tg_pt_gp {
7025 u16 tg_pt_gp_id ;
7026 int tg_pt_gp_valid_id ;
7027 int tg_pt_gp_alua_access_status ;
7028 int tg_pt_gp_alua_access_type ;
7029 int tg_pt_gp_nonop_delay_msecs ;
7030 int tg_pt_gp_trans_delay_msecs ;
7031 int tg_pt_gp_pref ;
7032 int tg_pt_gp_write_metadata ;
7033 u32 tg_pt_gp_md_buf_len ;
7034 u32 tg_pt_gp_members ;
7035 atomic_t tg_pt_gp_alua_access_state ;
7036 atomic_t tg_pt_gp_ref_cnt ;
7037 spinlock_t tg_pt_gp_lock ;
7038 struct mutex tg_pt_gp_md_mutex ;
7039 struct se_subsystem_dev *tg_pt_gp_su_dev ;
7040 struct config_group tg_pt_gp_group ;
7041 struct list_head tg_pt_gp_list ;
7042 struct list_head tg_pt_gp_mem_list ;
7043};
7044#line 356
7045struct se_port;
7046#line 356 "include/target/target_core_base.h"
7047struct t10_alua_tg_pt_gp_member {
7048 bool tg_pt_gp_assoc ;
7049 atomic_t tg_pt_gp_mem_ref_cnt ;
7050 spinlock_t tg_pt_gp_mem_lock ;
7051 struct t10_alua_tg_pt_gp *tg_pt_gp ;
7052 struct se_port *tg_pt ;
7053 struct list_head tg_pt_gp_mem_list ;
7054};
7055#line 375 "include/target/target_core_base.h"
7056struct t10_wwn {
7057 char vendor[8U] ;
7058 char model[16U] ;
7059 char revision[4U] ;
7060 char unit_serial[254U] ;
7061 spinlock_t t10_vpd_lock ;
7062 struct se_subsystem_dev *t10_sub_dev ;
7063 struct config_group t10_wwn_group ;
7064 struct list_head t10_vpd_list ;
7065};
7066#line 386
7067enum ldv_32519 {
7068 SPC_PASSTHROUGH = 0,
7069 SPC2_RESERVATIONS = 1,
7070 SPC3_PERSISTENT_RESERVATIONS = 2
7071} ;
7072#line 397 "include/target/target_core_base.h"
7073typedef enum ldv_32519 t10_reservations_index_t;
7074#line 398
7075struct se_node_acl;
7076#line 398
7077struct se_dev_entry;
7078#line 398
7079struct se_lun;
7080#line 398 "include/target/target_core_base.h"
7081struct t10_pr_registration {
7082 char pr_reg_isid[16U] ;
7083 unsigned char pr_iport[256U] ;
7084 unsigned char pr_tport[256U] ;
7085 unsigned char *pr_aptpl_buf ;
7086 u16 pr_aptpl_rpti ;
7087 u16 pr_reg_tpgt ;
7088 int pr_reg_all_tg_pt ;
7089 int pr_reg_aptpl ;
7090 int pr_res_holder ;
7091 int pr_res_type ;
7092 int pr_res_scope ;
7093 bool isid_present_at_reg ;
7094 u32 pr_res_mapped_lun ;
7095 u32 pr_aptpl_target_lun ;
7096 u32 pr_res_generation ;
7097 u64 pr_reg_bin_isid ;
7098 u64 pr_res_key ;
7099 atomic_t pr_res_holders ;
7100 struct se_node_acl *pr_reg_nacl ;
7101 struct se_dev_entry *pr_reg_deve ;
7102 struct se_lun *pr_reg_tg_pt_lun ;
7103 struct list_head pr_reg_list ;
7104 struct list_head pr_reg_abort_list ;
7105 struct list_head pr_reg_aptpl_list ;
7106 struct list_head pr_reg_atp_list ;
7107 struct list_head pr_reg_atp_mem_list ;
7108};
7109#line 439 "include/target/target_core_base.h"
7110struct t10_reservation_ops {
7111 int (*t10_reservation_check)(struct se_cmd * , u32 * ) ;
7112 int (*t10_seq_non_holder)(struct se_cmd * , unsigned char * , u32 ) ;
7113 int (*t10_pr_register)(struct se_cmd * ) ;
7114 int (*t10_pr_clear)(struct se_cmd * ) ;
7115};
7116#line 451 "include/target/target_core_base.h"
7117struct t10_reservation {
7118 int pr_all_tg_pt ;
7119 int pr_aptpl_active ;
7120 u32 pr_aptpl_buf_len ;
7121 u32 pr_generation ;
7122 t10_reservations_index_t res_type ;
7123 spinlock_t registration_lock ;
7124 spinlock_t aptpl_reg_lock ;
7125 struct se_node_acl *pr_res_holder ;
7126 struct list_head registration_list ;
7127 struct list_head aptpl_reg_list ;
7128 struct t10_reservation_ops pr_ops ;
7129};
7130#line 480 "include/target/target_core_base.h"
7131struct se_queue_obj {
7132 atomic_t queue_cnt ;
7133 spinlock_t cmd_queue_lock ;
7134 struct list_head qobj_list ;
7135 wait_queue_head_t thread_wq ;
7136};
7137#line 487 "include/target/target_core_base.h"
7138struct se_task {
7139 unsigned long long task_lba ;
7140 u32 task_sectors ;
7141 u32 task_size ;
7142 struct se_cmd *task_se_cmd ;
7143 struct scatterlist *task_sg ;
7144 u32 task_sg_nents ;
7145 u16 task_flags ;
7146 u8 task_scsi_status ;
7147 enum dma_data_direction task_data_direction ;
7148 struct list_head t_list ;
7149 struct list_head t_execute_list ;
7150 struct list_head t_state_list ;
7151 bool t_state_active ;
7152 struct completion task_stop_comp ;
7153};
7154#line 504 "include/target/target_core_base.h"
7155struct se_tmr_req {
7156 u8 function ;
7157 u8 response ;
7158 int call_transport ;
7159 u32 ref_task_tag ;
7160 u64 ref_task_lun ;
7161 void *fabric_tmr_ptr ;
7162 struct se_cmd *task_cmd ;
7163 struct se_cmd *ref_cmd ;
7164 struct se_device *tmr_dev ;
7165 struct se_lun *tmr_lun ;
7166 struct list_head tmr_list ;
7167};
7168#line 522
7169struct se_session;
7170#line 522
7171struct target_core_fabric_ops;
7172#line 522 "include/target/target_core_base.h"
7173struct se_cmd {
7174 u8 scsi_status ;
7175 u8 scsi_asc ;
7176 u8 scsi_ascq ;
7177 u8 scsi_sense_reason ;
7178 u16 scsi_sense_length ;
7179 int alua_nonop_delay ;
7180 enum dma_data_direction data_direction ;
7181 int sam_task_attr ;
7182 enum transport_state_table t_state ;
7183 unsigned char check_release : 1 ;
7184 unsigned char cmd_wait_set : 1 ;
7185 u32 se_cmd_flags ;
7186 u32 se_ordered_id ;
7187 u32 data_length ;
7188 u32 cmd_spdtl ;
7189 u32 residual_count ;
7190 u32 orig_fe_lun ;
7191 u64 pr_res_key ;
7192 void *sense_buffer ;
7193 struct list_head se_delayed_node ;
7194 struct list_head se_lun_node ;
7195 struct list_head se_qf_node ;
7196 struct se_device *se_dev ;
7197 struct se_dev_entry *se_deve ;
7198 struct se_lun *se_lun ;
7199 struct se_session *se_sess ;
7200 struct se_tmr_req *se_tmr_req ;
7201 struct list_head se_queue_node ;
7202 struct list_head se_cmd_list ;
7203 struct completion cmd_wait_comp ;
7204 struct kref cmd_kref ;
7205 struct target_core_fabric_ops *se_tfo ;
7206 int (*execute_task)(struct se_task * ) ;
7207 void (*transport_complete_callback)(struct se_cmd * ) ;
7208 unsigned char *t_task_cdb ;
7209 unsigned char __t_task_cdb[32U] ;
7210 unsigned long long t_task_lba ;
7211 u32 t_tasks_sg_chained_no ;
7212 atomic_t t_fe_count ;
7213 atomic_t t_se_count ;
7214 atomic_t t_task_cdbs_left ;
7215 atomic_t t_task_cdbs_ex_left ;
7216 atomic_t t_task_cdbs_sent ;
7217 unsigned int transport_state ;
7218 spinlock_t t_state_lock ;
7219 struct completion t_transport_stop_comp ;
7220 struct completion transport_lun_fe_stop_comp ;
7221 struct completion transport_lun_stop_comp ;
7222 struct scatterlist *t_tasks_sg_chained ;
7223 struct work_struct work ;
7224 struct scatterlist *t_data_sg ;
7225 unsigned int t_data_nents ;
7226 void *t_data_vmap ;
7227 struct scatterlist *t_bidi_data_sg ;
7228 unsigned int t_bidi_data_nents ;
7229 struct list_head t_task_list ;
7230 u32 t_task_list_num ;
7231};
7232#line 618
7233struct se_portal_group;
7234#line 618 "include/target/target_core_base.h"
7235struct se_node_acl {
7236 char initiatorname[224U] ;
7237 bool dynamic_node_acl ;
7238 bool acl_stop ;
7239 u32 queue_depth ;
7240 u32 acl_index ;
7241 u64 num_cmds ;
7242 u64 read_bytes ;
7243 u64 write_bytes ;
7244 spinlock_t stats_lock ;
7245 atomic_t acl_pr_ref_count ;
7246 struct se_dev_entry **device_list ;
7247 struct se_session *nacl_sess ;
7248 struct se_portal_group *se_tpg ;
7249 spinlock_t device_list_lock ;
7250 spinlock_t nacl_sess_lock ;
7251 struct config_group acl_group ;
7252 struct config_group acl_attrib_group ;
7253 struct config_group acl_auth_group ;
7254 struct config_group acl_param_group ;
7255 struct config_group acl_fabric_stat_group ;
7256 struct config_group *acl_default_groups[5U] ;
7257 struct list_head acl_list ;
7258 struct list_head acl_sess_list ;
7259 struct completion acl_free_comp ;
7260 struct kref acl_kref ;
7261};
7262#line 648 "include/target/target_core_base.h"
7263struct se_session {
7264 unsigned char sess_tearing_down : 1 ;
7265 u64 sess_bin_isid ;
7266 struct se_node_acl *se_node_acl ;
7267 struct se_portal_group *se_tpg ;
7268 void *fabric_sess_ptr ;
7269 struct list_head sess_list ;
7270 struct list_head sess_acl_list ;
7271 struct list_head sess_cmd_list ;
7272 struct list_head sess_wait_list ;
7273 spinlock_t sess_cmd_lock ;
7274 struct kref sess_kref ;
7275};
7276#line 663 "include/target/target_core_base.h"
7277struct se_ml_stat_grps {
7278 struct config_group stat_group ;
7279 struct config_group scsi_auth_intr_group ;
7280 struct config_group scsi_att_intr_port_group ;
7281};
7282#line 672 "include/target/target_core_base.h"
7283struct se_lun_acl {
7284 char initiatorname[224U] ;
7285 u32 mapped_lun ;
7286 struct se_node_acl *se_lun_nacl ;
7287 struct se_lun *se_lun ;
7288 struct list_head lacl_list ;
7289 struct config_group se_lun_group ;
7290 struct se_ml_stat_grps ml_stat_grps ;
7291};
7292#line 682 "include/target/target_core_base.h"
7293struct se_dev_entry {
7294 bool def_pr_registered ;
7295 u32 lun_flags ;
7296 u32 deve_cmds ;
7297 u32 mapped_lun ;
7298 u32 average_bytes ;
7299 u32 last_byte_count ;
7300 u32 total_cmds ;
7301 u32 total_bytes ;
7302 u64 pr_res_key ;
7303 u64 creation_time ;
7304 u32 attach_count ;
7305 u64 read_bytes ;
7306 u64 write_bytes ;
7307 atomic_t ua_count ;
7308 atomic_t pr_ref_count ;
7309 struct se_lun_acl *se_lun_acl ;
7310 spinlock_t ua_lock ;
7311 struct se_lun *se_lun ;
7312 struct list_head alua_port_list ;
7313 struct list_head ua_list ;
7314};
7315#line 716 "include/target/target_core_base.h"
7316struct se_dev_attrib {
7317 int emulate_dpo ;
7318 int emulate_fua_write ;
7319 int emulate_fua_read ;
7320 int emulate_write_cache ;
7321 int emulate_ua_intlck_ctrl ;
7322 int emulate_tas ;
7323 int emulate_tpu ;
7324 int emulate_tpws ;
7325 int emulate_reservations ;
7326 int emulate_alua ;
7327 int enforce_pr_isids ;
7328 int is_nonrot ;
7329 int emulate_rest_reord ;
7330 u32 hw_block_size ;
7331 u32 block_size ;
7332 u32 hw_max_sectors ;
7333 u32 max_sectors ;
7334 u32 fabric_max_sectors ;
7335 u32 optimal_sectors ;
7336 u32 hw_queue_depth ;
7337 u32 queue_depth ;
7338 u32 max_unmap_lba_count ;
7339 u32 max_unmap_block_desc_count ;
7340 u32 unmap_granularity ;
7341 u32 unmap_granularity_alignment ;
7342 struct se_subsystem_dev *da_sub_dev ;
7343 struct config_group da_group ;
7344};
7345#line 746 "include/target/target_core_base.h"
7346struct se_dev_stat_grps {
7347 struct config_group stat_group ;
7348 struct config_group scsi_dev_group ;
7349 struct config_group scsi_tgt_dev_group ;
7350 struct config_group scsi_lu_group ;
7351};
7352#line 753
7353struct se_hba;
7354#line 753 "include/target/target_core_base.h"
7355struct se_subsystem_dev {
7356 unsigned char se_dev_alias[512U] ;
7357 unsigned char se_dev_udev_path[512U] ;
7358 u32 su_dev_flags ;
7359 struct se_hba *se_dev_hba ;
7360 struct se_device *se_dev_ptr ;
7361 struct se_dev_attrib se_dev_attrib ;
7362 struct t10_alua t10_alua ;
7363 struct t10_wwn t10_wwn ;
7364 struct t10_reservation t10_pr ;
7365 spinlock_t se_dev_lock ;
7366 void *se_dev_su_ptr ;
7367 struct config_group se_dev_group ;
7368 struct config_group se_dev_pr_group ;
7369 struct se_dev_stat_grps dev_stat_grps ;
7370};
7371#line 779
7372struct se_subsystem_api;
7373#line 779 "include/target/target_core_base.h"
7374struct se_device {
7375 u16 dev_rpti_counter ;
7376 u32 dev_cur_ordered_id ;
7377 u32 dev_flags ;
7378 u32 dev_port_count ;
7379 u32 dev_status ;
7380 u32 queue_depth ;
7381 u64 dev_res_bin_isid ;
7382 t10_task_attr_index_t dev_task_attr_type ;
7383 void *dev_ptr ;
7384 u32 dev_index ;
7385 u64 creation_time ;
7386 u32 num_resets ;
7387 u64 num_cmds ;
7388 u64 read_bytes ;
7389 u64 write_bytes ;
7390 spinlock_t stats_lock ;
7391 atomic_t simple_cmds ;
7392 atomic_t dev_ordered_id ;
7393 atomic_t execute_tasks ;
7394 atomic_t dev_ordered_sync ;
7395 atomic_t dev_qf_count ;
7396 struct se_obj dev_obj ;
7397 struct se_obj dev_access_obj ;
7398 struct se_obj dev_export_obj ;
7399 struct se_queue_obj dev_queue_obj ;
7400 spinlock_t delayed_cmd_lock ;
7401 spinlock_t execute_task_lock ;
7402 spinlock_t dev_reservation_lock ;
7403 spinlock_t dev_status_lock ;
7404 spinlock_t se_port_lock ;
7405 spinlock_t se_tmr_lock ;
7406 spinlock_t qf_cmd_lock ;
7407 struct se_node_acl *dev_reserved_node_acl ;
7408 struct t10_alua_lu_gp_member *dev_alua_lu_gp_mem ;
7409 struct t10_pr_registration *dev_pr_res_holder ;
7410 struct list_head dev_sep_list ;
7411 struct list_head dev_tmr_list ;
7412 struct task_struct *process_thread ;
7413 struct work_struct qf_work_queue ;
7414 struct list_head delayed_cmd_list ;
7415 struct list_head execute_task_list ;
7416 struct list_head state_task_list ;
7417 struct list_head qf_cmd_list ;
7418 struct se_hba *se_hba ;
7419 struct se_subsystem_dev *se_sub_dev ;
7420 struct se_subsystem_api *transport ;
7421 struct list_head dev_list ;
7422};
7423#line 843 "include/target/target_core_base.h"
7424struct se_hba {
7425 u16 hba_tpgt ;
7426 u32 hba_id ;
7427 u32 hba_flags ;
7428 u32 dev_count ;
7429 u32 hba_index ;
7430 void *hba_ptr ;
7431 struct list_head hba_dev_list ;
7432 struct list_head hba_node ;
7433 spinlock_t device_lock ;
7434 struct config_group hba_group ;
7435 struct mutex hba_access_mutex ;
7436 struct se_subsystem_api *transport ;
7437};
7438#line 862 "include/target/target_core_base.h"
7439struct se_port_stat_grps {
7440 struct config_group stat_group ;
7441 struct config_group scsi_port_group ;
7442 struct config_group scsi_tgt_port_group ;
7443 struct config_group scsi_transport_group ;
7444};
7445#line 869 "include/target/target_core_base.h"
7446struct se_lun {
7447 enum transport_lun_status_table lun_status ;
7448 u32 lun_access ;
7449 u32 lun_flags ;
7450 u32 unpacked_lun ;
7451 atomic_t lun_acl_count ;
7452 spinlock_t lun_acl_lock ;
7453 spinlock_t lun_cmd_lock ;
7454 spinlock_t lun_sep_lock ;
7455 struct completion lun_shutdown_comp ;
7456 struct list_head lun_cmd_list ;
7457 struct list_head lun_acl_list ;
7458 struct se_device *lun_se_dev ;
7459 struct se_port *lun_sep ;
7460 struct config_group lun_group ;
7461 struct se_port_stat_grps port_stat_grps ;
7462};
7463#line 888 "include/target/target_core_base.h"
7464struct scsi_port_stats {
7465 u64 cmd_pdus ;
7466 u64 tx_data_octets ;
7467 u64 rx_data_octets ;
7468};
7469#line 894 "include/target/target_core_base.h"
7470struct se_port {
7471 u16 sep_rtpi ;
7472 int sep_tg_pt_secondary_stat ;
7473 int sep_tg_pt_secondary_write_md ;
7474 u32 sep_index ;
7475 struct scsi_port_stats sep_stats ;
7476 atomic_t sep_tg_pt_secondary_offline ;
7477 atomic_t sep_tg_pt_ref_cnt ;
7478 spinlock_t sep_alua_lock ;
7479 struct mutex sep_tg_pt_md_mutex ;
7480 struct t10_alua_tg_pt_gp_member *sep_alua_tg_pt_gp_mem ;
7481 struct se_lun *sep_lun ;
7482 struct se_portal_group *sep_tpg ;
7483 struct list_head sep_alua_list ;
7484 struct list_head sep_list ;
7485};
7486#line 914 "include/target/target_core_base.h"
7487struct se_tpg_np {
7488 struct se_portal_group *tpg_np_parent ;
7489 struct config_group tpg_np_group ;
7490};
7491#line 919
7492struct se_wwn;
7493#line 919 "include/target/target_core_base.h"
7494struct se_portal_group {
7495 enum transport_tpg_type_table se_tpg_type ;
7496 u32 num_node_acls ;
7497 atomic_t tpg_pr_ref_count ;
7498 spinlock_t acl_node_lock ;
7499 spinlock_t session_lock ;
7500 spinlock_t tpg_lun_lock ;
7501 void *se_tpg_fabric_ptr ;
7502 struct list_head se_tpg_node ;
7503 struct list_head acl_node_list ;
7504 struct se_lun **tpg_lun_list ;
7505 struct se_lun tpg_virt_lun0 ;
7506 struct list_head tpg_sess_list ;
7507 struct target_core_fabric_ops *se_tpg_tfo ;
7508 struct se_wwn *se_tpg_wwn ;
7509 struct config_group tpg_group ;
7510 struct config_group *tpg_default_groups[6U] ;
7511 struct config_group tpg_lun_group ;
7512 struct config_group tpg_np_group ;
7513 struct config_group tpg_acl_group ;
7514 struct config_group tpg_attrib_group ;
7515 struct config_group tpg_param_group ;
7516};
7517#line 952
7518struct target_fabric_configfs;
7519#line 952 "include/target/target_core_base.h"
7520struct se_wwn {
7521 struct target_fabric_configfs *wwn_tf ;
7522 struct config_group wwn_group ;
7523 struct config_group *wwn_default_groups[2U] ;
7524 struct config_group fabric_stat_group ;
7525};
7526#line 959 "include/target/target_core_base.h"
7527struct target_core_fabric_ops {
7528 struct configfs_subsystem *tf_subsys ;
7529 bool task_sg_chaining ;
7530 char *(*get_fabric_name)(void) ;
7531 u8 (*get_fabric_proto_ident)(struct se_portal_group * ) ;
7532 char *(*tpg_get_wwn)(struct se_portal_group * ) ;
7533 u16 (*tpg_get_tag)(struct se_portal_group * ) ;
7534 u32 (*tpg_get_default_depth)(struct se_portal_group * ) ;
7535 u32 (*tpg_get_pr_transport_id)(struct se_portal_group * , struct se_node_acl * ,
7536 struct t10_pr_registration * , int * , unsigned char * ) ;
7537 u32 (*tpg_get_pr_transport_id_len)(struct se_portal_group * , struct se_node_acl * ,
7538 struct t10_pr_registration * , int * ) ;
7539 char *(*tpg_parse_pr_out_transport_id)(struct se_portal_group * , char const * ,
7540 u32 * , char ** ) ;
7541 int (*tpg_check_demo_mode)(struct se_portal_group * ) ;
7542 int (*tpg_check_demo_mode_cache)(struct se_portal_group * ) ;
7543 int (*tpg_check_demo_mode_write_protect)(struct se_portal_group * ) ;
7544 int (*tpg_check_prod_mode_write_protect)(struct se_portal_group * ) ;
7545 int (*tpg_check_demo_mode_login_only)(struct se_portal_group * ) ;
7546 struct se_node_acl *(*tpg_alloc_fabric_acl)(struct se_portal_group * ) ;
7547 void (*tpg_release_fabric_acl)(struct se_portal_group * , struct se_node_acl * ) ;
7548 u32 (*tpg_get_inst_index)(struct se_portal_group * ) ;
7549 int (*new_cmd_map)(struct se_cmd * ) ;
7550 int (*check_stop_free)(struct se_cmd * ) ;
7551 void (*release_cmd)(struct se_cmd * ) ;
7552 int (*shutdown_session)(struct se_session * ) ;
7553 void (*close_session)(struct se_session * ) ;
7554 u32 (*sess_get_index)(struct se_session * ) ;
7555 u32 (*sess_get_initiator_sid)(struct se_session * , unsigned char * , u32 ) ;
7556 int (*write_pending)(struct se_cmd * ) ;
7557 int (*write_pending_status)(struct se_cmd * ) ;
7558 void (*set_default_node_attributes)(struct se_node_acl * ) ;
7559 u32 (*get_task_tag)(struct se_cmd * ) ;
7560 int (*get_cmd_state)(struct se_cmd * ) ;
7561 int (*queue_data_in)(struct se_cmd * ) ;
7562 int (*queue_status)(struct se_cmd * ) ;
7563 int (*queue_tm_rsp)(struct se_cmd * ) ;
7564 u16 (*set_fabric_sense_len)(struct se_cmd * , u32 ) ;
7565 u16 (*get_fabric_sense_len)(void) ;
7566 struct se_wwn *(*fabric_make_wwn)(struct target_fabric_configfs * , struct config_group * ,
7567 char const * ) ;
7568 void (*fabric_drop_wwn)(struct se_wwn * ) ;
7569 struct se_portal_group *(*fabric_make_tpg)(struct se_wwn * , struct config_group * ,
7570 char const * ) ;
7571 void (*fabric_drop_tpg)(struct se_portal_group * ) ;
7572 int (*fabric_post_link)(struct se_portal_group * , struct se_lun * ) ;
7573 void (*fabric_pre_unlink)(struct se_portal_group * , struct se_lun * ) ;
7574 struct se_tpg_np *(*fabric_make_np)(struct se_portal_group * , struct config_group * ,
7575 char const * ) ;
7576 void (*fabric_drop_np)(struct se_tpg_np * ) ;
7577 struct se_node_acl *(*fabric_make_nodeacl)(struct se_portal_group * , struct config_group * ,
7578 char const * ) ;
7579 void (*fabric_drop_nodeacl)(struct se_node_acl * ) ;
7580};
7581#line 68 "include/target/target_core_fabric_configfs.h"
7582struct target_fabric_tpg_attribute {
7583 struct configfs_attribute attr ;
7584 ssize_t (*show)(struct se_portal_group * , char * ) ;
7585 ssize_t (*store)(struct se_portal_group * , char const * , size_t ) ;
7586};
7587#line 76 "include/target/target_core_fabric_configfs.h"
7588struct target_fabric_wwn_attribute {
7589 struct configfs_attribute attr ;
7590 ssize_t (*show)(struct target_fabric_configfs * , char * ) ;
7591 ssize_t (*store)(struct target_fabric_configfs * , char const * , size_t ) ;
7592};
7593#line 13 "include/target/target_core_configfs.h"
7594struct target_fabric_configfs_template {
7595 struct config_item_type tfc_discovery_cit ;
7596 struct config_item_type tfc_wwn_cit ;
7597 struct config_item_type tfc_wwn_fabric_stats_cit ;
7598 struct config_item_type tfc_tpg_cit ;
7599 struct config_item_type tfc_tpg_base_cit ;
7600 struct config_item_type tfc_tpg_lun_cit ;
7601 struct config_item_type tfc_tpg_port_cit ;
7602 struct config_item_type tfc_tpg_port_stat_cit ;
7603 struct config_item_type tfc_tpg_np_cit ;
7604 struct config_item_type tfc_tpg_np_base_cit ;
7605 struct config_item_type tfc_tpg_attrib_cit ;
7606 struct config_item_type tfc_tpg_param_cit ;
7607 struct config_item_type tfc_tpg_nacl_cit ;
7608 struct config_item_type tfc_tpg_nacl_base_cit ;
7609 struct config_item_type tfc_tpg_nacl_attrib_cit ;
7610 struct config_item_type tfc_tpg_nacl_auth_cit ;
7611 struct config_item_type tfc_tpg_nacl_param_cit ;
7612 struct config_item_type tfc_tpg_nacl_stat_cit ;
7613 struct config_item_type tfc_tpg_mappedlun_cit ;
7614 struct config_item_type tfc_tpg_mappedlun_stat_cit ;
7615};
7616#line 36 "include/target/target_core_configfs.h"
7617struct target_fabric_configfs {
7618 char tf_name[32U] ;
7619 atomic_t tf_access_cnt ;
7620 struct list_head tf_list ;
7621 struct config_group tf_group ;
7622 struct config_group tf_disc_group ;
7623 struct config_group *tf_default_groups[2U] ;
7624 struct config_item *tf_fabric ;
7625 struct config_item_type *tf_fabric_cit ;
7626 struct configfs_subsystem *tf_subsys ;
7627 struct module *tf_module ;
7628 struct target_core_fabric_ops tf_ops ;
7629 struct target_fabric_configfs_template tf_cit_tmpl ;
7630};
7631#line 55 "include/target/target_core_configfs.h"
7632struct tcm_loop_cmd {
7633 u32 sc_cmd_state ;
7634 struct scsi_cmnd *sc ;
7635 struct se_cmd tl_se_cmd ;
7636 struct work_struct work ;
7637 unsigned char tl_sense_buf[96U] ;
7638};
7639#line 21 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/target/loopback/tcm_loop.h"
7640struct tcm_loop_tmr {
7641 atomic_t tmr_complete ;
7642 wait_queue_head_t tl_tmr_wait ;
7643};
7644#line 26
7645struct scsi_host;
7646#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/target/loopback/tcm_loop.h"
7647struct tcm_loop_nexus {
7648 int it_nexus_active ;
7649 struct scsi_host *sh ;
7650 struct se_session *se_sess ;
7651};
7652#line 38 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/target/loopback/tcm_loop.h"
7653struct tcm_loop_nacl {
7654 struct se_node_acl se_node_acl ;
7655};
7656#line 42
7657struct tcm_loop_hba;
7658#line 42 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/target/loopback/tcm_loop.h"
7659struct tcm_loop_tpg {
7660 unsigned short tl_tpgt ;
7661 atomic_t tl_tpg_port_count ;
7662 struct se_portal_group tl_se_tpg ;
7663 struct tcm_loop_hba *tl_hba ;
7664};
7665#line 49
7666struct se_hba_s;
7667#line 49
7668struct se_device_s;
7669#line 49 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/target/loopback/tcm_loop.h"
7670struct tcm_loop_hba {
7671 u8 tl_proto_id ;
7672 unsigned char tl_wwn_address[256U] ;
7673 struct se_hba_s *se_hba ;
7674 struct se_lun *tl_hba_lun ;
7675 struct se_port *tl_hba_lun_sep ;
7676 struct se_device_s *se_dev_hba_ptr ;
7677 struct tcm_loop_nexus *tl_nexus ;
7678 struct device dev ;
7679 struct Scsi_Host *sh ;
7680 struct tcm_loop_tpg tl_hba_tpgs[32U] ;
7681 struct se_wwn tl_hba_wwn ;
7682};
7683#line 1 "<compiler builtins>"
7684
7685#line 1
7686long __builtin_expect(long , long ) ;
7687#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
7688void ldv_spin_lock(void) ;
7689#line 3
7690void ldv_spin_unlock(void) ;
7691#line 4
7692int ldv_spin_trylock(void) ;
7693#line 60 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
7694__inline static void set_bit(unsigned int nr , unsigned long volatile *addr )
7695{ long volatile *__cil_tmp3 ;
7696
7697 {
7698#line 68
7699 __cil_tmp3 = (long volatile *)addr;
7700#line 68
7701 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
7702#line 70
7703 return;
7704}
7705}
7706#line 101 "include/linux/printk.h"
7707extern int printk(char const * , ...) ;
7708#line 45 "include/linux/dynamic_debug.h"
7709extern int __dynamic_pr_debug(struct _ddebug * , char const * , ...) ;
7710#line 147 "include/linux/kernel.h"
7711extern void __might_sleep(char const * , int , int ) ;
7712#line 307
7713extern unsigned long simple_strtoul(char const * , char ** , unsigned int ) ;
7714#line 320
7715extern int sprintf(char * , char const * , ...) ;
7716#line 323
7717extern int snprintf(char * , size_t , char const * , ...) ;
7718#line 24 "include/linux/list.h"
7719__inline static void INIT_LIST_HEAD(struct list_head *list )
7720{ unsigned long __cil_tmp2 ;
7721 unsigned long __cil_tmp3 ;
7722
7723 {
7724#line 26
7725 *((struct list_head **)list) = list;
7726#line 27
7727 __cil_tmp2 = (unsigned long )list;
7728#line 27
7729 __cil_tmp3 = __cil_tmp2 + 8;
7730#line 27
7731 *((struct list_head **)__cil_tmp3) = list;
7732#line 28
7733 return;
7734}
7735}
7736#line 88 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/percpu.h"
7737extern void __bad_percpu_size(void) ;
7738#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
7739extern struct task_struct *current_task ;
7740#line 12 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
7741__inline static struct task_struct *get_current(void)
7742{ struct task_struct *pfo_ret__ ;
7743
7744 {
7745#line 14
7746 if (8 == 1) {
7747#line 14
7748 goto case_1;
7749 } else
7750#line 14
7751 if (8 == 2) {
7752#line 14
7753 goto case_2;
7754 } else
7755#line 14
7756 if (8 == 4) {
7757#line 14
7758 goto case_4;
7759 } else
7760#line 14
7761 if (8 == 8) {
7762#line 14
7763 goto case_8;
7764 } else {
7765 {
7766#line 14
7767 goto switch_default;
7768#line 14
7769 if (0) {
7770 case_1:
7771#line 14
7772 __asm__ ("movb %%gs:%P1,%0": "=q" (pfo_ret__): "p" (& current_task));
7773#line 14
7774 goto ldv_2918;
7775 case_2:
7776#line 14
7777 __asm__ ("movw %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
7778#line 14
7779 goto ldv_2918;
7780 case_4:
7781#line 14
7782 __asm__ ("movl %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
7783#line 14
7784 goto ldv_2918;
7785 case_8:
7786#line 14
7787 __asm__ ("movq %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
7788#line 14
7789 goto ldv_2918;
7790 switch_default:
7791 {
7792#line 14
7793 __bad_percpu_size();
7794 }
7795 } else {
7796 switch_break: ;
7797 }
7798 }
7799 }
7800 ldv_2918: ;
7801#line 14
7802 return (pfo_ret__);
7803}
7804}
7805#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
7806extern void *__memcpy(void * , void const * , size_t ) ;
7807#line 55
7808extern void *memset(void * , int , size_t ) ;
7809#line 61
7810extern size_t strlen(char const * ) ;
7811#line 45 "include/linux/string.h"
7812extern int strncmp(char const * , char const * , __kernel_size_t ) ;
7813#line 75
7814extern char *strstr(char const * , char const * ) ;
7815#line 22 "include/linux/err.h"
7816__inline static void *ERR_PTR(long error )
7817{
7818
7819 {
7820#line 24
7821 return ((void *)error);
7822}
7823}
7824#line 27 "include/linux/err.h"
7825__inline static long PTR_ERR(void const *ptr )
7826{
7827
7828 {
7829#line 29
7830 return ((long )ptr);
7831}
7832}
7833#line 32 "include/linux/err.h"
7834__inline static long IS_ERR(void const *ptr )
7835{ long tmp ;
7836 unsigned long __cil_tmp3 ;
7837 int __cil_tmp4 ;
7838 long __cil_tmp5 ;
7839
7840 {
7841 {
7842#line 34
7843 __cil_tmp3 = (unsigned long )ptr;
7844#line 34
7845 __cil_tmp4 = __cil_tmp3 > 0xfffffffffffff000UL;
7846#line 34
7847 __cil_tmp5 = (long )__cil_tmp4;
7848#line 34
7849 tmp = __builtin_expect(__cil_tmp5, 0L);
7850 }
7851#line 34
7852 return (tmp);
7853}
7854}
7855#line 23 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
7856__inline static int atomic_read(atomic_t const *v )
7857{ int const *__cil_tmp2 ;
7858 int volatile *__cil_tmp3 ;
7859 int volatile __cil_tmp4 ;
7860
7861 {
7862 {
7863#line 25
7864 __cil_tmp2 = (int const *)v;
7865#line 25
7866 __cil_tmp3 = (int volatile *)__cil_tmp2;
7867#line 25
7868 __cil_tmp4 = *__cil_tmp3;
7869#line 25
7870 return ((int )__cil_tmp4);
7871 }
7872}
7873}
7874#line 35 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
7875__inline static void atomic_set(atomic_t *v , int i )
7876{
7877
7878 {
7879#line 37
7880 *((int *)v) = i;
7881#line 38
7882 return;
7883}
7884}
7885#line 93 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
7886__inline static void atomic_inc(atomic_t *v )
7887{
7888
7889 {
7890#line 95
7891 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; incl %0": "+m" (*((int *)v)));
7892#line 97
7893 return;
7894}
7895}
7896#line 105 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/atomic.h"
7897__inline static void atomic_dec(atomic_t *v )
7898{
7899
7900 {
7901#line 107
7902 __asm__ volatile (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; decl %0": "+m" (*((int *)v)));
7903#line 109
7904 return;
7905}
7906}
7907#line 261 "include/linux/lockdep.h"
7908extern void lockdep_init_map(struct lockdep_map * , char const * , struct lock_class_key * ,
7909 int ) ;
7910#line 79 "include/linux/wait.h"
7911extern void __init_waitqueue_head(wait_queue_head_t * , char const * , struct lock_class_key * ) ;
7912#line 155
7913extern void __wake_up(wait_queue_head_t * , unsigned int , int , void * ) ;
7914#line 584
7915extern void prepare_to_wait(wait_queue_head_t * , wait_queue_t * , int ) ;
7916#line 586
7917extern void finish_wait(wait_queue_head_t * , wait_queue_t * ) ;
7918#line 589
7919extern int autoremove_wake_function(wait_queue_t * , unsigned int , int , void * ) ;
7920#line 156 "include/linux/workqueue.h"
7921extern void __init_work(struct work_struct * , int ) ;
7922#line 304
7923extern struct workqueue_struct *__alloc_workqueue_key(char const * , unsigned int ,
7924 int , struct lock_class_key * ,
7925 char const * , ...) ;
7926#line 366
7927extern void destroy_workqueue(struct workqueue_struct * ) ;
7928#line 368
7929extern int queue_work(struct workqueue_struct * , struct work_struct * ) ;
7930#line 54 "include/linux/vmalloc.h"
7931extern void *vmalloc(unsigned long ) ;
7932#line 57
7933void *ldv_vmalloc_29(unsigned long ldv_func_arg1 ) ;
7934#line 26 "include/linux/export.h"
7935extern struct module __this_module ;
7936#line 101 "include/linux/slab.h"
7937extern struct kmem_cache *kmem_cache_create(char const * , size_t , size_t , unsigned long ,
7938 void (*)(void * ) ) ;
7939#line 104
7940extern void kmem_cache_destroy(struct kmem_cache * ) ;
7941#line 106
7942extern void kmem_cache_free(struct kmem_cache * , void * ) ;
7943#line 161
7944extern void kfree(void const * ) ;
7945#line 220 "include/linux/slub_def.h"
7946extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
7947#line 223
7948void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
7949#line 227
7950void *ldv_kmem_cache_alloc_28(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
7951#line 339 "include/linux/slab.h"
7952__inline static void *kmem_cache_zalloc(struct kmem_cache *k , gfp_t flags ) ;
7953#line 353
7954__inline static void *kzalloc(size_t size , gfp_t flags ) ;
7955#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
7956extern void *__VERIFIER_nondet_pointer(void) ;
7957#line 11
7958void ldv_check_alloc_flags(gfp_t flags ) ;
7959#line 12
7960void ldv_check_alloc_nonatomic(void) ;
7961#line 14
7962struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
7963#line 69 "include/linux/configfs.h"
7964__inline static char *config_item_name(struct config_item *item )
7965{
7966
7967 {
7968#line 71
7969 return (*((char **)item));
7970}
7971}
7972#line 737 "include/linux/mm.h"
7973__inline static void *lowmem_page_address(struct page const *page )
7974{ long __cil_tmp2 ;
7975 long __cil_tmp3 ;
7976 long __cil_tmp4 ;
7977 unsigned long long __cil_tmp5 ;
7978 unsigned long long __cil_tmp6 ;
7979 unsigned long __cil_tmp7 ;
7980 unsigned long __cil_tmp8 ;
7981
7982 {
7983 {
7984#line 739
7985 __cil_tmp2 = (long )page;
7986#line 739
7987 __cil_tmp3 = __cil_tmp2 + 24189255811072L;
7988#line 739
7989 __cil_tmp4 = __cil_tmp3 / 64L;
7990#line 739
7991 __cil_tmp5 = (unsigned long long )__cil_tmp4;
7992#line 739
7993 __cil_tmp6 = __cil_tmp5 << 12;
7994#line 739
7995 __cil_tmp7 = (unsigned long )__cil_tmp6;
7996#line 739
7997 __cil_tmp8 = __cil_tmp7 + 0xffff880000000000UL;
7998#line 739
7999 return ((void *)__cil_tmp8);
8000 }
8001}
8002}
8003#line 95 "include/linux/scatterlist.h"
8004__inline static struct page *sg_page(struct scatterlist *sg )
8005{ long tmp ;
8006 long tmp___0 ;
8007 unsigned long __cil_tmp4 ;
8008 int __cil_tmp5 ;
8009 long __cil_tmp6 ;
8010 unsigned long __cil_tmp7 ;
8011 unsigned long __cil_tmp8 ;
8012 unsigned long __cil_tmp9 ;
8013 int __cil_tmp10 ;
8014 long __cil_tmp11 ;
8015 long __cil_tmp12 ;
8016 unsigned long __cil_tmp13 ;
8017 unsigned long __cil_tmp14 ;
8018 unsigned long __cil_tmp15 ;
8019 unsigned long __cil_tmp16 ;
8020
8021 {
8022 {
8023#line 98
8024 __cil_tmp4 = *((unsigned long *)sg);
8025#line 98
8026 __cil_tmp5 = __cil_tmp4 != 2271560481UL;
8027#line 98
8028 __cil_tmp6 = (long )__cil_tmp5;
8029#line 98
8030 tmp = __builtin_expect(__cil_tmp6, 0L);
8031 }
8032#line 98
8033 if (tmp != 0L) {
8034#line 98
8035 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"include/linux/scatterlist.h"),
8036 "i" (98), "i" (12UL));
8037 ldv_16929: ;
8038#line 98
8039 goto ldv_16929;
8040 } else {
8041
8042 }
8043 {
8044#line 99
8045 __cil_tmp7 = (unsigned long )sg;
8046#line 99
8047 __cil_tmp8 = __cil_tmp7 + 8;
8048#line 99
8049 __cil_tmp9 = *((unsigned long *)__cil_tmp8);
8050#line 99
8051 __cil_tmp10 = (int )__cil_tmp9;
8052#line 99
8053 __cil_tmp11 = (long )__cil_tmp10;
8054#line 99
8055 __cil_tmp12 = __cil_tmp11 & 1L;
8056#line 99
8057 tmp___0 = __builtin_expect(__cil_tmp12, 0L);
8058 }
8059#line 99
8060 if (tmp___0 != 0L) {
8061#line 99
8062 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"include/linux/scatterlist.h"),
8063 "i" (99), "i" (12UL));
8064 ldv_16930: ;
8065#line 99
8066 goto ldv_16930;
8067 } else {
8068
8069 }
8070 {
8071#line 101
8072 __cil_tmp13 = (unsigned long )sg;
8073#line 101
8074 __cil_tmp14 = __cil_tmp13 + 8;
8075#line 101
8076 __cil_tmp15 = *((unsigned long *)__cil_tmp14);
8077#line 101
8078 __cil_tmp16 = __cil_tmp15 & 0xfffffffffffffffcUL;
8079#line 101
8080 return ((struct page *)__cil_tmp16);
8081 }
8082}
8083}
8084#line 362 "include/linux/sched.h"
8085extern void schedule(void) ;
8086#line 120 "include/linux/device.h"
8087extern int __bus_register(struct bus_type * , struct lock_class_key * ) ;
8088#line 122
8089extern void bus_unregister(struct bus_type * ) ;
8090#line 238
8091extern int driver_register(struct device_driver * ) ;
8092#line 239
8093extern void driver_unregister(struct device_driver * ) ;
8094#line 695
8095extern int dev_set_name(struct device * , char const * , ...) ;
8096#line 778
8097extern int device_register(struct device * ) ;
8098#line 779
8099extern void device_unregister(struct device * ) ;
8100#line 798
8101extern struct device *__root_device_register(char const * , struct module * ) ;
8102#line 808
8103extern void root_device_unregister(struct device * ) ;
8104#line 49 "include/linux/highmem.h"
8105__inline static void *kmap(struct page *page )
8106{ void *tmp ;
8107 struct page const *__cil_tmp3 ;
8108
8109 {
8110 {
8111#line 51
8112 __might_sleep("include/linux/highmem.h", 51, 0);
8113#line 52
8114 __cil_tmp3 = (struct page const *)page;
8115#line 52
8116 tmp = lowmem_page_address(__cil_tmp3);
8117 }
8118#line 52
8119 return (tmp);
8120}
8121}
8122#line 55 "include/linux/highmem.h"
8123__inline static void kunmap(struct page *page )
8124{
8125
8126 {
8127#line 57
8128 return;
8129}
8130}
8131#line 163 "include/scsi/scsi_cmnd.h"
8132__inline static unsigned int scsi_sg_count(struct scsi_cmnd *cmd )
8133{ unsigned long __cil_tmp2 ;
8134 unsigned long __cil_tmp3 ;
8135 unsigned long __cil_tmp4 ;
8136 unsigned long __cil_tmp5 ;
8137
8138 {
8139 {
8140#line 165
8141 __cil_tmp2 = 0 + 8;
8142#line 165
8143 __cil_tmp3 = 88 + __cil_tmp2;
8144#line 165
8145 __cil_tmp4 = (unsigned long )cmd;
8146#line 165
8147 __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
8148#line 165
8149 return (*((unsigned int *)__cil_tmp5));
8150 }
8151}
8152}
8153#line 168 "include/scsi/scsi_cmnd.h"
8154__inline static struct scatterlist *scsi_sglist(struct scsi_cmnd *cmd )
8155{ unsigned long __cil_tmp2 ;
8156 unsigned long __cil_tmp3 ;
8157
8158 {
8159 {
8160#line 170
8161 __cil_tmp2 = (unsigned long )cmd;
8162#line 170
8163 __cil_tmp3 = __cil_tmp2 + 88;
8164#line 170
8165 return (*((struct scatterlist **)__cil_tmp3));
8166 }
8167}
8168}
8169#line 173 "include/scsi/scsi_cmnd.h"
8170__inline static unsigned int scsi_bufflen(struct scsi_cmnd *cmd )
8171{ unsigned long __cil_tmp2 ;
8172 unsigned long __cil_tmp3 ;
8173 unsigned long __cil_tmp4 ;
8174
8175 {
8176 {
8177#line 175
8178 __cil_tmp2 = 88 + 16;
8179#line 175
8180 __cil_tmp3 = (unsigned long )cmd;
8181#line 175
8182 __cil_tmp4 = __cil_tmp3 + __cil_tmp2;
8183#line 175
8184 return (*((unsigned int *)__cil_tmp4));
8185 }
8186}
8187}
8188#line 178 "include/scsi/scsi_cmnd.h"
8189__inline static void scsi_set_resid(struct scsi_cmnd *cmd , int resid )
8190{ unsigned long __cil_tmp3 ;
8191 unsigned long __cil_tmp4 ;
8192 unsigned long __cil_tmp5 ;
8193
8194 {
8195#line 180
8196 __cil_tmp3 = 88 + 20;
8197#line 180
8198 __cil_tmp4 = (unsigned long )cmd;
8199#line 180
8200 __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
8201#line 180
8202 *((int *)__cil_tmp5) = resid;
8203#line 181
8204 return;
8205}
8206}
8207#line 191 "include/scsi/scsi_cmnd.h"
8208__inline static int scsi_bidi_cmnd(struct scsi_cmnd *cmd )
8209{ int tmp ;
8210 struct request *__cil_tmp3 ;
8211 unsigned long __cil_tmp4 ;
8212 unsigned long __cil_tmp5 ;
8213 unsigned long __cil_tmp6 ;
8214 struct request *__cil_tmp7 ;
8215 unsigned long __cil_tmp8 ;
8216 unsigned long __cil_tmp9 ;
8217 struct request *__cil_tmp10 ;
8218 unsigned long __cil_tmp11 ;
8219 void *__cil_tmp12 ;
8220 unsigned long __cil_tmp13 ;
8221 unsigned long __cil_tmp14 ;
8222 unsigned long __cil_tmp15 ;
8223 struct request *__cil_tmp16 ;
8224 unsigned long __cil_tmp17 ;
8225 unsigned long __cil_tmp18 ;
8226 struct request *__cil_tmp19 ;
8227 unsigned long __cil_tmp20 ;
8228 unsigned long __cil_tmp21 ;
8229 void *__cil_tmp22 ;
8230 unsigned long __cil_tmp23 ;
8231
8232 {
8233 {
8234#line 193
8235 __cil_tmp3 = (struct request *)0;
8236#line 193
8237 __cil_tmp4 = (unsigned long )__cil_tmp3;
8238#line 193
8239 __cil_tmp5 = (unsigned long )cmd;
8240#line 193
8241 __cil_tmp6 = __cil_tmp5 + 128;
8242#line 193
8243 __cil_tmp7 = *((struct request **)__cil_tmp6);
8244#line 193
8245 __cil_tmp8 = (unsigned long )__cil_tmp7;
8246#line 193
8247 __cil_tmp9 = __cil_tmp8 + 344;
8248#line 193
8249 __cil_tmp10 = *((struct request **)__cil_tmp9);
8250#line 193
8251 __cil_tmp11 = (unsigned long )__cil_tmp10;
8252#line 193
8253 if (__cil_tmp11 != __cil_tmp4) {
8254 {
8255#line 193
8256 __cil_tmp12 = (void *)0;
8257#line 193
8258 __cil_tmp13 = (unsigned long )__cil_tmp12;
8259#line 193
8260 __cil_tmp14 = (unsigned long )cmd;
8261#line 193
8262 __cil_tmp15 = __cil_tmp14 + 128;
8263#line 193
8264 __cil_tmp16 = *((struct request **)__cil_tmp15);
8265#line 193
8266 __cil_tmp17 = (unsigned long )__cil_tmp16;
8267#line 193
8268 __cil_tmp18 = __cil_tmp17 + 344;
8269#line 193
8270 __cil_tmp19 = *((struct request **)__cil_tmp18);
8271#line 193
8272 __cil_tmp20 = (unsigned long )__cil_tmp19;
8273#line 193
8274 __cil_tmp21 = __cil_tmp20 + 224;
8275#line 193
8276 __cil_tmp22 = *((void **)__cil_tmp21);
8277#line 193
8278 __cil_tmp23 = (unsigned long )__cil_tmp22;
8279#line 193
8280 if (__cil_tmp23 != __cil_tmp13) {
8281#line 193
8282 tmp = 1;
8283 } else {
8284#line 193
8285 tmp = 0;
8286 }
8287 }
8288 } else {
8289#line 193
8290 tmp = 0;
8291 }
8292 }
8293#line 193
8294 return (tmp);
8295}
8296}
8297#line 197 "include/scsi/scsi_cmnd.h"
8298__inline static struct scsi_data_buffer *scsi_in(struct scsi_cmnd *cmd )
8299{ struct scsi_data_buffer *tmp___0 ;
8300 int tmp___1 ;
8301 unsigned long __cil_tmp5 ;
8302 unsigned long __cil_tmp6 ;
8303 struct request *__cil_tmp7 ;
8304 unsigned long __cil_tmp8 ;
8305 unsigned long __cil_tmp9 ;
8306 struct request *__cil_tmp10 ;
8307 unsigned long __cil_tmp11 ;
8308 unsigned long __cil_tmp12 ;
8309 void *__cil_tmp13 ;
8310 unsigned long __cil_tmp14 ;
8311 unsigned long __cil_tmp15 ;
8312
8313 {
8314 {
8315#line 199
8316 tmp___1 = scsi_bidi_cmnd(cmd);
8317 }
8318#line 199
8319 if (tmp___1 != 0) {
8320#line 199
8321 __cil_tmp5 = (unsigned long )cmd;
8322#line 199
8323 __cil_tmp6 = __cil_tmp5 + 128;
8324#line 199
8325 __cil_tmp7 = *((struct request **)__cil_tmp6);
8326#line 199
8327 __cil_tmp8 = (unsigned long )__cil_tmp7;
8328#line 199
8329 __cil_tmp9 = __cil_tmp8 + 344;
8330#line 199
8331 __cil_tmp10 = *((struct request **)__cil_tmp9);
8332#line 199
8333 __cil_tmp11 = (unsigned long )__cil_tmp10;
8334#line 199
8335 __cil_tmp12 = __cil_tmp11 + 224;
8336#line 199
8337 __cil_tmp13 = *((void **)__cil_tmp12);
8338#line 199
8339 tmp___0 = (struct scsi_data_buffer *)__cil_tmp13;
8340 } else {
8341#line 199
8342 __cil_tmp14 = (unsigned long )cmd;
8343#line 199
8344 __cil_tmp15 = __cil_tmp14 + 88;
8345#line 199
8346 tmp___0 = (struct scsi_data_buffer *)__cil_tmp15;
8347 }
8348#line 199
8349 return (tmp___0);
8350}
8351}
8352#line 304 "include/scsi/scsi_cmnd.h"
8353__inline static void set_host_byte(struct scsi_cmnd *cmd , char status )
8354{ unsigned long __cil_tmp3 ;
8355 unsigned long __cil_tmp4 ;
8356 int __cil_tmp5 ;
8357 int __cil_tmp6 ;
8358 unsigned int __cil_tmp7 ;
8359 unsigned long __cil_tmp8 ;
8360 unsigned long __cil_tmp9 ;
8361 int __cil_tmp10 ;
8362 unsigned int __cil_tmp11 ;
8363 unsigned int __cil_tmp12 ;
8364 unsigned int __cil_tmp13 ;
8365
8366 {
8367#line 306
8368 __cil_tmp3 = (unsigned long )cmd;
8369#line 306
8370 __cil_tmp4 = __cil_tmp3 + 224;
8371#line 306
8372 __cil_tmp5 = (int )status;
8373#line 306
8374 __cil_tmp6 = __cil_tmp5 << 16;
8375#line 306
8376 __cil_tmp7 = (unsigned int )__cil_tmp6;
8377#line 306
8378 __cil_tmp8 = (unsigned long )cmd;
8379#line 306
8380 __cil_tmp9 = __cil_tmp8 + 224;
8381#line 306
8382 __cil_tmp10 = *((int *)__cil_tmp9);
8383#line 306
8384 __cil_tmp11 = (unsigned int )__cil_tmp10;
8385#line 306
8386 __cil_tmp12 = __cil_tmp11 & 4278255615U;
8387#line 306
8388 __cil_tmp13 = __cil_tmp12 | __cil_tmp7;
8389#line 306
8390 *((int *)__cil_tmp4) = (int )__cil_tmp13;
8391#line 307
8392 return;
8393}
8394}
8395#line 309 "include/scsi/scsi_cmnd.h"
8396__inline static void set_driver_byte(struct scsi_cmnd *cmd , char status )
8397{ unsigned long __cil_tmp3 ;
8398 unsigned long __cil_tmp4 ;
8399 int __cil_tmp5 ;
8400 int __cil_tmp6 ;
8401 unsigned long __cil_tmp7 ;
8402 unsigned long __cil_tmp8 ;
8403 int __cil_tmp9 ;
8404 int __cil_tmp10 ;
8405
8406 {
8407#line 311
8408 __cil_tmp3 = (unsigned long )cmd;
8409#line 311
8410 __cil_tmp4 = __cil_tmp3 + 224;
8411#line 311
8412 __cil_tmp5 = (int )status;
8413#line 311
8414 __cil_tmp6 = __cil_tmp5 << 24;
8415#line 311
8416 __cil_tmp7 = (unsigned long )cmd;
8417#line 311
8418 __cil_tmp8 = __cil_tmp7 + 224;
8419#line 311
8420 __cil_tmp9 = *((int *)__cil_tmp8);
8421#line 311
8422 __cil_tmp10 = __cil_tmp9 & 16777215;
8423#line 311
8424 *((int *)__cil_tmp4) = __cil_tmp10 | __cil_tmp6;
8425#line 312
8426 return;
8427}
8428}
8429#line 286 "include/scsi/scsi_device.h"
8430extern int scsi_add_device(struct Scsi_Host * , uint , uint , uint ) ;
8431#line 289
8432extern void scsi_remove_device(struct scsi_device * ) ;
8433#line 293
8434extern void scsi_device_put(struct scsi_device * ) ;
8435#line 294
8436extern struct scsi_device *scsi_device_lookup(struct Scsi_Host * , uint , uint ,
8437 uint ) ;
8438#line 342
8439extern void scsi_adjust_queue_depth(struct scsi_device * , int , int ) ;
8440#line 343
8441extern int scsi_track_queue_full(struct scsi_device * , int ) ;
8442#line 750 "include/scsi/scsi_host.h"
8443__inline static void *shost_priv(struct Scsi_Host *shost )
8444{ unsigned long __cil_tmp2 ;
8445 unsigned long __cil_tmp3 ;
8446 unsigned long (*__cil_tmp4)[0U] ;
8447
8448 {
8449 {
8450#line 752
8451 __cil_tmp2 = (unsigned long )shost;
8452#line 752
8453 __cil_tmp3 = __cil_tmp2 + 3048;
8454#line 752
8455 __cil_tmp4 = (unsigned long (*)[0U])__cil_tmp3;
8456#line 752
8457 return ((void *)__cil_tmp4);
8458 }
8459}
8460}
8461#line 778
8462extern struct Scsi_Host *scsi_host_alloc(struct scsi_host_template * , int ) ;
8463#line 779
8464extern int scsi_add_host_with_dma(struct Scsi_Host * , struct device * , struct device * ) ;
8465#line 784
8466extern void scsi_remove_host(struct Scsi_Host * ) ;
8467#line 786
8468extern void scsi_host_put(struct Scsi_Host * ) ;
8469#line 793 "include/scsi/scsi_host.h"
8470__inline static int scsi_add_host(struct Scsi_Host *host , struct device *dev )
8471{ int tmp ;
8472
8473 {
8474 {
8475#line 796
8476 tmp = scsi_add_host_with_dma(host, dev, dev);
8477 }
8478#line 796
8479 return (tmp);
8480}
8481}
8482#line 27 "include/scsi/scsi_tcq.h"
8483__inline static int scsi_get_tag_type(struct scsi_device *sdev )
8484{ unsigned char *__cil_tmp2 ;
8485 unsigned char *__cil_tmp3 ;
8486 unsigned char __cil_tmp4 ;
8487 unsigned int __cil_tmp5 ;
8488 unsigned char *__cil_tmp6 ;
8489 unsigned char *__cil_tmp7 ;
8490 unsigned char __cil_tmp8 ;
8491 unsigned int __cil_tmp9 ;
8492 unsigned char *__cil_tmp10 ;
8493 unsigned char *__cil_tmp11 ;
8494 unsigned char __cil_tmp12 ;
8495 unsigned int __cil_tmp13 ;
8496
8497 {
8498 {
8499#line 29
8500 __cil_tmp2 = (unsigned char *)sdev;
8501#line 29
8502 __cil_tmp3 = __cil_tmp2 + 293UL;
8503#line 29
8504 __cil_tmp4 = *__cil_tmp3;
8505#line 29
8506 __cil_tmp5 = (unsigned int )__cil_tmp4;
8507#line 29
8508 if (__cil_tmp5 == 0U) {
8509#line 30
8510 return (0);
8511 } else {
8512
8513 }
8514 }
8515 {
8516#line 31
8517 __cil_tmp6 = (unsigned char *)sdev;
8518#line 31
8519 __cil_tmp7 = __cil_tmp6 + 293UL;
8520#line 31
8521 __cil_tmp8 = *__cil_tmp7;
8522#line 31
8523 __cil_tmp9 = (unsigned int )__cil_tmp8;
8524#line 31
8525 if (__cil_tmp9 != 0U) {
8526#line 32
8527 return (34);
8528 } else {
8529
8530 }
8531 }
8532 {
8533#line 33
8534 __cil_tmp10 = (unsigned char *)sdev;
8535#line 33
8536 __cil_tmp11 = __cil_tmp10 + 293UL;
8537#line 33
8538 __cil_tmp12 = *__cil_tmp11;
8539#line 33
8540 __cil_tmp13 = (unsigned int )__cil_tmp12;
8541#line 33
8542 if (__cil_tmp13 != 0U) {
8543#line 34
8544 return (32);
8545 } else {
8546
8547 }
8548 }
8549#line 35
8550 return (0);
8551}
8552}
8553#line 591 "include/linux/skbuff.h"
8554extern struct sk_buff *skb_clone(struct sk_buff * , gfp_t ) ;
8555#line 595
8556struct sk_buff *ldv_skb_clone_22(struct sk_buff *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
8557#line 597
8558extern struct sk_buff *skb_copy(struct sk_buff const * , gfp_t ) ;
8559#line 601
8560struct sk_buff *ldv_skb_copy_24(struct sk_buff const *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
8561#line 606
8562extern int pskb_expand_head(struct sk_buff * , int , int , gfp_t ) ;
8563#line 611
8564int ldv_pskb_expand_head_27(struct sk_buff *ldv_func_arg1 , int ldv_func_arg2 , int ldv_func_arg3 ,
8565 gfp_t ldv_func_arg4 ) ;
8566#line 1690
8567extern struct sk_buff *__netdev_alloc_skb(struct net_device * , unsigned int , gfp_t ) ;
8568#line 1694
8569struct sk_buff *ldv___netdev_alloc_skb_25(struct net_device *ldv_func_arg1 , unsigned int ldv_func_arg2 ,
8570 gfp_t ldv_func_arg3 ) ;
8571#line 1698
8572struct sk_buff *ldv___netdev_alloc_skb_26(struct net_device *ldv_func_arg1 , unsigned int ldv_func_arg2 ,
8573 gfp_t ldv_func_arg3 ) ;
8574#line 99 "include/target/target_core_fabric.h"
8575extern struct se_session *transport_init_session(void) ;
8576#line 100
8577extern void __transport_register_session(struct se_portal_group * , struct se_node_acl * ,
8578 struct se_session * , void * ) ;
8579#line 106
8580extern void transport_free_session(struct se_session * ) ;
8581#line 109
8582extern void transport_deregister_session(struct se_session * ) ;
8583#line 112
8584extern void transport_init_se_cmd(struct se_cmd * , struct target_core_fabric_ops * ,
8585 struct se_session * , u32 , int , int , unsigned char * ) ;
8586#line 114
8587extern int transport_lookup_cmd_lun(struct se_cmd * , u32 ) ;
8588#line 115
8589extern int transport_generic_allocate_tasks(struct se_cmd * , unsigned char * ) ;
8590#line 122
8591extern int transport_handle_cdb_direct(struct se_cmd * ) ;
8592#line 125
8593extern int transport_generic_map_mem_to_cmd(struct se_cmd * , struct scatterlist * ,
8594 u32 , struct scatterlist * , u32 ) ;
8595#line 130
8596extern void transport_generic_process_write(struct se_cmd * ) ;
8597#line 132
8598extern void transport_generic_free_cmd(struct se_cmd * , int ) ;
8599#line 136
8600extern int transport_send_check_condition_and_sense(struct se_cmd * , u8 , int ) ;
8601#line 145
8602extern int core_tmr_alloc_req(struct se_cmd * , void * , u8 , gfp_t ) ;
8603#line 147
8604extern int transport_generic_handle_tmr(struct se_cmd * ) ;
8605#line 149
8606extern int transport_lookup_tmr_lun(struct se_cmd * , u32 ) ;
8607#line 151
8608extern struct se_node_acl *core_tpg_check_initiator_node_acl(struct se_portal_group * ,
8609 unsigned char * ) ;
8610#line 160
8611extern int core_tpg_register(struct target_core_fabric_ops * , struct se_wwn * , struct se_portal_group * ,
8612 void * , int ) ;
8613#line 162
8614extern int core_tpg_deregister(struct se_portal_group * ) ;
8615#line 165
8616extern u8 sas_get_fabric_proto_ident(struct se_portal_group * ) ;
8617#line 166
8618extern u32 sas_get_pr_transport_id(struct se_portal_group * , struct se_node_acl * ,
8619 struct t10_pr_registration * , int * , unsigned char * ) ;
8620#line 168
8621extern u32 sas_get_pr_transport_id_len(struct se_portal_group * , struct se_node_acl * ,
8622 struct t10_pr_registration * , int * ) ;
8623#line 170
8624extern char *sas_parse_pr_out_transport_id(struct se_portal_group * , char const * ,
8625 u32 * , char ** ) ;
8626#line 174
8627extern u8 fc_get_fabric_proto_ident(struct se_portal_group * ) ;
8628#line 175
8629extern u32 fc_get_pr_transport_id(struct se_portal_group * , struct se_node_acl * ,
8630 struct t10_pr_registration * , int * , unsigned char * ) ;
8631#line 177
8632extern u32 fc_get_pr_transport_id_len(struct se_portal_group * , struct se_node_acl * ,
8633 struct t10_pr_registration * , int * ) ;
8634#line 179
8635extern char *fc_parse_pr_out_transport_id(struct se_portal_group * , char const * ,
8636 u32 * , char ** ) ;
8637#line 183
8638extern u8 iscsi_get_fabric_proto_ident(struct se_portal_group * ) ;
8639#line 184
8640extern u32 iscsi_get_pr_transport_id(struct se_portal_group * , struct se_node_acl * ,
8641 struct t10_pr_registration * , int * , unsigned char * ) ;
8642#line 186
8643extern u32 iscsi_get_pr_transport_id_len(struct se_portal_group * , struct se_node_acl * ,
8644 struct t10_pr_registration * , int * ) ;
8645#line 188
8646extern char *iscsi_parse_pr_out_transport_id(struct se_portal_group * , char const * ,
8647 u32 * , char ** ) ;
8648#line 8 "include/target/target_core_configfs.h"
8649extern struct target_fabric_configfs *target_fabric_configfs_init(struct module * ,
8650 char const * ) ;
8651#line 10
8652extern void target_fabric_configfs_free(struct target_fabric_configfs * ) ;
8653#line 11
8654extern int target_fabric_configfs_register(struct target_fabric_configfs * ) ;
8655#line 12
8656extern void target_fabric_configfs_deregister(struct target_fabric_configfs * ) ;
8657#line 60 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8658static struct target_fabric_configfs *tcm_loop_fabric_configfs ;
8659#line 62 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8660static struct workqueue_struct *tcm_loop_workqueue ;
8661#line 63 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8662static struct kmem_cache *tcm_loop_cmd_cache ;
8663#line 65 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8664static int tcm_loop_hba_no_cnt ;
8665#line 67
8666static int tcm_loop_queue_status(struct se_cmd *se_cmd ) ;
8667#line 72 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8668static int tcm_loop_check_stop_free(struct se_cmd *se_cmd )
8669{ unsigned long __cil_tmp2 ;
8670 unsigned long __cil_tmp3 ;
8671 u32 __cil_tmp4 ;
8672 unsigned int __cil_tmp5 ;
8673
8674 {
8675 {
8676#line 79
8677 __cil_tmp2 = (unsigned long )se_cmd;
8678#line 79
8679 __cil_tmp3 = __cil_tmp2 + 28;
8680#line 79
8681 __cil_tmp4 = *((u32 *)__cil_tmp3);
8682#line 79
8683 __cil_tmp5 = __cil_tmp4 & 64U;
8684#line 79
8685 if (__cil_tmp5 != 0U) {
8686#line 80
8687 return (0);
8688 } else {
8689
8690 }
8691 }
8692 {
8693#line 85
8694 transport_generic_free_cmd(se_cmd, 0);
8695 }
8696#line 86
8697 return (1);
8698}
8699}
8700#line 89 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8701static void tcm_loop_release_cmd(struct se_cmd *se_cmd )
8702{ struct tcm_loop_cmd *tl_cmd ;
8703 struct se_cmd const *__mptr ;
8704 struct tcm_loop_cmd *__cil_tmp4 ;
8705 void *__cil_tmp5 ;
8706
8707 {
8708 {
8709#line 91
8710 __mptr = (struct se_cmd const *)se_cmd;
8711#line 91
8712 __cil_tmp4 = (struct tcm_loop_cmd *)__mptr;
8713#line 91
8714 tl_cmd = __cil_tmp4 + 0xfffffffffffffff0UL;
8715#line 94
8716 __cil_tmp5 = (void *)tl_cmd;
8717#line 94
8718 kmem_cache_free(tcm_loop_cmd_cache, __cil_tmp5);
8719 }
8720#line 95
8721 return;
8722}
8723}
8724#line 97 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8725static int tcm_loop_proc_info(struct Scsi_Host *host , char *buffer , char **start ,
8726 off_t offset , int length , int inout )
8727{ int tmp ;
8728
8729 {
8730 {
8731#line 101
8732 tmp = sprintf(buffer, "tcm_loop_proc_info()\n");
8733 }
8734#line 101
8735 return (tmp);
8736}
8737}
8738#line 104
8739static int tcm_loop_driver_probe(struct device *dev ) ;
8740#line 105
8741static int tcm_loop_driver_remove(struct device *dev ) ;
8742#line 107 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8743static int pseudo_lld_bus_match(struct device *dev , struct device_driver *dev_driver )
8744{
8745
8746 {
8747#line 110
8748 return (1);
8749}
8750}
8751#line 113 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8752static struct bus_type tcm_loop_lld_bus =
8753#line 113
8754 {"tcm_loop_bus", (char const *)0, (struct device *)0, (struct bus_attribute *)0,
8755 (struct device_attribute *)0, (struct driver_attribute *)0, & pseudo_lld_bus_match,
8756 (int (*)(struct device * , struct kobj_uevent_env * ))0, & tcm_loop_driver_probe,
8757 & tcm_loop_driver_remove, (void (*)(struct device * ))0, (int (*)(struct device * ,
8758 pm_message_t ))0,
8759 (int (*)(struct device * ))0, (struct dev_pm_ops const *)0, (struct iommu_ops *)0,
8760 (struct subsys_private *)0};
8761#line 120 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8762static struct device_driver tcm_loop_driverfs =
8763#line 120
8764 {"tcm_loop", & tcm_loop_lld_bus, (struct module *)0, (char const *)0, (_Bool)0,
8765 (struct of_device_id const *)0, (int (*)(struct device * ))0, (int (*)(struct device * ))0,
8766 (void (*)(struct device * ))0, (int (*)(struct device * , pm_message_t ))0, (int (*)(struct device * ))0,
8767 (struct attribute_group const **)0, (struct dev_pm_ops const *)0, (struct driver_private *)0};
8768#line 127 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8769struct device *tcm_loop_primary ;
8770#line 133 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8771static int tcm_loop_change_queue_depth(struct scsi_device *sdev , int depth , int reason )
8772{ int tmp ;
8773 int tmp___0 ;
8774 unsigned long __cil_tmp6 ;
8775 unsigned long __cil_tmp7 ;
8776 unsigned short __cil_tmp8 ;
8777
8778 {
8779#line 139
8780 if (reason == 0) {
8781#line 139
8782 goto case_0;
8783 } else
8784#line 142
8785 if (reason == 1) {
8786#line 142
8787 goto case_1;
8788 } else
8789#line 145
8790 if (reason == 2) {
8791#line 145
8792 goto case_2;
8793 } else {
8794 {
8795#line 148
8796 goto switch_default;
8797#line 138
8798 if (0) {
8799 case_0:
8800 {
8801#line 140
8802 tmp = scsi_get_tag_type(sdev);
8803#line 140
8804 scsi_adjust_queue_depth(sdev, tmp, depth);
8805 }
8806#line 141
8807 goto ldv_48943;
8808 case_1:
8809 {
8810#line 143
8811 scsi_track_queue_full(sdev, depth);
8812 }
8813#line 144
8814 goto ldv_48943;
8815 case_2:
8816 {
8817#line 146
8818 tmp___0 = scsi_get_tag_type(sdev);
8819#line 146
8820 scsi_adjust_queue_depth(sdev, tmp___0, depth);
8821 }
8822#line 147
8823 goto ldv_48943;
8824 switch_default: ;
8825#line 149
8826 return (-95);
8827 } else {
8828 switch_break: ;
8829 }
8830 }
8831 }
8832 ldv_48943: ;
8833 {
8834#line 151
8835 __cil_tmp6 = (unsigned long )sdev;
8836#line 151
8837 __cil_tmp7 = __cil_tmp6 + 168;
8838#line 151
8839 __cil_tmp8 = *((unsigned short *)__cil_tmp7);
8840#line 151
8841 return ((int )__cil_tmp8);
8842 }
8843}
8844}
8845#line 157 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8846static int tcm_loop_sam_attr(struct scsi_cmnd *sc )
8847{ struct scsi_device *__cil_tmp2 ;
8848 unsigned char *__cil_tmp3 ;
8849 unsigned char *__cil_tmp4 ;
8850 unsigned char __cil_tmp5 ;
8851 unsigned int __cil_tmp6 ;
8852 unsigned long __cil_tmp7 ;
8853 unsigned long __cil_tmp8 ;
8854 unsigned char __cil_tmp9 ;
8855
8856 {
8857 {
8858#line 159
8859 __cil_tmp2 = *((struct scsi_device **)sc);
8860#line 159
8861 __cil_tmp3 = (unsigned char *)__cil_tmp2;
8862#line 159
8863 __cil_tmp4 = __cil_tmp3 + 293UL;
8864#line 159
8865 __cil_tmp5 = *__cil_tmp4;
8866#line 159
8867 __cil_tmp6 = (unsigned int )__cil_tmp5;
8868#line 159
8869 if (__cil_tmp6 != 0U) {
8870 {
8871#line 160
8872 __cil_tmp7 = (unsigned long )sc;
8873#line 160
8874 __cil_tmp8 = __cil_tmp7 + 228;
8875#line 160
8876 __cil_tmp9 = *((unsigned char *)__cil_tmp8);
8877#line 161
8878 if ((int )__cil_tmp9 == 33) {
8879#line 161
8880 goto case_33;
8881 } else
8882#line 163
8883 if ((int )__cil_tmp9 == 34) {
8884#line 163
8885 goto case_34;
8886 } else {
8887 {
8888#line 165
8889 goto switch_default;
8890#line 160
8891 if (0) {
8892 case_33: ;
8893#line 162
8894 return (33);
8895 case_34: ;
8896#line 164
8897 return (34);
8898 switch_default: ;
8899#line 166
8900 goto ldv_48953;
8901 } else {
8902 switch_break: ;
8903 }
8904 }
8905 }
8906 }
8907 ldv_48953: ;
8908 } else {
8909
8910 }
8911 }
8912#line 170
8913 return (32);
8914}
8915}
8916#line 173 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
8917static void tcm_loop_submission_work(struct work_struct *work )
8918{ struct tcm_loop_cmd *tl_cmd ;
8919 struct work_struct const *__mptr ;
8920 struct se_cmd *se_cmd ;
8921 struct scsi_cmnd *sc ;
8922 struct tcm_loop_nexus *tl_nexus ;
8923 struct tcm_loop_hba *tl_hba ;
8924 struct tcm_loop_tpg *tl_tpg ;
8925 struct scatterlist *sgl_bidi ;
8926 u32 sgl_bidi_count ;
8927 int ret ;
8928 void *tmp ;
8929 int tmp___0 ;
8930 unsigned int tmp___1 ;
8931 struct scsi_data_buffer *sdb ;
8932 struct scsi_data_buffer *tmp___2 ;
8933 int tmp___3 ;
8934 int tmp___4 ;
8935 struct scatterlist *sg ;
8936 struct scatterlist *tmp___5 ;
8937 unsigned char *buf ;
8938 struct page *tmp___6 ;
8939 void *tmp___7 ;
8940 struct page *tmp___8 ;
8941 unsigned int tmp___9 ;
8942 struct scatterlist *tmp___10 ;
8943 struct tcm_loop_cmd *__cil_tmp27 ;
8944 unsigned long __cil_tmp28 ;
8945 unsigned long __cil_tmp29 ;
8946 unsigned long __cil_tmp30 ;
8947 unsigned long __cil_tmp31 ;
8948 struct scsi_device *__cil_tmp32 ;
8949 struct Scsi_Host *__cil_tmp33 ;
8950 struct tcm_loop_hba **__cil_tmp34 ;
8951 struct scsi_device *__cil_tmp35 ;
8952 unsigned long __cil_tmp36 ;
8953 unsigned long __cil_tmp37 ;
8954 unsigned int __cil_tmp38 ;
8955 unsigned long __cil_tmp39 ;
8956 unsigned long __cil_tmp40 ;
8957 unsigned long __cil_tmp41 ;
8958 struct tcm_loop_tpg (*__cil_tmp42)[32U] ;
8959 struct tcm_loop_tpg *__cil_tmp43 ;
8960 struct tcm_loop_hba *__cil_tmp44 ;
8961 unsigned long __cil_tmp45 ;
8962 unsigned long __cil_tmp46 ;
8963 unsigned long __cil_tmp47 ;
8964 struct tcm_loop_hba *__cil_tmp48 ;
8965 unsigned long __cil_tmp49 ;
8966 unsigned long __cil_tmp50 ;
8967 unsigned long __cil_tmp51 ;
8968 struct tcm_loop_nexus *__cil_tmp52 ;
8969 unsigned long __cil_tmp53 ;
8970 unsigned long __cil_tmp54 ;
8971 unsigned long __cil_tmp55 ;
8972 unsigned long __cil_tmp56 ;
8973 unsigned long __cil_tmp57 ;
8974 struct target_core_fabric_ops *__cil_tmp58 ;
8975 unsigned long __cil_tmp59 ;
8976 unsigned long __cil_tmp60 ;
8977 struct se_session *__cil_tmp61 ;
8978 unsigned long __cil_tmp62 ;
8979 unsigned long __cil_tmp63 ;
8980 enum dma_data_direction __cil_tmp64 ;
8981 int __cil_tmp65 ;
8982 unsigned long __cil_tmp66 ;
8983 unsigned long __cil_tmp67 ;
8984 unsigned char (*__cil_tmp68)[96U] ;
8985 unsigned char *__cil_tmp69 ;
8986 unsigned long __cil_tmp70 ;
8987 unsigned long __cil_tmp71 ;
8988 unsigned long __cil_tmp72 ;
8989 unsigned long __cil_tmp73 ;
8990 unsigned long __cil_tmp74 ;
8991 unsigned long __cil_tmp75 ;
8992 unsigned long __cil_tmp76 ;
8993 u32 __cil_tmp77 ;
8994 unsigned long __cil_tmp78 ;
8995 unsigned long __cil_tmp79 ;
8996 struct scsi_cmnd *__cil_tmp80 ;
8997 struct scsi_device *__cil_tmp81 ;
8998 unsigned long __cil_tmp82 ;
8999 unsigned long __cil_tmp83 ;
9000 unsigned int __cil_tmp84 ;
9001 void *__cil_tmp85 ;
9002 unsigned long __cil_tmp86 ;
9003 unsigned long __cil_tmp87 ;
9004 u32 __cil_tmp88 ;
9005 unsigned int __cil_tmp89 ;
9006 unsigned long __cil_tmp90 ;
9007 unsigned long __cil_tmp91 ;
9008 enum dma_data_direction __cil_tmp92 ;
9009 unsigned int __cil_tmp93 ;
9010 unsigned long __cil_tmp94 ;
9011 unsigned long __cil_tmp95 ;
9012 unsigned int __cil_tmp96 ;
9013 unsigned long __cil_tmp97 ;
9014 unsigned char *__cil_tmp98 ;
9015 unsigned char *__cil_tmp99 ;
9016 unsigned long __cil_tmp100 ;
9017 unsigned long __cil_tmp101 ;
9018 void *__cil_tmp102 ;
9019 unsigned long __cil_tmp103 ;
9020 unsigned long __cil_tmp104 ;
9021 unsigned int __cil_tmp105 ;
9022 size_t __cil_tmp106 ;
9023 unsigned long __cil_tmp107 ;
9024 unsigned long __cil_tmp108 ;
9025 unsigned char *__cil_tmp109 ;
9026 u8 __cil_tmp110 ;
9027 unsigned long __cil_tmp111 ;
9028 unsigned long __cil_tmp112 ;
9029 u32 __cil_tmp113 ;
9030 unsigned int __cil_tmp114 ;
9031 unsigned long __cil_tmp115 ;
9032 unsigned long __cil_tmp116 ;
9033 u8 __cil_tmp117 ;
9034 int __cil_tmp118 ;
9035 u8 __cil_tmp119 ;
9036 unsigned long __cil_tmp120 ;
9037 unsigned long __cil_tmp121 ;
9038 u8 __cil_tmp122 ;
9039 int __cil_tmp123 ;
9040 u8 __cil_tmp124 ;
9041 unsigned long __cil_tmp125 ;
9042 unsigned long __cil_tmp126 ;
9043 void (*__cil_tmp127)(struct scsi_cmnd * ) ;
9044
9045 {
9046 {
9047#line 176
9048 __mptr = (struct work_struct const *)work;
9049#line 176
9050 __cil_tmp27 = (struct tcm_loop_cmd *)__mptr;
9051#line 176
9052 tl_cmd = __cil_tmp27 + 0xfffffffffffffc60UL;
9053#line 177
9054 __cil_tmp28 = (unsigned long )tl_cmd;
9055#line 177
9056 __cil_tmp29 = __cil_tmp28 + 16;
9057#line 177
9058 se_cmd = (struct se_cmd *)__cil_tmp29;
9059#line 178
9060 __cil_tmp30 = (unsigned long )tl_cmd;
9061#line 178
9062 __cil_tmp31 = __cil_tmp30 + 8;
9063#line 178
9064 sc = *((struct scsi_cmnd **)__cil_tmp31);
9065#line 182
9066 sgl_bidi = (struct scatterlist *)0;
9067#line 183
9068 sgl_bidi_count = 0U;
9069#line 186
9070 __cil_tmp32 = *((struct scsi_device **)sc);
9071#line 186
9072 __cil_tmp33 = *((struct Scsi_Host **)__cil_tmp32);
9073#line 186
9074 tmp = shost_priv(__cil_tmp33);
9075#line 186
9076 __cil_tmp34 = (struct tcm_loop_hba **)tmp;
9077#line 186
9078 tl_hba = *__cil_tmp34;
9079#line 187
9080 __cil_tmp35 = *((struct scsi_device **)sc);
9081#line 187
9082 __cil_tmp36 = (unsigned long )__cil_tmp35;
9083#line 187
9084 __cil_tmp37 = __cil_tmp36 + 200;
9085#line 187
9086 __cil_tmp38 = *((unsigned int *)__cil_tmp37);
9087#line 187
9088 __cil_tmp39 = (unsigned long )__cil_tmp38;
9089#line 187
9090 __cil_tmp40 = (unsigned long )tl_hba;
9091#line 187
9092 __cil_tmp41 = __cil_tmp40 + 1464;
9093#line 187
9094 __cil_tmp42 = (struct tcm_loop_tpg (*)[32U])__cil_tmp41;
9095#line 187
9096 __cil_tmp43 = (struct tcm_loop_tpg *)__cil_tmp42;
9097#line 187
9098 tl_tpg = __cil_tmp43 + __cil_tmp39;
9099 }
9100 {
9101#line 193
9102 __cil_tmp44 = (struct tcm_loop_hba *)0;
9103#line 193
9104 __cil_tmp45 = (unsigned long )__cil_tmp44;
9105#line 193
9106 __cil_tmp46 = (unsigned long )tl_tpg;
9107#line 193
9108 __cil_tmp47 = __cil_tmp46 + 1984;
9109#line 193
9110 __cil_tmp48 = *((struct tcm_loop_hba **)__cil_tmp47);
9111#line 193
9112 __cil_tmp49 = (unsigned long )__cil_tmp48;
9113#line 193
9114 if (__cil_tmp49 == __cil_tmp45) {
9115 {
9116#line 194
9117 set_host_byte(sc, (char)1);
9118 }
9119#line 195
9120 goto out_done;
9121 } else {
9122
9123 }
9124 }
9125#line 198
9126 __cil_tmp50 = (unsigned long )tl_hba;
9127#line 198
9128 __cil_tmp51 = __cil_tmp50 + 296;
9129#line 198
9130 tl_nexus = *((struct tcm_loop_nexus **)__cil_tmp51);
9131 {
9132#line 199
9133 __cil_tmp52 = (struct tcm_loop_nexus *)0;
9134#line 199
9135 __cil_tmp53 = (unsigned long )__cil_tmp52;
9136#line 199
9137 __cil_tmp54 = (unsigned long )tl_nexus;
9138#line 199
9139 if (__cil_tmp54 == __cil_tmp53) {
9140 {
9141#line 202
9142 set_host_byte(sc, (char)7);
9143 }
9144#line 203
9145 goto out_done;
9146 } else {
9147
9148 }
9149 }
9150 {
9151#line 206
9152 tmp___0 = tcm_loop_sam_attr(sc);
9153#line 206
9154 tmp___1 = scsi_bufflen(sc);
9155#line 206
9156 __cil_tmp55 = 8 + 1240;
9157#line 206
9158 __cil_tmp56 = (unsigned long )tl_tpg;
9159#line 206
9160 __cil_tmp57 = __cil_tmp56 + __cil_tmp55;
9161#line 206
9162 __cil_tmp58 = *((struct target_core_fabric_ops **)__cil_tmp57);
9163#line 206
9164 __cil_tmp59 = (unsigned long )tl_nexus;
9165#line 206
9166 __cil_tmp60 = __cil_tmp59 + 16;
9167#line 206
9168 __cil_tmp61 = *((struct se_session **)__cil_tmp60);
9169#line 206
9170 __cil_tmp62 = (unsigned long )sc;
9171#line 206
9172 __cil_tmp63 = __cil_tmp62 + 76;
9173#line 206
9174 __cil_tmp64 = *((enum dma_data_direction *)__cil_tmp63);
9175#line 206
9176 __cil_tmp65 = (int )__cil_tmp64;
9177#line 206
9178 __cil_tmp66 = (unsigned long )tl_cmd;
9179#line 206
9180 __cil_tmp67 = __cil_tmp66 + 1008;
9181#line 206
9182 __cil_tmp68 = (unsigned char (*)[96U])__cil_tmp67;
9183#line 206
9184 __cil_tmp69 = (unsigned char *)__cil_tmp68;
9185#line 206
9186 transport_init_se_cmd(se_cmd, __cil_tmp58, __cil_tmp61, tmp___1, __cil_tmp65, tmp___0,
9187 __cil_tmp69);
9188#line 211
9189 tmp___3 = scsi_bidi_cmnd(sc);
9190 }
9191#line 211
9192 if (tmp___3 != 0) {
9193 {
9194#line 212
9195 tmp___2 = scsi_in(sc);
9196#line 212
9197 sdb = tmp___2;
9198#line 214
9199 sgl_bidi = *((struct scatterlist **)sdb);
9200#line 215
9201 __cil_tmp70 = 0 + 8;
9202#line 215
9203 __cil_tmp71 = (unsigned long )sdb;
9204#line 215
9205 __cil_tmp72 = __cil_tmp71 + __cil_tmp70;
9206#line 215
9207 sgl_bidi_count = *((unsigned int *)__cil_tmp72);
9208#line 216
9209 __cil_tmp73 = (unsigned long )se_cmd;
9210#line 216
9211 __cil_tmp74 = __cil_tmp73 + 28;
9212#line 216
9213 __cil_tmp75 = (unsigned long )se_cmd;
9214#line 216
9215 __cil_tmp76 = __cil_tmp75 + 28;
9216#line 216
9217 __cil_tmp77 = *((u32 *)__cil_tmp76);
9218#line 216
9219 *((u32 *)__cil_tmp74) = __cil_tmp77 | 8192U;
9220 }
9221 } else {
9222
9223 }
9224 {
9225#line 220
9226 __cil_tmp78 = (unsigned long )tl_cmd;
9227#line 220
9228 __cil_tmp79 = __cil_tmp78 + 8;
9229#line 220
9230 __cil_tmp80 = *((struct scsi_cmnd **)__cil_tmp79);
9231#line 220
9232 __cil_tmp81 = *((struct scsi_device **)__cil_tmp80);
9233#line 220
9234 __cil_tmp82 = (unsigned long )__cil_tmp81;
9235#line 220
9236 __cil_tmp83 = __cil_tmp82 + 204;
9237#line 220
9238 __cil_tmp84 = *((unsigned int *)__cil_tmp83);
9239#line 220
9240 tmp___4 = transport_lookup_cmd_lun(se_cmd, __cil_tmp84);
9241 }
9242#line 220
9243 if (tmp___4 < 0) {
9244 {
9245#line 221
9246 __cil_tmp85 = (void *)tl_cmd;
9247#line 221
9248 kmem_cache_free(tcm_loop_cmd_cache, __cil_tmp85);
9249#line 222
9250 set_host_byte(sc, (char)1);
9251 }
9252#line 223
9253 goto out_done;
9254 } else {
9255
9256 }
9257 {
9258#line 234
9259 __cil_tmp86 = (unsigned long )se_cmd;
9260#line 234
9261 __cil_tmp87 = __cil_tmp86 + 28;
9262#line 234
9263 __cil_tmp88 = *((u32 *)__cil_tmp87);
9264#line 234
9265 __cil_tmp89 = __cil_tmp88 & 16U;
9266#line 234
9267 if (__cil_tmp89 != 0U) {
9268 {
9269#line 234
9270 __cil_tmp90 = (unsigned long )se_cmd;
9271#line 234
9272 __cil_tmp91 = __cil_tmp90 + 12;
9273#line 234
9274 __cil_tmp92 = *((enum dma_data_direction *)__cil_tmp91);
9275#line 234
9276 __cil_tmp93 = (unsigned int )__cil_tmp92;
9277#line 234
9278 if (__cil_tmp93 == 2U) {
9279 {
9280#line 236
9281 tmp___5 = scsi_sglist(sc);
9282#line 236
9283 sg = tmp___5;
9284#line 237
9285 tmp___6 = sg_page(sg);
9286#line 237
9287 tmp___7 = kmap(tmp___6);
9288#line 237
9289 __cil_tmp94 = (unsigned long )sg;
9290#line 237
9291 __cil_tmp95 = __cil_tmp94 + 16;
9292#line 237
9293 __cil_tmp96 = *((unsigned int *)__cil_tmp95);
9294#line 237
9295 __cil_tmp97 = (unsigned long )__cil_tmp96;
9296#line 237
9297 __cil_tmp98 = (unsigned char *)tmp___7;
9298#line 237
9299 buf = __cil_tmp98 + __cil_tmp97;
9300 }
9301 {
9302#line 239
9303 __cil_tmp99 = (unsigned char *)0;
9304#line 239
9305 __cil_tmp100 = (unsigned long )__cil_tmp99;
9306#line 239
9307 __cil_tmp101 = (unsigned long )buf;
9308#line 239
9309 if (__cil_tmp101 != __cil_tmp100) {
9310 {
9311#line 240
9312 __cil_tmp102 = (void *)buf;
9313#line 240
9314 __cil_tmp103 = (unsigned long )sg;
9315#line 240
9316 __cil_tmp104 = __cil_tmp103 + 20;
9317#line 240
9318 __cil_tmp105 = *((unsigned int *)__cil_tmp104);
9319#line 240
9320 __cil_tmp106 = (size_t )__cil_tmp105;
9321#line 240
9322 memset(__cil_tmp102, 0, __cil_tmp106);
9323#line 241
9324 tmp___8 = sg_page(sg);
9325#line 241
9326 kunmap(tmp___8);
9327 }
9328 } else {
9329
9330 }
9331 }
9332 } else {
9333
9334 }
9335 }
9336 } else {
9337
9338 }
9339 }
9340 {
9341#line 245
9342 __cil_tmp107 = (unsigned long )sc;
9343#line 245
9344 __cil_tmp108 = __cil_tmp107 + 80;
9345#line 245
9346 __cil_tmp109 = *((unsigned char **)__cil_tmp108);
9347#line 245
9348 ret = transport_generic_allocate_tasks(se_cmd, __cil_tmp109);
9349 }
9350#line 246
9351 if (ret == -12) {
9352 {
9353#line 247
9354 __cil_tmp110 = (u8 )10;
9355#line 247
9356 transport_send_check_condition_and_sense(se_cmd, __cil_tmp110, 0);
9357#line 249
9358 transport_generic_free_cmd(se_cmd, 0);
9359 }
9360#line 250
9361 return;
9362 } else
9363#line 251
9364 if (ret < 0) {
9365 {
9366#line 252
9367 __cil_tmp111 = (unsigned long )se_cmd;
9368#line 252
9369 __cil_tmp112 = __cil_tmp111 + 28;
9370#line 252
9371 __cil_tmp113 = *((u32 *)__cil_tmp112);
9372#line 252
9373 __cil_tmp114 = __cil_tmp113 & 256U;
9374#line 252
9375 if (__cil_tmp114 != 0U) {
9376 {
9377#line 253
9378 tcm_loop_queue_status(se_cmd);
9379 }
9380 } else {
9381 {
9382#line 255
9383 __cil_tmp115 = (unsigned long )se_cmd;
9384#line 255
9385 __cil_tmp116 = __cil_tmp115 + 3;
9386#line 255
9387 __cil_tmp117 = *((u8 *)__cil_tmp116);
9388#line 255
9389 __cil_tmp118 = (int )__cil_tmp117;
9390#line 255
9391 __cil_tmp119 = (u8 )__cil_tmp118;
9392#line 255
9393 transport_send_check_condition_and_sense(se_cmd, __cil_tmp119, 0);
9394 }
9395 }
9396 }
9397 {
9398#line 257
9399 transport_generic_free_cmd(se_cmd, 0);
9400 }
9401#line 258
9402 return;
9403 } else {
9404
9405 }
9406 {
9407#line 261
9408 tmp___9 = scsi_sg_count(sc);
9409#line 261
9410 tmp___10 = scsi_sglist(sc);
9411#line 261
9412 ret = transport_generic_map_mem_to_cmd(se_cmd, tmp___10, tmp___9, sgl_bidi, sgl_bidi_count);
9413 }
9414#line 263
9415 if (ret != 0) {
9416 {
9417#line 264
9418 __cil_tmp120 = (unsigned long )se_cmd;
9419#line 264
9420 __cil_tmp121 = __cil_tmp120 + 3;
9421#line 264
9422 __cil_tmp122 = *((u8 *)__cil_tmp121);
9423#line 264
9424 __cil_tmp123 = (int )__cil_tmp122;
9425#line 264
9426 __cil_tmp124 = (u8 )__cil_tmp123;
9427#line 264
9428 transport_send_check_condition_and_sense(se_cmd, __cil_tmp124, 0);
9429#line 266
9430 transport_generic_free_cmd(se_cmd, 0);
9431 }
9432#line 267
9433 return;
9434 } else {
9435
9436 }
9437 {
9438#line 269
9439 transport_handle_cdb_direct(se_cmd);
9440 }
9441#line 270
9442 return;
9443 out_done:
9444 {
9445#line 273
9446 __cil_tmp125 = (unsigned long )sc;
9447#line 273
9448 __cil_tmp126 = __cil_tmp125 + 144;
9449#line 273
9450 __cil_tmp127 = *((void (**)(struct scsi_cmnd * ))__cil_tmp126);
9451#line 273
9452 (*__cil_tmp127)(sc);
9453 }
9454#line 274
9455 return;
9456}
9457}
9458#line 281 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
9459static int tcm_loop_queuecommand(struct Scsi_Host *sh , struct scsi_cmnd *sc )
9460{ struct tcm_loop_cmd *tl_cmd ;
9461 struct _ddebug descriptor ;
9462 unsigned int tmp ;
9463 long tmp___0 ;
9464 void *tmp___1 ;
9465 struct lock_class_key __key ;
9466 atomic_long_t __constr_expr_0 ;
9467 struct _ddebug *__cil_tmp10 ;
9468 unsigned long __cil_tmp11 ;
9469 unsigned long __cil_tmp12 ;
9470 unsigned long __cil_tmp13 ;
9471 unsigned long __cil_tmp14 ;
9472 unsigned long __cil_tmp15 ;
9473 unsigned long __cil_tmp16 ;
9474 unsigned char __cil_tmp17 ;
9475 long __cil_tmp18 ;
9476 long __cil_tmp19 ;
9477 struct scsi_device *__cil_tmp20 ;
9478 struct Scsi_Host *__cil_tmp21 ;
9479 unsigned long __cil_tmp22 ;
9480 unsigned long __cil_tmp23 ;
9481 unsigned int __cil_tmp24 ;
9482 struct scsi_device *__cil_tmp25 ;
9483 unsigned long __cil_tmp26 ;
9484 unsigned long __cil_tmp27 ;
9485 unsigned int __cil_tmp28 ;
9486 struct scsi_device *__cil_tmp29 ;
9487 unsigned long __cil_tmp30 ;
9488 unsigned long __cil_tmp31 ;
9489 unsigned int __cil_tmp32 ;
9490 struct scsi_device *__cil_tmp33 ;
9491 unsigned long __cil_tmp34 ;
9492 unsigned long __cil_tmp35 ;
9493 unsigned int __cil_tmp36 ;
9494 unsigned long __cil_tmp37 ;
9495 unsigned long __cil_tmp38 ;
9496 unsigned char *__cil_tmp39 ;
9497 unsigned char __cil_tmp40 ;
9498 int __cil_tmp41 ;
9499 struct tcm_loop_cmd *__cil_tmp42 ;
9500 unsigned long __cil_tmp43 ;
9501 unsigned long __cil_tmp44 ;
9502 unsigned long __cil_tmp45 ;
9503 unsigned long __cil_tmp46 ;
9504 void (*__cil_tmp47)(struct scsi_cmnd * ) ;
9505 unsigned long __cil_tmp48 ;
9506 unsigned long __cil_tmp49 ;
9507 unsigned long __cil_tmp50 ;
9508 unsigned long __cil_tmp51 ;
9509 struct work_struct *__cil_tmp52 ;
9510 unsigned long __cil_tmp53 ;
9511 unsigned long __cil_tmp54 ;
9512 unsigned long __cil_tmp55 ;
9513 unsigned long __cil_tmp56 ;
9514 unsigned long __cil_tmp57 ;
9515 struct lockdep_map *__cil_tmp58 ;
9516 unsigned long __cil_tmp59 ;
9517 unsigned long __cil_tmp60 ;
9518 unsigned long __cil_tmp61 ;
9519 struct list_head *__cil_tmp62 ;
9520 unsigned long __cil_tmp63 ;
9521 unsigned long __cil_tmp64 ;
9522 unsigned long __cil_tmp65 ;
9523 unsigned long __cil_tmp66 ;
9524 unsigned long __cil_tmp67 ;
9525 struct work_struct *__cil_tmp68 ;
9526 long __constr_expr_0_counter69 ;
9527
9528 {
9529 {
9530#line 285
9531 __cil_tmp10 = & descriptor;
9532#line 285
9533 *((char const **)__cil_tmp10) = "tcm_loop";
9534#line 285
9535 __cil_tmp11 = (unsigned long )(& descriptor) + 8;
9536#line 285
9537 *((char const **)__cil_tmp11) = "tcm_loop_queuecommand";
9538#line 285
9539 __cil_tmp12 = (unsigned long )(& descriptor) + 16;
9540#line 285
9541 *((char const **)__cil_tmp12) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
9542#line 285
9543 __cil_tmp13 = (unsigned long )(& descriptor) + 24;
9544#line 285
9545 *((char const **)__cil_tmp13) = "tcm_loop_queuecommand() %d:%d:%d:%d got CDB: 0x%02x scsi_buf_len: %u\n";
9546#line 285
9547 __cil_tmp14 = (unsigned long )(& descriptor) + 32;
9548#line 285
9549 *((unsigned int *)__cil_tmp14) = 288U;
9550#line 285
9551 __cil_tmp15 = (unsigned long )(& descriptor) + 35;
9552#line 285
9553 *((unsigned char *)__cil_tmp15) = (unsigned char)0;
9554#line 285
9555 __cil_tmp16 = (unsigned long )(& descriptor) + 35;
9556#line 285
9557 __cil_tmp17 = *((unsigned char *)__cil_tmp16);
9558#line 285
9559 __cil_tmp18 = (long )__cil_tmp17;
9560#line 285
9561 __cil_tmp19 = __cil_tmp18 & 1L;
9562#line 285
9563 tmp___0 = __builtin_expect(__cil_tmp19, 0L);
9564 }
9565#line 285
9566 if (tmp___0 != 0L) {
9567 {
9568#line 285
9569 tmp = scsi_bufflen(sc);
9570#line 285
9571 __cil_tmp20 = *((struct scsi_device **)sc);
9572#line 285
9573 __cil_tmp21 = *((struct Scsi_Host **)__cil_tmp20);
9574#line 285
9575 __cil_tmp22 = (unsigned long )__cil_tmp21;
9576#line 285
9577 __cil_tmp23 = __cil_tmp22 + 548;
9578#line 285
9579 __cil_tmp24 = *((unsigned int *)__cil_tmp23);
9580#line 285
9581 __cil_tmp25 = *((struct scsi_device **)sc);
9582#line 285
9583 __cil_tmp26 = (unsigned long )__cil_tmp25;
9584#line 285
9585 __cil_tmp27 = __cil_tmp26 + 200;
9586#line 285
9587 __cil_tmp28 = *((unsigned int *)__cil_tmp27);
9588#line 285
9589 __cil_tmp29 = *((struct scsi_device **)sc);
9590#line 285
9591 __cil_tmp30 = (unsigned long )__cil_tmp29;
9592#line 285
9593 __cil_tmp31 = __cil_tmp30 + 208;
9594#line 285
9595 __cil_tmp32 = *((unsigned int *)__cil_tmp31);
9596#line 285
9597 __cil_tmp33 = *((struct scsi_device **)sc);
9598#line 285
9599 __cil_tmp34 = (unsigned long )__cil_tmp33;
9600#line 285
9601 __cil_tmp35 = __cil_tmp34 + 204;
9602#line 285
9603 __cil_tmp36 = *((unsigned int *)__cil_tmp35);
9604#line 285
9605 __cil_tmp37 = (unsigned long )sc;
9606#line 285
9607 __cil_tmp38 = __cil_tmp37 + 80;
9608#line 285
9609 __cil_tmp39 = *((unsigned char **)__cil_tmp38);
9610#line 285
9611 __cil_tmp40 = *__cil_tmp39;
9612#line 285
9613 __cil_tmp41 = (int )__cil_tmp40;
9614#line 285
9615 __dynamic_pr_debug(& descriptor, "tcm_loop_queuecommand() %d:%d:%d:%d got CDB: 0x%02x scsi_buf_len: %u\n",
9616 __cil_tmp24, __cil_tmp28, __cil_tmp32, __cil_tmp36, __cil_tmp41,
9617 tmp);
9618 }
9619 } else {
9620
9621 }
9622 {
9623#line 290
9624 tmp___1 = kmem_cache_zalloc(tcm_loop_cmd_cache, 32U);
9625#line 290
9626 tl_cmd = (struct tcm_loop_cmd *)tmp___1;
9627 }
9628 {
9629#line 291
9630 __cil_tmp42 = (struct tcm_loop_cmd *)0;
9631#line 291
9632 __cil_tmp43 = (unsigned long )__cil_tmp42;
9633#line 291
9634 __cil_tmp44 = (unsigned long )tl_cmd;
9635#line 291
9636 if (__cil_tmp44 == __cil_tmp43) {
9637 {
9638#line 292
9639 printk("<3>Unable to allocate struct tcm_loop_cmd\n");
9640#line 293
9641 set_host_byte(sc, (char)7);
9642#line 294
9643 __cil_tmp45 = (unsigned long )sc;
9644#line 294
9645 __cil_tmp46 = __cil_tmp45 + 144;
9646#line 294
9647 __cil_tmp47 = *((void (**)(struct scsi_cmnd * ))__cil_tmp46);
9648#line 294
9649 (*__cil_tmp47)(sc);
9650 }
9651#line 295
9652 return (0);
9653 } else {
9654
9655 }
9656 }
9657 {
9658#line 298
9659 __cil_tmp48 = (unsigned long )tl_cmd;
9660#line 298
9661 __cil_tmp49 = __cil_tmp48 + 8;
9662#line 298
9663 *((struct scsi_cmnd **)__cil_tmp49) = sc;
9664#line 299
9665 __cil_tmp50 = (unsigned long )tl_cmd;
9666#line 299
9667 __cil_tmp51 = __cil_tmp50 + 928;
9668#line 299
9669 __cil_tmp52 = (struct work_struct *)__cil_tmp51;
9670#line 299
9671 __init_work(__cil_tmp52, 0);
9672#line 299
9673 __constr_expr_0_counter69 = 2097664L;
9674#line 299
9675 __cil_tmp53 = (unsigned long )tl_cmd;
9676#line 299
9677 __cil_tmp54 = __cil_tmp53 + 928;
9678#line 299
9679 ((atomic_long_t *)__cil_tmp54)->counter = __constr_expr_0_counter69;
9680#line 299
9681 __cil_tmp55 = 928 + 32;
9682#line 299
9683 __cil_tmp56 = (unsigned long )tl_cmd;
9684#line 299
9685 __cil_tmp57 = __cil_tmp56 + __cil_tmp55;
9686#line 299
9687 __cil_tmp58 = (struct lockdep_map *)__cil_tmp57;
9688#line 299
9689 lockdep_init_map(__cil_tmp58, "(&tl_cmd->work)", & __key, 0);
9690#line 299
9691 __cil_tmp59 = 928 + 8;
9692#line 299
9693 __cil_tmp60 = (unsigned long )tl_cmd;
9694#line 299
9695 __cil_tmp61 = __cil_tmp60 + __cil_tmp59;
9696#line 299
9697 __cil_tmp62 = (struct list_head *)__cil_tmp61;
9698#line 299
9699 INIT_LIST_HEAD(__cil_tmp62);
9700#line 299
9701 __cil_tmp63 = 928 + 24;
9702#line 299
9703 __cil_tmp64 = (unsigned long )tl_cmd;
9704#line 299
9705 __cil_tmp65 = __cil_tmp64 + __cil_tmp63;
9706#line 299
9707 *((void (**)(struct work_struct * ))__cil_tmp65) = & tcm_loop_submission_work;
9708#line 300
9709 __cil_tmp66 = (unsigned long )tl_cmd;
9710#line 300
9711 __cil_tmp67 = __cil_tmp66 + 928;
9712#line 300
9713 __cil_tmp68 = (struct work_struct *)__cil_tmp67;
9714#line 300
9715 queue_work(tcm_loop_workqueue, __cil_tmp68);
9716 }
9717#line 301
9718 return (0);
9719}
9720}
9721#line 308 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
9722static int tcm_loop_device_reset(struct scsi_cmnd *sc )
9723{ struct se_cmd *se_cmd ;
9724 struct se_portal_group *se_tpg ;
9725 struct se_session *se_sess ;
9726 struct tcm_loop_cmd *tl_cmd ;
9727 struct tcm_loop_hba *tl_hba ;
9728 struct tcm_loop_nexus *tl_nexus ;
9729 struct tcm_loop_tmr *tl_tmr ;
9730 struct tcm_loop_tpg *tl_tpg ;
9731 int ret ;
9732 int rc ;
9733 void *tmp ;
9734 void *tmp___0 ;
9735 void *tmp___1 ;
9736 struct lock_class_key __key ;
9737 int tmp___2 ;
9738 int tmp___3 ;
9739 wait_queue_t __wait ;
9740 struct task_struct *tmp___4 ;
9741 int tmp___5 ;
9742 struct scsi_device *__cil_tmp21 ;
9743 struct Scsi_Host *__cil_tmp22 ;
9744 struct tcm_loop_hba **__cil_tmp23 ;
9745 unsigned long __cil_tmp24 ;
9746 unsigned long __cil_tmp25 ;
9747 struct tcm_loop_nexus *__cil_tmp26 ;
9748 unsigned long __cil_tmp27 ;
9749 unsigned long __cil_tmp28 ;
9750 unsigned long __cil_tmp29 ;
9751 unsigned long __cil_tmp30 ;
9752 struct scsi_device *__cil_tmp31 ;
9753 unsigned long __cil_tmp32 ;
9754 unsigned long __cil_tmp33 ;
9755 unsigned int __cil_tmp34 ;
9756 unsigned long __cil_tmp35 ;
9757 unsigned long __cil_tmp36 ;
9758 unsigned long __cil_tmp37 ;
9759 struct tcm_loop_tpg (*__cil_tmp38)[32U] ;
9760 struct tcm_loop_tpg *__cil_tmp39 ;
9761 unsigned long __cil_tmp40 ;
9762 unsigned long __cil_tmp41 ;
9763 struct tcm_loop_cmd *__cil_tmp42 ;
9764 unsigned long __cil_tmp43 ;
9765 unsigned long __cil_tmp44 ;
9766 struct tcm_loop_tmr *__cil_tmp45 ;
9767 unsigned long __cil_tmp46 ;
9768 unsigned long __cil_tmp47 ;
9769 unsigned long __cil_tmp48 ;
9770 unsigned long __cil_tmp49 ;
9771 wait_queue_head_t *__cil_tmp50 ;
9772 unsigned long __cil_tmp51 ;
9773 unsigned long __cil_tmp52 ;
9774 unsigned long __cil_tmp53 ;
9775 unsigned long __cil_tmp54 ;
9776 struct target_core_fabric_ops *__cil_tmp55 ;
9777 unsigned long __cil_tmp56 ;
9778 unsigned long __cil_tmp57 ;
9779 unsigned char (*__cil_tmp58)[96U] ;
9780 unsigned char *__cil_tmp59 ;
9781 void *__cil_tmp60 ;
9782 u8 __cil_tmp61 ;
9783 struct scsi_device *__cil_tmp62 ;
9784 unsigned long __cil_tmp63 ;
9785 unsigned long __cil_tmp64 ;
9786 unsigned int __cil_tmp65 ;
9787 atomic_t *__cil_tmp66 ;
9788 atomic_t const *__cil_tmp67 ;
9789 wait_queue_t *__cil_tmp68 ;
9790 unsigned long __cil_tmp69 ;
9791 unsigned long __cil_tmp70 ;
9792 unsigned long __cil_tmp71 ;
9793 unsigned long __cil_tmp72 ;
9794 unsigned long __cil_tmp73 ;
9795 unsigned long __cil_tmp74 ;
9796 unsigned long __cil_tmp75 ;
9797 unsigned long __cil_tmp76 ;
9798 unsigned long __cil_tmp77 ;
9799 wait_queue_head_t *__cil_tmp78 ;
9800 atomic_t *__cil_tmp79 ;
9801 atomic_t const *__cil_tmp80 ;
9802 unsigned long __cil_tmp81 ;
9803 unsigned long __cil_tmp82 ;
9804 wait_queue_head_t *__cil_tmp83 ;
9805 unsigned long __cil_tmp84 ;
9806 unsigned long __cil_tmp85 ;
9807 struct se_tmr_req *__cil_tmp86 ;
9808 unsigned long __cil_tmp87 ;
9809 unsigned long __cil_tmp88 ;
9810 u8 __cil_tmp89 ;
9811 unsigned int __cil_tmp90 ;
9812 struct se_cmd *__cil_tmp91 ;
9813 unsigned long __cil_tmp92 ;
9814 unsigned long __cil_tmp93 ;
9815 void *__cil_tmp94 ;
9816 void const *__cil_tmp95 ;
9817
9818 {
9819 {
9820#line 310
9821 se_cmd = (struct se_cmd *)0;
9822#line 313
9823 tl_cmd = (struct tcm_loop_cmd *)0;
9824#line 316
9825 tl_tmr = (struct tcm_loop_tmr *)0;
9826#line 318
9827 ret = 8195;
9828#line 322
9829 __cil_tmp21 = *((struct scsi_device **)sc);
9830#line 322
9831 __cil_tmp22 = *((struct Scsi_Host **)__cil_tmp21);
9832#line 322
9833 tmp = shost_priv(__cil_tmp22);
9834#line 322
9835 __cil_tmp23 = (struct tcm_loop_hba **)tmp;
9836#line 322
9837 tl_hba = *__cil_tmp23;
9838#line 326
9839 __cil_tmp24 = (unsigned long )tl_hba;
9840#line 326
9841 __cil_tmp25 = __cil_tmp24 + 296;
9842#line 326
9843 tl_nexus = *((struct tcm_loop_nexus **)__cil_tmp25);
9844 }
9845 {
9846#line 327
9847 __cil_tmp26 = (struct tcm_loop_nexus *)0;
9848#line 327
9849 __cil_tmp27 = (unsigned long )__cil_tmp26;
9850#line 327
9851 __cil_tmp28 = (unsigned long )tl_nexus;
9852#line 327
9853 if (__cil_tmp28 == __cil_tmp27) {
9854 {
9855#line 328
9856 printk("<3>Unable to perform device reset without active I_T Nexus\n");
9857 }
9858#line 330
9859 return (8195);
9860 } else {
9861
9862 }
9863 }
9864 {
9865#line 332
9866 __cil_tmp29 = (unsigned long )tl_nexus;
9867#line 332
9868 __cil_tmp30 = __cil_tmp29 + 16;
9869#line 332
9870 se_sess = *((struct se_session **)__cil_tmp30);
9871#line 336
9872 __cil_tmp31 = *((struct scsi_device **)sc);
9873#line 336
9874 __cil_tmp32 = (unsigned long )__cil_tmp31;
9875#line 336
9876 __cil_tmp33 = __cil_tmp32 + 200;
9877#line 336
9878 __cil_tmp34 = *((unsigned int *)__cil_tmp33);
9879#line 336
9880 __cil_tmp35 = (unsigned long )__cil_tmp34;
9881#line 336
9882 __cil_tmp36 = (unsigned long )tl_hba;
9883#line 336
9884 __cil_tmp37 = __cil_tmp36 + 1464;
9885#line 336
9886 __cil_tmp38 = (struct tcm_loop_tpg (*)[32U])__cil_tmp37;
9887#line 336
9888 __cil_tmp39 = (struct tcm_loop_tpg *)__cil_tmp38;
9889#line 336
9890 tl_tpg = __cil_tmp39 + __cil_tmp35;
9891#line 337
9892 __cil_tmp40 = (unsigned long )tl_tpg;
9893#line 337
9894 __cil_tmp41 = __cil_tmp40 + 8;
9895#line 337
9896 se_tpg = (struct se_portal_group *)__cil_tmp41;
9897#line 339
9898 tmp___0 = kmem_cache_zalloc(tcm_loop_cmd_cache, 208U);
9899#line 339
9900 tl_cmd = (struct tcm_loop_cmd *)tmp___0;
9901 }
9902 {
9903#line 340
9904 __cil_tmp42 = (struct tcm_loop_cmd *)0;
9905#line 340
9906 __cil_tmp43 = (unsigned long )__cil_tmp42;
9907#line 340
9908 __cil_tmp44 = (unsigned long )tl_cmd;
9909#line 340
9910 if (__cil_tmp44 == __cil_tmp43) {
9911 {
9912#line 341
9913 printk("<3>Unable to allocate memory for tl_cmd\n");
9914 }
9915#line 342
9916 return (8195);
9917 } else {
9918
9919 }
9920 }
9921 {
9922#line 345
9923 tmp___1 = kzalloc(96UL, 208U);
9924#line 345
9925 tl_tmr = (struct tcm_loop_tmr *)tmp___1;
9926 }
9927 {
9928#line 346
9929 __cil_tmp45 = (struct tcm_loop_tmr *)0;
9930#line 346
9931 __cil_tmp46 = (unsigned long )__cil_tmp45;
9932#line 346
9933 __cil_tmp47 = (unsigned long )tl_tmr;
9934#line 346
9935 if (__cil_tmp47 == __cil_tmp46) {
9936 {
9937#line 347
9938 printk("<3>Unable to allocate memory for tl_tmr\n");
9939 }
9940#line 348
9941 goto release;
9942 } else {
9943
9944 }
9945 }
9946 {
9947#line 350
9948 __cil_tmp48 = (unsigned long )tl_tmr;
9949#line 350
9950 __cil_tmp49 = __cil_tmp48 + 8;
9951#line 350
9952 __cil_tmp50 = (wait_queue_head_t *)__cil_tmp49;
9953#line 350
9954 __init_waitqueue_head(__cil_tmp50, "&tl_tmr->tl_tmr_wait", & __key);
9955#line 352
9956 __cil_tmp51 = (unsigned long )tl_cmd;
9957#line 352
9958 __cil_tmp52 = __cil_tmp51 + 16;
9959#line 352
9960 se_cmd = (struct se_cmd *)__cil_tmp52;
9961#line 356
9962 __cil_tmp53 = (unsigned long )se_tpg;
9963#line 356
9964 __cil_tmp54 = __cil_tmp53 + 1240;
9965#line 356
9966 __cil_tmp55 = *((struct target_core_fabric_ops **)__cil_tmp54);
9967#line 356
9968 __cil_tmp56 = (unsigned long )tl_cmd;
9969#line 356
9970 __cil_tmp57 = __cil_tmp56 + 1008;
9971#line 356
9972 __cil_tmp58 = (unsigned char (*)[96U])__cil_tmp57;
9973#line 356
9974 __cil_tmp59 = (unsigned char *)__cil_tmp58;
9975#line 356
9976 transport_init_se_cmd(se_cmd, __cil_tmp55, se_sess, 0U, 3, 32, __cil_tmp59);
9977#line 360
9978 __cil_tmp60 = (void *)tl_tmr;
9979#line 360
9980 __cil_tmp61 = (u8 )5;
9981#line 360
9982 rc = core_tmr_alloc_req(se_cmd, __cil_tmp60, __cil_tmp61, 208U);
9983 }
9984#line 361
9985 if (rc < 0) {
9986#line 362
9987 goto release;
9988 } else {
9989
9990 }
9991 {
9992#line 366
9993 __cil_tmp62 = *((struct scsi_device **)sc);
9994#line 366
9995 __cil_tmp63 = (unsigned long )__cil_tmp62;
9996#line 366
9997 __cil_tmp64 = __cil_tmp63 + 204;
9998#line 366
9999 __cil_tmp65 = *((unsigned int *)__cil_tmp64);
10000#line 366
10001 tmp___2 = transport_lookup_tmr_lun(se_cmd, __cil_tmp65);
10002 }
10003#line 366
10004 if (tmp___2 < 0) {
10005#line 367
10006 goto release;
10007 } else {
10008
10009 }
10010 {
10011#line 372
10012 transport_generic_handle_tmr(se_cmd);
10013#line 373
10014 __cil_tmp66 = (atomic_t *)tl_tmr;
10015#line 373
10016 __cil_tmp67 = (atomic_t const *)__cil_tmp66;
10017#line 373
10018 tmp___3 = atomic_read(__cil_tmp67);
10019 }
10020#line 373
10021 if (tmp___3 != 0) {
10022#line 373
10023 goto ldv_48996;
10024 } else {
10025
10026 }
10027 {
10028#line 373
10029 tmp___4 = get_current();
10030#line 373
10031 __cil_tmp68 = & __wait;
10032#line 373
10033 *((unsigned int *)__cil_tmp68) = 0U;
10034#line 373
10035 __cil_tmp69 = (unsigned long )(& __wait) + 8;
10036#line 373
10037 *((void **)__cil_tmp69) = (void *)tmp___4;
10038#line 373
10039 __cil_tmp70 = (unsigned long )(& __wait) + 16;
10040#line 373
10041 *((int (**)(wait_queue_t * , unsigned int , int , void * ))__cil_tmp70) = & autoremove_wake_function;
10042#line 373
10043 __cil_tmp71 = (unsigned long )(& __wait) + 24;
10044#line 373
10045 __cil_tmp72 = (unsigned long )(& __wait) + 24;
10046#line 373
10047 *((struct list_head **)__cil_tmp71) = (struct list_head *)__cil_tmp72;
10048#line 373
10049 __cil_tmp73 = 24 + 8;
10050#line 373
10051 __cil_tmp74 = (unsigned long )(& __wait) + __cil_tmp73;
10052#line 373
10053 __cil_tmp75 = (unsigned long )(& __wait) + 24;
10054#line 373
10055 *((struct list_head **)__cil_tmp74) = (struct list_head *)__cil_tmp75;
10056 }
10057 ldv_48999:
10058 {
10059#line 373
10060 __cil_tmp76 = (unsigned long )tl_tmr;
10061#line 373
10062 __cil_tmp77 = __cil_tmp76 + 8;
10063#line 373
10064 __cil_tmp78 = (wait_queue_head_t *)__cil_tmp77;
10065#line 373
10066 prepare_to_wait(__cil_tmp78, & __wait, 2);
10067#line 373
10068 __cil_tmp79 = (atomic_t *)tl_tmr;
10069#line 373
10070 __cil_tmp80 = (atomic_t const *)__cil_tmp79;
10071#line 373
10072 tmp___5 = atomic_read(__cil_tmp80);
10073 }
10074#line 373
10075 if (tmp___5 != 0) {
10076#line 373
10077 goto ldv_48998;
10078 } else {
10079
10080 }
10081 {
10082#line 373
10083 schedule();
10084 }
10085#line 373
10086 goto ldv_48999;
10087 ldv_48998:
10088 {
10089#line 373
10090 __cil_tmp81 = (unsigned long )tl_tmr;
10091#line 373
10092 __cil_tmp82 = __cil_tmp81 + 8;
10093#line 373
10094 __cil_tmp83 = (wait_queue_head_t *)__cil_tmp82;
10095#line 373
10096 finish_wait(__cil_tmp83, & __wait);
10097 }
10098 ldv_48996: ;
10099 {
10100#line 378
10101 __cil_tmp84 = (unsigned long )se_cmd;
10102#line 378
10103 __cil_tmp85 = __cil_tmp84 + 152;
10104#line 378
10105 __cil_tmp86 = *((struct se_tmr_req **)__cil_tmp85);
10106#line 378
10107 __cil_tmp87 = (unsigned long )__cil_tmp86;
10108#line 378
10109 __cil_tmp88 = __cil_tmp87 + 1;
10110#line 378
10111 __cil_tmp89 = *((u8 *)__cil_tmp88);
10112#line 378
10113 __cil_tmp90 = (unsigned int )__cil_tmp89;
10114#line 378
10115 if (__cil_tmp90 == 0U) {
10116#line 378
10117 ret = 8194;
10118 } else {
10119#line 378
10120 ret = 8195;
10121 }
10122 }
10123 release: ;
10124 {
10125#line 381
10126 __cil_tmp91 = (struct se_cmd *)0;
10127#line 381
10128 __cil_tmp92 = (unsigned long )__cil_tmp91;
10129#line 381
10130 __cil_tmp93 = (unsigned long )se_cmd;
10131#line 381
10132 if (__cil_tmp93 != __cil_tmp92) {
10133 {
10134#line 382
10135 transport_generic_free_cmd(se_cmd, 1);
10136 }
10137 } else {
10138 {
10139#line 384
10140 __cil_tmp94 = (void *)tl_cmd;
10141#line 384
10142 kmem_cache_free(tcm_loop_cmd_cache, __cil_tmp94);
10143 }
10144 }
10145 }
10146 {
10147#line 385
10148 __cil_tmp95 = (void const *)tl_tmr;
10149#line 385
10150 kfree(__cil_tmp95);
10151 }
10152#line 386
10153 return (ret);
10154}
10155}
10156#line 389 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10157static int tcm_loop_slave_alloc(struct scsi_device *sd )
10158{ unsigned long __cil_tmp2 ;
10159 unsigned long __cil_tmp3 ;
10160 struct request_queue *__cil_tmp4 ;
10161 unsigned long __cil_tmp5 ;
10162 unsigned long __cil_tmp6 ;
10163 unsigned long *__cil_tmp7 ;
10164 unsigned long volatile *__cil_tmp8 ;
10165
10166 {
10167 {
10168#line 391
10169 __cil_tmp2 = (unsigned long )sd;
10170#line 391
10171 __cil_tmp3 = __cil_tmp2 + 8;
10172#line 391
10173 __cil_tmp4 = *((struct request_queue **)__cil_tmp3);
10174#line 391
10175 __cil_tmp5 = (unsigned long )__cil_tmp4;
10176#line 391
10177 __cil_tmp6 = __cil_tmp5 + 1816;
10178#line 391
10179 __cil_tmp7 = (unsigned long *)__cil_tmp6;
10180#line 391
10181 __cil_tmp8 = (unsigned long volatile *)__cil_tmp7;
10182#line 391
10183 set_bit(7U, __cil_tmp8);
10184 }
10185#line 392
10186 return (0);
10187}
10188}
10189#line 395 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10190static int tcm_loop_slave_configure(struct scsi_device *sd )
10191{
10192
10193 {
10194#line 397
10195 return (0);
10196}
10197}
10198#line 400 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10199static struct scsi_host_template tcm_loop_driver_template =
10200#line 400
10201 {& __this_module, "TCM_Loopback", (int (*)(struct scsi_host_template * ))0, (int (*)(struct Scsi_Host * ))0,
10202 (char const *(*)(struct Scsi_Host * ))0, (int (*)(struct scsi_device * , int ,
10203 void * ))0, (int (*)(struct scsi_device * ,
10204 int ,
10205 void * ))0,
10206 & tcm_loop_queuecommand, (int (*)(struct scsi_cmnd * , void (*)(struct scsi_cmnd * ) ))0,
10207 (int (*)(struct scsi_cmnd * ))0, & tcm_loop_device_reset, (int (*)(struct scsi_cmnd * ))0,
10208 (int (*)(struct scsi_cmnd * ))0, (int (*)(struct scsi_cmnd * ))0, & tcm_loop_slave_alloc,
10209 & tcm_loop_slave_configure, (void (*)(struct scsi_device * ))0, (int (*)(struct scsi_target * ))0,
10210 (void (*)(struct scsi_target * ))0, (int (*)(struct Scsi_Host * , unsigned long ))0,
10211 (void (*)(struct Scsi_Host * ))0, & tcm_loop_change_queue_depth, (int (*)(struct scsi_device * ,
10212 int ))0,
10213 (int (*)(struct scsi_device * , struct block_device * , sector_t , int * ))0,
10214 (void (*)(struct scsi_device * ))0, & tcm_loop_proc_info, (enum blk_eh_timer_return (*)(struct scsi_cmnd * ))0,
10215 (int (*)(struct Scsi_Host * , int ))0, "tcm_loopback", (struct proc_dir_entry *)0,
10216 1024, -1, (unsigned short)256, (unsigned short)0, (unsigned short)65535, 0UL,
10217 (short)1024, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
10218 (unsigned char)0, (unsigned char)0, (unsigned char)0, 0U, (struct device_attribute **)0,
10219 (struct device_attribute **)0, {(struct list_head *)0, (struct list_head *)0},
10220 0ULL};
10221#line 418 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10222static int tcm_loop_driver_probe(struct device *dev )
10223{ struct tcm_loop_hba *tl_hba ;
10224 struct Scsi_Host *sh ;
10225 int error ;
10226 struct device const *__mptr ;
10227 struct tcm_loop_hba *__cil_tmp6 ;
10228 struct Scsi_Host *__cil_tmp7 ;
10229 unsigned long __cil_tmp8 ;
10230 unsigned long __cil_tmp9 ;
10231 unsigned long __cil_tmp10 ;
10232 unsigned long __cil_tmp11 ;
10233 unsigned long __cil_tmp12 ;
10234 unsigned long __cil_tmp13 ;
10235 unsigned long (*__cil_tmp14)[0U] ;
10236 struct tcm_loop_hba **__cil_tmp15 ;
10237 unsigned long __cil_tmp16 ;
10238 unsigned long __cil_tmp17 ;
10239 unsigned long __cil_tmp18 ;
10240 unsigned long __cil_tmp19 ;
10241 unsigned long __cil_tmp20 ;
10242 unsigned long __cil_tmp21 ;
10243 unsigned long __cil_tmp22 ;
10244 unsigned long __cil_tmp23 ;
10245 unsigned long __cil_tmp24 ;
10246 unsigned long __cil_tmp25 ;
10247 struct device *__cil_tmp26 ;
10248
10249 {
10250 {
10251#line 424
10252 __mptr = (struct device const *)dev;
10253#line 424
10254 __cil_tmp6 = (struct tcm_loop_hba *)__mptr;
10255#line 424
10256 tl_hba = __cil_tmp6 + 0xfffffffffffffed0UL;
10257#line 426
10258 sh = scsi_host_alloc(& tcm_loop_driver_template, 65456);
10259 }
10260 {
10261#line 428
10262 __cil_tmp7 = (struct Scsi_Host *)0;
10263#line 428
10264 __cil_tmp8 = (unsigned long )__cil_tmp7;
10265#line 428
10266 __cil_tmp9 = (unsigned long )sh;
10267#line 428
10268 if (__cil_tmp9 == __cil_tmp8) {
10269 {
10270#line 429
10271 printk("<3>Unable to allocate struct scsi_host\n");
10272 }
10273#line 430
10274 return (-19);
10275 } else {
10276
10277 }
10278 }
10279 {
10280#line 432
10281 __cil_tmp10 = (unsigned long )tl_hba;
10282#line 432
10283 __cil_tmp11 = __cil_tmp10 + 1456;
10284#line 432
10285 *((struct Scsi_Host **)__cil_tmp11) = sh;
10286#line 437
10287 __cil_tmp12 = (unsigned long )sh;
10288#line 437
10289 __cil_tmp13 = __cil_tmp12 + 3048;
10290#line 437
10291 __cil_tmp14 = (unsigned long (*)[0U])__cil_tmp13;
10292#line 437
10293 __cil_tmp15 = (struct tcm_loop_hba **)__cil_tmp14;
10294#line 437
10295 *__cil_tmp15 = tl_hba;
10296#line 441
10297 __cil_tmp16 = (unsigned long )sh;
10298#line 441
10299 __cil_tmp17 = __cil_tmp16 + 568;
10300#line 441
10301 *((unsigned int *)__cil_tmp17) = 2U;
10302#line 442
10303 __cil_tmp18 = (unsigned long )sh;
10304#line 442
10305 __cil_tmp19 = __cil_tmp18 + 572;
10306#line 442
10307 *((unsigned int *)__cil_tmp19) = 0U;
10308#line 443
10309 __cil_tmp20 = (unsigned long )sh;
10310#line 443
10311 __cil_tmp21 = __cil_tmp20 + 576;
10312#line 443
10313 *((unsigned int *)__cil_tmp21) = 0U;
10314#line 444
10315 __cil_tmp22 = (unsigned long )sh;
10316#line 444
10317 __cil_tmp23 = __cil_tmp22 + 584;
10318#line 444
10319 *((unsigned short *)__cil_tmp23) = (unsigned short)32;
10320#line 446
10321 __cil_tmp24 = (unsigned long )tl_hba;
10322#line 446
10323 __cil_tmp25 = __cil_tmp24 + 304;
10324#line 446
10325 __cil_tmp26 = (struct device *)__cil_tmp25;
10326#line 446
10327 error = scsi_add_host(sh, __cil_tmp26);
10328 }
10329#line 447
10330 if (error != 0) {
10331 {
10332#line 448
10333 printk("<3>%s: scsi_add_host failed\n", "tcm_loop_driver_probe");
10334#line 449
10335 scsi_host_put(sh);
10336 }
10337#line 450
10338 return (-19);
10339 } else {
10340
10341 }
10342#line 452
10343 return (0);
10344}
10345}
10346#line 455 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10347static int tcm_loop_driver_remove(struct device *dev )
10348{ struct tcm_loop_hba *tl_hba ;
10349 struct Scsi_Host *sh ;
10350 struct device const *__mptr ;
10351 struct tcm_loop_hba *__cil_tmp5 ;
10352 unsigned long __cil_tmp6 ;
10353 unsigned long __cil_tmp7 ;
10354
10355 {
10356 {
10357#line 460
10358 __mptr = (struct device const *)dev;
10359#line 460
10360 __cil_tmp5 = (struct tcm_loop_hba *)__mptr;
10361#line 460
10362 tl_hba = __cil_tmp5 + 0xfffffffffffffed0UL;
10363#line 461
10364 __cil_tmp6 = (unsigned long )tl_hba;
10365#line 461
10366 __cil_tmp7 = __cil_tmp6 + 1456;
10367#line 461
10368 sh = *((struct Scsi_Host **)__cil_tmp7);
10369#line 463
10370 scsi_remove_host(sh);
10371#line 464
10372 scsi_host_put(sh);
10373 }
10374#line 465
10375 return (0);
10376}
10377}
10378#line 468 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10379static void tcm_loop_release_adapter(struct device *dev )
10380{ struct tcm_loop_hba *tl_hba ;
10381 struct device const *__mptr ;
10382 struct tcm_loop_hba *__cil_tmp4 ;
10383 void const *__cil_tmp5 ;
10384
10385 {
10386 {
10387#line 470
10388 __mptr = (struct device const *)dev;
10389#line 470
10390 __cil_tmp4 = (struct tcm_loop_hba *)__mptr;
10391#line 470
10392 tl_hba = __cil_tmp4 + 0xfffffffffffffed0UL;
10393#line 472
10394 __cil_tmp5 = (void const *)tl_hba;
10395#line 472
10396 kfree(__cil_tmp5);
10397 }
10398#line 473
10399 return;
10400}
10401}
10402#line 478 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10403static int tcm_loop_setup_hba_bus(struct tcm_loop_hba *tl_hba , int tcm_loop_host_id )
10404{ int ret ;
10405 unsigned long __cil_tmp4 ;
10406 unsigned long __cil_tmp5 ;
10407 unsigned long __cil_tmp6 ;
10408 unsigned long __cil_tmp7 ;
10409 unsigned long __cil_tmp8 ;
10410 unsigned long __cil_tmp9 ;
10411 unsigned long __cil_tmp10 ;
10412 unsigned long __cil_tmp11 ;
10413 unsigned long __cil_tmp12 ;
10414 unsigned long __cil_tmp13 ;
10415 struct device *__cil_tmp14 ;
10416 unsigned long __cil_tmp15 ;
10417 unsigned long __cil_tmp16 ;
10418 struct device *__cil_tmp17 ;
10419
10420 {
10421 {
10422#line 482
10423 __cil_tmp4 = 304 + 264;
10424#line 482
10425 __cil_tmp5 = (unsigned long )tl_hba;
10426#line 482
10427 __cil_tmp6 = __cil_tmp5 + __cil_tmp4;
10428#line 482
10429 *((struct bus_type **)__cil_tmp6) = & tcm_loop_lld_bus;
10430#line 483
10431 __cil_tmp7 = (unsigned long )tl_hba;
10432#line 483
10433 __cil_tmp8 = __cil_tmp7 + 304;
10434#line 483
10435 *((struct device **)__cil_tmp8) = tcm_loop_primary;
10436#line 484
10437 __cil_tmp9 = 304 + 1144;
10438#line 484
10439 __cil_tmp10 = (unsigned long )tl_hba;
10440#line 484
10441 __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
10442#line 484
10443 *((void (**)(struct device * ))__cil_tmp11) = & tcm_loop_release_adapter;
10444#line 485
10445 __cil_tmp12 = (unsigned long )tl_hba;
10446#line 485
10447 __cil_tmp13 = __cil_tmp12 + 304;
10448#line 485
10449 __cil_tmp14 = (struct device *)__cil_tmp13;
10450#line 485
10451 dev_set_name(__cil_tmp14, "tcm_loop_adapter_%d", tcm_loop_host_id);
10452#line 487
10453 __cil_tmp15 = (unsigned long )tl_hba;
10454#line 487
10455 __cil_tmp16 = __cil_tmp15 + 304;
10456#line 487
10457 __cil_tmp17 = (struct device *)__cil_tmp16;
10458#line 487
10459 ret = device_register(__cil_tmp17);
10460 }
10461#line 488
10462 if (ret != 0) {
10463 {
10464#line 489
10465 printk("<3>device_register() failed for tl_hba->dev: %d\n", ret);
10466 }
10467#line 491
10468 return (-19);
10469 } else {
10470
10471 }
10472#line 494
10473 return (0);
10474}
10475}
10476#line 501 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10477static int tcm_loop_alloc_core_bus(void)
10478{ int ret ;
10479 long tmp ;
10480 long tmp___0 ;
10481 struct lock_class_key __key ;
10482 int tmp___1 ;
10483 struct _ddebug descriptor ;
10484 long tmp___2 ;
10485 void const *__cil_tmp8 ;
10486 void const *__cil_tmp9 ;
10487 struct _ddebug *__cil_tmp10 ;
10488 unsigned long __cil_tmp11 ;
10489 unsigned long __cil_tmp12 ;
10490 unsigned long __cil_tmp13 ;
10491 unsigned long __cil_tmp14 ;
10492 unsigned long __cil_tmp15 ;
10493 unsigned long __cil_tmp16 ;
10494 unsigned char __cil_tmp17 ;
10495 long __cil_tmp18 ;
10496 long __cil_tmp19 ;
10497
10498 {
10499 {
10500#line 505
10501 tcm_loop_primary = __root_device_register("tcm_loop_0", & __this_module);
10502#line 506
10503 __cil_tmp8 = (void const *)tcm_loop_primary;
10504#line 506
10505 tmp___0 = IS_ERR(__cil_tmp8);
10506 }
10507#line 506
10508 if (tmp___0 != 0L) {
10509 {
10510#line 507
10511 printk("<3>Unable to allocate tcm_loop_primary\n");
10512#line 508
10513 __cil_tmp9 = (void const *)tcm_loop_primary;
10514#line 508
10515 tmp = PTR_ERR(__cil_tmp9);
10516 }
10517#line 508
10518 return ((int )tmp);
10519 } else {
10520
10521 }
10522 {
10523#line 511
10524 tmp___1 = __bus_register(& tcm_loop_lld_bus, & __key);
10525#line 511
10526 ret = tmp___1;
10527 }
10528#line 512
10529 if (ret != 0) {
10530 {
10531#line 513
10532 printk("<3>bus_register() failed for tcm_loop_lld_bus\n");
10533 }
10534#line 514
10535 goto dev_unreg;
10536 } else {
10537
10538 }
10539 {
10540#line 517
10541 ret = driver_register(& tcm_loop_driverfs);
10542 }
10543#line 518
10544 if (ret != 0) {
10545 {
10546#line 519
10547 printk("<3>driver_register() failed fortcm_loop_driverfs\n");
10548 }
10549#line 521
10550 goto bus_unreg;
10551 } else {
10552
10553 }
10554 {
10555#line 524
10556 __cil_tmp10 = & descriptor;
10557#line 524
10558 *((char const **)__cil_tmp10) = "tcm_loop";
10559#line 524
10560 __cil_tmp11 = (unsigned long )(& descriptor) + 8;
10561#line 524
10562 *((char const **)__cil_tmp11) = "tcm_loop_alloc_core_bus";
10563#line 524
10564 __cil_tmp12 = (unsigned long )(& descriptor) + 16;
10565#line 524
10566 *((char const **)__cil_tmp12) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
10567#line 524
10568 __cil_tmp13 = (unsigned long )(& descriptor) + 24;
10569#line 524
10570 *((char const **)__cil_tmp13) = "Initialized TCM Loop Core Bus\n";
10571#line 524
10572 __cil_tmp14 = (unsigned long )(& descriptor) + 32;
10573#line 524
10574 *((unsigned int *)__cil_tmp14) = 524U;
10575#line 524
10576 __cil_tmp15 = (unsigned long )(& descriptor) + 35;
10577#line 524
10578 *((unsigned char *)__cil_tmp15) = (unsigned char)0;
10579#line 524
10580 __cil_tmp16 = (unsigned long )(& descriptor) + 35;
10581#line 524
10582 __cil_tmp17 = *((unsigned char *)__cil_tmp16);
10583#line 524
10584 __cil_tmp18 = (long )__cil_tmp17;
10585#line 524
10586 __cil_tmp19 = __cil_tmp18 & 1L;
10587#line 524
10588 tmp___2 = __builtin_expect(__cil_tmp19, 0L);
10589 }
10590#line 524
10591 if (tmp___2 != 0L) {
10592 {
10593#line 524
10594 __dynamic_pr_debug(& descriptor, "Initialized TCM Loop Core Bus\n");
10595 }
10596 } else {
10597
10598 }
10599#line 525
10600 return (ret);
10601 bus_unreg:
10602 {
10603#line 528
10604 bus_unregister(& tcm_loop_lld_bus);
10605 }
10606 dev_unreg:
10607 {
10608#line 530
10609 root_device_unregister(tcm_loop_primary);
10610 }
10611#line 531
10612 return (ret);
10613}
10614}
10615#line 534 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10616static void tcm_loop_release_core_bus(void)
10617{ struct _ddebug descriptor ;
10618 long tmp ;
10619 struct _ddebug *__cil_tmp3 ;
10620 unsigned long __cil_tmp4 ;
10621 unsigned long __cil_tmp5 ;
10622 unsigned long __cil_tmp6 ;
10623 unsigned long __cil_tmp7 ;
10624 unsigned long __cil_tmp8 ;
10625 unsigned long __cil_tmp9 ;
10626 unsigned char __cil_tmp10 ;
10627 long __cil_tmp11 ;
10628 long __cil_tmp12 ;
10629
10630 {
10631 {
10632#line 536
10633 driver_unregister(& tcm_loop_driverfs);
10634#line 537
10635 bus_unregister(& tcm_loop_lld_bus);
10636#line 538
10637 root_device_unregister(tcm_loop_primary);
10638#line 540
10639 __cil_tmp3 = & descriptor;
10640#line 540
10641 *((char const **)__cil_tmp3) = "tcm_loop";
10642#line 540
10643 __cil_tmp4 = (unsigned long )(& descriptor) + 8;
10644#line 540
10645 *((char const **)__cil_tmp4) = "tcm_loop_release_core_bus";
10646#line 540
10647 __cil_tmp5 = (unsigned long )(& descriptor) + 16;
10648#line 540
10649 *((char const **)__cil_tmp5) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
10650#line 540
10651 __cil_tmp6 = (unsigned long )(& descriptor) + 24;
10652#line 540
10653 *((char const **)__cil_tmp6) = "Releasing TCM Loop Core BUS\n";
10654#line 540
10655 __cil_tmp7 = (unsigned long )(& descriptor) + 32;
10656#line 540
10657 *((unsigned int *)__cil_tmp7) = 540U;
10658#line 540
10659 __cil_tmp8 = (unsigned long )(& descriptor) + 35;
10660#line 540
10661 *((unsigned char *)__cil_tmp8) = (unsigned char)0;
10662#line 540
10663 __cil_tmp9 = (unsigned long )(& descriptor) + 35;
10664#line 540
10665 __cil_tmp10 = *((unsigned char *)__cil_tmp9);
10666#line 540
10667 __cil_tmp11 = (long )__cil_tmp10;
10668#line 540
10669 __cil_tmp12 = __cil_tmp11 & 1L;
10670#line 540
10671 tmp = __builtin_expect(__cil_tmp12, 0L);
10672 }
10673#line 540
10674 if (tmp != 0L) {
10675 {
10676#line 540
10677 __dynamic_pr_debug(& descriptor, "Releasing TCM Loop Core BUS\n");
10678 }
10679 } else {
10680
10681 }
10682#line 542
10683 return;
10684}
10685}
10686#line 543 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10687static char *tcm_loop_get_fabric_name(void)
10688{
10689
10690 {
10691#line 545
10692 return ((char *)"loopback");
10693}
10694}
10695#line 548 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10696static u8 tcm_loop_get_fabric_proto_ident(struct se_portal_group *se_tpg )
10697{ struct tcm_loop_tpg *tl_tpg ;
10698 struct tcm_loop_hba *tl_hba ;
10699 u8 tmp ;
10700 u8 tmp___0 ;
10701 u8 tmp___1 ;
10702 u8 tmp___2 ;
10703 unsigned long __cil_tmp8 ;
10704 unsigned long __cil_tmp9 ;
10705 void *__cil_tmp10 ;
10706 unsigned long __cil_tmp11 ;
10707 unsigned long __cil_tmp12 ;
10708 u8 __cil_tmp13 ;
10709 u8 __cil_tmp14 ;
10710 int __cil_tmp15 ;
10711
10712 {
10713#line 550
10714 __cil_tmp8 = (unsigned long )se_tpg;
10715#line 550
10716 __cil_tmp9 = __cil_tmp8 + 232;
10717#line 550
10718 __cil_tmp10 = *((void **)__cil_tmp9);
10719#line 550
10720 tl_tpg = (struct tcm_loop_tpg *)__cil_tmp10;
10721#line 551
10722 __cil_tmp11 = (unsigned long )tl_tpg;
10723#line 551
10724 __cil_tmp12 = __cil_tmp11 + 1984;
10725#line 551
10726 tl_hba = *((struct tcm_loop_hba **)__cil_tmp12);
10727 {
10728#line 559
10729 __cil_tmp13 = *((u8 *)tl_hba);
10730#line 560
10731 if ((int )__cil_tmp13 == 6) {
10732#line 560
10733 goto case_6;
10734 } else
10735#line 562
10736 if ((int )__cil_tmp13 == 0) {
10737#line 562
10738 goto case_0;
10739 } else
10740#line 564
10741 if ((int )__cil_tmp13 == 5) {
10742#line 564
10743 goto case_5;
10744 } else {
10745 {
10746#line 566
10747 goto switch_default;
10748#line 559
10749 if (0) {
10750 case_6:
10751 {
10752#line 561
10753 tmp = sas_get_fabric_proto_ident(se_tpg);
10754 }
10755#line 561
10756 return (tmp);
10757 case_0:
10758 {
10759#line 563
10760 tmp___0 = fc_get_fabric_proto_ident(se_tpg);
10761 }
10762#line 563
10763 return (tmp___0);
10764 case_5:
10765 {
10766#line 565
10767 tmp___1 = iscsi_get_fabric_proto_ident(se_tpg);
10768 }
10769#line 565
10770 return (tmp___1);
10771 switch_default:
10772 {
10773#line 567
10774 __cil_tmp14 = *((u8 *)tl_hba);
10775#line 567
10776 __cil_tmp15 = (int )__cil_tmp14;
10777#line 567
10778 printk("<3>Unknown tl_proto_id: 0x%02x, using SAS emulation\n", __cil_tmp15);
10779 }
10780#line 569
10781 goto ldv_49061;
10782 } else {
10783 switch_break: ;
10784 }
10785 }
10786 }
10787 }
10788 ldv_49061:
10789 {
10790#line 572
10791 tmp___2 = sas_get_fabric_proto_ident(se_tpg);
10792 }
10793#line 572
10794 return (tmp___2);
10795}
10796}
10797#line 575 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10798static char *tcm_loop_get_endpoint_wwn(struct se_portal_group *se_tpg )
10799{ struct tcm_loop_tpg *tl_tpg ;
10800 unsigned long __cil_tmp3 ;
10801 unsigned long __cil_tmp4 ;
10802 void *__cil_tmp5 ;
10803 unsigned long __cil_tmp6 ;
10804 unsigned long __cil_tmp7 ;
10805 struct tcm_loop_hba *__cil_tmp8 ;
10806 unsigned long __cil_tmp9 ;
10807 unsigned long __cil_tmp10 ;
10808 unsigned char (*__cil_tmp11)[256U] ;
10809
10810 {
10811#line 577
10812 __cil_tmp3 = (unsigned long )se_tpg;
10813#line 577
10814 __cil_tmp4 = __cil_tmp3 + 232;
10815#line 577
10816 __cil_tmp5 = *((void **)__cil_tmp4);
10817#line 577
10818 tl_tpg = (struct tcm_loop_tpg *)__cil_tmp5;
10819 {
10820#line 581
10821 __cil_tmp6 = (unsigned long )tl_tpg;
10822#line 581
10823 __cil_tmp7 = __cil_tmp6 + 1984;
10824#line 581
10825 __cil_tmp8 = *((struct tcm_loop_hba **)__cil_tmp7);
10826#line 581
10827 __cil_tmp9 = (unsigned long )__cil_tmp8;
10828#line 581
10829 __cil_tmp10 = __cil_tmp9 + 1;
10830#line 581
10831 __cil_tmp11 = (unsigned char (*)[256U])__cil_tmp10;
10832#line 581
10833 return ((char *)__cil_tmp11);
10834 }
10835}
10836}
10837#line 584 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10838static u16 tcm_loop_get_tag(struct se_portal_group *se_tpg )
10839{ struct tcm_loop_tpg *tl_tpg ;
10840 unsigned long __cil_tmp3 ;
10841 unsigned long __cil_tmp4 ;
10842 void *__cil_tmp5 ;
10843
10844 {
10845#line 586
10846 __cil_tmp3 = (unsigned long )se_tpg;
10847#line 586
10848 __cil_tmp4 = __cil_tmp3 + 232;
10849#line 586
10850 __cil_tmp5 = *((void **)__cil_tmp4);
10851#line 586
10852 tl_tpg = (struct tcm_loop_tpg *)__cil_tmp5;
10853#line 591
10854 return (*((unsigned short *)tl_tpg));
10855}
10856}
10857#line 594 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10858static u32 tcm_loop_get_default_depth(struct se_portal_group *se_tpg )
10859{
10860
10861 {
10862#line 596
10863 return (1U);
10864}
10865}
10866#line 599 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10867static u32 tcm_loop_get_pr_transport_id(struct se_portal_group *se_tpg , struct se_node_acl *se_nacl ,
10868 struct t10_pr_registration *pr_reg , int *format_code ,
10869 unsigned char *buf )
10870{ struct tcm_loop_tpg *tl_tpg ;
10871 struct tcm_loop_hba *tl_hba ;
10872 u32 tmp ;
10873 u32 tmp___0 ;
10874 u32 tmp___1 ;
10875 u32 tmp___2 ;
10876 unsigned long __cil_tmp12 ;
10877 unsigned long __cil_tmp13 ;
10878 void *__cil_tmp14 ;
10879 unsigned long __cil_tmp15 ;
10880 unsigned long __cil_tmp16 ;
10881 u8 __cil_tmp17 ;
10882 u8 __cil_tmp18 ;
10883 int __cil_tmp19 ;
10884
10885 {
10886#line 606
10887 __cil_tmp12 = (unsigned long )se_tpg;
10888#line 606
10889 __cil_tmp13 = __cil_tmp12 + 232;
10890#line 606
10891 __cil_tmp14 = *((void **)__cil_tmp13);
10892#line 606
10893 tl_tpg = (struct tcm_loop_tpg *)__cil_tmp14;
10894#line 607
10895 __cil_tmp15 = (unsigned long )tl_tpg;
10896#line 607
10897 __cil_tmp16 = __cil_tmp15 + 1984;
10898#line 607
10899 tl_hba = *((struct tcm_loop_hba **)__cil_tmp16);
10900 {
10901#line 609
10902 __cil_tmp17 = *((u8 *)tl_hba);
10903#line 610
10904 if ((int )__cil_tmp17 == 6) {
10905#line 610
10906 goto case_6;
10907 } else
10908#line 613
10909 if ((int )__cil_tmp17 == 0) {
10910#line 613
10911 goto case_0;
10912 } else
10913#line 616
10914 if ((int )__cil_tmp17 == 5) {
10915#line 616
10916 goto case_5;
10917 } else {
10918 {
10919#line 619
10920 goto switch_default;
10921#line 609
10922 if (0) {
10923 case_6:
10924 {
10925#line 611
10926 tmp = sas_get_pr_transport_id(se_tpg, se_nacl, pr_reg, format_code, buf);
10927 }
10928#line 611
10929 return (tmp);
10930 case_0:
10931 {
10932#line 614
10933 tmp___0 = fc_get_pr_transport_id(se_tpg, se_nacl, pr_reg, format_code, buf);
10934 }
10935#line 614
10936 return (tmp___0);
10937 case_5:
10938 {
10939#line 617
10940 tmp___1 = iscsi_get_pr_transport_id(se_tpg, se_nacl, pr_reg, format_code, buf);
10941 }
10942#line 617
10943 return (tmp___1);
10944 switch_default:
10945 {
10946#line 620
10947 __cil_tmp18 = *((u8 *)tl_hba);
10948#line 620
10949 __cil_tmp19 = (int )__cil_tmp18;
10950#line 620
10951 printk("<3>Unknown tl_proto_id: 0x%02x, using SAS emulation\n", __cil_tmp19);
10952 }
10953#line 622
10954 goto ldv_49086;
10955 } else {
10956 switch_break: ;
10957 }
10958 }
10959 }
10960 }
10961 ldv_49086:
10962 {
10963#line 625
10964 tmp___2 = sas_get_pr_transport_id(se_tpg, se_nacl, pr_reg, format_code, buf);
10965 }
10966#line 625
10967 return (tmp___2);
10968}
10969}
10970#line 629 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
10971static u32 tcm_loop_get_pr_transport_id_len(struct se_portal_group *se_tpg , struct se_node_acl *se_nacl ,
10972 struct t10_pr_registration *pr_reg , int *format_code )
10973{ struct tcm_loop_tpg *tl_tpg ;
10974 struct tcm_loop_hba *tl_hba ;
10975 u32 tmp ;
10976 u32 tmp___0 ;
10977 u32 tmp___1 ;
10978 u32 tmp___2 ;
10979 unsigned long __cil_tmp11 ;
10980 unsigned long __cil_tmp12 ;
10981 void *__cil_tmp13 ;
10982 unsigned long __cil_tmp14 ;
10983 unsigned long __cil_tmp15 ;
10984 u8 __cil_tmp16 ;
10985 u8 __cil_tmp17 ;
10986 int __cil_tmp18 ;
10987
10988 {
10989#line 635
10990 __cil_tmp11 = (unsigned long )se_tpg;
10991#line 635
10992 __cil_tmp12 = __cil_tmp11 + 232;
10993#line 635
10994 __cil_tmp13 = *((void **)__cil_tmp12);
10995#line 635
10996 tl_tpg = (struct tcm_loop_tpg *)__cil_tmp13;
10997#line 636
10998 __cil_tmp14 = (unsigned long )tl_tpg;
10999#line 636
11000 __cil_tmp15 = __cil_tmp14 + 1984;
11001#line 636
11002 tl_hba = *((struct tcm_loop_hba **)__cil_tmp15);
11003 {
11004#line 638
11005 __cil_tmp16 = *((u8 *)tl_hba);
11006#line 639
11007 if ((int )__cil_tmp16 == 6) {
11008#line 639
11009 goto case_6;
11010 } else
11011#line 642
11012 if ((int )__cil_tmp16 == 0) {
11013#line 642
11014 goto case_0;
11015 } else
11016#line 645
11017 if ((int )__cil_tmp16 == 5) {
11018#line 645
11019 goto case_5;
11020 } else {
11021 {
11022#line 648
11023 goto switch_default;
11024#line 638
11025 if (0) {
11026 case_6:
11027 {
11028#line 640
11029 tmp = sas_get_pr_transport_id_len(se_tpg, se_nacl, pr_reg, format_code);
11030 }
11031#line 640
11032 return (tmp);
11033 case_0:
11034 {
11035#line 643
11036 tmp___0 = fc_get_pr_transport_id_len(se_tpg, se_nacl, pr_reg, format_code);
11037 }
11038#line 643
11039 return (tmp___0);
11040 case_5:
11041 {
11042#line 646
11043 tmp___1 = iscsi_get_pr_transport_id_len(se_tpg, se_nacl, pr_reg, format_code);
11044 }
11045#line 646
11046 return (tmp___1);
11047 switch_default:
11048 {
11049#line 649
11050 __cil_tmp17 = *((u8 *)tl_hba);
11051#line 649
11052 __cil_tmp18 = (int )__cil_tmp17;
11053#line 649
11054 printk("<3>Unknown tl_proto_id: 0x%02x, using SAS emulation\n", __cil_tmp18);
11055 }
11056#line 651
11057 goto ldv_49099;
11058 } else {
11059 switch_break: ;
11060 }
11061 }
11062 }
11063 }
11064 ldv_49099:
11065 {
11066#line 654
11067 tmp___2 = sas_get_pr_transport_id_len(se_tpg, se_nacl, pr_reg, format_code);
11068 }
11069#line 654
11070 return (tmp___2);
11071}
11072}
11073#line 662 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11074static char *tcm_loop_parse_pr_out_transport_id(struct se_portal_group *se_tpg , char const *buf ,
11075 u32 *out_tid_len , char **port_nexus_ptr )
11076{ struct tcm_loop_tpg *tl_tpg ;
11077 struct tcm_loop_hba *tl_hba ;
11078 char *tmp ;
11079 char *tmp___0 ;
11080 char *tmp___1 ;
11081 char *tmp___2 ;
11082 unsigned long __cil_tmp11 ;
11083 unsigned long __cil_tmp12 ;
11084 void *__cil_tmp13 ;
11085 unsigned long __cil_tmp14 ;
11086 unsigned long __cil_tmp15 ;
11087 u8 __cil_tmp16 ;
11088 u8 __cil_tmp17 ;
11089 int __cil_tmp18 ;
11090
11091 {
11092#line 668
11093 __cil_tmp11 = (unsigned long )se_tpg;
11094#line 668
11095 __cil_tmp12 = __cil_tmp11 + 232;
11096#line 668
11097 __cil_tmp13 = *((void **)__cil_tmp12);
11098#line 668
11099 tl_tpg = (struct tcm_loop_tpg *)__cil_tmp13;
11100#line 669
11101 __cil_tmp14 = (unsigned long )tl_tpg;
11102#line 669
11103 __cil_tmp15 = __cil_tmp14 + 1984;
11104#line 669
11105 tl_hba = *((struct tcm_loop_hba **)__cil_tmp15);
11106 {
11107#line 671
11108 __cil_tmp16 = *((u8 *)tl_hba);
11109#line 672
11110 if ((int )__cil_tmp16 == 6) {
11111#line 672
11112 goto case_6;
11113 } else
11114#line 675
11115 if ((int )__cil_tmp16 == 0) {
11116#line 675
11117 goto case_0;
11118 } else
11119#line 678
11120 if ((int )__cil_tmp16 == 5) {
11121#line 678
11122 goto case_5;
11123 } else {
11124 {
11125#line 681
11126 goto switch_default;
11127#line 671
11128 if (0) {
11129 case_6:
11130 {
11131#line 673
11132 tmp = sas_parse_pr_out_transport_id(se_tpg, buf, out_tid_len, port_nexus_ptr);
11133 }
11134#line 673
11135 return (tmp);
11136 case_0:
11137 {
11138#line 676
11139 tmp___0 = fc_parse_pr_out_transport_id(se_tpg, buf, out_tid_len, port_nexus_ptr);
11140 }
11141#line 676
11142 return (tmp___0);
11143 case_5:
11144 {
11145#line 679
11146 tmp___1 = iscsi_parse_pr_out_transport_id(se_tpg, buf, out_tid_len, port_nexus_ptr);
11147 }
11148#line 679
11149 return (tmp___1);
11150 switch_default:
11151 {
11152#line 682
11153 __cil_tmp17 = *((u8 *)tl_hba);
11154#line 682
11155 __cil_tmp18 = (int )__cil_tmp17;
11156#line 682
11157 printk("<3>Unknown tl_proto_id: 0x%02x, using SAS emulation\n", __cil_tmp18);
11158 }
11159#line 684
11160 goto ldv_49112;
11161 } else {
11162 switch_break: ;
11163 }
11164 }
11165 }
11166 }
11167 ldv_49112:
11168 {
11169#line 687
11170 tmp___2 = sas_parse_pr_out_transport_id(se_tpg, buf, out_tid_len, port_nexus_ptr);
11171 }
11172#line 687
11173 return (tmp___2);
11174}
11175}
11176#line 695 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11177static int tcm_loop_check_demo_mode(struct se_portal_group *se_tpg )
11178{
11179
11180 {
11181#line 697
11182 return (1);
11183}
11184}
11185#line 700 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11186static int tcm_loop_check_demo_mode_cache(struct se_portal_group *se_tpg )
11187{
11188
11189 {
11190#line 702
11191 return (0);
11192}
11193}
11194#line 709 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11195static int tcm_loop_check_demo_mode_write_protect(struct se_portal_group *se_tpg )
11196{
11197
11198 {
11199#line 711
11200 return (0);
11201}
11202}
11203#line 719 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11204static int tcm_loop_check_prod_mode_write_protect(struct se_portal_group *se_tpg )
11205{
11206
11207 {
11208#line 721
11209 return (0);
11210}
11211}
11212#line 724 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11213static struct se_node_acl *tcm_loop_tpg_alloc_fabric_acl(struct se_portal_group *se_tpg )
11214{ struct tcm_loop_nacl *tl_nacl ;
11215 void *tmp ;
11216 struct tcm_loop_nacl *__cil_tmp4 ;
11217 unsigned long __cil_tmp5 ;
11218 unsigned long __cil_tmp6 ;
11219
11220 {
11221 {
11222#line 729
11223 tmp = kzalloc(1248UL, 208U);
11224#line 729
11225 tl_nacl = (struct tcm_loop_nacl *)tmp;
11226 }
11227 {
11228#line 730
11229 __cil_tmp4 = (struct tcm_loop_nacl *)0;
11230#line 730
11231 __cil_tmp5 = (unsigned long )__cil_tmp4;
11232#line 730
11233 __cil_tmp6 = (unsigned long )tl_nacl;
11234#line 730
11235 if (__cil_tmp6 == __cil_tmp5) {
11236 {
11237#line 731
11238 printk("<3>Unable to allocate struct tcm_loop_nacl\n");
11239 }
11240#line 732
11241 return ((struct se_node_acl *)0);
11242 } else {
11243
11244 }
11245 }
11246#line 735
11247 return ((struct se_node_acl *)tl_nacl);
11248}
11249}
11250#line 738 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11251static void tcm_loop_tpg_release_fabric_acl(struct se_portal_group *se_tpg , struct se_node_acl *se_nacl )
11252{ struct tcm_loop_nacl *tl_nacl ;
11253 struct se_node_acl const *__mptr ;
11254 void const *__cil_tmp5 ;
11255
11256 {
11257 {
11258#line 742
11259 __mptr = (struct se_node_acl const *)se_nacl;
11260#line 742
11261 tl_nacl = (struct tcm_loop_nacl *)__mptr;
11262#line 745
11263 __cil_tmp5 = (void const *)tl_nacl;
11264#line 745
11265 kfree(__cil_tmp5);
11266 }
11267#line 746
11268 return;
11269}
11270}
11271#line 748 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11272static u32 tcm_loop_get_inst_index(struct se_portal_group *se_tpg )
11273{
11274
11275 {
11276#line 750
11277 return (1U);
11278}
11279}
11280#line 753 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11281static u32 tcm_loop_sess_get_index(struct se_session *se_sess )
11282{
11283
11284 {
11285#line 755
11286 return (1U);
11287}
11288}
11289#line 758 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11290static void tcm_loop_set_default_node_attributes(struct se_node_acl *se_acl )
11291{
11292
11293 {
11294#line 760
11295 return;
11296}
11297}
11298#line 763 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11299static u32 tcm_loop_get_task_tag(struct se_cmd *se_cmd )
11300{
11301
11302 {
11303#line 765
11304 return (1U);
11305}
11306}
11307#line 768 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11308static int tcm_loop_get_cmd_state(struct se_cmd *se_cmd )
11309{ struct tcm_loop_cmd *tl_cmd ;
11310 struct se_cmd const *__mptr ;
11311 struct tcm_loop_cmd *__cil_tmp4 ;
11312 u32 __cil_tmp5 ;
11313
11314 {
11315#line 770
11316 __mptr = (struct se_cmd const *)se_cmd;
11317#line 770
11318 __cil_tmp4 = (struct tcm_loop_cmd *)__mptr;
11319#line 770
11320 tl_cmd = __cil_tmp4 + 0xfffffffffffffff0UL;
11321 {
11322#line 773
11323 __cil_tmp5 = *((u32 *)tl_cmd);
11324#line 773
11325 return ((int )__cil_tmp5);
11326 }
11327}
11328}
11329#line 776 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11330static int tcm_loop_shutdown_session(struct se_session *se_sess )
11331{
11332
11333 {
11334#line 778
11335 return (0);
11336}
11337}
11338#line 781 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11339static void tcm_loop_close_session(struct se_session *se_sess )
11340{
11341
11342 {
11343#line 783
11344 return;
11345}
11346}
11347#line 786 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11348static int tcm_loop_write_pending(struct se_cmd *se_cmd )
11349{
11350
11351 {
11352 {
11353#line 797
11354 transport_generic_process_write(se_cmd);
11355 }
11356#line 798
11357 return (0);
11358}
11359}
11360#line 801 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11361static int tcm_loop_write_pending_status(struct se_cmd *se_cmd )
11362{
11363
11364 {
11365#line 803
11366 return (0);
11367}
11368}
11369#line 806 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11370static int tcm_loop_queue_data_in(struct se_cmd *se_cmd )
11371{ struct tcm_loop_cmd *tl_cmd ;
11372 struct se_cmd const *__mptr ;
11373 struct scsi_cmnd *sc ;
11374 struct _ddebug descriptor ;
11375 long tmp ;
11376 struct tcm_loop_cmd *__cil_tmp7 ;
11377 unsigned long __cil_tmp8 ;
11378 unsigned long __cil_tmp9 ;
11379 struct _ddebug *__cil_tmp10 ;
11380 unsigned long __cil_tmp11 ;
11381 unsigned long __cil_tmp12 ;
11382 unsigned long __cil_tmp13 ;
11383 unsigned long __cil_tmp14 ;
11384 unsigned long __cil_tmp15 ;
11385 unsigned long __cil_tmp16 ;
11386 unsigned char __cil_tmp17 ;
11387 long __cil_tmp18 ;
11388 long __cil_tmp19 ;
11389 unsigned long __cil_tmp20 ;
11390 unsigned long __cil_tmp21 ;
11391 unsigned char *__cil_tmp22 ;
11392 unsigned char __cil_tmp23 ;
11393 int __cil_tmp24 ;
11394 unsigned long __cil_tmp25 ;
11395 unsigned long __cil_tmp26 ;
11396 unsigned long __cil_tmp27 ;
11397 unsigned long __cil_tmp28 ;
11398 u32 __cil_tmp29 ;
11399 unsigned int __cil_tmp30 ;
11400 unsigned long __cil_tmp31 ;
11401 unsigned long __cil_tmp32 ;
11402 u32 __cil_tmp33 ;
11403 int __cil_tmp34 ;
11404 unsigned long __cil_tmp35 ;
11405 unsigned long __cil_tmp36 ;
11406 u32 __cil_tmp37 ;
11407 unsigned int __cil_tmp38 ;
11408 unsigned long __cil_tmp39 ;
11409 unsigned long __cil_tmp40 ;
11410 u32 __cil_tmp41 ;
11411 int __cil_tmp42 ;
11412 unsigned long __cil_tmp43 ;
11413 unsigned long __cil_tmp44 ;
11414 void (*__cil_tmp45)(struct scsi_cmnd * ) ;
11415
11416 {
11417 {
11418#line 808
11419 __mptr = (struct se_cmd const *)se_cmd;
11420#line 808
11421 __cil_tmp7 = (struct tcm_loop_cmd *)__mptr;
11422#line 808
11423 tl_cmd = __cil_tmp7 + 0xfffffffffffffff0UL;
11424#line 810
11425 __cil_tmp8 = (unsigned long )tl_cmd;
11426#line 810
11427 __cil_tmp9 = __cil_tmp8 + 8;
11428#line 810
11429 sc = *((struct scsi_cmnd **)__cil_tmp9);
11430#line 812
11431 __cil_tmp10 = & descriptor;
11432#line 812
11433 *((char const **)__cil_tmp10) = "tcm_loop";
11434#line 812
11435 __cil_tmp11 = (unsigned long )(& descriptor) + 8;
11436#line 812
11437 *((char const **)__cil_tmp11) = "tcm_loop_queue_data_in";
11438#line 812
11439 __cil_tmp12 = (unsigned long )(& descriptor) + 16;
11440#line 812
11441 *((char const **)__cil_tmp12) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
11442#line 812
11443 __cil_tmp13 = (unsigned long )(& descriptor) + 24;
11444#line 812
11445 *((char const **)__cil_tmp13) = "tcm_loop_queue_data_in() called for scsi_cmnd: %p cdb: 0x%02x\n";
11446#line 812
11447 __cil_tmp14 = (unsigned long )(& descriptor) + 32;
11448#line 812
11449 *((unsigned int *)__cil_tmp14) = 813U;
11450#line 812
11451 __cil_tmp15 = (unsigned long )(& descriptor) + 35;
11452#line 812
11453 *((unsigned char *)__cil_tmp15) = (unsigned char)0;
11454#line 812
11455 __cil_tmp16 = (unsigned long )(& descriptor) + 35;
11456#line 812
11457 __cil_tmp17 = *((unsigned char *)__cil_tmp16);
11458#line 812
11459 __cil_tmp18 = (long )__cil_tmp17;
11460#line 812
11461 __cil_tmp19 = __cil_tmp18 & 1L;
11462#line 812
11463 tmp = __builtin_expect(__cil_tmp19, 0L);
11464 }
11465#line 812
11466 if (tmp != 0L) {
11467 {
11468#line 812
11469 __cil_tmp20 = (unsigned long )sc;
11470#line 812
11471 __cil_tmp21 = __cil_tmp20 + 80;
11472#line 812
11473 __cil_tmp22 = *((unsigned char **)__cil_tmp21);
11474#line 812
11475 __cil_tmp23 = *__cil_tmp22;
11476#line 812
11477 __cil_tmp24 = (int )__cil_tmp23;
11478#line 812
11479 __dynamic_pr_debug(& descriptor, "tcm_loop_queue_data_in() called for scsi_cmnd: %p cdb: 0x%02x\n",
11480 sc, __cil_tmp24);
11481 }
11482 } else {
11483
11484 }
11485 {
11486#line 815
11487 __cil_tmp25 = (unsigned long )sc;
11488#line 815
11489 __cil_tmp26 = __cil_tmp25 + 224;
11490#line 815
11491 *((int *)__cil_tmp26) = 0;
11492#line 816
11493 set_host_byte(sc, (char)0);
11494 }
11495 {
11496#line 817
11497 __cil_tmp27 = (unsigned long )se_cmd;
11498#line 817
11499 __cil_tmp28 = __cil_tmp27 + 28;
11500#line 817
11501 __cil_tmp29 = *((u32 *)__cil_tmp28);
11502#line 817
11503 __cil_tmp30 = __cil_tmp29 & 32768U;
11504#line 817
11505 if (__cil_tmp30 != 0U) {
11506 {
11507#line 819
11508 __cil_tmp31 = (unsigned long )se_cmd;
11509#line 819
11510 __cil_tmp32 = __cil_tmp31 + 44;
11511#line 819
11512 __cil_tmp33 = *((u32 *)__cil_tmp32);
11513#line 819
11514 __cil_tmp34 = (int )__cil_tmp33;
11515#line 819
11516 scsi_set_resid(sc, __cil_tmp34);
11517 }
11518 } else {
11519 {
11520#line 817
11521 __cil_tmp35 = (unsigned long )se_cmd;
11522#line 817
11523 __cil_tmp36 = __cil_tmp35 + 28;
11524#line 817
11525 __cil_tmp37 = *((u32 *)__cil_tmp36);
11526#line 817
11527 __cil_tmp38 = __cil_tmp37 & 65536U;
11528#line 817
11529 if (__cil_tmp38 != 0U) {
11530 {
11531#line 819
11532 __cil_tmp39 = (unsigned long )se_cmd;
11533#line 819
11534 __cil_tmp40 = __cil_tmp39 + 44;
11535#line 819
11536 __cil_tmp41 = *((u32 *)__cil_tmp40);
11537#line 819
11538 __cil_tmp42 = (int )__cil_tmp41;
11539#line 819
11540 scsi_set_resid(sc, __cil_tmp42);
11541 }
11542 } else {
11543
11544 }
11545 }
11546 }
11547 }
11548 {
11549#line 820
11550 __cil_tmp43 = (unsigned long )sc;
11551#line 820
11552 __cil_tmp44 = __cil_tmp43 + 144;
11553#line 820
11554 __cil_tmp45 = *((void (**)(struct scsi_cmnd * ))__cil_tmp44);
11555#line 820
11556 (*__cil_tmp45)(sc);
11557 }
11558#line 821
11559 return (0);
11560}
11561}
11562#line 824 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11563static int tcm_loop_queue_status(struct se_cmd *se_cmd )
11564{ struct tcm_loop_cmd *tl_cmd ;
11565 struct se_cmd const *__mptr ;
11566 struct scsi_cmnd *sc ;
11567 struct _ddebug descriptor ;
11568 long tmp ;
11569 size_t __len ;
11570 void *__ret ;
11571 struct tcm_loop_cmd *__cil_tmp9 ;
11572 unsigned long __cil_tmp10 ;
11573 unsigned long __cil_tmp11 ;
11574 struct _ddebug *__cil_tmp12 ;
11575 unsigned long __cil_tmp13 ;
11576 unsigned long __cil_tmp14 ;
11577 unsigned long __cil_tmp15 ;
11578 unsigned long __cil_tmp16 ;
11579 unsigned long __cil_tmp17 ;
11580 unsigned long __cil_tmp18 ;
11581 unsigned char __cil_tmp19 ;
11582 long __cil_tmp20 ;
11583 long __cil_tmp21 ;
11584 unsigned long __cil_tmp22 ;
11585 unsigned long __cil_tmp23 ;
11586 unsigned char *__cil_tmp24 ;
11587 unsigned char __cil_tmp25 ;
11588 int __cil_tmp26 ;
11589 void *__cil_tmp27 ;
11590 unsigned long __cil_tmp28 ;
11591 unsigned long __cil_tmp29 ;
11592 unsigned long __cil_tmp30 ;
11593 void *__cil_tmp31 ;
11594 unsigned long __cil_tmp32 ;
11595 unsigned long __cil_tmp33 ;
11596 unsigned long __cil_tmp34 ;
11597 u32 __cil_tmp35 ;
11598 unsigned int __cil_tmp36 ;
11599 unsigned long __cil_tmp37 ;
11600 unsigned long __cil_tmp38 ;
11601 u32 __cil_tmp39 ;
11602 unsigned int __cil_tmp40 ;
11603 unsigned long __cil_tmp41 ;
11604 unsigned long __cil_tmp42 ;
11605 unsigned char *__cil_tmp43 ;
11606 void *__cil_tmp44 ;
11607 unsigned long __cil_tmp45 ;
11608 unsigned long __cil_tmp46 ;
11609 void *__cil_tmp47 ;
11610 void const *__cil_tmp48 ;
11611 unsigned long __cil_tmp49 ;
11612 unsigned long __cil_tmp50 ;
11613 unsigned char *__cil_tmp51 ;
11614 void *__cil_tmp52 ;
11615 unsigned long __cil_tmp53 ;
11616 unsigned long __cil_tmp54 ;
11617 void *__cil_tmp55 ;
11618 void const *__cil_tmp56 ;
11619 unsigned long __cil_tmp57 ;
11620 unsigned long __cil_tmp58 ;
11621 unsigned long __cil_tmp59 ;
11622 unsigned long __cil_tmp60 ;
11623 u8 __cil_tmp61 ;
11624 unsigned long __cil_tmp62 ;
11625 unsigned long __cil_tmp63 ;
11626 u8 __cil_tmp64 ;
11627 unsigned long __cil_tmp65 ;
11628 unsigned long __cil_tmp66 ;
11629 u32 __cil_tmp67 ;
11630 unsigned int __cil_tmp68 ;
11631 unsigned long __cil_tmp69 ;
11632 unsigned long __cil_tmp70 ;
11633 u32 __cil_tmp71 ;
11634 int __cil_tmp72 ;
11635 unsigned long __cil_tmp73 ;
11636 unsigned long __cil_tmp74 ;
11637 u32 __cil_tmp75 ;
11638 unsigned int __cil_tmp76 ;
11639 unsigned long __cil_tmp77 ;
11640 unsigned long __cil_tmp78 ;
11641 u32 __cil_tmp79 ;
11642 int __cil_tmp80 ;
11643 unsigned long __cil_tmp81 ;
11644 unsigned long __cil_tmp82 ;
11645 void (*__cil_tmp83)(struct scsi_cmnd * ) ;
11646
11647 {
11648 {
11649#line 826
11650 __mptr = (struct se_cmd const *)se_cmd;
11651#line 826
11652 __cil_tmp9 = (struct tcm_loop_cmd *)__mptr;
11653#line 826
11654 tl_cmd = __cil_tmp9 + 0xfffffffffffffff0UL;
11655#line 828
11656 __cil_tmp10 = (unsigned long )tl_cmd;
11657#line 828
11658 __cil_tmp11 = __cil_tmp10 + 8;
11659#line 828
11660 sc = *((struct scsi_cmnd **)__cil_tmp11);
11661#line 830
11662 __cil_tmp12 = & descriptor;
11663#line 830
11664 *((char const **)__cil_tmp12) = "tcm_loop";
11665#line 830
11666 __cil_tmp13 = (unsigned long )(& descriptor) + 8;
11667#line 830
11668 *((char const **)__cil_tmp13) = "tcm_loop_queue_status";
11669#line 830
11670 __cil_tmp14 = (unsigned long )(& descriptor) + 16;
11671#line 830
11672 *((char const **)__cil_tmp14) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
11673#line 830
11674 __cil_tmp15 = (unsigned long )(& descriptor) + 24;
11675#line 830
11676 *((char const **)__cil_tmp15) = "tcm_loop_queue_status() called for scsi_cmnd: %p cdb: 0x%02x\n";
11677#line 830
11678 __cil_tmp16 = (unsigned long )(& descriptor) + 32;
11679#line 830
11680 *((unsigned int *)__cil_tmp16) = 831U;
11681#line 830
11682 __cil_tmp17 = (unsigned long )(& descriptor) + 35;
11683#line 830
11684 *((unsigned char *)__cil_tmp17) = (unsigned char)0;
11685#line 830
11686 __cil_tmp18 = (unsigned long )(& descriptor) + 35;
11687#line 830
11688 __cil_tmp19 = *((unsigned char *)__cil_tmp18);
11689#line 830
11690 __cil_tmp20 = (long )__cil_tmp19;
11691#line 830
11692 __cil_tmp21 = __cil_tmp20 & 1L;
11693#line 830
11694 tmp = __builtin_expect(__cil_tmp21, 0L);
11695 }
11696#line 830
11697 if (tmp != 0L) {
11698 {
11699#line 830
11700 __cil_tmp22 = (unsigned long )sc;
11701#line 830
11702 __cil_tmp23 = __cil_tmp22 + 80;
11703#line 830
11704 __cil_tmp24 = *((unsigned char **)__cil_tmp23);
11705#line 830
11706 __cil_tmp25 = *__cil_tmp24;
11707#line 830
11708 __cil_tmp26 = (int )__cil_tmp25;
11709#line 830
11710 __dynamic_pr_debug(& descriptor, "tcm_loop_queue_status() called for scsi_cmnd: %p cdb: 0x%02x\n",
11711 sc, __cil_tmp26);
11712 }
11713 } else {
11714
11715 }
11716 {
11717#line 833
11718 __cil_tmp27 = (void *)0;
11719#line 833
11720 __cil_tmp28 = (unsigned long )__cil_tmp27;
11721#line 833
11722 __cil_tmp29 = (unsigned long )se_cmd;
11723#line 833
11724 __cil_tmp30 = __cil_tmp29 + 64;
11725#line 833
11726 __cil_tmp31 = *((void **)__cil_tmp30);
11727#line 833
11728 __cil_tmp32 = (unsigned long )__cil_tmp31;
11729#line 833
11730 if (__cil_tmp32 != __cil_tmp28) {
11731 {
11732#line 833
11733 __cil_tmp33 = (unsigned long )se_cmd;
11734#line 833
11735 __cil_tmp34 = __cil_tmp33 + 28;
11736#line 833
11737 __cil_tmp35 = *((u32 *)__cil_tmp34);
11738#line 833
11739 __cil_tmp36 = __cil_tmp35 & 2U;
11740#line 833
11741 if (__cil_tmp36 != 0U) {
11742#line 833
11743 goto _L;
11744 } else {
11745 {
11746#line 833
11747 __cil_tmp37 = (unsigned long )se_cmd;
11748#line 833
11749 __cil_tmp38 = __cil_tmp37 + 28;
11750#line 833
11751 __cil_tmp39 = *((u32 *)__cil_tmp38);
11752#line 833
11753 __cil_tmp40 = __cil_tmp39 & 4U;
11754#line 833
11755 if (__cil_tmp40 != 0U) {
11756 _L:
11757#line 837
11758 __len = 96UL;
11759#line 837
11760 if (__len > 63UL) {
11761 {
11762#line 837
11763 __cil_tmp41 = (unsigned long )sc;
11764#line 837
11765 __cil_tmp42 = __cil_tmp41 + 136;
11766#line 837
11767 __cil_tmp43 = *((unsigned char **)__cil_tmp42);
11768#line 837
11769 __cil_tmp44 = (void *)__cil_tmp43;
11770#line 837
11771 __cil_tmp45 = (unsigned long )se_cmd;
11772#line 837
11773 __cil_tmp46 = __cil_tmp45 + 64;
11774#line 837
11775 __cil_tmp47 = *((void **)__cil_tmp46);
11776#line 837
11777 __cil_tmp48 = (void const *)__cil_tmp47;
11778#line 837
11779 __ret = __memcpy(__cil_tmp44, __cil_tmp48, __len);
11780 }
11781 } else {
11782 {
11783#line 837
11784 __cil_tmp49 = (unsigned long )sc;
11785#line 837
11786 __cil_tmp50 = __cil_tmp49 + 136;
11787#line 837
11788 __cil_tmp51 = *((unsigned char **)__cil_tmp50);
11789#line 837
11790 __cil_tmp52 = (void *)__cil_tmp51;
11791#line 837
11792 __cil_tmp53 = (unsigned long )se_cmd;
11793#line 837
11794 __cil_tmp54 = __cil_tmp53 + 64;
11795#line 837
11796 __cil_tmp55 = *((void **)__cil_tmp54);
11797#line 837
11798 __cil_tmp56 = (void const *)__cil_tmp55;
11799#line 837
11800 __ret = __builtin_memcpy(__cil_tmp52, __cil_tmp56, __len);
11801 }
11802 }
11803 {
11804#line 839
11805 __cil_tmp57 = (unsigned long )sc;
11806#line 839
11807 __cil_tmp58 = __cil_tmp57 + 224;
11808#line 839
11809 *((int *)__cil_tmp58) = 2;
11810#line 840
11811 set_driver_byte(sc, (char)8);
11812 }
11813 } else {
11814#line 842
11815 __cil_tmp59 = (unsigned long )sc;
11816#line 842
11817 __cil_tmp60 = __cil_tmp59 + 224;
11818#line 842
11819 __cil_tmp61 = *((u8 *)se_cmd);
11820#line 842
11821 *((int *)__cil_tmp60) = (int )__cil_tmp61;
11822 }
11823 }
11824 }
11825 }
11826 } else {
11827#line 842
11828 __cil_tmp62 = (unsigned long )sc;
11829#line 842
11830 __cil_tmp63 = __cil_tmp62 + 224;
11831#line 842
11832 __cil_tmp64 = *((u8 *)se_cmd);
11833#line 842
11834 *((int *)__cil_tmp63) = (int )__cil_tmp64;
11835 }
11836 }
11837 {
11838#line 844
11839 set_host_byte(sc, (char)0);
11840 }
11841 {
11842#line 845
11843 __cil_tmp65 = (unsigned long )se_cmd;
11844#line 845
11845 __cil_tmp66 = __cil_tmp65 + 28;
11846#line 845
11847 __cil_tmp67 = *((u32 *)__cil_tmp66);
11848#line 845
11849 __cil_tmp68 = __cil_tmp67 & 32768U;
11850#line 845
11851 if (__cil_tmp68 != 0U) {
11852 {
11853#line 847
11854 __cil_tmp69 = (unsigned long )se_cmd;
11855#line 847
11856 __cil_tmp70 = __cil_tmp69 + 44;
11857#line 847
11858 __cil_tmp71 = *((u32 *)__cil_tmp70);
11859#line 847
11860 __cil_tmp72 = (int )__cil_tmp71;
11861#line 847
11862 scsi_set_resid(sc, __cil_tmp72);
11863 }
11864 } else {
11865 {
11866#line 845
11867 __cil_tmp73 = (unsigned long )se_cmd;
11868#line 845
11869 __cil_tmp74 = __cil_tmp73 + 28;
11870#line 845
11871 __cil_tmp75 = *((u32 *)__cil_tmp74);
11872#line 845
11873 __cil_tmp76 = __cil_tmp75 & 65536U;
11874#line 845
11875 if (__cil_tmp76 != 0U) {
11876 {
11877#line 847
11878 __cil_tmp77 = (unsigned long )se_cmd;
11879#line 847
11880 __cil_tmp78 = __cil_tmp77 + 44;
11881#line 847
11882 __cil_tmp79 = *((u32 *)__cil_tmp78);
11883#line 847
11884 __cil_tmp80 = (int )__cil_tmp79;
11885#line 847
11886 scsi_set_resid(sc, __cil_tmp80);
11887 }
11888 } else {
11889
11890 }
11891 }
11892 }
11893 }
11894 {
11895#line 848
11896 __cil_tmp81 = (unsigned long )sc;
11897#line 848
11898 __cil_tmp82 = __cil_tmp81 + 144;
11899#line 848
11900 __cil_tmp83 = *((void (**)(struct scsi_cmnd * ))__cil_tmp82);
11901#line 848
11902 (*__cil_tmp83)(sc);
11903 }
11904#line 849
11905 return (0);
11906}
11907}
11908#line 852 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11909static int tcm_loop_queue_tm_rsp(struct se_cmd *se_cmd )
11910{ struct se_tmr_req *se_tmr ;
11911 struct tcm_loop_tmr *tl_tmr ;
11912 unsigned long __cil_tmp4 ;
11913 unsigned long __cil_tmp5 ;
11914 unsigned long __cil_tmp6 ;
11915 unsigned long __cil_tmp7 ;
11916 void *__cil_tmp8 ;
11917 atomic_t *__cil_tmp9 ;
11918 unsigned long __cil_tmp10 ;
11919 unsigned long __cil_tmp11 ;
11920 wait_queue_head_t *__cil_tmp12 ;
11921 void *__cil_tmp13 ;
11922
11923 {
11924 {
11925#line 854
11926 __cil_tmp4 = (unsigned long )se_cmd;
11927#line 854
11928 __cil_tmp5 = __cil_tmp4 + 152;
11929#line 854
11930 se_tmr = *((struct se_tmr_req **)__cil_tmp5);
11931#line 855
11932 __cil_tmp6 = (unsigned long )se_tmr;
11933#line 855
11934 __cil_tmp7 = __cil_tmp6 + 24;
11935#line 855
11936 __cil_tmp8 = *((void **)__cil_tmp7);
11937#line 855
11938 tl_tmr = (struct tcm_loop_tmr *)__cil_tmp8;
11939#line 860
11940 __cil_tmp9 = (atomic_t *)tl_tmr;
11941#line 860
11942 atomic_set(__cil_tmp9, 1);
11943#line 861
11944 __cil_tmp10 = (unsigned long )tl_tmr;
11945#line 861
11946 __cil_tmp11 = __cil_tmp10 + 8;
11947#line 861
11948 __cil_tmp12 = (wait_queue_head_t *)__cil_tmp11;
11949#line 861
11950 __cil_tmp13 = (void *)0;
11951#line 861
11952 __wake_up(__cil_tmp12, 3U, 1, __cil_tmp13);
11953 }
11954#line 862
11955 return (0);
11956}
11957}
11958#line 865 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11959static u16 tcm_loop_set_fabric_sense_len(struct se_cmd *se_cmd , u32 sense_length )
11960{
11961
11962 {
11963#line 867
11964 return ((u16 )0U);
11965}
11966}
11967#line 870 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11968static u16 tcm_loop_get_fabric_sense_len(void)
11969{
11970
11971 {
11972#line 872
11973 return ((u16 )0U);
11974}
11975}
11976#line 875 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
11977static char *tcm_loop_dump_proto_id(struct tcm_loop_hba *tl_hba )
11978{ u8 __cil_tmp2 ;
11979
11980 {
11981 {
11982#line 877
11983 __cil_tmp2 = *((u8 *)tl_hba);
11984#line 878
11985 if ((int )__cil_tmp2 == 6) {
11986#line 878
11987 goto case_6;
11988 } else
11989#line 880
11990 if ((int )__cil_tmp2 == 0) {
11991#line 880
11992 goto case_0;
11993 } else
11994#line 882
11995 if ((int )__cil_tmp2 == 5) {
11996#line 882
11997 goto case_5;
11998 } else {
11999 {
12000#line 884
12001 goto switch_default;
12002#line 877
12003 if (0) {
12004 case_6: ;
12005#line 879
12006 return ((char *)"SAS");
12007 case_0: ;
12008#line 881
12009 return ((char *)"FCP");
12010 case_5: ;
12011#line 883
12012 return ((char *)"iSCSI");
12013 switch_default: ;
12014#line 885
12015 goto ldv_49206;
12016 } else {
12017 switch_break: ;
12018 }
12019 }
12020 }
12021 }
12022 ldv_49206: ;
12023#line 888
12024 return ((char *)"Unknown");
12025}
12026}
12027#line 893 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
12028static int tcm_loop_port_link(struct se_portal_group *se_tpg , struct se_lun *lun )
12029{ struct tcm_loop_tpg *tl_tpg ;
12030 struct se_portal_group const *__mptr ;
12031 struct tcm_loop_hba *tl_hba ;
12032 struct _ddebug descriptor ;
12033 long tmp ;
12034 struct tcm_loop_tpg *__cil_tmp8 ;
12035 unsigned long __cil_tmp9 ;
12036 unsigned long __cil_tmp10 ;
12037 unsigned long __cil_tmp11 ;
12038 unsigned long __cil_tmp12 ;
12039 atomic_t *__cil_tmp13 ;
12040 unsigned long __cil_tmp14 ;
12041 unsigned long __cil_tmp15 ;
12042 struct Scsi_Host *__cil_tmp16 ;
12043 unsigned short __cil_tmp17 ;
12044 uint __cil_tmp18 ;
12045 unsigned long __cil_tmp19 ;
12046 unsigned long __cil_tmp20 ;
12047 u32 __cil_tmp21 ;
12048 struct _ddebug *__cil_tmp22 ;
12049 unsigned long __cil_tmp23 ;
12050 unsigned long __cil_tmp24 ;
12051 unsigned long __cil_tmp25 ;
12052 unsigned long __cil_tmp26 ;
12053 unsigned long __cil_tmp27 ;
12054 unsigned long __cil_tmp28 ;
12055 unsigned char __cil_tmp29 ;
12056 long __cil_tmp30 ;
12057 long __cil_tmp31 ;
12058
12059 {
12060 {
12061#line 897
12062 __mptr = (struct se_portal_group const *)se_tpg;
12063#line 897
12064 __cil_tmp8 = (struct tcm_loop_tpg *)__mptr;
12065#line 897
12066 tl_tpg = __cil_tmp8 + 0xfffffffffffffff8UL;
12067#line 899
12068 __cil_tmp9 = (unsigned long )tl_tpg;
12069#line 899
12070 __cil_tmp10 = __cil_tmp9 + 1984;
12071#line 899
12072 tl_hba = *((struct tcm_loop_hba **)__cil_tmp10);
12073#line 901
12074 __cil_tmp11 = (unsigned long )tl_tpg;
12075#line 901
12076 __cil_tmp12 = __cil_tmp11 + 4;
12077#line 901
12078 __cil_tmp13 = (atomic_t *)__cil_tmp12;
12079#line 901
12080 atomic_inc(__cil_tmp13);
12081#line 902
12082 __asm__ volatile ("": : : "memory");
12083#line 906
12084 __cil_tmp14 = (unsigned long )tl_hba;
12085#line 906
12086 __cil_tmp15 = __cil_tmp14 + 1456;
12087#line 906
12088 __cil_tmp16 = *((struct Scsi_Host **)__cil_tmp15);
12089#line 906
12090 __cil_tmp17 = *((unsigned short *)tl_tpg);
12091#line 906
12092 __cil_tmp18 = (uint )__cil_tmp17;
12093#line 906
12094 __cil_tmp19 = (unsigned long )lun;
12095#line 906
12096 __cil_tmp20 = __cil_tmp19 + 12;
12097#line 906
12098 __cil_tmp21 = *((u32 *)__cil_tmp20);
12099#line 906
12100 scsi_add_device(__cil_tmp16, 0U, __cil_tmp18, __cil_tmp21);
12101#line 908
12102 __cil_tmp22 = & descriptor;
12103#line 908
12104 *((char const **)__cil_tmp22) = "tcm_loop";
12105#line 908
12106 __cil_tmp23 = (unsigned long )(& descriptor) + 8;
12107#line 908
12108 *((char const **)__cil_tmp23) = "tcm_loop_port_link";
12109#line 908
12110 __cil_tmp24 = (unsigned long )(& descriptor) + 16;
12111#line 908
12112 *((char const **)__cil_tmp24) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
12113#line 908
12114 __cil_tmp25 = (unsigned long )(& descriptor) + 24;
12115#line 908
12116 *((char const **)__cil_tmp25) = "TCM_Loop_ConfigFS: Port Link Successful\n";
12117#line 908
12118 __cil_tmp26 = (unsigned long )(& descriptor) + 32;
12119#line 908
12120 *((unsigned int *)__cil_tmp26) = 908U;
12121#line 908
12122 __cil_tmp27 = (unsigned long )(& descriptor) + 35;
12123#line 908
12124 *((unsigned char *)__cil_tmp27) = (unsigned char)0;
12125#line 908
12126 __cil_tmp28 = (unsigned long )(& descriptor) + 35;
12127#line 908
12128 __cil_tmp29 = *((unsigned char *)__cil_tmp28);
12129#line 908
12130 __cil_tmp30 = (long )__cil_tmp29;
12131#line 908
12132 __cil_tmp31 = __cil_tmp30 & 1L;
12133#line 908
12134 tmp = __builtin_expect(__cil_tmp31, 0L);
12135 }
12136#line 908
12137 if (tmp != 0L) {
12138 {
12139#line 908
12140 __dynamic_pr_debug(& descriptor, "TCM_Loop_ConfigFS: Port Link Successful\n");
12141 }
12142 } else {
12143
12144 }
12145#line 909
12146 return (0);
12147}
12148}
12149#line 912 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
12150static void tcm_loop_port_unlink(struct se_portal_group *se_tpg , struct se_lun *se_lun )
12151{ struct scsi_device *sd ;
12152 struct tcm_loop_hba *tl_hba ;
12153 struct tcm_loop_tpg *tl_tpg ;
12154 struct se_portal_group const *__mptr ;
12155 struct _ddebug descriptor ;
12156 long tmp ;
12157 struct tcm_loop_tpg *__cil_tmp9 ;
12158 unsigned long __cil_tmp10 ;
12159 unsigned long __cil_tmp11 ;
12160 unsigned long __cil_tmp12 ;
12161 unsigned long __cil_tmp13 ;
12162 struct Scsi_Host *__cil_tmp14 ;
12163 unsigned short __cil_tmp15 ;
12164 uint __cil_tmp16 ;
12165 unsigned long __cil_tmp17 ;
12166 unsigned long __cil_tmp18 ;
12167 u32 __cil_tmp19 ;
12168 struct scsi_device *__cil_tmp20 ;
12169 unsigned long __cil_tmp21 ;
12170 unsigned long __cil_tmp22 ;
12171 unsigned short __cil_tmp23 ;
12172 int __cil_tmp24 ;
12173 unsigned long __cil_tmp25 ;
12174 unsigned long __cil_tmp26 ;
12175 u32 __cil_tmp27 ;
12176 unsigned long __cil_tmp28 ;
12177 unsigned long __cil_tmp29 ;
12178 atomic_t *__cil_tmp30 ;
12179 struct _ddebug *__cil_tmp31 ;
12180 unsigned long __cil_tmp32 ;
12181 unsigned long __cil_tmp33 ;
12182 unsigned long __cil_tmp34 ;
12183 unsigned long __cil_tmp35 ;
12184 unsigned long __cil_tmp36 ;
12185 unsigned long __cil_tmp37 ;
12186 unsigned char __cil_tmp38 ;
12187 long __cil_tmp39 ;
12188 long __cil_tmp40 ;
12189
12190 {
12191 {
12192#line 920
12193 __mptr = (struct se_portal_group const *)se_tpg;
12194#line 920
12195 __cil_tmp9 = (struct tcm_loop_tpg *)__mptr;
12196#line 920
12197 tl_tpg = __cil_tmp9 + 0xfffffffffffffff8UL;
12198#line 921
12199 __cil_tmp10 = (unsigned long )tl_tpg;
12200#line 921
12201 __cil_tmp11 = __cil_tmp10 + 1984;
12202#line 921
12203 tl_hba = *((struct tcm_loop_hba **)__cil_tmp11);
12204#line 923
12205 __cil_tmp12 = (unsigned long )tl_hba;
12206#line 923
12207 __cil_tmp13 = __cil_tmp12 + 1456;
12208#line 923
12209 __cil_tmp14 = *((struct Scsi_Host **)__cil_tmp13);
12210#line 923
12211 __cil_tmp15 = *((unsigned short *)tl_tpg);
12212#line 923
12213 __cil_tmp16 = (uint )__cil_tmp15;
12214#line 923
12215 __cil_tmp17 = (unsigned long )se_lun;
12216#line 923
12217 __cil_tmp18 = __cil_tmp17 + 12;
12218#line 923
12219 __cil_tmp19 = *((u32 *)__cil_tmp18);
12220#line 923
12221 sd = scsi_device_lookup(__cil_tmp14, 0U, __cil_tmp16, __cil_tmp19);
12222 }
12223 {
12224#line 925
12225 __cil_tmp20 = (struct scsi_device *)0;
12226#line 925
12227 __cil_tmp21 = (unsigned long )__cil_tmp20;
12228#line 925
12229 __cil_tmp22 = (unsigned long )sd;
12230#line 925
12231 if (__cil_tmp22 == __cil_tmp21) {
12232 {
12233#line 926
12234 __cil_tmp23 = *((unsigned short *)tl_tpg);
12235#line 926
12236 __cil_tmp24 = (int )__cil_tmp23;
12237#line 926
12238 __cil_tmp25 = (unsigned long )se_lun;
12239#line 926
12240 __cil_tmp26 = __cil_tmp25 + 12;
12241#line 926
12242 __cil_tmp27 = *((u32 *)__cil_tmp26);
12243#line 926
12244 printk("<3>Unable to locate struct scsi_device for %d:%d:%d\n", 0, __cil_tmp24,
12245 __cil_tmp27);
12246 }
12247#line 928
12248 return;
12249 } else {
12250
12251 }
12252 }
12253 {
12254#line 933
12255 scsi_remove_device(sd);
12256#line 934
12257 scsi_device_put(sd);
12258#line 936
12259 __cil_tmp28 = (unsigned long )tl_tpg;
12260#line 936
12261 __cil_tmp29 = __cil_tmp28 + 4;
12262#line 936
12263 __cil_tmp30 = (atomic_t *)__cil_tmp29;
12264#line 936
12265 atomic_dec(__cil_tmp30);
12266#line 937
12267 __asm__ volatile ("": : : "memory");
12268#line 939
12269 __cil_tmp31 = & descriptor;
12270#line 939
12271 *((char const **)__cil_tmp31) = "tcm_loop";
12272#line 939
12273 __cil_tmp32 = (unsigned long )(& descriptor) + 8;
12274#line 939
12275 *((char const **)__cil_tmp32) = "tcm_loop_port_unlink";
12276#line 939
12277 __cil_tmp33 = (unsigned long )(& descriptor) + 16;
12278#line 939
12279 *((char const **)__cil_tmp33) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
12280#line 939
12281 __cil_tmp34 = (unsigned long )(& descriptor) + 24;
12282#line 939
12283 *((char const **)__cil_tmp34) = "TCM_Loop_ConfigFS: Port Unlink Successful\n";
12284#line 939
12285 __cil_tmp35 = (unsigned long )(& descriptor) + 32;
12286#line 939
12287 *((unsigned int *)__cil_tmp35) = 939U;
12288#line 939
12289 __cil_tmp36 = (unsigned long )(& descriptor) + 35;
12290#line 939
12291 *((unsigned char *)__cil_tmp36) = (unsigned char)0;
12292#line 939
12293 __cil_tmp37 = (unsigned long )(& descriptor) + 35;
12294#line 939
12295 __cil_tmp38 = *((unsigned char *)__cil_tmp37);
12296#line 939
12297 __cil_tmp39 = (long )__cil_tmp38;
12298#line 939
12299 __cil_tmp40 = __cil_tmp39 & 1L;
12300#line 939
12301 tmp = __builtin_expect(__cil_tmp40, 0L);
12302 }
12303#line 939
12304 if (tmp != 0L) {
12305 {
12306#line 939
12307 __dynamic_pr_debug(& descriptor, "TCM_Loop_ConfigFS: Port Unlink Successful\n");
12308 }
12309 } else {
12310
12311 }
12312#line 941
12313 return;
12314}
12315}
12316#line 946 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
12317static int tcm_loop_make_nexus(struct tcm_loop_tpg *tl_tpg , char const *name )
12318{ struct se_portal_group *se_tpg ;
12319 struct tcm_loop_hba *tl_hba ;
12320 struct tcm_loop_nexus *tl_nexus ;
12321 int ret ;
12322 struct _ddebug descriptor ;
12323 long tmp ;
12324 void *tmp___0 ;
12325 long tmp___1 ;
12326 long tmp___2 ;
12327 struct _ddebug descriptor___0 ;
12328 char *tmp___3 ;
12329 long tmp___4 ;
12330 unsigned long __cil_tmp15 ;
12331 unsigned long __cil_tmp16 ;
12332 struct tcm_loop_nexus *__cil_tmp17 ;
12333 unsigned long __cil_tmp18 ;
12334 unsigned long __cil_tmp19 ;
12335 unsigned long __cil_tmp20 ;
12336 struct tcm_loop_hba *__cil_tmp21 ;
12337 unsigned long __cil_tmp22 ;
12338 unsigned long __cil_tmp23 ;
12339 struct tcm_loop_nexus *__cil_tmp24 ;
12340 unsigned long __cil_tmp25 ;
12341 struct _ddebug *__cil_tmp26 ;
12342 unsigned long __cil_tmp27 ;
12343 unsigned long __cil_tmp28 ;
12344 unsigned long __cil_tmp29 ;
12345 unsigned long __cil_tmp30 ;
12346 unsigned long __cil_tmp31 ;
12347 unsigned long __cil_tmp32 ;
12348 unsigned char __cil_tmp33 ;
12349 long __cil_tmp34 ;
12350 long __cil_tmp35 ;
12351 unsigned long __cil_tmp36 ;
12352 unsigned long __cil_tmp37 ;
12353 struct tcm_loop_nexus *__cil_tmp38 ;
12354 unsigned long __cil_tmp39 ;
12355 unsigned long __cil_tmp40 ;
12356 unsigned long __cil_tmp41 ;
12357 unsigned long __cil_tmp42 ;
12358 unsigned long __cil_tmp43 ;
12359 unsigned long __cil_tmp44 ;
12360 struct se_session *__cil_tmp45 ;
12361 void const *__cil_tmp46 ;
12362 unsigned long __cil_tmp47 ;
12363 unsigned long __cil_tmp48 ;
12364 struct se_session *__cil_tmp49 ;
12365 void const *__cil_tmp50 ;
12366 unsigned long __cil_tmp51 ;
12367 unsigned long __cil_tmp52 ;
12368 struct se_session *__cil_tmp53 ;
12369 unsigned long __cil_tmp54 ;
12370 unsigned long __cil_tmp55 ;
12371 unsigned char *__cil_tmp56 ;
12372 struct se_node_acl *__cil_tmp57 ;
12373 unsigned long __cil_tmp58 ;
12374 unsigned long __cil_tmp59 ;
12375 unsigned long __cil_tmp60 ;
12376 struct se_session *__cil_tmp61 ;
12377 unsigned long __cil_tmp62 ;
12378 unsigned long __cil_tmp63 ;
12379 struct se_node_acl *__cil_tmp64 ;
12380 unsigned long __cil_tmp65 ;
12381 unsigned long __cil_tmp66 ;
12382 unsigned long __cil_tmp67 ;
12383 struct se_session *__cil_tmp68 ;
12384 unsigned long __cil_tmp69 ;
12385 unsigned long __cil_tmp70 ;
12386 struct se_session *__cil_tmp71 ;
12387 unsigned long __cil_tmp72 ;
12388 unsigned long __cil_tmp73 ;
12389 struct se_node_acl *__cil_tmp74 ;
12390 unsigned long __cil_tmp75 ;
12391 unsigned long __cil_tmp76 ;
12392 struct se_session *__cil_tmp77 ;
12393 void *__cil_tmp78 ;
12394 unsigned long __cil_tmp79 ;
12395 unsigned long __cil_tmp80 ;
12396 struct tcm_loop_hba *__cil_tmp81 ;
12397 unsigned long __cil_tmp82 ;
12398 unsigned long __cil_tmp83 ;
12399 struct _ddebug *__cil_tmp84 ;
12400 unsigned long __cil_tmp85 ;
12401 unsigned long __cil_tmp86 ;
12402 unsigned long __cil_tmp87 ;
12403 unsigned long __cil_tmp88 ;
12404 unsigned long __cil_tmp89 ;
12405 unsigned long __cil_tmp90 ;
12406 unsigned char __cil_tmp91 ;
12407 long __cil_tmp92 ;
12408 long __cil_tmp93 ;
12409 void const *__cil_tmp94 ;
12410
12411 {
12412#line 951
12413 __cil_tmp15 = (unsigned long )tl_tpg;
12414#line 951
12415 __cil_tmp16 = __cil_tmp15 + 1984;
12416#line 951
12417 tl_hba = *((struct tcm_loop_hba **)__cil_tmp16);
12418#line 953
12419 ret = -12;
12420 {
12421#line 955
12422 __cil_tmp17 = (struct tcm_loop_nexus *)0;
12423#line 955
12424 __cil_tmp18 = (unsigned long )__cil_tmp17;
12425#line 955
12426 __cil_tmp19 = (unsigned long )tl_tpg;
12427#line 955
12428 __cil_tmp20 = __cil_tmp19 + 1984;
12429#line 955
12430 __cil_tmp21 = *((struct tcm_loop_hba **)__cil_tmp20);
12431#line 955
12432 __cil_tmp22 = (unsigned long )__cil_tmp21;
12433#line 955
12434 __cil_tmp23 = __cil_tmp22 + 296;
12435#line 955
12436 __cil_tmp24 = *((struct tcm_loop_nexus **)__cil_tmp23);
12437#line 955
12438 __cil_tmp25 = (unsigned long )__cil_tmp24;
12439#line 955
12440 if (__cil_tmp25 != __cil_tmp18) {
12441 {
12442#line 956
12443 __cil_tmp26 = & descriptor;
12444#line 956
12445 *((char const **)__cil_tmp26) = "tcm_loop";
12446#line 956
12447 __cil_tmp27 = (unsigned long )(& descriptor) + 8;
12448#line 956
12449 *((char const **)__cil_tmp27) = "tcm_loop_make_nexus";
12450#line 956
12451 __cil_tmp28 = (unsigned long )(& descriptor) + 16;
12452#line 956
12453 *((char const **)__cil_tmp28) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
12454#line 956
12455 __cil_tmp29 = (unsigned long )(& descriptor) + 24;
12456#line 956
12457 *((char const **)__cil_tmp29) = "tl_tpg->tl_hba->tl_nexus already exists\n";
12458#line 956
12459 __cil_tmp30 = (unsigned long )(& descriptor) + 32;
12460#line 956
12461 *((unsigned int *)__cil_tmp30) = 956U;
12462#line 956
12463 __cil_tmp31 = (unsigned long )(& descriptor) + 35;
12464#line 956
12465 *((unsigned char *)__cil_tmp31) = (unsigned char)0;
12466#line 956
12467 __cil_tmp32 = (unsigned long )(& descriptor) + 35;
12468#line 956
12469 __cil_tmp33 = *((unsigned char *)__cil_tmp32);
12470#line 956
12471 __cil_tmp34 = (long )__cil_tmp33;
12472#line 956
12473 __cil_tmp35 = __cil_tmp34 & 1L;
12474#line 956
12475 tmp = __builtin_expect(__cil_tmp35, 0L);
12476 }
12477#line 956
12478 if (tmp != 0L) {
12479 {
12480#line 956
12481 __dynamic_pr_debug(& descriptor, "tl_tpg->tl_hba->tl_nexus already exists\n");
12482 }
12483 } else {
12484
12485 }
12486#line 957
12487 return (-17);
12488 } else {
12489
12490 }
12491 }
12492 {
12493#line 959
12494 __cil_tmp36 = (unsigned long )tl_tpg;
12495#line 959
12496 __cil_tmp37 = __cil_tmp36 + 8;
12497#line 959
12498 se_tpg = (struct se_portal_group *)__cil_tmp37;
12499#line 961
12500 tmp___0 = kzalloc(24UL, 208U);
12501#line 961
12502 tl_nexus = (struct tcm_loop_nexus *)tmp___0;
12503 }
12504 {
12505#line 962
12506 __cil_tmp38 = (struct tcm_loop_nexus *)0;
12507#line 962
12508 __cil_tmp39 = (unsigned long )__cil_tmp38;
12509#line 962
12510 __cil_tmp40 = (unsigned long )tl_nexus;
12511#line 962
12512 if (__cil_tmp40 == __cil_tmp39) {
12513 {
12514#line 963
12515 printk("<3>Unable to allocate struct tcm_loop_nexus\n");
12516 }
12517#line 964
12518 return (-12);
12519 } else {
12520
12521 }
12522 }
12523 {
12524#line 969
12525 __cil_tmp41 = (unsigned long )tl_nexus;
12526#line 969
12527 __cil_tmp42 = __cil_tmp41 + 16;
12528#line 969
12529 *((struct se_session **)__cil_tmp42) = transport_init_session();
12530#line 970
12531 __cil_tmp43 = (unsigned long )tl_nexus;
12532#line 970
12533 __cil_tmp44 = __cil_tmp43 + 16;
12534#line 970
12535 __cil_tmp45 = *((struct se_session **)__cil_tmp44);
12536#line 970
12537 __cil_tmp46 = (void const *)__cil_tmp45;
12538#line 970
12539 tmp___2 = IS_ERR(__cil_tmp46);
12540 }
12541#line 970
12542 if (tmp___2 != 0L) {
12543 {
12544#line 971
12545 __cil_tmp47 = (unsigned long )tl_nexus;
12546#line 971
12547 __cil_tmp48 = __cil_tmp47 + 16;
12548#line 971
12549 __cil_tmp49 = *((struct se_session **)__cil_tmp48);
12550#line 971
12551 __cil_tmp50 = (void const *)__cil_tmp49;
12552#line 971
12553 tmp___1 = PTR_ERR(__cil_tmp50);
12554#line 971
12555 ret = (int )tmp___1;
12556 }
12557#line 972
12558 goto out;
12559 } else {
12560
12561 }
12562 {
12563#line 979
12564 __cil_tmp51 = (unsigned long )tl_nexus;
12565#line 979
12566 __cil_tmp52 = __cil_tmp51 + 16;
12567#line 979
12568 __cil_tmp53 = *((struct se_session **)__cil_tmp52);
12569#line 979
12570 __cil_tmp54 = (unsigned long )__cil_tmp53;
12571#line 979
12572 __cil_tmp55 = __cil_tmp54 + 16;
12573#line 979
12574 __cil_tmp56 = (unsigned char *)name;
12575#line 979
12576 *((struct se_node_acl **)__cil_tmp55) = core_tpg_check_initiator_node_acl(se_tpg,
12577 __cil_tmp56);
12578 }
12579 {
12580#line 981
12581 __cil_tmp57 = (struct se_node_acl *)0;
12582#line 981
12583 __cil_tmp58 = (unsigned long )__cil_tmp57;
12584#line 981
12585 __cil_tmp59 = (unsigned long )tl_nexus;
12586#line 981
12587 __cil_tmp60 = __cil_tmp59 + 16;
12588#line 981
12589 __cil_tmp61 = *((struct se_session **)__cil_tmp60);
12590#line 981
12591 __cil_tmp62 = (unsigned long )__cil_tmp61;
12592#line 981
12593 __cil_tmp63 = __cil_tmp62 + 16;
12594#line 981
12595 __cil_tmp64 = *((struct se_node_acl **)__cil_tmp63);
12596#line 981
12597 __cil_tmp65 = (unsigned long )__cil_tmp64;
12598#line 981
12599 if (__cil_tmp65 == __cil_tmp58) {
12600 {
12601#line 982
12602 __cil_tmp66 = (unsigned long )tl_nexus;
12603#line 982
12604 __cil_tmp67 = __cil_tmp66 + 16;
12605#line 982
12606 __cil_tmp68 = *((struct se_session **)__cil_tmp67);
12607#line 982
12608 transport_free_session(__cil_tmp68);
12609 }
12610#line 983
12611 goto out;
12612 } else {
12613
12614 }
12615 }
12616 {
12617#line 989
12618 __cil_tmp69 = (unsigned long )tl_nexus;
12619#line 989
12620 __cil_tmp70 = __cil_tmp69 + 16;
12621#line 989
12622 __cil_tmp71 = *((struct se_session **)__cil_tmp70);
12623#line 989
12624 __cil_tmp72 = (unsigned long )__cil_tmp71;
12625#line 989
12626 __cil_tmp73 = __cil_tmp72 + 16;
12627#line 989
12628 __cil_tmp74 = *((struct se_node_acl **)__cil_tmp73);
12629#line 989
12630 __cil_tmp75 = (unsigned long )tl_nexus;
12631#line 989
12632 __cil_tmp76 = __cil_tmp75 + 16;
12633#line 989
12634 __cil_tmp77 = *((struct se_session **)__cil_tmp76);
12635#line 989
12636 __cil_tmp78 = (void *)tl_nexus;
12637#line 989
12638 __transport_register_session(se_tpg, __cil_tmp74, __cil_tmp77, __cil_tmp78);
12639#line 991
12640 __cil_tmp79 = (unsigned long )tl_tpg;
12641#line 991
12642 __cil_tmp80 = __cil_tmp79 + 1984;
12643#line 991
12644 __cil_tmp81 = *((struct tcm_loop_hba **)__cil_tmp80);
12645#line 991
12646 __cil_tmp82 = (unsigned long )__cil_tmp81;
12647#line 991
12648 __cil_tmp83 = __cil_tmp82 + 296;
12649#line 991
12650 *((struct tcm_loop_nexus **)__cil_tmp83) = tl_nexus;
12651#line 992
12652 __cil_tmp84 = & descriptor___0;
12653#line 992
12654 *((char const **)__cil_tmp84) = "tcm_loop";
12655#line 992
12656 __cil_tmp85 = (unsigned long )(& descriptor___0) + 8;
12657#line 992
12658 *((char const **)__cil_tmp85) = "tcm_loop_make_nexus";
12659#line 992
12660 __cil_tmp86 = (unsigned long )(& descriptor___0) + 16;
12661#line 992
12662 *((char const **)__cil_tmp86) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
12663#line 992
12664 __cil_tmp87 = (unsigned long )(& descriptor___0) + 24;
12665#line 992
12666 *((char const **)__cil_tmp87) = "TCM_Loop_ConfigFS: Established I_T Nexus to emulated %s Initiator Port: %s\n";
12667#line 992
12668 __cil_tmp88 = (unsigned long )(& descriptor___0) + 32;
12669#line 992
12670 *((unsigned int *)__cil_tmp88) = 994U;
12671#line 992
12672 __cil_tmp89 = (unsigned long )(& descriptor___0) + 35;
12673#line 992
12674 *((unsigned char *)__cil_tmp89) = (unsigned char)0;
12675#line 992
12676 __cil_tmp90 = (unsigned long )(& descriptor___0) + 35;
12677#line 992
12678 __cil_tmp91 = *((unsigned char *)__cil_tmp90);
12679#line 992
12680 __cil_tmp92 = (long )__cil_tmp91;
12681#line 992
12682 __cil_tmp93 = __cil_tmp92 & 1L;
12683#line 992
12684 tmp___4 = __builtin_expect(__cil_tmp93, 0L);
12685 }
12686#line 992
12687 if (tmp___4 != 0L) {
12688 {
12689#line 992
12690 tmp___3 = tcm_loop_dump_proto_id(tl_hba);
12691#line 992
12692 __dynamic_pr_debug(& descriptor___0, "TCM_Loop_ConfigFS: Established I_T Nexus to emulated %s Initiator Port: %s\n",
12693 tmp___3, name);
12694 }
12695 } else {
12696
12697 }
12698#line 995
12699 return (0);
12700 out:
12701 {
12702#line 998
12703 __cil_tmp94 = (void const *)tl_nexus;
12704#line 998
12705 kfree(__cil_tmp94);
12706 }
12707#line 999
12708 return (ret);
12709}
12710}
12711#line 1002 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
12712static int tcm_loop_drop_nexus(struct tcm_loop_tpg *tpg )
12713{ struct se_session *se_sess ;
12714 struct tcm_loop_nexus *tl_nexus ;
12715 struct tcm_loop_hba *tl_hba ;
12716 int tmp ;
12717 int tmp___0 ;
12718 struct _ddebug descriptor ;
12719 char *tmp___1 ;
12720 long tmp___2 ;
12721 unsigned long __cil_tmp10 ;
12722 unsigned long __cil_tmp11 ;
12723 unsigned long __cil_tmp12 ;
12724 unsigned long __cil_tmp13 ;
12725 struct tcm_loop_hba *__cil_tmp14 ;
12726 unsigned long __cil_tmp15 ;
12727 unsigned long __cil_tmp16 ;
12728 struct tcm_loop_nexus *__cil_tmp17 ;
12729 unsigned long __cil_tmp18 ;
12730 unsigned long __cil_tmp19 ;
12731 unsigned long __cil_tmp20 ;
12732 unsigned long __cil_tmp21 ;
12733 struct se_session *__cil_tmp22 ;
12734 unsigned long __cil_tmp23 ;
12735 unsigned long __cil_tmp24 ;
12736 unsigned long __cil_tmp25 ;
12737 unsigned long __cil_tmp26 ;
12738 atomic_t *__cil_tmp27 ;
12739 atomic_t const *__cil_tmp28 ;
12740 unsigned long __cil_tmp29 ;
12741 unsigned long __cil_tmp30 ;
12742 atomic_t *__cil_tmp31 ;
12743 atomic_t const *__cil_tmp32 ;
12744 struct _ddebug *__cil_tmp33 ;
12745 unsigned long __cil_tmp34 ;
12746 unsigned long __cil_tmp35 ;
12747 unsigned long __cil_tmp36 ;
12748 unsigned long __cil_tmp37 ;
12749 unsigned long __cil_tmp38 ;
12750 unsigned long __cil_tmp39 ;
12751 unsigned char __cil_tmp40 ;
12752 long __cil_tmp41 ;
12753 long __cil_tmp42 ;
12754 unsigned long __cil_tmp43 ;
12755 unsigned long __cil_tmp44 ;
12756 struct se_session *__cil_tmp45 ;
12757 unsigned long __cil_tmp46 ;
12758 unsigned long __cil_tmp47 ;
12759 struct se_node_acl *__cil_tmp48 ;
12760 char (*__cil_tmp49)[224U] ;
12761 char *__cil_tmp50 ;
12762 unsigned long __cil_tmp51 ;
12763 unsigned long __cil_tmp52 ;
12764 struct se_session *__cil_tmp53 ;
12765 unsigned long __cil_tmp54 ;
12766 unsigned long __cil_tmp55 ;
12767 struct tcm_loop_hba *__cil_tmp56 ;
12768 unsigned long __cil_tmp57 ;
12769 unsigned long __cil_tmp58 ;
12770 void const *__cil_tmp59 ;
12771
12772 {
12773#line 1007
12774 __cil_tmp10 = (unsigned long )tpg;
12775#line 1007
12776 __cil_tmp11 = __cil_tmp10 + 1984;
12777#line 1007
12778 tl_hba = *((struct tcm_loop_hba **)__cil_tmp11);
12779#line 1009
12780 __cil_tmp12 = (unsigned long )tpg;
12781#line 1009
12782 __cil_tmp13 = __cil_tmp12 + 1984;
12783#line 1009
12784 __cil_tmp14 = *((struct tcm_loop_hba **)__cil_tmp13);
12785#line 1009
12786 __cil_tmp15 = (unsigned long )__cil_tmp14;
12787#line 1009
12788 __cil_tmp16 = __cil_tmp15 + 296;
12789#line 1009
12790 tl_nexus = *((struct tcm_loop_nexus **)__cil_tmp16);
12791 {
12792#line 1010
12793 __cil_tmp17 = (struct tcm_loop_nexus *)0;
12794#line 1010
12795 __cil_tmp18 = (unsigned long )__cil_tmp17;
12796#line 1010
12797 __cil_tmp19 = (unsigned long )tl_nexus;
12798#line 1010
12799 if (__cil_tmp19 == __cil_tmp18) {
12800#line 1011
12801 return (-19);
12802 } else {
12803
12804 }
12805 }
12806#line 1013
12807 __cil_tmp20 = (unsigned long )tl_nexus;
12808#line 1013
12809 __cil_tmp21 = __cil_tmp20 + 16;
12810#line 1013
12811 se_sess = *((struct se_session **)__cil_tmp21);
12812 {
12813#line 1014
12814 __cil_tmp22 = (struct se_session *)0;
12815#line 1014
12816 __cil_tmp23 = (unsigned long )__cil_tmp22;
12817#line 1014
12818 __cil_tmp24 = (unsigned long )se_sess;
12819#line 1014
12820 if (__cil_tmp24 == __cil_tmp23) {
12821#line 1015
12822 return (-19);
12823 } else {
12824
12825 }
12826 }
12827 {
12828#line 1017
12829 __cil_tmp25 = (unsigned long )tpg;
12830#line 1017
12831 __cil_tmp26 = __cil_tmp25 + 4;
12832#line 1017
12833 __cil_tmp27 = (atomic_t *)__cil_tmp26;
12834#line 1017
12835 __cil_tmp28 = (atomic_t const *)__cil_tmp27;
12836#line 1017
12837 tmp___0 = atomic_read(__cil_tmp28);
12838 }
12839#line 1017
12840 if (tmp___0 != 0) {
12841 {
12842#line 1018
12843 __cil_tmp29 = (unsigned long )tpg;
12844#line 1018
12845 __cil_tmp30 = __cil_tmp29 + 4;
12846#line 1018
12847 __cil_tmp31 = (atomic_t *)__cil_tmp30;
12848#line 1018
12849 __cil_tmp32 = (atomic_t const *)__cil_tmp31;
12850#line 1018
12851 tmp = atomic_read(__cil_tmp32);
12852#line 1018
12853 printk("<3>Unable to remove TCM_Loop I_T Nexus with active TPG port count: %d\n",
12854 tmp);
12855 }
12856#line 1021
12857 return (-1);
12858 } else {
12859
12860 }
12861 {
12862#line 1024
12863 __cil_tmp33 = & descriptor;
12864#line 1024
12865 *((char const **)__cil_tmp33) = "tcm_loop";
12866#line 1024
12867 __cil_tmp34 = (unsigned long )(& descriptor) + 8;
12868#line 1024
12869 *((char const **)__cil_tmp34) = "tcm_loop_drop_nexus";
12870#line 1024
12871 __cil_tmp35 = (unsigned long )(& descriptor) + 16;
12872#line 1024
12873 *((char const **)__cil_tmp35) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
12874#line 1024
12875 __cil_tmp36 = (unsigned long )(& descriptor) + 24;
12876#line 1024
12877 *((char const **)__cil_tmp36) = "TCM_Loop_ConfigFS: Removing I_T Nexus to emulated %s Initiator Port: %s\n";
12878#line 1024
12879 __cil_tmp37 = (unsigned long )(& descriptor) + 32;
12880#line 1024
12881 *((unsigned int *)__cil_tmp37) = 1026U;
12882#line 1024
12883 __cil_tmp38 = (unsigned long )(& descriptor) + 35;
12884#line 1024
12885 *((unsigned char *)__cil_tmp38) = (unsigned char)0;
12886#line 1024
12887 __cil_tmp39 = (unsigned long )(& descriptor) + 35;
12888#line 1024
12889 __cil_tmp40 = *((unsigned char *)__cil_tmp39);
12890#line 1024
12891 __cil_tmp41 = (long )__cil_tmp40;
12892#line 1024
12893 __cil_tmp42 = __cil_tmp41 & 1L;
12894#line 1024
12895 tmp___2 = __builtin_expect(__cil_tmp42, 0L);
12896 }
12897#line 1024
12898 if (tmp___2 != 0L) {
12899 {
12900#line 1024
12901 tmp___1 = tcm_loop_dump_proto_id(tl_hba);
12902#line 1024
12903 __cil_tmp43 = (unsigned long )tl_nexus;
12904#line 1024
12905 __cil_tmp44 = __cil_tmp43 + 16;
12906#line 1024
12907 __cil_tmp45 = *((struct se_session **)__cil_tmp44);
12908#line 1024
12909 __cil_tmp46 = (unsigned long )__cil_tmp45;
12910#line 1024
12911 __cil_tmp47 = __cil_tmp46 + 16;
12912#line 1024
12913 __cil_tmp48 = *((struct se_node_acl **)__cil_tmp47);
12914#line 1024
12915 __cil_tmp49 = (char (*)[224U])__cil_tmp48;
12916#line 1024
12917 __cil_tmp50 = (char *)__cil_tmp49;
12918#line 1024
12919 __dynamic_pr_debug(& descriptor, "TCM_Loop_ConfigFS: Removing I_T Nexus to emulated %s Initiator Port: %s\n",
12920 tmp___1, __cil_tmp50);
12921 }
12922 } else {
12923
12924 }
12925 {
12926#line 1030
12927 __cil_tmp51 = (unsigned long )tl_nexus;
12928#line 1030
12929 __cil_tmp52 = __cil_tmp51 + 16;
12930#line 1030
12931 __cil_tmp53 = *((struct se_session **)__cil_tmp52);
12932#line 1030
12933 transport_deregister_session(__cil_tmp53);
12934#line 1031
12935 __cil_tmp54 = (unsigned long )tpg;
12936#line 1031
12937 __cil_tmp55 = __cil_tmp54 + 1984;
12938#line 1031
12939 __cil_tmp56 = *((struct tcm_loop_hba **)__cil_tmp55);
12940#line 1031
12941 __cil_tmp57 = (unsigned long )__cil_tmp56;
12942#line 1031
12943 __cil_tmp58 = __cil_tmp57 + 296;
12944#line 1031
12945 *((struct tcm_loop_nexus **)__cil_tmp58) = (struct tcm_loop_nexus *)0;
12946#line 1032
12947 __cil_tmp59 = (void const *)tl_nexus;
12948#line 1032
12949 kfree(__cil_tmp59);
12950 }
12951#line 1033
12952 return (0);
12953}
12954}
12955#line 1038 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
12956static ssize_t tcm_loop_tpg_show_nexus(struct se_portal_group *se_tpg , char *page )
12957{ struct tcm_loop_tpg *tl_tpg ;
12958 struct se_portal_group const *__mptr ;
12959 struct tcm_loop_nexus *tl_nexus ;
12960 ssize_t ret ;
12961 int tmp ;
12962 struct tcm_loop_tpg *__cil_tmp8 ;
12963 unsigned long __cil_tmp9 ;
12964 unsigned long __cil_tmp10 ;
12965 struct tcm_loop_hba *__cil_tmp11 ;
12966 unsigned long __cil_tmp12 ;
12967 unsigned long __cil_tmp13 ;
12968 struct tcm_loop_nexus *__cil_tmp14 ;
12969 unsigned long __cil_tmp15 ;
12970 unsigned long __cil_tmp16 ;
12971 unsigned long __cil_tmp17 ;
12972 unsigned long __cil_tmp18 ;
12973 struct se_session *__cil_tmp19 ;
12974 unsigned long __cil_tmp20 ;
12975 unsigned long __cil_tmp21 ;
12976 struct se_node_acl *__cil_tmp22 ;
12977 char (*__cil_tmp23)[224U] ;
12978 char *__cil_tmp24 ;
12979
12980 {
12981#line 1042
12982 __mptr = (struct se_portal_group const *)se_tpg;
12983#line 1042
12984 __cil_tmp8 = (struct tcm_loop_tpg *)__mptr;
12985#line 1042
12986 tl_tpg = __cil_tmp8 + 0xfffffffffffffff8UL;
12987#line 1047
12988 __cil_tmp9 = (unsigned long )tl_tpg;
12989#line 1047
12990 __cil_tmp10 = __cil_tmp9 + 1984;
12991#line 1047
12992 __cil_tmp11 = *((struct tcm_loop_hba **)__cil_tmp10);
12993#line 1047
12994 __cil_tmp12 = (unsigned long )__cil_tmp11;
12995#line 1047
12996 __cil_tmp13 = __cil_tmp12 + 296;
12997#line 1047
12998 tl_nexus = *((struct tcm_loop_nexus **)__cil_tmp13);
12999 {
13000#line 1048
13001 __cil_tmp14 = (struct tcm_loop_nexus *)0;
13002#line 1048
13003 __cil_tmp15 = (unsigned long )__cil_tmp14;
13004#line 1048
13005 __cil_tmp16 = (unsigned long )tl_nexus;
13006#line 1048
13007 if (__cil_tmp16 == __cil_tmp15) {
13008#line 1049
13009 return (-19L);
13010 } else {
13011
13012 }
13013 }
13014 {
13015#line 1051
13016 __cil_tmp17 = (unsigned long )tl_nexus;
13017#line 1051
13018 __cil_tmp18 = __cil_tmp17 + 16;
13019#line 1051
13020 __cil_tmp19 = *((struct se_session **)__cil_tmp18);
13021#line 1051
13022 __cil_tmp20 = (unsigned long )__cil_tmp19;
13023#line 1051
13024 __cil_tmp21 = __cil_tmp20 + 16;
13025#line 1051
13026 __cil_tmp22 = *((struct se_node_acl **)__cil_tmp21);
13027#line 1051
13028 __cil_tmp23 = (char (*)[224U])__cil_tmp22;
13029#line 1051
13030 __cil_tmp24 = (char *)__cil_tmp23;
13031#line 1051
13032 tmp = snprintf(page, 4096UL, "%s\n", __cil_tmp24);
13033#line 1051
13034 ret = (ssize_t )tmp;
13035 }
13036#line 1054
13037 return (ret);
13038}
13039}
13040#line 1057 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
13041static ssize_t tcm_loop_tpg_store_nexus(struct se_portal_group *se_tpg , char const *page ,
13042 size_t count )
13043{ struct tcm_loop_tpg *tl_tpg ;
13044 struct se_portal_group const *__mptr ;
13045 struct tcm_loop_hba *tl_hba ;
13046 unsigned char i_port[256U] ;
13047 unsigned char *ptr ;
13048 unsigned char *port_ptr ;
13049 int ret ;
13050 size_t tmp ;
13051 int tmp___0 ;
13052 size_t tmp___1 ;
13053 char *tmp___2 ;
13054 char *tmp___3 ;
13055 char *tmp___4 ;
13056 char *tmp___5 ;
13057 char *tmp___6 ;
13058 char *tmp___7 ;
13059 size_t tmp___8 ;
13060 size_t tmp___9 ;
13061 struct tcm_loop_tpg *__cil_tmp22 ;
13062 unsigned long __cil_tmp23 ;
13063 unsigned long __cil_tmp24 ;
13064 char *__cil_tmp25 ;
13065 char const *__cil_tmp26 ;
13066 unsigned char *__cil_tmp27 ;
13067 unsigned long __cil_tmp28 ;
13068 unsigned long __cil_tmp29 ;
13069 u8 __cil_tmp30 ;
13070 unsigned int __cil_tmp31 ;
13071 unsigned char *__cil_tmp32 ;
13072 char const *__cil_tmp33 ;
13073 unsigned char *__cil_tmp34 ;
13074 unsigned long __cil_tmp35 ;
13075 unsigned long __cil_tmp36 ;
13076 u8 __cil_tmp37 ;
13077 unsigned int __cil_tmp38 ;
13078 unsigned char *__cil_tmp39 ;
13079 unsigned char *__cil_tmp40 ;
13080 char const *__cil_tmp41 ;
13081 unsigned char *__cil_tmp42 ;
13082 unsigned long __cil_tmp43 ;
13083 unsigned long __cil_tmp44 ;
13084 u8 __cil_tmp45 ;
13085 unsigned int __cil_tmp46 ;
13086 unsigned char *__cil_tmp47 ;
13087 unsigned char *__cil_tmp48 ;
13088 char const *__cil_tmp49 ;
13089 size_t __cil_tmp50 ;
13090 unsigned long __cil_tmp51 ;
13091 unsigned long __cil_tmp52 ;
13092 unsigned char __cil_tmp53 ;
13093 unsigned int __cil_tmp54 ;
13094 char const *__cil_tmp55 ;
13095 size_t __cil_tmp56 ;
13096 unsigned long __cil_tmp57 ;
13097 unsigned long __cil_tmp58 ;
13098 char const *__cil_tmp59 ;
13099
13100 {
13101 {
13102#line 1062
13103 __mptr = (struct se_portal_group const *)se_tpg;
13104#line 1062
13105 __cil_tmp22 = (struct tcm_loop_tpg *)__mptr;
13106#line 1062
13107 tl_tpg = __cil_tmp22 + 0xfffffffffffffff8UL;
13108#line 1064
13109 __cil_tmp23 = (unsigned long )tl_tpg;
13110#line 1064
13111 __cil_tmp24 = __cil_tmp23 + 1984;
13112#line 1064
13113 tl_hba = *((struct tcm_loop_hba **)__cil_tmp24);
13114#line 1070
13115 tmp___0 = strncmp(page, "NULL", 4UL);
13116 }
13117#line 1070
13118 if (tmp___0 == 0) {
13119 {
13120#line 1071
13121 ret = tcm_loop_drop_nexus(tl_tpg);
13122 }
13123#line 1072
13124 if (ret != 0) {
13125#line 1072
13126 tmp = (size_t )ret;
13127 } else {
13128#line 1072
13129 tmp = count;
13130 }
13131#line 1072
13132 return ((ssize_t )tmp);
13133 } else {
13134
13135 }
13136 {
13137#line 1079
13138 tmp___1 = strlen(page);
13139 }
13140#line 1079
13141 if (tmp___1 > 255UL) {
13142 {
13143#line 1080
13144 printk("<3>Emulated NAA Sas Address: %s, exceeds max: %d\n", page, 256);
13145 }
13146#line 1082
13147 return (-22L);
13148 } else {
13149
13150 }
13151 {
13152#line 1084
13153 __cil_tmp25 = (char *)(& i_port);
13154#line 1084
13155 snprintf(__cil_tmp25, 256UL, "%s", page);
13156#line 1086
13157 __cil_tmp26 = (char const *)(& i_port);
13158#line 1086
13159 tmp___2 = strstr(__cil_tmp26, "naa.");
13160#line 1086
13161 ptr = (unsigned char *)tmp___2;
13162 }
13163 {
13164#line 1087
13165 __cil_tmp27 = (unsigned char *)0;
13166#line 1087
13167 __cil_tmp28 = (unsigned long )__cil_tmp27;
13168#line 1087
13169 __cil_tmp29 = (unsigned long )ptr;
13170#line 1087
13171 if (__cil_tmp29 != __cil_tmp28) {
13172 {
13173#line 1088
13174 __cil_tmp30 = *((u8 *)tl_hba);
13175#line 1088
13176 __cil_tmp31 = (unsigned int )__cil_tmp30;
13177#line 1088
13178 if (__cil_tmp31 != 6U) {
13179 {
13180#line 1089
13181 tmp___3 = tcm_loop_dump_proto_id(tl_hba);
13182#line 1089
13183 __cil_tmp32 = (unsigned char *)(& i_port);
13184#line 1089
13185 printk("<3>Passed SAS Initiator Port %s does not match target port protoid: %s\n",
13186 __cil_tmp32, tmp___3);
13187 }
13188#line 1092
13189 return (-22L);
13190 } else {
13191
13192 }
13193 }
13194#line 1094
13195 port_ptr = (unsigned char *)(& i_port);
13196#line 1095
13197 goto check_newline;
13198 } else {
13199
13200 }
13201 }
13202 {
13203#line 1097
13204 __cil_tmp33 = (char const *)(& i_port);
13205#line 1097
13206 tmp___4 = strstr(__cil_tmp33, "fc.");
13207#line 1097
13208 ptr = (unsigned char *)tmp___4;
13209 }
13210 {
13211#line 1098
13212 __cil_tmp34 = (unsigned char *)0;
13213#line 1098
13214 __cil_tmp35 = (unsigned long )__cil_tmp34;
13215#line 1098
13216 __cil_tmp36 = (unsigned long )ptr;
13217#line 1098
13218 if (__cil_tmp36 != __cil_tmp35) {
13219 {
13220#line 1099
13221 __cil_tmp37 = *((u8 *)tl_hba);
13222#line 1099
13223 __cil_tmp38 = (unsigned int )__cil_tmp37;
13224#line 1099
13225 if (__cil_tmp38 != 0U) {
13226 {
13227#line 1100
13228 tmp___5 = tcm_loop_dump_proto_id(tl_hba);
13229#line 1100
13230 __cil_tmp39 = (unsigned char *)(& i_port);
13231#line 1100
13232 printk("<3>Passed FCP Initiator Port %s does not match target port protoid: %s\n",
13233 __cil_tmp39, tmp___5);
13234 }
13235#line 1103
13236 return (-22L);
13237 } else {
13238
13239 }
13240 }
13241#line 1105
13242 __cil_tmp40 = (unsigned char *)(& i_port);
13243#line 1105
13244 port_ptr = __cil_tmp40 + 3UL;
13245#line 1106
13246 goto check_newline;
13247 } else {
13248
13249 }
13250 }
13251 {
13252#line 1108
13253 __cil_tmp41 = (char const *)(& i_port);
13254#line 1108
13255 tmp___6 = strstr(__cil_tmp41, "iqn.");
13256#line 1108
13257 ptr = (unsigned char *)tmp___6;
13258 }
13259 {
13260#line 1109
13261 __cil_tmp42 = (unsigned char *)0;
13262#line 1109
13263 __cil_tmp43 = (unsigned long )__cil_tmp42;
13264#line 1109
13265 __cil_tmp44 = (unsigned long )ptr;
13266#line 1109
13267 if (__cil_tmp44 != __cil_tmp43) {
13268 {
13269#line 1110
13270 __cil_tmp45 = *((u8 *)tl_hba);
13271#line 1110
13272 __cil_tmp46 = (unsigned int )__cil_tmp45;
13273#line 1110
13274 if (__cil_tmp46 != 5U) {
13275 {
13276#line 1111
13277 tmp___7 = tcm_loop_dump_proto_id(tl_hba);
13278#line 1111
13279 __cil_tmp47 = (unsigned char *)(& i_port);
13280#line 1111
13281 printk("<3>Passed iSCSI Initiator Port %s does not match target port protoid: %s\n",
13282 __cil_tmp47, tmp___7);
13283 }
13284#line 1114
13285 return (-22L);
13286 } else {
13287
13288 }
13289 }
13290#line 1116
13291 port_ptr = (unsigned char *)(& i_port);
13292#line 1117
13293 goto check_newline;
13294 } else {
13295
13296 }
13297 }
13298 {
13299#line 1119
13300 __cil_tmp48 = (unsigned char *)(& i_port);
13301#line 1119
13302 printk("<3>Unable to locate prefix for emulated Initiator Port: %s\n", __cil_tmp48);
13303 }
13304#line 1121
13305 return (-22L);
13306 check_newline:
13307 {
13308#line 1126
13309 __cil_tmp49 = (char const *)(& i_port);
13310#line 1126
13311 tmp___9 = strlen(__cil_tmp49);
13312 }
13313 {
13314#line 1126
13315 __cil_tmp50 = tmp___9 - 1UL;
13316#line 1126
13317 __cil_tmp51 = __cil_tmp50 * 1UL;
13318#line 1126
13319 __cil_tmp52 = (unsigned long )(i_port) + __cil_tmp51;
13320#line 1126
13321 __cil_tmp53 = *((unsigned char *)__cil_tmp52);
13322#line 1126
13323 __cil_tmp54 = (unsigned int )__cil_tmp53;
13324#line 1126
13325 if (__cil_tmp54 == 10U) {
13326 {
13327#line 1127
13328 __cil_tmp55 = (char const *)(& i_port);
13329#line 1127
13330 tmp___8 = strlen(__cil_tmp55);
13331#line 1127
13332 __cil_tmp56 = tmp___8 - 1UL;
13333#line 1127
13334 __cil_tmp57 = __cil_tmp56 * 1UL;
13335#line 1127
13336 __cil_tmp58 = (unsigned long )(i_port) + __cil_tmp57;
13337#line 1127
13338 *((unsigned char *)__cil_tmp58) = (unsigned char)0;
13339 }
13340 } else {
13341
13342 }
13343 }
13344 {
13345#line 1129
13346 __cil_tmp59 = (char const *)port_ptr;
13347#line 1129
13348 ret = tcm_loop_make_nexus(tl_tpg, __cil_tmp59);
13349 }
13350#line 1130
13351 if (ret < 0) {
13352#line 1131
13353 return ((ssize_t )ret);
13354 } else {
13355
13356 }
13357#line 1133
13358 return ((ssize_t )count);
13359}
13360}
13361#line 1136 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
13362static struct target_fabric_tpg_attribute tcm_loop_tpg_nexus = {{"nexus", & __this_module, (umode_t )420U}, & tcm_loop_tpg_show_nexus, & tcm_loop_tpg_store_nexus};
13363#line 1138 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
13364static struct configfs_attribute *tcm_loop_tpg_attrs[2U] = { & tcm_loop_tpg_nexus.attr, (struct configfs_attribute *)0};
13365#line 1145 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
13366struct se_portal_group *tcm_loop_make_naa_tpg(struct se_wwn *wwn , struct config_group *group ,
13367 char const *name )
13368{ struct tcm_loop_hba *tl_hba ;
13369 struct se_wwn const *__mptr ;
13370 struct tcm_loop_tpg *tl_tpg ;
13371 char *tpgt_str ;
13372 char *end_ptr ;
13373 int ret ;
13374 unsigned short tpgt ;
13375 void *tmp ;
13376 unsigned long tmp___0 ;
13377 void *tmp___1 ;
13378 void *tmp___2 ;
13379 struct _ddebug descriptor ;
13380 char *tmp___3 ;
13381 char *tmp___4 ;
13382 long tmp___5 ;
13383 struct tcm_loop_hba *__cil_tmp19 ;
13384 char *__cil_tmp20 ;
13385 unsigned long __cil_tmp21 ;
13386 unsigned long __cil_tmp22 ;
13387 char const *__cil_tmp23 ;
13388 unsigned int __cil_tmp24 ;
13389 int __cil_tmp25 ;
13390 unsigned long __cil_tmp26 ;
13391 unsigned long __cil_tmp27 ;
13392 unsigned long __cil_tmp28 ;
13393 struct tcm_loop_tpg (*__cil_tmp29)[32U] ;
13394 struct tcm_loop_tpg *__cil_tmp30 ;
13395 unsigned long __cil_tmp31 ;
13396 unsigned long __cil_tmp32 ;
13397 unsigned long __cil_tmp33 ;
13398 unsigned long __cil_tmp34 ;
13399 struct target_core_fabric_ops *__cil_tmp35 ;
13400 unsigned long __cil_tmp36 ;
13401 unsigned long __cil_tmp37 ;
13402 struct se_portal_group *__cil_tmp38 ;
13403 void *__cil_tmp39 ;
13404 struct _ddebug *__cil_tmp40 ;
13405 unsigned long __cil_tmp41 ;
13406 unsigned long __cil_tmp42 ;
13407 unsigned long __cil_tmp43 ;
13408 unsigned long __cil_tmp44 ;
13409 unsigned long __cil_tmp45 ;
13410 unsigned long __cil_tmp46 ;
13411 unsigned char __cil_tmp47 ;
13412 long __cil_tmp48 ;
13413 long __cil_tmp49 ;
13414 unsigned long __cil_tmp50 ;
13415 unsigned long __cil_tmp51 ;
13416 struct config_item *__cil_tmp52 ;
13417 int __cil_tmp53 ;
13418 unsigned long __cil_tmp54 ;
13419 unsigned long __cil_tmp55 ;
13420
13421 {
13422 {
13423#line 1150
13424 __mptr = (struct se_wwn const *)wwn;
13425#line 1150
13426 __cil_tmp19 = (struct tcm_loop_hba *)__mptr;
13427#line 1150
13428 tl_hba = __cil_tmp19 + 0xffffffffffff0148UL;
13429#line 1157
13430 tpgt_str = strstr(name, "tpgt_");
13431 }
13432 {
13433#line 1158
13434 __cil_tmp20 = (char *)0;
13435#line 1158
13436 __cil_tmp21 = (unsigned long )__cil_tmp20;
13437#line 1158
13438 __cil_tmp22 = (unsigned long )tpgt_str;
13439#line 1158
13440 if (__cil_tmp22 == __cil_tmp21) {
13441 {
13442#line 1159
13443 printk("<3>Unable to locate \"tpgt_#\" directory group\n");
13444#line 1161
13445 tmp = ERR_PTR(-22L);
13446 }
13447#line 1161
13448 return ((struct se_portal_group *)tmp);
13449 } else {
13450
13451 }
13452 }
13453 {
13454#line 1163
13455 tpgt_str = tpgt_str + 5UL;
13456#line 1164
13457 __cil_tmp23 = (char const *)tpgt_str;
13458#line 1164
13459 tmp___0 = simple_strtoul(__cil_tmp23, & end_ptr, 0U);
13460#line 1164
13461 tpgt = (unsigned short )tmp___0;
13462 }
13463 {
13464#line 1166
13465 __cil_tmp24 = (unsigned int )tpgt;
13466#line 1166
13467 if (__cil_tmp24 > 31U) {
13468 {
13469#line 1167
13470 __cil_tmp25 = (int )tpgt;
13471#line 1167
13472 printk("<3>Passed tpgt: %hu exceeds TL_TPGS_PER_HBA: %u\n", __cil_tmp25, 32);
13473#line 1169
13474 tmp___1 = ERR_PTR(-22L);
13475 }
13476#line 1169
13477 return ((struct se_portal_group *)tmp___1);
13478 } else {
13479
13480 }
13481 }
13482 {
13483#line 1171
13484 __cil_tmp26 = (unsigned long )tpgt;
13485#line 1171
13486 __cil_tmp27 = (unsigned long )tl_hba;
13487#line 1171
13488 __cil_tmp28 = __cil_tmp27 + 1464;
13489#line 1171
13490 __cil_tmp29 = (struct tcm_loop_tpg (*)[32U])__cil_tmp28;
13491#line 1171
13492 __cil_tmp30 = (struct tcm_loop_tpg *)__cil_tmp29;
13493#line 1171
13494 tl_tpg = __cil_tmp30 + __cil_tmp26;
13495#line 1172
13496 __cil_tmp31 = (unsigned long )tl_tpg;
13497#line 1172
13498 __cil_tmp32 = __cil_tmp31 + 1984;
13499#line 1172
13500 *((struct tcm_loop_hba **)__cil_tmp32) = tl_hba;
13501#line 1173
13502 *((unsigned short *)tl_tpg) = tpgt;
13503#line 1177
13504 __cil_tmp33 = (unsigned long )tcm_loop_fabric_configfs;
13505#line 1177
13506 __cil_tmp34 = __cil_tmp33 + 328;
13507#line 1177
13508 __cil_tmp35 = (struct target_core_fabric_ops *)__cil_tmp34;
13509#line 1177
13510 __cil_tmp36 = (unsigned long )tl_tpg;
13511#line 1177
13512 __cil_tmp37 = __cil_tmp36 + 8;
13513#line 1177
13514 __cil_tmp38 = (struct se_portal_group *)__cil_tmp37;
13515#line 1177
13516 __cil_tmp39 = (void *)tl_tpg;
13517#line 1177
13518 ret = core_tpg_register(__cil_tmp35, wwn, __cil_tmp38, __cil_tmp39, 0);
13519 }
13520#line 1180
13521 if (ret < 0) {
13522 {
13523#line 1181
13524 tmp___2 = ERR_PTR(-12L);
13525 }
13526#line 1181
13527 return ((struct se_portal_group *)tmp___2);
13528 } else {
13529
13530 }
13531 {
13532#line 1183
13533 __cil_tmp40 = & descriptor;
13534#line 1183
13535 *((char const **)__cil_tmp40) = "tcm_loop";
13536#line 1183
13537 __cil_tmp41 = (unsigned long )(& descriptor) + 8;
13538#line 1183
13539 *((char const **)__cil_tmp41) = "tcm_loop_make_naa_tpg";
13540#line 1183
13541 __cil_tmp42 = (unsigned long )(& descriptor) + 16;
13542#line 1183
13543 *((char const **)__cil_tmp42) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
13544#line 1183
13545 __cil_tmp43 = (unsigned long )(& descriptor) + 24;
13546#line 1183
13547 *((char const **)__cil_tmp43) = "TCM_Loop_ConfigFS: Allocated Emulated %s Target Port %s,t,0x%04x\n";
13548#line 1183
13549 __cil_tmp44 = (unsigned long )(& descriptor) + 32;
13550#line 1183
13551 *((unsigned int *)__cil_tmp44) = 1185U;
13552#line 1183
13553 __cil_tmp45 = (unsigned long )(& descriptor) + 35;
13554#line 1183
13555 *((unsigned char *)__cil_tmp45) = (unsigned char)0;
13556#line 1183
13557 __cil_tmp46 = (unsigned long )(& descriptor) + 35;
13558#line 1183
13559 __cil_tmp47 = *((unsigned char *)__cil_tmp46);
13560#line 1183
13561 __cil_tmp48 = (long )__cil_tmp47;
13562#line 1183
13563 __cil_tmp49 = __cil_tmp48 & 1L;
13564#line 1183
13565 tmp___5 = __builtin_expect(__cil_tmp49, 0L);
13566 }
13567#line 1183
13568 if (tmp___5 != 0L) {
13569 {
13570#line 1183
13571 __cil_tmp50 = (unsigned long )wwn;
13572#line 1183
13573 __cil_tmp51 = __cil_tmp50 + 8;
13574#line 1183
13575 __cil_tmp52 = (struct config_item *)__cil_tmp51;
13576#line 1183
13577 tmp___3 = config_item_name(__cil_tmp52);
13578#line 1183
13579 tmp___4 = tcm_loop_dump_proto_id(tl_hba);
13580#line 1183
13581 __cil_tmp53 = (int )tpgt;
13582#line 1183
13583 __dynamic_pr_debug(& descriptor, "TCM_Loop_ConfigFS: Allocated Emulated %s Target Port %s,t,0x%04x\n",
13584 tmp___4, tmp___3, __cil_tmp53);
13585 }
13586 } else {
13587
13588 }
13589 {
13590#line 1187
13591 __cil_tmp54 = (unsigned long )tl_tpg;
13592#line 1187
13593 __cil_tmp55 = __cil_tmp54 + 8;
13594#line 1187
13595 return ((struct se_portal_group *)__cil_tmp55);
13596 }
13597}
13598}
13599#line 1190 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
13600void tcm_loop_drop_naa_tpg(struct se_portal_group *se_tpg )
13601{ struct se_wwn *wwn ;
13602 struct tcm_loop_tpg *tl_tpg ;
13603 struct se_portal_group const *__mptr ;
13604 struct tcm_loop_hba *tl_hba ;
13605 unsigned short tpgt ;
13606 struct _ddebug descriptor ;
13607 char *tmp ;
13608 char *tmp___0 ;
13609 long tmp___1 ;
13610 unsigned long __cil_tmp11 ;
13611 unsigned long __cil_tmp12 ;
13612 struct tcm_loop_tpg *__cil_tmp13 ;
13613 unsigned long __cil_tmp14 ;
13614 unsigned long __cil_tmp15 ;
13615 unsigned long __cil_tmp16 ;
13616 unsigned long __cil_tmp17 ;
13617 struct _ddebug *__cil_tmp18 ;
13618 unsigned long __cil_tmp19 ;
13619 unsigned long __cil_tmp20 ;
13620 unsigned long __cil_tmp21 ;
13621 unsigned long __cil_tmp22 ;
13622 unsigned long __cil_tmp23 ;
13623 unsigned long __cil_tmp24 ;
13624 unsigned char __cil_tmp25 ;
13625 long __cil_tmp26 ;
13626 long __cil_tmp27 ;
13627 unsigned long __cil_tmp28 ;
13628 unsigned long __cil_tmp29 ;
13629 struct config_item *__cil_tmp30 ;
13630 int __cil_tmp31 ;
13631
13632 {
13633 {
13634#line 1193
13635 __cil_tmp11 = (unsigned long )se_tpg;
13636#line 1193
13637 __cil_tmp12 = __cil_tmp11 + 1248;
13638#line 1193
13639 wwn = *((struct se_wwn **)__cil_tmp12);
13640#line 1194
13641 __mptr = (struct se_portal_group const *)se_tpg;
13642#line 1194
13643 __cil_tmp13 = (struct tcm_loop_tpg *)__mptr;
13644#line 1194
13645 tl_tpg = __cil_tmp13 + 0xfffffffffffffff8UL;
13646#line 1199
13647 __cil_tmp14 = (unsigned long )tl_tpg;
13648#line 1199
13649 __cil_tmp15 = __cil_tmp14 + 1984;
13650#line 1199
13651 tl_hba = *((struct tcm_loop_hba **)__cil_tmp15);
13652#line 1200
13653 tpgt = *((unsigned short *)tl_tpg);
13654#line 1204
13655 tcm_loop_drop_nexus(tl_tpg);
13656#line 1208
13657 core_tpg_deregister(se_tpg);
13658#line 1210
13659 __cil_tmp16 = (unsigned long )tl_tpg;
13660#line 1210
13661 __cil_tmp17 = __cil_tmp16 + 1984;
13662#line 1210
13663 *((struct tcm_loop_hba **)__cil_tmp17) = (struct tcm_loop_hba *)0;
13664#line 1211
13665 *((unsigned short *)tl_tpg) = (unsigned short)0;
13666#line 1213
13667 __cil_tmp18 = & descriptor;
13668#line 1213
13669 *((char const **)__cil_tmp18) = "tcm_loop";
13670#line 1213
13671 __cil_tmp19 = (unsigned long )(& descriptor) + 8;
13672#line 1213
13673 *((char const **)__cil_tmp19) = "tcm_loop_drop_naa_tpg";
13674#line 1213
13675 __cil_tmp20 = (unsigned long )(& descriptor) + 16;
13676#line 1213
13677 *((char const **)__cil_tmp20) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
13678#line 1213
13679 __cil_tmp21 = (unsigned long )(& descriptor) + 24;
13680#line 1213
13681 *((char const **)__cil_tmp21) = "TCM_Loop_ConfigFS: Deallocated Emulated %s Target Port %s,t,0x%04x\n";
13682#line 1213
13683 __cil_tmp22 = (unsigned long )(& descriptor) + 32;
13684#line 1213
13685 *((unsigned int *)__cil_tmp22) = 1215U;
13686#line 1213
13687 __cil_tmp23 = (unsigned long )(& descriptor) + 35;
13688#line 1213
13689 *((unsigned char *)__cil_tmp23) = (unsigned char)0;
13690#line 1213
13691 __cil_tmp24 = (unsigned long )(& descriptor) + 35;
13692#line 1213
13693 __cil_tmp25 = *((unsigned char *)__cil_tmp24);
13694#line 1213
13695 __cil_tmp26 = (long )__cil_tmp25;
13696#line 1213
13697 __cil_tmp27 = __cil_tmp26 & 1L;
13698#line 1213
13699 tmp___1 = __builtin_expect(__cil_tmp27, 0L);
13700 }
13701#line 1213
13702 if (tmp___1 != 0L) {
13703 {
13704#line 1213
13705 __cil_tmp28 = (unsigned long )wwn;
13706#line 1213
13707 __cil_tmp29 = __cil_tmp28 + 8;
13708#line 1213
13709 __cil_tmp30 = (struct config_item *)__cil_tmp29;
13710#line 1213
13711 tmp = config_item_name(__cil_tmp30);
13712#line 1213
13713 tmp___0 = tcm_loop_dump_proto_id(tl_hba);
13714#line 1213
13715 __cil_tmp31 = (int )tpgt;
13716#line 1213
13717 __dynamic_pr_debug(& descriptor, "TCM_Loop_ConfigFS: Deallocated Emulated %s Target Port %s,t,0x%04x\n",
13718 tmp___0, tmp, __cil_tmp31);
13719 }
13720 } else {
13721
13722 }
13723#line 1215
13724 return;
13725}
13726}
13727#line 1222 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
13728struct se_wwn *tcm_loop_make_scsi_hba(struct target_fabric_configfs *tf , struct config_group *group ,
13729 char const *name )
13730{ struct tcm_loop_hba *tl_hba ;
13731 struct Scsi_Host *sh ;
13732 char *ptr ;
13733 int ret ;
13734 int off ;
13735 void *tmp ;
13736 void *tmp___0 ;
13737 char *tmp___1 ;
13738 size_t tmp___2 ;
13739 struct _ddebug descriptor ;
13740 char *tmp___3 ;
13741 long tmp___4 ;
13742 void *tmp___5 ;
13743 struct tcm_loop_hba *__cil_tmp17 ;
13744 unsigned long __cil_tmp18 ;
13745 unsigned long __cil_tmp19 ;
13746 char *__cil_tmp20 ;
13747 unsigned long __cil_tmp21 ;
13748 unsigned long __cil_tmp22 ;
13749 char *__cil_tmp23 ;
13750 unsigned long __cil_tmp24 ;
13751 unsigned long __cil_tmp25 ;
13752 char *__cil_tmp26 ;
13753 unsigned long __cil_tmp27 ;
13754 unsigned long __cil_tmp28 ;
13755 unsigned long __cil_tmp29 ;
13756 unsigned long __cil_tmp30 ;
13757 unsigned char (*__cil_tmp31)[256U] ;
13758 char *__cil_tmp32 ;
13759 unsigned long __cil_tmp33 ;
13760 char const *__cil_tmp34 ;
13761 unsigned long __cil_tmp35 ;
13762 unsigned long __cil_tmp36 ;
13763 struct _ddebug *__cil_tmp37 ;
13764 unsigned long __cil_tmp38 ;
13765 unsigned long __cil_tmp39 ;
13766 unsigned long __cil_tmp40 ;
13767 unsigned long __cil_tmp41 ;
13768 unsigned long __cil_tmp42 ;
13769 unsigned long __cil_tmp43 ;
13770 unsigned char __cil_tmp44 ;
13771 long __cil_tmp45 ;
13772 long __cil_tmp46 ;
13773 unsigned long __cil_tmp47 ;
13774 unsigned long __cil_tmp48 ;
13775 unsigned int __cil_tmp49 ;
13776 unsigned long __cil_tmp50 ;
13777 unsigned long __cil_tmp51 ;
13778 void const *__cil_tmp52 ;
13779 long __cil_tmp53 ;
13780
13781 {
13782 {
13783#line 1230
13784 off = 0;
13785#line 1232
13786 tmp = kzalloc(65456UL, 208U);
13787#line 1232
13788 tl_hba = (struct tcm_loop_hba *)tmp;
13789 }
13790 {
13791#line 1233
13792 __cil_tmp17 = (struct tcm_loop_hba *)0;
13793#line 1233
13794 __cil_tmp18 = (unsigned long )__cil_tmp17;
13795#line 1233
13796 __cil_tmp19 = (unsigned long )tl_hba;
13797#line 1233
13798 if (__cil_tmp19 == __cil_tmp18) {
13799 {
13800#line 1234
13801 printk("<3>Unable to allocate struct tcm_loop_hba\n");
13802#line 1235
13803 tmp___0 = ERR_PTR(-12L);
13804 }
13805#line 1235
13806 return ((struct se_wwn *)tmp___0);
13807 } else {
13808
13809 }
13810 }
13811 {
13812#line 1241
13813 ptr = strstr(name, "naa.");
13814 }
13815 {
13816#line 1242
13817 __cil_tmp20 = (char *)0;
13818#line 1242
13819 __cil_tmp21 = (unsigned long )__cil_tmp20;
13820#line 1242
13821 __cil_tmp22 = (unsigned long )ptr;
13822#line 1242
13823 if (__cil_tmp22 != __cil_tmp21) {
13824#line 1243
13825 *((u8 *)tl_hba) = (u8 )6U;
13826#line 1244
13827 goto check_len;
13828 } else {
13829
13830 }
13831 }
13832 {
13833#line 1246
13834 ptr = strstr(name, "fc.");
13835 }
13836 {
13837#line 1247
13838 __cil_tmp23 = (char *)0;
13839#line 1247
13840 __cil_tmp24 = (unsigned long )__cil_tmp23;
13841#line 1247
13842 __cil_tmp25 = (unsigned long )ptr;
13843#line 1247
13844 if (__cil_tmp25 != __cil_tmp24) {
13845#line 1248
13846 *((u8 *)tl_hba) = (u8 )0U;
13847#line 1249
13848 off = 3;
13849#line 1250
13850 goto check_len;
13851 } else {
13852
13853 }
13854 }
13855 {
13856#line 1252
13857 ptr = strstr(name, "iqn.");
13858 }
13859 {
13860#line 1253
13861 __cil_tmp26 = (char *)0;
13862#line 1253
13863 __cil_tmp27 = (unsigned long )__cil_tmp26;
13864#line 1253
13865 __cil_tmp28 = (unsigned long )ptr;
13866#line 1253
13867 if (__cil_tmp28 == __cil_tmp27) {
13868 {
13869#line 1254
13870 printk("<3>Unable to locate prefix for emulated Target Port: %s\n", name);
13871#line 1256
13872 ret = -22;
13873 }
13874#line 1257
13875 goto out;
13876 } else {
13877
13878 }
13879 }
13880#line 1259
13881 *((u8 *)tl_hba) = (u8 )5U;
13882 check_len:
13883 {
13884#line 1262
13885 tmp___2 = strlen(name);
13886 }
13887#line 1262
13888 if (tmp___2 > 255UL) {
13889 {
13890#line 1263
13891 tmp___1 = tcm_loop_dump_proto_id(tl_hba);
13892#line 1263
13893 printk("<3>Emulated NAA %s Address: %s, exceeds max: %d\n", name, tmp___1, 256);
13894#line 1266
13895 ret = -22;
13896 }
13897#line 1267
13898 goto out;
13899 } else {
13900
13901 }
13902 {
13903#line 1269
13904 __cil_tmp29 = (unsigned long )tl_hba;
13905#line 1269
13906 __cil_tmp30 = __cil_tmp29 + 1;
13907#line 1269
13908 __cil_tmp31 = (unsigned char (*)[256U])__cil_tmp30;
13909#line 1269
13910 __cil_tmp32 = (char *)__cil_tmp31;
13911#line 1269
13912 __cil_tmp33 = (unsigned long )off;
13913#line 1269
13914 __cil_tmp34 = name + __cil_tmp33;
13915#line 1269
13916 snprintf(__cil_tmp32, 256UL, "%s", __cil_tmp34);
13917#line 1276
13918 ret = tcm_loop_setup_hba_bus(tl_hba, tcm_loop_hba_no_cnt);
13919 }
13920#line 1277
13921 if (ret != 0) {
13922#line 1278
13923 goto out;
13924 } else {
13925
13926 }
13927 {
13928#line 1280
13929 __cil_tmp35 = (unsigned long )tl_hba;
13930#line 1280
13931 __cil_tmp36 = __cil_tmp35 + 1456;
13932#line 1280
13933 sh = *((struct Scsi_Host **)__cil_tmp36);
13934#line 1281
13935 tcm_loop_hba_no_cnt = tcm_loop_hba_no_cnt + 1;
13936#line 1282
13937 __cil_tmp37 = & descriptor;
13938#line 1282
13939 *((char const **)__cil_tmp37) = "tcm_loop";
13940#line 1282
13941 __cil_tmp38 = (unsigned long )(& descriptor) + 8;
13942#line 1282
13943 *((char const **)__cil_tmp38) = "tcm_loop_make_scsi_hba";
13944#line 1282
13945 __cil_tmp39 = (unsigned long )(& descriptor) + 16;
13946#line 1282
13947 *((char const **)__cil_tmp39) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
13948#line 1282
13949 __cil_tmp40 = (unsigned long )(& descriptor) + 24;
13950#line 1282
13951 *((char const **)__cil_tmp40) = "TCM_Loop_ConfigFS: Allocated emulated Target %s Address: %s at Linux/SCSI Host ID: %d\n";
13952#line 1282
13953 __cil_tmp41 = (unsigned long )(& descriptor) + 32;
13954#line 1282
13955 *((unsigned int *)__cil_tmp41) = 1284U;
13956#line 1282
13957 __cil_tmp42 = (unsigned long )(& descriptor) + 35;
13958#line 1282
13959 *((unsigned char *)__cil_tmp42) = (unsigned char)0;
13960#line 1282
13961 __cil_tmp43 = (unsigned long )(& descriptor) + 35;
13962#line 1282
13963 __cil_tmp44 = *((unsigned char *)__cil_tmp43);
13964#line 1282
13965 __cil_tmp45 = (long )__cil_tmp44;
13966#line 1282
13967 __cil_tmp46 = __cil_tmp45 & 1L;
13968#line 1282
13969 tmp___4 = __builtin_expect(__cil_tmp46, 0L);
13970 }
13971#line 1282
13972 if (tmp___4 != 0L) {
13973 {
13974#line 1282
13975 tmp___3 = tcm_loop_dump_proto_id(tl_hba);
13976#line 1282
13977 __cil_tmp47 = (unsigned long )sh;
13978#line 1282
13979 __cil_tmp48 = __cil_tmp47 + 548;
13980#line 1282
13981 __cil_tmp49 = *((unsigned int *)__cil_tmp48);
13982#line 1282
13983 __dynamic_pr_debug(& descriptor, "TCM_Loop_ConfigFS: Allocated emulated Target %s Address: %s at Linux/SCSI Host ID: %d\n",
13984 tmp___3, name, __cil_tmp49);
13985 }
13986 } else {
13987
13988 }
13989 {
13990#line 1286
13991 __cil_tmp50 = (unsigned long )tl_hba;
13992#line 1286
13993 __cil_tmp51 = __cil_tmp50 + 65208;
13994#line 1286
13995 return ((struct se_wwn *)__cil_tmp51);
13996 }
13997 out:
13998 {
13999#line 1288
14000 __cil_tmp52 = (void const *)tl_hba;
14001#line 1288
14002 kfree(__cil_tmp52);
14003#line 1289
14004 __cil_tmp53 = (long )ret;
14005#line 1289
14006 tmp___5 = ERR_PTR(__cil_tmp53);
14007 }
14008#line 1289
14009 return ((struct se_wwn *)tmp___5);
14010}
14011}
14012#line 1292 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
14013void tcm_loop_drop_scsi_hba(struct se_wwn *wwn )
14014{ struct tcm_loop_hba *tl_hba ;
14015 struct se_wwn const *__mptr ;
14016 struct _ddebug descriptor ;
14017 long tmp ;
14018 struct tcm_loop_hba *__cil_tmp6 ;
14019 struct _ddebug *__cil_tmp7 ;
14020 unsigned long __cil_tmp8 ;
14021 unsigned long __cil_tmp9 ;
14022 unsigned long __cil_tmp10 ;
14023 unsigned long __cil_tmp11 ;
14024 unsigned long __cil_tmp12 ;
14025 unsigned long __cil_tmp13 ;
14026 unsigned char __cil_tmp14 ;
14027 long __cil_tmp15 ;
14028 long __cil_tmp16 ;
14029 unsigned long __cil_tmp17 ;
14030 unsigned long __cil_tmp18 ;
14031 unsigned char (*__cil_tmp19)[256U] ;
14032 unsigned char *__cil_tmp20 ;
14033 unsigned long __cil_tmp21 ;
14034 unsigned long __cil_tmp22 ;
14035 struct Scsi_Host *__cil_tmp23 ;
14036 unsigned long __cil_tmp24 ;
14037 unsigned long __cil_tmp25 ;
14038 unsigned int __cil_tmp26 ;
14039 unsigned long __cil_tmp27 ;
14040 unsigned long __cil_tmp28 ;
14041 struct device *__cil_tmp29 ;
14042
14043 {
14044 {
14045#line 1295
14046 __mptr = (struct se_wwn const *)wwn;
14047#line 1295
14048 __cil_tmp6 = (struct tcm_loop_hba *)__mptr;
14049#line 1295
14050 tl_hba = __cil_tmp6 + 0xffffffffffff0148UL;
14051#line 1298
14052 __cil_tmp7 = & descriptor;
14053#line 1298
14054 *((char const **)__cil_tmp7) = "tcm_loop";
14055#line 1298
14056 __cil_tmp8 = (unsigned long )(& descriptor) + 8;
14057#line 1298
14058 *((char const **)__cil_tmp8) = "tcm_loop_drop_scsi_hba";
14059#line 1298
14060 __cil_tmp9 = (unsigned long )(& descriptor) + 16;
14061#line 1298
14062 *((char const **)__cil_tmp9) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
14063#line 1298
14064 __cil_tmp10 = (unsigned long )(& descriptor) + 24;
14065#line 1298
14066 *((char const **)__cil_tmp10) = "TCM_Loop_ConfigFS: Deallocating emulated Target SAS Address: %s at Linux/SCSI Host ID: %d\n";
14067#line 1298
14068 __cil_tmp11 = (unsigned long )(& descriptor) + 32;
14069#line 1298
14070 *((unsigned int *)__cil_tmp11) = 1300U;
14071#line 1298
14072 __cil_tmp12 = (unsigned long )(& descriptor) + 35;
14073#line 1298
14074 *((unsigned char *)__cil_tmp12) = (unsigned char)0;
14075#line 1298
14076 __cil_tmp13 = (unsigned long )(& descriptor) + 35;
14077#line 1298
14078 __cil_tmp14 = *((unsigned char *)__cil_tmp13);
14079#line 1298
14080 __cil_tmp15 = (long )__cil_tmp14;
14081#line 1298
14082 __cil_tmp16 = __cil_tmp15 & 1L;
14083#line 1298
14084 tmp = __builtin_expect(__cil_tmp16, 0L);
14085 }
14086#line 1298
14087 if (tmp != 0L) {
14088 {
14089#line 1298
14090 __cil_tmp17 = (unsigned long )tl_hba;
14091#line 1298
14092 __cil_tmp18 = __cil_tmp17 + 1;
14093#line 1298
14094 __cil_tmp19 = (unsigned char (*)[256U])__cil_tmp18;
14095#line 1298
14096 __cil_tmp20 = (unsigned char *)__cil_tmp19;
14097#line 1298
14098 __cil_tmp21 = (unsigned long )tl_hba;
14099#line 1298
14100 __cil_tmp22 = __cil_tmp21 + 1456;
14101#line 1298
14102 __cil_tmp23 = *((struct Scsi_Host **)__cil_tmp22);
14103#line 1298
14104 __cil_tmp24 = (unsigned long )__cil_tmp23;
14105#line 1298
14106 __cil_tmp25 = __cil_tmp24 + 548;
14107#line 1298
14108 __cil_tmp26 = *((unsigned int *)__cil_tmp25);
14109#line 1298
14110 __dynamic_pr_debug(& descriptor, "TCM_Loop_ConfigFS: Deallocating emulated Target SAS Address: %s at Linux/SCSI Host ID: %d\n",
14111 __cil_tmp20, __cil_tmp26);
14112 }
14113 } else {
14114
14115 }
14116 {
14117#line 1306
14118 __cil_tmp27 = (unsigned long )tl_hba;
14119#line 1306
14120 __cil_tmp28 = __cil_tmp27 + 304;
14121#line 1306
14122 __cil_tmp29 = (struct device *)__cil_tmp28;
14123#line 1306
14124 device_unregister(__cil_tmp29);
14125 }
14126#line 1307
14127 return;
14128}
14129}
14130#line 1310 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
14131static ssize_t tcm_loop_wwn_show_attr_version(struct target_fabric_configfs *tf ,
14132 char *page )
14133{ int tmp ;
14134 char *__cil_tmp4 ;
14135
14136 {
14137 {
14138#line 1314
14139 __cil_tmp4 = (char *)"v2.1-rc2";
14140#line 1314
14141 tmp = sprintf(page, "TCM Loopback Fabric module %s\n", __cil_tmp4);
14142 }
14143#line 1314
14144 return ((ssize_t )tmp);
14145}
14146}
14147#line 1317 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
14148static struct target_fabric_wwn_attribute tcm_loop_wwn_version = {{"version", & __this_module, (umode_t )292U}, & tcm_loop_wwn_show_attr_version,
14149 (ssize_t (*)(struct target_fabric_configfs * , char const * , size_t ))0};
14150#line 1319 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
14151static struct configfs_attribute *tcm_loop_wwn_attrs[2U] = { & tcm_loop_wwn_version.attr, (struct configfs_attribute *)0};
14152#line 1326 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
14153static int tcm_loop_register_configfs(void)
14154{ struct target_fabric_configfs *fabric ;
14155 int ret ;
14156 long tmp ;
14157 long tmp___0 ;
14158 struct _ddebug descriptor ;
14159 long tmp___1 ;
14160 void const *__cil_tmp7 ;
14161 void const *__cil_tmp8 ;
14162 unsigned long __cil_tmp9 ;
14163 unsigned long __cil_tmp10 ;
14164 unsigned long __cil_tmp11 ;
14165 unsigned long __cil_tmp12 ;
14166 unsigned long __cil_tmp13 ;
14167 unsigned long __cil_tmp14 ;
14168 unsigned long __cil_tmp15 ;
14169 unsigned long __cil_tmp16 ;
14170 unsigned long __cil_tmp17 ;
14171 unsigned long __cil_tmp18 ;
14172 unsigned long __cil_tmp19 ;
14173 unsigned long __cil_tmp20 ;
14174 unsigned long __cil_tmp21 ;
14175 unsigned long __cil_tmp22 ;
14176 unsigned long __cil_tmp23 ;
14177 unsigned long __cil_tmp24 ;
14178 unsigned long __cil_tmp25 ;
14179 unsigned long __cil_tmp26 ;
14180 unsigned long __cil_tmp27 ;
14181 unsigned long __cil_tmp28 ;
14182 unsigned long __cil_tmp29 ;
14183 unsigned long __cil_tmp30 ;
14184 unsigned long __cil_tmp31 ;
14185 unsigned long __cil_tmp32 ;
14186 unsigned long __cil_tmp33 ;
14187 unsigned long __cil_tmp34 ;
14188 unsigned long __cil_tmp35 ;
14189 unsigned long __cil_tmp36 ;
14190 unsigned long __cil_tmp37 ;
14191 unsigned long __cil_tmp38 ;
14192 unsigned long __cil_tmp39 ;
14193 unsigned long __cil_tmp40 ;
14194 unsigned long __cil_tmp41 ;
14195 unsigned long __cil_tmp42 ;
14196 unsigned long __cil_tmp43 ;
14197 unsigned long __cil_tmp44 ;
14198 unsigned long __cil_tmp45 ;
14199 unsigned long __cil_tmp46 ;
14200 unsigned long __cil_tmp47 ;
14201 unsigned long __cil_tmp48 ;
14202 unsigned long __cil_tmp49 ;
14203 unsigned long __cil_tmp50 ;
14204 unsigned long __cil_tmp51 ;
14205 unsigned long __cil_tmp52 ;
14206 unsigned long __cil_tmp53 ;
14207 unsigned long __cil_tmp54 ;
14208 unsigned long __cil_tmp55 ;
14209 unsigned long __cil_tmp56 ;
14210 unsigned long __cil_tmp57 ;
14211 unsigned long __cil_tmp58 ;
14212 unsigned long __cil_tmp59 ;
14213 unsigned long __cil_tmp60 ;
14214 unsigned long __cil_tmp61 ;
14215 unsigned long __cil_tmp62 ;
14216 unsigned long __cil_tmp63 ;
14217 unsigned long __cil_tmp64 ;
14218 unsigned long __cil_tmp65 ;
14219 unsigned long __cil_tmp66 ;
14220 unsigned long __cil_tmp67 ;
14221 unsigned long __cil_tmp68 ;
14222 unsigned long __cil_tmp69 ;
14223 unsigned long __cil_tmp70 ;
14224 unsigned long __cil_tmp71 ;
14225 unsigned long __cil_tmp72 ;
14226 unsigned long __cil_tmp73 ;
14227 unsigned long __cil_tmp74 ;
14228 unsigned long __cil_tmp75 ;
14229 unsigned long __cil_tmp76 ;
14230 unsigned long __cil_tmp77 ;
14231 unsigned long __cil_tmp78 ;
14232 unsigned long __cil_tmp79 ;
14233 unsigned long __cil_tmp80 ;
14234 unsigned long __cil_tmp81 ;
14235 unsigned long __cil_tmp82 ;
14236 unsigned long __cil_tmp83 ;
14237 unsigned long __cil_tmp84 ;
14238 unsigned long __cil_tmp85 ;
14239 unsigned long __cil_tmp86 ;
14240 unsigned long __cil_tmp87 ;
14241 unsigned long __cil_tmp88 ;
14242 unsigned long __cil_tmp89 ;
14243 unsigned long __cil_tmp90 ;
14244 unsigned long __cil_tmp91 ;
14245 unsigned long __cil_tmp92 ;
14246 unsigned long __cil_tmp93 ;
14247 unsigned long __cil_tmp94 ;
14248 unsigned long __cil_tmp95 ;
14249 unsigned long __cil_tmp96 ;
14250 unsigned long __cil_tmp97 ;
14251 unsigned long __cil_tmp98 ;
14252 unsigned long __cil_tmp99 ;
14253 unsigned long __cil_tmp100 ;
14254 unsigned long __cil_tmp101 ;
14255 unsigned long __cil_tmp102 ;
14256 unsigned long __cil_tmp103 ;
14257 unsigned long __cil_tmp104 ;
14258 unsigned long __cil_tmp105 ;
14259 unsigned long __cil_tmp106 ;
14260 unsigned long __cil_tmp107 ;
14261 unsigned long __cil_tmp108 ;
14262 unsigned long __cil_tmp109 ;
14263 unsigned long __cil_tmp110 ;
14264 unsigned long __cil_tmp111 ;
14265 unsigned long __cil_tmp112 ;
14266 unsigned long __cil_tmp113 ;
14267 unsigned long __cil_tmp114 ;
14268 unsigned long __cil_tmp115 ;
14269 unsigned long __cil_tmp116 ;
14270 unsigned long __cil_tmp117 ;
14271 unsigned long __cil_tmp118 ;
14272 unsigned long __cil_tmp119 ;
14273 unsigned long __cil_tmp120 ;
14274 unsigned long __cil_tmp121 ;
14275 unsigned long __cil_tmp122 ;
14276 unsigned long __cil_tmp123 ;
14277 unsigned long __cil_tmp124 ;
14278 unsigned long __cil_tmp125 ;
14279 unsigned long __cil_tmp126 ;
14280 unsigned long __cil_tmp127 ;
14281 unsigned long __cil_tmp128 ;
14282 unsigned long __cil_tmp129 ;
14283 unsigned long __cil_tmp130 ;
14284 unsigned long __cil_tmp131 ;
14285 unsigned long __cil_tmp132 ;
14286 unsigned long __cil_tmp133 ;
14287 unsigned long __cil_tmp134 ;
14288 unsigned long __cil_tmp135 ;
14289 unsigned long __cil_tmp136 ;
14290 unsigned long __cil_tmp137 ;
14291 unsigned long __cil_tmp138 ;
14292 unsigned long __cil_tmp139 ;
14293 unsigned long __cil_tmp140 ;
14294 unsigned long __cil_tmp141 ;
14295 unsigned long __cil_tmp142 ;
14296 unsigned long __cil_tmp143 ;
14297 unsigned long __cil_tmp144 ;
14298 unsigned long __cil_tmp145 ;
14299 struct _ddebug *__cil_tmp146 ;
14300 unsigned long __cil_tmp147 ;
14301 unsigned long __cil_tmp148 ;
14302 unsigned long __cil_tmp149 ;
14303 unsigned long __cil_tmp150 ;
14304 unsigned long __cil_tmp151 ;
14305 unsigned long __cil_tmp152 ;
14306 unsigned char __cil_tmp153 ;
14307 long __cil_tmp154 ;
14308 long __cil_tmp155 ;
14309
14310 {
14311 {
14312#line 1333
14313 tcm_loop_hba_no_cnt = 0;
14314#line 1337
14315 fabric = target_fabric_configfs_init(& __this_module, "loopback");
14316#line 1338
14317 __cil_tmp7 = (void const *)fabric;
14318#line 1338
14319 tmp___0 = IS_ERR(__cil_tmp7);
14320 }
14321#line 1338
14322 if (tmp___0 != 0L) {
14323 {
14324#line 1339
14325 printk("<3>tcm_loop_register_configfs() failed!\n");
14326#line 1340
14327 __cil_tmp8 = (void const *)fabric;
14328#line 1340
14329 tmp = PTR_ERR(__cil_tmp8);
14330 }
14331#line 1340
14332 return ((int )tmp);
14333 } else {
14334
14335 }
14336 {
14337#line 1345
14338 __cil_tmp9 = 328 + 16;
14339#line 1345
14340 __cil_tmp10 = (unsigned long )fabric;
14341#line 1345
14342 __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
14343#line 1345
14344 *((char *(**)(void))__cil_tmp11) = & tcm_loop_get_fabric_name;
14345#line 1346
14346 __cil_tmp12 = 328 + 24;
14347#line 1346
14348 __cil_tmp13 = (unsigned long )fabric;
14349#line 1346
14350 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
14351#line 1346
14352 *((u8 (**)(struct se_portal_group * ))__cil_tmp14) = & tcm_loop_get_fabric_proto_ident;
14353#line 1347
14354 __cil_tmp15 = 328 + 32;
14355#line 1347
14356 __cil_tmp16 = (unsigned long )fabric;
14357#line 1347
14358 __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
14359#line 1347
14360 *((char *(**)(struct se_portal_group * ))__cil_tmp17) = & tcm_loop_get_endpoint_wwn;
14361#line 1348
14362 __cil_tmp18 = 328 + 40;
14363#line 1348
14364 __cil_tmp19 = (unsigned long )fabric;
14365#line 1348
14366 __cil_tmp20 = __cil_tmp19 + __cil_tmp18;
14367#line 1348
14368 *((u16 (**)(struct se_portal_group * ))__cil_tmp20) = & tcm_loop_get_tag;
14369#line 1349
14370 __cil_tmp21 = 328 + 48;
14371#line 1349
14372 __cil_tmp22 = (unsigned long )fabric;
14373#line 1349
14374 __cil_tmp23 = __cil_tmp22 + __cil_tmp21;
14375#line 1349
14376 *((u32 (**)(struct se_portal_group * ))__cil_tmp23) = & tcm_loop_get_default_depth;
14377#line 1350
14378 __cil_tmp24 = 328 + 56;
14379#line 1350
14380 __cil_tmp25 = (unsigned long )fabric;
14381#line 1350
14382 __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
14383#line 1350
14384 *((u32 (**)(struct se_portal_group * , struct se_node_acl * , struct t10_pr_registration * ,
14385 int * , unsigned char * ))__cil_tmp26) = & tcm_loop_get_pr_transport_id;
14386#line 1351
14387 __cil_tmp27 = 328 + 64;
14388#line 1351
14389 __cil_tmp28 = (unsigned long )fabric;
14390#line 1351
14391 __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
14392#line 1351
14393 *((u32 (**)(struct se_portal_group * , struct se_node_acl * , struct t10_pr_registration * ,
14394 int * ))__cil_tmp29) = & tcm_loop_get_pr_transport_id_len;
14395#line 1353
14396 __cil_tmp30 = 328 + 72;
14397#line 1353
14398 __cil_tmp31 = (unsigned long )fabric;
14399#line 1353
14400 __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
14401#line 1353
14402 *((char *(**)(struct se_portal_group * , char const * , u32 * , char ** ))__cil_tmp32) = & tcm_loop_parse_pr_out_transport_id;
14403#line 1355
14404 __cil_tmp33 = 328 + 80;
14405#line 1355
14406 __cil_tmp34 = (unsigned long )fabric;
14407#line 1355
14408 __cil_tmp35 = __cil_tmp34 + __cil_tmp33;
14409#line 1355
14410 *((int (**)(struct se_portal_group * ))__cil_tmp35) = & tcm_loop_check_demo_mode;
14411#line 1356
14412 __cil_tmp36 = 328 + 88;
14413#line 1356
14414 __cil_tmp37 = (unsigned long )fabric;
14415#line 1356
14416 __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
14417#line 1356
14418 *((int (**)(struct se_portal_group * ))__cil_tmp38) = & tcm_loop_check_demo_mode_cache;
14419#line 1358
14420 __cil_tmp39 = 328 + 96;
14421#line 1358
14422 __cil_tmp40 = (unsigned long )fabric;
14423#line 1358
14424 __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
14425#line 1358
14426 *((int (**)(struct se_portal_group * ))__cil_tmp41) = & tcm_loop_check_demo_mode_write_protect;
14427#line 1360
14428 __cil_tmp42 = 328 + 104;
14429#line 1360
14430 __cil_tmp43 = (unsigned long )fabric;
14431#line 1360
14432 __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
14433#line 1360
14434 *((int (**)(struct se_portal_group * ))__cil_tmp44) = & tcm_loop_check_prod_mode_write_protect;
14435#line 1367
14436 __cil_tmp45 = 328 + 120;
14437#line 1367
14438 __cil_tmp46 = (unsigned long )fabric;
14439#line 1367
14440 __cil_tmp47 = __cil_tmp46 + __cil_tmp45;
14441#line 1367
14442 *((struct se_node_acl *(**)(struct se_portal_group * ))__cil_tmp47) = & tcm_loop_tpg_alloc_fabric_acl;
14443#line 1368
14444 __cil_tmp48 = 328 + 128;
14445#line 1368
14446 __cil_tmp49 = (unsigned long )fabric;
14447#line 1368
14448 __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
14449#line 1368
14450 *((void (**)(struct se_portal_group * , struct se_node_acl * ))__cil_tmp50) = & tcm_loop_tpg_release_fabric_acl;
14451#line 1370
14452 __cil_tmp51 = 328 + 136;
14453#line 1370
14454 __cil_tmp52 = (unsigned long )fabric;
14455#line 1370
14456 __cil_tmp53 = __cil_tmp52 + __cil_tmp51;
14457#line 1370
14458 *((u32 (**)(struct se_portal_group * ))__cil_tmp53) = & tcm_loop_get_inst_index;
14459#line 1374
14460 __cil_tmp54 = 328 + 152;
14461#line 1374
14462 __cil_tmp55 = (unsigned long )fabric;
14463#line 1374
14464 __cil_tmp56 = __cil_tmp55 + __cil_tmp54;
14465#line 1374
14466 *((int (**)(struct se_cmd * ))__cil_tmp56) = & tcm_loop_check_stop_free;
14467#line 1375
14468 __cil_tmp57 = 328 + 160;
14469#line 1375
14470 __cil_tmp58 = (unsigned long )fabric;
14471#line 1375
14472 __cil_tmp59 = __cil_tmp58 + __cil_tmp57;
14473#line 1375
14474 *((void (**)(struct se_cmd * ))__cil_tmp59) = & tcm_loop_release_cmd;
14475#line 1376
14476 __cil_tmp60 = 328 + 168;
14477#line 1376
14478 __cil_tmp61 = (unsigned long )fabric;
14479#line 1376
14480 __cil_tmp62 = __cil_tmp61 + __cil_tmp60;
14481#line 1376
14482 *((int (**)(struct se_session * ))__cil_tmp62) = & tcm_loop_shutdown_session;
14483#line 1377
14484 __cil_tmp63 = 328 + 176;
14485#line 1377
14486 __cil_tmp64 = (unsigned long )fabric;
14487#line 1377
14488 __cil_tmp65 = __cil_tmp64 + __cil_tmp63;
14489#line 1377
14490 *((void (**)(struct se_session * ))__cil_tmp65) = & tcm_loop_close_session;
14491#line 1378
14492 __cil_tmp66 = 328 + 184;
14493#line 1378
14494 __cil_tmp67 = (unsigned long )fabric;
14495#line 1378
14496 __cil_tmp68 = __cil_tmp67 + __cil_tmp66;
14497#line 1378
14498 *((u32 (**)(struct se_session * ))__cil_tmp68) = & tcm_loop_sess_get_index;
14499#line 1379
14500 __cil_tmp69 = 328 + 192;
14501#line 1379
14502 __cil_tmp70 = (unsigned long )fabric;
14503#line 1379
14504 __cil_tmp71 = __cil_tmp70 + __cil_tmp69;
14505#line 1379
14506 *((u32 (**)(struct se_session * , unsigned char * , u32 ))__cil_tmp71) = (u32 (*)(struct se_session * ,
14507 unsigned char * ,
14508 u32 ))0;
14509#line 1380
14510 __cil_tmp72 = 328 + 200;
14511#line 1380
14512 __cil_tmp73 = (unsigned long )fabric;
14513#line 1380
14514 __cil_tmp74 = __cil_tmp73 + __cil_tmp72;
14515#line 1380
14516 *((int (**)(struct se_cmd * ))__cil_tmp74) = & tcm_loop_write_pending;
14517#line 1381
14518 __cil_tmp75 = 328 + 208;
14519#line 1381
14520 __cil_tmp76 = (unsigned long )fabric;
14521#line 1381
14522 __cil_tmp77 = __cil_tmp76 + __cil_tmp75;
14523#line 1381
14524 *((int (**)(struct se_cmd * ))__cil_tmp77) = & tcm_loop_write_pending_status;
14525#line 1385
14526 __cil_tmp78 = 328 + 216;
14527#line 1385
14528 __cil_tmp79 = (unsigned long )fabric;
14529#line 1385
14530 __cil_tmp80 = __cil_tmp79 + __cil_tmp78;
14531#line 1385
14532 *((void (**)(struct se_node_acl * ))__cil_tmp80) = & tcm_loop_set_default_node_attributes;
14533#line 1387
14534 __cil_tmp81 = 328 + 224;
14535#line 1387
14536 __cil_tmp82 = (unsigned long )fabric;
14537#line 1387
14538 __cil_tmp83 = __cil_tmp82 + __cil_tmp81;
14539#line 1387
14540 *((u32 (**)(struct se_cmd * ))__cil_tmp83) = & tcm_loop_get_task_tag;
14541#line 1388
14542 __cil_tmp84 = 328 + 232;
14543#line 1388
14544 __cil_tmp85 = (unsigned long )fabric;
14545#line 1388
14546 __cil_tmp86 = __cil_tmp85 + __cil_tmp84;
14547#line 1388
14548 *((int (**)(struct se_cmd * ))__cil_tmp86) = & tcm_loop_get_cmd_state;
14549#line 1389
14550 __cil_tmp87 = 328 + 240;
14551#line 1389
14552 __cil_tmp88 = (unsigned long )fabric;
14553#line 1389
14554 __cil_tmp89 = __cil_tmp88 + __cil_tmp87;
14555#line 1389
14556 *((int (**)(struct se_cmd * ))__cil_tmp89) = & tcm_loop_queue_data_in;
14557#line 1390
14558 __cil_tmp90 = 328 + 248;
14559#line 1390
14560 __cil_tmp91 = (unsigned long )fabric;
14561#line 1390
14562 __cil_tmp92 = __cil_tmp91 + __cil_tmp90;
14563#line 1390
14564 *((int (**)(struct se_cmd * ))__cil_tmp92) = & tcm_loop_queue_status;
14565#line 1391
14566 __cil_tmp93 = 328 + 256;
14567#line 1391
14568 __cil_tmp94 = (unsigned long )fabric;
14569#line 1391
14570 __cil_tmp95 = __cil_tmp94 + __cil_tmp93;
14571#line 1391
14572 *((int (**)(struct se_cmd * ))__cil_tmp95) = & tcm_loop_queue_tm_rsp;
14573#line 1392
14574 __cil_tmp96 = 328 + 264;
14575#line 1392
14576 __cil_tmp97 = (unsigned long )fabric;
14577#line 1392
14578 __cil_tmp98 = __cil_tmp97 + __cil_tmp96;
14579#line 1392
14580 *((u16 (**)(struct se_cmd * , u32 ))__cil_tmp98) = & tcm_loop_set_fabric_sense_len;
14581#line 1393
14582 __cil_tmp99 = 328 + 272;
14583#line 1393
14584 __cil_tmp100 = (unsigned long )fabric;
14585#line 1393
14586 __cil_tmp101 = __cil_tmp100 + __cil_tmp99;
14587#line 1393
14588 *((u16 (**)(void))__cil_tmp101) = & tcm_loop_get_fabric_sense_len;
14589#line 1398
14590 __cil_tmp102 = 328 + 280;
14591#line 1398
14592 __cil_tmp103 = (unsigned long )fabric;
14593#line 1398
14594 __cil_tmp104 = __cil_tmp103 + __cil_tmp102;
14595#line 1398
14596 *((struct se_wwn *(**)(struct target_fabric_configfs * , struct config_group * ,
14597 char const * ))__cil_tmp104) = & tcm_loop_make_scsi_hba;
14598#line 1399
14599 __cil_tmp105 = 328 + 288;
14600#line 1399
14601 __cil_tmp106 = (unsigned long )fabric;
14602#line 1399
14603 __cil_tmp107 = __cil_tmp106 + __cil_tmp105;
14604#line 1399
14605 *((void (**)(struct se_wwn * ))__cil_tmp107) = & tcm_loop_drop_scsi_hba;
14606#line 1400
14607 __cil_tmp108 = 328 + 296;
14608#line 1400
14609 __cil_tmp109 = (unsigned long )fabric;
14610#line 1400
14611 __cil_tmp110 = __cil_tmp109 + __cil_tmp108;
14612#line 1400
14613 *((struct se_portal_group *(**)(struct se_wwn * , struct config_group * , char const * ))__cil_tmp110) = & tcm_loop_make_naa_tpg;
14614#line 1401
14615 __cil_tmp111 = 328 + 304;
14616#line 1401
14617 __cil_tmp112 = (unsigned long )fabric;
14618#line 1401
14619 __cil_tmp113 = __cil_tmp112 + __cil_tmp111;
14620#line 1401
14621 *((void (**)(struct se_portal_group * ))__cil_tmp113) = & tcm_loop_drop_naa_tpg;
14622#line 1406
14623 __cil_tmp114 = 328 + 312;
14624#line 1406
14625 __cil_tmp115 = (unsigned long )fabric;
14626#line 1406
14627 __cil_tmp116 = __cil_tmp115 + __cil_tmp114;
14628#line 1406
14629 *((int (**)(struct se_portal_group * , struct se_lun * ))__cil_tmp116) = & tcm_loop_port_link;
14630#line 1407
14631 __cil_tmp117 = 328 + 320;
14632#line 1407
14633 __cil_tmp118 = (unsigned long )fabric;
14634#line 1407
14635 __cil_tmp119 = __cil_tmp118 + __cil_tmp117;
14636#line 1407
14637 *((void (**)(struct se_portal_group * , struct se_lun * ))__cil_tmp119) = & tcm_loop_port_unlink;
14638#line 1408
14639 __cil_tmp120 = 328 + 328;
14640#line 1408
14641 __cil_tmp121 = (unsigned long )fabric;
14642#line 1408
14643 __cil_tmp122 = __cil_tmp121 + __cil_tmp120;
14644#line 1408
14645 *((struct se_tpg_np *(**)(struct se_portal_group * , struct config_group * , char const * ))__cil_tmp122) = (struct se_tpg_np *(*)(struct se_portal_group * ,
14646 struct config_group * ,
14647 char const * ))0;
14648#line 1409
14649 __cil_tmp123 = 328 + 336;
14650#line 1409
14651 __cil_tmp124 = (unsigned long )fabric;
14652#line 1409
14653 __cil_tmp125 = __cil_tmp124 + __cil_tmp123;
14654#line 1409
14655 *((void (**)(struct se_tpg_np * ))__cil_tmp125) = (void (*)(struct se_tpg_np * ))0;
14656#line 1413
14657 __cil_tmp126 = 32 + 24;
14658#line 1413
14659 __cil_tmp127 = 688 + __cil_tmp126;
14660#line 1413
14661 __cil_tmp128 = (unsigned long )fabric;
14662#line 1413
14663 __cil_tmp129 = __cil_tmp128 + __cil_tmp127;
14664#line 1413
14665 *((struct configfs_attribute ***)__cil_tmp129) = (struct configfs_attribute **)(& tcm_loop_wwn_attrs);
14666#line 1414
14667 __cil_tmp130 = 128 + 24;
14668#line 1414
14669 __cil_tmp131 = 688 + __cil_tmp130;
14670#line 1414
14671 __cil_tmp132 = (unsigned long )fabric;
14672#line 1414
14673 __cil_tmp133 = __cil_tmp132 + __cil_tmp131;
14674#line 1414
14675 *((struct configfs_attribute ***)__cil_tmp133) = (struct configfs_attribute **)(& tcm_loop_tpg_attrs);
14676#line 1415
14677 __cil_tmp134 = 320 + 24;
14678#line 1415
14679 __cil_tmp135 = 688 + __cil_tmp134;
14680#line 1415
14681 __cil_tmp136 = (unsigned long )fabric;
14682#line 1415
14683 __cil_tmp137 = __cil_tmp136 + __cil_tmp135;
14684#line 1415
14685 *((struct configfs_attribute ***)__cil_tmp137) = (struct configfs_attribute **)0;
14686#line 1416
14687 __cil_tmp138 = 352 + 24;
14688#line 1416
14689 __cil_tmp139 = 688 + __cil_tmp138;
14690#line 1416
14691 __cil_tmp140 = (unsigned long )fabric;
14692#line 1416
14693 __cil_tmp141 = __cil_tmp140 + __cil_tmp139;
14694#line 1416
14695 *((struct configfs_attribute ***)__cil_tmp141) = (struct configfs_attribute **)0;
14696#line 1417
14697 __cil_tmp142 = 288 + 24;
14698#line 1417
14699 __cil_tmp143 = 688 + __cil_tmp142;
14700#line 1417
14701 __cil_tmp144 = (unsigned long )fabric;
14702#line 1417
14703 __cil_tmp145 = __cil_tmp144 + __cil_tmp143;
14704#line 1417
14705 *((struct configfs_attribute ***)__cil_tmp145) = (struct configfs_attribute **)0;
14706#line 1422
14707 ret = target_fabric_configfs_register(fabric);
14708 }
14709#line 1423
14710 if (ret < 0) {
14711 {
14712#line 1424
14713 printk("<3>target_fabric_configfs_register() for TCM_Loop failed!\n");
14714#line 1426
14715 target_fabric_configfs_free(fabric);
14716 }
14717#line 1427
14718 return (-1);
14719 } else {
14720
14721 }
14722 {
14723#line 1432
14724 tcm_loop_fabric_configfs = fabric;
14725#line 1433
14726 __cil_tmp146 = & descriptor;
14727#line 1433
14728 *((char const **)__cil_tmp146) = "tcm_loop";
14729#line 1433
14730 __cil_tmp147 = (unsigned long )(& descriptor) + 8;
14731#line 1433
14732 *((char const **)__cil_tmp147) = "tcm_loop_register_configfs";
14733#line 1433
14734 __cil_tmp148 = (unsigned long )(& descriptor) + 16;
14735#line 1433
14736 *((char const **)__cil_tmp148) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
14737#line 1433
14738 __cil_tmp149 = (unsigned long )(& descriptor) + 24;
14739#line 1433
14740 *((char const **)__cil_tmp149) = "TCM_LOOP[0] - Set fabric -> tcm_loop_fabric_configfs\n";
14741#line 1433
14742 __cil_tmp150 = (unsigned long )(& descriptor) + 32;
14743#line 1433
14744 *((unsigned int *)__cil_tmp150) = 1434U;
14745#line 1433
14746 __cil_tmp151 = (unsigned long )(& descriptor) + 35;
14747#line 1433
14748 *((unsigned char *)__cil_tmp151) = (unsigned char)0;
14749#line 1433
14750 __cil_tmp152 = (unsigned long )(& descriptor) + 35;
14751#line 1433
14752 __cil_tmp153 = *((unsigned char *)__cil_tmp152);
14753#line 1433
14754 __cil_tmp154 = (long )__cil_tmp153;
14755#line 1433
14756 __cil_tmp155 = __cil_tmp154 & 1L;
14757#line 1433
14758 tmp___1 = __builtin_expect(__cil_tmp155, 0L);
14759 }
14760#line 1433
14761 if (tmp___1 != 0L) {
14762 {
14763#line 1433
14764 __dynamic_pr_debug(& descriptor, "TCM_LOOP[0] - Set fabric -> tcm_loop_fabric_configfs\n");
14765 }
14766 } else {
14767
14768 }
14769#line 1435
14770 return (0);
14771}
14772}
14773#line 1438 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
14774static void tcm_loop_deregister_configfs(void)
14775{ struct _ddebug descriptor ;
14776 long tmp ;
14777 struct target_fabric_configfs *__cil_tmp3 ;
14778 unsigned long __cil_tmp4 ;
14779 unsigned long __cil_tmp5 ;
14780 struct _ddebug *__cil_tmp6 ;
14781 unsigned long __cil_tmp7 ;
14782 unsigned long __cil_tmp8 ;
14783 unsigned long __cil_tmp9 ;
14784 unsigned long __cil_tmp10 ;
14785 unsigned long __cil_tmp11 ;
14786 unsigned long __cil_tmp12 ;
14787 unsigned char __cil_tmp13 ;
14788 long __cil_tmp14 ;
14789 long __cil_tmp15 ;
14790
14791 {
14792 {
14793#line 1440
14794 __cil_tmp3 = (struct target_fabric_configfs *)0;
14795#line 1440
14796 __cil_tmp4 = (unsigned long )__cil_tmp3;
14797#line 1440
14798 __cil_tmp5 = (unsigned long )tcm_loop_fabric_configfs;
14799#line 1440
14800 if (__cil_tmp5 == __cil_tmp4) {
14801#line 1441
14802 return;
14803 } else {
14804
14805 }
14806 }
14807 {
14808#line 1443
14809 target_fabric_configfs_deregister(tcm_loop_fabric_configfs);
14810#line 1444
14811 tcm_loop_fabric_configfs = (struct target_fabric_configfs *)0;
14812#line 1445
14813 __cil_tmp6 = & descriptor;
14814#line 1445
14815 *((char const **)__cil_tmp6) = "tcm_loop";
14816#line 1445
14817 __cil_tmp7 = (unsigned long )(& descriptor) + 8;
14818#line 1445
14819 *((char const **)__cil_tmp7) = "tcm_loop_deregister_configfs";
14820#line 1445
14821 __cil_tmp8 = (unsigned long )(& descriptor) + 16;
14822#line 1445
14823 *((char const **)__cil_tmp8) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
14824#line 1445
14825 __cil_tmp9 = (unsigned long )(& descriptor) + 24;
14826#line 1445
14827 *((char const **)__cil_tmp9) = "TCM_LOOP[0] - Cleared tcm_loop_fabric_configfs\n";
14828#line 1445
14829 __cil_tmp10 = (unsigned long )(& descriptor) + 32;
14830#line 1445
14831 *((unsigned int *)__cil_tmp10) = 1446U;
14832#line 1445
14833 __cil_tmp11 = (unsigned long )(& descriptor) + 35;
14834#line 1445
14835 *((unsigned char *)__cil_tmp11) = (unsigned char)0;
14836#line 1445
14837 __cil_tmp12 = (unsigned long )(& descriptor) + 35;
14838#line 1445
14839 __cil_tmp13 = *((unsigned char *)__cil_tmp12);
14840#line 1445
14841 __cil_tmp14 = (long )__cil_tmp13;
14842#line 1445
14843 __cil_tmp15 = __cil_tmp14 & 1L;
14844#line 1445
14845 tmp = __builtin_expect(__cil_tmp15, 0L);
14846 }
14847#line 1445
14848 if (tmp != 0L) {
14849 {
14850#line 1445
14851 __dynamic_pr_debug(& descriptor, "TCM_LOOP[0] - Cleared tcm_loop_fabric_configfs\n");
14852 }
14853 } else {
14854
14855 }
14856#line 1447
14857 return;
14858}
14859}
14860#line 1449 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
14861static int tcm_loop_fabric_init(void)
14862{ int ret ;
14863 struct lock_class_key __key ;
14864 char const *__lock_name ;
14865 struct workqueue_struct *tmp ;
14866 struct _ddebug descriptor ;
14867 long tmp___0 ;
14868 struct workqueue_struct *__cil_tmp7 ;
14869 unsigned long __cil_tmp8 ;
14870 unsigned long __cil_tmp9 ;
14871 void (*__cil_tmp10)(void * ) ;
14872 struct kmem_cache *__cil_tmp11 ;
14873 unsigned long __cil_tmp12 ;
14874 unsigned long __cil_tmp13 ;
14875 struct _ddebug *__cil_tmp14 ;
14876 unsigned long __cil_tmp15 ;
14877 unsigned long __cil_tmp16 ;
14878 unsigned long __cil_tmp17 ;
14879 unsigned long __cil_tmp18 ;
14880 unsigned long __cil_tmp19 ;
14881 unsigned long __cil_tmp20 ;
14882 unsigned char __cil_tmp21 ;
14883 long __cil_tmp22 ;
14884 long __cil_tmp23 ;
14885
14886 {
14887 {
14888#line 1451
14889 ret = -12;
14890#line 1453
14891 __lock_name = "tcm_loop";
14892#line 1453
14893 tmp = __alloc_workqueue_key("tcm_loop", 0U, 0, & __key, __lock_name);
14894#line 1453
14895 tcm_loop_workqueue = tmp;
14896 }
14897 {
14898#line 1454
14899 __cil_tmp7 = (struct workqueue_struct *)0;
14900#line 1454
14901 __cil_tmp8 = (unsigned long )__cil_tmp7;
14902#line 1454
14903 __cil_tmp9 = (unsigned long )tcm_loop_workqueue;
14904#line 1454
14905 if (__cil_tmp9 == __cil_tmp8) {
14906#line 1455
14907 goto out;
14908 } else {
14909
14910 }
14911 }
14912 {
14913#line 1457
14914 __cil_tmp10 = (void (*)(void * ))0;
14915#line 1457
14916 tcm_loop_cmd_cache = kmem_cache_create("tcm_loop_cmd_cache", 1104UL, 8UL, 0UL, __cil_tmp10);
14917 }
14918 {
14919#line 1461
14920 __cil_tmp11 = (struct kmem_cache *)0;
14921#line 1461
14922 __cil_tmp12 = (unsigned long )__cil_tmp11;
14923#line 1461
14924 __cil_tmp13 = (unsigned long )tcm_loop_cmd_cache;
14925#line 1461
14926 if (__cil_tmp13 == __cil_tmp12) {
14927 {
14928#line 1462
14929 __cil_tmp14 = & descriptor;
14930#line 1462
14931 *((char const **)__cil_tmp14) = "tcm_loop";
14932#line 1462
14933 __cil_tmp15 = (unsigned long )(& descriptor) + 8;
14934#line 1462
14935 *((char const **)__cil_tmp15) = "tcm_loop_fabric_init";
14936#line 1462
14937 __cil_tmp16 = (unsigned long )(& descriptor) + 16;
14938#line 1462
14939 *((char const **)__cil_tmp16) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p";
14940#line 1462
14941 __cil_tmp17 = (unsigned long )(& descriptor) + 24;
14942#line 1462
14943 *((char const **)__cil_tmp17) = "kmem_cache_create() for tcm_loop_cmd_cache failed\n";
14944#line 1462
14945 __cil_tmp18 = (unsigned long )(& descriptor) + 32;
14946#line 1462
14947 *((unsigned int *)__cil_tmp18) = 1463U;
14948#line 1462
14949 __cil_tmp19 = (unsigned long )(& descriptor) + 35;
14950#line 1462
14951 *((unsigned char *)__cil_tmp19) = (unsigned char)0;
14952#line 1462
14953 __cil_tmp20 = (unsigned long )(& descriptor) + 35;
14954#line 1462
14955 __cil_tmp21 = *((unsigned char *)__cil_tmp20);
14956#line 1462
14957 __cil_tmp22 = (long )__cil_tmp21;
14958#line 1462
14959 __cil_tmp23 = __cil_tmp22 & 1L;
14960#line 1462
14961 tmp___0 = __builtin_expect(__cil_tmp23, 0L);
14962 }
14963#line 1462
14964 if (tmp___0 != 0L) {
14965 {
14966#line 1462
14967 __dynamic_pr_debug(& descriptor, "kmem_cache_create() for tcm_loop_cmd_cache failed\n");
14968 }
14969 } else {
14970
14971 }
14972#line 1464
14973 goto out_destroy_workqueue;
14974 } else {
14975
14976 }
14977 }
14978 {
14979#line 1467
14980 ret = tcm_loop_alloc_core_bus();
14981 }
14982#line 1468
14983 if (ret != 0) {
14984#line 1469
14985 goto out_destroy_cache;
14986 } else {
14987
14988 }
14989 {
14990#line 1471
14991 ret = tcm_loop_register_configfs();
14992 }
14993#line 1472
14994 if (ret != 0) {
14995#line 1473
14996 goto out_release_core_bus;
14997 } else {
14998
14999 }
15000#line 1475
15001 return (0);
15002 out_release_core_bus:
15003 {
15004#line 1478
15005 tcm_loop_release_core_bus();
15006 }
15007 out_destroy_cache:
15008 {
15009#line 1480
15010 kmem_cache_destroy(tcm_loop_cmd_cache);
15011 }
15012 out_destroy_workqueue:
15013 {
15014#line 1482
15015 destroy_workqueue(tcm_loop_workqueue);
15016 }
15017 out: ;
15018#line 1484
15019 return (ret);
15020}
15021}
15022#line 1487 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15023static void tcm_loop_fabric_exit(void)
15024{
15025
15026 {
15027 {
15028#line 1489
15029 tcm_loop_deregister_configfs();
15030#line 1490
15031 tcm_loop_release_core_bus();
15032#line 1491
15033 kmem_cache_destroy(tcm_loop_cmd_cache);
15034#line 1492
15035 destroy_workqueue(tcm_loop_workqueue);
15036 }
15037#line 1493
15038 return;
15039}
15040}
15041#line 1517
15042extern void ldv_check_final_state(void) ;
15043#line 1520
15044extern void ldv_check_return_value(int ) ;
15045#line 1523
15046extern void ldv_initialize(void) ;
15047#line 1526
15048extern int __VERIFIER_nondet_int(void) ;
15049#line 1529 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15050int LDV_IN_INTERRUPT ;
15051#line 1532 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15052void main(void)
15053{ struct device *var_group1 ;
15054 struct device_driver *var_group2 ;
15055 int res_tcm_loop_driver_probe_11 ;
15056 struct Scsi_Host *var_group3 ;
15057 char *var_tcm_loop_proc_info_2_p1 ;
15058 char **var_tcm_loop_proc_info_2_p2 ;
15059 off_t var_tcm_loop_proc_info_2_p3 ;
15060 int var_tcm_loop_proc_info_2_p4 ;
15061 int var_tcm_loop_proc_info_2_p5 ;
15062 struct scsi_cmnd *var_group4 ;
15063 struct scsi_device *var_group5 ;
15064 int var_tcm_loop_change_queue_depth_4_p1 ;
15065 int var_tcm_loop_change_queue_depth_4_p2 ;
15066 int ldv_s_tcm_loop_lld_bus_bus_type ;
15067 int tmp ;
15068 int tmp___0 ;
15069 int tmp___1 ;
15070
15071 {
15072 {
15073#line 1629
15074 ldv_s_tcm_loop_lld_bus_bus_type = 0;
15075#line 1610
15076 LDV_IN_INTERRUPT = 1;
15077#line 1619
15078 ldv_initialize();
15079#line 1627
15080 tmp = tcm_loop_fabric_init();
15081 }
15082#line 1627
15083 if (tmp != 0) {
15084#line 1628
15085 goto ldv_final;
15086 } else {
15087
15088 }
15089#line 1635
15090 goto ldv_49408;
15091 ldv_49407:
15092 {
15093#line 1639
15094 tmp___0 = __VERIFIER_nondet_int();
15095 }
15096#line 1641
15097 if (tmp___0 == 0) {
15098#line 1641
15099 goto case_0;
15100 } else
15101#line 1662
15102 if (tmp___0 == 1) {
15103#line 1662
15104 goto case_1;
15105 } else
15106#line 1680
15107 if (tmp___0 == 2) {
15108#line 1680
15109 goto case_2;
15110 } else
15111#line 1698
15112 if (tmp___0 == 3) {
15113#line 1698
15114 goto case_3;
15115 } else
15116#line 1716
15117 if (tmp___0 == 4) {
15118#line 1716
15119 goto case_4;
15120 } else
15121#line 1734
15122 if (tmp___0 == 5) {
15123#line 1734
15124 goto case_5;
15125 } else
15126#line 1752
15127 if (tmp___0 == 6) {
15128#line 1752
15129 goto case_6;
15130 } else
15131#line 1770
15132 if (tmp___0 == 7) {
15133#line 1770
15134 goto case_7;
15135 } else
15136#line 1788
15137 if (tmp___0 == 8) {
15138#line 1788
15139 goto case_8;
15140 } else {
15141 {
15142#line 1806
15143 goto switch_default;
15144#line 1639
15145 if (0) {
15146 case_0: ;
15147#line 1644
15148 if (ldv_s_tcm_loop_lld_bus_bus_type == 0) {
15149 {
15150#line 1651
15151 res_tcm_loop_driver_probe_11 = tcm_loop_driver_probe(var_group1);
15152#line 1652
15153 ldv_check_return_value(res_tcm_loop_driver_probe_11);
15154 }
15155#line 1653
15156 if (res_tcm_loop_driver_probe_11 != 0) {
15157#line 1654
15158 goto ldv_module_exit;
15159 } else {
15160
15161 }
15162#line 1655
15163 ldv_s_tcm_loop_lld_bus_bus_type = 0;
15164 } else {
15165
15166 }
15167#line 1661
15168 goto ldv_49397;
15169 case_1:
15170 {
15171#line 1672
15172 pseudo_lld_bus_match(var_group1, var_group2);
15173 }
15174#line 1679
15175 goto ldv_49397;
15176 case_2:
15177 {
15178#line 1690
15179 tcm_loop_driver_remove(var_group1);
15180 }
15181#line 1697
15182 goto ldv_49397;
15183 case_3:
15184 {
15185#line 1708
15186 tcm_loop_proc_info(var_group3, var_tcm_loop_proc_info_2_p1, var_tcm_loop_proc_info_2_p2,
15187 var_tcm_loop_proc_info_2_p3, var_tcm_loop_proc_info_2_p4,
15188 var_tcm_loop_proc_info_2_p5);
15189 }
15190#line 1715
15191 goto ldv_49397;
15192 case_4:
15193 {
15194#line 1726
15195 tcm_loop_queuecommand(var_group3, var_group4);
15196 }
15197#line 1733
15198 goto ldv_49397;
15199 case_5:
15200 {
15201#line 1744
15202 tcm_loop_change_queue_depth(var_group5, var_tcm_loop_change_queue_depth_4_p1,
15203 var_tcm_loop_change_queue_depth_4_p2);
15204 }
15205#line 1751
15206 goto ldv_49397;
15207 case_6:
15208 {
15209#line 1762
15210 tcm_loop_device_reset(var_group4);
15211 }
15212#line 1769
15213 goto ldv_49397;
15214 case_7:
15215 {
15216#line 1780
15217 tcm_loop_slave_alloc(var_group5);
15218 }
15219#line 1787
15220 goto ldv_49397;
15221 case_8:
15222 {
15223#line 1798
15224 tcm_loop_slave_configure(var_group5);
15225 }
15226#line 1805
15227 goto ldv_49397;
15228 switch_default: ;
15229#line 1806
15230 goto ldv_49397;
15231 } else {
15232 switch_break: ;
15233 }
15234 }
15235 }
15236 ldv_49397: ;
15237 ldv_49408:
15238 {
15239#line 1635
15240 tmp___1 = __VERIFIER_nondet_int();
15241 }
15242#line 1635
15243 if (tmp___1 != 0) {
15244#line 1637
15245 goto ldv_49407;
15246 } else
15247#line 1635
15248 if (ldv_s_tcm_loop_lld_bus_bus_type != 0) {
15249#line 1637
15250 goto ldv_49407;
15251 } else {
15252#line 1639
15253 goto ldv_49409;
15254 }
15255 ldv_49409: ;
15256 ldv_module_exit:
15257 {
15258#line 1820
15259 tcm_loop_fabric_exit();
15260 }
15261 ldv_final:
15262 {
15263#line 1823
15264 ldv_check_final_state();
15265 }
15266#line 1826
15267 return;
15268}
15269}
15270#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
15271void ldv_blast_assert(void)
15272{
15273
15274 {
15275 ERROR: ;
15276#line 6
15277 goto ERROR;
15278}
15279}
15280#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
15281extern int __VERIFIER_nondet_int(void) ;
15282#line 1847 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15283int ldv_spin = 0;
15284#line 1851 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15285void ldv_check_alloc_flags(gfp_t flags )
15286{
15287
15288 {
15289#line 1854
15290 if (ldv_spin != 0) {
15291#line 1854
15292 if (flags != 32U) {
15293 {
15294#line 1854
15295 ldv_blast_assert();
15296 }
15297 } else {
15298
15299 }
15300 } else {
15301
15302 }
15303#line 1857
15304 return;
15305}
15306}
15307#line 1857
15308extern struct page *ldv_some_page(void) ;
15309#line 1860 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15310struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
15311{ struct page *tmp ;
15312
15313 {
15314#line 1863
15315 if (ldv_spin != 0) {
15316#line 1863
15317 if (flags != 32U) {
15318 {
15319#line 1863
15320 ldv_blast_assert();
15321 }
15322 } else {
15323
15324 }
15325 } else {
15326
15327 }
15328 {
15329#line 1865
15330 tmp = ldv_some_page();
15331 }
15332#line 1865
15333 return (tmp);
15334}
15335}
15336#line 1869 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15337void ldv_check_alloc_nonatomic(void)
15338{
15339
15340 {
15341#line 1872
15342 if (ldv_spin != 0) {
15343 {
15344#line 1872
15345 ldv_blast_assert();
15346 }
15347 } else {
15348
15349 }
15350#line 1875
15351 return;
15352}
15353}
15354#line 1876 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15355void ldv_spin_lock(void)
15356{
15357
15358 {
15359#line 1879
15360 ldv_spin = 1;
15361#line 1880
15362 return;
15363}
15364}
15365#line 1883 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15366void ldv_spin_unlock(void)
15367{
15368
15369 {
15370#line 1886
15371 ldv_spin = 0;
15372#line 1887
15373 return;
15374}
15375}
15376#line 1890 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15377int ldv_spin_trylock(void)
15378{ int is_lock ;
15379
15380 {
15381 {
15382#line 1895
15383 is_lock = __VERIFIER_nondet_int();
15384 }
15385#line 1897
15386 if (is_lock != 0) {
15387#line 1900
15388 return (0);
15389 } else {
15390#line 1905
15391 ldv_spin = 1;
15392#line 1907
15393 return (1);
15394 }
15395}
15396}
15397#line 2064 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15398__inline static void *kmem_cache_zalloc(struct kmem_cache *k , gfp_t flags )
15399{ void *tmp ;
15400
15401 {
15402 {
15403#line 2070
15404 ldv_check_alloc_flags(flags);
15405#line 2071
15406 tmp = __VERIFIER_nondet_pointer();
15407 }
15408#line 2071
15409 return (tmp);
15410}
15411}
15412#line 2074 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15413void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
15414{
15415
15416 {
15417 {
15418#line 2080
15419 ldv_check_alloc_flags(ldv_func_arg2);
15420#line 2082
15421 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
15422 }
15423#line 2083
15424 return ((void *)0);
15425}
15426}
15427#line 2085 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15428__inline static void *kzalloc(size_t size , gfp_t flags )
15429{ void *tmp ;
15430
15431 {
15432 {
15433#line 2091
15434 ldv_check_alloc_flags(flags);
15435#line 2092
15436 tmp = __VERIFIER_nondet_pointer();
15437 }
15438#line 2092
15439 return (tmp);
15440}
15441}
15442#line 2139 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15443struct sk_buff *ldv_skb_clone_22(struct sk_buff *ldv_func_arg1 , gfp_t ldv_func_arg2 )
15444{ struct sk_buff *tmp ;
15445
15446 {
15447 {
15448#line 2145
15449 ldv_check_alloc_flags(ldv_func_arg2);
15450#line 2147
15451 tmp = skb_clone(ldv_func_arg1, ldv_func_arg2);
15452 }
15453#line 2147
15454 return (tmp);
15455}
15456}
15457#line 2161 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15458struct sk_buff *ldv_skb_copy_24(struct sk_buff const *ldv_func_arg1 , gfp_t ldv_func_arg2 )
15459{ struct sk_buff *tmp ;
15460
15461 {
15462 {
15463#line 2167
15464 ldv_check_alloc_flags(ldv_func_arg2);
15465#line 2169
15466 tmp = skb_copy(ldv_func_arg1, ldv_func_arg2);
15467 }
15468#line 2169
15469 return (tmp);
15470}
15471}
15472#line 2172 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15473struct sk_buff *ldv___netdev_alloc_skb_25(struct net_device *ldv_func_arg1 , unsigned int ldv_func_arg2 ,
15474 gfp_t ldv_func_arg3 )
15475{ struct sk_buff *tmp ;
15476
15477 {
15478 {
15479#line 2179
15480 ldv_check_alloc_flags(ldv_func_arg3);
15481#line 2181
15482 tmp = __netdev_alloc_skb(ldv_func_arg1, ldv_func_arg2, ldv_func_arg3);
15483 }
15484#line 2181
15485 return (tmp);
15486}
15487}
15488#line 2184 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15489struct sk_buff *ldv___netdev_alloc_skb_26(struct net_device *ldv_func_arg1 , unsigned int ldv_func_arg2 ,
15490 gfp_t ldv_func_arg3 )
15491{ struct sk_buff *tmp ;
15492
15493 {
15494 {
15495#line 2191
15496 ldv_check_alloc_flags(ldv_func_arg3);
15497#line 2193
15498 tmp = __netdev_alloc_skb(ldv_func_arg1, ldv_func_arg2, ldv_func_arg3);
15499 }
15500#line 2193
15501 return (tmp);
15502}
15503}
15504#line 2196 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15505int ldv_pskb_expand_head_27(struct sk_buff *ldv_func_arg1 , int ldv_func_arg2 , int ldv_func_arg3 ,
15506 gfp_t ldv_func_arg4 )
15507{ int tmp ;
15508
15509 {
15510 {
15511#line 2204
15512 ldv_check_alloc_flags(ldv_func_arg4);
15513#line 2206
15514 tmp = pskb_expand_head(ldv_func_arg1, ldv_func_arg2, ldv_func_arg3, ldv_func_arg4);
15515 }
15516#line 2206
15517 return (tmp);
15518}
15519}
15520#line 2209 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15521void *ldv_kmem_cache_alloc_28(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
15522{
15523
15524 {
15525 {
15526#line 2215
15527 ldv_check_alloc_flags(ldv_func_arg2);
15528#line 2217
15529 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
15530 }
15531#line 2218
15532 return ((void *)0);
15533}
15534}
15535#line 2220 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/4643/dscv_tempdir/dscv/ri/43_1a/drivers/target/loopback/tcm_loop.c.p"
15536void *ldv_vmalloc_29(unsigned long ldv_func_arg1 )
15537{
15538
15539 {
15540 {
15541#line 2225
15542 ldv_check_alloc_nonatomic();
15543#line 2227
15544 vmalloc(ldv_func_arg1);
15545 }
15546#line 2228
15547 return ((void *)0);
15548}
15549}